// Token: 0x06000018 RID: 24 RVA: 0x00002C70 File Offset: 0x00000E70 private void button7_Click(object sender, EventArgs e) { ModuleDef moduleDef = ModuleDefMD.Load(this.textBox2.Text); bool virtualization = this.Virtualization; if (virtualization) { foreach (TypeDef typeDef in moduleDef.Types.ToArray <TypeDef>()) { foreach (MethodDef method in typeDef.Methods.ToArray <MethodDef>()) { virtualization.ConvertToDynamic(method, moduleDef); } } } bool calli = this.Calli; if (calli) { bool flag = !this.Virtualization; if (flag) { calli.Execute(moduleDef); } } foreach (TypeDef typeDef2 in moduleDef.Types.ToArray <TypeDef>()) { foreach (MethodDef methodDef in typeDef2.Methods.ToArray <MethodDef>()) { bool flag2 = methodDef.HasBody && methodDef.Body.Instructions.Count > 0 && !methodDef.IsConstructor; if (flag2) { bool cflow = this.Cflow; if (cflow) { bool flag3 = !cfhelper.HasUnsafeInstructions(methodDef); if (flag3) { bool flag4 = Form1.Simplify(methodDef); if (flag4) { Blocks blocks = cfhelper.GetBlocks(methodDef); bool flag5 = blocks.blocks.Count != 1; if (flag5) { control_flow.toDoBody(methodDef, blocks); break; } } Form1.Optimize(methodDef); } } } } } bool cflow2 = this.Cflow; if (cflow2) { Ctrl_Flow.Brs(moduleDef); after_stage.AfterStage(moduleDef); } bool strings = this.Strings; if (strings) { numbers.InjectClass1(moduleDef); numbers.String(moduleDef); } bool mutation = this.Mutation; if (mutation) { mutatio.Booleanisator(moduleDef); } bool renamer = this.Renamer; if (renamer) { Renamer.Renamer3.Rename(moduleDef); } bool numbers = this.Numbers; if (numbers) { numbers.InjectClass(moduleDef); } foreach (TypeDef typeDef3 in moduleDef.Types.ToArray <TypeDef>()) { foreach (MethodDef methodDef2 in typeDef3.Methods.ToArray <MethodDef>()) { bool flag6 = methodDef2.HasBody && methodDef2.Body.Instructions.Count != 0; if (flag6) { bool numbers2 = this.Numbers; if (numbers2) { array.Array(methodDef2); } } } } bool cflow3 = this.Cflow; if (cflow3) { cflow.Execute(moduleDef); } bool antiDumper = this.AntiDumper; if (antiDumper) { antidump.Execute(moduleDef); } bool numbers3 = this.Numbers; if (numbers3) { numbers.InjectClass(moduleDef); numbers.encrypt(moduleDef); numbers.encrypt(moduleDef); } bool strings2 = this.Strings; if (strings2) { numbers.String(moduleDef); } bool mutation2 = this.Mutation; if (mutation2) { foreach (TypeDef typeDef4 in moduleDef.Types.ToArray <TypeDef>()) { foreach (MethodDef methodDef3 in typeDef4.Methods.ToArray <MethodDef>()) { bool flag7 = methodDef3.HasBody && methodDef3.Body.Instructions.Count != 0; if (flag7) { mutatio.Mutate1(methodDef3); } } } } bool numbers4 = this.Numbers; if (numbers4) { numbers.encrypt(moduleDef); } bool hideAllMethods = this.HideAllMethods; if (hideAllMethods) { hide_methods_2.Execute(moduleDef); hide_methods.Execute(moduleDef); } bool resourceSpammer = this.ResourceSpammer; if (resourceSpammer) { string s = "AtomicObfuscator"; byte[] bytes = Encoding.ASCII.GetBytes(s); for (int num3 = 0; num3 < 150; num3++) { EmbeddedResource item = new EmbeddedResource(new UTF8String(Form1.RandomString(10)), bytes, ManifestResourceAttributes.Public); moduleDef.Resources.Add(item); } } Directory.CreateDirectory(".\\AtomicProtected\\"); moduleDef.Write(".\\AtomicProtected\\" + Path.GetFileName(this.textBox2.Text), new ModuleWriterOptions(moduleDef) { Logger = DummyLogger.NoThrowInstance }); bool packer = this.Packer; if (packer) { context.LoadModule(".\\AtomicProtected\\" + Path.GetFileName(this.textBox2.Text)); context.PackerPhase(); context.SaveModule(); } }
// Token: 0x0600008E RID: 142 RVA: 0x000050A8 File Offset: 0x000032A8 private void button8_Click_1(object sender, EventArgs e) { ModuleDef moduleDef = ModuleDefMD.Load(this.textBox1.Text); bool cflow = this.Cflow; if (cflow) { Ctrl_Flow.Brs(moduleDef); } bool strings = this.Strings; if (strings) { numbers.InjectClass1(moduleDef); numbers.String(moduleDef); } bool mutation = this.Mutation; if (mutation) { mutatio.Booleanisator(moduleDef); } bool renamer = this.Renamer; if (renamer) { Atomic.Atomic.Renamer.Renamer3.Rename(moduleDef); } bool numbers = this.Numbers; if (numbers) { numbers.InjectClass(moduleDef); } foreach (TypeDef typeDef in moduleDef.Types.ToArray <TypeDef>()) { foreach (MethodDef methodDef in typeDef.Methods.ToArray <MethodDef>()) { bool flag = methodDef.HasBody && methodDef.Body.Instructions.Count != 0; if (flag) { bool numbers2 = this.Numbers; if (numbers2) { array.Array(methodDef); } } } } foreach (TypeDef typeDef2 in moduleDef.Types.ToArray <TypeDef>()) { foreach (MethodDef methodDef2 in typeDef2.Methods.ToArray <MethodDef>()) { bool flag2 = methodDef2.HasBody && methodDef2.Body.Instructions.Count > 0 && !methodDef2.IsConstructor; if (flag2) { bool cflow2 = this.Cflow; if (cflow2) { bool flag3 = !cfhelper.HasUnsafeInstructions(methodDef2); if (flag3) { bool flag4 = Form1.Simplify(methodDef2); if (flag4) { Blocks blocks = cfhelper.GetBlocks(methodDef2); bool flag5 = blocks.blocks.Count != 1; if (flag5) { control_flow.toDoBody(methodDef2, blocks); break; } } Form1.Optimize(methodDef2); } } } } } bool cflow3 = this.Cflow; if (cflow3) { cflow.Execute(moduleDef); } bool antiDumper = this.AntiDumper; if (antiDumper) { antidump.Execute(moduleDef); } bool numbers3 = this.Numbers; if (numbers3) { numbers.InjectClass(moduleDef); numbers.encrypt(moduleDef); numbers.encrypt(moduleDef); } bool strings2 = this.Strings; if (strings2) { numbers.String(moduleDef); } bool mutation2 = this.Mutation; if (mutation2) { foreach (TypeDef typeDef3 in moduleDef.Types.ToArray <TypeDef>()) { foreach (MethodDef methodDef3 in typeDef3.Methods.ToArray <MethodDef>()) { bool flag6 = methodDef3.HasBody && methodDef3.Body.Instructions.Count != 0; if (flag6) { mutatio.Mutate1(methodDef3); } } } } bool numbers4 = this.Numbers; if (numbers4) { numbers.encrypt(moduleDef); } Directory.CreateDirectory(".\\AtomicProtected\\"); moduleDef.Write(".\\AtomicProtected\\" + Path.GetFileName(this.textBox1.Text), new ModuleWriterOptions(moduleDef) { Logger = DummyLogger.NoThrowInstance }); bool packer = this.Packer; if (packer) { context.LoadModule(".\\AtomicProtected\\" + Path.GetFileName(this.textBox1.Text)); context.PackerPhase(); context.SaveModule(); } Process.Start(".\\AtomicProtected\\"); }