Function at 0x40f260
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ecx, 0x40f590
mov ebp, esp
push edi
lea eax, [ebp - 0x18]
push esi
mov esi, 0x473640
push ebx
sub esp, 0x1dc
mov ebx, 0x4b4e04
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x1c4]
mov dword [esp], eax
mov dword [ebp - 0x1ac], esi
mov dword [ebp - 0x1a8], ebx
mov dword [ebp - 0x1a0], ecx
mov dword [ebp - 0x19c], esp
call fcn.0047f180
mov edx, dword [ebp + 8]
mov eax, dword [edx]
cmp dword [eax + 0xc], 0x104
jbe 0x40f395
mov dword [esp], 8
mov edx, 0xffffffff
mov dword [ebp - 0x1c0], edx
call fcn.00475ba0
mov dword [ebp - 0x1c8], eax
lea eax, [ebp - 0x178]
mov dword [esp + 8], eax
lea eax, [ebp - 0x168]
mov dword [esp], eax
mov eax, 4
mov dword [esp + 4], 0x40f230
mov dword [ebp - 0x1c0], eax
call fcn.0049c570
mov eax, dword [ebp - 0x1c8]
lea edx, [ebp - 0x168]
mov dword [esp + 4], edx
mov dword [esp], eax
mov eax, 3
mov dword [ebp - 0x1c0], eax
call fcn.00476b70
mov dword [esp], 4
lea esi, [ebp - 0x188]
call fcn.00476410
mov dword [ebp - 0x1d0], eax
mov edx, dword [ebp - 0x1c8]
mov dword [eax], edx
mov edx, dword [ebp - 0x168]
mov eax, 0xffffffff
lea ecx, [edx - 0xc]
lock xadd dword [edx - 4], eax
test eax, eax
jle 0x40f387
mov dword [esp + 8], 0
mov eax, dword [ebp - 0x1d0]
mov dword [esp + 4], 0x4ba92c
mov dword [esp], eax
mov eax, 0xffffffff
mov dword [ebp - 0x1c0], eax
call fcn.00476310
mov dword [esp + 4], esi
mov dword [esp], ecx
call fcn.0049adc0
jmp 0x40f35e
mov dword [esp + 8], 0x40f253
mov edx, dword [ebp + 8]
lea eax, [ebp - 0x198]
mov dword [esp], eax
mov eax, 0xffffffff
mov dword [esp + 4], edx
mov dword [ebp - 0x1c0], eax
call fcn.00457c10
sub esp, 4
lea edx, [ebp - 0x198]
mov eax, 2
mov dword [esp], edx
mov dword [ebp - 0x1c0], eax
call fcn.00457590
mov dword [esp], eax
lea edx, [ebp - 0x158]
mov dword [esp + 4], edx
call sub.KERNEL32.DLL_FindFirstFileA
mov edx, dword [ebp + 8]
sub esp, 8
mov dword [edx + 4], eax
lea eax, [ebp - 0x198]
mov dword [esp], eax
mov eax, 0xffffffff
mov dword [ebp - 0x1c0], eax
call fcn.00456470
mov edx, dword [ebp + 8]
cmp dword [edx + 4], 0xffffffff
je 0x40f4f7
mov dword [esp + 8], 0x40f256
lea eax, [ebp - 0x198]
mov edi, 0xffffffff
mov dword [esp + 4], edx
mov dword [esp], eax
mov dword [ebp - 0x1c0], edi
call fcn.00457c10
sub esp, 4
cld
mov edi, 0x40f258
lea esi, [ebp - 0x12c]
mov ecx, 2
repe cmpsb byte [esi], byte es:[edi]
je 0x40f4b0
lea esi, [ebp - 0x12c]
mov edi, 0x40f25a
mov ecx, 3
repe cmpsb byte [esi], byte es:[edi]
je 0x40f4b0
test byte [ebp - 0x158], 0x10
je 0x40f50d
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
lea edx, [ebp - 0x158]
mov dword [esp + 8], edx
lea edx, [ebp - 0x198]
mov eax, dword [eax + 4]
mov dword [esp + 4], edx
mov edx, dword [ebp + 0xc]
mov dword [esp], edx
mov esi, 1
mov dword [ebp - 0x1c0], esi
call eax
mov esi, esi
lea edi, [edi]
mov edx, dword [ebp + 8]
lea eax, [ebp - 0x158]
mov ebx, 1
mov dword [esp + 4], eax
mov eax, dword [edx + 4]
mov dword [ebp - 0x1c0], ebx
mov dword [esp], eax
call sub.KERNEL32.DLL_FindNextFileA
sub esp, 8
test eax, eax
jne 0x40f442
lea eax, [ebp - 0x198]
mov dword [esp], eax
mov eax, 0xffffffff
mov dword [ebp - 0x1c0], eax
call fcn.00456470
lea eax, [ebp - 0x1c4]
mov dword [esp], eax
call fcn.0047f230
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
lea edx, [ebp - 0x158]
mov dword [esp + 8], edx
lea edx, [ebp - 0x198]
mov eax, dword [eax]
jmp 0x40f490