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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffc74
mov eax, 0x7e3778
call fcn.0066d220
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.0066ce08
add esp, 8
push 0x7e384e
lea edx, [ebp - 0x38c]
push edx
call fcn.0066cd2c
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 0x4fc539
push 0x7e3853
lea edx, [ebp - 0x158]
push edx
call fcn.0066cdbc
add esp, 8
test eax, eax
je 0x4fc511
push 0x7e3855
lea ecx, [ebp - 0x158]
push ecx
call fcn.0066cdbc
add esp, 8
test eax, eax
je 0x4fc511
push dword [ebp + 8]
lea eax, [ebp - 0x288]
push eax
call fcn.0066ce08
add esp, 8
push 0x7e3858
lea edx, [ebp - 0x288]
push edx
call fcn.0066cd2c
add esp, 8
lea ecx, [ebp - 0x158]
push ecx
lea eax, [ebp - 0x288]
push eax
call fcn.0066cd2c
add esp, 8
test byte [ebp - 0x184], 0x10
je 0x4fc32a
lea edx, [ebp - 0x288]
push edx
call fcn.004fc234
pop ecx
jmp 0x4fc511
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx + 0x22c]
call fcn.006599dc
mov dword [ebp - 0x38], eax
mov word [ebp - 0x1c], 8
lea edx, [ebp - 0x285]
lea eax, [ebp - 4]
call fcn.0067d2d0
inc dword [ebp - 0x10]
mov edx, dword [eax]
mov eax, dword [ebp - 0x38]
call fcn.0065944c
dec dword [ebp - 0x10]
lea eax, [ebp - 4]
mov edx, 2
call fcn.0067d4bc
mov ecx, 8
xor edx, edx
mov eax, dword [ebp - 0x38]
call fcn.00659634
xor edx, edx
mov eax, dword [ebp - 0x38]
call fcn.0065937c
mov eax, dword [ebp - 0x34]
mov edx, dword [eax]
call dword [edx + 0x88]
mov ecx, dword [0x7e36d0]
lea ecx, [ecx + ecx*4]
mov eax, dword [0x7e36cc]
mov edx, dword [eax + ecx*8]
test edx, edx
je 0x4fc3bc
mov ecx, dword [0x7e36d0]
lea ecx, [ecx + ecx*4]
mov eax, dword [0x7e36cc]
push dword [eax + ecx*8]
call fcn.0066c63c
pop ecx
lea edx, [ebp - 0x285]
push edx
call fcn.0066ce38
pop ecx
inc eax
push eax
call fcn.0066c62c
pop ecx
mov ecx, dword [0x7e36d0]
lea ecx, [ecx + ecx*4]
mov edx, dword [0x7e36cc]
mov dword [edx + ecx*8], eax
lea eax, [ebp - 0x285]
push eax
mov ecx, dword [0x7e36d0]
lea ecx, [ecx + ecx*4]
mov eax, dword [0x7e36cc]
push dword [eax + ecx*8]
call fcn.0066ce08
add esp, 8
lea edx, [ebp - 0x288]
push edx
push 0xb3c2d4
call fcn.004b7a78
add esp, 8
mov byte [ebp - 0x3d], al
mov ecx, dword [0x7e36ac]
test ecx, ecx
jne 0x4fc531
xor eax, eax
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x3c]
xor ecx, ecx
mov cl, byte [edx + 0xb3c2d4]
push ecx
push str._02x
mov eax, dword [ebp - 0x3c]
add eax, eax
add eax, 0xb3c2e4
push eax
call fcn.006712b0
add esp, 0xc
inc dword [ebp - 0x3c]
mov edx, dword [ebp - 0x3c]
cmp edx, 0x10
jl 0x4fc42d
mov ecx, dword [ebp - 0x38]
add ecx, 8
mov dword [ebp - 0x44], ecx
mov word [ebp - 0x1c], 0x14
mov edx, 0xb3c2e4
lea eax, [ebp - 8]
call fcn.0067d2d0
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.0067d4bc
mov ecx, 7
xor edx, edx
mov eax, dword [ebp - 0x38]
call fcn.00659634
push 0xb3c2e4
mov ecx, dword [0x7e36d0]
shl ecx, 3
lea ecx, [ecx + ecx*4]
mov eax, dword [0x7e36cc]
add ecx, eax
add ecx, 4
push ecx
call fcn.0066ce08
add esp, 8
mov edx, dword [0x7e36d0]
lea edx, [edx + edx*4]
mov ecx, dword [0x7e36cc]
mov al, byte [ebp - 0x3d]
mov byte [ecx + edx*8 + 0x25], al
inc dword [0x7e36d0]
lea edx, [ebp - 0x285]
push edx
push 0xb3c2e4
push str._s__s_n
push dword [0x7e36b0]
call fcn.0066f368
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 0x4fc531
mov eax, dword [0x7e36ac]
test eax, eax
je 0x4fc29b
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