Function at 0x14006b090
Capabilities:
Get file size
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0xa0
mov ebp, r9d
movzx r15d, r8b
mov rsi, rdx
mov rbx, rcx
call fcn.14006b8a0
mov byte [rbx + 8], 0
mov byte [rbx + 9], r15b
xor r12d, r12d
test rsi, rsi
je 0x14006b0dc
mov rax, qword [rbx + 0x140]
test rax, rax
je 0x14006b0dc
cmp qword [rax], rsi
je 0x14006b13c
lea rcx, [rbx + 0x140]
call fcn.140005110
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetElement
call fcn.1400b5680
mov rdi, rax
mov qword [rsp + 0xd0], rax
test rax, rax
je 0x14006b129
mov qword [rax + 8], r12
mov dword [rax + 0x10], 1
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rdi], rax
test rax, rax
jne 0x14006b12c
test rsi, rsi
jne 0x14006b404
jmp 0x14006b12c
mov rdi, r12
mov qword [rbx + 0x140], rdi
test rdi, rdi
je 0x14006b40f
mov dword [rbx + 0x148], r12d
test rsi, rsi
je 0x14006b151
cmp word [rsi], 0
mov rax, r12
jne 0x14006b15b
movabs rax, 0x100000000
mov qword [rbx], rax
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp ebp, dword [rsp + 0x90]
cmovb ebp, dword [rsp + 0x90]
mov dword [rbx + 0xc], ebp
mov qword [rbx + 0x30], r12
mov qword [rbx + 0x38], r12
mov qword [rbx + 0x40], r12
mov qword [rbx + 0x58], r12
mov qword [rbx + 0x60], r12
mov qword [rbx + 0x68], r12
mov qword [rbx + 0x80], r12
mov qword [rbx + 0x88], r12
mov qword [rbx + 0x90], r12
mov qword [rbx + 0xa8], r12
mov qword [rbx + 0xb0], r12
mov qword [rbx + 0xb8], r12
mov qword [rbx + 0xd0], r12
mov qword [rbx + 0xd8], r12
mov qword [rbx + 0xe0], r12
mov qword [rbx + 0xf8], r12
mov qword [rbx + 0x100], r12
mov qword [rbx + 0x108], r12
mov rcx, qword [0x1401428c0]
add rcx, 0x10
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [0x1401428c0]
mov rbp, qword [rdi]
mov rax, qword [rbp + 8]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], r12d
mov rcx, rbp
cmp byte [rax + 0x19], 0
jne 0x14006b24a
nop dword [rax]
mov qword [rsp + 0x50], rax
cmp qword [rax + 0x20], rbx
jae 0x14006b236
mov dword [rsp + 0x58], r12d
mov rax, qword [rax + 0x10]
jmp 0x14006b244
mov dword [rsp + 0x58], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x14006b220
cmp byte [rcx + 0x19], 0
jne 0x14006b256
cmp rbx, qword [rcx + 0x20]
jae 0x14006b2b5
movabs rax, 0x666666666666666
cmp qword [rdi + 8], rax
je 0x14006b3fe
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], r12
mov ecx, 0x28
call fcn.1400b5680
nop
mov qword [rax + 0x20], rbx
mov qword [rax], rbp
mov qword [rax + 8], rbp
mov qword [rax + 0x10], rbp
mov word [rax + 0x18], 0
movups xmm0, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x40], xmm0
mov r8, rax
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400239d0
mov rdi, qword [0x1401428c0]
lea rcx, [rdi + 0x10]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdx, qword [rbx]
test rdx, rdx
je 0x14006b303
mov qword [rbx + 0x10], 0xffffffffffffffff
mov r9, rdx
shr r9, 0x20
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], edx
mov rcx, 0xffffffffffffffff
mov r8d, 0x4000004
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov qword [rbx + 0x18], rax
test rax, rax
setne al
jmp 0x14006b3e2
mov edi, 2
mov qword [rsp + 0x30], r12
xor r9d, r9d
mov edx, 0xc0000000
lea r8d, [rdi - 1]
mov rcx, rsi
mov dword [rsp + 0x28], r12d
test r15b, r15b
je 0x14006b370
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbx + 0x10], rax
cmp rax, 0xffffffffffffffff
jne 0x14006b37e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x14006b37e
mov byte [rbx + 8], 1
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [rdi - 1]
mov rcx, rsi
jmp 0x14006b374
mov dword [rsp + 0x20], edi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rbx + 0x10], rax
mov rcx, qword [rbx + 0x10]
cmp rcx, 0xffffffffffffffff
jne 0x14006b38c
xor al, al
jmp 0x14006b3e2
xor eax, eax
mov qword [rsp + 0xd0], rax
lea rdx, [rsp + 0xd4]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [rsp + 0xd0], eax
mov rax, qword [rsp + 0xd0]
mov qword [rbx + 0x20], rax
test r15b, r15b
je 0x14006b3e0
mov r8d, 4
cmp byte [rbx + 8], 0
cmovne r8d, edi
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov rcx, qword [rbx + 0x10]
jmp 0x14006b2ec
mov al, 1
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
call fcn.140023c30
nop
mov ecx, 0x8007000e
call fcn.1400b6f00
nop
mov ecx, 0x8007000e
call fcn.1400b6f00
int3