Function at 0x7ff6d8e94ad0
Capabilities:
Check mutex on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x100
mov rax, qword [0x7ff6d8eee010]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0x30], 0
mov esi, edx
mov qword [rsp + 0x38], 0
mov rdi, rcx
test rcx, rcx
jne 0x7ff6d8e94b17
lea eax, [rcx + 6]
jmp 0x7ff6d8e94d33
mov rax, qword [0x7ff6d8ef3ad8]
test rax, rax
jne 0x7ff6d8e94b46
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_CreateMutexA]
mov qword [0x7ff6d8ef3ad8], rax
test rax, rax
jne 0x7ff6d8e94b46
mov eax, 0xb
jmp 0x7ff6d8e94d33
mov edx, 0xffffffff
mov rcx, rax
call qword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_CreateMutexA]
mov qword [0x7ff6d8ef3ab0], rax
test rax, rax
jne 0x7ff6d8e94b75
lea ebx, [rax + 0xb]
jmp 0x7ff6d8e94d24
mov eax, dword [0x7ff6d8ef2a94]
cmp eax, 1
jne 0x7ff6d8e94b88
lea ebx, [rax + 0xb]
jmp 0x7ff6d8e94d24
movups xmm0, xmmword [rdi]
xor ebx, ebx
movups xmmword [0x7ff6d8ef3ab8], xmm0
movups xmm1, xmmword [rdi + 0x10]
movq rax, xmm1
movups xmmword [0x7ff6d8ef3ac8], xmm1
test rax, rax
je 0x7ff6d8e94bc4
cmp qword [0x7ff6d8ef3ad0], rbx
je 0x7ff6d8e94bc4
cmp qword [0x7ff6d8ef3ab8], rbx
je 0x7ff6d8e94bc4
cmp qword [0x7ff6d8ef3ac0], rbx
jne 0x7ff6d8e94bc9
mov ebx, 6
test ebx, ebx
jne 0x7ff6d8e94d24
call fcn.7ff6d8e944c0
mov ebx, eax
test eax, eax
jne 0x7ff6d8e94d24
test esi, esi
je 0x7ff6d8e94c54
lea ecx, [rax + 2]
call fcn.7ff6d8e94710
mov ebx, eax
test eax, eax
jne 0x7ff6d8e94d13
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x30]
call fcn.7ff6d8e947d0
mov rdi, qword [rsp + 0x38]
mov ebx, eax
test eax, eax
jne 0x7ff6d8e94c2d
cmp dword [rsp + 0x30], eax
jbe 0x7ff6d8e94c2d
mov edx, dword [rdi]
lea ecx, [rax + 4]
call fcn.7ff6d8e94280
mov ebx, eax
test eax, eax
jne 0x7ff6d8e94c2d
call fcn.7ff6d8e94960
mov ebx, eax
test rdi, rdi
je 0x7ff6d8e94c3a
mov rcx, rdi
call fcn.7ff6d8ea4cd0
test ebx, ebx
jne 0x7ff6d8e94d13
lea ecx, [rbx + 3]
call fcn.7ff6d8e94710
mov ebx, eax
test eax, eax
jne 0x7ff6d8e94d13
xorps xmm0, xmm0
lea rdx, [rsp + 0x40]
xor eax, eax
movups xmmword [rsp + 0x90], xmm0
mov dword [rsp + 0xe0], eax
movups xmmword [rsp + 0x80], xmm0
lea ecx, [rax + 2]
mov qword [rsp + 0x70], rax
movups xmmword [rsp + 0xa0], xmm0
mov dword [rsp + 0x90], 0x1a
movups xmmword [rsp + 0xb0], xmm0
movups xmmword [rsp + 0xc0], xmm0
movups xmmword [rsp + 0xd0], xmm0
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm0
movups xmmword [rsp + 0x60], xmm0
call fcn.7ff6d8e937d0
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x80]
mov dword [rsp + 0x20], 0
lea r8d, [r9 + 0x18]
lea ecx, [r9 + 2]
call fcn.7ff6d8e93cb0
mov rcx, qword [rsp + 0x50]
mov ebx, eax
test eax, eax
jne 0x7ff6d8e94d05
mov ebx, dword [rsp + 0x48]
test ebx, ebx
jne 0x7ff6d8e94d05
test rcx, rcx
je 0x7ff6d8e94d00
cmp dword [rsp + 0x4c], 0x10
je 0x7ff6d8e94d05
mov ebx, 8
test rcx, rcx
je 0x7ff6d8e94d0f
call fcn.7ff6d8ea4cd0
test ebx, ebx
je 0x7ff6d8e94d1a
call fcn.7ff6d8e94690
jmp 0x7ff6d8e94d24
mov dword [0x7ff6d8ef2a94], 1
mov rcx, qword [0x7ff6d8ef3ad8]
call qword [sym.imp.KERNEL32.DLL_ReleaseMutex]
mov eax, ebx
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.7ff6d8e98b50
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret