Function at 0x443b40
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Get socket status
Initialize winsock library
Resolve dns

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1b8
mov eax, dword [0x60aca0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, ecx
push edi
mov edi, dword [ebp + 8]
cmp dword [esi + 0x18], 0xffffffff
jne 0x443b9a
push 6
push 1
push 2
call sub.WSOCK32.dll_socket
mov dword [esi + 0x18], eax
cmp eax, 0xffffffff
jne 0x443bdf
call sub.WSOCK32.dll_WSAGetLastError
cmp eax, 0x276d
jne 0x443bc8
lea eax, [ebp - 0x1a4]
push eax
push 0x101
call sub.WSOCK32.dll_WSAStartup
test eax, eax
jne 0x443bb1
cmp dword [esi + 0x18], 0xffffffff
je 0x443b60
pop edi
mov eax, 2
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dcc5c
mov esp, ebp
pop ebp
ret 0x10
pop edi
mov eax, 0xb
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dcc5c
mov esp, ebp
pop ebp
ret 0x10
pop edi
mov eax, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dcc5c
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [ebp - 0x1a8]
mov dword [ebp - 0x1a8], 1
push ecx
push 0x8004667e
push eax
call sub.WSOCK32.dll_ioctlsocket
xorps xmm0, xmm0
push edi
movlpd qword [ebp - 0xc], xmm0
call sub.WSOCK32.dll_gethostbyname
test eax, eax
jne 0x443c2b
mov ecx, esi
call fcn.00443a80
pop edi
mov eax, 4
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dcc5c
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [eax + 0xc]
push dword [ebp + 0xc]
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov eax, 2
mov word [ebp - 0x14], ax
call sub.WSOCK32.dll_htons
mov word [ebp - 0x12], ax
lea eax, [ebp - 0x14]
push 0x10
push eax
push dword [esi + 0x18]
call sub.WSOCK32.dll_connect
test eax, eax
je 0x443c6c
call sub.WSOCK32.dll_WSAGetLastError
cmp eax, 0x2733
jne 0x443d4f
mov eax, dword [ebp + 0x14]
lea edi, [eax + eax*4]
add edi, edi
test edi, edi
jle 0x443d2c
nop dword [eax]
mov eax, dword [esi + 0x28]
dec edi
test eax, eax
je 0x443c91
cmp byte [eax], 0
jne 0x443d31
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x114], eax
lea eax, [ebp - 0x1b0]
push eax
push 0
lea eax, [ebp - 0x118]
mov dword [ebp - 0x1b0], 0
push eax
push 0
push 0
mov dword [ebp - 0x1ac], 0xc350
mov dword [ebp - 0x118], 1
call sub.WSOCK32.dll_select
cmp eax, 1
je 0x443d2d
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x114], eax
lea eax, [ebp - 0x1b8]
push eax
lea eax, [ebp - 0x118]
mov dword [ebp - 0x1b8], 0
push eax
push 0
push 0
push 0
mov dword [ebp - 0x1b4], 0xc350
mov dword [ebp - 0x118], 1
call sub.WSOCK32.dll_select
cmp eax, 0xffffffff
jne 0x443d24
call sub.WSOCK32.dll_WSAGetLastError
test eax, eax
jne 0x443d4f
test edi, edi
jg 0x443c80
dec edi
test edi, edi
jg 0x443d6d
mov ecx, esi
call fcn.00443a80
pop edi
mov eax, 6
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dcc5c
mov esp, ebp
pop ebp
ret 0x10
mov ecx, esi
call fcn.00443a80
pop edi
mov eax, 5
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dcc5c
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x608], 0
test eax, eax
jle 0x443da8
push eax
mov ecx, esi
call fcn.00444790
test eax, eax
je 0x443da8
mov ecx, esi
call fcn.00443a80
pop edi
mov eax, 0xd
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dcc5c
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
xor ecx, ebp
pop esi
call fcn.004dcc5c
mov esp, ebp
pop ebp
ret 0x10