Function at 0x406a9a
Capabilities:
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x168
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
push esi
call fcn.0040670e
add esp, 0xc
mov dword [ebp - 0x150], eax
test edi, 8
je 0x406ae9
sub esp, 0xc
mov ebx, dword [0x424c40]
push esi
call sub.KERNEL32.dll_DeleteFileA
add esp, 0xc
test eax, eax
sete al
movzx eax, al
add eax, ebx
mov dword [0x424c40], eax
jmp 0x406cf9
mov eax, edi
and eax, 1
mov dword [ebp - 0x15c], eax
je 0x406b0f
cmp dword [ebp - 0x150], 0
je 0x406ce5
test edi, 2
je 0x406ca0
push ebx
push ebx
push esi
push 0x4243a8
call fcn.00406340
mov al, byte [ebp - 0x15c]
pop edx
mov byte [ebp - 0x155], al
pop ecx
test al, al
je 0x406b43
push eax
push eax
push str..
push 0x4243a8
call fcn.004062bc
pop ebx
pop eax
jmp 0x406b4f
sub esp, 0xc
push esi
call fcn.004062ce
add esp, 0xc
cmp byte [esi], 0
jne 0x406b5d
cmp byte [0x4243a8], 0x5c
jne 0x406b6c
push ecx
push ecx
push 0x40a3e5
push esi
call fcn.004062bc
pop eax
pop edx
sub esp, 0xc
push esi
call fcn.004062c5
sub esp, 0xc
lea eax, [esi + eax]
mov dword [ebp - 0x154], eax
lea eax, [ebp - 0x14c]
push eax
push 0x4243a8
call sub.KERNEL32.dll_FindFirstFileA
add esp, 0x18
mov ebx, eax
cmp eax, 0xffffffff
je 0x406c7b
push eax
push eax
lea eax, [ebp - 0x120]
push 0x3f
push eax
call fcn.00406171
pop edx
lea edx, [ebp - 0x120]
pop ecx
cmp byte [eax], 0
je 0x406bcc
lea edx, [ebp - 0x1c]
cmp byte [ebp - 0x1c], 0
jne 0x406bcc
lea edx, [ebp - 0x120]
cmp byte [edx], 0x2e
jne 0x406be2
mov al, byte [edx + 1]
test al, al
je 0x406c56
cmp al, 0x2e
jne 0x406be2
cmp byte [edx + 2], 0
je 0x406c56
push ecx
push ecx
push edx
push dword [ebp - 0x154]
call fcn.00406340
test byte [ebp - 0x14c], 0x10
pop eax
pop edx
je 0x406c10
mov eax, edi
and eax, 3
cmp eax, 3
jne 0x406c56
push eax
push eax
push edi
push esi
call fcn.00406a9a
jmp 0x406c54
sub esp, 0xc
push esi
call fcn.00406804
push esi
call sub.KERNEL32.dll_DeleteFileA
add esp, 0xc
test eax, eax
jne 0x406c4a
test edi, 4
je 0x406c42
push eax
push eax
push esi
push 0xfffffffffffffff1
call fcn.00403e2b
push 0
push esi
call fcn.00406897
jmp 0x406c54
inc dword [0x424c40]
jmp 0x406c56
push ecx
push ecx
push esi
push 0xfffffffffffffff2
call fcn.00403e2b
pop eax
pop edx
push eax
push eax
lea eax, [ebp - 0x14c]
push eax
push ebx
call sub.KERNEL32.dll_FindNextFileA
pop edx
test eax, eax
pop ecx
jne 0x406ba0
sub esp, 0xc
push ebx
call sub.KERNEL32.dll_FindClose
add esp, 0xc
cmp byte [ebp - 0x155], 0
je 0x406c8e
mov eax, dword [ebp - 0x154]
mov byte [eax - 1], 0
cmp dword [ebp - 0x15c], 0
je 0x406cf9
cmp dword [ebp - 0x150], 0
je 0x406ce5
sub esp, 0xc
push esi
call fcn.0040613e
add esp, 0xc
test eax, eax
je 0x406cf9
sub esp, 0xc
push esi
call fcn.00406303
push esi
call fcn.00406804
push esi
call sub.KERNEL32.dll_RemoveDirectoryA
add esp, 0xc
test eax, eax
jne 0x406ced
and edi, 4
je 0x406ce5
push eax
push eax
push esi
push 0xfffffffffffffff1
call fcn.00403e2b
push 0
push esi
call fcn.00406897
jmp 0x406cf7
inc dword [0x424c40]
jmp 0x406cf9
push edi
push edi
push esi
push 0xffffffffffffffe5
call fcn.00403e2b
pop ecx
pop ebx
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 8