// File: /workspace/github_c_makefile_star2_O1/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_zaC99Value_consumezeas
static STR* mw_mirth_c99_zaC99Value_consumezeas (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_C99ReprType in_C99ReprType_2, struct mirth_c99_zaC99Value* in_zaC99Value_3, struct mirth_mirth_zaMirth* *out_zaMirth_4) {
	struct mirth_mirth_zaMirth* v6;
	struct mirth_c99_C99ReprType v7 = mw_mirth_c99_C99ReprType_stripzenewtypes(in_zaMirth_1, in_C99ReprType_2, &v6);
	incref(MK_mirth_c99_C99ReprType(v7));
	struct mirth_c99_C99ReprType branch_C99ReprType_8;
	struct mirth_mirth_zaMirth* branch_zaMirth_9;
	STR* branch_Str_10;
	switch ((v7).tag) {
		case mirth_c99_C99ReprType_VAL: {
			struct mirth_mirth_zaMirth* v11;
			STR* v12 = mw_mirth_c99_zaC99Value_consumezeaszeVAL(v6, in_zaC99Value_3, &v11);
			branch_Str_10 = v12;
			branch_zaMirth_9 = v11;
			branch_C99ReprType_8 = v7;
		} break;
		case mirth_c99_C99ReprType_Void: {
			mw_mirth_c99_zaC99Value_rdrop(in_zaC99Value_3);
			STR* v13;
			STRLIT(v13, "0", 1);
			branch_Str_10 = v13;
			branch_zaMirth_9 = v6;
			branch_C99ReprType_8 = v7;
		} break;
		default: {
			decref(MK_mirth_c99_C99ReprType(v7));
			struct mirth_c99_C99ReprType v14;
			STR* v15;
			mtp_mirth_c99_zaC99Value_zaC99Value(in_zaC99Value_3, &v14, &v15);
			incref(MK_mirth_c99_C99ReprType(v14));
			struct mirth_mirth_zaMirth* v16;
			struct mirth_c99_C99ReprType v17 = mw_mirth_c99_C99ReprType_stripzenewtypes(v6, v14, &v16);
			incref(MK_mirth_c99_C99ReprType(v17));
			struct mirth_c99_C99ReprType branch_C99ReprType_18;
			struct mirth_c99_C99ReprType branch_C99ReprType_19;
			struct mirth_c99_C99ReprType branch_C99ReprType_20;
			struct mirth_mirth_zaMirth* branch_zaMirth_21;
			STR* branch_Str_22;
			switch ((v17).tag) {
				case mirth_c99_C99ReprType_VAL: {
					STR* v23;
					STRLIT(v23, "", 0);
					incref(MK_mirth_c99_C99ReprType(v7));
					struct mirth_mirth_zaMirth* v24;
					STR* v25;
					STR* v26 = mw_mirth_c99_C99ReprType_vzemacrozeprefixzesuffix(v16, v7, &v24, &v25);
					STR* v27;
					mw_std_str_zaStr_pushzestrzx(v26, v23, &v27);
					STR* v28;
					mw_std_str_zaStr_pushzestrzx(v15, v27, &v28);
					STR* v29;
					mw_std_str_zaStr_pushzestrzx(v25, v28, &v29);
					branch_Str_22 = v29;
					branch_zaMirth_21 = v24;
					branch_C99ReprType_20 = v7;
					branch_C99ReprType_19 = v17;
					branch_C99ReprType_18 = v14;
				} break;
				default: {
					decref(MK_mirth_c99_C99ReprType(v17));
					incref(MK_mirth_c99_C99ReprType(v7));
					incref(MK_mirth_c99_C99ReprType(v17));
					bool v30 = mw_mirth_c99_C99ReprType_zd(v7, v17);
					struct mirth_c99_C99ReprType branch_C99ReprType_31;
					struct mirth_mirth_zaMirth* branch_zaMirth_32;
					struct mirth_c99_C99ReprType branch_C99ReprType_33;
					struct mirth_c99_C99ReprType branch_C99ReprType_34;
					STR* branch_Str_35;
					if (v30) {
						branch_Str_35 = v15;
						branch_C99ReprType_34 = v17;
						branch_C99ReprType_33 = v7;
						branch_zaMirth_32 = v16;
						branch_C99ReprType_31 = v14;
					} else {
						incref(MK_mirth_c99_C99ReprType(v7));
						struct mirth_mirth_zaMirth* v36;
						bool v37 = mw_mirth_c99_C99ReprType_iszeintzelikezy(v16, v7, &v36);
						struct mirth_c99_C99ReprType branch_C99ReprType_38;
						struct mirth_mirth_zaMirth* branch_zaMirth_39;
						bool branch_Bool_40;
						if (v37) {
							incref(MK_mirth_c99_C99ReprType(v17));
							struct mirth_mirth_zaMirth* v41;
							bool v42 = mw_mirth_c99_C99ReprType_iszeintzelikezy(v36, v17, &v41);
							branch_Bool_40 = v42;
							branch_zaMirth_39 = v41;
							branch_C99ReprType_38 = v17;
						} else {
							bool v43 = false;
							branch_Bool_40 = v43;
							branch_zaMirth_39 = v36;
							branch_C99ReprType_38 = v17;
						}
						struct mirth_c99_C99ReprType branch_C99ReprType_44;
						struct mirth_c99_C99ReprType branch_C99ReprType_45;
						struct mirth_c99_C99ReprType branch_C99ReprType_46;
						struct mirth_mirth_zaMirth* branch_zaMirth_47;
						STR* branch_Str_48;
						if (branch_Bool_40) {
							STR* v49;
							STRLIT(v49, "", 0);
							STR* v50;
							STRLIT(v50, "((", 2);
							STR* v51;
							mw_std_str_zaStr_pushzestrzx(v50, v49, &v51);
							incref(MK_mirth_c99_C99ReprType(v7));
							struct mirth_mirth_zaMirth* v52;
							STR* v53 = mw_mirth_c99_C99ReprType_underlyingzec99zetype(branch_zaMirth_39, v7, &v52);
							STR* v54;
							mw_std_str_zaStr_pushzestrzx(v53, v51, &v54);
							STR* v55;
							STRLIT(v55, ")", 1);
							STR* v56;
							mw_std_str_zaStr_pushzestrzx(v55, v54, &v56);
							STR* v57;
							mw_std_str_zaStr_pushzestrzx(v15, v56, &v57);
							STR* v58;
							STRLIT(v58, ")", 1);
							STR* v59;
							mw_std_str_zaStr_pushzestrzx(v58, v57, &v59);
							branch_Str_48 = v59;
							branch_zaMirth_47 = v52;
							branch_C99ReprType_46 = v7;
							branch_C99ReprType_45 = branch_C99ReprType_38;
							branch_C99ReprType_44 = v14;
						} else {
							STR* v60;
							STRLIT(v60, "", 0);
							STR* v61;
							STRLIT(v61, "(\n#error \"attempted to cast ", 28);
							STR* v62;
							mw_std_str_zaStr_pushzestrzx(v61, v60, &v62);
							STR* v63;
							mw_std_str_zaStr_pushzestrzx(v15, v62, &v63);
							STR* v64;
							STRLIT(v64, " to incompatible C99 repr type ", 31);
							STR* v65;
							mw_std_str_zaStr_pushzestrzx(v64, v63, &v65);
							incref(MK_mirth_c99_C99ReprType(v7));
							struct mirth_mirth_zaMirth* v66;
							STR* v67 = mw_mirth_c99_C99ReprType_underlyingzec99zetype(branch_zaMirth_39, v7, &v66);
							STR* v68;
							mw_std_str_zaStr_pushzestrzx(v67, v65, &v68);
							STR* v69;
							STRLIT(v69, "\"\n", 2);
							STR* v70;
							mw_std_str_zaStr_pushzestrzx(v69, v68, &v70);
							branch_Str_48 = v70;
							branch_zaMirth_47 = v66;
							branch_C99ReprType_46 = v7;
							branch_C99ReprType_45 = branch_C99ReprType_38;
							branch_C99ReprType_44 = v14;
						}
						branch_Str_35 = branch_Str_48;
						branch_C99ReprType_34 = branch_C99ReprType_45;
						branch_C99ReprType_33 = branch_C99ReprType_46;
						branch_zaMirth_32 = branch_zaMirth_47;
						branch_C99ReprType_31 = branch_C99ReprType_44;
					}
					branch_Str_22 = branch_Str_35;
					branch_zaMirth_21 = branch_zaMirth_32;
					branch_C99ReprType_20 = branch_C99ReprType_33;
					branch_C99ReprType_19 = branch_C99ReprType_34;
					branch_C99ReprType_18 = branch_C99ReprType_31;
				} break;
			}
			decref(MK_mirth_c99_C99ReprType(branch_C99ReprType_18));
			decref(MK_mirth_c99_C99ReprType(branch_C99ReprType_19));
			branch_Str_10 = branch_Str_22;
			branch_zaMirth_9 = branch_zaMirth_21;
			branch_C99ReprType_8 = branch_C99ReprType_20;
		} break;
	}
	decref(MK_mirth_c99_C99ReprType(branch_C99ReprType_8));
	*out_zaMirth_4 = branch_zaMirth_9;
	return branch_Str_10;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %r8, -0x58(%rbp)
movq %rcx, %r13
movabsq $0xfffffffffffc, %r15   # imm = 0xFFFFFFFFFFFC
leaq -0x98(%rbp), %rcx
callq 0xb6a94
movl %eax, %r14d
movq %r14, %r12
shlq $0x30, %r12
movq %rdx, %rax
andq %r15, %rax
sete %cl
testb $0x3, %dl
setne %sil
orb %cl, %sil
jne 0xb6198
incl (%rax)
orq %rdx, %r12
testl %r14d, %r14d
movq %rdx, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
je 0xb620b
cmpl $0x1, %r14d
jne 0xb626b
movq -0x98(%rbp), %r14
movq %r12, -0x70(%rbp)
movl (%r13), %r12d
movq 0x8(%r13), %rbx
movq 0x10(%r13), %r15
movq %r13, %rdi
callq 0x5030
leaq -0x78(%rbp), %r13
movq %r14, %rdi
movq %r15, %rsi
movabsq $0xfffffffffffc, %r15   # imm = 0xFFFFFFFFFFFC
movq -0x58(%rbp), %r14
movl %r12d, %edx
movq -0x70(%rbp), %r12
movq %rbx, %rcx
movq %r13, %r8
callq 0xa8c22
movq -0x38(%rbp), %rsi
movq %rax, %rdi
movq (%r13), %rbx
jmp 0xb6a04
movq %r13, %rdi
callq 0xb5c57
cmpq $0x0, 0x1065ad5(%rip)   # 0x111bcf0
jne 0xb623a
movl $0x1, %edi
callq 0xf9f7
movq $0x1, 0x10(%rax)
movb $0x30, 0x18(%rax)
movq %rax, 0x1065ab6(%rip)   # 0x111bcf0
movq 0x1065aaf(%rip), %rdi   # 0x111bcf0
movq %rdi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
movq -0x58(%rbp), %r14
jne 0xb625b
incl (%rax)
movq -0x98(%rbp), %rbx
movq -0x38(%rbp), %rsi
jmp 0xb6a04
movq %rdx, %rbx
movq %rdx, %rax
andq %r15, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0xb6294
decl (%rax)
jne 0xb6294
movq %r12, %rdi
leaq 0x60c9a(%rip), %rsi     # 0x116f29
callq 0xd4e3
movl (%r13), %eax
movq %rax, -0xa8(%rbp)
movq 0x8(%r13), %rbx
movq 0x10(%r13), %rax
movq %rax, -0x48(%rbp)
movq %r13, %rdi
callq 0x5030
movq %rbx, %rax
andq %r15, %rax
sete %cl
movq %rbx, -0x88(%rbp)
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0xb62cf
incl (%rax)
movq -0x98(%rbp), %rdi
leaq -0x78(%rbp), %rcx
movq -0xa8(%rbp), %rsi
movq -0x88(%rbp), %rdx
callq 0xb6a94
movl %eax, %ebx
movq %rdx, %r13
movq %rbx, %rsi
shlq $0x30, %rsi
movq %rdx, %rax
andq %r15, %rax
sete %cl
testb $0x3, %r13b
setne %dl
orb %cl, %dl
jne 0xb630f
incl (%rax)
orq %r13, %rsi
movq %rsi, -0xa0(%rbp)
cmpl $0x1, %ebx
movq -0x38(%rbp), %rsi
movq %r13, -0x50(%rbp)
movq -0x48(%rbp), %rdi
jne 0xb63f0
movq %r13, -0x68(%rbp)
cmpq $0x0, 0x10659be(%rip)   # 0x111bcf8
jne 0xb6356
xorl %edi, %edi
callq 0xf9f7
movq -0x38(%rbp), %rsi
movq $0x0, 0x10(%rax)
movq %rax, 0x10659a2(%rip)   # 0x111bcf8
movq 0x106599b(%rip), %r13   # 0x111bcf8
movq %r13, %rax
andq %r15, %rax
sete %cl
testb $0x3, %r13b
setne %dl
orb %cl, %dl
movq -0x30(%rbp), %rdx
jne 0xb6377
incl (%rax)
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %dl
setne %dl
orb %cl, %dl
jne 0xb638c
incl (%rax)
movq -0x78(%rbp), %rdi
leaq -0x90(%rbp), %r15
leaq -0x60(%rbp), %rbx
movl %r14d, %esi
movq -0x30(%rbp), %rdx
movq %r15, %rcx
movq %rbx, %r8
callq 0xb403c
movq %r13, %rdi
movq %rax, %rsi
callq 0xe43c
movq %rax, %rdi
movq -0x48(%rbp), %rsi
callq 0xe43c
movq (%rbx), %rsi
movq %rax, %rdi
callq 0xe43c
movq %rax, %rdi
movq (%r15), %rbx
movabsq $0xfffffffffffc, %r15   # imm = 0xFFFFFFFFFFFC
movq -0x38(%rbp), %rsi
movq -0x58(%rbp), %r14
movq -0x68(%rbp), %r13
jmp 0xb69a5
movq %r13, %r8
movq %r13, %rax
andq %r15, %rax
sete %cl
testb $0x3, %r8b
setne %dl
orb %cl, %dl
jne 0xb642a
decl (%rax)
jne 0xb642a
movq -0xa0(%rbp), %rdi
leaq 0x60b10(%rip), %rsi     # 0x116f29
callq 0xd4e3
movq -0x50(%rbp), %r8
movq -0x48(%rbp), %rdi
movq -0x38(%rbp), %rsi
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, -0x30(%rbp)
setne %dl
orb %cl, %dl
jne 0xb6440
incl (%rax)
movq %r13, %rax
andq %r15, %rax
sete %cl
testb $0x3, %r8b
setne %dl
orb %cl, %dl
jne 0xb6456
incl (%rax)
cmpl $0x15, %ebx
ja 0xb6a64
movl %ebx, %eax
leaq 0x2db18(%rip), %rcx     # 0xe3f80
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
testl %r14d, %r14d
jmp 0xb65bd
cmpl $0x10, %r14d
jmp 0xb65bd
cmpl $0xe, %r14d
jmp 0xb65bd
cmpl $0xb, %r14d
jmp 0xb65bd
cmpl $0x4, %r14d
jmp 0xb65bd
cmpl $0xc, %r14d
jmp 0xb65bd
cmpl $0x9, %r14d
jmp 0xb65bd
cmpl $0x2, %r14d
jmp 0xb65bd
cmpl $0xf, %r14d
jmp 0xb65bd
cmpl $0x3, %r14d
jmp 0xb65bd
cmpl $0x7, %r14d
jmp 0xb65bd
cmpl $0x1, %r14d
jmp 0xb65bd
cmpl $0x11, %r14d
jmp 0xb65bd
movq %rbx, -0x40(%rbp)
movq -0x30(%rbp), %rbx
movq 0x8(%r8), %rcx
decl (%r8)
jne 0xb650f
movq -0x50(%rbp), %rdi
movq %rcx, -0x80(%rbp)
callq 0x5030
movq -0x80(%rbp), %rcx
movq -0x48(%rbp), %rdi
movq -0x38(%rbp), %rsi
cmpl $0x14, %r14d
jne 0xb6582
movq 0x8(%rbx), %r15
decl (%rbx)
jne 0xb6533
movq %rbx, %rdi
movq %rcx, %rbx
callq 0x5030
movq %rbx, %rcx
movq -0x48(%rbp), %rdi
movq -0x38(%rbp), %rsi
cmpq %r15, %rcx
sete %al
movabsq $0xfffffffffffc, %r15   # imm = 0xFFFFFFFFFFFC
movq -0x40(%rbp), %rbx
jmp 0xb65ef
cmpl $0x5, %r14d
jmp 0xb65bd
movq %rbx, -0x40(%rbp)
movq -0x30(%rbp), %rbx
movq 0x8(%r8), %rcx
decl (%r8)
jne 0xb657c
movq -0x50(%rbp), %rdi
movq %rcx, -0x80(%rbp)
callq 0x5030
movq -0x80(%rbp), %rcx
movq -0x48(%rbp), %rdi
movq -0x38(%rbp), %rsi
cmpl $0x15, %r14d
je 0xb6515
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
movq -0x40(%rbp), %rbx
je 0xb65d6
jmp 0xb65fc
cmpl $0xd, %r14d
jmp 0xb65bd
cmpl $0x6, %r14d
jmp 0xb65bd
cmpl $0x12, %r14d
jmp 0xb65bd
cmpl $0xa, %r14d
jmp 0xb65bd
cmpl $0x8, %r14d
jmp 0xb65bd
cmpl $0x13, %r14d
sete %al
je 0xb65ef
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, -0x30(%rbp)
setne %dl
orb %cl, %dl
jne 0xb65fc
decl (%rax)
jne 0xb65fc
movq %r12, %rdi
leaq 0x60945(%rip), %rsi     # 0x116f29
callq 0xd4e3
movq -0x38(%rbp), %rsi
jmp 0xb65fc
testb %al, %al
je 0xb65fc
movq -0x78(%rbp), %rbx
jmp 0xb69a1
movq %rbx, -0x40(%rbp)
movq %r13, %rbx
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, -0x30(%rbp)
setne %dl
orb %cl, %dl
jne 0xb6619
incl (%rax)
movq -0x78(%rbp), %rdi
leaq -0x90(%rbp), %rcx
movl %r14d, %esi
movq -0x30(%rbp), %rdx
callq 0xb6df7
testb %al, %al
movq %rbx, -0x68(%rbp)
je 0xb666f
andq %r15, %rbx
sete %cl
testb $0x3, -0x50(%rbp)
setne %dl
orb %cl, %dl
jne 0xb664b
incl (%rbx)
movq -0x90(%rbp), %rdi
leaq -0x60(%rbp), %rbx
movq -0x40(%rbp), %rsi
movq -0x50(%rbp), %rdx
movq %rbx, %rcx
callq 0xb6df7
movq (%rbx), %rcx
movq %rcx, -0x40(%rbp)
jmp 0xb667c
movq -0x90(%rbp), %rax
movq %rax, -0x40(%rbp)
xorl %eax, %eax
testb %al, %al
movq %r12, -0x70(%rbp)
je 0xb67fc
cmpq $0x0, 0x1065670(%rip)   # 0x111bd00
jne 0xb66a8
xorl %edi, %edi
callq 0xf9f7
movq $0x0, 0x10(%rax)
movq %rax, 0x1065658(%rip)   # 0x111bd00
movq 0x1065651(%rip), %rbx   # 0x111bd00
movq %rbx, %rax
andq %r15, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0xb66c4
incl (%rax)
cmpq $0x0, 0x106563c(%rip)   # 0x111bd08
jne 0xb66ed
movl $0x2, %edi
callq 0xf9f7
movq $0x2, 0x10(%rax)
movw $0x2828, 0x18(%rax)     # imm = 0x2828
movq %rax, 0x106561b(%rip)   # 0x111bd08
movq 0x1065614(%rip), %rsi   # 0x111bd08
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0xb670a
incl (%rax)
movq %rbx, %rdi
callq 0xe43c
movq %rax, %r12
movq -0x38(%rbp), %rax
andq %r15, %rax
sete %cl
testb $0x3, -0x30(%rbp)
setne %dl
orb %cl, %dl
jne 0xb672c
incl (%rax)
leaq -0x60(%rbp), %rcx
movq -0x40(%rbp), %rdi
movl %r14d, %esi
movq -0x30(%rbp), %rdx
callq 0xa85ed
movq %r12, %rdi
movq %rax, %rsi
callq 0xe43c
movq %rax, %r14
cmpq $0x0, 0x10655ba(%rip)   # 0x111bd10
movq -0x68(%rbp), %r13
jne 0xb6779
movl $0x1, %edi
callq 0xf9f7
movq $0x1, 0x10(%rax)
movb $0x29, 0x18(%rax)
movq %rax, 0x1065597(%rip)   # 0x111bd10
movq 0x1065590(%rip), %rsi   # 0x111bd10
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
movq -0x70(%rbp), %r12
jne 0xb679a
incl (%rax)
movq %r14, %rdi
callq 0xe43c
movq %rax, %rdi
movq -0x48(%rbp), %rsi
callq 0xe43c
movq %rax, %r14
cmpq $0x0, 0x106555f(%rip)   # 0x111bd18
jne 0xb67d8
movl $0x1, %edi
callq 0xf9f7
movq $0x1, 0x10(%rax)
movb $0x29, 0x18(%rax)
movq %rax, 0x1065540(%rip)   # 0x111bd18
movq 0x1065539(%rip), %rsi   # 0x111bd18
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
je 0xb698c
jmp 0xb698e
cmpq $0x0, 0x106551c(%rip)   # 0x111bd20
jne 0xb681c
xorl %edi, %edi
callq 0xf9f7
movq $0x0, 0x10(%rax)
movq %rax, 0x1065504(%rip)   # 0x111bd20
movq 0x10654fd(%rip), %r13   # 0x111bd20
movq %r13, %rax
andq %r15, %rax
sete %cl
testb $0x3, %r13b
setne %dl
orb %cl, %dl
jne 0xb6839
incl (%rax)
cmpq $0x0, 0x10654e7(%rip)   # 0x111bd28
jne 0xb6872
movl $0x1c, %edi
callq 0xf9f7
movq $0x1c, 0x10(%rax)
movups 0x476d4(%rip), %xmm0    # 0xfdf30
movups %xmm0, 0x18(%rax)
movups 0x476d5(%rip), %xmm0    # 0xfdf3c
movups %xmm0, 0x24(%rax)
movq %rax, 0x10654b6(%rip)   # 0x111bd28
movq 0x10654af(%rip), %rsi   # 0x111bd28
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0xb688f
incl (%rax)
movq %r13, %rdi
callq 0xe43c
movq %rax, %rdi
movq -0x48(%rbp), %rsi
callq 0xe43c
movq %rax, %r12
cmpq $0x0, 0x1065482(%rip)   # 0x111bd30
jne 0xb68df
movl $0x1f, %edi
callq 0xf9f7
movq $0x1f, 0x10(%rax)
movups 0x47684(%rip), %xmm0    # 0xfdf4d
movups %xmm0, 0x18(%rax)
movups 0x47688(%rip), %xmm0    # 0xfdf5c
movups %xmm0, 0x27(%rax)
movq %rax, 0x1065451(%rip)   # 0x111bd30
movq 0x106544a(%rip), %rsi   # 0x111bd30
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
movq -0x68(%rbp), %r13
jne 0xb6900
incl (%rax)
movq %r12, %rdi
callq 0xe43c
movq %rax, %r12
movq -0x38(%rbp), %rax
andq %r15, %rax
sete %cl
testb $0x3, -0x30(%rbp)
setne %dl
orb %cl, %dl
jne 0xb6922
incl (%rax)
leaq -0x60(%rbp), %rcx
movq -0x40(%rbp), %rdi
movl %r14d, %esi
movq -0x30(%rbp), %rdx
callq 0xa85ed
movq %r12, %rdi
movq %rax, %rsi
callq 0xe43c
movq %rax, %r14
cmpq $0x0, 0x10653ec(%rip)   # 0x111bd38
jne 0xb696d
movl $0x2, %edi
callq 0xf9f7
movq $0x2, 0x10(%rax)
movw $0xa22, 0x18(%rax)      # imm = 0xA22
movq %rax, 0x10653cb(%rip)   # 0x111bd38
movq 0x10653c4(%rip), %rsi   # 0x111bd38
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
movq -0x70(%rbp), %r12
jne 0xb698e
incl (%rax)
movq %r14, %rdi
callq 0xe43c
movq %rax, %rdi
movq -0x60(%rbp), %rbx
movq -0x38(%rbp), %rsi
movq -0x58(%rbp), %r14
movq -0x88(%rbp), %rdx
movq %rdx, %rax
andq %r15, %rax
sete %cl
testb $0x3, %dl
setne %dl
orb %cl, %dl
jne 0xb69ed
decl (%rax)
jne 0xb69ed
movq %rdi, -0x48(%rbp)
movq -0xa8(%rbp), %rdi
shlq $0x30, %rdi
orq -0x88(%rbp), %rdi
leaq 0x60549(%rip), %rsi     # 0x116f29
callq 0xd4e3
movq -0x48(%rbp), %rdi
movq -0x38(%rbp), %rsi
andq %r15, %r13
sete %al
testb $0x3, -0x50(%rbp)
setne %cl
orb %al, %cl
jne 0xb6a04
decl (%r13)
je 0xb6a46
andq %r15, %rsi
sete %al
testb $0x3, -0x30(%rbp)
setne %cl
orb %al, %cl
jne 0xb6a2e
decl (%rsi)
jne 0xb6a2e
movq %rdi, %r15
movq %r12, %rdi
leaq 0x60503(%rip), %rsi     # 0x116f29
callq 0xd4e3
movq %r15, %rdi
movq %rbx, (%r14)
movq %rdi, %rax
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rdi, %r13
movq -0xa0(%rbp), %rdi
leaq 0x604d2(%rip), %rsi     # 0x116f29
callq 0xd4e3
movq %r13, %rdi
jmp 0xb6262
movl $0x20, %edi
callq 0xf9f7
movq $0x20, 0x10(%rax)
movups 0x2dcd0(%rip), %xmm0    # 0xe474d
movups %xmm0, 0x18(%rax)
movups 0x2dcd5(%rip), %xmm0    # 0xe475d
movups %xmm0, 0x28(%rax)
movq %rax, %rdi
callq 0x95a5