@Test @Ignore public void testRun() throws Exception { new ControlFlowDeobfuscator().run(group); }
@Override public void run(ClassGroup group) { for (ClassFile cf : group.getClasses()) { for (Method m : cf.getMethods()) { Code code = m.getCode(); if (code == null || !code.getExceptions().getExceptions().isEmpty()) { continue; } split(code); run(code); runJumpLabel(code); } } logger.info("Inserted {} jumps, reordered {} blocks, and removed {} jumps. jump delta {}", insertedJump, placedBlocks, removedJumps, insertedJump - removedJumps); }
ControlFlowDeobfuscator implements Deobfuscator { @Override public void run(ClassGroup group) { for (ClassFile cf : group.getClasses()) { for (Method m : cf.getMethods()) { Code code = m.getCode(); if (code == null || !code.getExceptions().getExceptions().isEmpty()) { continue; } split(code); run(code); runJumpLabel(code); } } logger.info("Inserted {} jumps, reordered {} blocks, and removed {} jumps. jump delta {}", insertedJump, placedBlocks, removedJumps, insertedJump - removedJumps); } }
ControlFlowDeobfuscator implements Deobfuscator { @Override public void run(ClassGroup group) { for (ClassFile cf : group.getClasses()) { for (Method m : cf.getMethods()) { Code code = m.getCode(); if (code == null || !code.getExceptions().getExceptions().isEmpty()) { continue; } split(code); run(code); runJumpLabel(code); } } logger.info("Inserted {} jumps, reordered {} blocks, and removed {} jumps. jump delta {}", insertedJump, placedBlocks, removedJumps, insertedJump - removedJumps); }  }
ControlFlowDeobfuscator implements Deobfuscator { @Override public void run(ClassGroup group) { for (ClassFile cf : group.getClasses()) { for (Method m : cf.getMethods()) { Code code = m.getCode(); if (code == null || !code.getExceptions().getExceptions().isEmpty()) { continue; } split(code); run(code); runJumpLabel(code); } } logger.info("Inserted {} jumps, reordered {} blocks, and removed {} jumps. jump delta {}", insertedJump, placedBlocks, removedJumps, insertedJump - removedJumps); }  @Override void run(ClassGroup group); }
ControlFlowDeobfuscator implements Deobfuscator { @Override public void run(ClassGroup group) { for (ClassFile cf : group.getClasses()) { for (Method m : cf.getMethods()) { Code code = m.getCode(); if (code == null || !code.getExceptions().getExceptions().isEmpty()) { continue; } split(code); run(code); runJumpLabel(code); } } logger.info("Inserted {} jumps, reordered {} blocks, and removed {} jumps. jump delta {}", insertedJump, placedBlocks, removedJumps, insertedJump - removedJumps); }  @Override void run(ClassGroup group);  }