Function at 0x140068854
Capabilities:
Set registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x78
mov rax, qword [0x1400b77a8]
xor rax, rsp
mov qword [rbp - 0x18], rax
mov r15, qword [rbp + 0x68]
lea rax, [rbp - 0x30]
xor r12d, r12d
mov qword [rbp - 0x38], rax
xor eax, eax
mov dword [rbp - 0x40], 0x20676572
mov dword [rbp - 0x30], eax
mov r14, r9
mov qword [rbp - 0x28], r12
mov rsi, r8
mov dword [rbp - 0x20], 0x80004005
test rcx, rcx
je 0x140068a61
test rdx, rdx
je 0x140068a61
mov r8, rdx
lea r9d, [rax + 7]
mov rdx, rcx
lea rcx, [rbp - 0x40]
call fcn.14001090c
mov ebx, eax
test eax, eax
js 0x140068a66
or rdi, 0xffffffffffffffff
mov r13d, 0x80070000
test rsi, rsi
je 0x140068929
mov rax, rdi
inc rax
cmp word [rsi + rax*2], r12w
jne 0x1400688e3
mov rcx, qword [rbp - 0x28]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
lea rdx, [0x1400ac248]
mov r9d, 1
mov qword [rsp + 0x20], rsi
xor r8d, r8d
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegSetValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jle 0x140068929
movzx ebx, ax
or ebx, r13d
test ebx, ebx
js 0x140068a66
test r14, r14
je 0x14006897f
mov rax, rdi
inc rax
cmp word [r14 + rax*2], r12w
jne 0x140068939
mov rcx, qword [rbp - 0x28]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
lea rdx, str.Printer
mov r9d, 1
mov qword [rsp + 0x20], r14
xor r8d, r8d
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegSetValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jle 0x14006897f
movzx ebx, ax
or ebx, r13d
test ebx, ebx
js 0x140068a66
test r15, r15
je 0x1400689d2
inc rdi
cmp word [r15 + rdi*2], r12w
jne 0x14006898c
mov rcx, qword [rbp - 0x28]
lea eax, [rdi*2 + 2]
mov dword [rsp + 0x28], eax
lea rdx, str.Provider
mov r9d, 1
mov qword [rsp + 0x20], r15
xor r8d, r8d
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegSetValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jle 0x1400689d2
movzx ebx, ax
or ebx, r13d
test ebx, ebx
js 0x140068a66
mov eax, dword [rbp + 0x70]
lea rdx, str.LocalConnection
mov rcx, qword [rbp - 0x28]
mov edi, 4
mov dword [rbp - 0x48], eax
mov r9d, edi
lea rax, [rbp - 0x48]
mov dword [rsp + 0x28], edi
xor r8d, r8d
mov qword [rsp + 0x20], rax
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegSetValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jle 0x140068a1b
movzx ebx, ax
or ebx, r13d
test ebx, ebx
js 0x140068a66
mov eax, dword [rbp + 0x78]
lea rdx, str.Attribute
mov rcx, qword [rbp - 0x28]
mov r9d, edi
mov dword [rbp - 0x48], eax
xor r8d, r8d
lea rax, [rbp - 0x48]
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rax
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegSetValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jle 0x140068a5b
movzx ebx, ax
or ebx, r13d
test ebx, ebx
jns 0x140068a97
jmp 0x140068a66
mov ebx, 0x80070057
mov rcx, qword [0x1400b72f8]
lea rax, [0x1400b72f8]
cmp rcx, rax
je 0x140068a97
test byte [rcx + 0x44], 0x20
je 0x140068a97
mov rcx, qword [rcx + 0x38]
lea r8, [0x14009cbe8]
mov edx, 0x28
mov r9d, ebx
call fcn.140030cf8
lea rcx, [rbp - 0x40]
call fcn.140010df0
mov rdx, qword [rbp - 0x38]
lea rcx, [rbp - 0x38]
call fcn.140010c30
mov eax, ebx
mov rcx, qword [rbp - 0x18]
xor rcx, rsp
call fcn.1400133c0
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret