Function at 0x4aa2a6
Capabilities:
Enumerate files on windows

Disassembly:
push 0x334
mov eax, 0x694735
call fcn.0056e23b
mov edi, ecx
and dword [ebp - 0x33c], 0
lea ecx, [ebp - 0xe0]
call fcn.004d2654
and dword [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.004173bc
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c]
call fcn.004173bc
mov byte [ebp - 4], 2
or dword [ebp - 0x334], 0xffffffff
push 2
pop ebx
mov dword [ebp - 0x338], ebx
lea esi, [ebx + 0x41]
push esi
lea ecx, [ebp - 0xe0]
call fcn.004d2843
test eax, eax
jne 0x4aa52f
lea ecx, [ebp - 0xe0]
call fcn.004d281a
cmp eax, 5
movzx eax, si
push eax
lea eax, [ebp - 0x48]
jne 0x4aa34a
push 0x6cf2e0
push eax
call fcn.0041ccda
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x44]
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
push ecx
push eax
push 0
call fcn.004552fa
add esp, 0x18
jmp 0x4aa358
push 0x6cf314
push eax
call fcn.0041ccda
add esp, 0xc
lea ecx, [ebp - 0xe0]
call fcn.004d2741
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push 0x6cf330
push eax
call fcn.0041ccda
add esp, 0xc
lea ecx, [ebp - 0x330]
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x334], eax
cmp eax, 0xffffffff
je 0x4aa52f
lea ebx, [edi + 0x818]
mov ecx, ebx
call fcn.004c2c9d
mov ecx, ebx
call fcn.00451480
test eax, eax
jne 0x4aa54b
lea eax, [ebp - 0x304]
push eax
push 0x6cf33c
call fcn.0064806f
pop ecx
pop ecx
test eax, eax
je 0x4aa50e
lea eax, [ebp - 0x304]
push eax
push 0x6cf340
call fcn.0064806f
pop ecx
pop ecx
test eax, eax
je 0x4aa50e
lea eax, [ebp - 0x304]
push eax
push 0x6cf348
call fcn.0064806f
pop ecx
pop ecx
test eax, eax
je 0x4aa50e
lea eax, [ebp - 0x304]
push eax
push 0x6cf360
call fcn.0064806f
pop ecx
pop ecx
test eax, eax
je 0x4aa50e
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x304]
push ecx
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push 0x6cf36c
push eax
call fcn.0041ccda
add esp, 0x10
test byte [ebp - 0x330], 0x10
je 0x4aa4d4
lea ebx, [edi + 0x808]
inc dword [ebx]
inc dword [edi + 0x810]
push 0x10
call fcn.0056def4
mov esi, eax
pop ecx
mov dword [ebp - 0x340], esi
mov byte [ebp - 4], 3
test esi, esi
je 0x4aa4a2
lea eax, [edi + 0x7e8]
mov dword [esi + 4], ebx
mov dword [esi], eax
lea ebx, [edi + 0x818]
lea eax, [edi + 0x810]
mov dword [esi + 0xc], ebx
mov dword [esi + 8], eax
jmp 0x4aa4aa
xor esi, esi
lea ebx, [edi + 0x818]
mov byte [ebp - 4], 2
test esi, esi
je 0x4aa50e
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
mov ecx, esi
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.004a84a1
push 0x10
push esi
test eax, eax
je 0x4aa544
call fcn.0056df27
pop ecx
jmp 0x4aa50d
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.00429506
pop ecx
test eax, eax
jne 0x4aa50e
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.005655b9
add dword [edi + 0x7e8], eax
adc dword [edi + 0x7ec], edx
inc dword [edi + 0x808]
pop ecx
lea eax, [ebp - 0x330]
push eax
push dword [ebp - 0x334]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x4aa3ae
mov ebx, dword [ebp - 0x338]
inc ebx
mov dword [ebp - 0x338], ebx
cmp ebx, 0x19
jle 0x4aa2f5
xor ebx, ebx
inc ebx
jmp 0x4aa551
call fcn.0056df27
pop ecx
pop ecx
mov ebx, dword [ebp - 0x33c]
mov eax, dword [ebp - 0x334]
cmp eax, 0xffffffff
je 0x4aa563
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c]
call fcn.0041786a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.0041786a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xe0]
call fcn.004d26ba
mov eax, ebx
call fcn.0056e1e5
ret