Function at 0x41e914
Capabilities:
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively
Set file attributes

Disassembly:
push 0x274
mov eax, 0x477b64
call fcn.0045053c
mov esi, ecx
xor ebx, ebx
call fcn.00409480
push eax
lea ecx, [ebp - 0x264]
call fcn.00408c39
mov dword [ebp - 4], 1
call fcn.00409480
push eax
lea ecx, [ebp - 0x268]
call fcn.00408c39
mov byte [ebp - 4], 3
test esi, esi
je 0x41ebe9
movzx eax, word [esi]
test ax, ax
je 0x41ebe9
push 0x5c
pop edi
cmp ax, di
jne 0x41e986
mov ecx, esi
call fcn.0040b056
push eax
push esi
lea ecx, [ebp - 0x264]
call fcn.0040afd8
jmp 0x41e99b
push esi
lea eax, [ebp - 0x264]
push str.__s
push eax
call fcn.00408e2a
add esp, 0xc
push edi
push 0x2f
lea ecx, [ebp - 0x264]
call fcn.0040a11e
push ecx
lea ecx, [ebp - 0x264]
call fcn.004089a0
push 0x48cfbc
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x26c]
call fcn.0040a03a
pop ecx
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x268]
push eax
call fcn.0040a1c3
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x26c]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov edi, dword [ebp - 0x268]
lea eax, [ebp - 0x260]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
mov dword [ebp - 0x26c], esi
cmp esi, 0xffffffff
je 0x41ebf2
push 0x2e
pop edi
test dword [ebp - 0x260], 0x400
jne 0x41eb88
call fcn.00409480
push eax
lea ecx, [ebp - 0x278]
call fcn.00408c39
mov byte [ebp - 4], 7
test byte [ebp - 0x260], 0x10
je 0x41ead6
cmp word [ebp - 0x234], di
jne 0x41ea73
cmp word [ebp - 0x232], 0
je 0x41ea6e
cmp word [ebp - 0x232], di
jne 0x41ea73
cmp word [ebp - 0x230], 0
jne 0x41ea73
jmp 0x41eb76
push 0x5c
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x27c]
call fcn.004226b1
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x234]
push ecx
mov edx, eax
lea ecx, [ebp - 0x274]
call fcn.0040a03a
pop ecx
pop ecx
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x27c]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov ecx, dword [ebp - 0x274]
mov dl, 1
call fcn.0041e914
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x274]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x41eb76
push 0x5c
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x280]
call fcn.004226b1
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x234]
push ecx
mov edx, eax
lea ecx, [ebp - 0x270]
call fcn.0040a03a
pop ecx
pop ecx
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x280]
lea ecx, [ecx - 0x10]
call fcn.00409575
push 0x80
push dword [ebp - 0x270]
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push 9
pop edi
push dword [ebp - 0x270]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test esi, esi
jne 0x41eb5b
cmp eax, 0x20
je 0x41eb4b
cmp eax, 5
jne 0x41eb5b
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
sub edi, 1
jns 0x41eb29
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x270]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov esi, dword [ebp - 0x26c]
push 0x2e
pop edi
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x278]
lea ecx, [ecx - 0x10]
call fcn.00409575
push 0x250
lea eax, [ebp - 0x260]
push ebx
push eax
call fcn.00451b90
add esp, 0xc
lea eax, [ebp - 0x260]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x41ea16
mov esi, dword [ebp - 0x264]
push 0x10
push esi
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push esi
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, dword [ebp - 0x268]
test eax, eax
jne 0x41ebdb
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
push dword [ebp - 0x26c]
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x41ebf8
mov edi, dword [ebp - 0x268]
push 0x57
pop ebx
mov esi, dword [ebp - 0x264]
mov byte [ebp - 4], 1
lea ecx, [edi - 0x10]
call fcn.00409575
or dword [ebp - 4], 0xffffffff
lea ecx, [esi - 0x10]
call fcn.00409575
mov eax, ebx
call fcn.004504e6
ret