// File: /workspace/github_c_makefile_star2_O2/tvlabs[P]edge264/./edge264_inter.c
// Function: decode_inter
static void noinline decode_inter(Edge264Context *ctx, int i, int w, int h) {
	static int8_t shift_Y_8bit[46] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15};
	static int8_t shift_C_8bit[22] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 7, 7, 7, 7, 7, 7, 7};
	
	// load motion vector and reference picture
	int x = mb->mvs[i * 2];
	int y = mb->mvs[i * 2 + 1];
	int i8x8 = i >> 2;
	int i4x4 = i & 15;
	const uint8_t *ref = ctx->t.frame_buffers[mb->refPic[i8x8]];
	// print_header(ctx->d, "<k></k><v>CurrMbAddr=%d, i=%d, w=%d, h=%d, x=%d, y=%d, idx=%d, pic=%d</v>\n", ctx->CurrMbAddr, i, w, h, x, y, mb->refIdx[i8x8], mb->refPic[i8x8]);
	
	// prediction weights {wY, wCb, wCr, oY, oCb, oCr, logWD_Y, logWD_C}
	i16x8 wod = {pack_w(0, 1), pack_w(0, 1), pack_w(0, 1), 0, 0, 0, 0, 0}; // no_weight
	int refIdx = mb->refIdx[i8x8];
	int refIdxX = mb->refIdx[i8x8 ^ 4];
	if (ctx->t.pps.weighted_bipred_idc != 1) {
		if (((i8x8 - 4) | refIdxX) >= 0) {
			if (ctx->t.pps.weighted_bipred_idc == 0) { // default2
				wod = (i16x8){257, 257, 257, 1, 1, 1, 1, 1};
			} else { // implicit2
				int w1 = ctx->implicit_weights[refIdxX][refIdx] - 64;
				int p = pack_w(64 - w1, w1);
				wod = (u16x8){p, p, p, 32, 32, 32, 6, 6};
				// w0 or w1 will overflow if w1 is 128 or -64 (WARNING untested in conformance bitstreams)
				if (__builtin_expect((unsigned)(w1 + 63) >= 191, 0)) {
					p = pack_w(2 - (w1 >> 5), w1 >> 5);
					wod = (u16x8){p, p, p, 1, 1, 1, 1, 1};
				}
			}
		}
	} else if (refIdxX < 0) { // explicit1
		refIdx += (i8x8 & 4) * 8;
		if (__builtin_expect(ctx->t.explicit_weights[0][refIdx] < 128, 1)) {
			wod[0] = pack_w(0, ctx->t.explicit_weights[0][refIdx]);
			wod[3] = (ctx->t.explicit_offsets[0][refIdx] * 2 + 1) << ctx->t.luma_log2_weight_denom >> 1;
			wod[6] = ctx->t.luma_log2_weight_denom;
		}
		if (__builtin_expect(ctx->t.explicit_weights[1][refIdx] < 128, 1)) {
			wod[1] = pack_w(0, ctx->t.explicit_weights[1][refIdx]);
			wod[2] = pack_w(0, ctx->t.explicit_weights[2][refIdx]);
			wod[4] = (ctx->t.explicit_offsets[1][refIdx] * 2 + 1) << ctx->t.chroma_log2_weight_denom >> 1;
			wod[5] = (ctx->t.explicit_offsets[2][refIdx] * 2 + 1) << ctx->t.chroma_log2_weight_denom >> 1;
			wod[7] = ctx->t.chroma_log2_weight_denom;
		}
	} else if (i8x8 >= 4) { // explicit2
		refIdx += 32;
		if (__builtin_expect((ctx->t.explicit_weights[0][refIdxX] & ctx->t.explicit_weights[0][refIdx]) != 128, 1)) {
			wod[0] = pack_w(ctx->t.explicit_weights[0][refIdxX], ctx->t.explicit_weights[0][refIdx]);
			wod[3] = ((ctx->t.explicit_offsets[0][refIdxX] + ctx->t.explicit_offsets[0][refIdx] + 1) | 1) << ctx->t.luma_log2_weight_denom;
			wod[6] = ctx->t.luma_log2_weight_denom + 1;
		} else {
			wod[0] = pack_w(ctx->t.explicit_weights[0][refIdxX] >> 1, ctx->t.explicit_weights[0][refIdx] >> 1);
			wod[3] = ((ctx->t.explicit_offsets[0][refIdxX] + ctx->t.explicit_offsets[0][refIdx] + 1) | 1) << ctx->t.luma_log2_weight_denom >> 1;
			wod[6] = ctx->t.luma_log2_weight_denom;
		}
		if (__builtin_expect((ctx->t.explicit_weights[1][refIdxX] & ctx->t.explicit_weights[1][refIdx]) != 128, 1)) {
			wod[1] = pack_w(ctx->t.explicit_weights[1][refIdxX], ctx->t.explicit_weights[1][refIdx]);
			wod[2] = pack_w(ctx->t.explicit_weights[2][refIdxX], ctx->t.explicit_weights[2][refIdx]);
			wod[4] = ((ctx->t.explicit_offsets[1][refIdxX] + ctx->t.explicit_offsets[1][refIdx] + 1) | 1) << ctx->t.chroma_log2_weight_denom;
			wod[5] = ((ctx->t.explicit_offsets[2][refIdxX] + ctx->t.explicit_offsets[2][refIdx] + 1) | 1) << ctx->t.chroma_log2_weight_denom;
			wod[7] = ctx->t.chroma_log2_weight_denom + 1;
		} else {
			wod[1] = pack_w(ctx->t.explicit_weights[1][refIdxX] >> 1, ctx->t.explicit_weights[1][refIdx] >> 1);
			wod[2] = pack_w(ctx->t.explicit_weights[2][refIdxX] >> 1, ctx->t.explicit_weights[2][refIdx] >> 1);
			wod[4] = ((ctx->t.explicit_offsets[1][refIdxX] + ctx->t.explicit_offsets[1][refIdx] + 1) | 1) << ctx->t.chroma_log2_weight_denom >> 1;
			wod[5] = ((ctx->t.explicit_offsets[2][refIdxX] + ctx->t.explicit_offsets[2][refIdx] + 1) | 1) << ctx->t.chroma_log2_weight_denom >> 1;
			wod[7] = ctx->t.chroma_log2_weight_denom;
		}
	}
	
	// compute source pointers
	int xInt_Y = ctx->mbx * 16 + x444[i4x4] + (x >> 2);
	int xInt_C = ctx->mbx * 8 + (x444[i4x4] >> 1) + (x >> 3);
	int yInt_Y = ctx->mby * 16 + y444[i4x4] + (y >> 2);
	int yInt_C = ctx->mby * 8 + (y444[i4x4] >> 1) + (y >> 3);
	const uint8_t *src_Y = ref + xInt_Y + yInt_Y * ctx->t.stride[0];
	const uint8_t *src_C = ref + xInt_C + yInt_C * ctx->t.stride[1] + ctx->t.plane_size_Y;
	size_t sstride_Y = ctx->t.stride[0];
	size_t sstride_C = ctx->t.stride[1] >> 1;
	
	// edge propagation is an annoying but beautiful piece of code
	int xWide = (x & 7) != 0;
	int yWide = (y & 7) != 0;
	int width_Y = ctx->t.pic_width_in_mbs * 16;
	if (__builtin_expect((unsigned)xInt_Y - xWide * 2 >= width_Y - w + 1 - xWide * 5 ||
		(unsigned)yInt_Y - yWide * 2 >= ctx->t.pic_height_in_mbs * 16 - h + 1 - yWide * 5, 0))
	{
		i8x16 shuf0 = load128(shift_Y_8bit + 15 + clip3(-15, 0, xInt_Y - 2) + clip3(0, 15, xInt_Y + 14 - width_Y));
		i8x16 shuf1 = load128(shift_Y_8bit + 15 + clip3(-15, 0, xInt_Y + 14) + clip3(0, 15, xInt_Y + 30 - width_Y));
		const uint8_t *src0 = ref + clip3(0, width_Y - 16, xInt_Y - 2);
		const uint8_t *src1 = ref + clip3(0, width_Y - 16, xInt_Y + 14);
		yInt_Y -= 2;
		for (i8x16 *buf = ctx->edge_buf_v; buf < ctx->edge_buf_v + 10 + h * 2; buf += 2, yInt_Y++) {
			int c = clip3(0, ctx->t.plane_size_Y - sstride_Y, yInt_Y * sstride_Y);
			buf[0] = shuffle(load128(src0 + c), shuf0);
			buf[1] = shuffle(load128(src1 + c), shuf1);
		}
		src_Y = ctx->edge_buf + 66;
		sstride_Y = 32;
		
		// chroma may read (and ignore) 1 bottom row and 1 right col out of bounds
		int width_C = width_Y >> 1;
		i8x16 shuf = load64(shift_C_8bit + 7 + clip3(-7, 0, xInt_C) + clip3(0, 7, xInt_C + 8 - width_C));
		src0 = ref + clip3(0, width_C - 8, xInt_C);
		src1 = ref + clip3(0, width_C - 1, xInt_C + 8);
		for (int j = 0; j <= h >> 1; j++, yInt_C++) {
			int cb = ctx->t.plane_size_Y + clip3(0, ctx->t.plane_size_C - sstride_C * 2, yInt_C * sstride_C * 2);
			int cr = sstride_C + cb;
			// reads are split in 2 to support 8px-wide frames
			ctx->edge_buf_l[j * 4 + 84] = ((i64x2)shuffle(load64(src0 + cb), shuf))[0];
			ctx->edge_buf[j * 32 + 680] = *(src1 + cb);
			ctx->edge_buf_l[j * 4 + 86] = ((i64x2)shuffle(load64(src0 + cr), shuf))[0];
			ctx->edge_buf[j * 32 + 696] = *(src1 + cr);
		}
		sstride_C = 16;
		src_C = ctx->edge_buf + 672;
	}
	
	// chroma prediction comes first since it can be inlined
	uint8_t *dst_C = ctx->samples_mb[1] + (y444[i4x4] >> 1) * ctx->t.stride[1] + (x444[i4x4] >> 1);
	size_t dstride_C = ctx->t.stride[1] >> 1;
	int xFrac_C = x & 7;
	int yFrac_C = y & 7;
	i32x4 ABCD = {little_endian32(((8 - xFrac_C) | xFrac_C << 8) * ((8 - yFrac_C) | yFrac_C << 16))};
	decode_inter_chroma(w, h, dstride_C, dst_C, sstride_C, src_C, ABCD, wod);
	
	// tail jump to luma prediction
	int xFrac_Y = x & 3;
	int yFrac_Y = y & 3;
	size_t dstride_Y = ctx->t.stride[0];
	uint8_t *dst_Y = ctx->samples_mb[0] + y444[i4x4] * dstride_Y + x444[i4x4];
	decode_inter_luma((w << 1 & 48) + yFrac_Y * 4 + xFrac_Y, h, sstride_Y, src_Y, dstride_Y, dst_Y, wod);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
movl %edx, %r15d
movq 0x680(%rdi), %r10
leal (%rsi,%rsi), %eax
movswl 0xb0(%r10,%rax,2), %eax
movq %rax, -0x20(%rsp)
movl %esi, %eax
movswl 0xb2(%r10,%rax,4), %r11d
movl %esi, %edx
shrl $0x2, %edx
movl %esi, %eax
andl $0xf, %eax
movsbq 0x18(%r10,%rdx), %r8
movsbl 0x10(%r10,%rdx), %ebx
movslq %ebx, %r9
movq %rdx, %r14
xorq $0x4, %r14
movsbl 0x10(%r10,%r14), %r10d
movb 0x225(%rdi), %bpl
cmpb $0x1, %bpl
jne 0xcc57
testb %r10b, %r10b
js 0xcce6
cmpl $0x10, %esi
jb 0xccd9
movl %r10d, %edx
movswl 0x410(%rdi,%rdx,2), %r10d
movswl 0x450(%rdi,%r9,2), %esi
movl %esi, %ebx
andl %r10d, %ebx
cmpl $0x80, %ebx
je 0xfa3a
shll $0x8, %esi
movzbl %r10b, %r10d
orl %esi, %r10d
movsbl 0x590(%rdi,%rdx), %esi
movsbl 0x5b0(%rdi,%r9), %ebx
addl %ebx, %esi
incl %esi
orl $0x1, %esi
movsbl 0x25(%rdi), %ebx
shlxl %ebx, %esi, %esi
incl %ebx
movzwl %r10w, %r10d
vmovd %r10d, %xmm0
movl $0x100, %r10d           # imm = 0x100
vpinsrw $0x1, %r10d, %xmm0, %xmm0
vpinsrw $0x2, %r10d, %xmm0, %xmm0
vpinsrw $0x3, %esi, %xmm0, %xmm0
vpinsrw $0x6, %ebx, %xmm0, %xmm0
movswl 0x490(%rdi,%rdx,2), %r10d
movswl 0x4d0(%rdi,%r9,2), %esi
movl %esi, %ebx
andl %r10d, %ebx
cmpl $0x80, %ebx
je 0xfa75
shll $0x8, %esi
movzbl %r10b, %r10d
orl %esi, %r10d
vpinsrw $0x1, %r10d, %xmm0, %xmm0
movzwl 0x550(%rdi,%r9,2), %esi
shll $0x8, %esi
movzbl 0x510(%rdi,%rdx,2), %r10d
orl %esi, %r10d
vpinsrw $0x2, %r10d, %xmm0, %xmm0
movsbl 0x5d0(%rdi,%rdx), %esi
movsbl 0x5f0(%rdi,%r9), %r10d
addl %r10d, %esi
incl %esi
orl $0x1, %esi
movsbl 0x26(%rdi), %r10d
shlxl %r10d, %esi, %esi
vpinsrw $0x4, %esi, %xmm0, %xmm0
movsbl 0x610(%rdi,%rdx), %edx
movsbl 0x630(%rdi,%r9), %esi
addl %esi, %edx
incl %edx
orl $0x1, %edx
shlxl %r10d, %edx, %edx
vpinsrw $0x5, %edx, %xmm0, %xmm0
incl %r10d
vpinsrw $0x7, %r10d, %xmm0, %xmm2
jmp 0xcdb5
addl $-0x4, %edx
orl %r10d, %edx
js 0xccd9
testb %bpl, %bpl
je 0xcdad
movslq %r10d, %rdx
shlq $0x5, %rdx
addq %rdi, %rdx
movzbl 0xe30(%r9,%rdx), %esi
leal -0x40(%rsi), %edx
movl $0xffffff40, %r9d       # imm = 0xFFFFFF40
leal (%rsi,%r9), %r10d
cmpl %r9d, %r10d
jbe 0xf9f3
shll $0x8, %edx
movl $0x80, %r9d
subl %esi, %r9d
movzbl %r9b, %esi
orl %edx, %esi
vmovd %esi, %xmm0
vpinsrw $0x1, %esi, %xmm0, %xmm0
vpinsrw $0x2, %esi, %xmm0, %xmm0
movl $0x20, %edx
vpinsrw $0x3, %edx, %xmm0, %xmm0
vpinsrw $0x4, %edx, %xmm0, %xmm0
vpinsrw $0x5, %edx, %xmm0, %xmm0
movl $0x6, %edx
vpinsrw $0x6, %edx, %xmm0, %xmm0
vpinsrw $0x7, %edx, %xmm0, %xmm2
jmp 0xcdb5
vmovq 0x2085f(%rip), %xmm2    # 0x2d540
jmp 0xcdb5
andl $0x4, %edx
leal (%rbx,%rdx,8), %edx
movslq %edx, %rdx
movzwl 0x410(%rdi,%rdx,2), %esi
cmpw $0x7f, %si
jg 0xfa2d
shll $0x8, %esi
movsbl 0x590(%rdi,%rdx), %r9d
leal 0x1(,%r9,2), %r9d
movsbl 0x25(%rdi), %r10d
shlxl %r10d, %r9d, %r9d
shrl %r9d
movzwl %si, %esi
vmovd %esi, %xmm0
movl $0x100, %esi            # imm = 0x100
vpinsrw $0x1, %esi, %xmm0, %xmm0
vpinsrw $0x2, %esi, %xmm0, %xmm0
vpinsrw $0x3, %r9d, %xmm0, %xmm0
vpinsrw $0x6, %r10d, %xmm0, %xmm2
movzwl 0x490(%rdi,%rdx,2), %esi
cmpw $0x7f, %si
jg 0xcdb5
shll $0x8, %esi
vpinsrw $0x1, %esi, %xmm2, %xmm0
movzwl 0x510(%rdi,%rdx,2), %esi
shll $0x8, %esi
vpinsrw $0x2, %esi, %xmm0, %xmm0
movsbl 0x5d0(%rdi,%rdx), %esi
leal 0x1(,%rsi,2), %esi
movsbl 0x26(%rdi), %r9d
shlxl %r9d, %esi, %esi
shrl %esi
vpinsrw $0x4, %esi, %xmm0, %xmm0
movsbl 0x610(%rdi,%rdx), %edx
leal 0x1(,%rdx,2), %edx
shlxl %r9d, %edx, %edx
shrl %edx
vpinsrw $0x5, %edx, %xmm0, %xmm0
vpinsrw $0x7, %r9d, %xmm0, %xmm2
jmp 0xcdb5
vmovdqa 0x2079b(%rip), %xmm2    # 0x2d550
movq 0x60(%rdi,%r8,8), %rdx
movq %rdx, -0x38(%rsp)
movswl 0x654(%rdi), %r12d
movq -0x20(%rsp), %rsi
movl %esi, %edx
sarl $0x3, %edx
leal (%rdx,%r12,8), %r13d
shll $0x4, %r12d
leaq 0x20b60(%rip), %rdx     # 0x2d940
movsbl (%rax,%rdx), %edx
movslq %edx, %r14
movl %esi, %edx
sarl $0x2, %edx
addl %r14d, %r12d
addl %edx, %r12d
movl %r14d, %edx
sarl %edx
addl %edx, %r13d
movswl 0x656(%rdi), %ebx
movl %r11d, %edx
sarl $0x3, %edx
leal (%rdx,%rbx,8), %r9d
shll $0x4, %ebx
leaq 0x20b3b(%rip), %rdx     # 0x2d950
movsbl (%rax,%rdx), %eax
cltq
movl %r11d, %edx
sarl $0x2, %edx
addl %eax, %ebx
addl %edx, %ebx
movl %eax, %edx
sarl %edx
addl %edx, %r9d
movzwl 0x36(%rdi), %r8d
movq %r8, -0x28(%rsp)
shrl %r8d
xorl %edx, %edx
andl $0x7, %esi
movl %esi, -0x30(%rsp)
sete %dl
movl %r11d, -0x2c(%rsp)
movl %r11d, %ebp
andl $0x7, %ebp
movswl 0x30(%rdi), %esi
movq %rsi, -0x8(%rsp)
shll $0x4, %esi
leal (%r12,%rdx,2), %r10d
addl $-0x2, %r10d
leal (%rdx,%rdx,4), %edx
movq %r15, -0x18(%rsp)
subl %r15d, %edx
leal (%rdx,%rsi), %r15d
addl $-0x4, %r15d
movzwl 0x34(%rdi), %edx
cmpl %r15d, %r10d
jae 0xf6f4
xorl %r10d, %r10d
testl %ebp, %ebp
sete %r10b
leal (%rbx,%r10,2), %r15d
addl $-0x2, %r15d
movswl 0x32(%rdi), %r11d
shll $0x4, %r11d
leal (%r10,%r10,4), %r10d
subl %ecx, %r10d
addl %r11d, %r10d
addl $-0x4, %r10d
cmpl %r10d, %r15d
jae 0xf6f4
movl %edx, %esi
movslq %r13d, %r10
movq -0x38(%rsp), %r15
addq %r15, %r10
movslq %r9d, %r9
movq -0x28(%rsp), %r11
imulq %r11, %r9
movslq 0x3c(%rdi), %r13
addq %r10, %r13
addq %r9, %r13
movslq %r12d, %r10
addq %r15, %r10
movslq %ebx, %r9
imulq %rdx, %r9
addq %r10, %r9
movq %r8, %r12
movl %eax, %edx
sarb %dl
movsbl %dl, %edx
imull %r11d, %edx
movslq %edx, %rdx
addq 0x670(%rdi), %rdx
movl %r14d, %r10d
sarb %r10b
movsbq %r10b, %r15
addq %rdx, %r15
imull $0xff, -0x30(%rsp), %edx
addl $0x8, %edx
imull $0xffff, %ebp, %r10d    # imm = 0xFFFF
addl $0x8, %r10d
imull %edx, %r10d
vmovd %r10d, %xmm1
vpshufb 0x2062b(%rip), %xmm2, %xmm7 # 0x2d560
vpbroadcastw %xmm1, %xmm0
vpshufb 0x2062d(%rip), %xmm1, %xmm1 # 0x2d570
leaq (%r8,%r8,2), %rdx
vpsrldq $0xe, %xmm2, %xmm3      # xmm3 = xmm2[14,15],zero,zero,zero,zero,zero,zero,zero,zero,zero,zero,zero,zero,zero,zero
movq -0x18(%rsp), %r10
cmpl $0x8, %r10d
je 0xd062
cmpl $0x10, %r10d
jne 0xd185
vmovdqu (%r13), %xmm5
vmovdqu (%r13,%r12), %xmm6
vmovdqa 0x20616(%rip), %xmm4    # 0x2d590
leaq (%r12,%r12,2), %rdx
vpshufb %xmm4, %xmm5, %xmm11
vpshufb %xmm4, %xmm6, %xmm10
addl %r12d, %r12d
vpshufb 0x2060c(%rip), %xmm2, %xmm5 # 0x2d5a0
vpbroadcastd %xmm7, %xmm6
vpshufd $0x55, %xmm7, %xmm7     # xmm7 = xmm7[1,1,1,1]
vpshufb 0x20609(%rip), %xmm2, %xmm8 # 0x2d5b0
leal (%r8,%r8), %r10d
vpxor %xmm9, %xmm9, %xmm9
movl %ecx, %ebx
vmovdqu (%r13,%r12), %xmm12
vmovdqu (%r13,%rdx), %xmm13
vpmaddubsw %xmm0, %xmm11, %xmm11
vpshufb %xmm4, %xmm12, %xmm12
vpmaddubsw %xmm0, %xmm10, %xmm10
vpshufb %xmm4, %xmm13, %xmm13
vpmaddubsw %xmm1, %xmm12, %xmm14
vpaddw %xmm11, %xmm14, %xmm11
vpmaddubsw %xmm1, %xmm13, %xmm14
vpaddw %xmm10, %xmm14, %xmm10
vpsraw $0x5, %xmm11, %xmm11
vpavgw %xmm9, %xmm11, %xmm11
vpsraw $0x5, %xmm10, %xmm10
vpavgw %xmm9, %xmm10, %xmm10
vpackuswb %xmm10, %xmm11, %xmm10
vpbroadcastq (%r15,%r8), %xmm11
vmovq (%r15), %xmm14
vpunpcklbw %xmm10, %xmm14, %xmm14 # xmm14 = xmm14[0],xmm10[0],xmm14[1],xmm10[1],xmm14[2],xmm10[2],xmm14[3],xmm10[3],xmm14[4],xmm10[4],xmm14[5],xmm10[5],xmm14[6],xmm10[6],xmm14[7],xmm10[7]
vpmaddubsw %xmm6, %xmm14, %xmm14
vpaddsw %xmm5, %xmm14, %xmm14
vpsraw %xmm3, %xmm14, %xmm14
vpunpckhbw %xmm10, %xmm11, %xmm10 # xmm10 = xmm11[8],xmm10[8],xmm11[9],xmm10[9],xmm11[10],xmm10[10],xmm11[11],xmm10[11],xmm11[12],xmm10[12],xmm11[13],xmm10[13],xmm11[14],xmm10[14],xmm11[15],xmm10[15]
vpmaddubsw %xmm7, %xmm10, %xmm10
vpaddsw %xmm8, %xmm10, %xmm10
vpsraw %xmm3, %xmm10, %xmm10
vpackuswb %xmm10, %xmm14, %xmm10
vmovq %xmm10, (%r15)
addq %r12, %r13
vpextrq $0x1, %xmm10, (%r15,%r8)
addq %r10, %r15
vmovdqa %xmm13, %xmm10
vmovdqa %xmm12, %xmm11
addl $-0x2, %ebx
jne 0xcfb2
jmp 0xd277
vmovq (%r13,%r12), %xmm4
vmovq (%r13), %xmm5
vpunpcklqdq %xmm4, %xmm5, %xmm4 # xmm4 = xmm5[0],xmm4[0]
vpshufb 0x20504(%rip), %xmm4, %xmm8 # 0x2d580
leaq (%r13,%r12,2), %r13
vpshufd $0x50, %xmm7, %xmm4     # xmm4 = xmm7[0,0,1,1]
vpshufd $0xfa, %xmm7, %xmm5     # xmm5 = xmm7[2,2,3,3]
leal (,%r8,4), %r10d
vmovdqa 0x204e5(%rip), %xmm6    # 0x2d580
vpxor %xmm7, %xmm7, %xmm7
leaq (%r12,%r12), %rbx
movl %ecx, %ebp
vmovq (%r13,%r12), %xmm9
vmovq (%r13), %xmm10
addq %r12, %r13
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vpshufb %xmm6, %xmm9, %xmm9
vmovq (%r12,%r13), %xmm10
addq %r12, %r13
vmovq (%r12,%r13), %xmm11
vpunpcklqdq %xmm11, %xmm10, %xmm10 # xmm10 = xmm10[0],xmm11[0]
vpmaddubsw %xmm0, %xmm8, %xmm8
vpshufb %xmm6, %xmm10, %xmm10
vpmaddubsw %xmm1, %xmm9, %xmm11
vpaddw %xmm8, %xmm11, %xmm8
vpmaddubsw %xmm0, %xmm9, %xmm9
vpmaddubsw %xmm1, %xmm10, %xmm11
vpaddw %xmm9, %xmm11, %xmm9
vpsraw $0x5, %xmm8, %xmm8
vpavgw %xmm7, %xmm8, %xmm8
vpsraw $0x5, %xmm9, %xmm9
vpavgw %xmm7, %xmm9, %xmm9
vmovd (%r15), %xmm11
vpinsrd $0x1, (%r15,%r8), %xmm11, %xmm11
vpackuswb %xmm9, %xmm8, %xmm8
vpinsrd $0x2, (%r15,%r8,2), %xmm11, %xmm9
vpinsrd $0x3, (%r15,%rdx), %xmm9, %xmm9
vpunpcklbw %xmm8, %xmm9, %xmm11 # xmm11 = xmm9[0],xmm8[0],xmm9[1],xmm8[1],xmm9[2],xmm8[2],xmm9[3],xmm8[3],xmm9[4],xmm8[4],xmm9[5],xmm8[5],xmm9[6],xmm8[6],xmm9[7],xmm8[7]
vpmaddubsw %xmm4, %xmm11, %xmm11
vpaddsw %xmm5, %xmm11, %xmm11
vpsraw %xmm3, %xmm11, %xmm11
vpunpckhbw %xmm8, %xmm9, %xmm8 # xmm8 = xmm9[8],xmm8[8],xmm9[9],xmm8[9],xmm9[10],xmm8[10],xmm9[11],xmm8[11],xmm9[12],xmm8[12],xmm9[13],xmm8[13],xmm9[14],xmm8[14],xmm9[15],xmm8[15]
vpmaddubsw %xmm4, %xmm8, %xmm8
vpaddsw %xmm5, %xmm8, %xmm8
vpsraw %xmm3, %xmm8, %xmm8
vpackuswb %xmm8, %xmm11, %xmm8
vmovd %xmm8, (%r15)
vpextrd $0x1, %xmm8, (%r15,%r8)
vpextrd $0x2, %xmm8, (%r15,%r8,2)
vpextrd $0x3, %xmm8, (%r15,%rdx)
addq %r10, %r15
addq %rbx, %r13
vmovdqa %xmm10, %xmm8
addl $-0x4, %ebp
jne 0xd0a5
jmp 0xd277
vmovd (%r13,%r12), %xmm4
vmovd (%r13), %xmm5
vpunpckldq %xmm4, %xmm5, %xmm4 # xmm4 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]
vpshufb 0x20421(%rip), %xmm4, %xmm8 # 0x2d5c0
leaq (%r13,%r12,2), %r13
vpbroadcastq %xmm7, %xmm4
vpshufd $0xee, %xmm7, %xmm5     # xmm5 = xmm7[2,3,2,3]
leal (,%r8,4), %r10d
vmovdqa 0x20412(%rip), %xmm6    # 0x2d5d0
vpxor %xmm7, %xmm7, %xmm7
leaq (%r12,%r12), %rbx
movl %ecx, %ebp
vmovd (%r13), %xmm9
vpinsrd $0x1, (%r13,%r12), %xmm9, %xmm9
addq %r12, %r13
vpinsrd $0x2, (%r12,%r13), %xmm9, %xmm9
addq %r12, %r13
vpinsrd $0x3, (%r12,%r13), %xmm9, %xmm9
vpshufb %xmm6, %xmm9, %xmm9
vpunpcklqdq %xmm9, %xmm8, %xmm8 # xmm8 = xmm8[0],xmm9[0]
vpmaddubsw %xmm0, %xmm8, %xmm8
vpmaddubsw %xmm1, %xmm9, %xmm10
movzwl (%r15), %r11d
vmovd %r11d, %xmm11
vpinsrw $0x1, (%r15,%r8), %xmm11, %xmm11
vpinsrw $0x2, (%r15,%r8,2), %xmm11, %xmm11
vpaddw %xmm8, %xmm10, %xmm8
vpinsrw $0x3, (%r15,%rdx), %xmm11, %xmm10
vpsraw $0x5, %xmm8, %xmm8
vpavgw %xmm7, %xmm8, %xmm8
vpackuswb %xmm8, %xmm8, %xmm8
vpunpcklbw %xmm8, %xmm10, %xmm8 # xmm8 = xmm10[0],xmm8[0],xmm10[1],xmm8[1],xmm10[2],xmm8[2],xmm10[3],xmm8[3],xmm10[4],xmm8[4],xmm10[5],xmm8[5],xmm10[6],xmm8[6],xmm10[7],xmm8[7]
vpmaddubsw %xmm4, %xmm8, %xmm8
vpaddsw %xmm5, %xmm8, %xmm8
vpsraw %xmm3, %xmm8, %xmm8
vpackuswb %xmm8, %xmm8, %xmm8
vpextrw $0x0, %xmm8, (%r15)
vpextrw $0x1, %xmm8, (%r15,%r8)
vpextrw $0x2, %xmm8, (%r15,%r8,2)
vpextrw $0x3, %xmm8, (%r15,%rdx)
addq %r10, %r15
vpsrldq $0x8, %xmm9, %xmm8      # xmm8 = xmm9[8,9,10,11,12,13,14,15],zero,zero,zero,zero,zero,zero,zero,zero
addq %rbx, %r13
addl $-0x4, %ebp
jne 0xd1c8
movq -0x20(%rsp), %r11
andl $0x3, %r11d
movzwl 0x34(%rdi), %r10d
movq 0x668(%rdi), %rdi
movq %r10, %r8
imulq %rax, %r8
leaq (%rdi,%r8), %rbx
leaq (%rbx,%r14), %r15
movq -0x18(%rsp), %rdx
andl $0x18, %edx
movl -0x2c(%rsp), %ebp
shll $0x2, %ebp
andl $0xc, %ebp
leal (%r11,%rdx,2), %r12d
orl %ebp, %r12d
vpshufb 0x20322(%rip), %xmm2, %xmm24 # 0x2d5e0
vpbroadcastw %xmm2, %xmm25
vpshufb 0x20322(%rip), %xmm2, %xmm29 # 0x2d5f0
orl %r11d, %ebp
xorl %edx, %edx
movl $0xd888, %r11d          # imm = 0xD888
btl %ebp, %r11d
movl $0x0, %r11d
sbbl %r11d, %r11d
vpbroadcastb %r11d, %xmm4
movl $0xa504, %r11d          # imm = 0xA504
btl %ebp, %r11d
sbbl %edx, %edx
vpbroadcastb %edx, %xmm2
vmovdqa 0x202fa(%rip), %xmm0    # 0x2d600
vpsubb %xmm4, %xmm0, %xmm5
movq %rsi, %r11
negq %r11
leaq -0x2(%r9), %rdx
leaq 0x206d9(%rip), %r13     # 0x2d9f4
movslq (%r13,%r12,4), %r12
addq %r13, %r12
jmpq *%r12
vmovdqu (%rdx,%r11,2), %xmm11
vmovdqu (%rdx,%r11), %xmm10
vmovdqu (%rdx), %xmm4
vmovdqu (%rdx,%rsi), %xmm3
vmovdqu (%rdx,%rsi,2), %xmm12
leal (,%rsi,4), %edx
leal (,%r10,4), %r11d
imulq $0x6, %rsi, %rbx
leaq (%rsi,%rsi,4), %r15
leaq (%rsi,%rsi,2), %rsi
addq %r14, %rdi
leaq 0x3(%rax), %r14
imulq %r10, %r14
leaq 0x2(%rax), %r12
imulq %r10, %r12
incq %rax
imulq %r10, %rax
vpbroadcastw 0x2066b(%rip), %xmm18 # 0x2d9ea
vpbroadcastb 0x20663(%rip), %xmm19 # 0x2d9ec
vpbroadcastw 0x2065b(%rip), %xmm23 # 0x2d9ee
vpbroadcastw 0x20656(%rip), %xmm8 # 0x2d9f2
vmovdqa 0x201ec(%rip), %xmm9    # 0x2d590
vpshufb %xmm5, %xmm10, %xmm13
vmovdqu -0x2(%r9,%rsi), %xmm10
vpshufb %xmm5, %xmm11, %xmm17
vpshufb %xmm5, %xmm4, %xmm15
vpshufb %xmm5, %xmm3, %xmm16
vpshufb %xmm5, %xmm12, %xmm14
vpblendvb %xmm2, %xmm3, %xmm4, %xmm4
vpblendvb %xmm2, %xmm12, %xmm3, %xmm3
vpblendvb %xmm2, %xmm10, %xmm12, %xmm6
vmovdqa %xmm12, %xmm11
vmovdqu -0x2(%r9,%rdx), %xmm0
vmovdqu -0x2(%r9,%r15), %xmm1
vmovdqu -0x2(%r9,%rbx), %xmm12
vpshufb %xmm5, %xmm10, %xmm20
vpshufb %xmm5, %xmm0, %xmm21
vpshufb %xmm5, %xmm1, %xmm22
vpunpckldq %xmm13, %xmm17, %xmm17 # xmm17 = xmm17[0],xmm13[0],xmm17[1],xmm13[1]
vpunpckldq %xmm15, %xmm13, %xmm13 # xmm13 = xmm13[0],xmm15[0],xmm13[1],xmm15[1]
vpunpcklbw %xmm13, %xmm17, %xmm13 # xmm13 = xmm17[0],xmm13[0],xmm17[1],xmm13[1],xmm17[2],xmm13[2],xmm17[3],xmm13[3],xmm17[4],xmm13[4],xmm17[5],xmm13[5],xmm17[6],xmm13[6],xmm17[7],xmm13[7]
vpshufb %xmm5, %xmm12, %xmm17
vpunpckldq %xmm16, %xmm15, %xmm15 # xmm15 = xmm15[0],xmm16[0],xmm15[1],xmm16[1]
vpunpckldq %xmm14, %xmm16, %xmm16 # xmm16 = xmm16[0],xmm14[0],xmm16[1],xmm14[1]
vpunpcklbw %xmm16, %xmm15, %xmm15 # xmm15 = xmm15[0],xmm16[0],xmm15[1],xmm16[1],xmm15[2],xmm16[2],xmm15[3],xmm16[3],xmm15[4],xmm16[4],xmm15[5],xmm16[5],xmm15[6],xmm16[6],xmm15[7],xmm16[7]
vpunpckldq %xmm20, %xmm14, %xmm14 # xmm14 = xmm14[0],xmm20[0],xmm14[1],xmm20[1]
vpunpckldq %xmm21, %xmm20, %xmm16 # xmm16 = xmm20[0],xmm21[0],xmm20[1],xmm21[1]
vpunpcklbw %xmm16, %xmm14, %xmm14 # xmm14 = xmm14[0],xmm16[0],xmm14[1],xmm16[1],xmm14[2],xmm16[2],xmm14[3],xmm16[3],xmm14[4],xmm16[4],xmm14[5],xmm16[5],xmm14[6],xmm16[6],xmm14[7],xmm16[7]
vpunpckldq %xmm22, %xmm21, %xmm16 # xmm16 = xmm21[0],xmm22[0],xmm21[1],xmm22[1]
vpunpckldq %xmm17, %xmm22, %xmm17 # xmm17 = xmm22[0],xmm17[0],xmm22[1],xmm17[1]
vpunpcklbw %xmm17, %xmm16, %xmm16 # xmm16 = xmm16[0],xmm17[0],xmm16[1],xmm17[1],xmm16[2],xmm17[2],xmm16[3],xmm17[3],xmm16[4],xmm17[4],xmm16[5],xmm17[5],xmm16[6],xmm17[6],xmm16[7],xmm17[7]
vpmaddubsw %xmm18, %xmm13, %xmm13
vpmaddubsw %xmm19, %xmm15, %xmm17
vpaddw %xmm17, %xmm13, %xmm13
vpmaddubsw %xmm23, %xmm14, %xmm17
vpmaddubsw %xmm18, %xmm15, %xmm15
vpmaddubsw %xmm19, %xmm14, %xmm14
vpaddw %xmm14, %xmm15, %xmm14
vpmaddubsw %xmm23, %xmm16, %xmm15
vpaddw %xmm8, %xmm13, %xmm13
vpaddw %xmm17, %xmm13, %xmm13
vpsraw $0x5, %xmm13, %xmm13
vpaddw %xmm8, %xmm15, %xmm15
vpaddw %xmm15, %xmm14, %xmm14
vpsraw $0x5, %xmm14, %xmm14
vpackuswb %xmm14, %xmm13, %xmm13
vpshufb %xmm9, %xmm4, %xmm4
vpshufb %xmm9, %xmm3, %xmm3
vpunpcklqdq %xmm3, %xmm4, %xmm14 # xmm14 = xmm4[0],xmm3[0]
vpmaddubsw %xmm18, %xmm14, %xmm14
vshufps $0x99, %xmm3, %xmm4, %xmm15 # xmm15 = xmm4[1,2],xmm3[1,2]
vpmaddubsw %xmm19, %xmm15, %xmm15
vpaddw %xmm15, %xmm14, %xmm14
vpunpckhqdq %xmm3, %xmm4, %xmm3 # xmm3 = xmm4[1],xmm3[1]
vpmaddubsw %xmm23, %xmm3, %xmm3
vpblendvb %xmm2, %xmm0, %xmm10, %xmm4
vpshufb %xmm9, %xmm6, %xmm6
vpshufb %xmm9, %xmm4, %xmm4
vpunpcklqdq %xmm4, %xmm6, %xmm15 # xmm15 = xmm6[0],xmm4[0]
vpmaddubsw %xmm18, %xmm15, %xmm15
vshufps $0x99, %xmm4, %xmm6, %xmm16 # xmm16 = xmm6[1,2],xmm4[1,2]
vpmaddubsw %xmm19, %xmm16, %xmm16
vpaddw %xmm16, %xmm15, %xmm15
vpunpckhqdq %xmm4, %xmm6, %xmm4 # xmm4 = xmm6[1],xmm4[1]
vpmaddubsw %xmm23, %xmm4, %xmm4
vpaddw %xmm3, %xmm8, %xmm3
vpaddw %xmm3, %xmm14, %xmm3
vpsraw $0x5, %xmm3, %xmm3
vpaddw %xmm4, %xmm8, %xmm4
vpaddw %xmm4, %xmm15, %xmm4
vpsraw $0x5, %xmm4, %xmm4
vpackuswb %xmm4, %xmm3, %xmm3
vmovd (%rdi,%r8), %xmm4
vpinsrd $0x1, (%rdi,%rax), %xmm4, %xmm4
vpavgb %xmm3, %xmm13, %xmm3
vpinsrd $0x2, (%rdi,%r12), %xmm4, %xmm4
vpinsrd $0x3, (%rdi,%r14), %xmm4, %xmm4
vpunpcklbw %xmm3, %xmm4, %xmm6 # xmm6 = xmm4[0],xmm3[0],xmm4[1],xmm3[1],xmm4[2],xmm3[2],xmm4[3],xmm3[3],xmm4[4],xmm3[4],xmm4[5],xmm3[5],xmm4[6],xmm3[6],xmm4[7],xmm3[7]
vpmaddubsw %xmm25, %xmm6, %xmm6
vpaddsw %xmm24, %xmm6, %xmm6
vpunpckhbw %xmm3, %xmm4, %xmm3 # xmm3 = xmm4[8],xmm3[8],xmm4[9],xmm3[9],xmm4[10],xmm3[10],xmm4[11],xmm3[11],xmm4[12],xmm3[12],xmm4[13],xmm3[13],xmm4[14],xmm3[14],xmm4[15],xmm3[15]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpsraw %xmm29, %xmm6, %xmm4
vpaddsw %xmm24, %xmm3, %xmm3
vpsraw %xmm29, %xmm3, %xmm3
vpackuswb %xmm3, %xmm4, %xmm3
vmovd %xmm3, (%rdi,%r8)
vpextrd $0x1, %xmm3, (%rdi,%rax)
vpextrd $0x2, %xmm3, (%rdi,%r12)
addq %rdx, %r9
vpextrd $0x3, %xmm3, (%rdi,%r14)
addq %r11, %rdi
vmovdqa %xmm1, %xmm3
vmovdqa %xmm0, %xmm4
addl $-0x4, %ecx
jne 0xd3a4
jmp 0xf6e6
vmovdqu -0x2(%r9,%r11,2), %xmm0
vmovdqu 0x6(%r9,%r11,2), %xmm1
vpshufb %xmm5, %xmm0, %xmm4
vmovdqu -0x2(%r9,%r11), %xmm0
vpshufb %xmm5, %xmm1, %xmm16
vmovdqu 0x6(%r9,%r11), %xmm1
vpshufb %xmm5, %xmm0, %xmm19
vmovdqu -0x2(%r9), %xmm6
vmovdqu 0x6(%r9), %xmm12
vmovdqu -0x2(%r9,%rsi), %xmm13
vmovdqu64 0x6(%r9,%rsi), %xmm18
vpshufb %xmm5, %xmm1, %xmm14
leal (%rsi,%rsi), %eax
vmovdqu64 -0x2(%r9,%rax), %xmm17
vmovdqu 0x6(%r9,%rax), %xmm7
leaq (%rsi,%rsi,2), %rax
leaq 0x6(%r9,%rax), %rax
vpbroadcastw 0x203c4(%rip), %xmm8 # 0x2d9ea
vpbroadcastb 0x203bd(%rip), %xmm9 # 0x2d9ec
vpbroadcastw 0x203b6(%rip), %xmm10 # 0x2d9ee
vpbroadcastw 0x203b1(%rip), %xmm11 # 0x2d9f2
vmovdqa64 0x1ff45(%rip), %xmm23 # 0x2d590
vmovdqa64 %xmm19, %xmm20
vmovdqa64 %xmm14, %xmm21
vmovdqa %xmm13, %xmm3
vmovdqa64 %xmm18, %xmm15
vpshufb %xmm5, %xmm13, %xmm22
vpblendvb %xmm2, %xmm13, %xmm6, %xmm0
vmovdqa64 %xmm17, %xmm13
vpunpcklbw %xmm14, %xmm16, %xmm26 # xmm26 = xmm16[0],xmm14[0],xmm16[1],xmm14[1],xmm16[2],xmm14[2],xmm16[3],xmm14[3],xmm16[4],xmm14[4],xmm16[5],xmm14[5],xmm16[6],xmm14[6],xmm16[7],xmm14[7]
vpshufb %xmm5, %xmm12, %xmm14
vpblendvb %xmm2, %xmm15, %xmm12, %xmm1
vpshufb %xmm5, %xmm18, %xmm27
vmovdqa64 %xmm18, %xmm12
vmovdqa64 %xmm7, %xmm18
vmovdqu64 -0x8(%rax), %xmm17
vmovdqu (%rax), %xmm7
vpunpcklbw %xmm19, %xmm4, %xmm15 # xmm15 = xmm4[0],xmm19[0],xmm4[1],xmm19[1],xmm4[2],xmm19[2],xmm4[3],xmm19[3],xmm4[4],xmm19[4],xmm4[5],xmm19[5],xmm4[6],xmm19[6],xmm4[7],xmm19[7]
vpshufb %xmm5, %xmm6, %xmm19
vmovdqa %xmm3, %xmm6
vmovdqa64 %xmm21, %xmm16
vmovdqa64 %xmm20, %xmm4
vpshufb %xmm5, %xmm13, %xmm3
vpshufb %xmm5, %xmm17, %xmm20
vpunpcklbw %xmm20, %xmm3, %xmm3 # xmm3 = xmm3[0],xmm20[0],xmm3[1],xmm20[1],xmm3[2],xmm20[2],xmm3[3],xmm20[3],xmm3[4],xmm20[4],xmm3[5],xmm20[5],xmm3[6],xmm20[6],xmm3[7],xmm20[7]
vpunpcklbw %xmm22, %xmm19, %xmm20 # xmm20 = xmm19[0],xmm22[0],xmm19[1],xmm22[1],xmm19[2],xmm22[2],xmm19[3],xmm22[3],xmm19[4],xmm22[4],xmm19[5],xmm22[5],xmm19[6],xmm22[6],xmm19[7],xmm22[7]
vpmaddubsw %xmm8, %xmm15, %xmm15
vpmaddubsw %xmm9, %xmm20, %xmm20
vpaddw %xmm20, %xmm15, %xmm15
vpmaddubsw %xmm10, %xmm3, %xmm3
vpshufb %xmm5, %xmm18, %xmm20
vpshufb %xmm5, %xmm7, %xmm21
vpunpcklbw %xmm21, %xmm20, %xmm20 # xmm20 = xmm20[0],xmm21[0],xmm20[1],xmm21[1],xmm20[2],xmm21[2],xmm20[3],xmm21[3],xmm20[4],xmm21[4],xmm20[5],xmm21[5],xmm20[6],xmm21[6],xmm20[7],xmm21[7]
vpunpcklbw %xmm27, %xmm14, %xmm21 # xmm21 = xmm14[0],xmm27[0],xmm14[1],xmm27[1],xmm14[2],xmm27[2],xmm14[3],xmm27[3],xmm14[4],xmm27[4],xmm14[5],xmm27[5],xmm14[6],xmm27[6],xmm14[7],xmm27[7]
vpmaddubsw %xmm8, %xmm26, %xmm22
vpmaddubsw %xmm9, %xmm21, %xmm21
vpaddw %xmm21, %xmm22, %xmm21
vpmaddubsw %xmm10, %xmm20, %xmm20
vpaddw %xmm11, %xmm15, %xmm15
vpaddw %xmm3, %xmm15, %xmm3
vpsraw $0x5, %xmm3, %xmm3
vpaddw %xmm11, %xmm21, %xmm15
vpaddw %xmm20, %xmm15, %xmm15
vpsraw $0x5, %xmm15, %xmm15
vpackuswb %xmm15, %xmm3, %xmm3
vpsrldq $0x1, %xmm1, %xmm15     # xmm15 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpshufb %xmm23, %xmm0, %xmm0
vpunpcklbw %xmm15, %xmm1, %xmm20 # xmm20 = xmm1[0],xmm15[0],xmm1[1],xmm15[1],xmm1[2],xmm15[2],xmm1[3],xmm15[3],xmm1[4],xmm15[4],xmm1[5],xmm15[5],xmm1[6],xmm15[6],xmm1[7],xmm15[7]
vpunpckhbw %xmm15, %xmm1, %xmm1 # xmm1 = xmm1[8],xmm15[8],xmm1[9],xmm15[9],xmm1[10],xmm15[10],xmm1[11],xmm15[11],xmm1[12],xmm15[12],xmm1[13],xmm15[13],xmm1[14],xmm15[14],xmm1[15],xmm15[15]
vpmaddubsw %xmm8, %xmm0, %xmm15
valignd $0x1, %xmm0, %xmm20, %xmm21 # xmm21 = xmm0[1,2,3],xmm20[0]
vpmaddubsw %xmm9, %xmm21, %xmm21
vpaddw %xmm21, %xmm15, %xmm15
valignq $0x1, %xmm0, %xmm20, %xmm0 # xmm0 = xmm0[1],xmm20[0]
vpmaddubsw %xmm10, %xmm0, %xmm0
vpmaddubsw %xmm8, %xmm20, %xmm21
valignd $0x1, %xmm20, %xmm1, %xmm22 # xmm22 = xmm20[1,2,3],xmm1[0]
vpmaddubsw %xmm9, %xmm22, %xmm22
vpaddw %xmm22, %xmm21, %xmm21
valignq $0x1, %xmm20, %xmm1, %xmm1 # xmm1 = xmm20[1],xmm1[0]
vpmaddubsw %xmm10, %xmm1, %xmm1
vpaddw %xmm0, %xmm11, %xmm0
vpaddw %xmm0, %xmm15, %xmm0
vpsraw $0x5, %xmm0, %xmm0
vpaddw %xmm1, %xmm11, %xmm1
vpaddw %xmm1, %xmm21, %xmm1
vpsraw $0x5, %xmm1, %xmm1
vpackuswb %xmm1, %xmm0, %xmm0
vpavgb %xmm0, %xmm3, %xmm0
vmovdqa (%r15), %xmm1
vpunpcklbw %xmm0, %xmm1, %xmm3 # xmm3 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3],xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpunpckhbw %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm3, %xmm1
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovdqa %xmm0, (%r15)
addq %r10, %r15
addq %rsi, %rax
decl %ecx
jne 0xd64b
jmp 0xf6e6
vmovdqu (%rdx,%r11,2), %xmm0
vpshufb %xmm5, %xmm0, %xmm10
vmovdqu (%rdx,%r11), %xmm0
vpshufb %xmm5, %xmm0, %xmm12
vmovdqu (%rdx), %xmm9
vmovdqu (%rdx,%rsi), %xmm13
leal (%rsi,%rsi), %r9d
vmovdqu (%rdx,%r9), %xmm11
leal (%r10,%r10), %r11d
leaq (%rsi,%rsi,2), %rbx
addq %r14, %rdi
incq %rax
imulq %r10, %rax
vpbroadcastw 0x20194(%rip), %xmm4 # 0x2d9ea
vpbroadcastb 0x2018d(%rip), %xmm6 # 0x2d9ec
vpbroadcastw 0x20186(%rip), %xmm7 # 0x2d9ee
vpbroadcastw 0x20181(%rip), %xmm8 # 0x2d9f2
vpunpcklbw %xmm12, %xmm10, %xmm0 # xmm0 = xmm10[0],xmm12[0],xmm10[1],xmm12[1],xmm10[2],xmm12[2],xmm10[3],xmm12[3],xmm10[4],xmm12[4],xmm10[5],xmm12[5],xmm10[6],xmm12[6],xmm10[7],xmm12[7]
vpshufb %xmm5, %xmm9, %xmm10
vpblendvb %xmm2, %xmm13, %xmm9, %xmm1
vpunpcklbw %xmm10, %xmm12, %xmm14 # xmm14 = xmm12[0],xmm10[0],xmm12[1],xmm10[1],xmm12[2],xmm10[2],xmm12[3],xmm10[3],xmm12[4],xmm10[4],xmm12[5],xmm10[5],xmm12[6],xmm10[6],xmm12[7],xmm10[7]
vpshufb %xmm5, %xmm13, %xmm12
vpblendvb %xmm2, %xmm11, %xmm13, %xmm3
vmovdqu (%rdx,%rbx), %xmm13
vpshufb %xmm5, %xmm11, %xmm15
vmovdqa %xmm11, %xmm9
vmovdqu (%rdx,%rsi,4), %xmm11
vpshufb %xmm5, %xmm13, %xmm16
vpshufb %xmm5, %xmm11, %xmm17
vpunpcklbw %xmm12, %xmm10, %xmm18 # xmm18 = xmm10[0],xmm12[0],xmm10[1],xmm12[1],xmm10[2],xmm12[2],xmm10[3],xmm12[3],xmm10[4],xmm12[4],xmm10[5],xmm12[5],xmm10[6],xmm12[6],xmm10[7],xmm12[7]
vpunpcklbw %xmm16, %xmm15, %xmm19 # xmm19 = xmm15[0],xmm16[0],xmm15[1],xmm16[1],xmm15[2],xmm16[2],xmm15[3],xmm16[3],xmm15[4],xmm16[4],xmm15[5],xmm16[5],xmm15[6],xmm16[6],xmm15[7],xmm16[7]
vpmaddubsw %xmm4, %xmm0, %xmm0
vpmaddubsw %xmm6, %xmm18, %xmm18
vpaddw %xmm18, %xmm0, %xmm0
vpmaddubsw %xmm7, %xmm19, %xmm18
vpunpcklbw %xmm15, %xmm12, %xmm15 # xmm15 = xmm12[0],xmm15[0],xmm12[1],xmm15[1],xmm12[2],xmm15[2],xmm12[3],xmm15[3],xmm12[4],xmm15[4],xmm12[5],xmm15[5],xmm12[6],xmm15[6],xmm12[7],xmm15[7]
vpunpcklbw %xmm17, %xmm16, %xmm16 # xmm16 = xmm16[0],xmm17[0],xmm16[1],xmm17[1],xmm16[2],xmm17[2],xmm16[3],xmm17[3],xmm16[4],xmm17[4],xmm16[5],xmm17[5],xmm16[6],xmm17[6],xmm16[7],xmm17[7]
vpmaddubsw %xmm4, %xmm14, %xmm14
vpmaddubsw %xmm6, %xmm15, %xmm15
vpaddw %xmm15, %xmm14, %xmm14
vpmaddubsw %xmm7, %xmm16, %xmm15
vpaddw %xmm0, %xmm8, %xmm0
vpaddw %xmm18, %xmm0, %xmm0
vpsraw $0x5, %xmm0, %xmm0
vpaddw %xmm8, %xmm14, %xmm14
vpaddw %xmm15, %xmm14, %xmm14
vpsraw $0x5, %xmm14, %xmm14
vpackuswb %xmm14, %xmm0, %xmm0
vpsrldq $0x1, %xmm1, %xmm14     # xmm14 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm14, %xmm1, %xmm15 # xmm15 = xmm1[0],xmm14[0],xmm1[1],xmm14[1],xmm1[2],xmm14[2],xmm1[3],xmm14[3],xmm1[4],xmm14[4],xmm1[5],xmm14[5],xmm1[6],xmm14[6],xmm1[7],xmm14[7]
vpunpckhbw %xmm14, %xmm1, %xmm1 # xmm1 = xmm1[8],xmm14[8],xmm1[9],xmm14[9],xmm1[10],xmm14[10],xmm1[11],xmm14[11],xmm1[12],xmm14[12],xmm1[13],xmm14[13],xmm1[14],xmm14[14],xmm1[15],xmm14[15]
vpalignr $0x4, %xmm15, %xmm1, %xmm14 # xmm14 = xmm15[4,5,6,7,8,9,10,11,12,13,14,15],xmm1[0,1,2,3]
vpalignr $0x8, %xmm15, %xmm1, %xmm1 # xmm1 = xmm15[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm4, %xmm15, %xmm15
vpmaddubsw %xmm6, %xmm14, %xmm14
vpaddw %xmm14, %xmm15, %xmm14
vpmaddubsw %xmm7, %xmm1, %xmm1
vpsrldq $0x1, %xmm3, %xmm15     # xmm15 = xmm3[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm15, %xmm3, %xmm16 # xmm16 = xmm3[0],xmm15[0],xmm3[1],xmm15[1],xmm3[2],xmm15[2],xmm3[3],xmm15[3],xmm3[4],xmm15[4],xmm3[5],xmm15[5],xmm3[6],xmm15[6],xmm3[7],xmm15[7]
vpunpckhbw %xmm15, %xmm3, %xmm3 # xmm3 = xmm3[8],xmm15[8],xmm3[9],xmm15[9],xmm3[10],xmm15[10],xmm3[11],xmm15[11],xmm3[12],xmm15[12],xmm3[13],xmm15[13],xmm3[14],xmm15[14],xmm3[15],xmm15[15]
valignd $0x1, %xmm16, %xmm3, %xmm15 # xmm15 = xmm16[1,2,3],xmm3[0]
valignq $0x1, %xmm16, %xmm3, %xmm3 # xmm3 = xmm16[1],xmm3[0]
vpmaddubsw %xmm4, %xmm16, %xmm16
vpmaddubsw %xmm6, %xmm15, %xmm15
vpaddw %xmm15, %xmm16, %xmm15
vpmaddubsw %xmm7, %xmm3, %xmm3
vpaddw %xmm1, %xmm8, %xmm1
vpaddw %xmm1, %xmm14, %xmm1
vpsraw $0x5, %xmm1, %xmm1
vpaddw %xmm3, %xmm8, %xmm3
vpaddw %xmm3, %xmm15, %xmm3
vpsraw $0x5, %xmm3, %xmm3
vpackuswb %xmm3, %xmm1, %xmm1
vpavgb %xmm1, %xmm0, %xmm0
vpbroadcastq (%rdi,%rax), %xmm1
vmovq (%rdi,%r8), %xmm3
vpunpcklbw %xmm0, %xmm3, %xmm3 # xmm3 = xmm3[0],xmm0[0],xmm3[1],xmm0[1],xmm3[2],xmm0[2],xmm3[3],xmm0[3],xmm3[4],xmm0[4],xmm3[5],xmm0[5],xmm3[6],xmm0[6],xmm3[7],xmm0[7]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpunpckhbw %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpsraw %xmm29, %xmm3, %xmm1
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovq %xmm0, (%rdi,%r8)
addq %r9, %rdx
vpextrq $0x1, %xmm0, (%rdi,%rax)
addq %r11, %rdi
addl $-0x2, %ecx
jne 0xd871
jmp 0xf6e6
addq $0x6, %r9
vmovdqa 0x1fb8a(%rip), %xmm0    # 0x2d590
vpbroadcastw 0x1ffdb(%rip), %xmm1 # 0x2d9ea
vpbroadcastb 0x1ffd4(%rip), %xmm3 # 0x2d9ec
vpbroadcastw 0x1ffcd(%rip), %xmm4 # 0x2d9ee
vpbroadcastw 0x1ffc8(%rip), %xmm6 # 0x2d9f2
vmovdqu -0x8(%r9), %xmm7
vmovupd (%r9), %xmm8
vpsrldq $0x1, %xmm8, %xmm9      # xmm9 = xmm8[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpshufb %xmm0, %xmm7, %xmm10
vpunpcklbw %xmm9, %xmm8, %xmm11 # xmm11 = xmm8[0],xmm9[0],xmm8[1],xmm9[1],xmm8[2],xmm9[2],xmm8[3],xmm9[3],xmm8[4],xmm9[4],xmm8[5],xmm9[5],xmm8[6],xmm9[6],xmm8[7],xmm9[7]
vpunpckhbw %xmm9, %xmm8, %xmm9 # xmm9 = xmm8[8],xmm9[8],xmm8[9],xmm9[9],xmm8[10],xmm9[10],xmm8[11],xmm9[11],xmm8[12],xmm9[12],xmm8[13],xmm9[13],xmm8[14],xmm9[14],xmm8[15],xmm9[15]
vpmaddubsw %xmm1, %xmm10, %xmm12
vpalignr $0x4, %xmm10, %xmm11, %xmm13 # xmm13 = xmm10[4,5,6,7,8,9,10,11,12,13,14,15],xmm11[0,1,2,3]
vpmaddubsw %xmm3, %xmm13, %xmm13
vpaddw %xmm13, %xmm12, %xmm12
vpalignr $0x8, %xmm10, %xmm11, %xmm10 # xmm10 = xmm10[8,9,10,11,12,13,14,15],xmm11[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm4, %xmm10, %xmm10
vpmaddubsw %xmm1, %xmm11, %xmm13
vpalignr $0x4, %xmm11, %xmm9, %xmm14 # xmm14 = xmm11[4,5,6,7,8,9,10,11,12,13,14,15],xmm9[0,1,2,3]
vpmaddubsw %xmm3, %xmm14, %xmm14
vpaddw %xmm14, %xmm13, %xmm13
vpalignr $0x8, %xmm11, %xmm9, %xmm9 # xmm9 = xmm11[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm4, %xmm9, %xmm9
vpaddw %xmm6, %xmm10, %xmm10
vpaddw %xmm10, %xmm12, %xmm10
vpsraw $0x5, %xmm10, %xmm10
vpaddw %xmm6, %xmm9, %xmm9
vpaddw %xmm9, %xmm13, %xmm9
vpsraw $0x5, %xmm9, %xmm9
vpackuswb %xmm9, %xmm10, %xmm9
vpshufb %xmm5, %xmm7, %xmm7
vpshufb %xmm5, %xmm8, %xmm8
vpunpcklqdq %xmm8, %xmm7, %xmm7 # xmm7 = xmm7[0],xmm8[0]
vpblendvb %xmm2, %xmm9, %xmm7, %xmm7
vmovdqa (%r15), %xmm8
vpavgb %xmm7, %xmm9, %xmm7
vpunpcklbw %xmm7, %xmm8, %xmm9 # xmm9 = xmm8[0],xmm7[0],xmm8[1],xmm7[1],xmm8[2],xmm7[2],xmm8[3],xmm7[3],xmm8[4],xmm7[4],xmm8[5],xmm7[5],xmm8[6],xmm7[6],xmm8[7],xmm7[7]
vpmaddubsw %xmm25, %xmm9, %xmm9
vpaddsw %xmm24, %xmm9, %xmm9
vpunpckhbw %xmm7, %xmm8, %xmm7 # xmm7 = xmm8[8],xmm7[8],xmm8[9],xmm7[9],xmm8[10],xmm7[10],xmm8[11],xmm7[11],xmm8[12],xmm7[12],xmm8[13],xmm7[13],xmm8[14],xmm7[14],xmm8[15],xmm7[15]
vpmaddubsw %xmm25, %xmm7, %xmm7
vpaddsw %xmm24, %xmm7, %xmm7
vpsraw %xmm29, %xmm9, %xmm8
vpsraw %xmm29, %xmm7, %xmm7
vpackuswb %xmm7, %xmm8, %xmm7
vmovdqa %xmm7, (%r15)
addq %r10, %r15
addq %rsi, %r9
decl %ecx
jne 0xda2a
jmp 0xf6e6
vmovdqu (%r9,%r11,2), %xmm0
vmovdqu (%r9,%r11), %xmm11
vmovdqu (%r9), %xmm5
vmovdqu (%r9,%rsi), %xmm6
vmovdqu (%r9,%rsi,2), %xmm7
leaq (%rsi,%rsi,2), %rax
addq %r9, %rax
vpbroadcastw 0x1feaa(%rip), %xmm3 # 0x2d9ea
vpbroadcastb 0x1fea3(%rip), %xmm8 # 0x2d9ec
vpbroadcastw 0x1fe9c(%rip), %xmm9 # 0x2d9ee
vpbroadcastw 0x1fe97(%rip), %xmm10 # 0x2d9f2
vmovdqa %xmm11, %xmm1
vpunpcklbw %xmm11, %xmm0, %xmm12 # xmm12 = xmm0[0],xmm11[0],xmm0[1],xmm11[1],xmm0[2],xmm11[2],xmm0[3],xmm11[3],xmm0[4],xmm11[4],xmm0[5],xmm11[5],xmm0[6],xmm11[6],xmm0[7],xmm11[7]
vpunpckhbw %xmm11, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm11[8],xmm0[9],xmm11[9],xmm0[10],xmm11[10],xmm0[11],xmm11[11],xmm0[12],xmm11[12],xmm0[13],xmm11[13],xmm0[14],xmm11[14],xmm0[15],xmm11[15]
vmovdqa %xmm5, %xmm11
vmovdqa %xmm6, %xmm5
vmovdqa %xmm7, %xmm6
vmovdqu (%rax), %xmm7
vpunpcklbw %xmm5, %xmm11, %xmm13 # xmm13 = xmm11[0],xmm5[0],xmm11[1],xmm5[1],xmm11[2],xmm5[2],xmm11[3],xmm5[3],xmm11[4],xmm5[4],xmm11[5],xmm5[5],xmm11[6],xmm5[6],xmm11[7],xmm5[7]
vpunpcklbw %xmm7, %xmm6, %xmm14 # xmm14 = xmm6[0],xmm7[0],xmm6[1],xmm7[1],xmm6[2],xmm7[2],xmm6[3],xmm7[3],xmm6[4],xmm7[4],xmm6[5],xmm7[5],xmm6[6],xmm7[6],xmm6[7],xmm7[7]
vpmaddubsw %xmm3, %xmm12, %xmm12
vpmaddubsw %xmm8, %xmm13, %xmm13
vpaddw %xmm13, %xmm12, %xmm12
vpmaddubsw %xmm9, %xmm14, %xmm13
vpaddw %xmm13, %xmm12, %xmm12
vpunpckhbw %xmm5, %xmm11, %xmm13 # xmm13 = xmm11[8],xmm5[8],xmm11[9],xmm5[9],xmm11[10],xmm5[10],xmm11[11],xmm5[11],xmm11[12],xmm5[12],xmm11[13],xmm5[13],xmm11[14],xmm5[14],xmm11[15],xmm5[15]
vpunpckhbw %xmm7, %xmm6, %xmm14 # xmm14 = xmm6[8],xmm7[8],xmm6[9],xmm7[9],xmm6[10],xmm7[10],xmm6[11],xmm7[11],xmm6[12],xmm7[12],xmm6[13],xmm7[13],xmm6[14],xmm7[14],xmm6[15],xmm7[15]
vpmaddubsw %xmm3, %xmm0, %xmm0
vpmaddubsw %xmm8, %xmm13, %xmm13
vpaddw %xmm0, %xmm13, %xmm0
vpmaddubsw %xmm9, %xmm14, %xmm13
vpaddw %xmm0, %xmm13, %xmm0
vpaddw %xmm10, %xmm12, %xmm12
vpsraw $0x5, %xmm12, %xmm12
vpaddw %xmm0, %xmm10, %xmm0
vpsraw $0x5, %xmm0, %xmm0
vpackuswb %xmm0, %xmm12, %xmm12
vpblendvb %xmm4, %xmm5, %xmm11, %xmm0
vpblendvb %xmm2, %xmm12, %xmm0, %xmm13
vmovdqa (%r15), %xmm14
vmovdqa %xmm1, %xmm0
vpavgb %xmm12, %xmm13, %xmm1
vpunpcklbw %xmm1, %xmm14, %xmm12 # xmm12 = xmm14[0],xmm1[0],xmm14[1],xmm1[1],xmm14[2],xmm1[2],xmm14[3],xmm1[3],xmm14[4],xmm1[4],xmm14[5],xmm1[5],xmm14[6],xmm1[6],xmm14[7],xmm1[7]
vpmaddubsw %xmm25, %xmm12, %xmm12
vpaddsw %xmm24, %xmm12, %xmm12
vpunpckhbw %xmm1, %xmm14, %xmm1 # xmm1 = xmm14[8],xmm1[8],xmm14[9],xmm1[9],xmm14[10],xmm1[10],xmm14[11],xmm1[11],xmm14[12],xmm1[12],xmm14[13],xmm1[13],xmm14[14],xmm1[14],xmm14[15],xmm1[15]
vpmaddubsw %xmm25, %xmm1, %xmm1
vpaddsw %xmm24, %xmm1, %xmm1
vpsraw %xmm29, %xmm12, %xmm12
vpsraw %xmm29, %xmm1, %xmm1
vpackuswb %xmm1, %xmm12, %xmm1
vmovdqa %xmm1, (%r15)
addq %r10, %r15
addq %rsi, %rax
decl %ecx
jne 0xdb5b
jmp 0xf6e6
vmovupd (%rdx,%r11,2), %xmm0
vpsrldq $0x1, %xmm0, %xmm1      # xmm1 = xmm0[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpalignr $0x4, %xmm3, %xmm0, %xmm1 # xmm1 = xmm3[4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1,2,3]
vpalignr $0x8, %xmm3, %xmm0, %xmm0 # xmm0 = xmm3[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpbroadcastw 0x1fd8f(%rip), %xmm5 # 0x2d9ea
vpmaddubsw %xmm5, %xmm3, %xmm3
vpbroadcastb 0x1fd83(%rip), %xmm6 # 0x2d9ec
vpmaddubsw %xmm6, %xmm1, %xmm1
vpaddw %xmm3, %xmm1, %xmm1
vpbroadcastw 0x1fd73(%rip), %xmm7 # 0x2d9ee
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm1, %xmm10
vmovupd (%rdx,%r11), %xmm0
vpsrldq $0x1, %xmm0, %xmm1      # xmm1 = xmm0[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpalignr $0x4, %xmm3, %xmm0, %xmm1 # xmm1 = xmm3[4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1,2,3]
vpalignr $0x8, %xmm3, %xmm0, %xmm0 # xmm0 = xmm3[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm5, %xmm3, %xmm3
vpmaddubsw %xmm6, %xmm1, %xmm1
vpaddw %xmm3, %xmm1, %xmm1
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm1, %xmm11
vmovupd (%rdx), %xmm0
vpsrldq $0x1, %xmm0, %xmm1      # xmm1 = xmm0[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpalignr $0x4, %xmm3, %xmm0, %xmm1 # xmm1 = xmm3[4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1,2,3]
vpalignr $0x8, %xmm3, %xmm0, %xmm0 # xmm0 = xmm3[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm5, %xmm3, %xmm3
vpmaddubsw %xmm6, %xmm1, %xmm1
vpaddw %xmm3, %xmm1, %xmm1
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm1, %xmm8
vmovupd (%rdx,%rsi), %xmm0
vpsrldq $0x1, %xmm0, %xmm1      # xmm1 = xmm0[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpalignr $0x4, %xmm3, %xmm0, %xmm1 # xmm1 = xmm3[4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1,2,3]
vpalignr $0x8, %xmm3, %xmm0, %xmm0 # xmm0 = xmm3[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm5, %xmm3, %xmm3
vpmaddubsw %xmm6, %xmm1, %xmm1
vpaddw %xmm3, %xmm1, %xmm1
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm1, %xmm9
leal (%rsi,%rsi), %r9d
vmovupd (%rdx,%r9), %xmm0
vpsrldq $0x1, %xmm0, %xmm1      # xmm1 = xmm0[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpalignr $0x4, %xmm3, %xmm0, %xmm1 # xmm1 = xmm3[4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1,2,3]
vpalignr $0x8, %xmm3, %xmm0, %xmm0 # xmm0 = xmm3[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm5, %xmm3, %xmm3
vpmaddubsw %xmm6, %xmm1, %xmm1
vpaddw %xmm3, %xmm1, %xmm1
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm1, %xmm3
leal (%r10,%r10), %r11d
leaq (%rsi,%rsi,2), %rbx
addq %r14, %rdi
incq %rax
imulq %r10, %rax
vpbroadcastw 0x1fc78(%rip), %xmm12 # 0x2d9f0
vpbroadcastw 0x1fc71(%rip), %xmm13 # 0x2d9f2
vmovdqa %xmm8, %xmm0
vmovdqa %xmm9, %xmm1
vmovdqa %xmm3, %xmm8
vmovupd (%rdx,%rbx), %xmm3
vpsrldq $0x1, %xmm3, %xmm9      # xmm9 = xmm3[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm9, %xmm3, %xmm14 # xmm14 = xmm3[0],xmm9[0],xmm3[1],xmm9[1],xmm3[2],xmm9[2],xmm3[3],xmm9[3],xmm3[4],xmm9[4],xmm3[5],xmm9[5],xmm3[6],xmm9[6],xmm3[7],xmm9[7]
vpunpckhbw %xmm9, %xmm3, %xmm3 # xmm3 = xmm3[8],xmm9[8],xmm3[9],xmm9[9],xmm3[10],xmm9[10],xmm3[11],xmm9[11],xmm3[12],xmm9[12],xmm3[13],xmm9[13],xmm3[14],xmm9[14],xmm3[15],xmm9[15]
vpalignr $0x4, %xmm14, %xmm3, %xmm9 # xmm9 = xmm14[4,5,6,7,8,9,10,11,12,13,14,15],xmm3[0,1,2,3]
vpalignr $0x8, %xmm14, %xmm3, %xmm3 # xmm3 = xmm14[8,9,10,11,12,13,14,15],xmm3[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm5, %xmm14, %xmm14
vpmaddubsw %xmm6, %xmm9, %xmm9
vpaddw %xmm14, %xmm9, %xmm9
vpmaddubsw %xmm7, %xmm3, %xmm3
vpaddw %xmm3, %xmm9, %xmm9
vmovupd (%rdx,%rsi,4), %xmm3
vpsrldq $0x1, %xmm3, %xmm14     # xmm14 = xmm3[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm14, %xmm3, %xmm15 # xmm15 = xmm3[0],xmm14[0],xmm3[1],xmm14[1],xmm3[2],xmm14[2],xmm3[3],xmm14[3],xmm3[4],xmm14[4],xmm3[5],xmm14[5],xmm3[6],xmm14[6],xmm3[7],xmm14[7]
vpunpckhbw %xmm14, %xmm3, %xmm3 # xmm3 = xmm3[8],xmm14[8],xmm3[9],xmm14[9],xmm3[10],xmm14[10],xmm3[11],xmm14[11],xmm3[12],xmm14[12],xmm3[13],xmm14[13],xmm3[14],xmm14[14],xmm3[15],xmm14[15]
vpalignr $0x4, %xmm15, %xmm3, %xmm14 # xmm14 = xmm15[4,5,6,7,8,9,10,11,12,13,14,15],xmm3[0,1,2,3]
vpalignr $0x8, %xmm15, %xmm3, %xmm3 # xmm3 = xmm15[8,9,10,11,12,13,14,15],xmm3[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm5, %xmm15, %xmm15
vpmaddubsw %xmm6, %xmm14, %xmm14
vpaddw %xmm15, %xmm14, %xmm14
vpmaddubsw %xmm7, %xmm3, %xmm3
vpaddw %xmm3, %xmm14, %xmm3
vpaddw %xmm8, %xmm11, %xmm14
vpaddw %xmm1, %xmm0, %xmm15
vpsubw %xmm14, %xmm10, %xmm10
vpaddw %xmm9, %xmm10, %xmm10
vpsraw $0x2, %xmm10, %xmm10
vpsubw %xmm14, %xmm15, %xmm14
vpaddw %xmm10, %xmm14, %xmm10
vpsraw $0x2, %xmm10, %xmm10
vpaddw %xmm0, %xmm9, %xmm14
vpaddw %xmm8, %xmm1, %xmm16
vpsubw %xmm14, %xmm11, %xmm11
vpaddw %xmm3, %xmm11, %xmm11
vpsraw $0x2, %xmm11, %xmm11
vpsubw %xmm14, %xmm16, %xmm14
vpaddw %xmm11, %xmm14, %xmm11
vpsraw $0x2, %xmm11, %xmm11
vpaddw %xmm12, %xmm15, %xmm14
vpaddw %xmm10, %xmm14, %xmm10
vpsraw $0x6, %xmm10, %xmm10
vpaddw %xmm12, %xmm16, %xmm14
vpaddw %xmm11, %xmm14, %xmm11
vpsraw $0x6, %xmm11, %xmm11
vpackuswb %xmm11, %xmm10, %xmm10
vpblendvb %xmm4, %xmm1, %xmm0, %xmm11
vpaddw %xmm13, %xmm11, %xmm11
vpblendvb %xmm4, %xmm8, %xmm1, %xmm14
vpsraw $0x5, %xmm11, %xmm11
vpaddw %xmm13, %xmm14, %xmm14
vpsraw $0x5, %xmm14, %xmm14
vpackuswb %xmm14, %xmm11, %xmm11
vpbroadcastq (%rdi,%rax), %xmm14
vmovq (%rdi,%r8), %xmm15
vpblendvb %xmm2, %xmm10, %xmm11, %xmm11
vpavgb %xmm10, %xmm11, %xmm10
vpunpcklbw %xmm10, %xmm15, %xmm11 # xmm11 = xmm15[0],xmm10[0],xmm15[1],xmm10[1],xmm15[2],xmm10[2],xmm15[3],xmm10[3],xmm15[4],xmm10[4],xmm15[5],xmm10[5],xmm15[6],xmm10[6],xmm15[7],xmm10[7]
vpmaddubsw %xmm25, %xmm11, %xmm11
vpaddsw %xmm24, %xmm11, %xmm11
vpunpckhbw %xmm10, %xmm14, %xmm10 # xmm10 = xmm14[8],xmm10[8],xmm14[9],xmm10[9],xmm14[10],xmm10[10],xmm14[11],xmm10[11],xmm14[12],xmm10[12],xmm14[13],xmm10[13],xmm14[14],xmm10[14],xmm14[15],xmm10[15]
vpmaddubsw %xmm25, %xmm10, %xmm10
vpsraw %xmm29, %xmm11, %xmm11
vpaddsw %xmm24, %xmm10, %xmm10
vpsraw %xmm29, %xmm10, %xmm10
vpackuswb %xmm10, %xmm11, %xmm10
vmovq %xmm10, (%rdi,%r8)
addq %r9, %rdx
vpextrq $0x1, %xmm10, (%rdi,%rax)
addq %r11, %rdi
vmovdqa %xmm1, %xmm11
vmovdqa %xmm0, %xmm10
addl $-0x2, %ecx
jne 0xdd81
jmp 0xf6e6
vmovq (%r9,%r11,2), %xmm0
vmovq (%r9,%r11), %xmm11
vmovq (%r9), %xmm10
vmovq (%r9,%rsi), %xmm7
leal (%rsi,%rsi), %edx
vmovq (%r9,%rdx), %xmm3
leal (%r10,%r10), %r11d
addq %r14, %rdi
incq %rax
imulq %r10, %rax
leaq (%rsi,%rsi,2), %r10
vpbroadcastw 0x1fa9f(%rip), %xmm5 # 0x2d9ea
vpbroadcastb 0x1fa98(%rip), %xmm6 # 0x2d9ec
vpbroadcastw 0x1fa91(%rip), %xmm8 # 0x2d9ee
vpbroadcastw 0x1fa8c(%rip), %xmm9 # 0x2d9f2
vpunpcklbw %xmm11, %xmm0, %xmm13 # xmm13 = xmm0[0],xmm11[0],xmm0[1],xmm11[1],xmm0[2],xmm11[2],xmm0[3],xmm11[3],xmm0[4],xmm11[4],xmm0[5],xmm11[5],xmm0[6],xmm11[6],xmm0[7],xmm11[7]
vmovdqa %xmm10, %xmm0
vpunpcklbw %xmm10, %xmm11, %xmm14 # xmm14 = xmm11[0],xmm10[0],xmm11[1],xmm10[1],xmm11[2],xmm10[2],xmm11[3],xmm10[3],xmm11[4],xmm10[4],xmm11[5],xmm10[5],xmm11[6],xmm10[6],xmm11[7],xmm10[7]
vmovdqa %xmm7, %xmm11
vpunpcklbw %xmm7, %xmm10, %xmm15 # xmm15 = xmm10[0],xmm7[0],xmm10[1],xmm7[1],xmm10[2],xmm7[2],xmm10[3],xmm7[3],xmm10[4],xmm7[4],xmm10[5],xmm7[5],xmm10[6],xmm7[6],xmm10[7],xmm7[7]
vpunpcklqdq %xmm7, %xmm10, %xmm1 # xmm1 = xmm10[0],xmm7[0]
vmovdqa %xmm3, %xmm10
vpunpcklbw %xmm3, %xmm7, %xmm16 # xmm16 = xmm7[0],xmm3[0],xmm7[1],xmm3[1],xmm7[2],xmm3[2],xmm7[3],xmm3[3],xmm7[4],xmm3[4],xmm7[5],xmm3[5],xmm7[6],xmm3[6],xmm7[7],xmm3[7]
vmovq (%r9,%r10), %xmm7
vpunpcklqdq %xmm3, %xmm11, %xmm12 # xmm12 = xmm11[0],xmm3[0]
vpmaddubsw %xmm5, %xmm13, %xmm3
vpmaddubsw %xmm6, %xmm15, %xmm13
vpaddw %xmm3, %xmm13, %xmm13
vmovq (%r9,%rsi,4), %xmm3
vpmaddubsw %xmm5, %xmm14, %xmm14
vpmaddubsw %xmm6, %xmm16, %xmm15
vpaddw %xmm15, %xmm14, %xmm14
vpunpcklbw %xmm7, %xmm10, %xmm15 # xmm15 = xmm10[0],xmm7[0],xmm10[1],xmm7[1],xmm10[2],xmm7[2],xmm10[3],xmm7[3],xmm10[4],xmm7[4],xmm10[5],xmm7[5],xmm10[6],xmm7[6],xmm10[7],xmm7[7]
vpmaddubsw %xmm8, %xmm15, %xmm15
vpaddw %xmm9, %xmm15, %xmm15
vpaddw %xmm15, %xmm13, %xmm13
vpunpcklbw %xmm3, %xmm7, %xmm15 # xmm15 = xmm7[0],xmm3[0],xmm7[1],xmm3[1],xmm7[2],xmm3[2],xmm7[3],xmm3[3],xmm7[4],xmm3[4],xmm7[5],xmm3[5],xmm7[6],xmm3[6],xmm7[7],xmm3[7]
vpmaddubsw %xmm8, %xmm15, %xmm15
vpsraw $0x5, %xmm13, %xmm13
vpaddw %xmm9, %xmm15, %xmm15
vpaddw %xmm15, %xmm14, %xmm14
vpsraw $0x5, %xmm14, %xmm14
vpackuswb %xmm14, %xmm13, %xmm13
vpblendvb %xmm4, %xmm12, %xmm1, %xmm1
vpbroadcastq (%rdi,%rax), %xmm12
vmovq (%rdi,%r8), %xmm14
vpblendvb %xmm2, %xmm13, %xmm1, %xmm1
vpavgb %xmm1, %xmm13, %xmm1
vpunpcklbw %xmm1, %xmm14, %xmm13 # xmm13 = xmm14[0],xmm1[0],xmm14[1],xmm1[1],xmm14[2],xmm1[2],xmm14[3],xmm1[3],xmm14[4],xmm1[4],xmm14[5],xmm1[5],xmm14[6],xmm1[6],xmm14[7],xmm1[7]
vpmaddubsw %xmm25, %xmm13, %xmm13
vpaddsw %xmm24, %xmm13, %xmm13
vpunpckhbw %xmm1, %xmm12, %xmm1 # xmm1 = xmm12[8],xmm1[8],xmm12[9],xmm1[9],xmm12[10],xmm1[10],xmm12[11],xmm1[11],xmm12[12],xmm1[12],xmm12[13],xmm1[13],xmm12[14],xmm1[14],xmm12[15],xmm1[15]
vpmaddubsw %xmm25, %xmm1, %xmm1
vpsraw %xmm29, %xmm13, %xmm12
vpaddsw %xmm24, %xmm1, %xmm1
vpsraw %xmm29, %xmm1, %xmm1
vpackuswb %xmm1, %xmm12, %xmm1
vmovq %xmm1, (%rdi,%r8)
addq %rdx, %r9
vpextrq $0x1, %xmm1, (%rdi,%rax)
addq %r11, %rdi
addl $-0x2, %ecx
jne 0xdf66
jmp 0xf6e6
vmovd (%r9,%r11,2), %xmm0
vpinsrd $0x1, (%r9,%r11), %xmm0, %xmm0
vpinsrd $0x2, (%r9), %xmm0, %xmm0
vpinsrd $0x3, (%r9,%rsi), %xmm0, %xmm1
vmovd (%r9,%rsi,2), %xmm0
vpalignr $0x4, %xmm1, %xmm0, %xmm0 # xmm0 = xmm1[4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1,2,3]
leal (,%rsi,4), %edx
leal (,%r10,4), %r8d
leaq 0x3(%rax), %r11
imulq %r10, %r11
addq %rdi, %r11
leaq 0x2(%rax), %r15
imulq %r10, %r15
addq %rdi, %r15
incq %rax
imulq %r10, %rax
addq %rdi, %rax
imulq $0x6, %rsi, %rdi
leaq (%rsi,%rsi,4), %r10
leaq (%rsi,%rsi,2), %rsi
vpbroadcastw 0x1f924(%rip), %xmm3 # 0x2d9ea
vpbroadcastb 0x1f91d(%rip), %xmm5 # 0x2d9ec
vpbroadcastw 0x1f916(%rip), %xmm6 # 0x2d9ee
vpbroadcastw 0x1f911(%rip), %xmm7 # 0x2d9f2
vmovd (%r9,%rsi), %xmm8
vpinsrd $0x1, (%r9,%rdx), %xmm8, %xmm8
vpinsrd $0x2, (%r9,%r10), %xmm8, %xmm8
vpinsrd $0x3, (%r9,%rdi), %xmm8, %xmm8
vpalignr $0x4, %xmm0, %xmm8, %xmm9 # xmm9 = xmm0[4,5,6,7,8,9,10,11,12,13,14,15],xmm8[0,1,2,3]
vpalignr $0x8, %xmm0, %xmm8, %xmm10 # xmm10 = xmm0[8,9,10,11,12,13,14,15],xmm8[0,1,2,3,4,5,6,7]
vpunpcklbw %xmm0, %xmm1, %xmm1 # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3],xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7]
vpalignr $0xc, %xmm0, %xmm8, %xmm11 # xmm11 = xmm0[12,13,14,15],xmm8[0,1,2,3,4,5,6,7,8,9,10,11]
vpunpcklbw %xmm10, %xmm9, %xmm0 # xmm0 = xmm9[0],xmm10[0],xmm9[1],xmm10[1],xmm9[2],xmm10[2],xmm9[3],xmm10[3],xmm9[4],xmm10[4],xmm9[5],xmm10[5],xmm9[6],xmm10[6],xmm9[7],xmm10[7]
vpunpcklbw %xmm8, %xmm11, %xmm12 # xmm12 = xmm11[0],xmm8[0],xmm11[1],xmm8[1],xmm11[2],xmm8[2],xmm11[3],xmm8[3],xmm11[4],xmm8[4],xmm11[5],xmm8[5],xmm11[6],xmm8[6],xmm11[7],xmm8[7]
vpunpckhbw %xmm8, %xmm11, %xmm13 # xmm13 = xmm11[8],xmm8[8],xmm11[9],xmm8[9],xmm11[10],xmm8[10],xmm11[11],xmm8[11],xmm11[12],xmm8[12],xmm11[13],xmm8[13],xmm11[14],xmm8[14],xmm11[15],xmm8[15]
vpmaddubsw %xmm3, %xmm1, %xmm1
vpmaddubsw %xmm5, %xmm0, %xmm14
vpaddw %xmm1, %xmm14, %xmm1
vpmaddubsw %xmm6, %xmm12, %xmm14
vpmaddubsw %xmm3, %xmm0, %xmm0
vpmaddubsw %xmm5, %xmm12, %xmm12
vpaddw %xmm0, %xmm12, %xmm0
vpmaddubsw %xmm6, %xmm13, %xmm12
vpaddw %xmm7, %xmm14, %xmm13
vpaddw %xmm1, %xmm13, %xmm1
vpsraw $0x5, %xmm1, %xmm1
vpaddw %xmm7, %xmm12, %xmm12
vpaddw %xmm0, %xmm12, %xmm0
vpsraw $0x5, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vpblendvb %xmm4, %xmm10, %xmm9, %xmm1
vpblendvb %xmm2, %xmm0, %xmm1, %xmm1
vmovd (%rbx,%r14), %xmm9
vpinsrd $0x1, (%rax,%r14), %xmm9, %xmm9
vpinsrd $0x2, (%r15,%r14), %xmm9, %xmm9
vpinsrd $0x3, (%r11,%r14), %xmm9, %xmm9
vpavgb %xmm0, %xmm1, %xmm0
vpunpcklbw %xmm0, %xmm9, %xmm1 # xmm1 = xmm9[0],xmm0[0],xmm9[1],xmm0[1],xmm9[2],xmm0[2],xmm9[3],xmm0[3],xmm9[4],xmm0[4],xmm9[5],xmm0[5],xmm9[6],xmm0[6],xmm9[7],xmm0[7]
vpmaddubsw %xmm25, %xmm1, %xmm1
vpaddsw %xmm24, %xmm1, %xmm1
vpunpckhbw %xmm0, %xmm9, %xmm0 # xmm0 = xmm9[8],xmm0[8],xmm9[9],xmm0[9],xmm9[10],xmm0[10],xmm9[11],xmm0[11],xmm9[12],xmm0[12],xmm9[13],xmm0[13],xmm9[14],xmm0[14],xmm9[15],xmm0[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm1, %xmm1
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovd %xmm0, (%rbx,%r14)
vpextrd $0x1, %xmm0, (%rax,%r14)
vpextrd $0x2, %xmm0, (%r15,%r14)
vpextrd $0x3, %xmm0, (%r11,%r14)
addq %rdx, %r9
addq %r8, %rbx
addq %r8, %r11
addq %r8, %r15
addq %r8, %rax
vmovdqa %xmm8, %xmm0
vmovdqa %xmm11, %xmm1
addl $-0x4, %ecx
jne 0xe0e1
jmp 0xf6e6
vmovdqu (%rdx,%r11,2), %xmm0
vmovdqu (%rdx,%r11), %xmm1
vmovdqu (%rdx), %xmm9
vmovdqu (%rdx,%rsi), %xmm10
vmovdqu (%rdx,%rsi,2), %xmm11
vmovdqa 0x1f36e(%rip), %xmm5    # 0x2d590
vpshufb %xmm5, %xmm0, %xmm0
vpshufb %xmm5, %xmm1, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0]
vpbroadcastw 0x1f7b1(%rip), %xmm6 # 0x2d9ea
vpmaddubsw %xmm6, %xmm3, %xmm3
vshufps $0x99, %xmm1, %xmm0, %xmm8 # xmm8 = xmm0[1,2],xmm1[1,2]
vpbroadcastb 0x1f7a0(%rip), %xmm7 # 0x2d9ec
vpmaddubsw %xmm7, %xmm8, %xmm8
vpaddw %xmm3, %xmm8, %xmm3
vpunpckhqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[1],xmm1[1]
vpbroadcastw 0x1f78c(%rip), %xmm8 # 0x2d9ee
vpmaddubsw %xmm8, %xmm0, %xmm0
vpaddw %xmm0, %xmm3, %xmm3
vpshufb %xmm5, %xmm9, %xmm0
vpshufb %xmm5, %xmm10, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm9 # xmm9 = xmm0[0],xmm1[0]
vpmaddubsw %xmm6, %xmm9, %xmm9
vshufps $0x99, %xmm1, %xmm0, %xmm10 # xmm10 = xmm0[1,2],xmm1[1,2]
vpmaddubsw %xmm7, %xmm10, %xmm10
vpaddw %xmm9, %xmm10, %xmm9
vpunpckhqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[1],xmm1[1]
vpmaddubsw %xmm8, %xmm0, %xmm0
vpaddw %xmm0, %xmm9, %xmm12
vpshufb %xmm5, %xmm11, %xmm0
vpunpcklqdq %xmm0, %xmm1, %xmm9 # xmm9 = xmm1[0],xmm0[0]
vpmaddubsw %xmm6, %xmm9, %xmm9
vshufps $0x99, %xmm0, %xmm1, %xmm10 # xmm10 = xmm1[1,2],xmm0[1,2]
vpmaddubsw %xmm7, %xmm10, %xmm10
vpaddw %xmm9, %xmm10, %xmm9
vpunpckhqdq %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[1],xmm0[1]
vpmaddubsw %xmm8, %xmm0, %xmm0
vpaddw %xmm0, %xmm9, %xmm11
leal (,%rsi,4), %edx
leal (,%r10,4), %r11d
imulq $0x6, %rsi, %rbx
leaq (%rsi,%rsi,4), %r15
leaq (%rsi,%rsi,2), %rsi
addq %r14, %rdi
leaq 0x3(%rax), %r14
imulq %r10, %r14
leaq 0x2(%rax), %r12
imulq %r10, %r12
incq %rax
imulq %r10, %rax
vpbroadcastw 0x1f6ee(%rip), %xmm9 # 0x2d9f0
vpbroadcastw 0x1f6e7(%rip), %xmm10 # 0x2d9f2
vmovdqu -0x2(%r9,%rsi), %xmm0
vmovdqu -0x2(%r9,%rdx), %xmm1
vmovdqu -0x2(%r9,%r15), %xmm13
vmovdqu -0x2(%r9,%rbx), %xmm14
vpshufb %xmm5, %xmm0, %xmm0
vpshufb %xmm5, %xmm1, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm15 # xmm15 = xmm0[0],xmm1[0]
vpmaddubsw %xmm6, %xmm15, %xmm15
vshufps $0x99, %xmm1, %xmm0, %xmm16 # xmm16 = xmm0[1,2],xmm1[1,2]
vpmaddubsw %xmm7, %xmm16, %xmm16
vpaddw %xmm15, %xmm16, %xmm15
vpunpckhqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[1],xmm1[1]
vpmaddubsw %xmm8, %xmm0, %xmm0
vpaddw %xmm0, %xmm15, %xmm1
vpshufb %xmm5, %xmm13, %xmm0
vpshufb %xmm5, %xmm14, %xmm13
vpunpcklqdq %xmm13, %xmm0, %xmm14 # xmm14 = xmm0[0],xmm13[0]
vpmaddubsw %xmm6, %xmm14, %xmm14
vshufps $0x99, %xmm13, %xmm0, %xmm15 # xmm15 = xmm0[1,2],xmm13[1,2]
vpmaddubsw %xmm7, %xmm15, %xmm15
vpaddw %xmm14, %xmm15, %xmm14
vpunpckhqdq %xmm13, %xmm0, %xmm0 # xmm0 = xmm0[1],xmm13[1]
vpmaddubsw %xmm8, %xmm0, %xmm0
vpaddw %xmm0, %xmm14, %xmm0
vpalignr $0x8, %xmm3, %xmm12, %xmm13 # xmm13 = xmm3[8,9,10,11,12,13,14,15],xmm12[0,1,2,3,4,5,6,7]
vpaddw %xmm3, %xmm1, %xmm14
vpalignr $0x8, %xmm11, %xmm1, %xmm3 # xmm3 = xmm11[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vpaddw %xmm11, %xmm12, %xmm15
vpaddw %xmm12, %xmm0, %xmm16
vpblendvb %xmm4, %xmm11, %xmm12, %xmm12
valignq $0x1, %xmm1, %xmm0, %xmm17 # xmm17 = xmm1[1],xmm0[0]
vpaddw %xmm3, %xmm13, %xmm13
vpsubw %xmm13, %xmm14, %xmm14
vpsraw $0x2, %xmm14, %xmm14
vpsubw %xmm13, %xmm15, %xmm13
vpaddw %xmm14, %xmm13, %xmm13
vpsraw $0x2, %xmm13, %xmm13
vpaddw %xmm17, %xmm11, %xmm11
vpaddw %xmm3, %xmm1, %xmm14
vpsubw %xmm11, %xmm16, %xmm16
vpsraw $0x2, %xmm16, %xmm16
vpsubw %xmm11, %xmm14, %xmm11
vpaddw %xmm16, %xmm11, %xmm11
vpsraw $0x2, %xmm11, %xmm11
vpaddw %xmm9, %xmm15, %xmm15
vpaddw %xmm13, %xmm15, %xmm13
vpsraw $0x6, %xmm13, %xmm13
vpaddw %xmm9, %xmm14, %xmm14
vpaddw %xmm11, %xmm14, %xmm11
vpsraw $0x6, %xmm11, %xmm11
vpackuswb %xmm11, %xmm13, %xmm11
vpaddw %xmm10, %xmm12, %xmm12
vpsraw $0x5, %xmm12, %xmm12
vpblendvb %xmm4, %xmm1, %xmm3, %xmm1
vpaddw %xmm1, %xmm10, %xmm1
vpsraw $0x5, %xmm1, %xmm1
vpackuswb %xmm1, %xmm12, %xmm1
vmovd (%rdi,%r8), %xmm12
vpinsrd $0x1, (%rdi,%rax), %xmm12, %xmm12
vpinsrd $0x2, (%rdi,%r12), %xmm12, %xmm12
vpinsrd $0x3, (%rdi,%r14), %xmm12, %xmm12
vpblendvb %xmm2, %xmm11, %xmm1, %xmm1
vpavgb %xmm1, %xmm11, %xmm1
vpunpcklbw %xmm1, %xmm12, %xmm11 # xmm11 = xmm12[0],xmm1[0],xmm12[1],xmm1[1],xmm12[2],xmm1[2],xmm12[3],xmm1[3],xmm12[4],xmm1[4],xmm12[5],xmm1[5],xmm12[6],xmm1[6],xmm12[7],xmm1[7]
vpmaddubsw %xmm25, %xmm11, %xmm11
vpaddsw %xmm24, %xmm11, %xmm11
vpunpckhbw %xmm1, %xmm12, %xmm1 # xmm1 = xmm12[8],xmm1[8],xmm12[9],xmm1[9],xmm12[10],xmm1[10],xmm12[11],xmm1[11],xmm12[12],xmm1[12],xmm12[13],xmm1[13],xmm12[14],xmm1[14],xmm12[15],xmm1[15]
vpmaddubsw %xmm25, %xmm1, %xmm1
vpsraw %xmm29, %xmm11, %xmm11
vpaddsw %xmm24, %xmm1, %xmm1
vpsraw %xmm29, %xmm1, %xmm1
vpackuswb %xmm1, %xmm11, %xmm1
vmovd %xmm1, (%rdi,%r8)
vpextrd $0x1, %xmm1, (%rdi,%rax)
vpextrd $0x2, %xmm1, (%rdi,%r12)
addq %rdx, %r9
vpextrd $0x3, %xmm1, (%rdi,%r14)
addq %r11, %rdi
vmovdqa %xmm0, %xmm11
vmovdqa64 %xmm17, %xmm12
addl $-0x4, %ecx
jne 0xe30b
jmp 0xf6e6
leal (%rsi,%rsi), %r9d
leal (%r10,%r10), %r11d
addq %r14, %rdi
incq %rax
imulq %r10, %rax
vpbroadcastw 0x1f503(%rip), %xmm0 # 0x2d9ea
vpbroadcastb 0x1f4fc(%rip), %xmm1 # 0x2d9ec
vpbroadcastw 0x1f4f5(%rip), %xmm3 # 0x2d9ee
vpbroadcastw 0x1f4f0(%rip), %xmm4 # 0x2d9f2
vmovupd (%rdx), %xmm6
vmovupd (%rdx,%rsi), %xmm7
vpsrldq $0x1, %xmm6, %xmm8      # xmm8 = xmm6[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm8, %xmm6, %xmm9 # xmm9 = xmm6[0],xmm8[0],xmm6[1],xmm8[1],xmm6[2],xmm8[2],xmm6[3],xmm8[3],xmm6[4],xmm8[4],xmm6[5],xmm8[5],xmm6[6],xmm8[6],xmm6[7],xmm8[7]
vpunpckhbw %xmm8, %xmm6, %xmm8 # xmm8 = xmm6[8],xmm8[8],xmm6[9],xmm8[9],xmm6[10],xmm8[10],xmm6[11],xmm8[11],xmm6[12],xmm8[12],xmm6[13],xmm8[13],xmm6[14],xmm8[14],xmm6[15],xmm8[15]
vpalignr $0x4, %xmm9, %xmm8, %xmm10 # xmm10 = xmm9[4,5,6,7,8,9,10,11,12,13,14,15],xmm8[0,1,2,3]
vpalignr $0x8, %xmm9, %xmm8, %xmm8 # xmm8 = xmm9[8,9,10,11,12,13,14,15],xmm8[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm0, %xmm9, %xmm9
vpmaddubsw %xmm1, %xmm10, %xmm10
vpaddw %xmm10, %xmm9, %xmm9
vpmaddubsw %xmm3, %xmm8, %xmm8
vpaddw %xmm4, %xmm8, %xmm8
vpaddw %xmm8, %xmm9, %xmm8
vpsraw $0x5, %xmm8, %xmm8
vpsrldq $0x1, %xmm7, %xmm9      # xmm9 = xmm7[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm9, %xmm7, %xmm10 # xmm10 = xmm7[0],xmm9[0],xmm7[1],xmm9[1],xmm7[2],xmm9[2],xmm7[3],xmm9[3],xmm7[4],xmm9[4],xmm7[5],xmm9[5],xmm7[6],xmm9[6],xmm7[7],xmm9[7]
vpunpckhbw %xmm9, %xmm7, %xmm9 # xmm9 = xmm7[8],xmm9[8],xmm7[9],xmm9[9],xmm7[10],xmm9[10],xmm7[11],xmm9[11],xmm7[12],xmm9[12],xmm7[13],xmm9[13],xmm7[14],xmm9[14],xmm7[15],xmm9[15]
vpalignr $0x4, %xmm10, %xmm9, %xmm11 # xmm11 = xmm10[4,5,6,7,8,9,10,11,12,13,14,15],xmm9[0,1,2,3]
vpalignr $0x8, %xmm10, %xmm9, %xmm9 # xmm9 = xmm10[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm0, %xmm10, %xmm10
vpmaddubsw %xmm1, %xmm11, %xmm11
vpaddw %xmm11, %xmm10, %xmm10
vpmaddubsw %xmm3, %xmm9, %xmm9
vpaddw %xmm4, %xmm9, %xmm9
vpaddw %xmm9, %xmm10, %xmm9
vpsraw $0x5, %xmm9, %xmm9
vpackuswb %xmm9, %xmm8, %xmm8
vpshufb %xmm5, %xmm6, %xmm6
vpbroadcastq (%rdi,%rax), %xmm9
vmovq (%rdi,%r8), %xmm10
vpshufb %xmm5, %xmm7, %xmm7
vpunpcklqdq %xmm7, %xmm6, %xmm6 # xmm6 = xmm6[0],xmm7[0]
vpblendvb %xmm2, %xmm8, %xmm6, %xmm6
vpavgb %xmm6, %xmm8, %xmm6
vpunpcklbw %xmm6, %xmm10, %xmm7 # xmm7 = xmm10[0],xmm6[0],xmm10[1],xmm6[1],xmm10[2],xmm6[2],xmm10[3],xmm6[3],xmm10[4],xmm6[4],xmm10[5],xmm6[5],xmm10[6],xmm6[6],xmm10[7],xmm6[7]
vpmaddubsw %xmm25, %xmm7, %xmm7
vpaddsw %xmm24, %xmm7, %xmm7
vpunpckhbw %xmm6, %xmm9, %xmm6 # xmm6 = xmm9[8],xmm6[8],xmm9[9],xmm6[9],xmm9[10],xmm6[10],xmm9[11],xmm6[11],xmm9[12],xmm6[12],xmm9[13],xmm6[13],xmm9[14],xmm6[14],xmm9[15],xmm6[15]
vpmaddubsw %xmm25, %xmm6, %xmm6
vpsraw %xmm29, %xmm7, %xmm7
vpaddsw %xmm24, %xmm6, %xmm6
vpsraw %xmm29, %xmm6, %xmm6
vpackuswb %xmm6, %xmm7, %xmm6
vmovq %xmm6, (%rdi,%r8)
vpextrq $0x1, %xmm6, (%rdi,%rax)
addq %r9, %rdx
addq %r11, %rdi
addl $-0x2, %ecx
jne 0xe502
jmp 0xf6e6
leal (,%r10,4), %r9d
addq %r14, %rdi
leaq 0x3(%rax), %r11
imulq %r10, %r11
leaq 0x2(%rax), %rbx
imulq %r10, %rbx
incq %rax
imulq %r10, %rax
vmovdqa 0x1ef65(%rip), %xmm0    # 0x2d590
vpbroadcastw 0x1f3b6(%rip), %xmm3 # 0x2d9ea
vpbroadcastb 0x1f3af(%rip), %xmm1 # 0x2d9ec
vpbroadcastw 0x1f3a8(%rip), %xmm4 # 0x2d9ee
vpbroadcastw 0x1f3a3(%rip), %xmm6 # 0x2d9f2
vinserti128 $0x1, %xmm5, %ymm5, %ymm5
leaq (%rsi,%rsi), %r10
vmovdqu (%rdx), %xmm7
vmovdqu (%rdx,%rsi), %xmm8
addq %rsi, %rdx
vmovdqu (%rsi,%rdx), %xmm9
addq %rsi, %rdx
vmovdqu (%rsi,%rdx), %xmm10
vpshufb %xmm0, %xmm7, %xmm11
vpshufb %xmm0, %xmm8, %xmm12
vpunpcklqdq %xmm12, %xmm11, %xmm13 # xmm13 = xmm11[0],xmm12[0]
vpmaddubsw %xmm3, %xmm13, %xmm13
vshufps $0x99, %xmm12, %xmm11, %xmm14 # xmm14 = xmm11[1,2],xmm12[1,2]
vpmaddubsw %xmm1, %xmm14, %xmm14
vpaddw %xmm14, %xmm13, %xmm13
vpunpckhqdq %xmm12, %xmm11, %xmm11 # xmm11 = xmm11[1],xmm12[1]
vpmaddubsw %xmm4, %xmm11, %xmm11
vpaddw %xmm6, %xmm11, %xmm11
vpaddw %xmm11, %xmm13, %xmm11
vpsraw $0x5, %xmm11, %xmm11
vpshufb %xmm0, %xmm9, %xmm12
vpshufb %xmm0, %xmm10, %xmm13
vpunpcklqdq %xmm13, %xmm12, %xmm14 # xmm14 = xmm12[0],xmm13[0]
vpmaddubsw %xmm3, %xmm14, %xmm14
vshufps $0x99, %xmm13, %xmm12, %xmm15 # xmm15 = xmm12[1,2],xmm13[1,2]
vpmaddubsw %xmm1, %xmm15, %xmm15
vpaddw %xmm15, %xmm14, %xmm14
vpunpckhqdq %xmm13, %xmm12, %xmm12 # xmm12 = xmm12[1],xmm13[1]
vpmaddubsw %xmm4, %xmm12, %xmm12
vpaddw %xmm6, %xmm12, %xmm12
vpaddw %xmm12, %xmm14, %xmm12
vpsraw $0x5, %xmm12, %xmm12
vmovd (%rdi,%r8), %xmm13
vpinsrd $0x1, (%rdi,%rax), %xmm13, %xmm13
vpinsrd $0x2, (%rdi,%rbx), %xmm13, %xmm13
vpackuswb %xmm12, %xmm11, %xmm11
vpinsrd $0x3, (%rdi,%r11), %xmm13, %xmm12
vinserti128 $0x1, %xmm9, %ymm7, %ymm7
vinserti128 $0x1, %xmm10, %ymm8, %ymm8
vpunpcklqdq %ymm8, %ymm7, %ymm7 # ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]
vpshufb %ymm5, %ymm7, %ymm7
vpmovqd %ymm7, %xmm7
vpblendvb %xmm2, %xmm11, %xmm7, %xmm7
vpavgb %xmm7, %xmm11, %xmm7
vpunpcklbw %xmm7, %xmm12, %xmm8 # xmm8 = xmm12[0],xmm7[0],xmm12[1],xmm7[1],xmm12[2],xmm7[2],xmm12[3],xmm7[3],xmm12[4],xmm7[4],xmm12[5],xmm7[5],xmm12[6],xmm7[6],xmm12[7],xmm7[7]
vpmaddubsw %xmm25, %xmm8, %xmm8
vpaddsw %xmm24, %xmm8, %xmm8
vpunpckhbw %xmm7, %xmm12, %xmm7 # xmm7 = xmm12[8],xmm7[8],xmm12[9],xmm7[9],xmm12[10],xmm7[10],xmm12[11],xmm7[11],xmm12[12],xmm7[12],xmm12[13],xmm7[13],xmm12[14],xmm7[14],xmm12[15],xmm7[15]
vpmaddubsw %xmm25, %xmm7, %xmm7
vpsraw %xmm29, %xmm8, %xmm8
vpaddsw %xmm24, %xmm7, %xmm7
vpsraw %xmm29, %xmm7, %xmm7
vpackuswb %xmm7, %xmm8, %xmm7
vmovd %xmm7, (%rdi,%r8)
vpextrd $0x1, %xmm7, (%rdi,%rax)
vpextrd $0x2, %xmm7, (%rdi,%rbx)
vpextrd $0x3, %xmm7, (%rdi,%r11)
addq %r9, %rdi
addq %r10, %rdx
addl $-0x4, %ecx
jne 0xe659
jmp 0xf6e6
vmovdqu -0x2(%r9,%r11,2), %xmm0
vmovupd 0x6(%r9,%r11,2), %xmm1
vpsrldq $0x1, %xmm1, %xmm5      # xmm5 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vmovdqa 0x1ede4(%rip), %xmm3    # 0x2d590
vpshufb %xmm3, %xmm0, %xmm0
vpunpcklbw %xmm5, %xmm1, %xmm8 # xmm8 = xmm1[0],xmm5[0],xmm1[1],xmm5[1],xmm1[2],xmm5[2],xmm1[3],xmm5[3],xmm1[4],xmm5[4],xmm1[5],xmm5[5],xmm1[6],xmm5[6],xmm1[7],xmm5[7]
vpunpckhbw %xmm5, %xmm1, %xmm1 # xmm1 = xmm1[8],xmm5[8],xmm1[9],xmm5[9],xmm1[10],xmm5[10],xmm1[11],xmm5[11],xmm1[12],xmm5[12],xmm1[13],xmm5[13],xmm1[14],xmm5[14],xmm1[15],xmm5[15]
vpbroadcastw 0x1f227(%rip), %xmm26 # 0x2d9ea
vpmaddubsw %xmm26, %xmm0, %xmm7
vpalignr $0x4, %xmm0, %xmm8, %xmm9 # xmm9 = xmm0[4,5,6,7,8,9,10,11,12,13,14,15],xmm8[0,1,2,3]
vpbroadcastb 0x1f214(%rip), %xmm6 # 0x2d9ec
vpmaddubsw %xmm6, %xmm9, %xmm9
vpaddw %xmm7, %xmm9, %xmm9
vpalignr $0x8, %xmm0, %xmm8, %xmm0 # xmm0 = xmm0[8,9,10,11,12,13,14,15],xmm8[0,1,2,3,4,5,6,7]
vpbroadcastw 0x1f1fe(%rip), %xmm7 # 0x2d9ee
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm9, %xmm11
vpmaddubsw %xmm26, %xmm8, %xmm0
vpalignr $0x4, %xmm8, %xmm1, %xmm9 # xmm9 = xmm8[4,5,6,7,8,9,10,11,12,13,14,15],xmm1[0,1,2,3]
vpmaddubsw %xmm6, %xmm9, %xmm9
vpaddw %xmm0, %xmm9, %xmm0
vpalignr $0x8, %xmm8, %xmm1, %xmm1 # xmm1 = xmm8[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm1, %xmm1
vmovdqu -0x2(%r9,%r11), %xmm8
vpaddw %xmm1, %xmm0, %xmm13
vmovupd 0x6(%r9,%r11), %xmm0
vpsrldq $0x1, %xmm0, %xmm1      # xmm1 = xmm0[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpshufb %xmm3, %xmm8, %xmm8
vpunpcklbw %xmm1, %xmm0, %xmm9 # xmm9 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpmaddubsw %xmm26, %xmm8, %xmm1
vpalignr $0x4, %xmm8, %xmm9, %xmm10 # xmm10 = xmm8[4,5,6,7,8,9,10,11,12,13,14,15],xmm9[0,1,2,3]
vpmaddubsw %xmm6, %xmm10, %xmm10
vpaddw %xmm1, %xmm10, %xmm1
vpalignr $0x8, %xmm8, %xmm9, %xmm8 # xmm8 = xmm8[8,9,10,11,12,13,14,15],xmm9[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm8, %xmm8
vpaddw %xmm1, %xmm8, %xmm8
vpmaddubsw %xmm26, %xmm9, %xmm1
vpalignr $0x4, %xmm9, %xmm0, %xmm10 # xmm10 = xmm9[4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1,2,3]
vpmaddubsw %xmm6, %xmm10, %xmm10
vpaddw %xmm1, %xmm10, %xmm1
vpalignr $0x8, %xmm9, %xmm0, %xmm0 # xmm0 = xmm9[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm0, %xmm0
vmovdqu -0x2(%r9), %xmm10
vmovupd 0x6(%r9), %xmm12
vpaddw %xmm0, %xmm1, %xmm9
vpsrldq $0x1, %xmm12, %xmm0     # xmm0 = xmm12[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpshufb %xmm3, %xmm10, %xmm1
vpunpcklbw %xmm0, %xmm12, %xmm14 # xmm14 = xmm12[0],xmm0[0],xmm12[1],xmm0[1],xmm12[2],xmm0[2],xmm12[3],xmm0[3],xmm12[4],xmm0[4],xmm12[5],xmm0[5],xmm12[6],xmm0[6],xmm12[7],xmm0[7]
vpunpckhbw %xmm0, %xmm12, %xmm0 # xmm0 = xmm12[8],xmm0[8],xmm12[9],xmm0[9],xmm12[10],xmm0[10],xmm12[11],xmm0[11],xmm12[12],xmm0[12],xmm12[13],xmm0[13],xmm12[14],xmm0[14],xmm12[15],xmm0[15]
vpmaddubsw %xmm26, %xmm1, %xmm10
vpalignr $0x4, %xmm1, %xmm14, %xmm12 # xmm12 = xmm1[4,5,6,7,8,9,10,11,12,13,14,15],xmm14[0,1,2,3]
vpmaddubsw %xmm6, %xmm12, %xmm12
vpaddw %xmm10, %xmm12, %xmm10
vpalignr $0x8, %xmm1, %xmm14, %xmm1 # xmm1 = xmm1[8,9,10,11,12,13,14,15],xmm14[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm1, %xmm1
vpaddw %xmm1, %xmm10, %xmm10
vpmaddubsw %xmm26, %xmm14, %xmm1
vpalignr $0x4, %xmm14, %xmm0, %xmm12 # xmm12 = xmm14[4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1,2,3]
vpmaddubsw %xmm6, %xmm12, %xmm12
vpaddw %xmm1, %xmm12, %xmm1
vpalignr $0x8, %xmm14, %xmm0, %xmm0 # xmm0 = xmm14[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm1, %xmm12
vmovdqu -0x2(%r9,%rsi), %xmm0
vmovupd 0x6(%r9,%rsi), %xmm1
vpsrldq $0x1, %xmm1, %xmm14     # xmm14 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpshufb %xmm3, %xmm0, %xmm0
vpunpcklbw %xmm14, %xmm1, %xmm15 # xmm15 = xmm1[0],xmm14[0],xmm1[1],xmm14[1],xmm1[2],xmm14[2],xmm1[3],xmm14[3],xmm1[4],xmm14[4],xmm1[5],xmm14[5],xmm1[6],xmm14[6],xmm1[7],xmm14[7]
vpunpckhbw %xmm14, %xmm1, %xmm1 # xmm1 = xmm1[8],xmm14[8],xmm1[9],xmm14[9],xmm1[10],xmm14[10],xmm1[11],xmm14[11],xmm1[12],xmm14[12],xmm1[13],xmm14[13],xmm1[14],xmm14[14],xmm1[15],xmm14[15]
vpmaddubsw %xmm26, %xmm0, %xmm14
valignd $0x1, %xmm0, %xmm15, %xmm16 # xmm16 = xmm0[1,2,3],xmm15[0]
vpmaddubsw %xmm6, %xmm16, %xmm16
vpaddw %xmm14, %xmm16, %xmm14
vpalignr $0x8, %xmm0, %xmm15, %xmm0 # xmm0 = xmm0[8,9,10,11,12,13,14,15],xmm15[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm14, %xmm14
vpmaddubsw %xmm26, %xmm15, %xmm0
valignd $0x1, %xmm15, %xmm1, %xmm16 # xmm16 = xmm15[1,2,3],xmm1[0]
vpmaddubsw %xmm6, %xmm16, %xmm16
vpaddw %xmm0, %xmm16, %xmm0
vpalignr $0x8, %xmm15, %xmm1, %xmm1 # xmm1 = xmm15[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm1, %xmm1
vpaddw %xmm1, %xmm0, %xmm15
leal (%rsi,%rsi), %eax
vmovdqu -0x2(%r9,%rax), %xmm0
vmovupd 0x6(%r9,%rax), %xmm1
vpsrldq $0x1, %xmm1, %xmm16     # xmm16 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpshufb %xmm3, %xmm0, %xmm0
vpunpcklbw %xmm16, %xmm1, %xmm3 # xmm3 = xmm1[0],xmm16[0],xmm1[1],xmm16[1],xmm1[2],xmm16[2],xmm1[3],xmm16[3],xmm1[4],xmm16[4],xmm1[5],xmm16[5],xmm1[6],xmm16[6],xmm1[7],xmm16[7]
vpunpckhbw %xmm16, %xmm1, %xmm1 # xmm1 = xmm1[8],xmm16[8],xmm1[9],xmm16[9],xmm1[10],xmm16[10],xmm1[11],xmm16[11],xmm1[12],xmm16[12],xmm1[13],xmm16[13],xmm1[14],xmm16[14],xmm1[15],xmm16[15]
vpmaddubsw %xmm26, %xmm0, %xmm16
valignd $0x1, %xmm0, %xmm3, %xmm17 # xmm17 = xmm0[1,2,3],xmm3[0]
vpmaddubsw %xmm6, %xmm17, %xmm17
vpaddw %xmm16, %xmm17, %xmm16
vpalignr $0x8, %xmm0, %xmm3, %xmm0 # xmm0 = xmm0[8,9,10,11,12,13,14,15],xmm3[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm16, %xmm19
vpmaddubsw %xmm26, %xmm3, %xmm0
valignd $0x1, %xmm3, %xmm1, %xmm16 # xmm16 = xmm3[1,2,3],xmm1[0]
vpmaddubsw %xmm6, %xmm16, %xmm16
vpaddw %xmm0, %xmm16, %xmm0
vpalignr $0x8, %xmm3, %xmm1, %xmm1 # xmm1 = xmm3[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
vpmaddubsw %xmm7, %xmm1, %xmm1
vpaddw %xmm1, %xmm0, %xmm20
leaq (%rsi,%rsi,2), %rax
addq %r9, %rax
addq $0x6, %rax
vmovdqa64 0x1eb9f(%rip), %xmm16 # 0x2d590
vpbroadcastw 0x1eff5(%rip), %xmm17 # 0x2d9f0
vpbroadcastw 0x1efed(%rip), %xmm18 # 0x2d9f2
vmovdqu -0x8(%rax), %xmm0
vmovupd (%rax), %xmm1
vpshufb %xmm16, %xmm0, %xmm0
vpsrldq $0x1, %xmm1, %xmm3      # xmm3 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpunpcklbw %xmm3, %xmm1, %xmm21 # xmm21 = xmm1[0],xmm3[0],xmm1[1],xmm3[1],xmm1[2],xmm3[2],xmm1[3],xmm3[3],xmm1[4],xmm3[4],xmm1[5],xmm3[5],xmm1[6],xmm3[6],xmm1[7],xmm3[7]
vpunpckhbw %xmm3, %xmm1, %xmm1 # xmm1 = xmm1[8],xmm3[8],xmm1[9],xmm3[9],xmm1[10],xmm3[10],xmm1[11],xmm3[11],xmm1[12],xmm3[12],xmm1[13],xmm3[13],xmm1[14],xmm3[14],xmm1[15],xmm3[15]
vpmaddubsw %xmm26, %xmm0, %xmm3
valignd $0x1, %xmm0, %xmm21, %xmm22 # xmm22 = xmm0[1,2,3],xmm21[0]
vpmaddubsw %xmm6, %xmm22, %xmm22
vpaddw %xmm3, %xmm22, %xmm3
valignq $0x1, %xmm0, %xmm21, %xmm0 # xmm0 = xmm0[1],xmm21[0]
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm8, %xmm19, %xmm22
vpaddw %xmm0, %xmm3, %xmm3
vpmaddubsw %xmm26, %xmm21, %xmm0
valignd $0x1, %xmm21, %xmm1, %xmm23 # xmm23 = xmm21[1,2,3],xmm1[0]
vpmaddubsw %xmm6, %xmm23, %xmm23
vpaddw %xmm0, %xmm23, %xmm0
valignq $0x1, %xmm21, %xmm1, %xmm1 # xmm1 = xmm21[1],xmm1[0]
vpmaddubsw %xmm7, %xmm1, %xmm1
vpaddw %xmm9, %xmm20, %xmm21
vpaddw %xmm1, %xmm0, %xmm0
vpaddw %xmm10, %xmm14, %xmm1
vpsubw %xmm22, %xmm11, %xmm11
vpaddw %xmm3, %xmm11, %xmm11
vpsraw $0x2, %xmm11, %xmm11
vpsubw %xmm22, %xmm1, %xmm22
vpaddw %xmm11, %xmm22, %xmm11
vpsraw $0x2, %xmm11, %xmm11
vpaddw %xmm12, %xmm15, %xmm22
vpsubw %xmm21, %xmm13, %xmm13
vpaddw %xmm0, %xmm13, %xmm13
vpsraw $0x2, %xmm13, %xmm13
vpsubw %xmm21, %xmm22, %xmm21
vpaddw %xmm13, %xmm21, %xmm13
vpsraw $0x2, %xmm13, %xmm13
vpaddw %xmm17, %xmm1, %xmm1
vpaddw %xmm1, %xmm11, %xmm1
vpsraw $0x6, %xmm1, %xmm1
vpaddw %xmm17, %xmm22, %xmm11
vpaddw %xmm13, %xmm11, %xmm11
vpsraw $0x6, %xmm11, %xmm11
vpblendvb %xmm4, %xmm14, %xmm10, %xmm13
vpackuswb %xmm11, %xmm1, %xmm1
vpaddw %xmm18, %xmm13, %xmm11
vpsraw $0x5, %xmm11, %xmm11
vpblendvb %xmm4, %xmm15, %xmm12, %xmm13
vpaddw %xmm18, %xmm13, %xmm13
vpsraw $0x5, %xmm13, %xmm13
vpackuswb %xmm13, %xmm11, %xmm11
vmovdqa64 (%r15), %xmm21
vpblendvb %xmm2, %xmm1, %xmm11, %xmm5
vmovdqa %xmm8, %xmm11
vmovdqa %xmm10, %xmm8
vmovdqa %xmm14, %xmm10
vmovdqa64 %xmm19, %xmm14
vmovdqa %xmm9, %xmm13
vmovdqa %xmm12, %xmm9
vmovdqa %xmm15, %xmm12
vmovdqa64 %xmm20, %xmm15
vpavgb %xmm1, %xmm5, %xmm1
vpunpcklbw %xmm1, %xmm21, %xmm5 # xmm5 = xmm21[0],xmm1[0],xmm21[1],xmm1[1],xmm21[2],xmm1[2],xmm21[3],xmm1[3],xmm21[4],xmm1[4],xmm21[5],xmm1[5],xmm21[6],xmm1[6],xmm21[7],xmm1[7]
vpmaddubsw %xmm25, %xmm5, %xmm5
vpaddsw %xmm24, %xmm5, %xmm5
vpunpckhbw %xmm1, %xmm21, %xmm1 # xmm1 = xmm21[8],xmm1[8],xmm21[9],xmm1[9],xmm21[10],xmm1[10],xmm21[11],xmm1[11],xmm21[12],xmm1[12],xmm21[13],xmm1[13],xmm21[14],xmm1[14],xmm21[15],xmm1[15]
vpmaddubsw %xmm25, %xmm1, %xmm1
vpaddsw %xmm24, %xmm1, %xmm1
vpsraw %xmm29, %xmm5, %xmm5
vpsraw %xmm29, %xmm1, %xmm1
vpackuswb %xmm1, %xmm5, %xmm1
vmovdqa %xmm1, (%r15)
addq %r10, %r15
addq %rsi, %rax
vmovdqa64 %xmm3, %xmm19
vmovdqa64 %xmm0, %xmm20
decl %ecx
jne 0xea05
jmp 0xf6e6
vmovdqu -0x2(%r9,%r11,2), %xmm3
vmovq 0xe(%r9,%r11,2), %xmm14
vmovdqu64 -0x2(%r9,%r11), %xmm18
vmovq 0xe(%r9,%r11), %xmm17
vmovdqu -0x2(%r9), %xmm15
vmovq 0xe(%r9), %xmm16
vmovdqu -0x2(%r9,%rsi), %xmm5
vmovq 0xe(%r9,%rsi), %xmm6
leal (%rsi,%rsi), %eax
vmovdqu -0x2(%r9,%rax), %xmm7
vmovq 0xe(%r9,%rax), %xmm8
leaq (%rsi,%rsi,2), %rax
leaq 0xe(%r9,%rax), %rax
vpbroadcastw 0x1edd4(%rip), %xmm26 # 0x2d9ea
vpbroadcastb 0x1edcc(%rip), %xmm27 # 0x2d9ec
vpbroadcastw 0x1edc5(%rip), %xmm11 # 0x2d9ee
vpbroadcastw 0x1edbd(%rip), %xmm22 # 0x2d9f0
vpbroadcastw 0x1edb5(%rip), %xmm23 # 0x2d9f2
vpunpcklbw %xmm17, %xmm14, %xmm19 # xmm19 = xmm14[0],xmm17[0],xmm14[1],xmm17[1],xmm14[2],xmm17[2],xmm14[3],xmm17[3],xmm14[4],xmm17[4],xmm14[5],xmm17[5],xmm14[6],xmm17[6],xmm14[7],xmm17[7]
vmovdqa64 %xmm17, %xmm14
vmovdqa64 %xmm16, %xmm17
vpunpcklbw %xmm18, %xmm3, %xmm16 # xmm16 = xmm3[0],xmm18[0],xmm3[1],xmm18[1],xmm3[2],xmm18[2],xmm3[3],xmm18[3],xmm3[4],xmm18[4],xmm3[5],xmm18[5],xmm3[6],xmm18[6],xmm3[7],xmm18[7]
vpunpckhbw %xmm18, %xmm3, %xmm20 # xmm20 = xmm3[8],xmm18[8],xmm3[9],xmm18[9],xmm3[10],xmm18[10],xmm3[11],xmm18[11],xmm3[12],xmm18[12],xmm3[13],xmm18[13],xmm3[14],xmm18[14],xmm3[15],xmm18[15]
vmovdqa64 %xmm18, %xmm3
vmovdqa64 %xmm15, %xmm18
vmovdqu -0x10(%rax), %xmm0
vmovq (%rax), %xmm1
vpunpcklbw %xmm5, %xmm15, %xmm15 # xmm15 = xmm15[0],xmm5[0],xmm15[1],xmm5[1],xmm15[2],xmm5[2],xmm15[3],xmm5[3],xmm15[4],xmm5[4],xmm15[5],xmm5[5],xmm15[6],xmm5[6],xmm15[7],xmm5[7]
vpunpcklbw %xmm0, %xmm7, %xmm21 # xmm21 = xmm7[0],xmm0[0],xmm7[1],xmm0[1],xmm7[2],xmm0[2],xmm7[3],xmm0[3],xmm7[4],xmm0[4],xmm7[5],xmm0[5],xmm7[6],xmm0[6],xmm7[7],xmm0[7]
vpmaddubsw %xmm26, %xmm16, %xmm16
vpmaddubsw %xmm27, %xmm15, %xmm15
vpaddw %xmm16, %xmm15, %xmm15
vpmaddubsw %xmm11, %xmm21, %xmm16
vpaddw %xmm16, %xmm15, %xmm15
vpunpckhbw %xmm5, %xmm18, %xmm16 # xmm16 = xmm18[8],xmm5[8],xmm18[9],xmm5[9],xmm18[10],xmm5[10],xmm18[11],xmm5[11],xmm18[12],xmm5[12],xmm18[13],xmm5[13],xmm18[14],xmm5[14],xmm18[15],xmm5[15]
vpunpckhbw %xmm0, %xmm7, %xmm21 # xmm21 = xmm7[8],xmm0[8],xmm7[9],xmm0[9],xmm7[10],xmm0[10],xmm7[11],xmm0[11],xmm7[12],xmm0[12],xmm7[13],xmm0[13],xmm7[14],xmm0[14],xmm7[15],xmm0[15]
vpmaddubsw %xmm26, %xmm20, %xmm20
vpmaddubsw %xmm27, %xmm16, %xmm16
vpaddw %xmm20, %xmm16, %xmm16
vpmaddubsw %xmm11, %xmm21, %xmm20
vpaddw %xmm20, %xmm16, %xmm16
vpunpcklbw %xmm6, %xmm17, %xmm20 # xmm20 = xmm17[0],xmm6[0],xmm17[1],xmm6[1],xmm17[2],xmm6[2],xmm17[3],xmm6[3],xmm17[4],xmm6[4],xmm17[5],xmm6[5],xmm17[6],xmm6[6],xmm17[7],xmm6[7]
vpunpcklbw %xmm1, %xmm8, %xmm21 # xmm21 = xmm8[0],xmm1[0],xmm8[1],xmm1[1],xmm8[2],xmm1[2],xmm8[3],xmm1[3],xmm8[4],xmm1[4],xmm8[5],xmm1[5],xmm8[6],xmm1[6],xmm8[7],xmm1[7]
vpmaddubsw %xmm26, %xmm19, %xmm19
vpmaddubsw %xmm27, %xmm20, %xmm20
vpaddw %xmm19, %xmm20, %xmm19
vpmaddubsw %xmm11, %xmm21, %xmm20
vpaddw %xmm20, %xmm19, %xmm19
vpalignr $0x2, %xmm15, %xmm16, %xmm20 # xmm20 = xmm15[2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm16[0,1]
valignd $0x1, %xmm15, %xmm16, %xmm12 # xmm12 = xmm15[1,2,3],xmm16[0]
vpalignr $0x6, %xmm15, %xmm16, %xmm13 # xmm13 = xmm15[6,7,8,9,10,11,12,13,14,15],xmm16[0,1,2,3,4,5]
valignq $0x1, %xmm15, %xmm16, %xmm21 # xmm21 = xmm15[1],xmm16[0]
vpaddw %xmm21, %xmm20, %xmm20
vpalignr $0xa, %xmm15, %xmm16, %xmm21 # xmm21 = xmm15[10,11,12,13,14,15],xmm16[0,1,2,3,4,5,6,7,8,9]
vpaddw %xmm21, %xmm15, %xmm15
vpaddw %xmm13, %xmm12, %xmm21
vpsubw %xmm20, %xmm15, %xmm15
vpsraw $0x2, %xmm15, %xmm15
vpsubw %xmm20, %xmm21, %xmm20
vpaddw %xmm15, %xmm20, %xmm15
vpsraw $0x2, %xmm15, %xmm15
vpalignr $0x2, %xmm16, %xmm19, %xmm20 # xmm20 = xmm16[2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm19[0,1]
valignd $0x1, %xmm16, %xmm19, %xmm9 # xmm9 = xmm16[1,2,3],xmm19[0]
vpalignr $0x6, %xmm16, %xmm19, %xmm10 # xmm10 = xmm16[6,7,8,9,10,11,12,13,14,15],xmm19[0,1,2,3,4,5]
valignq $0x1, %xmm16, %xmm19, %xmm28 # xmm28 = xmm16[1],xmm19[0]
vpaddw %xmm28, %xmm20, %xmm20
vpalignr $0xa, %xmm16, %xmm19, %xmm19 # xmm19 = xmm16[10,11,12,13,14,15],xmm19[0,1,2,3,4,5,6,7,8,9]
vpaddw %xmm19, %xmm16, %xmm16
vpaddw %xmm10, %xmm9, %xmm19
vpsubw %xmm20, %xmm16, %xmm16
vpsraw $0x2, %xmm16, %xmm16
vpsubw %xmm20, %xmm19, %xmm20
vpaddw %xmm16, %xmm20, %xmm16
vpsraw $0x2, %xmm16, %xmm16
vpaddw %xmm22, %xmm21, %xmm20
vpaddw %xmm15, %xmm20, %xmm15
vpsraw $0x6, %xmm15, %xmm15
vpaddw %xmm22, %xmm19, %xmm19
vpaddw %xmm16, %xmm19, %xmm16
vpsraw $0x6, %xmm16, %xmm16
vpackuswb %xmm16, %xmm15, %xmm15
vpblendvb %xmm4, %xmm13, %xmm12, %xmm12
vpaddw %xmm23, %xmm12, %xmm12
vpsraw $0x5, %xmm12, %xmm12
vpblendvb %xmm4, %xmm10, %xmm9, %xmm9
vpaddw %xmm23, %xmm9, %xmm9
vpsraw $0x5, %xmm9, %xmm9
vpackuswb %xmm9, %xmm12, %xmm9
vpavgb %xmm15, %xmm9, %xmm9
vmovdqa (%r15), %xmm10
vpunpcklbw %xmm9, %xmm10, %xmm12 # xmm12 = xmm10[0],xmm9[0],xmm10[1],xmm9[1],xmm10[2],xmm9[2],xmm10[3],xmm9[3],xmm10[4],xmm9[4],xmm10[5],xmm9[5],xmm10[6],xmm9[6],xmm10[7],xmm9[7]
vpmaddubsw %xmm25, %xmm12, %xmm12
vpaddsw %xmm24, %xmm12, %xmm12
vpunpckhbw %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[8],xmm9[8],xmm10[9],xmm9[9],xmm10[10],xmm9[10],xmm10[11],xmm9[11],xmm10[12],xmm9[12],xmm10[13],xmm9[13],xmm10[14],xmm9[14],xmm10[15],xmm9[15]
vpmaddubsw %xmm25, %xmm9, %xmm9
vpaddsw %xmm24, %xmm9, %xmm9
vpsraw %xmm29, %xmm12, %xmm10
vpsraw %xmm29, %xmm9, %xmm9
vpackuswb %xmm9, %xmm10, %xmm9
vmovdqa %xmm9, (%r15)
addq %r10, %r15
addq %rsi, %rax
vmovdqa %xmm5, %xmm15
vmovdqa64 %xmm6, %xmm16
vmovdqa %xmm7, %xmm5
vmovdqa %xmm8, %xmm6
vmovdqa %xmm0, %xmm7
vmovdqa %xmm1, %xmm8
decl %ecx
jne 0xec3d
jmp 0xf6e6
vmovdqu (%rdx,%r11,2), %xmm14
vmovdqu (%rdx,%r11), %xmm10
vmovdqu (%rdx), %xmm0
vmovdqu (%rdx,%rsi), %xmm12
vmovdqu (%rdx,%rsi,2), %xmm13
leal (,%rsi,4), %edx
leal (,%r10,4), %r11d
imulq $0x6, %rsi, %rbx
leaq (%rsi,%rsi,4), %r15
leaq (%rsi,%rsi,2), %rsi
addq %r14, %rdi
leaq 0x3(%rax), %r14
imulq %r10, %r14
leaq 0x2(%rax), %r12
imulq %r10, %r12
incq %rax
imulq %r10, %rax
vmovdqa64 0x1e760(%rip), %xmm27 # 0x2d610
vpbroadcastw 0x1eb30(%rip), %xmm30 # 0x2d9ea
vpbroadcastb 0x1eb28(%rip), %xmm31 # 0x2d9ec
vpbroadcastw 0x1eb21(%rip), %xmm7 # 0x2d9ee
vpbroadcastw 0x1eb19(%rip), %xmm28 # 0x2d9f0
vpbroadcastw 0x1eb12(%rip), %xmm2 # 0x2d9f2
vpunpckhbw %xmm10, %xmm14, %xmm20 # xmm20 = xmm14[8],xmm10[8],xmm14[9],xmm10[9],xmm14[10],xmm10[10],xmm14[11],xmm10[11],xmm14[12],xmm10[12],xmm14[13],xmm10[13],xmm14[14],xmm10[14],xmm14[15],xmm10[15]
vpunpcklbw %xmm10, %xmm14, %xmm19 # xmm19 = xmm14[0],xmm10[0],xmm14[1],xmm10[1],xmm14[2],xmm10[2],xmm14[3],xmm10[3],xmm14[4],xmm10[4],xmm14[5],xmm10[5],xmm14[6],xmm10[6],xmm14[7],xmm10[7]
vpunpcklbw %xmm0, %xmm10, %xmm17 # xmm17 = xmm10[0],xmm0[0],xmm10[1],xmm0[1],xmm10[2],xmm0[2],xmm10[3],xmm0[3],xmm10[4],xmm0[4],xmm10[5],xmm0[5],xmm10[6],xmm0[6],xmm10[7],xmm0[7]
vmovdqu -0x2(%r9,%rsi), %xmm10
vpunpckhbw %xmm12, %xmm0, %xmm21 # xmm21 = xmm0[8],xmm12[8],xmm0[9],xmm12[9],xmm0[10],xmm12[10],xmm0[11],xmm12[11],xmm0[12],xmm12[12],xmm0[13],xmm12[13],xmm0[14],xmm12[14],xmm0[15],xmm12[15]
vmovdqu -0x2(%r9,%rdx), %xmm11
vpunpcklbw %xmm12, %xmm0, %xmm16 # xmm16 = xmm0[0],xmm12[0],xmm0[1],xmm12[1],xmm0[2],xmm12[2],xmm0[3],xmm12[3],xmm0[4],xmm12[4],xmm0[5],xmm12[5],xmm0[6],xmm12[6],xmm0[7],xmm12[7]
vpunpcklbw %xmm13, %xmm12, %xmm15 # xmm15 = xmm12[0],xmm13[0],xmm12[1],xmm13[1],xmm12[2],xmm13[2],xmm12[3],xmm13[3],xmm12[4],xmm13[4],xmm12[5],xmm13[5],xmm12[6],xmm13[6],xmm12[7],xmm13[7]
vmovdqu -0x2(%r9,%r15), %xmm12
vpunpckhbw %xmm10, %xmm13, %xmm22 # xmm22 = xmm13[8],xmm10[8],xmm13[9],xmm10[9],xmm13[10],xmm10[10],xmm13[11],xmm10[11],xmm13[12],xmm10[12],xmm13[13],xmm10[13],xmm13[14],xmm10[14],xmm13[15],xmm10[15]
vpunpcklbw %xmm10, %xmm13, %xmm18 # xmm18 = xmm13[0],xmm10[0],xmm13[1],xmm10[1],xmm13[2],xmm10[2],xmm13[3],xmm10[3],xmm13[4],xmm10[4],xmm13[5],xmm10[5],xmm13[6],xmm10[6],xmm13[7],xmm10[7]
vmovdqa %xmm13, %xmm14
vmovdqu -0x2(%r9,%rbx), %xmm13
vpunpcklwd %xmm21, %xmm20, %xmm0 # xmm0 = xmm20[0],xmm21[0],xmm20[1],xmm21[1],xmm20[2],xmm21[2],xmm20[3],xmm21[3]
vpunpckhbw %xmm12, %xmm11, %xmm1 # xmm1 = xmm11[8],xmm12[8],xmm11[9],xmm12[9],xmm11[10],xmm12[10],xmm11[11],xmm12[11],xmm11[12],xmm12[12],xmm11[13],xmm12[13],xmm11[14],xmm12[14],xmm11[15],xmm12[15]
vpunpcklwd %xmm1, %xmm22, %xmm1 # xmm1 = xmm22[0],xmm1[0],xmm22[1],xmm1[1],xmm22[2],xmm1[2],xmm22[3],xmm1[3]
vpunpckldq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
vpalignr $0x8, %xmm13, %xmm0, %xmm0 # xmm0 = xmm13[8,9,10,11,12,13,14,15],xmm0[0,1,2,3,4,5,6,7]
vpshufb %xmm27, %xmm0, %xmm0
vpunpcklbw %xmm11, %xmm10, %xmm1 # xmm1 = xmm10[0],xmm11[0],xmm10[1],xmm11[1],xmm10[2],xmm11[2],xmm10[3],xmm11[3],xmm10[4],xmm11[4],xmm10[5],xmm11[5],xmm10[6],xmm11[6],xmm10[7],xmm11[7]
vpunpcklbw %xmm12, %xmm11, %xmm20 # xmm20 = xmm11[0],xmm12[0],xmm11[1],xmm12[1],xmm11[2],xmm12[2],xmm11[3],xmm12[3],xmm11[4],xmm12[4],xmm11[5],xmm12[5],xmm11[6],xmm12[6],xmm11[7],xmm12[7]
vpunpcklbw %xmm13, %xmm12, %xmm21 # xmm21 = xmm12[0],xmm13[0],xmm12[1],xmm13[1],xmm12[2],xmm13[2],xmm12[3],xmm13[3],xmm12[4],xmm13[4],xmm12[5],xmm13[5],xmm12[6],xmm13[6],xmm12[7],xmm13[7]
vpmaddubsw %xmm30, %xmm0, %xmm22
vpshufd $0x9, %xmm0, %xmm23     # xmm23 = xmm0[1,2,0,0]
vpshufd $0xe, %xmm0, %xmm0      # xmm0 = xmm0[2,3,0,0]
vpmaddubsw %xmm30, %xmm19, %xmm19
vpmaddubsw %xmm31, %xmm16, %xmm26
vpaddw %xmm19, %xmm26, %xmm19
vpmaddubsw %xmm31, %xmm23, %xmm23
vpmaddubsw %xmm7, %xmm18, %xmm26
vpaddw %xmm26, %xmm19, %xmm19
vpmaddubsw %xmm30, %xmm17, %xmm17
vpmaddubsw %xmm31, %xmm15, %xmm26
vpaddw %xmm17, %xmm26, %xmm17
vpmaddubsw %xmm7, %xmm0, %xmm0
vpmaddubsw %xmm7, %xmm1, %xmm26
vpaddw %xmm26, %xmm17, %xmm17
vpmaddubsw %xmm30, %xmm16, %xmm16
vpmaddubsw %xmm31, %xmm18, %xmm18
vpaddw %xmm16, %xmm18, %xmm16
vpaddw %xmm22, %xmm23, %xmm18
vpmaddubsw %xmm7, %xmm20, %xmm20
vpaddw %xmm20, %xmm16, %xmm16
vpmaddubsw %xmm30, %xmm15, %xmm15
vpmaddubsw %xmm31, %xmm1, %xmm1
vpaddw %xmm1, %xmm15, %xmm1
vpaddw %xmm0, %xmm18, %xmm0
vpmaddubsw %xmm7, %xmm21, %xmm15
vpaddw %xmm1, %xmm15, %xmm15
vpalignr $0x2, %xmm19, %xmm0, %xmm18 # xmm18 = xmm19[2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm0[0,1]
vpbroadcastd %xmm0, %xmm1
vpsrldq $0x2, %xmm17, %xmm3     # xmm3 = xmm17[2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero,zero
vpblendw $0x80, %xmm1, %xmm3, %xmm3 # xmm3 = xmm3[0,1,2,3,4,5,6],xmm1[7]
vpslldq $0xa, %xmm0, %xmm1      # xmm1 = zero,zero,zero,zero,zero,zero,zero,zero,zero,zero,xmm0[0,1,2,3,4,5]
vpsrldq $0x2, %xmm16, %xmm8     # xmm8 = xmm16[2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero,zero
vpblendw $0x80, %xmm1, %xmm8, %xmm8 # xmm8 = xmm8[0,1,2,3,4,5,6],xmm1[7]
vpbroadcastq %xmm0, %xmm0
vpsrldq $0x2, %xmm15, %xmm1     # xmm1 = xmm15[2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero,zero
vpblendw $0x80, %xmm0, %xmm1, %xmm9 # xmm9 = xmm1[0,1,2,3,4,5,6],xmm0[7]
vshufps $0x99, %xmm17, %xmm19, %xmm5 # xmm5 = xmm19[1,2],xmm17[1,2]
vshufps $0x99, %xmm3, %xmm18, %xmm6 # xmm6 = xmm18[1,2],xmm3[1,2]
vshufps $0x99, %xmm15, %xmm16, %xmm0 # xmm0 = xmm16[1,2],xmm15[1,2]
vshufps $0x99, %xmm9, %xmm8, %xmm1 # xmm1 = xmm8[1,2],xmm9[1,2]
vpunpcklqdq %xmm17, %xmm19, %xmm20 # xmm20 = xmm19[0],xmm17[0]
vpunpcklqdq %xmm3, %xmm18, %xmm21 # xmm21 = xmm18[0],xmm3[0]
vpunpckhqdq %xmm17, %xmm19, %xmm17 # xmm17 = xmm19[1],xmm17[1]
vpaddw %xmm17, %xmm21, %xmm17
vpunpckhqdq %xmm3, %xmm18, %xmm3 # xmm3 = xmm18[1],xmm3[1]
vpunpcklqdq %xmm15, %xmm16, %xmm18 # xmm18 = xmm16[0],xmm15[0]
vpunpcklqdq %xmm9, %xmm8, %xmm19 # xmm19 = xmm8[0],xmm9[0]
vpaddw %xmm20, %xmm3, %xmm3
vpunpckhqdq %xmm15, %xmm16, %xmm15 # xmm15 = xmm16[1],xmm15[1]
vpaddw %xmm15, %xmm19, %xmm15
vpunpckhqdq %xmm9, %xmm8, %xmm8 # xmm8 = xmm8[1],xmm9[1]
vpaddw %xmm18, %xmm8, %xmm8
vpaddw %xmm5, %xmm6, %xmm9
vpsubw %xmm17, %xmm3, %xmm3
vpsraw $0x2, %xmm3, %xmm3
vpsubw %xmm17, %xmm9, %xmm16
vpaddw %xmm3, %xmm16, %xmm3
vpaddw %xmm0, %xmm1, %xmm16
vpsubw %xmm15, %xmm8, %xmm8
vpsraw $0x2, %xmm3, %xmm3
vpsraw $0x2, %xmm8, %xmm8
vpsubw %xmm15, %xmm16, %xmm15
vpaddw %xmm8, %xmm15, %xmm8
vpsraw $0x2, %xmm8, %xmm8
vpaddw %xmm28, %xmm9, %xmm9
vpaddw %xmm3, %xmm9, %xmm3
vpaddw %xmm28, %xmm16, %xmm9
vpaddw %xmm8, %xmm9, %xmm8
vpblendvb %xmm4, %xmm6, %xmm5, %xmm5
vpaddw %xmm2, %xmm5, %xmm5
vpsraw $0x6, %xmm3, %xmm3
vpsraw $0x5, %xmm5, %xmm5
vpblendvb %xmm4, %xmm1, %xmm0, %xmm0
vpaddw %xmm2, %xmm0, %xmm0
vpsraw $0x5, %xmm0, %xmm0
vpsraw $0x6, %xmm8, %xmm1
vpackuswb %xmm0, %xmm5, %xmm0
vmovd (%rdi,%r8), %xmm5
vpinsrd $0x1, (%rdi,%rax), %xmm5, %xmm5
vpackuswb %xmm1, %xmm3, %xmm1
vpavgb %xmm1, %xmm0, %xmm0
vpinsrd $0x2, (%rdi,%r12), %xmm5, %xmm1
vpinsrd $0x3, (%rdi,%r14), %xmm1, %xmm1
vpunpcklbw %xmm0, %xmm1, %xmm3 # xmm3 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3],xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpunpckhbw %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpsraw %xmm29, %xmm3, %xmm1
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovd %xmm0, (%rdi,%r8)
vpextrd $0x1, %xmm0, (%rdi,%rax)
vpextrd $0x2, %xmm0, (%rdi,%r12)
addq %rdx, %r9
vpextrd $0x3, %xmm0, (%rdi,%r14)
addq %r11, %rdi
vmovdqa %xmm11, %xmm0
addl $-0x4, %ecx
jne 0xeee0
jmp 0xf6e6
vmovdqu (%rdx,%r11,2), %xmm12
vmovdqu (%rdx,%r11), %xmm10
vmovdqu (%rdx), %xmm13
vmovdqu (%rdx,%rsi), %xmm11
leal (%rsi,%rsi), %r9d
vmovdqu (%rdx,%r9), %xmm3
leal (%r10,%r10), %r11d
leaq (%rsi,%rsi,2), %rbx
addq %r14, %rdi
incq %rax
imulq %r10, %rax
vpbroadcastw 0x1e808(%rip), %xmm23 # 0x2d9ea
vpbroadcastb 0x1e801(%rip), %xmm6 # 0x2d9ec
vpbroadcastw 0x1e7fa(%rip), %xmm7 # 0x2d9ee
vpbroadcastw 0x1e7f2(%rip), %xmm21 # 0x2d9f0
vpbroadcastw 0x1e7ea(%rip), %xmm22 # 0x2d9f2
vpunpcklbw %xmm10, %xmm12, %xmm14 # xmm14 = xmm12[0],xmm10[0],xmm12[1],xmm10[1],xmm12[2],xmm10[2],xmm12[3],xmm10[3],xmm12[4],xmm10[4],xmm12[5],xmm10[5],xmm12[6],xmm10[6],xmm12[7],xmm10[7]
vpunpckhbw %xmm10, %xmm12, %xmm15 # xmm15 = xmm12[8],xmm10[8],xmm12[9],xmm10[9],xmm12[10],xmm10[10],xmm12[11],xmm10[11],xmm12[12],xmm10[12],xmm12[13],xmm10[13],xmm12[14],xmm10[14],xmm12[15],xmm10[15]
vpunpcklbw %xmm13, %xmm10, %xmm17 # xmm17 = xmm10[0],xmm13[0],xmm10[1],xmm13[1],xmm10[2],xmm13[2],xmm10[3],xmm13[3],xmm10[4],xmm13[4],xmm10[5],xmm13[5],xmm10[6],xmm13[6],xmm10[7],xmm13[7]
vpunpckhbw %xmm13, %xmm10, %xmm16 # xmm16 = xmm10[8],xmm13[8],xmm10[9],xmm13[9],xmm10[10],xmm13[10],xmm10[11],xmm13[11],xmm10[12],xmm13[12],xmm10[13],xmm13[13],xmm10[14],xmm13[14],xmm10[15],xmm13[15]
vpunpcklbw %xmm11, %xmm13, %xmm0 # xmm0 = xmm13[0],xmm11[0],xmm13[1],xmm11[1],xmm13[2],xmm11[2],xmm13[3],xmm11[3],xmm13[4],xmm11[4],xmm13[5],xmm11[5],xmm13[6],xmm11[6],xmm13[7],xmm11[7]
vpunpckhbw %xmm11, %xmm13, %xmm18 # xmm18 = xmm13[8],xmm11[8],xmm13[9],xmm11[9],xmm13[10],xmm11[10],xmm13[11],xmm11[11],xmm13[12],xmm11[12],xmm13[13],xmm11[13],xmm13[14],xmm11[14],xmm13[15],xmm11[15]
vmovdqa %xmm13, %xmm12
vmovdqa %xmm3, %xmm13
vpunpcklbw %xmm3, %xmm11, %xmm1 # xmm1 = xmm11[0],xmm3[0],xmm11[1],xmm3[1],xmm11[2],xmm3[2],xmm11[3],xmm3[3],xmm11[4],xmm3[4],xmm11[5],xmm3[5],xmm11[6],xmm3[6],xmm11[7],xmm3[7]
vpunpckhbw %xmm3, %xmm11, %xmm19 # xmm19 = xmm11[8],xmm3[8],xmm11[9],xmm3[9],xmm11[10],xmm3[10],xmm11[11],xmm3[11],xmm11[12],xmm3[12],xmm11[13],xmm3[13],xmm11[14],xmm3[14],xmm11[15],xmm3[15]
vmovdqa %xmm11, %xmm10
vmovdqu (%rdx,%rbx), %xmm11
vmovdqu (%rdx,%rsi,4), %xmm3
vpunpcklbw %xmm11, %xmm13, %xmm20 # xmm20 = xmm13[0],xmm11[0],xmm13[1],xmm11[1],xmm13[2],xmm11[2],xmm13[3],xmm11[3],xmm13[4],xmm11[4],xmm13[5],xmm11[5],xmm13[6],xmm11[6],xmm13[7],xmm11[7]
vpmaddubsw %xmm23, %xmm14, %xmm14
vpmaddubsw %xmm6, %xmm0, %xmm0
vpaddw %xmm0, %xmm14, %xmm0
vpmaddubsw %xmm7, %xmm20, %xmm14
vpaddw %xmm0, %xmm14, %xmm14
vpunpcklbw %xmm3, %xmm11, %xmm0 # xmm0 = xmm11[0],xmm3[0],xmm11[1],xmm3[1],xmm11[2],xmm3[2],xmm11[3],xmm3[3],xmm11[4],xmm3[4],xmm11[5],xmm3[5],xmm11[6],xmm3[6],xmm11[7],xmm3[7]
vpmaddubsw %xmm23, %xmm17, %xmm17
vpmaddubsw %xmm6, %xmm1, %xmm1
vpaddw %xmm17, %xmm1, %xmm1
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm1, %xmm1
vpunpckhbw %xmm11, %xmm13, %xmm0 # xmm0 = xmm13[8],xmm11[8],xmm13[9],xmm11[9],xmm13[10],xmm11[10],xmm13[11],xmm11[11],xmm13[12],xmm11[12],xmm13[13],xmm11[13],xmm13[14],xmm11[14],xmm13[15],xmm11[15]
vpmaddubsw %xmm23, %xmm15, %xmm15
vpmaddubsw %xmm6, %xmm18, %xmm17
vpaddw %xmm15, %xmm17, %xmm15
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm15, %xmm15
vpunpckhbw %xmm3, %xmm11, %xmm0 # xmm0 = xmm11[8],xmm3[8],xmm11[9],xmm3[9],xmm11[10],xmm3[10],xmm11[11],xmm3[11],xmm11[12],xmm3[12],xmm11[13],xmm3[13],xmm11[14],xmm3[14],xmm11[15],xmm3[15]
vpmaddubsw %xmm23, %xmm16, %xmm16
vpmaddubsw %xmm6, %xmm19, %xmm17
vpaddw %xmm16, %xmm17, %xmm16
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm16, %xmm16
vpalignr $0x2, %xmm14, %xmm15, %xmm17 # xmm17 = xmm14[2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm15[0,1]
vpalignr $0x2, %xmm1, %xmm16, %xmm18 # xmm18 = xmm1[2,3,4,5,6,7,8,9,10,11,12,13,14,15],xmm16[0,1]
vpalignr $0x4, %xmm14, %xmm15, %xmm8 # xmm8 = xmm14[4,5,6,7,8,9,10,11,12,13,14,15],xmm15[0,1,2,3]
valignd $0x1, %xmm1, %xmm16, %xmm0 # xmm0 = xmm1[1,2,3],xmm16[0]
vpalignr $0x6, %xmm14, %xmm15, %xmm9 # xmm9 = xmm14[6,7,8,9,10,11,12,13,14,15],xmm15[0,1,2,3,4,5]
vpalignr $0x6, %xmm1, %xmm16, %xmm5 # xmm5 = xmm1[6,7,8,9,10,11,12,13,14,15],xmm16[0,1,2,3,4,5]
valignq $0x1, %xmm14, %xmm15, %xmm19 # xmm19 = xmm14[1],xmm15[0]
vpaddw %xmm19, %xmm17, %xmm17
valignq $0x1, %xmm1, %xmm16, %xmm19 # xmm19 = xmm1[1],xmm16[0]
vpaddw %xmm19, %xmm18, %xmm18
vpalignr $0xa, %xmm14, %xmm15, %xmm15 # xmm15 = xmm14[10,11,12,13,14,15],xmm15[0,1,2,3,4,5,6,7,8,9]
vpalignr $0xa, %xmm1, %xmm16, %xmm16 # xmm16 = xmm1[10,11,12,13,14,15],xmm16[0,1,2,3,4,5,6,7,8,9]
vpaddw %xmm15, %xmm14, %xmm14
vpaddw %xmm9, %xmm8, %xmm15
vpsubw %xmm17, %xmm14, %xmm14
vpsraw $0x2, %xmm14, %xmm14
vpsubw %xmm17, %xmm15, %xmm17
vpaddw %xmm14, %xmm17, %xmm14
vpsraw $0x2, %xmm14, %xmm14
vpaddw %xmm16, %xmm1, %xmm1
vpaddw %xmm5, %xmm0, %xmm16
vpsubw %xmm18, %xmm1, %xmm1
vpsraw $0x2, %xmm1, %xmm1
vpsubw %xmm18, %xmm16, %xmm17
vpaddw %xmm1, %xmm17, %xmm1
vpsraw $0x2, %xmm1, %xmm1
vpaddw %xmm21, %xmm15, %xmm15
vpaddw %xmm14, %xmm15, %xmm14
vpsraw $0x6, %xmm14, %xmm14
vpaddw %xmm21, %xmm16, %xmm15
vpaddw %xmm1, %xmm15, %xmm1
vpsraw $0x6, %xmm1, %xmm1
vpackuswb %xmm1, %xmm14, %xmm1
vpblendvb %xmm4, %xmm9, %xmm8, %xmm8
vpaddw %xmm22, %xmm8, %xmm8
vpsraw $0x5, %xmm8, %xmm8
vpblendvb %xmm4, %xmm5, %xmm0, %xmm0
vpaddw %xmm22, %xmm0, %xmm0
vpsraw $0x5, %xmm0, %xmm0
vpackuswb %xmm0, %xmm8, %xmm0
vpavgb %xmm0, %xmm1, %xmm0
vpbroadcastq (%rdi,%rax), %xmm1
vmovq (%rdi,%r8), %xmm5
vpunpcklbw %xmm0, %xmm5, %xmm5 # xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1],xmm5[2],xmm0[2],xmm5[3],xmm0[3],xmm5[4],xmm0[4],xmm5[5],xmm0[5],xmm5[6],xmm0[6],xmm5[7],xmm0[7]
vpmaddubsw %xmm25, %xmm5, %xmm5
vpaddsw %xmm24, %xmm5, %xmm5
vpunpckhbw %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpsraw %xmm29, %xmm5, %xmm1
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovq %xmm0, (%rdi,%r8)
addq %r9, %rdx
vpextrq $0x1, %xmm0, (%rdi,%rax)
addq %r11, %rdi
addl $-0x2, %ecx
jne 0xf208
jmp 0xf6e6
leaq (%rsi,%rsi), %rax
vmovdqa (%r15), %xmm0
vmovdqu (%r9), %xmm1
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpsraw %xmm29, %xmm3, %xmm1
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovdqa %xmm0, (%r15)
leaq (%r15,%r10), %rdx
vmovdqa (%r15,%r10), %xmm0
vmovdqu (%r9,%rsi), %xmm1
addq %rsi, %r9
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm3, %xmm1
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovdqa %xmm0, (%r15,%r10)
vmovdqa (%r10,%rdx), %xmm0
vmovdqu (%rsi,%r9), %xmm1
leaq (%rdx,%r10), %rdi
addq %rsi, %r9
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm3, %xmm1
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovdqa %xmm0, (%r10,%rdx)
leaq (%rdi,%r10), %r15
vmovdqa (%r10,%rdi), %xmm0
vmovdqu (%rsi,%r9), %xmm1
vpunpcklbw %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1[4],xmm0[5],xmm1[5],xmm0[6],xmm1[6],xmm0[7],xmm1[7]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpunpckhbw %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12],xmm0[13],xmm1[13],xmm0[14],xmm1[14],xmm0[15],xmm1[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm3, %xmm1
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovdqa %xmm0, (%r10,%rdi)
addq %r10, %r15
addq %rax, %r9
addl $-0x4, %ecx
jne 0xf418
jmp 0xf6e6
leal (,%r10,4), %edx
addq %r14, %rdi
leaq 0x3(%rax), %r11
imulq %r10, %r11
leaq 0x2(%rax), %rbx
imulq %r10, %rbx
incq %rax
imulq %r10, %rax
leaq (%rsi,%rsi), %r10
vmovd (%r9), %xmm0
vpinsrd $0x1, (%r9,%rsi), %xmm0, %xmm0
addq %rsi, %r9
vpinsrd $0x2, (%rsi,%r9), %xmm0, %xmm0
addq %rsi, %r9
vpinsrd $0x3, (%rsi,%r9), %xmm0, %xmm0
vmovd (%rdi,%r8), %xmm1
vpinsrd $0x1, (%rdi,%rax), %xmm1, %xmm1
vpinsrd $0x2, (%rdi,%rbx), %xmm1, %xmm1
vpinsrd $0x3, (%rdi,%r11), %xmm1, %xmm1
vpunpcklbw %xmm0, %xmm1, %xmm3 # xmm3 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3],xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7]
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpunpckhbw %xmm0, %xmm1, %xmm0 # xmm0 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15]
vpmaddubsw %xmm25, %xmm0, %xmm0
vpsraw %xmm29, %xmm3, %xmm1
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm0, %xmm0
vpackuswb %xmm0, %xmm1, %xmm0
vmovd %xmm0, (%rdi,%r8)
vpextrd $0x1, %xmm0, (%rdi,%rax)
vpextrd $0x2, %xmm0, (%rdi,%rbx)
vpextrd $0x3, %xmm0, (%rdi,%r11)
addq %rdx, %rdi
addq %r10, %r9
addl $-0x4, %ecx
jne 0xf569
jmp 0xf6e6
leal (,%r10,4), %edx
addq %r14, %rdi
leaq 0x3(%rax), %r11
imulq %r10, %r11
leaq 0x2(%rax), %rbx
imulq %r10, %rbx
incq %rax
imulq %r10, %rax
leaq (%rsi,%rsi), %r10
leaq (%r9,%rsi), %r14
vmovq (%r9,%rsi), %xmm0
vmovq (%r9), %xmm1
leaq (%r14,%rsi), %r9
vmovq (%rsi,%r9), %xmm3
vmovq (%rsi,%r14), %xmm4
vmovq (%rdi,%rax), %xmm5
vpunpcklbw %xmm0, %xmm5, %xmm0 # xmm0 = xmm5[0],xmm0[0],xmm5[1],xmm0[1],xmm5[2],xmm0[2],xmm5[3],xmm0[3],xmm5[4],xmm0[4],xmm5[5],xmm0[5],xmm5[6],xmm0[6],xmm5[7],xmm0[7]
vmovq (%rdi,%r8), %xmm5
vmovq (%rdi,%r11), %xmm6
vpunpcklbw %xmm1, %xmm5, %xmm1 # xmm1 = xmm5[0],xmm1[0],xmm5[1],xmm1[1],xmm5[2],xmm1[2],xmm5[3],xmm1[3],xmm5[4],xmm1[4],xmm5[5],xmm1[5],xmm5[6],xmm1[6],xmm5[7],xmm1[7]
vpunpcklbw %xmm3, %xmm6, %xmm3 # xmm3 = xmm6[0],xmm3[0],xmm6[1],xmm3[1],xmm6[2],xmm3[2],xmm6[3],xmm3[3],xmm6[4],xmm3[4],xmm6[5],xmm3[5],xmm6[6],xmm3[6],xmm6[7],xmm3[7]
vmovq (%rdi,%rbx), %xmm5
vpmaddubsw %xmm25, %xmm1, %xmm1
vpaddsw %xmm24, %xmm1, %xmm1
vpmaddubsw %xmm25, %xmm0, %xmm0
vpaddsw %xmm24, %xmm0, %xmm0
vpsraw %xmm29, %xmm1, %xmm1
vpsraw %xmm29, %xmm0, %xmm0
vpunpcklbw %xmm4, %xmm5, %xmm4 # xmm4 = xmm5[0],xmm4[0],xmm5[1],xmm4[1],xmm5[2],xmm4[2],xmm5[3],xmm4[3],xmm5[4],xmm4[4],xmm5[5],xmm4[5],xmm5[6],xmm4[6],xmm5[7],xmm4[7]
vpackuswb %xmm0, %xmm1, %xmm0
vpmaddubsw %xmm25, %xmm4, %xmm1
vpaddsw %xmm24, %xmm1, %xmm1
vpmaddubsw %xmm25, %xmm3, %xmm3
vpaddsw %xmm24, %xmm3, %xmm3
vpsraw %xmm29, %xmm1, %xmm1
vpsraw %xmm29, %xmm3, %xmm3
vmovq %xmm0, (%rdi,%r8)
vpackuswb %xmm3, %xmm1, %xmm1
vpextrq $0x1, %xmm0, (%rdi,%rax)
vmovq %xmm1, (%rdi,%rbx)
vpextrq $0x1, %xmm1, (%rdi,%r11)
addq %rdx, %rdi
addq %r10, %r9
addl $-0x4, %ecx
jne 0xf629
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
vzeroupper
retq
leal -0x2(%r12), %r10d
movl %r10d, -0x40(%rsp)
cmpl $-0xe, %r10d
movl $0xfffffff1, %r11d      # imm = 0xFFFFFFF1
cmovgel %r10d, %r11d
movl %r11d, %r15d
sarl $0x1f, %r15d
andl %r11d, %r15d
movslq %r15d, %r11
leaq 0x20c80(%rip), %r10     # 0x303a0
addq %r11, %r10
addq $0xf, %r10
movq %r10, -0x10(%rsp)
leal 0xe(%r12), %r11d
movl %r11d, -0x48(%rsp)
subl %esi, %r11d
movl %r11d, %r10d
sarl $0x1f, %r10d
andnl %r11d, %r10d, %r10d
movl $0xf, %r11d
cmpl %r11d, %r10d
cmovgel %r11d, %r10d
movq -0x10(%rsp), %r15
vmovdqu (%r10,%r15), %xmm0
movl -0x48(%rsp), %r15d
cmpl $-0xe, %r15d
movl $0xfffffff1, %r10d      # imm = 0xFFFFFFF1
cmovgel %r15d, %r10d
movl %r10d, %r15d
sarl $0x1f, %r10d
andl %r15d, %r10d
movslq %r10d, %r10
leaq 0x20c1c(%rip), %r15     # 0x303a0
addq %r15, %r10
addq $0xf, %r10
subl %esi, %r12d
addl $0x1e, %r12d
movl %r12d, %r15d
sarl $0x1f, %r15d
andnl %r12d, %r15d, %r15d
cmpl %r11d, %r15d
cmovll %r15d, %r11d
vmovdqu (%r11,%r10), %xmm1
addl $-0x10, %esi
movl -0x40(%rsp), %r11d
movl %r11d, %r10d
sarl $0x1f, %r10d
andnl %r11d, %r10d, %r10d
cmpl %esi, %r10d
cmovgel %esi, %r10d
movslq %r10d, %r10
movq -0x38(%rsp), %r11
addq %r11, %r10
movq %r10, -0x40(%rsp)
movl -0x48(%rsp), %r15d
movl %r15d, %r10d
sarl $0x1f, %r10d
andnl %r15d, %r10d, %r10d
cmpl %esi, %r10d
cmovll %r10d, %esi
movslq %esi, %rsi
addq %r11, %rsi
movq %rsi, -0x48(%rsp)
addl $-0x2, %ebx
leaq 0x1230(%rdi), %r12
leal (%rcx,%rcx), %esi
movslq %esi, %rsi
shlq $0x4, %rsi
addq %rdi, %rsi
addq $0x12d0, %rsi           # imm = 0x12D0
imull %edx, %ebx
movq -0x28(%rsp), %r15
cmpq %rsi, %r12
jae 0xf876
movl 0x3c(%rdi), %r10d
subl %edx, %r10d
movl %ebx, %r11d
sarl $0x1f, %r11d
andnl %ebx, %r11d, %r11d
cmpl %r10d, %r11d
cmovll %r11d, %r10d
movslq %r10d, %r10
movq -0x40(%rsp), %r11
vmovdqu (%r11,%r10), %xmm3
vpshufb %xmm0, %xmm3, %xmm3
vmovdqa %xmm3, (%r12)
movq -0x48(%rsp), %r11
vmovdqu (%r11,%r10), %xmm3
vpshufb %xmm1, %xmm3, %xmm3
vmovdqa %xmm3, 0x10(%r12)
addq $0x20, %r12
addl %edx, %ebx
jmp 0xf81f
movq -0x8(%rsp), %r12
leal (,%r12,8), %edx
cmpl $-0x6, %r13d
movl $0xfffffff9, %esi       # imm = 0xFFFFFFF9
cmovgel %r13d, %esi
movl %esi, %r10d
sarl $0x1f, %r10d
andl %esi, %r10d
movslq %r10d, %rsi
leaq 0x20b2c(%rip), %r10     # 0x303d0
addq %rsi, %r10
leal 0x8(%r13), %esi
movl %esi, %r11d
subl %edx, %r11d
movl %r11d, %edx
sarl $0x1f, %edx
andnl %r11d, %edx, %edx
cmpl $0x7, %edx
movl $0x7, %r11d
cmovll %edx, %r11d
vmovq 0x7(%r11,%r10), %xmm0
leal -0x8(,%r12,8), %edx
movl %r13d, %r10d
sarl $0x1f, %r10d
andnl %r13d, %r10d, %r10d
cmpl %edx, %r10d
cmovll %r10d, %edx
movslq %edx, %rdx
movq -0x38(%rsp), %rbx
addq %rbx, %rdx
leal -0x1(,%r12,8), %r10d
movl %esi, %r11d
sarl $0x1f, %r11d
andnl %esi, %r11d, %esi
cmpl %r10d, %esi
cmovll %esi, %r10d
movslq %r10d, %rsi
addq %rbx, %rsi
movl %ecx, %r10d
sarl %r10d
andl $-0x2, %r15d
testl %r10d, %r10d
movl $0xffffffff, %ebx       # imm = 0xFFFFFFFF
cmovnsl %r10d, %ebx
incl %ebx
shlq $0x5, %rbx
imull %r8d, %r9d
addl %r9d, %r9d
xorl %r12d, %r12d
cmpq %r12, %rbx
je 0xf9c1
movslq 0x3c(%rdi), %r10
movl 0x40(%rdi), %r11d
subl %r15d, %r11d
movq %r15, %r13
movl %r9d, %r15d
sarl $0x1f, %r15d
andnl %r9d, %r15d, %r15d
cmpl %r11d, %r15d
cmovll %r15d, %r11d
movq %r13, %r15
movslq %r11d, %r11
addq %r10, %r11
leal (%r11,%r8), %r10d
vmovq (%rdx,%r11), %xmm1
vpshufb %xmm0, %xmm1, %xmm1
vmovq %xmm1, 0x14d0(%rdi,%r12)
movb (%rsi,%r11), %r11b
movb %r11b, 0x14d8(%rdi,%r12)
movslq %r10d, %r10
vmovq (%rdx,%r10), %xmm1
vpshufb %xmm0, %xmm1, %xmm1
vmovq %xmm1, 0x14e0(%rdi,%r12)
movb (%rsi,%r10), %r10b
movb %r10b, 0x14e8(%rdi,%r12)
addq $0x20, %r12
addl %r15d, %r9d
jmp 0xf93d
leaq 0x1272(%rdi), %r9
leaq 0x14d0(%rdi), %r13
movzwl 0x36(%rdi), %r11d
movl %r11d, %r8d
shrl %r8d
movabsq $0x20, %rsi
movabsq $0x10, %r12
jmp 0xceeb
sarl $0x5, %edx
movl $0x2, %esi
subl %edx, %esi
shll $0x8, %edx
movzbl %sil, %esi
orl %edx, %esi
vmovd %esi, %xmm0
vpinsrw $0x1, %esi, %xmm0, %xmm0
vpinsrw $0x2, %esi, %xmm0, %xmm0
movl $0x1, %edx
vpinsrw $0x3, %edx, %xmm0, %xmm0
vpinsrw $0x4, %edx, %xmm0, %xmm0
vpinsrw $0x5, %edx, %xmm0, %xmm0
jmp 0xccca
vmovq 0x1db0b(%rip), %xmm2    # 0x2d540
jmp 0xcd44
shll $0x7, %esi
andl $0xff00, %esi           # imm = 0xFF00
shrl %r10d
movzbl %r10b, %r10d
orl %esi, %r10d
movsbl 0x590(%rdi,%rdx), %esi
movsbl 0x5b0(%rdi,%r9), %ebx
addl %ebx, %esi
incl %esi
orl $0x1, %esi
movsbl 0x25(%rdi), %ebx
shlxl %ebx, %esi, %esi
shrl %esi
jmp 0xcb8d
shll $0x7, %esi
andl $0xff00, %esi           # imm = 0xFF00
shrl %r10d
movl $0xff, %ebx
andl %ebx, %r10d
orl %esi, %r10d
vpinsrw $0x1, %r10d, %xmm0, %xmm0
movzwl 0x550(%rdi,%r9,2), %esi
andl $-0x2, %esi
shll $0x7, %esi
movzwl 0x510(%rdi,%rdx,2), %r10d
shrl %r10d
andl %ebx, %r10d
orl %esi, %r10d
vpinsrw $0x2, %r10d, %xmm0, %xmm0
movsbl 0x5d0(%rdi,%rdx), %esi
movsbl 0x5f0(%rdi,%r9), %r10d
addl %r10d, %esi
incl %esi
orl $0x1, %esi
movsbl 0x26(%rdi), %r10d
shlxl %r10d, %esi, %esi
shrl %esi
vpinsrw $0x4, %esi, %xmm0, %xmm0
movsbl 0x610(%rdi,%rdx), %edx
movsbl 0x630(%rdi,%r9), %esi
addl %esi, %edx
incl %edx
orl $0x1, %edx
shlxl %r10d, %edx, %edx
shrl %edx
vpinsrw $0x5, %edx, %xmm0, %xmm0
jmp 0xcc4c