public void Send(ref PacketWriter packet) { byte[] array = packet.ReadDataToSend(false); try { Log.Message(LogType.Packet, Module.smethod_36 <string>(593506430u), new object[] { packet.Opcode, packet.Size }); byte[] array2; int int_; uint uint_; PacketWriter packetWriter2; while (true) { IL_155: uint arg_123_0 = 2199929490u; while (true) { uint num; switch ((num = (arg_123_0 ^ 3311393667u)) % 9u) { case 1u: { array2 = null; byte[] array3; int_ = array3.Length; uint_ = WorldClass.Adler32(array3); arg_123_0 = (num * 68058880u ^ 2153398968u); continue; } case 2u: goto IL_155; case 3u: { PacketWriter packetWriter = new PacketWriter(ServerMessage.ResetCompressionContext, true); arg_123_0 = (num * 1834449402u ^ 1107624411u); continue; } case 4u: if (this.Crypt.IsInitialized) { arg_123_0 = (num * 3545686980u ^ 39507906u); continue; } goto IL_374; case 5u: { PacketWriter packetWriter; this.Send(ref packetWriter); packetWriter2 = new PacketWriter(ServerMessage.Compression, true); arg_123_0 = (num * 1258462980u ^ 4146404091u); continue; } case 6u: { byte[] array3; byte[] array4; array3[1] = array4[1]; arg_123_0 = (num * 2425788949u ^ 3606182965u); continue; } case 7u: { byte[] array4 = WorldClass.smethod_15((ushort)packet.Opcode); byte[] array3 = new byte[array.Length - 4]; WorldClass.smethod_13(array, 4, array3, 0, array3.Length); array3[0] = array4[0]; arg_123_0 = (num * 2814429138u ^ 762017105u); continue; } case 8u: goto IL_3F8; } goto Block_4; } } uint arg_3B6_0; while (true) { IL_3B1: uint num; switch ((num = (arg_3B6_0 ^ 3311393667u)) % 13u) { case 0u: array2 = array2.Combine(new byte[] { 0, 0, 255, 255 }); arg_3B6_0 = 4135719112u; continue; case 1u: goto IL_374; case 2u: { WorldClass.smethod_23(packetWriter2, uint_); uint uint_2; WorldClass.smethod_23(packetWriter2, uint_2); WorldClass.smethod_24(packetWriter2, array2); arg_3B6_0 = (num * 4105965725u ^ 4017603929u); continue; } case 3u: { uint uint_2 = WorldClass.Adler32(array2); arg_3B6_0 = (num * 977288196u ^ 864158354u); continue; } case 4u: array[1] = (byte)(255 & array.Length - 4 >> 8); this.Crypt.Encrypt(array, 4); arg_3B6_0 = (num * 3558555324u ^ 1587990696u); continue; case 5u: array = packetWriter2.ReadDataToSend(false); arg_3B6_0 = (num * 1269215262u ^ 3837774562u); continue; case 6u: arg_3B6_0 = ((((array2[array2.Length - 1] & 8) != 8) ? 3170777306u : 2567516264u) ^ num * 894815154u); continue; case 7u: WorldClass.smethod_25(packet); arg_3B6_0 = (num * 214185292u ^ 269952291u); continue; case 9u: goto IL_3F8; case 10u: array2 = array2.Combine(new byte[1]); arg_3B6_0 = (num * 2738487785u ^ 951591865u); continue; case 11u: goto IL_271; case 12u: WorldClass.smethod_22(packetWriter2, int_); arg_3B6_0 = (num * 891587732u ^ 1040375321u); continue; } break; } return; Block_4: MemoryStream memoryStream = WorldClass.smethod_16(); try { DeflateStream deflateStream = WorldClass.smethod_17(memoryStream, CompressionLevel.Fastest); try { byte[] array3; WorldClass.smethod_18(deflateStream, array3, 0, array3.Length); while (true) { IL_1B0: uint arg_197_0 = 3252342619u; while (true) { uint num; switch ((num = (arg_197_0 ^ 3311393667u)) % 3u) { case 1u: WorldClass.smethod_19(deflateStream); arg_197_0 = (num * 3667174594u ^ 498565863u); continue; case 2u: goto IL_1B0; } goto Block_11; } } Block_11 :; } finally { if (deflateStream != null) { while (true) { IL_1F2 : uint arg_1D9_0 = 2488757830u; while (true) { uint num; switch ((num = (arg_1D9_0 ^ 3311393667u)) % 3u) { case 0u: goto IL_1F2; case 2u: WorldClass.smethod_20(deflateStream); arg_1D9_0 = (num * 1032679818u ^ 1481471478u); continue; } goto Block_14; } } Block_14 :; } } array2 = WorldClass.smethod_21(memoryStream); } finally { if (memoryStream != null) { while (true) { IL_23E: uint arg_225_0 = 4248991174u; while (true) { uint num; switch ((num = (arg_225_0 ^ 3311393667u)) % 3u) { case 1u: WorldClass.smethod_20(memoryStream); arg_225_0 = (num * 4155117569u ^ 3966915401u); continue; case 2u: goto IL_23E; } goto Block_17; } } Block_17 :; } } byte[] expr_24E_cp_0 = array2; int expr_24E_cp_1 = 0; expr_24E_cp_0[expr_24E_cp_1] -= 1; IL_271: arg_3B6_0 = 2766555372u; goto IL_3B1; IL_374: WorldClass.smethod_8(this.clientSocket, array, 0, array.Length, SocketFlags.None); arg_3B6_0 = 3877238322u; goto IL_3B1; IL_3F8: array[0] = (byte)(255 & array.Length - 4); arg_3B6_0 = 4257648992u; goto IL_3B1; } catch (Exception exception_) { while (true) { IL_48F: uint arg_41C_0 = 3929711820u; while (true) { uint num; switch ((num = (arg_41C_0 ^ 3311393667u)) % 4u) { case 0u: goto IL_48F; case 2u: WorldClass.smethod_27(this.clientSocket); CharacterHandler.chatRunning = false; arg_41C_0 = (num * 1852355598u ^ 3988322590u); continue; case 3u: Log.Message(LogType.Error, Module.smethod_36 <string>(3490486299u), new object[] { WorldClass.smethod_26(exception_) }); Log.Message(); arg_41C_0 = (num * 3844434002u ^ 3766579695u); continue; } goto Block_19; } } Block_19 :; } }