private static \uE017 \uE006(\uE012.\uE014[] \uE000, int \uE001, int \uE002, int \uE003) { \uE012.\uE014[] array = new \uE012.\uE014[\uE001]; int num4; int num3; \uE017 uE2; \uE012.\uE014[] array2; for (;;) { int num = \uE019.\uE001(101); for (;;) { int num2; \uE012.\uE014 uE; switch (num) { case 0: IL_1C: uE = \uE000[num2]; num = 4; continue; case 1: num3 = (num4 = 0); num = 10; continue; case 2: uE2.\uE000 = false; num = 1; continue; case 3: if (uE.\uE000.\uE000 == \uE002) { num = 5; continue; } goto IL_D6; case 4: if (uE.\uE000.\uE001 == \uE003) { num = 3; continue; } goto IL_D6; case 5: uE2.\uE000 = true; num = 9; continue; case 6: uE2 = new \uE017(); num = \uE011.\uE006(93); continue; case 7: if (num2 != 0) { num = 0; continue; } goto IL_129; case 8: array2 = new \uE012.\uE014[\uE001]; num = 6; continue; case 9: uE2.\uE001 = uE.\uE001; num = 11; continue; case 10: num2 = 0; num = 7; continue; case 11: goto IL_123; } break; IL_129: if (num2 >= \uE001) { goto Block_6; } goto IL_1C; IL_123: num2++; goto IL_129; IL_D6: if ((uE.\uE000.\uE000 >> uE.\uE000.\uE001 - \uE003 - 1 & 1) != 0) { array2[num4++] = uE; goto IL_123; } array[num3++] = uE; goto IL_123; } } Block_6: if (!uE2.\uE000) { if (num3 > 0) { uE2.\uE002 = \uE012.\uE006(array, num3, \uE002 << 1, \uE003 + 1); } if (num4 > 0) { uE2.\uE003 = \uE012.\uE006(array2, num4, \uE002 << 1 | 1, \uE003 + 1); } } return(uE2); }
internal static \uE017 \uE005(\uE016[] \uE000) { \uE012.\uE014[] array = new \uE012.\uE014[\uE000.Length]; int uE = 0; for (;;) { int num = \uE011.\uE006(94); for (;;) { int num2; switch (num) { case 0: if (num2 != 0) { num = 2; continue; } goto IL_D6; case 1: { \uE012.\uE014 uE2 = default(\uE012.\uE014); num = \uE019.\uE001(88); continue; } case 2: IL_41: if (\uE000[num2].\uE001 > 0) { num = 1; continue; } goto IL_B2; case 3: num2 = 0; num = 0; continue; case 4: { \uE012.\uE014 uE2; for (;;) { int num3 = \uE011.\uE006(90); for (;;) { switch (num3) { case 0: uE2.\uE001 = (ushort)num2; num3 = 2; continue; case 1: uE2.\uE000 = \uE000[num2]; num3 = 0; continue; case 2: goto IL_9D; } break; } } IL_9D: array[uE++] = uE2; goto IL_B2; } } break; IL_D6: if (num2 >= \uE000.Length) { goto Block_4; } goto IL_41; IL_B2: num2++; goto IL_D6; } } Block_4: return(\uE012.\uE006(array, uE, 0, 0)); }