public MyDeobfuscator(ModuleDefMD module) {
			cliSecureRtType = new CliSecureRtType(module);
			cliSecureRtType.Find(null);
			stringDecrypter = new StringDecrypter(module, cliSecureRtType.StringDecrypterMethod);
			stringDecrypter.Find();
			cliSecureRtType.FindStringDecrypterMethod();
			stringDecrypter.Method = cliSecureRtType.StringDecrypterMethod;
			staticStringInliner.Add(stringDecrypter.Method, (method, gim, args) => stringDecrypter.Decrypt((string)args[0]));
		}
Exemplo n.º 2
0
 public MyDeobfuscator(ModuleDefMD module)
 {
     cliSecureRtType = new CliSecureRtType(module);
     cliSecureRtType.Find(null);
     stringDecrypter = new StringDecrypter(module, cliSecureRtType.StringDecrypterMethod);
     stringDecrypter.Find();
     cliSecureRtType.FindStringDecrypterMethod();
     stringDecrypter.Method = cliSecureRtType.StringDecrypterMethod;
     staticStringInliner.Add(stringDecrypter.Method, (method, gim, args) => stringDecrypter.Decrypt((string)args[0]));
 }
		public MyDeobfuscator(ModuleDefMD module) {
			cliSecureRtType = new CliSecureRtType(module);
			cliSecureRtType.Find(null);
			stringDecrypter = new StringDecrypter(module, cliSecureRtType.StringDecrypterInfos);
			stringDecrypter.Find();
			cliSecureRtType.FindStringDecrypterMethod();
			stringDecrypter.AddDecrypterInfos(cliSecureRtType.StringDecrypterInfos);
			stringDecrypter.Initialize();
			foreach (var info in stringDecrypter.StringDecrypterInfos)
				staticStringInliner.Add(info.Method, (method, gim, args) => stringDecrypter.Decrypt((string)args[0]));
		}
Exemplo n.º 4
0
 public MyDeobfuscator(ModuleDefMD module)
 {
     cliSecureRtType = new CliSecureRtType(module);
     cliSecureRtType.Find(null);
     stringDecrypter = new StringDecrypter(module, cliSecureRtType.StringDecrypterInfos);
     stringDecrypter.Find();
     cliSecureRtType.FindStringDecrypterMethod();
     stringDecrypter.AddDecrypterInfos(cliSecureRtType.StringDecrypterInfos);
     stringDecrypter.Initialize();
     foreach (var info in stringDecrypter.StringDecrypterInfos)
     {
         staticStringInliner.Add(info.Method, (method, gim, args) => stringDecrypter.Decrypt((string)args[0]));
     }
 }
Exemplo n.º 5
0
		protected override void ScanForObfuscator() {
			FindCliSecureAttribute();
			cliSecureRtType = new CliSecureRtType(module);
			cliSecureRtType.Find(ModuleBytes);
			stringDecrypter = new StringDecrypter(module, cliSecureRtType.StringDecrypterInfos);
			stringDecrypter.Find();
			resourceDecrypter = new ResourceDecrypter(module);
			resourceDecrypter.Find();
			proxyCallFixer = new ProxyCallFixer(module);
			proxyCallFixer.FindDelegateCreator();
			csvmV1 = new vm.v1.Csvm(DeobfuscatedFile.DeobfuscatorContext, module);
			csvmV1.Find();
			csvmV2 = new vm.v2.Csvm(DeobfuscatedFile.DeobfuscatorContext, module);
			csvmV2.Find();
		}