Function at 0x140004800
Capabilities:
Persist via run registry key
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x1400c3700]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rdi, rdx
mov rbx, rcx
mov qword [rbp - 0x21], rdx
xor r15d, r15d
lea rax, [rbp - 0x29]
mov qword [rsp + 0x20], rax
lea r9d, [r15 + 2]
xor r8d, r8d
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersionRun
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140004d29
cmp qword [rbx + 0x18], 0xf
jbe 0x14000487e
mov rsi, qword [rbx]
add rsi, qword [rbx + 0x10]
mov rbx, qword [rbx]
jmp 0x140004885
mov rsi, qword [rbx + 0x10]
add rsi, rbx
xorps xmm0, xmm0
movups xmmword [rbp + 7], xmm0
movabs rdx, 0x7fffffffffffffff
mov ecx, 0xa
movabs r9, 0x7ffffffffffffffe
mov qword [rbp + 0x17], r15
cmp rbx, rsi
jne 0x1400048c2
mov r14d, 7
mov qword [rbp + 0x1f], r14
mov word [rbp + 7], r15w
jmp 0x1400049d1
sub rsi, rbx
mov qword [rbp + 0x1f], 7
cmp rsi, r9
ja 0x140004daf
mov r14d, 7
cmp rsi, r14
jbe 0x140004986
mov r14, rsi
or r14, 7
cmp r14, r9
jbe 0x1400048fa
mov r14, r9
lea rcx, [rdx + rdx]
jmp 0x14000491a
cmp r14, rcx
cmovb r14, rcx
lea rcx, [r14 + 1]
cmp rcx, rdx
ja 0x140004db5
add rcx, rcx
cmp rcx, 0x1000
jb 0x14000495b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004db5
mov rcx, rax
call fcn.1400690b8
mov rcx, rax
test rax, rax
je 0x140004da3
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
movabs r9, 0x7ffffffffffffffe
mov qword [rbp + 7], rax
mov qword [rbp + 0x1f], r14
jmp 0x14000498a
test rcx, rcx
je 0x140004979
call fcn.1400690b8
movabs r9, 0x7ffffffffffffffe
mov qword [rbp + 7], rax
mov qword [rbp + 0x1f], r14
jmp 0x14000498a
mov rax, r15
mov qword [rbp + 7], rax
mov qword [rbp + 0x1f], r14
jmp 0x14000498a
mov rax, qword [rbp + 7]
lea r8, [rbp + 7]
cmp r14, 7
cmova r8, rax
mov rcx, r8
mov rdx, rsi
test rsi, rsi
je 0x1400049b5
movsx eax, byte [rbx]
mov word [rcx], ax
lea rcx, [rcx + 2]
lea rbx, [rbx + 1]
sub rdx, 1
jne 0x1400049a1
mov qword [rbp + 0x17], rsi
mov word [r8 + rsi*2], r15w
mov r14, qword [rbp + 0x1f]
movabs rdx, 0x7fffffffffffffff
mov ecx, 0xa
mov r15, qword [rdi + 0x10]
mov rax, r9
sub rax, r15
cmp rax, 1
jb 0x140004dbb
mov r13, rdi
cmp qword [rdi + 0x18], 7
jbe 0x1400049f2
mov r13, qword [rdi]
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x39], xmm1
lea r12, [r15 + 1]
mov esi, 7
lea rbx, [rbp - 0x49]
cmp r12, rsi
jbe 0x140004a8a
mov rsi, r12
or rsi, 7
cmp rsi, r9
jbe 0x140004a28
mov rsi, r9
lea rcx, [rdx + rdx]
jmp 0x140004a49
cmp rsi, 0xa
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, rdx
ja 0x140004dc1
add rcx, rcx
cmp rcx, 0x1000
jb 0x140004a75
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140004dc1
mov rcx, rax
call fcn.1400690b8
test rax, rax
je 0x140004dc7
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140004a86
test rcx, rcx
je 0x140004a84
call fcn.1400690b8
mov rbx, rax
jmp 0x140004a86
xor ebx, ebx
mov qword [rbp - 0x49], rbx
mov qword [rbp - 0x39], r12
mov qword [rbp - 0x31], rsi
mov esi, Ordinal_35
mov word [rbx], si
lea rcx, [rbx + 2]
lea r8, [r15 + r15]
mov rdx, r13
call fcn.140099630
xor r15d, r15d
mov word [rbx + r12*2], r15w
mov rcx, qword [rbp - 0x39]
mov rdx, qword [rbp - 0x31]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x140004ae4
lea rax, [rcx + 1]
mov qword [rbp - 0x39], rax
lea rax, [rbp - 0x49]
cmp rdx, 7
cmova rax, qword [rbp - 0x49]
mov dword [rax + rcx*2], esi
lea rax, [rbp - 0x49]
jmp 0x140004b04
mov qword [rsp + 0x20], 1
lea r9, [0x1400b758c]
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp - 0x49]
call fcn.140007480
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 9], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
mov rdx, qword [rbp - 0x31]
cmp rdx, 7
jbe 0x140004b72
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004b6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004dc7
call fcn.1400690b0
lea rcx, [rbp - 0x19]
cmp qword [rbp - 1], 7
cmova rcx, qword [rbp - 0x19]
mov eax, dword [rbp - 9]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov r9d, 1
xor r8d, r8d
lea rdx, [0x1400b7590]
mov rcx, qword [rbp - 0x29]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rbp - 0x29]
test eax, eax
jne 0x140004c94
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdx, qword [rbp - 1]
cmp rdx, 7
jbe 0x140004bff
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004bfa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004dd3
call fcn.1400690b0
movdqa xmm0, xmmword [0x1400b7600]
movdqu xmmword [rbp - 9], xmm0
mov word [rbp - 0x19], r15w
cmp r14, 7
jbe 0x140004c4e
lea rdx, [r14*2 + 2]
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004c48
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004da3
call fcn.1400690b0
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 7
jbe 0x140004c8d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x140004c88
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140004dcd
mov rcx, r8
call fcn.1400690b0
mov al, 1
jmp 0x140004d66
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdx, qword [rbp - 1]
cmp rdx, 7
jbe 0x140004cda
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004cd5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004dd3
call fcn.1400690b0
movdqa xmm0, xmmword [0x1400b7600]
movdqu xmmword [rbp - 9], xmm0
mov word [rbp - 0x19], r15w
cmp r14, 7
jbe 0x140004d29
lea rdx, [r14*2 + 2]
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004d23
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004da3
call fcn.1400690b0
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 7
jbe 0x140004d64
lea rdx, [rdx*2 + 2]
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x140004d5f
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140004da9
mov rcx, r8
call fcn.1400690b0
xor al, al
mov word [rdi], r15w
mov qword [rdi + 0x18], 7
mov qword [rdi + 0x10], r15
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140069090
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140070428
nop
call fcn.140070428
nop
call fcn.1400013c0
int3
call fcn.140001320
nop
call fcn.1400013c0
int3
call fcn.140001320
int3
call fcn.140070428
nop
call fcn.140070428
nop
call fcn.140070428
int3