Function at 0x426110
Capabilities:
Delete file
Enumerate files on windows
Enumerate files recursively
Set current directory

Disassembly:
push 0xffffffffffffffff
push 0x4b51ca
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x298
push ebx
push ebp
push esi
push edi
mov eax, dword [esp + 0x2b8]
push 0
push eax
mov dword [esp + 0x2b8], 0
call dword [sym.imp.MSVCRT.dll__waccess]
add esp, 8
test eax, eax
je 0x42616f
lea ecx, [esp + 0x2b8]
mov dword [esp + 0x2b0], 0xffffffff
call sub.MFC42u.DLL_CString::CString
xor eax, eax
jmp 0x42648d
lea ecx, [esp + 0x38]
call sub.MFC42u.DLL_CString::CString_1
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2b0], 1
push ecx
call sub.MFC42u.DLL_CTime::GetTickCount
mov edx, dword [eax]
lea ecx, [esp + 0x48]
mov dword [esp + 0x3c], edx
call sub.MFC42u.DLL_CString::CString_1
lea eax, [esp + 0x2b8]
lea ecx, [esp + 0x18]
push eax
mov byte [esp + 0x2b4], 2
call sub.MFC42u.DLL_CString::CString_3
mov ecx, dword [esp + 0x2b8]
mov byte [esp + 0x2b0], 3
mov esi, dword [ecx - 8]
lea ecx, [esp + 0x2b8]
push esi
call sub.MFC42u.DLL_CString::GetBuffer
cmp byte [eax + esi - 1], 0x5c
je 0x4261e6
push 0x4cf2c0
lea ecx, [esp + 0x1c]
call sub.MFC42u.DLL_CString::operator_1
mov edx, dword [esp + 0x18]
push edx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
lea eax, [esp + 0x58]
push eax
push 0x4d1f40
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [esp + 0x34], eax
je 0x42643e
mov edi, dword [esp + 0x2bc]
mov ebp, dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov ebx, dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
mov esi, dword [sym.imp.MSVCRT.dll_wcscmp]
mov al, byte [esp + 0x58]
lea ecx, [esp + 0x84]
test al, 0x10
push ecx
je 0x4262a2
lea ecx, [esp + 0x18]
call sub.MFC42u.DLL_CString::CString_2
mov edx, dword [esp + 0x14]
push 0x4d0238
push edx
mov byte [esp + 0x2b8], 4
call esi
add esp, 8
test eax, eax
je 0x426291
mov eax, dword [esp + 0x14]
push 0x4d0230
push eax
call esi
add esp, 8
test eax, eax
je 0x426291
push edi
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x48], esp
lea eax, [esp + 0x2c0]
push edx
push eax
push ecx
call sub.MFC42u.DLL_operator
call fcn.00426110
add esp, 8
mov byte [esp + 0x2b0], 3
lea ecx, [esp + 0x14]
jmp 0x426416
lea ecx, [esp + 0x14]
call sub.MFC42u.DLL_CString::CString_2
mov edx, dword [esp + 0x10]
push 0x4d0238
push edx
mov byte [esp + 0x2b8], 5
call esi
add esp, 8
test eax, eax
je 0x42640a
mov eax, dword [esp + 0x10]
push 0x4d0230
push eax
call esi
add esp, 8
test eax, eax
je 0x42640a
lea ecx, [esp + 0x50]
lea edx, [esp + 0x6c]
push ecx
push edx
call ebp
lea eax, [esp + 0x24]
lea ecx, [esp + 0x50]
push eax
push ecx
call ebx
lea ecx, [esp + 0x20]
call sub.MFC42u.DLL_CString::CString_1
mov edx, dword [esp + 0x2e]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
and edx, 0xffff
and eax, 0xffff
push edx
mov edx, dword [esp + 0x2e]
push eax
mov eax, dword [esp + 0x2e]
and ecx, 0xffff
and edx, 0xffff
push ecx
and eax, 0xffff
push edx
push eax
lea ecx, [esp + 0x34]
push str._02d__02d__04d__02d:_02d
push ecx
mov byte [esp + 0x2cc], 6
call sub.MFC42u.DLL_CString::Format
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x4a]
mov ecx, dword [esp + 0x48]
add esp, 0x1c
and edx, 0xffff
and eax, 0xffff
push 0xffffffffffffffff
push edx
mov edx, dword [esp + 0x32]
and ecx, 0xffff
push eax
mov eax, dword [esp + 0x32]
push ecx
mov ecx, dword [esp + 0x34]
and edx, 0xffff
and eax, 0xffff
push edx
and ecx, 0xffff
push eax
push ecx
lea ecx, [esp + 0x60]
call sub.MFC42u.DLL_CTime::CTime
mov edx, dword [esp + 0x44]
push ecx
mov eax, esp
mov dword [esp + 0x44], esp
lea ecx, [esp + 0x40]
mov dword [eax], edx
lea eax, [esp + 0x50]
push eax
call fcn.004264b0
mov ecx, dword [eax]
mov eax, 0xc22e4507
imul ecx
add edx, ecx
sar edx, 0x10
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
cmp edx, edi
jl 0x4263f9
lea edx, [esp + 0x10]
lea eax, [esp + 0x2b8]
push edx
lea ecx, [esp + 0x20]
push eax
push ecx
call sub.MFC42u.DLL_operator
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [esp + 0x1c]
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x20]
mov byte [esp + 0x2b0], 5
call sub.MFC42u.DLL_CString::CString
mov byte [esp + 0x2b0], 3
lea ecx, [esp + 0x10]
call sub.MFC42u.DLL_CString::CString
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x58]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x426227
mov ecx, dword [esp + 0x34]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [esp + 0x18]
mov byte [esp + 0x2b0], 2
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x48]
mov byte [esp + 0x2b0], 1
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x38]
mov byte [esp + 0x2b0], 0
call sub.MFC42u.DLL_CString::CString
lea ecx, [esp + 0x2b8]
mov dword [esp + 0x2b0], 0xffffffff
call sub.MFC42u.DLL_CString::CString
mov eax, 1
mov ecx, dword [esp + 0x2a8]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x2a4
ret