Function at 0x140067770
Capabilities:
Check if file exists
Set file attributes

Disassembly:
push rbp
push rbx
lea rbp, [rsp - 0x4f]
sub rsp, 0xd8
mov rbx, rcx
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14006798a
lea rax, [rbp + 0x7f]
mov qword [rsp + 0xd0], rdi
xor edi, edi
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x48], edi
lea rcx, [rbp + 0x6f]
mov dword [rsp + 0x40], edi
xor r9d, r9d
mov dword [rsp + 0x38], edi
xor r8d, r8d
mov dword [rsp + 0x30], edi
mov dl, 1
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
mov qword [rbp + 0x7f], rdi
mov qword [rbp - 0x29], rdi
mov dword [rbp + 0x6f], edi
mov word [rbp + 0x73], 0x100
call qword [sym.imp.ADVAPI32.dll_AllocateAndInitializeSid]
test eax, eax
je 0x140067982
lea rax, [rbp - 0x29]
mov dword [rbp + 0x77], edi
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x77]
mov dword [rsp + 0x48], edi
mov r9d, 0x220
mov dword [rsp + 0x40], edi
mov r8d, reloc.WLDAP32.dll_Ordinal_32
mov dword [rsp + 0x38], edi
mov dl, 2
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
mov word [rbp + 0x7b], 0x500
call qword [sym.imp.ADVAPI32.dll_AllocateAndInitializeSid]
test eax, eax
jne 0x140067848
mov rcx, qword [rbp + 0x7f]
call qword [sym.imp.ADVAPI32.dll_FreeSid]
mov rdi, qword [rsp + 0xd0]
add rsp, 0xd8
pop rbx
pop rbp
ret
mov rax, qword [rbp + 0x7f]
lea r9, [rbp - 0x21]
xorps xmm0, xmm0
mov qword [rbp - 0x21], rdi
movups xmmword [rbp + 7], xmm0
mov qword [rbp + 0xf], rax
xor r8d, r8d
mov rax, qword [rbp - 0x29]
lea rdx, [rbp - 0x19]
movups xmmword [rbp - 0x19], xmm0
mov ecx, 2
mov dword [rbp - 0x19], 0x10000000
movups xmmword [rbp + 0x17], xmm0
mov qword [rbp - 0x15], 2
movups xmmword [rbp + 0x37], xmm0
mov qword [rbp + 0x3f], rax
movups xmmword [rbp - 9], xmm0
mov dword [rbp + 3], edi
movups xmmword [rbp + 0x27], xmm0
mov dword [rbp + 7], 2
mov dword [rbp + 0x17], 0x10000000
mov qword [rbp + 0x1b], 2
mov dword [rbp + 0x33], edi
mov dword [rbp + 0x37], 2
call qword [sym.imp.ADVAPI32.dll_SetEntriesInAclW]
test eax, eax
je 0x1400678e9
mov rcx, qword [rbp + 0x7f]
call qword [sym.imp.ADVAPI32.dll_FreeSid]
mov rcx, qword [rbp - 0x29]
call qword [sym.imp.ADVAPI32.dll_FreeSid]
mov rdi, qword [rsp + 0xd0]
add rsp, 0xd8
pop rbx
pop rbp
ret
mov r9, qword [rbp - 0x29]
mov edx, 1
mov qword [rsp + 0x30], rdi
mov r8d, edx
mov qword [rsp + 0x28], rdi
mov rcx, rbx
mov qword [rsp + 0x20], rdi
call qword [sym.imp.ADVAPI32.dll_SetNamedSecurityInfoW]
test eax, eax
jne 0x140067964
mov rax, qword [rbp - 0x21]
xor r9d, r9d
mov qword [rsp + 0x30], rdi
mov edx, 1
mov qword [rsp + 0x28], rax
mov r8d, 4
mov rcx, rbx
mov qword [rsp + 0x20], rdi
call qword [sym.imp.ADVAPI32.dll_SetNamedSecurityInfoW]
test eax, eax
jne 0x140067964
mov edx, 0x80
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov rax, 0xffffffffffffffff
cmp word [rbx + rax*2 + 2], di
lea rax, [rax + 1]
jne 0x140067954
mov word [rbx + rax*2 + 2], di
mov rcx, qword [rbp + 0x7f]
call qword [sym.imp.ADVAPI32.dll_FreeSid]
mov rcx, qword [rbp - 0x29]
call qword [sym.imp.ADVAPI32.dll_FreeSid]
mov rcx, qword [rbp - 0x21]
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rdi, qword [rsp + 0xd0]
add rsp, 0xd8
pop rbx
pop rbp
ret