Function at 0x404e39
Capabilities:
Enumerate files on windows

Disassembly:
push 0x2f8
mov eax, 0x5b78ee
call fcn.00580bea
mov ebx, ecx
mov dword [ebp - 0x2c4], ebx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x2c0], eax
mov byte [ebp - 0x2a5], 0
xor edi, edi
mov dword [ebp - 4], edi
push ebx
lea esi, [ebp - 0x34]
call fcn.004081a6
mov byte [ebp - 4], 1
push 0x68a1a0
mov eax, esi
push eax
call fcn.004081d4
mov dword [ebp - 0x2a4], edi
push 0x24c
push edi
lea eax, [ebp - 0x2a0]
push eax
call fcn.005780d0
add esp, 0xc
cmp dword [ebp - 0x1c], 8
mov eax, dword [ebp - 0x30]
jae 0x404ea6
lea eax, [ebp - 0x30]
lea ecx, [ebp - 0x2a4]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x2b0], eax
cmp eax, 0xffffffff
je 0x4050e0
push dword [sym.imp.KERNEL32.dll_FindClose]
push eax
lea esi, [ebp - 0x2c8]
call fcn.0040ddc3
mov byte [ebp - 4], 2
mov byte [ebp - 4], 3
cmp dword [ebp - 0x284], 0
jbe 0x405093
test byte [ebp - 0x2a4], 0x10
jne 0x405093
lea eax, [ebp - 0x2bc]
push eax
call fcn.00405111
mov byte [ebp - 4], 4
and dword [ebp - 0x2bc], 0
lea edi, [ebx + 4]
cmp dword [ebx + 0x18], 8
jb 0x404f1b
mov eax, dword [edi]
jmp 0x404f1d
mov eax, edi
push eax
lea eax, [ebp - 0x2b8]
push eax
call fcn.004085d2
lea eax, [ebp - 0x278]
push eax
lea eax, [ebp - 0x2b4]
push eax
call fcn.004085d2
push ebx
lea esi, [ebp - 0x50]
call fcn.004081a6
mov byte [ebp - 4], 5
push 0x689af4
mov eax, esi
push eax
call fcn.004081d4
lea eax, [ebp - 0x278]
push eax
mov eax, esi
push eax
call fcn.004081d4
mov eax, esi
push eax
lea ecx, [ebp - 0x304]
call fcn.00404ca8
pop ecx
mov byte [ebp - 4], 6
cmp dword [eax + 0x18], 8
jb 0x404f84
mov eax, dword [eax + 4]
jmp 0x404f87
add eax, 4
push eax
lea eax, [ebp - 0x2ac]
push eax
call fcn.0040852d
mov byte [ebp - 4], 8
push 0
push 1
lea esi, [ebp - 0x304]
call fcn.00409bbf
mov eax, dword [ebp - 0x2ac]
mov eax, dword [eax - 0xc]
test eax, eax
jne 0x404fed
cmp dword [ebx + 0x18], 8
jb 0x404fbc
mov edi, dword [edi]
push edi
lea eax, [ebp - 0x2ac]
push eax
call fcn.004085d2
push 0x689d3c
lea eax, [ebp - 0x2ac]
push eax
call fcn.004085f0
lea eax, [ebp - 0x278]
push eax
lea eax, [ebp - 0x2ac]
push eax
call fcn.004085f0
lea eax, [ebp - 0x2ac]
call fcn.0040877f
lea eax, [ebp - 0x2e8]
push eax
call fcn.00405173
mov byte [ebp - 4], 9
lea eax, [ebp - 0x2ac]
lea edi, [ebp - 0x2e8]
call fcn.00408591
lea eax, [ebp - 0x2bc]
push eax
lea eax, [ebp - 0x2e4]
call fcn.004088a9
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x2cc], esp
push eax
mov ecx, edi
call fcn.004051ec
mov byte [ebp - 4], 0xa
mov byte [ebp - 4], 9
mov edi, dword [ebp - 0x2c0]
call fcn.00407c58
add esp, 0x1c
mov byte [ebp - 4], 8
lea eax, [ebp - 0x2e8]
push eax
call fcn.004051bd
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2ac]
call fcn.0040856e
mov byte [ebp - 4], 4
push 0
push 1
lea esi, [ebp - 0x50]
call fcn.00409bbf
mov byte [ebp - 4], 3
lea eax, [ebp - 0x2bc]
push eax
call fcn.00405144
mov dword [ebp - 4], 2
jmp 0x4050af
lea eax, [ebp - 0x2a4]
push eax
push dword [ebp - 0x2b0]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x404ed9
mov byte [ebp - 0x2a5], 1
mov byte [ebp - 4], 1
lea esi, [ebp - 0x2c8]
call fcn.0041b936
mov byte [ebp - 4], 0
push 0
push 1
lea esi, [ebp - 0x34]
call fcn.00409bbf
or dword [ebp - 4], 0xffffffff
mov al, byte [ebp - 0x2a5]
call fcn.00580c46
ret