Function at 0x52e68f
Capabilities:
Connect socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1f0
mov eax, dword [0x59e080]
xor eax, ebp
mov dword [ebp - 4], eax
mov edx, dword [ebp + 0x14]
xor ecx, ecx
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x1d4], ecx
mov byte [ebp - 0x1c6], cl
lea ecx, [ebp - 0x1cc]
push ecx
or dword [edi + edx*4 + 0x150], 0xffffffff
lea ecx, [ebp - 0x1c4]
push ecx
push eax
push ebx
mov dword [ebp - 0x1d8], edi
mov dword [ebp - 0x1e0], edx
call fcn.0052de42
add esp, 0x10
mov dword [ebp - 0x1dc], eax
test eax, eax
jne 0x52e9d1
push esi
lea eax, [ebp - 0x1d0]
push eax
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x1b8]
lea eax, [ebp - 0x1b4]
push eax
call fcn.0052d317
add esp, 0x10
test al, al
jne 0x52e75f
call fcn.00562452
mov esi, dword [eax]
call fcn.00562452
mov edi, eax
lea eax, [ebp - 0x134]
push 0x100
push eax
push esi
call fcn.0053cedc
push eax
push dword [edi]
push str.sa_addr_inet_ntop___failed_with_errno__d:__s
push ebx
call fcn.0052cc10
mov edi, dword [ebp - 0x1d8]
add esp, 0x1c
mov esi, dword [ebp - 0x1cc]
jmp 0x52e884
push dword [ebp - 0x1d0]
lea eax, [ebp - 0x34]
push eax
push str.__Trying__s:_d...
push ebx
call fcn.0052ccc0
add esp, 0x10
cmp dword [ebp - 0x1c4], 2
jne 0x52e7b1
cmp dword [ebp - 0x1c0], 1
jne 0x52e7b1
cmp byte [ebx + 0x717], 0
mov esi, dword [ebp - 0x1cc]
mov byte [ebp - 0x1c5], 1
je 0x52e7be
push esi
push ebx
call fcn.0052eaac
pop ecx
pop ecx
mov byte [ebp - 0x1c5], 1
jmp 0x52e7be
mov esi, dword [ebp - 0x1cc]
mov byte [ebp - 0x1c5], 0
push esi
call fcn.0052ddb8
cmp byte [ebp - 0x1c5], 0
pop ecx
je 0x52e7e0
cmp byte [ebx + 0x720], 0
je 0x52e7e0
push esi
push ebx
call fcn.0052e9df
pop ecx
pop ecx
cmp dword [ebx + 0x1b8], 0
je 0x52e823
push 1
push ebx
call fcn.00520ac0
push 0
push esi
push dword [ebx + 0x1bc]
call dword [ebx + 0x1b8]
push 0
push ebx
mov dword [ebp - 0x1d0], eax
call fcn.00520ac0
mov eax, dword [ebp - 0x1d0]
add esp, 0x1c
cmp eax, 2
jne 0x52e876
mov byte [ebp - 0x1c6], 1
cmp dword [ebp - 0x1c4], 2
jne 0x52e8a0
lea eax, [ebp - 0x1b4]
push eax
call fcn.00420e10
push eax
push dword [ebp - 0x1c4]
push esi
push ebx
call fcn.0052e16b
mov esi, eax
add esp, 0x14
mov dword [ebp - 0x1dc], esi
test esi, esi
je 0x52e89a
mov eax, dword [ebp - 0x1cc]
push eax
push edi
push ebx
call fcn.0052d372
add esp, 0xc
cmp esi, 1
push 7
pop eax
cmove esi, eax
mov eax, esi
jmp 0x52e9d0
test eax, eax
je 0x52e823
mov dword [ebp - 0x1d4], 0x2a
push esi
push edi
push ebx
call fcn.0052d372
mov eax, dword [ebp - 0x1d4]
add esp, 0xc
jmp 0x52e9d0
mov esi, dword [ebp - 0x1cc]
push 1
push esi
call fcn.0055393b
lea eax, [ebp - 0x1f0]
push eax
call fcn.005309fe
add edi, 0x280
mov esi, eax
add esp, 0xc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x1d8]
cmp dword [esi + 0x27c], 1
jle 0x52e8fd
push 3
push dword [esi + 0x294]
push dword [esi + 0x290]
push ebx
call fcn.0052071b
push 4
push dword [esi + 0x29c]
push dword [esi + 0x298]
push ebx
call fcn.0052071b
add esp, 0x20
cmp byte [ebp - 0x1c6], 0
jne 0x52e9bb
cmp dword [esi + 0x58], 4
je 0x52e9bb
cmp byte [esi + 0x272], 0
mov edi, dword [ebp - 0x1cc]
jne 0x52e94c
push dword [ebp - 0x1b8]
lea eax, [ebp - 0x1b4]
push eax
push edi
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x52e94c
mov eax, dword [ebp - 0x1dc]
test eax, eax
jne 0x52e9d0
jmp 0x52e9ac
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, eax
mov dword [ebp - 0x1d0], eax
sub ecx, 0xb
je 0x52e9aa
sub ecx, 0x2728
je 0x52e9aa
sub ecx, 1
je 0x52e9aa
push 0x100
lea ecx, [ebp - 0x134]
push ecx
push eax
call fcn.0053cedc
push eax
lea eax, [ebp - 0x34]
push eax
push str.Immediate_connect_fail_for__s:__s
push ebx
call fcn.0052ccc0
mov eax, dword [ebp - 0x1d0]
push edi
push esi
push ebx
mov dword [ebx + 0x964], eax
call fcn.0052d372
add esp, 0x28
push 7
pop eax
jmp 0x52e9d0
xor eax, eax
mov ecx, dword [ebp - 0x1e0]
mov dword [esi + ecx*4 + 0x150], edi
jmp 0x52e9d0
mov ecx, dword [ebp - 0x1e0]
mov eax, dword [ebp - 0x1cc]
mov dword [esi + ecx*4 + 0x150], eax
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop ebx
call fcn.0051bf16
leave
ret