LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtp_mirth_elab_RejectedDef_MethodNotAvailable
static struct mirth_def_Def mtp_mirth_elab_RejectedDef_MethodNotAvailable (struct mirth_elab_RejectedDef in_RejectedDef_1) {
	struct mirth_elab_RejectedDef_MethodNotAvailable v3 = *in_RejectedDef_1.ptr.MethodNotAvailable;
	if (!--(in_RejectedDef_1.ptr.MethodNotAvailable->refs)) {
		free(in_RejectedDef_1.ptr.MethodNotAvailable);
	} else {
		incref(MK_mirth_def_Def(v3.mDef));
	}
	return v3.mDef;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq (%rax), %rcx
movq %rcx, -0x38(%rbp)
movq 0x8(%rax), %rcx
movq %rcx, -0x30(%rbp)
movq 0x10(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x18(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x9893b
movq -0x18(%rbp), %rdi
callq 0x5030
jmp 0x989d6
jmp 0x9893d
movl -0x30(%rbp), %edi
movq -0x28(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x40(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x989d2
movl -0x30(%rbp), %edi
movq -0x28(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x58(%rbp), %rax
cmpq $0x0, %rax
je 0x989d2
movl -0x30(%rbp), %edi
movq -0x28(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x68(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x989d2
movl -0x30(%rbp), %edi
movq -0x28(%rbp), %rsi
callq 0x43ec0
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 0x989d4
jmp 0x989d6
movups -0x30(%rbp), %xmm0
movaps %xmm0, -0x10(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x80, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_std_maybe_Maybe_1_for_1_sp2
static void mw_std_maybe_Maybe_1_for_1_sp2 (struct std_list_List_1 in_zaLister_1, struct std_maybe_Maybe_1 in_Maybe_2, struct std_list_List_1 *out_zaLister_3) {
	struct std_list_List_1 branch_zaLister_4;
	switch ((in_Maybe_2).tag) {
		case std_maybe_Maybe_1_Some: {
			VAL v5 = mtp_std_maybe_Maybe_1_Some(in_Maybe_2);
			struct std_list_List_1 v6;
			mw_std_list_zaLister_1_pushzx(v5, in_zaLister_1, &v6);
			branch_zaLister_4 = v6;
		} break;
		case std_maybe_Maybe_1_None: {
			branch_zaLister_4 = in_zaLister_1;
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	*out_zaLister_3 = branch_zaLister_4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movl %edx, -0x20(%rbp)
movq %rcx, -0x18(%rbp)
movq %r8, -0x28(%rbp)
movl -0x20(%rbp), %eax
movl %eax, -0x5c(%rbp)
testl %eax, %eax
je 0x98a5e
jmp 0x98a16
movl -0x5c(%rbp), %eax
subl $0x1, %eax
jne 0x98a70
jmp 0x98a20
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x174a0
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl -0x10(%rbp), %edx
movq -0x8(%rbp), %rcx
leaq -0x58(%rbp), %r8
callq 0xcc30
movq -0x58(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x50(%rbp), %rax
movq %rax, -0x30(%rbp)
jmp 0x98a89
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x30(%rbp)
jmp 0x98a89
leaq 0x2bb40a(%rip), %rdi    # 0x353e81
movl $0x20, %esi
callq 0xb6c0
movq %rax, %rdi
callq 0xc620
movq -0x28(%rbp), %rax
movq -0x38(%rbp), %rcx
movq %rcx, (%rax)
movq -0x30(%rbp), %rcx
movq %rcx, 0x8(%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_std_either_Either_2_left_1_sp1
static uint64_t mw_std_either_Either_2_left_1_sp1 (struct std_either_Either_2 in_Either_1) {
	uint64_t branch_Name_3;
	switch ((in_Either_1).tag) {
		case std_either_Either_2_Left: {
			VAL v4 = mtp_std_either_Either_2_Left(in_Either_1);
			branch_Name_3 = V_mirth_name_Name(v4);
		} break;
		case std_either_Either_2_Right: {
			VAL v5 = mtp_std_either_Either_2_Right(in_Either_1);
			uint64_t v6 = mw_mirth_name_DName_lastzename(V_mirth_name_DName(v5));
			branch_Name_3 = v6;
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	return branch_Name_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movl -0x10(%rbp), %eax
movl %eax, -0x44(%rbp)
testl %eax, %eax
je 0x98ad5
jmp 0x98acb
movl -0x44(%rbp), %eax
subl $0x1, %eax
je 0x98af3
jmp 0x98b1e
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x74840
movq %rax, -0x28(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x98b37
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x748f0
movq %rax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rdi
callq 0x85900
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x18(%rbp)
jmp 0x98b37
leaq 0x2bb35c(%rip), %rdi    # 0x353e81
movl $0x20, %esi
callq 0xb6c0
movq %rax, %rdi
callq 0xc620
movq -0x18(%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_mirth_zaMirth_emitzeerrorzx
static void mw_mirth_mirth_zaMirth_emitzeerrorzx (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Token_2, STR* in_Str_3, struct mirth_mirth_zaMirth* *out_zaMirth_4) {
	struct mirth_mirth_zaMirth* v5;
	struct mirth_location_Location* v6 = mw_mirth_token_Token_location(in_zaMirth_1, in_Token_2, &v5);
	struct mirth_mirth_zaMirth* v7;
	mw_mirth_mirth_zaMirth_emitzeerrorzeatzx(v5, v6, in_Str_3, &v7);
	*out_zaMirth_4 = 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 0x61160
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rdx
leaq -0x38(%rbp), %rcx
callq 0x620d0
movq -0x38(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%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: mtp_mirth_elab_zaResolveDef_zaResolveDef
static void mtp_mirth_elab_zaResolveDef_zaResolveDef (struct mirth_elab_zaResolveDef* in_zaResolveDef_1, STR* *out_Str_2, uint64_t *out_Token_3, struct std_either_Either_2 *out_Either_4, struct std_list_List_1 *out_List_5, struct std_list_List_1 *out_List_6, bool *out_Bool_7, bool *out_Bool_8) {
	struct mirth_elab_zaResolveDef v9 = *in_zaResolveDef_1;
	free(in_zaResolveDef_1);
	*out_Bool_8 = v9.mreportzeambiguouszeaszewarning;
	*out_Bool_7 = v9.mignorezelastzename;
	*out_List_6 = v9.mrejected;
	*out_List_5 = v9.mcandidates;
	*out_Either_4 = v9.mnamezfdname;
	*out_Token_3 = v9.mtoken;
	*out_Str_2 = v9.msort;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movq 0x18(%rbp), %rax
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), %rsi
leaq -0x78(%rbp), %rdi
movl $0x48, %edx
callq 0x50e0
movq -0x8(%rbp), %rdi
callq 0x5030
movb -0x37(%rbp), %cl
movq 0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, (%rax)
movb -0x38(%rbp), %cl
movq 0x10(%rbp), %rax
andb $0x1, %cl
movb %cl, (%rax)
movq -0x30(%rbp), %rax
movq -0x48(%rbp), %rcx
movq %rcx, (%rax)
movq -0x40(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x28(%rbp), %rax
movq -0x58(%rbp), %rcx
movq %rcx, (%rax)
movq -0x50(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x20(%rbp), %rax
movq -0x68(%rbp), %rcx
movq %rcx, (%rax)
movq -0x60(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x70(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x78(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
addq $0x80, %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_def_Def_aliaszy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_aliaszy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Alias: {
			uint64_t v4 = mtp_mirth_def_Def_Alias(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_alias_Alias(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
testl %eax, %eax
jne 0x9c487
jmp 0x9c43b
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45300
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f5c76(%rip), %rax    # 0x3920d0
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9c58b
jmp 0x9c489
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9c560
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9c560
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9c560
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9c55e
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9c560
jmp 0x9c562
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0xb0, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_def_Def_packagezy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_packagezy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Package: {
			uint64_t v4 = mtp_mirth_def_Def_Package(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_package_Package(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x2, %eax
jne 0x9c738
jmp 0x9c6ec
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x453c0
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f53dd(%rip), %rax    # 0x391ae8
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9c83c
jmp 0x9c73a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9c811
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9c811
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9c811
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9c80f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9c811
jmp 0x9c813
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_modulezy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_modulezy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Module: {
			uint64_t v4 = mtp_mirth_def_Def_Module(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_module_Module(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x1, %eax
jne 0x9c8b8
jmp 0x9c86c
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45490
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f57fd(%rip), %rax    # 0x392088
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9c9bc
jmp 0x9c8ba
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9c991
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9c991
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9c991
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9c98f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9c991
jmp 0x9c993
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_datazy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_datazy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Data: {
			uint64_t v4 = mtp_mirth_def_Def_Data(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_data_Data(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x3, %eax
jne 0x9ca38
jmp 0x9c9ec
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x456e0
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f531d(%rip), %rax    # 0x391d28
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9cb3c
jmp 0x9ca3a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9cb11
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9cb11
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9cb11
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9cb0f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9cb11
jmp 0x9cb13
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_tablezy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_tablezy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Table: {
			uint64_t v4 = mtp_mirth_def_Def_Table(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_table_Table(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x4, %eax
jne 0x9cbb8
jmp 0x9cb6c
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x457a0
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f558d(%rip), %rax    # 0x392118
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9ccbc
jmp 0x9cbba
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9cc91
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9cc91
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9cc91
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9cc8f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9cc91
jmp 0x9cc93
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_typedefzy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_typedefzy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Type: {
			uint64_t v4 = mtp_mirth_def_Def_Type(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_typedef_TypeDef(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x5, %eax
jne 0x9cd38
jmp 0x9ccec
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45860
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f5455(%rip), %rax    # 0x392160
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9ce3c
jmp 0x9cd3a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9ce11
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9ce11
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9ce11
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9ce0f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9ce11
jmp 0x9ce13
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_tagzy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_tagzy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Tag: {
			uint64_t v4 = mtp_mirth_def_Def_Tag(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_data_Tag(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x6, %eax
jne 0x9ceb8
jmp 0x9ce6c
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45b60
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f4e55(%rip), %rax    # 0x391ce0
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9cfbc
jmp 0x9ceba
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9cf91
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9cf91
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9cf91
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9cf8f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9cf91
jmp 0x9cf93
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_primzy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_primzy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Prim: {
			enum mirth_prim_Prim v4 = mtp_mirth_def_Def_Prim(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_prim_Prim(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x7, %eax
jne 0x9d036
jmp 0x9cfec
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45620
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movq %rax, -0x48(%rbp)
leaq 0x2f519f(%rip), %rax    # 0x3921a8
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9d13a
jmp 0x9d038
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9d10f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9d10f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9d10f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9d10d
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9d10f
jmp 0x9d111
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0xb0, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_def_Def_wordzy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_wordzy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Word: {
			uint64_t v4 = mtp_mirth_def_Def_Word(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_word_Word(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x8, %eax
jne 0x9d208
jmp 0x9d1bc
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x459e0
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f5015(%rip), %rax    # 0x3921f0
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9d30c
jmp 0x9d20a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9d2e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9d2e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9d2e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9d2df
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9d2e1
jmp 0x9d2e3
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_bufferzy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_bufferzy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Buffer: {
			uint64_t v4 = mtp_mirth_def_Def_Buffer(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_buffer_Buffer(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x9, %eax
jne 0x9d388
jmp 0x9d33c
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45570
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f4edd(%rip), %rax    # 0x392238
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9d48c
jmp 0x9d38a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9d461
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9d461
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9d461
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9d45f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9d461
jmp 0x9d463
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_externalzy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_externalzy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_External: {
			uint64_t v4 = mtp_mirth_def_Def_External(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_external_External(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0xa, %eax
jne 0x9d508
jmp 0x9d4bc
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45920
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f4da5(%rip), %rax    # 0x392280
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9d60c
jmp 0x9d50a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9d5e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9d5e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9d5e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9d5df
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9d5e1
jmp 0x9d5e3
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_fieldzy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_fieldzy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Field: {
			uint64_t v4 = mtp_mirth_def_Def_Field(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_table_Field(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0xb, %eax
jne 0x9d688
jmp 0x9d63c
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45aa0
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f4c6d(%rip), %rax    # 0x3922c8
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9d78c
jmp 0x9d68a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9d761
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9d761
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9d761
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9d75f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9d761
jmp 0x9d763
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_macrozy
static struct std_maybe_Maybe_1 mw_mirth_def_Def_macrozy (struct mirth_def_Def in_Def_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Def_1).tag) {
		case mirth_def_Def_Macro: {
			uint64_t v4 = mtp_mirth_def_Def_Macro(in_Def_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_macro_Macro(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_def_Def(in_Def_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0xc, %eax
jne 0x9d808
jmp 0x9d7bc
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x45c40
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f4b35(%rip), %rax    # 0x392310
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9d90c
jmp 0x9d80a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9d8e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9d8e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9d8e1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
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 0x9d8df
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x43ec0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9d8e1
jmp 0x9d8e3
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_elab_elabzedeclszx
static uint64_t mw_mirth_elab_elabzedeclszx (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Token_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v7;
	bool v8 = mw_mirth_token_Token_argzeendzy(in_zaMirth_1, in_Token_2, &v7);
	bool v9 = !v8;
	struct mirth_mirth_zaMirth* v10;
	bool v11 = mw_mirth_token_Token_modulezeendzy(v7, in_Token_2, &v10);
	bool v12 = !v11;
	bool v13 = (v9 && v12);
	uint64_t v14 = in_Token_2;
	struct mirth_mirth_zaMirth* r15 = v10;
	bool v16 = v13;
	while (v16) {
		uint64_t v17 = v14;
		struct mirth_mirth_zaMirth* r18 = r15;
		struct mirth_mirth_zaMirth* v19;
		uint64_t v20 = mw_mirth_elab_elabzedeclzx(r18, v17, &v19);
		struct mirth_mirth_zaMirth* v21;
		bool v22 = mw_mirth_token_Token_argzeendzy(v19, v20, &v21);
		bool v23 = !v22;
		struct mirth_mirth_zaMirth* v24;
		bool v25 = mw_mirth_token_Token_modulezeendzy(v21, v20, &v24);
		bool v26 = !v25;
		bool v27 = (v23 && v26);
		v16 = v27;
		r15 = v24;
		v14 = v20;
	}
	*out_zaMirth_3 = r15;
	return v14;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x20(%rbp), %rdx
callq 0x7b320
andb $0x1, %al
movb %al, -0x21(%rbp)
movb -0x21(%rbp), %al
xorb $-0x1, %al
andb $0x1, %al
movb %al, -0x22(%rbp)
movq -0x20(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x30(%rbp), %rdx
callq 0x9ef20
andb $0x1, %al
movb %al, -0x31(%rbp)
movb -0x31(%rbp), %al
xorb $-0x1, %al
andb $0x1, %al
movb %al, -0x32(%rbp)
xorl %eax, %eax
testb $0x1, -0x22(%rbp)
movb %al, -0x8c(%rbp)
je 0x9ec3e
movb -0x32(%rbp), %al
movb %al, -0x8c(%rbp)
movb -0x8c(%rbp), %al
andb $0x1, %al
movb %al, -0x33(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x48(%rbp)
movb -0x33(%rbp), %al
andb $0x1, %al
movb %al, -0x49(%rbp)
testb $0x1, -0x49(%rbp)
je 0x9ed27
movq -0x40(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rdi
movq -0x58(%rbp), %rsi
leaq -0x68(%rbp), %rdx
callq 0x9ef60
movq %rax, -0x70(%rbp)
movq -0x68(%rbp), %rdi
movq -0x70(%rbp), %rsi
leaq -0x78(%rbp), %rdx
callq 0x7b320
andb $0x1, %al
movb %al, -0x79(%rbp)
movb -0x79(%rbp), %al
xorb $-0x1, %al
andb $0x1, %al
movb %al, -0x7a(%rbp)
movq -0x78(%rbp), %rdi
movq -0x70(%rbp), %rsi
leaq -0x88(%rbp), %rdx
callq 0x9ef20
andb $0x1, %al
movb %al, -0x89(%rbp)
movb -0x89(%rbp), %al
xorb $-0x1, %al
andb $0x1, %al
movb %al, -0x8a(%rbp)
xorl %eax, %eax
testb $0x1, -0x7a(%rbp)
movb %al, -0x8d(%rbp)
je 0x9ecf6
movb -0x8a(%rbp), %al
movb %al, -0x8d(%rbp)
movb -0x8d(%rbp), %al
andb $0x1, %al
movb %al, -0x8b(%rbp)
movb -0x8b(%rbp), %al
andb $0x1, %al
movb %al, -0x49(%rbp)
movq -0x88(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x70(%rbp), %rax
movq %rax, -0x40(%rbp)
jmp 0x9ec61
movq -0x48(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x40(%rbp), %rax
addq $0x90, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_token_TokenValue_lcurlyzy
static struct std_maybe_Maybe_1 mw_mirth_token_TokenValue_lcurlyzy (struct mirth_token_TokenValue in_TokenValue_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_TokenValue_1).tag) {
		case mirth_token_TokenValue_LCurly: {
			uint64_t v4 = mtp_mirth_token_TokenValue_LCurly(in_TokenValue_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_token_Token(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_token_TokenValue(in_TokenValue_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0xa, %eax
jne 0x9ee08
jmp 0x9edbc
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x7adf0
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x2f306d(%rip), %rax    # 0x391e48
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x9ef0c
jmp 0x9ee0a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9eee1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x9eee1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9eee1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x79bd0
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 0x9eedf
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x9eee1
jmp 0x9eee3
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_token_Token_modulezeendzy
static bool mw_mirth_token_Token_modulezeendzy (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Token_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	bool v6 = mw_mirth_token_Token_nonezy(in_zaMirth_1, in_Token_2, &v5);
	*out_zaMirth_3 = v5;
	return v6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x20(%rbp), %rdx
callq 0x9f8c0
andb $0x1, %al
movb %al, -0x21(%rbp)
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movb -0x21(%rbp), %al
andb $0x1, %al
addq $0x30, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_token_TokenValue_nonezy
static bool mw_mirth_token_TokenValue_nonezy (struct mirth_token_TokenValue in_TokenValue_1) {
	bool branch_Bool_3;
	switch ((in_TokenValue_1).tag) {
		case mirth_token_TokenValue_None: {
			bool v4 = true;
			branch_Bool_3 = v4;
		} break;
		default: {
			decref(MK_mirth_token_TokenValue(in_TokenValue_1));
			bool v5 = false;
			branch_Bool_3 = v5;
		} break;
	}
	return branch_Bool_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movl -0x10(%rbp), %eax
testl %eax, %eax
jne 0x9f949
jmp 0x9f938
movb $0x1, -0x12(%rbp)
movb -0x12(%rbp), %al
andb $0x1, %al
movb %al, -0x11(%rbp)
jmp 0x9fa1a
jmp 0x9f94b
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x28(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x20(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x9fa0c
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x38(%rbp), %rax
cmpq $0x0, %rax
je 0x9fa0c
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x48(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x9fa0c
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0x58(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x9fa0a
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x68(%rbp), %rdi
movq -0x60(%rbp), %rsi
callq 0x127c0
jmp 0x9fa0c
jmp 0x9fa0e
movb $0x0, -0x69(%rbp)
movb -0x69(%rbp), %al
andb $0x1, %al
movb %al, -0x11(%rbp)
movb -0x11(%rbp), %al
andb $0x1, %al
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)