Function at 0x4fbe18
Capabilities:
Enumerate files on windows
Enumerate files recursively

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffc74
mov eax, 0x7d5da4
call fcn.0066ce04
mov edx, dword [sym.UltraISO.exe__frmChecksum]
mov ecx, dword [edx + 0x2f0]
mov dword [ebp - 0x34], ecx
push dword [ebp + 8]
lea eax, [ebp - 0x38c]
push eax
call fcn.0066c9ec
add esp, 8
push 0x7d5e7a
lea edx, [ebp - 0x38c]
push edx
call fcn.0066c910
add esp, 8
lea ecx, [ebp - 0x184]
push ecx
lea eax, [ebp - 0x38c]
push eax
call sub.KERNEL32.DLL_FindFirstFileA
mov dword [ebp - 0x30], eax
cmp eax, 0xffffffff
je 0x4fc11d
push 0x7d5e7f
lea edx, [ebp - 0x158]
push edx
call fcn.0066c9a0
add esp, 8
test eax, eax
je 0x4fc0f5
push 0x7d5e81
lea ecx, [ebp - 0x158]
push ecx
call fcn.0066c9a0
add esp, 8
test eax, eax
je 0x4fc0f5
push dword [ebp + 8]
lea eax, [ebp - 0x288]
push eax
call fcn.0066c9ec
add esp, 8
push 0x7d5e84
lea edx, [ebp - 0x288]
push edx
call fcn.0066c910
add esp, 8
lea ecx, [ebp - 0x158]
push ecx
lea eax, [ebp - 0x288]
push eax
call fcn.0066c910
add esp, 8
test byte [ebp - 0x184], 0x10
je 0x4fbf0e
lea edx, [ebp - 0x288]
push edx
call fcn.004fbe18
pop ecx
jmp 0x4fc0f5
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx + 0x22c]
call fcn.006595c0
mov dword [ebp - 0x38], eax
mov word [ebp - 0x1c], 8
lea edx, [ebp - 0x285]
lea eax, [ebp - 4]
call fcn.0067ceb4
inc dword [ebp - 0x10]
mov edx, dword [eax]
mov eax, dword [ebp - 0x38]
call fcn.00659030
dec dword [ebp - 0x10]
lea eax, [ebp - 4]
mov edx, 2
call fcn.0067d0a0
mov ecx, 8
xor edx, edx
mov eax, dword [ebp - 0x38]
call fcn.00659218
xor edx, edx
mov eax, dword [ebp - 0x38]
call fcn.00658f60
mov eax, dword [ebp - 0x34]
mov edx, dword [eax]
call dword [edx + 0x88]
mov ecx, dword [0x7d5cfc]
lea ecx, [ecx + ecx*4]
mov eax, dword [0x7d5cf8]
mov edx, dword [eax + ecx*8]
test edx, edx
je 0x4fbfa0
mov ecx, dword [0x7d5cfc]
lea ecx, [ecx + ecx*4]
mov eax, dword [0x7d5cf8]
push dword [eax + ecx*8]
call fcn.0066c220
pop ecx
lea edx, [ebp - 0x285]
push edx
call fcn.0066ca1c
pop ecx
inc eax
push eax
call fcn.0066c210
pop ecx
mov ecx, dword [0x7d5cfc]
lea ecx, [ecx + ecx*4]
mov edx, dword [0x7d5cf8]
mov dword [edx + ecx*8], eax
lea eax, [ebp - 0x285]
push eax
mov ecx, dword [0x7d5cfc]
lea ecx, [ecx + ecx*4]
mov eax, dword [0x7d5cf8]
push dword [eax + ecx*8]
call fcn.0066c9ec
add esp, 8
lea edx, [ebp - 0x288]
push edx
push 0xb2e900
call fcn.004b7790
add esp, 8
mov byte [ebp - 0x3d], al
mov ecx, dword [0x7d5cd8]
test ecx, ecx
jne 0x4fc115
xor eax, eax
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x3c]
xor ecx, ecx
mov cl, byte [edx + 0xb2e900]
push ecx
push str._02x
mov eax, dword [ebp - 0x3c]
add eax, eax
add eax, 0xb2e910
push eax
call fcn.00670e94
add esp, 0xc
inc dword [ebp - 0x3c]
mov edx, dword [ebp - 0x3c]
cmp edx, 0x10
jl 0x4fc011
mov ecx, dword [ebp - 0x38]
add ecx, 8
mov dword [ebp - 0x44], ecx
mov word [ebp - 0x1c], 0x14
mov edx, 0xb2e910
lea eax, [ebp - 8]
call fcn.0067ceb4
inc dword [ebp - 0x10]
mov edx, dword [eax]
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x38]
dec dword [ebp - 0x10]
lea eax, [ebp - 8]
mov edx, 2
call fcn.0067d0a0
mov ecx, 7
xor edx, edx
mov eax, dword [ebp - 0x38]
call fcn.00659218
push 0xb2e910
mov ecx, dword [0x7d5cfc]
shl ecx, 3
lea ecx, [ecx + ecx*4]
mov eax, dword [0x7d5cf8]
add ecx, eax
add ecx, 4
push ecx
call fcn.0066c9ec
add esp, 8
mov edx, dword [0x7d5cfc]
lea edx, [edx + edx*4]
mov ecx, dword [0x7d5cf8]
mov al, byte [ebp - 0x3d]
mov byte [ecx + edx*8 + 0x25], al
inc dword [0x7d5cfc]
lea edx, [ebp - 0x285]
push edx
push 0xb2e910
push str._s__s_n
push dword [0x7d5cdc]
call fcn.0066ef4c
add esp, 0x10
mov eax, dword [ebp - 0x34]
mov edx, dword [eax]
call dword [edx + 0x88]
lea ecx, [ebp - 0x184]
push ecx
push dword [ebp - 0x30]
call sub.KERNEL32.DLL_FindNextFileA
test eax, eax
je 0x4fc115
mov eax, dword [0x7d5cd8]
test eax, eax
je 0x4fbe7f
push dword [ebp - 0x30]
call sub.KERNEL32.DLL_FindClose
mov eax, 1
mov edx, dword [ebp - 0x2c]
mov dword fs:[0], edx
mov esp, ebp
pop ebp
ret