Function at 0x14003de40
Capabilities:
Check if file exists
Delete directory
Delete file
Get file attributes
Set file attributes

Disassembly:
xor edx, edx
jmp 0x14003de40
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb0
mov ebx, edx
mov rsi, rcx
mov rax, qword [0x1401c2c08]
xor rax, rsp
mov qword [rsp + 0xa8], rax
movaps xmm0, xmmword [section..rdata]
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
lea rdx, str.DoDeleteFile
lea r8, str....._base_files_file_util_win.cc
lea rdi, [rsp + 0x40]
mov rcx, rdi
mov r9d, 0x106
call fcn.140054d70
lea rcx, [rsp + 0x60]
mov rdx, rdi
xor r8d, r8d
call fcn.140043ee0
movzx eax, byte [rsi]
test al, 1
jne 0x14003dec6
test al, al
jne 0x14003deef
jmp 0x14003e074
mov rax, qword [rsi + 8]
test rax, rax
je 0x14003e074
mov ebp, 0xa1
cmp rax, 0x103
jbe 0x14003deef
lea rcx, [rsp + 0x60]
call fcn.140043f40
jmp 0x14003e091
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140057550
movzx eax, byte [rsp + 0x40]
test al, 1
je 0x14003df19
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
test rax, rax
jne 0x14003df25
jmp 0x14003dfa3
shr eax, 1
lea rcx, [rsp + 0x42]
test rax, rax
je 0x14003dfa3
add rax, rax
xor edi, edi
nop word [rax + rax]
movzx edx, word [rcx + rdi]
cmp edx, 0x2a
je 0x14003df49
cmp edx, 0x3f
je 0x14003df49
add rdi, 2
cmp rax, rdi
jne 0x14003df30
jmp 0x14003dfa3
cmp rax, rdi
je 0x14003dfa3
lea rcx, [rsp + 0x40]
call fcn.1400568a0
cmp rdi, 0xfffffffffffffffe
je 0x14003dfad
lea rdi, [rsp + 0x40]
mov rcx, rsi
mov rdx, rdi
call fcn.140057550
lea r14, [rsp + 0x28]
mov rcx, rsi
mov rdx, r14
call fcn.140057230
mov rcx, r14
mov rdx, rdi
mov r8d, ebx
call fcn.14003f7d0
mov ebp, eax
mov rcx, r14
call fcn.1400568a0
mov rcx, rdi
call fcn.1400568a0
jmp 0x14003e083
lea rcx, [rsp + 0x40]
call fcn.1400568a0
lea rdi, [rsi + 2]
test byte [rsi], 1
mov rcx, rdi
je 0x14003dfbd
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14003e064
mov ebp, eax
test bpl, 1
je 0x14003dfef
mov edx, ebp
and edx, 0xfffffffe
test byte [rsi], 1
mov rcx, rdi
je 0x14003dfe5
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test eax, eax
je 0x14003e064
test bpl, 0x10
jne 0x14003e00d
test byte [rsi], 1
je 0x14003dffe
mov rdi, qword [rsi + 0x10]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x14003e074
jmp 0x14003e064
test bl, bl
je 0x14003e04e
lea rdx, [0x140189e9a]
lea rbx, [rsp + 0x40]
mov rcx, rbx
call fcn.140001b3c
mov rcx, rsi
mov rdx, rbx
mov r8b, 1
call fcn.14003f7d0
mov ebp, eax
test byte [rsp + 0x40], 1
je 0x14003e046
mov rcx, qword [rsp + 0x50]
call fcn.1401438d8
test ebp, ebp
jne 0x14003dee0
test byte [rsi], 1
je 0x14003e057
mov rdi, qword [rsi + 0x10]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x14003e074
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x14003e083
lea rcx, [rsp + 0x60]
call fcn.140043f40
mov sil, 1
jmp 0x14003e09b
lea rcx, [rsp + 0x60]
call fcn.140043f40
test ebp, ebp
je 0x14003e0bb
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor esi, esi
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.140143c30
mov eax, esi
add rsp, 0xb0
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
mov sil, 1
jmp 0x14003e09b