Function at 0x1004b174
Capabilities:
Enumerate files on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x274
mov eax, dword [0x10086084]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor edi, edi
lea eax, [ebp - 0x258]
push 0x250
push edi
push eax
mov esi, ecx
mov dword [ebp - 0x25c], edi
mov dword [ebp - 0x268], edi
or ebx, 0xffffffff
call sub.msvcrt.dll_memset
add esp, 0xc
mov dword [ebp - 0x26c], edi
lea edx, [ebp - 0x26c]
mov ecx, esi
call fcn.100370ec
mov esi, eax
test esi, esi
js 0x1004b3a8
mov ecx, dword [ebp - 0x26c]
lea eax, [ebp - 0x25c]
push eax
mov edx, 0x10009c40
call fcn.1003694f
mov esi, eax
test esi, esi
js 0x1004b38b
mov ecx, dword [ebp - 0x25c]
lea eax, [ebp - 0x268]
push eax
mov edx, 0x100043c0
call fcn.1003694f
mov esi, eax
test esi, esi
js 0x1004b36e
lea eax, [ebp - 0x258]
push eax
push dword [ebp - 0x268]
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x1004b242
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
jle 0x1004b244
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x1004b36e
xor eax, eax
inc eax
test eax, eax
je 0x1004b36e
xor eax, eax
inc eax
test byte [ebp - 0x258], 0x10
mov dword [ebp - 0x264], eax
je 0x1004b2ef
lea ecx, [ebp - 0x22c]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0x1004b274
sub ecx, edx
sar ecx, 1
cmp ecx, 0x20
jne 0x1004b2e9
lea eax, [ebp - 0x260]
mov dword [ebp - 0x270], edi
push eax
lea edx, [ebp - 0x270]
mov dword [ebp - 0x260], edi
lea ecx, [ebp - 0x22c]
call fcn.100364bb
mov edi, dword [ebp - 0x270]
mov esi, eax
test esi, esi
js 0x1004b2d0
cmp dword [ebp - 0x260], 0x10
jne 0x1004b2d0
lea edx, [ebp - 0x264]
mov ecx, edi
call fcn.10047c3c
mov esi, eax
test edi, edi
je 0x1004b2e7
push edi
xor edi, edi
push edi
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1004b2e9
xor edi, edi
mov eax, dword [ebp - 0x264]
test esi, esi
js 0x1004b36e
test eax, eax
jne 0x1004b346
mov ecx, dword [ebp - 0x25c]
lea eax, [ebp - 0x260]
push eax
lea edx, [ebp - 0x22c]
mov dword [ebp - 0x260], edi
call fcn.1003694f
mov esi, eax
test esi, esi
js 0x1004b36e
push edi
push edi
mov edi, dword [ebp - 0x260]
xor edx, edx
inc edx
mov ecx, edi
call fcn.1008291e
test edi, edi
je 0x1004b344
push edi
xor edi, edi
push edi
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1004b346
xor edi, edi
push 0x250
lea eax, [ebp - 0x258]
push edi
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x258]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
jmp 0x1004b24d
cmp dword [ebp - 0x268], 0
je 0x1004b38b
push dword [ebp - 0x268]
push edi
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [ebp - 0x25c], 0
je 0x1004b3a8
push dword [ebp - 0x25c]
push edi
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [ebp - 0x26c], 0
je 0x1004b3c5
push dword [ebp - 0x26c]
push edi
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp ebx, 0xffffffff
je 0x1004b3d1
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10083b20
mov esp, ebp
pop ebp
ret