Function at 0x1401a91b0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4b0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x1405786c0]
xor rax, rsp
mov qword [rsp + 0x400], rax
xor r14d, r14d
lea r15, [rsp]
mov r10d, r14d
sub r15, rcx
mov r12, r8
mov r9, rcx
mov eax, r10d
lea r9, [r9 + 0x10]
shl eax, 4
inc r10d
movdqu xmm1, xmmword [rax + rdx]
xorps xmm1, xmmword [r9 - 0x10]
movdqu xmmword [r9 - 0x10], xmm1
movdqu xmm0, xmmword [rax + r8]
xorps xmm0, xmm1
movdqu xmmword [r9 + r15 - 0x10], xmm0
cmp r10d, 0x40
jb 0x1401a9230
movdqa xmm14, xmmword [0x14020dc50]
mov r13d, r14d
movdqa xmm15, xmmword [0x14020dc40]
nop dword [rax + rax]
lea eax, [r13*8]
lea ebp, [rax + 2]
mov r10d, eax
add r10, r10
lea esi, [rax + 3]
add rbp, rbp
lea r9d, [rax + 1]
add r9, r9
lea ebx, [rax + 6]
add rsi, rsi
lea r11d, [rax + 4]
add r11, r11
lea edi, [rax + 7]
movdqu xmm9, xmmword [rcx + rbp*8]
lea edx, [rax + 5]
movdqa xmm5, xmm9
movdqa xmm0, xmm9
paddq xmm0, xmmword [rcx + r10*8]
add rbx, rbx
pmuludq xmm5, xmmword [rcx + r10*8]
add rdi, rdi
movdqu xmm10, xmmword [rcx + rsi*8]
add rdx, rdx
movdqa xmm4, xmm10
pmuludq xmm4, xmmword [rcx + r9*8]
paddq xmm5, xmm5
paddq xmm5, xmm0
movdqa xmm0, xmm10
paddq xmm0, xmmword [rcx + r9*8]
movdqa xmm7, xmm5
paddq xmm4, xmm4
paddq xmm4, xmm0
movdqa xmm0, xmm5
xorps xmm0, xmmword [rcx + rbx*8]
pshufd xmm13, xmm0, 0xb1
movdqa xmm0, xmm4
xorps xmm0, xmmword [rcx + rdi*8]
movdqa xmm3, xmm13
pmuludq xmm3, xmmword [rcx + r11*8]
pshufd xmm12, xmm0, 0xb1
movdqa xmm0, xmm13
paddq xmm0, xmmword [rcx + r11*8]
movdqa xmm2, xmm12
pmuludq xmm2, xmmword [rcx + rdx*8]
paddq xmm3, xmm3
paddq xmm3, xmm0
movdqa xmm0, xmm12
paddq xmm0, xmmword [rcx + rdx*8]
xorps xmm9, xmm3
pshufb xmm9, xmm14
paddq xmm2, xmm2
movdqa xmm8, xmm3
paddq xmm2, xmm0
pmuludq xmm7, xmm9
paddq xmm5, xmm9
xorps xmm10, xmm2
pshufb xmm10, xmm14
movdqa xmm6, xmm2
paddq xmm7, xmm7
paddq xmm7, xmm5
movdqa xmm5, xmm4
pmuludq xmm5, xmm10
paddq xmm4, xmm10
xorps xmm13, xmm7
pshufb xmm13, xmm15
paddq xmm5, xmm5
pmuludq xmm8, xmm13
paddq xmm5, xmm4
xorps xmm12, xmm5
paddq xmm3, xmm13
pshufb xmm12, xmm15
paddq xmm8, xmm8
pmuludq xmm6, xmm12
paddq xmm8, xmm3
paddq xmm2, xmm12
movdqa xmm0, xmm8
xorps xmm0, xmm9
movdqa xmm1, xmm0
paddq xmm6, xmm6
paddq xmm6, xmm2
xorps xmm10, xmm6
paddq xmm1, xmm0
movdqa xmm4, xmm7
psrlq xmm0, 0x3f
movdqa xmm3, xmm5
xorps xmm1, xmm0
movdqa xmm11, xmm10
paddq xmm11, xmm10
movdqa xmm2, xmm1
psrlq xmm10, 0x3f
xorps xmm11, xmm10
palignr xmm2, xmm11, 8
palignr xmm11, xmm1, 8
paddq xmm5, xmm2
pmuludq xmm3, xmm2
paddq xmm7, xmm11
pmuludq xmm4, xmm11
movdqa xmm1, xmm12
palignr xmm1, xmm13, 8
palignr xmm13, xmm12, 8
paddq xmm3, xmm3
paddq xmm3, xmm5
paddq xmm4, xmm4
paddq xmm4, xmm7
movdqa xmm0, xmm3
xorps xmm0, xmm1
xorps xmm13, xmm4
pshufd xmm9, xmm0, 0xb1
pshufd xmm10, xmm13, 0xb1
movdqa xmm5, xmm10
movdqa xmm0, xmm10
paddq xmm0, xmm6
pmuludq xmm5, xmm6
movdqa xmm6, xmm9
pmuludq xmm6, xmm8
paddq xmm5, xmm5
paddq xmm5, xmm0
movdqa xmm0, xmm9
paddq xmm0, xmm8
xorps xmm11, xmm5
pshufb xmm11, xmm14
paddq xmm6, xmm6
paddq xmm6, xmm0
movdqa xmm7, xmm6
xorps xmm7, xmm2
movdqa xmm2, xmm4
pmuludq xmm2, xmm11
paddq xmm4, xmm11
pshufb xmm7, xmm14
paddq xmm2, xmm2
movdqa xmm1, xmm7
paddq xmm2, xmm4
pmuludq xmm1, xmm3
xorps xmm10, xmm2
movdqu xmmword [rcx + r10*8], xmm2
movdqa xmm0, xmm7
paddq xmm0, xmm3
pshufb xmm10, xmm15
paddq xmm1, xmm1
paddq xmm1, xmm0
movdqa xmm4, xmm10
xorps xmm9, xmm1
pmuludq xmm4, xmm5
pshufb xmm9, xmm15
movdqa xmm0, xmm10
movdqu xmmword [rcx + r9*8], xmm1
paddq xmm0, xmm5
movdqa xmm3, xmm9
pmuludq xmm3, xmm6
paddq xmm4, xmm4
paddq xmm4, xmm0
movdqa xmm0, xmm9
xorps xmm11, xmm4
paddq xmm0, xmm6
movdqa xmm2, xmm11
paddq xmm2, xmm11
psrlq xmm11, 0x3f
paddq xmm3, xmm3
xorps xmm2, xmm11
paddq xmm3, xmm0
xorps xmm7, xmm3
movdqa xmm1, xmm7
paddq xmm1, xmm7
movdqu xmmword [rcx + r11*8], xmm3
psrlq xmm7, 0x3f
movdqa xmm0, xmm2
xorps xmm1, xmm7
movdqu xmmword [rcx + rdx*8], xmm4
palignr xmm0, xmm1, 8
inc r13d
movdqu xmmword [rcx + rbp*8], xmm0
movdqa xmm0, xmm9
palignr xmm0, xmm10, 8
palignr xmm10, xmm9, 8
palignr xmm1, xmm2, 8
movdqu xmmword [rcx + rdi*8], xmm10
movdqu xmmword [rcx + rsi*8], xmm1
movdqu xmmword [rcx + rbx*8], xmm0
cmp r13d, 8
jb 0x1401a9280
mov rdx, rcx
lea rax, [rcx + 0x100]
mov r8d, 8
nop dword [rax]
movdqu xmm3, xmmword [rax]
movdqu xmm2, xmmword [rax + 0x80]
movdqa xmm8, xmm3
pmuludq xmm8, xmmword [rdx]
movdqa xmm0, xmm3
paddq xmm0, xmmword [rdx]
movdqa xmm9, xmm2
pmuludq xmm9, xmmword [rax - 0x80]
paddq xmm8, xmm8
paddq xmm8, xmm0
movdqa xmm0, xmm2
paddq xmm0, xmmword [rax - 0x80]
paddq xmm9, xmm9
paddq xmm9, xmm0
movdqa xmm0, xmm8
xorps xmm0, xmmword [rax + 0x200]
movdqa xmm1, xmm9
xorps xmm1, xmmword [rax + 0x280]
movdqa xmm10, xmm9
pshufd xmm4, xmm0, 0xb1
movdqu xmm0, xmmword [rax + 0x100]
movdqa xmm7, xmm4
paddq xmm7, xmm0
pshufd xmm5, xmm1, 0xb1
movdqa xmm1, xmm4
movdqa xmm6, xmm5
pmuludq xmm1, xmm0
movdqu xmm0, xmmword [rax + 0x180]
paddq xmm6, xmm0
paddq xmm1, xmm1
paddq xmm7, xmm1
movdqa xmm1, xmm5
pmuludq xmm1, xmm0
paddq xmm1, xmm1
paddq xmm6, xmm1
movdqa xmm1, xmm7
xorps xmm1, xmm3
movdqa xmm3, xmm6
xorps xmm3, xmm2
pshufb xmm1, xmm14
pshufb xmm3, xmm14
movdqa xmm12, xmm1
movdqa xmm0, xmm1
paddq xmm0, xmm8
pmuludq xmm12, xmm8
paddq xmm9, xmm3
pmuludq xmm10, xmm3
paddq xmm12, xmm12
paddq xmm12, xmm0
paddq xmm10, xmm10
paddq xmm10, xmm9
movdqa xmm8, xmm12
xorps xmm8, xmm4
movdqa xmm2, xmm10
pshufb xmm8, xmm15
xorps xmm2, xmm5
pshufb xmm2, xmm15
movdqa xmm0, xmm8
movdqa xmm9, xmm8
pmuludq xmm0, xmm7
paddq xmm9, xmm7
movdqa xmm7, xmm2
paddq xmm7, xmm6
paddq xmm0, xmm0
paddq xmm9, xmm0
movdqa xmm0, xmm2
pmuludq xmm0, xmm6
xorps xmm1, xmm9
paddq xmm0, xmm0
paddq xmm7, xmm0
movdqa xmm0, xmm1
xorps xmm3, xmm7
paddq xmm0, xmm1
movdqa xmm11, xmm3
psrlq xmm1, 0x3f
paddq xmm11, xmm3
xorps xmm0, xmm1
psrlq xmm3, 0x3f
movdqa xmm4, xmm0
xorps xmm11, xmm3
palignr xmm4, xmm11, 8
palignr xmm11, xmm0, 8
movdqa xmm6, xmm9
movdqa xmm1, xmm2
movdqa xmm0, xmm12
pmuludq xmm0, xmm11
paddq xmm12, xmm11
palignr xmm1, xmm8, 8
movdqa xmm5, xmm10
palignr xmm8, xmm2, 8
paddq xmm10, xmm4
pmuludq xmm5, xmm4
paddq xmm0, xmm0
paddq xmm12, xmm0
xorps xmm8, xmm12
pshufd xmm2, xmm8, 0xb1
paddq xmm5, xmm5
paddq xmm5, xmm10
movdqa xmm0, xmm5
xorps xmm0, xmm1
movdqa xmm1, xmm7
pshufd xmm3, xmm0, 0xb1
paddq xmm7, xmm2
paddq xmm9, xmm3
pmuludq xmm1, xmm2
pmuludq xmm6, xmm3
paddq xmm1, xmm1
paddq xmm1, xmm7
paddq xmm6, xmm6
paddq xmm6, xmm9
xorps xmm11, xmm1
pshufb xmm11, xmm14
movdqa xmm8, xmm6
xorps xmm8, xmm4
movdqa xmm0, xmm11
pmuludq xmm0, xmm12
movdqa xmm9, xmm11
pshufb xmm8, xmm14
paddq xmm9, xmm12
paddq xmm0, xmm0
movdqa xmm7, xmm8
paddq xmm9, xmm0
pmuludq xmm7, xmm5
movdqa xmm0, xmm8
movdqu xmmword [rdx], xmm9
paddq xmm0, xmm5
xorps xmm9, xmm2
pshufb xmm9, xmm15
paddq xmm7, xmm7
paddq xmm7, xmm0
movdqa xmm4, xmm9
pmuludq xmm4, xmm1
movdqa xmm0, xmm9
paddq xmm0, xmm1
movdqu xmmword [rax - 0x80], xmm7
xorps xmm7, xmm3
pshufb xmm7, xmm15
paddq xmm4, xmm4
paddq xmm4, xmm0
movdqa xmm3, xmm7
xorps xmm11, xmm4
pmuludq xmm3, xmm6
movdqa xmm2, xmm11
movdqu xmmword [rax + 0x180], xmm4
paddq xmm2, xmm11
movdqa xmm0, xmm7
paddq xmm0, xmm6
psrlq xmm11, 0x3f
xorps xmm2, xmm11
paddq xmm3, xmm3
paddq xmm3, xmm0
movdqa xmm0, xmm2
xorps xmm8, xmm3
movdqu xmmword [rax + 0x100], xmm3
movdqa xmm1, xmm8
paddq xmm1, xmm8
psrlq xmm8, 0x3f
xorps xmm1, xmm8
palignr xmm0, xmm1, 8
palignr xmm1, xmm2, 8
movdqu xmmword [rax + 0x80], xmm1
movdqu xmmword [rax], xmm0
lea rax, [rax + 0x10]
movdqa xmm0, xmm7
palignr xmm0, xmm9, 8
lea rdx, [rdx + 0x10]
palignr xmm9, xmm7, 8
movdqu xmmword [rax + 0x270], xmm9
movdqu xmmword [rax + 0x1f0], xmm0
sub r8, 1
jne 0x1401a95d0
nop word [rax + rax]
movdqu xmm0, xmmword [rcx + r15]
mov eax, r14d
xorps xmm0, xmmword [rcx]
inc r14d
shl eax, 4
movdqu xmmword [rcx], xmm0
lea rcx, [rcx + 0x10]
movdqu xmmword [rax + r12], xmm0
cmp r14d, 0x40
jb 0x1401a9910
mov rcx, qword [rsp + 0x400]
xor rcx, rsp
call fcn.1401cb6f0
lea r11, [rsp + 0x4b0]
mov rbx, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret