internal int method_6(BinaryWriter A_0) { int position = (int)A_0.BaseStream.Position; for (int i = 0; i < base.Count; i++) { Class379 byIndex = (Class379)base.GetByIndex(i); int num4 = byIndex.method_0(); if (smethod_2(byIndex.method_0())) { num4 |= 0x4000; } if (byIndex.vmethod_0()) { num4 |= 0x8000; } A_0.Write((short)num4); A_0.Write(byIndex.vmethod_0() ? ((Class380)byIndex).method_1() : byIndex.vmethod_1()); } for (int j = 0; j < base.Count; j++) { Class379 class3 = (Class379)base.GetByIndex(j); if (class3.vmethod_0()) { ((Class380)class3).vmethod_3(A_0); } } return(((int)A_0.BaseStream.Position) - position); }
internal void method_5(BinaryReader A_0, int A_1, Interface57 A_2) { for (int i = 0; i < A_1; i++) { Class379 class2; int num7 = A_0.ReadUInt16(); int num2 = num7 & 0x3fff; bool flag = (num7 & 0x8000) != 0; int num3 = A_0.ReadInt32(); if (flag) { switch ((num2 & -64)) { case 0x1c0: case 0x540: case 0x580: case 0x5c0: case 0x600: case 0x640: { int num9 = num3; class2 = smethod_0(num2, num9, A_2); goto Label_00A6; } } int num6 = num3; class2 = smethod_1(num2, num6, A_2); } else { class2 = new Class387(num2, num3); } Label_00A6: if (class2 != null) { this.method_2(class2); } } for (int j = 0; j < base.Count; j++) { Class379 byIndex = (Class379)base.GetByIndex(j); if (byIndex.vmethod_0()) { ((Class380)byIndex).vmethod_2(A_0); } } }