From 5ce21b18a711ea0588119fc1dea5e5f851307d0b Mon Sep 17 00:00:00 2001 From: de4dot Date: Tue, 20 Nov 2012 01:13:18 +0100 Subject: [PATCH] Call IAssemblyResolver.Remove() --- de4dot.code/AssemblyModule.cs | 2 +- de4dot.code/AssemblyResolver.cs | 10 ++-------- de4dot.cui/FilesDeobfuscator.cs | 2 +- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/de4dot.code/AssemblyModule.cs b/de4dot.code/AssemblyModule.cs index 527d6443..f42bb347 100644 --- a/de4dot.code/AssemblyModule.cs +++ b/de4dot.code/AssemblyModule.cs @@ -79,7 +79,7 @@ namespace de4dot.code { } public ModuleDefMD reload(byte[] newModuleData, DumpedMethodsRestorer dumpedMethodsRestorer, IStringDecrypter stringDecrypter) { - TheAssemblyResolver.Instance.removeModule(module); + TheAssemblyResolver.Instance.Remove(module); var mod = ModuleDefMD.Load(newModuleData, moduleContext); if (dumpedMethodsRestorer != null) dumpedMethodsRestorer.Module = mod; diff --git a/de4dot.code/AssemblyResolver.cs b/de4dot.code/AssemblyResolver.cs index daf32410..c8ad154f 100644 --- a/de4dot.code/AssemblyResolver.cs +++ b/de4dot.code/AssemblyResolver.cs @@ -20,7 +20,7 @@ using dot10.DotNet; namespace de4dot.code { - public class TheAssemblyResolver : dot10.DotNet.AssemblyResolver { + public class TheAssemblyResolver : AssemblyResolver { public static readonly TheAssemblyResolver Instance = new TheAssemblyResolver(); public TheAssemblyResolver() { @@ -41,13 +41,7 @@ namespace de4dot.code { if (assembly == null) return; - removeModule(assembly.FullName); - } - - public void removeModule(string asmFullName) { - if (string.IsNullOrEmpty(asmFullName)) - return; - //TODO: Remove it from the cache + Remove(module.Assembly); } public void clearAll() { diff --git a/de4dot.cui/FilesDeobfuscator.cs b/de4dot.cui/FilesDeobfuscator.cs index f5f88514..84306a18 100644 --- a/de4dot.cui/FilesDeobfuscator.cs +++ b/de4dot.cui/FilesDeobfuscator.cs @@ -79,7 +79,7 @@ namespace de4dot.cui { } static void removeModule(ModuleDef module) { - TheAssemblyResolver.Instance.removeModule(module); + TheAssemblyResolver.Instance.Remove(module); } void detectObfuscators() {