Function at 0x408fe1
Capabilities:
Enumerate files on windows

Disassembly:
push 0x2a4
mov eax, 0x41037b
call fcn.0040baa4
mov esi, edx
mov edi, dword [ebp + 0xc]
xor ebx, ebx
push ecx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
call fcn.00405277
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x18], ebx
je 0x409121
push 0x4184dc
push dword [0x4184ec]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040936f
test eax, eax
je 0x409121
push 0x4184f4
push dword [0x418504]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040936f
test eax, eax
je 0x409121
push 0x418524
push dword [0x418534]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040936f
test eax, eax
je 0x409121
cmp dword [ebp - 0x18], 2
jb 0x40910f
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x28]
mov edx, dword [ebp - 0x28]
cmp ecx, 8
mov dword [ebp - 0x2ac], 0x5c
cmovae eax, edx
mov dword [ebp - 0x2b0], 0x2f
movzx eax, word [eax]
cmp ax, word [ebp - 0x2ac]
je 0x4090df
cmp ax, word [ebp - 0x2b0]
je 0x4090df
cmp dword [ebp - 0x18], 3
jb 0x40910f
cmp ecx, 8
lea eax, [ebp - 0x28]
cmovae eax, edx
cmp word [eax + 2], 0x3a
jne 0x40910f
cmp ecx, 8
lea eax, [ebp - 0x28]
cmovae eax, edx
movzx eax, word [eax + 4]
cmp ax, word [ebp - 0x2ac]
je 0x409106
cmp ax, word [ebp - 0x2b0]
je 0x409106
jmp 0x40910f
cmp ecx, 8
lea eax, [ebp - 0x28]
cmovae eax, edx
movzx eax, word [eax + 2]
cmp ax, word [ebp - 0x2ac]
je 0x409100
cmp ax, word [ebp - 0x2b0]
mov al, 1
jne 0x409102
mov al, bl
test al, al
jne 0x40910f
cmp dword [ebp - 0x18], 0x104
jb 0x409121
xor dl, dl
lea ecx, [ebp - 0x28]
call fcn.00408c61
test al, al
je 0x409282
lea eax, [ebp - 0x28]
mov dword [ebp - 0x30], ebx
push eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x2c], ebx
call fcn.00405277
mov byte [ebp - 4], 1
cmp dword [esi + 0x14], 8
jb 0x40913f
mov esi, dword [esi]
mov edx, esi
lea ecx, [ebp - 0x40]
call fcn.00404c0b
push 0x250
lea eax, [ebp - 0x2a8]
push ebx
push eax
call fcn.0040cde0
add esp, 0xc
lea ecx, [ebp - 0x2a8]
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push ebx
push ebx
push ebx
push ecx
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileExW]
mov esi, eax
cmp esi, 0xffffffff
je 0x40923d
test byte [ebp - 0x2a8], 0x10
je 0x409220
xor eax, eax
mov dword [ebp - 0x48], ebx
mov word [ebp - 0x58], ax
lea ecx, [ebp - 0x58]
lea eax, [ebp - 0x27c]
mov dword [ebp - 0x44], 7
push eax
call fcn.0040379e
mov edx, 0x4136a4
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x58]
call fcn.004095ad
test al, al
je 0x4091e3
mov edx, 0x413d68
lea ecx, [ebp - 0x58]
call fcn.004095ad
test al, al
je 0x4091e3
lea eax, [ebp - 0x58]
mov ecx, edi
push eax
call fcn.00405120
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x409220
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x409217
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4092bf
push edx
push ecx
call fcn.0040b503
pop ecx
pop ecx
lea eax, [ebp - 0x2a8]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x409186
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x409272
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x409269
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4092bf
push edx
push ecx
call fcn.0040b503
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x4092b7
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4092ae
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4092bf
push edx
push ecx
call fcn.0040b503
pop ecx
pop ecx
call fcn.0040ba5f
ret 8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3