Function at 0x4c7610
Capabilities:
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 xmm4, xmmword [rcx]
movdqa xmm13, xmmword [rcx + 0x10]
movdqa xmm0, xmmword [rcx + 0x20]
movdqa xmmword [rsp + 0x40], xmm0
mov rax, qword [rcx + 0x20]
lea r8, [rax + 1]
movd xmm14, r8d
shr r8, 0x20
movdqa xmm3, xmm0
pslldq xmm3, 8
shufps xmm3, xmm0, 0xe8
movd xmm0, r8d
por xmm0, xmm3
movdqa xmm1, xmm0
pslldq xmm1, 8
shufps xmm1, xmm0, 0xe8
por xmm14, xmm1
lea r8, [rax + 2]
movd xmm15, r8d
shr r8, 0x20
movd xmm0, r8d
por xmm0, xmm3
movdqa xmm1, xmm0
pslldq xmm1, 8
shufps xmm1, xmm0, 0xe8
por xmm15, xmm1
lea r8, [rax + 3]
movd xmm2, r8d
shr r8, 0x20
movd xmm0, r8d
movaps xmmword [rsp + 0x50], xmm3
por xmm0, xmm3
movdqa xmm1, xmm0
pslldq xmm1, 8
shufps xmm1, xmm0, 0xe8
por xmm2, xmm1
movdqa xmm10, xmmword [0x0071f7c0]
mov r8d, 6
movdqa xmm9, xmm10
movdqa xmm8, xmm10
movdqa xmm7, xmm10
movdqa xmm12, xmm4
movdqa xmm5, xmm4
movdqa xmm3, xmm4
movdqa xmmword [rsp + 0x90], xmm4
movdqa xmm1, xmm4
movdqa xmm11, xmm13
movdqa xmm6, xmm13
movdqa xmm4, xmm13
movdqa xmmword [rsp + 0xa0], xmm13
movdqa xmm0, xmm13
movdqa xmm13, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x80], xmm14
movdqa xmmword [rsp + 0x70], xmm15
movdqa xmmword [rsp + 0x60], xmm2
nop word cs:[rax + rax]
paddd xmm10, xmm12
paddd xmm9, xmm5
paddd xmm8, xmm3
paddd xmm7, xmm1
pxor xmm13, xmm10
pxor xmm14, xmm9
pxor xmm15, xmm8
pxor xmm2, xmm7
pshuflw xmm13, xmm13, 0xb1
pshufhw xmm13, xmm13, 0xb1
movdqa xmmword [rsp], xmm13
pshuflw xmm14, xmm14, 0xb1
pshufhw xmm14, xmm14, 0xb1
pshuflw xmm15, xmm15, 0xb1
pshufhw xmm15, xmm15, 0xb1
pshuflw xmm2, xmm2, 0xb1
pshufhw xmm2, xmm2, 0xb1
movdqa xmmword [rsp + 0x30], xmm2
paddd xmm11, xmm13
paddd xmm6, xmm14
paddd xmm4, xmm15
paddd xmm0, xmm2
pxor xmm12, xmm11
movdqa xmm2, xmm0
movdqa xmmword [rsp + 0x10], xmm0
movdqa xmm0, xmm12
psrld xmm0, 0x14
pslld xmm12, 0xc
por xmm12, xmm0
pxor xmm5, xmm6
movdqa xmm0, xmm5
psrld xmm0, 0x14
pslld xmm5, 0xc
por xmm5, xmm0
pxor xmm3, xmm4
movdqa xmm0, xmm3
psrld xmm0, 0x14
pslld xmm3, 0xc
por xmm3, xmm0
pxor xmm1, xmm2
movdqa xmm0, xmm1
psrld xmm0, 0x14
pslld xmm1, 0xc
por xmm1, xmm0
paddd xmm10, xmm12
paddd xmm9, xmm5
paddd xmm8, xmm3
paddd xmm7, xmm1
movdqa xmmword [rsp + 0x20], xmm7
movdqa xmm0, xmm10
movdqa xmm2, xmmword [0x0071f7d0]
pshufb xmm0, xmm2
movdqa xmm7, xmmword [rsp]
pshufb xmm7, xmm2
pxor xmm7, xmm0
movdqa xmmword [rsp], xmm7
movdqa xmm0, xmm9
pshufb xmm0, xmm2
pshufb xmm14, xmm2
pxor xmm14, xmm0
movdqa xmm0, xmm8
pshufb xmm0, xmm2
pshufb xmm15, xmm2
pxor xmm15, xmm0
movdqa xmm0, xmmword [rsp + 0x20]
pshufb xmm0, xmm2
movdqa xmm13, xmmword [rsp + 0x30]
pshufb xmm13, xmm2
pxor xmm13, xmm0
movdqa xmm2, xmm13
paddd xmm11, xmm7
movdqa xmm7, xmmword [rsp + 0x20]
paddd xmm6, xmm14
paddd xmm4, xmm15
movdqa xmm0, xmmword [rsp + 0x10]
paddd xmm0, xmm13
pxor xmm12, xmm11
pxor xmm5, xmm6
pxor xmm3, xmm4
pxor xmm1, xmm0
movdqa xmm13, xmm0
movdqa xmm0, xmm12
psrld xmm0, 0x19
pslld xmm12, 7
por xmm12, xmm0
movdqa xmm0, xmm5
psrld xmm0, 0x19
pslld xmm5, 7
por xmm5, xmm0
movdqa xmm0, xmm3
psrld xmm0, 0x19
pslld xmm3, 7
por xmm3, xmm0
movdqa xmm0, xmm1
psrld xmm0, 0x19
pslld xmm1, 7
por xmm1, xmm0
pshufd xmm12, xmm12, 0x39
pshufd xmm5, xmm5, 0x39
pshufd xmm3, xmm3, 0x39
pshufd xmm1, xmm1, 0x39
pshufd xmm11, xmm11, 0x4e
pshufd xmm6, xmm6, 0x4e
pshufd xmm0, xmm4, 0x4e
movdqa xmmword [rsp + 0x30], xmm0
pshufd xmm0, xmm13, 0x4e
movdqa xmmword [rsp + 0x10], xmm0
paddd xmm10, xmm12
paddd xmm9, xmm5
paddd xmm8, xmm3
paddd xmm7, xmm1
pshuflw xmm0, xmm10, 0xb1
pshufhw xmm0, xmm0, 0xb1
movdqa xmm13, xmmword [0x0071f7e0]
movdqa xmm4, xmmword [rsp]
pshufb xmm4, xmm13
pxor xmm4, xmm0
pshuflw xmm0, xmm9, 0xb1
pshufhw xmm0, xmm0, 0xb1
pshufb xmm14, xmm13
pxor xmm14, xmm0
pshuflw xmm0, xmm8, 0xb1
pshufhw xmm0, xmm0, 0xb1
pshufb xmm15, xmm13
pxor xmm15, xmm0
pshuflw xmm0, xmm7, 0xb1
pshufhw xmm0, xmm0, 0xb1
pshufb xmm2, xmm13
pxor xmm2, xmm0
paddd xmm11, xmm4
movdqa xmm13, xmm4
paddd xmm6, xmm14
movdqa xmm4, xmmword [rsp + 0x30]
paddd xmm4, xmm15
movdqa xmm0, xmmword [rsp + 0x10]
paddd xmm0, xmm2
movdqa xmmword [rsp + 0x10], xmm0
pxor xmm12, xmm11
pxor xmm5, xmm6
pxor xmm3, xmm4
pxor xmm1, xmm0
movdqa xmm0, xmm12
psrld xmm0, 0x14
pslld xmm12, 0xc
por xmm12, xmm0
movdqa xmm0, xmm5
psrld xmm0, 0x14
pslld xmm5, 0xc
por xmm5, xmm0
movdqa xmm0, xmm3
psrld xmm0, 0x14
pslld xmm3, 0xc
por xmm3, xmm0
movdqa xmm0, xmm1
psrld xmm0, 0x14
pslld xmm1, 0xc
por xmm1, xmm0
paddd xmm10, xmm12
paddd xmm9, xmm5
paddd xmm8, xmm3
paddd xmm7, xmm1
pxor xmm13, xmm10
movdqa xmm0, xmmword [0x0071f7d0]
pshufb xmm13, xmm0
movdqa xmmword [rsp], xmm13
pxor xmm14, xmm9
pshufb xmm14, xmm0
pxor xmm15, xmm8
pshufb xmm15, xmm0
pxor xmm2, xmm7
pshufb xmm2, xmm0
paddd xmm11, xmm13
paddd xmm6, xmm14
paddd xmm4, xmm15
movdqa xmm13, xmmword [rsp + 0x10]
paddd xmm13, xmm2
pxor xmm12, xmm11
pxor xmm5, xmm6
pxor xmm3, xmm4
pxor xmm1, xmm13
movdqa xmm0, xmm12
psrld xmm0, 0x19
pslld xmm12, 7
por xmm12, xmm0
movdqa xmm0, xmm5
psrld xmm0, 0x19
pslld xmm5, 7
por xmm5, xmm0
movdqa xmm0, xmm3
psrld xmm0, 0x19
pslld xmm3, 7
por xmm3, xmm0
movdqa xmm0, xmm1
psrld xmm0, 0x19
pslld xmm1, 7
por xmm1, xmm0
pshufd xmm12, xmm12, 0x93
pshufd xmm5, xmm5, 0x93
pshufd xmm3, xmm3, 0x93
pshufd xmm1, xmm1, 0x93
pshufd xmm11, xmm11, 0x4e
pshufd xmm6, xmm6, 0x4e
pshufd xmm4, xmm4, 0x4e
pshufd xmm0, xmm13, 0x4e
pshufd xmm13, xmmword [rsp], 0x39
pshufd xmm14, xmm14, 0x39
pshufd xmm15, xmm15, 0x39
pshufd xmm2, xmm2, 0x39
dec r8d
jne 0x4c7790
movdqa xmmword [rsp + 0x10], xmm0
movdqa xmm0, xmmword [0x0071f7c0]
paddd xmm7, xmm0
paddd xmm8, xmm0
paddd xmm9, xmm0
paddd xmm10, xmm0
add rax, 4
mov r8, rax
shr r8, 0x20
movd xmm0, r8d
por xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmmword [rsp], xmm0
movdqa xmm0, xmmword [rsp]
pslldq xmm0, 8
movdqa xmmword [rsp], xmm0
movaps xmm0, xmmword [rsp]
shufps xmm0, xmmword [rsp + 0x20], 0xe8
movaps xmmword [rsp], xmm0
movd xmm0, eax
por xmm0, xmmword [rsp]
movdqa xmmword [rcx + 0x20], xmm0
movdqu xmmword [rdx], xmm10
movdqa xmm10, xmmword [rsp + 0x90]
paddd xmm12, xmm10
movdqu xmmword [rdx + 0x10], xmm12
movdqa xmm0, xmmword [rsp + 0xa0]
paddd xmm11, xmm0
movdqu xmmword [rdx + 0x20], xmm11
paddd xmm13, xmmword [rsp + 0x40]
movdqu xmmword [rdx + 0x30], xmm13
movdqu xmmword [rdx + 0x40], xmm9
paddd xmm5, xmm10
movdqu xmmword [rdx + 0x50], xmm5
paddd xmm6, xmm0
movdqu xmmword [rdx + 0x60], xmm6
paddd xmm14, xmmword [rsp + 0x80]
movdqu xmmword [rdx + 0x70], xmm14
movdqu xmmword [rdx + 0x80], xmm8
paddd xmm3, xmm10
movdqu xmmword [rdx + 0x90], xmm3
paddd xmm4, xmm0
movdqu xmmword [rdx + 0xa0], xmm4
paddd xmm15, xmmword [rsp + 0x70]
movdqu xmmword [rdx + 0xb0], xmm15
movdqu xmmword [rdx + 0xc0], xmm7
paddd xmm1, xmm10
movdqu xmmword [rdx + 0xd0], xmm1
movdqa xmm1, xmmword [rsp + 0x10]
paddd xmm1, xmm0
movdqu xmmword [rdx + 0xe0], xmm1
paddd xmm2, xmmword [rsp + 0x60]
movdqu xmmword [rdx + 0xf0], xmm2
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