public void method_6(Client.GDelegate2 gdelegate2_1) { this.gdelegate2_0 = (Client.GDelegate2)Delegate.Combine(this.gdelegate2_0, gdelegate2_1); }
public void method_7(Client.GDelegate2 gdelegate2_1) { this.gdelegate2_0 = (Client.GDelegate2)Delegate.Remove(this.gdelegate2_0, gdelegate2_1); }
// Token: 0x0600018E RID: 398 RVA: 0x0000918C File Offset: 0x0000738C private void method_53(byte[] byte_4, int int_8, int int_9) { if (this.bool_0) { if (this.bool_6) { int num = Math.Min(this.byte_0.Length - this.int_5, int_9 - int_8); Buffer.BlockCopy(byte_4, int_8, this.byte_0, this.int_5, num); this.int_5 += num; if (this.int_5 == this.byte_0.Length) { Client.GDelegate2 gdelegate = this.gdelegate2_0; if (gdelegate != null) { gdelegate(this, this.byte_0); } this.bool_6 = false; Array.Resize <byte>(ref this.byte_0, 0); if (this.int_5 >= this.int_2) { GC.Collect(); } } if (num < int_9 - int_8) { this.method_53(byte_4, int_8 + num, int_9); } } else { int num2 = Math.Min(int_9 - int_8, 4 - this.int_7); Buffer.BlockCopy(byte_4, int_8, this.byte_2, this.int_7, num2); int_8 += num2; this.int_7 += num2; if (this.int_7 == 4) { int num3 = BitConverter.ToInt32(this.byte_2, 0); if (num3 > this.int_1) { Client.GDelegate9 gdelegate2 = this.gdelegate9_0; if (gdelegate2 != null) { gdelegate2(this, new Exception("Packet size exceeds MaxPacketSize.")); } this.method_56(); return; } if (num3 <= 0) { Client.GDelegate9 gdelegate2 = this.gdelegate9_0; if (gdelegate2 != null) { gdelegate2(this, new Exception("Packet size must be greater than 0.")); } this.method_56(); return; } this.int_5 = 0; this.int_7 = 0; this.bool_6 = true; Array.Resize <byte>(ref this.byte_0, num3); if (int_8 < int_9) { this.method_53(byte_4, int_8, int_9); } } } } else { Array.Resize <byte>(ref this.byte_0, int_9); Buffer.BlockCopy(byte_4, 0, this.byte_0, 0, int_9); Client.GDelegate2 gdelegate = this.gdelegate2_0; if (gdelegate != null) { gdelegate(this, this.byte_0); } } }