Function at 0x4d1868
Capabilities:
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively
Move file
Set file attributes

Disassembly:
push 0x260
mov eax, 0x6e4d35
call fcn.00682c92
mov eax, dword [ebp + 8]
test eax, eax
je 0x4d1a6d
push eax
lea ecx, [ebp - 0x264]
call sym.txupd.exe_public:_void___thiscall_CTXStringW::constructor_wchar_t_const__
and dword [ebp - 4], 0
lea ecx, [ebp - 0x264]
call sym.txupd.exe_public:_int___thiscall_CTXStringW::GetLength_void_const
dec eax
lea ecx, [ebp - 0x264]
push eax
call sym.txupd.exe_public:_wchar_t___thiscall_CTXStringW::GetAt_int_const
xor ebx, ebx
inc ebx
cmp ax, 0x5c
je 0x4d18ec
push 0x6fdc28
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x268]
push eax
call sym.txupd.exe_class_CTXStringW___cdecl_operator_class_CTXStringW_const___wchar_t_const__
add esp, 0xc
push eax
lea ecx, [ebp - 0x264]
mov byte [ebp - 4], bl
call fcn.0051b603
lea ecx, [ebp - 0x268]
mov byte [ebp - 4], 0
call sym.txupd.exe_public:_void___thiscall_CTXStringW::destructor_void_
push 0x250
lea eax, [ebp - 0x260]
push 0
push eax
call fcn.00689b00
push 0x7002dc
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x26c]
push eax
call sym.txupd.exe_class_CTXStringW___cdecl_operator_class_CTXStringW_const___wchar_t_const__
add esp, 0x18
lea ecx, [ebp - 0x260]
push ecx
mov ecx, eax
call sym.txupd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
lea ecx, [ebp - 0x26c]
mov edi, eax
call sym.txupd.exe_public:_void___thiscall_CTXStringW::destructor_void_
cmp edi, 0xffffffff
je 0x4d1a2e
mov esi, dword [sym.imp.SHLWAPI.dll_StrCmpW]
test ebx, ebx
je 0x4d1a27
lea eax, [ebp - 0x234]
push eax
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x268]
push eax
call sym.txupd.exe_class_CTXStringW___cdecl_operator_class_CTXStringW_const___wchar_t_const__
add esp, 0xc
mov eax, dword [ebp - 0x260]
mov byte [ebp - 4], 2
test al, 0x10
je 0x4d19b9
push 0x771540
lea eax, [ebp - 0x234]
push eax
call esi
test eax, eax
je 0x4d1a03
push 0x700418
lea eax, [ebp - 0x234]
push eax
call esi
test eax, eax
je 0x4d1a03
push 0
lea ecx, [ebp - 0x268]
call sym.txupd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call fcn.004d1868
pop ecx
pop ecx
jmp 0x4d1a03
test al, 1
je 0x4d19d3
and eax, 0xfffffffe
lea ecx, [ebp - 0x268]
push eax
call sym.txupd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea ecx, [ebp - 0x268]
call sym.txupd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x4d1a03
cmp dword [ebp + 0xc], eax
je 0x4d1a03
push 4
push eax
lea ecx, [ebp - 0x268]
call sym.txupd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
lea eax, [ebp - 0x260]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
lea ecx, [ebp - 0x268]
mov byte [ebp - 4], 0
mov ebx, eax
call sym.txupd.exe_public:_void___thiscall_CTXStringW::destructor_void_
jmp 0x4d194b
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x264]
call sym.txupd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov esi, eax
test esi, esi
jne 0x4d1a60
cmp dword [ebp + 0xc], eax
je 0x4d1a60
push 4
push eax
lea ecx, [ebp - 0x264]
call sym.txupd.exe_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
lea ecx, [ebp - 0x264]
call sym.txupd.exe_public:_void___thiscall_CTXStringW::destructor_void_
mov eax, esi
call fcn.00682c3c
ret