Function at 0x4e9d00
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
push edi
push esi
mov esi, ecx
push ebx
xor ebx, ebx
sub esp, 0x2c
mov dword [esp + 4], 0
mov eax, dword [ecx + 0xcc]
mov word [esp + 0x1e], 0
mov dword [esp], eax
call sym._SDLNet_CheckSockets
lea edx, [ebx + ebx*4]
mov ecx, dword [esi + edx*4 + 0x60]
test ecx, ecx
je 0x4e9d80
mov edi, dword [ecx]
test edi, edi
je 0x4e9d80
lea edi, [esp + 0x1e]
mov dword [esp + 8], 2
mov dword [esp + 4], edi
mov dword [esp], ecx
call sym._SDLNet_TCP_Recv
test eax, eax
jle 0x4e9d80
movzx edx, byte [esp + 0x1f]
cmp dl, 0xfe
je 0x4e9ffd
cmp dl, 0x80
je 0x4e9f88
lea eax, [edx + 0x10]
cmp al, 0xd
ja case.0x4e9d76.1
movzx ebp, al
jmp dword [ebp*4 + 0x60adb4]
add ebx, 1
cmp ebx, 3
jne 0x4e9d28
mov eax, 1
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
test dl, dl
jne 0x4e9d88
mov ebp, dword [esi]
mov ecx, dword [ebp]
or byte [ecx + 0xff0f], 8
mov eax, dword [esi]
mov edx, dword [eax]
movzx ecx, byte [edx + 0xff01]
mov byte [esi + 0xc], cl
mov ebp, dword [eax]
movzx eax, byte [esp + 0x1e]
mov byte [ebp + 0xff01], al
mov edx, dword [esi]
mov ecx, dword [edx]
and byte [ecx + 0xff02], 0x7f
mov ebp, dword [esi]
movzx eax, byte [esi + 0xc]
mov edx, dword [ebp]
mov byte [esp + 0x1e], al
movzx ecx, byte [edx + 0xff01]
mov byte [esi + 0xc], cl
mov dword [esp + 4], edi
mov edi, ebx
shl edi, 4
mov dword [esp + 8], 2
mov eax, dword [esi + edi + 0x98]
mov dword [esp], eax
call sym._SDLNet_TCP_Send
cmp eax, 1
jg 0x4e9d80
imul ebp, ebx, 0x14
mov dword [esp + 8], 0x30
shl ebx, 4
mov dword [esp + 4], str.SIO::Error___Host_failed_to_send_data_to_client_n
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov byte [esi + 4], 0
xor eax, eax
mov byte [esi + ebp + 0x6c], 0
mov byte [ebx + esi + 0xa4], 0
jmp 0x4e9d8d
mov byte [esi + 8], 0
mov dword [esi + 0x18], 0
lea esi, [esi]
nop
mov byte [esp + 0x1f], 1
shl ebx, 4
mov dword [esp + 8], 2
mov dword [esp + 4], edi
mov ebx, dword [ebx + esi + 0x98]
mov dword [esp], ebx
call sym._SDLNet_TCP_Send
jmp 0x4e9d88
mov ebp, dword [esi]
movzx eax, byte [esp + 0x1e]
mov byte [esp + 0x1f], 1
mov edx, dword [ebp]
mov byte [edx + 0xff01], al
mov ecx, dword [esi]
mov ebp, dword [ecx]
or byte [ebp + 0xff0f], 8
mov edx, dword [esi + 0x328]
cmp edx, 1
je 0x4e9fb1
cmp al, 0xcc
je 0x4e9e65
cmp edx, 2
jne 0x4e9e65
mov dword [esi + 0x328], 3
mov byte [esi + 0xf], 0
jmp 0x4e9e65
movzx edx, byte [esi + 0x308]
movzx eax, byte [esp + 0x1e]
movzx ecx, byte [esi + 0x309]
cmp dl, 3
je 0x4e9fe7
ja 0x4e9f76
cmp dl, 1
je 0x4e9ff2
cmp dl, 2
jne 0x4e9f18
and eax, 0xffffffd0
and ecx, 0x2f
lea esi, [esi]
or eax, ecx
mov byte [esi + 0x309], al
mov byte [esp + 0x1e], al
jmp 0x4e9e60
mov byte [esi + 0xa], 0
jmp 0x4e9e60
movzx eax, byte [esi + 8]
jmp 0x4e9f20
and byte [esi + 0x309], 7
mov byte [esp + 0x1f], 1
mov dword [esi + 0x328], 1
mov byte [esi + 0xf], 0
jmp 0x4e9e65
movzx eax, byte [esi + 0xc]
jmp 0x4e9f20
cmp dl, 4
jne 0x4e9f18
and eax, 0x70
and ecx, 0xffffff8f
jmp 0x4e9f18
mov dword [esp + 8], 0x3a
mov dword [esp + 4], 0x60ad44
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov byte [esi + 4], 0
mov byte [esi + 8], 0
jmp 0x4e9d88
cmp al, 0xcc
je 0x4ea034
movzx eax, byte [esi + 0xf]
mov ebp, dword [esi]
lea ecx, [eax - 1]
cmp cl, 1
jbe 0x4ea006
mov edx, dword [ebp]
test al, al
jne 0x4ea054
mov byte [edx + 0xff01], 0xfe
movzx edx, byte [esi + 0xf]
add edx, 1
and edx, 3
mov byte [esi + 0xf], dl
jmp 0x4e9e65
and eax, 0xffffffb0
and ecx, 0x4f
jmp 0x4e9f18
and eax, 0xffffffe0
and ecx, 0x1f
jmp 0x4e9f18
movzx eax, byte [esi + 0xa]
jmp 0x4e9f20
movzx ecx, byte [esi + 0x308]
movzx eax, byte [esi + 0x309]
add ecx, 3
shl edx, cl
cmp byte [esi + 0xc], 0x88
je 0x4ea047
not edx
and eax, edx
mov byte [esi + 0x309], al
mov edx, dword [ebp]
mov byte [edx + 0xff01], al
jmp 0x4e9fd5
mov dword [esi + 0x328], 2
mov byte [esi + 0xf], 0
jmp 0x4e9e65
or eax, edx
mov byte [esi + 0x309], al
mov edx, dword [ebp]
jmp 0x4ea02c
movzx eax, byte [esi + 0x309]
jmp 0x4ea02c