Function at 0x18007c860
Capabilities:
Check mutex on windows

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x90
mov qword [rbp + 7], 0xfffffffffffffffe
mov qword [rsp + 0xc8], rbx
movzx r14d, dl
mov rdi, rcx
mov eax, dword [0x180106840]
xor r15d, r15d
test al, 1
jne 0x18007c8d6
or eax, 1
mov dword [0x180106840], eax
lea r8, str.NewPPDMutex
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x180106838], rax
mov qword [0x180106828], r15
lea rcx, [0x1800a4820]
call fcn.18008b64c
mov eax, dword [0x180106840]
cmp qword [0x180106828], r15
jne 0x18007c92b
test al, 1
jne 0x18007c917
or eax, 1
mov dword [0x180106840], eax
lea r8, str.NewPPDMutex
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x180106838], rax
mov qword [0x180106828], r15
lea rcx, [0x1800a4820]
call fcn.18008b64c
lea rcx, [0x180106820]
call fcn.18007c5c0
test al, al
je 0x18007cc68
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov esi, eax
mov edx, 0x36
lea rcx, str.commandline_1_Call_joinPPD__processID_2_isService_3
call qword [sym.imp.Qt5Core.dll_private:_static_struct_QTypedArrayData_unsigned_short_int_____ptr64___cdecl_QString::fromAscii_helper_char_const____ptr64__int_]
mov qword [rbp - 0x11], rax
mov dl, 0x20
lea rcx, [rbp + 0x77]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QChar::constructor_struct_QLatin1Char____ptr64]
movzx ecx, word [rax]
mov word [rsp + 0x20], cx
xor r9d, r9d
mov r8, rdi
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 0x11]
call qword [sym.imp.Qt5Core.dll_public:_class_QString___cdecl_QString::arg_class_QString_const____ptr64__int__class_QChar____ptr64]
mov rbx, rax
mov dl, 0x20
lea rcx, [rbp + 0x7f]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QChar::constructor_struct_QLatin1Char____ptr64]
movzx ecx, word [rax]
mov word [rsp + 0x28], cx
mov dword [rsp + 0x20], 0xa
xor r9d, r9d
mov r8d, esi
lea rdx, [rbp - 0x21]
mov rcx, rbx
call qword [sym.imp.Qt5Core.dll_public:_class_QString___cdecl_QString::arg_unsigned_long_int__int__int__class_QChar____ptr64]
mov rbx, rax
mov dl, 0x20
lea rcx, [rbp - 0x19]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QChar::constructor_struct_QLatin1Char____ptr64]
movzx r8d, byte [0x180106800]
movzx ecx, word [rax]
mov word [rsp + 0x28], cx
mov dword [rsp + 0x20], 0xa
xor r9d, r9d
lea rdx, [rbp - 9]
mov rcx, rbx
call qword [sym.imp.Qt5Core.dll_public:_class_QString___cdecl_QString::arg_int__int__int__class_QChar____ptr64]
mov rbx, rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0xf]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QMessageLogger::constructor_char_const____ptr64__int__char_const____ptr64____ptr64]
mov rcx, rax
lea rdx, [rbp - 1]
call qword [sym.imp.Qt5Core.dll_public:_class_QDebug___cdecl_QMessageLogger::debug_void____ptr64]
nop
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.Qt5Core.dll_public:_class_QDebug____ptr64___cdecl_QDebug::operator___class_QString_const____ptr64____ptr64]
nop
lea rcx, [rbp - 1]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QDebug::destructor_void____ptr64]
nop
lea rcx, [rbp - 9]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]
nop
lea rcx, [rbp - 0x21]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]
nop
lea rcx, [rbp - 0x29]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]
nop
lea rcx, [rbp - 0x11]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]
mov eax, dword [0x180106840]
test al, 1
jne 0x18007ca7e
or eax, 1
mov dword [0x180106840], eax
lea r8, str.NewPPDMutex
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x180106838], rax
mov qword [0x180106828], r15
lea rcx, [0x1800a4820]
call fcn.18008b64c
lea rax, [0x180106838]
mov qword [rbp + 0x77], rax
or edx, 0xffffffff
mov rcx, qword [0x180106838]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
mov rdx, rdi
lea rcx, [rbp + 0x7f]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::constructor_class_QString_const____ptr64____ptr64]
mov rbx, rax
mov ecx, dword [0x180106840]
test cl, 1
jne 0x18007cae9
or ecx, 1
mov dword [0x180106840], ecx
lea r8, str.NewPPDMutex
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x180106838], rax
mov qword [0x180106828], r15
lea rcx, [0x1800a4820]
call fcn.18008b64c
mov rdx, rbx
lea rcx, [0x180106820]
call fcn.18007cde0
test rax, rax
je 0x18007cb18
mov dword [rax], esi
mov byte [rax + 0x206], 0
mov rcx, qword [0x180106838]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp 0x18007cc68
mov rcx, qword [0x180106838]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov rdx, rdi
lea rcx, [rbp + 0x77]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::constructor_class_QString_const____ptr64____ptr64]
mov rbx, rax
mov edx, dword [0x180106840]
test dl, 1
jne 0x18007cb74
or edx, 1
mov dword [0x180106840], edx
lea r8, str.NewPPDMutex
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x180106838], rax
mov qword [0x180106828], r15
lea rcx, [0x1800a4820]
call fcn.18008b64c
movzx r9d, r14b
mov r8d, esi
mov rdx, rbx
lea rcx, [0x180106820]
call fcn.18007c4f0
mov edx, 0x34
lea rcx, str.Not_find_Node__append__now_g_sharedMemory.count___1
call qword [sym.imp.Qt5Core.dll_private:_static_struct_QTypedArrayData_unsigned_short_int_____ptr64___cdecl_QString::fromAscii_helper_char_const____ptr64__int_]
mov qword [rbp + 0x7f], rax
mov eax, dword [0x180106840]
test al, 1
jne 0x18007cbde
or eax, 1
mov dword [0x180106840], eax
lea r8, str.NewPPDMutex
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x180106838], rax
mov qword [0x180106828], r15
lea rcx, [0x1800a4820]
call fcn.18008b64c
mov rax, qword [0x180106830]
mov ebx, dword [rax]
mov dl, 0x20
lea rcx, [rbp + 0x77]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QChar::constructor_struct_QLatin1Char____ptr64]
movzx eax, word [rax]
mov word [rsp + 0x28], ax
mov dword [rsp + 0x20], 0xa
xor r9d, r9d
mov r8d, ebx
lea rdx, [rbp - 0x21]
lea rcx, [rbp + 0x7f]
call qword [sym.imp.Qt5Core.dll_public:_class_QString___cdecl_QString::arg_int__int__int__class_QChar____ptr64]
mov rbx, rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0xf]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QMessageLogger::constructor_char_const____ptr64__int__char_const____ptr64____ptr64]
mov rcx, rax
lea rdx, [rbp - 0x29]
call qword [sym.imp.Qt5Core.dll_public:_class_QDebug___cdecl_QMessageLogger::debug_void____ptr64]
nop
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.Qt5Core.dll_public:_class_QDebug____ptr64___cdecl_QDebug::operator___class_QString_const____ptr64____ptr64]
nop
lea rcx, [rbp - 0x29]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QDebug::destructor_void____ptr64]
nop
lea rcx, [rbp - 0x21]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]
nop
lea rcx, [rbp + 0x7f]
call qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]
nop
mov rcx, rdi
mov rbx, qword [rsp + 0xc8]
add rsp, 0x90
pop r15
pop r14
pop rdi
pop rsi
pop rbp
jmp qword [sym.imp.Qt5Core.dll_public:_void___cdecl_QString::destructor_void____ptr64]