protected override void Execute(ConfuserContext context, ProtectionParameters parameters)
 {
     foreach (ModuleDef module in parameters.Targets.OfType <ModuleDef>())
     {
         CFHelper cFHelper = new CFHelper();
         foreach (TypeDef type in module.Types)
         {
             foreach (MethodDef method in type.Methods)
             {
                 if (method.HasBody && method.Body.Instructions.Count > 0 && !method.IsConstructor)
                 {
                     if (!cFHelper.HasUnsafeInstructions(method))
                     {
                         if (DnlibUtils2.Simplify(method))
                         {
                             Blockss blocks = cFHelper.GetBlocks(method);
                             if (blocks.blocks.Count != 1)
                             {
                                 Run(cFHelper, method, blocks, context);
                             }
                             DnlibUtils2.Optimize(method);
                         }
                     }
                 }
             }
         }
     }
 }