// File: /workspace/github_c_makefile_star2_O0/tvlabs[P]edge264/./edge264_headers.c
// Function: initialize_task
static void initialize_task(Edge264Decoder *dec, Edge264SeqParameterSet *sps, Edge264Task *t)
{
	// set task pointer to current pointer and current pointer to next start code
	t->_gb = dec->_gb;
	if (dec->n_threads) {
		t->_gb.end = edge264_find_start_code(dec->_gb.CPB - 2, dec->_gb.end, 0); // works if CPB already crossed end
		dec->_gb.CPB = t->_gb.end + 2;
	}
	
	// copy most essential fields from dec
	t->ChromaArrayType = sps->ChromaArrayType;
	t->direct_8x8_inference_flag = sps->direct_8x8_inference_flag;
	t->pic_width_in_mbs = sps->pic_width_in_mbs;
	t->pic_height_in_mbs = sps->pic_height_in_mbs;
	if (t->pps.pic_scaling_matrix_present_flag) {
		t->pps.weightScale4x4_v[0] = ifelse_mask(t->pps.weightScale4x4_v[0] == 0, sps->weightScale4x4_v[0], t->pps.weightScale4x4_v[0]);
		t->pps.weightScale4x4_v[1] = ifelse_mask(t->pps.weightScale4x4_v[1] == 0, sps->weightScale4x4_v[0], t->pps.weightScale4x4_v[1]);
		t->pps.weightScale4x4_v[2] = ifelse_mask(t->pps.weightScale4x4_v[2] == 0, sps->weightScale4x4_v[0], t->pps.weightScale4x4_v[2]);
		t->pps.weightScale4x4_v[3] = ifelse_mask(t->pps.weightScale4x4_v[3] == 0, sps->weightScale4x4_v[3], t->pps.weightScale4x4_v[3]);
		t->pps.weightScale4x4_v[4] = ifelse_mask(t->pps.weightScale4x4_v[4] == 0, sps->weightScale4x4_v[3], t->pps.weightScale4x4_v[4]);
		t->pps.weightScale4x4_v[5] = ifelse_mask(t->pps.weightScale4x4_v[5] == 0, sps->weightScale4x4_v[3], t->pps.weightScale4x4_v[5]);
		for (unsigned i = 0; i < 24; i++)
			t->pps.weightScale8x8_v[i] = ifelse_mask(t->pps.weightScale8x8_v[i] == 0, sps->weightScale8x8_v[i & 7], t->pps.weightScale8x8_v[i]);
	} else {
		memcpy(t->pps.weightScale4x4_v, sps->weightScale4x4_v, 96);
		memcpy(t->pps.weightScale8x8_v, sps->weightScale8x8_v, 384);
	}
	t->frame_flip_bit = dec->frame_flip_bits >> dec->currPic & 1;
	t->stride[0] = dec->out.stride_Y;
	t->stride[1] = t->stride[2] = dec->out.stride_C;
	t->plane_size_Y = dec->plane_size_Y;
	t->plane_size_C = dec->plane_size_C;
	t->next_deblock_idc = (dec->next_deblock_addr[dec->currPic] == t->first_mb_in_slice &&
		dec->nal_ref_idc) ? dec->currPic : -1;
	t->next_deblock_addr = (dec->next_deblock_addr[dec->currPic] == t->first_mb_in_slice ||
		t->disable_deblocking_filter_idc == 2) ? t->first_mb_in_slice : INT_MIN;
	t->long_term_flags = dec->long_term_flags;
	t->samples_base = dec->frame_buffers[dec->currPic];
	t->samples_clip_v[0] = set16((1 << sps->BitDepth_Y) - 1);
	t->samples_clip_v[1] = t->samples_clip_v[2] = set16((1 << sps->BitDepth_C) - 1);
	
	// P/B slices
	if (t->slice_type < 2) {
		memcpy(t->frame_buffers, dec->frame_buffers, sizeof(t->frame_buffers));
		if (t->slice_type == 1 && (t->pps.weighted_bipred_idc == 2 || !t->direct_spatial_mv_pred_flag)) {
			u32x4 poc = set32(minw(dec->TopFieldOrderCnt, dec->BottomFieldOrderCnt));
			t->diff_poc_v[0] = packs32(poc - minw32(dec->FieldOrderCnt_v[0][0], dec->FieldOrderCnt_v[1][0]),
			                           poc - minw32(dec->FieldOrderCnt_v[0][1], dec->FieldOrderCnt_v[1][1]));
			t->diff_poc_v[1] = packs32(poc - minw32(dec->FieldOrderCnt_v[0][2], dec->FieldOrderCnt_v[1][2]),
			                           poc - minw32(dec->FieldOrderCnt_v[0][3], dec->FieldOrderCnt_v[1][3]));
			t->diff_poc_v[2] = packs32(poc - minw32(dec->FieldOrderCnt_v[0][4], dec->FieldOrderCnt_v[1][4]),
			                           poc - minw32(dec->FieldOrderCnt_v[0][5], dec->FieldOrderCnt_v[1][5]));
			t->diff_poc_v[3] = packs32(poc - minw32(dec->FieldOrderCnt_v[0][6], dec->FieldOrderCnt_v[1][6]),
			                           poc - minw32(dec->FieldOrderCnt_v[0][7], dec->FieldOrderCnt_v[1][7]));
		}
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x520, %rsp            # imm = 0x520
movq %rdi, -0x4e0(%rbp)
movq %rsi, -0x4e8(%rbp)
movq %rdx, -0x4f0(%rbp)
movq -0x4f0(%rbp), %rax
movq -0x4e0(%rbp), %rcx
movq (%rcx), %rdx
movq %rdx, (%rax)
movq 0x8(%rcx), %rdx
movq %rdx, 0x8(%rax)
movq 0x10(%rcx), %rdx
movq %rdx, 0x10(%rax)
movq 0x18(%rcx), %rcx
movq %rcx, 0x18(%rax)
movq -0x4e0(%rbp), %rax
cmpb $0x0, 0x20(%rax)
je 0x18c50
movq -0x4e0(%rbp), %rax
movq (%rax), %rdi
addq $-0x2, %rdi
movq -0x4e0(%rbp), %rax
movq 0x8(%rax), %rsi
xorl %edx, %edx
callq 0x7150
movq %rax, %rcx
movq -0x4f0(%rbp), %rax
movq %rcx, 0x8(%rax)
movq -0x4f0(%rbp), %rax
movq 0x8(%rax), %rcx
addq $0x2, %rcx
movq -0x4e0(%rbp), %rax
movq %rcx, (%rax)
movq -0x4e8(%rbp), %rax
movb 0x8(%rax), %cl
movq -0x4f0(%rbp), %rax
movb %cl, 0x2a(%rax)
movq -0x4e8(%rbp), %rax
movb 0x12(%rax), %cl
movq -0x4f0(%rbp), %rax
movb %cl, 0x2b(%rax)
movq -0x4e8(%rbp), %rax
movw 0x4(%rax), %cx
movq -0x4f0(%rbp), %rax
movw %cx, 0x30(%rax)
movq -0x4e8(%rbp), %rax
movw 0x6(%rax), %cx
movq -0x4f0(%rbp), %rax
movw %cx, 0x32(%rax)
movq -0x4f0(%rbp), %rax
cmpb $0x0, 0x22b(%rax)
je 0x18ff3
movq -0x4f0(%rbp), %rax
vmovdqa 0x230(%rax), %xmm3
movq -0x4e8(%rbp), %rax
vmovdqa 0x230(%rax), %xmm2
vpxor %xmm0, %xmm0, %xmm0
vpcmpeqb %xmm0, %xmm3, %xmm1
vmovdqa %xmm3, -0x350(%rbp)
vmovdqa %xmm2, -0x360(%rbp)
vmovdqa %xmm1, -0x370(%rbp)
vmovdqa -0x350(%rbp), %xmm1
vmovdqa -0x360(%rbp), %xmm2
vmovdqa -0x370(%rbp), %xmm3
vpblendvb %xmm3, %xmm2, %xmm1, %xmm1
movq -0x4f0(%rbp), %rax
vmovdqa %xmm1, 0x230(%rax)
movq -0x4f0(%rbp), %rax
vmovdqa 0x240(%rax), %xmm3
movq -0x4e8(%rbp), %rax
vmovdqa 0x230(%rax), %xmm2
vpcmpeqb %xmm0, %xmm3, %xmm1
vmovdqa %xmm3, -0x380(%rbp)
vmovdqa %xmm2, -0x390(%rbp)
vmovdqa %xmm1, -0x3a0(%rbp)
vmovdqa -0x380(%rbp), %xmm1
vmovdqa -0x390(%rbp), %xmm2
vmovdqa -0x3a0(%rbp), %xmm3
vpblendvb %xmm3, %xmm2, %xmm1, %xmm1
movq -0x4f0(%rbp), %rax
vmovdqa %xmm1, 0x240(%rax)
movq -0x4f0(%rbp), %rax
vmovdqa 0x250(%rax), %xmm3
movq -0x4e8(%rbp), %rax
vmovdqa 0x230(%rax), %xmm2
vpcmpeqb %xmm0, %xmm3, %xmm1
vmovdqa %xmm3, -0x3b0(%rbp)
vmovdqa %xmm2, -0x3c0(%rbp)
vmovdqa %xmm1, -0x3d0(%rbp)
vmovdqa -0x3b0(%rbp), %xmm1
vmovdqa -0x3c0(%rbp), %xmm2
vmovdqa -0x3d0(%rbp), %xmm3
vpblendvb %xmm3, %xmm2, %xmm1, %xmm1
movq -0x4f0(%rbp), %rax
vmovdqa %xmm1, 0x250(%rax)
movq -0x4f0(%rbp), %rax
vmovdqa 0x260(%rax), %xmm3
movq -0x4e8(%rbp), %rax
vmovdqa 0x260(%rax), %xmm2
vpcmpeqb %xmm0, %xmm3, %xmm1
vmovdqa %xmm3, -0x3e0(%rbp)
vmovdqa %xmm2, -0x3f0(%rbp)
vmovdqa %xmm1, -0x400(%rbp)
vmovdqa -0x3e0(%rbp), %xmm1
vmovdqa -0x3f0(%rbp), %xmm2
vmovdqa -0x400(%rbp), %xmm3
vpblendvb %xmm3, %xmm2, %xmm1, %xmm1
movq -0x4f0(%rbp), %rax
vmovdqa %xmm1, 0x260(%rax)
movq -0x4f0(%rbp), %rax
vmovdqa 0x270(%rax), %xmm2
movq -0x4e8(%rbp), %rax
vmovdqa 0x260(%rax), %xmm1
vpcmpeqb %xmm0, %xmm2, %xmm0
vmovdqa %xmm2, -0x410(%rbp)
vmovdqa %xmm1, -0x420(%rbp)
vmovdqa %xmm0, -0x430(%rbp)
vmovdqa -0x410(%rbp), %xmm0
vmovdqa -0x420(%rbp), %xmm1
vmovdqa -0x430(%rbp), %xmm2
vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
movq -0x4f0(%rbp), %rax
vmovdqa %xmm0, 0x270(%rax)
movq -0x4f0(%rbp), %rax
vmovdqa 0x280(%rax), %xmm2
movq -0x4e8(%rbp), %rax
vmovdqa 0x260(%rax), %xmm1
vptestnmb %xmm2, %xmm2, %k0
vpmovm2b %k0, %xmm0
vmovdqa %xmm2, -0x440(%rbp)
vmovdqa %xmm1, -0x450(%rbp)
vmovdqa %xmm0, -0x460(%rbp)
vmovdqa -0x440(%rbp), %xmm0
vmovdqa -0x450(%rbp), %xmm1
vmovdqa -0x460(%rbp), %xmm2
vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
movq -0x4f0(%rbp), %rax
vmovdqa %xmm0, 0x280(%rax)
movl $0x0, -0x4f4(%rbp)
cmpl $0x18, -0x4f4(%rbp)
jae 0x18ff1
movq -0x4f0(%rbp), %rax
movl -0x4f4(%rbp), %ecx
movl %ecx, %edx
movl %edx, %ecx
shlq $0x4, %rdx
vmovdqa 0x290(%rax,%rdx), %xmm2
movq -0x4e8(%rbp), %rax
andl $0x7, %ecx
shll $0x4, %ecx
vmovdqa 0x290(%rax,%rcx), %xmm1
vptestnmb %xmm2, %xmm2, %k0
vpmovm2b %k0, %xmm0
vmovdqa %xmm2, -0x470(%rbp)
vmovdqa %xmm1, -0x480(%rbp)
vmovdqa %xmm0, -0x490(%rbp)
vmovdqa -0x470(%rbp), %xmm0
vmovdqa -0x480(%rbp), %xmm1
vmovdqa -0x490(%rbp), %xmm2
vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
movq -0x4f0(%rbp), %rax
addq $0x220, %rax            # imm = 0x220
addq $0x70, %rax
movl -0x4f4(%rbp), %ecx
shlq $0x4, %rcx
addq %rcx, %rax
vmovdqa %xmm0, (%rax)
movl -0x4f4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4f4(%rbp)
jmp 0x18f38
jmp 0x19047
movq -0x4f0(%rbp), %rdi
addq $0x220, %rdi            # imm = 0x220
addq $0x10, %rdi
movq -0x4e8(%rbp), %rsi
addq $0x230, %rsi            # imm = 0x230
movl $0x60, %edx
callq 0x70c0
movq -0x4f0(%rbp), %rdi
addq $0x220, %rdi            # imm = 0x220
addq $0x70, %rdi
movq -0x4e8(%rbp), %rsi
addq $0x290, %rsi            # imm = 0x290
movl $0x180, %edx            # imm = 0x180
callq 0x70c0
movq -0x4e0(%rbp), %rax
movl 0x5c(%rax), %eax
movq -0x4e0(%rbp), %rcx
movsbl 0x24(%rcx), %ecx
shrl %cl, %eax
andl $0x1, %eax
movb %al, %cl
movq -0x4f0(%rbp), %rax
movb %cl, 0x2e(%rax)
movq -0x4e0(%rbp), %rax
movw 0x502(%rax), %cx
movq -0x4f0(%rbp), %rax
movw %cx, 0x34(%rax)
movq -0x4e0(%rbp), %rax
movw 0x504(%rax), %cx
movq -0x4f0(%rbp), %rax
movw %cx, 0x38(%rax)
movq -0x4f0(%rbp), %rax
movw %cx, 0x36(%rax)
movq -0x4e0(%rbp), %rax
movl 0x2c(%rax), %ecx
movq -0x4f0(%rbp), %rax
movl %ecx, 0x3c(%rax)
movq -0x4e0(%rbp), %rax
movl 0x30(%rax), %ecx
movq -0x4f0(%rbp), %rax
movl %ecx, 0x40(%rax)
movq -0x4e0(%rbp), %rax
movq -0x4e0(%rbp), %rcx
movsbq 0x24(%rcx), %rcx
movl 0x16c0(%rax,%rcx,4), %eax
movq -0x4f0(%rbp), %rcx
cmpl 0x48(%rcx), %eax
jne 0x1911b
movq -0x4e0(%rbp), %rax
movsbl 0x21(%rax), %eax
cmpl $0x0, %eax
je 0x1911b
movq -0x4e0(%rbp), %rax
movsbl 0x24(%rax), %eax
movl %eax, -0x514(%rbp)
jmp 0x19128
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x514(%rbp)
jmp 0x19128
movl -0x514(%rbp), %eax
movb %al, %cl
movq -0x4f0(%rbp), %rax
movb %cl, 0x2d(%rax)
movq -0x4e0(%rbp), %rax
movq -0x4e0(%rbp), %rcx
movsbq 0x24(%rcx), %rcx
movl 0x16c0(%rax,%rcx,4), %eax
movq -0x4f0(%rbp), %rcx
cmpl 0x48(%rcx), %eax
je 0x19170
movq -0x4f0(%rbp), %rax
movsbl 0x27(%rax), %eax
cmpl $0x2, %eax
jne 0x19182
movq -0x4f0(%rbp), %rax
movl 0x48(%rax), %eax
movl %eax, -0x518(%rbp)
jmp 0x1918f
movl $0x80000000, %eax       # imm = 0x80000000
movl %eax, -0x518(%rbp)
jmp 0x1918f
movl -0x518(%rbp), %ecx
movq -0x4f0(%rbp), %rax
movl %ecx, 0x44(%rax)
movq -0x4e0(%rbp), %rax
movl 0x50(%rax), %ecx
movq -0x4f0(%rbp), %rax
movl %ecx, 0x4c(%rax)
movq -0x4e0(%rbp), %rax
movsbq 0x24(%rax), %rcx
movq 0x178(%rax,%rcx,8), %rcx
movq -0x4f0(%rbp), %rax
movq %rcx, 0x58(%rax)
movq -0x4e8(%rbp), %rax
movb 0x1(%rax), %al
movb %al, %cl
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
bzhil %ecx, %eax, %ecx
movw %cx, -0x4d2(%rbp)
movw -0x4d2(%rbp), %cx
movw %cx, -0x51c(%rbp)
movw %cx, -0x4b2(%rbp)
movw %cx, -0x4b4(%rbp)
movw %cx, -0x4b6(%rbp)
movw %cx, -0x4b8(%rbp)
movw %cx, -0x4ba(%rbp)
movw %cx, -0x4bc(%rbp)
movw %cx, -0x4be(%rbp)
movw %cx, -0x4c0(%rbp)
movzwl -0x4c0(%rbp), %ecx
vmovd %ecx, %xmm0
movzwl -0x4be(%rbp), %ecx
vpinsrw $0x1, %ecx, %xmm0, %xmm0
movzwl -0x4bc(%rbp), %ecx
vpinsrw $0x2, %ecx, %xmm0, %xmm0
movzwl -0x4ba(%rbp), %ecx
vpinsrw $0x3, %ecx, %xmm0, %xmm0
movzwl -0x4b8(%rbp), %ecx
vpinsrw $0x4, %ecx, %xmm0, %xmm0
movzwl -0x4b6(%rbp), %ecx
vpinsrw $0x5, %ecx, %xmm0, %xmm0
movzwl -0x4b4(%rbp), %ecx
vpinsrw $0x6, %ecx, %xmm0, %xmm0
movzwl -0x4b2(%rbp), %ecx
vpinsrw $0x7, %ecx, %xmm0, %xmm0
vmovdqa %xmm0, -0x4d0(%rbp)
vmovdqa -0x4d0(%rbp), %xmm0
movq -0x4f0(%rbp), %rcx
vmovdqa %xmm0, 0x170(%rcx)
movq -0x4e8(%rbp), %rcx
movb 0x2(%rcx), %dl
movb %dl, %cl
bzhil %ecx, %eax, %eax
movw %ax, -0x4d4(%rbp)
movw -0x4d4(%rbp), %ax
movw %ax, -0x51a(%rbp)
movw %ax, -0x492(%rbp)
movw %ax, -0x494(%rbp)
movw %ax, -0x496(%rbp)
movw %ax, -0x498(%rbp)
movw %ax, -0x49a(%rbp)
movw %ax, -0x49c(%rbp)
movw %ax, -0x49e(%rbp)
movw %ax, -0x4a0(%rbp)
movzwl -0x4a0(%rbp), %eax
vmovd %eax, %xmm0
movzwl -0x49e(%rbp), %eax
vpinsrw $0x1, %eax, %xmm0, %xmm0
movzwl -0x49c(%rbp), %eax
vpinsrw $0x2, %eax, %xmm0, %xmm0
movzwl -0x49a(%rbp), %eax
vpinsrw $0x3, %eax, %xmm0, %xmm0
movzwl -0x498(%rbp), %eax
vpinsrw $0x4, %eax, %xmm0, %xmm0
movzwl -0x496(%rbp), %eax
vpinsrw $0x5, %eax, %xmm0, %xmm0
movzwl -0x494(%rbp), %eax
vpinsrw $0x6, %eax, %xmm0, %xmm0
movzwl -0x492(%rbp), %eax
vpinsrw $0x7, %eax, %xmm0, %xmm0
vmovdqa %xmm0, -0x4b0(%rbp)
vmovdqa -0x4b0(%rbp), %xmm0
movq -0x4f0(%rbp), %rax
vmovdqa %xmm0, 0x190(%rax)
movq -0x4f0(%rbp), %rax
vmovdqa %xmm0, 0x180(%rax)
movq -0x4f0(%rbp), %rax
movsbl 0x20(%rax), %eax
cmpl $0x2, %eax
jge 0x199e4
movq -0x4f0(%rbp), %rdi
addq $0x60, %rdi
movq -0x4e0(%rbp), %rsi
addq $0x178, %rsi            # imm = 0x178
movl $0x100, %edx            # imm = 0x100
callq 0x70c0
movq -0x4f0(%rbp), %rax
movsbl 0x20(%rax), %eax
cmpl $0x1, %eax
jne 0x199e2
movq -0x4f0(%rbp), %rax
movsbl 0x225(%rax), %eax
cmpl $0x2, %eax
je 0x1940d
movq -0x4f0(%rbp), %rax
cmpb $0x0, 0x24(%rax)
jne 0x199e2
movq -0x4e0(%rbp), %rax
movl 0x3c(%rax), %ecx
movq -0x4e0(%rbp), %rax
movl 0x40(%rax), %eax
movl %ecx, -0x284(%rbp)
movl %eax, -0x288(%rbp)
movl -0x284(%rbp), %eax
subl -0x288(%rbp), %eax
cmpl $0x0, %eax
jge 0x1944c
movl -0x284(%rbp), %eax
movl %eax, -0x520(%rbp)
jmp 0x19458
movl -0x288(%rbp), %eax
movl %eax, -0x520(%rbp)
movl -0x520(%rbp), %eax
movl %eax, -0x334(%rbp)
movl -0x334(%rbp), %eax
movl %eax, -0x314(%rbp)
movl %eax, -0x318(%rbp)
movl %eax, -0x31c(%rbp)
movl %eax, -0x320(%rbp)
movl -0x31c(%rbp), %edx
movl -0x318(%rbp), %ecx
movl -0x314(%rbp), %eax
vmovd -0x320(%rbp), %xmm0
vpinsrd $0x1, %edx, %xmm0, %xmm0
vpinsrd $0x2, %ecx, %xmm0, %xmm0
vpinsrd $0x3, %eax, %xmm0, %xmm0
vmovdqa %xmm0, -0x330(%rbp)
vmovdqa -0x330(%rbp), %xmm0
vmovdqa %xmm0, -0x510(%rbp)
vmovdqa -0x510(%rbp), %xmm0
movq -0x4e0(%rbp), %rax
vmovdqa 0x3c0(%rax), %xmm2
movq -0x4e0(%rbp), %rax
vmovdqa 0x440(%rax), %xmm1
vmovdqa %xmm2, -0x190(%rbp)
vmovdqa %xmm1, -0x1a0(%rbp)
vmovdqa -0x1a0(%rbp), %xmm3
vmovdqa -0x190(%rbp), %xmm2
vmovdqa -0x190(%rbp), %xmm1
vpsubd -0x1a0(%rbp), %xmm1, %xmm1
vmovaps %xmm3, -0x160(%rbp)
vmovaps %xmm2, -0x170(%rbp)
vmovaps %xmm1, -0x180(%rbp)
vmovaps -0x160(%rbp), %xmm1
vmovaps -0x170(%rbp), %xmm2
vmovaps -0x180(%rbp), %xmm3
vblendvps %xmm3, %xmm2, %xmm1, %xmm1
vpsubd %xmm1, %xmm0, %xmm1
vmovdqa -0x510(%rbp), %xmm0
movq -0x4e0(%rbp), %rax
vmovdqa 0x3d0(%rax), %xmm3
movq -0x4e0(%rbp), %rax
vmovdqa 0x450(%rax), %xmm2
vmovdqa %xmm3, -0x1b0(%rbp)
vmovdqa %xmm2, -0x1c0(%rbp)
vmovdqa -0x1c0(%rbp), %xmm4
vmovdqa -0x1b0(%rbp), %xmm3
vmovdqa -0x1b0(%rbp), %xmm2
vpsubd -0x1c0(%rbp), %xmm2, %xmm2
vmovaps %xmm4, -0x130(%rbp)
vmovaps %xmm3, -0x140(%rbp)
vmovaps %xmm2, -0x150(%rbp)
vmovaps -0x130(%rbp), %xmm2
vmovaps -0x140(%rbp), %xmm3
vmovaps -0x150(%rbp), %xmm4
vblendvps %xmm4, %xmm3, %xmm2, %xmm2
vpsubd %xmm2, %xmm0, %xmm0
vmovdqa %xmm1, -0x2a0(%rbp)
vmovdqa %xmm0, -0x2b0(%rbp)
vmovdqa -0x2a0(%rbp), %xmm0
vmovdqa -0x2b0(%rbp), %xmm1
vpackssdw %xmm1, %xmm0, %xmm0
movq -0x4f0(%rbp), %rax
vmovdqa %xmm0, 0x1e0(%rax)
vmovdqa -0x510(%rbp), %xmm0
movq -0x4e0(%rbp), %rax
vmovdqa 0x3e0(%rax), %xmm2
movq -0x4e0(%rbp), %rax
vmovdqa 0x460(%rax), %xmm1
vmovdqa %xmm2, -0x1d0(%rbp)
vmovdqa %xmm1, -0x1e0(%rbp)
vmovdqa -0x1e0(%rbp), %xmm3
vmovdqa -0x1d0(%rbp), %xmm2
vmovdqa -0x1d0(%rbp), %xmm1
vpsubd -0x1e0(%rbp), %xmm1, %xmm1
vmovaps %xmm3, -0x100(%rbp)
vmovaps %xmm2, -0x110(%rbp)
vmovaps %xmm1, -0x120(%rbp)
vmovaps -0x100(%rbp), %xmm1
vmovaps -0x110(%rbp), %xmm2
vmovaps -0x120(%rbp), %xmm3
vblendvps %xmm3, %xmm2, %xmm1, %xmm1
vpsubd %xmm1, %xmm0, %xmm1
vmovdqa -0x510(%rbp), %xmm0
movq -0x4e0(%rbp), %rax
vmovdqa 0x3f0(%rax), %xmm3
movq -0x4e0(%rbp), %rax
vmovdqa 0x470(%rax), %xmm2
vmovdqa %xmm3, -0x1f0(%rbp)
vmovdqa %xmm2, -0x200(%rbp)
vmovdqa -0x200(%rbp), %xmm4
vmovdqa -0x1f0(%rbp), %xmm3
vmovdqa -0x1f0(%rbp), %xmm2
vpsubd -0x200(%rbp), %xmm2, %xmm2
vmovaps %xmm4, -0xd0(%rbp)
vmovaps %xmm3, -0xe0(%rbp)
vmovaps %xmm2, -0xf0(%rbp)
vmovaps -0xd0(%rbp), %xmm2
vmovaps -0xe0(%rbp), %xmm3
vmovaps -0xf0(%rbp), %xmm4
vblendvps %xmm4, %xmm3, %xmm2, %xmm2
vpsubd %xmm2, %xmm0, %xmm0
vmovdqa %xmm1, -0x2c0(%rbp)
vmovdqa %xmm0, -0x2d0(%rbp)
vmovdqa -0x2c0(%rbp), %xmm0
vmovdqa -0x2d0(%rbp), %xmm1
vpackssdw %xmm1, %xmm0, %xmm0
movq -0x4f0(%rbp), %rax
vmovdqa %xmm0, 0x1f0(%rax)
vmovdqa -0x510(%rbp), %xmm0
movq -0x4e0(%rbp), %rax
vmovdqa 0x400(%rax), %xmm2
movq -0x4e0(%rbp), %rax
vmovdqa 0x480(%rax), %xmm1
vmovdqa %xmm2, -0x210(%rbp)
vmovdqa %xmm1, -0x220(%rbp)
vmovdqa -0x220(%rbp), %xmm3
vmovdqa -0x210(%rbp), %xmm2
vmovdqa -0x210(%rbp), %xmm1
vpsubd -0x220(%rbp), %xmm1, %xmm1
vmovaps %xmm3, -0xa0(%rbp)
vmovaps %xmm2, -0xb0(%rbp)
vmovaps %xmm1, -0xc0(%rbp)
vmovaps -0xa0(%rbp), %xmm1
vmovaps -0xb0(%rbp), %xmm2
vmovaps -0xc0(%rbp), %xmm3
vblendvps %xmm3, %xmm2, %xmm1, %xmm1
vpsubd %xmm1, %xmm0, %xmm1
vmovdqa -0x510(%rbp), %xmm0
movq -0x4e0(%rbp), %rax
vmovdqa 0x410(%rax), %xmm3
movq -0x4e0(%rbp), %rax
vmovdqa 0x490(%rax), %xmm2
vmovdqa %xmm3, -0x230(%rbp)
vmovdqa %xmm2, -0x240(%rbp)
vmovdqa -0x240(%rbp), %xmm4
vmovdqa -0x230(%rbp), %xmm3
vmovdqa -0x230(%rbp), %xmm2
vpsubd -0x240(%rbp), %xmm2, %xmm2
vmovaps %xmm4, -0x70(%rbp)
vmovaps %xmm3, -0x80(%rbp)
vmovaps %xmm2, -0x90(%rbp)
vmovaps -0x70(%rbp), %xmm2
vmovaps -0x80(%rbp), %xmm3
vmovaps -0x90(%rbp), %xmm4
vblendvps %xmm4, %xmm3, %xmm2, %xmm2
vpsubd %xmm2, %xmm0, %xmm0
vmovdqa %xmm1, -0x2e0(%rbp)
vmovdqa %xmm0, -0x2f0(%rbp)
vmovdqa -0x2e0(%rbp), %xmm0
vmovdqa -0x2f0(%rbp), %xmm1
vpackssdw %xmm1, %xmm0, %xmm0
movq -0x4f0(%rbp), %rax
vmovdqa %xmm0, 0x200(%rax)
vmovdqa -0x510(%rbp), %xmm0
movq -0x4e0(%rbp), %rax
vmovdqa 0x420(%rax), %xmm2
movq -0x4e0(%rbp), %rax
vmovdqa 0x4a0(%rax), %xmm1
vmovdqa %xmm2, -0x250(%rbp)
vmovdqa %xmm1, -0x260(%rbp)
vmovdqa -0x260(%rbp), %xmm3
vmovdqa -0x250(%rbp), %xmm2
vmovdqa -0x250(%rbp), %xmm1
vpsubd -0x260(%rbp), %xmm1, %xmm1
vmovaps %xmm3, -0x40(%rbp)
vmovaps %xmm2, -0x50(%rbp)
vmovaps %xmm1, -0x60(%rbp)
vmovaps -0x40(%rbp), %xmm1
vmovaps -0x50(%rbp), %xmm2
vmovaps -0x60(%rbp), %xmm3
vblendvps %xmm3, %xmm2, %xmm1, %xmm1
vpsubd %xmm1, %xmm0, %xmm1
vmovdqa -0x510(%rbp), %xmm0
movq -0x4e0(%rbp), %rax
vmovdqa 0x430(%rax), %xmm3
movq -0x4e0(%rbp), %rax
vmovdqa 0x4b0(%rax), %xmm2
vmovdqa %xmm3, -0x270(%rbp)
vmovdqa %xmm2, -0x280(%rbp)
vmovdqa -0x280(%rbp), %xmm4
vmovdqa -0x270(%rbp), %xmm3
vmovdqa -0x270(%rbp), %xmm2
vpsubd -0x280(%rbp), %xmm2, %xmm2
vmovaps %xmm4, -0x10(%rbp)
vmovaps %xmm3, -0x20(%rbp)
vmovaps %xmm2, -0x30(%rbp)
vmovaps -0x10(%rbp), %xmm2
vmovaps -0x20(%rbp), %xmm3
vmovaps -0x30(%rbp), %xmm4
vblendvps %xmm4, %xmm3, %xmm2, %xmm2
vpsubd %xmm2, %xmm0, %xmm0
vmovdqa %xmm1, -0x300(%rbp)
vmovdqa %xmm0, -0x310(%rbp)
vmovdqa -0x300(%rbp), %xmm0
vmovdqa -0x310(%rbp), %xmm1
vpackssdw %xmm1, %xmm0, %xmm0
movq -0x4f0(%rbp), %rax
vmovdqa %xmm0, 0x210(%rax)
jmp 0x199e4
addq $0x520, %rsp            # imm = 0x520
popq %rbp
retq
nopl (%rax)