// Token: 0x06000030 RID: 48 RVA: 0x00003560 File Offset: 0x00001760
        public ce462f8df7ccb876a2d3bd500ac1c174f(byte[] cd3d02c445ae4e075c7f12baeb73fd3e1)
        {
            BinaryReader binaryReader = new BinaryReader(new MemoryStream(cd3d02c445ae4e075c7f12baeb73fd3e1));

            try
            {
                if (binaryReader.ReadUInt32() != (uint)cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(248))
                {
                    for (;;)
                    {
                        switch (1)
                        {
                        case 0:
                            continue;
                        }
                        break;
                    }
                    if (!true)
                    {
                        RuntimeMethodHandle runtimeMethodHandle = methodof(ce462f8df7ccb876a2d3bd500ac1c174f..ctor(byte[])).MethodHandle;
                    }
                    throw new Exception(ceffa389ee86c0ee26f31dd3efacbdd38.c5dd75c94760bfb37727a44ddc794d278(1257));
                }
                binaryReader.cf4db36623042c83be97a6ec33e7b6a16();
                int num = binaryReader.cf4db36623042c83be97a6ec33e7b6a16();
                binaryReader.BaseStream.Seek((long)cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(252), (SeekOrigin)cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(256));
                for (int i = cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(260); i < num; i += cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(272))
                {
                    binaryReader.ReadUInt32();
                    binaryReader.c3ec653d42b27774123bc8da327735803();
                    binaryReader.ReadUInt32();
                    binaryReader.BaseStream.Seek((long)cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(264), (SeekOrigin)cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(268));
                }
                for (;;)
                {
                    switch (5)
                    {
                    case 0:
                        continue;
                    }
                    break;
                }
                binaryReader.BaseStream.Seek((long)(cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(276) + num * cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(280) + cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(284)), (SeekOrigin)cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(288));
                uint num2 = binaryReader.c3ec653d42b27774123bc8da327735803();
                binaryReader.BaseStream.Seek((long)(cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(292) + num * cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(296)), (SeekOrigin)cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(300));
                int num3 = cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(304);
                while ((long)num3 < (long)((ulong)num2))
                {
                    c362f27bc84ea5b6692418fbdaf79e992 c362f27bc84ea5b6692418fbdaf79e = new c362f27bc84ea5b6692418fbdaf79e992
                    {
                        c0209aefcfe7e6dc9ad7719a0fa0b263d = binaryReader.ReadByte()
                    };
                    c362f27bc84ea5b6692418fbdaf79e.c9129297003e298db78ceb4ec7765d937 = (((int)c362f27bc84ea5b6692418fbdaf79e.c0209aefcfe7e6dc9ad7719a0fa0b263d & cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(308)) == cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(312));
                    c362f27bc84ea5b6692418fbdaf79e.c7b4ce553a3c25a637311d7b27df95266 = (((int)c362f27bc84ea5b6692418fbdaf79e.c0209aefcfe7e6dc9ad7719a0fa0b263d & cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(316)) > cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(320));
                    binaryReader.cb35de7f46e1bfb93038835711aa19705(cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(324));
                    c362f27bc84ea5b6692418fbdaf79e.c6d90c75477d966c1350c18dcdfa11588 = binaryReader.c3ec653d42b27774123bc8da327735803();
                    c362f27bc84ea5b6692418fbdaf79e.c5db06f710879d10bd98fa2c1adf0deb8 = binaryReader.c3ec653d42b27774123bc8da327735803();
                    c362f27bc84ea5b6692418fbdaf79e.cfe230e1aa93fc352e9311fa549f61ffb = binaryReader.c098917df2bc90b8f4a4863b177fb351a();
                    c362f27bc84ea5b6692418fbdaf79e.c8cd86a941e9dcf502ef598e3fac37842 = binaryReader.c098917df2bc90b8f4a4863b177fb351a();
                    this.Files.Add(c362f27bc84ea5b6692418fbdaf79e);
                    num3 += cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(328);
                }
                for (;;)
                {
                    switch (2)
                    {
                    case 0:
                        continue;
                    }
                    break;
                }
                int num4 = cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(332);
                while ((long)num4 < (long)((ulong)num2))
                {
                    string text = "";
                    for (;;)
                    {
                        char c = binaryReader.ReadChar();
                        if (c == '\0')
                        {
                            break;
                        }
                        for (;;)
                        {
                            switch (7)
                            {
                            case 0:
                                continue;
                            }
                            break;
                        }
                        text = c72c3e9a0cc00ee2de6a9f6d658d0ca09.c8d9bd1b5f903cbc3ebfaf48b8b440c7a(text, c.ToString());
                    }
                    this.Files[num4].ce7d298d73bab0df9bcfdc208996dceec = text;
                    num4 += cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(336);
                }
                for (;;)
                {
                    switch (3)
                    {
                    case 0:
                        continue;
                    }
                    break;
                }
                IEnumerable <c362f27bc84ea5b6692418fbdaf79e992> files = this.Files;
                Func <c362f27bc84ea5b6692418fbdaf79e992, bool>  predicate;
                if ((predicate = ce462f8df7ccb876a2d3bd500ac1c174f.< > c.c91d5f3c4da7899dd62ffa8332da1ec8e) == null)
                {
                    for (;;)
                    {
                        switch (4)
                        {
                        case 0:
                            continue;
                        }
                        break;
                    }
                    predicate = (ce462f8df7ccb876a2d3bd500ac1c174f.< > c.c91d5f3c4da7899dd62ffa8332da1ec8e = new Func <c362f27bc84ea5b6692418fbdaf79e992, bool>(ce462f8df7ccb876a2d3bd500ac1c174f.< > c.cdfab1996eb8651828de2a4469aa3481e.cdc13f3e230d3484c2cb0667c567d126f));
                }
                using (List <c362f27bc84ea5b6692418fbdaf79e992> .Enumerator enumerator = files.Where(predicate).ToList <c362f27bc84ea5b6692418fbdaf79e992>().GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        c362f27bc84ea5b6692418fbdaf79e992 c362f27bc84ea5b6692418fbdaf79e2 = enumerator.Current;
                        c362f27bc84ea5b6692418fbdaf79e992 c362f27bc84ea5b6692418fbdaf79e3 = c362f27bc84ea5b6692418fbdaf79e2;
                        string path;
                        if ((path = this.Files[(int)c362f27bc84ea5b6692418fbdaf79e2.c6d90c75477d966c1350c18dcdfa11588].c347713f85ec9fc7a92bc7ca07b2612a0) == null)
                        {
                            for (;;)
                            {
                                switch (5)
                                {
                                case 0:
                                    continue;
                                }
                                break;
                            }
                            path = "";
                        }
                        c362f27bc84ea5b6692418fbdaf79e3.c347713f85ec9fc7a92bc7ca07b2612a0 = Path.Combine(path, c362f27bc84ea5b6692418fbdaf79e2.ce7d298d73bab0df9bcfdc208996dceec);
                    }
                    for (;;)
                    {
                        switch (4)
                        {
                        case 0:
                            continue;
                        }
                        break;
                    }
                }
                List <int> list = new List <int>
                {
                    (int)this.Files[cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(340)].c5db06f710879d10bd98fa2c1adf0deb8
                };
                string text2 = "";
                int    num5  = cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(344);
                while ((long)num5 < (long)((ulong)num2))
                {
                    while (list.Last <int>() <= num5)
                    {
                        text2 = this.cf59b277fd1ec8d2f5deadab481ea4550(text2);
                        list.RemoveAt(list.Count - cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(348));
                    }
                    for (;;)
                    {
                        switch (1)
                        {
                        case 0:
                            continue;
                        }
                        break;
                    }
                    if (this.Files[num5].c9129297003e298db78ceb4ec7765d937)
                    {
                        for (;;)
                        {
                            switch (4)
                            {
                            case 0:
                                continue;
                            }
                            break;
                        }
                        text2 = Path.Combine(text2, this.Files[num5].ce7d298d73bab0df9bcfdc208996dceec);
                        list.Add((int)this.Files[num5].c5db06f710879d10bd98fa2c1adf0deb8);
                    }
                    else
                    {
                        this.Files[num5].c347713f85ec9fc7a92bc7ca07b2612a0 = Path.Combine(text2, this.Files[num5].ce7d298d73bab0df9bcfdc208996dceec);
                    }
                    num5 += cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(352);
                }
                for (;;)
                {
                    switch (4)
                    {
                    case 0:
                        continue;
                    }
                    break;
                }
            }
            finally
            {
                if (binaryReader != null)
                {
                    for (;;)
                    {
                        switch (3)
                        {
                        case 0:
                            continue;
                        }
                        break;
                    }
                    ((IDisposable)binaryReader).Dispose();
                }
            }
        }
        // Token: 0x060004B2 RID: 1202 RVA: 0x00020FBC File Offset: 0x0001F1BC
        protected void c4b1d0ff2a4e5958927cf4a855fe65dab(bool c3c7497942acfe55b365013a6254dd980)
        {
            string text = Path.Combine(c67726bc94fb4dd43c5c00e863a4fed19.CachePath, ceffa389ee86c0ee26f31dd3efacbdd38.c5dd75c94760bfb37727a44ddc794d278(13506));

            if (!File.Exists(text))
            {
                for (;;)
                {
                    switch (1)
                    {
                    case 0:
                        continue;
                    }
                    break;
                }
                if (!true)
                {
                    RuntimeMethodHandle runtimeMethodHandle = methodof(cf7c96734e58d8de9864e1ea854bc2b7b.c4b1d0ff2a4e5958927cf4a855fe65dab(bool)).MethodHandle;
                }
                File.WriteAllBytes(text, c6faa5467be1a4874657b372a49b7c927.rpl2elf);
            }
            ce462f8df7ccb876a2d3bd500ac1c174f ce462f8df7ccb876a2d3bd500ac1c174f = this.cbd119e33552f6e7eda45b0c64e636c3a.c88e4a51a8d0b3e7d29a28576dde32c38();
            IEnumerable <c362f27bc84ea5b6692418fbdaf79e992> files = ce462f8df7ccb876a2d3bd500ac1c174f.Files;
            Func <c362f27bc84ea5b6692418fbdaf79e992, bool>  predicate;

            if ((predicate = cf7c96734e58d8de9864e1ea854bc2b7b.< > c.c55737f9595f09d126f57e223064dac0e) == null)
            {
                for (;;)
                {
                    switch (2)
                    {
                    case 0:
                        continue;
                    }
                    break;
                }
                predicate = (cf7c96734e58d8de9864e1ea854bc2b7b.< > c.c55737f9595f09d126f57e223064dac0e = new Func <c362f27bc84ea5b6692418fbdaf79e992, bool>(cf7c96734e58d8de9864e1ea854bc2b7b.< > c.cdfab1996eb8651828de2a4469aa3481e.c616ebd9c4499c613e17ff3b9bcc340e8));
            }
            c362f27bc84ea5b6692418fbdaf79e992 c362f27bc84ea5b6692418fbdaf79e = files.First(predicate);
            IEnumerable <c362f27bc84ea5b6692418fbdaf79e992> files2           = ce462f8df7ccb876a2d3bd500ac1c174f.Files;
            Func <c362f27bc84ea5b6692418fbdaf79e992, bool>  predicate2;

            if ((predicate2 = cf7c96734e58d8de9864e1ea854bc2b7b.< > c.c8233c9f9915d9314308f99bc2ddaf24a) == null)
            {
                for (;;)
                {
                    switch (4)
                    {
                    case 0:
                        continue;
                    }
                    break;
                }
                predicate2 = (cf7c96734e58d8de9864e1ea854bc2b7b.< > c.c8233c9f9915d9314308f99bc2ddaf24a = new Func <c362f27bc84ea5b6692418fbdaf79e992, bool>(cf7c96734e58d8de9864e1ea854bc2b7b.< > c.cdfab1996eb8651828de2a4469aa3481e.ce8627b517dd13151321db2d2c8110644));
            }
            c362f27bc84ea5b6692418fbdaf79e992 c362f27bc84ea5b6692418fbdaf79e2   = files2.First(predicate2);
            c6114b34ba4893a53ebb4b599e0e2e3fc c6114b34ba4893a53ebb4b599e0e2e3fc = this.cbd119e33552f6e7eda45b0c64e636c3a;
            string c4d68e2c283dbf2783383a0a1d0aaa75a = this.c4d68e2c283dbf2783383a0a1d0aaa75a;
            bool   c39287c15a6e8c6c70cc44cbd62c7f22d = cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(8976) != 0;

            c362f27bc84ea5b6692418fbdaf79e992[] array = cb62f89df70fbc1a6ea491fc391fd54ac.cad714a49573fd585a8ab14c80a23536b(cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(8980));
            array[cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(8984)] = c362f27bc84ea5b6692418fbdaf79e;
            array[cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(8988)] = c362f27bc84ea5b6692418fbdaf79e2;
            c6114b34ba4893a53ebb4b599e0e2e3fc.cf08369cbb3a626a84f05ff893b78fed7(c4d68e2c283dbf2783383a0a1d0aaa75a, c39287c15a6e8c6c70cc44cbd62c7f22d, c3c7497942acfe55b365013a6254dd980, array, cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(8992) != 0);
            Process process = new Process();
            string  text2   = this.c01f07c49f1e015426bb7975f0ae6d0f7();
            string  arg     = this.c2bde6b24c3a9f7e1c4da8f930b4419a9();

            process.StartInfo.FileName         = text;
            process.EnableRaisingEvents        = (cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(8996) != 0);
            process.StartInfo.CreateNoWindow   = (cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(9000) != 0);
            process.StartInfo.Arguments        = string.Format(ceffa389ee86c0ee26f31dd3efacbdd38.c5dd75c94760bfb37727a44ddc794d278(41099), text2, arg);
            process.StartInfo.WorkingDirectory = Path.GetDirectoryName(text2);
            process.StartInfo.UseShellExecute  = (cebbdeae8341a51f374f3ef4c993a069a.c6bc1c09ec46e3a402ca1f5ca208c573e(9004) != 0);
            process.Start();
            process.WaitForExit();
        }