Function at 0x1401af0f0
Capabilities:
Prepare http request
Receive http response

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rbx, rdx
mov r13, rcx
xor r12d, r12d
mov r15d, r12d
mov qword [rbp - 0x30], r12
mov esi, r12d
mov qword [rbp - 0x28], r12
mov r14d, r12d
mov qword [rbp - 0x20], r12
mov edi, r12d
mov qword [rbp - 0x18], r12
mov qword [r9 + 0xf0], r12
call fcn.1401af9e0
mov rcx, r13
call fcn.1401af020
test al, al
je 0x1401af739
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rax
mov dword [rsp + 0x60], 0x68
mov dword [rbp - 0x80], 1
mov dword [rbp - 0x50], 1
mov dword [rbp - 0x70], 1
mov dword [rbp - 0x60], 1
lea r9, [rsp + 0x60]
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
je 0x1401af739
cmp dword [rsp + 0x74], 2
jne 0x1401af1c5
mov byte [r13 + 0x20], 1
mov eax, dword [rbp - 0x70]
cmp qword [rbp - 0x78], 0
cmove eax, r12d
mov dword [rbp - 0x70], eax
mov eax, dword [rbp - 0x60]
cmp qword [rbp - 0x68], 0
cmove eax, r12d
mov dword [rbp - 0x60], eax
mov ecx, dword [rbp - 0x80]
mov dword [rsp + 0x40], ecx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x48], rax
lea ebx, [rcx + 1]
mov eax, 2
mul rbx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1401e3f7c
mov r12, rax
test rax, rax
jne 0x1401af228
lea ecx, [rax + 0xe]
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x1401af739
add rbx, rbx
mov r8, rbx
xor edx, edx
mov rcx, r12
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
test rbx, rbx
je 0x1401af26e
mov rax, qword [rsp + 0x48]
mov r8, rbx
mov rcx, r12
test rax, rax
je 0x1401af257
mov rdx, rax
call fcn.14021bb20
jmp 0x1401af26e
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
call sub.api_ms_win_crt_runtime_l1_1_0.dll__errno
mov dword [rax], SafeArrayPutElement
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo
mov eax, dword [rsp + 0x40]
xor ecx, ecx
mov word [r12 + rax*2], cx
mov r15, r12
mov qword [rbp - 0x30], r12
mov ecx, dword [rbp - 0x50]
mov dword [rsp + 0x40], ecx
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x48], rax
lea ebx, [rcx + 1]
mov eax, 2
mul rbx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1401e3f7c
mov r12, rax
test rax, rax
jne 0x1401af2c4
lea ecx, [rax + 0xe]
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x1401af739
add rbx, rbx
mov r8, rbx
xor edx, edx
mov rcx, r12
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
test rbx, rbx
je 0x1401af30a
mov rax, qword [rsp + 0x48]
mov r8, rbx
mov rcx, r12
test rax, rax
je 0x1401af2f3
mov rdx, rax
call fcn.14021bb20
jmp 0x1401af30a
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
call sub.api_ms_win_crt_runtime_l1_1_0.dll__errno
mov dword [rax], SafeArrayPutElement
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo
mov eax, dword [rsp + 0x40]
xor ecx, ecx
mov word [r12 + rax*2], cx
mov rsi, r12
mov qword [rbp - 0x28], r12
mov eax, dword [rbp - 0x70]
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1401af3c9
mov rcx, qword [rbp - 0x78]
mov qword [rsp + 0x58], rcx
lea ecx, [rax + 1]
mov qword [rsp + 0x48], rcx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1401e3f7c
mov rbx, rax
test rax, rax
jne 0x1401af36d
lea ecx, [rax + 0xe]
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x1401af739
mov r14, qword [rsp + 0x48]
add r14, r14
mov r8, r14
xor edx, edx
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
test r14, r14
je 0x1401af3b8
mov rax, qword [rsp + 0x58]
mov r8, r14
mov rcx, rbx
test rax, rax
je 0x1401af3a1
mov rdx, rax
call fcn.14021bb20
jmp 0x1401af3b8
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
call sub.api_ms_win_crt_runtime_l1_1_0.dll__errno
mov dword [rax], SafeArrayPutElement
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo
mov eax, dword [rsp + 0x40]
xor ecx, ecx
mov word [rbx + rax*2], cx
mov r14, rbx
mov qword [rbp - 0x20], rbx
mov eax, dword [rbp - 0x60]
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1401af476
mov rcx, qword [rbp - 0x68]
mov qword [rsp + 0x48], rcx
lea ecx, [rax + 1]
mov qword [rsp + 0x58], rcx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1401e3f7c
mov rbx, rax
test rax, rax
jne 0x1401af41a
lea ecx, [rax + 0xe]
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x1401af739
mov rdi, qword [rsp + 0x58]
add rdi, rdi
mov r8, rdi
xor edx, edx
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
test rdi, rdi
je 0x1401af465
mov rax, qword [rsp + 0x48]
mov r8, rdi
mov rcx, rbx
test rax, rax
je 0x1401af44e
mov rdx, rax
call fcn.14021bb20
jmp 0x1401af465
xor edx, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
call sub.api_ms_win_crt_runtime_l1_1_0.dll__errno
mov dword [rax], SafeArrayPutElement
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo
mov eax, dword [rsp + 0x40]
xor ecx, ecx
mov word [rbx + rax*2], cx
mov rdi, rbx
mov qword [rbp - 0x18], rbx
xor r9d, r9d
movzx r8d, word [rbp - 0x7c]
mov rdx, r15
mov rcx, qword [r13 + 0x28]
call qword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov r10, rax
mov qword [r13 + 0x30], rax
test rax, rax
jne 0x1401af4a4
mov dword [r13 + 0x60], 1
jmp 0x1401af739
movzx eax, byte [r13 + 0x20]
neg al
sbb ecx, ecx
and ecx, 0x800000
lea rax, [0x14029a018]
lea rdx, str.POST
cmp dword [rbp + 0x60], 0
cmove rdx, rax
mov dword [rsp + 0x30], ecx
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, r12
mov rcx, r10
call qword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov qword [r13 + 0x38], rax
test rax, rax
je 0x1401af731
cmp qword [r13 + 0xb8], 0
je 0x1401af595
mov rbx, qword [r13 + 0xb0]
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
jne 0x1401af595
nop word [rax + rax]
mov rax, qword [rbx + 0x1c]
mov qword [rsp + 0x50], rax
mov r9d, 4
lea r8, [rsp + 0x54]
mov edx, eax
mov rcx, qword [r13 + 0x38]
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x1401af56c
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1401af567
cmp rbx, qword [rax + 0x10]
jne 0x1401af567
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1401af554
mov rbx, rax
jmp 0x1401af58f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x1401af58f
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x1401af580
cmp byte [rbx + 0x19], 0
je 0x1401af520
cmp byte [r13 + 0x20], 0
je 0x1401af5bd
mov dword [rsp + 0x40], 0x3301
mov r9d, 4
lea r8, [rsp + 0x40]
lea edx, [r9 + 0x1b]
mov rcx, qword [r13 + 0x38]
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
call fcn.1401e6a0c
mov rbx, rax
call fcn.1401e69f0
cqo
idiv rbx
imul r12, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add r12, rax
mov eax, dword [rbp + 0x78]
mov r9, qword [rbp + 0x70]
test r9, r9
mov r8d, 0
cmove eax, r8d
mov rcx, qword [r13 + 0x38]
mov rdx, qword [rbp + 0x80]
mov qword [rsp + 0x30], r8
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
test rdx, rdx
je 0x1401af61c
mov r8d, 0xffffffff
call qword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
cmp eax, 1
sete al
test al, al
jne 0x1401af6c6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
xor r12d, r12d
mov qword [rbp + 0x68], r12
lea rcx, str.winhttp.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rdx, rax
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
lea rax, [rbp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, 0x409
mov r8d, ebx
mov ecx, 0xb00
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov qword [rbp - 0x10], r12
mov qword [rbp], r12
mov qword [rbp + 8], 7
lea r8d, [r12 + 0xf]
lea rdx, str._s:__0x_08x___s
lea rcx, [rbp - 0x10]
call fcn.1400e83c0
mov r9, qword [rbp + 0x68]
mov r8d, ebx
lea rdx, str.SendHttpRequest_failed:
lea rcx, [rbp - 0x10]
call fcn.14017ee40
mov rcx, qword [rbp + 0x68]
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [r13 + 0x60], 3
jmp 0x1401af739
xor edx, edx
mov rcx, qword [r13 + 0x38]
call qword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
je 0x1401af731
call fcn.1401e6a0c
mov rbx, rax
call fcn.1401e69f0
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rcx, rax
sub rcx, r12
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rbp + 0x68]
mov qword [rax + 0xf0], rdx
xor eax, eax
mov dword [r13 + 0x60], eax
mov bl, 1
jmp 0x1401af73b
mov dword [r13 + 0x60], 2
xor bl, bl
test rdi, rdi
je 0x1401af749
mov rcx, rdi
call fcn.1401e3efc
nop
test r14, r14
je 0x1401af757
mov rcx, r14
call fcn.1401e3efc
nop
test rsi, rsi
je 0x1401af765
mov rcx, rsi
call fcn.1401e3efc
nop
test r15, r15
je 0x1401af772
mov rcx, r15
call fcn.1401e3efc
movzx eax, bl
mov rbx, qword [rsp + 0x150]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret