Function at 0x140028440
Capabilities:
Set registry value

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x98], rbx
mov rax, qword [0x14035dc30]
xor rax, rbp
mov qword [rbp + 0x30], rax
mov r15, r9
mov r14d, r8d
mov r12, rcx
xor ebx, ebx
mov dword [rbp], ebx
mov esi, ebx
mov qword [rbp + 8], rbx
mov qword [rbp + 0x18], rbx
mov r13d, ebx
mov dword [rbp + 0x10], ebx
mov eax, dword [rcx + 8]
test eax, eax
jne 0x1400287bc
mov eax, dword [rbp + 0xa8]
test al, 1
jne 0x14002856d
cmp r8d, 1
je 0x1400284c2
cmp r8d, 7
jne 0x140028546
test r15, r15
je 0x140028546
mov eax, dword [rbp + 0xa0]
test eax, eax
je 0x14002854c
cmp r14d, 1
jne 0x1400284e3
call fcn.140029220
mov edi, eax
jmp 0x1400287bc
mov qword [rbp + 8], rbx
mov dword [rbp], ebx
lea rcx, [rbp]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 8]
mov r8d, eax
mov rdx, r15
call fcn.140029480
mov edi, eax
mov rbx, qword [rbp + 8]
test eax, eax
jne 0x140028532
mov eax, dword [rbp]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
lea r9d, [rdi + 7]
xor r8d, r8d
mov rdx, qword [rbp + 0x88]
mov rcx, qword [r12]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edi, eax
test rbx, rbx
je 0x140028566
mov rcx, rbx
call fcn.1402767a0
mov eax, edi
jmp 0x1400287bc
mov eax, dword [rbp + 0xa0]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r15
mov r9d, r14d
xor r8d, r8d
mov rcx, qword [rcx]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edi, eax
mov eax, edi
jmp 0x1400287bc
test r15, r15
je 0x1400287b7
mov r8d, dword [rbp + 0xa0]
cmp r8d, 1
jb 0x1400287b7
cmp r14d, 1
je 0x1400285ad
cmp r14d, 7
je 0x1400285a3
mov rsi, r15
mov qword [rbp + 8], r15
mov dword [rbp], r8d
jmp 0x140028686
cmp r14d, 1
jne 0x14002864f
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
mov r9d, 0xffffffff
mov r8, r15
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jne 0x1400285e4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov eax, ebx
jmp 0x1400285e9
mov dword [rbp], eax
mov edi, ebx
test edi, edi
jne 0x140028783
test eax, eax
jne 0x1400285fa
lea edi, [rax + 0x57]
jmp 0x140028674
mov edi, eax
mov ecx, eax
call fcn.14027bb00
mov rsi, rax
mov qword [rbp + 8], rax
test rax, rax
jne 0x140028614
lea edi, [rax + 0xe]
jmp 0x140028674
mov r8, rdi
xor edx, edx
mov rcx, rsi
call fcn.14026c200
lea r9, [rbp]
mov r8, rsi
mov rdx, r15
mov ecx, 3
call fcn.14002a6a0
mov edi, eax
test eax, eax
je 0x140028672
mov rcx, rsi
call fcn.1402767a0
mov rsi, rbx
mov qword [rbp + 8], rbx
mov dword [rbp], ebx
jmp 0x140028674
cmp r14d, 7
jne 0x140028672
lea rax, [rbp]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 8]
mov rdx, r15
call fcn.140029480
mov edi, eax
mov rsi, qword [rbp + 8]
jmp 0x140028674
mov edi, ebx
test edi, edi
jne 0x140028783
mov r13d, 1
mov dword [rbp + 0x10], r13d
mov r15d, dword [rbp]
add r15d, 0x20
mov dword [rbp + 0x14], r15d
mov eax, r15d
lea rcx, [r15 + 0x10]
mov rdx, rbx
cmp rcx, rax
cmova rdx, rcx
test rdx, rdx
je 0x140028710
cmp rdx, 0x400
ja 0x1400286ee
lea rax, [rdx + 0xf]
cmp rax, rdx
ja 0x1400286c4
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.140269fb0
sub rsp, rax
lea rbx, [rsp + 0x40]
mov qword [rbp + 0x20], rbx
test rbx, rbx
je 0x140028710
mov dword [rbx], 0xcccc
add rbx, 0x10
mov qword [rbp + 0x20], rbx
jmp 0x140028710
mov rcx, rdx
call fcn.14027bb00
mov rbx, rax
mov qword [rbp + 0x28], rax
test rax, rax
je 0x140028710
mov dword [rax], 0xdddd
add rbx, 0x10
mov qword [rbp + 0x28], rbx
mov qword [rbp + 0x18], rbx
jmp 0x140028739
test rbx, rbx
jne 0x140028743
lea edi, [rbx + 8]
jmp 0x140028783
mov dword [rsp + 0x20], r15d
mov r9, rbx
mov r8d, r14d
mov edx, dword [rbp]
mov rcx, rsi
call fcn.140028c20
mov edi, eax
test eax, eax
jne 0x140028783
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], rbx
lea r9d, [rax + 3]
xor r8d, r8d
mov rdx, qword [rbp + 0x88]
mov rcx, qword [r12]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edi, eax
test rbx, rbx
je 0x140028799
lea rcx, [rbx - 0x10]
cmp dword [rcx], 0xdddd
jne 0x140028799
call fcn.1402767a0
test r13d, r13d
je 0x140028566
test rsi, rsi
je 0x140028566
mov rcx, rsi
call fcn.1402767a0
mov eax, edi
jmp 0x1400287bc
mov eax, 0x57
mov rcx, qword [rbp + 0x30]
xor rcx, rbp
call fcn.140269300
mov rbx, qword [rbp + 0x98]
lea rsp, [rbp + 0x40]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret