Function at 0x180163ae0
Capabilities:
Read file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x20]
sub rsp, 0x120
movaps xmmword [rsp + 0x110], xmm6
mov rax, qword [0x180672700]
xor rax, rsp
mov qword [rbp], rax
movaps xmm6, xmm2
mov rsi, rdx
mov r15, rcx
mov qword [rbp - 0x70], rdx
xor r12d, r12d
lea r9, [rcx + 0x18]
mov rcx, qword [r9 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 1
jb 0x180163ec0
cmp qword [r9 + 0x18], 0xf
jbe 0x180163b46
mov r9, qword [r9]
mov qword [rsp + 0x30], 1
lea rax, [0x180262394]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x20]
call fcn.18003f550
nop
mov rdx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x180163b77
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
lea rcx, [rbp - 0x20]
call fcn.1800422f0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rbp - 0x40]
mov rcx, rsi
call fcn.180040640
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x180163bea
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180163be4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180163ec6
call fcn.1801fc044
nop
mov rdx, qword [rbp - 8]
cmp rdx, 0xf
jbe 0x180163c25
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180163c20
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180163eba
call fcn.1801fc044
mov word [rbp - 0x68], r12w
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x66], xmm0
movups xmmword [rbp - 0x56], xmm0
mov dword [rbp - 0x46], eax
mov word [rbp - 0x42], ax
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r12
mov dword [rbp - 0x78], r12d
mov rcx, qword [rsi + 0x10]
inc rcx
call fcn.1801fc284
mov rbx, rax
mov rax, qword [rsi + 0x10]
mov byte [rbx + rax], 0
mov r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0xf
jbe 0x180163c76
add r8, qword [rsi]
mov rdx, qword [rsi]
jmp 0x180163c7c
add r8, rsi
mov rdx, rsi
sub r8, rdx
mov rcx, rbx
call fcn.18023b0c0
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r14, rax
cmp rax, 0xffffffffffffffff
jne 0x180163cdb
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
mov ebx, eax
jle 0x180163ccc
movzx ebx, ax
or ebx, 0x80070000
mov rcx, rsi
call fcn.18003f680
mov eax, ebx
jmp 0x180163e94
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
je 0x180163cb7
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x44]
mov r8d, 0x46464952
mov rdx, r14
call fcn.180163ed0
xor r9d, r9d
xor r8d, r8d
mov edx, dword [rsp + 0x40]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
je 0x180163d48
mov qword [rsp + 0x20], r12
lea r9, [rsp + 0x58]
mov r8d, 4
lea rdx, [rsp + 0x48]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x180163d4e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [rsp + 0x48], 0x45564157
je 0x180163d6a
mov rcx, rsi
call fcn.18003f680
mov eax, 1
jmp 0x180163e94
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x44]
mov r8d, 0x20746d66
mov rdx, r14
call fcn.180163ed0
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x20], eax
mov r9d, dword [rsp + 0x44]
lea r8, [rbp - 0x68]
mov rdx, r14
call fcn.180164080
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x44]
mov r8d, 0x61746164
mov rdx, r14
call fcn.180163ed0
mov edi, dword [rsp + 0x44]
mov ecx, edi
call fcn.1801fc284
mov rbx, rax
mov ecx, dword [rsp + 0x40]
mov dword [rsp + 0x20], ecx
mov r9d, edi
mov r8, rax
mov rdx, r14
call fcn.180164080
mov dword [rsp + 0x64], edi
mov qword [rsp + 0x68], rbx
mov dword [rsp + 0x60], 0x40
mov rcx, qword [r15 + 8]
mov rax, qword [rcx]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r12
movss xmm0, dword [0x18028f188]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x50]
call qword [rax + 0x28]
mov dword [r15], eax
test eax, eax
jns 0x180163e33
mov edx, eax
call fcn.180164120
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
xor r8d, r8d
lea rdx, [rsp + 0x60]
call qword [rax + 0xa8]
mov dword [r15], eax
test eax, eax
jns 0x180163e57
mov edx, eax
call fcn.180164120
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
xor r8d, r8d
movaps xmm1, xmm6
call qword [rax + 0x60]
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
xor r8d, r8d
xor edx, edx
call qword [rax + 0x98]
mov dword [r15], eax
test eax, eax
jns 0x180163e8a
mov edx, eax
call fcn.180164120
nop
mov rcx, rsi
call fcn.18003f680
xor eax, eax
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.1801fbc70
movaps xmm6, xmmword [rsp + 0x110]
add rsp, 0x120
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18020b15c
nop
call fcn.18003f4a0
nop
call fcn.18020b15c
int3