Function at 0x140043a70
Capabilities:
Create thread
Listen for remote procedure calls

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x70
mov rax, qword [0x1400c9008]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rdi, rcx
mov qword [rsp + 0x58], rcx
lea rcx, [0x1400cec50]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x140043ab5
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
xor ebp, ebp
cmp dword [0x1400ce068], 2
je 0x140043aed
mov ebx, 0x60000002
call qword [sym.imp.Logging.dll_public:_static_class_Hp::Bridge::Logging::TraceLogger____ptr64___cdecl_Hp::Bridge::Logging::LogManager::GetLogger_void_]
lea rdx, str.RpcServiceHost::Listen_invoked_when_server_is_not_in_ready_state
mov rcx, rax
call qword [sym.imp.Logging.dll_public:_void___cdecl_Hp::Bridge::Logging::TraceLogger::LogWarning_wchar_t_const____ptr64____ptr64]
lea rcx, [0x1400cec50]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x140043bf7
mov edx, 0x4d2
mov ecx, 1
mov r8d, ecx
call qword [sym.imp.RPCRT4.dll_RpcServerListen]
mov ebx, eax
cmp eax, 0x6b1
jne 0x140043b0d
mov ebx, ebp
jmp 0x140043b15
test eax, eax
jne 0x140043bde
mov dword [0x1400ce068], 3
cmp qword [rdi + 0x38], rbp
je 0x140043bc8
mov ecx, 0x40
call fcn.140061c6c
mov rsi, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x40], rax
mov qword [rax + 0x38], rbp
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x140043b5d
mov rdx, qword [rcx]
mov r8, qword [rdx]
mov rdx, rax
call r8
mov qword [rsi + 0x38], rax
mov qword [rsp + 0x40], rsi
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebp
mov r9, rsi
lea r8, [0x140045110]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x140043c4f
cmp dword [rsp + 0x38], 0
jne 0x140043ba5
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
je 0x140043bc8
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
nop
call qword [sym.imp.Logging.dll_public:_static_class_Hp::Bridge::Logging::TraceLogger____ptr64___cdecl_Hp::Bridge::Logging::LogManager::GetLogger_void_]
lea rdx, str.RpcServiceHost_in_LISTENING_state
mov rcx, rax
call qword [sym.imp.Logging.dll_public:_void___cdecl_Hp::Bridge::Logging::TraceLogger::LogInfo_wchar_t_const____ptr64____ptr64]
lea rcx, [0x1400cec50]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
test ebx, ebx
jne 0x140043bf7
call qword [sym.imp.RPCRT4.dll_RpcMgmtWaitServerListen]
mov ebx, eax
call qword [sym.imp.Logging.dll_public:_static_class_Hp::Bridge::Logging::TraceLogger____ptr64___cdecl_Hp::Bridge::Logging::LogManager::GetLogger_void_]
mov r8d, ebx
lea rdx, str.RpcServiceHost::Listen
mov rcx, rax
call qword [sym.imp.Logging.dll_public:_void___cdecl_Hp::Bridge::Logging::TraceLogger::LogStatus_wchar_t_const____ptr64__unsigned_long_int____ptr64]
nop
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x140043c2a
mov rax, qword [rcx]
cmp rcx, rdi
setne dl
call qword [rax + 0x20]
mov qword [rdi + 0x38], rbp
mov eax, ebx
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140061c10
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
mov dword [rsp + 0x38], ebp
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3