Function at 0x140111300
Capabilities:
Check mutex on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 8]
sub rsp, 0x108
mov qword [rbp - 0x10], 0xfffffffffffffffe
call fcn.140111610
mov rbx, rax
test rax, rax
jne 0x140111352
test byte [0x1402d741c], 4
je 0x1401115ee
lea r8, str.No_destination_file_name_specified_in_registry_n
lea edx, [rax + 3]
lea rcx, str.SaveUserRegValues
call fcn.14011a490
jmp 0x1401115ee
lea rdx, [0x14019f050]
mov rcx, rax
call fcn.1401275f0
mov r14, rax
test rax, rax
jne 0x140111394
test byte [0x1402d741c], 4
je 0x1401115ee
mov r9, rbx
lea r8, str.Cant_open_file_for_writting___s_n
lea edx, [rax + 3]
lea rcx, str.SaveUserRegValues
call fcn.14011a490
jmp 0x1401115ee
lea rsi, [0x1402d7168]
mov rax, qword [0x1402d7160]
or r15, 0xffffffffffffffff
mov rdi, r15
nop dword [rax]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x1401113b0
add rdi, 3
xor ebx, ebx
mov rax, qword [0x1402dfb48]
test rax, rax
jne 0x14011152a
lea rax, [rsp + 0x50]
mov qword [rbp + 0x40], rax
lea rax, [rsp + 0x70]
mov qword [rbp + 0x48], rax
lea rax, [rsp + 0x30]
mov qword [rbp + 0x50], rax
lea rax, [rbp - 0x50]
mov qword [rbp + 0x58], rax
mov qword [rsp + 0x68], 7
mov qword [rsp + 0x60], rbx
mov word [rsp + 0x50], bx
xor r8d, r8d
lea rdx, [0x140165848]
lea rcx, [rsp + 0x50]
call fcn.14000d340
nop
mov qword [rbp - 0x78], 7
mov qword [rbp - 0x80], rbx
mov word [rsp + 0x70], bx
xor r8d, r8d
lea rdx, [0x140165848]
lea rcx, [rsp + 0x70]
call fcn.14000d340
nop
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], rbx
mov word [rsp + 0x30], bx
xor r8d, r8d
lea rdx, [0x140165848]
lea rcx, [rsp + 0x30]
call fcn.14000d340
nop
mov qword [rbp - 0x38], 7
mov qword [rbp - 0x40], rbx
mov word [rbp - 0x50], bx
xor r8d, r8d
lea rdx, [0x140165848]
lea rcx, [rbp - 0x50]
call fcn.14000d340
nop
mov qword [rbp - 0x18], 7
mov qword [rbp - 0x20], rbx
mov word [rbp - 0x30], bx
lea r8d, [rbx + 0x18]
lea rdx, str.SynSaveUserRegistryMutex
lea rcx, [rbp - 0x30]
call fcn.14000d340
nop
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x70]
call fcn.140116d90
cmp qword [rax + 0x18], 8
jb 0x1401114e6
mov rax, qword [rax]
mov r8, rax
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x1402dfb48], rax
cmp qword [rbp - 0x58], 8
jb 0x140111511
mov rcx, qword [rbp - 0x70]
call fcn.14011f898
mov rax, qword [0x1402dfb48]
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], rbx
mov word [rbp - 0x70], bx
test rax, rax
je 0x1401115e6
mov edx, 0x2710
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x1401115c5
mov rax, qword [0x1402d7168]
test rax, rax
je 0x1401115b6
nop dword [rax]
mov rcx, r15
inc rcx
cmp word [rax + rcx*2], 0
jne 0x140111553
add rcx, rdi
mov eax, 2
mul rcx
cmovo rax, r15
mov rcx, rax
call fcn.14011e9a4
mov rbx, rax
mov r9, qword [rsi]
mov r8, qword [0x1402d7160]
lea rdx, [0x140174810]
mov rcx, rax
call fcn.14012161c
mov r8, rbx
mov rdx, 0xffffffff80000001
mov rcx, r14
call fcn.1401123a0
mov rcx, rbx
call fcn.140120c5c
add rsi, 8
mov rax, qword [rsi]
test rax, rax
jne 0x140111550
mov rcx, qword [0x1402dfb48]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp 0x1401115e6
mov rcx, qword [0x1402dfb48]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov rcx, qword [0x1402dfb48]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x1402dfb48], rbx
mov rcx, r14
call fcn.140121868
add rsp, 0x108
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret