Function at 0x140028b20
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
movaps xmmword [rsp + 0xe0], xmm15
movaps xmmword [rsp + 0xd0], xmm14
movaps xmmword [rsp + 0xc0], xmm13
movaps xmmword [rsp + 0xb0], xmm12
movaps xmmword [rsp + 0xa0], xmm11
movaps xmmword [rsp + 0x90], xmm10
movaps xmmword [rsp + 0x80], xmm9
movaps xmmword [rsp + 0x70], xmm8
movaps xmmword [rsp + 0x60], xmm7
movaps xmmword [rsp + 0x50], xmm6
mov r9, r8
mov r13, rdx
mov rax, qword [0x1401989c0]
test byte [rax + 3], 1
je 0x140028ba0
mov eax, dword [rax + 4]
test al, 2
jne 0x140028e45
movdqa xmm0, xmmword [rcx]
pshufd xmm1, xmm0, 0xee
movq rax, xmm0
bswap rax
movq rdi, xmm1
bswap rdi
cmp r9, 0x10
mov qword [rsp + 0x28], rcx
jb 0x140028cf2
shr r9, 4
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx + 0x18]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rdx
xor rcx, rdx
mov qword [rsp + 0x30], rcx
shl r9, 4
xor r12d, r12d
mov qword [rsp + 0x48], r9
nop word cs:[rax + rax]
movdqu xmm0, xmmword [r13 + r12]
pshufd xmm1, xmm0, 0xee
movq rbx, xmm0
bswap rbx
xor rbx, rax
movq r15, xmm1
bswap r15
xor r15, rdi
mov rcx, r15
mov rdx, qword [rsp + 0x38]
call fcn.1400290f0
mov rbp, rax
mov rdi, rdx
mov rcx, rbx
mov rdx, qword [rsp + 0x40]
call fcn.1400290f0
mov rsi, rax
mov r14, rdx
xor r15, rbx
mov rcx, r15
mov rdx, qword [rsp + 0x30]
call fcn.1400290f0
mov rcx, rbp
shl rcx, 0x3f
mov r8, rbp
shl r8, 0x3e
xor r8, rcx
mov r9, rbp
shl r9, 0x39
xor r9, rax
xor r9, r8
xor rdi, rbp
mov rcx, rdi
xor rcx, rsi
xor rcx, r9
mov r8, rbp
shr r8, 1
mov rax, rcx
shr rax, 1
mov r9, rcx
mov r11, rcx
shr r11, 2
xor r11, rax
mov r10, rcx
mov rax, rcx
shr rax, 7
xor rax, r14
xor rax, r11
xor rax, rcx
shl rcx, 0x3f
mov r11, rbp
shr r11, 2
xor r11, r8
shl r9, 0x3e
shr rbp, 7
shl r10, 0x39
xor r10, r9
mov r9, qword [rsp + 0x48]
xor rbp, rdx
xor rbp, r11
xor rbp, rcx
xor rbp, r10
xor rdi, r14
xor rdi, rsi
xor rdi, rbp
add r12, 0x10
cmp r9, r12
jne 0x140028c00
bswap rdi
mov rcx, rdi
shr rcx, 0x38
movd xmm0, ecx
mov rcx, rdi
shr rcx, 0x30
movd xmm1, ecx
mov rcx, rdi
shr rcx, 0x28
movd xmm3, ecx
mov rcx, rdi
shr rcx, 0x20
movd xmm2, ecx
mov ecx, edi
shr ecx, 0x18
movd xmm5, ecx
mov ecx, edi
shr ecx, 0x10
movd xmm6, ecx
bswap rax
movd xmm4, edi
mov ecx, edi
shr ecx, 8
movd xmm7, ecx
mov rcx, rax
shr rcx, 0x38
movd xmm8, ecx
mov rcx, rax
shr rcx, 0x30
movd xmm9, ecx
mov rcx, rax
shr rcx, 0x28
movd xmm10, ecx
mov rcx, rax
shr rcx, 0x20
movd xmm11, ecx
mov ecx, eax
shr ecx, 0x18
movd xmm12, ecx
mov ecx, eax
shr ecx, 0x10
movd xmm13, ecx
movd xmm14, eax
shr eax, 8
movd xmm15, eax
punpcklbw xmm1, xmm0
punpcklbw xmm2, xmm3
punpcklwd xmm2, xmm1
punpcklbw xmm6, xmm5
punpcklbw xmm4, xmm7
punpcklwd xmm4, xmm6
punpckldq xmm4, xmm2
punpcklbw xmm9, xmm8
punpcklbw xmm11, xmm10
punpcklwd xmm11, xmm9
punpcklbw xmm13, xmm12
punpcklbw xmm14, xmm15
punpcklwd xmm14, xmm13
punpckldq xmm14, xmm11
punpcklqdq xmm14, xmm4
mov rax, qword [rsp + 0x28]
movdqa xmmword [rax], xmm14
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm8, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x80]
movaps xmm10, xmmword [rsp + 0x90]
movaps xmm11, xmmword [rsp + 0xa0]
movaps xmm12, xmmword [rsp + 0xb0]
movaps xmm13, xmmword [rsp + 0xc0]
movaps xmm14, xmmword [rsp + 0xd0]
movaps xmm15, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
not eax
lea rdx, [rcx + 0x10]
mov r8, r13
test eax, 0x10400000
jne 0x140028ebc
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm8, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x80]
movaps xmm10, xmmword [rsp + 0x90]
movaps xmm11, xmmword [rsp + 0xa0]
movaps xmm12, xmmword [rsp + 0xb0]
movaps xmm13, xmmword [rsp + 0xc0]
movaps xmm14, xmmword [rsp + 0xd0]
movaps xmm15, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400fc460
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm8, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x80]
movaps xmm10, xmmword [rsp + 0x90]
movaps xmm11, xmmword [rsp + 0xa0]
movaps xmm12, xmmword [rsp + 0xb0]
movaps xmm13, xmmword [rsp + 0xc0]
movaps xmm14, xmmword [rsp + 0xd0]
movaps xmm15, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400fbbc0
lea rax, [rsp - 0x88]
lea rsp, [rax - 0x20]
movaps xmmword [rax - 0x20], xmm6
movaps xmmword [rax - 0x10], xmm7
movaps xmmword [rax], xmm8
movaps xmmword [rax + 0x10], xmm9
movaps xmmword [rax + 0x20], xmm10
movaps xmmword [rax + 0x30], xmm11
movaps xmmword [rax + 0x40], xmm12
movaps xmmword [rax + 0x50], xmm13
movaps xmmword [rax + 0x60], xmm14
movaps xmmword [rax + 0x70], xmm15
movdqa xmm10, xmmword [0x140197a40]
movdqu xmm0, xmmword [rcx]
movdqu xmm2, xmmword [rdx]
movdqu xmm7, xmmword [rdx + 0x20]
pshufb xmm0, xmm10
sub r9, 0x10
je 0x1400fc196
movdqu xmm6, xmmword [rdx + 0x10]
lea rax, [0x1401301c0]
mov eax, dword [rax + 4]
cmp r9, 0x30
jb 0x1400fbf82
and eax, 0x4400000
cmp eax, 0x400000
je 0x1400fbf82
sub r9, 0x30
movabs rax, 0xa040608020c0e000
movdqu xmm14, xmmword [rdx + 0x30]
movdqu xmm15, xmmword [rdx + 0x40]
movdqu xmm3, xmmword [r8 + 0x30]
movdqu xmm11, xmmword [r8 + 0x20]
pshufb xmm3, xmm10
pshufb xmm11, xmm10
movdqa xmm5, xmm3
pshufd xmm4, xmm3, 0x4e
pxor xmm4, xmm3
pclmulqdq xmm3, xmm2, 0
pclmulqdq xmm5, xmm2, 0x11
pclmulqdq xmm4, xmm7, 0
movdqa xmm13, xmm11
pshufd xmm12, xmm11, 0x4e
pxor xmm12, xmm11
pclmulqdq xmm11, xmm6, 0
pclmulqdq xmm13, xmm6, 0x11
pclmulqdq xmm12, xmm7, 0x10
xorps xmm3, xmm11
xorps xmm5, xmm13
movups xmm7, xmmword [rdx + 0x50]
xorps xmm4, xmm12
movdqu xmm11, xmmword [r8 + 0x10]
movdqu xmm8, xmmword [r8]
pshufb xmm11, xmm10
pshufb xmm8, xmm10
movdqa xmm13, xmm11
pshufd xmm12, xmm11, 0x4e
pxor xmm0, xmm8
pxor xmm12, xmm11
pclmulqdq xmm11, xmm14, 0
movdqa xmm1, xmm0
pshufd xmm8, xmm0, 0x4e
pxor xmm8, xmm0
pclmulqdq xmm13, xmm14, 0x11
pclmulqdq xmm12, xmm7, 0
xorps xmm3, xmm11
xorps xmm5, xmm13
lea r8, [r8 + 0x40]
sub r9, 0x40
jb 0x1400fbec5
jmp 0x1400fbd40
pclmulqdq xmm0, xmm15, 0
xorps xmm4, xmm12
movdqu xmm11, xmmword [r8 + 0x30]
pshufb xmm11, xmm10
pclmulqdq xmm1, xmm15, 0x11
xorps xmm0, xmm3
movdqu xmm3, xmmword [r8 + 0x20]
movdqa xmm13, xmm11
pclmulqdq xmm8, xmm7, 0x10
pshufd xmm12, xmm11, 0x4e
xorps xmm1, xmm5
pxor xmm12, xmm11
pshufb xmm3, xmm10
movups xmm7, xmmword [rdx + 0x20]
xorps xmm8, xmm4
pclmulqdq xmm11, xmm2, 0
pshufd xmm4, xmm3, 0x4e
pxor xmm8, xmm0
movdqa xmm5, xmm3
pxor xmm8, xmm1
pxor xmm4, xmm3
movdqa xmm9, xmm8
pclmulqdq xmm13, xmm2, 0x11
pslldq xmm8, 8
psrldq xmm9, 8
pxor xmm0, xmm8
movdqa xmm8, xmmword [0x140197a60]
pxor xmm1, xmm9
movq xmm9, rax
pand xmm8, xmm0
pshufb xmm9, xmm8
pxor xmm9, xmm0
pclmulqdq xmm12, xmm7, 0
psllq xmm9, 0x39
movdqa xmm8, xmm9
pslldq xmm9, 8
pclmulqdq xmm3, xmm6, 0
psrldq xmm8, 8
pxor xmm0, xmm9
pxor xmm1, xmm8
movdqu xmm8, xmmword [r8]
movdqa xmm9, xmm0
psrlq xmm0, 1
pclmulqdq xmm5, xmm6, 0x11
xorps xmm3, xmm11
movdqu xmm11, xmmword [r8 + 0x10]
pshufb xmm11, xmm10
pclmulqdq xmm4, xmm7, 0x10
xorps xmm5, xmm13
movups xmm7, xmmword [rdx + 0x50]
pshufb xmm8, xmm10
pxor xmm1, xmm9
pxor xmm9, xmm0
psrlq xmm0, 5
movdqa xmm13, xmm11
pxor xmm4, xmm12
pshufd xmm12, xmm11, 0x4e
pxor xmm0, xmm9
pxor xmm1, xmm8
pxor xmm12, xmm11
pclmulqdq xmm11, xmm14, 0
psrlq xmm0, 1
pxor xmm0, xmm1
movdqa xmm1, xmm0
pclmulqdq xmm13, xmm14, 0x11
xorps xmm3, xmm11
pshufd xmm8, xmm0, 0x4e
pxor xmm8, xmm0
pclmulqdq xmm12, xmm7, 0
xorps xmm5, xmm13
lea r8, [r8 + 0x40]
sub r9, 0x40
jae 0x1400fbd40
pclmulqdq xmm0, xmm15, 0
pclmulqdq xmm1, xmm15, 0x11
pclmulqdq xmm8, xmm7, 0x10
xorps xmm4, xmm12
xorps xmm0, xmm3
xorps xmm1, xmm5
pxor xmm1, xmm0
pxor xmm8, xmm4
pxor xmm8, xmm1
pxor xmm1, xmm0
movdqa xmm9, xmm8
psrldq xmm8, 8
pslldq xmm9, 8
pxor xmm1, xmm8
pxor xmm0, xmm9
movdqa xmm4, xmm0
movdqa xmm3, xmm0
psllq xmm0, 5
pxor xmm3, xmm0
psllq xmm0, 1
pxor xmm0, xmm3
psllq xmm0, 0x39
movdqa xmm3, xmm0
pslldq xmm0, 8
psrldq xmm3, 8
pxor xmm0, xmm4
pxor xmm1, xmm3
movdqa xmm4, xmm0
psrlq xmm0, 1
pxor xmm1, xmm4
pxor xmm4, xmm0
psrlq xmm0, 5
pxor xmm0, xmm4
psrlq xmm0, 1
pxor xmm0, xmm1
add r9, 0x40
je 0x1400fc23b
movdqu xmm7, xmmword [rdx + 0x20]
sub r9, 0x10
je 0x1400fc196
movdqu xmm8, xmmword [r8]
movdqu xmm3, xmmword [r8 + 0x10]
pshufb xmm8, xmm10
pshufb xmm3, xmm10
pxor xmm0, xmm8
movdqa xmm5, xmm3
pshufd xmm4, xmm3, 0x4e
pxor xmm4, xmm3
pclmulqdq xmm3, xmm2, 0
pclmulqdq xmm5, xmm2, 0x11
pclmulqdq xmm4, xmm7, 0
lea r8, [r8 + 0x20]
nop
sub r9, 0x20
jbe 0x1400fc0e1
nop
jmp 0x1400fbfe0
movdqa xmm1, xmm0
movdqa xmm8, xmm4
pshufd xmm4, xmm0, 0x4e
pxor xmm4, xmm0
pclmulqdq xmm0, xmm6, 0
pclmulqdq xmm1, xmm6, 0x11
pclmulqdq xmm4, xmm7, 0x10
pxor xmm0, xmm3
pxor xmm1, xmm5
movdqu xmm9, xmmword [r8]
pxor xmm8, xmm0
pshufb xmm9, xmm10
movdqu xmm3, xmmword [r8 + 0x10]
pxor xmm8, xmm1
pxor xmm1, xmm9
pxor xmm4, xmm8
pshufb xmm3, xmm10
movdqa xmm8, xmm4
psrldq xmm8, 8
pslldq xmm4, 8
pxor xmm1, xmm8
pxor xmm0, xmm4
movdqa xmm5, xmm3
movdqa xmm9, xmm0
movdqa xmm8, xmm0
psllq xmm0, 5
pxor xmm8, xmm0
pclmulqdq xmm3, xmm2, 0
psllq xmm0, 1
pxor xmm0, xmm8
psllq xmm0, 0x39
movdqa xmm8, xmm0
pslldq xmm0, 8
psrldq xmm8, 8
pxor xmm0, xmm9
pshufd xmm4, xmm5, 0x4e
pxor xmm1, xmm8
pxor xmm4, xmm5
movdqa xmm9, xmm0
psrlq xmm0, 1
pclmulqdq xmm5, xmm2, 0x11
pxor xmm1, xmm9
pxor xmm9, xmm0
psrlq xmm0, 5
pxor xmm0, xmm9
lea r8, [r8 + 0x20]
psrlq xmm0, 1
pclmulqdq xmm4, xmm7, 0
pxor xmm0, xmm1
sub r9, 0x20
ja 0x1400fbfe0
movdqa xmm1, xmm0
movdqa xmm8, xmm4
pshufd xmm4, xmm0, 0x4e
pxor xmm4, xmm0
pclmulqdq xmm0, xmm6, 0
pclmulqdq xmm1, xmm6, 0x11
pclmulqdq xmm4, xmm7, 0x10
pxor xmm0, xmm3
pxor xmm1, xmm5
pxor xmm8, xmm0
pxor xmm8, xmm1
pxor xmm4, xmm8
movdqa xmm8, xmm4
psrldq xmm8, 8
pslldq xmm4, 8
pxor xmm1, xmm8
pxor xmm0, xmm4
movdqa xmm4, xmm0
movdqa xmm3, xmm0
psllq xmm0, 5
pxor xmm3, xmm0
psllq xmm0, 1
pxor xmm0, xmm3
psllq xmm0, 0x39
movdqa xmm3, xmm0
pslldq xmm0, 8
psrldq xmm3, 8
pxor xmm0, xmm4
pxor xmm1, xmm3
movdqa xmm4, xmm0
psrlq xmm0, 1
pxor xmm1, xmm4
pxor xmm4, xmm0
psrlq xmm0, 5
pxor xmm0, xmm4
psrlq xmm0, 1
pxor xmm0, xmm1
test r9, r9
jne 0x1400fc23b
movdqu xmm8, xmmword [r8]
pshufb xmm8, xmm10
pxor xmm0, xmm8
movdqa xmm1, xmm0
pshufd xmm3, xmm0, 0x4e
pxor xmm3, xmm0
pclmulqdq xmm0, xmm2, 0
pclmulqdq xmm1, xmm2, 0x11
pclmulqdq xmm3, xmm7, 0
pxor xmm3, xmm0
pxor xmm3, xmm1
movdqa xmm4, xmm3
psrldq xmm3, 8
pslldq xmm4, 8
pxor xmm1, xmm3
pxor xmm0, xmm4
movdqa xmm4, xmm0
movdqa xmm3, xmm0
psllq xmm0, 5
pxor xmm3, xmm0
psllq xmm0, 1
pxor xmm0, xmm3
psllq xmm0, 0x39
movdqa xmm3, xmm0
pslldq xmm0, 8
psrldq xmm3, 8
pxor xmm0, xmm4
pxor xmm1, xmm3
movdqa xmm4, xmm0
psrlq xmm0, 1
pxor xmm1, xmm4
pxor xmm4, xmm0
psrlq xmm0, 5
pxor xmm0, xmm4
psrlq xmm0, 1
pxor xmm0, xmm1
pshufb xmm0, xmm10
movdqu xmmword [rcx], xmm0
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]
lea rsp, [rsp + 0xa8]
ret
lea rax, [rsp - 0x88]
lea rsp, [rax - 0x20]
movaps xmmword [rax - 0x20], xmm6
movaps xmmword [rax - 0x10], xmm7
movaps xmmword [rax], xmm8
movaps xmmword [rax + 0x10], xmm9
movaps xmmword [rax + 0x20], xmm10
movaps xmmword [rax + 0x30], xmm11
movaps xmmword [rax + 0x40], xmm12
movaps xmmword [rax + 0x50], xmm13
movaps xmmword [rax + 0x60], xmm14
movaps xmmword [rax + 0x70], xmm15
vzeroupper
vmovdqu xmm10, xmmword [rcx]
lea r10, [0x140197a50]
lea rdx, [rdx + 0x40]
vmovdqu xmm13, xmmword [0x140197a40]
vpshufb xmm10, xmm10, xmm13
cmp r9, 0x80
jb 0x1400fc8e0
sub r9, 0x80
vmovdqu xmm14, xmmword [r8 + 0x70]
vmovdqu xmm6, xmmword [rdx - 0x40]
vpshufb xmm14, xmm14, xmm13
vmovdqu xmm7, xmmword [rdx - 0x20]
vpunpckhqdq xmm9, xmm14, xmm14
vmovdqu xmm15, xmmword [r8 + 0x60]
vpclmulqdq xmm0, xmm14, xmm6, 0
vpxor xmm9, xmm9, xmm14
vpshufb xmm15, xmm15, xmm13
vpclmulqdq xmm1, xmm14, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx - 0x30]
vpunpckhqdq xmm8, xmm15, xmm15
vmovdqu xmm14, xmmword [r8 + 0x50]
vpclmulqdq xmm2, xmm9, xmm7, 0
vpxor xmm8, xmm8, xmm15
vpshufb xmm14, xmm14, xmm13
vpclmulqdq xmm3, xmm15, xmm6, 0
vpunpckhqdq xmm9, xmm14, xmm14
vpclmulqdq xmm4, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx - 0x10]
vpxor xmm9, xmm9, xmm14
vmovdqu xmm15, xmmword [r8 + 0x40]
vpclmulqdq xmm5, xmm8, xmm7, 0x10
vmovdqu xmm7, xmmword [rdx + 0x10]
vpshufb xmm15, xmm15, xmm13
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm14, xmm6, 0
vpxor xmm4, xmm4, xmm1
vpunpckhqdq xmm8, xmm15, xmm15
vpclmulqdq xmm1, xmm14, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx]
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm9, xmm7, 0
vpxor xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 + 0x30]
vpxor xmm0, xmm0, xmm3
vpclmulqdq xmm3, xmm15, xmm6, 0
vpxor xmm1, xmm1, xmm4
vpshufb xmm14, xmm14, xmm13
vpclmulqdq xmm4, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x20]
vpxor xmm2, xmm2, xmm5
vpunpckhqdq xmm9, xmm14, xmm14
vpclmulqdq xmm5, xmm8, xmm7, 0x10
vmovdqu xmm7, xmmword [rdx + 0x40]
vpxor xmm9, xmm9, xmm14
vmovdqu xmm15, xmmword [r8 + 0x20]
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm14, xmm6, 0
vpxor xmm4, xmm4, xmm1
vpshufb xmm15, xmm15, xmm13
vpclmulqdq xmm1, xmm14, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x30]
vpxor xmm5, xmm5, xmm2
vpunpckhqdq xmm8, xmm15, xmm15
vpclmulqdq xmm2, xmm9, xmm7, 0
vpxor xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 + 0x10]
vpxor xmm0, xmm0, xmm3
vpclmulqdq xmm3, xmm15, xmm6, 0
vpxor xmm1, xmm1, xmm4
vpshufb xmm14, xmm14, xmm13
vpclmulqdq xmm4, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x50]
vpxor xmm2, xmm2, xmm5
vpunpckhqdq xmm9, xmm14, xmm14
vpclmulqdq xmm5, xmm8, xmm7, 0x10
vmovdqu xmm7, xmmword [rdx + 0x70]
vpxor xmm9, xmm9, xmm14
vmovdqu xmm15, xmmword [r8]
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm14, xmm6, 0
vpxor xmm4, xmm4, xmm1
vpshufb xmm15, xmm15, xmm13
vpclmulqdq xmm1, xmm14, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x60]
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm9, xmm7, 0x10
lea r8, [r8 + 0x80]
cmp r9, 0x80
jb 0x1400fcac0
vpxor xmm15, xmm15, xmm10
sub r9, 0x80
jmp 0x1400fc6a0
vpunpckhqdq xmm8, xmm15, xmm15
vmovdqu xmm14, xmmword [r8 + 0x70]
vpxor xmm3, xmm3, xmm0
vpxor xmm8, xmm8, xmm15
vpclmulqdq xmm10, xmm15, xmm6, 0
vpshufb xmm14, xmm14, xmm13
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm11, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx - 0x40]
vpunpckhqdq xmm9, xmm14, xmm14
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm12, xmm8, xmm7, 0
vmovdqu xmm7, xmmword [rdx - 0x20]
vpxor xmm9, xmm9, xmm14
vmovdqu xmm15, xmmword [r8 + 0x60]
vpclmulqdq xmm0, xmm14, xmm6, 0
vpxor xmm10, xmm10, xmm3
vpshufb xmm15, xmm15, xmm13
vpclmulqdq xmm1, xmm14, xmm6, 0x11
vxorps xmm11, xmm11, xmm4
vmovdqu xmm6, xmmword [rdx - 0x30]
vpunpckhqdq xmm8, xmm15, xmm15
vpclmulqdq xmm2, xmm9, xmm7, 0
vpxor xmm12, xmm12, xmm5
vxorps xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 + 0x50]
vpxor xmm12, xmm12, xmm10
vpclmulqdq xmm3, xmm15, xmm6, 0
vpxor xmm12, xmm12, xmm11
vpslldq xmm9, xmm12, 8
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm4, xmm15, xmm6, 0x11
vpsrldq xmm12, xmm12, 8
vpxor xmm10, xmm10, xmm9
vmovdqu xmm6, xmmword [rdx - 0x10]
vpshufb xmm14, xmm14, xmm13
vxorps xmm11, xmm11, xmm12
vpxor xmm4, xmm4, xmm1
vpunpckhqdq xmm9, xmm14, xmm14
vpclmulqdq xmm5, xmm8, xmm7, 0x10
vmovdqu xmm7, xmmword [rdx + 0x10]
vpxor xmm9, xmm9, xmm14
vpxor xmm5, xmm5, xmm2
vmovdqu xmm15, xmmword [r8 + 0x40]
vpalignr xmm12, xmm10, xmm10, 8
vpclmulqdq xmm0, xmm14, xmm6, 0
vpshufb xmm15, xmm15, xmm13
vpxor xmm0, xmm0, xmm3
vpclmulqdq xmm1, xmm14, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx]
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm1, xmm1, xmm4
vpclmulqdq xmm2, xmm9, xmm7, 0
vxorps xmm8, xmm8, xmm15
vpxor xmm2, xmm2, xmm5
vmovdqu xmm14, xmmword [r8 + 0x30]
vpclmulqdq xmm10, xmm10, xmmword [r10], 0x10
vpclmulqdq xmm3, xmm15, xmm6, 0
vpshufb xmm14, xmm14, xmm13
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm4, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x20]
vpunpckhqdq xmm9, xmm14, xmm14
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm5, xmm8, xmm7, 0x10
vmovdqu xmm7, xmmword [rdx + 0x40]
vpxor xmm9, xmm9, xmm14
vpxor xmm5, xmm5, xmm2
vmovdqu xmm15, xmmword [r8 + 0x20]
vpclmulqdq xmm0, xmm14, xmm6, 0
vpshufb xmm15, xmm15, xmm13
vpxor xmm0, xmm0, xmm3
vpclmulqdq xmm1, xmm14, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x30]
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm1, xmm1, xmm4
vpclmulqdq xmm2, xmm9, xmm7, 0
vpxor xmm8, xmm8, xmm15
vpxor xmm2, xmm2, xmm5
vxorps xmm10, xmm10, xmm12
vmovdqu xmm14, xmmword [r8 + 0x10]
vpalignr xmm12, xmm10, xmm10, 8
vpclmulqdq xmm3, xmm15, xmm6, 0
vpshufb xmm14, xmm14, xmm13
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm4, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x50]
vpclmulqdq xmm10, xmm10, xmmword [r10], 0x10
vxorps xmm12, xmm12, xmm11
vpunpckhqdq xmm9, xmm14, xmm14
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm5, xmm8, xmm7, 0x10
vmovdqu xmm7, xmmword [rdx + 0x70]
vpxor xmm9, xmm9, xmm14
vpxor xmm5, xmm5, xmm2
vmovdqu xmm15, xmmword [r8]
vpclmulqdq xmm0, xmm14, xmm6, 0
vpshufb xmm15, xmm15, xmm13
vpclmulqdq xmm1, xmm14, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x60]
vpxor xmm15, xmm15, xmm12
vpclmulqdq xmm2, xmm9, xmm7, 0x10
vpxor xmm15, xmm15, xmm10
lea r8, [r8 + 0x80]
sub r9, 0x80
jae 0x1400fc6a0
add r9, 0x80
jmp 0x1400fcac5
vmovdqu xmm14, xmmword [r8 + r9 - 0x10]
lea r8, [r8 + r9]
vmovdqu xmm6, xmmword [rdx - 0x40]
vmovdqu xmm7, xmmword [rdx - 0x20]
vpshufb xmm15, xmm14, xmm13
vmovdqa xmm3, xmm0
vmovdqa xmm4, xmm1
vmovdqa xmm5, xmm2
sub r9, 0x10
je 0x1400fcac0
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm15, xmm6, 0
vpxor xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 - 0x20]
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm1, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx - 0x30]
vpshufb xmm15, xmm14, xmm13
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm8, xmm7, 0
vpsrldq xmm7, xmm7, 8
sub r9, 0x10
je 0x1400fcac0
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm15, xmm6, 0
vpxor xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 - 0x30]
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm1, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx - 0x10]
vpshufb xmm15, xmm14, xmm13
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm8, xmm7, 0
vmovdqu xmm7, xmmword [rdx + 0x10]
sub r9, 0x10
je 0x1400fcac0
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm15, xmm6, 0
vpxor xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 - 0x40]
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm1, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx]
vpshufb xmm15, xmm14, xmm13
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm8, xmm7, 0
vpsrldq xmm7, xmm7, 8
sub r9, 0x10
je 0x1400fcac0
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm15, xmm6, 0
vpxor xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 - 0x50]
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm1, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x20]
vpshufb xmm15, xmm14, xmm13
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm8, xmm7, 0
vmovdqu xmm7, xmmword [rdx + 0x40]
sub r9, 0x10
je 0x1400fcac0
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm15, xmm6, 0
vpxor xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 - 0x60]
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm1, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x30]
vpshufb xmm15, xmm14, xmm13
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm8, xmm7, 0
vpsrldq xmm7, xmm7, 8
sub r9, 0x10
je 0x1400fcac0
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm15, xmm6, 0
vpxor xmm8, xmm8, xmm15
vmovdqu xmm14, xmmword [r8 - 0x70]
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm1, xmm15, xmm6, 0x11
vmovdqu xmm6, xmmword [rdx + 0x50]
vpshufb xmm15, xmm14, xmm13
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm8, xmm7, 0
vmovq xmm7, qword [rdx + 0x78]
sub r9, 0x10
jmp 0x1400fcac0
vpxor xmm15, xmm15, xmm10
vpunpckhqdq xmm8, xmm15, xmm15
vpxor xmm3, xmm3, xmm0
vpclmulqdq xmm0, xmm15, xmm6, 0
vpxor xmm8, xmm8, xmm15
vpxor xmm4, xmm4, xmm1
vpclmulqdq xmm1, xmm15, xmm6, 0x11
vpxor xmm5, xmm5, xmm2
vpclmulqdq xmm2, xmm8, xmm7, 0
vmovdqu xmm12, xmmword [r10]
vpxor xmm10, xmm3, xmm0
vpxor xmm11, xmm4, xmm1
vpxor xmm5, xmm5, xmm2
vpxor xmm5, xmm5, xmm10
vpxor xmm5, xmm5, xmm11
vpslldq xmm9, xmm5, 8
vpsrldq xmm5, xmm5, 8
vpxor xmm10, xmm10, xmm9
vpxor xmm11, xmm11, xmm5
vpclmulqdq xmm9, xmm10, xmm12, 0x10
vpalignr xmm10, xmm10, xmm10, 8
vpxor xmm10, xmm10, xmm9
vpclmulqdq xmm9, xmm10, xmm12, 0x10
vpalignr xmm10, xmm10, xmm10, 8
vpxor xmm10, xmm10, xmm11
vpxor xmm10, xmm10, xmm9
cmp r9, 0
jne 0x1400fc8e0
vpshufb xmm10, xmm10, xmm13
vmovdqu xmmword [rcx], xmm10
vzeroupper
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]
lea rsp, [rsp + 0xa8]
ret