Function at 0x18005ad30
Capabilities:
Check mutex on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xa0
mov qword [rbp - 0x29], 0xfffffffffffffffe
mov qword [rsp + 0xe0], rbx
mov rax, qword [0x18020d020]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov r15, r9
mov rsi, r8
mov rdi, rdx
mov r12, qword [r9]
mov r13d, dword [r9 + 8]
xor r14d, r14d
lea ebx, [r14 + 2]
test r12, r12
je 0x18005aee2
xor edx, edx
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov r14d, eax
cmp eax, 0x102
jne 0x18005ada3
lea eax, [rbx + 1]
jmp 0x18005b34e
mov rcx, qword [r15]
test rcx, rcx
je 0x18005adb1
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
mov qword [r15], rax
mov dword [r15 + 8], eax
cmp qword [0x180213e70], rax
je 0x18005aedf
lea rcx, [0x180213e70]
call fcn.1800b5f20
mov rax, qword [0x180213e70]
cmp byte [rax + 0x78], 0
je 0x18005aedf
cmp dword [rax + 0x80], ebx
jb 0x18005aedf
movzx eax, byte [rax + 0x84]
mov byte [rbp - 0x39], al
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xf], xmm0
movdqa xmm1, xmmword [0x1801b2820]
movdqu xmmword [rbp + 0xf], xmm1
xor eax, eax
mov word [rbp - 1], ax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, rdi
cmp qword [rdi + 0x18], 8
jb 0x18005ae28
mov r8, qword [rdi]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r14d
mov r9d, r13d
lea rdx, str._s___d__maybe_is_died__ret__d__err__d
lea rcx, [rbp - 1]
call fcn.1800b7090
mov dword [rsp + 0x28], 0xd1
lea rax, str.RC::RCProtectProcKeeper::UpdateProcessState
mov qword [rsp + 0x20], rax
lea r9, str.d:jenkinsworkspacepc_2345mpcsafe_build_rhinoprotect_rtpsystem_srclibrtglobalutils_sdkclientcon_rcprotectprockeeper.cpp
lea r8, [rbp - 1]
mov edx, ebx
lea rcx, [0x180213e70]
call fcn.1800b6bb0
cmp byte [rbp - 0x39], 0
je 0x18005ae88
lea rdx, [rbp - 1]
lea rcx, [0x180213e70]
call fcn.1800b6f50
nop
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x18005aec8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005aec3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b37b
call fcn.18011e914
movdqa xmm0, xmmword [0x1801b2820]
movdqu xmmword [rbp + 0xf], xmm0
xor r14d, r14d
mov word [rbp - 1], r14w
jmp 0x18005aee2
xor r14d, r14d
cmp qword [rsi + 0x18], 8
jb 0x18005aeec
mov rsi, qword [rsi]
mov r8, rsi
xor edx, edx
mov ecx, 0x100000
call qword [sym.imp.KERNEL32.dll_OpenMutexW]
test rax, rax
je 0x18005b232
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
mov qword [rbp - 1], rax
mov qword [rbp + 7], rax
mov qword [rbp + 0xf], rax
mov qword [rbp - 1], r14
xorps xmm0, xmm0
movdqu xmmword [rbp + 7], xmm0
lea rdx, [rbp - 1]
mov rcx, rdi
call fcn.180080380
mov rsi, qword [rbp - 1]
cmp rsi, qword [rbp + 7]
jne 0x18005b06e
cmp qword [0x180213e70], 0
je 0x18005b05b
lea rcx, [0x180213e70]
call fcn.1800b5f20
mov rax, qword [0x180213e70]
cmp byte [rax + 0x78], 0
je 0x18005b05b
cmp dword [rax + 0x80], 2
jb 0x18005b05b
movzx r14d, byte [rax + 0x84]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
movdqa xmm1, xmmword [0x1801b2820]
movdqu xmmword [rbp - 0x11], xmm1
xor eax, eax
mov word [rbp - 0x21], ax
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp qword [rdi + 0x18], 8
jb 0x18005afad
mov rdi, qword [rdi]
mov r9d, eax
mov r8, rdi
lea rdx, str._s__mutex_can_open__but_get_pid_failed___d
lea rcx, [rbp - 0x21]
call fcn.1800b7090
mov dword [rsp + 0x28], 0xf4
lea rax, str.RC::RCProtectProcKeeper::UpdateProcessState
mov qword [rsp + 0x20], rax
lea r9, str.d:jenkinsworkspacepc_2345mpcsafe_build_rhinoprotect_rtpsystem_srclibrtglobalutils_sdkclientcon_rcprotectprockeeper.cpp
lea r8, [rbp - 0x21]
mov edx, ebx
lea rcx, [0x180213e70]
call fcn.1800b6bb0
test r14b, r14b
je 0x18005b006
lea rdx, [rbp - 0x21]
lea rcx, [0x180213e70]
call fcn.1800b6f50
nop
mov rdx, qword [rbp - 9]
cmp rdx, 8
jb 0x18005b046
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b041
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b381
call fcn.18011e914
movdqa xmm0, xmmword [0x1801b2820]
movdqu xmmword [rbp - 0x11], xmm0
xor r14d, r14d
mov word [rbp - 0x21], r14w
mov ebx, 4
test r12, r12
cmovne ebx, r14d
xor edi, edi
jmp 0x18005b1e2
mov r14d, dword [rsi]
mov r8d, r14d
xor edx, edx
mov ecx, 0x100000
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov r12, rax
mov eax, ebx
mov ecx, 5
test r12, r12
cmovne eax, ecx
mov dword [rbp - 0x35], eax
mov edx, eax
lea rcx, [0x180213e70]
call fcn.1800b6b60
mov dword [rbp - 0x31], eax
test eax, eax
je 0x18005b196
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
movdqa xmm1, xmmword [0x1801b2820]
movdqu xmmword [rbp - 0x11], xmm1
xor eax, eax
mov word [rbp - 0x21], ax
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp qword [rdi + 0x18], 8
jb 0x18005b0d8
mov rdi, qword [rdi]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], r14d
mov r9d, r13d
mov r8, rdi
lea rdx, str._s__old_pid_is__d__open_proc__d__handle__d__lasteror__d
lea rcx, [rbp - 0x21]
call fcn.1800b7090
mov dword [rsp + 0x28], 0x102
lea rax, str.RC::RCProtectProcKeeper::UpdateProcessState
mov qword [rsp + 0x20], rax
lea r9, str.d:jenkinsworkspacepc_2345mpcsafe_build_rhinoprotect_rtpsystem_srclibrtglobalutils_sdkclientcon_rcprotectprockeeper.cpp
lea r8, [rbp - 0x21]
mov edx, dword [rbp - 0x35]
lea rcx, [0x180213e70]
call fcn.1800b6bb0
cmp dword [rbp - 0x31], 1
jbe 0x18005b141
lea rdx, [rbp - 0x21]
lea rcx, [0x180213e70]
call fcn.1800b6f50
nop
mov rdx, qword [rbp - 9]
cmp rdx, 8
jb 0x18005b181
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b17c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b387
call fcn.18011e914
movdqa xmm0, xmmword [0x1801b2820]
movdqu xmmword [rbp - 0x11], xmm0
xor edi, edi
mov word [rbp - 0x21], di
jmp 0x18005b198
xor edi, edi
test r12, r12
cmove r14d, edi
mov rcx, qword [r15]
test rcx, rcx
je 0x18005b1ad
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r15], r12
mov dword [r15 + 8], r14d
cmp r14d, r13d
jne 0x18005b1c5
test r13d, r13d
je 0x18005b1dd
mov ebx, 3
jmp 0x18005b1e2
test r13d, r13d
je 0x18005b1d3
test r14d, r14d
jne 0x18005b1e2
mov ebx, edi
jmp 0x18005b1e2
test r14d, r14d
mov ebx, 1
jne 0x18005b1e2
mov ebx, 4
test rsi, rsi
je 0x18005b22b
mov rdx, qword [rbp + 0xf]
sub rdx, rsi
and rdx, 0xfffffffffffffffc
mov rax, rsi
cmp rdx, 0x1000
jb 0x18005b217
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b38d
mov rcx, rsi
call fcn.18011e914
xorps xmm0, xmm0
movdqu xmmword [rbp - 1], xmm0
mov qword [rbp + 0xf], rdi
mov eax, ebx
jmp 0x18005b34e
test r12, r12
je 0x18005b349
cmp qword [0x180213e70], 0
je 0x18005b345
lea rcx, [0x180213e70]
call fcn.1800b5f20
mov rax, qword [0x180213e70]
cmp byte [rax + 0x78], 0
je 0x18005b345
cmp dword [rax + 0x80], 2
jb 0x18005b345
movzx esi, byte [rax + 0x84]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
movdqa xmm1, xmmword [0x1801b2820]
movdqu xmmword [rbp - 0x11], xmm1
mov word [rbp - 0x21], r14w
cmp qword [rdi + 0x18], 8
jb 0x18005b29e
mov rdi, qword [rdi]
mov r9d, r13d
mov r8, rdi
lea rdx, str._s___d__is_stop_running__cannot_open_the_mutex
lea rcx, [rbp - 0x21]
call fcn.1800b7090
mov dword [rsp + 0x28], 0xe2
lea rax, str.RC::RCProtectProcKeeper::UpdateProcessState
mov qword [rsp + 0x20], rax
lea r9, str.d:jenkinsworkspacepc_2345mpcsafe_build_rhinoprotect_rtpsystem_srclibrtglobalutils_sdkclientcon_rcprotectprockeeper.cpp
lea r8, [rbp - 0x21]
mov edx, ebx
lea rcx, [0x180213e70]
call fcn.1800b6bb0
test sil, sil
je 0x18005b2f7
lea rdx, [rbp - 0x21]
lea rcx, [0x180213e70]
call fcn.1800b6f50
nop
mov rdx, qword [rbp - 9]
cmp rdx, 8
jb 0x18005b333
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b32e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b375
call fcn.18011e914
movdqa xmm0, xmmword [0x1801b2820]
movdqu xmmword [rbp - 0x11], xmm0
mov word [rbp - 0x21], r14w
xor eax, eax
jmp 0x18005b34e
mov eax, 4
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.18011e4d0
mov rbx, qword [rsp + 0xe0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180146ae4
int3
call fcn.180146ae4
nop
call fcn.180146ae4
nop
call fcn.180146ae4
nop
call fcn.180146ae4
int3