Function at 0x1400f2f70
Capabilities:
Check mutex on windows
Terminate thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rsi, rcx
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, str.Globalcom.srslabs.captureapomutex
lea rdx, str.Globalcom.srslabs.captureapomutex
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rcx, [rsi + 0x1c8]
call fcn.140003210
lea rdx, [0x14006c230]
lea rcx, [rsi + 0x150]
mov qword [rsi + 0x1d8], rdx
lea rdx, [rsi + 0x1c8]
mov qword [rsi + 0x1e0], rsi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp 0x1400f2f70
push rbx
push rsi
push rdi
sub rsp, 0x30
xor edi, edi
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x60], r12
cmp qword [rcx + 0x58], rdi
mov r12, rdx
mov rbx, rcx
je 0x1400f2fcb
mov rcx, qword [rcx + 0x60]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rcx, qword [rbx + 0x58]
mov edx, 0x1388
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x1400f2fbd
mov rcx, qword [rbx + 0x58]
or edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov rcx, qword [rbx + 0x60]
call qword [sym.imp.KERNEL32.dll_ResetEvent]
mov qword [rbx + 0x58], rdi
mov rcx, qword [rbx + 0x68]
test rcx, rcx
je 0x1400f2fde
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx + 0x68], rdi
mov dword [rbx + 8], edi
mov rdx, qword [r12]
mov rbp, qword [rbx + 0x10]
lea rcx, [rdx - 0x18]
sub rbp, 0x18
cmp rcx, rbp
je 0x1400f304a
cmp dword [rbp + 0x10], edi
jl 0x1400f303d
mov rax, qword [rbp]
cmp qword [rcx], rax
jne 0x1400f303d
mov qword [rsp + 0x68], r13
call fcn.140002ed0
or ecx, 0xffffffff
mov r13, rax
lock xadd dword [rbp + 0x10], ecx
add ecx, 0xffffffff
test ecx, ecx
jg 0x1400f302e
mov rcx, qword [rbp]
mov rdx, rbp
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [r13 + 0x18]
mov r13, qword [rsp + 0x68]
mov qword [rbx + 0x10], rax
jmp 0x1400f304a
mov r8d, dword [rdx - 0x10]
lea rcx, [rbx + 0x10]
call fcn.140003210
mov eax, dword [r12 + 8]
mov rbp, qword [rsp + 0x58]
mov dword [rbx + 0x18], eax
mov rax, qword [r12 + 0x10]
mov qword [rbx + 0x20], rax
mov rax, qword [r12 + 0x18]
mov r12, qword [rsp + 0x60]
mov qword [rbx + 0x28], rax
cmp qword [rbx + 0x20], rdi
jne 0x1400f3094
mov r8, qword [rbx + 0x10]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
test rax, rax
mov qword [rbx + 0x68], rax
setne al
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret
mov r8, qword [rbx + 0x10]
xor edx, edx
lea ecx, [rdx + 1]
call qword [sym.imp.KERNEL32.dll_OpenMutexW]
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
test rsi, rsi
jne 0x1400f30bb
cmp eax, 5
je 0x1400f30c4
lea ecx, [rsi + 3]
jmp 0x1400f30c9
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 2
cmp ecx, dword [rbx + 8]
jne 0x1400f30d5
mov ecx, 1
jmp 0x1400f30d8
mov dword [rbx + 8], ecx
mov r8, qword [rbx + 0x20]
test r8, r8
je 0x1400f30ff
sub ecx, 2
je 0x1400f30f6
cmp ecx, 1
jne 0x1400f30ff
mov rdx, qword [rbx + 0x28]
xor ecx, ecx
call r8
jmp 0x1400f30ff
mov rdx, qword [rbx + 0x28]
mov cl, 1
call r8
cmp qword [rbx + 0x60], rdi
jne 0x1400f311b
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rbx + 0x60], rax
cmp qword [rbx + 0x58], rdi
jne 0x1400f3150
cmp qword [rbx + 0x60], rdi
je 0x1400f3150
lea rax, [rsp + 0x50]
lea r8, [0x1400f3160]
mov r9, rbx
mov qword [rsp + 0x28], rax
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x20], edi
mov dword [rsp + 0x50], edi
call fcn.140148100
mov qword [rbx + 0x58], rax
cmp qword [rbx + 0x58], rdi
setne al
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret