Function at 0x14002ab54
Capabilities:
Read file via mapping

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x14008e3a8]
xor rax, rsp
mov qword [rbp], rax
mov edi, dword [rbp + 0x70]
mov r15, r9
mov r14, rdx
mov rbx, rcx
cmp edi, 0x4000
ja 0x14002ad99
xor r12d, r12d
test r8d, r8d
jne 0x14002ad99
test rcx, rcx
je 0x14002abac
cmp word [rcx], r12w
je 0x14002ad99
call fcn.140032e88
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0x10]
mov rcx, rax
call fcn.14003bfcc
test al, al
je 0x14002ad92
call fcn.1400336dc
mov rsi, rax
test rax, rax
je 0x14002ad92
xorps xmm0, xmm0
mov qword [rsp + 0x28], r12
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
mov r8d, 0x8000004
or rcx, 0xffffffffffffffff
movdqu xmmword [rsp + 0x40], xmm0
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140019778
mov r10, qword [rsp + 0x40]
lea rax, [r10 - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14002ac45
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov rcx, r10
lea edx, [r9 + 6]
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov r10, qword [rsp + 0x40]
mov rcx, rax
mov qword [rsp + 0x48], rax
jmp 0x14002ac4a
mov rcx, qword [rsp + 0x48]
lea rax, [r10 - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14002ad4a
test rcx, rcx
je 0x14002ad4a
movdqa xmm0, xmmword [0x140077cb0]
mov word [rbp - 0x80], r12w
mov qword [rsp + 0x58], r12
movdqu xmmword [rbp - 0x70], xmm0
test rbx, rbx
je 0x14002ac9b
cmp word [rbx], r12w
jne 0x14002ac8d
mov ebx, 0xc000000d
jmp 0x14002ad35
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.14002af04
jmp 0x14002aca0
mov qword [rsp + 0x58], r14
xor edx, edx
lea rcx, [rbp - 0x60]
lea r8d, [rdx + 0x58]
call sub.VCRUNTIME140.dll_memset
mov rdx, rsi
lea rcx, [rsp + 0x70]
call fcn.1400388c0
mov rax, qword [rsp + 0x40]
lea r9, [rsp + 0x58]
cmp qword [rbp - 0x68], 8
lea r8, [rsp + 0x68]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x70]
lea rax, [rbp - 0x80]
mov dword [rsp + 0x50], edi
cmovae rax, qword [rbp - 0x80]
mov edx, 0x1a
mov qword [rsp + 0x68], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
call fcn.14002a4a4
test eax, eax
je 0x14002ad1e
mov ebx, 0xc0000022
jmp 0x14002ad35
mov ebx, dword [rbp - 0x58]
test ebx, ebx
jne 0x14002ad35
mov rdx, qword [rsp + 0x48]
mov r8, rdi
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbp - 0x80]
call fcn.140019930
mov rcx, qword [rsp + 0x48]
mov r10, qword [rsp + 0x40]
jmp 0x14002ad4f
mov ebx, 0xc000000d
test rcx, rcx
je 0x14002ad5f
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov r10, qword [rsp + 0x40]
lea rcx, [r10 - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x14002ad8e
call fcn.14003fad0
mov r8, qword [rbp + 0x48]
lea rdx, [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov r9, rax
call fcn.14003fcb0
mov rcx, qword [rsp + 0x40]
call fcn.14003fc30
mov eax, ebx
jmp 0x14002ad9e
mov eax, 0xc0000022
jmp 0x14002ad9e
mov eax, 0xc000000d
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.140075580
add rsp, 0x110
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rcx, rdx
xor edx, edx
jmp 0x14002ab54