Function at 0x1801edee0
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
movaps xmmword [rsp + 0x240], xmm6
mov r14, r8
mov r12, rdx
mov rsi, rcx
mov rax, qword [0x1804a9038]
xor rax, rsp
mov qword [rsp + 0x238], rax
lea rdi, [rsp + 0x1b0]
mov r8d, 0x88
mov rcx, rdi
mov dl, 0xaa
call fcn.180366c80
mov qword [rdi - 0x18], rdi
mov qword [rdi - 0x10], rdi
lea rax, [rsp + 0x230]
mov qword [rdi - 8], rax
lea rdi, [rsp + 0x90]
mov r8d, 0x108
mov rcx, rdi
mov dl, 0xaa
call fcn.180366c80
mov qword [rdi - 0x18], rdi
mov qword [rdi - 0x10], rdi
lea rax, [rsp + 0x190]
mov qword [rdi - 8], rax
movaps xmm6, xmmword [0x1803ff180]
lea r15, [rsp + 0x60]
movaps xmmword [r15], xmm6
lea r8, [rsp + 0x198]
mov rcx, r12
mov rdx, r15
call fcn.1801ecad0
movaps xmm0, xmmword [r15]
movaps xmmword [rsp + 0x50], xmm0
cmp qword [rsp + 0x58], 4
jb 0x1801edfb3
mov rax, qword [rsp + 0x50]
cmp dword [rax], 0x5c2e5c5c
je 0x1801ee0e0
xor edi, edi
lea rbx, [0x18042c4d0]
lea r12, [rsp + 0x50]
lea r13, [rsp + 0x38]
jmp 0x1801ee0b4
movups xmmword [rsi], xmm6
lea rdx, [rsp + 0x38]
mov word [rdx + 0x10], 0x105
mov qword [rdx], r15
lea r8, [rsp + 0x78]
mov rcx, rsi
call fcn.1801ee3e0
cmp dword [rsi], 0
jne 0x1801ee111
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1801ee171
bt eax, 0xa
jae 0x1801ee04e
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2000000
mov dword [rsp + 0x20], 3
xor edx, edx
mov r8d, 7
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
je 0x1801ee171
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2000000
mov dword [rsp + 0x20], 3
xor edx, edx
mov r8d, 7
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
je 0x1801ee171
mov r15, rax
mov rcx, rsi
mov rdx, rax
mov r8, r14
call fcn.1801eecb0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1801ee111
add rdi, 8
cmp rdi, 0xb0
je 0x1801edfcb
mov rbp, qword [rdi + rbx]
mov rcx, rbp
call fcn.180384640
cmp qword [rsp + 0x58], rax
jne 0x1801ee0a3
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x40], rax
mov rcx, r12
mov rdx, r13
call fcn.1801f0010
test eax, eax
jne 0x1801ee0a3
xorps xmm0, xmm0
movups xmmword [r14 + 0x10], xmm0
movups xmmword [r14], xmm0
movabs rax, 0x600000000
mov qword [r14 + 0x20], rax
mov dword [r14 + 0x28], 0xffff
mov dword [rsi], 0
call fcn.1803aa360
mov qword [rsi + 8], rax
mov rcx, qword [rsp + 0x78]
lea rax, [rsp + 0x90]
cmp rcx, rax
je 0x1801ee128
call fcn.18037e050
mov rcx, qword [rsp + 0x198]
lea rax, [rsp + 0x1b0]
cmp rcx, rax
je 0x1801ee142
call fcn.18037e050
mov rcx, qword [rsp + 0x238]
xor rcx, rsp
call fcn.180364a40
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x240]
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
and ecx, 0xfffffffe
xorps xmm0, xmm0
cmp ecx, 2
jne 0x1801ee1b2
movups xmmword [r14 + 0x10], xmm0
movups xmmword [r14], xmm0
movabs rcx, 0x100000000
mov qword [r14 + 0x20], rcx
mov dword [r14 + 0x28], 0xffff
mov rcx, rsi
mov edx, eax
call fcn.1801ec6f0
jmp 0x1801ee111
cmp eax, 0x20
jne 0x1801ee1cc
movups xmmword [r14 + 0x10], xmm0
movups xmmword [r14], xmm0
movabs rcx, 0x900000000
jmp 0x1801ee197
movups xmmword [r14 + 0x10], xmm0
movups xmmword [r14], xmm0
mov qword [r14 + 0x20], 0
jmp 0x1801ee19b