Function at 0x180001020
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0xa8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x10], xmm9
movapd xmmword [rbp], xmm8
movapd xmmword [rbp - 0x10], xmm7
movaps xmmword [rbp - 0x20], xmm6
mov qword [rbp - 0x28], 0xfffffffffffffffe
mov r14, rcx
xorpd xmm8, xmm8
xorps xmm0, xmm0
call fcn.1800013a0
movsd xmm0, qword [0x1800283e0]
call fcn.1800013a0
xor esi, esi
movsd xmm9, qword [0x1800283e8]
movsd xmm6, qword [0x1800283f0]
nop word cs:[rax + rax]
nop dword [rax]
xorps xmm0, xmm0
cvtsi2sd xmm0, rsi
add rsi, 1
addsd xmm0, xmm9
mulsd xmm0, xmm6
addsd xmm0, xmm8
call fcn.1800013a0
cmp rsi, 0x30d3f
jne 0x180001090
xor esi, esi
xorpd xmm7, xmm7
nop
xorps xmm0, xmm0
cvtsi2sd xmm0, rsi
add rsi, 1
mulsd xmm0, xmm6
addsd xmm0, xmm7
call fcn.1800013a0
cmp rsi, 0x30d3f
jne 0x1800010c0
xorpd xmm8, xmm8
xorpd xmm0, xmm0
call fcn.1800013a0
movsd xmm0, qword [0x1800283e0]
call fcn.1800013a0
xor esi, esi
nop
xorps xmm0, xmm0
cvtsi2sd xmm0, rsi
add rsi, 1
addsd xmm0, xmm9
mulsd xmm0, xmm6
addsd xmm0, xmm8
call fcn.1800013a0
cmp rsi, 0x30d3f
jne 0x180001100
xor esi, esi
xorpd xmm7, xmm7
nop
xorps xmm0, xmm0
cvtsi2sd xmm0, rsi
add rsi, 1
mulsd xmm0, xmm6
addsd xmm0, xmm7
call fcn.1800013a0
cmp rsi, 0x30d3f
jne 0x180001130
movabs rax, 0xb60c11f5536de743
mov qword [rbp - 0x33], rax
mov word [rbp - 0x2b], 0x9e81
mov byte [rbp - 0x29], 0x98
movaps xmm0, xmmword [0x180028400]
movaps xmmword [rbp - 0x60], xmm0
mov word [rbp - 0x50], 0x282b
mov byte [rbp - 0x4e], 0xe2
mov rcx, qword [0x18003bb58]
test rcx, rcx
jne 0x1800011a3
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x180001315
mov rcx, rax
mov qword [0x18003bb58], rax
xor r15d, r15d
mov r8d, 0x3400
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x180001315
mov rbx, rax
lea rdx, [0x180028510]
mov r8d, 0x3400
mov rcx, rax
call fcn.180019f90
lea r8, [rbp - 0x5f]
movabs r9, 0xd79435e50d79435f
nop word cs:[rax + rax]
nop dword [rax]
mov ecx, 1
xor esi, esi
nop word [rax + rax]
mov rax, rcx
mul r9
shr rdx, 4
imul rdi, rdx, 0xffffffffffffffed
mov rax, rsi
mul r9
add rdi, r8
shr rdx, 4
imul rax, rdx, 0xffffffffffffffed
add rax, rbp
add rax, 0xffffffffffffffa0
movzx eax, byte [rsi + rax]
xor byte [rbx + rsi], al
movzx eax, byte [rsi + rdi]
xor byte [rbx + rsi + 1], al
lea rax, [rsi + 2]
add rcx, 2
mov rsi, rax
cmp rax, 0x3400
jne 0x180001200
add r15d, 1
cmp r15d, 0x3e9
jne 0x1800011f0
xor r8d, r8d
lea r9, [rbp - 0x32]
movabs r10, 0x2e8ba2e8ba2e8ba3
nop word cs:[rax + rax]
mov ecx, 1
xor esi, esi
nop word [rax + rax]
mov rax, rcx
mul r10
shr rdx, 1
imul rdi, rdx, 0xfffffffffffffff5
mov rax, rsi
mul r10
add rdi, r9
shr rdx, 1
imul rax, rdx, 0xfffffffffffffff5
add rax, rbp
add rax, 0xffffffffffffffcd
movzx eax, byte [rsi + rax]
xor byte [rbx + rsi], al
movzx eax, byte [rsi + rdi]
xor byte [rbx + rsi + 1], al
lea rax, [rsi + 2]
add rcx, 2
mov rsi, rax
cmp rax, 0x3400
jne 0x180001280
add r8d, 1
cmp r8d, 0x3e9
jne 0x180001270
mov qword [r14], rbx
mov rcx, r14
mov qword [rbp - 0x40], rbx
call fcn.1800188e0
mov rcx, qword [0x18003bb58]
xor edx, edx
mov r8, qword [rbp - 0x40]
movaps xmm6, xmmword [rbp - 0x20]
movaps xmm7, xmmword [rbp - 0x10]
movaps xmm8, xmmword [rbp]
movaps xmm9, xmmword [rbp + 0x10]
add rsp, 0xa8
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
jmp fcn.180018e4d
mov ecx, 0x3400
mov edx, 1
call fcn.180026270
ud2