Function at 0x140001510
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0xf0]
sub rsp, 0x1f0
mov rax, qword [0x140027010]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov r15, rcx
xor edx, edx
mov r8d, 0xa0
lea rcx, [rbp + 0x40]
call fcn.14001641a
xor r12d, r12d
mov qword [rbp + 0x58], r12
mov dword [rbp + 0x60], r12d
mov qword [rbp + 0x68], r12
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x80], 7
mov word [rbp + 0x68], r12w
mov qword [rbp + 0x88], r12
mov qword [rbp + 0x98], r12
mov qword [rbp + 0xa0], 7
mov word [rbp + 0x88], r12w
mov qword [rbp + 0xa8], r12
mov qword [rbp + 0xb8], r12
mov qword [rbp + 0xc0], 0xf
mov byte [rbp + 0xa8], r12b
mov qword [rbp + 0xc8], r12
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xd0], xmm0
lea rax, vtable.HT_Exception_Subclass_class_HT_Exception_Type_2___0_.0
mov qword [rbp + 0x40], rax
mov byte [r15 + 0x1f68], r12b
lea rdx, [r15 + 0x190]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0x2f0]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0x710]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0x878]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0xac8]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0x11d8]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0x17c8]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0x1a18]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0x1ba8]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
lea rdx, [r15 + 0x1d20]
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonKeyboardCustomizeDialog::AddKeyEntry]
or dword [r15 + 0xec], 0x20
mov qword [r15 + 0x2e8], r15
mov qword [r15 + 0x448], r15
mov qword [r15 + 0x868], r15
mov qword [r15 + Ordinal_2514], r15
mov qword [r15 + CFormView::Create], r15
mov qword [r15 + CMFCBaseAccessibleObject::XAccessible::get_accChild], r15
mov qword [r15 + 0x1920], r15
mov qword [r15 + 0x1ba0], r15
mov qword [r15 + 0x1d00], r15
mov qword [r15 + 0x1e78], r15
lea rcx, [rbp - 0x80]
call qword [sym.imp.apperr.dll_class_std::unique_ptr_class_HT_Error_Handler__struct_std::default_delete_class_HT_Error_Handler_____cdecl_HD_Create_App_Error_Handler_void_]
mov rdi, rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
mov rbx, qword [rax]
test rbx, rbx
je 0x140001733
lea ecx, [r12 + 0x18]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonLinkCtrl::XElementButtonLinkCtrl]
mov qword [rsp + 0x48], rax
test rax, rax
je 0x140001723
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rcx, vtable.std::_Ref_count_resource_class_HT_Error_Handler____ptr64__struct_std::default_delete_class_HT_Error_Handler__.0
mov qword [rax], rcx
mov qword [rax + 0x10], rbx
jmp 0x140001726
mov rax, r12
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rax
mov qword [rdi], r12
lea r14, [r15 + 0x1f58]
lea rdx, [rsp + 0x38]
mov rcx, r14
call fcn.140002000
mov rsi, 0xffffffffffffffff
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x140001789
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140001789
mov rbx, qword [rsp + 0x40]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140001789
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x14000179c
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rcx, qword [r14]
test rcx, rcx
je 0x1400017d2
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
mov rax, qword [r15 + 0x1f60]
test rax, rax
je 0x1400017c7
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rax
lock inc dword [rax + 0xc]
lea rcx, [rsp + 0x60]
call qword [sym.imp.hcreg16.dll_hcreg_SetErrorHandler]
lea rcx, [rbp - 0x78]
call qword [sym.imp.hcreg16.dll_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_GetDriverDirectory_void_]
nop
mov rdx, qword [rax]
mov qword [rbp + 0x20], r12
movdqa xmm0, xmmword [0x14001f090]
movdqu xmmword [rbp + 0x30], xmm0
mov word [rbp + 0x20], r12w
test rdx, rdx
je 0x14000181a
cmp word [rdx], 0
je 0x14000181a
mov r8, rsi
inc r8
cmp word [rdx + r8*2], 0
jne 0x140001804
lea rcx, [rbp + 0x20]
call fcn.1400024a0
jmp 0x140001823
mov qword [rbp + 0x30], r12
mov word [rbp + 0x20], r12w
lea rcx, [rbp - 0x78]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
cmp dword [rbp + 0x30], 0
jne 0x14000183c
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rcx, [rbp - 0x70]
call qword [sym.imp.hcreg16.dll_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_GetPMPDirectory_void_]
nop
mov rdx, qword [rax]
mov qword [rbp], r12
movdqa xmm0, xmmword [0x14001f090]
movdqu xmmword [rbp + 0x10], xmm0
mov word [rbp], r12w
test rdx, rdx
je 0x140001886
cmp word [rdx], 0
je 0x140001886
mov r8, rsi
nop
inc r8
cmp word [rdx + r8*2], 0
jne 0x140001870
lea rcx, [rbp]
call fcn.1400024a0
jmp 0x14000188f
mov qword [rbp + 0x10], r12
mov word [rbp], r12w
lea rcx, [rbp - 0x70]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
cmp dword [rbp + 0x10], 0
jne 0x1400018a8
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rcx, [rbp - 0x68]
call qword [sym.imp.hcreg16.dll_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_GetPlotStylesDirectory_void_]
nop
mov rdx, qword [rax]
mov qword [rbp - 0x20], r12
movdqa xmm0, xmmword [0x14001f090]
movdqu xmmword [rbp - 0x10], xmm0
mov word [rbp - 0x20], r12w
test rdx, rdx
je 0x1400018f6
cmp word [rdx], 0
je 0x1400018f6
mov r8, rsi
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400018e0
lea rcx, [rbp - 0x20]
call fcn.1400024a0
jmp 0x1400018ff
mov qword [rbp - 0x10], r12
mov word [rbp - 0x20], r12w
lea rcx, [rbp - 0x68]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
cmp dword [rbp - 0x10], 0
jne 0x140001918
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rdi, qword [r14]
test rdi, rdi
je 0x1400019b4
mov rax, qword [rdi]
mov rbx, qword [rax + 0xb8]
lea rcx, [rbp - 0x60]
call qword [sym.imp.hcreg16.dll_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_GetProductName_void_]
nop
mov rdx, qword [rax]
mov rcx, rdi
call rbx
nop
lea rcx, [rbp - 0x60]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov rdi, qword [r14]
mov rax, qword [rdi]
mov rbx, qword [rax + 0xc0]
lea rcx, [rbp - 0x58]
call qword [sym.imp.hcreg16.dll_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_GetProgramName_void_]
nop
mov rdx, qword [rax]
mov rcx, rdi
call rbx
nop
lea rcx, [rbp - 0x58]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov rdi, qword [r14]
mov rax, qword [rdi]
mov rbx, qword [rax + 0xc8]
lea rcx, [rsp + 0x48]
call qword [sym.imp.hcreg16.dll_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_GetCompanyName_void_]
nop
mov rdx, qword [rax]
mov rcx, rdi
call rbx
nop
lea rcx, [rsp + 0x48]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov rcx, qword [r14]
mov rax, qword [rcx]
lea rdx, str.log.log
call qword [rax + 0x48]
add r15, 0x1f38
cmp qword [r15], 0
jne 0x140001ad0
mov ecx, 0x180
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonLinkCtrl::XElementButtonLinkCtrl]
mov rbx, rax
mov qword [rbp - 0x50], rax
test rax, rax
je 0x140001a3c
xor edx, edx
mov r8d, 0x180
mov rcx, rax
call fcn.14001641a
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x140001a06
lock inc dword [rcx + 8]
mov rcx, qword [r14 + 8]
mov rax, qword [r14]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rcx
mov dword [rsp + 0x28], r12d
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x20]
lea r8, [rbp]
lea rdx, [rbp + 0x20]
mov rcx, rbx
call qword [sym.imp.plcfmgr.dll_public:_void___cdecl_HT_Plot_Config_Manager::constructor_class_HT_String____ptr64__class_HT_String____ptr64__class_HT_String____ptr64__class_std::shared_ptr_class_HT_Error_Handler___unsigned_long_int____ptr64]
mov rbx, rax
jmp 0x140001a3f
mov rbx, r12
mov qword [rbp - 0x28], rbx
mov ecx, 0x18
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonLinkCtrl::XElementButtonLinkCtrl]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x140001a7c
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rcx, vtable.std::_Ref_count_class_HT_Plot_Config_Manager_.0
mov qword [rax], rcx
mov qword [rax + 0x10], rbx
jmp 0x140001a7f
mov rax, r12
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x50]
mov rcx, r15
call fcn.140002000
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140001ad0
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140001ad0
mov rbx, qword [rsp + 0x58]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140001ad0
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + 8]
mov rbx, qword [r15 + 8]
test rbx, rbx
je 0x140001ae1
lock inc dword [rbx + 8]
mov rbx, qword [r15 + 8]
mov rax, qword [r15]
mov qword [rbp - 0x48], rax
test rbx, rbx
je 0x140001af5
lock inc dword [rbx + 8]
mov rax, qword [rbp - 0x48]
mov qword [r15], rax
mov rdi, qword [r15 + 8]
mov qword [r15 + 8], rbx
test rdi, rdi
je 0x140001b2e
mov eax, esi
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x140001b2e
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x140001b2e
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
test rbx, rbx
je 0x140001b5c
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140001b5c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140001b5c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x140001b6d
lock inc dword [rbx + 8]
mov rbx, qword [r14 + 8]
mov rax, qword [r14]
mov qword [rbp - 0x38], rax
test rbx, rbx
je 0x140001b81
lock inc dword [rbx + 8]
mov rax, qword [rbp - 0x38]
mov qword [r14], rax
mov rdi, qword [r14 + 8]
mov qword [r14 + 8], rbx
test rdi, rdi
je 0x140001bba
mov eax, esi
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x140001bba
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x140001bba
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
test rbx, rbx
je 0x140001be7
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140001be7
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], esi
cmp esi, 1
jne 0x140001be7
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x140001c2a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001c25
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001c25
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015560
movdqa xmm0, xmmword [0x14001f090]
movdqu xmmword [rbp - 0x10], xmm0
mov word [rbp - 0x20], r12w
mov rdx, qword [rbp + 0x18]
cmp rdx, 8
jb 0x140001c7f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001c7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001c7a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015560
movdqa xmm0, xmmword [0x14001f090]
movdqu xmmword [rbp + 0x10], xmm0
mov word [rbp], r12w
mov rdx, qword [rbp + 0x38]
cmp rdx, 8
jb 0x140001cd4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001ccf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001ccf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140015560
movdqa xmm0, xmmword [0x14001f090]
movdqu xmmword [rbp + 0x30], xmm0
mov word [rbp + 0x20], r12w
lea rcx, [rbp + 0x40]
call fcn.140002740
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.140015540
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret