Function at 0x18000e564
Capabilities:
Query remote server for available data
Read data from internet
Receive data
Send data
Send http request

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3c8]
sub rsp, 0x4a0
xor r15d, r15d
mov rbx, rcx
lea rax, [0x18003277c]
mov r12, r8
mov r13, rdx
lea edi, [r15 + 0x38]
lea rcx, [rsp + 0x58]
mov r8d, edi
xor edx, edx
mov r14d, r9d
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], r15
mov dword [rbp + 0x3d8], r15d
mov dword [rsp + 0x40], r15d
mov esi, r15d
mov qword [rsp + 0x50], r15
call fcn.18001ae30
lea rcx, [rbp - 0x5f]
xor edx, edx
mov r8d, 0x3ff
mov byte [rbp - 0x60], r15b
call fcn.18001ae30
mov edx, dword [r13 + 4]
lea rcx, [rsp + 0x50]
call fcn.18001658c
mov rcx, qword [rsp + 0x60]
lea r8, [0x180032768]
mov r9, rbx
mov edx, 0x400
call fcn.18001af3c
lea ecx, [rdi - 0x14]
call fcn.1800191cc
mov r9d, dword [r13 + 4]
lea r8, [r13 + 8]
lea rdx, [rsp + 0x50]
mov rcx, rax
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
call fcn.180015ca4
mov ecx, edi
call fcn.18001ab88
mov r8d, edi
xor edx, edx
mov rcx, rax
mov r15, rax
call fcn.18001ae30
lea r8d, [rdi - 0x29]
lea rdx, str.If_None_Match:
mov rcx, r15
call fcn.18001bed0
mov r9, qword [rsp + 0x58]
or rdi, 0xffffffffffffffff
mov rcx, rdi
xor ebx, ebx
inc rcx
cmp byte [r9 + rcx], bl
jne 0x18000e66a
test rcx, rcx
mov edx, 0x400
lea rcx, [rbp - 0x60]
jne 0x18000e694
mov r9, qword [rsp + 0x60]
lea r8, [0x180032768]
call fcn.18001af3c
jmp 0x18000e6aa
mov qword [rsp + 0x20], r9
mov r9, qword [rsp + 0x60]
lea r8, [0x180032784]
call fcn.18001af3c
mov ecx, 0x1a
call fcn.1800191cc
mov rcx, qword [0x180046bc0]
lea r8, [rbp - 0x60]
mov rdx, rax
lea rax, [0x180046bd8]
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov eax, dword [0x180046bd4]
mov dword [rsp + 0x30], eax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
call qword [sym.imp.WININET.dll_HttpOpenRequestA]
mov rcx, rax
mov rbx, rax
call fcn.18000e838
mov ecx, 0x65
call fcn.180019200
test ax, ax
je 0x18000e740
call fcn.18001410c
mov r8d, 0x24
mov rcx, r15
mov rdx, rax
call fcn.18001bd20
mov rcx, qword [rsp + 0x50]
dec rcx
xor eax, eax
inc rcx
cmp byte [rcx], al
jne 0x18000e729
xor edx, edx
mov al, byte [r15 + rdx]
mov byte [rcx + rdx], al
inc rdx
test al, al
jne 0x18000e732
mov rdx, qword [rsp + 0x50]
mov r8, rdi
xor r15d, r15d
inc r8
cmp byte [rdx + r8], r15b
jne 0x18000e74b
mov eax, dword [rsp + 0x70]
mov r9, qword [rsp + 0x68]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call qword [sym.imp.WININET.dll_HttpSendRequestA]
mov edx, dword [r13 + 4]
lea rcx, [rsp + 0x50]
call fcn.180016580
mov rcx, rbx
call fcn.18000ee3c
test eax, eax
je 0x18000e7b0
lea rdx, [rbp + 0x3d8]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetQueryDataAvailable]
test eax, eax
je 0x18000e7b0
mov eax, dword [rbp + 0x3d8]
cmp eax, r14d
jae 0x18000e7b0
test eax, eax
jne 0x18000e7dc
mov edi, r15d
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov eax, edi
lea r11, [rsp + 0x4a0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
test r14d, r14d
je 0x18000e7b0
mov edx, esi
lea r9, [rsp + 0x40]
mov r8d, 0x1000
add rdx, r12
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x18000e80d
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x18000e80d
add esi, eax
cmp esi, r14d
jb 0x18000e7e1
cmp esi, r14d
jae 0x18000e7b0
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov ecx, ntohl
call fcn.1800191cc
mov r9d, r14d
mov r8d, esi
mov rcx, rax
mov rdx, r12
call fcn.180016628
jmp 0x18000e7bb