Function at 0x1400978e0
Capabilities:
Check mutex on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x4e0]
sub rsp, 0x5e0
mov rax, qword [0x140278eb8]
xor rax, rsp
mov qword [rbp + 0x4d0], rax
mov rbx, rcx
lea rdx, [rbp + 0x330]
xor edi, edi
add rcx, 0x50
mov dword [rsp + 0x30], edi
call fcn.140010490
mov rsi, rax
cmp qword [rax + 0x18], 0x10
jb 0x140097932
mov rsi, qword [rax]
mov r14, qword [rax + 0x10]
mov qword [rsp + 0x30], 0xffffffffffffffff
test r14, r14
je 0x1400979db
xorps xmm0, xmm0
lea rcx, [rbp + 0x42d]
xor eax, eax
xor edx, edx
mov r8d, 0xa3
mov qword [rbp + 0x420], rax
movups xmmword [rbp + 0x3d0], xmm0
mov dword [rbp + 0x428], eax
movups xmmword [rbp + 0x3e0], xmm0
movups xmmword [rbp + 0x3f0], xmm0
movups xmmword [rbp + 0x400], xmm0
movups xmmword [rbp + 0x410], xmm0
call fcn.140187880
lea rax, [r14 - 1]
mov byte [rbp + 0x42c], 1
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovb rcx, rax
add rcx, rsi
movzx eax, byte [rcx]
cmp byte [rbp + rax + 0x3d0], dil
jne 0x1400979d6
nop word [rax + rax]
cmp rcx, rsi
je 0x1400979db
movzx eax, byte [rcx - 1]
dec rcx
cmp byte [rbp + rax + 0x3d0], dil
je 0x1400979c0
sub rcx, rsi
jmp 0x1400979e2
mov rcx, 0xffffffffffffffff
mov rdx, qword [rbp + 0x348]
lea r14, [rcx + 1]
cmp rdx, 0x10
jb 0x140097a27
mov rcx, qword [rbp + 0x330]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140097a22
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140098168
call fcn.1401574cc
lea rdx, [rbp + 0x350]
lea rcx, [rbx + 0x50]
call fcn.140010490
mov rdx, qword [rbp + 0x368]
mov rsi, qword [rax + 0x10]
cmp rdx, 0x10
jb 0x140097a7c
mov rcx, qword [rbp + 0x350]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140097a77
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009816e
call fcn.1401574cc
lea rdx, [rbp + 0x370]
lea rcx, [rbx + 0x50]
call fcn.140010490
movdqa xmm0, xmmword [0x14020a090]
mov rcx, rax
movdqu xmmword [rbp + 0x2e0], xmm0
mov byte [rbp + 0x2d0], dil
cmp qword [rax + 0x10], r14
jb 0x140098174
lfence
mov rax, qword [rax + 0x10]
sub rax, r14
cmp rax, rsi
mov qword [rsp + 0x40], rax
cmovb rsi, rax
cmp qword [rcx + 0x18], 0x10
jb 0x140097ad0
mov rcx, qword [rcx]
lea rdx, [rcx + r14]
mov qword [rsp + 0x618], r12
lea rcx, [rbp + 0x2d0]
mov r8, rsi
call fcn.140013b20
mov r8, qword [rbp + 0x2e0]
mov rax, qword [rbp + 0x2e8]
sub rax, r8
lfence
mov r12d, 0xa
lea r15, str.NvCrimson.
cmp rax, r12
jb 0x140097b99
add qword [rbp + 0x2e0], r12
lea rsi, [rbp + 0x2d0]
cmp qword [rbp + 0x2e8], 0x10
lea rax, [0x14020ff2a]
cmovae rsi, qword [rbp + 0x2d0]
cmp rax, rsi
jbe 0x140097b5a
lea rax, [rsi + r8]
cmp r15, rax
ja 0x140097b5a
cmp rsi, r15
ja 0x140097b52
mov r14, rdi
jmp 0x140097b5d
mov r14, rsi
sub r14, r15
jmp 0x140097b5d
mov r14, r12
inc r8
lea rcx, [rsi + 0xa]
mov rdx, rsi
call fcn.140187470
mov r8, r14
mov rdx, r15
mov rcx, rsi
call fcn.140187470
sub r12, r14
lea rdx, [r15 + 0xa]
add rdx, r14
lea rcx, [rsi + r14]
mov r8, r12
call fcn.140187470
lea rax, [rbp + 0x2d0]
jmp 0x140097bb8
mov qword [rsp + 0x28], r12
lea rcx, [rbp + 0x2d0]
xor r9d, r9d
mov qword [rsp + 0x20], r15
xor r8d, r8d
mov rdx, r12
call fcn.1400041d0
movups xmm0, xmmword [rax]
mov r12, qword [rsp + 0x618]
movups xmmword [rbp + 0x310], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x320], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
cmp qword [rbp + 0x320], rdi
jne 0x140097c01
cmp qword [rbx + 0x40], rdi
je 0x140097c51
lfence
mov rcx, qword [rbx + 0x40]
call sub.libcef.dll_cef_string_utf16_clear
jmp 0x140097c51
lfence
mov r8, qword [rbx + 0x40]
test r8, r8
jne 0x140097c2e
lea ecx, [r8 + 0x18]
call fcn.140157490
mov qword [rbx + 0x40], rax
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rcx
mov r8, qword [rbx + 0x40]
mov byte [rbx + 0x48], 1
cmp qword [rbp + 0x328], 0x10
lea rcx, [rbp + 0x310]
mov rdx, qword [rbp + 0x320]
cmovae rcx, qword [rbp + 0x310]
call sub.libcef.dll_cef_string_utf8_to_utf16
mov rdx, qword [rbp + 0x328]
cmp rdx, 0x10
jb 0x140097c92
mov rcx, qword [rbp + 0x310]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140097c8d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009817a
call fcn.1401574cc
mov rdx, qword [rbp + 0x2e8]
movdqa xmm0, xmmword [0x14020a090]
mov byte [rbp + 0x310], dil
movdqu xmmword [rbp + 0x320], xmm0
cmp rdx, 0x10
jb 0x140097cea
mov rcx, qword [rbp + 0x2d0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140097ce5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009817a
call fcn.1401574cc
mov rdx, qword [rbp + 0x388]
movdqa xmm0, xmmword [0x14020a090]
mov byte [rbp + 0x2d0], dil
movdqu xmmword [rbp + 0x2e0], xmm0
cmp rdx, 0x10
jb 0x140097d42
mov rcx, qword [rbp + 0x370]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140097d3d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009817a
call fcn.1401574cc
cmp qword [rbx + 0x40], rdi
je 0x140097d9f
lfence
mov rax, qword [rbx + 0x40]
cmp qword [rax + 8], rdi
je 0x140097d9f
lfence
mov rax, qword [rbx + 0x40]
lea rcx, [rbp + 0x2f0]
movdqa xmm0, xmmword [0x14020c430]
mov r8, qword [rax + 8]
mov rdx, qword [rax]
movdqu xmmword [rbp + 0x300], xmm0
mov word [rbp + 0x2f0], di
call fcn.1400258a0
cmp qword [rbp + 0x308], 8
lea r8, [rbp + 0x2f0]
cmovae r8, qword [rbp + 0x2f0]
jmp 0x140097dbd
movdqa xmm0, xmmword [0x14020c430]
lea r8, [rbp + 0x2f0]
movdqu xmmword [rbp + 0x300], xmm0
mov word [rbp + 0x2f0], di
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov rdx, qword [rbp + 0x308]
mov qword [rbx + 8], rax
cmp rdx, 8
jb 0x140097e11
mov rcx, qword [rbp + 0x2f0]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140097e0c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140098180
call fcn.1401574cc
cmp qword [rbx + 8], rdi
jne 0x140097ff4
call sub.libcef.dll_cef_get_min_log_level
cmp eax, 1
jg 0x140097f8e
lfence
lea rcx, [rbx + 0x38]
lea rdx, [rbp + 0x3b0]
call fcn.140010490
mov rsi, rax
cmp qword [rax + 0x18], 0x10
jb 0x140097e4c
lfence
mov rsi, qword [rax]
mov r9d, 1
lea rdx, str.C:uworkspace03_25_1cefwinauto_srcjson_storage_win.cc
lea rcx, [rbp - 0x30]
lea r8d, [r9 + 0x1a]
call fcn.1400c6a90
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rbx + 8]
mov r15d, eax
lea rdx, str.Lock_mutex
call fcn.1400025c0
mov rcx, rax
mov rdx, rsi
call fcn.1400025c0
mov rcx, rax
lea rdx, str._error:
call fcn.1400025c0
mov rdx, rax
lea rcx, [rsp + 0x50]
mov rsi, rax
call fcn.140006e10
cmp byte [rsp + 0x58], dil
je 0x140097f54
lfence
mov rcx, qword [rsi]
movsxd rdx, dword [rcx + 4]
mov rcx, qword [rdx + rsi + 0x40]
mov rbx, qword [rcx + 8]
mov rcx, rbx
mov qword [rsp + 0x78], rbx
mov rax, qword [rbx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [rsp + 0x70]
call fcn.140004bf0
mov r14, rax
test rbx, rbx
je 0x140097f06
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x10]
test rax, rax
je 0x140097f06
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
mov rax, qword [rsi]
lea r8, [rbp - 0x80]
mov r10, qword [r14]
lea rdx, [rbp - 0x70]
mov byte [rsp + 0x40], dil
mov rcx, r14
mov dword [rsp + 0x28], r15d
movsxd r9, dword [rax + 4]
add r9, rsi
mov rax, qword [r9 + 0x48]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movzx eax, byte [r9 + 0x58]
movdqa xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x20], al
call qword [r10 + 0x40]
cmp byte [rbp - 0x70], dil
mov eax, 4
cmovne edi, eax
mov rax, qword [rsi]
movsxd rcx, dword [rax + 4]
add rcx, rsi
or edi, dword [rcx + 0x10]
mov edx, dword [rcx + 0x14]
mov eax, edi
or eax, 4
cmp qword [rcx + 0x48], 0
cmovne eax, edi
and eax, 0x17
mov dword [rcx + 0x10], eax
and edx, eax
jne 0x140098186
lea rcx, [rsp + 0x50]
call fcn.1400086e0
mov edi, 3
test dil, 2
je 0x140097fa0
and edi, 0xfffffffd
lea rcx, [rbp - 0x30]
call fcn.1400c6df0
test dil, 1
je 0x14009813c
mov rdx, qword [rbp + 0x3c8]
cmp rdx, 0x10
jb 0x14009813c
mov rcx, qword [rbp + 0x3b0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140097fea
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400981cf
call fcn.1401574cc
jmp 0x14009813c
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x14009812a
call sub.libcef.dll_cef_get_min_log_level
test eax, eax
jg 0x140098068
lfence
lea rcx, [rbx + 0x38]
lea rdx, [rbp + 0x390]
call fcn.140010490
mov rdi, rax
cmp qword [rax + 0x18], 0x10
jb 0x14009802e
mov rdi, qword [rax]
xor r9d, r9d
lea rdx, str.C:uworkspace03_25_1cefwinauto_srcjson_storage_win.cc
lea rcx, [rbp + 0xd0]
lea r8d, [r9 + 0x21]
call fcn.1400c6a90
lea rdx, str.Lock_opened_an_existing_mutex_so_waiting_on
lea rcx, [rax + 8]
call fcn.1400025c0
mov rcx, rax
mov rdx, rdi
call fcn.1400025c0
mov edi, reloc.SHLWAPI.dll_SHCreateMemStream
test dil, 8
je 0x14009807d
and edi, 0xfffffff7
lea rcx, [rbp + 0xd0]
call fcn.1400c6df0
test dil, 4
je 0x1400980ce
mov rdx, qword [rbp + 0x3a8]
and edi, 0xfffffffb
cmp rdx, 0x10
jb 0x1400980c7
mov rcx, qword [rbp + 0x390]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400980c2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140098162
call fcn.1401574cc
mov byte [rbp + 0x390], 0
lfence
mov rcx, qword [rbx + 8]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call sub.libcef.dll_cef_get_min_log_level
test eax, eax
jg 0x140098116
xor r9d, r9d
lea rdx, str.C:uworkspace03_25_1cefwinauto_srcjson_storage_win.cc
lea rcx, [rbp + 0x1d0]
or edi, 0x10
lea r8d, [r9 + 0x23]
call fcn.1400c6a90
lea rdx, str.Lock_mutex_aquired
lea rcx, [rax + 8]
call fcn.1400025c0
test dil, 0x10
je 0x14009813c
lea rcx, [rbp + 0x1d0]
call fcn.1400c6df0
jmp 0x14009813c
lfence
mov rcx, qword [rbx + 8]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp + 0x4d0]
xor rcx, rsp
call fcn.140157570
mov rbx, qword [rsp + 0x620]
add rsp, 0x5e0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.14019598c
int3
call fcn.14019598c
int3
call fcn.14019598c
int3
call fcn.140013630
int3
call fcn.14019598c
int3
call fcn.14019598c
int3
test dl, 4
je 0x140098194
lea rbx, str.ios_base::badbit_set
jmp 0x1400981a9
test dl, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rbp - 0x60]
call fcn.140015b80
mov r8, rax
lea rcx, [rbp - 0x50]
mov rdx, rbx
call fcn.140006cc0
mov rcx, rax
call fcn.140012fe0
int3
call fcn.14019598c
int3