Function at 0x14013a2c6
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 rbx, rcx
mov rax, qword [0x14030f948]
xor rax, rsp
mov qword [rsp + 0x80], rax
call fcn.140139f74
mov edi, 0x1126
test al, al
jne 0x14013a566
xorps xmm0, xmm0
lea rsi, [rsp + 0x50]
movaps xmmword [rsi], xmm0
mov qword [rsi + 0x10], 0
mov rcx, rbx
mov rdx, rsi
call fcn.14013a58c
mov ebx, eax
mov rcx, rsi
call fcn.14013a672
mov edi, eax
mov rcx, rsi
mov rdx, rsi
call fcn.14013a6b0
test bl, bl
jne 0x14013a34c
test dil, dil
jne 0x14013a34c
test al, al
jne 0x14013a34c
mov edi, 0x7b
jmp 0x14013a556
test dil, dil
je 0x14013a361
lea rsi, [rsp + 0x50]
mov al, 1
mov dword [rsp + 0x34], eax
jmp 0x14013a443
lea rdx, [0x1401ddf00]
lea rdi, [rsp + 0x38]
mov rcx, rdi
call fcn.1400036d8
lea rbp, [rsp + 0x58]
movzx r8d, byte [rbp + 0xf]
test r8b, r8b
cmovs r8, qword [rbp]
lea rsi, [rsp + 0x50]
mov rdx, qword [rsi]
cmovns rdx, rsi
mov rcx, rdi
call fcn.140065ec4
mov rdi, qword [rax]
mov rcx, qword [rax + 8]
mov rdx, qword [rax + 0xf]
mov qword [rsp + 0x77], rdx
mov qword [rsp + 0x70], rcx
mov bl, byte [rax + 0x17]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
xor eax, eax
cmp byte [rsi + 0x17], al
js 0x14013a3d6
mov word [rsp + 0x50], 0
mov byte [rsp + 0x67], 0
jmp 0x14013a403
mov rax, qword [rsp + 0x50]
mov word [rax], 0
mov qword [rsp + 0x58], 0
cmp byte [rsp + 0x67], 0
jns 0x14013a403
mov rcx, qword [rsp + 0x50]
call fcn.140183668
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x50], rdi
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x77]
mov qword [rbp + 7], rcx
mov qword [rbp], rax
mov byte [rsp + 0x67], bl
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x77], rax
cmp byte [rsp + 0x4f], 0
jns 0x14013a43b
mov rcx, qword [rsp + 0x38]
call fcn.140183668
mov dword [rsp + 0x34], 0
mov rax, 0xffffffffffffffff
lea r12, [rsp + 0x68]
xor r15d, r15d
lea r14, [rsp + 0x38]
lea rbx, [rsp + 0x50]
mov rbp, qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov r13, qword [sym.imp.KERNEL32.dll_GetLastError]
mov qword [rsp + 0x20], r12
mov rcx, r14
mov rdx, rbx
xor r8d, r8d
mov r9, rax
call fcn.140065a88
cmp byte [rsi + 0x17], 0
js 0x14013a493
mov word [rsp + 0x50], 0
mov byte [rsi + 0x17], 0
jmp 0x14013a4bf
mov rax, qword [rsp + 0x50]
mov word [rax], 0
mov qword [rsp + 0x58], 0
cmp byte [rsi + 0x17], 0
jns 0x14013a4bf
mov rcx, qword [rsp + 0x50]
call fcn.140183668
mov qword [rsp + 0x60], 0
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [rsp + 0x38]
movaps xmmword [rsp + 0x50], xmm0
cmp byte [rsi + 0x17], 0
mov rcx, rsi
jns 0x14013a4e1
mov rcx, qword [rsp + 0x50]
call rbp
cmp eax, 0xffffffff
je 0x14013a4f0
bt eax, 0xa
jae 0x14013a502
jmp 0x14013a529
call r13
mov edi, eax
lea eax, [rdi - 2]
cmp eax, 2
jb 0x14013a502
cmp edi, 0x7b
jne 0x14013a52d
mov rcx, rbx
mov dx, 0x5c
mov r8, 0xffffffffffffffff
call fcn.14006675a
mov r15b, 1
cmp rax, 2
ja 0x14013a46a
mov edi, 0x1126
jmp 0x14013a556
xor edi, edi
jmp 0x14013a556
test r15b, r15b
sete al
mov ecx, dword [rsp + 0x34]
or cl, al
jne 0x14013a556
lea rcx, [rsp + 0x50]
mov dx, 0x5c
mov r8, 0xffffffffffffffff
call fcn.14006675a
cmp rax, 3
je 0x14013a522
cmp byte [rsi + 0x17], 0
jns 0x14013a566
mov rcx, qword [rsp + 0x50]
call fcn.140183668
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140183a80
mov eax, edi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret