Function at 0x456360
Capabilities:
Connect socket

Disassembly:
sub esp, 0xd0
mov eax, dword [0x55d198]
xor eax, esp
mov dword [esp + 0xcc], eax
mov ecx, dword [esp + 0xdc]
mov eax, dword [esp + 0xd8]
push ebx
push ebp
push edi
mov edi, dword [esp + 0xe0]
mov dword [esp + 0x10], ecx
mov byte [esp + 0xf], 0
mov ebp, dword [edi]
mov dword [ecx], 0xffffffff
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x1c]
push ecx
push eax
push edi
call fcn.00455a90
mov ebx, eax
add esp, 0x10
test ebx, ebx
je 0x4563d1
pop edi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0xcc]
xor ecx, esp
call fcn.004d1626
add esp, 0xd0
ret
movzx eax, word [esp + 0x28]
push esi
sub eax, 2
jne 0x4565d3
push 0x2e
lea eax, [esp + 0xb0]
push eax
lea eax, [esp + 0x38]
push eax
push 2
call fcn.004611c0
add esp, 0x10
test eax, eax
je 0x4565d3
push dword [esp + 0x2e]
call dword [sym.imp.WS2_32.dll_ntohs]
lea eax, [esp + 0xac]
push eax
push str.__Trying__s..._n
push ebp
call fcn.00454ad0
add esp, 0xc
cmp dword [esp + 0x1c], 2
jne 0x456433
cmp dword [esp + 0x20], 1
jne 0x456433
mov al, 1
jmp 0x456435
xor al, al
mov esi, dword [esp + 0x18]
mov byte [esp + 0x12], al
test al, al
je 0x456454
cmp byte [ebp + 0x32e], 0
je 0x456454
push esi
push edi
call fcn.00455b60
add esp, 8
push esi
call fcn.004559f0
add esp, 4
cmp byte [esp + 0x12], 0
je 0x456477
cmp byte [ebp + 0x434], 0
je 0x456477
push esi
push ebp
call fcn.00456620
add esp, 8
mov eax, dword [ebp + 0x1d8]
test eax, eax
je 0x456499
push 0
push esi
push dword [ebp + 0x1dc]
call eax
add esp, 0xc
cmp eax, 2
jne 0x4564db
mov byte [esp + 0x13], 1
cmp dword [esp + 0x1c], 2
jne 0x4564f3
lea eax, [esp + 0x2c]
push eax
call fcn.00407220
push eax
push dword [esp + 0x24]
push esi
push edi
call fcn.00455ea0
mov ebx, eax
add esp, 0x14
test ebx, ebx
je 0x4564f3
push esi
push edi
call fcn.004552a0
add esp, 8
mov eax, 7
cmp ebx, 1
cmove ebx, eax
mov eax, ebx
jmp 0x456606
test eax, eax
je 0x456499
push esi
push edi
call fcn.004552a0
add esp, 8
mov eax, 0x2a
jmp 0x456606
push 1
push esi
call fcn.00475180
add esp, 8
call fcn.0044aee0
cmp dword [edi + 0x2b0], 1
mov dword [edi + 0x2a8], eax
mov dword [edi + 0x2ac], edx
jle 0x456527
push dword [edi + 0x2b4]
push ebp
call fcn.00446c60
add esp, 8
cmp byte [esp + 0x13], 0
jne 0x4565cb
cmp dword [edi + 0x8c], 1
jne 0x4565cb
cmp byte [edi + 0x2a4], 0
jne 0x45656e
push dword [esp + 0x28]
lea eax, [esp + 0x30]
push eax
push esi
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x45656e
test ebx, ebx
jne 0x4565c7
mov eax, dword [esp + 0x14]
mov dword [eax], esi
mov eax, ebx
jmp 0x456606
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
cmp ebx, 0xb
je 0x4565bf
cmp ebx, 0x2732
jle 0x45658b
cmp ebx, 0x2734
jle 0x4565bf
push ebx
push edi
call fcn.004462a0
push eax
lea eax, [esp + 0xb8]
push eax
push str.Immediate_connect_fail_for__s:__s_n
push ebp
call fcn.00454ad0
push esi
push edi
mov dword [ebp + 0x85e0], ebx
call fcn.004552a0
mov ebx, 7
add esp, 0x20
mov eax, ebx
jmp 0x456606
mov eax, dword [esp + 0x14]
xor ebx, ebx
mov dword [eax], esi
mov eax, ebx
jmp 0x456606
mov eax, dword [esp + 0x14]
mov dword [eax], esi
jmp 0x456604
mov byte [esp + 0xac], 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
push esi
push edi
call fcn.004462a0
push eax
push esi
push str.sa_addr_inet_ntop___failed_with_errno__d:__s
push ebp
call fcn.00454a00
push dword [esp + 0x30]
push edi
call fcn.004552a0
add esp, 0x20
xor eax, eax
mov ecx, dword [esp + 0xdc]
pop esi
pop edi
pop ebp
pop ebx
xor ecx, esp
call fcn.004d1626
add esp, 0xd0
ret