Make sure blocks are laid out in a verifiable order
This commit is contained in:
parent
865cfb9536
commit
f79b12d4f3
|
@ -201,5 +201,10 @@ namespace de4dot.blocks {
|
|||
throw new ApplicationException("Invalid ld/st local instruction");
|
||||
}
|
||||
}
|
||||
|
||||
public void repartitionBlocks() {
|
||||
foreach (var scopeBlock in getAllScopeBlocks(methodBlocks))
|
||||
scopeBlock.repartitionBlocks();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -460,6 +460,7 @@ namespace de4dot {
|
|||
int numRemovedLocals = blocks.optimizeLocals();
|
||||
if (numRemovedLocals > 0)
|
||||
Log.v("Removed {0} unused local(s)", numRemovedLocals);
|
||||
blocks.repartitionBlocks();
|
||||
}
|
||||
deobfuscateStrings(blocks);
|
||||
deob.deobfuscateMethodEnd(blocks);
|
||||
|
|
Loading…
Reference in New Issue
Block a user