Function at 0x140066470
Capabilities:
Set registry value

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov qword [rbp - 0x20], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov r12, r9
mov rbx, r8
mov rdi, rdx
xor r15d, r15d
mov qword [rbp - 0x28], r15
mov r14, qword [rbp + 0x58]
mov dword [r14], r15d
cmp qword [r8 + 0x18], 8
jb 0x1400664bd
mov rdx, qword [r8]
jmp 0x1400664c0
mov rdx, rbx
lea rax, [rbp - 0x28]
mov qword [rsp + 0x20], rax
mov r9d, 0x20106
xor r8d, r8d
mov rcx, qword [rdi]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [r14], eax
cmp eax, 2
jne 0x14006652f
cmp qword [rbx + 0x18], 8
jb 0x1400664ed
mov rbx, qword [rbx]
mov qword [rsp + 0x40], r15
lea rax, [rbp - 0x28]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x2011b
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov rcx, qword [rdi]
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov dword [r14], eax
test eax, eax
sete bl
test eax, eax
jne 0x140066717
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x18], xmm0
mov rdx, r15
mov qword [rbp - 8], rdx
mov r13, qword [rbp + 0x50]
mov rax, qword [r13]
mov rdi, qword [rax]
mov rcx, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
cmp rdi, rax
je 0x140066670
mov word [rbp - 0x30], r15w
lea r14, [rdi + 0x10]
cmp qword [r14 + 0x18], 8
jb 0x14006656f
mov rbx, qword [r14]
jmp 0x140066572
mov rbx, r14
cmp qword [r14 + 0x18], 8
jb 0x14006657e
mov r8, qword [r14]
jmp 0x140066581
mov r8, r14
mov rax, qword [r14 + 0x10]
lea rax, [r8 + rax*2]
cmp rbx, rax
je 0x1400665f0
cmp rbx, rcx
jae 0x1400665c2
cmp rsi, rbx
ja 0x1400665c2
mov r15, rbx
sub r15, rsi
sar r15, 1
cmp rcx, rdx
jne 0x1400665bb
lea rcx, [rbp - 0x18]
call fcn.14006a520
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
movzx eax, word [rsi + r15*2]
jmp 0x1400665df
cmp rcx, rdx
jne 0x1400665dc
lea rcx, [rbp - 0x18]
call fcn.14006a520
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
movzx eax, word [rbx]
mov word [rcx], ax
add rcx, 2
mov qword [rbp - 0x10], rcx
add rbx, 2
jmp 0x140066572
lea rax, [rbp - 0x30]
cmp rax, rcx
jae 0x140066636
lea rax, [rbp - 0x30]
cmp rsi, rax
ja 0x140066636
lea rbx, [rbp - 0x30]
sub rbx, rsi
sar rbx, 1
cmp rcx, rdx
jne 0x140066626
lea rcx, [rbp - 0x18]
call fcn.14006a520
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
movzx eax, word [rsi + rbx*2]
mov word [rcx], ax
add rcx, 2
xor r15d, r15d
jmp 0x14006665b
cmp rcx, rdx
jne 0x140066650
lea rcx, [rbp - 0x18]
call fcn.14006a520
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
xor r15d, r15d
mov word [rcx], r15w
add rcx, 2
mov qword [rbp - 0x10], rcx
mov rdi, qword [rdi]
cmp rdi, qword [r13]
jne 0x14006655f
mov r14, qword [rbp + 0x58]
mov word [rbp + 0x58], r15w
lea rax, [rbp + 0x58]
cmp rax, rcx
jae 0x1400666b0
lea rax, [rbp + 0x58]
cmp rsi, rax
ja 0x1400666b0
lea rbx, [rbp + 0x58]
sub rbx, rsi
sar rbx, 1
cmp rcx, rdx
jne 0x1400666a7
lea rcx, [rbp - 0x18]
call fcn.14006a520
mov rcx, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
movzx eax, word [rsi + rbx*2]
mov word [rcx], ax
jmp 0x1400666ca
cmp rcx, rdx
jne 0x1400666c6
lea rcx, [rbp - 0x18]
call fcn.14006a520
mov rcx, qword [rbp - 0x10]
mov rsi, qword [rbp - 0x18]
mov word [rcx], r15w
add rcx, 2
sub rcx, rsi
sar rcx, 1
cmp qword [r12 + 0x18], 8
jb 0x1400666e0
mov r12, qword [r12]
lea eax, [rcx + rcx]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rsi
mov r9d, 7
mov r8, r12
xor edx, edx
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
mov dword [r14], eax
test eax, eax
sete bl
test rsi, rsi
je 0x140066717
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_]
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x140066726
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov al, bl
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret