Beispiel #1
0
    public void method_10(Stream A_0, Class357 A_1, Class938 A_2)
    {
        int    count = this.list_0.Count;
        int    num2  = A_2.method_5();
        ushort num3  = A_2.method_9();
        int    num4  = this.method_0() / 4;
        int    num5  = num4 - 1;
        double num6  = (num5 * count) - 109.0;
        double num7  = (num5 * num5) - 1.0;
        int    num8  = (int)Math.Ceiling((double)(num6 / num7));

        A_2.method_15(num8);
        byte[] buffer = new byte[num2];
        A_1.method_2(num8, this);
        this.method_11(num8, A_1);
        List <int> list  = A_1.method_0();
        int        num9  = 0;
        int        num10 = 0;

        while (num9 < num8)
        {
            num10 = this.method_12(num10, buffer);
            int  num11  = list[num9];
            long offset = Class1004.smethod_4(num11, num3);
            A_0.Seek(offset, SeekOrigin.Begin);
            A_0.Write(buffer, 0, num2);
            num9++;
        }
    }
Beispiel #2
0
    public Class357(Stream A_0, Class938 A_1)
    {
        this.list_1 = new List <int>();
        int    num      = A_1.method_26();
        int    count    = A_1.method_5();
        ushort num3     = A_1.method_9();
        int    capacity = 0x6d + ((num * (count - 4)) / 4);

        this.list_0 = new List <int>(capacity);
        this.list_0.AddRange(A_1.method_28());
        if (num > 0)
        {
            int num5 = A_1.method_24();
            A_1.method_9();
            byte[] buffer = new byte[count];
            int[]  dst    = new int[(count / 4) - 1];
            while (num5 >= 0)
            {
                long num6 = Class1004.smethod_4(num5, num3);
                this.list_1.Add(num5);
                A_0.Position = num6;
                A_0.Read(buffer, 0, count);
                Buffer.BlockCopy(buffer, 0, dst, 0, count - 4);
                this.list_0.AddRange(dst);
                num5 = BitConverter.ToInt32(buffer, count - 4);
            }
        }
    }
Beispiel #3
0
    internal void method_1(Stream A_0, Class938 A_1)
    {
        int num = 11;

        if (A_0 == null)
        {
            throw new ArgumentNullException(BookmarkStart.b("䈰䜲䜴制堸嘺", num));
        }
        int count = this.list_0.Count;

        int[] numArray = A_1.method_28();
        int   index    = 0;

        while (true)
        {
            if ((index >= count) || (index >= 0x6d))
            {
                break;
            }
            numArray[index] = this.list_0[index];
            index++;
        }
        while (index < 0x6d)
        {
            numArray[index] = -1;
            index++;
        }
        if (this.list_1.Count > 0)
        {
            A_1.method_25(this.list_1[0]);
            A_1.method_27(this.list_1.Count);
        }
        byte[] dst   = new byte[A_1.method_5()];
        int    num9  = A_1.method_5();
        int    num10 = (num9 / 4) - 1;
        int    num4  = 0;
        int    num11 = this.list_1.Count;

        while (num4 < num11)
        {
            int  num5 = this.list_1[num4];
            long num6 = A_1.method_30(num5);
            int  num7 = 0;
            for (int i = 0; num7 < num10; i += 4)
            {
                int num13 = (index < count) ? this.list_0[index] : -1;
                Buffer.BlockCopy(BitConverter.GetBytes(num13), 0, dst, i, 4);
                num7++;
                index++;
            }
            int num12 = (num4 == (num11 - 1)) ? -2 : this.list_1[num4 + 1];
            Buffer.BlockCopy(BitConverter.GetBytes(num12), 0, dst, num9 - 4, 4);
            A_0.Position = num6;
            A_0.Write(dst, 0, num9);
            num4++;
        }
    }
    internal void method_9(byte[] A_0, int A_1, int A_2, Class938 A_3)
    {
        ushort num   = A_3.method_9();
        int    count = A_3.method_5();
        long   num3  = smethod_4(A_2, num);

        this.stream_0.Position = num3;
        this.stream_0.Read(A_0, A_1, count);
    }
 void IDisposable.Dispose()
 {
     if (this.class1069_0 != null)
     {
         this.class1069_0.System.IDisposable.Dispose();
         this.class1069_0 = null;
         this.stream_0.Dispose();
         this.stream_0    = null;
         this.class938_0  = null;
         this.class939_0  = null;
         this.class1003_0 = null;
     }
 }
    private void method_8()
    {
        this.class1003_0 = new Class1003();
        this.class1069_0 = new Class1069(this, BookmarkStart.b("紮帰尲䄴᜶簸唺䤼䴾㡀", 9), 0);
        this.stream_0.SetLength(0x200L);
        this.class938_0 = new Class938();
        this.class357_0 = new Class357();
        Class297 class2 = this.class1069_0.Interface59.imethod_0();

        class2.method_3(Class297.EntryType.Root);
        this.class1003_0.method_2(class2);
        this.class939_0 = new Class939(this.stream_0, this.class938_0.method_9(), 0x200);
    }
    public void method_7(Stream A_0)
    {
        int num = 0x12;

        if (A_0 == null)
        {
            throw new ArgumentNullException(BookmarkStart.b("䬷丹主嬽ℿ⽁", num));
        }
        long         position = A_0.Position;
        int          capacity = (int)(A_0.Length - position);
        MemoryStream stream   = new MemoryStream(capacity);

        stream.SetLength((long)capacity);
        A_0.Read(stream.GetBuffer(), 0, capacity);
        stream.Position = 0L;
        this.stream_0   = stream;
        this.class938_0 = new Class938(this.stream_0);
        this.class357_0 = new Class357(this.stream_0, this.class938_0);
        this.class939_0 = new Class939(this, this.stream_0, this.class357_0, this.class938_0);
        byte[] buffer = this.class939_0.method_1(this.stream_0, this.class938_0.method_16(), this);
        this.class1003_0 = new Class1003(buffer);
        Class297 class2 = this.class1003_0.method_0()[0];

        this.class1069_0 = new Class1069(this, class2);
        int num2 = class2.method_20();

        if (num2 >= 0)
        {
            this.stream_1 = new MemoryStream(this.class939_0.method_1(this.stream_0, num2, this));
            if (this.class938_0.method_20() >= 0)
            {
                this.stream_2   = new MemoryStream(this.class939_0.method_1(this.stream_0, this.class938_0.method_20(), this));
                this.class939_1 = new Class939(this.stream_1, this.class938_0.method_10(), this.stream_2, 0);
            }
            this.class939_0.method_3(num2);
            if (this.class938_0.method_20() >= 0)
            {
                this.class939_0.method_3(this.class938_0.method_20());
            }
        }
    }
Beispiel #8
0
    public Class939(Class1004 A_0, Stream A_1, Class357 A_2, Class938 A_3)
    {
        int num5 = 3;

        this.list_0 = new List <int>();
        this.list_1 = new List <int>();
        if (A_0 == null)
        {
            throw new ArgumentNullException(BookmarkStart.b("伨䈪䄬䨮", num5));
        }
        if (A_1 == null)
        {
            throw new ArgumentNullException(BookmarkStart.b("娨弪弬䨮倰帲", num5));
        }
        this.stream_0 = A_0.method_4();
        List <int> list  = A_2.method_0();
        int        count = A_3.method_5();

        this.ushort_0 = A_3.method_9();
        byte[] buffer = new byte[count];
        int[]  dst    = new int[count >> 2];
        this.int_0 = 0x200;
        int num2 = 0;
        int num3 = list.Count;

        while (num2 < num3)
        {
            int num4 = list[num2];
            if (num4 >= 0)
            {
                A_0.method_9(buffer, 0, num4, A_3);
                Buffer.BlockCopy(buffer, 0, dst, 0, count);
                this.list_0.AddRange(dst);
            }
            num2++;
        }
    }
 public static bool smethod_6(Stream A_0)
 {
     return(Class938.smethod_0(A_0));
 }