protected override void Execute(ConfuserContext context, ProtectionParameters parameters)
        {
            var marker        = context.Registry.GetService <IMarkerService>();
            var name          = context.Registry.GetService <INameService>();
            var allAddedTypes = new List <IDnlibDef>();

            Type[][] typesToAdd =
            {
                BabelDotNet.GetTypes(),       //+110
                CodeFort.GetTypes(),          //+100
                CodeWall.GetTypes(),          //+100
                CryptoObfuscator.GetTypes(),  //+120
                Dotfuscator.GetTypes(),       //+100
                EazfuscatorDotNet.GetTypes(), //+100
                GoliathDotNet.GetTypes(),     //+100
                Xenocode.GetTypes()           //+100
            };

            foreach (var m in parameters.Targets.Cast <ModuleDef>())
            {
                //inject types
                foreach (Type[] idk in typesToAdd)
                {
                    allAddedTypes.AddRange(InjectType(m, context.Logger, idk));
                }

                //mark types
                foreach (IDnlibDef def in allAddedTypes)
                {
                    name.MarkHelper(def, marker, Parent);
                }
            }
        }
        protected override void Execute(ConfuserContext context, ProtectionParameters parameters)
        {
            ModuleDef m             = context.CurrentModule;
            var       marker        = context.Registry.GetService <IMarkerService>();
            var       name          = context.Registry.GetService <INameService>();
            var       allAddedTypes = new List <IDnlibDef>();

            TypeDefUser[] attributesToAdd =
            {
                AgileDotNet.GetAttributes(),      //+10
                BabelDotNet.GetAttributes(),      //+10
                CryptoObfuscator.GetAttributes(), //+10
                Dotfuscator.GetAttributes(),      //+10
                GoliathDotNet.GetAttributes(),    //+10
                SpicesDotNet.GetAttributes(),     //+10
                Xenocode.GetAttributes(),         //+10
                SmartAssembly.GetAttributes(),    //+10
                new TypeDefUser("YanoAttribute")  //for unknown obfuscator
            };

            //inject types
            foreach (TypeDefUser idk in attributesToAdd)
            {
                allAddedTypes.AddRange(InjectType(m, context.Logger, idk));
            }

            //mark types to NOT be renamed
            foreach (IDnlibDef def in allAddedTypes)
            {
                marker.Mark(def, Parent);
                name.SetCanRename(def, false);
            }
        }