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 [0x140188028]
xor rax, rsp
mov qword [rsp + 0xb0], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r14, [rsp + 0x60]
mov qword [r14 + 0x40], rax
movaps xmm0, xmmword [0x140158be0]
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.140045910
mov rcx, r14
mov rdx, rbx
xor r8d, r8d
call fcn.14004b480
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 0x140065ee2
test al, al
jns 0x140065e3f
cmp rcx, 0x104
jae 0x140066008
mov rcx, rsi
mov rdx, rbx
call fcn.140047400
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 0x140065f96
lea r15, [rbx + rax*2]
lea rax, [0x140161824]
mov r14, rbx
movzx ecx, word [r14]
xor edx, edx
cmp cx, word [rdx + rax]
je 0x140065e9b
add rdx, 2
cmp rdx, 4
jne 0x140065e7f
add r14, 2
cmp r14, r15
jne 0x140065e79
mov r14, r15
lea rcx, [rsp + 0x40]
call fcn.140045cb0
cmp r14, r15
je 0x140065eb7
sub r14, rbx
cmp r14, 0xfffffffffffffffe
jne 0x140065fb1
cmp byte [rsi + 0x17], 0
mov rcx, rsi
jns 0x140065ec3
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x140065f11
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x140065ff1
lea rcx, [rsp + 0x60]
call fcn.14004b4e0
mov sil, 1
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.1400a2770
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 0x140066045
test bl, 0x10
je 0x140065f78
test dil, 1
je 0x140065f59
lea rdx, [0x14016182a]
lea rbx, [rsp + 0x40]
mov rcx, rbx
call fcn.14005f1f6
mov rcx, rsi
mov rdx, rbx
mov r8d, edi
call fcn.140066b10
mov ebp, eax
cmp byte [rbx + 0x17], 0
js 0x140065fa5
test ebp, ebp
jne 0x14006602c
cmp byte [rsi + 0x17], 0
jns 0x140065f62
mov rsi, qword [rsi]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x140065ee2
jmp 0x140065ece
test dil, 2
jne 0x140066069
cmp byte [rsi + 0x17], 0
jns 0x140065f8b
mov rsi, qword [rsi]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x140065f6b
lea rcx, [rsp + 0x40]
call fcn.140045cb0
jmp 0x140065eb7
mov rcx, qword [rsp + 0x40]
call fcn.1400a12ec
jmp 0x140065f51
lea rbx, [rsp + 0x40]
mov rcx, rsi
mov rdx, rbx
call fcn.140047400
lea r14, [rsp + 0x28]
mov rcx, rsi
mov rdx, r14
call fcn.140046d90
mov rcx, r14
mov rdx, rbx
mov r8d, edi
call fcn.140066b10
mov ebp, eax
mov rcx, r14
call fcn.140045cb0
mov rcx, rbx
call fcn.140045cb0
lea rcx, [rsp + 0x60]
call fcn.14004b4e0
mov sil, 1
test ebp, ebp
je 0x140065eef
jmp 0x140066036
lea r9, [0x1401617dc]
mov r8d, 4
mov rcx, rsi
xor edx, edx
call fcn.14010967e
mov ebp, 0xa1
test eax, eax
je 0x140065e3f
lea rcx, [rsp + 0x60]
call fcn.14004b4e0
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor esi, esi
jmp 0x140065eef
mov edx, ebx
and edx, 0xfffffffe
cmp byte [rsi + 0x17], 0
mov rcx, rsi
jns 0x140066056
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test eax, eax
jne 0x140065f1c
jmp 0x140065ece
call fcn.14004d050
xor edx, edx
cmp eax, 0xd
setge dl
shl edx, 4
or edx, 2
mov rcx, rsi
call fcn.14010acd0
test al, al
jne 0x140065ee2
jmp 0x140065ece