Function at 0x18005abb0
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 0x18005ad62
xor edx, edx
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov r14d, eax
cmp eax, 0x102
jne 0x18005ac23
lea eax, [rbx + 1]
jmp 0x18005b1ce
mov rcx, qword [r15]
test rcx, rcx
je 0x18005ac31
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
mov qword [r15], rax
mov dword [r15 + 8], eax
cmp qword [0x180213e70], rax
je 0x18005ad5f
lea rcx, [0x180213e70]
call fcn.1800b5da0
mov rax, qword [0x180213e70]
cmp byte [rax + 0x78], 0
je 0x18005ad5f
cmp dword [rax + 0x80], ebx
jb 0x18005ad5f
movzx eax, byte [rax + 0x84]
mov byte [rbp - 0x39], al
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xf], xmm0
movdqa xmm1, xmmword [0x1801b2840]
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 0x18005aca8
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.1800b6f10
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.1800b6a30
cmp byte [rbp - 0x39], 0
je 0x18005ad08
lea rdx, [rbp - 1]
lea rcx, [0x180213e70]
call fcn.1800b6dd0
nop
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x18005ad48
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005ad43
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b1fb
call fcn.18011e774
movdqa xmm0, xmmword [0x1801b2840]
movdqu xmmword [rbp + 0xf], xmm0
xor r14d, r14d
mov word [rbp - 1], r14w
jmp 0x18005ad62
xor r14d, r14d
cmp qword [rsi + 0x18], 8
jb 0x18005ad6c
mov rsi, qword [rsi]
mov r8, rsi
xor edx, edx
mov ecx, 0x100000
call qword [sym.imp.KERNEL32.dll_OpenMutexW]
test rax, rax
je 0x18005b0b2
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.180080200
mov rsi, qword [rbp - 1]
cmp rsi, qword [rbp + 7]
jne 0x18005aeee
cmp qword [0x180213e70], 0
je 0x18005aedb
lea rcx, [0x180213e70]
call fcn.1800b5da0
mov rax, qword [0x180213e70]
cmp byte [rax + 0x78], 0
je 0x18005aedb
cmp dword [rax + 0x80], 2
jb 0x18005aedb
movzx r14d, byte [rax + 0x84]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
movdqa xmm1, xmmword [0x1801b2840]
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 0x18005ae2d
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.1800b6f10
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.1800b6a30
test r14b, r14b
je 0x18005ae86
lea rdx, [rbp - 0x21]
lea rcx, [0x180213e70]
call fcn.1800b6dd0
nop
mov rdx, qword [rbp - 9]
cmp rdx, 8
jb 0x18005aec6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005aec1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b201
call fcn.18011e774
movdqa xmm0, xmmword [0x1801b2840]
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 0x18005b062
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.1800b69e0
mov dword [rbp - 0x31], eax
test eax, eax
je 0x18005b016
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
movdqa xmm1, xmmword [0x1801b2840]
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 0x18005af58
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.1800b6f10
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.1800b6a30
cmp dword [rbp - 0x31], 1
jbe 0x18005afc1
lea rdx, [rbp - 0x21]
lea rcx, [0x180213e70]
call fcn.1800b6dd0
nop
mov rdx, qword [rbp - 9]
cmp rdx, 8
jb 0x18005b001
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005affc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b207
call fcn.18011e774
movdqa xmm0, xmmword [0x1801b2840]
movdqu xmmword [rbp - 0x11], xmm0
xor edi, edi
mov word [rbp - 0x21], di
jmp 0x18005b018
xor edi, edi
test r12, r12
cmove r14d, edi
mov rcx, qword [r15]
test rcx, rcx
je 0x18005b02d
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r15], r12
mov dword [r15 + 8], r14d
cmp r14d, r13d
jne 0x18005b045
test r13d, r13d
je 0x18005b05d
mov ebx, 3
jmp 0x18005b062
test r13d, r13d
je 0x18005b053
test r14d, r14d
jne 0x18005b062
mov ebx, edi
jmp 0x18005b062
test r14d, r14d
mov ebx, 1
jne 0x18005b062
mov ebx, 4
test rsi, rsi
je 0x18005b0ab
mov rdx, qword [rbp + 0xf]
sub rdx, rsi
and rdx, 0xfffffffffffffffc
mov rax, rsi
cmp rdx, 0x1000
jb 0x18005b097
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b20d
mov rcx, rsi
call fcn.18011e774
xorps xmm0, xmm0
movdqu xmmword [rbp - 1], xmm0
mov qword [rbp + 0xf], rdi
mov eax, ebx
jmp 0x18005b1ce
test r12, r12
je 0x18005b1c9
cmp qword [0x180213e70], 0
je 0x18005b1c5
lea rcx, [0x180213e70]
call fcn.1800b5da0
mov rax, qword [0x180213e70]
cmp byte [rax + 0x78], 0
je 0x18005b1c5
cmp dword [rax + 0x80], 2
jb 0x18005b1c5
movzx esi, byte [rax + 0x84]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
movdqa xmm1, xmmword [0x1801b2840]
movdqu xmmword [rbp - 0x11], xmm1
mov word [rbp - 0x21], r14w
cmp qword [rdi + 0x18], 8
jb 0x18005b11e
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.1800b6f10
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.1800b6a30
test sil, sil
je 0x18005b177
lea rdx, [rbp - 0x21]
lea rcx, [0x180213e70]
call fcn.1800b6dd0
nop
mov rdx, qword [rbp - 9]
cmp rdx, 8
jb 0x18005b1b3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005b1ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005b1f5
call fcn.18011e774
movdqa xmm0, xmmword [0x1801b2840]
movdqu xmmword [rbp - 0x11], xmm0
mov word [rbp - 0x21], r14w
xor eax, eax
jmp 0x18005b1ce
mov eax, 4
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.18011e330
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.180146944
int3
call fcn.180146944
nop
call fcn.180146944
nop
call fcn.180146944
nop
call fcn.180146944
int3