Function at 0x180029630
Capabilities:
Set registry value

Disassembly:
mov r11, rsp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x90
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rbp
mov rax, qword [0x180101090]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov rbx, rcx
mov qword [r11 - 0x38], 7
xor ebp, ebp
mov qword [r11 - 0x40], rbp
mov word [rsp + 0x68], bp
lea r8d, [rbp + 1]
lea rdx, [0x1800cdd2c]
lea rcx, [r11 - 0x58]
call fcn.18000f510
nop
mov r12, qword [rbx + 0x30]
mov rdi, qword [r12]
mov rsi, qword [rbx]
movabs r13, 0x7ffffffffffffffe
lea r14d, [rbp + 0x7c]
nop dword [rax]
test rsi, rsi
je 0x1800296ba
cmp rsi, rsi
je 0x1800296bf
call fcn.18009a80c
cmp rdi, r12
je 0x18002986b
test rsi, rsi
jne 0x1800296d7
call fcn.18009a80c
mov r11, rbp
jmp 0x1800296da
mov r11, qword [rsi]
cmp rdi, qword [r11 + 0x30]
jne 0x1800296e5
call fcn.18009a80c
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x48], rbp
mov word [rsp + 0x38], bp
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rdi + 0x18]
lea rcx, [rsp + 0x30]
call fcn.18000db80
lea rcx, [rsp + 0x30]
call fcn.180029550
test eax, eax
je 0x1800297ff
test rsi, rsi
jne 0x18002972e
call fcn.18009a80c
mov r11, rbp
jmp 0x180029731
mov r11, qword [rsi]
cmp rdi, qword [r11 + 0x30]
jne 0x18002973c
call fcn.18009a80c
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rdi + 0x18]
lea rcx, [rsp + 0x60]
call fcn.180011750
or r11, 0xffffffffffffffff
mov rcx, qword [rsp + 0x78]
sub r11, rcx
cmp r11, 1
ja 0x18002976d
call fcn.180099ecc
mov rcx, qword [rsp + 0x78]
lea rbx, [rcx + 1]
cmp rbx, r13
jbe 0x180029780
call fcn.180099ecc
mov rcx, qword [rsp + 0x78]
cmp qword [rsp + 0x80], rbx
jae 0x1800297a1
mov r8, rcx
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.180011850
mov rcx, qword [rsp + 0x78]
jmp 0x1800297c4
test rbx, rbx
jne 0x1800297c4
mov qword [rsp + 0x78], rbp
lea rax, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae rax, qword [rsp + 0x68]
mov word [rax], bp
jmp 0x1800297ff
test rbx, rbx
je 0x1800297ff
lea rax, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae rax, qword [rsp + 0x68]
mov word [rax + rcx*2], r14w
mov qword [rsp + 0x78], rbx
lea rax, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae rax, qword [rsp + 0x68]
mov word [rax + rbx*2], bp
test rsi, rsi
jne 0x180029809
call fcn.18009a80c
cmp byte [rdi + 0x41], 0
je 0x180029819
call fcn.18009a80c
jmp 0x1800296b0
mov rax, qword [rdi + 0x10]
cmp byte [rax + 0x41], 0
jne 0x180029844
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x41], 0
jne 0x1800296b0
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x41], 0
je 0x180029833
jmp 0x1800296b0
mov rax, qword [rdi + 8]
cmp byte [rax + 0x41], 0
jne 0x180029863
nop
cmp rdi, qword [rax + 0x10]
jne 0x180029863
mov rdi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x41], 0
je 0x180029850
mov rdi, rax
jmp 0x1800296b0
cmp qword [rsp + 0x80], 8
jb 0x180029882
mov rbx, qword [rsp + 0x68]
test rbx, rbx
jne 0x180029887
jmp 0x180029892
lea rbx, [rsp + 0x68]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebp, eax
lea eax, [rbp + rbp + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
mov r9d, 1
lea r8, str.foAllExts
lea rdx, str.SoftwareWOW6432Nodeprojonepodlp_smpcache_
mov rcx, 0xffffffff80000002
call qword [sym.imp.SHLWAPI.dll_SHSetValueW]
nop
cmp qword [rsp + 0x80], 8
jb 0x1800298d6
mov rcx, qword [rsp + 0x68]
call fcn.18009a864
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.180099fe0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret