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

Disassembly:
push 0x3c8
mov eax, 0x4f583b
call fcn.004cb654
mov edi, ecx
cmp byte [edi + 8], 0
mov esi, dword [ebp + 8]
jne 0x428b67
push esi
lea ecx, [ebp - 0x48]
call fcn.0044093d
xor ebx, ebx
lea ecx, [ebp - 0xd8]
push esi
mov dword [ebp - 4], ebx
call fcn.0044093d
push 0x51f57c
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 1
call fcn.004408e0
push ebx
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x48]
call fcn.00440ea1
lea ecx, [ebp - 0x110]
mov esi, eax
call fcn.00440d86
test esi, esi
jle 0x428909
lea ecx, [ebp - 0xf4]
call fcn.004402d1
lea ecx, [ebp - 0x12c]
call fcn.004402d1
mov eax, ecx
mov byte [ebp - 4], 3
push ebx
push eax
lea eax, [ebp - 0xf4]
push eax
lea ecx, [ebp - 0xd8]
call fcn.004415ea
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0xd4]
call fcn.0044341f
lea ecx, [ebp - 0x12c]
call fcn.00440d86
lea ecx, [ebp - 0xf4]
jmp 0x428932
push 0x51f598
lea ecx, [ebp - 0x148]
call fcn.004408e0
lea eax, [ebp - 0x144]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x44]
call fcn.0042cfc8
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 1
call fcn.00440d86
lea eax, [ebp - 0xd8]
mov ecx, edi
push eax
call fcn.00428630
test al, al
jne 0x428b54
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x3d0]
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x428b54
cmp byte [edi + 8], 0
jne 0x428b4d
lea eax, [ebp - 0x3a4]
mov byte [ebp - 0x3d1], 0
push eax
lea ecx, [ebp - 0x2c]
call fcn.004408e0
push 0x51f4e4
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call fcn.00440986
test al, al
jne 0x4289bb
push 0x51f590
lea ecx, [ebp - 0x2c]
call fcn.00440986
test al, al
je 0x4289bf
mov al, 1
jmp 0x4289c5
mov al, byte [ebp - 0x3d1]
test al, al
jne 0x428b29
push 0x51df14
lea ecx, [ebp - 0x164]
call fcn.004408e0
lea eax, [ebp - 0x164]
mov byte [ebp - 4], 6
push eax
lea edx, [ebp - 0xd8]
lea ecx, [ebp - 0x180]
call fcn.0044310b
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 7
push ecx
mov edx, eax
lea ecx, [ebp - 0xbc]
call fcn.0044310b
pop ecx
pop ecx
lea ecx, [ebp - 0x180]
call fcn.00440d86
lea ecx, [ebp - 0x164]
mov byte [ebp - 4], 0xa
call fcn.00440d86
lea eax, [ebp - 0xbc]
mov ecx, edi
push eax
call fcn.00428630
neg al
lea ecx, [ebp - 0xa0]
sbb al, al
inc al
mov byte [ebp - 0x3d1], al
call fcn.00428240
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0xb
xorps xmm0, xmm0
lea ecx, [ebp - 0x9c]
push eax
movlpd qword [ebp - 0x68], xmm0
call fcn.0044341f
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x80]
call fcn.0044341f
lea ecx, [ebp - 0x3bc]
call fcn.00444be2
lea ecx, [ebp - 0x3cc]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
call fcn.00444be2
test byte [ebp - 0x3d0], 0x10
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
je 0x428ad0
cmp byte [edi + 2], 0
mov byte [ebp - 0x4c], 1
jne 0x428b71
cmp byte [edi], 0
je 0x428ac5
lea eax, [ebp - 0xbc]
mov ecx, edi
push eax
call fcn.00428847
cmp byte [ebp - 0x3d1], 0
je 0x428b08
jmp 0x428afa
cmp byte [edi + 1], 0
jne 0x428b08
cmp byte [ebp - 0x3d1], 0
je 0x428b08
mov ecx, dword [ebp - 0x3b4]
xor eax, eax
add eax, dword [ebp - 0x3b0]
mov byte [ebp - 0x4c], 0
adc ecx, 0
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], ecx
lea eax, [ebp - 0xa0]
mov ecx, edi
push eax
call fcn.00428c6b
lea ecx, [ebp - 0x84]
call fcn.00440d86
lea ecx, [ebp - 0xa0]
call fcn.00440d86
lea ecx, [ebp - 0xbc]
call fcn.00440d86
lea eax, [ebp - 0x3d0]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
mov esi, eax
call fcn.00440d86
test esi, esi
jne 0x428975
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0xd8]
call fcn.00440d86
lea ecx, [ebp - 0x48]
call fcn.00440d86
xor eax, eax
call fcn.004cb5fe
ret 4
cmp byte [ebp - 0x3d1], 0
je 0x428b88
lea eax, [ebp - 0xa0]
mov ecx, edi
push eax
call fcn.00428c6b
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x84]
call fcn.00440d86
lea ecx, [ebp - 0xa0]
call fcn.00440d86
lea ecx, [ebp - 0xbc]
call fcn.00440d86
lea ecx, [ebp - 0x2c]
call fcn.00440d86
jmp 0x428b54