Function at 0x405360
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x2264
call fcn.00434bf0
mov eax, dword [0x460cd0]
xor eax, esp
mov dword [esp + 0x2260], eax
push ebx
push esi
mov esi, ecx
test esi, esi
push edi
mov byte [esp + 0x13], 0
je 0x405624
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405395
sub eax, edx
sar eax, 1
je 0x405624
push 0x800
lea eax, [esp + 0x26c]
push 0
push eax
call fcn.00430500
push 0x800
lea ecx, [esp + 0xa78]
push 0
push ecx
call fcn.00430500
push 0x3ff
push esi
lea edx, [esp + 0x288]
push 0x400
push edx
call fcn.0042f011
push 0x800
lea eax, [esp + 0x1294]
push 0
push eax
call fcn.00430500
push esi
push str._s.
lea edx, [esp + 0x12a4]
call fcn.00402fe0
add esp, 0x3c
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x126c]
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edi, eax
cmp edi, 0xffffffff
je 0x405529
mov bl, 6
lea eax, [esp + 0x44]
lea edx, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405440
mov si, word [esp + 0x44]
sub eax, edx
sar eax, 1
cmp eax, 2
jne 0x40546a
cmp si, 0x2e
jne 0x40546a
cmp word [esp + 0x46], si
je 0x4054fe
lea eax, [esp + 0x44]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405471
sub eax, edx
sar eax, 1
cmp eax, 1
jne 0x40548b
cmp si, 0x2e
je 0x4054fe
push 0x800
lea eax, [esp + 0x1a6c]
push 0
push eax
call fcn.00430500
lea ecx, [esp + 0x50]
push ecx
lea edx, [esp + 0x278]
push edx
push str._s_s
lea edx, [esp + 0x1a80]
call fcn.00402fe0
add esp, 0x18
test byte [esp + 0x18], bl
je 0x405518
lea eax, [esp + 0x44]
push str.desktop.ini
push eax
call fcn.0042f75b
add esp, 8
test eax, eax
jne 0x405518
push 0x3ff
lea ecx, [esp + 0x1a6c]
push ecx
lea edx, [esp + 0xa70]
push 0x400
push edx
call fcn.0042f011
add esp, 0x10
lea eax, [esp + 0x18]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x405433
mov bl, byte [esp + 0x13]
jmp 0x40551a
mov bl, 1
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
test bl, bl
jne 0x4055f5
lea eax, [esp + 0xa68]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405533
sub eax, edx
sar eax, 1
je 0x405582
push 1
lea ecx, [esp + 0xa6c]
call fcn.0041be50
add esp, 4
test eax, eax
jne 0x405568
lea ecx, [esp + 0xa68]
push ecx
push str.Desktop_file_has_been_deleted___:__s
jmp 0x405575
lea edx, [esp + 0xa68]
push edx
push str.Fail_to_delete_file___s_
mov ecx, 0x466338
call fcn.0041a690
add esp, 8
push 1
lea ecx, [esp + 0x26c]
call fcn.0041be50
add esp, 4
test eax, eax
jne 0x4055c6
lea eax, [esp + 0x268]
push eax
push str.__s__folder_has_been_removed___
mov ecx, 0x466338
call fcn.0041a690
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2260]
xor ecx, esp
call fcn.0042f002
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 0x268]
push ecx
push str.Fail_to_remove___s_
mov ecx, 0x466338
call fcn.0041a690
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2260]
xor ecx, esp
call fcn.0042f002
mov esp, ebp
pop ebp
ret
lea edx, [esp + 0x268]
push edx
push str.the_folder_is_not_empty___s_
mov ecx, 0x466338
call fcn.0041a690
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2260]
xor ecx, esp
call fcn.0042f002
mov esp, ebp
pop ebp
ret
push str.the_folder_path_is_empty______
mov ecx, 0x466338
call fcn.0041a690
mov ecx, dword [esp + 0x2270]
add esp, 4
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0042f002
mov esp, ebp
pop ebp
ret