Function at 0x420e19
Capabilities:
Connect socket

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd4
push ebx
push esi
push edi
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x51c], 2
push 0
call fcn.00526bc8
pop ecx
mov dword [ebx + 0x874], eax
cmp dword [ebx + 0x52c], 0
je 0x420efc
cmp word [ebx + 0x520], 0
jne 0x420efc
cmp dword [0x52e370], 0
je 0x420eac
cmp dword [0x52e36c], 0
je 0x420eac
push dword [0x52a380]
push 0
push 0x523
call fcn.00415c87
push eax
push dword [ebx]
call fcn.004c7cd0
call fcn.0041f5c6
mov esi, eax
mov dword [ebx + 0x528], esi
push esi
push 1
push 0
add ebx, 0x4b8
push ebx
call fcn.00466a52
mov eax, 1
jmp 0x4210d6
cmp byte [0x533e84], 0
je 0x420ef5
lea edx, [ebx + 0x4b8]
mov esi, edx
mov edi, 0x533e84
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 8
push ebx
call fcn.0041f9f1
test eax, eax
je 0x420ef5
mov eax, 1
jmp 0x4210d6
xor eax, eax
jmp 0x4210d6
lea edx, [ebx + 0x4b8]
push edx
call sub.WSOCK32.dll_inet_addr
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffffff
jne 0x420f72
cmp dword [0x52e370], 0
je 0x420f2c
cmp dword [0x52e36c], 0
je 0x420f2c
cmp dword [0x52e368], 0
jne 0x420f72
cmp dword [ebx + 0x530], 0
je 0x420f58
push 7
push 0
lea ecx, [ebx + 0x4b8]
push ecx
lea eax, [ebx + 0x3f0]
push eax
push dword [ebx]
call fcn.004531f8
mov eax, 1
jmp 0x4210d6
push ebx
push 0
push 0x524
call fcn.00415c87
push eax
call fcn.0041f7ba
xor eax, eax
jmp 0x4210d6
cmp dword [0x52e370], 0
je 0x420fd5
cmp dword [0x52e36c], 0
je 0x420fd5
cmp dword [ebx + 0x530], 0
je 0x420fd5
push dword [0x52a380]
push 0
push 0x523
call fcn.00415c87
push eax
push dword [ebx]
call fcn.004c7cd0
call fcn.0041f5c6
mov esi, eax
mov dword [ebx + 0x528], esi
push esi
push 0
mov ax, word [ebx + 0x520]
push eax
add ebx, 0x4b8
push ebx
call fcn.00466a52
mov eax, 1
jmp 0x4210d6
lea eax, [ebp - 0xc]
mov dword [ebp - 0x10], eax
lea edx, [ebp - 4]
mov dword [eax], edx
xor ecx, ecx
mov dword [eax + 4], ecx
mov word [ebp - 0x12], 4
mov word [ebp - 0x14], 2
lea esi, [ebp - 0x1c]
push 0x10
push 0
lea eax, [ebp - 0x2c]
push eax
call fcn.0051825c
add esp, 0xc
mov word [ebp - 0x2c], 2
movsx edx, word [esi + 0xa]
push edx
mov ecx, dword [esi + 0xc]
push dword [ecx]
lea eax, [ebp - 0x28]
push eax
call fcn.005181ec
add esp, 0xc
mov dx, word [ebx + 0x520]
push edx
call sub.WSOCK32.dll_htons
mov word [ebp - 0x2a], ax
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx]
mov edx, dword [eax]
mov dword [ebp - 0x28], edx
push 0
push 2
push 0
mov cx, word [0x52c432]
push ecx
mov ax, word [0x52c430]
push eax
call fcn.004cb44e
mov esi, eax
mov dword [ebx + 0x878], esi
cmp esi, 0xffffffff
jne 0x421079
push ebx
push 0
push 0x518
call fcn.00415c87
push eax
call fcn.0041f7ba
xor eax, eax
jmp 0x4210d6
push dword [ebx + 0x878]
call fcn.004fe692
push 0x10
push 0x41c
push dword [0x537420]
push dword [ebx + 0x878]
call sub.WSOCK32.dll_WSAAsyncSelect
push 0x10
lea edx, [ebp - 0x2c]
push edx
push dword [ebx + 0x878]
call sub.WSOCK32.dll_connect
test eax, eax
jge 0x4210d4
call sub.WSOCK32.dll_WSAGetLastError
cmp eax, 0x2733
je 0x4210d4
push ebx
push 0
push 0x525
call fcn.00415c87
push eax
call fcn.0041f7ba
xor eax, eax
jmp 0x4210d6
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4