Allow passing dumped methods to reload()
This commit is contained in:
parent
0e70d020b4
commit
a6dcd03d26
|
@ -48,14 +48,14 @@ namespace de4dot {
|
||||||
module.Write(newFilename);
|
module.Write(newFilename);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ModuleDefinition reload(byte[] newModuleData) {
|
public ModuleDefinition reload(byte[] newModuleData, Dictionary<uint, DumpedMethod> dumpedMethods) {
|
||||||
var assemblyResolver = AssemblyResolver.Instance;
|
var assemblyResolver = AssemblyResolver.Instance;
|
||||||
assemblyResolver.removeModule(module);
|
assemblyResolver.removeModule(module);
|
||||||
dumpedMethods = new Dictionary<uint, DumpedMethod>();
|
this.dumpedMethods = dumpedMethods;
|
||||||
|
|
||||||
var readerParameters = new ReaderParameters(ReadingMode.Deferred);
|
var readerParameters = new ReaderParameters(ReadingMode.Deferred);
|
||||||
readerParameters.AssemblyResolver = assemblyResolver;
|
readerParameters.AssemblyResolver = assemblyResolver;
|
||||||
module = ModuleDefinition.ReadModule(new MemoryStream(newModuleData), readerParameters);
|
module = ModuleDefinition.ReadModule(new MemoryStream(newModuleData), readerParameters, dumpedMethods);
|
||||||
assemblyResolver.addModule(module);
|
assemblyResolver.addModule(module);
|
||||||
return module;
|
return module;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user