LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_package_Package_qname
static struct mirth_name_QName* mw_mirth_package_Package_qname (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Package_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_name_Namespace v5 = { .tag=mirth_name_Namespace_Root };
	struct mirth_mirth_zaMirth* v6;
	uint64_t v7 = mw_mirth_package_Package_name(in_zaMirth_1, in_Package_2, &v6);
	INT v8 = WRAP_I63(0LL);
	struct mirth_name_QName* v9 = mw_mirth_name_QName_Mk(v5, v7, v8);
	*out_zaMirth_3 = v6;
	return v9;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
leaq -0x28(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x30(%rbp), %rdx
callq 0x47060
movq %rax, -0x38(%rbp)
movq 0x329600(%rip), %rax    # 0x36ea50
movq %rax, -0x40(%rbp)
movq -0x38(%rbp), %rdx
movl -0x28(%rbp), %edi
movq -0x20(%rbp), %rsi
movq -0x40(%rbp), %rcx
callq 0x470b0
movq %rax, -0x48(%rbp)
movq -0x30(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x48(%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_module_Module_qname
static struct mirth_name_QName* mw_mirth_module_Module_qname (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Module_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	uint64_t v6 = mw_mirth_module_Module_package(in_zaMirth_1, in_Module_2, &v5);
	struct mirth_name_Namespace v7 = mtw_mirth_name_Namespace_Package(v6);
	struct mirth_mirth_zaMirth* v8;
	uint64_t v9 = mw_mirth_module_Module_name(v5, in_Module_2, &v8);
	INT v10 = WRAP_I63(0LL);
	struct mirth_name_QName* v11 = mw_mirth_name_QName_Mk(v7, v9, v10);
	*out_zaMirth_3 = v8;
	return v11;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %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 0x47190
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rdi
callq 0x471e0
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x20(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x47270
movq %rax, -0x48(%rbp)
movq 0x32951b(%rip), %rax    # 0x36ea50
movq %rax, -0x50(%rbp)
movq -0x48(%rbp), %rdx
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
movq -0x50(%rbp), %rcx
callq 0x470b0
movq %rax, -0x58(%rbp)
movq -0x40(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x58(%rbp), %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_buffer_Buffer_qnamezesoft
static struct std_maybe_Maybe_1 mw_mirth_buffer_Buffer_qnamezesoft (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Buffer_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_buffer_Buffer_ztqname, in_Buffer_2);
	struct mirth_mirth_zaMirth* v6;
	struct std_maybe_Maybe_1 v7 = mw_mirth_mirth_Prop_1_tryzeforcezx(in_zaMirth_1, v5, &v6);
	*out_zaMirth_3 = v6;
	return v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x20(%rbp), %rsi
leaq 0x134f0a1(%rip), %rdi   # 0x1394680
callq 0x40d30
movq %rax, -0x30(%rbp)
movq -0x18(%rbp), %rdi
movq -0x30(%rbp), %rsi
leaq -0x38(%rbp), %rdx
callq 0x472c0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq -0x38(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtp_mirth_def_Def_Prim
static enum mirth_prim_Prim mtp_mirth_def_Def_Prim (struct mirth_def_Def in_Def_1) {
	struct mirth_def_Def_Prim v3 = *in_Def_1.ptr.Prim;
	if (!--(in_Def_1.ptr.Prim->refs)) {
		free(in_Def_1.ptr.Prim);
	} else {
	}
	return v3.mPrim;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x45655
movq -0x8(%rbp), %rdi
callq 0x5030
jmp 0x45657
jmp 0x45657
movl -0x14(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_prim_Prim_qname
static struct mirth_name_QName* mw_mirth_prim_Prim_qname (struct mirth_mirth_zaMirth* in_zaMirth_1, enum mirth_prim_Prim in_Prim_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	struct mirth_name_Namespace v6 = mw_mirth_prim_Prim_namespace(in_zaMirth_1, in_Prim_2, &v5);
	INT v7;
	STR* v8 = mw_mirth_prim_Prim_strzearity(in_Prim_2, &v7);
	struct mirth_mirth_zaMirth* v9;
	uint64_t v10 = mw_mirth_name_Name_Name(v5, v8, &v9);
	struct mirth_name_QName* v11 = mw_mirth_name_QName_Mk(v6, v10, v7);
	*out_zaMirth_3 = v9;
	return v11;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
leaq -0x20(%rbp), %rdx
callq 0x487e0
movl %eax, -0x30(%rbp)
movq %rdx, -0x28(%rbp)
movl -0xc(%rbp), %edi
leaq -0x38(%rbp), %rsi
callq 0x48820
movq %rax, -0x40(%rbp)
movq -0x20(%rbp), %rdi
movq -0x40(%rbp), %rsi
leaq -0x48(%rbp), %rdx
callq 0x3ed80
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rdx
movl -0x30(%rbp), %edi
movq -0x28(%rbp), %rsi
movq -0x38(%rbp), %rcx
callq 0x470b0
movq %rax, -0x58(%rbp)
movq -0x48(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x58(%rbp), %rax
addq $0x60, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtp_mirth_def_Def_Data
static uint64_t mtp_mirth_def_Def_Data (struct mirth_def_Def in_Def_1) {
	struct mirth_def_Def_Data v3 = *in_Def_1.ptr.Data;
	if (!--(in_Def_1.ptr.Data->refs)) {
		free(in_Def_1.ptr.Data);
	} else {
	}
	return v3.mData;
}

// 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 0x4571d
movq -0x8(%rbp), %rdi
callq 0x5030
jmp 0x4571f
jmp 0x4571f
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_data_Data_qnamezesoft
static struct std_maybe_Maybe_1 mw_mirth_data_Data_qnamezesoft (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Data_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_data_Data_ztqname, in_Data_2);
	struct std_maybe_Maybe_1 v6 = mw_std_prelude_zozy(v5);
	struct std_maybe_Maybe_1 v7 = mw_std_maybe_Maybe_1_bind_1_sp8(v6);
	*out_zaMirth_3 = in_zaMirth_1;
	return v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x20(%rbp), %rsi
leaq 0x134f571(%rip), %rdi   # 0x1394cc0
callq 0x40d30
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
callq 0x45d00
movl %eax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movl -0x40(%rbp), %edi
movq -0x38(%rbp), %rsi
callq 0x45d90
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq -0x18(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_Type
static uint64_t mtp_mirth_def_Def_Type (struct mirth_def_Def in_Def_1) {
	struct mirth_def_Def_Type v3 = *in_Def_1.ptr.Type;
	if (!--(in_Def_1.ptr.Type->refs)) {
		free(in_Def_1.ptr.Type);
	} else {
	}
	return v3.mTypeDef;
}

// 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 0x4589d
movq -0x8(%rbp), %rdi
callq 0x5030
jmp 0x4589f
jmp 0x4589f
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_external_External_qnamezesoft
static struct std_maybe_Maybe_1 mw_mirth_external_External_qnamezesoft (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_ztqname, in_External_2);
	struct std_maybe_Maybe_1 v6 = mw_std_prelude_zozy(v5);
	struct std_maybe_Maybe_1 v7 = mw_std_maybe_Maybe_1_bind_1_sp8(v6);
	*out_zaMirth_3 = in_zaMirth_1;
	return v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x20(%rbp), %rsi
leaq 0x134f361(%rip), %rdi   # 0x1394cf0
callq 0x40d30
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
callq 0x45d00
movl %eax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movl -0x40(%rbp), %edi
movq -0x38(%rbp), %rsi
callq 0x45d90
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq -0x18(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_def_Def_Field
static uint64_t mtp_mirth_def_Def_Field (struct mirth_def_Def in_Def_1) {
	struct mirth_def_Def_Field v3 = *in_Def_1.ptr.Field;
	if (!--(in_Def_1.ptr.Field->refs)) {
		free(in_Def_1.ptr.Field);
	} else {
	}
	return v3.mField;
}

// 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 0x45add
movq -0x8(%rbp), %rdi
callq 0x5030
jmp 0x45adf
jmp 0x45adf
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_data_Tag_qname
static struct mirth_name_QName* mw_mirth_data_Tag_qname (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Tag_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	uint64_t v6 = mw_mirth_data_Tag_data(in_zaMirth_1, in_Tag_2, &v5);
	struct mirth_name_Namespace v7 = mw_mirth_data_Data_zgNamespace(v6);
	struct mirth_mirth_zaMirth* v8;
	uint64_t v9 = mw_mirth_data_Tag_name(v5, in_Tag_2, &v8);
	struct mirth_mirth_zaMirth* v10;
	INT v11 = mw_mirth_data_Tag_arity(v8, in_Tag_2, &v10);
	struct mirth_name_QName* v12 = mtw_mirth_name_QName_QName(v7, v9, v11);
	*out_zaMirth_3 = v10;
	return v12;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %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 0x57890
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rdi
callq 0x578e0
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x20(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x57920
movq %rax, -0x48(%rbp)
movq -0x40(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x50(%rbp), %rdx
callq 0x57970
movq %rax, -0x58(%rbp)
movq -0x48(%rbp), %rdx
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
movq -0x58(%rbp), %rcx
callq 0x470f0
movq %rax, -0x60(%rbp)
movq -0x50(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x60(%rbp), %rax
addq $0x60, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_std_prelude_zozy
static struct std_maybe_Maybe_1 mw_std_prelude_zozy (void* in_Mutt_1) {
	bool v3 = mut_is_set(in_Mutt_1);
	struct std_maybe_Maybe_1 branch_Maybe_4;
	if (v3) {
		VAL v5 = mut_get(in_Mutt_1);
		struct std_maybe_Maybe_1 v6 = mtw_std_maybe_Maybe_1_Some(v5);
		branch_Maybe_4 = v6;
	} else {
		struct std_maybe_Maybe_1 v7 = { .tag=std_maybe_Maybe_1_None };
		branch_Maybe_4 = v7;
	}
	return branch_Maybe_4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x18(%rbp)
movq -0x18(%rbp), %rdi
callq 0x45e40
andb $0x1, %al
movb %al, -0x19(%rbp)
testb $0x1, -0x19(%rbp)
je 0x45d57
movq -0x18(%rbp), %rdi
callq 0x40f30
movq %rax, -0x30(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0xca10
movl %eax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x45d77
leaq -0x50(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0x50(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_std_maybe_Maybe_1_bind_1_sp8
static struct std_maybe_Maybe_1 mw_std_maybe_Maybe_1_bind_1_sp8 (struct std_maybe_Maybe_1 in_Maybe_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Maybe_1).tag) {
		case std_maybe_Maybe_1_Some: {
			VAL v4 = mtp_std_maybe_Maybe_1_Some(in_Maybe_1);
			struct std_maybe_Maybe_1 v5 = mw_mirth_mirth_Prop_1_readyzy(V_mirth_mirth_Prop_1(v4));
			branch_Maybe_3 = v5;
		} break;
		case std_maybe_Maybe_1_None: {
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
movl %eax, -0x54(%rbp)
testl %eax, %eax
je 0x45deb
jmp 0x45dab
movl -0x54(%rbp), %eax
subl $0x1, %eax
jne 0x45e0d
jmp 0x45db5
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x174a0
movq %rax, -0x30(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x30(%rbp), %rdi
callq 0x45eb0
movl %eax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x45e26
leaq -0x50(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0x50(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x45e26
leaq 0x30e06d(%rip), %rdi    # 0x353e81
movl $0x20, %esi
callq 0xb6c0
movq %rax, %rdi
callq 0xc620
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_mirth_Prop_1_readyzy
static struct std_maybe_Maybe_1 mw_mirth_mirth_Prop_1_readyzy (struct mirth_mirth_Prop_1* in_Prop_1) {
	struct mirth_mirth_PropState_1 v3 = in_Prop_1->mstate;
	incref(MK_mirth_mirth_PropState_1(v3));
	decref(MK_mirth_mirth_Prop_1(in_Prop_1));
	struct std_maybe_Maybe_1 v4 = mw_mirth_mirth_PropState_1_readyzy(v3);
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rcx
movq %rcx, -0x28(%rbp)
movq 0x20(%rax), %rax
movq %rax, -0x20(%rbp)
movl -0x28(%rbp), %edi
movq -0x20(%rbp), %rsi
callq 0x46090
movq %rax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x30(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x45f68
movl -0x28(%rbp), %edi
movq -0x20(%rbp), %rsi
callq 0x46090
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x48(%rbp), %rax
cmpq $0x0, %rax
je 0x45f68
movl -0x28(%rbp), %edi
movq -0x20(%rbp), %rsi
callq 0x46090
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x58(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x45f68
movl -0x28(%rbp), %edi
movq -0x20(%rbp), %rsi
callq 0x46090
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x45f6a
jmp 0x45f6c
movq -0x18(%rbp), %rax
movq %rax, -0x78(%rbp)
leaq 0x34b8e5(%rip), %rax    # 0x391860
orq $0x1, %rax
movq %rax, -0x70(%rbp)
movq -0x70(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x46064
movq -0x18(%rbp), %rax
movq %rax, -0x88(%rbp)
leaq 0x34b8b9(%rip), %rax    # 0x391860
orq $0x1, %rax
movq %rax, -0x80(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x88(%rbp), %rax
cmpq $0x0, %rax
je 0x46064
movq -0x18(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq 0x34b884(%rip), %rax    # 0x391860
orq $0x1, %rax
movq %rax, -0x90(%rbp)
movq -0x98(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x46064
movq -0x18(%rbp), %rax
movq %rax, -0xa8(%rbp)
leaq 0x34b856(%rip), %rax    # 0x391860
orq $0x1, %rax
movq %rax, -0xa0(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0xa8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x46062
movq -0x18(%rbp), %rax
movq %rax, -0xb8(%rbp)
leaq 0x34b81c(%rip), %rax    # 0x391860
orq $0x1, %rax
movq %rax, -0xb0(%rbp)
movq -0xb8(%rbp), %rdi
movq -0xb0(%rbp), %rsi
callq 0x127c0
jmp 0x46064
jmp 0x46066
movl -0x28(%rbp), %edi
movq -0x20(%rbp), %rsi
callq 0x460d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0xc0, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_mirth_PropState_1_readyzy
static struct std_maybe_Maybe_1 mw_mirth_mirth_PropState_1_readyzy (struct mirth_mirth_PropState_1 in_PropState_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_PropState_1).tag) {
		case mirth_mirth_PropState_1_Ready: {
			VAL v4 = mtp_mirth_mirth_PropState_1_Ready(in_PropState_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(v4);
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_mirth_PropState_1(in_PropState_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 $0xa0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
testl %eax, %eax
jne 0x46128
jmp 0x460eb
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x46fb0
movq %rax, -0x30(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0xca10
movl %eax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x46222
jmp 0x4612a
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x46090
movq %rax, -0x50(%rbp)
movq %rdx, -0x48(%rbp)
movq -0x48(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x461f7
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x46090
movq %rax, -0x60(%rbp)
movq %rdx, -0x58(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x60(%rbp), %rax
cmpq $0x0, %rax
je 0x461f7
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x46090
movq %rax, -0x70(%rbp)
movq %rdx, -0x68(%rbp)
movq -0x70(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x461f7
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x46090
movq %rax, -0x80(%rbp)
movq %rdx, -0x78(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0x80(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x461f5
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x46090
movq %rax, -0x90(%rbp)
movq %rdx, -0x88(%rbp)
movq -0x90(%rbp), %rdi
movq -0x88(%rbp), %rsi
callq 0x127c0
jmp 0x461f7
jmp 0x461f9
leaq -0xa0(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa0(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x98(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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: mirth_mirth_LexicalState_free
static void mirth_mirth_LexicalState_free (VAL vself) {
	ASSERT(vself.tag == TAG_mirth_mirth_LexicalState);
	struct mirth_mirth_LexicalState* self = vself.data.ptr;
	decref(MK_std_maybe_Maybe_1(self->merrorzetoken));
	decref(MK_std_maybe_Maybe_1(self->mdefiningzenamespace));
	free(self);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movq -0x8(%rbp), %rax
leaq 0x34b2a2(%rip), %rcx    # 0x3918f0
orq $0x1, %rcx
cmpq %rcx, %rax
je 0x46681
movl $0x2, %edi
leaq 0x30f8eb(%rip), %rsi    # 0x355f4e
movl $0x58, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x46683
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x133a0
movq %rax, -0x28(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x20(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x46760
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x133a0
movq %rax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x38(%rbp), %rax
cmpq $0x0, %rax
je 0x46760
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x133a0
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x48(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x46760
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x133a0
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 0x4675e
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x133a0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x68(%rbp), %rdi
movq -0x60(%rbp), %rsi
callq 0x127c0
jmp 0x46760
jmp 0x46762
jmp 0x46764
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x133a0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x70(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x46861
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x133a0
movq %rax, -0x88(%rbp)
movq %rdx, -0x80(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x88(%rbp), %rax
cmpq $0x0, %rax
je 0x46861
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x133a0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x46861
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x133a0
movq %rax, -0xa8(%rbp)
movq %rdx, -0xa0(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0xa8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x4685f
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x133a0
movq %rax, -0xb8(%rbp)
movq %rdx, -0xb0(%rbp)
movq -0xb8(%rbp), %rdi
movq -0xb0(%rbp), %rsi
callq 0x127c0
jmp 0x46861
jmp 0x46863
movq -0x18(%rbp), %rdi
callq 0x5030
addq $0xc0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mirth_mirth_Prop_1_free
static void mirth_mirth_Prop_1_free (VAL vself) {
	ASSERT(vself.tag == TAG_mirth_mirth_Prop_1);
	struct mirth_mirth_Prop_1* self = vself.data.ptr;
	decref(MK_mirth_mirth_PropLabel(self->mlabel));
	decref(MK_mirth_mirth_PropState_1(self->mstate));
	free(self);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movq -0x8(%rbp), %rax
leaq 0x34aed2(%rip), %rcx    # 0x391860
orq $0x1, %rcx
cmpq %rcx, %rax
je 0x469c1
movl $0x2, %edi
leaq 0x30f624(%rip), %rsi    # 0x355fc7
movl $0x52, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x469c3
movq -0x10(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x46cb0
movq %rax, -0x28(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x20(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x46aa0
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x46cb0
movq %rax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x38(%rbp), %rax
cmpq $0x0, %rax
je 0x46aa0
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x46cb0
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x48(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x46aa0
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x46cb0
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 0x46a9e
movq -0x18(%rbp), %rax
movl 0x8(%rax), %edi
movq 0x10(%rax), %rsi
callq 0x46cb0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x68(%rbp), %rdi
movq -0x60(%rbp), %rsi
callq 0x127c0
jmp 0x46aa0
jmp 0x46aa2
jmp 0x46aa4
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x46090
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x70(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x46ba1
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x46090
movq %rax, -0x88(%rbp)
movq %rdx, -0x80(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x88(%rbp), %rax
cmpq $0x0, %rax
je 0x46ba1
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x46090
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x46ba1
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x46090
movq %rax, -0xa8(%rbp)
movq %rdx, -0xa0(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0xa8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x46b9f
movq -0x18(%rbp), %rax
movl 0x18(%rax), %edi
movq 0x20(%rax), %rsi
callq 0x46090
movq %rax, -0xb8(%rbp)
movq %rdx, -0xb0(%rbp)
movq -0xb8(%rbp), %rdi
movq -0xb0(%rbp), %rsi
callq 0x127c0
jmp 0x46ba1
jmp 0x46ba3
movq -0x18(%rbp), %rdi
callq 0x5030
addq $0xc0, %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_mirth_PropState_1_Ready
static VAL mtp_mirth_mirth_PropState_1_Ready (struct mirth_mirth_PropState_1 in_PropState_1) {
	struct mirth_mirth_PropState_1_Ready v3 = *in_PropState_1.ptr.Ready;
	if (!--(in_PropState_1.ptr.Ready->refs)) {
		free(in_PropState_1.ptr.Ready);
	} else {
		incref(v3.m0);
	}
	return v3.m0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %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 0x46ff5
movq -0x18(%rbp), %rdi
callq 0x5030
jmp 0x47040
jmp 0x46ff7
movq -0x28(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x4703c
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x30(%rbp), %rax
cmpq $0x0, %rax
je 0x4703c
movq -0x30(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x4703c
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x30(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x4703e
jmp 0x47040
movups -0x30(%rbp), %xmm0
movaps %xmm0, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq -0x8(%rbp), %rdx
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_package_Package_name
static uint64_t mw_mirth_package_Package_name (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Package_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_package_Package_name, in_Package_2);
	VAL v6 = mut_get(v5);
	*out_zaMirth_3 = in_zaMirth_1;
	return V_mirth_name_Name(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 0x134d5a1(%rip), %rdi   # 0x1394620
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), %rax
addq $0x30, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_name_QName_QName
static struct mirth_name_QName* mtw_mirth_name_QName_QName (struct mirth_name_Namespace in_Namespace_1, uint64_t in_Name_2, INT in_Int_3) {
	struct mirth_name_QName* v5 = calloc(1, sizeof *v5);
	ASSERT(v5);
	v5->refs = 1;
	v5->marity = in_Int_3;
	v5->mname = in_Name_2;
	v5->mnamespace = in_Namespace_1;
	return v5;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movq %rcx, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movl $0x1, %edi
movl $0x28, %esi
callq 0x50c0
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
jne 0x4714b
movl $0x2, %edi
leaq 0x30ef0a(%rip), %rsi    # 0x356037
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x4714d
movq -0x28(%rbp), %rax
movl $0x1, (%rax)
movq -0x28(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, 0x20(%rax)
movq -0x20(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x28(%rbp), %rax
movq -0x10(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x8(%rbp), %rcx
movq %rcx, 0x10(%rax)
movq -0x28(%rbp), %rax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_name_Namespace_Package
static struct mirth_name_Namespace mtw_mirth_name_Namespace_Package (uint64_t in_Package_1) {
	struct mirth_name_Namespace_Package* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mPackage = in_Package_1;
	struct mirth_name_Namespace v4 = { .tag=mirth_name_Namespace_Package, .ptr.Package=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x47230
movl $0x2, %edi
leaq 0x30ee57(%rip), %rsi    # 0x356069
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x47232
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x1, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %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_module_Module_name
static uint64_t mw_mirth_module_Module_name (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Module_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_module_Module_name, in_Module_2);
	VAL v6 = mut_get(v5);
	*out_zaMirth_3 = in_zaMirth_1;
	return V_mirth_name_Name(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 0x134d3e1(%rip), %rdi   # 0x1394670
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), %rax
addq $0x30, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtp_mirth_mirth_PropState_1_Delay
static struct mirth_mirth_LexicalState* mtp_mirth_mirth_PropState_1_Delay (struct mirth_mirth_PropState_1 in_PropState_1, VAL *out_a_3, VAL *out__4) {
	struct mirth_mirth_PropState_1_Delay v5 = *in_PropState_1.ptr.Delay;
	if (!--(in_PropState_1.ptr.Delay->refs)) {
		free(in_PropState_1.ptr.Delay);
	} else {
		incref(MK_mirth_mirth_LexicalState(v5.mLexicalState));
		incref(v5.m1);
		incref(v5.m0);
	}
	*out__4 = v5.m0;
	*out_a_3 = v5.m1;
	return v5.mLexicalState;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rsi
leaq -0x50(%rbp), %rdi
movl $0x30, %edx
callq 0x50e0
movq -0x8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x4808a
movq -0x8(%rbp), %rdi
callq 0x5030
jmp 0x481d0
jmp 0x4808c
movq -0x48(%rbp), %rax
movq %rax, -0x60(%rbp)
leaq 0x349855(%rip), %rax    # 0x3918f0
orq $0x1, %rax
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x4813a
movq -0x48(%rbp), %rax
movq %rax, -0x70(%rbp)
leaq 0x34982c(%rip), %rax    # 0x3918f0
orq $0x1, %rax
movq %rax, -0x68(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x70(%rbp), %rax
cmpq $0x0, %rax
je 0x4813a
movq -0x48(%rbp), %rax
movq %rax, -0x80(%rbp)
leaq 0x349801(%rip), %rax    # 0x3918f0
orq $0x1, %rax
movq %rax, -0x78(%rbp)
movq -0x80(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x4813a
movq -0x48(%rbp), %rax
movq %rax, -0x90(%rbp)
leaq 0x3497d9(%rip), %rax    # 0x3918f0
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 0x4813c
jmp 0x4813e
movq -0x38(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x48183
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x40(%rbp), %rax
cmpq $0x0, %rax
je 0x48183
movq -0x40(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x48183
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x40(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x48185
jmp 0x48187
movq -0x28(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x481cc
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x30(%rbp), %rax
cmpq $0x0, %rax
je 0x481cc
movq -0x30(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x481cc
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x30(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x481ce
jmp 0x481d0
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movq %rcx, (%rax)
movq -0x28(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x18(%rbp), %rax
movq -0x40(%rbp), %rcx
movq %rcx, (%rax)
movq -0x38(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x48(%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: mtw_mirth_mirth_PropState_1_Ready
static struct mirth_mirth_PropState_1 mtw_mirth_mirth_PropState_1_Ready (VAL in_b_1) {
	struct mirth_mirth_PropState_1_Ready* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->m0 = in_b_1;
	struct mirth_mirth_PropState_1 v4 = { .tag=mirth_mirth_PropState_1_Ready, .ptr.Ready=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl $0x1, %edi
movl $0x18, %esi
callq 0x50c0
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
jne 0x484e4
movl $0x2, %edi
leaq 0x30dc1a(%rip), %rsi    # 0x3560e0
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x484e6
movq -0x28(%rbp), %rax
movl $0x1, (%rax)
movq -0x28(%rbp), %rax
movups -0x20(%rbp), %xmm0
movups %xmm0, 0x8(%rax)
movl $0x0, -0x10(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_std_list_zaLister_1_popzx
static struct std_maybe_Maybe_1 mw_std_list_zaLister_1_popzx (struct std_list_List_1 in_zaLister_1, struct std_list_List_1 *out_zaLister_3) {
	incref(MK_std_list_List_1(in_zaLister_1));
	struct std_list_List_1 v4;
	struct std_maybe_Maybe_1 v5 = mw_std_list_List_1_uncons(in_zaLister_1, &v4);
	decref(MK_std_list_List_1(in_zaLister_1));
	*out_zaLister_3 = v4;
	return v5;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x28(%rbp)
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x30(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x485cb
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x48(%rbp), %rax
cmpq $0x0, %rax
je 0x485cb
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x58(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x485cb
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x485cd
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
leaq -0x78(%rbp), %rdx
callq 0x2c490
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0x88(%rbp)
movq %rdx, -0x80(%rbp)
movq -0x80(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x486d3
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x98(%rbp), %rax
cmpq $0x0, %rax
je 0x486d3
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0xa8(%rbp)
movq %rdx, -0xa0(%rbp)
movq -0xa8(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x486d3
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0xb8(%rbp)
movq %rdx, -0xb0(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0xb8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x486d1
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x12780
movq %rax, -0xc8(%rbp)
movq %rdx, -0xc0(%rbp)
movq -0xc8(%rbp), %rdi
movq -0xc0(%rbp), %rsi
callq 0x127c0
jmp 0x486d3
jmp 0x486d5
movq -0x28(%rbp), %rax
movups -0x78(%rbp), %xmm0
movups %xmm0, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0xd0, %rsp
popq %rbp
retq
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_prim_Prim_namespace
static struct mirth_name_Namespace mw_mirth_prim_Prim_namespace (struct mirth_mirth_zaMirth* in_zaMirth_1, enum mirth_prim_Prim in_Prim_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	struct mirth_name_Namespace v6 = mw_mirth_name_Namespace_Prim(in_zaMirth_1, &v5);
	*out_zaMirth_3 = v5;
	return v6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x18(%rbp)
movl %esi, -0x1c(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x18(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x57690
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x30, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_name_Namespace_Prim
static struct mirth_name_Namespace mw_mirth_name_Namespace_Prim (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_mirth_zaMirth* *out_zaMirth_2) {
	struct mirth_mirth_zaMirth* v4;
	uint64_t v5 = mw_mirth_module_Module_Prim(in_zaMirth_1, &v4);
	struct mirth_name_Namespace v6 = mtw_mirth_name_Namespace_Module(v5);
	*out_zaMirth_2 = v4;
	return v6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq -0x18(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x576e0
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
callq 0x57800
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_module_Module_Prim
static uint64_t mw_mirth_module_Module_Prim (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_mirth_zaMirth* *out_zaMirth_2) {
	struct mirth_mirth_zaMirth* v4;
	struct mirth_mirth_Builtin* v5 = mw_mirth_mirth_zaMirth_builtin(in_zaMirth_1, &v4);
	uint64_t v6 = v5->mprim;
	decref(MK_mirth_mirth_Builtin(v5));
	*out_zaMirth_2 = v4;
	return v6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rdi
leaq -0x18(%rbp), %rsi
callq 0x3eb20
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x38(%rbp)
leaq 0x33a021(%rip), %rax    # 0x391740
orq $0x1, %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x577e0
movq -0x20(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x339ff8(%rip), %rax    # 0x391740
orq $0x1, %rax
movq %rax, -0x40(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x48(%rbp), %rax
cmpq $0x0, %rax
je 0x577e0
movq -0x20(%rbp), %rax
movq %rax, -0x58(%rbp)
leaq 0x339fcd(%rip), %rax    # 0x391740
orq $0x1, %rax
movq %rax, -0x50(%rbp)
movq -0x58(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x577e0
movq -0x20(%rbp), %rax
movq %rax, -0x68(%rbp)
leaq 0x339fa8(%rip), %rax    # 0x391740
orq $0x1, %rax
movq %rax, -0x60(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x577de
movq -0x20(%rbp), %rax
movq %rax, -0x78(%rbp)
leaq 0x339f77(%rip), %rax    # 0x391740
orq $0x1, %rax
movq %rax, -0x70(%rbp)
movq -0x78(%rbp), %rdi
movq -0x70(%rbp), %rsi
callq 0x127c0
jmp 0x577e0
jmp 0x577e2
movq -0x18(%rbp), %rcx
movq -0x10(%rbp), %rax
movq %rcx, (%rax)
movq -0x28(%rbp), %rax
addq $0x80, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_name_Namespace_Module
static struct mirth_name_Namespace mtw_mirth_name_Namespace_Module (uint64_t in_Module_1) {
	struct mirth_name_Namespace_Module* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mModule = in_Module_1;
	struct mirth_name_Namespace v4 = { .tag=mirth_name_Namespace_Module, .ptr.Module=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x57850
movl $0x2, %edi
leaq 0x2fe8e0(%rip), %rsi    # 0x356112
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x57852
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x2, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_tycon_Tycon_Data
static struct mirth_tycon_Tycon mtw_mirth_tycon_Tycon_Data (uint64_t in_Data_1) {
	struct mirth_tycon_Tycon_Data* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mData = in_Data_1;
	struct mirth_tycon_Tycon v4 = { .tag=mirth_tycon_Tycon_Data, .ptr.Data=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x57a50
movl $0x2, %edi
leaq 0x2ff1e9(%rip), %rsi    # 0x356c1b
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x57a52
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x0, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_name_Namespace_Tycon
static struct mirth_name_Namespace mtw_mirth_name_Namespace_Tycon (struct mirth_tycon_Tycon in_Tycon_1) {
	struct mirth_name_Namespace_Tycon* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mTycon = in_Tycon_1;
	struct mirth_name_Namespace v4 = { .tag=mirth_name_Namespace_Tycon, .ptr.Tycon=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl $0x1, %edi
movl $0x18, %esi
callq 0x50c0
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
jne 0x57ae3
movl $0x2, %edi
leaq 0x2ff188(%rip), %rsi    # 0x356c4d
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x57ae5
movq -0x28(%rbp), %rax
movl $0x1, (%rax)
movq -0x28(%rbp), %rax
movups -0x20(%rbp), %xmm0
movups %xmm0, 0x8(%rax)
movl $0x3, -0x10(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
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_name_QName_zd
static bool mw_mirth_name_QName_zd (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_name_QName* in_QName_2, struct mirth_name_QName* in_QName_3, struct mirth_mirth_zaMirth* *out_zaMirth_4) {
	struct mirth_name_Namespace v6;
	uint64_t v7;
	INT v8;
	mtp_mirth_name_QName_QName(in_QName_3, &v6, &v7, &v8);
	struct mirth_name_Namespace v9;
	uint64_t v10;
	INT v11;
	mtp_mirth_name_QName_QName(in_QName_2, &v9, &v10, &v11);
	uint64_t v12 = v7;
	uint64_t v13 = v10;
	bool v14 = (v12 == v13);
	bool v15 = int_eq(v11, v8);
	bool v16 = (v14 && v15);
	struct mirth_mirth_zaMirth* v17;
	bool v18 = mw_mirth_name_Namespace_zd(in_zaMirth_1, v9, v6, &v17);
	bool v19 = (v16 && v18);
	*out_zaMirth_4 = v17;
	return v19;
}

// 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 -0x18(%rbp), %rdi
leaq -0x30(%rbp), %rsi
leaq -0x38(%rbp), %rdx
leaq -0x40(%rbp), %rcx
callq 0x58c90
movq -0x10(%rbp), %rdi
leaq -0x50(%rbp), %rsi
leaq -0x58(%rbp), %rdx
leaq -0x60(%rbp), %rcx
callq 0x58c90
movq -0x38(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x58(%rbp), %rax
movq %rax, -0x70(%rbp)
movq -0x68(%rbp), %rax
cmpq -0x70(%rbp), %rax
sete %al
andb $0x1, %al
movb %al, -0x71(%rbp)
movq -0x60(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0x194b0
andb $0x1, %al
movb %al, -0x72(%rbp)
xorl %eax, %eax
testb $0x1, -0x71(%rbp)
movb %al, -0x83(%rbp)
je 0x58c1e
movb -0x72(%rbp), %al
movb %al, -0x83(%rbp)
movb -0x83(%rbp), %al
andb $0x1, %al
movb %al, -0x73(%rbp)
movq -0x8(%rbp), %rdi
movl -0x50(%rbp), %esi
movq -0x48(%rbp), %rdx
movl -0x30(%rbp), %ecx
movq -0x28(%rbp), %r8
leaq -0x80(%rbp), %r9
callq 0x58e80
andb $0x1, %al
movb %al, -0x81(%rbp)
xorl %eax, %eax
testb $0x1, -0x73(%rbp)
movb %al, -0x84(%rbp)
je 0x58c66
movb -0x81(%rbp), %al
movb %al, -0x84(%rbp)
movb -0x84(%rbp), %al
andb $0x1, %al
movb %al, -0x82(%rbp)
movq -0x80(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movb -0x82(%rbp), %al
andb $0x1, %al
addq $0x90, %rsp
popq %rbp
retq