Function at 0x10018a42
Capabilities:
Enumerate files on windows

Disassembly:
push 0x1e0
mov eax, 0x10086879
call fcn.1006d55a
mov edi, dword [ebp + 8]
xor ebx, ebx
mov esi, ebx
mov dword [ebp - 0x1b0], esi
mov dword [ebp - 0x1b8], esi
call fcn.10018a1a
test al, al
jne 0x10018a97
mov eax, dword [0x100c47a0]
push 0x64
cdq
pop ecx
idiv ecx
xor ecx, ecx
push 4
lea eax, [edx + 0x63]
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.1006c443
push eax
call fcn.1006dc4d
pop ecx
pop ecx
push edi
lea ecx, [ebp - 0x1c0]
call fcn.10001588
mov dword [ebp - 4], ebx
call fcn.100188fa
test al, al
jne 0x10018b26
mov eax, dword [0x100c47a0]
cdq
sub eax, edx
mov edi, eax
mov dword [ebp - 0x1b4], 1
mov eax, dword [ebp - 0x1b4]
mov ecx, ebx
sar edi, 1
test edi, edi
jle 0x10018b1b
mov eax, dword [0x100c47a0]
cdq
and edx, 3
add edx, eax
sar edx, 2
mov esi, ebx
mov eax, edi
mov dword [ebp - 0x1b8], edi
test edx, edx
jle 0x10018b0a
mov eax, esi
mov dword [ebp - 0x1bc], edx
add dword [ebp - 0x1b4], eax
dec eax
dec dword [ebp - 0x1bc]
jne 0x10018af5
mov eax, dword [ebp - 0x1b8]
add esi, ecx
dec eax
mov dword [ebp - 0x1b8], eax
jne 0x10018ae9
mov eax, dword [ebp - 0x1b4]
inc ecx
cmp ecx, eax
jl 0x10018acd
mov esi, dword [ebp - 0x1b0]
lea eax, [ebp - 0x1c0]
push eax
call fcn.100188d0
pop ecx
test al, al
je 0x10018cc0
push str..exe
lea eax, [ebp - 0x1c0]
push eax
lea eax, [ebp - 0x1bc]
push eax
call fcn.1000b65d
add esp, 0xc
lea ecx, [ebp - 0x150]
push ecx
push dword [eax]
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov ecx, dword [ebp - 0x1bc]
add ecx, 0xfffffff0
mov edi, eax
call fcn.10001efd
cmp edi, 0xffffffff
je 0x10018cc0
test byte [ebp - 0x150], 0x20
je 0x10018bf9
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp - 0x1c8]
call fcn.10001588
or esi, 1
push 0x1008ad8c
mov ecx, eax
mov byte [ebp - 4], 1
mov dword [ebp - 0x1b0], esi
mov dword [ebp - 0x1b8], esi
call fcn.10003575
test eax, eax
je 0x10018bf9
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp - 0x1b4]
call fcn.10001588
push 2
pop ecx
or esi, ecx
mov dword [ebp - 4], ecx
push 0x1008c7d8
mov ecx, eax
mov dword [ebp - 0x1b0], esi
mov dword [ebp - 0x1b8], esi
call fcn.10003575
mov byte [ebp - 0x1a9], 1
test eax, eax
jne 0x10018bff
mov byte [ebp - 0x1a9], bl
mov eax, dword [ebp - 0x1b0]
test al, 2
je 0x10018c26
mov ecx, dword [ebp - 0x1b4]
and eax, 0xfffffffd
lea ecx, [ecx - 0x10]
mov dword [ebp - 0x1b0], eax
call fcn.10001efd
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 4], ebx
test al, 1
je 0x10018c44
mov ecx, dword [ebp - 0x1c8]
and eax, 0xfffffffe
lea ecx, [ecx - 0x10]
mov dword [ebp - 0x1b0], eax
call fcn.10001efd
cmp byte [ebp - 0x1a9], 0
je 0x10018c9d
lea ecx, [ebp - 0x1ec]
call fcn.1001659c
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 4], 3
call fcn.10001588
push 4
pop ecx
push dword [eax]
mov byte [ebp - 4], cl
lea ecx, [ebp - 0x1ec]
call fcn.10016759
mov ecx, dword [ebp - 0x1c4]
lea ecx, [ecx - 0x10]
call fcn.10001efd
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 4], bl
call fcn.100166f9
lea eax, [ebp - 0x150]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
mov esi, dword [ebp - 0x1b0]
test eax, eax
jne 0x10018b7e
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
call fcn.1001891e
test al, al
jne 0x10018cd8
mov edi, dword [0x100c47a0]
mov esi, edi
inc ebx
dec esi
cmp ebx, 0x66
jb 0x10018cd1
mov ecx, dword [ebp - 0x1c0]
lea ecx, [ecx - 0x10]
call fcn.10001efd
call fcn.1006d509
ret