Function at 0x1400f3500
Capabilities:
Check if file exists
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively
Get file attributes
Set file attributes

Disassembly:
mov byte [rsp + 0x10], dl
mov qword [rsp + 8], rcx
sub rsp, 0x2e8
mov rax, qword [0x1408fa960]
xor rax, rsp
mov qword [rsp + 0x2d0], rax
mov rdx, qword [rsp + 0x2f0]
lea rcx, [rsp + 0x60]
call fcn.140015150
nop
mov dword [rsp + 0x2c], 0
lea rdx, str..
lea rcx, [rsp + 0x60]
call fcn.14001efd0
movzx eax, byte [rsp + 0x2f8]
test eax, eax
je 0x1400f371c
lea rcx, [rsp + 0x60]
call fcn.14000c690
lea rdx, [rsp + 0x80]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0xffffffffffffffff
je 0x1400f3711
lea rdx, [0x14030c704]
lea rcx, [rsp + 0xac]
call fcn.14023676c
test eax, eax
je 0x1400f36f6
lea rdx, [0x14030c708]
lea rcx, [rsp + 0xac]
call fcn.14023676c
test eax, eax
je 0x1400f36f6
mov eax, dword [rsp + 0x80]
and eax, 0x400
test eax, eax
jne 0x1400f36f6
lea rdx, [rsp + 0xac]
lea rcx, [rsp + 0x40]
call fcn.14001e490
mov rcx, qword [rsp + 0x2f0]
call fcn.14000c690
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.14001e490
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x50]
lea rdx, [0x14030c710]
lea rcx, [rsp + 0x60]
call fcn.14001d950
mov eax, dword [rsp + 0x80]
and eax, 0x10
test eax, eax
je 0x1400f3667
mov dl, 1
lea rcx, [rsp + 0x60]
call fcn.1400f3500
movzx eax, al
test eax, eax
jne 0x1400f3662
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov byte [rsp + 0x20], 0
lea rcx, [rsp + 0x60]
call fcn.14000a800
movzx eax, byte [rsp + 0x20]
jmp 0x1400f37b3
jmp 0x1400f36f6
lea rcx, [rsp + 0x60]
call fcn.14000c690
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0xffffffff
je 0x1400f36b4
mov eax, dword [rsp + 0x24]
and eax, 1
test eax, eax
jbe 0x1400f36b4
mov eax, dword [rsp + 0x24]
and eax, 0xfffffffe
mov dword [rsp + 0x38], eax
lea rcx, [rsp + 0x60]
call fcn.14000c690
mov ecx, dword [rsp + 0x38]
mov edx, ecx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea rcx, [rsp + 0x60]
call fcn.14000c690
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0
jne 0x1400f36f6
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov byte [rsp + 0x21], 0
lea rcx, [rsp + 0x60]
call fcn.14000a800
movzx eax, byte [rsp + 0x21]
jmp 0x1400f37b3
lea rdx, [rsp + 0x80]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x1400f358a
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rcx, qword [rsp + 0x2f0]
call fcn.14000c690
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 0xffffffff
je 0x1400f376f
mov eax, dword [rsp + 0x28]
and eax, 1
test eax, eax
jbe 0x1400f376f
mov eax, dword [rsp + 0x28]
and eax, 0xfffffffe
mov dword [rsp + 0x3c], eax
mov rcx, qword [rsp + 0x2f0]
call fcn.14000c690
mov ecx, dword [rsp + 0x3c]
mov edx, ecx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov rcx, qword [rsp + 0x2f0]
call fcn.14000c690
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x1400f379f
mov byte [rsp + 0x22], 0
lea rcx, [rsp + 0x60]
call fcn.14000a800
movzx eax, byte [rsp + 0x22]
jmp 0x1400f37b3
mov byte [rsp + 0x23], 1
lea rcx, [rsp + 0x60]
call fcn.14000a800
movzx eax, byte [rsp + 0x23]
mov rcx, qword [rsp + 0x2d0]
xor rcx, rsp
call fcn.140222a60
add rsp, 0x2e8
ret