Function at 0x140002010
Capabilities:
Check http status code
Read http header
Receive http response

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x30
mov r14d, dword [r8]
lea rax, [rsp + 0x60]
xor edi, edi
mov rsi, r8
mov dword [r8], edi
mov r15, rdx
mov rbp, rcx
mov qword [rsp + 0x28], rdi
mov rcx, qword [rcx + 0x10]
xor r9d, r9d
lea edx, [rdi + 0x16]
mov dword [rsp + 0x60], edi
xor r8d, r8d
mov dword [rsp + 0x70], edi
mov qword [rsp + 0x20], rax
call qword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
jne 0x140002076
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x140002076
mov edi, 0xffffffff
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140002212
mov qword [rsp + 0x68], rbx
mov ebx, dword [rsp + 0x60]
mov qword [rsp + 0x78], r12
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r12, rax
test rax, rax
jne 0x1400020ae
lea edi, [rax - 2]
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140002208
mov rcx, qword [rbp + 0x10]
lea rax, [rsp + 0x60]
xor r8d, r8d
mov qword [rsp + 0x28], rdi
mov r9, r12
mov qword [rsp + 0x20], rax
lea edx, [r8 + 0x16]
call qword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
jne 0x1400020dd
lea edi, [rax - 3]
jmp 0x1400021ee
mov rcx, qword [rbp + 0x10]
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rdi
lea r9, [rsp + 0x70]
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x20000013
mov dword [rsp + 0x60], 4
call qword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
cmp dword [rsp + 0x70], 0xc8
je 0x14000211f
mov edi, 0xfffffffc
jmp 0x1400021f4
mov rcx, qword [rbp + 0x10]
lea rdx, [rsp + 0x60]
mov dword [rsp + 0x60], edi
call qword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
test eax, eax
je 0x1400021e9
nop word [rax + rax]
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x1400021f4
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
je 0x14000224b
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov rcx, qword [rbp + 0x10]
mov rdx, rax
call qword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x14000222a
movsxd rcx, dword [rsi]
test r14d, r14d
jne 0x14000219a
mov r8d, dword [rsp + 0x60]
jmp 0x1400021a9
mov edx, dword [rsp + 0x60]
lea eax, [rcx + rdx]
cmp r14d, eax
jle 0x1400021b4
mov r8d, edx
mov rdx, rbx
add rcx, r15
call sub.VCRUNTIME140.dll_memcpy
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [rsp + 0x60]
lea rdx, [rsp + 0x60]
add dword [rsi], eax
mov rcx, qword [rbp + 0x10]
mov dword [rsp + 0x60], edi
call qword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
test eax, eax
jne 0x140002140
mov edi, 0xfffffffb
call qword [sym.imp.KERNEL32.dll_GetLastError]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r12
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
add rsp, 0x30
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
mov edi, 0xfffffff9
call qword [sym.imp.KERNEL32.dll_GetLastError]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400021f4
mov edi, 0xfffffffa
jmp 0x1400021ee