Function at 0x140025990
Capabilities:
Initialize winhttp library
Prepare http request
Receive http response

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xe8
mov rax, qword [0x1400aa140]
xor rax, rsp
mov qword [rbp - 0x11], rax
mov rsi, r9
mov rbx, r8
mov r10, rdx
mov r15, rcx
mov qword [rbp - 0x61], rcx
mov r14, qword [rbp + 0x6f]
mov r12, qword [rbp + 0x77]
mov qword [rbp - 0x59], r12
mov rax, qword [rbp + 0x7f]
mov qword [rsp + 0x60], rax
mov r13, qword [rbp + 0x8f]
mov eax, dword [rbp + 0x97]
mov dword [rsp + 0x44], eax
mov rax, qword [rbp + 0x9f]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0xa7]
mov qword [rsp + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
xor edi, edi
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], 7
mov word [rcx], di
movups xmmword [rcx + 0x20], xmm0
mov qword [rcx + 0x30], rdi
mov qword [rcx + 0x38], 7
mov word [rcx + 0x20], di
mov qword [rcx + 0x40], rdi
mov qword [rcx + 0x48], rdi
mov dword [rcx + 0x50], edi
mov rax, qword [0x1400af1d0]
nop
test rax, rax
jne 0x140025a64
mov dword [rsp + 0x20], edi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, r10
call qword [sym.imp.WINHTTP.dll_WinHttpOpen]
xchg qword [0x1400af1d0], rax
mov rax, qword [0x1400af1d0]
nop
test rax, rax
je 0x140025e3f
mov rcx, qword [0x1400af1d0]
nop
xor r9d, r9d
movzx r8d, word [rbp + 0x87]
mov rdx, rbx
call qword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov r10, rax
mov qword [rbp - 0x71], rax
mov rdi, rax
mov qword [rbp - 0x79], rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x140025e1a
mov ecx, dword [rsp + 0x44]
mov dword [rsp + 0x30], ecx
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], r13
mov r9, qword [rsp + 0x58]
mov r8, r14
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov r13, rax
mov rbx, rax
mov qword [rbp - 0x69], rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x140025df7
mov eax, dword [r12 + 0x10]
cmp qword [r12 + 0x10], 0
jne 0x140025b03
xor r14d, r14d
mov r9d, r14d
jmp 0x140025b15
mov r9, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x140025b12
mov r9, qword [r12]
xor r14d, r14d
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
mov r8d, 0xffffffff
mov rdx, qword [rsp + 0x60]
mov rcx, r13
call qword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
je 0x140025df7
xor edx, edx
mov rcx, r13
call qword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
xorps xmm0, xmm0
movups xmmword [rbp - 0x51], xmm0
mov qword [rbp - 0x41], r14
mov qword [rbp - 0x39], 0xf
mov byte [rbp - 0x51], 0
mov dword [rsp + 0x40], r14d
lea rdx, [rsp + 0x40]
mov rcx, r13
call qword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
mov r8d, dword [rsp + 0x40]
test r8d, r8d
je 0x140025cac
mov edi, r8d
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x31], xmm0
mov rsi, r14
mov qword [rbp - 0x21], r14
mov rbx, r14
cmp r8, 0x1000
jb 0x140025bc8
lea rcx, [r8 + 0x27]
cmp rcx, r8
jbe 0x140025ec9
call fcn.140074874
test rax, rax
je 0x140025ecf
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140025bd3
mov rcx, rdi
call fcn.140074874
mov rbx, rax
mov r14, rbx
mov qword [rbp - 0x31], rbx
lea rsi, [rbx + rdi]
mov qword [rbp - 0x21], rsi
mov r8, rdi
xor edx, edx
mov rcx, rbx
call sub.msvcrt.dll_memset
mov qword [rbp - 0x29], rsi
mov r8d, dword [rsp + 0x40]
lea r9, [rsp + 0x48]
mov rdx, rbx
mov rcx, r13
call qword [sym.imp.WINHTTP.dll_WinHttpReadData]
mov r14d, dword [rsp + 0x48]
mov rcx, qword [rbp - 0x41]
mov rdx, qword [rbp - 0x39]
mov rax, rdx
sub rax, rcx
cmp r14, rax
ja 0x140025c4e
lea rax, [r14 + rcx]
mov qword [rbp - 0x41], rax
lea rdi, [rbp - 0x51]
cmp rdx, 0xf
cmova rdi, qword [rbp - 0x51]
add rdi, rcx
mov r8d, r14d
mov rdx, rbx
mov rcx, rdi
call sub.msvcrt.dll_memmove
mov byte [rdi + r14], 0
jmp 0x140025c66
mov qword [rsp + 0x20], r14
mov r9, rbx
xor r8d, r8d
mov rdx, r14
lea rcx, [rbp - 0x51]
call fcn.140003830
nop
test rbx, rbx
je 0x140025c9e
sub rsi, rbx
cmp rsi, 0x1000
jb 0x140025c93
add rsi, 0x27
mov rax, qword [rbx - 8]
sub rbx, rax
add rbx, 0xfffffffffffffff8
cmp rbx, 0x1f
ja 0x140025ecf
mov rbx, rax
mov rdx, rsi
mov rcx, rbx
call fcn.1400748b0
xor r14d, r14d
cmp dword [rsp + 0x40], r14d
ja 0x140025b60
lea rdx, [rbp - 0x51]
lea rcx, [rbp - 0x31]
call fcn.140045e50
mov rbx, rax
cmp r15, rax
je 0x140025d30
mov rdx, qword [r15 + 0x18]
cmp rdx, 7
jbe 0x140025d00
mov rcx, qword [r15]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140025cfb
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140025ec3
mov rcx, r8
call fcn.1400748b0
mov qword [r15 + 0x10], r14
mov qword [r15 + 0x18], 7
mov word [r15], r14w
movups xmm0, xmmword [rbx]
movups xmmword [r15], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [r15 + 0x10], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 7
mov word [rbx], r14w
mov rdx, qword [rbp - 0x19]
cmp rdx, 7
jbe 0x140025d70
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025d6b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025ec3
call fcn.1400748b0
mov rdi, r14
mov qword [rbp - 0x79], r14
mov rcx, qword [r15 + 0x40]
mov rax, qword [rbp - 0x71]
mov qword [r15 + 0x40], rax
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140025d97
mov rax, qword [0x14008b408]
call rax
nop
mov rbx, r14
mov qword [rbp - 0x69], rbx
mov rcx, qword [r15 + 0x48]
mov qword [r15 + 0x48], r13
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140025dba
mov rax, qword [0x14008b408]
call rax
nop
mov rdx, qword [rbp - 0x39]
cmp rdx, 0xf
jbe 0x140025e01
inc rdx
mov rcx, qword [rbp - 0x51]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025df0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025eb7
call fcn.1400748b0
jmp 0x140025e01
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [r15 + 0x50], eax
lea rax, [rbx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140025e18
mov rcx, rbx
mov rax, qword [0x14008b408]
call rax
nop
jmp 0x140025e24
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [r15 + 0x50], eax
lea rax, [rdi - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140025e3b
mov rcx, rdi
mov rax, qword [0x14008b408]
call rax
nop
xor edi, edi
jmp 0x140025e49
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [r15 + 0x50], eax
mov rdx, qword [r12 + 0x18]
cmp rdx, 0xf
jbe 0x140025e81
inc rdx
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x140025e7c
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140025ebd
mov rcx, r8
call fcn.1400748b0
mov qword [r12 + 0x10], rdi
mov qword [r12 + 0x18], 0xf
mov byte [r12], 0
mov rax, r15
mov rcx, qword [rbp - 0x11]
xor rcx, rsp
call fcn.1400749d0
add rsp, 0xe8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140078a60
nop
call fcn.140078a60
nop
call fcn.140078a60
int3
call fcn.14000cfc0
int3
call fcn.140078a60
int3