faster AS2 deobfuscation (ActionDeobfuscatorSimple and ActionDeobfuscator combined to a single linked list based algorithm), caching deobfuscated action list fix

This commit is contained in:
honfika@gmail.com
2015-10-20 09:16:59 +02:00
parent f699fd72bb
commit 2396710e35

View File

@@ -29,8 +29,16 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.IfTypeIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.AddIIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.AddIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.DecrementIIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.DecrementIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.DivideIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.IncrementIIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.IncrementIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.ModuloIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.MultiplyIIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.MultiplyIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.NegateIIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.NegateIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.NotIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.SubtractIIns;
import com.jpexs.decompiler.flash.abc.avm2.instructions.arithmetic.SubtractIns;
@@ -330,6 +338,8 @@ public class AVM2DeobfuscatorSimple implements SWFDecompilerListener {
|| def instanceof SubtractIIns
|| def instanceof ModuloIns
|| def instanceof MultiplyIns
|| def instanceof MultiplyIIns
|| def instanceof DivideIns
|| def instanceof BitAndIns
|| def instanceof BitXorIns
|| def instanceof BitOrIns
@@ -338,6 +348,12 @@ public class AVM2DeobfuscatorSimple implements SWFDecompilerListener {
|| def instanceof URShiftIns
|| def instanceof EqualsIns
|| def instanceof NotIns
|| def instanceof NegateIns
|| def instanceof NegateIIns
|| def instanceof IncrementIns
|| def instanceof IncrementIIns
|| def instanceof DecrementIns
|| def instanceof DecrementIIns
|| def instanceof IfTypeIns
|| def instanceof JumpIns
|| def instanceof EqualsIns
@@ -434,6 +450,10 @@ public class AVM2DeobfuscatorSimple implements SWFDecompilerListener {
}
}
@Override
public void actionTreeCreated(List<GraphTargetItem> tree, SWF swf) {
}
@Override
public byte[] proxyFileCatched(byte[] data) {
return null;