// Token: 0x0600001C RID: 28 RVA: 0x000171F0 File Offset: 0x000153F0 public int method_1(Class1.Class3 class3_0) { int num; if ((num = class3_0.method_0(9)) >= 0) { int num2; if ((num2 = (int)this.short_0[num]) >= 0) { class3_0.method_1(num2 & 15); return(num2 >> 4); } int num3 = -(num2 >> 4); int int_ = num2 & 15; if ((num = class3_0.method_0(int_)) >= 0) { num2 = (int)this.short_0[num3 | num >> 9]; class3_0.method_1(num2 & 15); return(num2 >> 4); } int num4 = class3_0.method_2(); num = class3_0.method_0(num4); num2 = (int)this.short_0[num3 | num >> 9]; if ((num2 & 15) <= num4) { class3_0.method_1(num2 & 15); return(num2 >> 4); } return(-1); } else { int num5 = class3_0.method_2(); num = class3_0.method_0(num5); int num2 = (int)this.short_0[num]; if (num2 >= 0 && (num2 & 15) <= num5) { class3_0.method_1(num2 & 15); return(num2 >> 4); } return(-1); } }
// Token: 0x06000013 RID: 19 RVA: 0x00016E1C File Offset: 0x0001501C public int method_3(Class1.Class3 class3_0, int int_4) { int_4 = Math.Min(Math.Min(int_4, Class1.Class4.int_0 - this.int_3), class3_0.method_3()); int num = Class1.Class4.int_0 - this.int_2; int num2; if (int_4 > num) { num2 = class3_0.method_6(this.byte_0, this.int_2, num); if (num2 == num) { num2 += class3_0.method_6(this.byte_0, 0, int_4 - num); } } else { num2 = class3_0.method_6(this.byte_0, this.int_2, int_4); } this.int_2 = (this.int_2 + num2 & Class1.Class4.int_1); this.int_3 += num2; return(num2); }
// Token: 0x0600001E RID: 30 RVA: 0x000172C8 File Offset: 0x000154C8 public bool method_0(Class1.Class3 class3_0) { for (;;) { switch (this.int_2) { case 0: this.int_3 = class3_0.method_0(5); if (this.int_3 >= 0) { this.int_3 += 257; class3_0.method_1(5); this.int_2 = 1; goto IL_1DD; } return(false); case 1: goto IL_1DD; case 2: goto IL_18F; case 3: goto IL_156; case 4: break; case 5: goto IL_2C; default: continue; } IL_E1: int num; while (((num = this.class5_0.method_1(class3_0)) & -16) == 0) { this.byte_1[this.int_8++] = (this.byte_2 = (byte)num); if (this.int_8 == this.int_6) { return(true); } } if (num >= 0) { if (num >= 17) { this.byte_2 = 0; } this.int_7 = num - 16; this.int_2 = 5; goto IL_2C; } return(false); IL_156: while (this.int_8 < this.int_5) { int num2 = class3_0.method_0(3); if (num2 < 0) { return(false); } class3_0.method_1(3); this.byte_0[Class1.Class6.int_9[this.int_8]] = (byte)num2; this.int_8++; } this.class5_0 = new Class1.Class5(this.byte_0); this.byte_0 = null; this.int_8 = 0; this.int_2 = 4; goto IL_E1; IL_2C: int num3 = Class1.Class6.int_1[this.int_7]; int num4 = class3_0.method_0(num3); if (num4 < 0) { return(false); } class3_0.method_1(num3); num4 += Class1.Class6.int_0[this.int_7]; while (num4-- > 0) { this.byte_1[this.int_8++] = this.byte_2; } if (this.int_8 == this.int_6) { break; } this.int_2 = 4; continue; IL_18F: this.int_5 = class3_0.method_0(4); if (this.int_5 >= 0) { this.int_5 += 4; class3_0.method_1(4); this.byte_0 = new byte[19]; this.int_8 = 0; this.int_2 = 3; goto IL_156; } return(false); IL_1DD: this.int_4 = class3_0.method_0(5); if (this.int_4 >= 0) { this.int_4++; class3_0.method_1(5); this.int_6 = this.int_3 + this.int_4; this.byte_1 = new byte[checked ((uint)this.int_6)]; this.int_2 = 2; goto IL_18F; } return(false); } return(true); }