예제 #1
0
        protected override void ScanForObfuscator()
        {
            mainType = new MainType(module);
            mainType.Find();

            staticMethodsDecrypter = new StaticMethodsDecrypter(module, mainType);
            if (mainType.Detected)
            {
                staticMethodsDecrypter.Find();
            }

            if (mainType.Detected && !staticMethodsDecrypter.Detected)
            {
                dynamicMethodsRestorer = new DynamicMethodsRestorer(module, mainType);
            }

            if (mainType.Detected)
            {
                if (staticMethodsDecrypter.Detected)
                {
                    UpdateObfuscatorNameWith(staticMethodsDecrypter.Version);
                }
                else
                {
                    UpdateObfuscatorNameWith(mainType.GetRuntimeVersionString());
                }
            }
        }
예제 #2
0
        protected override void scanForObfuscator()
        {
            mainType = new MainType(module);
            mainType.find();
            methodsDecrypter = new MethodsDecrypter(module, mainType);
            methodsDecrypter.find();

            if (mainType.Detected && methodsDecrypter.Detected && methodsDecrypter.Version != null)
            {
                obfuscatorName += " " + getVersion(methodsDecrypter.Version);
            }
        }
예제 #3
0
 public DynamicMethodsRestorer(ModuleDefMD module, MainType mainType)
     : base(module, mainType)
 {
 }
		public MethodsDecrypterBase(ModuleDefMD module, MainType mainType) {
			this.module = module;
			this.mainType = mainType;
		}
예제 #5
0
        protected override void scanForObfuscator()
        {
            mainType = new MainType(module);
            mainType.find();
            methodsDecrypter = new MethodsDecrypter(module, mainType);
            if (mainType.Detected)
                methodsDecrypter.find();

            if (mainType.Detected && methodsDecrypter.Detected && methodsDecrypter.Version != null)
                obfuscatorName += " " + methodsDecrypter.Version;
        }
 public MethodsDecrypterBase(ModuleDefMD module, MainType mainType)
 {
     this.module   = module;
     this.mainType = mainType;
 }
예제 #7
0
 public StaticMethodsDecrypter(ModuleDefMD module, MainType mainType)
     : base(module, mainType)
 {
 }
		public StaticMethodsDecrypter(ModuleDefMD module, MainType mainType)
			: base(module, mainType) {
		}
		public DynamicMethodsRestorer(ModuleDefMD module, MainType mainType)
			: base(module, mainType) {
		}
예제 #10
0
		protected override void ScanForObfuscator() {
			mainType = new MainType(module);
			mainType.Find();

			staticMethodsDecrypter = new StaticMethodsDecrypter(module, mainType);
			if (mainType.Detected)
				staticMethodsDecrypter.Find();

			if (mainType.Detected && !staticMethodsDecrypter.Detected)
				dynamicMethodsRestorer = new DynamicMethodsRestorer(module, mainType);

			if (mainType.Detected) {
				if (staticMethodsDecrypter.Detected)
					UpdateObfuscatorNameWith(staticMethodsDecrypter.Version);
				else
					UpdateObfuscatorNameWith(mainType.GetRuntimeVersionString());
			}
		}
예제 #11
0
 public MethodsDecrypter(ModuleDefinition module, MainType mainType)
 {
     this.module = module;
     this.mainType = mainType;
 }
예제 #12
0
 public MethodsDecrypter(ModuleDefinition module, MainType mainType)
 {
     this.module   = module;
     this.mainType = mainType;
 }