Function at 0x7ff61ac3f890
Capabilities:
Delete file

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x58]
sub rsp, 0x158
mov rax, qword [0x7ff61b637500]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov eax, dword [rbp + 0xd0]
xorps xmm0, xmm0
mov rsi, qword [rbp + 0xd8]
test eax, eax
mov r15, rcx
mov qword [rbp - 8], r9
mov rcx, qword [rbp + 0xc0]
mov r14d, 6
cmovns r14d, eax
mov qword [rbp], r8
mov qword [rbp - 0x10], rcx
mov r12, rdx
mov dword [rsp + 0x70], 0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
test r15, r15
je 0x7ff61ac3fc3f
test rdx, rdx
je 0x7ff61ac3fc3f
test r9, r9
je 0x7ff61ac3f930
test r8, r8
je 0x7ff61ac3fc3f
cmp word [rbp + 0xc8], 0
je 0x7ff61ac3f943
test rcx, rcx
je 0x7ff61ac3fc3f
mov eax, r14d
and eax, 0xf
cmp al, 0xa
ja 0x7ff61ac3fc3f
cmp byte [rdx], 0x2f
jne 0x7ff61ac3f96a
test rsi, rsi
je 0x7ff61ac3fc4a
mov dword [rsi], 0x19
jmp 0x7ff61ac3fc4a
mov rcx, r15
call fcn.7ff61ac3f760
lea rdx, [rbp + 8]
mov rcx, rax
mov rdi, rax
call qword [sym.imp.ucrtbase.dll__wstat64]
mov rcx, rdi
mov ebx, eax
call qword [sym.imp.ucrtbase.dll_free]
lea rcx, [rbp - 0x80]
mov r13d, 1
mov rdx, r15
test ebx, ebx
je 0x7ff61ac3fb21
mov r9d, r14d
xor r8d, r8d
call fcn.7ff61ac48e10
test eax, eax
je 0x7ff61ac3fb3c
mov dword [rsp + 0x70], r13d
xor edi, edi
movzx eax, word [rbp + 0xc8]
lea rcx, [rbp - 0x80]
mov r9, qword [rbp - 8]
mov rdx, r12
mov r8, qword [rbp]
mov dword [rsp + 0x68], edi
mov qword [rsp + 0x60], rdi
mov dword [rsp + 0x58], edi
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x48], rdi
mov dword [rsp + 0x40], edi
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], r14d
mov word [rsp + 0x28], ax
mov rax, qword [rbp - 0x10]
mov qword [rsp + 0x20], rax
call fcn.7ff61ac46940
mov ebx, dword [rbp - 0x64]
lea rcx, [rbp - 0x80]
mov r14d, eax
call fcn.7ff61ac48880
mov ecx, dword [rbp - 0x64]
test eax, eax
jne 0x7ff61ac3fa28
test ebx, ebx
mov r14d, edi
cmove ebx, ecx
mov rdi, qword [rbp - 0x18]
test rdi, rdi
je 0x7ff61ac3fc0b
cmp qword [rbp - 0x58], 0
je 0x7ff61ac3fc0b
mov r8, qword [rbp - 0x50]
test r8, r8
je 0x7ff61ac3fc0b
mov eax, dword [rbp - 0x6c]
add eax, 0xfffffffe
cmp eax, r13d
ja 0x7ff61ac3fc0b
mov rcx, qword [rbp - 0x40]
xor r12d, r12d
mov qword [rbp - 0x18], r12
mov rdx, qword [rdi]
call r8
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rbp - 0x40]
call qword [rbp - 0x50]
xorps xmm0, xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
mov rdx, qword [rdi + 0x40]
mov rcx, qword [rbp - 0x40]
call qword [rbp - 0x50]
xorps xmm0, xmm0
movups xmmword [rdi + 0x40], xmm0
movups xmmword [rdi + 0x50], xmm0
mov rcx, qword [rdi + 0x70]
test rcx, rcx
je 0x7ff61ac3fad5
cmp dword [rbp - 0x68], 4
jne 0x7ff61ac3fad1
call qword [sym.imp.ucrtbase.dll_fclose]
cmp eax, 0xffffffff
jne 0x7ff61ac3fad1
mov eax, dword [rbp - 0x64]
test r14d, r14d
mov ecx, 0x15
mov r13d, r12d
cmovne eax, ecx
mov dword [rbp - 0x64], eax
mov qword [rdi + 0x70], r12
lea rax, [0x7ff61ac40d80]
cmp qword [rbp - 0x30], rax
jne 0x7ff61ac3fafc
mov rdx, qword [rdi + 0x80]
test rdx, rdx
je 0x7ff61ac3fafc
mov rcx, qword [rbp - 0x40]
call qword [rbp - 0x50]
mov qword [rdi + 0x80], r12
mov rcx, qword [rbp - 0x40]
mov rdx, rdi
call qword [rbp - 0x50]
mov dword [rbp - 0x6c], r12d
test r13d, r13d
je 0x7ff61ac3fc06
test r14d, r14d
jne 0x7ff61ac3fc33
jmp 0x7ff61ac3fc23
mov r8d, r14d
xor edi, edi
bts r8d, 0xb
mov qword [rsp + 0x20], rdi
xor r9d, r9d
call fcn.7ff61ac42ed0
test eax, eax
jne 0x7ff61ac3fb4f
test rsi, rsi
je 0x7ff61ac3fc4a
mov eax, dword [rbp - 0x64]
mov dword [rsi], eax
jmp 0x7ff61ac3fc4a
mov r8d, r14d
lea rcx, [rbp - 0x80]
mov rdx, r15
call fcn.7ff61ac49060
test eax, eax
jne 0x7ff61ac3f9bc
test rsi, rsi
je 0x7ff61ac3fb70
mov eax, dword [rbp - 0x64]
mov dword [rsi], eax
mov rbx, qword [rbp - 0x18]
test rbx, rbx
je 0x7ff61ac3fc4a
cmp qword [rbp - 0x58], rdi
je 0x7ff61ac3fc4a
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x7ff61ac3fc4a
cmp dword [rbp - 0x6c], r13d
jne 0x7ff61ac3fc4a
mov rcx, qword [rbp - 0x40]
mov qword [rbp - 0x18], rdi
mov rdx, qword [rbx]
call rax
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
mov rdx, qword [rbx + 0x20]
mov rcx, qword [rbp - 0x40]
call qword [rbp - 0x50]
xorps xmm0, xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov rdx, qword [rbx + 0x40]
mov rcx, qword [rbp - 0x40]
call qword [rbp - 0x50]
xorps xmm0, xmm0
movups xmmword [rbx + 0x40], xmm0
movups xmmword [rbx + 0x50], xmm0
mov rcx, qword [rbx + 0x70]
test rcx, rcx
je 0x7ff61ac3fbfa
cmp dword [rbp - 0x68], 4
jne 0x7ff61ac3fbf6
call qword [sym.imp.ucrtbase.dll_fclose]
mov qword [rbx + 0x70], rdi
mov rcx, qword [rbp - 0x40]
mov rdx, rbx
call qword [rbp - 0x50]
jmp 0x7ff61ac3fc4a
mov ecx, dword [rbp - 0x64]
jmp 0x7ff61ac3fc1b
xor r12d, r12d
test r14d, r14d
je 0x7ff61ac3fc1b
mov ecx, 0x18
mov dword [rbp - 0x64], ecx
test ebx, ebx
mov r14d, r12d
cmove ebx, ecx
cmp dword [rsp + 0x70], 0
je 0x7ff61ac3fc33
mov rcx, r15
call qword [sym.imp.ucrtbase.dll_remove]
test rsi, rsi
je 0x7ff61ac3fc3a
mov dword [rsi], ebx
mov eax, r14d
jmp 0x7ff61ac3fc4c
test rsi, rsi
je 0x7ff61ac3fc4a
mov dword [rsi], 0x18
xor eax, eax
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.7ff61ac57d50
add rsp, 0x158
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret