Skip to content
This repository was archived by the owner on Dec 8, 2022. It is now read-only.

Commit c019e21

Browse files
committed
Check if cctor exists before using it
1 parent 406afd0 commit c019e21

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

de4dot.code/deobfuscators/ConfuserEx/Deobfuscator.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -247,10 +247,11 @@ public override void DeobfuscateEnd()
247247
AddMethodsToBeRemoved(_controlFlowFixer.NativeMethods, "Control flow native methods");
248248

249249
var moduleCctor = DotNetUtils.GetModuleTypeCctor(module);
250-
foreach (var instr in moduleCctor.Body.Instructions)
251-
if (instr.OpCode == OpCodes.Call && instr.Operand is MethodDef
252-
&& toRemoveFromCctor.Contains((MethodDef) instr.Operand))
253-
instr.OpCode = OpCodes.Nop;
250+
if (moduleCctor != null)
251+
foreach (var instr in moduleCctor.Body.Instructions)
252+
if (instr.OpCode == OpCodes.Call && instr.Operand is MethodDef
253+
&& toRemoveFromCctor.Contains((MethodDef) instr.Operand))
254+
instr.OpCode = OpCodes.Nop;
254255

255256
//TODO: Might not always be correct
256257
//No more mixed!

0 commit comments

Comments
 (0)