Function at 0x140017b00
Capabilities:
Encrypt data using salsa20 or chacha

Disassembly:
sub rsp, 0x148
vmovaps xmmword [rsp + 0x130], xmm15
vmovaps xmmword [rsp + 0x120], xmm14
vmovdqa xmmword [rsp + 0x110], xmm13
vmovaps xmmword [rsp + 0x100], xmm12
vmovaps xmmword [rsp + 0xf0], xmm11
vmovaps xmmword [rsp + 0xe0], xmm10
vmovdqa xmmword [rsp + 0xd0], xmm9
vmovaps xmmword [rsp + 0xc0], xmm8
vmovdqa xmmword [rsp + 0xb0], xmm7
vmovdqa xmmword [rsp + 0xa0], xmm6
mov rax, qword [rcx + 0x20]
vmovdqa xmm15, xmmword [rcx + 0x20]
lea r8, [rax + 1]
vpinsrd xmm0, xmm15, r8d, 0
shr r8, 0x20
vpinsrd xmm8, xmm0, r8d, 1
lea r8, [rax + 2]
vpinsrd xmm0, xmm15, r8d, 0
shr r8, 0x20
vpinsrd xmm10, xmm0, r8d, 1
vmovdqa xmm4, xmmword [rcx]
add rax, 3
vpinsrd xmm0, xmm15, eax, 0
shr rax, 0x20
vpinsrd xmm0, xmm0, eax, 1
vmovdqa xmmword [rsp + 0x40], xmm0
vmovdqa xmm1, xmmword [rcx + 0x10]
vmovdqa xmm11, xmmword [str.expand_32_byte_k]
mov eax, 6
vmovdqa xmmword [rsp + 0x20], xmm11
vmovdqa xmm12, xmm11
vmovdqa xmmword [rsp], xmm11
vmovdqa xmmword [rsp + 0x10], xmm1
vmovdqa xmmword [rsp + 0x50], xmm1
vmovdqa xmm2, xmm1
vmovdqa xmmword [rsp + 0x60], xmm1
vmovdqa xmm3, xmm4
vmovdqa xmm0, xmm4
vmovdqa xmm14, xmm4
vmovdqa xmmword [rsp + 0x70], xmm4
vmovdqa xmmword [rsp + 0x30], xmm4
vpaddd xmm4, xmm3, xmmword [rsp]
vmovdqa xmmword [rsp], xmm4
vpxor xmm6, xmm15, xmm4
vpshuflw xmm6, xmm6, 0xb1
vpshufhw xmm9, xmm6, 0xb1
vpaddd xmm1, xmm9, xmm1
vmovdqa xmmword [rsp + 0x80], xmm1
vpxor xmm3, xmm1, xmm3
vpsrld xmm4, xmm3, 0x14
vpslld xmm3, xmm3, 0xc
vpor xmm7, xmm3, xmm4
vpaddd xmm6, xmm0, xmmword [rsp + 0x20]
vpxor xmm4, xmm8, xmm6
vpshuflw xmm4, xmm4, 0xb1
vpshufhw xmm4, xmm4, 0xb1
vpaddd xmm1, xmm2, xmm4
vmovdqa xmmword [rsp + 0x90], xmm1
vpxor xmm0, xmm1, xmm0
vpsrld xmm1, xmm0, 0x14
vpslld xmm0, xmm0, 0xc
vpor xmm8, xmm0, xmm1
vpaddd xmm5, xmm14, xmm12
vpxor xmm0, xmm10, xmm5
vpshuflw xmm0, xmm0, 0xb1
vpshufhw xmm10, xmm0, 0xb1
vpaddd xmm13, xmm10, xmmword [rsp + 0x50]
vpxor xmm0, xmm13, xmm14
vpsrld xmm12, xmm0, 0x14
vpslld xmm0, xmm0, 0xc
vpor xmm14, xmm12, xmm0
vmovdqa xmm2, xmmword [rsp + 0x30]
vpaddd xmm3, xmm11, xmm2
vpxor xmm11, xmm3, xmmword [rsp + 0x40]
vpshuflw xmm11, xmm11, 0xb1
vpshufhw xmm1, xmm11, 0xb1
vpaddd xmm15, xmm1, xmmword [rsp + 0x10]
vpxor xmm11, xmm15, xmm2
vpsrld xmm12, xmm11, 0x14
vpslld xmm11, xmm11, 0xc
vpor xmm2, xmm11, xmm12
vpaddd xmm12, xmm7, xmmword [rsp]
vmovdqa xmm0, xmmword [0x1400664b0]
vpshufb xmm9, xmm9, xmm0
vpshufb xmm11, xmm12, xmm0
vpxor xmm11, xmm11, xmm9
vpaddd xmm6, xmm8, xmm6
vmovdqa xmmword [rsp + 0x10], xmm6
vpshufb xmm4, xmm4, xmm0
vpshufb xmm9, xmm6, xmm0
vpxor xmm4, xmm9, xmm4
vpaddd xmm5, xmm14, xmm5
vpshufb xmm9, xmm10, xmm0
vpshufb xmm10, xmm5, xmm0
vpxor xmm10, xmm10, xmm9
vpaddd xmm3, xmm2, xmm3
vmovdqa xmmword [rsp], xmm3
vpshufb xmm1, xmm1, xmm0
vpshufb xmm9, xmm3, xmm0
vpxor xmm1, xmm9, xmm1
vpaddd xmm0, xmm11, xmmword [rsp + 0x80]
vmovdqa xmmword [rsp + 0x20], xmm0
vpxor xmm6, xmm0, xmm7
vpsrld xmm9, xmm6, 0x19
vpslld xmm6, xmm6, 7
vpor xmm6, xmm9, xmm6
vpaddd xmm9, xmm4, xmmword [rsp + 0x90]
vpxor xmm8, xmm9, xmm8
vpsrld xmm0, xmm8, 0x19
vpslld xmm8, xmm8, 7
vpor xmm0, xmm8, xmm0
vpaddd xmm8, xmm13, xmm10
vpxor xmm13, xmm8, xmm14
vpsrld xmm14, xmm13, 0x19
vpslld xmm13, xmm13, 7
vpor xmm13, xmm13, xmm14
vpaddd xmm14, xmm15, xmm1
vpxor xmm2, xmm14, xmm2
vpsrld xmm7, xmm2, 0x19
vpslld xmm2, xmm2, 7
vpor xmm15, xmm2, xmm7
vpshufd xmm2, xmm6, 0x39
vpaddd xmm12, xmm12, xmm2
vpshuflw xmm6, xmm12, 0xb1
vpshufhw xmm6, xmm6, 0xb1
vmovdqa xmm7, xmmword [0x1400664c0]
vpshufb xmm11, xmm11, xmm7
vpxor xmm11, xmm11, xmm6
vpshufd xmm0, xmm0, 0x39
vpaddd xmm3, xmm0, xmmword [rsp + 0x10]
vmovdqa xmmword [rsp + 0x30], xmm3
vpshuflw xmm3, xmm3, 0xb1
vpshufhw xmm3, xmm3, 0xb1
vpshufb xmm4, xmm4, xmm7
vpxor xmm4, xmm4, xmm3
vpshufd xmm13, xmm13, 0x39
vpaddd xmm3, xmm13, xmm5
vmovdqa xmmword [rsp + 0x10], xmm3
vpshuflw xmm3, xmm3, 0xb1
vpshufhw xmm3, xmm3, 0xb1
vpshufb xmm5, xmm10, xmm7
vpxor xmm5, xmm5, xmm3
vpshufd xmm10, xmm15, 0x39
vpaddd xmm3, xmm10, xmmword [rsp]
vpshuflw xmm6, xmm3, 0xb1
vpshufhw xmm6, xmm6, 0xb1
vpshufb xmm1, xmm1, xmm7
vpxor xmm6, xmm1, xmm6
vpshufd xmm1, xmmword [rsp + 0x20], 0x4e
vpaddd xmm1, xmm11, xmm1
vpxor xmm2, xmm1, xmm2
vpsrld xmm7, xmm2, 0x14
vpslld xmm2, xmm2, 0xc
vpor xmm15, xmm2, xmm7
vpshufd xmm2, xmm9, 0x4e
vpaddd xmm2, xmm2, xmm4
vpxor xmm0, xmm2, xmm0
vpsrld xmm7, xmm0, 0x14
vpslld xmm0, xmm0, 0xc
vpor xmm0, xmm0, xmm7
vpshufd xmm7, xmm8, 0x4e
vpaddd xmm8, xmm7, xmm5
vpxor xmm7, xmm8, xmm13
vpsrld xmm9, xmm7, 0x14
vpslld xmm7, xmm7, 0xc
vpor xmm9, xmm9, xmm7
vpshufd xmm7, xmm14, 0x4e
vpaddd xmm7, xmm7, xmm6
vpxor xmm10, xmm10, xmm7
vpsrld xmm13, xmm10, 0x14
vpslld xmm10, xmm10, 0xc
vpor xmm14, xmm10, xmm13
vpaddd xmm10, xmm15, xmm12
vmovdqa xmmword [rsp], xmm10
vpxor xmm11, xmm10, xmm11
vpshufb xmm13, xmm11, xmmword [0x1400664b0]
vpaddd xmm1, xmm13, xmm1
vpxor xmm11, xmm15, xmm1
vpsrld xmm12, xmm11, 0x19
vpslld xmm11, xmm11, 7
vpor xmm15, xmm11, xmm12
vpaddd xmm10, xmm0, xmmword [rsp + 0x30]
vmovdqa xmmword [rsp + 0x20], xmm10
vpxor xmm4, xmm10, xmm4
vmovdqa xmm10, xmmword [0x1400664b0]
vpshufb xmm4, xmm4, xmm10
vpaddd xmm2, xmm2, xmm4
vpxor xmm0, xmm2, xmm0
vpsrld xmm11, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm0, xmm11, xmm0
vpaddd xmm12, xmm9, xmmword [rsp + 0x10]
vpxor xmm5, xmm12, xmm5
vpshufb xmm5, xmm5, xmm10
vpaddd xmm8, xmm8, xmm5
vpxor xmm9, xmm8, xmm9
vpsrld xmm11, xmm9, 0x19
vpslld xmm9, xmm9, 7
vpor xmm9, xmm9, xmm11
vpaddd xmm11, xmm14, xmm3
vpxor xmm3, xmm11, xmm6
vpshufb xmm6, xmm3, xmm10
vpaddd xmm7, xmm7, xmm6
vpxor xmm3, xmm14, xmm7
vpsrld xmm14, xmm3, 0x19
vpslld xmm3, xmm3, 7
vpor xmm10, xmm14, xmm3
vpshufd xmm3, xmm15, 0x93
vpshufd xmm0, xmm0, 0x93
vpshufd xmm14, xmm9, 0x93
vpshufd xmm9, xmm10, 0x93
vmovdqa xmmword [rsp + 0x30], xmm9
vpshufd xmm1, xmm1, 0x4e
vpshufd xmm2, xmm2, 0x4e
vpshufd xmm8, xmm8, 0x4e
vmovdqa xmmword [rsp + 0x50], xmm8
vpshufd xmm7, xmm7, 0x4e
vmovdqa xmmword [rsp + 0x10], xmm7
vpshufd xmm15, xmm13, 0x39
vpshufd xmm8, xmm4, 0x39
vpshufd xmm10, xmm5, 0x39
vpshufd xmm4, xmm6, 0x39
vmovdqa xmmword [rsp + 0x40], xmm4
dec eax
jne 0x140017c00
vmovdqa xmm4, xmmword [rcx + 0x20]
vmovq r9, xmm4
lea rax, [r9 + 1]
lea r8, [r9 + 2]
lea r10, [r9 + 3]
add r9, 4
mov r11, r9
shr r11, 0x20
vpinsrd xmm5, xmm4, r9d, 0
vpinsrd xmm5, xmm5, r11d, 1
vmovdqa xmm6, xmmword [str.expand_32_byte_k]
vpaddd xmm7, xmm11, xmm6
vpaddd xmm9, xmm12, xmm6
vmovdqa xmm11, xmm10
vpaddd xmm10, xmm6, xmmword [rsp + 0x20]
vpaddd xmm6, xmm6, xmmword [rsp]
vmovdqa xmmword [rcx + 0x20], xmm5
vmovdqu xmmword [rdx], xmm6
vmovdqa xmm5, xmmword [rsp + 0x70]
vpaddd xmm3, xmm3, xmm5
vmovdqu xmmword [rdx + 0x10], xmm3
vmovdqa xmm6, xmmword [rsp + 0x60]
vpaddd xmm1, xmm1, xmm6
vmovdqu xmmword [rdx + 0x20], xmm1
vpaddd xmm1, xmm15, xmm4
vmovdqu xmmword [rdx + 0x30], xmm1
vpinsrd xmm1, xmm4, eax, 0
shr rax, 0x20
vpinsrd xmm1, xmm1, eax, 1
vmovdqu xmmword [rdx + 0x40], xmm10
vpinsrd xmm3, xmm4, r8d, 0
shr r8, 0x20
vpinsrd xmm3, xmm3, r8d, 1
vpinsrd xmm4, xmm4, r10d, 0
shr r10, 0x20
vpinsrd xmm4, xmm4, r10d, 1
vpaddd xmm0, xmm0, xmm5
vmovdqu xmmword [rdx + 0x50], xmm0
vpaddd xmm0, xmm2, xmm6
vmovdqu xmmword [rdx + 0x60], xmm0
vpaddd xmm0, xmm8, xmm1
vmovdqu xmmword [rdx + 0x70], xmm0
vmovdqu xmmword [rdx + 0x80], xmm9
vpaddd xmm0, xmm14, xmm5
vmovdqu xmmword [rdx + 0x90], xmm0
vpaddd xmm0, xmm6, xmmword [rsp + 0x50]
vmovdqu xmmword [rdx + 0xa0], xmm0
vpaddd xmm0, xmm11, xmm3
vmovdqu xmmword [rdx + 0xb0], xmm0
vmovdqu xmmword [rdx + 0xc0], xmm7
vpaddd xmm0, xmm5, xmmword [rsp + 0x30]
vmovdqu xmmword [rdx + 0xd0], xmm0
vpaddd xmm0, xmm6, xmmword [rsp + 0x10]
vmovdqu xmmword [rdx + 0xe0], xmm0
vpaddd xmm0, xmm4, xmmword [rsp + 0x40]
vmovdqu xmmword [rdx + 0xf0], xmm0
vzeroupper
vmovaps xmm6, xmmword [rsp + 0xa0]
vmovaps xmm7, xmmword [rsp + 0xb0]
vmovaps xmm8, xmmword [rsp + 0xc0]
vmovaps xmm9, xmmword [rsp + 0xd0]
vmovaps xmm10, xmmword [rsp + 0xe0]
vmovaps xmm11, xmmword [rsp + 0xf0]
vmovaps xmm12, xmmword [rsp + 0x100]
vmovaps xmm13, xmmword [rsp + 0x110]
vmovaps xmm14, xmmword [rsp + 0x120]
vmovaps xmm15, xmmword [rsp + 0x130]
add rsp, 0x148
ret