Function at 0x46b110
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Resolve dns
Send data
Send data on socket
Send http request
Send http request with host header

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 2
add esp, 0xfffff004
push eax
dec eax
jne 0x46b119
mov eax, dword [ebp - 4]
add esp, 0xfffff7e4
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0x2820], eax
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x46b409
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x46b3de
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x415558]
call fcn.00403360
mov ebx, eax
mov ecx, 0x8c
mov edx, 0x46b420
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov dword [0x471e30], 0x5ba3
push 0
push 0
mov eax, dword [0x471c24]
call fcn.00418e14
mov eax, dword [0x471c24]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov edx, dword [0x471c24]
mov eax, ebx
call fcn.00419090
mov ecx, 0x90
mov edx, 0x46b4b8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
push 0
push 0
mov eax, dword [0x471c20]
call fcn.00418e14
mov eax, dword [0x471c20]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov edx, dword [0x471c20]
mov eax, ebx
call fcn.00419090
call sub.kernel32.dll_GetTickCount_1
add eax, 0x52cd
mov dword [0x471e28], eax
mov ecx, 0x8d
mov edx, 0x46b554
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov dword [0x471c3c], 0x3278f002
push 0
push 0
mov eax, dword [0x471c28]
call fcn.00418e14
mov dword [0x471e40], 0xdfab686
mov eax, dword [0x471c28]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov edx, dword [0x471c28]
mov eax, ebx
call fcn.00419090
mov ecx, 0x4a
mov edx, 0x46b5ec
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov eax, dword [0x471c60]
call fcn.0040441c
push eax
mov eax, 0x471c60
call fcn.00404674
mov edx, eax
mov eax, ebx
pop ecx
mov esi, dword [eax]
call dword [esi + 0x10]
mov ecx, 0x21
mov edx, 0x46b640
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
push 0x46b66c
push dword [0x4706a4]
push 0x46b67c
push 0x46b690
push 0x46b6b4
push 0x46b704
mov eax, ebx
mov edx, dword [eax]
call dword [edx]
push edx
push eax
lea eax, [ebp - 0x2820]
call fcn.004083e0
push dword [ebp - 0x2820]
push 0x46b720
push 0x46b72c
push dword [0x4706a0]
push 0x46b720
push 0x46b73c
push 0x46b760
push dword [0x470694]
push 0x46b778
lea eax, [ebp - 8]
mov edx, 0xf
call fcn.004044dc
push 0
push 1
push 2
call sub.wsock32.dll_socket
mov dword [ebp - 4], eax
mov dword [0x471e28], 0x120d9
mov word [ebp - 0x18], 2
mov eax, dword [0x4706a0]
call fcn.0040461c
push eax
call sub.wsock32.dll_gethostbyname
mov esi, eax
test esi, esi
je 0x46b32f
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
push dword [eax]
call sub.wsock32.dll_inet_ntoa
push eax
call sub.wsock32.dll_inet_addr
mov dword [ebp - 0x14], eax
mov dword [0x471c3c], 0x2e3991
push 0x50
call sub.wsock32.dll_htons
mov word [ebp - 0x16], ax
push 0x10
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp - 4]
push eax
call sub.wsock32.dll_connect
push 0
mov eax, dword [ebp - 8]
call fcn.0040441c
push eax
lea eax, [ebp - 8]
call fcn.00404674
push eax
mov eax, dword [ebp - 4]
push eax
call sub.wsock32.dll_send
call sub.kernel32.dll_GetTickCount_1
add eax, 0x1073f
mov dword [0x471e28], eax
push 0
push 0
mov eax, ebx
call fcn.00418e14
lea edx, [ebp - 0x2819]
mov ecx, 0x2801
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov esi, eax
push 0
push esi
lea eax, [ebp - 0x2819]
push eax
mov eax, dword [ebp - 4]
push eax
call sub.wsock32.dll_send
test esi, esi
jne 0x46b38a
mov eax, ebx
call fcn.00403390
mov eax, dword [ebp - 4]
push eax
call sub.wsock32.dll_closesocket
mov dword [0x471e30], 0x8469
call fcn.00469580
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46b3e8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46b410
lea eax, [ebp - 0x2820]
call fcn.0040415c
lea eax, [ebp - 8]
call fcn.0040415c
ret