LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_external_External_symbol
static STR* mw_mirth_external_External_symbol (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_External_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_external_External_symbol, in_External_2);
	VAL v6 = mut_get(v5);
	*out_zaMirth_3 = in_zaMirth_1;
	return value_str(v6);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x10(%rbp), %rsi
leaq 0x10d98c9(%rip), %rdi   # 0x1395f78
callq 0x40d30
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rdi
callq 0x40f30
movq %rax, -0x30(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x8(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0xb980
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_type_StackType_parts
static struct std_list_List_1 mw_mirth_type_StackType_parts (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_type_StackType in_StackType_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	struct std_list_List_1 v6;
	struct mirth_type_StackTypeBase v7 = mw_mirth_type_StackType_splitzeparts(in_zaMirth_1, in_StackType_2, &v5, &v6);
	decref(MK_mirth_type_StackTypeBase(v7));
	*out_zaMirth_3 = v5;
	return v6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movl %esi, -0x20(%rbp)
movq %rdx, -0x18(%rbp)
movq %rdi, -0x28(%rbp)
movq %rcx, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movl -0x20(%rbp), %esi
movq -0x18(%rbp), %rdx
leaq -0x38(%rbp), %rcx
leaq -0x10(%rbp), %r8
callq 0xafdb0
movl %eax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movl -0x48(%rbp), %edi
movq -0x40(%rbp), %rsi
callq 0xc0680
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x2bca20
movl -0x48(%rbp), %edi
movq -0x40(%rbp), %rsi
callq 0xc0680
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x2bca20
movl -0x48(%rbp), %edi
movq -0x40(%rbp), %rsi
callq 0xc0680
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x2bca20
movl -0x48(%rbp), %edi
movq -0x40(%rbp), %rsi
callq 0xc0680
movq %rax, -0x88(%rbp)
movq %rdx, -0x80(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0x88(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x2bca1e
movl -0x48(%rbp), %edi
movq -0x40(%rbp), %rsi
callq 0xc0680
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x2bca20
jmp 0x2bca22
movq -0x38(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0xa0, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_tozectypezeexpr
static STR* mw_mirth_c99_tozectypezeexpr (struct mirth_mirth_zaMirth* in_zaMirth_1, struct std_either_zaEither_2 in_zaC99ValuezfResource_2, struct mirth_type_CType in_CType_3, struct mirth_mirth_zaMirth* *out_zaMirth_4) {
	struct mirth_c99_C99ReprType v6 = mw_mirth_type_CType_zgC99ReprType(in_CType_3);
	struct mirth_mirth_zaMirth* v7;
	STR* v8 = mw_mirth_c99_zaC99ValuezfResource_consumezeas(in_zaMirth_1, v6, in_zaC99ValuezfResource_2, &v7);
	*out_zaMirth_4 = v7;
	return v8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movl %esi, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movl %ecx, -0x20(%rbp)
movq %r8, -0x18(%rbp)
movq %rdi, -0x28(%rbp)
movq %r9, -0x30(%rbp)
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x2bd3f0
movl %eax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movq -0x28(%rbp), %rdi
movl -0x40(%rbp), %esi
movq -0x38(%rbp), %rdx
movl -0x10(%rbp), %ecx
movq -0x8(%rbp), %r8
leaq -0x48(%rbp), %r9
callq 0x2a6830
movq %rax, -0x50(%rbp)
movq -0x48(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movq -0x50(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_external_External_cnamezetype
static STR* mw_mirth_external_External_cnamezetype (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_External_2, struct mirth_mirth_zaMirth* *out_zaMirth_3, struct mirth_type_ArrowType* *out_ArrowType_5) {
	struct mirth_mirth_zaMirth* v6;
	STR* v7 = mw_mirth_external_External_cname(in_zaMirth_1, in_External_2, &v6);
	struct mirth_mirth_zaMirth* v8;
	struct mirth_type_ArrowType* v9 = mw_mirth_external_External_type(v6, in_External_2, &v8);
	*out_ArrowType_5 = v9;
	*out_zaMirth_3 = v8;
	return v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x28(%rbp), %rdx
callq 0x2bcff0
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x38(%rbp), %rdx
callq 0x132c50
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x30(%rbp), %rax
addq $0x40, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_c99zewordzesigzx
static void mw_mirth_c99_c99zewordzesigzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99* in_zaC99_2, uint64_t in_Word_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99* *out_zaC99_5) {
	struct mirth_mirth_zaMirth* v6;
	struct mirth_c99_zaC99* v7;
	struct mirth_c99_C99API* v8 = mw_mirth_word_Word_c99zeapi(in_zaMirth_1, in_zaC99_2, in_Word_3, &v6, &v7);
	struct mirth_mirth_zaMirth* v9;
	struct mirth_c99_zaC99* v10;
	mw_mirth_c99_c99zesmartzesigzx(v6, v7, v8, &v9, &v10);
	*out_zaC99_5 = v10;
	*out_zaMirth_4 = v9;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x30(%rbp), %rcx
leaq -0x38(%rbp), %r8
callq 0x2bde80
movq %rax, -0x40(%rbp)
movq -0x30(%rbp), %rdi
movq -0x38(%rbp), %rsi
movq -0x40(%rbp), %rdx
leaq -0x48(%rbp), %rcx
leaq -0x50(%rbp), %r8
callq 0x2be0a0
movq -0x50(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x48(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
addq $0x50, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_c99zesmartzesigzx
static void mw_mirth_c99_c99zesmartzesigzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99* in_zaC99_2, struct mirth_c99_C99API* in_C99API_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99* *out_zaC99_5) {
	struct mirth_mirth_zaMirth* v6;
	struct mirth_c99_zaC99* v7;
	mw_mirth_c99_zaC99_indent(in_zaMirth_1, in_zaC99_2, &v6, &v7);
	struct mirth_mirth_zaMirth* v8;
	struct mirth_c99_zaC99* v9;
	mw_mirth_c99_zaC99_smartzesigzeput(v6, v7, in_C99API_3, &v8, &v9);
	STR* v10;
	STRLIT(v10, ";", 1);
	struct mirth_mirth_zaMirth* v11;
	struct mirth_c99_zaC99* v12;
	mw_mirth_c99_zaC99_put(v8, v9, v10, &v11, &v12);
	struct mirth_mirth_zaMirth* v13;
	struct mirth_c99_zaC99* v14;
	mw_mirth_c99_zaC99_line(v11, v12, &v13, &v14);
	*out_zaC99_5 = v14;
	*out_zaMirth_4 = v13;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x30(%rbp), %rdx
leaq -0x38(%rbp), %rcx
callq 0x22a120
movq -0x30(%rbp), %rdi
movq -0x38(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x48(%rbp), %r8
callq 0x2882e0
cmpq $0x0, 0x10da1ab(%rip)   # 0x13982a0
jne 0x2be10f
leaq 0xaf9b6(%rip), %rdi     # 0x36dab4
movl $0x1, %esi
callq 0xb6c0
movq %rax, 0x10da191(%rip)   # 0x13982a0
jmp 0x2be111
movq 0x10da188(%rip), %rax   # 0x13982a0
movq %rax, -0x60(%rbp)
leaq 0xd3035(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x2be1cb
movq 0x10da15c(%rip), %rax   # 0x13982a0
movq %rax, -0x70(%rbp)
leaq 0xd3009(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x68(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x70(%rbp), %rax
cmpq $0x0, %rax
je 0x2be1cb
movq 0x10da12e(%rip), %rax   # 0x13982a0
movq %rax, -0x80(%rbp)
leaq 0xd2fdb(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x78(%rbp)
movq -0x80(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x2be1cb
movq 0x10da106(%rip), %rax   # 0x13982a0
movq %rax, -0x90(%rbp)
leaq 0xd2fb0(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x88(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x90(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x2be1cd
movq 0x10da0cc(%rip), %rax   # 0x13982a0
movq %rax, -0x50(%rbp)
movq -0x40(%rbp), %rdi
movq -0x48(%rbp), %rsi
movq -0x50(%rbp), %rdx
leaq -0x98(%rbp), %rcx
leaq -0xa0(%rbp), %r8
callq 0x220040
movq -0x98(%rbp), %rdi
movq -0xa0(%rbp), %rsi
leaq -0xa8(%rbp), %rdx
leaq -0xb0(%rbp), %rcx
callq 0x2201d0
movq -0xb0(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0xa8(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
addq $0xb0, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_word_Word_cnamezetype
static STR* mw_mirth_word_Word_cnamezetype (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Word_2, struct mirth_mirth_zaMirth* *out_zaMirth_3, struct mirth_type_ArrowType* *out_ArrowType_5) {
	struct mirth_mirth_zaMirth* v6;
	STR* v7 = mw_mirth_word_Word_cname(in_zaMirth_1, in_Word_2, &v6);
	struct mirth_mirth_zaMirth* v8;
	struct mirth_type_ArrowType* v9 = mw_mirth_word_Word_type(v6, in_Word_2, &v8);
	*out_ArrowType_5 = v9;
	*out_zaMirth_3 = v8;
	return v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x28(%rbp), %rdx
callq 0x2be2b0
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x38(%rbp), %rdx
callq 0xdf130
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x30(%rbp), %rax
addq $0x40, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_c99zeblockzesigzx
static void mw_mirth_c99_c99zeblockzesigzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99* in_zaC99_2, uint64_t in_Block_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99* *out_zaC99_5) {
	struct mirth_mirth_zaMirth* v6;
	struct mirth_c99_zaC99* v7;
	mw_mirth_c99_zaC99_indent(in_zaMirth_1, in_zaC99_2, &v6, &v7);
	struct mirth_mirth_zaMirth* v8;
	struct mirth_c99_zaC99* v9;
	mw_mirth_c99_c99zeblockzesigzeput(v6, v7, in_Block_3, &v8, &v9);
	STR* v10;
	STRLIT(v10, ";", 1);
	struct mirth_mirth_zaMirth* v11;
	struct mirth_c99_zaC99* v12;
	mw_mirth_c99_zaC99_put(v8, v9, v10, &v11, &v12);
	struct mirth_mirth_zaMirth* v13;
	struct mirth_c99_zaC99* v14;
	mw_mirth_c99_zaC99_line(v11, v12, &v13, &v14);
	*out_zaC99_5 = v14;
	*out_zaMirth_4 = v13;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x30(%rbp), %rdx
leaq -0x38(%rbp), %rcx
callq 0x22a120
movq -0x30(%rbp), %rdi
movq -0x38(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x48(%rbp), %r8
callq 0x2be8d0
cmpq $0x0, 0x10d9b23(%rip)   # 0x13982a8
jne 0x2be79f
leaq 0xaf326(%rip), %rdi     # 0x36dab4
movl $0x1, %esi
callq 0xb6c0
movq %rax, 0x10d9b09(%rip)   # 0x13982a8
jmp 0x2be7a1
movq 0x10d9b00(%rip), %rax   # 0x13982a8
movq %rax, -0x60(%rbp)
leaq 0xd29a5(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x2be85b
movq 0x10d9ad4(%rip), %rax   # 0x13982a8
movq %rax, -0x70(%rbp)
leaq 0xd2979(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x68(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x70(%rbp), %rax
cmpq $0x0, %rax
je 0x2be85b
movq 0x10d9aa6(%rip), %rax   # 0x13982a8
movq %rax, -0x80(%rbp)
leaq 0xd294b(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x78(%rbp)
movq -0x80(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x2be85b
movq 0x10d9a7e(%rip), %rax   # 0x13982a8
movq %rax, -0x90(%rbp)
leaq 0xd2920(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x88(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x90(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x2be85d
movq 0x10d9a44(%rip), %rax   # 0x13982a8
movq %rax, -0x50(%rbp)
movq -0x40(%rbp), %rdi
movq -0x48(%rbp), %rsi
movq -0x50(%rbp), %rdx
leaq -0x98(%rbp), %rcx
leaq -0xa0(%rbp), %r8
callq 0x220040
movq -0x98(%rbp), %rdi
movq -0xa0(%rbp), %rsi
leaq -0xa8(%rbp), %rdx
leaq -0xb0(%rbp), %rcx
callq 0x2201d0
movq -0xb0(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0xa8(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
addq $0xb0, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtp_mirth_arrow_Home_Word
static uint64_t mtp_mirth_arrow_Home_Word (struct mirth_arrow_Home in_Home_1) {
	struct mirth_arrow_Home_Word v3 = *in_Home_1.ptr.Word;
	if (!--(in_Home_1.ptr.Word->refs)) {
		free(in_Home_1.ptr.Word);
	} else {
	}
	return v3.mWord;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rcx
movq %rcx, -0x20(%rbp)
movq 0x8(%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x2bf47d
movq -0x8(%rbp), %rdi
callq 0x5030
jmp 0x2bf47f
jmp 0x2bf47f
movq -0x18(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_arrow_Block_homezeindex
static INT mw_mirth_arrow_Block_homezeindex (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Block_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_arrow_Block_homezeindex, in_Block_2);
	bool v6 = mut_is_set(v5);
	struct mirth_mirth_zaMirth* branch_zaMirth_7;
	INT branch_Int_8;
	if (v6) {
		VAL v9 = mut_get(v5);
		branch_Int_8 = value_int(v9);
		branch_zaMirth_7 = in_zaMirth_1;
	} else {
		struct mirth_mirth_zaMirth* v10;
		struct mirth_arrow_Home v11 = mw_mirth_arrow_Block_home(in_zaMirth_1, in_Block_2, &v10);
		struct mirth_mirth_zaMirth* v12;
		INT v13 = mw_mirth_arrow_Home_incrementzeindexzx(v10, v11, &v12);
		incref(MKINT(v13));
		mut_set(MKINT(v13), v5);
		branch_Int_8 = v13;
		branch_zaMirth_7 = v12;
	}
	*out_zaMirth_3 = branch_zaMirth_7;
	return branch_Int_8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x18(%rbp), %rsi
leaq 0x10d8e46(%rip), %rdi   # 0x13982f8
callq 0x40d30
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rdi
callq 0x45e40
andb $0x1, %al
movb %al, -0x29(%rbp)
testb $0x1, -0x29(%rbp)
je 0x2bf506
movq -0x28(%rbp), %rdi
callq 0x40f30
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0x2ac40
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
jmp 0x2bf63f
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
leaq -0x58(%rbp), %rdx
callq 0x11d8c0
movl %eax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x58(%rbp), %rdi
movl -0x68(%rbp), %esi
movq -0x60(%rbp), %rdx
leaq -0x70(%rbp), %rcx
callq 0x2bf6b0
movq %rax, -0x78(%rbp)
movq -0x78(%rbp), %rax
movq %rax, -0x88(%rbp)
leaq 0xd1ee0(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x80(%rbp)
movq -0x80(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x2bf5f9
movq -0x78(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq 0xd1eb4(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x90(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x98(%rbp), %rax
cmpq $0x0, %rax
je 0x2bf5f9
movq -0x78(%rbp), %rax
movq %rax, -0xa8(%rbp)
leaq 0xd1e80(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0xa0(%rbp)
movq -0xa8(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x2bf5f9
movq -0x78(%rbp), %rax
movq %rax, -0xb8(%rbp)
leaq 0xd1e52(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0xb0(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0xb8(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x2bf5fb
movq -0x78(%rbp), %rax
movq %rax, -0xc8(%rbp)
leaq 0xd1e1b(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0xc0(%rbp)
movq -0x28(%rbp), %rdx
movq -0xc8(%rbp), %rdi
movq -0xc0(%rbp), %rsi
callq 0x431a0
movq -0x78(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x70(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
addq $0xd0, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_arrow_Home_incrementzeindexzx
static INT mw_mirth_arrow_Home_incrementzeindexzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_arrow_Home in_Home_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* branch_zaMirth_5;
	INT branch_Int_6;
	switch ((in_Home_2).tag) {
		case mirth_arrow_Home_Word: {
			uint64_t v7 = mtp_mirth_arrow_Home_Word(in_Home_2);
			struct mirth_mirth_zaMirth* v8;
			INT v9 = mw_mirth_word_Word_incrementzewordzehomezeindexzx(in_zaMirth_1, v7, &v8);
			branch_Int_6 = v9;
			branch_zaMirth_5 = v8;
		} break;
		case mirth_arrow_Home_Main: {
			uint64_t v10 = mtp_mirth_arrow_Home_Main(in_Home_2);
			struct mirth_mirth_zaMirth* v11;
			INT v12 = mw_mirth_mirth_zaMirth_incrementzemainzehomezeindexzx(in_zaMirth_1, &v11);
			branch_Int_6 = v12;
			branch_zaMirth_5 = v11;
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	*out_zaMirth_3 = branch_zaMirth_5;
	return branch_Int_6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movl %esi, -0x18(%rbp)
movq %rdx, -0x10(%rbp)
movq %rdi, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movl -0x18(%rbp), %eax
movl %eax, -0x64(%rbp)
testl %eax, %eax
je 0x2bf714
jmp 0x2bf6d3
movl -0x64(%rbp), %eax
subl $0x1, %eax
jne 0x2bf747
jmp 0x2bf6dd
movl -0x18(%rbp), %edi
movq -0x10(%rbp), %rsi
callq 0x2bf440
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
movq -0x38(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x2bf780
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x30(%rbp)
jmp 0x2bf760
movl -0x18(%rbp), %edi
movq -0x10(%rbp), %rsi
callq 0x2bf660
movq %rax, -0x50(%rbp)
movq -0x20(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x2bf8b0
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x58(%rbp), %rax
movq %rax, -0x30(%rbp)
jmp 0x2bf760
leaq 0x94733(%rip), %rdi     # 0x353e81
movl $0x20, %esi
callq 0xb6c0
movq %rax, %rdi
callq 0xc620
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_word_Word_incrementzewordzehomezeindexzx
static INT mw_mirth_word_Word_incrementzewordzehomezeindexzx (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Word_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	INT v6 = mw_mirth_word_Word_wordzehomezeindex(in_zaMirth_1, in_Word_2, &v5);
	incref(MKINT(v6));
	INT v7 = WRAP_I63(1LL);
	INT v8 = v7;
	INT v9 = int_add(v6, v8);
	struct mirth_mirth_zaMirth* v10;
	mw_mirth_word_Word_wordzehomezeindexzx(v5, v9, in_Word_2, &v10);
	*out_zaMirth_3 = v10;
	return v6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
leaq -0x28(%rbp), %rdx
callq 0x2bfbb0
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
leaq 0xd1c6d(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x2bf84d
movq -0x8(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0xd1c48(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x40(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x48(%rbp), %rax
cmpq $0x0, %rax
je 0x2bf84d
movq -0x8(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq 0xd1c1d(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x50(%rbp)
movq -0x58(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x2bf84d
movq -0x8(%rbp), %rax
movq %rax, -0x68(%rbp)
leaq 0xd1bf8(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x2bf84f
movq 0xaf202(%rip), %rax     # 0x36ea58
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x8(%rbp), %rdi
movq -0x78(%rbp), %rsi
callq 0x1b780
movq %rax, -0x80(%rbp)
movq -0x28(%rbp), %rdi
movq -0x18(%rbp), %rdx
movq -0x80(%rbp), %rsi
leaq -0x88(%rbp), %rcx
callq 0x2bfd50
movq -0x88(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
addq $0x90, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_word_Word_wordzehomezeindex
static INT mw_mirth_word_Word_wordzehomezeindex (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Word_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_word_Word_wordzehomezeindex, in_Word_2);
	bool v6 = mut_is_set(v5);
	struct mirth_mirth_zaMirth* branch_zaMirth_7;
	INT branch_Int_8;
	if (v6) {
		VAL v9 = mut_get(v5);
		branch_Int_8 = value_int(v9);
		branch_zaMirth_7 = in_zaMirth_1;
	} else {
		INT v10 = WRAP_I63(0LL);
		incref(MKINT(v10));
		mut_set(MKINT(v10), v5);
		branch_Int_8 = v10;
		branch_zaMirth_7 = in_zaMirth_1;
	}
	*out_zaMirth_3 = branch_zaMirth_7;
	return branch_Int_8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x18(%rbp), %rsi
leaq 0x10d8736(%rip), %rdi   # 0x1398308
callq 0x40d30
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rdi
callq 0x45e40
andb $0x1, %al
movb %al, -0x29(%rbp)
testb $0x1, -0x29(%rbp)
je 0x2bfc26
movq -0x28(%rbp), %rdi
callq 0x40f30
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0x2ac40
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
jmp 0x2bfd2b
movq 0xaee23(%rip), %rax     # 0x36ea50
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rax
movq %rax, -0x68(%rbp)
leaq 0xd17e8(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x2bfce5
movq -0x58(%rbp), %rax
movq %rax, -0x78(%rbp)
leaq 0xd17bf(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x70(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x78(%rbp), %rax
cmpq $0x0, %rax
je 0x2bfce5
movq -0x58(%rbp), %rax
movq %rax, -0x88(%rbp)
leaq 0xd1791(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x80(%rbp)
movq -0x88(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x2bfce5
movq -0x58(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq 0xd1766(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0x90(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x98(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x2bfce7
movq -0x58(%rbp), %rax
movq %rax, -0xa8(%rbp)
leaq 0xd172f(%rip), %rax     # 0x391428
orq $0x1, %rax
movq %rax, -0xa0(%rbp)
movq -0x28(%rbp), %rdx
movq -0xa8(%rbp), %rdi
movq -0xa0(%rbp), %rsi
callq 0x431a0
movq -0x58(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rax
addq $0xb0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_zaC99_resetzefreshzecounterzx
static void mw_mirth_c99_zaC99_resetzefreshzecounterzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99* in_zaC99_2, struct mirth_mirth_zaMirth* *out_zaMirth_3, struct mirth_c99_zaC99* *out_zaC99_4) {
	INT v5 = WRAP_I63(0LL);
	INT v6 = in_zaC99_2->mfreshzecounter;
	decref(MKNAT(v6));
	in_zaC99_2->mfreshzecounter = v5;
	*out_zaC99_4 = in_zaC99_2;
	*out_zaMirth_3 = in_zaMirth_1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq 0xaec6e(%rip), %rax     # 0x36ea50
movq %rax, -0x28(%rbp)
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x40(%rbp)
leaq 0xd130f(%rip), %rax     # 0x391110
orq $0x1, %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x2bfec2
movq -0x30(%rbp), %rax
movq %rax, -0x50(%rbp)
leaq 0xd12e6(%rip), %rax     # 0x391110
orq $0x1, %rax
movq %rax, -0x48(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x50(%rbp), %rax
cmpq $0x0, %rax
je 0x2bfec2
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
leaq 0xd12bb(%rip), %rax     # 0x391110
orq $0x1, %rax
movq %rax, -0x58(%rbp)
movq -0x60(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x2bfec2
movq -0x30(%rbp), %rax
movq %rax, -0x70(%rbp)
leaq 0xd1296(%rip), %rax     # 0x391110
orq $0x1, %rax
movq %rax, -0x68(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0x70(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x2bfec0
movq -0x30(%rbp), %rax
movq %rax, -0x80(%rbp)
leaq 0xd1265(%rip), %rax     # 0x391110
orq $0x1, %rax
movq %rax, -0x78(%rbp)
movq -0x80(%rbp), %rdi
movq -0x78(%rbp), %rsi
callq 0x127c0
jmp 0x2bfec2
jmp 0x2bfec4
movq -0x10(%rbp), %rax
movq -0x28(%rbp), %rcx
movq %rcx, 0x10(%rax)
movq -0x10(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x8(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
addq $0x80, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_zaC99_c99zeline_1_sp3
static void mw_mirth_c99_zaC99_c99zeline_1_sp3 (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99* in_zaC99_2, struct mirth_mirth_zaMirth* *out_zaMirth_3, struct mirth_c99_zaC99* *out_zaC99_4) {
	struct mirth_mirth_zaMirth* v5;
	struct mirth_c99_zaC99* v6;
	mw_mirth_c99_zaC99_indent(in_zaMirth_1, in_zaC99_2, &v5, &v6);
	STR* v7;
	STRLIT(v7, "WORD_EXIT;", 10);
	struct mirth_mirth_zaMirth* v8;
	struct mirth_c99_zaC99* v9;
	mw_mirth_c99_zaC99_put(v5, v6, v7, &v8, &v9);
	struct mirth_mirth_zaMirth* v10;
	struct mirth_c99_zaC99* v11;
	mw_mirth_c99_zaC99_line(v8, v9, &v10, &v11);
	*out_zaC99_4 = v11;
	*out_zaMirth_3 = v10;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x28(%rbp), %rdx
leaq -0x30(%rbp), %rcx
callq 0x22a120
cmpq $0x0, 0x10d8a10(%rip)   # 0x1399998
jne 0x2c0fa2
leaq 0xad861(%rip), %rdi     # 0x36e7f2
movl $0xa, %esi
callq 0xb6c0
movq %rax, 0x10d89f6(%rip)   # 0x1399998
jmp 0x2c0fa4
movq 0x10d89ed(%rip), %rax   # 0x1399998
movq %rax, -0x48(%rbp)
leaq 0xd01a2(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x2c1055
movq 0x10d89c1(%rip), %rax   # 0x1399998
movq %rax, -0x58(%rbp)
leaq 0xd0176(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x50(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x58(%rbp), %rax
cmpq $0x0, %rax
je 0x2c1055
movq 0x10d8993(%rip), %rax   # 0x1399998
movq %rax, -0x68(%rbp)
leaq 0xd0148(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x60(%rbp)
movq -0x68(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x2c1055
movq 0x10d896b(%rip), %rax   # 0x1399998
movq %rax, -0x78(%rbp)
leaq 0xd0120(%rip), %rax     # 0x391158
orq $0x1, %rax
movq %rax, -0x70(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x78(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x2c1057
movq 0x10d893a(%rip), %rax   # 0x1399998
movq %rax, -0x38(%rbp)
movq -0x28(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x38(%rbp), %rdx
leaq -0x80(%rbp), %rcx
leaq -0x88(%rbp), %r8
callq 0x220040
movq -0x80(%rbp), %rdi
movq -0x88(%rbp), %rsi
leaq -0x90(%rbp), %rdx
leaq -0x98(%rbp), %rcx
callq 0x2201d0
movq -0x98(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x90(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
addq $0xa0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_c99zeexternalzecallzx
static void mw_mirth_c99_c99zeexternalzecallzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, struct std_list_List_1 in_List_3, uint64_t in_External_4, struct mirth_mirth_zaMirth* *out_zaMirth_5, struct mirth_c99_zaC99Branch* *out_zaC99Branch_6) {
	struct mirth_c99_zaC99* r7 = in_zaC99Branch_2->mzac99;
	struct mirth_mirth_zaMirth* v8;
	struct mirth_c99_zaC99* v9;
	struct mirth_c99_C99API* v10 = mw_mirth_external_External_c99zeapi(in_zaMirth_1, r7, in_External_4, &v8, &v9);
	in_zaC99Branch_2->mzac99 = v9;
	struct mirth_mirth_zaMirth* v11;
	struct mirth_c99_zaC99Branch* v12;
	mw_mirth_c99_c99zesmartzecallzx(v8, in_zaC99Branch_2, in_List_3, v10, &v11, &v12);
	*out_zaC99Branch_6 = v12;
	*out_zaMirth_5 = v11;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq 0x10(%rbp), %rax
movl %edx, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq %r9, -0x30(%rbp)
movq -0x20(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
movq -0x38(%rbp), %rsi
movq -0x28(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x48(%rbp), %r8
callq 0x2bc6f0
movq %rax, -0x50(%rbp)
movq -0x48(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x40(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x50(%rbp), %r8
movl -0x10(%rbp), %edx
movq -0x8(%rbp), %rcx
leaq -0x58(%rbp), %r9
leaq -0x60(%rbp), %rax
movq %rax, (%rsp)
callq 0x324f80
movq -0x60(%rbp), %rcx
movq 0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x58(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_c99zetablezetozeindexzx
static void mw_mirth_c99_c99zetablezetozeindexzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, uint64_t in_Table_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99Branch* *out_zaC99Branch_5) {
	struct mirth_c99_C99ReprType v6 = mtw_mirth_c99_C99ReprType_Table(in_Table_3);
	incref(MK_mirth_c99_C99ReprType(v6));
	struct mirth_mirth_zaMirth* v7;
	struct mirth_c99_zaC99Branch* v8;
	struct mirth_c99_zaC99Value* v9;
	mw_mirth_c99_zaC99Branch_popzevaluezx(in_zaMirth_1, in_zaC99Branch_2, v6, &v7, &v8, &v9);
	struct mirth_mirth_zaMirth* v10;
	STR* v11 = mw_mirth_c99_zaC99Value_consumezeas(v7, v6, v9, &v10);
	struct mirth_c99_C99ReprType v12 = { .tag=mirth_c99_C99ReprType_U64 };
	struct mirth_mirth_zaMirth* v13;
	struct mirth_c99_zaC99Branch* v14;
	mw_mirth_c99_C99ReprType_pushzevaluezeexpressionzx_1_sp1(v11, v10, v8, v12, &v13, &v14);
	*out_zaC99Branch_5 = v14;
	*out_zaMirth_4 = v13;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq -0x18(%rbp), %rdi
callq 0x233500
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2315b0
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x40(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x31dc74
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2315b0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x58(%rbp), %rax
cmpq $0x0, %rax
je 0x31dc74
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2315b0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x68(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x31dc74
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2315b0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x78(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x31dc76
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl -0x38(%rbp), %edx
movq -0x30(%rbp), %rcx
leaq -0x80(%rbp), %r8
leaq -0x88(%rbp), %r9
leaq -0x90(%rbp), %rax
movq %rax, (%rsp)
callq 0x294820
movq -0x80(%rbp), %rdi
movq -0x90(%rbp), %rcx
movl -0x38(%rbp), %esi
movq -0x30(%rbp), %rdx
leaq -0x98(%rbp), %r8
callq 0x29ebd0
movq %rax, -0xa0(%rbp)
movq 0x50f4c(%rip), %rax     # 0x36ec18
movq %rax, -0xb0(%rbp)
movq 0x50f46(%rip), %rax     # 0x36ec20
movq %rax, -0xa8(%rbp)
movq -0xa0(%rbp), %rdi
movq -0x98(%rbp), %rsi
movq -0x88(%rbp), %rdx
movl -0xb0(%rbp), %ecx
movq -0xa8(%rbp), %r8
leaq -0xb8(%rbp), %r9
leaq -0xc0(%rbp), %rax
movq %rax, (%rsp)
callq 0x348e20
movq -0xc0(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0xb8(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
addq $0xd0, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_c99zetablezefromzeindexzx
static void mw_mirth_c99_c99zetablezefromzeindexzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, uint64_t in_Table_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99Branch* *out_zaC99Branch_5) {
	struct mirth_c99_C99ReprType v6 = { .tag=mirth_c99_C99ReprType_U64 };
	incref(MK_mirth_c99_C99ReprType(v6));
	struct mirth_mirth_zaMirth* v7;
	struct mirth_c99_zaC99Branch* v8;
	struct mirth_c99_zaC99Value* v9;
	mw_mirth_c99_zaC99Branch_popzevaluezx(in_zaMirth_1, in_zaC99Branch_2, v6, &v7, &v8, &v9);
	struct mirth_mirth_zaMirth* v10;
	STR* v11 = mw_mirth_c99_zaC99Value_consumezeas(v7, v6, v9, &v10);
	struct mirth_c99_C99ReprType v12 = mtw_mirth_c99_C99ReprType_Table(in_Table_3);
	struct mirth_mirth_zaMirth* v13;
	struct mirth_c99_zaC99Branch* v14;
	mw_mirth_c99_C99ReprType_pushzevaluezeexpressionzx_1_sp1(v11, v10, v8, v12, &v13, &v14);
	*out_zaC99Branch_5 = v14;
	*out_zaMirth_4 = v13;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq 0x50eb2(%rip), %rax     # 0x36ec18
movq %rax, -0x38(%rbp)
movq 0x50eaf(%rip), %rax     # 0x36ec20
movq %rax, -0x30(%rbp)
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2315b0
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x40(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x31de0a
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2315b0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x58(%rbp), %rax
cmpq $0x0, %rax
je 0x31de0a
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2315b0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x68(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x31de0a
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2315b0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x78(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x31de0c
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl -0x38(%rbp), %edx
movq -0x30(%rbp), %rcx
leaq -0x80(%rbp), %r8
leaq -0x88(%rbp), %r9
leaq -0x90(%rbp), %rax
movq %rax, (%rsp)
callq 0x294820
movq -0x80(%rbp), %rdi
movq -0x90(%rbp), %rcx
movl -0x38(%rbp), %esi
movq -0x30(%rbp), %rdx
leaq -0x98(%rbp), %r8
callq 0x29ebd0
movq %rax, -0xa0(%rbp)
movq -0x18(%rbp), %rdi
callq 0x233500
movl %eax, -0xb0(%rbp)
movq %rdx, -0xa8(%rbp)
movq -0xa0(%rbp), %rdi
movq -0x98(%rbp), %rsi
movq -0x88(%rbp), %rdx
movl -0xb0(%rbp), %ecx
movq -0xa8(%rbp), %r8
leaq -0xb8(%rbp), %r9
leaq -0xc0(%rbp), %rax
movq %rax, (%rsp)
callq 0x348e20
movq -0xc0(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0xb8(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
addq $0xd0, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_c99zeintzx
static void mw_mirth_c99_c99zeintzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, INT in_Int_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99Branch* *out_zaC99Branch_5) {
	struct mirth_c99_C99ReprType v6 = { .tag=mirth_c99_C99ReprType_Int };
	struct mirth_mirth_zaMirth* v7;
	struct mirth_c99_zaC99Branch* v8;
	mw_mirth_c99_c99zeintzfnatzx(in_zaMirth_1, in_zaC99Branch_2, in_Int_3, v6, &v7, &v8);
	*out_zaC99Branch_5 = v8;
	*out_zaMirth_4 = v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdx, -0x8(%rbp)
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq 0x4ee25(%rip), %rax     # 0x36eba8
movq %rax, -0x38(%rbp)
movq 0x4ee22(%rip), %rax     # 0x36ebb0
movq %rax, -0x30(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x8(%rbp), %rdx
movl -0x38(%rbp), %ecx
movq -0x30(%rbp), %r8
leaq -0x40(%rbp), %r9
leaq -0x48(%rbp), %rax
movq %rax, (%rsp)
callq 0x3213d0
movq -0x48(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x40(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_c99zenatzx
static void mw_mirth_c99_c99zenatzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, INT in_Nat_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99Branch* *out_zaC99Branch_5) {
	INT v6 = in_Nat_3;
	struct mirth_c99_C99ReprType v7 = { .tag=mirth_c99_C99ReprType_Nat };
	struct mirth_mirth_zaMirth* v8;
	struct mirth_c99_zaC99Branch* v9;
	mw_mirth_c99_c99zeintzfnatzx(in_zaMirth_1, in_zaC99Branch_2, v6, v7, &v8, &v9);
	*out_zaC99Branch_5 = v9;
	*out_zaMirth_4 = v8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdx, -0x8(%rbp)
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x30(%rbp)
movq 0x4edcd(%rip), %rax     # 0x36ebd8
movq %rax, -0x40(%rbp)
movq 0x4edca(%rip), %rax     # 0x36ebe0
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x30(%rbp), %rdx
movl -0x40(%rbp), %ecx
movq -0x38(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x50(%rbp), %rax
movq %rax, (%rsp)
callq 0x3213d0
movq -0x50(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x48(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
addq $0x60, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_zaC99Stack_pushzestackzx
static void mw_mirth_c99_zaC99Stack_pushzestackzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, struct mirth_c99_zaC99Stack in_zaC99Stack_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99Branch* *out_zaC99Branch_5) {
	struct mirth_c99_zaC99Stack r6 = in_zaC99Branch_2->mzastack;
	struct mirth_mirth_zaMirth* v7;
	struct mirth_c99_zaC99Stack v8;
	mw_mirth_c99_zaC99Stack_reversezecatzx(in_zaMirth_1, r6, in_zaC99Stack_3, &v7, &v8);
	in_zaC99Branch_2->mzastack = v8;
	*out_zaC99Branch_5 = in_zaC99Branch_2;
	*out_zaMirth_4 = v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movl %edx, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq %r9, -0x30(%rbp)
movq -0x20(%rbp), %rax
movq 0x8(%rax), %rcx
movq %rcx, -0x40(%rbp)
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
movl -0x40(%rbp), %esi
movq -0x38(%rbp), %rdx
movl -0x10(%rbp), %ecx
movq -0x8(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x58(%rbp), %rax
movq %rax, (%rsp)
callq 0x329150
movq -0x20(%rbp), %rax
movq -0x58(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x50(%rbp), %rcx
movq %rcx, 0x10(%rax)
movq -0x20(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movq -0x48(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
addq $0x60, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_zaC99Branch_flushzecachezx
static void mw_mirth_c99_zaC99Branch_flushzecachezx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, struct mirth_mirth_zaMirth* *out_zaMirth_3, struct mirth_c99_zaC99Branch* *out_zaC99Branch_4) {
	struct mirth_mirth_zaMirth* v5;
	struct mirth_c99_zaC99* v6;
	bool v7;
	struct std_list_List_1 v8;
	mw_mirth_c99_zaC99Branch_endzebranchzx(in_zaMirth_1, in_zaC99Branch_2, &v5, &v6, &v7, &v8);
	struct mirth_mirth_zaMirth* v9;
	struct mirth_c99_zaC99Branch* v10;
	mw_mirth_c99_zaC99_startzebranchzx(v5, v6, v7, v8, &v9, &v10);
	*out_zaC99Branch_4 = v10;
	*out_zaMirth_3 = v9;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x28(%rbp), %rdx
leaq -0x30(%rbp), %rcx
leaq -0x31(%rbp), %r8
leaq -0x48(%rbp), %r9
callq 0x2a7f20
movq -0x28(%rbp), %rdi
movq -0x30(%rbp), %rsi
movb -0x31(%rbp), %dl
movl -0x48(%rbp), %ecx
movq -0x40(%rbp), %r8
leaq -0x50(%rbp), %r9
leaq -0x58(%rbp), %rax
andb $0x1, %dl
movzbl %dl, %edx
movq %rax, (%rsp)
callq 0x28c1c0
movq -0x58(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x50(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
addq $0x60, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_zaC99Value_dupzevaluezx
static void mw_mirth_c99_zaC99Value_dupzevaluezx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, struct mirth_c99_zaC99Value* in_zaC99Value_3, struct mirth_mirth_zaMirth* *out_zaMirth_4, struct mirth_c99_zaC99Branch* *out_zaC99Branch_5, struct mirth_c99_zaC99Value* *out_zaC99Value_6, struct mirth_c99_zaC99Value* *out_zaC99Value_7) {
	struct mirth_mirth_zaMirth* v8;
	struct mirth_c99_zaC99Branch* v9;
	struct mirth_c99_zaC99Value* v10;
	mw_mirth_c99_zaC99Value_keepzevaluezx(in_zaMirth_1, in_zaC99Branch_2, in_zaC99Value_3, &v8, &v9, &v10);
	struct mirth_c99_zaC99Value* v11;
	struct mirth_c99_zaC99Value* v12;
	mw_mirth_c99_zaC99Value_rdup(v10, &v11, &v12);
	*out_zaC99Value_7 = v12;
	*out_zaC99Value_6 = v11;
	*out_zaC99Branch_5 = v9;
	*out_zaMirth_4 = v8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq 0x10(%rbp), %rax
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq %r9, -0x30(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x38(%rbp), %rcx
leaq -0x40(%rbp), %r8
leaq -0x48(%rbp), %r9
callq 0x3315c0
movq -0x48(%rbp), %rdi
leaq -0x50(%rbp), %rsi
leaq -0x58(%rbp), %rdx
callq 0x32daf0
movq -0x58(%rbp), %rcx
movq 0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x50(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movq -0x40(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
addq $0x60, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_zaC99BranchSplit_endzebranchzesplitzx
static void mw_mirth_c99_zaC99BranchSplit_endzebranchzesplitzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99BranchSplit* in_zaC99BranchSplit_2, struct mirth_mirth_zaMirth* *out_zaMirth_3, struct mirth_c99_zaC99Branch* *out_zaC99Branch_4) {
	struct mirth_c99_zaC99* v5;
	struct mirth_c99_zaC99Stack v6;
	struct std_list_List_1 v7;
	struct std_list_List_1 v8;
	bool v9;
	bool v10;
	mtp_mirth_c99_zaC99BranchSplit_zaC99BranchSplit(in_zaC99BranchSplit_2, &v5, &v6, &v7, &v8, &v9, &v10);
	mw_mirth_c99_zaC99Stack_rdrop(v6);
	struct mirth_mirth_zaMirth* v11;
	struct mirth_c99_zaC99Branch* v12;
	mw_mirth_c99_zaC99_startzebranchzx(in_zaMirth_1, v5, v10, v7, &v11, &v12);
	struct mirth_mirth_zaMirth* v13;
	struct mirth_c99_zaC99Branch* v14;
	mw_std_list_List_1_for_1_sp23(v11, v12, v8, &v13, &v14);
	*out_zaC99Branch_4 = v14;
	*out_zaMirth_3 = v13;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
leaq -0x38(%rbp), %rdx
leaq -0x48(%rbp), %rcx
leaq -0x58(%rbp), %r8
leaq -0x59(%rbp), %r9
leaq -0x5a(%rbp), %rax
movq %rax, (%rsp)
callq 0x333100
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x2a9ee0
movq -0x8(%rbp), %rdi
movq -0x28(%rbp), %rsi
movb -0x5a(%rbp), %dl
movl -0x48(%rbp), %ecx
movq -0x40(%rbp), %r8
leaq -0x68(%rbp), %r9
leaq -0x70(%rbp), %rax
andb $0x1, %dl
movzbl %dl, %edx
movq %rax, (%rsp)
callq 0x28c1c0
movq -0x68(%rbp), %rdi
movq -0x70(%rbp), %rsi
movl -0x58(%rbp), %edx
movq -0x50(%rbp), %rcx
leaq -0x78(%rbp), %r8
leaq -0x80(%rbp), %r9
callq 0x28c240
movq -0x80(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x78(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
addq $0x90, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_c99_zaC99Branch_refreshzebranchzx
static void mw_mirth_c99_zaC99Branch_refreshzebranchzx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_c99_zaC99Branch* in_zaC99Branch_2, struct mirth_mirth_zaMirth* *out_zaMirth_3, struct mirth_c99_zaC99Branch* *out_zaC99Branch_4) {
	struct mirth_c99_zaC99* v5;
	struct mirth_c99_zaC99Stack v6;
	struct std_list_List_1 v7;
	bool v8;
	mtp_mirth_c99_zaC99Branch_zaC99Branch(in_zaC99Branch_2, &v5, &v6, &v7, &v8);
	struct mirth_mirth_zaMirth* v9;
	struct mirth_c99_zaC99Branch* v10;
	mw_mirth_c99_zaC99Stack_refreshzeallzx(in_zaMirth_1, v5, v6, v8, v7, &v9, &v10);
	*out_zaC99Branch_4 = v10;
	*out_zaMirth_3 = v9;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
leaq -0x38(%rbp), %rdx
leaq -0x48(%rbp), %rcx
leaq -0x49(%rbp), %r8
callq 0x2a9e60
movq -0x8(%rbp), %rdi
movq -0x28(%rbp), %rsi
movb -0x49(%rbp), %r8b
movl -0x38(%rbp), %edx
movq -0x30(%rbp), %rcx
leaq -0x48(%rbp), %r10
leaq -0x58(%rbp), %r9
leaq -0x60(%rbp), %rax
andb $0x1, %r8b
movzbl %r8b, %r8d
movq (%r10), %r11
movq %r11, (%rsp)
movq 0x8(%r10), %r10
movq %r10, 0x8(%rsp)
movq %rax, 0x10(%rsp)
callq 0x3331b0
movq -0x60(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x58(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
addq $0x80, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)