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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x948
push ebx
and byte [ebp - 0x348], 0
push esi
push edi
push 0x7f
mov dword [ebp - 4], ecx
pop ebx
xor eax, eax
mov ecx, ebx
lea edi, [ebp - 0x347]
rep stosd dword es:[edi], eax
push dword [ebp + 0xc]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x348]
push eax
call esi
and byte [ebp - 0x948], 0
mov ecx, ebx
xor eax, eax
lea edi, [ebp - 0x947]
rep stosd dword es:[edi], eax
and byte [ebp - 0x748], 0
mov ecx, ebx
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x747]
rep stosd dword es:[edi], eax
push dword [ebp + 8]
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x748]
push eax
call esi
lea eax, [ebp - 0x748]
push eax
lea eax, [ebp - 0x948]
push str._s.
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
and dword [ebp - 0x148], 0
add esp, 0xc
xor eax, eax
lea edi, [ebp - 0x144]
push 0x4f
pop ecx
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x948]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
mov dword [ebp - 8], eax
je 0x10002953
and dword [ebp + 8], 0
and byte [ebp - 0x548], 0
mov ecx, ebx
xor eax, eax
lea edi, [ebp - 0x547]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcmpA]
rep stosd dword es:[edi], eax
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
stosw word es:[edi], ax
stosb byte es:[edi], al
mov edi, dword [ebp + 0x10]
jmp 0x100027a3
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcmpA]
lea eax, [ebp - 0x11c]
push 0x10009048
push eax
call ebx
test eax, eax
je 0x1000290e
lea eax, [ebp - 0x11c]
push 0x10009044
push eax
call ebx
test eax, eax
je 0x1000290e
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x748]
push eax
lea eax, [ebp - 0x548]
push str._s_s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
test byte [ebp - 0x148], 0x10
je 0x1000281b
mov ecx, dword [ebp - 4]
push edi
push dword [ebp + 0xc]
lea eax, [ebp - 0x548]
push eax
call fcn.100026b0
test eax, eax
je 0x10002953
jmp 0x1000290e
lea eax, [ebp - 0x348]
push 0x10009058
push eax
call ebx
test eax, eax
je 0x100028fe
lea eax, [ebp - 0x348]
push 0x10009054
push eax
call ebx
test eax, eax
je 0x100028fe
cmp byte [ebp - 0x348], 0x2a
jne 0x1000287e
cmp byte [ebp - 0x347], 0x2e
jne 0x1000287e
lea eax, [ebp - 0x347]
push eax
call esi
lea ebx, [ebp - 0x11c]
sub ebx, eax
lea eax, [ebp - 0x11c]
push eax
call esi
add ebx, eax
lea eax, [ebp - 0x347]
push ebx
jmp 0x100028f3
lea eax, [ebp - 0x348]
push eax
call esi
lea ecx, [ebp - 0x348]
dec ecx
dec ecx
cmp byte [eax + ecx], 0x2e
jne 0x100028e6
lea eax, [ebp - 0x348]
push eax
call esi
cmp byte [ebp + eax - 0x349], 0x2a
jne 0x100028e6
lea eax, [ebp - 0x348]
push eax
call esi
dec eax
dec eax
push eax
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x348]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCmpNIA]
test eax, eax
jne 0x1000290e
lea eax, [ebp - 0x348]
push eax
call esi
mov ebx, eax
lea eax, [ebp - 0x11c]
inc ebx
push eax
inc ebx
call esi
cmp ebx, eax
jmp 0x100028fc
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x348]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x1000290e
mov ecx, dword [ebp - 4]
lea eax, [ebp - 0x548]
push eax
push edi
call fcn.10002157
lea eax, [ebp - 0x148]
push eax
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x10002934
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x12
jne 0x10002957
mov dword [ebp + 8], 1
cmp dword [ebp + 8], 0
je 0x1000279d
push 1
pop esi
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, esi
pop edi
pop esi
pop ebx
leave
ret 0xc
xor eax, eax
jmp 0x1000294c
xor esi, esi
jmp 0x10002941