Function at 0x140136c20
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x180
movdqa xmmword [rsp + 0x170], xmm15
movdqa xmmword [rsp + 0x160], xmm14
movaps xmmword [rsp + 0x150], xmm13
movdqa xmmword [rsp + 0x140], xmm12
movdqa xmmword [rsp + 0x130], xmm11
movdqa xmmword [rsp + 0x120], xmm10
movdqa xmmword [rsp + 0x110], xmm9
movdqa xmmword [rsp + 0x100], xmm8
movdqa xmmword [rsp + 0xf0], xmm7
movdqa xmmword [rsp + 0xe0], xmm6
test r8, r8
je 0x140136daf
movq xmm0, r8
neg r8
movq xmm1, r8
punpcklqdq xmm0, xmm1
lea rax, [rsp + 0x20]
movdqa xmm1, xmmword [0x1404bcc00]
paddq xmm1, xmm0
movdqa xmmword [rax], xmm1
movdqa xmm1, xmmword [0x1404bcc10]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x10], xmm1
movdqa xmm1, xmmword [0x1404bcbe0]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x20], xmm1
movdqa xmm1, xmmword [0x1404bcbf0]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x30], xmm1
movdqa xmm1, xmmword [0x1404bcbc0]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x40], xmm1
movdqa xmm1, xmmword [0x1404bcbd0]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x50], xmm1
movdqa xmm1, xmmword [0x1404bcba0]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x60], xmm1
movdqa xmm1, xmmword [0x1404bcbb0]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x70], xmm1
movdqa xmm1, xmmword [0x1404bcc60]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x80], xmm1
movdqa xmm1, xmmword [0x1404bcc80]
paddq xmm1, xmm0
movdqa xmmword [rax + 0x90], xmm1
movdqa xmm1, xmmword [0x1404bcc90]
paddq xmm1, xmm0
paddq xmm0, xmmword [0x1404bcca0]
movdqa xmmword [rax + 0xa0], xmm1
movdqa xmmword [rax + 0xb0], xmm0
lea r9, [rdx - 1]
cmp r9, 0x400
jae 0x140136de7
movdqa xmm3, xmmword [0x1404bcc20]
movdqa xmm13, xmmword [0x1404bcc30]
movdqa xmm15, xmmword [0x1404bcc40]
movdqa xmm2, xmmword [0x1404bcc50]
jmp 0x140136fe3
lea r9, [rdx - 1]
cmp r9, 0x400
jae 0x140137221
movdqa xmm3, xmmword [0x1404bcc20]
movdqa xmm13, xmmword [0x1404bcc30]
movdqa xmm14, xmmword [0x1404bcc40]
movdqa xmm2, xmmword [0x1404bcc50]
jmp 0x14013741a
mov r8, r9
shr r8, 0xa
movaps xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x10], xmm0
movdqa xmm0, xmmword [rsp + 0xb0]
movdqa xmmword [rsp], xmm0
movdqa xmm10, xmmword [rsp + 0xc0]
movdqa xmm11, xmmword [rsp + 0xd0]
movdqa xmm3, xmmword [0x1404bcc20]
movdqa xmm2, xmmword [0x1404bcc50]
movdqa xmm15, xmmword [0x1404bcc40]
movdqa xmm13, xmmword [0x1404bcc30]
xor r10d, r10d
movdqa xmm12, xmmword [0x1404bcc70]
mov rax, rcx
nop
xor esi, esi
nop word cs:[rax + rax]
prefetcht0 byte [rax + rsi*8 + 0x140]
movdqu xmm7, xmmword [rax + rsi*8]
movdqu xmm4, xmmword [rax + rsi*8 + 0x10]
movdqu xmm0, xmmword [rax + rsi*8 + 0x20]
movdqu xmm14, xmmword [rax + rsi*8 + 0x30]
movdqu xmm5, xmmword [rsp + rsi + 0x20]
movdqu xmm1, xmmword [rsp + rsi + 0x30]
movdqu xmm8, xmmword [rsp + rsi + 0x40]
movdqu xmm6, xmmword [rsp + rsi + 0x50]
pxor xmm5, xmm7
pshufd xmm9, xmm5, 0xf5
pmuludq xmm9, xmm5
pshufd xmm5, xmm7, 0x4e
paddq xmm3, xmm5
paddq xmm3, xmm9
pxor xmm1, xmm4
pshufd xmm5, xmm1, 0xf5
pmuludq xmm5, xmm1
pshufd xmm1, xmm4, 0x4e
paddq xmm2, xmm1
paddq xmm2, xmm5
pxor xmm8, xmm0
pshufd xmm1, xmm8, 0xf5
pmuludq xmm1, xmm8
pshufd xmm0, xmm0, 0x4e
paddq xmm15, xmm0
paddq xmm15, xmm1
pxor xmm6, xmm14
pshufd xmm0, xmm6, 0xf5
pmuludq xmm0, xmm6
pshufd xmm1, xmm14, 0x4e
paddq xmm13, xmm1
paddq xmm13, xmm0
add rsi, 8
cmp rsi, 0x80
jne 0x140136e60
movdqa xmm0, xmm3
psrlq xmm0, 0x2f
pxor xmm0, xmmword [rsp + 0x10]
pxor xmm0, xmm3
pshufd xmm3, xmm0, 0x31
pmuludq xmm0, xmm12
pmuludq xmm3, xmm12
psllq xmm3, 0x20
paddq xmm3, xmm0
movdqa xmm0, xmm2
psrlq xmm0, 0x2f
pxor xmm0, xmmword [rsp]
pxor xmm0, xmm2
pshufd xmm2, xmm0, 0x31
pmuludq xmm0, xmm12
pmuludq xmm2, xmm12
psllq xmm2, 0x20
paddq xmm2, xmm0
movdqa xmm0, xmm15
psrlq xmm0, 0x2f
pxor xmm0, xmm10
pxor xmm0, xmm15
pshufd xmm15, xmm0, 0x31
pmuludq xmm0, xmm12
pmuludq xmm15, xmm12
psllq xmm15, 0x20
paddq xmm15, xmm0
movdqa xmm0, xmm13
psrlq xmm0, 0x2f
pxor xmm0, xmm11
pxor xmm0, xmm13
pshufd xmm13, xmm0, 0x31
pmuludq xmm0, xmm12
pmuludq xmm13, xmm12
psllq xmm13, 0x20
paddq xmm13, xmm0
inc r10
add rax, 0x400
cmp r10, r8
jne 0x140136e50
mov r8d, r9d
and r8d, 0x3ff
cmp r8, 0x40
jae 0x14013700a
movdqa xmm4, xmm13
movdqa xmm5, xmm15
movdqa xmm6, xmm2
movdqa xmm7, xmm3
jmp 0x1401370eb
and r9, 0xfffffffffffffc00
shr r8, 6
add r9, rcx
shl r8, 3
xor eax, eax
nop
prefetcht0 byte [r9 + rax*8 + 0x140]
movdqu xmm7, xmmword [r9 + rax*8]
movdqu xmm10, xmmword [r9 + rax*8 + 0x10]
movdqu xmm9, xmmword [r9 + rax*8 + 0x20]
movdqu xmm8, xmmword [r9 + rax*8 + 0x30]
movdqu xmm6, xmmword [rsp + rax + 0x20]
movdqu xmm5, xmmword [rsp + rax + 0x30]
movdqu xmm1, xmmword [rsp + rax + 0x40]
movdqu xmm4, xmmword [rsp + rax + 0x50]
pxor xmm6, xmm7
pshufd xmm0, xmm6, 0xf5
pmuludq xmm0, xmm6
pshufd xmm7, xmm7, 0x4e
paddq xmm7, xmm3
paddq xmm7, xmm0
pxor xmm5, xmm10
pshufd xmm0, xmm5, 0xf5
pmuludq xmm0, xmm5
pshufd xmm6, xmm10, 0x4e
paddq xmm6, xmm2
paddq xmm6, xmm0
pxor xmm1, xmm9
pshufd xmm0, xmm1, 0xf5
pmuludq xmm0, xmm1
pshufd xmm5, xmm9, 0x4e
paddq xmm5, xmm15
paddq xmm5, xmm0
pxor xmm4, xmm8
pshufd xmm0, xmm4, 0xf5
pmuludq xmm0, xmm4
pshufd xmm4, xmm8, 0x4e
paddq xmm4, xmm13
paddq xmm4, xmm0
add rax, 8
movdqa xmm13, xmm4
movdqa xmm15, xmm5
movdqa xmm2, xmm6
movdqa xmm3, xmm7
cmp r8, rax
jne 0x140137020
movdqu xmm0, xmmword [rsp + 0x99]
movdqu xmm2, xmmword [rcx + rdx - 0x40]
movdqu xmm3, xmmword [rcx + rdx - 0x30]
movdqu xmm9, xmmword [rcx + rdx - 0x20]
movdqu xmm8, xmmword [rcx + rdx - 0x10]
pxor xmm0, xmm2
pshufd xmm1, xmm0, 0xf5
pmuludq xmm1, xmm0
pshufd xmm0, xmm2, 0x4e
paddq xmm0, xmm1
paddq xmm0, xmm7
movdqu xmm1, xmmword [rsp + 0xa9]
pxor xmm1, xmm3
pshufd xmm7, xmm1, 0xf5
pmuludq xmm7, xmm1
pshufd xmm2, xmm3, 0x4e
paddq xmm2, xmm7
paddq xmm2, xmm6
movdqu xmm1, xmmword [rsp + 0xb9]
pxor xmm1, xmm9
pshufd xmm3, xmm1, 0xf5
pmuludq xmm3, xmm1
pshufd xmm1, xmm9, 0x4e
paddq xmm1, xmm3
paddq xmm1, xmm5
movdqu xmm3, xmmword [rsp + 0xc9]
pxor xmm3, xmm8
pshufd xmm5, xmm3, 0xf5
pmuludq xmm5, xmm3
pshufd xmm3, xmm8, 0x4e
paddq xmm3, xmm5
paddq xmm3, xmm4
movabs rsi, 0x9e3779b185ebca87
imul rsi, rdx
movdqu xmm4, xmmword [rsp + 0x2b]
pxor xmm4, xmm0
movdqu xmm5, xmmword [rsp + 0x3b]
pxor xmm5, xmm2
movdqu xmm2, xmmword [rsp + 0x4b]
pxor xmm2, xmm1
movdqu xmm0, xmmword [rsp + 0x5b]
pxor xmm0, xmm3
movq rcx, xmm4
pshufd xmm1, xmm4, 0xee
movq rax, xmm1
mul rcx
mov rcx, rdx
xor rcx, rax
add rcx, rsi
movq rdx, xmm5
pshufd xmm1, xmm5, 0xee
movq rax, xmm1
mul rdx
mov r8, rdx
xor r8, rax
add r8, rcx
movq rcx, xmm2
pshufd xmm1, xmm2, 0xee
movq rax, xmm1
mul rcx
mov rcx, rdx
xor rcx, rax
add rcx, r8
jmp 0x140137647
mov r8, r9
shr r8, 0xa
movdqa xmm3, xmmword [0x1404bcc20]
movdqa xmm2, xmmword [0x1404bcc50]
movdqa xmm14, xmmword [0x1404bcc40]
movdqa xmm13, xmmword [0x1404bcc30]
xor r10d, r10d
lea r11, [0x1404bcd40]
movdqa xmm12, xmmword [0x1404bcc70]
movdqa xmm10, xmmword [0x1404bcc90]
movdqa xmm11, xmmword [0x1404bcca0]
mov rax, rcx
nop word cs:[rax + rax]
xor esi, esi
nop word cs:[rax + rax]
prefetcht0 byte [rax + rsi*8 + 0x140]
movdqu xmm4, xmmword [rax + rsi*8]
movdqu xmm5, xmmword [rax + rsi*8 + 0x10]
movdqu xmm0, xmmword [rax + rsi*8 + 0x20]
movdqu xmm15, xmmword [rax + rsi*8 + 0x30]
movdqu xmm1, xmmword [rsi + r11]
movdqu xmm6, xmmword [rsi + r11 + 0x10]
movdqu xmm8, xmmword [rsi + r11 + 0x20]
movdqu xmm7, xmmword [rsi + r11 + 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 rsi, 8
cmp rsi, 0x80
jne 0x140137290
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 r10
add rax, 0x400
cmp r10, r8
jne 0x140137280
mov r8d, r9d
and r8d, 0x3ff
cmp r8, 0x40
jae 0x140137441
movdqa xmm4, xmm13
movdqa xmm5, xmm14
movdqa xmm6, xmm2
movdqa xmm7, xmm3
jmp 0x14013752e
and r9, 0xfffffffffffffc00
shr r8, 6
add r9, rcx
shl r8, 3
xor eax, eax
lea r10, [0x1404bcd40]
nop dword [rax]
prefetcht0 byte [r9 + rax*8 + 0x140]
movdqu xmm7, xmmword [r9 + rax*8]
movdqu xmm10, xmmword [r9 + rax*8 + 0x10]
movdqu xmm9, xmmword [r9 + rax*8 + 0x20]
movdqu xmm8, xmmword [r9 + rax*8 + 0x30]
movdqu xmm6, xmmword [rax + r10]
movdqu xmm5, xmmword [rax + r10 + 0x10]
movdqu xmm1, xmmword [rax + r10 + 0x20]
movdqu xmm4, xmmword [rax + r10 + 0x30]
pxor xmm6, xmm7
pshufd xmm0, xmm6, 0xf5
pmuludq xmm0, xmm6
pshufd xmm7, xmm7, 0x4e
paddq xmm7, xmm3
paddq xmm7, xmm0
pxor xmm5, xmm10
pshufd xmm0, xmm5, 0xf5
pmuludq xmm0, xmm5
pshufd xmm6, xmm10, 0x4e
paddq xmm6, xmm2
paddq xmm6, xmm0
pxor xmm1, xmm9
pshufd xmm0, xmm1, 0xf5
pmuludq xmm0, xmm1
pshufd xmm5, xmm9, 0x4e
paddq xmm5, xmm14
paddq xmm5, xmm0
pxor xmm4, xmm8
pshufd xmm0, xmm4, 0xf5
pmuludq xmm0, xmm4
pshufd xmm4, xmm8, 0x4e
paddq xmm4, xmm13
paddq xmm4, xmm0
add rax, 8
movdqa xmm13, xmm4
movdqa xmm14, xmm5
movdqa xmm2, xmm6
movdqa xmm3, xmm7
cmp r8, rax
jne 0x140137460
movdqu xmm0, xmmword [rcx + rdx - 0x40]
movdqu xmm1, xmmword [rcx + rdx - 0x30]
movdqu xmm8, xmmword [rcx + rdx - 0x20]
pshufd xmm2, xmm0, 0x4e
pxor xmm0, xmmword [0x1404bccb0]
movdqu xmm9, xmmword [rcx + rdx - 0x10]
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, xmm8, 0x4e
pxor xmm8, xmmword [0x1404bccd0]
pshufd xmm1, xmm8, 0xf5
pmuludq xmm1, xmm8
paddq xmm1, xmm0
paddq xmm1, xmm5
pshufd xmm5, xmm9, 0x4e
pxor xmm9, xmmword [0x1404bcce0]
pshufd xmm0, xmm9, 0xf5
pmuludq xmm0, xmm9
paddq xmm0, xmm5
paddq xmm0, xmm4
movabs rsi, 0x9e3779b185ebca87
imul rsi, rdx
pxor xmm3, xmmword [0x1404bccf0]
movq rcx, xmm3
pshufd xmm3, xmm3, 0xee
movq rax, xmm3
mul rcx
mov rcx, rdx
xor rcx, rax
add rcx, rsi
pxor xmm2, xmmword [0x1404bcd00]
movq rdx, xmm2
pshufd xmm2, xmm2, 0xee
movq rax, xmm2
mul rdx
mov r8, rdx
xor r8, rax
add r8, rcx
pxor xmm1, xmmword [0x1404bcd10]
movq rcx, xmm1
pshufd xmm1, xmm1, 0xee
movq rax, xmm1
mul rcx
mov rcx, rdx
xor rcx, rax
add rcx, r8
pxor xmm0, xmmword [0x1404bcd20]
movq rdx, xmm0
pshufd xmm0, xmm0, 0xee
movq rax, xmm0
mul rdx
xor rdx, rax
add rdx, rcx
mov rax, rdx
shr rax, 0x25
xor rax, rdx
movabs rcx, 0x165667919e3779f9
imul rcx, rax
mov rax, rcx
shr rax, 0x20
xor rax, rcx
movaps xmm6, xmmword [rsp + 0xe0]
movaps xmm7, xmmword [rsp + 0xf0]
movaps xmm8, xmmword [rsp + 0x100]
movaps xmm9, xmmword [rsp + 0x110]
movaps xmm10, xmmword [rsp + 0x120]
movaps xmm11, xmmword [rsp + 0x130]
movaps xmm12, xmmword [rsp + 0x140]
movaps xmm13, xmmword [rsp + 0x150]
movaps xmm14, xmmword [rsp + 0x160]
movaps xmm15, xmmword [rsp + 0x170]
add rsp, 0x180
pop rsi
ret