Function at 0x180012140
Capabilities:
Check mutex on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xb0
mov rax, qword [0x180054040]
xor rax, rsp
mov qword [rbp + 0x4f], rax
mov edi, edx
mov rbx, rcx
cmp qword [rcx + 0x1e0], 0
je 0x1800123b1
cmp dword [rcx + 0xe4], 0
jl 0x1800123b1
mov rcx, qword [0x1800560b8]
test rcx, rcx
je 0x18001219c
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
movups xmm0, xmmword [str.BonDriver_PTxWDM_LNB_Power__d]
movups xmmword [rbp + 0x2f], xmm0
movsd xmm0, qword [0x18004dac0]
movsd qword [rbp + 0x3f], xmm0
mov eax, dword [0x18004dac8]
mov dword [rbp + 0x47], eax
movzx eax, word [0x18004dacc]
mov word [rbp + 0x4b], ax
mov r8d, dword [rbx + 0xe4]
lea rdx, [rbp + 0x2f]
lea rcx, [rbp - 0x19]
call fcn.180001b80
nop
mov r8d, dword [rbx + 0xe4]
xor r8d, 1
lea rdx, [rbp + 0x2f]
lea rcx, [rbp - 0x39]
call fcn.180001b80
nop
cmp byte [rbx + 0xe8], 0
je 0x180012296
test edi, edi
je 0x18001223c
cmp qword [rbx + 0x198], 0
jne 0x1800122f4
lea r8, [rbp - 0x19]
cmp qword [rbp - 1], 0xf
cmova r8, qword [rbp - 0x19]
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov qword [rbx + 0x198], rax
jmp 0x1800122f4
lea r8, [rbp - 0x39]
cmp qword [rbp - 0x21], 0xf
cmova r8, qword [rbp - 0x39]
xor edx, edx
mov ecx, 0x1f0001
call qword [sym.imp.KERNEL32.dll_OpenMutexA]
test rax, rax
je 0x18001226a
mov edi, 1
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbx + 0x198]
test rcx, rcx
je 0x1800122f4
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov rcx, qword [rbx + 0x198]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx + 0x198], 0
jmp 0x1800122f4
xor edi, edi
lea r8, [rbp - 0x19]
cmp qword [rbp - 1], 0xf
cmova r8, qword [rbp - 0x19]
xor edx, edx
mov ecx, 0x1f0001
call qword [sym.imp.KERNEL32.dll_OpenMutexA]
test rax, rax
je 0x1800122c6
mov edi, 1
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea r8, [rbp - 0x39]
cmp qword [rbp - 0x21], 0xf
cmova r8, qword [rbp - 0x39]
xor edx, edx
mov ecx, 0x1f0001
call qword [sym.imp.KERNEL32.dll_OpenMutexA]
test rax, rax
je 0x1800122f4
mov edi, 1
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [rbp + 0xb], 0xc
mov dword [rbp + 0xf], edi
mov r9d, 0x7530
lea r8, [rbp + 7]
lea rdx, [rbp + 7]
mov rcx, qword [rbx + 0x1e0]
call fcn.180007440
mov rcx, qword [0x1800560b8]
test rcx, rcx
je 0x18001232b
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
nop
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x180012362
inc rdx
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001235d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800123da
call fcn.180016020
movdqa xmm0, xmmword [0x18004dba0]
movdqu xmmword [rbp - 0x29], xmm0
mov byte [rbp - 0x39], 0
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x1800123aa
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800123a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800123d4
call fcn.180016020
mov eax, 1
jmp 0x1800123b3
xor eax, eax
mov rcx, qword [rbp + 0x4f]
xor rcx, rsp
call fcn.180016000
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
call fcn.180020d70
nop
call fcn.180020d70
nop