Example #1
0
 private int method_0(Class48 class480, long long6)
 {
     if (long6 > 0L)
     {
         long6 += _long0;
     }
     while (long6 <= 0L || _long0 < long6)
     {
         var num = _class520.method_3(class480);
         if (num < 0)
         {
             _long0 -= num;
         }
         else
         {
             if (num != 0)
             {
                 var result = (int)_long0;
                 _long0 += num;
                 return(result);
             }
             if (long6 == 0L)
             {
                 return(Int6);
             }
             var num2 = method_7();
             if (num2 == 0)
             {
                 return(Int7);
             }
             if (num2 < 0)
             {
                 return(Int9);
             }
         }
     }
     return(Int6);
 }
Example #2
0
        private int method_11()
        {
            var oggClass5 = new OggClass5();
            var class47   = new Class47();
            var @class    = new Class48();
            var array     = new int[1];
            var num       = method_2(oggClass5, class47, array, null);
            var num2      = array[0];
            var int_      = (int)_long0;

            _class560.method_2();
            if (num == -1)
            {
                return(-1);
            }
            _bool0 = true;
            smethod_0(FileStream, 0L, Int5);
            _long0 = smethod_1(FileStream);
            var num3 = _long0;

            num3 = method_1(@class);
            if (@class.method_5() != num2)
            {
                if (method_13(0L, 0L, num3 + 1L, num2, 0) < 0)
                {
                    method_22();
                    return(Int9);
                }
            }
            else if (method_13(0L, num3, num3 + 1L, num2, 0) < 0)
            {
                method_22();
                return(Int9);
            }
            method_3(oggClass5, class47, int_);
            return(method_17(0));
        }
Example #3
0
        private int method_1(Class48 class480)
        {
            var num  = _long0;
            var num2 = -1;
            int num3;

            while (num2 == -1)
            {
                num -= Int2;
                if (num < 0L)
                {
                    num = 0L;
                }
                method_8(num);
                while (_long0 < num + Int2)
                {
                    num3 = method_0(class480, num + Int2 - _long0);
                    if (num3 == Int9)
                    {
                        return(Int9);
                    }
                    if (num3 < 0)
                    {
                        break;
                    }
                    num2 = num3;
                }
            }
            method_8(num2);
            num3 = method_0(class480, Int2);
            if (num3 < 0)
            {
                return(Int10);
            }
            return(num2);
        }
Example #4
0
        public int method_3(Class48 class481)
        {
            var num  = _int2;
            var num2 = _int1 - _int2;

            if (_int4 == 0)
            {
                if (num2 < 27)
                {
                    return(0);
                }
                if (Byte0[num] == 79 && Byte0[num + 1] == 103 && Byte0[num + 2] == 103)
                {
                    if (Byte0[num + 3] == 83)
                    {
                        var num3 = (Byte0[num + 26] & 255) + 27;
                        if (num2 < num3)
                        {
                            return(0);
                        }
                        for (var i = 0; i < (Byte0[num + 26] & 255); i++)
                        {
                            _int5 += Byte0[num + 27 + i] & 255;
                        }
                        _int4 = num3;
                        goto IL_11E;
                    }
                }
                _int4 = 0;
                _int5 = 0;
                var num4 = 0;
                for (var j = 0; j < num2 - 1; j++)
                {
                    if (Byte0[num + 1 + j] == 79)
                    {
                        num4 = num + 1 + j;
                        goto IL_108;
                    }
                }
IL_108:
                if (num4 == 0)
                {
                    num4 = _int1;
                }
                _int2 = num4;
                return(-(num4 - num));
            }
IL_11E:
            if (_int5 + _int4 > num2)
            {
                return(0);
            }
            lock (_byte1)
            {
                Buffer.BlockCopy(Byte0, num + 22, _byte1, 0, 4);
                Byte0[num + 22] = 0;
                Byte0[num + 23] = 0;
                Byte0[num + 24] = 0;
                Byte0[num + 25] = 0;
                var @class = _class480;
                @class.Byte0 = Byte0;
                @class.Int0  = num;
                @class.Int1  = _int4;
                @class.Byte1 = Byte0;
                @class.Int2  = num + _int4;
                @class.Int3  = _int5;
                @class.method_7();
                if (_byte1[0] == Byte0[num + 22] && _byte1[1] == Byte0[num + 23] && _byte1[2] == Byte0[num + 24])
                {
                    if (_byte1[3] == Byte0[num + 25])
                    {
                        goto IL_2B0;
                    }
                }
                Buffer.BlockCopy(_byte1, 0, Byte0, num + 22, 4);
                _int4 = 0;
                _int5 = 0;
                var num4 = 0;
                for (var k = 0; k < num2 - 1; k++)
                {
                    if (Byte0[num + 1 + k] == 79)
                    {
                        num4 = num + 1 + k;
                        goto IL_28C;
                    }
                }
IL_28C:
                if (num4 == 0)
                {
                    num4 = _int1;
                }
                _int2 = num4;
                return(-(num4 - num));
            }
IL_2B0:
            num = _int2;
            if (class481 != null)
            {
                class481.Byte0 = Byte0;
                class481.Int0  = num;
                class481.Int1  = _int4;
                class481.Byte1 = Byte0;
                class481.Int2  = num + _int4;
                class481.Int3  = _int5;
            }
            _int3  = 0;
            _int2 += (num2 = _int4 + _int5);
            _int4  = 0;
            _int5  = 0;
            return(num2);
        }
Example #5
0
        public bool method_6(Class48 class480)
        {
            var array = class480.Byte0;
            var num   = class480.Int0;
            var src   = class480.Byte1;
            var num2  = class480.Int2;
            var num3  = class480.Int3;
            var i     = 0;
            var num4  = class480.method_0();
            var num5  = class480.method_1();
            var num6  = class480.method_2();
            var num7  = class480.method_3();
            var num8  = class480.method_4();
            var num9  = class480.method_5();
            var num10 = class480.method_6();
            var num11 = array[num + 26] & 255;
            var num12 = _int7;
            var num13 = _int2;

            if (num13 != 0)
            {
                _int1 -= num13;
                if (_int1 != 0)
                {
                    Buffer.BlockCopy(_byte0, num13, _byte0, 0, _int1);
                }
                _int2 = 0;
            }
            if (num12 != 0)
            {
                if (_int5 - num12 != 0)
                {
                    Buffer.BlockCopy(_int3, num12 << 2, _int3, 0, _int5 - num12 << 2);
                    Buffer.BlockCopy(_long0, num12 << 3, _long0, 0, _int5 - num12 << 3);
                }
                _int5 -= num12;
                _int6 -= num12;
                _int7  = 0;
            }
            if (num9 != _int11)
            {
                return(false);
            }
            if (num4 > 0)
            {
                return(false);
            }
            method_4(num11 + 1);
            if (num10 != _int12)
            {
                for (var j = _int6; j < _int5; j++)
                {
                    _int1 -= (_int3[j] & 255);
                }
                _int5 = _int6;
                if (_int12 != -1)
                {
                    _int3[_int5++] = 1024;
                    _int6++;
                }
                if (num5 != 0)
                {
                    num6 = 0;
                    while (i < num11)
                    {
                        var num14 = array[num + 27 + i] & 255;
                        num2 += num14;
                        num3 -= num14;
                        if (num14 < 255)
                        {
                            i++;
                            break;
                        }
                        i++;
                    }
                }
            }
            if (num3 != 0)
            {
                method_3(num3);
                Buffer.BlockCopy(src, num2, _byte0, _int1, num3);
                _int1 += num3;
            }
            var num15 = -1;

            while (i < num11)
            {
                var num16 = array[num + 27 + i] & 255;
                _int3[_int5]  = num16;
                _long0[_int5] = -1L;
                if (num6 != 0)
                {
                    _int3[_int5] |= 256;
                    num6          = 0;
                }
                if (num16 < 255)
                {
                    num15 = _int5;
                }
                _int5++;
                i++;
                if (num16 < 255)
                {
                    _int6 = _int5;
                }
            }
            if (num15 != -1)
            {
                _long0[num15] = num8;
            }
            if (num7 != 0)
            {
                Int9 = 1;
                if (_int5 > 0)
                {
                    _int3[_int5 - 1] |= 512;
                }
            }
            _int12 = num10 + 1;
            return(true);
        }
Example #6
0
        public int method_18(long long6)
        {
            var num = method_15(-1);

            if (!_bool0)
            {
                return(-1);
            }
            if (long6 < 0L || long6 > num)
            {
                _long4 = -1L;
                method_5();
                return(-1);
            }
            int i;

            for (i = _int20 - 1; i >= 0; i--)
            {
                num -= _long3[i];
                if (long6 >= num)
                {
                    break;
                }
            }
            var num2   = long6 - num;
            var num3   = _long1[i + 1];
            var num4   = _long1[i];
            var int_   = (int)num4;
            var @class = new Class48();

            while (num4 < num3)
            {
                long num5;
                if (num3 - num4 < Int2)
                {
                    num5 = num4;
                }
                else
                {
                    num5 = (num3 + num4) / 2L;
                }
                method_8(num5);
                var num6 = method_0(@class, num3 - num5);
                if (num6 == -1)
                {
                    num3 = num5;
                }
                else
                {
                    var num7 = @class.method_4();
                    if (num7 < num2)
                    {
                        int_ = num6;
                        num4 = _long0;
                    }
                    else
                    {
                        num3 = num5;
                    }
                }
            }
            if (method_17(int_) != 0)
            {
                _long4 = -1L;
                method_5();
                return(-1);
            }
            if (_long4 >= long6)
            {
                _long4 = -1L;
                method_5();
                return(-1);
            }
            if (long6 > method_15(-1))
            {
                _long4 = -1L;
                method_5();
                return(-1);
            }
            while (_long4 < long6)
            {
                var num8 = (int)(long6 - _long4);
                var num9 = _oggClass1.method_3();
                if (num9 > num8)
                {
                    num9 = num8;
                }
                _oggClass1.method_6(num9);
                _long4 += num9;
                if (num9 < num8 && method_6(1) == 0)
                {
                    _long4 = method_15(-1);
                }
            }
            return(0);
        }
Example #7
0
        private int method_13(long long6, long long7, long long8, int int24, int int25)
        {
            var num    = long8;
            var long9  = long8;
            var @class = new Class48();
            int num3;

            while (long7 < num)
            {
                long num2;
                if (num - long7 < Int2)
                {
                    num2 = long7;
                }
                else
                {
                    num2 = (long7 + num) / 2L;
                }
                method_8(num2);
                num3 = method_0(@class, -1L);
                if (num3 == Int9)
                {
                    return(Int9);
                }
                if (num3 >= 0)
                {
                    if (@class.method_5() == int24)
                    {
                        long7 = num3 + @class.Int1 + @class.Int3;
                        continue;
                    }
                }
                num = num2;
                if (num3 >= 0)
                {
                    long9 = num3;
                }
            }
            method_8(long9);
            num3 = method_0(@class, -1L);
            if (num3 == Int9)
            {
                return(Int9);
            }
            if (long7 < long8)
            {
                if (num3 != -1)
                {
                    num3 = method_13(long9, _long0, long8, @class.method_5(), int25 + 1);
                    if (num3 == Int9)
                    {
                        return(Int9);
                    }
                    goto IL_FF;
                }
            }
            _int20            = int25 + 1;
            _long1            = new long[int25 + 2];
            _long1[int25 + 1] = long7;
IL_FF:
            _long1[int25] = long6;
            return(0);
        }
Example #8
0
        private int method_6(int int24)
        {
            var     @class = new Class48();
            Class67 class2;
            long    num2;

            while (true)
            {
                if (_bool1)
                {
                    class2 = new Class67();
                    var num = _class560.method_5(class2);
                    if (num > 0)
                    {
                        num2 = class2.Long0;
                        if (_oggClass6.method_2(class2) == 0)
                        {
                            goto Block_11;
                        }
                    }
                }
                if (int24 == 0)
                {
                    return(0);
                }
                if (method_0(@class, -1L) < 0)
                {
                    return(0);
                }
                _float0 += @class.Int1 << 3;
                if (_bool1 && _int22 != @class.method_5())
                {
                    method_5();
                }
                if (!_bool1)
                {
                    if (_bool0)
                    {
                        _int22 = @class.method_5();
                        var num3 = 0;
                        while (num3 < _int20 && _int21[num3] != _int22)
                        {
                            num3++;
                        }
                        if (num3 == _int20)
                        {
                            break;
                        }
                        _int23 = num3;
                        _class560.method_1(_int22);
                        _class560.method_7();
                    }
                    else
                    {
                        var array = new int[1];
                        var num4  = method_2(_oggClass5[0], _class470[0], array, @class);
                        _int22 = array[0];
                        if (num4 != 0)
                        {
                            return(num4);
                        }
                        _int23++;
                    }
                    method_4();
                }
                _class560.method_6(@class);
            }
            return(-1);

Block_11:
            var num5 = _oggClass1.method_3();

            _oggClass1.method_2(_oggClass6);
            _float1 += _oggClass1.method_3() - num5;
            _float0 += class2.Int1 * 8;
            if (num2 != -1L && class2.Int3 == 0)
            {
                var num6 = _bool0 ? _int23 : 0;
                var num7 = _oggClass1.method_3();
                num2 -= num7;
                for (var i = 0; i < num6; i++)
                {
                    num2 += _long3[i];
                }
                _long4 = num2;
            }
            return(1);
        }
Example #9
0
        private void method_3(OggClass5 class491, Class47 class471, int int24)
        {
            var @class = new Class48();

            _oggClass5 = new OggClass5[_int20];
            _class470  = new Class47[_int20];
            _long2     = new long[_int20];
            _long3     = new long[_int20];
            _int21     = new int[_int20];
            var i = 0;

            while (i < _int20)
            {
                if (class491 != null && class471 != null && i == 0)
                {
                    _oggClass5[i] = class491;
                    _class470[i]  = class471;
                    _long2[i]     = int24;
                }
                else
                {
                    method_8(_long1[i]);
                    if (method_2(_oggClass5[i], _class470[i], null, null) == -1)
                    {
                        Console.Error.WriteLine("Error opening logical bitstream #" + (i + 1) + "\n");
                        _long2[i] = -1L;
                    }
                    else
                    {
                        _long2[i] = _long0;
                        _class560.method_2();
                    }
                }
                var long_ = _long1[i + 1];
                method_8(long_);
                long num2;
                while (true)
                {
                    var num = method_1(@class);
                    if (num == -1)
                    {
                        goto Block_6;
                    }
                    num2 = @class.method_4();
                    if (num2 != -1L)
                    {
                        goto Block_5;
                    }
                }
IL_189:
                i++;
                continue;
Block_5:
                _int21[i] = @class.method_5();
                _long3[i] = num2;
                goto IL_189;
Block_6:
                Console.Error.WriteLine("Could not find last page of logical bitstream #" + i + "\n");
                _oggClass5[i].method_1();
                _class470[i].method_2();
                goto IL_189;
            }
        }
Example #10
0
        private int method_2(OggClass5 oggClass5, Class47 class471, int[] int24, Class48 class480)
        {
            var @class  = new Class48();
            var class67 = new Class67();

            if (class480 == null)
            {
                var num = method_0(@class, Int2);
                if (num == Int9)
                {
                    return(Int9);
                }
                if (num < 0)
                {
                    return(Int13);
                }
                class480 = @class;
            }
            if (int24 != null)
            {
                int24[0] = class480.method_5();
            }
            _class560.method_1(class480.method_5());
            oggClass5.method_0();
            class471.method_0();
            var i = 0;

            while (i < 3)
            {
                _class560.method_6(class480);
                while (i < 3)
                {
                    var num2 = _class560.method_5(class67);
                    if (num2 == 0)
                    {
                        break;
                    }
                    if (num2 == -1)
                    {
                        Console.Error.WriteLine("Corrupt header in logical bitstream.");
                        oggClass5.method_1();
                        class471.method_2();
                        _class560.method_2();
                        return(-1);
                    }
                    if (oggClass5.method_4(class471, class67) != 0)
                    {
                        Console.Error.WriteLine("Illegal header in logical bitstream.");
                        oggClass5.method_1();
                        class471.method_2();
                        _class560.method_2();
                        return(-1);
                    }
                    i++;
                }
                if (i < 3 && method_0(class480, 1L) < 0)
                {
                    Console.Error.WriteLine("Missing header in logical bitstream.");
                    oggClass5.method_1();
                    class471.method_2();
                    _class560.method_2();
                    return(-1);
                }
            }
            return(0);
        }