Function at 0x100143f0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Initialize winsock library
Make an http request with a cookie
Receive data
Receive data on socket
Resolve dns
Send data
Send data on socket
Send http request
Send http request with host header
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1918
call fcn.10043110
mov eax, dword [0x1007e570]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov byte [ebp - 0x12c], 0
push 0xff
push 0
lea eax, [ebp - 0x12b]
push eax
call fcn.10043dc0
add esp, 0xc
mov byte [ebp - 0x22c], 0
push 0xff
push 0
lea eax, [ebp - 0x22b]
push eax
call fcn.10043dc0
add esp, 0xc
mov byte [ebp - 0x2ac], 0
push 0x7f
push 0
lea eax, [ebp - 0x2ab]
push eax
call fcn.10043dc0
add esp, 0xc
mov byte [ebp - 0x6ac], 0
push 0x3ff
push 0
lea eax, [ebp - 0x6ab]
push eax
call fcn.10043dc0
add esp, 0xc
mov byte [ebp - 0xaac], 0
push 0x3ff
push 0
lea eax, [ebp - 0xaab]
push eax
call fcn.10043dc0
add esp, 0xc
mov byte [ebp - 0xeac], 0
push 0x3ff
push 0
lea eax, [ebp - 0xeab]
push eax
call fcn.10043dc0
add esp, 0xc
mov dword [ebp - 0xec8], 0
mov dword [ebp - 0xed0], 0
mov dword [ebp - 0xed4], 0
mov dword [ebp - 0xed8], 0
mov byte [ebp - 0xf00], 4
mov byte [ebp - 0xeff], 1
xor eax, eax
mov word [ebp - 0xefe], ax
mov dword [ebp - 0xefc], 0
mov al, byte [0x1005f8e1]
mov byte [ebp - 0xef8], al
xor eax, eax
mov dword [ebp - 0xef7], eax
mov dword [ebp - 0xef3], eax
mov dword [ebp - 0xeef], eax
mov dword [ebp - 0xeeb], eax
mov dword [ebp - 0xee7], eax
mov dword [ebp - 0xee3], eax
mov dword [ebp - 0xedf], eax
mov word [ebp - 0xedb], ax
mov byte [ebp - 0xed9], al
mov byte [ebp - 0x14a0], 0
push 0x3ff
push 0
lea eax, [ebp - 0x149f]
push eax
call fcn.10043dc0
add esp, 0xc
cmp dword [ebp + 0x18], 0
jg 0x1001459f
mov dword [ebp - 8], 0x14
jmp 0x100145a5
mov eax, dword [ebp + 0x18]
mov dword [ebp - 8], eax
cmp dword [ebp + 0x28], 0
je 0x100145b5
mov dword [ebp - 0xed0], 1
cmp dword [ebp + 0x2c], 0
je 0x100145c5
mov dword [ebp - 0xed4], 1
cmp dword [ebp + 0x34], 0
je 0x100145d5
mov dword [ebp - 0xed8], 1
cmp dword [ebp + 0x38], 0
je 0x1001462a
lea eax, [ebp - 0xeac]
push eax
call fcn.10041740
add esp, 4
mov esi, eax
mov ecx, dword [ebp + 0x38]
push ecx
call fcn.10041740
add esp, 4
lea edx, [esi + eax + 3]
cmp edx, 0x400
jbe 0x1001460b
xor eax, eax
jmp 0x10014f08
mov eax, dword [ebp + 0x38]
push eax
lea ecx, [ebp - 0xeac]
push ecx
push str._s_s_r_n
lea edx, [ebp - 0xeac]
push edx
call fcn.10042902
add esp, 0x10
mov eax, 1
mov word [ebp - 0x10a0], ax
mov eax, 5
mov word [ebp - 0x109e], ax
mov eax, 0x101
mov word [ebp - 0xf0c], ax
lea eax, [ebp - 0x109c]
push eax
movzx ecx, word [ebp - 0xf0c]
push ecx
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x10014671
mov eax, 0x1005f8e1
jmp 0x10014f08
cmp dword [ebp + 0x1c], 0
je 0x100146a8
lea eax, [ebp - 0x28]
push eax
mov ecx, dword [ebp + 0x1c]
push ecx
mov edx, dword [ebp - 0xed4]
push edx
call fcn.100150f0
add esp, 0xc
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x100146a1
mov eax, 0x1005f8e1
jmp 0x10014f08
mov dword [ebp + 0x30], 1
push 0x10
push 0
lea eax, [ebp - 0xec0]
push eax
call fcn.10043dc0
add esp, 0xc
mov eax, 2
mov word [ebp - 0xec0], ax
push 0x50
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0xebe], ax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x14], eax
push 0x10063268
mov eax, dword [ebp + 8]
push eax
call fcn.10042ac0
add esp, 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x10014701
mov eax, dword [ebp - 0x20]
add eax, 2
mov dword [ebp - 0x20], eax
jmp 0x10014707
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], eax
push 0x2f
mov eax, dword [ebp - 0x20]
push eax
call fcn.10048140
add esp, 8
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x10014725
mov dword [ebp - 0x18], 0x10063264
push 0x100
mov eax, dword [ebp - 0x20]
push eax
lea ecx, [ebp - 0x22c]
push ecx
call fcn.10043e40
add esp, 0xc
mov byte [ebp - 0x12d], 0
push 0x2f
lea eax, [ebp - 0x22c]
push eax
call fcn.10048140
add esp, 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x10014764
mov eax, dword [ebp - 0x20]
mov byte [eax], 0
push 0x100
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.10043e40
add esp, 0xc
mov byte [ebp - 0x2d], 0
cmp dword [ebp + 0x10], 0
je 0x100147a8
push 0x100
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x22c]
push ecx
call fcn.10043e40
add esp, 0xc
mov byte [ebp - 0x12d], 0
push 0x3a
lea eax, [ebp - 0x22c]
push eax
call fcn.10048140
add esp, 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x100147eb
mov eax, dword [ebp - 0x20]
mov byte [eax], 0
mov ecx, dword [ebp - 0x20]
add ecx, 1
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
push eax
call fcn.100422aa
add esp, 4
push eax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0xebe], ax
movsx eax, byte [ebp - 0x22c]
push eax
call fcn.10047cc1
add esp, 4
test eax, eax
je 0x10014814
lea eax, [ebp - 0x22c]
push eax
call dword [sym.imp.WS2_32.dll_inet_addr]
mov dword [ebp - 0xebc], eax
jmp 0x1001484a
lea eax, [ebp - 0x22c]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov dword [ebp - 0xec4], eax
cmp dword [ebp - 0xec4], 0
jne 0x10014837
xor eax, eax
jmp 0x10014f08
mov eax, dword [ebp - 0xec4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
mov eax, dword [edx]
mov dword [ebp - 0xebc], eax
cmp dword [ebp + 0xc], 0
je 0x1001496e
mov dword [ebp - 0x18b8], 0
mov ax, word [ebp - 0xebe]
mov word [ebp - 0xefe], ax
mov eax, dword [ebp - 0xebc]
mov dword [ebp - 0xefc], eax
push str.USER
call fcn.10041a3c
add esp, 4
mov dword [ebp - 0x18b8], eax
cmp dword [ebp - 0x18b8], 0
jne 0x1001489e
mov dword [ebp - 0x18b8], 0x10063258
push 0x20
mov eax, dword [ebp - 0x18b8]
push eax
lea ecx, [ebp - 0xef8]
push ecx
call fcn.10043e40
add esp, 0xc
mov byte [ebp - 0xed9], 0
mov byte [ebp - 0xed9], 0
push 0x438
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0xebe], ax
push 0x3a
mov eax, dword [ebp + 0xc]
push eax
call fcn.10048140
add esp, 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x10014916
mov eax, dword [ebp - 0x20]
mov byte [eax], 0
mov ecx, dword [ebp - 0x20]
add ecx, 1
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
push eax
call fcn.100422aa
add esp, 4
push eax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0xebe], ax
mov eax, dword [ebp + 0xc]
movsx ecx, byte [eax]
push ecx
call fcn.10047cc1
add esp, 4
test eax, eax
je 0x1001493b
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.WS2_32.dll_inet_addr]
mov dword [ebp - 0xebc], eax
jmp 0x1001496e
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov dword [ebp - 0xec4], eax
cmp dword [ebp - 0xec4], 0
jne 0x1001495b
xor eax, eax
jmp 0x10014f08
mov eax, dword [ebp - 0xec4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
mov eax, dword [edx]
mov dword [ebp - 0xebc], eax
push 6
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xffffffff
je 0x10014ef5
push 4
lea eax, [ebp - 0x10a0]
push eax
push 0x80
push 0xffff
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [sym.imp.WS2_32.dll_setsockopt]
cmp dword [ebp + 0xc], 0
jne 0x10014a1c
cmp dword [ebp + 0x14], 0
je 0x10014a1c
mov dword [ebp - 0xecc], 4
push 0
mov eax, dword [ebp - 0x1c]
push eax
call fcn.10015370
add esp, 8
push 0x10
lea eax, [ebp - 0xec0]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [sym.imp.WS2_32.dll_connect]
mov dword [ebp - 0xeb0], eax
push 1
mov eax, dword [ebp - 0x1c]
push eax
call fcn.10015370
add esp, 8
push 2
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.100153b0
add esp, 0xc
mov dword [ebp - 0xeb0], eax
cmp dword [ebp - 0xeb0], 0
jle 0x10014a1a
mov dword [ebp - 0xeb0], 0xffffffff
jmp 0x10014a35
push 0x10
lea eax, [ebp - 0xec0]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [sym.imp.WS2_32.dll_connect]
mov dword [ebp - 0xeb0], eax
cmp dword [ebp - 0xeb0], 0
jne 0x10014eeb
cmp dword [ebp + 0xc], 0
je 0x10014af3
push 0
lea eax, [ebp - 0xef8]
push eax
call fcn.10041740
add esp, 4
add eax, 9
push eax
lea ecx, [ebp - 0xf00]
push ecx
mov edx, dword [ebp - 0x1c]
push edx
call dword [sym.imp.WS2_32.dll_send]
cmp dword [ebp + 0x14], 0
je 0x10014a90
push 1
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.100153b0
add esp, 0xc
test eax, eax
jle 0x10014a90
jmp 0x10014a10
push 0
push 8
lea eax, [ebp - 0xf08]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 8
jne 0x10014abc
movzx eax, byte [ebp - 0xf07]
cmp eax, 0x5a
jne 0x10014abc
jmp 0x10014af3
mov eax, 1
mov word [ebp - 0x10a0], ax
xor eax, eax
mov word [ebp - 0x109e], ax
push 4
lea eax, [ebp - 0x10a0]
push eax
push 0x80
push 0xffff
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [sym.imp.WS2_32.dll_setsockopt]
jmp 0x10014c9f
cmp dword [ebp + 0x1c], 0
je 0x10014b11
mov eax, dword [ebp - 0x28]
push eax
push str.Content_type:_application_x_www_form_urlencoded_r_nContent_length:__d_r_n
lea ecx, [ebp - 0x2ac]
push ecx
call fcn.10042902
add esp, 0xc
cmp dword [ebp + 0x20], 0
je 0x10014b2f
mov eax, dword [ebp + 0x20]
push eax
push str.Cookie:__s_r_n
lea ecx, [ebp - 0x6ac]
push ecx
call fcn.10042902
add esp, 0xc
cmp dword [ebp + 0x24], 0
je 0x10014b4d
mov eax, dword [ebp + 0x24]
push eax
push str.Referer:__s_r_n
lea ecx, [ebp - 0xaac]
push ecx
call fcn.10042902
add esp, 0xc
cmp dword [ebp + 0x1c], 0
jne 0x10014b5f
mov dword [ebp - 0x1900], 0x1005f8e1
jmp 0x10014b6b
lea eax, [ebp - 0x2ac]
mov dword [ebp - 0x1900], eax
cmp dword [ebp + 0x20], 0
jne 0x10014b7d
mov dword [ebp - 0x1904], 0x1005f8e1
jmp 0x10014b89
lea ecx, [ebp - 0x6ac]
mov dword [ebp - 0x1904], ecx
cmp dword [ebp + 0x24], 0
jne 0x10014b9b
mov dword [ebp - 0x1908], 0x1005f8e1
jmp 0x10014ba7
lea edx, [ebp - 0xaac]
mov dword [ebp - 0x1908], edx
cmp dword [ebp + 0x10], 0
jne 0x10014bbf
cmp dword [ebp + 0xc], 0
jne 0x10014bbf
mov dword [ebp - 0x190c], 0x1005f8e1
jmp 0x10014bc9
mov dword [ebp - 0x190c], str.Proxy_Connection:Keep_Alive_r_n
cmp dword [ebp + 0x10], 0
jne 0x10014bf7
cmp dword [ebp + 0x1c], 0
jne 0x10014be0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1910], eax
jmp 0x10014be9
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x1910], ecx
mov edx, dword [ebp - 0x1910]
mov dword [ebp - 0x1914], edx
jmp 0x10014c00
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1914], eax
cmp dword [ebp + 0x1c], 0
jne 0x10014c12
mov dword [ebp - 0x1918], 0x1005f91c
jmp 0x10014c1c
mov dword [ebp - 0x1918], str.POST
mov ecx, dword [ebp - 0x1900]
push ecx
lea edx, [ebp - 0xeac]
push edx
mov eax, dword [ebp - 0x1904]
push eax
mov ecx, dword [ebp - 0x1908]
push ecx
lea edx, [ebp - 0x12c]
push edx
mov eax, dword [ebp - 0x190c]
push eax
mov ecx, dword [ebp - 0x1914]
push ecx
mov edx, dword [ebp - 0x1918]
push edx
push str._s__s_HTTP_1.0_r_n_sUser_Agent:_Mozilla_2.0__Win95__I__r_nPragma:_no_cache_r_nHost:__s_r_nAccept:___r_n_s_s_s_s_r_n
lea eax, [ebp - 0x14a0]
push eax
call fcn.10042902
add esp, 0x28
lea eax, [ebp - 0x14a0]
push eax
call fcn.10041740
add esp, 4
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0xed8], 0
jne 0x10014cbf
push 0
mov eax, dword [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x14a0]
push ecx
mov edx, dword [ebp - 0x1c]
push edx
call dword [sym.imp.WS2_32.dll_send]
cmp eax, dword [ebp - 0x2c]
je 0x10014cbf
push 2
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.WS2_32.dll_shutdown]
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov eax, 0x1005f8e1
jmp 0x10014f08
cmp dword [ebp + 0x1c], 0
je 0x10014cf8
push 0
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x24]
push ecx
mov edx, dword [ebp - 0x1c]
push edx
call dword [sym.imp.WS2_32.dll_send]
cmp eax, dword [ebp - 0x28]
je 0x10014cec
mov eax, dword [ebp - 0x24]
push eax
call fcn.10041c7d
add esp, 4
jmp 0x10014c9f
mov eax, dword [ebp - 0x24]
push eax
call fcn.10041c7d
add esp, 4
push 0x414
push 0
lea eax, [ebp - 0x18b4]
push eax
call fcn.10043dc0
add esp, 0xc
mov dword [ebp - 0x2c], 0
cmp dword [ebp - 0xed8], 0
jne 0x10014dd0
cmp dword [ebp - 0x2c], 0x400
jge 0x10014db8
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
push 1
mov edx, dword [ebp - 0x2c]
lea eax, [ebp + edx - 0x14a0]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.10014fe0
add esp, 0x14
test eax, eax
jle 0x10014db8
mov eax, dword [ebp - 0x2c]
movsx ecx, byte [ebp + eax - 0x14a0]
cmp ecx, 0xd
jne 0x10014d66
jmp 0x10014d22
mov eax, dword [ebp - 0x2c]
movsx ecx, byte [ebp + eax - 0x14a0]
cmp ecx, 0xa
jne 0x10014daa
mov eax, dword [ebp - 0x2c]
mov byte [ebp + eax - 0x14a0], 0
mov eax, dword [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x14a0]
push ecx
lea edx, [ebp - 0x18b4]
push edx
call fcn.10014f20
add esp, 0xc
test eax, eax
je 0x10014da1
jmp 0x10014db8
mov dword [ebp - 0x2c], 0
jmp 0x10014db3
mov eax, dword [ebp - 0x2c]
add eax, 1
mov dword [ebp - 0x2c], eax
jmp 0x10014d22
cmp dword [ebp - 0xc], 0
jne 0x10014dce
cmp dword [ebp - 0x18b4], 0
jne 0x10014dce
mov dword [ebp - 0x10], 1
jmp 0x10014dda
mov dword [ebp - 0x18b4], 1
cmp dword [ebp - 0xed0], 0
jne 0x10014dfa
cmp dword [ebp - 0x18b4], 0
je 0x10014ed5
cmp dword [ebp - 0xc], 0
jne 0x10014ed5
mov dword [ebp - 0x18bc], 0
push 0x8000
call fcn.100420c6
add eax, 0x20
push eax
call fcn.1004c6e3
add esp, 4
push eax
call fcn.100479f5
add esp, 8
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
push 0x400
lea edx, [ebp - 0x14a0]
push edx
mov eax, dword [ebp - 0x1c]
push eax
call fcn.10014fe0
add esp, 0x14
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jle 0x10014ed5
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x18bc]
lea edx, [ecx + eax + 1]
push edx
mov eax, dword [ebp - 0xec8]
push eax
call fcn.10047699
add esp, 8
mov dword [ebp - 0xec8], eax
cmp dword [ebp - 0xec8], 0
jne 0x10014e83
xor eax, eax
jmp 0x10014f08
mov eax, dword [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x14a0]
push ecx
mov edx, dword [ebp - 0xec8]
add edx, dword [ebp - 0x18bc]
push edx
call fcn.10043a50
add esp, 0xc
mov eax, dword [ebp - 0x18bc]
add eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0xec8]
mov byte [ecx + eax], 0
mov eax, dword [ebp - 0x18bc]
add eax, dword [ebp - 0x2c]
mov dword [ebp - 0x18bc], eax
mov eax, dword [ebp + 0x3c]
mov ecx, dword [ebp - 0x18bc]
mov dword [eax], ecx
jmp 0x10014e23
cmp dword [ebp - 0xed0], 0
je 0x10014eeb
push 0x10063158
call fcn.10042798
add esp, 4
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
cmp dword [ebp - 0xc], 0
je 0x10014f02
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 0xec8]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10042b46
mov esp, ebp
pop ebp
ret