コード例 #1
0
    internal bool method_3(string A_0)
    {
        Class187 class2 = this.class62_0.method_4().method_0();
        Class190 class3 = this.class62_0.method_4().method_4().method_0();
        bool     flag   = this.method_0();

        byte[]        buffer    = new byte[] { 0xfe, 0xa7, 210, 0x76, 0x3b, 0x4b, 0x9e, 0x79 };
        byte[]        buffer2   = this.class299_0.method_8(A_0, class3.method_16(), buffer, class3.method_6() >> 3, class3.method_0(), flag);
        byte[]        buffer3   = this.method_5(class3.method_18(), class3.method_4(), buffer2, class3.method_16(), class3.method_2());
        byte[]        buffer4   = new byte[] { 0xd7, 170, 15, 0x6d, 0x30, 0x61, 0x34, 0x4e };
        byte[]        buffer5   = this.class299_0.method_8(A_0, class3.method_16(), buffer4, class3.method_6() >> 3, class3.method_0(), flag);
        byte[]        buffer6   = this.method_5(class3.method_20(), class3.method_4(), buffer5, class3.method_16(), class3.method_8());
        HashAlgorithm algorithm = null;

        if (flag)
        {
            algorithm = new SHA512Managed();
        }
        else
        {
            algorithm = new SHA1Managed();
        }
        byte[] buffer7 = algorithm.ComputeHash(buffer3);
        bool   flag2   = this.class299_0.method_15(buffer6, buffer7);

        byte[] buffer8 = new byte[] { 20, 110, 11, 0xe7, 0xab, 0xac, 0xd0, 0xd6 };
        byte[] buffer9 = this.class299_0.method_8(A_0, class3.method_16(), buffer8, class3.method_6() >> 3, class3.method_0(), flag);
        this.byte_0 = this.method_5(class3.method_22(), class3.method_4(), buffer9, class3.method_16(), class2.method_4() / 8);
        return(flag2);
    }
コード例 #2
0
    private byte[] method_2(Stream A_0, Interface61 A_1, Class187 A_2, byte[] A_3)
    {
        byte[] bytes = BitConverter.GetBytes(A_0.Length);
        SHA1   sha   = new SHA1Managed();

        using (Stream1 stream = A_1.imethod_2(BookmarkStart.b("漩䈫䴭䈯䬱䐳䈵崷帹氻弽⌿⥁╃ⅅⵇ", 4)))
        {
            int num = (int)(A_0.Length / 0x1000L);
            if ((A_0.Length % 0x1000L) != 0L)
            {
                num++;
            }
            for (int i = 0; i < num; i++)
            {
                int    count   = Math.Min(0x1000, ((int)A_0.Length) - (i * 0x1000));
                byte[] buffer  = new byte[count];
                byte[] buffer3 = new byte[count];
                A_0.Read(buffer, 0, count);
                byte[] buffer4 = sha.ComputeHash(this.class299_0.method_12(A_2.method_14(), BitConverter.GetBytes(i)));
                buffer3 = this.method_11(buffer, A_2.method_2(), A_3, buffer4);
                bytes   = this.class299_0.method_12(bytes, buffer3);
            }
            stream.Write(bytes, 0, bytes.Length);
        }
        return(bytes);
    }
コード例 #3
0
ファイル: Class196.cs プロジェクト: no1mann/Open-GHTCP
 public Class196(bool bool_2)
 {
     this.bool_1     = bool_2;
     this.class200_0 = new Class200();
     this.class187_0 = new Class187();
     this.class203_0 = new Class203();
     this.int_4      = (bool_2 ? 2 : 0);
 }
コード例 #4
0
 public Class196(bool bool2)
 {
     _bool1     = bool2;
     _class2000 = new Class200();
     _class1870 = new Class187();
     _class2030 = new Class203();
     _int4      = (bool2 ? 2 : 0);
 }
コード例 #5
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));
 }
コード例 #6
0
    internal Stream method_1()
    {
        int num = 0;

        if (this.byte_0 == null)
        {
            throw new InvalidOperationException(BookmarkStart.b("漥䘧䤩䌫尭䈯圱圳䈵ᠷ䨹崻䴽㌿㕁⭃㑅ⱇ摉", num));
        }
        MemoryStream  stream2   = new MemoryStream();
        Class187      class2    = this.class62_0.method_4().method_0();
        bool          flag      = this.method_0();
        HashAlgorithm algorithm = null;

        if (flag)
        {
            algorithm = new SHA512Managed();
        }
        else
        {
            algorithm = new SHA1Managed();
        }
        using (Stream1 stream = this.interface61_0.imethod_0(BookmarkStart.b("挥䘧䤩師圭䀯䘱儳刵样嬹弻唽ℿ╁⅃", num)))
        {
            byte[] buffer = new byte[8];
            stream.Read(buffer, 0, 8);
            int    count   = BitConverter.ToInt32(buffer, 0);
            int    num3    = count % class2.method_2();
            int    num4    = (num3 > 0) ? ((count + class2.method_2()) - num3) : count;
            byte[] buffer3 = new byte[num4];
            stream.Read(buffer3, 0, num4);
            byte[] buffer4 = this.class299_0.method_12(buffer, buffer3);
            if (!this.method_4(buffer4))
            {
                throw new Exception(BookmarkStart.b("挥䘧䤩師圭䀯䘱儳刵ᠷ䨹崻崽⬿⍁⍃⍅桇⍉㽋湍㥏㱑≓㝕㑗㍙㡛", num));
            }
            byte[] dst  = new byte[count];
            int    num6 = ((num4 % 0x1000) == 0) ? (num4 / 0x1000) : ((num4 / 0x1000) + 1);
            for (int i = 0; i < num6; i++)
            {
                int    num7    = Math.Min(0x1000, num4 - (i * 0x1000));
                byte[] buffer5 = new byte[num7];
                byte[] src     = new byte[num7];
                Buffer.BlockCopy(buffer3, i * 0x1000, buffer5, 0, num7);
                byte[] buffer7 = algorithm.ComputeHash(this.class299_0.method_12(class2.method_14(), BitConverter.GetBytes(i)));
                src  = this.method_5(buffer5, class2.method_2(), this.byte_0, buffer7, num7);
                num7 = (i == (num6 - 1)) ? (num7 - (num4 - count)) : num7;
                Buffer.BlockCopy(src, 0, dst, i * 0x1000, num7);
            }
            stream2.Write(dst, 0, count);
            stream2.Position = 0L;
        }
        return(stream2);
    }
コード例 #7
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);
            }
        }
コード例 #8
0
    private void method_1(Stream A_0, Interface61 A_1, string A_2)
    {
        SHA1 sha = new SHA1Managed();

        using (Stream1 stream = A_1.imethod_2(BookmarkStart.b("欭帯儱䘳伵䠷丹唻儽⸿ୁ⩃⁅❇", 8)))
        {
            Class62 class2 = new Class62();
            class2.method_1(0x40004);
            class2.method_3(0x40);
            Class187 class3 = class2.method_4().method_0();
            this.method_3(class3);
            class3.method_15(this.method_10(class3.method_0()));
            Class190 class4 = class2.method_4().method_4().method_0();
            this.method_4(class4);
            class4.method_17(this.method_10(class4.method_2()));
            byte[] buffer  = this.method_10(class4.method_2());
            byte[] buffer2 = new byte[] { 0xfe, 0xa7, 210, 0x76, 0x3b, 0x4b, 0x9e, 0x79 };
            byte[] buffer3 = this.class299_0.method_9(A_2, class4.method_16(), buffer2, class4.method_6() >> 3, class4.method_0());
            class4.method_19(this.method_11(buffer, class4.method_4(), buffer3, class4.method_16()));
            byte[] buffer4 = new byte[] { 0xd7, 170, 15, 0x6d, 0x30, 0x61, 0x34, 0x4e };
            buffer3 = this.class299_0.method_9(A_2, class4.method_16(), buffer4, class4.method_6() >> 3, class4.method_0());
            class4.method_21(this.method_11(sha.ComputeHash(buffer), class4.method_4(), buffer3, class4.method_16()));
            byte[] buffer5 = this.method_10(class3.method_4() / 8);
            byte[] buffer6 = new byte[] { 20, 110, 11, 0xe7, 0xab, 0xac, 0xd0, 0xd6 };
            buffer3 = this.class299_0.method_9(A_2, class4.method_16(), buffer6, class4.method_6() >> 3, class4.method_0());
            class4.method_23(this.method_11(buffer5, class4.method_4(), buffer3, class4.method_16()));
            Class188 class5  = class2.method_4().method_2();
            byte[]   buffer7 = new byte[] { 0x5f, 0xb2, 0xad, 1, 12, 0xb9, 0xe1, 0xf6 };
            byte[]   buffer8 = sha.ComputeHash(this.class299_0.method_12(class3.method_14(), buffer7));
            buffer8 = this.class299_0.method_13(buffer8, class3.method_2(), 0);
            byte[] buffer9 = this.method_10(class3.method_6());
            class5.method_1(this.method_11(buffer9, class3.method_2(), buffer5, buffer8));
            byte[]   buffer10 = this.method_2(A_0, A_1, class3, buffer5);
            HMACSHA1 hmacsha  = new HMACSHA1 {
                Key = this.class299_0.method_13(buffer9, class3.method_6(), 0)
            };
            byte[] buffer11 = new byte[] { 160, 0x67, 0x7f, 2, 0xb2, 0x2c, 0x84, 0x33 };
            byte[] buffer12 = sha.ComputeHash(this.class299_0.method_12(class3.method_14(), buffer11));
            buffer12 = this.class299_0.method_13(buffer12, class3.method_2(), 0);
            class5.method_3(this.method_11(hmacsha.ComputeHash(buffer10), class3.method_2(), buffer5, buffer12));
            class2.method_5(stream);
        }
    }
コード例 #9
0
ファイル: Class197.cs プロジェクト: no1mann/Open-GHTCP
        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);
            }
        }
コード例 #10
0
ファイル: Class203.cs プロジェクト: no1mann/Open-GHTCP
        public int method_3(Class187 class187_0, int int_2)
        {
            int_2 = Math.Min(Math.Min(int_2, 32768 - this.int_1), class187_0.method_3());
            int num = 32768 - this.int_0;
            int num2;

            if (int_2 > num)
            {
                num2 = class187_0.method_6(this.byte_0, this.int_0, num);
                if (num2 == num)
                {
                    num2 += class187_0.method_6(this.byte_0, 0, int_2 - num);
                }
            }
            else
            {
                num2 = class187_0.method_6(this.byte_0, this.int_0, int_2);
            }
            this.int_0  = (this.int_0 + num2 & 32767);
            this.int_1 += num2;
            return(num2);
        }
コード例 #11
0
ファイル: Class203.cs プロジェクト: uwx/Open-GHTCP
        public int method_3(Class187 class1870, int int2)
        {
            int2 = Math.Min(Math.Min(int2, 32768 - _int1), class1870.method_3());
            var num = 32768 - _int0;
            int num2;

            if (int2 > num)
            {
                num2 = class1870.method_6(_byte0, _int0, num);
                if (num2 == num)
                {
                    num2 += class1870.method_6(_byte0, 0, int2 - num);
                }
            }
            else
            {
                num2 = class1870.method_6(_byte0, _int0, int2);
            }
            _int0  = (_int0 + num2 & 32767);
            _int1 += num2;
            return(num2);
        }
コード例 #12
0
ファイル: Class795.cs プロジェクト: 15831944/WW
        private void ReadFrom(Interface8 reader)
        {
            this.class987_0 = new Class987(reader);
            if (this.enum30_0 == Class795.Enum30.const_1)
            {
                return;
            }
            this.ilist_0    = (IList <Class80>) new List <Class80>(System.Math.Min(this.class987_0.NumberOfRecords, 256));
            this.ilist_2    = (IList <Class98>) new List <Class98>();
            this.class187_0 = (Class187)null;
            Class80 class80;

            while ((class80 = this.method_5(reader)) != null)
            {
                this.ilist_0.Add(class80);
                class80.vmethod_2(this);
                this.method_6(this.ilist_0.Count - 1);
            }
            if (this.idictionary_0.Count != 0)
            {
                throw new Exception0("References in the SAT code couldn't be solved");
            }
        }
コード例 #13
0
    private bool method_4(byte[] A_0)
    {
        Class187      class2    = this.class62_0.method_4().method_0();
        Class188      class3    = this.class62_0.method_4().method_2();
        bool          flag      = this.method_0();
        HashAlgorithm algorithm = null;

        if (flag)
        {
            algorithm = new SHA512Managed();
        }
        else
        {
            algorithm = new SHA1Managed();
        }
        byte[] buffer  = new byte[] { 0x5f, 0xb2, 0xad, 1, 12, 0xb9, 0xe1, 0xf6 };
        byte[] buffer2 = algorithm.ComputeHash(this.class299_0.method_12(class2.method_14(), buffer));
        buffer2 = this.class299_0.method_13(buffer2, class2.method_2(), 0);
        byte[] buffer3 = this.method_5(class3.method_0(), class2.method_2(), this.byte_0, buffer2, class2.method_6());
        HMAC   hmac    = null;

        if (flag)
        {
            hmac = new HMACSHA512();
        }
        else
        {
            hmac = new HMACSHA1();
        }
        hmac.Key = this.class299_0.method_13(buffer3, class2.method_6(), 0);
        byte[] buffer4 = hmac.ComputeHash(A_0);
        byte[] buffer5 = new byte[] { 160, 0x67, 0x7f, 2, 0xb2, 0x2c, 0x84, 0x33 };
        byte[] buffer6 = algorithm.ComputeHash(this.class299_0.method_12(class2.method_14(), buffer5));
        buffer6 = this.class299_0.method_13(buffer6, class2.method_2(), 0);
        byte[] buffer7 = this.method_5(class3.method_2(), class2.method_2(), this.byte_0, buffer6, class2.method_6());
        return(this.class299_0.method_15(buffer4, buffer7));
    }
コード例 #14
0
ファイル: Class198.cs プロジェクト: uwx/Open-GHTCP
        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();
        }
コード例 #15
0
 public override void Visit(Class187 c) { }
コード例 #16
0
ファイル: Class198.cs プロジェクト: no1mann/Open-GHTCP
        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();
        }
コード例 #17
0
 internal void method_1(Class187 A_0)
 {
     this.class187_0 = A_0;
 }
コード例 #18
0
 public abstract void Visit(Class187 c);