Function at 0x40160a
Capabilities:
Connect to http server
Create http request
Parse url
Send data
Send http request

Disassembly:
push 0x4a4
mov eax, 0x405492
call fcn.00405237
mov ebx, ecx
mov dword [ebp - 0x494], ebx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x498], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x490], eax
push 2
pop eax
mov dword [ebp - 0x48c], eax
xor edi, edi
mov dword [ebp - 4], eax
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x40164a
mov dword [eax], edi
push 0x3c
pop esi
push esi
lea eax, [ebp - 0x488]
push edi
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x488], esi
cmp dword [ebp + 0x2c], 8
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x484], eax
mov ecx, 0x100
lea eax, [ebp - 0x23c]
mov dword [ebp - 0x474], ecx
mov dword [ebp - 0x478], eax
lea eax, [ebp - 0x43c]
mov dword [ebp - 0x458], ecx
lea ecx, [ebp - 0x488]
push ecx
mov dword [ebp - 0x45c], eax
lea eax, [ebp + 0x18]
cmovae eax, dword [ebp + 0x18]
push edi
push dword [ebp + 0x28]
mov dword [ebp - 0x480], 0x10
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
jne 0x4016ca
inc eax
mov dword [ebp - 0x48c], eax
jmp 0x401745
mov edx, str.https
lea ecx, [ebp - 0x3c]
mov si, word [ecx]
xor eax, eax
inc eax
mov dword [ebp - 0x440], eax
cmp si, word [edx]
jne 0x401701
test si, si
je 0x4016fd
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x401701
add ecx, 4
add edx, 4
test si, si
jne 0x4016d2
mov ecx, edi
jmp 0x401705
sbb ecx, ecx
or ecx, eax
test ecx, ecx
je 0x401750
mov edx, str.http
lea ecx, [ebp - 0x3c]
mov si, word [ecx]
cmp si, word [edx]
jne 0x401737
test si, si
je 0x401733
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x401737
add ecx, 4
add edx, 4
test si, si
jne 0x401711
mov ecx, edi
jmp 0x40173b
sbb ecx, ecx
or ecx, eax
mov dword [ebp - 0x440], edi
test ecx, ecx
je 0x401750
mov ebx, dword [ebp - 0x48c]
jmp 0x4018e3
mov eax, dword [ebx + 4]
sub eax, dword [ebx]
push 0x18
cdq
pop ecx
idiv ecx
mov esi, eax
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
xor edx, edx
lea ecx, [ebp - 0x4b0]
div esi
imul eax, edx, 0x18
add eax, dword [ebx]
push eax
call fcn.004030d6
cmp dword [eax + 0x14], 8
jb 0x401780
mov eax, dword [eax]
xor esi, esi
push esi
push esi
push esi
push esi
push eax
call dword [sym.imp.WININET.dll_InternetOpenW]
mov edi, eax
mov dword [ebp - 0x44c], edi
push 3
pop ebx
lea ecx, [ebp - 0x4b0]
mov byte [ebp - 4], bl
call fcn.004032ef
test edi, edi
je 0x4018e3
push esi
push esi
push ebx
push esi
push esi
push dword [ebp - 0x470]
lea eax, [ebp - 0x23c]
push eax
push edi
call dword [sym.imp.WININET.dll_InternetConnectW]
mov dword [ebp - 0x448], eax
mov byte [ebp - 4], 4
test eax, eax
jne 0x4017dd
push 4
pop ebx
jmp 0x4018dc
mov edx, dword [ebp - 0x440]
lea ecx, [ebp + 0x30]
push esi
shl edx, 0x17
or edx, 0x80000
cmp dword [ebp + 0x44], 8
push edx
cmovae ecx, dword [ebp + 0x30]
lea edx, [ebp - 0x43c]
push esi
push esi
push esi
push edx
push ecx
push eax
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov esi, eax
mov dword [ebp - 0x440], esi
push 5
pop ebx
mov byte [ebp - 4], bl
test esi, esi
je 0x4018d0
push 4
lea eax, [ebp + 0x14]
push eax
push ebx
mov ebx, dword [sym.imp.WININET.dll_InternetSetOptionW]
push esi
call ebx
push 4
lea eax, [ebp + 0x14]
push eax
push 6
pop eax
push eax
push esi
mov dword [ebp - 0x48c], eax
call ebx
push dword [ebp + 0x10]
cmp dword [ebp + 0x5c], 8
lea eax, [ebp + 0x48]
push dword [ebp - 0x490]
cmovae eax, dword [ebp + 0x48]
xor ebx, ebx
push ebx
push eax
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestW]
test eax, eax
jne 0x40186f
mov ebx, dword [ebp - 0x48c]
jmp 0x401895
push ebx
lea eax, [ebp - 0x444]
mov dword [ebp - 0x444], 8
push eax
lea eax, [ebp - 0x1c]
push eax
push 0x13
push esi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x40189b
push 7
pop ebx
test esi, esi
je 0x4018d0
jmp 0x4018c9
push 0xa
lea eax, [ebp - 0x1c]
push ebx
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstol]
mov ecx, dword [ebp - 0x494]
add esp, 0xc
mov ecx, dword [ecx + 0x24]
test ecx, ecx
je 0x4018ba
mov dword [ecx], eax
push dword [ebp - 0x498]
push esi
call fcn.00401c00
movzx ebx, al
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push dword [ebp - 0x448]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
lea ecx, [ebp + 0x18]
call fcn.004032ef
lea ecx, [ebp + 0x30]
call fcn.004032ef
lea ecx, [ebp + 0x48]
call fcn.004032ef
mov eax, ebx
call fcn.004051f5
ret 0x58