Function at 0x574250
Capabilities:
Delete file
Enumerate files on windows

Disassembly:
sub esp, 0x20
push ebx
push ebp
push esi
push edi
push 0
push 0
lea ecx, [esp + 0x20]
call fcn.0058bec0
mov dword [esp + 0x18], vtable.DynamicVectorClass_struct__WIN32_FIND_DATAA__.0
mov dword [esp + 0x2c], 0xa
push 0x140
mov dword [esp + 0x2c], 0
call fcn.0076d5a7
add esp, 4
mov esi, eax
push esi
push str.rmcache.mmp
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov edi, eax
cmp edi, 0xffffffff
je 0x574369
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
cmp ecx, eax
jl 0x5742d6
mov cl, byte [esp + 0x25]
test cl, cl
jne 0x5742ba
test eax, eax
jne 0x5742e8
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jle 0x5742e8
add eax, ecx
push 0
push eax
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x20]
call dword [eax + 8]
test al, al
je 0x5742e8
mov ecx, dword [esp + 0x28]
mov eax, ecx
inc ecx
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x1c]
mov dword [ecx + eax*4], esi
push 0x140
call fcn.0076d5a7
mov ebx, dword [sym.imp.KERNEL32.dll_FindNextFileA]
add esp, 4
mov esi, eax
push esi
push edi
call ebx
test eax, eax
je 0x574362
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
cmp ecx, eax
jl 0x574339
mov cl, byte [esp + 0x25]
test cl, cl
jne 0x57431d
test eax, eax
jne 0x57434b
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jle 0x57434b
mov edx, dword [esp + 0x18]
add eax, ecx
push 0
push eax
lea ecx, [esp + 0x20]
call dword [edx + 8]
test al, al
je 0x57434b
mov ecx, dword [esp + 0x28]
mov eax, ecx
inc ecx
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x1c]
mov dword [ecx + eax*4], esi
push 0x140
call fcn.0076d5a7
add esp, 4
mov esi, eax
push esi
push edi
call ebx
test eax, eax
jne 0x574305
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
push esi
call fcn.0076d2d5
mov eax, dword [esp + 0x2c]
add esp, 4
cmp eax, 0x46
jle 0x5744ad
mov ebx, dword [sym.imp.KERNEL32.dll_CompareFileTime]
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
or edi, 0xffffffff
xor esi, esi
test eax, eax
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], SysReAllocString
jle 0x5744ad
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + esi*4]
mov edx, dword [ecx + 0x10]
test edx, edx
je 0x5743e2
lea edx, [esp + 0x10]
add ecx, 0xc
push edx
push ecx
call ebx
cmp eax, 0xffffffff
jne 0x574448
mov eax, dword [esp + 0x1c]
mov edi, esi
mov ecx, dword [eax + esi*4]
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x10], edx
mov ecx, dword [eax + esi*4]
mov edx, dword [ecx + 0x10]
mov dword [esp + 0x14], edx
jmp 0x57444c
mov edx, dword [ecx + 8]
test edx, edx
je 0x574415
lea eax, [esp + 0x10]
add ecx, 4
push eax
push ecx
call ebx
cmp eax, 0xffffffff
jne 0x574448
mov eax, dword [esp + 0x1c]
mov edi, esi
mov ecx, dword [eax + esi*4]
mov edx, dword [ecx + 4]
mov dword [esp + 0x10], edx
mov ecx, dword [eax + esi*4]
mov edx, dword [ecx + 8]
mov dword [esp + 0x14], edx
jmp 0x57444c
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x57444c
lea eax, [esp + 0x10]
add ecx, 0x14
push eax
push ecx
call ebx
cmp eax, 0xffffffff
jne 0x574448
mov eax, dword [esp + 0x1c]
mov edi, esi
mov ecx, dword [eax + esi*4]
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x10], edx
mov ecx, dword [eax + esi*4]
mov edx, dword [ecx + 0x18]
mov dword [esp + 0x14], edx
jmp 0x57444c
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
inc esi
cmp esi, ecx
jl 0x5743a8
cmp edi, 0xffffffff
je 0x5744b1
mov eax, dword [eax + edi*4]
add eax, 0x2c
push eax
call ebp
test eax, eax
je 0x5744ad
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + edi*4]
push edx
call fcn.0076d2d5
mov ecx, dword [esp + 0x2c]
add esp, 4
cmp edi, ecx
jge 0x5744a2
dec ecx
mov eax, edi
cmp edi, ecx
mov dword [esp + 0x28], ecx
jge 0x5744a2
mov ecx, dword [esp + 0x1c]
inc eax
mov edx, dword [ecx + eax*4]
mov dword [ecx + eax*4 - 4], edx
mov ecx, dword [esp + 0x28]
cmp eax, ecx
jl 0x57448e
mov eax, ecx
cmp eax, 0x46
jg 0x57438b
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
pop edi
pop esi
pop ebp
test ecx, ecx
pop ebx
je 0x5744f7
mov eax, dword [eax]
push eax
call fcn.0076d2d5
mov ecx, dword [esp + 0x1c]
add esp, 4
test ecx, ecx
jle 0x5744f1
dec ecx
xor eax, eax
test ecx, ecx
mov dword [esp + 0x18], ecx
jle 0x5744f1
mov ecx, dword [esp + 0xc]
inc eax
mov edx, dword [ecx + eax*4]
mov dword [ecx + eax*4 - 4], edx
mov ecx, dword [esp + 0x18]
cmp eax, ecx
jl 0x5744db
test ecx, ecx
mov eax, dword [esp + 0xc]
jne 0x5744bd
test eax, eax
mov dword [esp + 8], vtable.VectorClass_struct__WIN32_FIND_DATAA__.0
je 0x574514
mov cl, byte [esp + 0x15]
test cl, cl
je 0x574514
push eax
call fcn.0076d2d5
add esp, 4
add esp, 0x20
ret