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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x89c
mov eax, dword [0x10b1058]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov dword [ebp - 0x89c], eax
mov eax, dword [ebp + 0x10]
push edi
mov edi, 0x10b9328
mov dword [ebp - 0x898], eax
mov eax, edi
mov dword [ebp - 0x890], ebx
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x10aef61
sub eax, ecx
mov ecx, ebx
mov esi, eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10aef71
sub ecx, edx
lea eax, [ecx + esi + 4]
cmp eax, 0x105
jbe 0x10aefa0
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push 0x10a6840
push eax
call dword [sym.imp.msvcrt.dll_fprintf]
pop ecx
pop ecx
jmp 0x10af1ca
push ebx
mov ebx, dword [sym.imp.msvcrt.dll_sprintf]
push 0x5c
push edi
lea eax, [ebp - 0x224]
push 0x10a6838
push eax
call ebx
lea edi, [ebp - 0x224]
add esp, 0x14
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10aefc2
push 0x104
lea eax, [ebp - 0x63c]
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x224]
mov esi, 0x10a6834
push eax
movsw word es:[edi], word [esi]
push 0
push 0xfde9
movsb byte es:[edi], byte [esi]
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea eax, [ebp - 0x88c]
push eax
lea eax, [ebp - 0x63c]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [ebp - 0x894], eax
je 0x10af1ca
xor edi, edi
push edi
push edi
push 0x104
lea eax, [ebp - 0x11c]
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x860]
push eax
push edi
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test byte [ebp - 0x88c], 0x10
je 0x10af0ee
push 2
mov edi, 0x1010880
lea esi, [ebp - 0x11c]
pop ecx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x10af194
push 3
mov edi, 0x10a6830
lea esi, [ebp - 0x11c]
pop ecx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x10af194
mov eax, dword [ebp - 0x890]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10af082
sub eax, edx
mov ecx, eax
lea eax, [ebp - 0x11c]
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x10af096
sub eax, esi
lea eax, [eax + ecx + 2]
cmp eax, 0x105
ja 0x10aef85
lea eax, [ebp - 0x11c]
push eax
push 0x5c
push dword [ebp - 0x890]
lea eax, [ebp - 0x430]
push 0x10a6838
push eax
call ebx
add esp, 0x14
push dword [ebp + 0x14]
lea eax, [ebp - 0x430]
push dword [ebp - 0x898]
push eax
push dword [ebp - 0x89c]
call fcn.010aef24
jmp 0x10af194
xor esi, esi
cmp dword [ebp + 0x14], edi
jbe 0x10af194
lea eax, [ebp - 0x11c]
push eax
call dword [sym.imp.msvcrt.dll__strlwr]
mov eax, dword [ebp - 0x898]
pop ecx
mov ecx, dword [eax + esi*4]
lea eax, [ebp - 0x11c]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10af134
test dl, dl
je 0x10af130
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10af134
inc eax
inc eax
inc ecx
inc ecx
test dl, dl
jne 0x10af116
xor eax, eax
jmp 0x10af139
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x10af145
inc esi
cmp esi, dword [ebp + 0x14]
jb 0x10af0f9
jmp 0x10af194
lea eax, [ebp - 0x11c]
push eax
push 0x5c
push dword [ebp - 0x890]
lea eax, [ebp - 0x328]
push 0x10b9328
push 0x10a6824
push eax
call ebx
add esp, 0x18
lea eax, [ebp - 0x328]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.010ae9cf
test eax, eax
je 0x10af194
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x11c]
push eax
push dword [ebp - 0x89c]
call fcn.010aea68
lea eax, [ebp - 0x88c]
push eax
push dword [ebp - 0x894]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x10af017
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x12
jne 0x10af017
push dword [ebp - 0x894]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.010a919f
leave
ret 0x10