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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1668
call fcn.0040be80
push edi
push 0x400
push 0
lea eax, [ebp - 0x800]
push eax
call fcn.0040be20
add esp, 0xc
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x800]
push edx
call fcn.0040c8aa
add esp, 8
lea eax, [ebp - 0x800]
push eax
call fcn.0040be00
add esp, 4
xor ecx, ecx
mov cx, word [ebp + eax*2 - 0x802]
cmp ecx, 0x5c
je 0x403d6f
push 0x422730
lea edx, [ebp - 0x800]
push edx
call fcn.0040c880
add esp, 8
push 0x422734
lea eax, [ebp - 0x800]
push eax
call fcn.0040c880
add esp, 8
mov word [ebp - 0xa0c], 0
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0xa0a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [ebp - 0x145c]
push ecx
lea edx, [ebp - 0x800]
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x804], eax
cmp dword [ebp - 0x804], 0xffffffff
je 0x404016
push 0x42273c
lea eax, [ebp - 0x1430]
push eax
call fcn.0040c3d7
add esp, 8
test eax, eax
je 0x403df4
push 0x422740
lea ecx, [ebp - 0x1430]
push ecx
call fcn.0040c3d7
add esp, 8
test eax, eax
jne 0x403df9
jmp 0x403ffa
mov edx, dword [ebp - 0x145c]
and edx, 0x10
test edx, edx
je 0x403ea6
push 0x400
push 0
lea eax, [ebp - 0x120c]
push eax
call fcn.0040be20
add esp, 0xc
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x120c]
push edx
call fcn.0040c8aa
add esp, 8
lea eax, [ebp - 0x120c]
push eax
call fcn.0040be00
add esp, 4
xor ecx, ecx
mov cx, word [ebp + eax*2 - 0x120e]
cmp ecx, 0x5c
je 0x403e65
push 0x422748
lea edx, [ebp - 0x120c]
push edx
call fcn.0040c880
add esp, 8
lea eax, [ebp - 0x1430]
push eax
lea ecx, [ebp - 0x120c]
push ecx
call fcn.0040c880
add esp, 8
lea edx, [ebp - 0x120c]
push edx
call fcn.00404830
add esp, 4
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x120c]
push eax
call fcn.00403d06
add esp, 4
jmp 0x403ffa
push 0x104
push 0
lea ecx, [ebp - 0x1668]
push ecx
call fcn.0040be20
add esp, 0xc
push 0x2e
lea edx, [ebp - 0x1430]
push edx
call fcn.0040b070
add esp, 8
mov dword [ebp - 0x1460], eax
cmp dword [ebp - 0x1460], 0
jne 0x403ee1
jmp 0x403ffa
mov eax, dword [ebp - 0x1460]
add eax, 2
push eax
lea ecx, [ebp - 0x1668]
push ecx
call fcn.0040c8aa
add esp, 8
lea edx, [ebp - 0x1668]
push edx
call fcn.0040c9bb
add esp, 4
push 0x104
push 0
lea eax, [ebp - 0xa0c]
push eax
call fcn.0040be20
add esp, 0xc
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0xa0c]
push edx
call fcn.0040c8aa
add esp, 8
lea eax, [ebp - 0xa0c]
push eax
call fcn.0040be00
add esp, 4
xor ecx, ecx
mov cx, word [ebp + eax*2 - 0xa0e]
cmp ecx, 0x5c
je 0x403f64
push 0x42274c
lea edx, [ebp - 0xa0c]
push edx
call fcn.0040c880
add esp, 8
lea eax, [ebp - 0x1430]
push eax
lea ecx, [ebp - 0xa0c]
push ecx
call fcn.0040c880
add esp, 8
push 0x422750
lea edx, [ebp - 0x1668]
push edx
call fcn.0040c1a0
add esp, 8
test eax, eax
je 0x403faa
push 0x422758
lea eax, [ebp - 0x1668]
push eax
call fcn.0040c1a0
add esp, 8
test eax, eax
jne 0x403fdc
lea ecx, [ebp - 0xa0c]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x403fda
push 0x80
lea edx, [ebp - 0xa0c]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea eax, [ebp - 0xa0c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x403ffa
lea ecx, [ebp - 0x1430]
push ecx
call fcn.00404830
add esp, 4
lea edx, [ebp - 0xa0c]
push edx
call fcn.0040355d
add esp, 4
lea eax, [ebp - 0x145c]
push eax
mov ecx, dword [ebp - 0x804]
push ecx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x403dc4
mov edx, dword [ebp - 0x804]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
xor eax, eax
pop edi
mov esp, ebp
pop ebp
ret