From 9ad15e63e402377327b80c6989991b1cf7744ffc Mon Sep 17 00:00:00 2001 From: de4dot Date: Sun, 23 Oct 2011 09:07:47 +0200 Subject: [PATCH] Remove string decrypter type and allow static + dynamic decryption --- de4dot.code/deobfuscators/CryptoObfuscator/Deobfuscator.cs | 2 ++ de4dot.code/deobfuscators/CryptoObfuscator/StringDecrypter.cs | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/de4dot.code/deobfuscators/CryptoObfuscator/Deobfuscator.cs b/de4dot.code/deobfuscators/CryptoObfuscator/Deobfuscator.cs index a7314734..a6c20309 100644 --- a/de4dot.code/deobfuscators/CryptoObfuscator/Deobfuscator.cs +++ b/de4dot.code/deobfuscators/CryptoObfuscator/Deobfuscator.cs @@ -82,6 +82,7 @@ namespace de4dot.deobfuscators.CryptoObfuscator { public Deobfuscator(Options options) : base(options) { this.options = options; + StringFeatures = StringFeatures.AllowStaticDecryption | StringFeatures.AllowDynamicDecryption; } public override void init(ModuleDefinition module) { @@ -179,6 +180,7 @@ namespace de4dot.deobfuscators.CryptoObfuscator { addTypeToBeRemoved(assemblyResolver.ResolverType, "Assembly resolver type"); addTypeToBeRemoved(tamperDetection.TamperType, "Tamper detection type"); addTypeToBeRemoved(antiDebugger.AntiDebuggerType, "Anti-debugger type"); + addTypeToBeRemoved(stringDecrypter.StringDecrypterType, "String decrypter type"); dumpEmbeddedAssemblies(); } diff --git a/de4dot.code/deobfuscators/CryptoObfuscator/StringDecrypter.cs b/de4dot.code/deobfuscators/CryptoObfuscator/StringDecrypter.cs index ccf7af8e..1f6a2931 100644 --- a/de4dot.code/deobfuscators/CryptoObfuscator/StringDecrypter.cs +++ b/de4dot.code/deobfuscators/CryptoObfuscator/StringDecrypter.cs @@ -33,6 +33,10 @@ namespace de4dot.deobfuscators.CryptoObfuscator { get { return stringDecrypterType != null; } } + public TypeDefinition StringDecrypterType { + get { return stringDecrypterType; } + } + public MethodDefinition StringDecrypterMethod { get { return stringDecrypterMethod; } }