Function at 0x140194ee0
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 [0x140351248]
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.1400c19b0
mov rbx, rax
mov rcx, rax
cmp qword [rax + 0x18], 8
jb 0x140194f4d
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14019569e
test al, 0x10
je 0x14019569e
mov rcx, rbx
call fcn.1400eb020
mov rax, qword [r12 + 0x10]
cmp rax, 3
jbe 0x1401956a7
mov rcx, r12
mov rdx, qword [r12 + 0x18]
cmp rdx, 8
jb 0x140194f8d
mov rcx, qword [r12]
cmp word [rcx + rax*2 - 2], 0x5c
jne 0x140194fb0
lea rcx, [rax - 1]
mov qword [r12 + 0x10], rcx
mov rax, r12
cmp rdx, 8
jb 0x140194fab
mov rax, qword [r12]
mov word [rax + rcx*2], r14w
mov rdx, r12
lea rcx, [rbp - 0x50]
call fcn.1400c19b0
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, [0x14027f438]
mov rdx, rax
lea rcx, [rbp + 0x38]
call fcn.140192760
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 0x140195106
nop
cmp r15, rbx
je 0x1401950c6
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 0x140195040
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 0x1401950e4
lea r8, [rbp + 0x80]
mov rdx, r15
lea rcx, [rsp + 0x28]
call fcn.1401928c0
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 0x140195020
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
mov rdx, qword [rbp + 0x50]
cmp rdx, 8
jb 0x140195146
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140195141
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401956f3
call fcn.1401bfb10
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x50], 7
mov word [rbp + 0x38], r14w
mov rcx, rsi
call fcn.1400eb020
mov r13, qword [rsp + 0x28]
cmp r13, r15
je 0x14019562e
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 0x140195190
lea rcx, [rbp + 0x18]
call fcn.1400cf720
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, [0x14026eb8c]
lea rcx, [rbp - 8]
call fcn.1400cf720
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 0x140195216
mov rdx, rsi
lea rax, [0x14027000c]
mov rcx, rax
sub r8, rax
nop dword [rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x140195216
add rcx, 2
sub rdx, 1
jne 0x140195200
jmp 0x140195258
lea r8, [rbp + 0x18]
cmp rdi, 8
cmovae r8, rbx
cmp rsi, 2
jne 0x1401952dd
mov rdx, rsi
lea rax, [0x14027f44c]
mov rcx, rax
sub r8, rax
nop dword [rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x1401952dd
add rcx, 2
sub rdx, 1
jne 0x140195240
mov rdx, qword [rbp + 0x10]
cmp rdx, 8
jb 0x140195299
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140195293
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140195711
call fcn.1401bfb10
nop
cmp rdi, 8
jb 0x140195614
lea rdx, [rdi*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1401952d0
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140195717
mov rcx, rbx
call fcn.1401bfb10
jmp 0x140195614
lea r8, [0x14026fc30]
mov rdx, r12
lea rcx, [rbp + 0x58]
call fcn.140192760
nop
lea rdx, [rbp + 0x18]
cmp rdi, 8
cmovae rdx, rbx
mov r8, rsi
mov rcx, rax
call fcn.1401959a0
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 0x140195364
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14019535f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401956ff
call fcn.1401bfb10
movups xmmword [rbp - 8], xmm6
movups xmmword [rbp + 8], xmm7
mov rdx, qword [rbp + 0x70]
cmp rdx, 8
jb 0x1401953ac
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401953a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140195705
call fcn.1401bfb10
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 0x140195485
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 0x14019540d
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.140194ee0
jmp 0x140195595
or rdi, 7
movabs rax, 0x7ffffffffffffffe
cmp rdi, rax
cmova rdi, rax
lea rcx, [rdi + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x14019570b
lfence
add rcx, rcx
call fcn.1400b88d0
mov qword [rsp + 0x68], rax
mov rbx, qword [rbp + 8]
lea r8, [rbx*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.1401f7750
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.140194ee0
jmp 0x140195595
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 0x1401954bf
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], 7
jmp 0x140195529
or rdi, 7
movabs rax, 0x7ffffffffffffffe
cmp rdi, rax
cmova rdi, rax
lea rcx, [rdi + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x1401956ed
lfence
add rcx, rcx
call fcn.1400b88d0
mov qword [rsp + 0x40], rax
mov rbx, qword [rbp + 8]
lea r8, [rbx*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.1401f7750
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.1400c19b0
mov rdi, rax
mov rcx, rax
cmp qword [rax + 0x18], 8
jb 0x140195551
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140195581
test al, 0x10
jne 0x140195581
mov rcx, rdi
call fcn.1400eb020
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x14019558a
mov rcx, rdi
call fcn.1400eb020
nop
lea rcx, [rsp + 0x40]
call fcn.1400eb020
nop
cmp rsi, 8
jb 0x1401955d1
lea rdx, [rsi*2 + 2]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1401955c8
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140195711
mov rcx, rbx
call fcn.1401bfb10
nop
mov rdx, qword [rbp + 0x30]
cmp rdx, 8
jb 0x140195611
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14019560c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140195717
call fcn.1401bfb10
xor r14d, r14d
add r13, 0x250
cmp r13, r15
jne 0x140195170
mov rbx, qword [rsp + 0x38]
mov r13, qword [rsp + 0x28]
mov rcx, r12
cmp qword [r12 + 0x18], 8
jb 0x14019563d
mov rcx, qword [r12]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
setne dil
test r13, r13
je 0x1401956a7
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 0x140195694
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401956f9
mov rcx, r13
call fcn.1401bfb10
jmp 0x1401956a7
mov rcx, rbx
call fcn.1400eb020
nop
mov rcx, r12
call fcn.1400eb020
movzx eax, dil
mov rcx, qword [rbp + 0x2d0]
xor rcx, rsp
call fcn.1401c0070
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.1400cf010
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.1400cf010
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