Function at 0x140030f18
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
push r15
mov rax, reloc.OLEAUT32.dll_SafeArrayGetElemsize
sub rsp, 8
mov qword [rsp], 0
dec rax
jne 0x140030f35
sub rsp, 0x28
call fcn.14008b7f0
mov rdx, qword [rsp + 0xc0]
lea rcx, [rsp + 0x28]
sub rsp, 0x10
call fcn.14008b860
add rsp, 0x10
mov rdx, qword [rsp + 0xc8]
lea rcx, [rsp + 0x30]
sub rsp, 0x10
call fcn.14008b860
add rsp, 0x10
mov rdx, qword [rsp + 0xd0]
lea rcx, [rsp + 0x38]
sub rsp, 0x10
call fcn.14008b860
add rsp, 0x10
mov rdx, qword [rsp + 0xe0]
lea rcx, [rsp + 0x40]
sub rsp, 0x10
call fcn.14008b860
add rsp, 0x10
push qword [rsp + 0x28]
pop rcx
call fcn.14003167a
push qword [rsp + 0x40]
movabs rcx, 0x14014fc72
pop rdx
call fcn.14008b6b0
or rax, rax
je 0x140031055
cmp dword [0x1402c34d0], 0
je 0x14003102d
sub rsp, 8
lea rax, [rsp + 0x58]
mov rax, rax
push rax
movsxd r15, dword [0x1402c34d8]
or r15, 0xf003f
mov rax, r15
push rax
push 0
push qword [0x1402c33fc]
push qword [0x1402c3424]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_RegOpenKeyExW
add rsp, 0x30
mov qword [rsp + 0x48], rax
jmp 0x140031050
lea rax, [rsp + 0x50]
mov rax, rax
push rax
push qword [0x1402c33fc]
push qword [0x1402c3424]
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_RegOpenKeyW
mov qword [rsp + 0x48], rax
jmp 0x1400310ee
lea rax, [rsp + 0x60]
mov rax, rax
push rax
push qword [0x1402c3424]
push qword [rsp + 0x50]
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_RegConnectRegistryW
movsxd rax, eax
mov qword [rsp + 0x58], rax
cmp dword [0x1402c34d0], 0
je 0x1400310cd
sub rsp, 8
lea rax, [rsp + 0x58]
mov rax, rax
push rax
movsxd r15, dword [0x1402c34d8]
or r15, 0xf003f
mov rax, r15
push rax
push 0
push qword [0x1402c33fc]
push qword [rsp + 0x88]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_RegOpenKeyExW
add rsp, 0x30
mov qword [rsp + 0x48], rax
jmp 0x1400310ee
lea rax, [rsp + 0x50]
mov rax, rax
push rax
push qword [0x1402c33fc]
push qword [rsp + 0x70]
pop rcx
pop rdx
pop r8
call sub.ADVAPI32.dll_RegOpenKeyW
mov qword [rsp + 0x48], rax
mov r15, qword [rsp + 0x48]
and r15, r15
jne 0x1400314c3
mov qword [rsp + 0x68], 0x400
push rcx
sub rsp, 0x28
call fcn.14008b510
add rsp, 0x28
pop rcx
push rax
sub rsp, 8
push rcx
sub rsp, 0x28
call fcn.14008b510
add rsp, 0x28
pop rcx
push rax
push qword [rsp + 0x80]
pop rcx
pop rdx
sub rsp, 0x20
call fcn.1400884f0
add rsp, 0x28
lea rcx, [rsp + 0x78]
pop rdx
call fcn.14008b5d0
push qword [rsp + 0xd8]
mov r15, 2
cmp r15, qword [rsp]
jne 0x1400311bc
sub rsp, 8
push qword [rsp + 0x48]
pop rcx
sub rsp, 0x20
call fcn.140088440
add rsp, 0x20
mov r15, rax
add r15, r15
inc r15
mov rax, r15
push rax
mov rax, qword [rsp + 0x50]
mov rax, rax
push rax
push 2
push 0
push qword [rsp + 0x60]
push qword [rsp + 0x88]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_RegSetValueExW
add rsp, 0x38
mov qword [rsp + 0x50], rax
jmp 0x14003149d
mov r15, 1
cmp r15, qword [rsp]
jne 0x140031227
sub rsp, 8
push qword [rsp + 0x48]
pop rcx
sub rsp, 0x20
call fcn.140088440
add rsp, 0x20
mov r15, rax
add r15, r15
inc r15
mov rax, r15
push rax
mov rax, qword [rsp + 0x50]
mov rax, rax
push rax
push 1
push 0
push qword [rsp + 0x60]
push qword [rsp + 0x88]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_RegSetValueExW
add rsp, 0x38
mov qword [rsp + 0x50], rax
jmp 0x14003149d
mov r15, 4
cmp r15, qword [rsp]
jne 0x140031299
sub rsp, 8
push qword [rsp + 0x48]
pop rcx
sub rsp, 0x20
call fcn.140088550
add rsp, 0x28
mov qword [rsp + 0x80], rax
sub rsp, 8
push 4
lea rax, [rsp + 0x90]
mov rax, rax
push rax
push 4
push 0
push qword [rsp + 0x60]
push qword [rsp + 0x88]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_RegSetValueExW
add rsp, 0x38
mov qword [rsp + 0x50], rax
jmp 0x14003149d
mov r15, 3
cmp r15, qword [rsp]
jne 0x14003149d
sub rsp, 8
push qword [rsp + 0x48]
pop rcx
sub rsp, 0x20
call fcn.140088440
add rsp, 0x28
mov r15, rax
mov rax, r15
mov rcx, 2
cqo
idiv rcx
mov r15, rax
mov qword [rsp + 0x88], r15
sub rsp, 8
push qword [rsp + 0x90]
pop rcx
sub rsp, 0x20
call fcn.140089c30
add rsp, 0x28
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 0
jmp 0x14003130c
mov r15, qword [rsp + 0x88]
dec r15
cmp r15, qword [rsp + 0x98]
jl 0x140031445
push rcx
sub rsp, 0x20
call fcn.14008b510
add rsp, 0x20
pop rcx
push rax
push rcx
sub rsp, 0x28
call fcn.14008b510
add rsp, 0x28
pop rcx
push rax
push 2
mov r15, qword [rsp + 0xb0]
add r15, r15
inc r15
mov rax, r15
push rax
push qword [rsp + 0x60]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call fcn.140088850
add rsp, 0x20
lea rcx, [rsp + 0xa8]
pop rdx
sub rsp, 0x28
call fcn.14008b5d0
add rsp, 0x28
push rcx
sub rsp, 0x20
call fcn.14008b510
add rsp, 0x20
pop rcx
push rax
push rcx
sub rsp, 0x28
call fcn.14008b510
add rsp, 0x28
pop rcx
push rax
movabs rcx, 0x14014f996
sub rsp, 0x28
call fcn.14008b560
add rsp, 0x28
mov rcx, qword [rsp + 0xb0]
sub rsp, 0x28
call fcn.14008b560
add rsp, 0x28
push rax
call fcn.14008b740
mov rdx, rax
pop rax
add qword [rsp], rdx
pop rcx
sub rsp, 0x20
call fcn.140088550
add rsp, 0x20
pop rcx
push rax
sub rsp, 0x20
call fcn.140037050
add rsp, 0x20
pop rax
mov qword [rsp + 0xa8], rax
sub rsp, 8
push qword [rsp + 0xb0]
mov r15, qword [rsp + 0xa0]
add r15, qword [rsp + 0xa8]
mov rax, r15
push rax
pop rcx
pop rdx
sub rsp, 0x20
call fcn.14008a040
add rsp, 0x28
inc qword [rsp + 0x98]
jno 0x14003130c
sub rsp, 8
push qword [rsp + 0x90]
push qword [rsp + 0xa0]
push 3
push 0
push qword [rsp + 0x60]
push qword [rsp + 0x88]
pop rcx
pop rdx
pop r8
pop r9
sub rsp, 0x20
call sub.ADVAPI32.dll_RegSetValueExW
add rsp, 0x38
mov qword [rsp + 0x50], rax
sub rsp, 8
push qword [rsp + 0x98]
pop rcx
sub rsp, 0x20
call fcn.140089ea0
add rsp, 0x28
add rsp, 8
push qword [rsp + 0x50]
pop rcx
call sub.ADVAPI32.dll_RegCloseKey
mov qword [rsp + 0xa8], 1
mov rax, qword [rsp + 0xa8]
jmp 0x1400314e6
push qword [rsp + 0x50]
pop rcx
call sub.ADVAPI32.dll_RegCloseKey
mov qword [rsp + 0xa8], 0
mov rax, qword [rsp + 0xa8]
jmp 0x1400314e6
push rax
mov rcx, qword [rsp + 0x48]
sub rsp, 0x28
call fcn.14008b900
add rsp, 0x28
mov rcx, qword [rsp + 0x78]
sub rsp, 0x28
call fcn.14008b900
add rsp, 0x28
mov rcx, qword [rsp + 0xa0]
sub rsp, 0x28
call fcn.14008b900
add rsp, 0x28
mov rcx, qword [rsp + 0x30]
sub rsp, 0x28
call fcn.14008b900
add rsp, 0x28
mov rcx, qword [rsp + 0x40]
sub rsp, 0x28
call fcn.14008b900
add rsp, 0x28
mov rcx, qword [rsp + 0x38]
sub rsp, 0x28
call fcn.14008b900
add rsp, 0x28
pop rax
add rsp, 0xb0
pop r15
ret