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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x670
mov eax, dword [0x100f008]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push esi
push edi
push eax
mov dword [ebp - 0x670], eax
push 0x104
lea eax, [ebp - 0x20c]
push eax
mov dword [ebp - 0x668], ecx
xor edi, edi
xor esi, esi
call fcn.01007785
mov eax, 0x1001bdc
cmp dword [ebp + 0xc], edi
jne 0x100c710
mov eax, 0x1001bd4
push eax
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
test eax, eax
je 0x100c8d3
lea eax, [ebp - 0x664]
push eax
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x66c], eax
cmp eax, 0xffffffff
je 0x100c90e
mov eax, dword [ebp - 0x664]
test al, 0x10
je 0x100c863
cmp dword [ebp + 0x10], edi
je 0x100c8aa
mov ecx, 0x1001bd0
lea eax, [ebp - 0x638]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x100c791
cmp dx, di
je 0x100c78d
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x100c791
add eax, 4
add ecx, 4
cmp dx, di
jne 0x100c76b
xor eax, eax
jmp 0x100c796
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x100c8aa
mov ecx, 0x1001bc8
lea eax, [ebp - 0x638]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x100c7cf
cmp dx, di
je 0x100c7cb
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x100c7cf
add eax, 4
add ecx, 4
cmp dx, di
jne 0x100c7a9
xor eax, eax
jmp 0x100c7d4
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x100c8aa
push dword [ebp - 0x670]
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.01007785
lea eax, [ebp - 0x638]
push eax
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
test eax, eax
je 0x100c826
mov ecx, dword [ebp - 0x668]
push edi
push dword [ebp + 0xc]
lea eax, [ebp - 0x414]
push eax
call fcn.0100c6c5
jmp 0x100c8a6
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, edi
jle 0x100c83a
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
mov eax, dword [section..data]
cmp eax, section..data
je 0x100c8a6
test byte [eax + 0x1c], 4
je 0x100c8a6
push esi
push 0x1001b74
push 0x14
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01006af6
jmp 0x100c8a6
and eax, 6
cmp al, 6
je 0x100c8aa
cmp dword [ebp + 0xc], edi
je 0x100c873
xor eax, eax
jmp 0x100c889
mov ecx, dword [ebp - 0x668]
lea eax, [ebp - 0x638]
push eax
call fcn.0100bb09
cmp eax, edi
jl 0x100c8aa
mov ecx, dword [ebp - 0x668]
push edi
inc eax
push eax
lea eax, [ebp - 0x638]
push eax
push dword [ebp - 0x670]
call fcn.0100c3ad
mov esi, eax
cmp esi, edi
jl 0x100c8c5
lea eax, [ebp - 0x664]
push eax
push dword [ebp - 0x66c]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x100c749
push dword [ebp - 0x66c]
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x100c90e
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, edi
jle 0x100c8e7
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
mov eax, dword [section..data]
cmp eax, section..data
je 0x100c90e
test byte [eax + 0x1c], 4
je 0x100c90e
push esi
push 0x1001b74
push 0x15
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.01006af6
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
xor ecx, ebp
pop esi
call fcn.0100d5e7
leave
ret 0xc