Function at 0x140065d80
Capabilities:
Check if file exists
Delete directory
Delete file

Disassembly:
xor edx, edx
jmp 0x140065d90
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov edi, edx
mov rsi, rcx
mov rax, qword [0x140190028]
xor rax, rsp
mov qword [rsp + 0xb0], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r14, [rsp + 0x60]
mov qword [r14 + 0x40], rax
movaps xmm0, xmmword [0x140163e40]
movaps xmmword [r14 + 0x30], xmm0
movaps xmmword [r14 + 0x20], xmm0
movaps xmmword [r14 + 0x10], xmm0
movaps xmmword [r14], xmm0
lea rdx, str.DoDeleteFile
lea r8, str....._base_files_file_util_win.cc
lea rbx, [rsp + 0x40]
mov rcx, rbx
mov r9d, 0x14d
call fcn.14003af60
mov rcx, r14
mov rdx, rbx
xor r8d, r8d
call fcn.1400406c0
movzx eax, byte [rsi + 0x17]
mov edx, eax
and edx, 0x7f
test al, al
mov rcx, qword [rsi + 8]
cmovs rdx, rcx
test rdx, rdx
je 0x140065ed7
test al, al
jns 0x140065e3f
cmp rcx, 0x104
jae 0x140065fa2
mov rcx, rsi
mov rdx, rbx
call fcn.14003cba0
movzx eax, byte [rsp + 0x57]
test al, al
js 0x140065e58
and eax, 0x7f
jmp 0x140065e62
mov rax, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
test rax, rax
je 0x140065f87
lea r15, [rbx + rax*2]
add rax, rax
mov r14, rbx
movzx ecx, word [r14]
cmp ecx, 0x2a
je 0x140065e90
cmp ecx, 0x3f
je 0x140065e90
add r14, 2
add rax, 0xfffffffffffffffe
jne 0x140065e75
mov r14, r15
lea rcx, [rsp + 0x40]
call fcn.14003b370
cmp r14, r15
je 0x140065eac
sub r14, rbx
cmp r14, 0xfffffffffffffffe
jne 0x140065fdf
cmp byte [rsi + 0x17], 0
mov rcx, rsi
jns 0x140065eb8
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x140065f06
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x14006601f
lea rcx, [rsp + 0x60]
call fcn.140040900
mov sil, 1
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.1400a5d70
mov eax, esi
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
mov ebx, eax
test bl, 1
jne 0x140066036
test bl, 0x10
je 0x140065f69
test dil, 1
je 0x140065f4a
lea rdx, [0x14016d5f4]
lea rbx, [rsp + 0x40]
mov rcx, rbx
call fcn.140058b50
mov rcx, rsi
mov rdx, rbx
mov r8d, edi
call fcn.140066b00
mov ebp, eax
cmp byte [rbx + 0x17], 0
js 0x140065f96
test ebp, ebp
jne 0x140065fc6
cmp byte [rsi + 0x17], 0
jns 0x140065f53
mov rsi, qword [rsi]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x140065ed7
jmp 0x140065ec3
test dil, 2
jne 0x14006605a
cmp byte [rsi + 0x17], 0
jns 0x140065f7c
mov rsi, qword [rsi]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x140065f5c
lea rcx, [rsp + 0x40]
call fcn.14003b370
jmp 0x140065eac
mov rcx, qword [rsp + 0x40]
call fcn.1400a484c
jmp 0x140065f46
lea r9, str.__
mov r8d, 4
mov rcx, rsi
xor edx, edx
call fcn.14011172a
mov ebp, 0xa1
test eax, eax
je 0x140065e3f
lea rcx, [rsp + 0x60]
call fcn.140040900
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor esi, esi
jmp 0x140065ee4
lea rbx, [rsp + 0x40]
mov rcx, rsi
mov rdx, rbx
call fcn.14003cba0
lea r14, [rsp + 0x28]
mov rcx, rsi
mov rdx, r14
call fcn.14003c490
mov rcx, r14
mov rdx, rbx
mov r8d, edi
call fcn.140066b00
mov ebp, eax
mov rcx, r14
call fcn.14003b370
mov rcx, rbx
call fcn.14003b370
lea rcx, [rsp + 0x60]
call fcn.140040900
mov sil, 1
test ebp, ebp
je 0x140065ee4
jmp 0x140065fd0
mov edx, ebx
and edx, 0xfffffffe
cmp byte [rsi + 0x17], 0
mov rcx, rsi
jns 0x140066047
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test eax, eax
jne 0x140065f11
jmp 0x140065ec3
call fcn.140042030
xor edx, edx
cmp eax, 0xd
setge dl
shl edx, 4
or edx, 2
mov rcx, rsi
call fcn.140112ba0
test al, al
jne 0x140065ed7
jmp 0x140065ec3