From b15b581c46026de43c10991997497c7699344580 Mon Sep 17 00:00:00 2001 From: de4dot Date: Mon, 30 Apr 2012 21:47:23 +0200 Subject: [PATCH] Deobfuscate string decrypter cctor --- de4dot.code/deobfuscators/Skater_NET/Deobfuscator.cs | 2 +- de4dot.code/deobfuscators/Skater_NET/StringDecrypter.cs | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/de4dot.code/deobfuscators/Skater_NET/Deobfuscator.cs b/de4dot.code/deobfuscators/Skater_NET/Deobfuscator.cs index 5ceebbcc..78aceea6 100644 --- a/de4dot.code/deobfuscators/Skater_NET/Deobfuscator.cs +++ b/de4dot.code/deobfuscators/Skater_NET/Deobfuscator.cs @@ -102,7 +102,7 @@ namespace de4dot.code.deobfuscators.Skater_NET { enumClassFinder = new EnumClassFinder(module); - stringDecrypter.initialize(); + stringDecrypter.initialize(DeobfuscatedFile); } public override void deobfuscateMethodEnd(Blocks blocks) { diff --git a/de4dot.code/deobfuscators/Skater_NET/StringDecrypter.cs b/de4dot.code/deobfuscators/Skater_NET/StringDecrypter.cs index 13c92bd3..21a392b7 100644 --- a/de4dot.code/deobfuscators/Skater_NET/StringDecrypter.cs +++ b/de4dot.code/deobfuscators/Skater_NET/StringDecrypter.cs @@ -110,10 +110,11 @@ namespace de4dot.code.deobfuscators.Skater_NET { } } - public void initialize() { + public void initialize(ISimpleDeobfuscator deobfuscator) { if (decrypterCctor == null) return; + deobfuscator.deobfuscate(decrypterCctor); var instrs = decrypterCctor.Body.Instructions; for (int i = 0; i < instrs.Count - 4; i++) { var ldstr = instrs[i];