Function at 0x44d680
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 [0x62acc0]
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 0x44d6da
push 6
push 1
push 2
call sub.WSOCK32.dll_socket
mov dword [esi + 0x18], eax
cmp eax, 0xffffffff
jne 0x44d71f
call sub.WSOCK32.dll_WSAGetLastError
cmp eax, 0x276d
jne 0x44d708
lea eax, [ebp - 0x1a4]
push eax
push 0x101
call sub.WSOCK32.dll_WSAStartup
test eax, eax
jne 0x44d6f1
cmp dword [esi + 0x18], 0xffffffff
je 0x44d6a0
pop edi
mov eax, 2
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004fe8dc
mov esp, ebp
pop ebp
ret 0x10
pop edi
mov eax, 0xb
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004fe8dc
mov esp, ebp
pop ebp
ret 0x10
pop edi
mov eax, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004fe8dc
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 0x44d76b
mov ecx, esi
call fcn.0044d5c0
pop edi
mov eax, 4
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004fe8dc
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 0x44d7ac
call sub.WSOCK32.dll_WSAGetLastError
cmp eax, 0x2733
jne 0x44d88f
mov eax, dword [ebp + 0x14]
lea edi, [eax + eax*4]
add edi, edi
test edi, edi
jle 0x44d86c
nop dword [eax]
mov eax, dword [esi + 0x28]
dec edi
test eax, eax
je 0x44d7d1
cmp byte [eax], 0
jne 0x44d871
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 0x44d86d
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 0x44d864
call sub.WSOCK32.dll_WSAGetLastError
test eax, eax
jne 0x44d88f
test edi, edi
jg 0x44d7c0
dec edi
test edi, edi
jg 0x44d8ad
mov ecx, esi
call fcn.0044d5c0
pop edi
mov eax, 6
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004fe8dc
mov esp, ebp
pop ebp
ret 0x10
mov ecx, esi
call fcn.0044d5c0
pop edi
mov eax, 5
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004fe8dc
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x608], 0
test eax, eax
jle 0x44d8e8
push eax
mov ecx, esi
call fcn.0044e290
test eax, eax
je 0x44d8e8
mov ecx, esi
call fcn.0044d5c0
pop edi
mov eax, 0xd
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004fe8dc
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
xor ecx, ebp
pop esi
call fcn.004fe8dc
mov esp, ebp
pop ebp
ret 0x10