Function at 0x446688
Capabilities:
Enumerate files on windows

Disassembly:
push 0x504
mov eax, 0x57a7db
call fcn.00474262
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x2a8]
mov edi, dword [ebp + 0xc]
push eax
call fcn.00421580
xor ebx, ebx
lea ecx, [ebp - 0x290]
push edi
mov dword [ebp - 4], ebx
call fcn.00421580
lea eax, [ebp - 0x290]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.004379f3
lea eax, [ebp - 0x278]
mov byte [ebp - 4], 2
push eax
call fcn.004375e2
lea eax, [ebp - 0x278]
push eax
lea eax, [ebp - 0x248]
push eax
call fcn.00437433
add esp, 0x14
lea ecx, [ebp - 0x290]
push eax
call fcn.00421500
push ebx
push 1
lea ecx, [ebp - 0x248]
call fcn.00421690
mov esi, 0x57e474
push esi
call fcn.00462543
pop ecx
push eax
push esi
lea ecx, [ebp - 0x2a8]
call fcn.00421cd0
cmp dword [ebp - 0x294], 8
lea ecx, [ebp - 0x510]
lea eax, [ebp - 0x2a8]
cmovae eax, dword [ebp - 0x2a8]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x4469ef
lea eax, [ebp - 0x510]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x4469ef
xor eax, eax
mov dword [ebp - 0x21c], 7
mov dword [ebp - 0x220], ebx
mov word [ebp - 0x230], ax
cmp word [ebp - 0x4e4], ax
jne 0x446793
mov eax, ebx
jmp 0x4467a0
lea eax, [ebp - 0x4e4]
push eax
call fcn.00462543
pop ecx
push eax
lea eax, [ebp - 0x4e4]
push eax
lea ecx, [ebp - 0x230]
call fcn.004217f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x2c0]
push eax
call fcn.004379f3
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x278]
call fcn.00425770
push ebx
push 1
lea ecx, [ebp - 0x2c0]
call fcn.00421a80
lea eax, [ebp - 0x278]
push eax
call fcn.004375e2
lea eax, [ebp - 0x278]
push eax
lea eax, [ebp - 0x2c0]
push eax
call fcn.00437433
add esp, 0xc
lea ecx, [ebp - 0x230]
push eax
call fcn.00421500
push ebx
push 1
lea ecx, [ebp - 0x2c0]
call fcn.00421690
push 0x2e
pop eax
cmp word [ebp - 0x4e4], ax
je 0x446985
cmp word [ebp - 0x4e2], 0
je 0x446985
cmp word [ebp - 0x4e2], ax
jne 0x446857
cmp word [ebp - 0x4e0], 0
je 0x446985
test byte [ebp - 0x510], 0x10
jne 0x446985
xor eax, eax
mov dword [ebp - 0x24c], 7
mov dword [ebp - 0x250], ebx
mov word [ebp - 0x260], ax
push 0x208
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 4
push ebx
push eax
call fcn.00452070
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
lea eax, [ebp - 0x218]
push 0x5d4048
push eax
call fcn.004230f0
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
lea eax, [ebp - 0x2c0]
push eax
call fcn.00439cb9
add esp, 0x20
lea ecx, [ebp - 0x260]
push eax
call fcn.00421500
push ebx
push 1
lea ecx, [ebp - 0x2c0]
call fcn.00421690
cmp dword [ebp - 0x24c], 8
lea eax, [ebp - 0x260]
push str..lnk
cmovae eax, dword [ebp - 0x260]
push eax
call fcn.004624e1
pop ecx
pop ecx
test eax, eax
jne 0x446977
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x248]
push eax
call fcn.00439f0b
cmp dword [ebp - 0x27c], 8
lea ecx, [ebp - 0x290]
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 5
cmovae ecx, dword [ebp - 0x290]
cmp dword [ebp - 0x234], 8
push ecx
cmovae eax, dword [ebp - 0x248]
push eax
call fcn.004368d0
add esp, 0x10
test eax, eax
jne 0x44699c
push ebx
push 1
lea ecx, [ebp - 0x248]
call fcn.00421690
push ebx
push 1
lea ecx, [ebp - 0x260]
call fcn.00421690
push ebx
push 1
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 2
call fcn.00421690
jmp 0x446757
cmp dword [ebp - 0x234], 8
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push eax
push edi
call fcn.004624e1
xor ebx, ebx
test eax, eax
pop ecx
pop ecx
setne bl
lea ecx, [ebp - 0x248]
xor esi, esi
inc ebx
push esi
push 1
call fcn.00421690
push esi
push 1
lea ecx, [ebp - 0x260]
call fcn.00421690
push esi
push 1
lea ecx, [ebp - 0x230]
call fcn.00421690
jmp 0x4469f1
xor esi, esi
push esi
push 1
lea ecx, [ebp - 0x278]
call fcn.00421a80
push esi
push 1
lea ecx, [ebp - 0x290]
call fcn.00421690
push esi
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00421690
mov eax, ebx
call fcn.0047421d
ret 8