Function at 0x41eba0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Receive data
Receive data on socket
Reference http user-agent string
Resolve dns
Send data
Send data on socket
Send http request
Send http request with host header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x93c
mov eax, dword [0x44e310]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x938], edi
mov dword [ebp - 0x93c], eax
test edi, edi
jne 0x41ebd3
mov dword [eax], edi
jmp 0x41effc
xor ebx, ebx
jmp 0x41ebe0
push 0x7f
lea eax, [ebp - 0x117]
mov byte [ebp - 0x118], bl
push 0
push eax
call fcn.0042e710
push 0x449a10
push edi
mov esi, 0x50
call fcn.0042cc30
mov edi, eax
add esp, 0x14
test edi, edi
je 0x41eff4
mov ecx, dword [ebp - 0x938]
sub eax, ecx
push eax
push ecx
lea eax, [ebp - 0x118]
push 0x80
push eax
call fcn.0042cfaf
lea eax, [ebp - 0x118]
push str.http
push eax
call fcn.0042beb3
add esp, 0x18
test eax, eax
jne 0x41eff4
add edi, 3
push 0x2f
push edi
call fcn.0042b8a0
push 0x80
mov dword [ebp - 0x934], eax
lea eax, [ebp - 0x118]
push 0
push eax
call fcn.0042e710
mov eax, dword [ebp - 0x934]
sub eax, edi
push eax
push edi
lea eax, [ebp - 0x118]
push 0x80
push eax
call fcn.0042cfaf
lea eax, [ebp - 0x118]
push 0x3a
push eax
call fcn.0042b8a0
mov ecx, eax
mov byte [ebp - 0x2c], bl
add esp, 0x2c
mov word [ebp - 0x1b], bx
mov byte [ebp - 0x19], bl
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x2b], xmm0
test ecx, ecx
je 0x41ece9
lea edx, [ebp - 0x118]
sub eax, edx
cmp eax, 0x80
jae 0x41f011
mov byte [ebp + eax - 0x118], bl
lea eax, [ecx + 1]
push eax
lea eax, [ebp - 0x2c]
push 0x14
push eax
call fcn.0042c854
lea eax, [ebp - 0x2c]
push eax
call fcn.0042c6dd
add esp, 0x10
mov esi, eax
mov byte [ebp - 0x18], bl
xorps xmm0, xmm0
mov word [ebp - 7], bx
mov byte [ebp - 5], bl
movdqu xmmword [ebp - 0x17], xmm0
cmp esi, 0x50
je 0x41ed1c
lea eax, [esi - 1]
cmp eax, 0xfffe
ja 0x41ed1c
push esi
lea eax, [ebp - 0x18]
push 0x449a1c
push eax
call fcn.0041f110
add esp, 0xc
push 6
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov edi, eax
mov eax, 2
push esi
mov dword [ebp - 0x930], edi
mov word [ebp - 0x92c], ax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x92a], ax
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov ecx, eax
test ecx, ecx
jne 0x41ed6c
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.WS2_32.dll_inet_addr]
jmp 0x41ed8b
movsx eax, word [ecx + 0xa]
push eax
mov eax, dword [ecx + 0xc]
push dword [eax]
lea eax, [ebp - 0x91c]
push eax
call fcn.0042d820
mov eax, dword [ebp - 0x91c]
add esp, 0xc
mov dword [ebp - 0x928], eax
lea eax, [ebp - 0x92c]
push 0x10
push eax
push edi
call dword [sym.imp.WS2_32.dll_connect]
push 0x3ff
lea eax, [ebp - 0x917]
mov byte [ebp - 0x918], bl
push 0
push eax
call fcn.0042e710
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x118]
push eax
push dword [ebp - 0x934]
lea eax, [ebp - 0x918]
push str.GET__s_HTTP_1.1_r_nHost:__s_s_r_nAccept:__r_nUser_Agent:_Mozilla_5.0__compatible__MSIE_9.0__Windows_NT_6.1__WOW64__Trident_5.0__r_nConnection:close_r_nCache_Control:_no_cache_r_n_r_n
push eax
call fcn.0041f130
lea ecx, [ebp - 0x918]
add esp, 0x20
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41ede8
push 0
sub ecx, edx
lea eax, [ebp - 0x918]
push ecx
push eax
push edi
call dword [sym.imp.WS2_32.dll_send]
push 0x3ff
lea eax, [ebp - 0x517]
mov byte [ebp - 0x518], bl
push 0
push eax
call fcn.0042e710
add esp, 0xc
lea eax, [ebp - 0x518]
push 0
push 0x400
push eax
push edi
call dword [sym.imp.WS2_32.dll_recv]
push ecx
push dword [ebp - 0x938]
mov dword [ebp - 0x934], eax
lea eax, [ebp - 0x518]
push eax
call fcn.0041e9a0
cmp eax, 0xffffffff
je 0x41efd8
cmp eax, 0xfffffffe
jne 0x41ee65
mov edi, dword [ebp - 0x938]
jmp 0x41ebe0
push 0x63
lea eax, [ebp - 0x97]
mov byte [ebp - 0x98], bl
push 0
push eax
call fcn.0042e710
lea eax, [ebp - 0x518]
push str.Content_Length:
push eax
call fcn.0042cc30
add esp, 0x14
test eax, eax
je 0x41ef28
mov cl, byte [eax + 0xf]
add eax, 0xf
test cl, cl
je 0x41ef3e
cmp cl, 0xd
je 0x41eebf
lea edx, [ebp - 0x98]
mov byte [edx], cl
lea eax, [eax + 1]
mov cl, byte [eax]
lea edx, [edx + 1]
cmp cl, 0xd
jne 0x41eeb0
cmp byte [ebp - 0x98], 0x20
lea ecx, [ebp - 0x98]
jne 0x41eed6
mov edi, edi
inc ecx
cmp byte [ecx], 0x20
je 0x41eed0
lea edx, [ebp - 0x98]
sub edx, ecx
mov edi, edi
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx + ecx - 1], al
test al, al
jne 0x41eee0
lea ecx, [ebp - 0x98]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41eef6
sub ecx, edx
lea eax, [ecx - 1]
cmp byte [ebp + eax - 0x98], 0x20
jne 0x41ef1f
lea esp, [esp]
test eax, eax
js 0x41ef1f
dec eax
cmp byte [ebp + eax - 0x98], 0x20
je 0x41ef10
mov byte [ebp + eax - 0x97], bl
jmp 0x41ef3e
push str.102400
lea eax, [ebp - 0x98]
push 0x64
push eax
call fcn.0042c854
add esp, 0xc
lea eax, [ebp - 0x98]
push eax
call fcn.0042c6dd
mov edi, eax
add esp, 4
cmp edi, 1
jb 0x41efd2
lea eax, [edi + 1]
push eax
call fcn.00429b46
mov esi, eax
add esp, 4
test esi, esi
je 0x41efd2
mov eax, dword [ebp - 0x93c]
push str._r_n_r_n
mov dword [eax], esi
lea eax, [ebp - 0x518]
push eax
call fcn.0042cc30
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x41efd2
mov ebx, dword [ebp - 0x934]
lea eax, [ebp - 0x518]
add ecx, 4
sub eax, ecx
add ebx, eax
push ebx
push ecx
push esi
mov dword [ebp - 0x934], ebx
call fcn.0042d820
add esp, 0xc
add esi, ebx
cmp ebx, edi
jae 0x41efd2
push 0
push 0x400
push esi
push dword [ebp - 0x930]
call dword [sym.imp.WS2_32.dll_recv]
test eax, eax
jle 0x41efd2
add ebx, eax
add esi, eax
cmp ebx, edi
jb 0x41efb2
mov edi, dword [ebp - 0x930]
push edi
call dword [sym.imp.WS2_32.dll_closesocket]
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00429eaf
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp - 0x93c]
mov dword [eax], ebx
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00429eaf
mov esp, ebp
pop ebp
ret 8
call fcn.0042bb03
int3