Function at 0x1400dfca0
Capabilities:
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x1140]
mov eax, 0x1240
call fcn.14010f350
sub rsp, rax
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x1280], rbx
mov rax, qword [0x1401dd1d8]
xor rax, rsp
mov qword [rbp + 0x1130], rax
mov rsi, rdx
mov r14, rcx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__1]
nop
lea rcx, [rsp + 0x20]
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::HitTest]
test al, al
jne 0x1400dff63
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x28]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__4]
mov rcx, rax
call fcn.1400f7cf0
test al, al
je 0x1400dff63
mov rcx, r14
lea rdx, [rbp + 0x960]
sub rdx, r14
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x1400dfd40
lea rcx, [rbp + 0x960]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x1400dfd60
mov eax, dword [0x14017e5c4]
mov dword [rcx], eax
movzx eax, word [0x14017e5c8]
mov word [rcx + 4], ax
mov rcx, r14
lea rbx, [rbp + 0x190]
sub rbx, r14
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rbx + rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x1400dfd90
lea rcx, [rbp + 0x190]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x1400dfdb0
mov eax, dword [0x14015a1b0]
mov dword [rcx], eax
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x960]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x1400dff63
xor edi, edi
mov edx, edi
nop word [rax + rax]
movzx ecx, word [rbp + rdx + 0x190]
mov word [rbp + rdx + 0x960], cx
lea rdx, [rdx + 2]
test cx, cx
jne 0x1400dfdf0
nop dword [rax]
lea rdx, [rsp + 0x40]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x1400dff3e
lea rcx, [rsp + 0x6c]
call fcn.1400eee70
test eax, eax
jne 0x1400dfe10
mov rax, r14
nop word [rax + rax]
movzx ecx, word [rax]
mov word [rbx + rax], cx
lea rax, [rax + 2]
test cx, cx
jne 0x1400dfe40
lea rcx, [rbp + 0x190]
sub rcx, 2
nop dword [rax + rax]
lea rcx, [rcx + 2]
cmp word [rcx], di
jne 0x1400dfe60
mov eax, dword [0x14015a1b0]
mov dword [rcx], eax
lea rcx, [rbp + 0x190]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], di
jne 0x1400dfe80
lea r8, [rsp + 0x6c]
xor edx, edx
movzx eax, word [r8 + rdx*2]
mov word [rcx + rdx*2], ax
lea rdx, [rdx + 1]
test ax, ax
jne 0x1400dfe90
test byte [rsp + 0x40], 0x10
je 0x1400dff0e
movzx eax, word [rsi]
cmp ax, word [0x14014a9e0]
je 0x1400dfecd
mov rdx, rsi
lea rcx, [rbp + 0x190]
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x1400dfe10
mov rdx, rsi
lea rcx, [rbp + 0x190]
call fcn.1400dfca0
lea rcx, [rbp + 0x190]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov rcx, rdi
nop dword [rax]
movzx eax, word [rbp + rcx + 0x960]
mov word [rbp + rcx + 0x190], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x1400dfef0
jmp 0x1400dfe10
lea rcx, [rbp + 0x190]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rcx, rdi
nop
movzx eax, word [rbp + rcx + 0x960]
mov word [rbp + rcx + 0x190], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x1400dff20
jmp 0x1400dfe10
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x12
jne 0x1400dfe10
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, eax
jmp 0x1400dff65
xor edi, edi
lea rcx, [rsp + 0x20]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov eax, edi
mov rcx, qword [rbp + 0x1130]
xor rcx, rsp
call fcn.14010f260
mov rbx, qword [rsp + 0x1280]
add rsp, 0x1240
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret