Function at 0x1401d4260
Capabilities:
Check if file exists
Delete directory
Delete file
Enumerate files on windows
Enumerate files recursively
Get 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 - 0x328]
sub rsp, 0x400
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x1403debe8]
xor rax, rsp
mov qword [rbp + 0x2d0], rax
mov r12, rcx
mov qword [rbp - 0x10], rcx
xor r14d, r14d
mov dword [rsp + 0x20], r14d
xor dil, dil
mov rdx, rcx
lea rcx, [rbp - 0x70]
call fcn.1400eabe0
mov rbx, rax
mov rcx, rax
cmp qword [rax + 0x18], 8
jb 0x1401d42cd
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1401d4a1e
test al, 0x10
je 0x1401d4a1e
mov rcx, rbx
call fcn.1401156c0
mov rax, qword [r12 + 0x10]
cmp rax, 3
jbe 0x1401d4a27
mov rcx, r12
mov rdx, qword [r12 + 0x18]
cmp rdx, 8
jb 0x1401d430d
mov rcx, qword [r12]
cmp word [rcx + rax*2 - 2], 0x5c
jne 0x1401d4330
lea rcx, [rax - 1]
mov qword [r12 + 0x10], rcx
mov rax, r12
cmp rdx, 8
jb 0x1401d432b
mov rax, qword [r12]
mov word [rax + rcx*2], r14w
mov rdx, r12
lea rcx, [rbp - 0x50]
call fcn.1400eabe0
mov rsi, rax
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov rbx, r14
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x20], 1
lea r8, [0x1402e33f8]
mov rdx, rax
lea rcx, [rbp + 0x38]
call fcn.1401d1ae0
nop
lea rcx, [rbp + 0x38]
cmp qword [rbp + 0x50], 8
cmovae rcx, qword [rbp + 0x38]
lea rdx, [rbp + 0x80]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rdi, rax
mov r15, qword [rsp + 0x30]
cmp rax, 0xffffffffffffffff
je 0x1401d4486
nop
cmp r15, rbx
je 0x1401d4446
mov rcx, r15
lea rax, [rbp + 0x80]
mov edx, 4
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1401d43c0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
add r15, 0x250
mov qword [rsp + 0x30], r15
jmp 0x1401d4464
lea r8, [rbp + 0x80]
mov rdx, r15
lea rcx, [rsp + 0x28]
call fcn.1401d1c40
mov rbx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x30]
lea rdx, [rbp + 0x80]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x1401d43a0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
mov rdx, qword [rbp + 0x50]
cmp rdx, 8
jb 0x1401d44c6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401d44c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401d4a73
call fcn.14020be84
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x50], 7
mov word [rbp + 0x38], r14w
mov rcx, rsi
call fcn.1401156c0
mov r13, qword [rsp + 0x28]
cmp r13, r15
je 0x1401d49ae
nop dword [rax]
mov qword [rbp + 0x18], r14
mov qword [rbp + 0x28], r14
mov qword [rbp + 0x30], 7
mov word [rbp + 0x18], r14w
lea rdx, [r13 + 0x2c]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], 0
jne 0x1401d4510
lea rcx, [rbp + 0x18]
call fcn.1400f8950
nop
mov qword [rbp - 8], r14
mov qword [rbp + 8], r14
mov qword [rbp + 0x10], 7
mov word [rbp - 8], r14w
xor r8d, r8d
lea rdx, [0x1402cf868]
lea rcx, [rbp - 8]
call fcn.1400f8950
nop
lea r8, [rbp + 0x18]
mov rbx, qword [rbp + 0x18]
mov rdi, qword [rbp + 0x30]
cmp rdi, 8
cmovae r8, rbx
mov rsi, qword [rbp + 0x28]
cmp rsi, 1
jne 0x1401d4596
mov rdx, rsi
lea rax, [0x1402d22ec]
mov rcx, rax
sub r8, rax
nop dword [rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x1401d4596
add rcx, 2
sub rdx, 1
jne 0x1401d4580
jmp 0x1401d45d8
lea r8, [rbp + 0x18]
cmp rdi, 8
cmovae r8, rbx
cmp rsi, 2
jne 0x1401d465d
mov rdx, rsi
lea rax, [0x1402e340c]
mov rcx, rax
sub r8, rax
nop dword [rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x1401d465d
add rcx, 2
sub rdx, 1
jne 0x1401d45c0
mov rdx, qword [rbp + 0x10]
cmp rdx, 8
jb 0x1401d4619
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401d4613
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401d4a91
call fcn.14020be84
nop
cmp rdi, 8
jb 0x1401d4994
lea rdx, [rdi*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1401d4650
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401d4a97
mov rcx, rbx
call fcn.14020be84
jmp 0x1401d4994
lea r8, [0x1402d1f10]
mov rdx, r12
lea rcx, [rbp + 0x58]
call fcn.1401d1ae0
nop
lea rdx, [rbp + 0x18]
cmp rdi, 8
cmovae rdx, rbx
mov r8, rsi
mov rcx, rax
call fcn.1401d4d20
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
or dword [rsp + 0x20], 2
mov rdx, qword [rbp + 0x10]
cmp rdx, 8
jb 0x1401d46e4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401d46df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401d4a7f
call fcn.14020be84
movups xmmword [rbp - 8], xmm6
movups xmmword [rbp + 8], xmm7
mov rdx, qword [rbp + 0x70]
cmp rdx, 8
jb 0x1401d472c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401d4727
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401d4a85
call fcn.14020be84
mov word [rbp + 0x58], r14w
mov rbx, qword [rbp - 8]
mov rsi, qword [rbp + 0x10]
mov rdi, qword [rbp + 8]
test byte [r13], 0x10
je 0x1401d4805
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x80], r14
lea r14, [rbp - 8]
cmp rsi, 8
cmovae r14, rbx
cmp rdi, 8
jae 0x1401d478d
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x80], 7
lea rcx, [rsp + 0x68]
call fcn.1401d4260
jmp 0x1401d4915
or rdi, 7
movabs rax, 0x7ffffffffffffffe
cmp rdi, rax
cmova rdi, rax
lea rcx, [rdi + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x1401d4a8b
lfence
add rcx, rcx
call fcn.1400e1b00
mov qword [rsp + 0x68], rax
mov rbx, qword [rbp + 8]
lea r8, [rbx*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.140244220
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], rdi
mov r15, qword [rsp + 0x30]
mov rsi, qword [rbp + 0x10]
mov rbx, qword [rbp - 8]
lea rcx, [rsp + 0x68]
call fcn.1401d4260
jmp 0x1401d4915
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
lea r14, [rbp - 8]
cmp rsi, 8
cmovae r14, rbx
cmp rdi, 8
jae 0x1401d483f
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], 7
jmp 0x1401d48a9
or rdi, 7
movabs rax, 0x7ffffffffffffffe
cmp rdi, rax
cmova rdi, rax
lea rcx, [rdi + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x1401d4a6d
lfence
add rcx, rcx
call fcn.1400e1b00
mov qword [rsp + 0x40], rax
mov rbx, qword [rbp + 8]
lea r8, [rbx*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.140244220
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rdi
mov r15, qword [rsp + 0x30]
mov rsi, qword [rbp + 0x10]
mov rbx, qword [rbp - 8]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x60], rax
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x30]
call fcn.1400eabe0
mov rdi, rax
mov rcx, rax
cmp qword [rax + 0x18], 8
jb 0x1401d48d1
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1401d4901
test al, 0x10
jne 0x1401d4901
mov rcx, rdi
call fcn.1401156c0
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x1401d490a
mov rcx, rdi
call fcn.1401156c0
nop
lea rcx, [rsp + 0x40]
call fcn.1401156c0
nop
cmp rsi, 8
jb 0x1401d4951
lea rdx, [rsi*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1401d4948
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401d4a91
mov rcx, rbx
call fcn.14020be84
nop
mov rdx, qword [rbp + 0x30]
cmp rdx, 8
jb 0x1401d4991
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401d498c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401d4a97
call fcn.14020be84
xor r14d, r14d
add r13, 0x250
cmp r13, r15
jne 0x1401d44f0
mov rbx, qword [rsp + 0x38]
mov r13, qword [rsp + 0x28]
mov rcx, r12
cmp qword [r12 + 0x18], 8
jb 0x1401d49bd
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
setne dil
test r13, r13
je 0x1401d4a27
sub rbx, r13
movabs rax, 0x3759f22983759f23
imul rbx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x250
mov rax, r13
cmp rdx, 0x1000
jb 0x1401d4a14
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401d4a79
mov rcx, r13
call fcn.14020be84
jmp 0x1401d4a27
mov rcx, rbx
call fcn.1401156c0
nop
mov rcx, r12
call fcn.1401156c0
movzx eax, dil
mov rcx, qword [rbp + 0x2d0]
xor rcx, rsp
call fcn.14020c3e0
lea r11, [rsp + 0x400]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400f8240
nop
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn
nop
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn
nop
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn
nop
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn
int3
call fcn.1400f8240
nop
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn
nop
call sub.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn
int3