public int method_1(Class2.Class4 class4_0) { int num; if ((num = class4_0.method_0(9)) >= 0) { int num2; if ((num2 = (int)this.short_0[num]) >= 0) { class4_0.method_1(num2 & 15); return num2 >> 4; } int num3 = -(num2 >> 4); int int_ = num2 & 15; if ((num = class4_0.method_0(int_)) >= 0) { num2 = (int)this.short_0[num3 | num >> 9]; class4_0.method_1(num2 & 15); return num2 >> 4; } int num4 = class4_0.method_2(); num = class4_0.method_0(num4); num2 = (int)this.short_0[num3 | num >> 9]; if ((num2 & 15) <= num4) { class4_0.method_1(num2 & 15); return num2 >> 4; } return -1; } else { int num5 = class4_0.method_2(); num = class4_0.method_0(num5); int num2 = (int)this.short_0[num]; if (num2 >= 0 && (num2 & 15) <= num5) { class4_0.method_1(num2 & 15); return num2 >> 4; } return -1; } }
public bool method_0(Class2.Class4 class4_0) { while (true) { switch (this.int_2) { case 0: this.int_3 = class4_0.method_0(5); if (this.int_3 >= 0) { this.int_3 += 257; class4_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.class6_0.method_1(class4_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 = class4_0.method_0(3); if (num2 < 0) { return false; } class4_0.method_1(3); this.byte_0[Class2.Class7.int_9[this.int_8]] = (byte)num2; this.int_8++; } this.class6_0 = new Class2.Class6(this.byte_0); this.byte_0 = null; this.int_8 = 0; this.int_2 = 4; goto IL_E1; IL_2C: int num3 = Class2.Class7.int_1[this.int_7]; int num4 = class4_0.method_0(num3); if (num4 < 0) { return false; } class4_0.method_1(num3); num4 += Class2.Class7.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 = class4_0.method_0(4); if (this.int_5 >= 0) { this.int_5 += 4; class4_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 = class4_0.method_0(5); if (this.int_4 >= 0) { this.int_4++; class4_0.method_1(5); this.int_6 = this.int_3 + this.int_4; this.byte_1 = new byte[this.int_6]; this.int_2 = 2; goto IL_18F; } return false; } return true; }
public int method_3(Class2.Class4 class4_0, int int_4) { int_4 = Math.Min(Math.Min(int_4, Class2.Class5.int_0 - this.int_3), class4_0.method_3()); int num = Class2.Class5.int_0 - this.int_2; int num2; if (int_4 > num) { num2 = class4_0.method_6(this.byte_0, this.int_2, num); if (num2 == num) { num2 += class4_0.method_6(this.byte_0, 0, int_4 - num); } } else { num2 = class4_0.method_6(this.byte_0, this.int_2, int_4); } this.int_2 = (this.int_2 + num2 & Class2.Class5.int_1); this.int_3 += num2; return num2; }