Function at 0x1400d8850
Capabilities:
Check if file exists
Delete file

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x188]
sub rsp, 0x260
mov qword [rbp - 0x78], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x14028e6b0]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov r14, rcx
xor r15b, r15b
mov byte [rsp + 0x30], r15b
mov dword [rsp + 0x50], 0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], 0
lea r8, [rsp + 0x50]
xor edx, edx
lea rcx, [rsp + 0x58]
call fcn.1400c0f20
nop
xor esi, esi
mov qword [rsp + 0x70], rsi
mov rbx, qword [r14 + 0x38]
mov rdi, qword [r14 + 0x40]
or r11, 0xffffffffffffffff
cmp rbx, rdi
je 0x1400d8ac5
nop dword [rax]
nop word [rax + rax]
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
cmp qword [r14 + 0x30], 0
jne 0x1400d8952
mov ecx, 0xa0
call fcn.140167f20
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400d8923
lea rdx, [r14 + 0xe88]
mov rcx, rax
call fcn.140063670
nop
mov qword [r14 + 0x30], rax
lea rdx, [0x1401d3758]
lea rcx, [rbp - 0x50]
call fcn.1401147f0
nop
mov rdx, rax
mov rcx, qword [r14 + 0x30]
call fcn.1401159a0
nop
lea rcx, [rbp - 0x50]
call fcn.140114be0
or r11, 0xffffffffffffffff
movzx r13d, byte [rbp - 0x7f]
movzx r15d, byte [rbp - 0x7e]
cmp r15d, r13d
sete r12b
mov byte [rsp + 0x31], r12b
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], 0
test rsi, rsi
je 0x1400d89be
jns 0x1400d89a6
mov rax, rsi
neg rax
je 0x1400d89a6
mov rax, r11
sub rax, rsi
shr rax, 5
lea rax, [rax*4 + 4]
sub rcx, rax
mov qword [rsp + 0x40], rcx
jmp 0x1400d89b6
mov rax, rsi
shr rax, 5
lea rax, [rcx + rax*4]
mov qword [rsp + 0x40], rax
and esi, 0x1f
mov qword [rsp + 0x48], rsi
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp - 0x70], xmm0
lea rax, [rsp + 0x31]
mov qword [rsp + 0x20], rax
mov r9d, 1
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x58]
call fcn.1400c1860
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1400d89fe
cmp rax, qword [r14 + 0x30]
jne 0x1400d8aa9
cmp byte [rbp - 0x80], 0
je 0x1400d8aa9
test r12b, r12b
jne 0x1400d8aa9
lea rdx, [0x1401d3758]
mov rcx, qword [r14 + 0x30]
call fcn.1401156e0
test rax, rax
je 0x1400d8a6b
cmp byte [rsp + 0x30], r12b
jne 0x1400d8a6b
mov rdx, rax
mov rcx, qword [r14 + 0x30]
call fcn.1401168c0
lea rdx, [0x1401d3758]
lea rcx, [rbp + 0x80]
call fcn.1401147f0
nop
mov rdx, rax
mov rcx, qword [r14 + 0x30]
call fcn.1401159a0
nop
lea rcx, [rbp + 0x80]
call fcn.140114be0
mov byte [rsp + 0x30], 1
lea rdx, [0x1401d3758]
mov rcx, qword [r14 + 0x30]
call fcn.1401156e0
mov r12, rax
cmp r13d, r15d
jae 0x1400d8aa9
lea rsi, [r13 + 0x1ae]
lea rsi, [r14 + rsi*8]
sub r15d, r13d
mov r8, qword [rsi]
mov rdx, r12
mov rcx, r14
call fcn.1400d4090
lea rsi, [rsi + 8]
sub r15, 1
jne 0x1400d8a91
add rbx, 0x10
mov rsi, qword [rsp + 0x70]
or r11, 0xffffffffffffffff
cmp rbx, rdi
jne 0x1400d88f0
movzx r15d, byte [rsp + 0x30]
mov r10b, 1
mov rbx, qword [rsp + 0x58]
mov rdx, rbx
xor ecx, ecx
mov r9, rbx
xor r8d, r8d
test rsi, rsi
je 0x1400d8b10
jns 0x1400d8afb
mov rax, rsi
neg rax
je 0x1400d8afb
sub r11, rsi
shr r11, 5
lea rax, [r11*4 + 4]
sub r9, rax
jmp 0x1400d8b06
mov rax, rsi
shr rax, 5
lea r9, [rbx + rax*4]
mov r8, rsi
and r8d, 0x1f
nop dword [rax]
cmp rdx, r9
jne 0x1400d8b1a
cmp rcx, r8
je 0x1400d8b3b
mov eax, 1
shl eax, cl
test dword [rdx], eax
je 0x1400d8b38
cmp rcx, 0x1f
jae 0x1400d8b30
inc rcx
jmp 0x1400d8b10
xor ecx, ecx
add rdx, 4
jmp 0x1400d8b10
xor r10b, r10b
test r15b, r15b
je 0x1400d8b4b
mov rcx, qword [r14 + 0x30]
call fcn.140116990
jmp 0x1400d8b84
test r10b, r10b
je 0x1400d8b84
add r14, 0xe88
cmp qword [r14 + 0x18], 8
jb 0x1400d8b63
mov rcx, qword [r14]
jmp 0x1400d8b66
mov rcx, r14
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1400d8b84
cmp qword [r14 + 0x18], 8
jb 0x1400d8b7a
mov r14, qword [r14]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
test rbx, rbx
je 0x1400d8c10
mov rax, qword [rsp + 0x68]
sub rax, rbx
sar rax, 2
movabs rcx, 0x3fffffffffffffff
cmp rax, rcx
jbe 0x1400d8bae
call fcn.14018acfc
int3
lea rax, [rax*4]
cmp rax, 0x1000
jb 0x1400d8bf6
test bl, 0x1f
je 0x1400d8bc9
call fcn.14018acfc
int3
mov rax, qword [rbx - 8]
cmp rax, rbx
jb 0x1400d8bd8
call fcn.14018acfc
int3
sub rbx, rax
cmp rbx, 8
jae 0x1400d8be7
call fcn.14018acfc
int3
cmp rbx, 0x27
jbe 0x1400d8bf3
call fcn.14018acfc
int3
mov rbx, rax
mov rcx, rbx
call fcn.140167f5c
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], 0
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.140168660
lea r11, [rsp + 0x260]
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