Function at 0x180001e60
Capabilities:
Create http request
Read data from internet
Receive data

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x180]
sub rsp, 0x280
mov rax, qword [0x18000b040]
xor rax, rsp
mov qword [rbp + 0x170], rax
mov r12, rdx
mov rbx, rcx
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 1
lea rcx, str.SID_Authenticator
call qword [sym.imp.WININET.dll_InternetOpenA]
mov r15, rax
test rax, rax
jne 0x180001eea
lea rdx, str.Failed_to_open_internet.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.180004470
mov rcx, rax
lea rdx, [0x180004650]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
xor al, al
jmp 0x180002211
cmp qword [rbx + 0x18], 0xf
jbe 0x180001ef4
mov rbx, qword [rbx]
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x80000000
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov rcx, r15
call qword [sym.imp.WININET.dll_InternetOpenUrlA]
mov r14, rax
test rax, rax
jne 0x180001f52
lea rdx, str.Failed_to_open_URL.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.180004470
mov rcx, rax
lea rdx, [0x180004650]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, r15
call qword [sym.imp.WININET.dll_InternetCloseHandle]
xor al, al
jmp 0x180002211
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xor ebx, ebx
mov qword [rsp + 0x60], rbx
mov esi, 0xf
mov qword [rsp + 0x68], rsi
mov byte [rsp + 0x50], bl
lea r9, [rsp + 0x30]
mov r8d, 0x100
lea rdx, [rbp + 0x70]
mov rcx, r14
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x180002016
nop
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x180002016
mov edi, eax
mov rax, rsi
sub rax, rbx
cmp rdi, rax
ja 0x180001fd5
lea rax, [rbx + rdi]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x50]
cmp rsi, 0xf
cmova rax, qword [rsp + 0x50]
add rbx, rax
mov r8d, edi
lea rdx, [rbp + 0x70]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + rbx], 0
jmp 0x180001feb
mov qword [rsp + 0x20], rdi
lea r9, [rbp + 0x70]
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.180004720
lea r9, [rsp + 0x30]
mov r8d, 0x100
lea rdx, [rbp + 0x70]
mov rcx, r14
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x180002016
mov rsi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
jmp 0x180001f90
mov rcx, r14
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, r15
call qword [sym.imp.WININET.dll_InternetCloseHandle]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x38]
call fcn.180001bc0
nop
mov rbx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x40]
cmp rbx, r15
je 0x180002116
lea r14, [0x180007638]
mov rdi, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x18000206e
mov rdi, qword [rbx]
mov rsi, qword [rbx + 0x10]
test rsi, rsi
je 0x1800020d7
xor edx, edx
mov r8d, 0x100
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll_memset
lea rcx, str.__n_r_t
movzx eax, byte [rcx]
mov byte [rsp + rax + 0x70], 1
inc rcx
cmp rcx, r14
jne 0x180002090
lea rcx, [rsi - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
add rax, rdi
movzx ecx, byte [rax]
cmp byte [rsp + rcx + 0x70], 0
je 0x1800020d2
nop
cmp rax, rdi
je 0x1800020d7
dec rax
movzx ecx, byte [rax]
cmp byte [rsp + rcx + 0x70], 0
jne 0x1800020c0
sub rax, rdi
jmp 0x1800020de
mov rax, 0xffffffffffffffff
inc rax
cmp rsi, rax
jb 0x18000223c
mov qword [rbx + 0x10], rax
mov rcx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800020fb
mov rcx, qword [rbx]
mov byte [rcx + rax], 0
add rbx, 0x20
cmp rbx, r15
jne 0x180002061
mov r15, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x38]
mov rdi, rbx
cmp rbx, r15
je 0x180002165
mov rsi, qword [r12 + 0x18]
mov r14, qword [r12 + 0x10]
nop dword [rax + rax]
mov rdx, r12
cmp rsi, 0xf
jbe 0x18000213d
mov rdx, qword [r12]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18000214a
mov rcx, qword [rdi]
mov r8, qword [rdi + 0x10]
cmp r8, r14
jne 0x18000215c
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1800021b1
add rdi, 0x20
cmp rdi, r15
jne 0x180002130
xor dil, dil
test rbx, rbx
je 0x1800021cd
mov rdx, r15
mov rcx, rbx
call fcn.1800048b0
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800021b6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800021b6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov dil, 1
jmp 0x180002168
call fcn.180005680
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x18000220d
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002208
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180002208
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180005680
movzx eax, dil
mov rcx, qword [rbp + 0x170]
xor rcx, rsp
call fcn.180005660
lea r11, [rsp + 0x280]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.180004450
nop
int3