Function at 0x140001070
Capabilities:
Persist via windows service
Set registry value

Disassembly:
push rbp
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x30], rax
lea rax, [rsp + 0x30]
mov r9d, 2
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SystemCurrentControlSet
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140001376
mov rdx, qword [0x140027cb8]
lea r8, [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyW]
test eax, eax
jne 0x140001376
mov qword [rsp + 0x160], rdi
lea edx, [rax + 1]
mov qword [rsp + 0x150], rbx
mov ecx, 0x400
mov qword [rsp + 0x158], rsi
call fcn.140007ef4
mov rdi, rax
test rax, rax
je 0x140001172
mov rdx, qword [0x140028c68]
mov rbx, 0xffffffffffffffff
mov r8, rbx
mov dword [rax], 0x5c3f3f5c
nop
inc r8
cmp byte [rdx + r8], 0
jne 0x140001120
lea rcx, [rax + 4]
call fcn.140017ca0
inc rbx
cmp byte [rdi + rbx], 0
jne 0x140001133
mov rcx, qword [rsp + 0x40]
lea rdx, str.ImagePath
inc ebx
mov r9d, 2
mov dword [rsp + 0x28], ebx
xor r8d, r8d
mov qword [rsp + 0x20], rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
je 0x1400011a1
lea rcx, str.Step1_Error_n
call fcn.140001010
xor eax, eax
mov rsi, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x160]
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.140003620
add rsp, 0x140
pop rbp
ret
mov rcx, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
mov dword [rsp + 0x28], 4
lea rdx, str.Type
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rsp + 0x38], 1
call qword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
je 0x1400011e3
lea rcx, str.Step2_Error_n
jmp 0x14000116d
lea rax, [rsp + 0x30]
mov r9d, 2
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SystemCurrentControlSet_services
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14000136a
mov rdx, qword [0x140027cb8]
lea r8, [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyW]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rcx, [0x140021a28]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rbx, rax
test rax, rax
jne 0x140001255
lea rcx, str.Step4_Error_n
jmp 0x14000116d
lea rdx, str.RtlInitUnicodeString
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.NtLoadDriver
mov rcx, rbx
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.RtlAdjustPrivilege
mov rcx, rbx
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor r8d, r8d
lea r9, [rsp + 0x48]
lea edx, [r8 + 1]
lea ecx, [rdx + 9]
call rax
test eax, eax
jns 0x1400012ac
lea rcx, str.Step5_Error_n
jmp 0x14000116d
movaps xmm0, xmmword [str.RegistryMachineSystemCurrentControlSet_]
lea rcx, [rsp + 0x60]
movaps xmm1, xmmword [0x140021ab0]
mov rdx, qword [0x140027cb8]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm0, xmmword [0x140021ac0]
movaps xmmword [rbp - 0x80], xmm0
movaps xmm0, xmmword [0x140021ae0]
movaps xmmword [rsp + 0x70], xmm1
movaps xmm1, xmmword [0x140021ad0]
movaps xmmword [rbp - 0x60], xmm0
movsd xmm0, qword [0x140021af0]
movaps xmmword [rbp - 0x70], xmm1
xorps xmm1, xmm1
movsd qword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x48], xmm1
movups xmmword [rbp - 0x38], xmm1
movups xmmword [rbp - 0x28], xmm1
movups xmmword [rbp - 0x18], xmm1
movups xmmword [rbp - 8], xmm1
movups xmmword [rbp + 8], xmm1
movups xmmword [rbp + 0x18], xmm1
call qword [sym.imp.KERNEL32.dll_lstrcatW]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x50]
call rdi
lea rcx, [rsp + 0x50]
call rsi
test eax, eax
js 0x140001344
mov eax, 1
jmp 0x140001174
cmp eax, 0xc0000603
jne 0x140001357
lea rcx, str.The_drivers_certificate_has_been_revoked__please_wait_for_the_project_to_be_updated.._n
jmp 0x14000116d
mov edx, eax
lea rcx, str.Error_Code:___lx._n
call fcn.140001010
jmp 0x140001172
lea rcx, str.Step3_Error_n
jmp 0x14000116d
lea rcx, str.Reg_Add_Error__The_program_needs_to_be_run_with_administrator_privileges__n
call fcn.140001010
xor eax, eax
jmp 0x14000118c