Function at 0x14000121c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0x98
mov eax, dword [0x140007648]
lea r9, [rbp + 0x6f]
xor ebx, ebx
mov dword [rbp + 0x6f], eax
movzx eax, word [0x14000764c]
mov r15d, 0xc0000001
mov word [rbp + 0x73], ax
mov r8d, ebx
mov al, byte [0x14000764e]
mov r13d, 0x51eb851f
mov byte [rbp + 0x75], al
lea edi, [rbx + 1]
mov qword [rbp + 0x77], rbx
mov sil, 0x38
mov eax, r13d
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, r8b
add r8d, edi
sub al, cl
add al, sil
xor byte [r9], al
add r9, rdi
cmp r8d, 7
jl 0x140001275
lea r8, [rbp + 0x7f]
lea rdx, [rbp + 0x77]
lea rcx, [rbp + 0x6f]
call fcn.1400025d4
cmp qword [rbp + 0x77], rbx
jne 0x14000132b
cmp byte [0x140007667], bl
movups xmm0, xmmword [0x140007650]
movsd xmm1, qword [0x140007660]
movups xmmword [rbp - 0x59], xmm0
movsd qword [rbp - 0x49], xmm1
je 0x1400012f8
lea r8, [rbp - 0x59]
mov eax, r13d
mul ebx
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, bl
add ebx, edi
sub al, cl
add al, sil
xor byte [r8], al
add r8, rdi
cmp ebx, 0x18
jl 0x1400012d6
lea r8, [rbp - 0x59]
movabs rsi, 0xfffff78000000330
mov eax, dword [rsi]
xor edx, edx
mov r9d, eax
imul r9, rax
lea ecx, [rdx + 0x4d]
imul r9, rax
imul r9, rax
xor r9, qword [0x140008018]
call r9
jmp 0x14000169f
movzx eax, word [0x140007690]
lea r9, [rbp - 0x59]
movups xmm0, xmmword [0x140007670]
mov word [rbp - 0x39], ax
mov r8d, ebx
movups xmm1, xmmword [0x140007680]
mov al, byte [0x140007692]
mov byte [rbp - 0x37], al
movups xmmword [rbp - 0x59], xmm0
movups xmmword [rbp - 0x49], xmm1
mov eax, r13d
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, r8b
add r8d, edi
sub al, cl
add al, sil
xor byte [r9], al
add r9, rdi
cmp r8d, 0x23
jl 0x14000135c
mov eax, dword [0x140007668]
lea r9, [rbp + 0x6f]
mov dword [rbp + 0x6f], eax
mov r8d, ebx
mov al, byte [0x14000766c]
mov byte [rbp + 0x73], al
mov eax, r13d
mul r8d
shr edx, 4
movsx eax, dl
imul edx, eax, 0x32
mov al, r8b
add r8d, edi
sub al, dl
add al, sil
xor byte [r9], al
add r9, rdi
cmp r8d, 5
jl 0x14000139b
mov rcx, qword [rbp + 0x77]
lea r8, [rbp - 0x59]
xor r9d, r9d
lea rdx, [rbp + 0x6f]
call fcn.140002398
mov r8, rax
test rax, rax
jne 0x140001438
movups xmm0, xmmword [0x140007698]
mov al, byte [0x1400076c0]
lea r8, [rbp - 0x59]
movups xmm1, xmmword [0x1400076a8]
mov byte [rbp - 0x31], al
movups xmmword [rbp - 0x59], xmm0
movsd xmm0, qword [0x1400076b8]
movsd qword [rbp - 0x39], xmm0
movups xmmword [rbp - 0x49], xmm1
mov eax, r13d
mul ebx
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, bl
add ebx, edi
sub al, cl
add al, sil
xor byte [r8], al
add r8, rdi
cmp ebx, 0x29
jl 0x14000140d
lea r8, [rbp - 0x59]
jmp 0x1400012fc
mov r11d, ebx
lea r9, [rax - 0x32]
mov edx, 2
cmp byte [r9], 0x48
jne 0x14000145f
lea eax, [rdx - 1]
cmp byte [rax + r8 - 0x32], 0x8d
jne 0x14000145f
mov eax, edx
cmp byte [rax + r8 - 0x32], 0xd
je 0x140001472
add r11d, edi
add edx, edi
add r9, rdi
cmp edx, 0x34
jae 0x14000169f
jmp 0x140001444
movsxd r14, dword [r8 + 3]
lea r12, [r8 - 0x2b]
mov ecx, r11d
add r14, 7
add r14, r8
add r12, rcx
movsxd rax, dword [rcx + r8 - 0x2f]
add r12, rax
je 0x14000169f
movabs rsi, 0xfffff78000000330
mov dl, dil
mov rcx, r12
mov eax, dword [rsi]
mov r8d, eax
imul r8, rax
imul r8, rax
imul r8, rax
xor r8, qword [0x140008058]
call r8
test al, al
jne 0x140001513
movups xmm0, xmmword [0x1400076c8]
movzx eax, word [0x1400076e8]
lea r8, [rbp - 0x59]
movups xmm1, xmmword [0x1400076d8]
mov word [rbp - 0x39], ax
movups xmmword [rbp - 0x59], xmm0
movups xmmword [rbp - 0x49], xmm1
mov eax, r13d
mul ebx
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, bl
add ebx, edi
sub al, cl
add al, 0x38
xor byte [r8], al
add r8, rdi
cmp ebx, 0x22
jl 0x1400014e9
lea r8, [rbp - 0x59]
jmp 0x140001306
mov rdi, r14
mov r13, r14
test r14, r14
je 0x140001681
movzx eax, word [rdi + 8]
mov word [rbp + 0x6f], ax
cmp word [rdi + 0xa], ax
jbe 0x1400015af
mov rax, qword [rbp + 0x67]
mov r9, qword [rdi + 0x10]
mov r11, qword [rax + 8]
mov qword [rbp + 0x77], r11
mov r8, r11
test r9, r9
je 0x1400015aa
test r11, r11
je 0x1400015aa
movzx ecx, word [r9]
mov r10, rbx
test cx, cx
je 0x1400015aa
movzx r8d, word [r8]
movzx eax, cx
sub cx, 0x41
cmp cx, 0x19
lea ecx, [r8 + 0x20]
lea edx, [rax + 0x20]
cmova edx, eax
lea eax, [r8 - 0x41]
cmp ax, 0x19
mov rax, qword [rbp + 0x77]
cmova ecx, r8d
add rax, 2
cmp edx, ecx
mov r8, r11
cmove r8, rax
mov qword [rbp + 0x77], r8
cmp word [r8], bx
je 0x1400015bd
inc r10
movzx ecx, word [r9 + r10*2]
test cx, cx
jne 0x140001559
mov rax, qword [rbp + 0x67]
cmp qword [rdi], r14
je 0x1400015fe
mov r13, rdi
mov rdi, qword [rdi]
test rdi, rdi
jmp 0x14000151c
movzx r8d, word [rbp + 0x6f]
xor edx, edx
mov rcx, r9
call fcn.140006b80
mov rax, qword [rdi]
xor edx, edx
mov dword [rdi + 8], ebx
mov rcx, rdi
mov qword [r13], rax
mov eax, dword [rsi]
mov r8d, eax
imul r8, rax
imul r8, rax
imul r8, rax
xor r8, qword [0x140008030]
call r8
mov rdi, r14
mov r15d, ebx
jmp 0x1400015b5
movups xmm0, xmmword [rax]
lea r8, [rbp - 0x29]
movaps xmm1, xmmword [0x1400076f0]
movdqu xmmword [rbp - 0x59], xmm0
movaps xmm0, xmmword [0x140007700]
movups xmmword [rbp - 0x19], xmm0
movaps xmm0, xmmword [0x140007720]
movups xmmword [rbp - 0x29], xmm1
movaps xmm1, xmmword [0x140007710]
movups xmmword [rbp + 7], xmm0
movups xmmword [rbp - 9], xmm1
mov eax, 0x51eb851f
mul ebx
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, bl
inc ebx
sub al, cl
add al, 0x38
xor byte [r8], al
inc r8
cmp ebx, 0x40
jl 0x140001636
mov eax, dword [rsi]
lea r9, [rbp - 0x59]
mov r10d, eax
lea r8, [rbp - 0x29]
imul r10, rax
xor edx, edx
imul r10, rax
lea ecx, [rdx + 0x4d]
imul r10, rax
xor r10, qword [0x140008018]
call r10
mov edx, dword [rsi]
mov rcx, r12
mov r8d, edx
imul r8, rdx
imul r8, rdx
imul r8, rdx
xor r8, qword [0x140008050]
call r8
mov eax, r15d
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret