Esempio n. 1
0
        private bool method_1()
        {
            var num = _class1870.method_0(16);

            if (num < 0)
            {
                return(false);
            }
            _class1870.method_1(16);
            num = ((num << 8 | num >> 8) & 65535);
            if (num % 31 != 0)
            {
                throw new SharpZipBaseException("Header checksum illegal");
            }
            if ((num & 3840) != 2048)
            {
                throw new SharpZipBaseException("Compression Method unknown");
            }
            if ((num & 32) == 0)
            {
                _int4 = 2;
            }
            else
            {
                _int4 = 1;
                _int6 = 32;
            }
            return(true);
        }
Esempio n. 2
0
        public int method_1(Class187 class187_0)
        {
            int num;

            if ((num = class187_0.method_0(9)) >= 0)
            {
                int num2;
                if ((num2 = (int)this.short_0[num]) >= 0)
                {
                    class187_0.method_1(num2 & 15);
                    return(num2 >> 4);
                }
                int num3 = -(num2 >> 4);
                int int_ = num2 & 15;
                if ((num = class187_0.method_0(int_)) >= 0)
                {
                    num2 = (int)this.short_0[num3 | num >> 9];
                    class187_0.method_1(num2 & 15);
                    return(num2 >> 4);
                }
                int num4 = class187_0.method_2();
                num  = class187_0.method_0(num4);
                num2 = (int)this.short_0[num3 | num >> 9];
                if ((num2 & 15) <= num4)
                {
                    class187_0.method_1(num2 & 15);
                    return(num2 >> 4);
                }
                return(-1);
            }
            else
            {
                int num5 = class187_0.method_2();
                num = class187_0.method_0(num5);
                int num2 = (int)this.short_0[num];
                if (num2 >= 0 && (num2 & 15) <= num5)
                {
                    class187_0.method_1(num2 & 15);
                    return(num2 >> 4);
                }
                return(-1);
            }
        }
Esempio n. 3
0
        public int method_1(Class187 class1870)
        {
            int num;

            if ((num = class1870.method_0(9)) >= 0)
            {
                int num2;
                if ((num2 = _short0[num]) >= 0)
                {
                    class1870.method_1(num2 & 15);
                    return(num2 >> 4);
                }
                var num3 = -(num2 >> 4);
                var int_ = num2 & 15;
                if ((num = class1870.method_0(int_)) >= 0)
                {
                    num2 = _short0[num3 | num >> 9];
                    class1870.method_1(num2 & 15);
                    return(num2 >> 4);
                }
                var num4 = class1870.method_2();
                num  = class1870.method_0(num4);
                num2 = _short0[num3 | num >> 9];
                if ((num2 & 15) <= num4)
                {
                    class1870.method_1(num2 & 15);
                    return(num2 >> 4);
                }
                return(-1);
            }
            else
            {
                var num5 = class1870.method_2();
                num = class1870.method_0(num5);
                int num2 = _short0[num];
                if (num2 >= 0 && (num2 & 15) <= num5)
                {
                    class1870.method_1(num2 & 15);
                    return(num2 >> 4);
                }
                return(-1);
            }
        }
Esempio n. 4
0
 private void method_3(Class187 A_0)
 {
     A_0.method_1(0x10);
     A_0.method_3(0x10);
     A_0.method_5(0x80);
     A_0.method_7(20);
     A_0.method_9(BookmarkStart.b("爲瀴搶", 13));
     A_0.method_11(BookmarkStart.b("瀲崴嘶倸唺吼儾♀โ⩄⍆ⱈࡊཌ౎", 13));
     A_0.method_13(BookmarkStart.b("怲紴瘶࠸", 13));
 }
Esempio n. 5
0
        public bool method_0(Class187 class1870)
        {
            while (true)
            {
                switch (_int3)
                {
                case 0:
                    _int4 = class1870.method_0(5);
                    if (_int4 >= 0)
                    {
                        _int4 += 257;
                        class1870.method_1(5);
                        _int3 = 1;
                        goto IL_1FD;
                    }
                    return(false);

                case 1:
                    goto IL_1FD;

                case 2:
                    goto IL_1AF;

                case 3:
                    goto IL_176;

                case 4:
                    break;

                case 5:
                    goto IL_2C;

                default:
                    continue;
                }
IL_F4:
                int num;
                while (((num = _class1970.method_1(class1870)) & -16) == 0)
                {
                    _byte1[_int9++] = (_byte2 = (byte)num);
                    if (_int9 == _int7)
                    {
                        return(true);
                    }
                }
                if (num >= 0)
                {
                    if (num >= 17)
                    {
                        _byte2 = 0;
                    }
                    else if (_int9 == 0)
                    {
                        goto IL_2A6;
                    }
                    _int8 = num - 16;
                    _int3 = 5;
                    goto IL_2C;
                }
                return(false);

IL_176:
                while (_int9 < _int6)
                {
                    var num2 = class1870.method_0(3);
                    if (num2 < 0)
                    {
                        return(false);
                    }
                    class1870.method_1(3);
                    _byte0[Int2[_int9]] = (byte)num2;
                    _int9++;
                }
                _class1970 = new Class197(_byte0);
                _byte0     = null;
                _int9      = 0;
                _int3      = 4;
                goto IL_F4;
IL_2C:
                var num3 = Int1[_int8];
                var num4 = class1870.method_0(num3);
                if (num4 < 0)
                {
                    return(false);
                }
                class1870.method_1(num3);
                num4 += Int0[_int8];
                if (_int9 + num4 > _int7)
                {
                    break;
                }
                while (num4-- > 0)
                {
                    _byte1[_int9++] = _byte2;
                }
                if (_int9 == _int7)
                {
                    return(true);
                }
                _int3 = 4;
                continue;
IL_1AF:
                _int6 = class1870.method_0(4);
                if (_int6 >= 0)
                {
                    _int6 += 4;
                    class1870.method_1(4);
                    _byte0 = new byte[19];
                    _int9  = 0;
                    _int3  = 3;
                    goto IL_176;
                }
                return(false);

IL_1FD:
                _int5 = class1870.method_0(5);
                if (_int5 >= 0)
                {
                    _int5++;
                    class1870.method_1(5);
                    _int7  = _int4 + _int5;
                    _byte1 = new byte[_int7];
                    _int3  = 2;
                    goto IL_1AF;
                }
                return(false);
            }
            throw new SharpZipBaseException();
IL_2A6:
            throw new SharpZipBaseException();
        }
Esempio n. 6
0
        public bool method_0(Class187 class187_0)
        {
            while (true)
            {
                switch (this.int_3)
                {
                case 0:
                    this.int_4 = class187_0.method_0(5);
                    if (this.int_4 >= 0)
                    {
                        this.int_4 += 257;
                        class187_0.method_1(5);
                        this.int_3 = 1;
                        goto IL_1FD;
                    }
                    return(false);

                case 1:
                    goto IL_1FD;

                case 2:
                    goto IL_1AF;

                case 3:
                    goto IL_176;

                case 4:
                    break;

                case 5:
                    goto IL_2C;

                default:
                    continue;
                }
IL_F4:
                int num;
                while (((num = this.class197_0.method_1(class187_0)) & -16) == 0)
                {
                    this.byte_1[this.int_9++] = (this.byte_2 = (byte)num);
                    if (this.int_9 == this.int_7)
                    {
                        return(true);
                    }
                }
                if (num >= 0)
                {
                    if (num >= 17)
                    {
                        this.byte_2 = 0;
                    }
                    else if (this.int_9 == 0)
                    {
                        goto IL_2A6;
                    }
                    this.int_8 = num - 16;
                    this.int_3 = 5;
                    goto IL_2C;
                }
                return(false);

IL_176:
                while (this.int_9 < this.int_6)
                {
                    int num2 = class187_0.method_0(3);
                    if (num2 < 0)
                    {
                        return(false);
                    }
                    class187_0.method_1(3);
                    this.byte_0[Class198.int_2[this.int_9]] = (byte)num2;
                    this.int_9++;
                }
                this.class197_0 = new Class197(this.byte_0);
                this.byte_0     = null;
                this.int_9      = 0;
                this.int_3      = 4;
                goto IL_F4;
IL_2C:
                int num3 = Class198.int_1[this.int_8];
                int num4 = class187_0.method_0(num3);
                if (num4 < 0)
                {
                    return(false);
                }
                class187_0.method_1(num3);
                num4 += Class198.int_0[this.int_8];
                if (this.int_9 + num4 > this.int_7)
                {
                    break;
                }
                while (num4-- > 0)
                {
                    this.byte_1[this.int_9++] = this.byte_2;
                }
                if (this.int_9 == this.int_7)
                {
                    return(true);
                }
                this.int_3 = 4;
                continue;
IL_1AF:
                this.int_6 = class187_0.method_0(4);
                if (this.int_6 >= 0)
                {
                    this.int_6 += 4;
                    class187_0.method_1(4);
                    this.byte_0 = new byte[19];
                    this.int_9  = 0;
                    this.int_3  = 3;
                    goto IL_176;
                }
                return(false);

IL_1FD:
                this.int_5 = class187_0.method_0(5);
                if (this.int_5 >= 0)
                {
                    this.int_5++;
                    class187_0.method_1(5);
                    this.int_7  = this.int_4 + this.int_5;
                    this.byte_1 = new byte[this.int_7];
                    this.int_3  = 2;
                    goto IL_1AF;
                }
                return(false);
            }
            throw new SharpZipBaseException();
IL_2A6:
            throw new SharpZipBaseException();
        }