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

Disassembly:
push ebp
lea ebp, [esp - 0x100]
sub esp, 0x180
mov eax, dword [0x42a060]
xor eax, ebp
mov dword [ebp + 0xfc], eax
mov eax, dword [ebp + 0x108]
mov eax, dword [eax]
push ebx
mov ebx, dword [ebp + 0x10c]
mov dword [ebp - 0x70], ecx
mov ecx, dword [ebp + 0x110]
push esi
push edi
sub eax, 0x10
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x64], ecx
call fcn.00401773
add eax, 0x10
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x54]
call fcn.0040d33b
mov eax, dword [ebp - 0x54]
add eax, 0xfffffff0
mov dword [ebp - 0x78], eax
call fcn.00401773
add eax, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebx]
push dword [eax - 0xc]
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.00401c90
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
and dword [ebp - 0x58], 0
lea ecx, [ebp - 0x44]
push ecx
push eax
mov dword [ebp - 0x5c], eax
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
cmp eax, 1
jne 0x4226bb
lea eax, [ebp - 0x18]
push eax
lea esi, [ebp - 0x48]
call fcn.00401cf3
mov edi, dword [ebp - 0x48]
mov esi, dword [edi - 0xc]
push 0x2e
mov eax, edi
call fcn.004015e9
test eax, eax
pop ecx
jne 0x422599
or ecx, 0xffffffff
jmp 0x42259d
sub eax, edi
mov ecx, eax
mov eax, esi
sub eax, ecx
lea ecx, [ebp - 0x60]
push ecx
lea esi, [ebp - 0x48]
call fcn.00401456
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcmpiA]
push str..pack
push dword [ebp - 0x60]
call ebx
test eax, eax
jne 0x422687
push 0x2e
mov eax, edi
call fcn.004015e9
test eax, eax
pop ecx
jne 0x4225d8
or eax, 0xffffffff
jmp 0x4225da
sub eax, edi
lea ecx, [ebp - 0x74]
push ecx
lea esi, [ebp - 0x48]
call fcn.004014a5
mov edi, esi
call fcn.0040158b
mov eax, dword [ebp - 0x74]
add eax, 0xfffffff0
call fcn.0040175b
mov esi, dword [ebp - 0x48]
mov edi, dword [esi - 0xc]
push 0x2e
mov eax, esi
call fcn.004015e9
test eax, eax
pop ecx
jne 0x422611
or ecx, 0xffffffff
jmp 0x422615
sub eax, esi
mov ecx, eax
mov eax, edi
sub eax, ecx
lea ecx, [ebp - 0x68]
push ecx
lea esi, [ebp - 0x48]
call fcn.00401456
lea edi, [ebp - 0x60]
call fcn.0040158b
mov eax, dword [ebp - 0x68]
add eax, 0xfffffff0
call fcn.0040175b
push str..jar
push dword [ebp - 0x60]
call ebx
test eax, eax
jne 0x422684
push dword [ebp + 0x114]
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x54]
lea edi, [ebp - 0x6c]
call fcn.0041c768
pop ecx
lea esi, [ebp - 0x80]
call fcn.0042233e
mov ebx, dword [ebp - 0x64]
mov edi, eax
call fcn.0040d14e
mov eax, dword [ebp - 0x80]
add eax, 0xfffffff0
call fcn.0040175b
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
call fcn.0040175b
mov edi, dword [ebp - 0x48]
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
mov ebx, eax
mov eax, dword [ebp - 0x60]
dec ebx
neg ebx
sbb bl, bl
add eax, 0xfffffff0
inc bl
call fcn.0040175b
lea eax, [edi - 0x10]
call fcn.0040175b
test bl, bl
jne 0x422574
mov ebx, dword [ebp - 0x50]
push 0x425d74
lea eax, [ebp - 0x54]
lea edi, [ebp - 0x50]
call fcn.0041c768
pop ecx
lea edi, [ebp - 0x4c]
call fcn.0040158b
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
call fcn.0040175b
cmp dword [ebp - 0x5c], 0
je 0x4226f2
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_FindClose]
and dword [ebp - 0x5c], 0
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
push eax
lea esi, [ebp - 0x5c]
call fcn.00422ac4
mov esi, dword [sym.imp.KERNEL32.dll_FindNextFileA]
jmp 0x42274a
lea eax, [ebp - 0x44]
call fcn.0041c1a8
test al, al
je 0x42274a
push dword [ebp + 0x114]
lea eax, [ebp - 0x18]
push dword [ebp - 0x64]
lea edi, [ebp - 0x50]
push ebx
push eax
lea eax, [ebp - 0x54]
call fcn.0041c768
pop ecx
mov ecx, dword [ebp - 0x70]
push eax
call fcn.004224d8
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
call fcn.0040175b
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x5c]
call esi
cmp eax, 1
je 0x422710
cmp dword [ebp - 0x5c], 0
pop edi
pop esi
pop ebx
je 0x42276a
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [ebp - 0x4c]
add eax, 0xfffffff0
call fcn.0040175b
mov eax, dword [ebp - 0x78]
call fcn.0040175b
mov ecx, dword [ebp + 0xfc]
xor ecx, ebp
call fcn.00423ac2
add ebp, 0x100
leave
ret 0x10