Function at 0x14002a8f0
Capabilities:
Set registry value

Disassembly:
mov r11, rsp
push rdi
push r14
push r15
sub rsp, 0x1e0
mov qword [r11 - 0x130], 0xfffffffffffffffe
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov rax, qword [0x140078790]
xor rax, rsp
mov qword [rsp + 0x1d0], rax
mov rdi, rcx
mov r8d, 0xa
lea rdx, str.CTPMData::ToRegistry
lea rcx, [r11 - 0x118]
call fcn.14002de00
nop
xor r15d, r15d
mov ebx, r15d
mov qword [rsp + 0x60], r15
mov dword [rsp + 0x68], r15d
mov qword [rsp + 0x70], r15
mov esi, 0x2001f
mov r9d, esi
lea r8, str.SOFTWAREDigitalPersonaDPHOSTTPMData
mov r14, 0xffffffff80000002
mov rdx, r14
lea rcx, [rsp + 0x60]
call fcn.14000bad4
test eax, eax
je 0x14002aabc
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r15d
xor r9d, r9d
lea r8, str.SOFTWAREDigitalPersonaDPHOSTTPMData
mov rdx, r14
lea rcx, [rsp + 0x60]
call fcn.1400081d0
test eax, 0x1fff0000
je 0x14002a9c0
cmp eax, 0x80000000
jb 0x14002a9d7
mov ecx, eax
call fcn.140032390
test eax, eax
je 0x14002a9d7
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
call fcn.140032390
lea rcx, [rsp + 0x150]
call fcn.1400101a8
nop
lea rax, vtable.ATL::CAcl.0
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], r15
mov byte [rsp + 0xa0], r15b
mov dword [rsp + 0xa4], 2
lea rax, vtable.ATL::CDacl.0
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 0xd0], rax
lea rcx, [rsp + 0xa8]
call fcn.140002bb8
nop
mov r9b, 3
mov r8d, 0xf003f
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0x90]
call fcn.140006030
lea rcx, [rsp + 0x90]
call fcn.14000a028
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
xor r9d, r9d
lea edx, [r9 + 4]
mov r8d, 0x80000004
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_SetSecurityInfo]
mov ecx, 1
test eax, eax
cmovne ebx, ecx
mov dword [rsp + 0x40], ebx
lea rcx, [rsp + 0x90]
call fcn.140004ca4
nop
lea rcx, [rsp + 0x150]
call fcn.14000501c
jmp 0x14002aac1
mov rsi, qword [rsp + 0x60]
mov dword [rsp + 0x78], r15d
mov qword [rsp + 0x80], r15
mov dword [rsp + 0x88], r15d
lea rax, [rdi + 0x28]
lea rcx, [rdi + 0x30]
neg rax
sbb r14, r14
and r14, rcx
cmp qword [rdi + 0x20], 8
jb 0x14002aaf4
mov rdx, qword [rdi + 8]
jmp 0x14002aaf8
lea rdx, [rdi + 8]
lea rcx, [rsp + 0x78]
call fcn.140016224
mov rcx, rax
mov rdx, r14
call fcn.1400160dc
lea rdi, vtable.CCryptBlob_struct__CRYPTOAPI_BLOB__class__heap_allocator_.0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x58], r15
mov dword [rsp + 0x50], r15d
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14002ab37
call fcn.140009660
mov qword [rsp + 0x58], r15
mov dword [rsp + 0x50], r15d
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x78]
call fcn.14001a508
lea rdx, [0x1400556b0]
lea rcx, [rsp + 0x48]
call fcn.14002952c
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r9d, 3
xor r8d, r8d
lea rdx, [0x14004e958]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, 0x1fff0000
je 0x14002aba1
cmp eax, 0x80000000
jb 0x14002abb9
mov ecx, eax
call fcn.140032390
test eax, eax
je 0x14002abb9
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
call fcn.140032390
nop
mov qword [rsp + 0x48], rdi
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14002abcd
call fcn.140009660
mov qword [rsp + 0x58], r15
mov dword [rsp + 0x50], r15d
lea rcx, [rsp + 0x78]
call fcn.1400174d8
nop
test rsi, rsi
je 0x14002abf5
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x60], r15
mov dword [rsp + 0x68], r15d
jmp 0x14002ac00
mov r8d, ebx
lea rdx, [0x14004ee5e]
lea rcx, [rsp + 0xe0]
call fcn.140030b9c
nop
lea rcx, [rsp + 0xe0]
call fcn.14002e7a8
mov eax, ebx
mov rcx, qword [rsp + 0x1d0]
xor rcx, rsp
call fcn.140033cb0
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rdi
ret