public void method_0(Class15 class15_0) { Cell cell_ = new Cell(class15_0.method_0() + this.float_0, class15_0.method_1() + this.float_1, class15_0.method_3() + this.float_0, class15_0.method_4() + this.float_1, this.float_2 + class15_0.method_2(), this.float_2 + class15_0.method_5(), class15_0.method_6().HasFlag(Class16.Enum1.flag_0), class15_0.method_6().HasFlag(Class16.Enum1.flag_10), this.class23_0.scene_0); this.class23_0.navi_0.method_8(cell_); }
public static Class15.Class28[] smethod_9(Class15.Class28 class28_0, Class15.Class28 class28_1) { if (Class15.Class28.Class30.smethod_4(class28_0, class28_1) == (Class15.Class28.Enum5)(-1)) { return new Class15.Class28[] { 0, new Class15.Class28(class28_0) }; } class28_0.method_5(); class28_1.method_5(); if (class28_1.uint_0 == 1u) { return Class15.Class28.Class30.smethod_8(class28_0, class28_1.uint_1[0]); } uint num = class28_0.uint_0 + 1u; int num2 = (int)(class28_1.uint_0 + 1u); uint num3 = 2147483648u; uint num4 = class28_1.uint_1[(int)((UIntPtr)(class28_1.uint_0 - 1u))]; int num5 = 0; int num6 = (int)(class28_0.uint_0 - class28_1.uint_0); while (num3 != 0u && (num4 & num3) == 0u) { num5++; num3 >>= 1; } Class15.Class28 @class = new Class15.Class28((Class15.Class28.Enum5)1, class28_0.uint_0 - class28_1.uint_0 + 1u); Class15.Class28 class2 = class28_0 << num5; uint[] uint_ = class2.uint_1; class28_1 <<= num5; int i = (int)(num - class28_1.uint_0); int num7 = (int)(num - 1u); uint num8 = class28_1.uint_1[(int)((UIntPtr)(class28_1.uint_0 - 1u))]; ulong num9 = (ulong)class28_1.uint_1[(int)((UIntPtr)(class28_1.uint_0 - 2u))]; while (i > 0) { ulong num10 = ((ulong)uint_[num7] << 32) + (ulong)uint_[num7 - 1]; ulong num11 = num10 / (ulong)num8; ulong num12 = num10 % (ulong)num8; do { if (num11 != 4294967296uL) { if (num11 * num9 <= (num12 << 32) + (ulong)uint_[num7 - 2]) { break; } } num11 -= 1uL; num12 += (ulong)num8; } while (num12 < 4294967296uL); IL_17B: uint num13 = 0u; int num14 = num7 - num2 + 1; ulong num15 = 0uL; uint num16 = (uint)num11; do { num15 += (ulong)class28_1.uint_1[(int)((UIntPtr)num13)] * (ulong)num16; uint num17 = uint_[num14]; uint_[num14] -= (uint)num15; num15 >>= 32; if (uint_[num14] > num17) { num15 += 1uL; } num13 += 1u; num14++; } while ((ulong)num13 < (ulong)((long)num2)); num14 = num7 - num2 + 1; num13 = 0u; if (num15 != 0uL) { num16 -= 1u; ulong num18 = 0uL; do { num18 = (ulong)uint_[num14] + (ulong)class28_1.uint_1[(int)((UIntPtr)num13)] + num18; uint_[num14] = (uint)num18; num18 >>= 32; num13 += 1u; num14++; } while ((ulong)num13 < (ulong)((long)num2)); } @class.uint_1[num6--] = num16; num7--; i--; continue; goto IL_17B; } @class.method_5(); class2.method_5(); Class15.Class28[] array = new Class15.Class28[] { @class, class2 }; if (num5 != 0) { Class15.Class28[] array2; (array2 = array)[1] = array2[1] >> num5; } return array; }
public static void smethod_3(Class15.Class28 class28_0, Class15.Class28 class28_1) { uint num = 0u; bool flag = false; uint[] uint_; uint uint_2; uint[] uint_3; uint uint_4; if (class28_0.uint_0 < class28_1.uint_0) { flag = true; uint_ = class28_1.uint_1; uint_2 = class28_1.uint_0; uint_3 = class28_0.uint_1; uint_4 = class28_0.uint_0; } else { uint_ = class28_0.uint_1; uint_2 = class28_0.uint_0; uint_3 = class28_1.uint_1; uint_4 = class28_1.uint_0; } uint[] uint_5 = class28_0.uint_1; ulong num2 = 0uL; do { num2 += (ulong)uint_[(int)((UIntPtr)num)] + (ulong)uint_3[(int)((UIntPtr)num)]; uint_5[(int)((UIntPtr)num)] = (uint)num2; num2 >>= 32; } while ((num += 1u) < uint_4); bool flag2; if (flag2 = (num2 != 0uL)) { if (num < uint_2) { do { flag2 = ((uint_5[(int)((UIntPtr)num)] = uint_[(int)((UIntPtr)num)] + 1u) == 0u); } while ((num += 1u) < uint_2 && flag2); } if (flag2) { uint_5[(int)((UIntPtr)num)] = 1u; class28_0.uint_0 = num + 1u; return; } } if (flag && num < uint_2 - 1u) { do { uint_5[(int)((UIntPtr)num)] = uint_[(int)((UIntPtr)num)]; } while ((num += 1u) < uint_2); } class28_0.uint_0 = uint_2 + 1u; class28_0.method_5(); }
public static uint smethod_5(Class15.Class28 class28_0, uint uint_0) { ulong num = 0uL; uint uint_ = class28_0.uint_0; while (uint_-- > 0u) { num <<= 32; num |= (ulong)class28_0.uint_1[(int)((UIntPtr)uint_)]; class28_0.uint_1[(int)((UIntPtr)uint_)] = (uint)(num / (ulong)uint_0); num %= (ulong)uint_0; } class28_0.method_5(); return (uint)num; }
public void method_0(Class15.Class28 class28_2) { Class15.Class28 @class = this.class28_0; uint uint_ = @class.uint_0; uint num = uint_ + 1u; uint num2 = uint_ - 1u; if (class28_2.uint_0 < uint_) { return; } if ((long)class28_2.uint_1.Length < (long)((ulong)class28_2.uint_0)) { throw new IndexOutOfRangeException("x out of range"); } Class15.Class28 class2 = new Class15.Class28((Class15.Class28.Enum5)1, class28_2.uint_0 - num2 + this.class28_1.uint_0); Class15.Class28.Class30.smethod_13(class28_2.uint_1, num2, class28_2.uint_0 - num2, this.class28_1.uint_1, 0u, this.class28_1.uint_0, class2.uint_1, 0u); uint uint_2 = (class28_2.uint_0 > num) ? num : class28_2.uint_0; class28_2.uint_0 = uint_2; class28_2.method_5(); Class15.Class28 class3 = new Class15.Class28((Class15.Class28.Enum5)1, num); Class15.Class28.Class30.smethod_14(class2.uint_1, (int)num, (int)(class2.uint_0 - num), @class.uint_1, 0, (int)@class.uint_0, class3.uint_1, 0, (int)num); class3.method_5(); if (class3 <= class28_2) { Class15.Class28.Class30.smethod_2(class28_2, class3); } else { Class15.Class28 class4 = new Class15.Class28((Class15.Class28.Enum5)1, num + 1u); class4.uint_1[(int)((UIntPtr)num)] = 1u; Class15.Class28.Class30.smethod_2(class4, class3); Class15.Class28.Class30.smethod_3(class28_2, class4); } while (class28_2 >= @class) { Class15.Class28.Class30.smethod_2(class28_2, @class); } }