More tests/fixes I dont know if this is right
This commit is contained in:
@@ -49,4 +49,10 @@ public class IConst_M1 extends Instruction implements PushConstantInstruction
|
||||
{
|
||||
return new LDC_W(this.getInstructions(), entry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Instruction makeGeneric()
|
||||
{
|
||||
return new LDC_W(this.getInstructions(), getConstant());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -310,16 +310,16 @@ public class ModArith implements Deobfuscator
|
||||
public void run(ClassGroup group)
|
||||
{
|
||||
this.group = group;
|
||||
runOnce();
|
||||
if (true) return;
|
||||
|
||||
int passes = 0, total = 0, i;
|
||||
while ((i = runOnce()) > 0)
|
||||
{
|
||||
++passes;
|
||||
total += i;
|
||||
}
|
||||
System.out.println("Finished arith deob on " + total + " fields in " + passes + " passes");
|
||||
//return runOnce();
|
||||
// if (true) return;
|
||||
//
|
||||
// int passes = 0, total = 0, i;
|
||||
// while ((i = runOnce()) > 0)
|
||||
// {
|
||||
// ++passes;
|
||||
// total += i;
|
||||
// }
|
||||
// System.out.println("Finished arith deob on " + total + " fields in " + passes + " passes");
|
||||
}
|
||||
//
|
||||
// private void translateSetFields(Execution e)
|
||||
@@ -395,7 +395,7 @@ public class ModArith implements Deobfuscator
|
||||
}
|
||||
}
|
||||
|
||||
private int runOnce()
|
||||
public int runOnce()
|
||||
{
|
||||
group.buildClassGraph();
|
||||
|
||||
|
||||
@@ -107,8 +107,7 @@ public class MultiplicationDeobfuscator implements Deobfuscator
|
||||
{
|
||||
if (i.getInstruction() instanceof PushConstantInstruction)
|
||||
{
|
||||
if (i.getInstruction() instanceof BiPush || i.getInstruction() instanceof SiPush
|
||||
|| i.getInstruction() instanceof IConst_M1)
|
||||
if (i.getInstruction() instanceof BiPush || i.getInstruction() instanceof SiPush)
|
||||
throw new IllegalStateException();
|
||||
|
||||
// a constant of imul
|
||||
@@ -194,7 +193,7 @@ public class MultiplicationDeobfuscator implements Deobfuscator
|
||||
else
|
||||
{
|
||||
System.out.println("dup ins " + otherCtxI.getInstruction());
|
||||
throw new IllegalStateException();
|
||||
//throw new IllegalStateException();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user