Function at 0x180011580
Capabilities:
Check mutex on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xc0]
sub rsp, 0x1c0
mov rax, qword [0x180054040]
xor rax, rsp
mov qword [rbp + 0xb0], rax
mov rdi, rcx
xor r15d, r15d
mov rcx, qword [0x1800560b8]
test rcx, rcx
je 0x1800115d5
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea r9, [rdi + 0x80]
mov rcx, qword [r9 + 0x10]
movabs rbx, 0x7fffffffffffffff
mov rax, rbx
sub rax, rcx
cmp rax, 0xe
jb 0x180011c4d
cmp qword [r9 + 0x18], 0xf
jbe 0x180011604
mov r9, qword [r9]
mov qword [rsp + 0x30], 0xe
lea rax, str.PTxWDMCtrl.exe
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x40]
call fcn.180006060
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], r15
lea r14, [rbp - 0x40]
cmp qword [rbp - 0x28], 0xf
cmova r14, qword [rbp - 0x40]
mov rsi, qword [rbp - 0x30]
cmp rsi, rbx
ja 0x180011c53
cmp rsi, 0xf
ja 0x180011677
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], 0xf
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x40], xmm0
jmp 0x18001170b
mov rax, rsi
or rax, 0xf
cmp rax, rbx
jbe 0x1800116b3
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.180016054
mov rcx, rax
test rax, rax
je 0x180011c59
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800116ed
mov ecx, 0x16
cmp rax, rcx
cmovb rax, rcx
mov rbx, rax
lea rcx, [rax + 1]
test rcx, rcx
jne 0x1800116d0
mov rax, r15
jmp 0x1800116ed
cmp rcx, 0x1000
jb 0x1800116e8
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180011c47
jmp 0x180011691
call fcn.180016054
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rbx
lea r8, [rsi + 1]
mov rdx, r14
mov rcx, rax
call fcn.1800410f0
lea rcx, [rsp + 0x40]
call fcn.180001e10
lea rax, [rbp - 0x40]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x48], rax
call sub.EarthPtDll64.dll_PtDllGetDevCount
mov r13d, eax
add r13d, r13d
je 0x180011b12
mov r9d, dword [rdi + 0xe0]
cmp r13d, r9d
jle 0x180011b12
mov rsi, 0xffffffffffffffff
test r9d, r9d
js 0x18001192e
movzx eax, byte [rdi + 0xe8]
neg al
sbb r8d, r8d
add r8d, 0x54
lea rdx, str.BonDriver_PTxWDM__c_d
lea rcx, [rbp - 0x20]
call fcn.180013c90
lea r8, [rbp - 0x20]
xor edx, edx
mov ecx, 0x1f0001
call qword [sym.imp.KERNEL32.dll_OpenMutexW]
test rax, rax
je 0x1800117a6
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [rdi + 0x40], 0
je 0x180011b12
jmp 0x18001192e
mov ecx, 0xc0
call fcn.180016054
mov rbx, rax
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x78], r15
lea rax, [rbp - 0x20]
mov r8, rsi
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x1800117d0
lea rdx, [rbp - 0x20]
lea rcx, [rsp + 0x70]
call fcn.180005590
xor r8d, r8d
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.180007120
mov rbx, rax
lea rcx, [rsp + 0x40]
call fcn.180011c60
mov qword [rdi + 0x190], rax
test rax, rax
jne 0x180011870
mov ecx, 0x100
call fcn.180016054
mov r14, rax
mov qword [rsp + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], r15
lea rax, [rbp - 0x20]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x180011840
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x68]
call fcn.180005590
lea rdx, [rbp - 0x68]
mov rcx, r14
call fcn.180007ff0
nop
mov rdx, rax
mov rcx, rbx
call fcn.180007b60
movzx edx, byte [rdi + 0xe8]
mov r8d, dword [rdi + 0xe0]
mov rcx, rbx
call fcn.180007540
test eax, eax
jne 0x1800118ab
test rbx, rbx
je 0x18001189c
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
cmp dword [rdi + 0x40], 0
je 0x180011b12
jmp 0x18001192e
mov qword [rdi + 0x1e0], rbx
mov eax, dword [rdi + 0xe0]
mov dword [rdi + 0xe4], eax
lea rcx, [rdi + 0xc0]
lea rax, [rbp - 0x20]
mov rdx, rsi
nop dword [rax]
inc rdx
cmp word [rax + rdx*2], 0
jne 0x1800118d0
mov rax, qword [rcx + 0x18]
cmp rdx, rax
ja 0x18001190d
mov r14, rcx
cmp rax, 7
jbe 0x1800118ef
mov r14, qword [rcx]
mov qword [rcx + 0x10], rdx
lea rbx, [rdx + rdx]
mov r8, rbx
lea rdx, [rbp - 0x20]
mov rcx, r14
call fcn.1800410f0
mov word [r14 + rbx], r15w
jmp 0x180011916
lea r9, [rbp - 0x20]
call fcn.180005890
lea r8, [rbp - 0x20]
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [rdi + 0x188], rax
cmp qword [rdi + 0x1e0], 0
jne 0x180011b12
mov r14d, r15d
test r13d, r13d
jle 0x180011b12
nop dword [rax + rax]
movzx eax, byte [rdi + 0xe8]
neg al
sbb r8d, r8d
add r8d, 0x54
mov r9d, r14d
lea rdx, str.BonDriver_PTxWDM__c_d
lea rcx, [rbp - 0x20]
call fcn.180013c90
lea r8, [rbp - 0x20]
xor edx, edx
mov ecx, 0x1f0001
call qword [sym.imp.KERNEL32.dll_OpenMutexW]
test rax, rax
je 0x180011997
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x180011a8a
mov ecx, 0xc0
call fcn.180016054
mov rbx, rax
mov qword [rsp + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], r15
lea rax, [rbp - 0x20]
mov r8, rsi
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x1800119c0
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x68]
call fcn.180005590
xor r8d, r8d
lea rdx, [rbp - 0x68]
mov rcx, rbx
call fcn.180007120
mov rbx, rax
lea rcx, [rsp + 0x40]
call fcn.180011c60
mov qword [rdi + 0x190], rax
test rax, rax
jne 0x180011a62
mov ecx, 0x100
call fcn.180016054
mov r12, rax
mov qword [rbp - 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x78], r15
lea rax, [rbp - 0x20]
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x180011a30
lea rdx, [rbp - 0x20]
lea rcx, [rsp + 0x70]
call fcn.180005590
lea rdx, [rsp + 0x70]
mov rcx, r12
call fcn.180007ff0
nop
mov rdx, rax
mov rcx, rbx
call fcn.180007b60
movzx edx, byte [rdi + 0xe8]
mov r8d, r14d
mov rcx, rbx
call fcn.180007540
test eax, eax
jne 0x180011a98
test rbx, rbx
je 0x180011a8a
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
inc r14d
cmp r14d, r13d
jl 0x180011950
jmp 0x180011b12
mov qword [rdi + 0x1e0], rbx
mov dword [rdi + 0xe4], r14d
lea rcx, [rdi + 0xc0]
lea rax, [rbp - 0x20]
inc rsi
cmp word [rax + rsi*2], 0
jne 0x180011ab1
mov rax, qword [rcx + 0x18]
cmp rsi, rax
ja 0x180011aee
mov r14, rcx
cmp rax, 7
jbe 0x180011ad0
mov r14, qword [rcx]
mov qword [rcx + 0x10], rsi
lea rbx, [rsi + rsi]
mov r8, rbx
lea rdx, [rbp - 0x20]
mov rcx, r14
call fcn.1800410f0
mov word [r14 + rbx], r15w
jmp 0x180011afa
lea r9, [rbp - 0x20]
mov rdx, rsi
call fcn.180005890
lea r8, [rbp - 0x20]
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [rdi + 0x188], rax
mov rcx, qword [rdi + 0x1e0]
test rcx, rcx
je 0x180011bb9
mov dword [rsp + 0x40], 0x20
mov eax, dword [rdi + 0x48]
mov dword [rsp + 0x44], eax
mov eax, dword [rdi + 0x70]
mov dword [rsp + 0x48], eax
mov eax, dword [rdi + 0x4c]
mov dword [rsp + 0x4c], eax
mov eax, dword [rdi + 0x50]
mov dword [rsp + 0x50], eax
mov eax, dword [rdi + 0x54]
mov dword [rsp + 0x54], eax
mov eax, dword [rdi + 0x58]
mov dword [rsp + 0x58], eax
mov eax, dword [rdi + 0x2c]
mov dword [rsp + 0x5c], eax
mov dword [rbp - 0x64], 0xf
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x50], xmm1
mov r9d, 0x7530
lea r8, [rbp - 0x68]
lea rdx, [rbp - 0x68]
call fcn.180007440
test eax, eax
je 0x180011b91
cmp dword [rbp - 0x64], 0
jne 0x180011bb9
mov ecx, 0x30
call qword [sym.imp.USER32.dll_MessageBeep]
mov rcx, qword [rdi + 0x1e0]
test rcx, rcx
je 0x180011bb2
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rdi + 0x1e0], r15
mov rcx, qword [0x1800560b8]
test rcx, rcx
je 0x180011bcb
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp qword [rdi + 0x1e0], 0
setne r15b
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x180011c0e
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180011c09
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180011c41
call fcn.180016020
mov eax, r15d
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.180016000
lea r11, [rsp + 0x1c0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.180020d70
nop
call fcn.180001360
nop
call fcn.180001400
nop
call fcn.180001400
int3
call fcn.180020d70
int3