Function at 0x487245
Capabilities:
Enumerate files on windows
Enumerate files recursively

Disassembly:
push 0x1ac
mov eax, 0x683f93
call fcn.005b8597
mov eax, dword [ebp + 0x1c]
mov ebx, dword [ebp + 0x20]
mov esi, ecx
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x16c], ebx
mov dword [ebp - 4], 1
call fcn.004b8afa
push eax
lea ecx, [ebp - 0x154]
call fcn.004015a6
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 2
call fcn.0044bfe2
and dword [ebp - 0x158], 0
mov byte [ebp - 4], 3
call fcn.004b8afa
push eax
lea ecx, [ebp - 0x168]
call fcn.004015a6
push 0x6a66ac
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x174]
push eax
mov byte [ebp - 4], 4
call fcn.00405bb5
add esp, 0xc
push eax
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 5
call fcn.0040191c
mov ecx, dword [ebp - 0x174]
add ecx, 0xfffffff0
mov byte [ebp - 4], 4
call fcn.0040124d
mov edi, dword [ebp - 0x154]
lea eax, [ebp - 0x150]
push eax
push edi
call dword [0x69b518]
mov dword [ebp - 0x15c], eax
mov eax, dword [esi + 0x18]
test eax, eax
je 0x487375
push dword [eax + 0x20]
call dword [0x69b9f0]
test eax, eax
je 0x487375
push 0x2f
push ecx
add edi, 0xfffffff0
mov dword [ebp - 0x178], esp
mov ebx, esp
push edi
call fcn.0040149c
add eax, 0x10
pop ecx
mov dword [ebx], eax
lea eax, [ebp - 0x160]
push eax
mov ecx, esi
call fcn.00486c97
push eax
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 6
call fcn.0040191c
mov ecx, dword [ebp - 0x160]
add ecx, 0xfffffff0
mov byte [ebp - 4], 4
call fcn.0040124d
push dword [ebp - 0x168]
mov ecx, dword [esi + 0x18]
call fcn.004bbcfa
mov ebx, dword [ebp - 0x16c]
cmp dword [ebp - 0x15c], 0xffffffff
je 0x48752d
mov ecx, esi
call fcn.00486a2f
lea eax, [ebp - 0x124]
push 0x69fdd0
push eax
call fcn.005b9b40
pop ecx
pop ecx
test eax, eax
je 0x4874f0
lea eax, [ebp - 0x124]
push 0x6a66a8
push eax
call fcn.005b9b40
pop ecx
pop ecx
test eax, eax
je 0x4874f0
test byte [ebp - 0x150], 0x10
je 0x4874f0
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x16c]
push eax
call fcn.00405bb5
add esp, 0xc
push eax
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 7
call fcn.0040191c
mov ecx, dword [ebp - 0x16c]
add ecx, 0xfffffff0
mov byte [ebp - 4], 4
call fcn.0040124d
mov eax, dword [ebp - 0x154]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x160], esp
mov edi, esp
push eax
call fcn.0040149c
add eax, 0x10
pop ecx
mov dword [edi], eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xc]
xor ecx, ecx
test eax, eax
sete cl
cmp dword [ebp + 0x18], 0
mov dword [esi + 0x14], ecx
je 0x48748e
mov eax, dword [ebp + 8]
push 0
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x160], esp
mov edi, esp
push eax
call fcn.0040149c
add eax, 0x10
pop ecx
mov dword [edi], eax
lea eax, [ebp - 0x150]
push eax
lea ecx, [ebp - 0x1b8]
call fcn.00486bf3
push dword [ebp + 0x14]
mov eax, dword [esi]
lea ecx, [ebp - 0x1b8]
push ecx
mov ecx, esi
call dword [eax + 0x14]
inc dword [ebp - 0x158]
test ebx, ebx
je 0x48748e
push ebx
call dword [0x69b50c]
cmp dword [ebp + 0x10], 0
je 0x4874f0
mov eax, dword [ebp + 0xc]
push ebx
push dword [ebp - 0x164]
add eax, 0xfffffff0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ecx
mov dword [ebp - 0x160], esp
mov edi, esp
push eax
call fcn.0040149c
add eax, 0x10
mov dword [edi], eax
mov eax, esp
mov dword [ebp - 0x174], esp
push 0x69cdcc
lea ecx, [ebp - 0x154]
push ecx
push eax
mov byte [ebp - 4], 8
call fcn.00405bb5
add esp, 0xc
mov ecx, esi
mov byte [ebp - 4], 4
call fcn.00487245
add dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x164]
test eax, eax
je 0x487500
mov eax, dword [eax]
test eax, eax
jne 0x487521
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x15c]
call dword [0x69b510]
test eax, eax
je 0x487521
cmp dword [esi + 0x14], 0
je 0x487382
push dword [ebp - 0x15c]
call dword [0x69b51c]
mov eax, dword [ebp - 0x164]
test eax, eax
je 0x487541
mov eax, dword [eax]
test eax, eax
jne 0x4876a2
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x170]
push eax
call fcn.00405b5e
add esp, 0xc
push eax
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 9
call fcn.0040191c
mov ecx, dword [ebp - 0x170]
add ecx, 0xfffffff0
mov byte [ebp - 4], 4
call fcn.0040124d
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x154]
call dword [0x69b518]
mov dword [ebp - 0x15c], eax
cmp eax, 0xffffffff
je 0x4876a2
test byte [ebp - 0x150], 0x10
jne 0x487665
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x178]
push eax
call fcn.00405bb5
add esp, 0xc
push eax
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0xa
call fcn.0040191c
mov ecx, dword [ebp - 0x178]
add ecx, 0xfffffff0
mov byte [ebp - 4], 4
call fcn.0040124d
mov eax, dword [ebp - 0x154]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x170], esp
mov edi, esp
push eax
call fcn.0040149c
add eax, 0x10
pop ecx
mov dword [edi], eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10]
xor ecx, ecx
test eax, eax
mov eax, dword [ebp + 8]
sete cl
push 0
add eax, 0xfffffff0
push ecx
mov dword [ebp - 0x170], esp
mov edi, esp
push eax
mov dword [esi + 0x14], ecx
call fcn.0040149c
add eax, 0x10
pop ecx
mov dword [edi], eax
lea eax, [ebp - 0x150]
push eax
lea ecx, [ebp - 0x1b8]
call fcn.00486bf3
push dword [ebp + 0x14]
mov eax, dword [esi]
lea ecx, [ebp - 0x1b8]
push ecx
mov ecx, esi
call dword [eax + 0x14]
inc dword [ebp - 0x158]
test ebx, ebx
je 0x487665
push ebx
call dword [0x69b50c]
mov eax, dword [ebp - 0x164]
test eax, eax
je 0x487675
mov eax, dword [eax]
test eax, eax
jne 0x487696
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x15c]
call dword [0x69b510]
test eax, eax
je 0x487696
cmp dword [esi + 0x14], 0
je 0x48759c
push dword [ebp - 0x15c]
call dword [0x69b51c]
mov ecx, dword [ebp - 0x168]
add ecx, 0xfffffff0
call fcn.0040124d
lea ecx, [ebp - 0x1b8]
call fcn.0044b8fc
mov ecx, dword [ebp - 0x154]
add ecx, 0xfffffff0
call fcn.0040124d
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.0040124d
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
call fcn.0040124d
mov eax, dword [ebp - 0x158]
call fcn.005b861a
ret 0x1c