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

Disassembly:
sub esp, 0x450
push ebx
push ebp
push esi
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
push edi
xor eax, eax
mov dword [esp + 0x118], 0
mov ecx, 0x4f
lea edi, [esp + 0x11c]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x464]
push eax
lea ecx, [esp + 0x18]
push ecx
mov dword [esp + 0x18], 1
call esi
lea edx, [esp + 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
lea ebp, [esp + eax + 0x14]
push 0x4163cc
push ebp
call esi
lea eax, [esp + 0x118]
push eax
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatA]
mov edi, eax
cmp edi, 0xffffffff
je 0x405fd2
lea ecx, [ecx]
push 0x416a8c
lea edx, [esp + 0x148]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x405fb4
push 0x416a88
lea eax, [esp + 0x148]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x405fb4
test byte [esp + 0x118], 0x10
je 0x405eed
lea ecx, [esp + 0x144]
push ecx
push ebp
call esi
push 0x416ae8
push ebp
call ebx
mov edx, dword [esp + 0x468]
push edx
lea eax, [esp + 0x18]
push eax
call fcn.00405e00
add esp, 8
jmp 0x405fb4
mov eax, dword [0x420768]
test eax, eax
jne 0x405f99
mov eax, dword [esp + 0x468]
test eax, eax
jne 0x405f99
lea ecx, [esp + 0x144]
push ecx
push ebp
call esi
mov eax, dword [0x41afc0]
test eax, eax
jne 0x405f22
mov eax, dword [0x41ae60]
push 0x208
lea edx, [esp + 0x25c]
push edx
push 0x399
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x25c]
push ecx
call ebx
mov eax, dword [0x41afc0]
test eax, eax
jne 0x405f58
mov eax, dword [0x41ae60]
mov ecx, dword [0x41a920]
lea edx, [esp + 0x258]
push edx
push 0x406220
push ecx
push 0x388
push eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
cmp eax, 2
je 0x406051
cmp eax, 0x7ec
jne 0x405f94
mov dword [0x420768], 1
jmp 0x405f99
cmp eax, 6
jne 0x405fb4
mov ecx, dword [esp + 0x464]
lea eax, [esp + 0x144]
call fcn.00405ce0
test eax, eax
jne 0x405fb4
mov dword [esp + 0x10], eax
lea edx, [esp + 0x118]
push edx
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x405e80
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
lea eax, [esp + 0x118]
push eax
lea ecx, [esp + 0x18]
push ecx
mov byte [ebp - 1], 0
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
je 0x4060b4
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
lea edx, [esp + 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
test eax, eax
jne 0x4060b4
mov eax, dword [0x41afc0]
test eax, eax
jne 0x40601a
mov eax, dword [0x41ae60]
push 0x208
lea ecx, [esp + 0x25c]
push ecx
push 0x396
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x25c]
push eax
call ebx
mov eax, dword [0x41b390]
xor esi, esi
test eax, eax
je 0x40605e
mov esi, eax
jmp 0x406075
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x450
ret
mov ecx, dword [0x41ae64]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x406075
mov esi, dword [0x41ae64]
mov edx, dword [0x41ae64]
mov edi, dword [0x41b390]
push 0x10
push 0x416b2c
lea eax, [esp + 0x260]
push eax
push esi
mov dword [0x41b390], edx
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [0x41b390], edi
pop edi
pop esi
mov byte [ebp - 1], 0x5c
pop ebp
xor eax, eax
pop ebx
add esp, 0x450
ret
mov eax, dword [esp + 0x10]
pop edi
pop esi
mov byte [ebp - 1], 0x5c
pop ebp
pop ebx
add esp, 0x450
ret