Function at 0x1400f9ea0
Capabilities:
Encode data using xor
Encrypt data using salsa20 or chacha

Disassembly:
sub rsp, 0x158
movaps xmmword [rsp + 0x140], xmm15
movaps xmmword [rsp + 0x130], xmm14
movaps xmmword [rsp + 0x120], xmm13
movaps xmmword [rsp + 0x110], xmm12
movaps xmmword [rsp + 0x100], xmm11
movaps xmmword [rsp + 0xf0], xmm10
movaps xmmword [rsp + 0xe0], xmm9
movaps xmmword [rsp + 0xd0], xmm8
movaps xmmword [rsp + 0xc0], xmm7
movaps xmmword [rsp + 0xb0], xmm6
movdqa xmm3, xmmword [rcx]
movdqa xmm5, xmmword [rcx + 0x20]
mov rax, qword [rcx + 0x20]
lea r9, [rax + 1]
movd xmm4, r9d
shr r9, 0x20
movdqa xmm14, xmm5
pslldq xmm14, 8
shufps xmm14, xmm5, 0xe8
movd xmm0, r9d
por xmm0, xmm14
movdqa xmm1, xmm0
pslldq xmm1, 8
shufps xmm1, xmm0, 0xe8
por xmm4, xmm1
lea r9, [rax + 2]
movd xmm12, r9d
shr r9, 0x20
movd xmm0, r9d
por xmm0, xmm14
movdqa xmm1, xmm0
pslldq xmm1, 8
shufps xmm1, xmm0, 0xe8
por xmm12, xmm1
lea r9, [rax + 3]
movd xmm11, r9d
shr r9, 0x20
movd xmm0, r9d
por xmm0, xmm14
movdqa xmm1, xmm0
pslldq xmm1, 8
shufps xmm1, xmm0, 0xe8
movdqa xmm6, xmmword [rcx + 0x10]
por xmm11, xmm1
test edx, edx
movdqa xmmword [rsp + 0xa0], xmm3
movaps xmmword [rsp + 0x90], xmm5
movdqa xmmword [rsp + 0x80], xmm4
movdqa xmmword [rsp + 0x70], xmm12
movdqa xmmword [rsp + 0x60], xmm11
movdqa xmmword [rsp + 0x50], xmm6
je 0x1400fa4a2
movaps xmmword [rsp + 0x40], xmm14
movdqa xmm10, xmmword [0x140244a00]
movdqa xmm9, xmm10
movdqa xmm8, xmm10
movdqa xmm7, xmm10
movdqa xmm2, xmm3
movdqa xmm0, xmm3
movdqa xmm15, xmm3
movdqa xmm13, xmm3
movdqa xmm3, xmm6
movdqa xmm1, xmm6
movdqa xmm14, xmm6
movdqa xmmword [rsp], xmm6
movdqa xmmword [rsp + 0x10], xmm6
movdqa xmm6, xmm5
nop dword [rax]
paddd xmm10, xmm2
paddd xmm9, xmm0
paddd xmm8, xmm15
paddd xmm7, xmm13
pxor xmm6, xmm10
pxor xmm4, xmm9
pxor xmm12, xmm8
pxor xmm11, xmm7
pshuflw xmm5, xmm6, 0xb1
pshufhw xmm6, xmm5, 0xb1
movdqa xmmword [rsp + 0x20], xmm6
pshuflw xmm4, xmm4, 0xb1
pshufhw xmm5, xmm4, 0xb1
pshuflw xmm12, xmm12, 0xb1
pshufhw xmm12, xmm12, 0xb1
pshuflw xmm11, xmm11, 0xb1
pshufhw xmm11, xmm11, 0xb1
paddd xmm3, xmm6
paddd xmm1, xmm5
movdqa xmm6, xmmword [rsp]
paddd xmm6, xmm12
movdqa xmmword [rsp], xmm6
movdqa xmm4, xmm1
movdqa xmmword [rsp + 0x30], xmm1
movdqa xmm1, xmmword [rsp + 0x10]
paddd xmm1, xmm11
movdqa xmmword [rsp + 0x10], xmm1
pxor xmm2, xmm3
movdqa xmm14, xmm2
psrld xmm14, 0x14
pslld xmm2, 0xc
por xmm2, xmm14
pxor xmm0, xmm4
movdqa xmm14, xmm0
psrld xmm14, 0x14
pslld xmm0, 0xc
por xmm0, xmm14
pxor xmm15, xmm6
movdqa xmm14, xmm15
psrld xmm14, 0x14
pslld xmm15, 0xc
por xmm15, xmm14
pxor xmm13, xmm1
movdqa xmm14, xmm13
psrld xmm14, 0x14
pslld xmm13, 0xc
por xmm13, xmm14
paddd xmm10, xmm2
paddd xmm9, xmm0
paddd xmm8, xmm15
paddd xmm7, xmm13
movdqa xmm14, xmm10
movdqa xmm6, xmmword [0x140244a10]
pshufb xmm14, xmm6
movdqa xmm1, xmmword [rsp + 0x20]
pshufb xmm1, xmm6
pxor xmm1, xmm14
movdqa xmm4, xmm1
movdqa xmm14, xmm9
pshufb xmm14, xmm6
pshufb xmm5, xmm6
pxor xmm5, xmm14
movdqa xmm14, xmm8
pshufb xmm14, xmm6
pshufb xmm12, xmm6
pxor xmm12, xmm14
movdqa xmm14, xmm7
pshufb xmm14, xmm6
pshufb xmm11, xmm6
pxor xmm11, xmm14
paddd xmm3, xmm1
movdqa xmm1, xmmword [rsp + 0x30]
paddd xmm1, xmm5
movdqa xmmword [rsp + 0x30], xmm1
movdqa xmm6, xmmword [rsp]
paddd xmm6, xmm12
movdqa xmm14, xmmword [rsp + 0x10]
paddd xmm14, xmm11
pxor xmm2, xmm3
pxor xmm0, xmm1
pxor xmm15, xmm6
pxor xmm13, xmm14
movdqa xmm1, xmm14
movdqa xmm14, xmm2
psrld xmm14, 0x19
pslld xmm2, 7
por xmm2, xmm14
movdqa xmm14, xmm0
psrld xmm14, 0x19
pslld xmm0, 7
por xmm0, xmm14
movdqa xmm14, xmm15
psrld xmm14, 0x19
pslld xmm15, 7
por xmm15, xmm14
movdqa xmm14, xmm13
psrld xmm14, 0x19
pslld xmm13, 7
por xmm13, xmm14
pshufd xmm2, xmm2, 0x39
pshufd xmm0, xmm0, 0x39
pshufd xmm15, xmm15, 0x39
pshufd xmm13, xmm13, 0x39
pshufd xmm3, xmm3, 0x4e
movdqa xmmword [rsp + 0x10], xmm3
pshufd xmm3, xmmword [rsp + 0x30], 0x4e
movdqa xmmword [rsp], xmm3
pshufd xmm6, xmm6, 0x4e
pshufd xmm14, xmm1, 0x4e
paddd xmm10, xmm2
paddd xmm9, xmm0
paddd xmm8, xmm15
paddd xmm7, xmm13
pshuflw xmm1, xmm10, 0xb1
pshufhw xmm1, xmm1, 0xb1
movdqa xmm3, xmmword [0x140244a20]
pshufb xmm4, xmm3
pxor xmm4, xmm1
pshuflw xmm1, xmm9, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm5, xmm3
pxor xmm5, xmm1
pshuflw xmm1, xmm8, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm12, xmm3
pxor xmm12, xmm1
pshuflw xmm1, xmm7, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm11, xmm3
pxor xmm11, xmm1
movdqa xmm3, xmmword [rsp + 0x10]
paddd xmm3, xmm4
movdqa xmm1, xmmword [rsp]
paddd xmm1, xmm5
movdqa xmmword [rsp], xmm1
paddd xmm6, xmm12
paddd xmm14, xmm11
pxor xmm2, xmm3
pxor xmm0, xmm1
pxor xmm15, xmm6
pxor xmm13, xmm14
movdqa xmm1, xmm2
psrld xmm1, 0x14
pslld xmm2, 0xc
por xmm2, xmm1
movdqa xmm1, xmm0
psrld xmm1, 0x14
pslld xmm0, 0xc
por xmm0, xmm1
movdqa xmm1, xmm15
psrld xmm1, 0x14
pslld xmm15, 0xc
por xmm15, xmm1
movdqa xmm1, xmm13
psrld xmm1, 0x14
pslld xmm13, 0xc
por xmm13, xmm1
paddd xmm10, xmm2
paddd xmm9, xmm0
paddd xmm8, xmm15
paddd xmm7, xmm13
pxor xmm4, xmm10
movdqa xmm1, xmmword [0x140244a10]
pshufb xmm4, xmm1
movdqa xmmword [rsp + 0x20], xmm4
pxor xmm5, xmm9
pshufb xmm5, xmm1
pxor xmm12, xmm8
pshufb xmm12, xmm1
pxor xmm11, xmm7
pshufb xmm11, xmm1
paddd xmm3, xmm4
movdqa xmm1, xmmword [rsp]
paddd xmm1, xmm5
movdqa xmmword [rsp], xmm1
paddd xmm6, xmm12
paddd xmm14, xmm11
pxor xmm2, xmm3
pxor xmm0, xmm1
pxor xmm15, xmm6
pxor xmm13, xmm14
movdqa xmm1, xmm2
psrld xmm1, 0x19
pslld xmm2, 7
por xmm2, xmm1
movdqa xmm1, xmm0
psrld xmm1, 0x19
pslld xmm0, 7
por xmm0, xmm1
movdqa xmm1, xmm15
psrld xmm1, 0x19
pslld xmm15, 7
por xmm15, xmm1
movdqa xmm1, xmm13
psrld xmm1, 0x19
pslld xmm13, 7
por xmm13, xmm1
pshufd xmm2, xmm2, 0x93
pshufd xmm0, xmm0, 0x93
pshufd xmm15, xmm15, 0x93
pshufd xmm13, xmm13, 0x93
pshufd xmm4, xmm3, 0x4e
movdqa xmm3, xmm7
pshufd xmm7, xmmword [rsp], 0x4e
pshufd xmm6, xmm6, 0x4e
movdqa xmmword [rsp], xmm6
pshufd xmm1, xmm14, 0x4e
movdqa xmmword [rsp + 0x10], xmm1
movdqa xmm1, xmm7
movdqa xmm7, xmm3
movdqa xmm3, xmm4
pshufd xmm6, xmmword [rsp + 0x20], 0x39
pshufd xmm4, xmm5, 0x39
pshufd xmm12, xmm12, 0x39
pshufd xmm11, xmm11, 0x39
dec edx
jne 0x1400fa020
movdqa xmm5, xmmword [0x140244a00]
paddd xmm10, xmm5
paddd xmm9, xmm5
paddd xmm8, xmm5
paddd xmm7, xmm5
movaps xmm14, xmmword [rsp + 0x40]
jmp 0x1400fa4e7
movdqa xmm7, xmmword [0x140244a30]
movdqa xmm13, xmm3
movdqa xmmword [rsp + 0x10], xmm6
movdqa xmm15, xmm3
movdqa xmm8, xmm6
movdqa xmmword [rsp], xmm6
movdqa xmm0, xmm3
movdqa xmm1, xmm6
movdqa xmm2, xmm3
movdqa xmm3, xmm6
movdqa xmm6, xmm5
movdqa xmm8, xmm7
movdqa xmm9, xmm7
movdqa xmm10, xmm7
add rax, 4
mov rdx, rax
shr rdx, 0x20
movd xmm5, edx
por xmm5, xmm14
movdqa xmm14, xmm5
pslldq xmm14, 8
shufps xmm14, xmm5, 0xe8
movaps xmm5, xmm14
movd xmm14, eax
por xmm14, xmm5
movdqa xmmword [rcx + 0x20], xmm14
movdqu xmmword [r8], xmm10
movdqa xmm10, xmmword [rsp + 0xa0]
paddd xmm2, xmm10
movdqu xmmword [r8 + 0x10], xmm2
movdqa xmm2, xmmword [rsp + 0x50]
paddd xmm3, xmm2
movdqu xmmword [r8 + 0x20], xmm3
paddd xmm6, xmmword [rsp + 0x90]
movdqu xmmword [r8 + 0x30], xmm6
movdqu xmmword [r8 + 0x40], xmm9
paddd xmm0, xmm10
movdqu xmmword [r8 + 0x50], xmm0
paddd xmm1, xmm2
movdqu xmmword [r8 + 0x60], xmm1
paddd xmm4, xmmword [rsp + 0x80]
movdqu xmmword [r8 + 0x70], xmm4
movdqu xmmword [r8 + 0x80], xmm8
paddd xmm15, xmm10
movdqu xmmword [r8 + 0x90], xmm15
movdqa xmm0, xmmword [rsp]
paddd xmm0, xmm2
movdqu xmmword [r8 + 0xa0], xmm0
paddd xmm12, xmmword [rsp + 0x70]
movdqu xmmword [r8 + 0xb0], xmm12
movdqu xmmword [r8 + 0xc0], xmm7
paddd xmm13, xmm10
movdqu xmmword [r8 + 0xd0], xmm13
movdqa xmm0, xmmword [rsp + 0x10]
paddd xmm0, xmm2
movdqu xmmword [r8 + 0xe0], xmm0
paddd xmm11, xmmword [rsp + 0x60]
movdqu xmmword [r8 + 0xf0], xmm11
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm8, xmmword [rsp + 0xd0]
movaps xmm9, xmmword [rsp + 0xe0]
movaps xmm10, xmmword [rsp + 0xf0]
movaps xmm11, xmmword [rsp + 0x100]
movaps xmm12, xmmword [rsp + 0x110]
movaps xmm13, xmmword [rsp + 0x120]
movaps xmm14, xmmword [rsp + 0x130]
movaps xmm15, xmmword [rsp + 0x140]
add rsp, 0x158
ret