Confuser.Core.Analyzers.NameAnalyzer.AnalyzeIvtMap C# (CSharp) Method

AnalyzeIvtMap() static private method

static private AnalyzeIvtMap ( IEnumerable asms ) : void
asms IEnumerable
return void
        void AnalyzeIvtMap(IEnumerable<AssemblyDefinition> asms)
        {
            ivtMap = new Dictionary<AssemblyDefinition, List<string>>();
            foreach (AssemblyDefinition asm in asms)
            {
                if (!ivtMap.ContainsKey(asm)) ivtMap.Add(asm, new List<string>());
                Dictionary<string, CustomAttribute> internalVis = new Dictionary<string, CustomAttribute>();
                foreach (CustomAttribute attr in asm.CustomAttributes)
                    if (attr.AttributeType.FullName == "System.Runtime.CompilerServices.InternalsVisibleToAttribute")
                        internalVis.Add(NormalizeIva((string)attr.ConstructorArguments[0].Value), attr);
                if (internalVis.Count != 0)
                {
                    Logger._Log("> InternalsVisibleToAttribute found in " + asm.FullName + "!");

                    List<AssemblyDefinition> refAsms = new List<AssemblyDefinition>();
                    foreach (AssemblyDefinition asmm in asms)
                    {
                        CustomAttribute attr;
                        if (internalVis.TryGetValue(asmm.Name.Name, out attr))
                        {
                            refAsms.Add(asmm);
                            attr.ConstructorArguments[0] = new CustomAttributeArgument(
                                asm.MainModule.TypeSystem.String,
                                GetIva(asmm.Name));
                        }
                    }

                    if (refAsms.Count == 0)
                        Logger._Log("> Internal assemblies NOT found!");
                    else
                        Logger._Log("> Internal assemblies found!");
                    foreach (AssemblyDefinition i in refAsms)
                    {
                        if (!ivtMap.ContainsKey(i)) ivtMap.Add(i, new List<string>());
                        ivtMap[i].Add(asm.GetVersionName());
                    }
                }
            }
        }
        void AnalyzeIvt(AssemblyDefinition asm)