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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5c8]
sub rsp, 0x6a0
xor ebx, ebx
mov r12d, r8d
mov r14, rdx
mov rdi, rcx
test rcx, rcx
je 0x14008601c
cmp word [rcx], bx
je 0x14008601c
mov rdx, rcx
mov esi, 0x104
mov r8d, esi
lea rcx, [rsp + 0x30]
call fcn.14009b4c4
mov rcx, rdi
mov word [rbp + 0x138], bx
call fcn.14009a2cc
test eax, eax
je 0x140085db2
cmp eax, esi
jge 0x140085db2
cdqe
cmp word [rdi + rax*2 - 2], 0x5c
je 0x140085db2
lea rdx, [0x1401a22a4]
lea rcx, [rsp + 0x30]
call fcn.1400b75c4
mov r8, rsi
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x390]
call fcn.14009b4c4
mov word [rbp + 0x598], bx
test r14, r14
je 0x140085edc
cmp word [r14], bx
je 0x140085edc
lea rdx, [0x1401a8be0]
mov rcx, r14
call fcn.1400b7358
test eax, eax
je 0x140085edc
mov r15d, r12d
and r15d, 1
je 0x140085ed4
lea r9, [rbp + 0x390]
mov rdx, rsi
lea r8, [0x1401a8bd0]
lea rcx, [rsp + 0x30]
call fcn.140085cd0
lea rdx, [rbp + 0x140]
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x140085ecd
lea rax, [rbp + 0x16c]
mov rdx, rsi
lea r9, [rbp + 0x390]
mov qword [rsp + 0x20], rax
lea r8, [0x1401a60b0]
lea rcx, [rsp + 0x30]
call fcn.140085cd0
test byte [rbp + 0x140], 0x10
je 0x140085eac
lea rdx, [0x1401a22f0]
lea rcx, [rbp + 0x16c]
call fcn.1400b7358
test eax, eax
je 0x140085eac
lea rdx, [0x1401a22f8]
lea rcx, [rbp + 0x16c]
call fcn.1400b7358
test eax, eax
je 0x140085eac
mov r8d, r12d
lea rcx, [rsp + 0x30]
mov rdx, r14
call fcn.140085d28
lea rdx, [rbp + 0x140]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x140085e3e
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
mov edi, 1
jmp 0x140085eec
mov edi, dword [rbp + 0x5d0]
jmp 0x140085eec
mov r15d, r12d
lea r14, [0x1401a8be0]
and r15d, 1
mov edi, ebx
lea r9, [rbp + 0x390]
mov qword [rsp + 0x20], r14
lea r8, [0x1401a60b0]
mov rdx, rsi
lea rcx, [rsp + 0x30]
call fcn.140085cd0
lea rdx, [rbp + 0x140]
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov r13, rax
cmp rax, 0xffffffffffffffff
je 0x14008601c
mov esi, r12d
and esi, 2
lea rax, [rbp + 0x16c]
mov edx, 0x104
lea r9, [rbp + 0x390]
mov qword [rsp + 0x20], rax
lea r8, [0x1401a60b0]
lea rcx, [rsp + 0x30]
call fcn.140085cd0
test byte [rbp + 0x140], 0x10
je 0x140085fac
test edi, edi
jne 0x140085fcb
test r15d, r15d
je 0x140085fcb
lea rdx, [0x1401a22f0]
lea rcx, [rbp + 0x16c]
call fcn.1400b7358
test eax, eax
je 0x140085fcb
lea rdx, [0x1401a22f8]
lea rcx, [rbp + 0x16c]
call fcn.1400b7358
test eax, eax
je 0x140085fcb
mov r8d, r12d
lea rcx, [rsp + 0x30]
mov rdx, r14
call fcn.140085d28
jmp 0x140085fcb
test esi, esi
je 0x140085fc0
mov edx, 0x80
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
lea rdx, [rbp + 0x140]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x140085f31
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FindClose]
test esi, esi
je 0x140086002
mov edx, 0x80
lea rcx, [rbp + 0x390]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test edi, edi
je 0x14008600d
mov ebx, 1
jmp 0x14008601c
lea rcx, [rbp + 0x390]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov ebx, eax
lea r11, [rsp + 0x6a0]
movsxd rax, ebx
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