Function at 0x1400629c4
Capabilities:
Create thread
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
lea rbp, [rsp - 0x270]
sub rsp, 0x370
mov rax, qword [0x14049e048]
xor rax, rsp
mov qword [rbp + 0x268], rax
xor edi, edi
lea rax, [rsp + 0x30]
mov qword [rsp + 0x40], rax
lea rdx, [0x14032f730]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
mov rbx, rax
lea rdx, str.ACADLIC_DEBUG
lea rcx, [rbp + 8]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.140063e60
nop
mov rcx, rax
call qword [sym.imp.ac1st24.dll_public:_unsigned_int___cdecl_AcString::length_void_const___ptr64]
test eax, eax
setne al
mov byte [0x1404b7269], al
lea rcx, [rsp + 0x38]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
mov cl, 1
call qword [sym.imp.AcPal.dll_void___cdecl_InitializeHeapSubsystem_bool_]
nop
lea ecx, [rdi + 1]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonLinkCtrl::XElementButtonLinkCtrl]
mov qword [rbp + 0x40], rax
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], edi
mov r9, rax
lea r8, [0x140078258]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x1400a8152
lea rcx, [rsp + 0x40]
call fcn.140064174
nop
cmp dword [rsp + 0x48], edi
jne 0x1400a7f64
call sym.ACAD.exe_struct_AcLicenseSettings____ptr64___cdecl_getAcLicenseSettings_void_
mov rbx, rax
test rax, rax
je 0x1400a7f6b
xor edx, edx
mov r8d, SysAllocStringByteLen
lea rcx, [rsp + 0x50]
call sub.VCRUNTIME140.dll_memset
mov qword [rbp + 0x38], rdi
call qword [sym.imp.accore.dll_thisProduct]
mov rdx, rax
lea rcx, [rbp + 0x38]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
nop
lea rcx, [rbp + 0x38]
call qword [sym.imp.ac1st24.dll_public:_char_const____ptr64___cdecl_AcString::utf8Ptr_void_const___ptr64]
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x30], rdi
call qword [sym.imp.UserData.dll_wchar_t_const____ptr64___cdecl_acudGetProductUALanguage_void_]
mov rdx, rax
lea rcx, [rbp + 0x30]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
nop
lea rcx, [rbp + 0x30]
call qword [sym.imp.ac1st24.dll_public:_char_const____ptr64___cdecl_AcString::utf8Ptr_void_const___ptr64]
mov qword [rsp + 0x60], rax
mov dword [rbp - 0x80], 1
lea rax, [0x1402eb030]
mov qword [rbp - 0x48], rax
lea rax, [0x1402eb160]
mov qword [rbp - 0x40], rax
lea rax, [0x140055c1c]
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x28], 1
mov qword [rbp + 0x18], rdi
lea rdx, [rbx + 0x124]
xor r8d, r8d
lea rcx, [rbp + 0x18]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_char_const____ptr64__enum_AcString::Encoding____ptr64]
nop
lea rdx, [rbx + 0x10]
xor r8d, r8d
lea rcx, [rsp + 0x40]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_char_const____ptr64__enum_AcString::Encoding____ptr64]
nop
mov rdx, rax
lea rcx, [rbp + 0x18]
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_class_AcString_const____ptr64____ptr64]
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
lea rdx, [rbp - 0x20]
lea rcx, str.Locale
call qword [sym.imp.accore.dll_int___cdecl_acedGetVar_wchar_t_const____ptr64__struct_resbuf____ptr64_]
mov qword [rbp + 0x20], rdi
lea rdx, [0x140342574]
lea rcx, [rbp + 0x20]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
nop
mov rdx, qword [rbp - 0x10]
test rdx, rdx
je 0x140062bd6
lea rcx, [rbp + 0x20]
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::assign_wchar_t_const____ptr64____ptr64]
lea rcx, [rbp - 0x10]
call qword [sym.imp.acdb24.dll_void___cdecl_acutDelBuffer_void____ptr64____ptr64_]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x18]
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_class_AcString_const____ptr64____ptr64]
mov qword [rbp + 0x28], rdi
lea rdx, [rbp + 0x18]
lea rcx, [rbp + 0x28]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_class_AcString_const____ptr64____ptr64]
nop
lea rcx, [rbp + 0x28]
call qword [sym.imp.ac1st24.dll_public:_char_const____ptr64___cdecl_AcString::utf8Ptr_void_const___ptr64]
mov qword [rsp + 0x70], rax
call qword [sym.imp.accore.dll_struct_HWND______ptr64___cdecl_adsw_acadMainWnd_void_]
mov rcx, rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x23]
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x1400a803d
mov qword [rbp + 0x10], rdi
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
nop
call qword [sym.imp.AcPal.dll_wchar_t___cdecl_Autodesk::AutoCAD::PAL::FileSystem::path_separator_void_]
movzx ebx, ax
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_unsigned_int___cdecl_AcString::length_void_const___ptr64]
dec eax
movsxd rcx, eax
mov rax, qword [rbp + 0x10]
cmp word [rax + rcx*2], bx
je 0x140062c7b
mov word [rbp + 8], bx
mov word [rbp + 0xa], di
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
mov rdx, qword [sym.imp.accore.dll_wchar_t__g_autodesk]
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
mov word [rbp + 8], bx
mov word [rbp + 0xa], di
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
lea rdx, str.Adlm
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
mov word [rbp + 8], bx
mov word [rbp + 0xa], di
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_char_const____ptr64___cdecl_AcString::utf8Ptr_void_const___ptr64]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x50]
lea rcx, [0x1404b51b0]
call qword [sym.imp.AdskLicensingSDK_7.dll_adlsdk97EA5DDAE717982962A35774F7DB9BCB_7]
mov dword [0x1404b51c4], eax
test eax, eax
jne 0x1400a8073
call fcn.1400624cc
call fcn.140064228
test al, al
jne 0x140062d12
call fcn.1400642f8
call fcn.140063bb4
mov edi, eax
lea rdx, str.AcGetlicense
lea rcx, [rbp + 8]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__5]
nop
lea rdx, [rbp + 8]
lea rcx, [rsp + 0x38]
call fcn.140035aec
nop
lea rdx, str._global_status
mov rcx, rax
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
mov rbx, rax
call fcn.140063efc
mov rdx, rax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__5]
nop
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140035aec
nop
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_class_AcString_const____ptr64____ptr64]
mov rcx, rax
call fcn.140063400
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0x38]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp + 8]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp + 0x10]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp + 0x28]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp + 0x20]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp + 0x18]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp + 0x30]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp + 0x38]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
xor ecx, ecx
call qword [sym.imp.AcPal.dll_void___cdecl_InitializeHeapSubsystem_bool_]
nop
mov eax, edi
mov rcx, qword [rbp + 0x268]
xor rcx, rsp
call fcn.140088c50
lea r11, [rsp + 0x370]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
lea rdx, str.AcGetlicense
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__5]
nop
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140035aec
mov rbx, rax
lea rdi, str.AcJab.dll_branding_error
mov rdx, rdi
lea rcx, [rbp + 8]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__5]
nop
lea rdx, [rbp + 8]
lea rcx, [rsp + 0x38]
call fcn.140035aec
nop
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_class_AcString_const____ptr64____ptr64]
mov rcx, rax
call fcn.140063400
nop
lea rcx, [rsp + 0x38]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp + 8]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov byte [0x1404b65b0], 1
mov dword [0x1404b65c0], 0x4e21
lea rax, [0x140364748]
mov qword [0x1404b65b8], rax
mov qword [0x1404b65c8], rdi
mov dword [0x1404b51c4], 3
mov byte [0x1404b51ca], 1
call fcn.1400368f4
mov edi, 2
jmp 0x140062df0
lea rdx, [rbp + 0x50]
mov ebx, SerializeElements<ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
jne 0x140062c30
lea r9d, [rax + 3]
lea r8, [0x14034cc10]
mov edx, ebx
lea rcx, [rbp + 0x50]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy_s]
nop
jmp 0x140062c30
mov byte [0x1404b65b0], 1
add eax, 0x7530
mov dword [0x1404b65c0], eax
lea rax, [0x140364748]
mov qword [0x1404b65b8], rax
lea rax, str.failure_due_to_misconfiguration
mov qword [0x1404b65c8], rax
mov byte [0x1404b51ca], 1
lea rdx, str.AcGetlicense
lea rcx, [rbp + 8]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__5]
nop
lea rdx, [rbp + 8]
lea rcx, [rsp + 0x38]
call fcn.140035aec
nop
lea rdx, str._Failed_to_create_session_because:
mov rcx, rax
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
mov rbx, rax
call fcn.140063efc
mov rdx, rax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__5]
nop
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140035aec
nop
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.ac1st24.dll_public:_class_AcString____ptr64___cdecl_AcString::append_class_AcString_const____ptr64____ptr64]
mov rcx, rax
call fcn.140063400
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0x38]
call qword [sym.imp.ac1st24.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp + 8]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
call fcn.1400368f4
mov edi, 2
jmp 0x140062dae
mov dword [rsp + 0x48], edi
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3