Function at 0x4512d0
Capabilities:
Connect socket

Disassembly:
sub esp, 0xd0
push ebx
push ebp
xor eax, eax
push edi
mov edi, dword [esp + 0xe0]
mov dword [esp + 0x14], eax
mov byte [esp + 0xe], al
mov eax, dword [esp + 0xe8]
mov ebp, dword [edi]
mov dword [eax], 0xffffffff
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x20]
push eax
push dword [esp + 0xec]
push edi
call fcn.004509f0
mov ebx, eax
add esp, 0x10
test ebx, ebx
je 0x451325
pop edi
pop ebp
xor eax, eax
pop ebx
add esp, 0xd0
ret
push esi
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0xb4]
push eax
lea eax, [esp + 0x38]
push eax
call fcn.00451240
add esp, 0xc
test al, al
jne 0x45137a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
push esi
push edi
call fcn.00462140
push eax
push esi
push str.sa_addr_inet_ntop___failed_with_errno__d:__s
push ebp
call fcn.0044d7e0
push dword [esp + 0x2c]
push edi
call fcn.004502e0
add esp, 0x20
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
add esp, 0xd0
ret
lea eax, [esp + 0xb0]
push eax
push str.__Trying__s..._n
push ebp
call fcn.0044d8b0
mov eax, dword [esp + 0x2c]
add esp, 0xc
cmp eax, 2
je 0x45139e
cmp eax, 0x17
jne 0x4513ac
cmp dword [esp + 0x24], 1
jne 0x4513ac
mov eax, 1
jmp 0x4513ae
xor eax, eax
mov esi, dword [esp + 0x14]
test eax, eax
setne al
mov byte [esp + 0x13], al
test al, al
je 0x4513d2
cmp byte [ebp + 0x29a], 0
je 0x4513d2
push esi
push edi
call fcn.00451680
add esp, 8
push esi
call fcn.00450910
add esp, 4
cmp byte [esp + 0x13], 0
je 0x4513f5
cmp byte [ebp + 0x398], 0
je 0x4513f5
push esi
push ebp
call fcn.004515b0
add esp, 8
mov eax, dword [ebp + 0x16c]
test eax, eax
je 0x45141b
push 0
push esi
push dword [ebp + 0x170]
call eax
add esp, 0xc
mov dword [esp + 0x18], eax
cmp eax, 2
jne 0x451469
mov byte [esp + 0x12], 1
mov eax, dword [esp + 0x20]
cmp eax, 2
je 0x451429
cmp eax, 0x17
jne 0x451487
lea eax, [esp + 0x30]
push eax
call fcn.00462e10
push eax
push dword [esp + 0x28]
push esi
push edi
call fcn.00450d60
mov ebx, eax
add esp, 0x14
test ebx, ebx
je 0x451487
push esi
push edi
call fcn.004502e0
add esp, 8
cmp ebx, 1
jne 0x451587
pop esi
pop edi
pop ebp
lea eax, [ebx + 6]
pop ebx
add esp, 0xd0
ret
test eax, eax
je 0x45141b
push esi
push edi
call fcn.004502e0
add esp, 8
mov eax, 0x2a
pop esi
pop edi
pop ebp
pop ebx
add esp, 0xd0
ret
push 1
push esi
call fcn.00463160
add esp, 8
call fcn.00452b60
cmp dword [edi + 0x254], 1
mov dword [edi + 0x24c], eax
mov dword [edi + 0x250], edx
jle 0x4514bb
push dword [edi + 0x258]
push ebp
call fcn.0044ded0
add esp, 8
cmp byte [esp + 0x12], 0
jne 0x451594
cmp dword [edi + 0x7c], 1
jne 0x451594
push dword [esp + 0x2c]
lea eax, [esp + 0x34]
push eax
push esi
call dword [sym.imp.WSOCK32.DLL_connect]
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
jne 0x4514f5
call dword [sym.imp.WSOCK32.DLL_WSAGetLastError]
mov dword [esp + 0x18], eax
jmp 0x4514f9
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x20], 0x17
sete cl
cmp dword [esp + 0x14], 0xffffffff
mov byte [edi + 0x237], cl
jne 0x45157a
cmp eax, 0xb
je 0x451562
cmp eax, 0x2732
jle 0x451521
cmp eax, 0x2734
jle 0x451562
push eax
push edi
call fcn.00462140
push eax
lea eax, [esp + 0xbc]
push eax
push str.Immediate_connect_fail_for__s:__s_n
push ebp
call fcn.0044d8b0
mov eax, dword [esp + 0x30]
push esi
push edi
mov dword [ebp + 0x84f0], eax
call fcn.004502e0
add esp, 0x20
mov ebx, 7
mov eax, ebx
pop esi
pop edi
pop ebp
pop ebx
add esp, 0xd0
ret
mov eax, dword [esp + 0xec]
xor ebx, ebx
mov dword [eax], esi
mov eax, ebx
pop esi
pop edi
pop ebp
pop ebx
add esp, 0xd0
ret
test ebx, ebx
jne 0x451587
mov eax, dword [esp + 0xec]
mov dword [eax], esi
pop esi
pop edi
pop ebp
mov eax, ebx
pop ebx
add esp, 0xd0
ret
mov eax, dword [esp + 0xec]
mov dword [eax], esi
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
add esp, 0xd0
ret