Function at 0x411f40
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Initialize winsock library
Receive data
Receive data on socket
Send data
Send data on socket
Send http request
Send http request with host header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x413848
mov eax, dword fs:[0]
push eax
mov eax, 0xd318
call fcn.0040afe0
mov eax, dword [0x419078]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xd31c], ecx
mov dword [ebp - 4], 0
lea eax, [ebp - 0x24]
push eax
push 0x400
lea ecx, [ebp - 0xad4]
push ecx
push 0x100
lea edx, [ebp - 0x6bc]
push edx
push 0x14
lea eax, [ebp - 0x6d0]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0xd304], esp
lea edx, [ebp + 8]
push edx
call fcn.004012d0
mov dword [ebp - 0xd320], eax
mov ecx, dword [ebp - 0xd31c]
call fcn.00411dd0
push str.HTTP
lea eax, [ebp - 0x6d0]
push eax
call fcn.00406330
add esp, 8
test eax, eax
je 0x412002
mov dword [ebp - 0xd308], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.00401320
mov eax, dword [ebp - 0xd308]
jmp 0x4125e3
lea ecx, [ebp - 0x1b4]
push ecx
push 0x101
call dword [sym.imp.WS2_32.dll_WSAStartup]
mov dword [ebp - 0xae0], eax
cmp dword [ebp - 0xae0], 0
je 0x412047
mov dword [ebp - 0xd30c], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.00401320
mov eax, dword [ebp - 0xd30c]
jmp 0x4125e3
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x1b8], eax
cmp dword [ebp - 0x1b8], 0xffffffff
jne 0x412086
mov dword [ebp - 0xd310], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.00401320
mov eax, dword [ebp - 0xd310]
jmp 0x4125e3
mov word [ebp - 0x20], 2
mov dx, word [ebp - 0x24]
push edx
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x1e], ax
lea eax, [ebp - 0x6bc]
push eax
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bf0
mov dword [ebp - 0x1c], eax
push 0x10
lea ecx, [ebp - 0x20]
push ecx
mov edx, dword [ebp - 0x1b8]
push edx
call dword [sym.imp.WS2_32.dll_connect]
test eax, eax
je 0x4120eb
mov dword [ebp - 0xd314], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.00401320
mov eax, dword [ebp - 0xd314]
jmp 0x4125e3
movsx eax, byte [ebp - 0xad4]
test eax, eax
jne 0x41210d
push 0x400
push 0x416054
lea ecx, [ebp - 0xad4]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
cmp dword [ebp + 0x28], 0
jne 0x412140
push 0x416058
mov edx, dword [ebp - 0x1b8]
push edx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push str.GET
lea eax, [ebp - 0x5bc]
push eax
call fcn.004051b0
add esp, 8
jmp 0x41216b
push 0x416068
mov ecx, dword [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push str.POST
lea edx, [ebp - 0x5bc]
push edx
call fcn.004051b0
add esp, 8
lea eax, [ebp - 0xad4]
push eax
mov ecx, dword [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
lea edx, [ebp - 0xad4]
push edx
lea eax, [ebp - 0x5bc]
push eax
call fcn.004051c0
add esp, 8
push 0x416078
mov ecx, dword [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push str._HTTP_1.0_r_n
lea edx, [ebp - 0x5bc]
push edx
call fcn.004051c0
add esp, 8
push 0x416090
mov eax, dword [ebp - 0x1b8]
push eax
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push str.Accept:_image_gif__image_x_xbitmap__image_jpeg__image_pjpeg__application_vnd.ms_excel__application_msword__application_vnd.ms_powerpoint____r_n
lea ecx, [ebp - 0x5bc]
push ecx
call fcn.004051c0
add esp, 8
push 0x4161b0
mov edx, dword [ebp - 0x1b8]
push edx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push str.Accept_Language:_en_us_r_n
lea eax, [ebp - 0x5bc]
push eax
call fcn.004051c0
add esp, 8
push 0x4161e8
mov ecx, dword [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push str.Accept_Encoding:_gzip__default_r_n
lea edx, [ebp - 0x5bc]
push edx
call fcn.004051c0
add esp, 8
push 0x416230
mov eax, dword [ebp - 0x1b8]
push eax
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push str.User_Agent:_Neeao_4.0_r_n
lea ecx, [ebp - 0x5bc]
push ecx
call fcn.004051c0
add esp, 8
cmp dword [ebp + 0x2c], 0
je 0x4122be
mov edx, dword [ebp + 0x2c]
push edx
push str.Content_Length:__ld_r_n
lea eax, [ebp - 0xd2f4]
push eax
call fcn.004063b8
add esp, 0xc
lea ecx, [ebp - 0xd2f4]
push ecx
mov edx, dword [ebp - 0x1b8]
push edx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
lea eax, [ebp - 0xd2f4]
push eax
lea ecx, [ebp - 0x5bc]
push ecx
call fcn.004051c0
add esp, 8
push 0x416278
mov edx, dword [ebp - 0x1b8]
push edx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push str.Host:
lea eax, [ebp - 0x5bc]
push eax
call fcn.004051c0
add esp, 8
lea ecx, [ebp - 0x6bc]
push ecx
mov edx, dword [ebp - 0x1b8]
push edx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
lea eax, [ebp - 0x6bc]
push eax
lea ecx, [ebp - 0x5bc]
push ecx
call fcn.004051c0
add esp, 8
push 0x416288
mov edx, dword [ebp - 0x1b8]
push edx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push 0x41628c
lea eax, [ebp - 0x5bc]
push eax
call fcn.004051c0
add esp, 8
cmp dword [ebp + 0x24], 0
je 0x41237c
mov ecx, dword [ebp + 0x24]
movsx edx, byte [ecx]
test edx, edx
je 0x41237c
mov eax, dword [ebp + 0x24]
push eax
mov ecx, dword [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
mov edx, dword [ebp + 0x24]
push edx
lea eax, [ebp - 0x5bc]
push eax
call fcn.004051c0
add esp, 8
push 0x416290
mov ecx, dword [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411bc0
push 0x416294
lea edx, [ebp - 0x5bc]
push edx
call fcn.004051c0
add esp, 8
cmp dword [ebp + 0x28], 0
je 0x4123e6
cmp dword [ebp + 0x2c], 0
je 0x4123e6
push 0
mov eax, dword [ebp + 0x2c]
push eax
mov ecx, dword [ebp + 0x28]
push ecx
mov edx, dword [ebp - 0x1b8]
push edx
call dword [sym.imp.WS2_32.dll_send]
mov eax, dword [ebp + 0x28]
add eax, dword [ebp + 0x2c]
mov byte [eax], 0
mov ecx, dword [ebp + 0x28]
push ecx
lea edx, [ebp - 0x5bc]
push edx
call fcn.004051c0
add esp, 8
lea eax, [ebp - 0x5bc]
push eax
call fcn.00404ed0
add esp, 4
shl eax, 2
push eax
call fcn.00405d2a
add esp, 4
mov ecx, dword [ebp + 0x30]
mov dword [ecx], eax
lea edx, [ebp - 0x5bc]
push edx
mov eax, dword [ebp + 0x30]
mov ecx, dword [eax]
push ecx
call fcn.004051b0
add esp, 8
lea edx, [ebp - 0xaec]
push edx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411c90
mov dword [ebp - 0xaf0], 0
mov dword [ebp - 0xad8], 0
cmp dword [ebp - 0xad8], 0
jne 0x4124ed
push 0
push 1
lea eax, [ebp - 0xd2f4]
push eax
mov ecx, dword [ebp - 0x1b8]
push ecx
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0xadc], eax
cmp dword [ebp - 0xadc], 0
jge 0x41247f
mov dword [ebp - 0xad8], 1
mov dl, byte [ebp - 0xd2f4]
mov byte [ebp - 0xd324], dl
cmp byte [ebp - 0xd324], 0xa
je 0x4124a1
cmp byte [ebp - 0xd324], 0xd
je 0x41249f
jmp 0x4124c0
jmp 0x4124cf
cmp dword [ebp - 0xaf0], 0
jne 0x4124b4
mov dword [ebp - 0xad8], 1
mov dword [ebp - 0xaf0], 0
jmp 0x4124cf
mov eax, dword [ebp - 0xaf0]
add eax, 1
mov dword [ebp - 0xaf0], eax
mov cl, byte [ebp - 0xd2f4]
push ecx
lea edx, [ebp - 0xaec]
push edx
mov ecx, dword [ebp - 0xd31c]
call fcn.00411d80
jmp 0x412441
mov eax, dword [ebp + 0x30]
mov ecx, dword [ebp - 0xaec]
mov dword [eax + 4], ecx
mov edx, dword [ebp - 0xae8]
mov byte [edx], 0
lea eax, [ebp - 0xd300]
push eax
mov ecx, dword [ebp - 0xd31c]
call fcn.00411c90
push 0
push 0xc7ff
lea ecx, [ebp - 0xd2f4]
push ecx
mov edx, dword [ebp - 0x1b8]
push edx
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0xadc], eax
cmp dword [ebp - 0xadc], 0
jge 0x412540
jmp 0x412577
mov eax, dword [ebp - 0xadc]
mov byte [ebp + eax - 0xd2f4], 0
mov ecx, dword [ebp - 0xadc]
push ecx
lea edx, [ebp - 0xd2f4]
push edx
lea eax, [ebp - 0xd300]
push eax
mov ecx, dword [ebp - 0xd31c]
call fcn.00411d20
cmp dword [ebp - 0xadc], 0
jg 0x412514
mov ecx, dword [ebp - 0xd2fc]
mov byte [ecx], 0
mov edx, dword [ebp + 0x30]
mov eax, dword [ebp - 0xd300]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0xd2fc]
sub ecx, dword [ebp - 0xd300]
mov edx, dword [ebp + 0x30]
mov dword [edx + 0xc], ecx
mov eax, dword [ebp - 0xd300]
push eax
mov ecx, dword [ebp - 0xd31c]
add ecx, 4
push ecx
call fcn.004051b0
add esp, 8
mov edx, dword [ebp - 0x1b8]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [ebp - 0xd318], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.00401320
mov eax, dword [ebp - 0xd318]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004049f0
mov esp, ebp
pop ebp
ret 0x2c