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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2a0]
sub rsp, 0x3a0
mov rax, qword [0x14032b320]
xor rax, rsp
mov qword [rbp + 0x290], rax
mov rax, rcx
mov qword [rbp - 0x70], rcx
xor r15d, r15d
mov r12d, r15d
mov dword [rsp + 0x20], r15d
lea rdx, vtable.CVolCommonBaseWithMemManager.0
mov qword [rsp + 0x30], rdx
lea r8, vtable.CVolObject.0
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x40], r15
lea rcx, vtable.CWString.0
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r15
lea rcx, vtable.CVolMem.0
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x80], 0x40
mov qword [rsp + 0x48], r15
mov qword [rbp - 0x80], 0xfe
mov rdx, qword [rax + 0x18]
test rdx, rdx
jne 0x14005c780
cmp qword [rax + 0x48], rdx
lea rdx, [0x1402ac8c0]
je 0x14005c780
mov rdx, qword [rax + 0x38]
lea rcx, [rbp - 0x68]
call fcn.140059db0
nop
mov rdi, qword [rbp - 0x58]
lea rcx, [rdi - 1]
cmp rdi, rcx
jbe 0x14005d041
lea rax, [rbp - 0x68]
mov r14, qword [rbp - 0x68]
mov rsi, qword [rbp - 0x50]
cmp rsi, 8
cmovae rax, r14
movabs rdx, 0x7ffffffffffffffe
cmp word [rax + rcx*2], 0x5c
je 0x14005c8ba
cmp rdi, rsi
jae 0x14005c7e9
lea rax, [rdi + 1]
mov qword [rbp - 0x58], rax
lea rax, [rbp - 0x68]
cmp rsi, 8
cmovae rax, r14
mov dword [rax + rdi*2], 0x5c
jmp 0x14005c8ba
mov rax, rdx
sub rax, rdi
cmp rax, 1
jb 0x14005d047
lea r12, [rdi + 1]
mov rbx, r12
or rbx, 7
cmp rbx, rdx
jbe 0x14005c80e
mov rbx, rdx
jmp 0x14005c82f
mov rcx, rsi
shr rcx, 1
mov rax, rdx
sub rax, rcx
cmp rsi, rax
jbe 0x14005c824
mov rbx, rdx
jmp 0x14005c82f
lea rax, [rsi + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x68]
call fcn.140046de0
mov r15, rax
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x50], rbx
add rdi, rdi
mov r8, rdi
mov rcx, rax
cmp rsi, 8
jb 0x14005c89d
mov rdx, r14
call fcn.14023df70
mov dword [rdi + r15], 0x5c
lea rdx, [rsi*2 + 2]
mov rax, r14
cmp rdx, 0x1000
jb 0x14005c893
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d05f
mov rcx, r14
call fcn.14019b640
jmp 0x14005c8ae
lea rdx, [rbp - 0x68]
call fcn.14023df70
mov dword [rdi + r15], 0x5c
mov qword [rbp - 0x68], r15
xor r15d, r15d
mov r12d, dword [rsp + 0x20]
lea r8, [0x1402ae3b8]
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x18]
call fcn.14005d180
nop
cmp qword [rax + 0x18], 8
jb 0x14005c8d9
mov rax, qword [rax]
lea rdx, [rbp + 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov r13, rax
mov qword [rsp + 0x28], rax
mov rdx, qword [rbp + 0x30]
cmp rdx, 8
jb 0x14005c92e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c929
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d04d
call fcn.14019b640
movdqa xmm0, xmmword [0x1402c8090]
movdqu xmmword [rbp + 0x28], xmm0
mov word [rbp + 0x18], r15w
lea rdi, [fcn.14018de50]
mov r8, qword [rbp - 0x68]
cmp r13, 0xffffffffffffffff
jne 0x14005c959
mov ebx, r15d
jmp 0x14005cf50
mov r13, qword [rbp - 0x58]
mov rbx, qword [rsp + 0x28]
mov r10d, 0xa
movabs r9, 0x7fffffffffffffff
movzx ecx, word [rbp + 0x6c]
movzx eax, word [rbp + 0x6e]
cmp cx, 0x2e
jne 0x14005c99e
test ax, ax
je 0x14005cefc
cmp cx, cx
jne 0x14005c99e
cmp ax, cx
jne 0x14005c99e
cmp word [rbp + 0x70], 0
je 0x14005cefc
mov r14d, dword [rbp + 0x40]
test r14b, 0x10
je 0x14005cbc6
lea rax, [rbp + 0x6c]
mov rdi, 0xffffffffffffffff
nop word [rax + rax]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x14005c9c0
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r13
cmp rax, rdi
jb 0x14005d065
lea r15, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae r15, r8
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
xor eax, eax
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], rax
lea r14, [rdi + r13]
mov ebx, 7
lea rsi, [rbp - 0x48]
cmp r14, rbx
jbe 0x14005ca86
mov rbx, r14
or rbx, 7
cmp rbx, rcx
jbe 0x14005ca28
mov rbx, rcx
lea rcx, [r9 + r9]
jmp 0x14005ca49
cmp rbx, 0xa
cmovb rbx, r10
lea rcx, [rbx + 1]
cmp rcx, r9
ja 0x14005d059
add rcx, rcx
cmp rcx, 0x1000
jb 0x14005ca75
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14005d059
mov rcx, rax
call fcn.14019b5c0
test rax, rax
je 0x14005d053
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14005ca82
test rcx, rcx
je 0x14005ca7f
call fcn.14019b5c0
mov rsi, rax
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], rbx
lea rbx, [r13*2]
mov r8, rbx
mov rdx, r15
mov rcx, rsi
call fcn.14023df70
lea rcx, [rbx + rsi]
lea r8, [rdi + rdi]
lea rdx, [rbp + 0x6c]
call fcn.14023df70
xor r15d, r15d
mov word [rsi + r14*2], r15w
or r12d, 1
mov dword [rsp + 0x20], r12d
lea rbx, [rbp - 0x48]
mov rdi, qword [rbp - 0x48]
mov rsi, qword [rbp - 0x30]
cmp rsi, 8
cmovae rbx, rdi
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x48]
test rax, rax
jne 0x14005caf9
lea rax, [0x1402ac8c0]
cmp qword [rsp + 0x78], r15
cmovne rax, rdx
cmp rbx, rax
je 0x14005cb62
mov qword [rsp + 0x48], r15
test rdx, rdx
je 0x14005cb33
mov rax, qword [rsp + 0x50]
mov r8, qword [rax + 0x18]
lea rax, [fcn.14018de50]
cmp r8, rax
jne 0x14005cb2b
lea rcx, [0x140489958]
call fcn.140196cd0
jmp 0x14005cb33
lea rcx, [rsp + 0x50]
call r8
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x70], r15
test rbx, rbx
je 0x14005cb62
cmp word [rbx], r15w
je 0x14005cb62
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.140195c20
mov rsi, qword [rbp - 0x30]
mov rdi, qword [rbp - 0x48]
and r12d, 0xfffffffe
mov dword [rsp + 0x20], r12d
cmp rsi, 8
jb 0x14005cba6
lea rdx, [rsi*2 + 2]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14005cb9e
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d05f
mov rcx, rdi
call fcn.14019b640
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], 7
mov word [rbp - 0x48], r15w
lea rcx, [rsp + 0x30]
call fcn.14005c6a0
jmp 0x14005cef7
test r14b, 1
je 0x14005cd72
and r14d, 0xfffffffe
lea rax, [rbp + 0x6c]
mov rdi, 0xffffffffffffffff
nop
inc rdi
cmp word [rax + rdi*2], 0
jne 0x14005cbe0
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r13
cmp rax, rdi
jb 0x14005d07d
lea r12, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae r12, r8
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x18], r15
mov qword [rbp - 0x10], r15
lea r15, [rdi + r13]
mov ebx, 7
lea rsi, [rbp - 0x28]
cmp r15, rbx
jbe 0x14005cca8
mov rbx, r15
or rbx, 7
cmp rbx, rcx
jbe 0x14005cc46
mov rbx, rcx
lea rcx, [r9 + r9]
jmp 0x14005cc67
cmp rbx, 0xa
cmovb rbx, r10
lea rcx, [rbx + 1]
cmp rcx, r9
ja 0x14005d071
add rcx, rcx
cmp rcx, 0x1000
jb 0x14005cc93
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14005d071
mov rcx, rax
call fcn.14019b5c0
test rax, rax
je 0x14005d06b
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14005cca4
test rcx, rcx
je 0x14005cc9f
call fcn.14019b5c0
jmp 0x14005cca1
xor eax, eax
mov rsi, rax
mov qword [rbp - 0x28], rsi
mov qword [rbp - 0x18], r15
mov qword [rbp - 0x10], rbx
lea rbx, [r13*2]
mov r8, rbx
mov rdx, r12
mov rcx, rsi
call fcn.14023df70
lea rcx, [rsi + rbx]
lea r8, [rdi + rdi]
lea rdx, [rbp + 0x6c]
call fcn.14023df70
xor eax, eax
mov word [rsi + r15*2], ax
mov r12d, dword [rsp + 0x20]
or r12d, 4
mov dword [rsp + 0x20], r12d
lea rcx, [rbp - 0x28]
cmp qword [rbp - 0x10], 8
cmovae rcx, qword [rbp - 0x28]
mov edx, r14d
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
and r12d, 0xfffffffb
mov dword [rsp + 0x20], r12d
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x14005cd4c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cd47
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d077
call fcn.14019b640
xor edx, edx
mov qword [rbp - 0x18], rdx
mov qword [rbp - 0x10], 7
mov word [rbp - 0x28], dx
mov r8, qword [rbp - 0x68]
movabs r9, 0x7fffffffffffffff
lea r10d, [rdx + 0xa]
jmp 0x14005cd74
xor edx, edx
lea rax, [rbp + 0x6c]
mov rdi, 0xffffffffffffffff
nop
inc rdi
cmp word [rax + rdi*2], 0
jne 0x14005cd80
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r13
cmp rax, rdi
jb 0x14005d03b
lea r15, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae r15, r8
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
mov qword [rbp + 8], rdx
mov qword [rbp + 0x10], rdx
lea r14, [rdi + r13]
mov ebx, 7
lea rsi, [rbp - 8]
cmp r14, rbx
jbe 0x14005ce49
mov rbx, r14
or rbx, 7
cmp rbx, rcx
jbe 0x14005cde6
mov rbx, rcx
lea rcx, [r9 + r9]
jmp 0x14005ce07
cmp rbx, 0xa
cmovb rbx, r10
lea rcx, [rbx + 1]
cmp rcx, r9
ja 0x14005d089
add rcx, rcx
cmp rcx, 0x1000
jb 0x14005ce33
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14005d089
mov rcx, rax
call fcn.14019b5c0
test rax, rax
je 0x14005d083
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14005ce45
test rcx, rcx
je 0x14005ce42
call fcn.14019b5c0
mov rsi, rax
jmp 0x14005ce45
mov rsi, rdx
mov qword [rbp - 8], rsi
mov qword [rbp + 8], r14
mov qword [rbp + 0x10], rbx
lea rbx, [r13*2]
mov r8, rbx
mov rdx, r15
mov rcx, rsi
call fcn.14023df70
lea rcx, [rbx + rsi]
lea r8, [rdi + rdi]
lea rdx, [rbp + 0x6c]
call fcn.14023df70
xor r15d, r15d
mov word [rsi + r14*2], r15w
or r12d, 2
mov dword [rsp + 0x20], r12d
lea rcx, [rbp - 8]
cmp qword [rbp + 0x10], 8
cmovae rcx, qword [rbp - 8]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
and r12d, 0xfffffffd
mov dword [rsp + 0x20], r12d
mov rdx, qword [rbp + 0x10]
cmp rdx, 8
jb 0x14005cee6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cee1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d08f
call fcn.14019b640
mov qword [rbp + 8], r15
mov qword [rbp + 0x10], 7
mov word [rbp - 8], r15w
mov rbx, qword [rsp + 0x28]
lea rdx, [rbp + 0x40]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x14005cf16
mov r8, qword [rbp - 0x68]
jmp 0x14005c962
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rax, qword [rbp - 0x70]
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x14005cf3d
cmp qword [rax + 0x48], rcx
lea rcx, [0x1402ac8c0]
je 0x14005cf3d
mov rcx, qword [rax + 0x38]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov ebx, eax
mov r8, qword [rbp - 0x68]
lea rdi, [fcn.14018de50]
mov rax, qword [rbp - 0x50]
cmp rax, 8
jb 0x14005cf8f
lea rdx, [rax*2 + 2]
mov rax, r8
cmp rdx, 0x1000
jb 0x14005cf87
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d035
mov rcx, r8
call fcn.14019b640
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], 7
mov word [rbp - 0x68], r15w
lea rax, [rsp + 0x50]
mov qword [rbp - 0x70], rax
lea rax, vtable.CVolMem.0
mov qword [rsp + 0x50], rax
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x14005cfe3
mov rax, qword [rsp + 0x50]
mov r8, qword [rax + 0x18]
cmp r8, rdi
jne 0x14005cfdb
lea rcx, [0x140489958]
call fcn.140196cd0
jmp 0x14005cfe3
lea rcx, [rsp + 0x50]
call r8
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x70], r15
lea rax, vtable.CVolObject.0
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x30], rax
mov eax, ebx
mov rcx, qword [rbp + 0x290]
xor rcx, rsp
call fcn.14023ba10
lea r11, [rsp + 0x3a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140242a14
nop
call fcn.140046b00
nop
call fcn.14005a1a0
int3
call fcn.140046b00
int3
call fcn.140242a14
nop
call fcn.140242a14
int3
call fcn.140046dc0
nop
call fcn.140242a14
nop
call fcn.140046b00
nop
call fcn.140242a14
int3
call fcn.140046dc0
nop
call fcn.140242a14
nop
call fcn.140046b00
nop
call fcn.140242a14
int3
call fcn.140046dc0
nop
call fcn.140242a14
int3