Function at 0x1400c5560
Capabilities:
Check if file exists
Delete file
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x4f8
movaps xmmword [rsp + 0x4e0], xmm7
movaps xmmword [rsp + 0x4d0], xmm6
mov rsi, rcx
mov rdi, qword [0x1402a0c90]
test rdi, rdi
je 0x1400c55c3
lea rbx, [0x1402717d9]
mov rcx, rdi
mov rdx, rbx
call fcn.1401667d0
test al, al
jne 0x1400c5e1f
lea rdx, str.vmodule
mov rcx, rdi
call fcn.1401667d0
test al, al
jne 0x1400c5e1f
mov eax, dword [rsi]
mov dword [0x14029bf48], eax
test al, 1
jne 0x1400c55f5
mov al, 1
movaps xmm6, xmmword [rsp + 0x4d0]
movaps xmm7, xmmword [rsp + 0x4e0]
add rsp, 0x4f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [0x1402a0cc0]
test rcx, rcx
jne 0x1400c560f
mov rdi, qword [0x1402a0cb0]
test rdi, rdi
je 0x1400c5633
jmp 0x1400c5655
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x1402a0cc0], 0
mov rdi, qword [0x1402a0cb0]
test rdi, rdi
jne 0x1400c5655
and byte [0x14029bf48], 0xfe
mov ecx, 0x18
call fcn.14017b1d8
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov qword [0x1402a0cb0], rax
mov rbx, qword [rsi + 8]
test rbx, rbx
je 0x1400c5eed
mov rcx, rbx
call fcn.14017bd98
mov rcx, rdi
mov rdx, rbx
mov r8, rax
call fcn.14001c5a0
mov eax, dword [rsi + 0x14]
cmp eax, 2
je 0x1400c569c
test eax, eax
jne 0x1400c56a8
mov rcx, qword [0x1402a0cb0]
cmp byte [rcx + 0x17], 0
jns 0x1400c5694
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x1400c56a8
mov rax, qword [0x1402a0cb0]
test rax, rax
jne 0x1400c56d0
movaps xmm6, xmmword [rsp + 0x4d0]
movaps xmm7, xmmword [rsp + 0x4e0]
add rsp, 0x4f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1400c5f10
movabs r12, 0xaaaaaaaaaaaaaaaa
lea rsi, [rsp + 0x190]
mov qword [rsi + 0x10], r12
movaps xmm6, xmmword [0x140270690]
movaps xmmword [rsi], xmm6
movzx ecx, byte [rax + 0x17]
mov r8d, ecx
and r8d, 0x7f
test cl, cl
mov rcx, qword [rax]
cmovns rcx, rax
lea rdx, [rsp + 0x1f8]
mov qword [rdx], rcx
cmovs r8, qword [rax + 8]
mov qword [rdx + 8], r8
mov rcx, rsi
call fcn.14014b0f0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
lea rcx, [rsp + 0xa8]
mov qword [rcx], r12
call fcn.140168ec0
lea rdx, [rsp + 0x208]
mov rcx, rsi
call fcn.14014ae20
cmp byte [rsi + 0x17], 0
jns 0x1400c576a
mov rcx, qword [rsp + 0x190]
call fcn.14017b254
lea rdi, [rsp + 0x208]
mov rax, qword [rdi + 0x10]
lea rbx, [rsp + 0x190]
mov qword [rbx + 0x10], rax
movups xmm0, xmmword [rdi]
movaps xmmword [rbx], xmm0
mov r8d, 0x2c8
mov rcx, rdi
mov dl, 0xaa
call fcn.1401808d0
lea rdx, str.20______.log
lea rsi, [rsp + 0x120]
mov rcx, rsi
call fcn.1401bc8c0
xor eax, eax
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rsi
mov rcx, rdi
mov rdx, rbx
xor r8d, r8d
mov r9d, 1
call fcn.140031670
cmp byte [rsi + 0x17], 0
jns 0x1400c57e5
mov rcx, qword [rsp + 0x120]
call fcn.14017b254
lea rdi, [rsp + 0x60]
mov qword [rdi + 0x10], r12
movaps xmmword [rdi], xmm6
lea rcx, [rsp + 0x208]
mov rdx, rdi
call fcn.1400319e0
movzx eax, byte [rdi + 0x17]
test al, al
jns 0x1400c5810
mov rcx, qword [rsp + 0x68]
jmp 0x1400c5815
mov ecx, eax
and ecx, 0x7f
test rcx, rcx
je 0x1400c5d1a
lea rdi, [rsp + 0xe0]
lea rbp, [rsp + 0x148]
xor r14d, r14d
xorps xmm7, xmm7
movaps xmmword [rsp + 0x1e0], xmm6
movaps xmmword [rsp + 0x1d0], xmm6
movaps xmmword [rsp + 0x1c0], xmm6
movaps xmmword [rsp + 0x1b0], xmm6
lea rcx, [rsp + 0x1b0]
call fcn.1401df700
mov r15, r12
mov qword [rsp + 0x50], r12
movaps xmmword [rsp + 0x40], xmm6
lea rcx, [rsp + 0x60]
mov rdx, rsi
call fcn.14014b340
movzx eax, byte [rsp + 0x137]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rsp + 0x120]
cmovns rax, rsi
mov qword [rsp + 0xb0], rax
cmovs rcx, qword [rsp + 0x128]
mov qword [rsp + 0xb8], rcx
lea rcx, [rsp + 0x40]
lea rdx, [rsp + 0xb0]
call fcn.14014f5a0
cmp byte [rsp + 0x137], 0
jns 0x1400c58d8
mov rcx, qword [rsp + 0x120]
call fcn.14017b254
movzx eax, byte [rsp + 0x57]
mov r13d, eax
and r13d, 0x7f
test al, al
mov rbx, qword [rsp + 0x40]
lea rax, [rsp + 0x40]
cmovns rbx, rax
cmovs r13, qword [rsp + 0x48]
add r13, rbx
movups xmmword [rdi + 0x28], xmm6
movups xmmword [rdi + 0x18], xmm6
movups xmmword [rdi + 8], xmm6
movups xmmword [rdi - 8], xmm6
mov byte [rsp + 0x110], r14b
mov qword [rsp + 0x118], r14
movaps xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0xc0], xmm7
movups xmmword [rsp + 0xc9], xmm7
mov byte [rdi + 0x10], r14b
movups xmmword [rdi], xmm7
mov byte [rdi + 0x28], r14b
movups xmmword [rdi + 0x18], xmm7
movups xmmword [rbp + 0x30], xmm6
movups xmmword [rbp + 0x20], xmm6
movups xmmword [rbp + 0x10], xmm6
movups xmmword [rbp], xmm6
mov byte [rsp + 0x180], r14b
mov qword [rsp + 0x188], r14
movaps xmmword [rsp + 0x120], xmm7
movaps xmmword [rsp + 0x130], xmm7
movups xmmword [rsp + 0x139], xmm7
mov byte [rbp + 0x18], r14b
movups xmmword [rbp + 8], xmm7
mov byte [rbp + 0x30], r14b
movups xmmword [rbp + 0x20], xmm7
mov dword [rsp + 0x20], 0x1040
lea rcx, [rsp + 0x1b0]
mov rdx, rbx
mov r8, r13
mov r9, rsi
call fcn.1401c2060
mov r12d, eax
mov byte [rsp + 0x20], r14b
lea rcx, [rsp + 0xb0]
mov rdx, rbx
mov r8, r13
mov r9, rsi
call fcn.1401c21e0
mov rcx, qword [rsp + 0x120]
test rcx, rcx
je 0x1400c59e2
mov qword [rsp + 0x128], rcx
call fcn.14017b254
test r12b, r12b
je 0x1400c5a02
cmp byte [rsp + 0x110], 0
je 0x1400c5efb
cmp byte [rsp + 0x108], 0
je 0x1400c5a02
xor r12d, r12d
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
je 0x1400c5a1c
mov qword [rsp + 0xb8], rcx
call fcn.14017b254
test r12b, r12b
jne 0x1400c5af7
cmp byte [rsp + 0x57], 0
mov r12, r15
jns 0x1400c5a39
mov rcx, qword [rsp + 0x40]
call fcn.14017b254
mov rbx, qword [rsp + 0x1e0]
test rbx, rbx
je 0x1400c5a7f
mov eax, 0xffffffff
lock xadd dword [rbx + 8], eax
test eax, eax
jne 0x1400c5a7f
mov rax, qword [rbx]
mov rax, qword [rax + 8]
mov rcx, rbx
call qword [case.0x1401e7f70.0]
mov eax, dword [rbx + 0x10]
test eax, eax
jne 0x1400c5cf1
mov rax, qword [rbx]
mov rax, qword [rax + 0x18]
mov rcx, rbx
call qword [case.0x1401e7f70.0]
mov rcx, qword [rsp + 0x1b0]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
test eax, eax
je 0x1400c5d08
lea rcx, [rsp + 0x208]
mov rdx, rsi
call fcn.1400319e0
cmp byte [rsp + 0x77], 0
jns 0x1400c5aba
mov rcx, qword [rsp + 0x60]
call fcn.14017b254
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x60], xmm0
movzx eax, byte [rsp + 0x77]
test al, al
jns 0x1400c5ae4
mov rcx, qword [rsp + 0x68]
jmp 0x1400c5ae9
mov ecx, eax
and ecx, 0x7f
test rcx, rcx
jne 0x1400c5834
jmp 0x1400c5d1a
mov qword [rsp + 0xa0], 0
movaps xmmword [rsp + 0x130], xmm6
movaps xmmword [rsp + 0x120], xmm6
lea rcx, [rsp + 0xa0]
mov dl, 1
mov r8, rsi
call fcn.1400c94d0
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r9d, 4
lea r13, [rsp + 0xb0]
mov rcx, r13
lea rdx, [rsp + 0x40]
xor r8d, r8d
call fcn.14002cb80
mov r12b, byte [rsp + 0xc7]
test r12b, r12b
mov rbx, qword [rsp + 0xb0]
cmovs r13, rbx
mov rcx, r13
call fcn.14019ab54
mov dword [rsp + 0x120], eax
test r12b, r12b
jns 0x1400c5b80
mov rcx, rbx
call fcn.14017b254
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r8d, 4
mov r9d, 2
lea r13, [rsp + 0xb0]
mov rcx, r13
lea rdx, [rsp + 0x40]
call fcn.14002cb80
mov r12b, byte [rsp + 0xc7]
test r12b, r12b
mov rbx, qword [rsp + 0xb0]
cmovs r13, rbx
mov rcx, r13
call fcn.14019ab54
mov dword [rsp + 0x124], eax
test r12b, r12b
jns 0x1400c5bde
mov rcx, rbx
call fcn.14017b254
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r8d, 6
mov r9d, 2
lea r13, [rsp + 0xb0]
mov rcx, r13
lea rdx, [rsp + 0x40]
call fcn.14002cb80
mov r12b, byte [rsp + 0xc7]
test r12b, r12b
mov rbx, qword [rsp + 0xb0]
cmovs r13, rbx
mov rcx, r13
call fcn.14019ab54
mov dword [rsp + 0x12c], eax
test r12b, r12b
jns 0x1400c5c3c
mov rcx, rbx
call fcn.14017b254
mov qword [rsp + 0xb0], 0
mov cl, 1
mov rdx, rsi
lea r8, [rsp + 0xb0]
call fcn.1400c92f0
test al, al
je 0x1400c5a25
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xb0]
xor edx, edx
cmp rax, rcx
setns dl
movabs r8, 0x7fffffffffffffff
add rdx, r8
sub rax, rcx
cmovo rax, rdx
movabs rcx, 0x8cd0e3a000
cmp rax, rcx
jl 0x1400c5a25
mov rbx, qword [rsp + 0x88]
cmp rbx, qword [rsp + 0x90]
je 0x1400c5cda
test rbx, rbx
je 0x1400c5efe
mov rcx, rbx
lea rdx, [rsp + 0x60]
call fcn.1401567f0
add rbx, 0x18
mov qword [rsp + 0x88], rbx
jmp 0x1400c5a25
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0x60]
call fcn.140070f80
jmp 0x1400c5a25
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
test eax, eax
jne 0x1400c5a7f
jmp 0x1400c5a6f
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1401e7f70.0]
jmp 0x1400c5a99
test al, al
jns 0x1400c5d28
mov rcx, qword [rsp + 0x60]
call fcn.14017b254
mov rsi, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x88]
cmp rsi, rdi
je 0x1400c5d4d
mov rcx, rsi
xor edx, edx
call fcn.140031100
add rsi, 0x18
jmp 0x1400c5d38
mov rcx, qword [rsp + 0x460]
cmp rcx, 0xffffffffffffffff
jne 0x1400c5ef0
lea rsi, [rsp + 0x4b0]
mov rdx, qword [rsi + 0x10]
mov r8, qword [rsi + 0x18]
mov rcx, rsi
call fcn.1400345a0
mov rcx, qword [rsi]
call fcn.14017b220
cmp byte [rsi - 0x11], 0
js 0x1400c5e0d
cmp byte [rsp + 0x47f], 0
jns 0x1400c5da0
mov rcx, qword [rsp + 0x468]
call fcn.14017b254
mov rsi, qword [rsp + 0x80]
test rsi, rsi
je 0x1400c5ded
mov rax, qword [rsp + 0x88]
mov rcx, rsi
cmp rax, rsi
je 0x1400c5de0
lea rdi, [rax - 0x18]
cmp byte [rax - 1], 0
jns 0x1400c5dd0
mov rcx, qword [rax - 0x18]
call fcn.14017b254
mov rax, rdi
cmp rdi, rsi
jne 0x1400c5dbd
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x88], rsi
call fcn.14017b254
cmp byte [rsp + 0x1a7], 0
jns 0x1400c56a8
mov rcx, qword [rsp + 0x190]
call fcn.14017b254
jmp 0x1400c56a8
mov rcx, qword [rsp + 0x488]
call fcn.14017b254
jmp 0x1400c5d89
lea rax, str.vmodule
lea r8, [rsp + 0xb0]
mov qword [r8], rax
mov qword [r8 + 8], 7
lea r14, [rsp + 0x208]
mov rcx, rdi
mov rdx, r14
call fcn.14001ab30
lea r8, [rsp + 0x1b0]
mov qword [r8], rbx
mov qword [r8 + 8], 1
lea rbx, [rsp + 0x120]
mov rcx, rdi
mov rdx, rbx
call fcn.14001ab30
mov ecx, 0x20
call fcn.14017b1d8
mov rdi, rax
lea r9, [0x1402a0cb8]
mov rcx, rax
mov rdx, rbx
mov r8, r14
call fcn.1400cc940
cmp byte [rbx + 0x17], 0
jns 0x1400c5ea7
mov rcx, qword [rsp + 0x120]
call fcn.14017b254
cmp byte [rsp + 0x21f], 0
jns 0x1400c5ebe
mov rcx, qword [rsp + 0x208]
call fcn.14017b254
test rdi, rdi
je 0x1400c55c3
xor eax, eax
lock cmpxchg qword [0x1402a0cc8], rdi
je 0x1400c55c3
mov rcx, rdi
call fcn.1400cc9d0
mov rcx, rdi
call fcn.14017b254
jmp 0x1400c55c3
int3
call qword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x1400c5d5f
int3
int3