Function at 0x14007c310
Capabilities:
Check mutex on windows
Query or enumerate registry value

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov rax, qword [0x14051d038]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov r14d, 0xffffff02
test r8, r8
je 0x14007c3b8
mov rdi, r8
mov rbx, rdx
mov r15, rcx
cmp byte [r8 + 0x17], 0
js 0x14007c364
xor eax, eax
mov byte [rdi], al
mov byte [rdi + 0x17], al
movzx eax, byte [rbx + 0x17]
test al, al
js 0x14007c374
and eax, 0x7f
jmp 0x14007c378
mov rax, qword [rdi]
mov byte [rax], 0
mov qword [rdi + 8], 0
jmp 0x14007c357
mov rax, qword [rbx + 8]
test rax, rax
je 0x14007c3b8
lea rsi, [r15 + 8]
mov rax, qword [r15 + 8]
lea rcx, [rax + 1]
cmp rcx, 1
ja 0x14007c3a8
lea r8, str.oauc_registry_mutex
xor ecx, ecx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [rsi], rax
test rax, rax
je 0x14007c3df
mov r14d, 0xffffff04
lea rcx, [rax + 1]
cmp rcx, 2
jae 0x14007c408
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.1402ddd70
mov eax, r14d
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
je 0x14007c3ef
mov rax, qword [rsi]
jmp 0x14007c3a8
lea r8, str.oauc_registry_mutex
mov ecx, 0x100000
xor edx, edx
call qword [sym.imp.KERNEL32.dll_OpenMutexW]
mov qword [rsi], rax
jmp 0x14007c3a8
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov r14d, 1
cmp eax, 0x102
je 0x14007c3b8
movabs r13, 0xfffffffc00000000
mov r12, rsi
and r12, r13
cmp r12, qword [0x14051e188]
jne 0x14007c441
mov rcx, rsi
call fcn.140221e30
movabs rbp, 0xaaaaaaaaaaaaaaaa
cmp byte [r15 + 0x28], 0
je 0x14007c5b3
lea r14, [rsp + 0x30]
mov r8d, 0x88
mov rcx, r14
mov dl, 0xaa
call fcn.1402e0d10
add r15, 0x10
mov rcx, r14
mov rdx, r15
call fcn.14007c170
lea r8, [rsp + 0xe8]
mov qword [r8], rbp
mov rcx, qword [r14 + 0x80]
lea rax, [0x140491ecb]
lea rdx, [rsp + 0xd8]
mov qword [rdx], rax
mov qword [rdx + 8], 2
call fcn.14027e390
test al, al
je 0x14007c555
mov rcx, qword [rsp + 0xe8]
cmp byte [rcx + 0x20], 6
jne 0x14007c555
call fcn.14014e4c0
movzx ecx, byte [rbx + 0x17]
test cl, cl
js 0x14007c4d7
and ecx, 0x7f
jmp 0x14007c4de
mov rcx, qword [rbx + 8]
mov rbx, qword [rbx]
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], rcx
test rcx, rcx
js 0x14007c768
test rbx, rbx
jne 0x14007c505
test rcx, rcx
jne 0x14007c794
lea rdx, [rsp + 0xc8]
mov rcx, rax
call fcn.14014ebf0
test rax, rax
je 0x14007c555
mov rbx, rax
movzx eax, byte [rax + 0x17]
test al, al
js 0x14007c625
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0xb8]
call fcn.140261c90
test al, al
je 0x14007c555
mov rcx, rdi
mov rdx, rbx
call fcn.140220550
mov rdi, qword [rsp + 0xb0]
test rdi, rdi
je 0x14007c57e
lea rcx, [rdi + 8]
call fcn.14026cab0
cmp dword [rdi + 8], 0
jne 0x14007c57e
mov rcx, rdi
mov edx, 1
call fcn.140171290
lea rcx, [rsp + 0x30]
call fcn.140151fd0
xor r14d, r14d
test rsi, rsi
je 0x14007c599
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp r12, qword [0x14051e188]
jne 0x14007c3b8
mov rcx, rsi
call fcn.140221f80
jmp 0x14007c3b8
mov qword [rsp + 0xd8], rbp
lea r14, [rsp + 0x30]
mov rcx, r14
call fcn.1400885b0
cmp byte [r14 + 0x17], 0
jns 0x14007c5d4
mov r14, qword [rsp + 0x30]
lea r15, [rsp + 0xd8]
mov qword [rsp + 0x20], r15
mov rcx, 0xffffffff80000001
mov rdx, r14
xor r8d, r8d
mov r9d, 1
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov ebp, eax
cmp byte [rsp + 0x47], 0
jns 0x14007c60d
mov rcx, qword [rsp + 0x30]
call fcn.1402dd16c
test ebp, ebp
je 0x14007c659
lea rdx, [0x14048a168]
mov rcx, rdi
call fcn.140220b70
jmp 0x14007c588
mov rax, qword [rbx]
mov rcx, qword [rbx + 8]
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], rcx
test rcx, rcx
js 0x14007c768
je 0x14007c539
test rax, rax
jne 0x14007c539
jmp 0x14007c794
and r15, r13
cmp r15, qword [0x14051e188]
jne 0x14007c672
lea rcx, [rsp + 0xd8]
call fcn.140221e30
mov dword [rsp + 0x30], 0xaaaaaaaa
cmp byte [rbx + 0x17], 0
mov rdx, rbx
jns 0x14007c686
mov rdx, qword [rbx]
mov rcx, qword [rsp + 0xd8]
lea rbp, [rsp + 0x30]
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], 0
xor r13d, r13d
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x14007c757
mov ecx, dword [rsp + 0x30]
mov r14d, 0
test ecx, ecx
je 0x14007c707
inc ecx
call fcn.1402dd1ac
mov r13, rax
cmp byte [rbx + 0x17], 0
jns 0x14007c6d9
mov rbx, qword [rbx]
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], r13
xor r14d, r14d
mov rdx, rbx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
je 0x14007c75c
mov r14d, 0xffffff04
mov rcx, qword [rsp + 0xd8]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp r15, qword [0x14051e188]
jne 0x14007c72b
lea rcx, [rsp + 0xd8]
call fcn.140221f80
test r13, r13
lea rdx, [0x14048a168]
cmovne rdx, r13
mov rcx, rdi
call fcn.140220b70
test r13, r13
je 0x14007c58b
mov rcx, r13
call fcn.1402dd1b4
jmp 0x14007c58b
xor r14d, r14d
jmp 0x14007c707
mov eax, dword [rsp + 0x30]
mov byte [r13 + rax], 0
jmp 0x14007c707
lea rax, str.string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__len___static_cast_size_type__numeric_limits_difference_type_::max___
mov r8d, 0x13a
call fcn.14032ac00
lea rax, str.string_view::string_view__CharT___size_t_:_received_nullptr
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__len__0____s___nullptr
mov r8d, 0x13c
call fcn.14032ac00
int3