Function at 0x415a3c
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
sub esp, 0x8d8
lea ebp, [esp - 4]
mov eax, dword [0x509690]
xor eax, ebp
mov dword [ebp + 0x8d8], eax
push 0x24
mov eax, 0x4c36fe
call fcn.0043e682
mov eax, dword [ebp + 0x8e4]
mov edi, dword [ebp + 0x8e8]
push eax
lea ecx, [ebp + 0x250]
mov dword [ebp - 0x14], edi
call fcn.004015d0
xor esi, esi
push edi
lea ecx, [ebp + 0x26c]
mov dword [ebp - 4], esi
call fcn.004015d0
lea eax, [ebp + 0x26c]
push eax
xor ebx, ebx
lea eax, [ebp + 0x288]
inc ebx
push eax
mov byte [ebp - 4], bl
call fcn.0041ede9
lea eax, [ebp + 0x288]
push eax
mov byte [ebp - 4], 2
call fcn.0041ecbf
lea eax, [ebp + 0x288]
push eax
lea eax, [ebp + 0x2a4]
push eax
call fcn.0041f4bb
add esp, 0x14
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x26c]
mov byte [ebp - 4], 3
call fcn.00401d10
push esi
push ebx
lea ecx, [ebp + 0x2a4]
mov byte [ebp - 4], 2
call fcn.004017a0
push 0x4cbe70
lea ecx, [ebp + 0x250]
call fcn.00403470
cmp dword [ebp + 0x268], 8
mov eax, dword [ebp + 0x254]
jae 0x415b14
lea eax, [ebp + 0x254]
lea ecx, [ebp]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [ebp - 0x10], eax
je 0x415d5a
mov edi, 0x206
lea eax, [ebp]
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
cmp eax, esi
je 0x415d5a
lea eax, [ebp + 0x2c]
push eax
lea ecx, [ebp + 0x2a4]
call fcn.004015d0
lea eax, [ebp + 0x2a4]
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 4
call fcn.0041ede9
pop ecx
pop ecx
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x288]
mov byte [ebp - 4], 5
call fcn.00401640
push esi
push ebx
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 4
call fcn.00401750
lea eax, [ebp + 0x288]
push eax
call fcn.0041ecbf
lea eax, [ebp + 0x288]
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.0041f4bb
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebp + 0x2a4]
mov byte [ebp - 4], 6
call fcn.00401d10
push esi
push ebx
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 4
call fcn.004017a0
cmp word [ebp + 0x2c], 0x2e
je 0x415ccd
cmp word [ebp + 0x2e], si
je 0x415ccd
cmp word [ebp + 0x2e], 0x2e
jne 0x415bf1
cmp word [ebp + 0x30], si
je 0x415ccd
test byte [ebp], 0x10
jne 0x415ccd
push edi
lea eax, [ebp + 0x2c2]
push esi
push eax
mov word [ebp + 0x2c0], si
call fcn.0043db10
push edi
lea eax, [ebp + 0x4ca]
push esi
push eax
mov word [ebp + 0x4c8], si
call fcn.0043db10
mov eax, dword [ebp + 0x2a8]
add esp, 0x18
cmp dword [ebp + 0x2bc], 8
jae 0x415c3d
lea eax, [ebp + 0x2a8]
push eax
lea eax, [ebp + 0x4c8]
push 0x4ca34c
push eax
call fcn.0043ec14
lea eax, [ebp + 0x2c0]
push eax
lea eax, [ebp + 0x4c8]
push eax
call fcn.0041daad
lea eax, [ebp + 0x2c0]
push 0x4cbe64
push eax
call fcn.0043ecaa
add esp, 0x1c
test eax, eax
jne 0x415ccd
push edi
lea eax, [ebp + 0x6d2]
push esi
push eax
mov word [ebp + 0x6d0], si
call fcn.0043db10
lea eax, [ebp + 0x6d0]
push eax
lea eax, [ebp + 0x4c8]
push eax
call fcn.0041da34
mov eax, dword [ebp + 0x270]
add esp, 0x14
cmp dword [ebp + 0x284], 8
jae 0x415cba
lea eax, [ebp + 0x270]
push eax
lea eax, [ebp + 0x6d0]
push eax
call fcn.0041e131
test eax, eax
pop ecx
pop ecx
jne 0x415ce3
push esi
push ebx
lea ecx, [ebp + 0x2a4]
mov byte [ebp - 4], 2
call fcn.004017a0
jmp 0x415b30
lea eax, [ebp + 0x6d0]
push eax
push dword [ebp - 0x14]
call fcn.0043ecaa
test eax, eax
pop ecx
pop ecx
je 0x415d56
push 2
pop edi
push esi
push ebx
lea ecx, [ebp + 0x2a4]
call fcn.004017a0
push esi
push ebx
lea ecx, [ebp + 0x288]
call fcn.00401750
push esi
push ebx
lea ecx, [ebp + 0x26c]
call fcn.004017a0
push esi
push ebx
lea ecx, [ebp + 0x250]
call fcn.004017a0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x8d8]
xor ecx, ebp
call fcn.0043daf5
add ebp, 0x8dc
leave
ret 8
mov edi, ebx
jmp 0x415cfb
xor edi, edi
jmp 0x415d08