예제 #1
0
        internal void method_13(short[] short_7, short[] short_8)
        {
            int num = 0;

            if (this.int_45 != 0)
            {
                do
                {
                    int num2 = this.int_46 + num * 2;
                    int num3 = ((int)this.byte_0[num2] << 8 & 65280) | (int)(this.byte_0[num2 + 1] & 255);
                    int num4 = (int)(this.byte_0[this.int_43 + num] & 255);
                    num++;
                    if (num3 == 0)
                    {
                        this.method_9(num4, short_7);
                    }
                    else
                    {
                        int num5 = (int)Class7.sbyte_2[num4];
                        this.method_9(num5 + Class9.int_3 + 1, short_7);
                        int num6 = Class7.int_2[num5];
                        if (num6 != 0)
                        {
                            num4 -= Class7.int_5[num5];
                            this.method_10(num4, num6);
                        }
                        num3--;
                        num5 = Class7.smethod_0(num3);
                        this.method_9(num5, short_8);
                        num6 = Class7.int_3[num5];
                        if (num6 != 0)
                        {
                            num3 -= Class7.int_6[num5];
                            this.method_10(num3, num6);
                        }
                    }
                }while (num < this.int_45);
            }
            this.method_9(Class0.int_18, short_7);
            this.int_50 = (int)short_7[Class0.int_18 * 2 + 1];
        }
예제 #2
0
 internal bool method_12(int int_52, int int_53)
 {
     this.byte_0[this.int_46 + this.int_45 * 2]     = (byte)((uint)int_52 >> 8);
     this.byte_0[this.int_46 + this.int_45 * 2 + 1] = (byte)int_52;
     this.byte_0[this.int_43 + this.int_45]         = (byte)int_53;
     this.int_45++;
     if (int_52 == 0)
     {
         short[] expr_69_cp_0 = this.short_2;
         int     expr_69_cp_1 = int_53 * 2;
         expr_69_cp_0[expr_69_cp_1] += 1;
     }
     else
     {
         this.int_49++;
         int_52--;
         short[] expr_A8_cp_0 = this.short_2;
         int     expr_A8_cp_1 = ((int)Class7.sbyte_2[int_53] + Class9.int_3 + 1) * 2;
         expr_A8_cp_0[expr_A8_cp_1] += 1;
         short[] expr_C9_cp_0 = this.short_3;
         int     expr_C9_cp_1 = Class7.smethod_0(int_52) * 2;
         expr_C9_cp_0[expr_C9_cp_1] += 1;
     }
     if ((this.int_45 & 8191) == 0 && this.compressionLevel_0 > CompressionLevel.Level2)
     {
         int num  = this.int_45 << 3;
         int num2 = this.int_36 - this.int_32;
         for (int i = 0; i < Class9.int_2; i++)
         {
             num = (int)((long)num + (long)this.short_3[i * 2] * (5L + (long)Class7.int_3[i]));
         }
         num >>= 3;
         if (this.int_49 < this.int_45 / 2 && num < num2 / 2)
         {
             return(true);
         }
     }
     return(this.int_45 == this.int_44 - 1 || this.int_45 == this.int_44);
 }