Function at 0x402000
Capabilities:
Initialize winhttp library
Prepare http request
Receive http response

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x42aee7
mov eax, dword fs:[0]
push eax
sub esp, 0xb0
mov eax, dword [0x43c00c]
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 dword [ebp - 0x10], esp
mov dword [ebp - 4], 1
mov byte [ebp - 0x99], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xb8], 0
mov byte [ebp - 4], 2
push 0
push 0
push 0
push 0
push str.StatisticsEx_2.0
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov edi, eax
mov dword [ebp - 0xac], edi
test edi, edi
je 0x40232f
push 0
push 0x50
push dword [ebp + 8]
push edi
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov ebx, eax
mov dword [ebp - 0xb0], ebx
test ebx, ebx
je 0x402353
push 0
push 0
push 0
push 0
push dword [ebp + 0xc]
push 0x43523c
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov esi, eax
mov dword [ebp - 0xb4], esi
test esi, esi
je 0x402377
push 0
push 0
push 0
push 0
push 0
push 0
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
je 0x40239b
push 0
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
je 0x4023bf
lea eax, [ebp - 0xa4]
push eax
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
test eax, eax
je 0x4023e3
cmp dword [ebp - 0xa4], 0
je 0x402407
lea ecx, [ebp - 0xa0]
call fcn.00403b10
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0xa4]
add eax, 1
mov dword [ebp - 0xa8], eax
js 0x40241d
mov eax, dword [ebp - 0xa0]
mov edx, 1
sub edx, dword [eax - 4]
mov ecx, dword [eax - 8]
sub ecx, dword [ebp - 0xa8]
or ecx, edx
jge 0x402182
push dword [ebp - 0xa8]
lea ecx, [ebp - 0xa0]
call fcn.00404430
mov eax, dword [ebp - 0xa0]
lea ecx, [ebp - 0xb8]
push ecx
push dword [ebp - 0xa4]
push eax
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x402436
mov eax, dword [ebp - 0xa0]
cmp dword [eax - 0xc], 0
jl 0x4021e3
push str._page__nok_n__page_
push eax
call fcn.00413f84
add esp, 8
test eax, eax
je 0x4021e3
sub eax, dword [ebp - 0xa0]
cmp eax, 0xffffffff
je 0x4021e3
mov byte [ebp - 0x99], 1
push str.TryWinHTTP_had_success
push 0x5e
push str.TryWinHTTP
call fcn.00408e10
add esp, 0xc
mov byte [ebp - 4], 4
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0xa0]
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x402209
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov dword [ebp - 4], 1
jmp 0x4022aa
test esi, esi
je 0x4022b9
push esi
mov esi, dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
call esi
jmp 0x4022bf
mov esi, dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
test ebx, ebx
je 0x4022c6
push ebx
call esi
test edi, edi
je 0x4022cd
push edi
call esi
mov byte [ebp - 4], 0
mov edx, dword [ebp + 8]
add edx, 0xfffffff0
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4022ee
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
lock xadd dword [eax + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x40230d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov al, byte [ebp - 0x99]
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.0040c5eb
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x402341
movzx eax, ax
or eax, 0x80070000
push eax
push 0x40
mov edx, str.TryWinHTTP
mov ecx, str.c:_buildagentwork73b466a3166516aprojects_stat_module_stat_sender_stat_sender.cpp
call fcn.00405890
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x402365
movzx eax, ax
or eax, 0x80070000
push eax
push 0x44
mov edx, str.TryWinHTTP
mov ecx, str.c:_buildagentwork73b466a3166516aprojects_stat_module_stat_sender_stat_sender.cpp
call fcn.00405890
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x402389
movzx eax, ax
or eax, 0x80070000
push eax
push 0x48
mov edx, str.TryWinHTTP
mov ecx, str.c:_buildagentwork73b466a3166516aprojects_stat_module_stat_sender_stat_sender.cpp
call fcn.00405890
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x4023ad
movzx eax, ax
or eax, 0x80070000
push eax
push 0x4b
mov edx, str.TryWinHTTP
mov ecx, str.c:_buildagentwork73b466a3166516aprojects_stat_module_stat_sender_stat_sender.cpp
call fcn.00405890
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x4023d1
movzx eax, ax
or eax, 0x80070000
push eax
push 0x4e
mov edx, str.TryWinHTTP
mov ecx, str.c:_buildagentwork73b466a3166516aprojects_stat_module_stat_sender_stat_sender.cpp
call fcn.00405890
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x4023f5
movzx eax, ax
or eax, 0x80070000
push eax
push 0x51
mov edx, str.TryWinHTTP
mov ecx, str.c:_buildagentwork73b466a3166516aprojects_stat_module_stat_sender_stat_sender.cpp
call fcn.00405890
push str.dwSize_is_0
push 0x54
push str.TryWinHTTP
push str.c:_buildagentwork73b466a3166516aprojects_stat_module_stat_sender_stat_sender.cpp
call fcn.00405940
push 0x80070057
push 0x325
mov edx, str.ATL::CSimpleStringT_char_0_::PrepareWrite
mov ecx, str.c:program_files__x86_microsoft_visual_studio2017_buildtools_vc_toolsmsvc14.16.27023_atlmfcinclude_atlsimpstr.h
call fcn.00405890
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x402448
movzx eax, ax
or eax, 0x80070000
push eax
push 0x58
mov edx, str.TryWinHTTP
mov ecx, str.c:_buildagentwork73b466a3166516aprojects_stat_module_stat_sender_stat_sender.cpp
call fcn.00405890
int3