Function at 0x1400018a0
Capabilities:
Create http request
Download and write a file
Read data from internet
Receive and write data from server to client
Receive data
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x458
xor r9d, r9d
xor r8d, r8d
mov rbx, rcx
mov rdi, rdx
mov dword [rsp + 0x20], 0
mov edx, 1
lea rcx, str.Download
call qword [sym.imp.WININET.dll_InternetOpenA]
test rax, rax
mov r15, rax
je 0x1400019e0
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x80000000
mov rcx, rax
call qword [sym.imp.WININET.dll_InternetOpenUrlA]
test rax, rax
mov rsi, rax
je 0x140001a40
xor r9d, r9d
xor r8d, r8d
mov rcx, rdi
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], pe_nt_image_headers64
mov edx, 0x40000000
mov dword [rsp + 0x20], 2
call qword [sym.imp.KERNEL32.dll_CreateFileA]
cmp rax, 0xffffffffffffffff
mov rdi, rax
je 0x140001b10
mov rbp, qword [sym.imp.WININET.dll_InternetReadFile]
lea r12, [rsp + 0x48]
mov r13, qword [sym.imp.KERNEL32.dll_WriteFile]
lea rbx, [rsp + 0x50]
lea r14, [rsp + 0x4c]
jmp 0x14000198f
mov r8d, dword [rsp + 0x48]
test r8d, r8d
je 0x1400019a4
mov qword [rsp + 0x20], 0
mov r9, r14
mov rdx, rbx
mov rcx, rdi
call r13
mov r9, r12
mov r8d, 0x400
mov rdx, rbx
mov rcx, rsi
call rbp
test eax, eax
jne 0x140001970
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rbx, qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, rsi
call rbx
mov rcx, r15
call rbx
mov eax, 1
add rsp, 0x458
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rbx, qword [0x1400c0ea0]
mov r8d, 0x1b
lea rdx, str.Error_initializing_WinINet.
mov rcx, rbx
call fcn.1400b0770
mov rax, qword [rbx]
mov rax, qword [rax - 0x18]
mov rsi, qword [rax + rbx + 0xf0]
test rsi, rsi
je 0x140001b9c
cmp byte [rsi + 0x38], 0
je 0x140001aa0
movsx edx, byte [rsi + 0x43]
mov rcx, rbx
call fcn.140074f00
mov rcx, rax
call fcn.1400750e0
xor eax, eax
jmp 0x1400019c3
mov rbx, qword [0x1400c0ea0]
mov r8d, 0x12
lea rdx, str.Error_opening_URL.
mov rcx, rbx
call fcn.1400b0770
mov rax, qword [rbx]
mov rax, qword [rax - 0x18]
mov rsi, qword [rax + rbx + 0xf0]
test rsi, rsi
je 0x140001b9c
cmp byte [rsi + 0x38], 0
je 0x140001ad8
movsx edx, byte [rsi + 0x43]
mov rcx, rbx
call fcn.140074f00
mov rcx, rax
call fcn.1400750e0
mov rcx, r15
call qword [sym.imp.WININET.dll_InternetCloseHandle]
xor eax, eax
jmp 0x1400019c3
mov rcx, rsi
call fcn.140027cc0
mov rax, qword [rsi]
mov edx, 0xa
lea rcx, [0x140028370]
mov rax, qword [rax + 0x30]
cmp rax, rcx
je 0x140001a22
mov rcx, rsi
call rax
movsx edx, al
jmp 0x140001a22
mov rcx, rsi
call fcn.140027cc0
mov rax, qword [rsi]
mov edx, 0xa
lea rcx, [0x140028370]
mov rax, qword [rax + 0x30]
cmp rax, rcx
je 0x140001a7e
mov rcx, rsi
call rax
movsx edx, al
jmp 0x140001a7e
mov rbx, qword [0x1400c0ea0]
mov r8d, 0x14
lea rdx, str.Error_creating_file.
mov rcx, rbx
call fcn.1400b0770
mov rax, qword [rbx]
mov rax, qword [rax - 0x18]
mov rdi, qword [rax + rbx + 0xf0]
test rdi, rdi
je 0x140001b9c
cmp byte [rdi + 0x38], 0
je 0x140001b72
movsx edx, byte [rdi + 0x43]
mov rcx, rbx
call fcn.140074f00
mov rcx, rax
call fcn.1400750e0
mov rbx, qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, rsi
call rbx
mov rcx, r15
call rbx
xor eax, eax
jmp 0x1400019c3
mov rcx, rdi
call fcn.140027cc0
mov rax, qword [rdi]
mov edx, 0xa
lea rcx, [0x140028370]
mov rax, qword [rax + 0x30]
cmp rax, rcx
je 0x140001b4a
mov rcx, rdi
call rax
movsx edx, al
jmp 0x140001b4a
call fcn.1400b6620
nop
nop word cs:[rax + rax]
nop dword [rax]