Function at 0x14010cbaa
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, 0x88
mov rdi, rcx
mov rax, qword [0x1401e5d38]
xor rax, rsp
mov qword [rsp + 0x80], rax
call fcn.14010c81c
mov esi, 0x1126
test al, al
jne 0x14010ce59
xorps xmm0, xmm0
lea r14, [rsp + 0x50]
movaps xmmword [r14], xmm0
mov qword [r14 + 0x10], 0
mov rcx, rdi
mov rdx, r14
call fcn.14010ce7f
mov esi, eax
mov rcx, r14
call fcn.14010cf42
mov ebx, eax
mov rcx, r14
mov rdx, r14
call fcn.14010d020
mov byte [rsp + 0x2b], bl
test bl, bl
jne 0x14010cc37
test sil, sil
jne 0x14010cc37
mov dword [rsp + 0x2c], 0x7b
test al, al
je 0x14010ce44
cmp byte [rsp + 0x2b], 0
jne 0x14010ccf0
lea rdx, [0x1401a85d0]
lea rsi, [rsp + 0x38]
mov rcx, rsi
call fcn.140001ad8
mov al, byte [rsp + 0x50]
test al, 1
je 0x14010cc6a
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
jmp 0x14010cc75
shr al, 1
movzx r8d, al
lea rdx, [rsp + 0x52]
mov rcx, rsi
call fcn.14002e5f6
mov bl, byte [rax]
mov sil, byte [rax + 1]
movzx edi, word [rax + 2]
mov ecx, dword [rax + 0xc]
mov dword [rsp + 0x78], ecx
mov rcx, qword [rax + 4]
mov qword [rsp + 0x70], rcx
mov r14, qword [rax + 0x10]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
test byte [rsp + 0x50], 1
je 0x14010ccba
mov rcx, qword [rsp + 0x60]
call fcn.140153cd8
mov byte [rsp + 0x50], bl
mov byte [rsp + 0x51], sil
mov word [rsp + 0x52], di
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x54], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x5c], eax
mov qword [rsp + 0x60], r14
test byte [rsp + 0x38], 1
je 0x14010ccf0
mov rcx, qword [rsp + 0x48]
call fcn.140153cd8
lea rdi, [rsp + 0x68]
mov r15, 0xffffffffffffffff
lea rbx, [rsp + 0x52]
xor r13d, r13d
lea rsi, [rsp + 0x38]
lea r14, [rsp + 0x50]
mov r12, qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov qword [rsp + 0x20], rdi
mov rcx, rsi
mov rdx, r14
xor r8d, r8d
mov r9, r15
call fcn.14002e82c
test byte [rsp + 0x50], 1
je 0x14010cd3c
mov rcx, qword [rsp + 0x60]
call fcn.140153cd8
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x60], rcx
movups xmm0, xmmword [rsp + 0x38]
movaps xmmword [rsp + 0x50], xmm0
test byte [rsp + 0x50], 1
cmove rcx, rbx
call r12
cmp eax, 0xffffffff
je 0x14010cd70
bt eax, 0xa
jae 0x14010cded
jmp 0x14010ce2d
mov qword [rsp + 0x30], r13
mov r13, rsi
mov rsi, rbx
mov rbx, rdi
xor edi, edi
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r12d, eax
lea ebp, [r12 - 2]
cmp ebp, 2
jb 0x14010cdd2
cmp r12d, 0x7b
je 0x14010cdd2
test byte [rsp + 0x30], 1
sete al
or al, byte [rsp + 0x2b]
jne 0x14010cdc5
mov rcx, r14
mov dx, 0x5c
mov r8, 0xffffffffffffffff
call fcn.14002eba4
mov edi, 2
cmp rax, 3
je 0x14010cdd2
mov edi, 1
mov eax, r12d
mov dword [rsp + 0x2c], r12d
cmp ebp, 2
jb 0x14010cddd
cmp r12d, 0x7b
jne 0x14010ce12
mov rdi, rbx
mov rbx, rsi
mov rsi, r13
mov r12, qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov rcx, r14
mov dx, 0x5c
mov r8, 0xffffffffffffffff
call fcn.14002eba4
mov r15, rax
mov r13b, 1
cmp r15, 2
ja 0x14010cd15
jmp 0x14010ce3c
test edi, edi
jne 0x14010ce37
mov rdi, rbx
mov rbx, rsi
mov rsi, r13
mov r12, qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov r13, qword [rsp + 0x30]
jmp 0x14010ce06
mov dword [rsp + 0x2c], 0
jmp 0x14010ce44
cmp edi, 2
jne 0x14010ce44
mov dword [rsp + 0x2c], 0x1126
test byte [rsp + 0x50], 1
je 0x14010ce55
mov rcx, qword [rsp + 0x60]
call fcn.140153cd8
mov esi, dword [rsp + 0x2c]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140154030
mov eax, esi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret