public virtual void _0001(bool isinit, AccountFilter cfg)
        {
            //Discarded unreachable code: IL_0002
            //IL_0003: Incompatible stack heights: 0 vs 1
            recordList   = isinit;
            m_ReaderList = null;
            DescriptorListAnnotation descriptorListAnnotation = default(DescriptorListAnnotation);

            if (cfg is DescriptorListAnnotation)
            {
                DescriptorListAnnotation obj = (DescriptorListAnnotation)cfg;
                if (3u != 0)
                {
                    descriptorListAnnotation = obj;
                }
            }
            else
            {
                if (!(cfg is TemplateIssuerImporter))
                {
                    throw new ArgumentException("invalid parameters passed to GCM");
                }
                TemplateIssuerImporter obj2 = (TemplateIssuerImporter)cfg;
                TemplateIssuerImporter templateIssuerImporter;
                if (uint.MaxValue != 0)
                {
                    templateIssuerImporter = obj2;
                }
                m_FilterList   = templateIssuerImporter.EnableDic();
                m_InstanceList = null;
                if (0 == 0)
                {
                    m_EventList = 16;
                    _DicList    = (MapperList)templateIssuerImporter._0001();
                    goto IL_00f6;
                }
            }
            m_FilterList   = descriptorListAnnotation._0002();
            m_InstanceList = descriptorListAnnotation._0001();
            int num = descriptorListAnnotation._0001();

            goto IL_0048;
IL_00f6:
            num = (isinit ? 16 : (16 + m_EventList));
            while (5u != 0)
            {
                int num2;
                if (2u != 0)
                {
                    num2 = num;
                }
                m_IssuerList = new byte[num2];
                if (m_FilterList != null)
                {
                    int num3 = m_FilterList.Length;
                    int num4 = 1;
                    while (num3 >= num4)
                    {
                        if (m_InstanceList == null)
                        {
                            m_InstanceList = new byte[0];
                        }
                        ParamsIssuerImporter comparatorFilter = _ComparatorFilter;
                        MapperList           dicList          = _DicList;
                        if (8u != 0)
                        {
                            comparatorFilter._0001(isv: true, dicList);
                        }
                        _ErrorList = new byte[16];
                        num        = _ComparatorFilter._0001(_ErrorList, 0, _ErrorList, 0);
                        if (4 == 0)
                        {
                            goto IL_010c;
                        }
                        SchemaFilter schemaFilter = procFilter;
                        byte[]       errorList    = _ErrorList;
                        if (0 == 0)
                        {
                            schemaFilter._0001(errorList);
                        }
                        _ComposerList = RunDic(m_InstanceList);
                        if (0 == 0)
                        {
                            num3 = m_FilterList.Length;
                            num4 = 12;
                            if (num4 == 0)
                            {
                                continue;
                            }
                            if (num3 != num4)
                            {
                                _PropertyList = RunDic(m_FilterList);
                                byte[] array = new byte[16];
                                CompareDic((ulong)((long)m_FilterList.Length * 8L), array, 8);
                                MappingIteratorMapping.ValidateDic(_PropertyList, array);
                                procFilter._0002(_PropertyList);
                                goto IL_0269;
                            }
                            _PropertyList = new byte[16];
                        }
                        Array.Copy(m_FilterList, 0, _PropertyList, 0, m_FilterList.Length);
                        _PropertyList[15] = 1;
                        goto IL_0269;
IL_0269:
                        m_ClientList    = RegistryList.CloneDic(_ComposerList);
                        broadcasterList = RegistryList.CloneDic(_PropertyList);
                        m_ClassList     = 0;
                        requestList     = 0uL;
                        return;
                    }
                }
                throw new ArgumentException("IV must be at least 1 byte");
                IL_010c :;
            }
            goto IL_0048;
IL_0048:
            int num5 = default(int);

            if (0 == 0)
            {
                num5 = num;
            }
            if (num5 < 96 || num5 > 128 || num5 % 8 != 0)
            {
                throw new ArgumentException("Invalid value for MAC size: " + num5);
            }
            m_EventList = num5 / 8;
            _DicList    = descriptorListAnnotation._0001();
            goto IL_00f6;
        }