Function at 0x1400f68e0
Capabilities:
Compare security identifiers

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor r13d, r13d
mov r14, r8
mov edi, r13d
mov r15, rdx
mov rsi, rcx
mov rcx, qword [0x1401720a0]
lea r12, [0x1401720a0]
lea ebx, [r13 + 1]
cmp rcx, r12
je 0x1400f693f
test byte [rcx + 0x1c], bl
je 0x1400f693f
cmp byte [rcx + 0x19], 5
jb 0x1400f693f
mov rcx, qword [rcx + 0x10]
lea edx, [rbx + 0x10]
lea r8, [0x140157df0]
call fcn.140004b74
mov rcx, qword [0x1401720a0]
or rbp, 0xffffffffffffffff
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x88], r13
cmp rcx, r12
je 0x1400f6980
test byte [rcx + 0x1c], bl
je 0x1400f6980
cmp byte [rcx + 0x19], 5
jb 0x1400f6980
mov rcx, qword [rcx + 0x10]
lea edx, [rbp + 0x13]
mov r9, rsi
lea r8, [0x140157df0]
call fcn.140005afc
mov rcx, qword [0x1401720a0]
test r15, r15
jne 0x1400f69cb
test r14, r14
jne 0x1400f69cb
mov edi, 0x80070057
cmp rcx, r12
je 0x1400f6c88
test byte [rcx + 0x1c], bl
je 0x1400f6c88
cmp byte [rcx + 0x19], 2
jb 0x1400f6c88
mov rcx, qword [rcx + 0x10]
lea edx, [r15 + 0x13]
lea r8, [0x140157df0]
call fcn.140004b74
mov rcx, qword [0x1401720a0]
jmp 0x1400f6c88
mov eax, 3
mov qword [rsp + 0x30], r13
mov r8d, eax
mov dword [rsp + 0x28], 0x2200000
xor r9d, r9d
mov dword [rsp + 0x20], eax
mov edx, 0x60000
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbp, rax
cmp rax, 0xffffffffffffffff
jne 0x1400f6a54
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x1401720a0]
cmp rcx, r12
je 0x1400f6c88
test byte [rcx + 0x1c], bl
je 0x1400f6c88
cmp byte [rcx + 0x19], 2
jb 0x1400f6c88
lea edx, [rbp + 0x15]
mov rcx, qword [rcx + 0x10]
lea r8, [0x140157df0]
mov r9, rsi
mov dword [rsp + 0x20], edi
call fcn.140005b60
jmp 0x1400f69bf
test r14, r14
je 0x1400f6ad3
mov qword [rsp + 0x30], r13
xor r9d, r9d
mov qword [rsp + 0x28], r14
mov r8d, 0x80000004
mov edx, ebx
mov qword [rsp + 0x20], r13
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_SetSecurityInfo]
test eax, eax
je 0x1400f6ad3
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x1401720a0]
cmp rcx, r12
je 0x1400f6c88
test byte [rcx + 0x1c], bl
je 0x1400f6c88
cmp byte [rcx + 0x19], 2
jb 0x1400f6c88
mov rcx, qword [rcx + 0x10]
mov edx, 0x15
mov dword [rsp + 0x28], edi
mov r9d, 0x80000004
mov qword [rsp + 0x20], rsi
call fcn.1400f6578
jmp 0x1400f69bf
test r15, r15
je 0x1400f6d09
lea rax, [rsp + 0x88]
mov r8d, ebx
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x98]
mov qword [rsp + 0x30], r13
mov edx, ebx
mov qword [rsp + 0x28], r13
mov rcx, rbp
mov qword [rsp + 0x20], r13
call qword [sym.imp.ADVAPI32.dll_GetSecurityInfo]
test eax, eax
je 0x1400f6b53
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x1401720a0]
cmp rcx, r12
je 0x1400f6c88
test byte [rcx + 0x1c], bl
je 0x1400f6c88
cmp byte [rcx + 0x19], 2
jb 0x1400f6c88
mov edx, 0x16
jmp 0x1400f6a38
mov rcx, qword [rsp + 0x98]
mov rdx, r15
call qword [sym.imp.ADVAPI32.dll_EqualSid]
test eax, eax
jne 0x1400f6d09
mov r12d, ebx
mov eax, 0x80000005
test r14, r14
mov ebx, 0xa0000
mov rcx, rbp
cmovne r12d, eax
mov eax, 0xe0000
cmovne ebx, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r8d, 3
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x2200000
xor r9d, r9d
mov edx, ebx
mov dword [rsp + 0x20], r8d
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbp, rax
cmp rax, 0xffffffffffffffff
jne 0x1400f6c09
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x1401720a0]
lea r12, [0x1401720a0]
lea ebx, [rbp + 2]
cmp rcx, r12
je 0x1400f6c88
test byte [rcx + 0x1c], bl
je 0x1400f6c88
cmp byte [rcx + 0x19], 2
jb 0x1400f6c88
lea edx, [rbp + 0x18]
jmp 0x1400f6a38
mov qword [rsp + 0x30], r13
mov ebx, 1
mov edx, ebx
mov qword [rsp + 0x28], r14
mov r9, r15
mov qword [rsp + 0x20], r13
mov r8d, r12d
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_SetSecurityInfo]
test eax, eax
je 0x1400f6d02
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov rcx, qword [0x1401720a0]
lea rax, [0x1401720a0]
cmp rcx, rax
je 0x1400f6c81
test byte [rcx + 0x1c], bl
je 0x1400f6c81
cmp byte [rcx + 0x19], 2
jb 0x1400f6c81
mov rcx, qword [rcx + 0x10]
lea edx, [rbx + 0x17]
mov dword [rsp + 0x28], edi
mov r9d, r12d
mov qword [rsp + 0x20], rsi
call fcn.1400f6578
mov rcx, qword [0x1401720a0]
lea r12, [0x1401720a0]
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x1400f6cad
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [0x1401720a0]
mov qword [rsp + 0x88], r13
cmp rbp, 0xffffffffffffffff
je 0x1400f6cc3
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [0x1401720a0]
cmp rcx, r12
je 0x1400f6ce8
test byte [rcx + 0x1c], bl
je 0x1400f6ce8
cmp byte [rcx + 0x19], 5
jb 0x1400f6ce8
mov rcx, qword [rcx + 0x10]
lea r8, [0x140157df0]
mov edx, 0x1a
call fcn.140004b74
mov eax, edi
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea r12, [0x1401720a0]
mov rcx, qword [0x1401720a0]
cmp rcx, r12
je 0x1400f6c88
test byte [rcx + 0x1c], bl
je 0x1400f6c88
cmp byte [rcx + 0x19], 5
jb 0x1400f6c88
mov rcx, qword [rcx + 0x10]
lea r8, [0x140157df0]
mov edx, 0x19
mov r9, rsi
call fcn.140005afc
jmp 0x1400f69bf