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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x380
mov rdi, rcx
xor edx, edx
lea rcx, [rsp + 0x130]
mov r8d, 0x104
call fcn.1400514f0
lea rax, [rsp + 0x130]
mov r9, rdi
sub r9, rax
lea rdx, [rsp + 0x130]
mov r8d, 0x104
nop word [rax + rax]
lea rax, [r8 + 0x7ffffefa]
test rax, rax
je 0x140040c70
movzx eax, byte [r9 + rdx]
test al, al
je 0x140040c70
mov byte [rdx], al
inc rdx
sub r8, 1
jne 0x140040c50
test r8, r8
lea rax, [rdx - 1]
mov ecx, 0x104
cmovne rax, rdx
mov byte [rax], 0
lea rax, [rsp + 0x130]
nop dword [rax + rax]
cmp byte [rax], 0
je 0x140040c9e
inc rax
sub rcx, 1
jne 0x140040c90
xor esi, esi
mov eax, 0x104
sub rax, rcx
test rcx, rcx
cmove rax, rsi
je 0x140040d02
mov edx, 0x104
lea rcx, [rsp + 0x130]
lea rcx, [rcx + rax]
sub rdx, rax
je 0x140040cf4
lea r9, [0x1400b575c]
mov eax, 0x7ffffffe
sub r9, rcx
test rax, rax
je 0x140040cf4
movzx r8d, byte [r9 + rcx]
test r8b, r8b
je 0x140040cf4
mov byte [rcx], r8b
dec rax
inc rcx
sub rdx, 1
jne 0x140040cd6
test rdx, rdx
lea rax, [rcx - 1]
cmovne rax, rcx
mov byte [rax], sil
xor edx, edx
lea rcx, [rsp + 0x240]
mov r8d, 0x140
call fcn.1400514f0
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x140040ed1
nop word [rax + rax]
test byte [rsp + 0x240], 0x10
jne 0x140040eaf
xor edx, edx
lea rcx, [rsp + 0x20]
mov r8d, 0x104
call fcn.1400514f0
lea rax, [rsp + 0x20]
mov r8, rdi
sub r8, rax
lea rcx, [rsp + 0x20]
mov edx, 0x104
nop word [rax + rax]
lea rax, [rdx + 0x7ffffefa]
test rax, rax
je 0x140040da0
movzx eax, byte [r8 + rcx]
test al, al
je 0x140040da0
mov byte [rcx], al
inc rcx
sub rdx, 1
jne 0x140040d80
lea rax, [rcx - 1]
test rdx, rdx
cmovne rax, rcx
mov ecx, 0x104
mov byte [rax], sil
lea rax, [rsp + 0x20]
cmp byte [rax], sil
je 0x140040dc6
inc rax
sub rcx, 1
jne 0x140040db8
mov eax, 0x104
sub rax, rcx
test rcx, rcx
cmove rax, rsi
je 0x140040e2c
mov edx, 0x104
lea rcx, [rsp + 0x20]
lea rcx, [rcx + rax]
sub rdx, rax
je 0x140040e1e
lea r9, [0x1400b5760]
mov eax, 0x7ffffffe
sub r9, rcx
nop dword [rax]
test rax, rax
je 0x140040e1e
movzx r8d, byte [r9 + rcx]
test r8b, r8b
je 0x140040e1e
mov byte [rcx], r8b
dec rax
inc rcx
sub rdx, 1
jne 0x140040e00
test rdx, rdx
lea rax, [rcx - 1]
cmovne rax, rcx
mov byte [rax], sil
mov ecx, 0x104
lea rax, [rsp + 0x20]
cmp byte [rax], sil
je 0x140040e44
inc rax
sub rcx, 1
jne 0x140040e36
mov eax, 0x104
sub rax, rcx
test rcx, rcx
cmove rax, rsi
je 0x140040ea4
mov edx, 0x104
lea rcx, [rsp + 0x20]
lea rcx, [rcx + rax]
sub rdx, rax
je 0x140040e96
lea r9, [rsp + 0x26c]
mov eax, 0x7ffffffe
sub r9, rcx
test rax, rax
je 0x140040e96
movzx r8d, byte [r9 + rcx]
test r8b, r8b
je 0x140040e96
mov byte [rcx], r8b
dec rax
inc rcx
sub rdx, 1
jne 0x140040e78
test rdx, rdx
lea rax, [rcx - 1]
cmovne rax, rcx
mov byte [rax], sil
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
lea rdx, [rsp + 0x240]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x140040d40
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
lea r11, [rsp + 0x380]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret