Function at 0x488994
Capabilities:
Enumerate files on windows

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xfffffec0
mov esi, esp
mov ebp, dword [0x4bedb0]
xor ebx, ebx
mov edi, 1
jmp 0x4889f0
mov eax, dword [0x4bea48]
mov eax, dword [eax]
mov edx, edi
dec edx
imul edx, edx, 0x12c
add eax, edx
cmp byte [eax], 0
je 0x4889ef
cmp byte [eax + 0x100], 0
je 0x4889e0
mov edx, 0x488c4c
mov eax, dword [0x4c2488]
call fcn.00486854
jmp 0x4889ef
mov edx, 0x488c4c
mov eax, dword [0x4c2488]
call fcn.00486854
inc edi
mov eax, dword [0x4be784]
movzx eax, byte [eax + 0x18a0]
cmp edi, eax
jle 0x4889af
test bl, bl
je 0x488a1a
push 0
push 0
push 0x416
mov eax, dword [0x4beb60]
mov eax, dword [eax]
push eax
call sub.user32.dll_SendMessageA
push 0
mov eax, dword [0x4be778]
movsx eax, word [eax]
push eax
push 0x186
mov eax, dword [0x4c2488]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [0x4be784]
cmp byte [eax + 0x300], 0x2e
jne 0x488a4f
mov eax, 0x488c50
call fcn.004b1c50
jmp 0x488a62
mov edx, dword [0x4be784]
add edx, 0x300
mov eax, ebp
call fcn.004b81b0
mov eax, ebp
call fcn.004b194c
test al, al
jne 0x488a78
mov edx, ebp
mov ax, 0xa
call fcn.004acdac
push 0x488c54
push ebp
call sub.kernel32.dll_lstrcatA
mov byte [esi + 0x2c], 0
push esi
push ebp
call sub.kernel32.dll_FindFirstFileA
mov ebx, eax
jmp 0x488ac2
test byte [esi], 0x10
jne 0x488ab1
lea eax, [esi + 0x2c]
mov dl, 0x2e
call fcn.004b838c
mov byte [eax], 0
lea edx, [esi + 0x2c]
mov eax, dword [0x4c248c]
call fcn.00486854
push esi
push ebx
call sub.kernel32.dll_FindNextFileA
cmp eax, 1
sbb eax, eax
inc eax
test al, al
je 0x488ac8
cmp byte [esi + 0x2c], 0
jne 0x488a92
push ebx
call sub.kernel32.dll_FindClose
mov eax, dword [0x4be784]
cmp byte [eax + 0x300], 0x2e
jne 0x488ae8
mov eax, 0x488c50
call fcn.004b1c50
jmp 0x488afb
mov edx, dword [0x4be784]
add edx, 0x300
mov eax, ebp
call fcn.004b81b0
push 0x488c5c
push ebp
call sub.kernel32.dll_lstrcatA
mov byte [esi + 0x2c], 0
push esi
push ebp
call sub.kernel32.dll_FindFirstFileA
mov ebx, eax
jmp 0x488b45
test byte [esi], 0x10
jne 0x488b34
lea eax, [esi + 0x2c]
mov dl, 0x2e
call fcn.004b838c
mov byte [eax], 0
lea edx, [esi + 0x2c]
mov eax, dword [0x4c248c]
call fcn.00486854
push esi
push ebx
call sub.kernel32.dll_FindNextFileA
cmp eax, 1
sbb eax, eax
inc eax
test al, al
je 0x488b4b
cmp byte [esi + 0x2c], 0
jne 0x488b15
push ebx
call sub.kernel32.dll_FindClose
push 0
mov eax, dword [0x4be618]
movsx eax, word [eax]
push eax
push 0x186
mov eax, dword [0x4c248c]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [0x4be784]
cmp byte [eax + 0x300], 0x2e
jne 0x488b86
mov eax, 0x488c50
call fcn.004b1c50
jmp 0x488b99
mov edx, dword [0x4be784]
add edx, 0x300
mov eax, ebp
call fcn.004b81b0
push 0x488c64
push ebp
call sub.kernel32.dll_lstrcatA
mov byte [esi + 0x2c], 0
push esi
push ebp
call sub.kernel32.dll_FindFirstFileA
mov ebx, eax
jmp 0x488be3
test byte [esi], 0x10
jne 0x488bd2
lea eax, [esi + 0x2c]
mov dl, 0x2e
call fcn.004b838c
mov byte [eax], 0
lea edx, [esi + 0x2c]
mov eax, dword [0x4c2490]
call fcn.00486854
push esi
push ebx
call sub.kernel32.dll_FindNextFileA
cmp eax, 1
sbb eax, eax
inc eax
test al, al
je 0x488be9
cmp byte [esi + 0x2c], 0
jne 0x488bb3
push ebx
call sub.kernel32.dll_FindClose
push 0
mov eax, dword [0x4be8c8]
movsx eax, word [eax]
push eax
push 0x186
mov eax, dword [0x4c2490]
push eax
call sub.user32.dll_SendMessageA
mov ebx, 0x48be94
push ebx
push 0xfffffffffffffffc
mov eax, dword [0x4c248c]
push eax
call sub.user32.dll_SetWindowLongA
mov dword [0x4c24c0], eax
push ebx
push 0xfffffffffffffffc
mov eax, dword [0x4c2490]
push eax
call sub.user32.dll_SetWindowLongA
push ebx
push 0xfffffffffffffffc
mov eax, dword [0x4c2488]
push eax
call sub.user32.dll_SetWindowLongA
add esp, 0x140
pop ebp
pop edi
pop esi
pop ebx
ret