// File: /workspace/github_c_makefile_star2_O2/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_type_StackType_stackzj
static void mw_mirth_type_StackType_stackzj (struct mirth_mirth_zaMirth* in_zaMirth_1, STR* in_zaStr_2, struct mirth_type_StackType in_StackType_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, STR* *out_zaStr_5) {
	struct mirth_mirth_zaMirth* v6;
	struct std_list_List_1 v7;
	struct std_list_List_1 v8;
	struct std_list_List_1 v9;
	struct mirth_type_StackTypeBase v10 = mw_mirth_type_StackType_split4(in_zaMirth_1, in_StackType_3, &v6, &v7, &v8, &v9);
	struct mirth_mirth_zaMirth* v11;
	STR* v12;
	bool v13 = mw_mirth_type_StackTypeBase_basezj(v6, in_zaStr_2, v10, &v11, &v12);
	bool v14 = true;
	struct mirth_mirth_zaMirth* r15 = v11;
	STR* r16 = v12;
	bool v17 = v13;
	struct std_list_List_1 v18 = v7;
	bool v19 = v14;
	bool v20 = v14;
	while (v20) {
		struct mirth_mirth_zaMirth* r21 = r15;
		STR* r22 = r16;
		bool v23 = v17;
		struct std_list_List_1 v24 = v18;
		bool v25 = v19;
		struct mirth_mirth_zaMirth* branch_zaMirth_26;
		STR* branch_zaStr_27;
		bool branch_Bool_28;
		struct std_list_List_1 branch_List_29;
		bool branch_Bool_30;
		switch ((v24).tag) {
			case std_list_List_1_Cons: {
				struct std_list_List_1 v31;
				VAL v32 = mtp_std_list_List_1_Cons(v24, &v31);
				STR* branch_zaStr_33;
				if (v23) {
					STR* v34;
					STRLIT(v34, " ", 1);
					STR* v35;
					mw_std_str_zaStr_pushzestrzx(v34, r22, &v35);
					branch_zaStr_33 = v35;
				} else {
					branch_zaStr_33 = r22;
				}
				VAL v36 = ((TUP*)PTRPTR(value_tup(v32)))->cells[0];
				VAL v37 = ((TUP*)PTRPTR(value_tup(v32)))->cells[1];
				tup_decref_outer(value_tup(v32));
				struct mirth_mirth_zaMirth* v38;
				STR* v39;
				mw_mirth_label_Label_namezj(r21, branch_zaStr_33, V_mirth_label_Label(v37), &v38, &v39);
				STR* v40;
				STRLIT(v40, ":", 1);
				STR* v41;
				mw_std_str_zaStr_pushzestrzx(v40, v39, &v41);
				struct mirth_mirth_zaMirth* branch_zaMirth_42;
				STR* branch_zaStr_43;
				switch ((V_std_either_Either_2(v36)).tag) {
					case std_either_Either_2_Left: {
						VAL v44 = mtp_std_either_Either_2_Left(V_std_either_Either_2(v36));
						struct mirth_mirth_zaMirth* v45;
						STR* v46;
						mw_mirth_type_Type_typezj(v38, v41, V_mirth_type_Type(v44), &v45, &v46);
						branch_zaStr_43 = v46;
						branch_zaMirth_42 = v45;
					} break;
					case std_either_Either_2_Right: {
						VAL v47 = mtp_std_either_Either_2_Right(V_std_either_Either_2(v36));
						struct mirth_mirth_zaMirth* v48;
						STR* v49;
						mw_mirth_type_Resource_typezj(v38, v41, V_mirth_type_Type(v47), &v48, &v49);
						branch_zaStr_43 = v49;
						branch_zaMirth_42 = v48;
					} break;
					default: {
						do_panic(str_make("unexpected fallthrough in match\n", 32));
					}
				}
				bool v50 = true;
				bool v51 = true;
				branch_Bool_30 = v51;
				branch_List_29 = v31;
				branch_Bool_28 = v50;
				branch_zaStr_27 = branch_zaStr_43;
				branch_zaMirth_26 = branch_zaMirth_42;
			} break;
			case std_list_List_1_Nil: {
				struct std_list_List_1 v52 = { .tag=std_list_List_1_Nil };
				bool v53 = false;
				branch_Bool_30 = v53;
				branch_List_29 = v52;
				branch_Bool_28 = v23;
				branch_zaStr_27 = r22;
				branch_zaMirth_26 = r21;
			} break;
			default: {
				do_panic(str_make("unexpected fallthrough in match\n", 32));
			}
		}
		v20 = branch_Bool_30;
		v19 = branch_Bool_30;
		v18 = branch_List_29;
		v17 = branch_Bool_28;
		r16 = branch_zaStr_27;
		r15 = branch_zaMirth_26;
	}
	decref(MK_std_list_List_1(v18));
	bool v54 = true;
	struct mirth_mirth_zaMirth* r55 = r15;
	STR* r56 = r16;
	bool v57 = v17;
	struct std_list_List_1 v58 = v9;
	bool v59 = v54;
	bool v60 = v54;
	while (v60) {
		struct mirth_mirth_zaMirth* r61 = r55;
		STR* r62 = r56;
		bool v63 = v57;
		struct std_list_List_1 v64 = v58;
		bool v65 = v59;
		struct mirth_mirth_zaMirth* branch_zaMirth_66;
		STR* branch_zaStr_67;
		bool branch_Bool_68;
		struct std_list_List_1 branch_List_69;
		bool branch_Bool_70;
		switch ((v64).tag) {
			case std_list_List_1_Cons: {
				struct std_list_List_1 v71;
				VAL v72 = mtp_std_list_List_1_Cons(v64, &v71);
				STR* branch_zaStr_73;
				if (v63) {
					STR* v74;
					STRLIT(v74, " ", 1);
					STR* v75;
					mw_std_str_zaStr_pushzestrzx(v74, r62, &v75);
					branch_zaStr_73 = v75;
				} else {
					branch_zaStr_73 = r62;
				}
				struct mirth_mirth_zaMirth* v76;
				STR* v77;
				mw_mirth_type_Resource_typezj(r61, branch_zaStr_73, V_mirth_type_Type(v72), &v76, &v77);
				bool v78 = true;
				bool v79 = true;
				branch_Bool_70 = v79;
				branch_List_69 = v71;
				branch_Bool_68 = v78;
				branch_zaStr_67 = v77;
				branch_zaMirth_66 = v76;
			} break;
			case std_list_List_1_Nil: {
				struct std_list_List_1 v80 = { .tag=std_list_List_1_Nil };
				bool v81 = false;
				branch_Bool_70 = v81;
				branch_List_69 = v80;
				branch_Bool_68 = v63;
				branch_zaStr_67 = r62;
				branch_zaMirth_66 = r61;
			} break;
			default: {
				do_panic(str_make("unexpected fallthrough in match\n", 32));
			}
		}
		v60 = branch_Bool_70;
		v59 = branch_Bool_70;
		v58 = branch_List_69;
		v57 = branch_Bool_68;
		r56 = branch_zaStr_67;
		r55 = branch_zaMirth_66;
	}
	decref(MK_std_list_List_1(v58));
	bool v82 = true;
	struct mirth_mirth_zaMirth* r83 = r55;
	STR* r84 = r56;
	bool v85 = v57;
	struct std_list_List_1 v86 = v8;
	bool v87 = v82;
	bool v88 = v82;
	while (v88) {
		struct mirth_mirth_zaMirth* r89 = r83;
		STR* r90 = r84;
		bool v91 = v85;
		struct std_list_List_1 v92 = v86;
		bool v93 = v87;
		struct mirth_mirth_zaMirth* branch_zaMirth_94;
		STR* branch_zaStr_95;
		bool branch_Bool_96;
		struct std_list_List_1 branch_List_97;
		bool branch_Bool_98;
		switch ((v92).tag) {
			case std_list_List_1_Cons: {
				struct std_list_List_1 v99;
				VAL v100 = mtp_std_list_List_1_Cons(v92, &v99);
				STR* branch_zaStr_101;
				if (v91) {
					STR* v102;
					STRLIT(v102, " ", 1);
					STR* v103;
					mw_std_str_zaStr_pushzestrzx(v102, r90, &v103);
					branch_zaStr_101 = v103;
				} else {
					branch_zaStr_101 = r90;
				}
				struct mirth_mirth_zaMirth* v104;
				STR* v105;
				mw_mirth_type_Type_typezj(r89, branch_zaStr_101, V_mirth_type_Type(v100), &v104, &v105);
				bool v106 = true;
				bool v107 = true;
				branch_Bool_98 = v107;
				branch_List_97 = v99;
				branch_Bool_96 = v106;
				branch_zaStr_95 = v105;
				branch_zaMirth_94 = v104;
			} break;
			case std_list_List_1_Nil: {
				struct std_list_List_1 v108 = { .tag=std_list_List_1_Nil };
				bool v109 = false;
				branch_Bool_98 = v109;
				branch_List_97 = v108;
				branch_Bool_96 = v91;
				branch_zaStr_95 = r90;
				branch_zaMirth_94 = r89;
			} break;
			default: {
				do_panic(str_make("unexpected fallthrough in match\n", 32));
			}
		}
		v88 = branch_Bool_98;
		v87 = branch_Bool_98;
		v86 = branch_List_97;
		v85 = branch_Bool_96;
		r84 = branch_zaStr_95;
		r83 = branch_zaMirth_94;
	}
	decref(MK_std_list_List_1(v86));
	*out_zaStr_5 = r84;
	*out_zaMirth_4 = r83;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %r9, -0xa0(%rbp)
movq %r8, -0xa8(%rbp)
movq %rsi, -0x48(%rbp)
movq %rdi, %r12
movabsq $0xfffffffffffc, %r15   # imm = 0xFFFFFFFFFFFC
shlq $0x30, %rdx
orq %rcx, %rdx
leaq 0xd2cdc(%rip), %rsi     # 0x108bc1
movq %rdx, %rdi
callq 0x1e454
movq %rdx, %r14
movq $0x0, -0x78(%rbp)
pushq $0x1
popq %rax
movl %eax, %r13d
movq $0x0, -0x70(%rbp)
movq $0x0, -0x88(%rbp)
movq $0x0, -0x80(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x60(%rbp)
movq %r14, %rbx
andq %r15, %rbx
setne %al
testb $0x3, %r14b
sete %r15b
andb %al, %r15b
cmpb $0x1, %r15b
jne 0x35f45
incl (%rbx)
movl %r13d, %edi
movq %r14, %rsi
callq 0x36b56
cmpl $0x1, %eax
jne 0x36225
movq %r14, -0x68(%rbp)
movq %r13, %r14
movq %r12, %r13
movq %rdx, %rdi
callq 0xd491
movq %rax, %r12
testb %r15b, %r15b
je 0x35f8e
decl (%rbx)
jne 0x35f8e
shlq $0x30, %r14
orq -0x68(%rbp), %r14
movq %r14, %rdi
leaq 0xd2f98(%rip), %rsi     # 0x108f21
callq 0xce94
movq %r12, %rsi
shrq $0x30, %rsi
movabsq $0xfffffffffffc, %r15   # imm = 0xFFFFFFFFFFFC
andq %r15, %r12
movq %r13, %rdi
movq %r12, %rdx
leaq -0x30(%rbp), %rcx
callq 0x34dd2
cmpl $0x8, %eax
ja 0x36926
movl %eax, %eax
leaq 0x9ca45(%rip), %rcx     # 0xd2a08
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
xorl %r13d, %r13d
xorl %edi, %edi
leaq 0xd3339(%rip), %rsi     # 0x109311
callq 0x1e400
movq %rdx, %r14
movq -0x30(%rbp), %r12
jmp 0x35f29
movq %rdx, %rdi
callq 0x34e20
movq %rax, %rdi
callq 0x36c1f
btsq $0x32, %rax
jmp 0x3602c
movabsq $0x2000000000000, %rdi  # imm = 0x2000000000000
jmp 0x3609b
movq %rdx, %rdi
callq 0x34edb
movq %rax, %rdi
callq 0x36bd6
movabsq $0x3000000000000, %rcx  # imm = 0x3000000000000
orq %rcx, %rax
movq %rax, %rdi
jmp 0x3609b
movq %rdx, %rdi
leaq -0x40(%rbp), %rsi
callq 0x34f7f
movl %eax, %ebx
movq %rdx, %r12
movl -0x40(%rbp), %edi
shlq $0x30, %rdi
orq -0x38(%rbp), %rdi
leaq 0xd2a95(%rip), %rsi     # 0x108ae9
movq -0x88(%rbp), %rdx
movq -0x80(%rbp), %rcx
callq 0xcf39
movq %rdx, -0x80(%rbp)
shlq $0x30, %rbx
orq %r12, %rbx
movq %rbx, %rdi
leaq 0xd2b48(%rip), %rsi     # 0x108bc1
callq 0x1e454
movq %rdx, %r14
movq -0x30(%rbp), %r12
pushq $0x1
popq %rax
movl %eax, %r13d
movq %rax, -0x88(%rbp)
jmp 0x35f29
leaq 0x4(%r15), %rdi
leaq 0xd326f(%rip), %rsi     # 0x109311
callq 0x1e400
movq %rdx, %r14
xorl %r13d, %r13d
movq -0x30(%rbp), %r12
jmp 0x35f29
movq %rdx, %rdi
leaq -0x40(%rbp), %rsi
callq 0x34ef8
movl %eax, %ebx
movq %rdx, %r12
movl -0x40(%rbp), %edi
shlq $0x30, %rdi
orq -0x38(%rbp), %rdi
leaq 0xd2a10(%rip), %rsi     # 0x108ae9
movq -0x78(%rbp), %rdx
movq -0x70(%rbp), %rcx
callq 0xcf39
movq %rdx, -0x70(%rbp)
shlq $0x30, %rbx
orq %r12, %rbx
movq %rbx, %rdi
leaq 0xd2ac6(%rip), %rsi     # 0x108bc1
callq 0x1e454
movq %rdx, %r14
movq -0x30(%rbp), %r12
pushq $0x1
popq %rax
movl %eax, %r13d
movq %rax, -0x78(%rbp)
jmp 0x35f29
movq %rdx, %rdi
leaq -0x40(%rbp), %rsi
leaq -0x50(%rbp), %rdx
callq 0x3502f
movl %eax, %ebx
movq %rdx, %r13
movl -0x40(%rbp), %edi
shlq $0x30, %rdi
orq -0x38(%rbp), %rdi
leaq 0xd29ac(%rip), %rsi     # 0x108ae9
callq 0x1e400
movq %rdx, %r12
pushq $0x2
popq %rdi
callq 0xd928
movq %rax, %rcx
andq %r15, %rcx
movw $0x2, 0x6(%rcx)
movq -0x50(%rbp), %rdx
movq %rdx, 0x18(%rcx)
leaq 0xd3160(%rip), %rdx     # 0x1092c8
movq %rdx, 0x20(%rcx)
movq %r12, 0x8(%rcx)
jmp 0x361d3
movq %rdx, %rdi
leaq -0x40(%rbp), %rsi
leaq -0x50(%rbp), %rdx
callq 0x350d3
movl %eax, %ebx
movq %rdx, %r13
movl -0x40(%rbp), %edi
shlq $0x30, %rdi
orq -0x38(%rbp), %rdi
leaq 0xd2950(%rip), %rsi     # 0x108ae9
callq 0x1e454
movq %rdx, %r12
pushq $0x2
popq %rdi
callq 0xd928
movq %rax, %rcx
andq %r15, %rcx
movw $0x2, 0x6(%rcx)
movq -0x50(%rbp), %rdx
movq %rdx, 0x18(%rcx)
leaq 0xd3104(%rip), %rdx     # 0x1092c8
movq %rdx, 0x20(%rcx)
leaq 0x4(%r15), %rdx
orq %r12, %rdx
movq %rdx, 0x8(%rcx)
leaq 0xd2d47(%rip), %rdx     # 0x108f21
movq %rdx, 0x10(%rcx)
movq %rax, %rdi
leaq 0xd21b1(%rip), %rsi     # 0x108399
movq -0x58(%rbp), %rdx
movq -0x60(%rbp), %rcx
callq 0xcf39
movq %rdx, -0x60(%rbp)
shlq $0x30, %rbx
orq %r13, %rbx
movq %rbx, %rdi
leaq 0xd29b7(%rip), %rsi     # 0x108bc1
callq 0x1e454
movq %rdx, %r14
movq -0x30(%rbp), %r12
pushq $0x1
popq %rax
movl %eax, %r13d
movq %rax, -0x58(%rbp)
jmp 0x35f29
testl %eax, %eax
jne 0x36926
movl %r13d, %edi
movq %r14, %rsi
callq 0x36c68
movl %eax, %edi
movq %rdx, %rsi
callq 0x31344
movq %rax, %rcx
shrq $0x30, %rcx
cmpw $0x4, %cx
movabsq $0xfffffffffffc, %r15   # imm = 0xFFFFFFFFFFFC
movq -0x58(%rbp), %rbx
ja 0x36926
andq %r15, %rax
leaq 0x9c789(%rip), %rdx     # 0xd29f4
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
movq 0x10d659d(%rip), %rsi   # 0x110c818
testq %rsi, %rsi
jne 0x363bc
leaq 0xa2d3b(%rip), %rdi     # 0xd8fc6
pushq $0x8
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10d657b(%rip)   # 0x110c818
jmp 0x363bc
movq %rax, %rdi
callq 0x36dc8
movq %rax, %rbx
movq 0x10d6554(%rip), %rsi   # 0x110c808
testq %rsi, %rsi
jne 0x362d2
leaq 0xb7ed5(%rip), %rdi     # 0xee195
pushq $0x1
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10d6536(%rip)   # 0x110c808
movq %r12, %r14
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x362eb
incl (%rax)
movq -0x48(%rbp), %rdi
callq 0xd8b0
leaq -0x40(%rbp), %r12
leaq -0x30(%rbp), %r13
movq %r14, %rdi
movq %rax, %rsi
movq %rbx, %rdx
movq %r12, %rcx
movq %r13, %r8
callq 0x35d96
movq (%r13), %rax
jmp 0x3647a
xorl %r13d, %r13d
movq -0x48(%rbp), %rax
jmp 0x36485
movq %rax, %rdi
callq 0x36de5
movq %rax, %r14
movq %r12, %rdi
leaq -0x30(%rbp), %r12
movq %rax, %rsi
movq %r12, %rdx
callq 0x32ea4
movq (%r12), %rdi
leaq -0x40(%rbp), %rcx
movl %eax, %esi
callq 0x2ab4b
cmpl $0x2, %eax
jne 0x363e3
movq %rdx, %rdi
callq 0x2aa5d
movl %eax, %edi
leaq 0xd2fed(%rip), %rsi     # 0x109358
callq 0x8d0c
movq %rdx, %rdi
movq -0x40(%rbp), %r13
callq 0xd491
pushq $0x2
popq %rsi
movl %eax, %edi
callq 0x17ce9
testb %al, %al
je 0x36417
movq -0x48(%rbp), %rsi
jmp 0x3645e
movq 0x10d6482(%rip), %rsi   # 0x110c820
testq %rsi, %rsi
jne 0x363bc
leaq 0xa2c25(%rip), %rdi     # 0xd8fcf
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10d6464(%rip)   # 0x110c820
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x363d2
incl (%rax)
movq -0x48(%rbp), %rdi
callq 0xd8b0
movb $0x1, %r13b
jmp 0x36485
movq %rdx, %rcx
andq %r15, %rcx
sete %sil
testb $0x3, %dl
setne %dil
orb %sil, %dil
jne 0x36413
decl (%rcx)
jne 0x36413
shlq $0x30, %rax
orq %rdx, %rax
movq %rax, %rdi
leaq 0xd26db(%rip), %rsi     # 0x108ae9
callq 0xce94
movq -0x40(%rbp), %r13
movq 0x10d63f2(%rip), %rsi   # 0x110c810
testq %rsi, %rsi
jne 0x3643c
leaq 0xb827a(%rip), %rdi     # 0xee6a4
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10d63d4(%rip)   # 0x110c810
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x36452
incl (%rax)
movq -0x48(%rbp), %rdi
callq 0xd8b0
movq %rax, %rsi
leaq -0x40(%rbp), %r12
leaq -0x30(%rbp), %rbx
movq %r13, %rdi
movq %r14, %rdx
movq %r12, %rcx
movq %rbx, %r8
callq 0x35d33
movq (%rbx), %rax
movq (%r12), %r12
movb $0x1, %r13b
movq -0x58(%rbp), %rbx
leaq -0x40(%rbp), %rsi
movq -0x60(%rbp), %rdx
movb $0x1, %cl
movq %rdx, %rdi
testb $0x1, %cl
je 0x3667a
xorl %ecx, %ecx
movl $0x0, %edx
testl %ebx, %ebx
je 0x3648f
movq %rax, -0x48(%rbp)
cmpl $0x1, %ebx
jne 0x36926
movq %r15, %r14
movl %r13d, %r15d
callq 0xce01
movq %rax, %r13
movq %rdx, %rbx
testb $0x1, %r15b
movq %r12, -0x68(%rbp)
je 0x3651b
movq 0x10d6313(%rip), %rsi   # 0x110c7e8
testq %rsi, %rsi
movq %r14, %r15
jne 0x364f6
leaq 0x9f923(%rip), %rdi     # 0xd5e07
pushq $0x1
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10d62f2(%rip)   # 0x110c7e8
movq %rsi, %rax
andq %r15, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x3650c
incl (%rax)
movq -0x48(%rbp), %rdi
callq 0xd8b0
movq %rax, -0x48(%rbp)
jmp 0x3651e
movq %r14, %r15
movq %r13, %rdi
movq %rbx, %rsi
callq 0x8a95
movq %r13, %r14
andq %r15, %r14
movq 0x8(%r14), %r15
movq %r13, %rdi
movq %rbx, %rsi
callq 0x8a95
movq 0x18(%r14), %r12
movq %r13, %rdi
movq %rbx, %rsi
callq 0x8a95
movq %r13, %rdi
callq 0x8ae0
movq -0x68(%rbp), %rdi
movq -0x48(%rbp), %rsi
movq %r12, %rdx
leaq -0x30(%rbp), %rcx
leaq -0x50(%rbp), %r8
callq 0x369a0
movq 0x10d627c(%rip), %rsi   # 0x110c7f0
testq %rsi, %rsi
jne 0x36592
leaq 0xa0eba(%rip), %rdi     # 0xd743a
pushq $0x1
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10d625e(%rip)   # 0x110c7f0
movq %rsi, %rax
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
leaq -0x98(%rbp), %r12
leaq -0x90(%rbp), %r13
jne 0x365c0
incl (%rax)
movq -0x50(%rbp), %rdi
callq 0xd8b0
movq %rax, %rbx
movq %r15, %rax
shrq $0x30, %rax
movabsq $0xfffffffffffc, %r14   # imm = 0xFFFFFFFFFFFC
andq %r14, %r15
cmpq $0x1, %rax
je 0x3662f
testl %eax, %eax
jne 0x36926
movq %r15, %rdi
callq 0x1e79d
movq -0x30(%rbp), %rdi
movq %rax, %rdx
shrq $0x30, %rdx
movabsq $0xfffffffffffc, %r15   # imm = 0xFFFFFFFFFFFC
andq %r15, %rax
movq %rbx, %rsi
movq %rax, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0x3520f
movq -0x90(%rbp), %rax
movq -0x98(%rbp), %r12
jmp 0x36667
movq %r15, %rdi
callq 0x1e7e4
movq -0x30(%rbp), %rdi
movq %rax, %rdx
shrq $0x30, %rdx
andq %r14, %rax
movq %rbx, %rsi
movq %rax, %rcx
movq %r12, %r8
movq %r13, %r9
callq 0x36b14
movq -0x90(%rbp), %rax
movq -0x98(%rbp), %r12
movq %r14, %r15
movl -0x40(%rbp), %ebx
movq -0x38(%rbp), %rdx
movb $0x1, %r13b
leaq -0x40(%rbp), %rsi
jmp 0x3648d
movq %rdi, %rsi
andq %r15, %rsi
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
jne 0x366ae
decl (%rsi)
jne 0x366ae
shlq $0x30, %rbx
orq %rdi, %rbx
movq %rbx, %rdi
movq %rax, %rbx
leaq 0xd1bd3(%rip), %rsi     # 0x108279
callq 0xce94
movq %rbx, %rax
leaq -0x40(%rbp), %rsi
leaq -0x30(%rbp), %r15
movq -0x88(%rbp), %rdx
movq -0x80(%rbp), %r8
movb $0x1, %cl
movq %r8, %rdi
testb $0x1, %cl
je 0x3678e
xorl %ecx, %ecx
movl $0x0, %r8d
testl %edx, %edx
je 0x366c3
cmpl $0x1, %edx
jne 0x36926
movq %r12, %rbx
movq %rax, %r12
callq 0xce01
movq %rax, %r14
testb $0x1, %r13b
je 0x3674a
movq 0x10d60f9(%rip), %rsi   # 0x110c7f8
testq %rsi, %rsi
jne 0x3671d
leaq 0x9f6fc(%rip), %rdi     # 0xd5e07
pushq $0x1
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10d60db(%rip)   # 0x110c7f8
movq %rsi, %rax
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x3673d
incl (%rax)
movq %r12, %rdi
callq 0xd8b0
movq %rax, %rsi
jmp 0x3674d
movq %r12, %rsi
movq %r14, %rdx
shrq $0x30, %rdx
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq %rax, %r14
movq %rbx, %rdi
movq %r14, %rcx
movq %r15, %r8
leaq -0x50(%rbp), %r9
callq 0x36b14
movl -0x40(%rbp), %edx
movq -0x38(%rbp), %r8
movq -0x50(%rbp), %rax
movq -0x30(%rbp), %r12
movb $0x1, %r13b
leaq -0x40(%rbp), %rsi
jmp 0x366c1
movq %rdx, %r8
movq %rdi, %rsi
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rsi
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
jne 0x367d2
decl (%rsi)
jne 0x367d2
movq %r8, %rcx
shlq $0x30, %rcx
orq %rdi, %rcx
movq %rcx, %rdi
movq %rax, %rbx
leaq 0xd1aaf(%rip), %rsi     # 0x108279
callq 0xce94
movq %rbx, %rax
leaq -0x40(%rbp), %rsi
leaq -0x30(%rbp), %r15
leaq -0x50(%rbp), %rbx
movq -0x78(%rbp), %rcx
movq -0x70(%rbp), %rdx
movb $0x1, %r8b
movq %rdx, %rdi
testb $0x1, %r8b
je 0x368c2
xorl %edx, %edx
movl $0x0, %r8d
testl %ecx, %ecx
je 0x367e9
movq %r12, -0x68(%rbp)
cmpl $0x1, %ecx
jne 0x36926
movq %r15, %r14
movl %r13d, %r15d
movq %rax, %r13
callq 0xce01
movq %rax, %r12
testb $0x1, %r15b
je 0x3687b
movq 0x10d5fd3(%rip), %rsi   # 0x110c800
testq %rsi, %rsi
movq %r14, %r15
jne 0x3684e
leaq 0x9f5cb(%rip), %rdi     # 0xd5e07
pushq $0x1
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10d5fb2(%rip)   # 0x110c800
movq %rsi, %rax
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x3686e
incl (%rax)
movq %r13, %rdi
callq 0xd8b0
movq %rax, %rsi
jmp 0x36881
movq %r13, %rsi
movq %r14, %r15
movq %r12, %rdx
shrq $0x30, %rdx
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq %rax, %r12
movq -0x68(%rbp), %rdi
movq %r12, %rcx
movq %r15, %r8
movq %rbx, %r9
callq 0x3520f
movl -0x40(%rbp), %ecx
movq -0x38(%rbp), %rdx
movq -0x50(%rbp), %rax
movq -0x30(%rbp), %r12
movb $0x1, %r13b
leaq -0x40(%rbp), %rsi
jmp 0x367e6
movq %rax, %rbx
movq %rcx, %rsi
movabsq $0xfffffffffffc, %rdx   # imm = 0xFFFFFFFFFFFC
andq %rdi, %rdx
sete %al
testb $0x3, %dil
setne %cl
orb %al, %cl
jne 0x36900
decl (%rdx)
jne 0x36900
movq %rsi, %rax
shlq $0x30, %rax
orq %rdi, %rax
movq %rax, %rdi
leaq 0xd197e(%rip), %rsi     # 0x108279
callq 0xce94
movq -0xa0(%rbp), %rax
movq %rbx, (%rax)
movq -0xa8(%rbp), %rax
movq %r12, (%rax)
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x9dee0(%rip), %rdi     # 0xd480d
pushq $0x20
popq %rsi
callq 0x8a21
movq %rax, %rdi
callq 0x8cc6