Function at 0x14013a5a0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
movdqa xmmword [rsp + 0x90], xmm15
movaps xmmword [rsp + 0x80], xmm14
movaps xmmword [rsp + 0x70], xmm13
movdqa xmmword [rsp + 0x60], xmm12
movdqa xmmword [rsp + 0x50], xmm11
movdqa xmmword [rsp + 0x40], xmm10
movdqa xmmword [rsp + 0x30], xmm9
movdqa xmmword [rsp + 0x20], xmm8
movdqa xmmword [rsp + 0x10], xmm7
movdqa xmmword [rsp], xmm6
mov r9, rcx
lea r11, [r8 - 1]
cmp r11, 0x400
jae 0x14013a631
movdqa xmm3, xmmword [0x1404bcc20]
movdqa xmm13, xmmword [0x1404bcc30]
movdqa xmm14, xmmword [0x1404bcc40]
movdqa xmm2, xmmword [0x1404bcc50]
jmp 0x14013a828
mov r10, r11
shr r10, 0xa
movdqa xmm3, xmmword [0x1404bcc20]
movdqa xmm2, xmmword [0x1404bcc50]
movdqa xmm14, xmmword [0x1404bcc40]
movdqa xmm13, xmmword [0x1404bcc30]
xor ecx, ecx
lea rax, [0x1404bcd40]
movdqa xmm12, xmmword [0x1404bcc70]
movdqa xmm10, xmmword [0x1404bcc90]
movdqa xmm11, xmmword [0x1404bcca0]
mov rsi, rdx
nop word cs:[rax + rax]
xor edi, edi
nop word cs:[rax + rax]
prefetcht0 byte [rsi + rdi*8 + 0x140]
movdqu xmm4, xmmword [rsi + rdi*8]
movdqu xmm5, xmmword [rsi + rdi*8 + 0x10]
movdqu xmm0, xmmword [rsi + rdi*8 + 0x20]
movdqu xmm15, xmmword [rsi + rdi*8 + 0x30]
movdqu xmm1, xmmword [rdi + rax]
movdqu xmm6, xmmword [rdi + rax + 0x10]
movdqu xmm8, xmmword [rdi + rax + 0x20]
movdqu xmm7, xmmword [rdi + rax + 0x30]
pxor xmm1, xmm4
pshufd xmm9, xmm1, 0xf5
pmuludq xmm9, xmm1
pshufd xmm1, xmm4, 0x4e
paddq xmm3, xmm1
paddq xmm3, xmm9
pxor xmm6, xmm5
pshufd xmm1, xmm6, 0xf5
pmuludq xmm1, xmm6
pshufd xmm4, xmm5, 0x4e
paddq xmm2, xmm4
paddq xmm2, xmm1
pxor xmm8, xmm0
pshufd xmm1, xmm8, 0xf5
pmuludq xmm1, xmm8
pshufd xmm0, xmm0, 0x4e
paddq xmm14, xmm0
paddq xmm14, xmm1
pxor xmm7, xmm15
pshufd xmm0, xmm7, 0xf5
pmuludq xmm0, xmm7
pshufd xmm1, xmm15, 0x4e
paddq xmm13, xmm1
paddq xmm13, xmm0
add rdi, 8
cmp rdi, 0x80
jne 0x14013a6a0
movdqa xmm0, xmm3
psrlq xmm0, 0x2f
pxor xmm0, xmm3
pxor xmm0, xmmword [0x1404bcc60]
pshufd xmm3, xmm0, 0x31
pmuludq xmm0, xmm12
pmuludq xmm3, xmm12
psllq xmm3, 0x20
paddq xmm3, xmm0
movdqa xmm0, xmm2
psrlq xmm0, 0x2f
pxor xmm0, xmm2
pxor xmm0, xmmword [0x1404bcc80]
pshufd xmm2, xmm0, 0x31
pmuludq xmm0, xmm12
pmuludq xmm2, xmm12
psllq xmm2, 0x20
paddq xmm2, xmm0
movdqa xmm0, xmm14
psrlq xmm0, 0x2f
pxor xmm0, xmm14
pxor xmm0, xmm10
pshufd xmm14, xmm0, 0x31
pmuludq xmm0, xmm12
pmuludq xmm14, xmm12
psllq xmm14, 0x20
paddq xmm14, xmm0
movdqa xmm0, xmm13
psrlq xmm0, 0x2f
pxor xmm0, xmm13
pxor xmm0, xmm11
pshufd xmm13, xmm0, 0x31
pmuludq xmm0, xmm12
pmuludq xmm13, xmm12
psllq xmm13, 0x20
paddq xmm13, xmm0
inc rcx
add rsi, 0x400
cmp rcx, r10
jne 0x14013a690
mov eax, r11d
and eax, 0x3ff
cmp rax, 0x40
jae 0x14013a84d
movdqa xmm5, xmm13
movdqa xmm4, xmm14
movdqa xmm6, xmm2
movdqa xmm7, xmm3
jmp 0x14013a93a
and r11, 0xfffffffffffffc00
shr rax, 6
add r11, rdx
shl rax, 3
xor ecx, ecx
lea rbp, [0x1404bcd40]
nop dword [rax + rax]
prefetcht0 byte [r11 + rcx*8 + 0x140]
movdqu xmm7, xmmword [r11 + rcx*8]
movdqu xmm10, xmmword [r11 + rcx*8 + 0x10]
movdqu xmm9, xmmword [r11 + rcx*8 + 0x20]
movdqu xmm8, xmmword [r11 + rcx*8 + 0x30]
movdqu xmm6, xmmword [rcx + rbp]
movdqu xmm4, xmmword [rcx + rbp + 0x10]
movdqu xmm1, xmmword [rcx + rbp + 0x20]
movdqu xmm5, xmmword [rcx + rbp + 0x30]
pxor xmm6, xmm7
pshufd xmm0, xmm6, 0xf5
pmuludq xmm0, xmm6
pshufd xmm7, xmm7, 0x4e
paddq xmm7, xmm3
paddq xmm7, xmm0
pxor xmm4, xmm10
pshufd xmm0, xmm4, 0xf5
pmuludq xmm0, xmm4
pshufd xmm6, xmm10, 0x4e
paddq xmm6, xmm2
paddq xmm6, xmm0
pxor xmm1, xmm9
pshufd xmm0, xmm1, 0xf5
pmuludq xmm0, xmm1
pshufd xmm4, xmm9, 0x4e
paddq xmm4, xmm14
paddq xmm4, xmm0
pxor xmm5, xmm8
pshufd xmm0, xmm5, 0xf5
pmuludq xmm0, xmm5
pshufd xmm5, xmm8, 0x4e
paddq xmm5, xmm13
paddq xmm5, xmm0
add rcx, 8
movdqa xmm13, xmm5
movdqa xmm14, xmm4
movdqa xmm2, xmm6
movdqa xmm3, xmm7
cmp rax, rcx
jne 0x14013a870
movdqu xmm0, xmmword [rdx + r8 - 0x40]
movdqu xmm1, xmmword [rdx + r8 - 0x30]
movdqu xmm9, xmmword [rdx + r8 - 0x20]
movdqu xmm8, xmmword [rdx + r8 - 0x10]
pshufd xmm2, xmm0, 0x4e
pxor xmm0, xmmword [0x1404bccb0]
pshufd xmm3, xmm0, 0xf5
pmuludq xmm3, xmm0
paddq xmm3, xmm2
paddq xmm3, xmm7
pshufd xmm0, xmm1, 0x4e
pxor xmm1, xmmword [0x1404bccc0]
pshufd xmm2, xmm1, 0xf5
pmuludq xmm2, xmm1
paddq xmm2, xmm0
paddq xmm2, xmm6
pshufd xmm0, xmm9, 0x4e
pxor xmm9, xmmword [0x1404bccd0]
pshufd xmm1, xmm9, 0xf5
pmuludq xmm1, xmm9
paddq xmm1, xmm0
pshufd xmm6, xmm8, 0x4e
pxor xmm8, xmmword [0x1404bcce0]
paddq xmm1, xmm4
pshufd xmm0, xmm8, 0xf5
pmuludq xmm0, xmm8
paddq xmm0, xmm6
paddq xmm0, xmm5
movabs rcx, 0x9e3779b185ebca87
movq r14, xmm3
pshufd xmm3, xmm3, 0xee
movq r12, xmm3
movabs rax, 0xa44072db979083e9
xor rax, r12
movabs rbp, 0x6dd4de1cad21f72c
xor rbp, r14
mul rbp
mov r10, rdx
imul rcx, r8
xor r10, rax
add r10, rcx
movq r15, xmm2
pshufd xmm2, xmm2, 0xee
movq rbp, xmm2
movabs rax, 0xd05a8278e5c0cc4e
xor rax, rbp
movabs rcx, 0xe679cb1f67b3b7a4
xor rcx, r15
mul rcx
mov r11, rdx
xor r11, rax
movq r13, xmm1
pshufd xmm1, xmm1, 0xee
movq rsi, xmm1
movabs rax, 0x9035e08e2443f774
xor rax, rsi
movabs rcx, 0x4608b82172ffcc7d
xor rcx, r13
mul rcx
mov rcx, rdx
add r11, r10
xor rcx, rax
add rcx, r11
movq r11, xmm0
pshufd xmm0, xmm0, 0xee
movq rdi, xmm0
movabs rax, 0x65d088cb00c391bb
xor rax, rdi
movabs rbx, 0x52283c4c263a81e6
xor rbx, r11
mul rbx
xor rdx, rax
add rdx, rcx
mov rax, rdx
shr rax, 0x25
xor rax, rdx
movabs r10, 0x165667919e3779f9
imul rax, r10
mov rcx, rax
shr rcx, 0x20
xor rcx, rax
mov qword [r9], rcx
movabs rbx, 0xc2b2ae3d27d4eb4f
imul rbx, r8
not rbx
movabs rax, 0x3483acc5ea647378
xor rax, r12
movabs rcx, 0xd9c97e9fc83159b4
xor rcx, r14
mul rcx
mov r8, rdx
xor r8, rax
movabs rax, 0xb751dd0d17eb6313
xor rax, rbp
movabs rcx, 0xfaffa081c5c3ebd3
xor rcx, r15
mul rcx
mov rcx, rdx
add r8, rbx
xor rcx, rax
add rcx, r8
movabs rax, 0x7d58be162b9e68d4
xor rax, rsi
movabs rbp, 0x29265516d349daf0
xor rbp, r13
mul rbp
mov r8, rdx
xor r8, rax
add r8, rcx
movabs rax, 0x958f3acb45ce31d0
xor rax, rdi
movabs rcx, 0x7ad1b8f88ffca147
xor rcx, r11
mul rcx
xor rdx, rax
add rdx, r8
mov rax, rdx
shr rax, 0x25
xor rax, rdx
imul rax, r10
mov rcx, rax
shr rcx, 0x20
xor rcx, rax
mov qword [r9 + 8], rcx
mov rax, r9
movaps xmm6, xmmword [rsp]
movaps xmm7, xmmword [rsp + 0x10]
movaps xmm8, xmmword [rsp + 0x20]
movaps xmm9, xmmword [rsp + 0x30]
movaps xmm10, xmmword [rsp + 0x40]
movaps xmm11, xmmword [rsp + 0x50]
movaps xmm12, xmmword [rsp + 0x60]
movaps xmm13, xmmword [rsp + 0x70]
movaps xmm14, xmmword [rsp + 0x80]
movaps xmm15, xmmword [rsp + 0x90]
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret