Пример #1
0
        public void DeobfuscateBegin()
        {
            switch (options.StringDecrypterType)
            {
            case DecrypterType.None:
                CheckSupportedStringDecrypter(StringFeatures.AllowNoDecryption);
                break;

            case DecrypterType.Static:
                CheckSupportedStringDecrypter(StringFeatures.AllowStaticDecryption);
                break;

            case DecrypterType.Delegate:
            case DecrypterType.Emulate:
                CheckSupportedStringDecrypter(StringFeatures.AllowDynamicDecryption);
                var newProcFactory = assemblyClientFactory as NewProcessAssemblyClientFactory;
                if (newProcFactory != null)
                {
                    assemblyClient = newProcFactory.Create(AssemblyServiceType.StringDecrypter, module);
                }
                else
                {
                    assemblyClient = assemblyClientFactory.Create(AssemblyServiceType.StringDecrypter);
                }
                assemblyClient.Connect();
                break;

            default:
                throw new ApplicationException(string.Format("Invalid string decrypter type '{0}'", options.StringDecrypterType));
            }
        }
Пример #2
0
 public void DeobfuscateCleanUp()
 {
     if (assemblyClient != null)
     {
         assemblyClient.Dispose();
         assemblyClient = null;
     }
 }
Пример #3
0
 public void Dispose()
 {
     if (assemblyClient != null)
     {
         assemblyClient.Dispose();
     }
     assemblyClient = null;
 }
Пример #4
0
        public void Initialize(ModuleDef module)
        {
            if (assemblyClient != null)
            {
                return;
            }

            var serverVersion = NewProcessAssemblyClientFactory.GetServerClrVersion(module);

            assemblyClient = new NewProcessAssemblyClientFactory(serverVersion).Create(AssemblyServiceType.Generic);
            assemblyClient.Connect();
            assemblyClient.WaitConnected();

            assemblyClient.GenericService.LoadUserService(typeof(DynocodeService), null);
            assemblyClient.GenericService.LoadAssembly(module.Location);
        }
Пример #5
0
        public void deobfuscateBegin()
        {
            switch (options.StringDecrypterType)
            {
            case DecrypterType.None:
                checkSupportedStringDecrypter(StringFeatures.AllowNoDecryption);
                break;

            case DecrypterType.Static:
                checkSupportedStringDecrypter(StringFeatures.AllowStaticDecryption);
                break;

            case DecrypterType.Delegate:
            case DecrypterType.Emulate:
                checkSupportedStringDecrypter(StringFeatures.AllowDynamicDecryption);
                assemblyClient = assemblyClientFactory.create();
                assemblyClient.connect();
                break;

            default:
                throw new ApplicationException(string.Format("Invalid string decrypter type '{0}'", options.StringDecrypterType));
            }
        }
Пример #6
0
 public DynamicStringInliner(IAssemblyClient assemblyClient)
 {
     this.assemblyClient = assemblyClient;
 }
Пример #7
0
 public void deobfuscateCleanUp()
 {
     if (assemblyClient != null) {
         assemblyClient.Dispose();
         assemblyClient = null;
     }
 }
Пример #8
0
        public void deobfuscateBegin()
        {
            switch (options.StringDecrypterType) {
            case DecrypterType.None:
                checkSupportedStringDecrypter(StringFeatures.AllowNoDecryption);
                break;

            case DecrypterType.Static:
                checkSupportedStringDecrypter(StringFeatures.AllowStaticDecryption);
                break;

            case DecrypterType.Delegate:
            case DecrypterType.Emulate:
                checkSupportedStringDecrypter(StringFeatures.AllowDynamicDecryption);
                assemblyClient = assemblyClientFactory.create();
                assemblyClient.connect();
                break;

            default:
                throw new ApplicationException(string.Format("Invalid string decrypter type '{0}'", options.StringDecrypterType));
            }
        }
Пример #9
0
		public void DeobfuscateBegin() {
			switch (options.StringDecrypterType) {
			case DecrypterType.None:
				CheckSupportedStringDecrypter(StringFeatures.AllowNoDecryption);
				break;

			case DecrypterType.Static:
				CheckSupportedStringDecrypter(StringFeatures.AllowStaticDecryption);
				break;

			case DecrypterType.Delegate:
			case DecrypterType.Emulate:
				CheckSupportedStringDecrypter(StringFeatures.AllowDynamicDecryption);
				var newProcFactory = assemblyClientFactory as NewProcessAssemblyClientFactory;
				if (newProcFactory != null)
					assemblyClient = newProcFactory.Create(AssemblyServiceType.StringDecrypter, module);
				else
					assemblyClient = assemblyClientFactory.Create(AssemblyServiceType.StringDecrypter);
				assemblyClient.Connect();
				break;

			default:
				throw new ApplicationException(string.Format("Invalid string decrypter type '{0}'", options.StringDecrypterType));
			}
		}
Пример #10
0
 public DynamicStringDecrypter(IAssemblyClient assemblyClient)
 {
     this.assemblyClient = assemblyClient;
 }
Пример #11
0
 public DynamicStringInliner(IAssemblyClient assemblyClient)
 {
     this.assemblyClient = assemblyClient;
 }