diff --git a/De4DotCommon.props b/De4DotCommon.props index 9a042a11..10cb099c 100644 --- a/De4DotCommon.props +++ b/De4DotCommon.props @@ -16,8 +16,13 @@ true 4.5.0 - + true + + + + + diff --git a/de4dot.blocks/cflow/BlockCflowDeobfuscator.cs b/de4dot.blocks/cflow/BlockCflowDeobfuscator.cs index 01d05e4e..bcec2e98 100644 --- a/de4dot.blocks/cflow/BlockCflowDeobfuscator.cs +++ b/de4dot.blocks/cflow/BlockCflowDeobfuscator.cs @@ -54,7 +54,12 @@ protected override bool Deobfuscate(Block block) { return false; } - return branchEmulator.Emulate(block.LastInstr.Instruction); + try { + return branchEmulator.Emulate(block.LastInstr.Instruction); + } + catch { + return false; + } } void PopPushedArgs(int stackArgs) { diff --git a/de4dot.cui/Program.cs b/de4dot.cui/Program.cs index 2b0f54ad..93b87f6e 100644 --- a/de4dot.cui/Program.cs +++ b/de4dot.cui/Program.cs @@ -32,7 +32,7 @@ class ExitException : Exception { public ExitException(int code) => this.code = code; } - class Program { + public class Program { static IList deobfuscatorInfos = CreateDeobfuscatorInfos(); static IList LoadPlugin(string assembly) {