Function at 0x414200
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
mov eax, 0x102c
call fcn.00465fa0
mov eax, dword [0x4a0538]
xor eax, esp
mov dword [esp + 0x1028], eax
push ebx
push ebp
push esi
push edi
push 0x1000
lea eax, [esp + 0x3c]
push 0
push eax
mov edi, ecx
call fcn.00463860
add esp, 0xc
lea ebp, [edi + 0x4a4]
push ebp
mov dword [esp + 0x18], 0x10
mov byte [esp + 0x17], 0x32
mov dword [esp + 0x1c], ebp
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x4a1eb0], 0
je 0x414441
cmp dword [0x4a1ec0], 0
push 0
je 0x414282
mov ecx, dword [0x24a45a4]
push 0x2710
push 0x66
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
lea ebx, [esp + 0x39]
jmp 0x41429a
mov edx, dword [0x24a45a4]
push 0xbb8
push 0x66
push edx
call dword [sym.imp.USER32.dll_SetTimer]
lea ebx, [esp + 0x38]
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x20]
push ecx
push 0
push 0x1000
lea edx, [esp + 0x48]
mov byte [0x49e983], 1
mov eax, dword [edi + 0x44c]
push edx
push eax
call dword [sym.imp.WS2_32.dll_recvfrom]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov esi, eax
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x38]
mov dword [eax + 8], ecx
mov ecx, edi
mov dword [0x4a40b0], esi
mov dword [eax + 0xc], edx
call fcn.00413fe0
test eax, eax
jne 0x414441
cmp dword [0x4a1ec0], eax
je 0x414398
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
sub esi, 3
mov dword [0x4a40b0], esi
cmp esi, 0xfff
jbe 0x414335
mov eax, dword [0x4a1ecc]
push 0x40
push eax
push str.Check_the_protocol_version_in_the_connect_setting_menu
push 0
call ebp
mov esi, dword [0x4a40b0]
cmp byte [esp + 0x38], 2
jne 0x4143f3
push esi
push ebx
mov ecx, edi
call fcn.00413f60
movzx cx, byte [esi + ebx + 1]
movzx dx, byte [esi + ebx]
shl cx, 8
or cx, dx
cmp ax, cx
jne 0x4143f3
mov eax, dword [esp + 0x14]
push eax
mov eax, dword [edi + 0x44c]
lea ecx, [esp + 0x20]
push ecx
push 0
push 1
lea edx, [esp + 0x23]
push edx
push eax
mov dword [0x14a40c0], 0
call dword [sym.imp.WS2_32.dll_sendto]
mov esi, dword [0x4a40b0]
mov ebp, dword [esp + 0x18]
test esi, esi
je 0x414472
cmp esi, 0xffffffff
je 0x414462
mov ecx, 0x4a40b8
call fcn.00421600
mov ecx, 0x1000000
sub ecx, eax
mov eax, dword [0x4a40b0]
cmp ecx, eax
jle 0x414448
xor esi, esi
test eax, eax
jbe 0x414472
xor eax, eax
movzx edx, byte [eax + ebx]
push edx
mov ecx, 0x4a40b8
call fcn.00421620
inc esi
movzx eax, si
cmp eax, dword [0x4a40b0]
jb 0x4143d3
jmp 0x414472
mov eax, dword [0x14a40c0]
inc eax
cmp eax, 5
mov byte [esp + 0x13], 0x33
mov dword [0x14a40c0], eax
jge 0x41442f
mov ecx, dword [esp + 0x14]
push ecx
mov ecx, dword [edi + 0x44c]
lea edx, [esp + 0x20]
push edx
push 0
push 1
lea eax, [esp + 0x23]
push eax
push ecx
call dword [sym.imp.WS2_32.dll_sendto]
xor al, al
jmp 0x414530
mov edx, dword [0x4a1ecc]
push 0x40
push edx
push str.Check_the_protocol_version_in_the_connect_setting_menu
push 0
call ebp
xor al, al
jmp 0x414530
push 0
push 0
push str.m_QueueRead_FULL_
call fcn.004449c5
mov ecx, 0x4a40b8
call fcn.004215d0
jmp 0x414472
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [0x4a40b0], 0
push ebp
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [0x14a40b8]
mov ecx, dword [eax + 0x4a40ae]
mov edx, dword [eax + 0x4a40b2]
mov ax, word [eax + 0x4a40b6]
mov esi, dword [sym.imp.USER32.dll_PostMessageA]
mov word [esp + 0x34], ax
mov al, 0xd
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
cmp cl, al
jne 0x414512
mov ebx, ecx
shr ebx, 8
cmp bl, 0xa
jne 0x414512
mov ebx, ecx
shr ebx, 0x10
cmp bl, al
jne 0x414512
shr ecx, 0x18
cmp cl, 0xa
jne 0x414512
cmp dl, al
jne 0x414512
mov ecx, edx
shr ecx, 8
cmp cl, 0xa
jne 0x414512
mov ecx, edx
shr ecx, 0x10
cmp cl, al
jne 0x414512
shr edx, 0x18
cmp dl, 0xa
jne 0x414512
cmp byte [esp + 0x34], al
jne 0x414512
mov edx, dword [esp + 0x34]
shr edx, 8
cmp dl, 0xa
jne 0x414512
mov ecx, 0x4a1a80
call fcn.00443d4b
mov eax, dword [eax + 0x20]
push 0
push 0x1404
push 0x111
push eax
call esi
mov ecx, 0x4a1a80
call fcn.00443d4b
mov ecx, dword [eax + 0x20]
push 0
push 0x1406
push 0x111
push ecx
call esi
mov al, 1
mov ecx, dword [esp + 0x1038]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004637ae
add esp, 0x102c
ret 4