Function at 0x4091b5
Capabilities:
Enumerate files on windows

Disassembly:
push 0x284
mov eax, 0x44ad9a
call fcn.004331a0
mov eax, dword [ebp + 0x24]
mov edi, ecx
mov dword [ebp - 0x270], eax
xor ebx, ebx
push 0xff
lea eax, [ebp - 0x10f]
push ebx
push eax
mov dword [ebp - 4], ebx
mov byte [ebp - 0x110], bl
call fcn.004328f0
add esp, 0xc
cmp byte [ebp + 0x28], bl
je 0x40923e
cmp dword [ebp + 0x20], 0x10
mov edx, dword [ebp + 0xc]
jae 0x409200
lea edx, [ebp + 0xc]
lea eax, [edi + 0x84]
cmp dword [eax + 0x18], 0x10
jb 0x409211
mov eax, dword [eax + 4]
jmp 0x409214
add eax, 4
cmp dword [edi + 0x80], 0x10
jb 0x409222
mov ecx, dword [edi + 0x6c]
jmp 0x409225
lea ecx, [edi + 0x6c]
push edx
push eax
push ecx
lea eax, [ebp - 0x110]
push str._s_s_s.
push eax
call fcn.00435a0d
add esp, 0x14
jmp 0x409283
push 0xffffffffffffffff
push ebx
lea eax, [ebp + 8]
push eax
lea ecx, [edi + 0x84]
call fcn.004018b9
cmp dword [ebp + 0x20], 0x10
mov ecx, dword [ebp + 0xc]
jae 0x40925c
lea ecx, [ebp + 0xc]
cmp dword [edi + 0x80], 0x10
jb 0x40926a
mov eax, dword [edi + 0x6c]
jmp 0x40926d
lea eax, [edi + 0x6c]
push ecx
push eax
lea eax, [ebp - 0x110]
push str._s_s.
push eax
call fcn.00435a0d
add esp, 0x10
lea eax, [ebp - 0x26c]
push eax
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
mov dword [ebp - 0x274], eax
je 0x4094d5
mov esi, dword [sym.imp.USER32.dll_CharLowerA]
cmp dword [ebp - 0x26c], 0x10
je 0x4093ea
cmp dword [ebp - 0x26c], 0x30
je 0x4093ea
lea eax, [ebp - 0x240]
push str..dir
push eax
call fcn.00436910
test eax, eax
pop ecx
pop ecx
jne 0x4094ba
lea eax, [ebp - 0x240]
push str..src2
push eax
call fcn.00436910
test eax, eax
pop ecx
pop ecx
jne 0x4094ba
lea eax, [ebp - 0x240]
push str..exe
push eax
call fcn.00436910
test eax, eax
pop ecx
pop ecx
jne 0x4094ba
lea eax, [ebp - 0x240]
push str..src
push eax
call fcn.00436910
test eax, eax
pop ecx
pop ecx
jne 0x4094ba
lea eax, [ebp - 0x240]
push str..hdr
push eax
call fcn.00436910
test eax, eax
pop ecx
pop ecx
jne 0x4094ba
lea eax, [ebp - 0x240]
push str..lst
push eax
call fcn.00436910
test eax, eax
pop ecx
pop ecx
jne 0x4094ba
cmp byte [ebp + 0x28], bl
je 0x4093c9
push 0x44fc5c
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x290]
push eax
call fcn.00407f8e
lea ecx, [ebp - 0x240]
push ecx
push eax
lea eax, [ebp - 0x12c]
push eax
mov byte [ebp - 4], 5
call fcn.00407f8e
add esp, 0x18
push ebx
push 1
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 7
call fcn.00401627
push ebx
lea ecx, [ebp - 0x12c]
call fcn.004045c8
push eax
call esi
lea ecx, [edi + 0xa0]
jmp 0x40949d
lea eax, [ebp - 0x240]
push eax
call esi
lea eax, [ebp - 0x240]
push eax
lea ecx, [ebp - 0x12c]
call fcn.00401add
mov byte [ebp - 4], 8
jmp 0x4093be
lea eax, [ebp - 0x240]
push 0x450c1c
push eax
call fcn.004369d0
test eax, eax
pop ecx
pop ecx
je 0x4094ba
lea eax, [ebp - 0x240]
push 0x450c18
push eax
call fcn.004369d0
test eax, eax
pop ecx
pop ecx
je 0x4094ba
cmp byte [ebp + 0x28], bl
je 0x409478
push 0x44fc5c
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x290]
push eax
call fcn.00407f8e
lea ecx, [ebp - 0x240]
push ecx
push eax
lea eax, [ebp - 0x12c]
push eax
mov byte [ebp - 4], 1
call fcn.00407f8e
add esp, 0x18
push ebx
push 1
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 3
call fcn.00401627
push ebx
lea ecx, [ebp - 0x12c]
call fcn.004045c8
push eax
call esi
jmp 0x409497
lea eax, [ebp - 0x240]
push eax
call esi
lea eax, [ebp - 0x240]
push eax
lea ecx, [ebp - 0x12c]
call fcn.00401add
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x270]
lea eax, [ebp - 0x12c]
push eax
call fcn.00409160
push ebx
push 1
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], bl
call fcn.00401627
lea eax, [ebp - 0x26c]
push eax
push dword [ebp - 0x274]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x4092ac
push dword [ebp - 0x274]
call dword [sym.imp.KERNEL32.dll_FindClose]
push ebx
push 1
lea ecx, [ebp + 8]
mov byte [edi + 0x64], bl
call fcn.00401627
mov al, 1
call fcn.00433223
ret 0x24