// File: /workspace/github_c_makefile_star2_O1/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, %ebx
movq 0x680(%rdi), %r10
leal (%rsi,%rsi), %eax
movswl 0xb0(%r10,%rax,2), %eax
movq %rax, -0x28(%rsp)
movl %esi, %eax
movswl 0xb2(%r10,%rax,4), %eax
movl %eax, -0x4c(%rsp)
movl %esi, %edx
shrl $0x2, %edx
movl %esi, %eax
andl $0xf, %eax
movsbq 0x18(%r10,%rdx), %r8
movsbl 0x10(%r10,%rdx), %r11d
movslq %r11d, %r9
movq %rdx, %r14
xorq $0x4, %r14
movsbl 0x10(%r10,%r14), %r10d
movb 0x225(%rdi), %bpl
cmpb $0x1, %bpl
jne 0xf912
testb %r10b, %r10b
js 0xf9a1
cmpl $0x10, %esi
jb 0xf994
movl %r10d, %edx
movswl 0x410(%rdi,%rdx,2), %r10d
movswl 0x450(%rdi,%r9,2), %esi
movl %esi, %r11d
andl %r10d, %r11d
cmpl $0x80, %r11d
je 0x126ef
shll $0x8, %esi
movzbl %r10b, %r10d
orl %esi, %r10d
movsbl 0x590(%rdi,%rdx), %esi
movsbl 0x5b0(%rdi,%r9), %r11d
addl %r11d, %esi
incl %esi
orl $0x1, %esi
movsbl 0x25(%rdi), %r11d
shlxl %r11d, %esi, %esi
incl %r11d
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, %r11d, %xmm0, %xmm0
movswl 0x490(%rdi,%rdx,2), %r10d
movswl 0x4d0(%rdi,%r9,2), %esi
movl %esi, %r11d
andl %r10d, %r11d
cmpl $0x80, %r11d
je 0x1272c
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 0xfa71
addl $-0x4, %edx
orl %r10d, %edx
js 0xf994
testb %bpl, %bpl
je 0xfa69
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 0x126a8
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 0xfa71
vmovq 0x23ba4(%rip), %xmm2    # 0x33540
jmp 0xfa71
andl $0x4, %edx
leal (%r11,%rdx,8), %edx
movslq %edx, %rdx
movzwl 0x410(%rdi,%rdx,2), %esi
cmpw $0x7f, %si
jg 0x126e2
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 0xfa71
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 0xfa71
vmovdqa 0x23adf(%rip), %xmm2    # 0x33550
movq 0x60(%rdi,%r8,8), %rdx
movq %rdx, -0x58(%rsp)
movswl 0x654(%rdi), %r15d
movq -0x28(%rsp), %rsi
movl %esi, %edx
sarl $0x3, %edx
leal (%rdx,%r15,8), %r13d
shll $0x4, %r15d
leaq 0x23e84(%rip), %rdx     # 0x33920
movsbl (%rax,%rdx), %edx
movslq %edx, %r11
movl %esi, %edx
sarl $0x2, %edx
addl %r11d, %r15d
addl %edx, %r15d
movl %r11d, %edx
sarl %edx
addl %edx, %r13d
movswl 0x656(%rdi), %r14d
movl -0x4c(%rsp), %r10d
movl %r10d, %edx
sarl $0x3, %edx
leal (%rdx,%r14,8), %r8d
shll $0x4, %r14d
leaq 0x23e58(%rip), %rdx     # 0x33930
movsbl (%rax,%rdx), %eax
cltq
movl %r10d, %edx
sarl $0x2, %edx
addl %eax, %r14d
addl %edx, %r14d
movl %eax, %edx
sarl %edx
addl %edx, %r8d
movl %r8d, -0x50(%rsp)
movzwl 0x36(%rdi), %r8d
movq %r8, -0x40(%rsp)
shrl %r8d
xorl %edx, %edx
movl %esi, %ebp
andl $0x7, %ebp
sete %dl
andl $0x7, %r10d
movswl 0x30(%rdi), %esi
movq %rsi, -0x8(%rsp)
shll $0x4, %esi
leal (%r15,%rdx,2), %r12d
addl $-0x2, %r12d
leal (%rdx,%rdx,4), %edx
movq %rbx, -0x20(%rsp)
subl %ebx, %edx
leal (%rdx,%rsi), %ebx
addl $-0x4, %ebx
movzwl 0x34(%rdi), %edx
cmpl %ebx, %r12d
jae 0x123b2
xorl %ebx, %ebx
testl %r10d, %r10d
sete %bl
leal (%r14,%rbx,2), %r12d
addl $-0x2, %r12d
movswl 0x32(%rdi), %r9d
shll $0x4, %r9d
leal (%rbx,%rbx,4), %ebx
subl %ecx, %ebx
addl %ebx, %r9d
addl $-0x4, %r9d
cmpl %r9d, %r12d
jae 0x123b2
movl %edx, %esi
movslq %r13d, %r9
movq -0x58(%rsp), %r12
addq %r12, %r9
movslq -0x50(%rsp), %rbx
imulq -0x40(%rsp), %rbx
movslq 0x3c(%rdi), %r13
addq %r9, %r13
addq %rbx, %r13
movslq %r15d, %rbx
addq %r12, %rbx
movslq %r14d, %r9
imulq %rdx, %r9
addq %rbx, %r9
movl %eax, %edx
sarb %dl
movzwl 0x36(%rdi), %r15d
movsbq %dl, %rdx
imulq %r15, %rdx
addq 0x670(%rdi), %rdx
movl %r11d, %ebx
sarb %bl
movsbq %bl, %r12
addq %rdx, %r12
shrl %r15d
movl %ebp, %edx
shll $0x8, %edx
subl %ebp, %edx
addl $0x8, %edx
movl %r10d, %ebx
shll $0x10, %ebx
subl %r10d, %ebx
addl $0x8, %ebx
imull %edx, %ebx
vmovd %ebx, %xmm1
vpshufb 0x23971(%rip), %xmm2, %xmm7 # 0x33560
vpbroadcastw %xmm1, %xmm0
vpshufb 0x23973(%rip), %xmm1, %xmm1 # 0x33570
leaq (%r15,%r15,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 -0x20(%rsp), %r10
cmpl $0x8, %r10d
je 0xfd1e
cmpl $0x10, %r10d
jne 0xfe43
vmovdqu (%r13), %xmm5
vmovdqu (%r13,%r8), %xmm6
vmovdqa 0x2395c(%rip), %xmm4    # 0x33590
leaq (%r8,%r8,2), %rdx
vpshufb %xmm4, %xmm5, %xmm11
vpshufb %xmm4, %xmm6, %xmm10
addl %r8d, %r8d
vpshufb 0x23952(%rip), %xmm2, %xmm5 # 0x335a0
vpbroadcastd %xmm7, %xmm6
vpshufd $0x55, %xmm7, %xmm7     # xmm7 = xmm7[1,1,1,1]
vpshufb 0x2394f(%rip), %xmm2, %xmm8 # 0x335b0
leal (%r15,%r15), %r10d
vpxor %xmm9, %xmm9, %xmm9
movl %ecx, %ebp
vmovdqu (%r13,%r8), %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 (%r12,%r15), %xmm11
vmovq (%r12), %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, (%r12)
addq %r8, %r13
vpextrq $0x1, %xmm10, (%r12,%r15)
addq %r10, %r12
vmovdqa %xmm13, %xmm10
vmovdqa %xmm12, %xmm11
addl $-0x2, %ebp
jne 0xfc6c
jmp 0xff36
vmovq (%r13,%r8), %xmm4
vmovq (%r13), %xmm5
vpunpcklqdq %xmm4, %xmm5, %xmm4 # xmm4 = xmm5[0],xmm4[0]
vpshufb 0x23848(%rip), %xmm4, %xmm8 # 0x33580
leaq (%r13,%r8,2), %r13
vpshufd $0x50, %xmm7, %xmm4     # xmm4 = xmm7[0,0,1,1]
vpshufd $0xfa, %xmm7, %xmm5     # xmm5 = xmm7[2,2,3,3]
leal (,%r15,4), %r10d
vmovdqa 0x23829(%rip), %xmm6    # 0x33580
vpxor %xmm7, %xmm7, %xmm7
leaq (%r8,%r8), %r14
movl %ecx, %ebp
vmovq (%r13,%r8), %xmm9
vmovq (%r13), %xmm10
addq %r8, %r13
vpunpcklqdq %xmm9, %xmm10, %xmm9 # xmm9 = xmm10[0],xmm9[0]
vpshufb %xmm6, %xmm9, %xmm9
vmovq (%r8,%r13), %xmm10
addq %r8, %r13
vmovq (%r8,%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 (%r12), %xmm11
vpinsrd $0x1, (%r12,%r15), %xmm11, %xmm11
vpackuswb %xmm9, %xmm8, %xmm8
vpinsrd $0x2, (%r12,%r15,2), %xmm11, %xmm9
vpinsrd $0x3, (%r12,%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, (%r12)
vpextrd $0x1, %xmm8, (%r12,%r15)
vpextrd $0x2, %xmm8, (%r12,%r15,2)
vpextrd $0x3, %xmm8, (%r12,%rdx)
addq %r10, %r12
addq %r14, %r13
vmovdqa %xmm10, %xmm8
addl $-0x4, %ebp
jne 0xfd61
jmp 0xff36
vmovd (%r13,%r8), %xmm4
vmovd (%r13), %xmm5
vpunpckldq %xmm4, %xmm5, %xmm4 # xmm4 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]
vpshufb 0x23763(%rip), %xmm4, %xmm8 # 0x335c0
leaq (%r13,%r8,2), %r13
vpbroadcastq %xmm7, %xmm4
vpshufd $0xee, %xmm7, %xmm5     # xmm5 = xmm7[2,3,2,3]
leal (,%r15,4), %r10d
vmovdqa 0x23754(%rip), %xmm6    # 0x335d0
vpxor %xmm7, %xmm7, %xmm7
leaq (%r8,%r8), %r14
movl %ecx, %ebp
vmovd (%r13), %xmm9
vpinsrd $0x1, (%r13,%r8), %xmm9, %xmm9
addq %r8, %r13
vpinsrd $0x2, (%r8,%r13), %xmm9, %xmm9
addq %r8, %r13
vpinsrd $0x3, (%r8,%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 (%r12), %ebx
vmovd %ebx, %xmm11
vpinsrw $0x1, (%r12,%r15), %xmm11, %xmm11
vpinsrw $0x2, (%r12,%r15,2), %xmm11, %xmm11
vpaddw %xmm8, %xmm10, %xmm8
vpinsrw $0x3, (%r12,%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, (%r12)
vpextrw $0x1, %xmm8, (%r12,%r15)
vpextrw $0x2, %xmm8, (%r12,%r15,2)
vpextrw $0x3, %xmm8, (%r12,%rdx)
addq %r10, %r12
vpsrldq $0x8, %xmm9, %xmm8      # xmm8 = xmm9[8,9,10,11,12,13,14,15],zero,zero,zero,zero,zero,zero,zero,zero
addq %r14, %r13
addl $-0x4, %ebp
jne 0xfe86
movq -0x28(%rsp), %rbx
andl $0x3, %ebx
movzwl 0x34(%rdi), %r10d
movq 0x668(%rdi), %rdi
movq %r10, %r8
imulq %rax, %r8
leaq (%rdi,%r8), %r14
leaq (%r14,%r11), %r15
movq -0x20(%rsp), %rdx
andl $0x18, %edx
movl -0x4c(%rsp), %ebp
shll $0x2, %ebp
andl $0xc, %ebp
leal (%rbx,%rdx,2), %r12d
orl %ebp, %r12d
vpshufb 0x23664(%rip), %xmm2, %xmm24 # 0x335e0
vpbroadcastw %xmm2, %xmm25
vpshufb 0x23664(%rip), %xmm2, %xmm29 # 0x335f0
orl %ebx, %ebp
xorl %edx, %edx
movl $0xd888, %ebx           # imm = 0xD888
btl %ebp, %ebx
movl $0x0, %ebx
sbbl %ebx, %ebx
vpbroadcastb %ebx, %xmm4
movl $0xa504, %ebx           # imm = 0xA504
btl %ebp, %ebx
sbbl %edx, %edx
vpbroadcastb %edx, %xmm2
vmovdqa 0x23643(%rip), %xmm0    # 0x33600
vpsubb %xmm4, %xmm0, %xmm5
movq %rsi, %rbx
negq %rbx
leaq -0x2(%r9), %rdx
leaq 0x23a02(%rip), %r13     # 0x339d4
movslq (%r13,%r12,4), %r12
addq %r13, %r12
jmpq *%r12
vmovdqu (%rdx,%rbx,2), %xmm11
vmovdqu (%rdx,%rbx), %xmm10
vmovdqu (%rdx), %xmm4
vmovdqu (%rdx,%rsi), %xmm3
leal (%rsi,%rsi), %r14d
vmovdqu (%rdx,%r14), %xmm12
leal (,%rsi,4), %edx
leal (,%r10,4), %ebx
leaq (%r14,%r14,2), %r14
leaq (%rsi,%rsi,4), %r15
leaq (%rsi,%rsi,2), %rsi
addq %r11, %rdi
leaq 0x3(%rax), %r11
imulq %r10, %r11
leaq 0x2(%rax), %r12
imulq %r10, %r12
incq %rax
imulq %r10, %rax
vpbroadcastw 0x23991(%rip), %xmm17 # 0x339ca
vpbroadcastb 0x23989(%rip), %xmm19 # 0x339cc
vpbroadcastw 0x23981(%rip), %xmm23 # 0x339ce
vpbroadcastw 0x2397c(%rip), %xmm8 # 0x339d2
vmovdqa 0x23532(%rip), %xmm9    # 0x33590
vpshufb %xmm5, %xmm10, %xmm13
vmovdqu -0x2(%r9,%rsi), %xmm10
vpshufb %xmm5, %xmm11, %xmm18
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,%r14), %xmm12
vpshufb %xmm5, %xmm10, %xmm20
vpshufb %xmm5, %xmm0, %xmm21
vpshufb %xmm5, %xmm1, %xmm22
vpunpckldq %xmm13, %xmm18, %xmm18 # xmm18 = xmm18[0],xmm13[0],xmm18[1],xmm13[1]
vpunpckldq %xmm15, %xmm13, %xmm13 # xmm13 = xmm13[0],xmm15[0],xmm13[1],xmm15[1]
vpunpcklbw %xmm13, %xmm18, %xmm13 # xmm13 = xmm18[0],xmm13[0],xmm18[1],xmm13[1],xmm18[2],xmm13[2],xmm18[3],xmm13[3],xmm18[4],xmm13[4],xmm18[5],xmm13[5],xmm18[6],xmm13[6],xmm18[7],xmm13[7]
vpshufb %xmm5, %xmm12, %xmm18
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 %xmm18, %xmm22, %xmm18 # xmm18 = xmm22[0],xmm18[0],xmm22[1],xmm18[1]
vpunpcklbw %xmm18, %xmm16, %xmm16 # xmm16 = xmm16[0],xmm18[0],xmm16[1],xmm18[1],xmm16[2],xmm18[2],xmm16[3],xmm18[3],xmm16[4],xmm18[4],xmm16[5],xmm18[5],xmm16[6],xmm18[6],xmm16[7],xmm18[7]
vpmaddubsw %xmm17, %xmm13, %xmm13
vpmaddubsw %xmm19, %xmm15, %xmm18
vpaddw %xmm18, %xmm13, %xmm13
vpmaddubsw %xmm23, %xmm14, %xmm18
vpmaddubsw %xmm17, %xmm15, %xmm15
vpmaddubsw %xmm19, %xmm14, %xmm14
vpaddw %xmm14, %xmm15, %xmm14
vpmaddubsw %xmm23, %xmm16, %xmm15
vpaddw %xmm8, %xmm13, %xmm13
vpaddw %xmm18, %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 %xmm17, %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 %xmm17, %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,%r11), %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,%r11)
addq %rbx, %rdi
vmovdqa %xmm1, %xmm3
vmovdqa %xmm0, %xmm4
addl $-0x4, %ecx
jne 0x1005e
jmp 0x123a4
vmovdqu -0x2(%r9,%rbx,2), %xmm0
vmovdqu 0x6(%r9,%rbx,2), %xmm1
vpshufb %xmm5, %xmm0, %xmm4
vmovdqu -0x2(%r9,%rbx), %xmm0
vpshufb %xmm5, %xmm1, %xmm16
vmovdqu 0x6(%r9,%rbx), %xmm1
vpshufb %xmm5, %xmm0, %xmm19
vmovdqu -0x2(%r9), %xmm6
vmovdqu 0x6(%r9), %xmm12
vmovdqu64 -0x2(%r9,%rsi), %xmm21
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 0x236e6(%rip), %xmm8 # 0x339ca
vpbroadcastb 0x236df(%rip), %xmm9 # 0x339cc
vpbroadcastw 0x236d8(%rip), %xmm10 # 0x339ce
vpbroadcastw 0x236d3(%rip), %xmm11 # 0x339d2
vmovdqa64 0x23287(%rip), %xmm23 # 0x33590
vmovdqa64 %xmm19, %xmm20
vmovdqa %xmm14, %xmm3
vmovdqa64 %xmm21, %xmm13
vmovdqa64 %xmm18, %xmm15
vpshufb %xmm5, %xmm21, %xmm22
vpblendvb %xmm2, %xmm13, %xmm6, %xmm0
vmovdqa64 %xmm17, %xmm21
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 %xmm13, %xmm6
vmovdqa64 %xmm3, %xmm16
vmovdqa64 %xmm20, %xmm4
vpshufb %xmm5, %xmm21, %xmm3
vpshufb %xmm5, %xmm17, %xmm13
vpunpcklbw %xmm13, %xmm3, %xmm3 # xmm3 = xmm3[0],xmm13[0],xmm3[1],xmm13[1],xmm3[2],xmm13[2],xmm3[3],xmm13[3],xmm3[4],xmm13[4],xmm3[5],xmm13[5],xmm3[6],xmm13[6],xmm3[7],xmm13[7]
vpunpcklbw %xmm22, %xmm19, %xmm13 # xmm13 = 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, %xmm13, %xmm13
vpaddw %xmm13, %xmm15, %xmm13
vpmaddubsw %xmm10, %xmm3, %xmm3
vpshufb %xmm5, %xmm18, %xmm15
vpshufb %xmm5, %xmm7, %xmm20
vpunpcklbw %xmm20, %xmm15, %xmm15 # xmm15 = xmm15[0],xmm20[0],xmm15[1],xmm20[1],xmm15[2],xmm20[2],xmm15[3],xmm20[3],xmm15[4],xmm20[4],xmm15[5],xmm20[5],xmm15[6],xmm20[6],xmm15[7],xmm20[7]
vpunpcklbw %xmm27, %xmm14, %xmm20 # xmm20 = 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, %xmm20, %xmm20
vpaddw %xmm20, %xmm22, %xmm20
vpmaddubsw %xmm10, %xmm15, %xmm15
vpaddw %xmm11, %xmm13, %xmm13
vpaddw %xmm3, %xmm13, %xmm3
vpsraw $0x5, %xmm3, %xmm3
vpaddw %xmm11, %xmm20, %xmm13
vpaddw %xmm15, %xmm13, %xmm13
vpsraw $0x5, %xmm13, %xmm13
vpackuswb %xmm13, %xmm3, %xmm3
vpsrldq $0x1, %xmm1, %xmm13     # xmm13 = xmm1[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],zero
vpshufb %xmm23, %xmm0, %xmm0
vpunpcklbw %xmm13, %xmm1, %xmm15 # xmm15 = xmm1[0],xmm13[0],xmm1[1],xmm13[1],xmm1[2],xmm13[2],xmm1[3],xmm13[3],xmm1[4],xmm13[4],xmm1[5],xmm13[5],xmm1[6],xmm13[6],xmm1[7],xmm13[7]
vpunpckhbw %xmm13, %xmm1, %xmm1 # xmm1 = xmm1[8],xmm13[8],xmm1[9],xmm13[9],xmm1[10],xmm13[10],xmm1[11],xmm13[11],xmm1[12],xmm13[12],xmm1[13],xmm13[13],xmm1[14],xmm13[14],xmm1[15],xmm13[15]
vpmaddubsw %xmm8, %xmm0, %xmm13
valignd $0x1, %xmm0, %xmm15, %xmm20 # xmm20 = xmm0[1,2,3],xmm15[0]
vpmaddubsw %xmm9, %xmm20, %xmm20
vpaddw %xmm20, %xmm13, %xmm13
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 %xmm10, %xmm0, %xmm0
vpmaddubsw %xmm8, %xmm15, %xmm20
valignd $0x1, %xmm15, %xmm1, %xmm22 # xmm22 = xmm15[1,2,3],xmm1[0]
vpmaddubsw %xmm9, %xmm22, %xmm22
vpaddw %xmm22, %xmm20, %xmm20
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 %xmm10, %xmm1, %xmm1
vpaddw %xmm0, %xmm11, %xmm0
vpaddw %xmm0, %xmm13, %xmm0
vpsraw $0x5, %xmm0, %xmm0
vpaddw %xmm1, %xmm11, %xmm1
vpaddw %xmm1, %xmm20, %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 0x10309
jmp 0x123a4
vmovdqu (%rdx,%rbx,2), %xmm0
vpshufb %xmm5, %xmm0, %xmm10
vmovdqu (%rdx,%rbx), %xmm0
vpshufb %xmm5, %xmm0, %xmm12
vmovdqu (%rdx), %xmm9
vmovdqu (%rdx,%rsi), %xmm13
leal (%rsi,%rsi), %r9d
vmovdqu (%rdx,%r9), %xmm11
leal (%r10,%r10), %ebx
leaq (%rsi,%rsi,2), %r14
addq %r11, %rdi
incq %rax
imulq %r10, %rax
vpbroadcastw 0x234bf(%rip), %xmm4 # 0x339ca
vpbroadcastb 0x234b8(%rip), %xmm6 # 0x339cc
vpbroadcastw 0x234b1(%rip), %xmm7 # 0x339ce
vpbroadcastw 0x234ac(%rip), %xmm8 # 0x339d2
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,%r14), %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 %rbx, %rdi
addl $-0x2, %ecx
jne 0x10526
jmp 0x123a4
addq $0x6, %r9
vmovdqa 0x22ed4(%rip), %xmm0    # 0x33590
vpbroadcastw 0x23305(%rip), %xmm1 # 0x339ca
vpbroadcastb 0x232fe(%rip), %xmm3 # 0x339cc
vpbroadcastw 0x232f7(%rip), %xmm4 # 0x339ce
vpbroadcastw 0x232f2(%rip), %xmm6 # 0x339d2
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 0x106e0
jmp 0x123a4
vmovdqu (%r9,%rbx,2), %xmm0
vmovdqu (%r9,%rbx), %xmm11
vmovdqu (%r9), %xmm5
vmovdqu (%r9,%rsi), %xmm3
vmovdqu (%r9,%rsi,2), %xmm6
leaq (%rsi,%rsi,2), %rax
addq %r9, %rax
vpbroadcastw 0x231d4(%rip), %xmm7 # 0x339ca
vpbroadcastb 0x231cd(%rip), %xmm8 # 0x339cc
vpbroadcastw 0x231c6(%rip), %xmm9 # 0x339ce
vpbroadcastw 0x231c1(%rip), %xmm10 # 0x339d2
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 %xmm3, %xmm5
vmovdqa %xmm6, %xmm3
vmovdqu (%rax), %xmm6
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 %xmm6, %xmm3, %xmm14 # xmm14 = xmm3[0],xmm6[0],xmm3[1],xmm6[1],xmm3[2],xmm6[2],xmm3[3],xmm6[3],xmm3[4],xmm6[4],xmm3[5],xmm6[5],xmm3[6],xmm6[6],xmm3[7],xmm6[7]
vpmaddubsw %xmm7, %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 %xmm6, %xmm3, %xmm14 # xmm14 = xmm3[8],xmm6[8],xmm3[9],xmm6[9],xmm3[10],xmm6[10],xmm3[11],xmm6[11],xmm3[12],xmm6[12],xmm3[13],xmm6[13],xmm3[14],xmm6[14],xmm3[15],xmm6[15]
vpmaddubsw %xmm7, %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 0x10811
jmp 0x123a4
vmovupd (%rdx,%rbx,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 0x230ba(%rip), %xmm5 # 0x339ca
vpmaddubsw %xmm5, %xmm3, %xmm3
vpbroadcastb 0x230ae(%rip), %xmm6 # 0x339cc
vpmaddubsw %xmm6, %xmm1, %xmm1
vpaddw %xmm3, %xmm1, %xmm1
vpbroadcastw 0x2309e(%rip), %xmm7 # 0x339ce
vpmaddubsw %xmm7, %xmm0, %xmm0
vpaddw %xmm0, %xmm1, %xmm10
vmovupd (%rdx,%rbx), %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), %ebx
leaq (%rsi,%rsi,2), %r14
addq %r11, %rdi
incq %rax
imulq %r10, %rax
vpbroadcastw 0x22fa4(%rip), %xmm12 # 0x339d0
vpbroadcastw 0x22f9d(%rip), %xmm13 # 0x339d2
vmovdqa %xmm8, %xmm0
vmovdqa %xmm9, %xmm1
vmovdqa %xmm3, %xmm8
vmovupd (%rdx,%r14), %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 %rbx, %rdi
vmovdqa %xmm1, %xmm11
vmovdqa %xmm0, %xmm10
addl $-0x2, %ecx
jne 0x10a35
jmp 0x123a4
vmovq (%r9,%rbx,2), %xmm0
vmovq (%r9,%rbx), %xmm11
vmovq (%r9), %xmm10
vmovq (%r9,%rsi), %xmm7
leal (%rsi,%rsi), %edx
vmovq (%r9,%rdx), %xmm3
leal (%r10,%r10), %ebx
addq %r11, %rdi
incq %rax
imulq %r10, %rax
leaq (%rsi,%rsi,2), %r10
vpbroadcastw 0x22dca(%rip), %xmm5 # 0x339ca
vpbroadcastb 0x22dc3(%rip), %xmm6 # 0x339cc
vpbroadcastw 0x22dbc(%rip), %xmm8 # 0x339ce
vpbroadcastw 0x22db7(%rip), %xmm9 # 0x339d2
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 %rbx, %rdi
addl $-0x2, %ecx
jne 0x10c1b
jmp 0x123a4
vmovd (%r9,%rbx,2), %xmm0
vpinsrd $0x1, (%r9,%rbx), %xmm0, %xmm0
vpinsrd $0x2, (%r9), %xmm0, %xmm0
vpinsrd $0x3, (%r9,%rsi), %xmm0, %xmm0
leal (%rsi,%rsi), %r12d
vmovd (%r9,%r12), %xmm1
vpalignr $0x4, %xmm0, %xmm1, %xmm1 # xmm1 = xmm0[4,5,6,7,8,9,10,11,12,13,14,15],xmm1[0,1,2,3]
leal (,%rsi,4), %edx
leal (,%r10,4), %r8d
leaq 0x3(%rax), %rbx
imulq %r10, %rbx
addq %rdi, %rbx
leaq 0x2(%rax), %r15
imulq %r10, %r15
addq %rdi, %r15
incq %rax
imulq %r10, %rax
addq %rdi, %rax
leaq (%r12,%r12,2), %rdi
leaq (%rsi,%rsi,4), %r10
leaq (%rsi,%rsi,2), %rsi
vpbroadcastw 0x22c4b(%rip), %xmm3 # 0x339ca
vpbroadcastb 0x22c44(%rip), %xmm5 # 0x339cc
vpbroadcastw 0x22c3d(%rip), %xmm6 # 0x339ce
vpbroadcastw 0x22c38(%rip), %xmm7 # 0x339d2
vmovd (%r9,%rsi), %xmm8
vpinsrd $0x1, (%r9,%rdx), %xmm8, %xmm8
vpinsrd $0x2, (%r9,%r10), %xmm8, %xmm8
vpinsrd $0x3, (%r9,%rdi), %xmm8, %xmm8
vpalignr $0x4, %xmm1, %xmm8, %xmm9 # xmm9 = xmm1[4,5,6,7,8,9,10,11,12,13,14,15],xmm8[0,1,2,3]
vpalignr $0x8, %xmm1, %xmm8, %xmm10 # xmm10 = xmm1[8,9,10,11,12,13,14,15],xmm8[0,1,2,3,4,5,6,7]
vpunpcklbw %xmm1, %xmm0, %xmm0 # xmm0 = 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]
vpalignr $0xc, %xmm1, %xmm8, %xmm11 # xmm11 = xmm1[12,13,14,15],xmm8[0,1,2,3,4,5,6,7,8,9,10,11]
vpunpcklbw %xmm10, %xmm9, %xmm1 # xmm1 = 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, %xmm0, %xmm0
vpmaddubsw %xmm5, %xmm1, %xmm14
vpaddw %xmm0, %xmm14, %xmm0
vpmaddubsw %xmm6, %xmm12, %xmm14
vpmaddubsw %xmm3, %xmm1, %xmm1
vpmaddubsw %xmm5, %xmm12, %xmm12
vpaddw %xmm1, %xmm12, %xmm1
vpmaddubsw %xmm6, %xmm13, %xmm12
vpaddw %xmm7, %xmm14, %xmm13
vpaddw %xmm0, %xmm13, %xmm0
vpsraw $0x5, %xmm0, %xmm0
vpaddw %xmm7, %xmm12, %xmm12
vpaddw %xmm1, %xmm12, %xmm1
vpsraw $0x5, %xmm1, %xmm1
vpackuswb %xmm1, %xmm0, %xmm0
vpblendvb %xmm4, %xmm10, %xmm9, %xmm1
vpblendvb %xmm2, %xmm0, %xmm1, %xmm1
vmovd (%r14,%r11), %xmm9
vpinsrd $0x1, (%rax,%r11), %xmm9, %xmm9
vpinsrd $0x2, (%r15,%r11), %xmm9, %xmm9
vpinsrd $0x3, (%rbx,%r11), %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, (%r14,%r11)
vpextrd $0x1, %xmm0, (%rax,%r11)
vpextrd $0x2, %xmm0, (%r15,%r11)
vpextrd $0x3, %xmm0, (%rbx,%r11)
addq %rdx, %r9
addq %r8, %r14
addq %r8, %rbx
addq %r8, %r15
addq %r8, %rax
vmovdqa %xmm8, %xmm1
vmovdqa %xmm11, %xmm0
addl $-0x4, %ecx
jne 0x10d9a
jmp 0x123a4
vmovdqu (%rdx,%rbx,2), %xmm0
vmovdqu (%rdx,%rbx), %xmm1
vmovdqu (%rdx), %xmm9
vmovdqu (%rdx,%rsi), %xmm10
leal (%rsi,%rsi), %r14d
vmovdqu (%rdx,%r14), %xmm11
vmovdqa 0x226b2(%rip), %xmm5    # 0x33590
vpshufb %xmm5, %xmm0, %xmm0
vpshufb %xmm5, %xmm1, %xmm1
vpunpcklqdq %xmm1, %xmm0, %xmm3 # xmm3 = xmm0[0],xmm1[0]
vpbroadcastw 0x22ad5(%rip), %xmm6 # 0x339ca
vpmaddubsw %xmm6, %xmm3, %xmm3
vshufps $0x99, %xmm1, %xmm0, %xmm8 # xmm8 = xmm0[1,2],xmm1[1,2]
vpbroadcastb 0x22ac4(%rip), %xmm7 # 0x339cc
vpmaddubsw %xmm7, %xmm8, %xmm8
vpaddw %xmm3, %xmm8, %xmm3
vpunpckhqdq %xmm1, %xmm0, %xmm0 # xmm0 = xmm0[1],xmm1[1]
vpbroadcastw 0x22ab0(%rip), %xmm8 # 0x339ce
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), %ebx
leaq (%r14,%r14,2), %r14
leaq (%rsi,%rsi,4), %r15
leaq (%rsi,%rsi,2), %rsi
addq %r11, %rdi
leaq 0x3(%rax), %r11
imulq %r10, %r11
leaq 0x2(%rax), %r12
imulq %r10, %r12
incq %rax
imulq %r10, %rax
vpbroadcastw 0x22a12(%rip), %xmm9 # 0x339d0
vpbroadcastw 0x22a0b(%rip), %xmm10 # 0x339d2
vmovdqu -0x2(%r9,%rsi), %xmm0
vmovdqu -0x2(%r9,%rdx), %xmm1
vmovdqu -0x2(%r9,%r15), %xmm13
vmovdqu -0x2(%r9,%r14), %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,%r11), %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,%r11)
addq %rbx, %rdi
vmovdqa %xmm0, %xmm11
vmovdqa64 %xmm17, %xmm12
addl $-0x4, %ecx
jne 0x10fc7
jmp 0x123a4
leal (%rsi,%rsi), %r9d
leal (%r10,%r10), %ebx
addq %r11, %rdi
incq %rax
imulq %r10, %rax
vpbroadcastw 0x22827(%rip), %xmm0 # 0x339ca
vpbroadcastb 0x22820(%rip), %xmm1 # 0x339cc
vpbroadcastw 0x22819(%rip), %xmm3 # 0x339ce
vpbroadcastw 0x22814(%rip), %xmm4 # 0x339d2
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 %rbx, %rdi
addl $-0x2, %ecx
jne 0x111be
jmp 0x123a4
leal (,%r10,4), %r9d
addq %r11, %rdi
leaq 0x3(%rax), %r11
imulq %r10, %r11
leaq 0x2(%rax), %rbx
imulq %r10, %rbx
incq %rax
imulq %r10, %rax
vmovdqa 0x222a9(%rip), %xmm0    # 0x33590
vpbroadcastw 0x226da(%rip), %xmm3 # 0x339ca
vpbroadcastb 0x226d3(%rip), %xmm1 # 0x339cc
vpbroadcastw 0x226cc(%rip), %xmm4 # 0x339ce
vpbroadcastw 0x226c7(%rip), %xmm6 # 0x339d2
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 0x11315
jmp 0x123a4
vmovdqu -0x2(%r9,%rbx,2), %xmm0
vmovupd 0x6(%r9,%rbx,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 0x22128(%rip), %xmm3    # 0x33590
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 0x2254b(%rip), %xmm26 # 0x339ca
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 0x22538(%rip), %xmm6 # 0x339cc
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 0x22522(%rip), %xmm7 # 0x339ce
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,%rbx), %xmm8
vpaddw %xmm1, %xmm0, %xmm13
vmovupd 0x6(%r9,%rbx), %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 0x21ee3(%rip), %xmm16 # 0x33590
vpbroadcastw 0x22319(%rip), %xmm17 # 0x339d0
vpbroadcastw 0x22311(%rip), %xmm18 # 0x339d2
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 0x116c1
jmp 0x123a4
vmovdqu -0x2(%r9,%rbx,2), %xmm3
vmovq 0xe(%r9,%rbx,2), %xmm14
vmovdqu64 -0x2(%r9,%rbx), %xmm18
vmovq 0xe(%r9,%rbx), %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 0x220f8(%rip), %xmm26 # 0x339ca
vpbroadcastb 0x220f0(%rip), %xmm27 # 0x339cc
vpbroadcastw 0x220e9(%rip), %xmm11 # 0x339ce
vpbroadcastw 0x220e1(%rip), %xmm22 # 0x339d0
vpbroadcastw 0x220d9(%rip), %xmm23 # 0x339d2
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 0x118f9
jmp 0x123a4
vmovdqu (%rdx,%rbx,2), %xmm13
vmovdqu (%rdx,%rbx), %xmm10
vmovdqu (%rdx), %xmm0
vmovdqu (%rdx,%rsi), %xmm12
leal (%rsi,%rsi), %r14d
vmovdqu (%rdx,%r14), %xmm14
leal (,%rsi,4), %edx
leal (,%r10,4), %ebx
leaq (%r14,%r14,2), %r14
leaq (%rsi,%rsi,4), %r15
leaq (%rsi,%rsi,2), %rsi
addq %r11, %rdi
leaq 0x3(%rax), %r11
imulq %r10, %r11
leaq 0x2(%rax), %r12
imulq %r10, %r12
incq %rax
imulq %r10, %rax
vmovdqa64 0x21aa1(%rip), %xmm27 # 0x33610
vpbroadcastw 0x21e51(%rip), %xmm30 # 0x339ca
vpbroadcastb 0x21e49(%rip), %xmm31 # 0x339cc
vpbroadcastw 0x21e42(%rip), %xmm7 # 0x339ce
vpbroadcastw 0x21e3a(%rip), %xmm28 # 0x339d0
vpbroadcastw 0x21e33(%rip), %xmm2 # 0x339d2
vpunpckhbw %xmm10, %xmm13, %xmm20 # xmm20 = 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, %xmm19 # xmm19 = 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]
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 %xmm14, %xmm12, %xmm15 # xmm15 = xmm12[0],xmm14[0],xmm12[1],xmm14[1],xmm12[2],xmm14[2],xmm12[3],xmm14[3],xmm12[4],xmm14[4],xmm12[5],xmm14[5],xmm12[6],xmm14[6],xmm12[7],xmm14[7]
vmovdqu -0x2(%r9,%r15), %xmm12
vpunpckhbw %xmm10, %xmm14, %xmm22 # xmm22 = 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, %xmm18 # xmm18 = 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]
vmovdqa %xmm14, %xmm13
vmovdqu -0x2(%r9,%r14), %xmm14
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, %xmm14, %xmm0, %xmm0 # xmm0 = xmm14[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 %xmm14, %xmm12, %xmm21 # xmm21 = xmm12[0],xmm14[0],xmm12[1],xmm14[1],xmm12[2],xmm14[2],xmm12[3],xmm14[3],xmm12[4],xmm14[4],xmm12[5],xmm14[5],xmm12[6],xmm14[6],xmm12[7],xmm14[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,%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,%r12)
addq %rdx, %r9
vpextrd $0x3, %xmm0, (%rdi,%r11)
addq %rbx, %rdi
vmovdqa %xmm11, %xmm0
addl $-0x4, %ecx
jne 0x11b9f
jmp 0x123a4
vmovdqu (%rdx,%rbx,2), %xmm12
vmovdqu (%rdx,%rbx), %xmm10
vmovdqu (%rdx), %xmm13
vmovdqu (%rdx,%rsi), %xmm11
leal (%rsi,%rsi), %r9d
vmovdqu (%rdx,%r9), %xmm3
leal (%r10,%r10), %ebx
leaq (%rsi,%rsi,2), %r14
addq %r11, %rdi
incq %rax
imulq %r10, %rax
vpbroadcastw 0x21b2b(%rip), %xmm23 # 0x339ca
vpbroadcastb 0x21b24(%rip), %xmm6 # 0x339cc
vpbroadcastw 0x21b1d(%rip), %xmm7 # 0x339ce
vpbroadcastw 0x21b15(%rip), %xmm21 # 0x339d0
vpbroadcastw 0x21b0d(%rip), %xmm22 # 0x339d2
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,%r14), %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 %rbx, %rdi
addl $-0x2, %ecx
jne 0x11ec5
jmp 0x123a4
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 0x120d6
jmp 0x123a4
leal (,%r10,4), %edx
addq %r11, %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 0x12227
jmp 0x123a4
leal (,%r10,4), %edx
addq %r11, %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 0x122e7
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
vzeroupper
retq
leal -0x2(%r15), %ebx
movl %ebx, -0x2c(%rsp)
cmpl $-0xe, %ebx
movl $0xfffffff1, %r12d      # imm = 0xFFFFFFF1
movl $0xfffffff1, %r9d       # imm = 0xFFFFFFF1
cmovgel %ebx, %r9d
movl %r9d, -0x34(%rsp)
leal 0xe(%r15), %r9d
movl %r9d, -0x48(%rsp)
subl %esi, %r9d
movl %r9d, %ebx
sarl $0x1f, %ebx
andnl %r9d, %ebx, %r9d
movl $0xf, %ebx
cmpl %ebx, %r9d
cmovgel %ebx, %r9d
movq %r9, -0x18(%rsp)
movl -0x48(%rsp), %r9d
cmpl $-0xe, %r9d
cmovgel %r9d, %r12d
movl %r12d, -0x30(%rsp)
subl %esi, %r15d
addl $0x1e, %r15d
movl %r15d, %r9d
sarl $0x1f, %r9d
andnl %r15d, %r9d, %r9d
cmpl %ebx, %r9d
cmovll %r9d, %ebx
movq %rbx, -0x10(%rsp)
addl $-0x10, %esi
movl -0x2c(%rsp), %ebx
movl %ebx, %r9d
sarl $0x1f, %r9d
andnl %ebx, %r9d, %r15d
cmpl %esi, %r15d
cmovgel %esi, %r15d
movl -0x48(%rsp), %ebx
movl %ebx, %r9d
sarl $0x1f, %r9d
andnl %ebx, %r9d, %r9d
cmpl %esi, %r9d
cmovll %r9d, %esi
cmpl $-0x4, %ecx
jl 0x12539
movl -0x34(%rsp), %ebx
movl %ebx, %r9d
sarl $0x1f, %r9d
andl %ebx, %r9d
movslq %r9d, %r9
leaq 0x23f03(%rip), %r12     # 0x36380
addq %r12, %r9
addq $0xf, %r9
movq -0x18(%rsp), %rbx
vmovdqu (%rbx,%r9), %xmm0
movl -0x30(%rsp), %ebx
movl %ebx, %r9d
sarl $0x1f, %r9d
andl %ebx, %r9d
movslq %r9d, %r9
addq %r12, %r9
addq $0xf, %r9
movq -0x10(%rsp), %rbx
vmovdqu (%rbx,%r9), %xmm1
movslq %r15d, %rbx
movq -0x58(%rsp), %r9
addq %r9, %rbx
movq %rbx, -0x48(%rsp)
movslq %esi, %r12
addq %r9, %r12
leaq 0x1230(%rdi), %r15
leal (%rcx,%rcx), %esi
movslq %esi, %rsi
shlq $0x4, %rsi
addq %rdi, %rsi
addq $0x12d0, %rsi           # imm = 0x12D0
addl $-0x2, %r14d
imull %edx, %r14d
movl 0x3c(%rdi), %r9d
subl %edx, %r9d
movl %r14d, %ebx
sarl $0x1f, %ebx
andnl %r14d, %ebx, %ebx
cmpl %r9d, %ebx
cmovll %ebx, %r9d
movslq %r9d, %r9
movq -0x48(%rsp), %rbx
vmovdqu (%rbx,%r9), %xmm3
vpshufb %xmm0, %xmm3, %xmm3
vmovdqa %xmm3, (%r15)
vmovdqu (%r12,%r9), %xmm3
vpshufb %xmm1, %xmm3, %xmm3
vmovdqa %xmm3, 0x10(%r15)
addq $0x20, %r15
addl %edx, %r14d
cmpq %rsi, %r15
jb 0x124eb
leal 0x8(%r13), %r14d
movq -0x8(%rsp), %r15
leal -0x8(,%r15,8), %edx
movl %r13d, %esi
sarl $0x1f, %esi
andnl %r13d, %esi, %esi
cmpl %edx, %esi
cmovll %esi, %edx
leal -0x1(,%r15,8), %esi
movl %r14d, %r9d
sarl $0x1f, %r9d
andnl %r14d, %r9d, %r9d
cmpl %esi, %r9d
cmovll %r9d, %esi
movl %ecx, %r12d
sarl %r12d
js 0x1268a
shll $0x3, %r15d
movslq %edx, %rdx
movq -0x58(%rsp), %r9
addq %r9, %rdx
movslq %esi, %rsi
addq %r9, %rsi
cmpl $-0x6, %r13d
movl $0xfffffff9, %r9d       # imm = 0xFFFFFFF9
cmovgel %r13d, %r9d
movl %r9d, %ebx
sarl $0x1f, %ebx
andl %r9d, %ebx
movslq %ebx, %r9
leaq 0x23df9(%rip), %rbx     # 0x363b0
addq %r9, %rbx
subl %r15d, %r14d
movl %r14d, %r9d
sarl $0x1f, %r9d
andnl %r14d, %r9d, %r9d
cmpl $0x7, %r9d
movl $0x7, %r14d
cmovll %r9d, %r14d
movl -0x50(%rsp), %r9d
vmovq 0x7(%r14,%rbx), %xmm0
movslq 0x3c(%rdi), %rbx
movq %rbx, -0x58(%rsp)
movl 0x40(%rdi), %r15d
movq -0x40(%rsp), %rbx
andl $-0x2, %ebx
movq %rbx, -0x40(%rsp)
subl %ebx, %r15d
movl %r12d, %r12d
shlq $0x5, %r12
addq $0x20, %r12
imull %r8d, %r9d
addl %r9d, %r9d
xorl %r13d, %r13d
movl %r9d, %r14d
sarl $0x1f, %r9d
andnl %r14d, %r9d, %r9d
cmpl %r15d, %r9d
cmovgel %r15d, %r9d
movslq %r9d, %r9
addq -0x58(%rsp), %r9
vmovq (%rdx,%r9), %xmm1
leal (%r9,%r8), %ebx
vpshufb %xmm0, %xmm1, %xmm1
vmovq %xmm1, 0x14d0(%rdi,%r13)
movb (%rsi,%r9), %r9b
movb %r9b, 0x14d8(%rdi,%r13)
movslq %ebx, %r9
vmovq (%rdx,%r9), %xmm1
vpshufb %xmm0, %xmm1, %xmm1
vmovq %xmm1, 0x14e0(%rdi,%r13)
movb (%rsi,%r9), %r9b
movb %r9b, 0x14e8(%rdi,%r13)
movl %r14d, %r9d
addq $0x20, %r13
addl -0x40(%rsp), %r9d
cmpq %r13, %r12
jne 0x12615
leaq 0x1272(%rdi), %r9
leaq 0x14d0(%rdi), %r13
movl $0x20, %esi
movl $0x10, %r8d
jmp 0xfba2
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 0xf985
vmovq 0x20e56(%rip), %xmm2    # 0x33540
jmp 0xfa00
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), %r11d
addl %r11d, %esi
incl %esi
orl $0x1, %esi
movsbl 0x25(%rdi), %r11d
shlxl %r11d, %esi, %esi
shrl %esi
jmp 0xf845
shll $0x7, %esi
andl $0xff00, %esi           # imm = 0xFF00
shrl %r10d
movl $0xff, %r11d
andl %r11d, %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 %r11d, %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 0xf907