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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x51
push 0
push 0
dec ecx
jne 0x48e001
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
mov dword [ebp - 0x148], ecx
mov esi, edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x48e3e3
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp word [eax + 0x62], 0
je 0x48e03f
mov ebx, dword [ebp - 4]
mov ecx, esi
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x64]
call dword [ebx + 0x60]
lea eax, [ebp - 0x144]
push eax
lea ecx, [ebp - 0x258]
mov edx, 0x48e3fc
mov eax, esi
call fcn.0048d280
mov edx, dword [ebp - 0x258]
lea eax, [ebp - 0x251]
call fcn.00409eb8
push eax
call sub.kernel32.dll_FindFirstFileA_1
mov dword [ebp - 0x14c], eax
cmp dword [ebp - 0x14c], 0xffffffff
setne bl
xor eax, eax
push ebp
push 0x48e3be
push dword fs:[eax]
mov dword fs:[eax], esp
jmp 0x48e38e
lea eax, [ebp - 0x25c]
lea edx, [ebp - 0x118]
mov ecx, 0x104
call fcn.00404a94
mov eax, dword [ebp - 0x25c]
mov edx, 0x48e408
call fcn.00404c28
je 0x48e369
lea eax, [ebp - 0x260]
lea edx, [ebp - 0x118]
mov ecx, 0x104
call fcn.00404a94
mov eax, dword [ebp - 0x260]
mov edx, 0x48e414
call fcn.00404c28
je 0x48e369
push ebp
call fcn.0048dec0
pop ecx
test al, al
je 0x48e28d
push ebp
call fcn.0048de14
pop ecx
test al, al
jne 0x48e28d
test dword [ebp - 0x144], 0x10
jbe 0x48e19d
mov eax, dword [ebp - 4]
cmp byte [eax + 0x98], 0
je 0x48e28d
mov eax, dword [ebp - 4]
cmp word [eax + 0x92], 0
je 0x48e28d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
push eax
lea eax, [ebp - 0x26c]
lea edx, [ebp - 0x118]
mov ecx, 0x104
call fcn.00404a94
mov edx, dword [ebp - 0x26c]
lea ecx, [ebp - 0x268]
mov eax, esi
call fcn.0048d280
mov eax, dword [ebp - 0x268]
lea edx, [ebp - 0x264]
call fcn.00492030
mov edx, dword [ebp - 0x264]
mov ebx, dword [ebp - 4]
lea ecx, [ebp - 0x144]
mov eax, dword [ebx + 0x94]
call dword [ebx + 0x90]
jmp 0x48e28d
push ebp
lea eax, [ebp - 0x270]
lea edx, [ebp - 0x118]
mov ecx, 0x104
call fcn.00404a94
mov eax, dword [ebp - 0x270]
call fcn.0048df78
pop ecx
test al, al
je 0x48e28d
mov eax, dword [ebp - 4]
inc dword [eax + 0x38]
mov eax, dword [ebp - 0x128]
xor edx, edx
mov edx, eax
xor eax, eax
push edx
push eax
mov eax, dword [ebp - 0x124]
xor edx, edx
or eax, dword [esp]
or edx, dword [esp + 4]
add esp, 8
mov ecx, dword [ebp - 4]
add eax, dword [ecx + 0x48]
adc edx, dword [ecx + 0x4c]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x48], eax
mov dword [ecx + 0x4c], edx
mov eax, dword [ebp - 4]
cmp word [eax + 0x5a], 0
je 0x48e242
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
push eax
mov eax, dword [ebp - 4]
push dword [eax + 0x4c]
push dword [eax + 0x48]
lea eax, [ebp - 0x274]
lea edx, [ebp - 0x118]
mov ecx, 0x104
call fcn.00404a94
mov ecx, dword [ebp - 0x274]
mov ebx, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x5c]
call dword [ebx + 0x58]
mov eax, dword [ebp - 4]
cmp byte [eax + 0x98], 0
je 0x48e28d
mov eax, dword [ebp - 4]
cmp word [eax + 0x92], 0
je 0x48e28d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
push eax
lea edx, [ebp - 0x278]
mov eax, esi
call fcn.00492030
mov edx, dword [ebp - 0x278]
mov ebx, dword [ebp - 4]
lea ecx, [ebp - 0x144]
mov eax, dword [ebx + 0x94]
call dword [ebx + 0x90]
mov eax, dword [ebp - 4]
cmp byte [eax + 0x7c], 0
je 0x48e369
test dword [ebp - 0x144], 0x10
jbe 0x48e369
test dword [ebp - 0x144], 2
jbe 0x48e317
mov eax, dword [ebp - 4]
cmp byte [eax + 0x50], 0
je 0x48e369
mov eax, dword [ebp + 8]
push eax
lea eax, [ebp - 0x284]
lea edx, [ebp - 0x118]
mov ecx, 0x104
call fcn.00404a94
mov edx, dword [ebp - 0x284]
lea ecx, [ebp - 0x280]
mov eax, esi
call fcn.0048d280
mov eax, dword [ebp - 0x280]
lea edx, [ebp - 0x27c]
call fcn.00492030
mov edx, dword [ebp - 0x27c]
mov ecx, dword [ebp - 0x148]
mov eax, dword [ebp - 4]
call fcn.0048dff8
jmp 0x48e369
mov eax, dword [ebp + 8]
push eax
lea eax, [ebp - 0x290]
lea edx, [ebp - 0x118]
mov ecx, 0x104
call fcn.00404a94
mov edx, dword [ebp - 0x290]
lea ecx, [ebp - 0x28c]
mov eax, esi
call fcn.0048d280
mov eax, dword [ebp - 0x28c]
lea edx, [ebp - 0x288]
call fcn.00492030
mov edx, dword [ebp - 0x288]
mov ecx, dword [ebp - 0x148]
mov eax, dword [ebp - 4]
call fcn.0048dff8
lea eax, [ebp - 0x144]
push eax
mov eax, dword [ebp - 0x14c]
push eax
call sub.kernel32.dll_FindNextFileA
cmp eax, 1
sbb ebx, ebx
inc ebx
mov eax, dword [0x51b8a8]
mov eax, dword [eax]
call fcn.00466160
test bl, bl
je 0x48e3a4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x9c]
cmp byte [eax], 0
je 0x48e092
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x48e3c5
mov eax, dword [ebp - 0x14c]
push eax
call sub.kernel32.dll_FindClose_1
ret