Function at 0x1400ec680
Capabilities:
Check mutex on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov rdi, r9
mov qword [rsp + 0x20], r8
mov r14, rdx
mov rsi, rcx
mov r15, qword [rsp + 0xe0]
mov rax, qword [0x140516040]
xor rax, rsp
mov qword [rsp + 0x70], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x60], rax
movaps xmm0, xmmword [0x140484a40]
movaps xmmword [rsp + 0x50], xmm0
movsx r8, byte [r15 + 0x1f]
test r8, r8
js 0x1400ec6e0
lea rdx, [r15 + 8]
jmp 0x1400ec6e8
mov rdx, qword [r15 + 8]
mov r8, qword [r15 + 0x10]
add r8, r8
lea r12, [rsp + 0x38]
mov rcx, r12
call fcn.1401ea0e0
lea rbx, [rsp + 0x50]
mov rcx, rbx
mov rdx, rax
call fcn.140102470
lea rdx, str.GlobalChromeSetupMutex_
mov rcx, r12
mov r8, rbx
call fcn.1400ce5b0
cmp byte [r12 + 0x17], 0
jns 0x1400ec727
mov r12, qword [rsp + 0x38]
xor r13d, r13d
xor ecx, ecx
xor edx, edx
mov r8, r12
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
test rax, rax
je 0x1400ec761
mov r12, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
cmp r12, 0xffffffffffffffff
je 0x1400ec87f
call fcn.140212f50
mov r13, r12
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
cmp byte [rsp + 0x4f], 0
jns 0x1400ec772
mov rcx, qword [rsp + 0x38]
call fcn.14029a668
lea rax, [r13 + 1]
cmp rax, 1
ja 0x1400ec7d6
mov qword [rsi], 0
lea rax, [r13 + 1]
cmp rax, 2
jb 0x1400ec79a
call fcn.140212f50
mov rcx, r13
call fcn.1401fded0
cmp byte [rsp + 0x67], 0
jns 0x1400ec7ab
mov rcx, qword [rsp + 0x50]
call fcn.14029a668
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
cmp rcx, qword [0x140516040]
je 0x1400ec7c2
call fcn.14029bbb0
int3
mov rax, rsi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, str.GlobalChromeSetupExitEvent_
lea r12, [rsp + 0x38]
lea r8, [rsp + 0x50]
mov rcx, r12
call fcn.1400ce5b0
cmp byte [r12 + 0x17], 0
jns 0x1400ec7fc
mov r12, qword [rsp + 0x38]
xor ebx, ebx
xor ecx, ecx
mov edx, 1
xor r8d, r8d
mov r9, r12
call qword [sym.imp.KERNEL32.dll_CreateEventW]
test rax, rax
je 0x1400ec83d
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r12d, eax
cmp rbp, 0xffffffffffffffff
je 0x1400eca24
call fcn.140212f50
mov rbx, rbp
mov ecx, r12d
call qword [sym.imp.KERNEL32.dll_SetLastError]
cmp byte [rsp + 0x4f], 0
jns 0x1400ec84e
mov rcx, qword [rsp + 0x38]
call fcn.14029a668
lea rax, [rbx + 1]
cmp rax, 1
ja 0x1400ec887
mov qword [rsi], 0
lea rax, [rbx + 1]
cmp rax, 2
jb 0x1400ec783
call fcn.140212f50
mov rcx, rbx
call fcn.1401fded0
jmp 0x1400ec783
xor r13d, r13d
jmp 0x1400ec759
mov ecx, 0x20
call fcn.14029a62c
mov r12, rax
call fcn.140212f50
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov qword [rsp + 0x30], rbx
call fcn.140212f50
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov qword [rsp + 0x28], 0
call fcn.140212f50
test r13, r13
je 0x1400ec8e0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov qword [rsp + 0x28], r13
call fcn.140212f50
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rdx, [rsp + 0x28]
lea r8, [rsp + 0x30]
mov rcx, r12
call fcn.1400eca80
lea rdx, str.GlobalChromeSetupExitEventMutex_
lea rbp, [rsp + 0x38]
lea r8, [rsp + 0x50]
mov rcx, rbp
call fcn.1400ce5b0
cmp byte [rbp + 0x17], 0
jns 0x1400ec916
mov rbp, qword [rsp + 0x38]
xor r13d, r13d
xor ecx, ecx
xor edx, edx
mov r8, rbp
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
test rax, rax
je 0x1400ec950
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
cmp rbx, 0xffffffffffffffff
je 0x1400eca71
call fcn.140212f50
mov r13, rbx
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
cmp byte [rsp + 0x4f], 0
jns 0x1400ec961
mov rcx, qword [rsp + 0x38]
call fcn.14029a668
lea rax, [r13 + 1]
cmp rax, 1
ja 0x1400ec9c1
mov qword [rsi], 0
test r12, r12
je 0x1400ec9b7
mov rcx, r12
add rcx, 0x10
call fcn.1402059a0
mov rcx, qword [r12 + 8]
cmp rcx, 0xffffffffffffffff
je 0x1400ec994
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov rax, qword [r12]
inc rax
cmp rax, 2
jb 0x1400ec9af
call fcn.140212f50
mov rcx, qword [r12]
call fcn.1401fded0
mov rcx, r12
call fcn.14029a668
xor r13d, r13d
xor ebx, ebx
jmp 0x1400ec85f
mov rcx, r13
mov edx, 0x1388
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, 0xffffff7f
je 0x1400ec9ec
mov qword [rsi], 0
call fcn.140212f50
mov rcx, r13
call fcn.1401fded0
jmp 0x1400ec972
lea rbp, [r12 + 0x10]
mov rcx, rbp
call fcn.140205b90
mov rbx, qword [r12]
mov rcx, rbx
mov edx, 0x1388
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, 0xffffff7f
je 0x1400eca2b
mov qword [rsi], 0
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp 0x1400ec9dd
xor ebx, ebx
jmp 0x1400ec834
mov qword [r12 + 8], rbx
mov rcx, rbp
call fcn.1401fea20
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
call fcn.140212f50
mov rcx, r13
call fcn.1401fded0
mov rcx, rdi
call fcn.140344d60
mov rcx, r15
mov rdx, r14
mov r8, qword [rsp + 0x20]
mov r9, rdi
call fcn.1400ed740
mov qword [rsi], r12
jmp 0x1400ec9b7
xor r13d, r13d
jmp 0x1400ec948