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

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x740
mov qword [rsp + 0xb8], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov rax, qword [0x1401620c0]
xor rax, rsp
mov qword [rsp + 0x6f0], rax
mov rdi, r9
mov ebx, r8d
mov dword [rsp + 0x88], ebx
mov rbp, rdx
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], rcx
mov r12, qword [rsp + 0x7a0]
mov qword [rsp + 0x98], r12
mov r15d, 6
test rcx, rcx
je 0x140008ee9
test rdx, rdx
je 0x140008ee9
test ebx, ebx
jle 0x140008ee9
mov rax, qword [0x140160e18]
mov qword [rsp + 0x78], rax
lea rdx, [0x1400e4ec8]
lea rcx, [rsp + 0x78]
call fcn.14002d430
xor r8d, r8d
mov edx, 0xe00b
lea rcx, [rsp + 0x78]
call fcn.14002e500
nop
xor esi, esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.WININET.dll_InternetOpenA]
mov qword [rsp + 0xa0], rax
test rax, rax
je 0x140008eda
mov r13d, esi
mov dword [rsp + 0x40], esi
test ebx, ebx
jle 0x140008ed0
mov ebx, esi
mov dword [rsp + 0x48], ebx
mov r14, r12
mov qword [rsp + 0x80], r12
mov esi, dword [rsp + 0x7a8]
movss xmm8, dword [0x1400e5f78]
movsd xmm9, qword [0x1400e5f70]
movss xmm7, dword [0x1400e5f68]
nop
nop
nop
mov byte [rsp + 0x5f0], 0
xor edx, edx
mov r8d, 0xff
lea rcx, [rsp + 0x5f1]
call fcn.1400c2840
mov byte [rsp + 0x3e0], 0
xor edx, edx
mov r8d, 0xff
lea rcx, [rsp + 0x3e1]
call fcn.1400c2840
mov byte [rsp + 0xc0], 0
xor edx, edx
mov r8d, 0x103
lea rcx, [rsp + 0xc1]
call fcn.1400c2840
movsxd r11, ebx
mov rax, qword [rsp + 0xb0]
lea rbx, [r11 + rax]
add rbp, r11
mov qword [rsp + 0x90], rbp
lea rax, [rsp + 0x5f0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x3e0]
xor r8d, r8d
xor edx, edx
mov rcx, rbp
call fcn.1400c3de0
lea r11, [rsp + 0x5f0]
mov qword [rsp + 0x20], r11
lea r9, [rsp + 0x3e0]
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0xc0]
call fcn.1400c3ad0
test rdi, rdi
je 0x140008971
lea rdx, [rsp + 0xc0]
mov rcx, rdi
call fcn.14004f160
test r12, r12
je 0x140008971
mov edx, 1
mov rcx, rdi
call fcn.14004f390
mov byte [rsp + 0x1d0], 0
xor edx, edx
mov r8d, 0x207
lea rcx, [rsp + 0x1d1]
call fcn.1400c2840
xor eax, eax
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.WININET.dll_InternetOpenUrlA]
mov r12, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140008dfa
xor ebx, ebx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 2
xor r9d, r9d
mov edx, 0xc0000000
lea r8d, [rbx + 3]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x140008d52
mov ecx, 0x8001
call fcn.14008c4a0
mov r13, rax
mov dword [rsp + 0x44], ebx
mov dword [rsp + 0x8c], ebx
mov ebp, ebx
cmp qword [rsp + 0x98], rbx
je 0x140008a24
mov rax, qword [rsp + 0x80]
mov ebp, dword [rax]
mov esi, ebp
nop
nop
nop
lea r9, [rsp + 0x44]
mov r8d, 0x8000
mov rdx, r13
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetReadFile]
mov r12d, eax
test eax, eax
je 0x140008b7a
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x8c]
mov r8d, dword [rsp + 0x44]
mov rdx, r13
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WriteFile]
test rdi, rdi
je 0x140008c00
test esi, esi
je 0x140008b3d
test ebp, ebp
je 0x140008b3d
sub esi, dword [rsp + 0x44]
mov eax, ebp
sub eax, esi
cvtsi2ss xmm6, rax
mulss xmm6, xmm8
mov eax, ebp
cvtsi2ss xmm0, rax
divss xmm6, xmm0
cvtss2sd xmm0, xmm6
comisd xmm0, xmm9
jbe 0x140008ab4
movaps xmm6, xmm7
mov byte [rsp + 0x4e0], 0
xor edx, edx
mov r8d, 0x103
lea rcx, [rsp + 0x4e1]
call fcn.1400c2840
mov eax, 0x10624dd3
mul ebp
mov ecx, edx
shr ecx, 6
add ecx, 1
mov eax, 0x10624dd3
mul esi
shr edx, 6
add edx, 1
cmp edx, ecx
cmova edx, ebx
cvttss2si rbx, xmm6
mov r9d, ecx
sub r9d, edx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ecx
lea r8, [rsp + 0xc0]
lea rdx, str._s___uK_of__uK___u__
lea rcx, [rsp + 0x4e0]
call fcn.1400c2cf0
lea rdx, [rsp + 0x4e0]
mov rcx, rdi
call fcn.14004f160
mov edx, ebx
mov rcx, rdi
call fcn.14004f390
jmp 0x140008b61
mov edx, 2
lea r8d, [rdx - 1]
mov rcx, rdi
call fcn.14004f3e0
cmp dword [rdi + 0x28], 0x64
jb 0x140008b61
mov edx, 2
mov rcx, rdi
call fcn.14004f390
xor edx, edx
mov rcx, rdi
call fcn.14004ed10
cmp dword [rdi + 0xc], 1
je 0x140008c19
jmp 0x140008c00
cmp dword [rsp + 0x7a8], 0
je 0x140008c00
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rax, qword [0x140160e18]
mov qword [rsp + 0x60], rax
lea rdx, [0x1400e4ec8]
lea rcx, [rsp + 0x60]
call fcn.14002d430
xor r8d, r8d
mov edx, 0xe011
lea rcx, [rsp + 0x60]
call fcn.14002e500
nop
mov dword [rsp + 0x20], ebx
lea r9, [rsp + 0xc0]
mov r8, qword [rsp + 0x60]
lea rdx, str._s_n_n_s___Reason_1:__d
lea rcx, [rsp + 0x1d0]
call fcn.1400c2cf0
xor r8d, r8d
lea edx, [r8 + 0xc]
lea rcx, [rsp + 0x1d0]
call fcn.140007590
nop
lea rcx, [rsp + 0x60]
call fcn.14002d2c0
cmp dword [rsp + 0x44], 0
je 0x140008c51
cmp r12d, 1
jne 0x140008c5e
mov r12, qword [rsp + 0x58]
xor ebx, ebx
jmp 0x140008a30
lea r8, [rsp + 0xc0]
lea rdx, str.Download__s_cancelled_by_user.
lea rcx, [rsp + 0x1d0]
call fcn.1400c2cf0
xor r8d, r8d
lea edx, [r8 + 0xc]
lea rcx, [rsp + 0x1d0]
call fcn.140007590
mov r15d, 0x4c7
jmp 0x140008c5e
cmp r12d, 1
mov esi, 0
cmove r15d, esi
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ebx, eax
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, r13
call fcn.14008c4f0
test ebx, ebx
jne 0x140008d21
mov rbx, qword [rsp + 0x90]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov r15d, 0xd
mov rax, qword [0x140160e18]
mov qword [rsp + 0x50], rax
lea rdx, [0x1400e4ec8]
lea rcx, [rsp + 0x50]
call fcn.14002d430
xor r8d, r8d
mov edx, 0xe011
lea rcx, [rsp + 0x50]
call fcn.14002e500
nop
mov dword [rsp + 0x20], r15d
mov r9, rbx
mov r8, qword [rsp + 0x50]
lea rdx, str._s_n_n_s___Reason_3:__d
lea rcx, [rsp + 0x1d0]
call fcn.1400c2cf0
xor r8d, r8d
lea edx, [r15 - 1]
lea rcx, [rsp + 0x1d0]
call fcn.140007590
nop
lea rcx, [rsp + 0x50]
call fcn.14002d2c0
mov r12, qword [rsp + 0x58]
mov esi, dword [rsp + 0x7a8]
mov r13d, dword [rsp + 0x40]
jmp 0x140008de4
cmp r15d, 0x4c7
jne 0x140008dd3
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov r12, qword [rsp + 0x58]
mov esi, dword [rsp + 0x7a8]
mov r13d, dword [rsp + 0x40]
jmp 0x140008de4
test esi, esi
je 0x140008de4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rax, qword [0x140160e18]
mov qword [rsp + 0x70], rax
lea rdx, [0x1400e4ec8]
lea rcx, [rsp + 0x70]
call fcn.14002d430
xor r8d, r8d
mov edx, 0xe011
lea rcx, [rsp + 0x70]
call fcn.14002e500
nop
mov dword [rsp + 0x20], ebx
mov r9, rbp
mov r8, qword [rsp + 0x70]
lea rdx, str._s_n_n_s___Reason_2:__d
lea rcx, [rsp + 0x1d0]
call fcn.1400c2cf0
xor r8d, r8d
lea edx, [r8 + 0xc]
lea rcx, [rsp + 0x1d0]
call fcn.140007590
nop
lea rcx, [rsp + 0x70]
call fcn.14002d2c0
jmp 0x140008de4
mov r12, qword [rsp + 0x58]
mov esi, dword [rsp + 0x7a8]
mov r13d, dword [rsp + 0x40]
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov r14, qword [rsp + 0x80]
jmp 0x140008e82
test esi, esi
je 0x140008e82
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rax, qword [0x140160e18]
mov qword [rsp + 0x68], rax
lea rdx, [0x1400e4ec8]
lea rcx, [rsp + 0x68]
call fcn.14002d430
xor r8d, r8d
mov edx, 0xe012
lea rcx, [rsp + 0x68]
call fcn.14002e500
nop
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x20], rax
mov r9d, ebx
mov r8, qword [rsp + 0x68]
lea rdx, str._s:__d____s
lea rcx, [rsp + 0x1d0]
call fcn.1400c2cf0
xor r8d, r8d
lea edx, [r8 + 0xb]
lea rcx, [rsp + 0x1d0]
call fcn.140007590
nop
lea rcx, [rsp + 0x68]
call fcn.14002d2c0
test r15d, r15d
jne 0x140008ec8
add r13d, 1
mov dword [rsp + 0x40], r13d
mov ebx, dword [rsp + 0x48]
add ebx, 0x104
mov dword [rsp + 0x48], ebx
add r14, 4
mov qword [rsp + 0x80], r14
cmp r13d, dword [rsp + 0x88]
mov r12, qword [rsp + 0x98]
mov rbp, qword [rsp + 0xa8]
jl 0x140008890
mov rax, qword [rsp + 0xa0]
mov rcx, rax
call qword [sym.imp.WININET.dll_InternetCloseHandle]
nop
lea rcx, [rsp + 0x78]
call fcn.14002d2c0
mov eax, r15d
jmp 0x140008eec
mov eax, r15d
mov rcx, qword [rsp + 0x6f0]
xor rcx, rsp
call fcn.1400c2a20
lea r11, [rsp + 0x740]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret