Function at 0x140026d60
Capabilities:
Set registry value

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x1c8]
sub rsp, 0x2c0
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x140073008]
xor rax, rsp
mov qword [rbp + 0x1b0], rax
mov rsi, rcx
mov qword [rsp + 0x68], rcx
xor eax, eax
mov qword [rbp - 0x80], rax
lea rdx, [0x140053c38]
lea rcx, [rbp - 0x80]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
nop
call qword [sym.imp.acdb21.dll_class_AcDbHostApplicationServices____ptr64___cdecl_acdbHostApplicationServices_void_]
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x180]
lea r8, vtable.Host.0
cmp rcx, r8
mov rcx, rax
jne 0x140026ddf
call qword [sym.imp.acdb21.dll_public_virtual:_wchar_t_const____ptr64___cdecl_AcDbHostApplicationServices::getUserRegistryProductRootKey_void____ptr64]
jmp 0x140026de1
call rdx
mov rdx, rax
lea rcx, [rbp - 0x80]
call qword [sym.imp.ac1st21.dll_public:_class_AcString____ptr64___cdecl_AcString::assign_wchar_t_const____ptr64____ptr64]
lea rdx, str.Profiles_
lea rcx, [rbp - 0x80]
call qword [sym.imp.ac1st21.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
lea rcx, [rbp - 0x80]
call qword [sym.imp.ac1st21.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
xor edi, edi
mov qword [rsp + 0x40], rdi
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], edi
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, 0xffffffff80000001
call fcn.140049650
test eax, eax
jne 0x1400270e1
mov dword [rbp - 0x78], reloc.OLEAUT32.dll_SetErrorInfo
xor eax, eax
mov qword [rsp + 0x78], rax
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x78]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::constructor_class_AcString_const____ptr64____ptr64]
nop
lea rax, [rbp - 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x60]
xor r8d, r8d
lea rdx, [0x140053c38]
mov rcx, qword [rsp + 0x58]
call fcn.140049810
test eax, eax
jne 0x140026ece
lea rax, [rbp - 0x78]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
xor r8d, r8d
lea rdx, [0x140053c38]
mov rcx, qword [rsp + 0x58]
call fcn.140049810
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x78]
call qword [sym.imp.ac1st21.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
jmp 0x140026fac
xor eax, eax
mov qword [rsp + 0x70], rax
lea rdx, str.__Unnamed_Profile__
lea rcx, [rbp - 0x58]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t_]
nop
lea rcx, [rsp + 0x70]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::constructor_void____ptr64]
nop
mov rdx, qword [rbp - 0x58]
lea rcx, [rsp + 0x70]
call qword [sym.imp.ac1st21.dll_public:_class_AcString____ptr64___cdecl_AcString::assign_wchar_t_const____ptr64____ptr64]
nop
lea rcx, [rbp - 0x58]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
lea rcx, [rsp + 0x70]
call qword [sym.imp.ac1st21.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
mov rbx, rax
lea rcx, [rsp + 0x70]
call qword [sym.imp.ac1st21.dll_public:_unsigned_int___cdecl_AcString::length_void_const___ptr64]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
mov r9d, 1
xor r8d, r8d
lea rdx, [0x140053c38]
mov rcx, qword [rsp + 0x58]
call sub.ADVAPI32.dll_RegSetValueExW
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x78]
call qword [sym.imp.ac1st21.dll_public:_class_AcString____ptr64___cdecl_AcString::append_class_AcString_const____ptr64____ptr64]
lea rcx, [rsp + 0x78]
call qword [sym.imp.ac1st21.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
mov qword [rsp + 0x40], rdi
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], edi
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, 0xffffffff80000001
call fcn.140049650
nop
lea rcx, [rsp + 0x70]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
xor eax, eax
mov qword [rbp - 0x68], rax
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x68]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::constructor_class_AcString_const____ptr64____ptr64]
nop
lea rdx, str.General
lea rcx, [rbp - 0x68]
call qword [sym.imp.ac1st21.dll_public:_class_AcString____ptr64___cdecl_AcString::append_wchar_t_const____ptr64____ptr64]
lea rcx, [rbp - 0x68]
call qword [sym.imp.ac1st21.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
mov qword [rsp + 0x40], rdi
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], edi
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
mov rcx, 0xffffffff80000001
call fcn.140049650
mov ebx, eax
mov rcx, qword [rsp + 0x58]
call sub.ADVAPI32.dll_RegCloseKey
xor eax, eax
mov qword [rbp - 0x70], rax
lea rdx, str.IESWEB
lea rcx, [rbp - 0x70]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::constructor_wchar_t_const____ptr64____ptr64]
nop
test ebx, ebx
jne 0x1400270af
lea rcx, [rbp - 0x70]
call qword [sym.imp.ac1st21.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
lea rcx, [rbp - 0x58]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x70]
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rsp + 0x60]
call fcn.140049810
mov rcx, rsi
call qword [sym.imp.ac1st21.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
mov rbx, rax
lea rcx, [rbp - 0x70]
call qword [sym.imp.ac1st21.dll_public:_wchar_t_const____ptr64___cdecl_AcString::kwszPtr_void_const___ptr64]
mov rdi, rax
mov rcx, rsi
call qword [sym.imp.ac1st21.dll_public:_unsigned_int___cdecl_AcString::length_void_const___ptr64]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
mov r9d, 1
xor r8d, r8d
mov rdx, rdi
mov rcx, qword [rsp + 0x60]
call sub.ADVAPI32.dll_RegSetValueExW
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x1400270bf
call sub.ADVAPI32.dll_RegCloseKey
nop
lea rcx, [rbp - 0x70]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp - 0x68]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rsp + 0x78]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
lea rcx, [rbp - 0x80]
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
nop
mov rcx, rsi
call qword [sym.imp.ac1st21.dll_public:_void___cdecl_AcString::destructor_void____ptr64]
mov rcx, qword [rbp + 0x1b0]
xor rcx, rsp
call fcn.140043860
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret