Function at 0x140001cbb
Capabilities:
Connect to http server
Create http request
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x4e8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x490], rcx
mov qword [rbp + 0x498], rdx
mov qword [rbp + 0x4a0], r8
mov dword [rbp + 0x4a8], r9d
lea rax, [rbp + 0x400]
mov r8d, r10d
lea rdx, str.HTTP_1.1
mov rcx, rax
call method.xorstr_impl::string_8ull__9_.string_0ull__1ull__2ull__3ull__4ull__5ull__6ull__7ull__char_const__std::integer_sequence_unsigned_long_long__0ull__1ull__2ull__3ull__4ull__5ull__6ull__7ull__
lea rax, [rbp + 0x400]
mov rcx, rax
call method.xorstr_impl::string_8ull__9_.decrypt__
mov dword [rsp + 0x20], 0
mov r9d, 0
mov r8d, 0
mov edx, 1
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetOpenA]
call rax
mov qword [rbp + 0x458], rax
cmp qword [rbp + 0x458], 0
jne 0x140001d52
mov ebx, 0xe6
jmp 0x1400020af
mov rax, qword [rbp + 0x490]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.c_str___const
mov rdx, rax
mov rax, qword [rbp + 0x458]
mov qword [rsp + 0x38], 0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], 0
mov r9d, 0
mov r8d, 0x1bb
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetConnectA]
call rax
mov qword [rbp + 0x450], rax
cmp qword [rbp + 0x450], 0
jne 0x140001dd3
mov rax, qword [rbp + 0x458]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
mov ebx, 0xe5
jmp 0x1400020af
mov rax, qword [rbp + 0x498]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.c_str___const
mov rbx, rax
lea rax, [rbp + 0x40a]
mov r8d, edi
lea rdx, [0x1400e2172]
mov rcx, rax
call method.xorstr_impl::string_3ull__10_.string_0ull__1ull__2ull__char_const__std::integer_sequence_unsigned_long_long__0ull__1ull__2ull__
lea rax, [rbp + 0x40a]
mov rcx, rax
call method.xorstr_impl::string_3ull__10_.decrypt__
mov rdx, rax
mov rax, qword [rbp + 0x450]
mov qword [rsp + 0x38], 0
mov dword [rsp + 0x30], 0x80800000
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9d, 0
mov r8, rbx
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_HttpOpenRequestA]
call rax
mov qword [rbp + 0x448], rax
cmp qword [rbp + 0x448], 0
jne 0x140001e90
mov rax, qword [rbp + 0x450]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
mov rax, qword [rbp + 0x458]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
mov ebx, 0xe4
jmp 0x1400020af
mov eax, dword [rbp + 0x4a8]
imul eax, eax, 0x3e8
mov dword [rbp + 0x3fc], eax
lea rdx, [rbp + 0x3fc]
mov rax, qword [rbp + 0x448]
mov r9d, 4
mov r8, rdx
mov edx, 6
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetSetOptionA]
call rax
lea rax, [rbp + 0x40f]
mov qword [rbp + 0x438], rax
nop
nop
lea rax, [rbp + 0x410]
mov r8d, esi
lea rdx, str.Content_Type:_text_html_r_n
mov rcx, rax
call sym._ZN11xorstr_impl6stringILy25ELi11EEC1IJLy0ELy1ELy2ELy3ELy4ELy5ELy6ELy7ELy8ELy9ELy10ELy11ELy12ELy13ELy14ELy15ELy16ELy17ELy18ELy
lea rax, [rbp + 0x410]
mov rcx, rax
call method.xorstr_impl::string_25ull__11_.decrypt__
mov rdx, rax
lea rcx, [rbp + 0x40f]
lea rax, [rbp + 0x3d0]
mov r8, rcx
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const_
lea rax, [rbp + 0x40f]
mov rcx, rax
call method.std::__new_allocator_char_.__new_allocator__
nop
lea rax, [rbp + 0x3d0]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.size___const
lea ebx, [rax - 1]
lea rax, [rbp + 0x3d0]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.c_str___const
mov rdx, rax
mov rax, qword [rbp + 0x448]
mov dword [rsp + 0x20], 0
mov r9d, 0
mov r8d, ebx
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_HttpSendRequestA]
call rax
test eax, eax
sete al
test al, al
je 0x140001fe7
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
call rax
mov dword [rbp + 0x444], eax
mov rax, qword [rbp + 0x448]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
mov rax, qword [rbp + 0x450]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
mov rax, qword [rbp + 0x458]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
cmp dword [rbp + 0x444], 0x2ee2
jne 0x140001fdd
mov ebx, 0xe7
jmp 0x1400020a0
mov ebx, 0xe3
jmp 0x1400020a0
mov rax, qword [rbp + 0x4a0]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.clear__
mov dword [rbp - 0x34], 0
jmp 0x140002023
mov eax, dword [rbp - 0x34]
mov eax, eax
mov byte [rbp + rax - 0x30], 0
lea rdx, [rbp - 0x30]
mov rax, qword [rbp + 0x4a0]
mov rcx, rax
call fcn.1400bb780
mov dword [rbp - 0x34], 0
lea rcx, [rbp - 0x34]
lea rdx, [rbp - 0x30]
mov rax, qword [rbp + 0x448]
mov r9, rcx
mov r8d, 0x3ff
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetReadFile]
call rax
test eax, eax
je 0x140002059
mov eax, dword [rbp - 0x34]
test eax, eax
je 0x140002059
mov eax, 1
jmp 0x14000205e
mov eax, 0
test al, al
jne 0x140001fff
mov rax, qword [rbp + 0x448]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
mov rax, qword [rbp + 0x450]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
mov rax, qword [rbp + 0x458]
mov rcx, rax
mov rax, qword [sym.imp.WININET.dll_InternetCloseHandle]
call rax
mov ebx, 0xe8
lea rax, [rbp + 0x3d0]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
mov eax, ebx
jmp 0x1400020ee
add rsp, 0x4e8
pop rbx
pop rsi
pop rdi
pop rbp
ret