public bool runModules(PandaState pandaState, PandaContext pandaContext) { new PandaMarker().Execute(pandaState, pandaContext); if (pandaContext.pandaIG.getIGModules() == null) { return(false); } if (pandaContext.pandaIG.getIGModules().Count == 0) { return(false); } foreach (PandaProtection p in pandaContext.register.getRegistredModules()) { foreach (PandaProtection panda in pandaContext.pandaIG.getIGModules()) { if (p.Id == panda.Id) { panda.Execute(pandaState, pandaContext); } } } return(true); }
public void Execute(PandaState pandaState, PandaContext pandaContext) { CFHelper cFHelper = new CFHelper(); foreach (TypeDef type in pandaContext.moduleDef.Types) { foreach (MethodDef method in type.Methods) { if (method.HasBody && method.Body.Instructions.Count > 0 && !method.IsConstructor) { if (!cFHelper.HasUnsafeInstructions(method)) { if (DnlibUtils.Simplify(method)) { Blocks blocks = cFHelper.GetBlocks(method); if (blocks.blocks.Count != 1) { switch (pandaState) { case PandaState.Basic: toDoSwitcher(cFHelper, method, blocks, pandaContext); break; case PandaState.Normal: toDoBody(cFHelper, method, blocks, pandaContext); break; } } DnlibUtils.Optimize(method); } } } } } }
public ControlFlow(PandaState pandaState, PandaContext pandaContext) { if (pandaContext != null) { Execute(pandaState, pandaContext); } new ArgumentNullException("pandaContext cannot be null"); }
private void SelectActiveMaterial(PandaState state) { Material[] __mats = _meshRenderer.materials; for (int i = 0; i < 3; i++) { __mats[i].color = Color.clear; } __mats[(int)state].color = Color.white; }
public override void Execute(PandaState pandaState, PandaContext pandaContext) { switch (pandaState) { case PandaState.Basic: new BasicStringEncoding(pandaContext); break; case PandaState.Normal: new NormalStringEncoding(pandaContext); break; } }
public ReferenceProxy(PandaState pandaState, PandaContext pandaContext) { switch (pandaState) { case PandaState.Basic: new RPBasic().Excute(pandaContext); break; case PandaState.Normal: new RPNormal().Excute(pandaContext); break; } }
public override void Execute(PandaState pandaState, PandaContext pandaContext) { switch (pandaState) { case PandaState.Basic: new IntMath(pandaContext); break; case PandaState.Normal: for (int i = 0; i < 1; i++) { new IntMath(pandaContext); } break; } }
public override void Execute(PandaState pandaState, PandaContext pandaContext) { new ReferenceProxy(pandaState, pandaContext); }
public override void Execute(PandaState pandaState, PandaContext pandaContext) { new ControlFlow(pandaState, pandaContext); }
public override void Execute(PandaState pandaState, PandaContext pandaContext) { pandaContext.moduleDef.GlobalType.NestedTypes.Add(new TypeDefUser("PandaObfuscator")); }
public override void Execute(PandaState pandaState, PandaContext pandaContext) { new ConstantMelting(pandaContext); }
public abstract void Execute(PandaState pandaState, PandaContext pandaContext);