Function at 0x4e3e48
Capabilities:
Enumerate files on windows

Disassembly:
push 0x628
mov eax, 0x561045
call fcn.0050b5da
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
push esi
mov dword [ebp - 0x634], eax
call fcn.0040b528
test al, al
jne 0x4e3e94
push esi
push str.GetDirectories:_search_path__s_does_not_exist
push 0x22
lea ecx, [ebp - 0x630]
call fcn.004dba37
push 0x5e5eac
lea eax, [ebp - 0x630]
push eax
call fcn.0050ce64
push dword [ebp - 0x634]
push edi
push dword [edi + 4]
push dword [edi]
call fcn.00408f84
mov eax, dword [edi]
xor ecx, ecx
mov dword [edi + 4], eax
xor eax, eax
mov dword [ebp - 0x14], 7
mov dword [ebp - 0x18], ecx
mov word [ebp - 0x28], ax
lea eax, [ebp - 0x28]
mov dword [ebp - 4], ecx
cmp eax, esi
je 0x4e3ed1
push 0xffffffffffffffff
push ecx
push esi
mov ecx, eax
call fcn.00406bf9
push 0x56a38c
lea ecx, [ebp - 0x40]
call fcn.00405753
push 1
push eax
push esi
mov byte [ebp - 4], 1
call fcn.00406071
mov bl, al
mov byte [ebp - 4], 0
push 0
neg bl
lea ecx, [ebp - 0x40]
push 1
sbb bl, bl
call fcn.004069fb
add bl, 1
je 0x4e3f34
push 0x56a38c
lea ecx, [ebp - 0x40]
call fcn.00405753
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
call fcn.00406a4d
push 0
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0
call fcn.004069fb
push 0xffffffffffffffff
push 0
push dword [ebp - 0x634]
lea ecx, [ebp - 0x28]
call fcn.00406a4d
cmp dword [ebp - 0x14], 8
lea ecx, [ebp - 0x2a8]
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
mov dword [ebp - 0x634], ebx
cmp ebx, 0xffffffff
jne 0x4e3f9c
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 3
je 0x4e40ab
cmp eax, 2
je 0x4e40ab
push str.directory_search_failed
push eax
push 0xf
lea ecx, [ebp - 0x630]
call fcn.004e2692
jmp 0x4e3e83
push 0x57718c
lea eax, [ebp - 0x27c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x4e408e
push 0x5c3834
lea eax, [ebp - 0x27c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
je 0x4e408e
test byte [ebp - 0x2a8], 0x10
je 0x4e408e
push esi
lea ecx, [ebp - 0x40]
call fcn.00405700
push 0x56a38c
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 3
call fcn.00405753
push 1
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 4
push eax
call fcn.00406071
mov bl, al
mov byte [ebp - 4], 3
push 0
neg bl
lea ecx, [ebp - 0x58]
push 1
sbb bl, bl
call fcn.004069fb
add bl, 1
je 0x4e4050
push 0x56a38c
lea ecx, [ebp - 0x58]
call fcn.00405753
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
call fcn.00406a4d
push 0
push 1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 3
call fcn.004069fb
lea eax, [ebp - 0x27c]
push eax
call fcn.0040701e
pop ecx
push eax
lea eax, [ebp - 0x27c]
push eax
lea ecx, [ebp - 0x40]
call fcn.00406b56
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.0040ef35
push 0
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0
call fcn.004069fb
mov ebx, dword [ebp - 0x634]
lea eax, [ebp - 0x2a8]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x4e3f9c
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
push 0
push 1
lea ecx, [ebp - 0x28]
call fcn.004069fb
call fcn.0050b58c
ret 0xc