// File: /workspace/github_c_makefile_star2_O2/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_name_Name_mangled
static STR* mw_mirth_name_Name_mangled (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Name_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_name_Name_mangled, in_Name_2);
	bool v6 = mut_is_set(v5);
	struct mirth_mirth_zaMirth* branch_zaMirth_7;
	STR* branch_Str_8;
	if (v6) {
		VAL v9 = mut_get(v5);
		branch_Str_8 = value_str(v9);
		branch_zaMirth_7 = in_zaMirth_1;
	} else {
		struct mirth_mirth_zaMirth* v10;
		STR* v11 = mw_mirth_name_Name_str(in_zaMirth_1, in_Name_2, &v10);
		STR* v12 = mw_std_prim_Str_zzencode(v11);
		incref(MKSTR(v12));
		mut_set(MKSTR(v12), v5);
		branch_Str_8 = v12;
		branch_zaMirth_7 = v10;
	}
	*out_zaMirth_3 = branch_zaMirth_7;
	return branch_Str_8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rdx, %r15
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x108267e(%rip), %rdi   # 0x110d8d0
callq 0x12f88
movq %rax, %r12
movq %rax, %rdi
callq 0x142de
testb %al, %al
je 0x8b27e
movq %r12, %rdi
callq 0x1307d
movq %rax, %rdi
movq %rdx, %rsi
callq 0x8b55
jmp 0x8bc16
leaq -0x70(%rbp), %rdx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x12f0a
movq %rax, %rbx
movq 0x1082649(%rip), %rax   # 0x110d8e0
testq %rax, %rax
jne 0x8b2b1
leaq 0x51452(%rip), %rdi     # 0xdc6f5
xorl %esi, %esi
callq 0x8a21
movq %rax, 0x108262f(%rip)   # 0x110d8e0
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
movq %rax, %rsi
andq %r13, %rsi
sete %cl
testb $0x3, %al
setne %dl
orb %cl, %dl
jne 0x8b2cf
incl (%rsi)
movq %rax, -0x30(%rbp)
movq %r12, -0x60(%rbp)
movq %r15, -0x68(%rbp)
movq %rbx, %rcx
andq %r13, %rcx
setne %al
testb $0x3, %bl
sete %dl
andb %al, %dl
movb %dl, -0x31(%rbp)
cmpb $0x1, %dl
jne 0x8b2f7
addl $0x2, (%rcx)
movq %rcx, -0x58(%rbp)
movq %rbx, %rdi
callq 0xdf99
movq %rax, %r12
movq %rbx, -0x50(%rbp)
movq %rbx, %rdi
callq 0xdb65
movq %rax, %rdi
callq 0xdbc8
movq %rax, %r14
movq %rax, %r15
andq %r13, %r15
sete %al
testb $0x3, %r14b
setne %r13b
orb %al, %r13b
jne 0x8b336
incl (%r15)
pushq $0x1
popq %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0xdfd4
movq %rbx, %rcx
orb %al, %r13b
testb %al, %al
movq %r14, %rbx
cmoveq %rcx, %rbx
testb %r13b, %r13b
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
jne 0x8b37e
decl (%r15)
je 0x8b36c
movq %rcx, %rbx
jmp 0x8b37e
movq %rcx, %rbx
movq %r14, %rdi
leaq 0x7d0b0(%rip), %rsi     # 0x108429
callq 0xce94
movq %rbx, %rax
andq %r13, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0x8b393
incl (%rax)
pushq $0x1
popq %rdi
movq %rbx, %rsi
callq 0x89cc
testb %al, %al
je 0x8bb9b
movq %r12, %rdi
callq 0x12ef5
movl %eax, %r14d
leal -0x21(%r14), %eax
cmpl $0x3f, %eax
ja 0x8b3f8
leaq 0x484e7(%rip), %rcx     # 0xd38a8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x10825cf(%rip), %rsi   # 0x110d9a0
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61a40(%rip), %rdi     # 0xece21
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10825ad(%rip)   # 0x110d9a0
jmp 0x8ba6f
leal -0x7a(%r14), %eax
cmpl $0x4, %eax
ja 0x8b43f
leaq 0x485a0(%rip), %rcx     # 0xd39a8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x1082598(%rip), %rsi   # 0x110d9b0
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x619ff(%rip), %rdi     # 0xece27
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082576(%rip)   # 0x110d9b0
jmp 0x8ba6f
movl %r14d, %r15d
movq %r15, %rdi
callq 0xd86d
movq %rax, %rdi
callq 0xdc43
andl $0xf0, %eax
cmpl $0x30, %eax
jb 0x8b476
movq %r15, %rdi
callq 0xd86d
movq %rax, %rdi
callq 0xdc43
andl $0xfe, %eax
cmpl $0x3a, %eax
jb 0x8b4de
movq %r15, %rdi
callq 0xd86d
movq %rax, %rdi
callq 0xdc43
movzbl %al, %eax
cmpl $0x41, %eax
jb 0x8b4a6
movq %r15, %rdi
callq 0xd86d
movq %rax, %rdi
callq 0xdc43
movzbl %al, %eax
cmpl $0x5b, %eax
jb 0x8b4de
movq %r15, %rdi
callq 0xd86d
movq %rax, %rdi
callq 0xdc43
movzbl %al, %eax
cmpl $0x61, %eax
jb 0x8bb21
movq %r15, %rdi
callq 0xd86d
movq %rax, %rdi
callq 0xdc43
movzbl %al, %eax
cmpl $0x7a, %eax
ja 0x8bb21
movl %r14d, %edi
movq -0x30(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x109b9
movq -0x40(%rbp), %rax
jmp 0x8ba8e
movq 0x108249a(%rip), %rsi   # 0x110d998
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61910(%rip), %rdi     # 0xece1e
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082478(%rip)   # 0x110d998
jmp 0x8ba6f
movq 0x108247c(%rip), %rsi   # 0x110d9a8
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x618e8(%rip), %rdi     # 0xece24
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x108245a(%rip)   # 0x110d9a8
jmp 0x8ba6f
movq 0x108239e(%rip), %rsi   # 0x110d8f8
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6187b(%rip), %rdi     # 0xecde5
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x108237c(%rip)   # 0x110d8f8
jmp 0x8ba6f
movq 0x1082380(%rip), %rsi   # 0x110d908
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x4c5a1(%rip), %rdi     # 0xd7b39
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x108235e(%rip)   # 0x110d908
jmp 0x8ba6f
movq 0x1082372(%rip), %rsi   # 0x110d928
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6182e(%rip), %rdi     # 0xecdf4
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082350(%rip)   # 0x110d928
jmp 0x8ba6f
movq 0x1082334(%rip), %rsi   # 0x110d918
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x617fa(%rip), %rdi     # 0xecdee
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082312(%rip)   # 0x110d918
jmp 0x8ba6f
movq 0x1082376(%rip), %rsi   # 0x110d988
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x617f6(%rip), %rdi     # 0xece18
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082354(%rip)   # 0x110d988
jmp 0x8ba6f
movq 0x1082380(%rip), %rsi   # 0x110d9c0
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x617de(%rip), %rdi     # 0xece2e
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x108235e(%rip)   # 0x110d9c0
jmp 0x8ba6f
movq 0x10822ea(%rip), %rsi   # 0x110d958
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61788(%rip), %rdi     # 0xece06
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10822c8(%rip)   # 0x110d958
jmp 0x8ba6f
movq 0x1082264(%rip), %rsi   # 0x110d900
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6173c(%rip), %rdi     # 0xecde8
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082242(%rip)   # 0x110d900
jmp 0x8ba6f
movq 0x108221e(%rip), %rsi   # 0x110d8e8
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61705(%rip), %rdi     # 0xecddf
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10821fc(%rip)   # 0x110d8e8
jmp 0x8ba6f
movq 0x10822f0(%rip), %rsi   # 0x110d9e8
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6173a(%rip), %rdi     # 0xece42
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10822ce(%rip)   # 0x110d9e8
jmp 0x8ba6f
movq 0x1082242(%rip), %rsi   # 0x110d968
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x616d6(%rip), %rdi     # 0xece0c
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082220(%rip)   # 0x110d968
jmp 0x8ba6f
movq 0x108228c(%rip), %rsi   # 0x110d9e0
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x616da(%rip), %rdi     # 0xece3e
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x108226a(%rip)   # 0x110d9e0
jmp 0x8ba6f
movq 0x10821ee(%rip), %rsi   # 0x110d970
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6167d(%rip), %rdi     # 0xece0f
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10821cc(%rip)   # 0x110d970
jmp 0x8ba6f
movq 0x10821a0(%rip), %rsi   # 0x110d950
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61643(%rip), %rdi     # 0xece03
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x108217e(%rip)   # 0x110d950
jmp 0x8ba6f
movq 0x108219a(%rip), %rsi   # 0x110d978
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61624(%rip), %rdi     # 0xece12
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082178(%rip)   # 0x110d978
jmp 0x8ba6f
movq 0x108212c(%rip), %rsi   # 0x110d938
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x615de(%rip), %rdi     # 0xecdfa
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x108210a(%rip)   # 0x110d938
jmp 0x8ba6f
movq 0x108210e(%rip), %rsi   # 0x110d948
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x615b6(%rip), %rdi     # 0xece00
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10820ec(%rip)   # 0x110d948
jmp 0x8ba6f
movq 0x1082088(%rip), %rsi   # 0x110d8f0
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6156a(%rip), %rdi     # 0xecde2
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082066(%rip)   # 0x110d8f0
jmp 0x8ba6f
movq 0x108208a(%rip), %rsi   # 0x110d920
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6154b(%rip), %rdi     # 0xecdf1
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1082068(%rip)   # 0x110d920
jmp 0x8ba6f
movq 0x108206c(%rip), %rsi   # 0x110d930
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61523(%rip), %rdi     # 0xecdf7
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x108204a(%rip)   # 0x110d930
jmp 0x8ba6f
movq 0x10820e6(%rip), %rsi   # 0x110d9d8
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61538(%rip), %rdi     # 0xece3a
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x10820c4(%rip)   # 0x110d9d8
jmp 0x8ba6f
movq 0x1081ff0(%rip), %rsi   # 0x110d910
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x614bb(%rip), %rdi     # 0xecdeb
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081fce(%rip)   # 0x110d910
jmp 0x8ba6f
movq 0x1082012(%rip), %rsi   # 0x110d960
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x614ab(%rip), %rdi     # 0xece09
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081ff0(%rip)   # 0x110d960
jmp 0x8ba6f
movq 0x1081fc4(%rip), %rsi   # 0x110d940
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61471(%rip), %rdi     # 0xecdfd
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081fa2(%rip)   # 0x110d940
jmp 0x8ba6f
movq 0x108200e(%rip), %rsi   # 0x110d9b8
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61470(%rip), %rdi     # 0xece2a
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081fec(%rip)   # 0x110d9b8
jmp 0x8ba6f
movq 0x1081fa8(%rip), %rsi   # 0x110d980
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6142d(%rip), %rdi     # 0xece15
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081f86(%rip)   # 0x110d980
jmp 0x8ba6f
movq 0x1081f8d(%rip), %rsi   # 0x110d990
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x6140c(%rip), %rdi     # 0xece1b
pushq $0x2
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081f6f(%rip)   # 0x110d990
jmp 0x8ba6f
movq 0x1081fa6(%rip), %rsi   # 0x110d9d0
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x61400(%rip), %rdi     # 0xece36
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081f88(%rip)   # 0x110d9d0
jmp 0x8ba6f
movq 0x1081f77(%rip), %rsi   # 0x110d9c8
testq %rsi, %rsi
jne 0x8ba6f
leaq 0x613d5(%rip), %rdi     # 0xece32
pushq $0x3
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081f59(%rip)   # 0x110d9c8
movq %rsi, %rax
andq %r13, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x8ba85
incl (%rax)
movq -0x30(%rbp), %rdi
callq 0xd8b0
movq %rax, -0x30(%rbp)
movq %rbx, %rdi
pushq $0x3
popq %rsi
callq 0xe191
movq %rax, %r14
movq %rax, %r15
andq %r13, %r15
sete %al
testb $0x3, %r14b
setne %r13b
orb %al, %r13b
jne 0x8bab9
incl (%r15)
pushq $0x1
popq %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0xdfd4
movq %rbx, %rdi
orb %al, %r13b
testb %al, %al
movq %r14, %rbx
cmoveq %rdi, %rbx
testb %r13b, %r13b
jne 0x8baf8
decl (%r15)
movq %rdi, %rbx
jne 0x8baf8
movq %r14, %rdi
leaq 0x7c93c(%rip), %rsi     # 0x108429
callq 0xce94
pushq $0x1
popq %rdi
movq %rdi, %rbx
incq %r12
movq %rbx, %rax
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
andq %r13, %rax
setne %cl
testb $0x3, %bl
sete %dl
testb %dl, %cl
je 0x8b396
jmp 0x8b391
movq 0x1081ec8(%rip), %rsi   # 0x110d9f0
testq %rsi, %rsi
jne 0x8bb46
leaq 0x612f4(%rip), %rdi     # 0xece28
pushq $0x1
popq %rsi
callq 0x8a21
movq %rax, %rsi
movq %rax, 0x1081eaa(%rip)   # 0x110d9f0
movq %rsi, %rax
andq %r13, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x8bb5c
incl (%rax)
movq -0x30(%rbp), %rdi
callq 0xd8b0
movq %rax, %r15
movl %r14d, %edi
leaq -0x44(%rbp), %rsi
callq 0x7bfc5
movl %eax, %edi
movq %r15, %rsi
leaq -0x40(%rbp), %rdx
callq 0x109b9
movl -0x44(%rbp), %edi
movq -0x40(%rbp), %rsi
leaq -0x78(%rbp), %rdx
callq 0x109b9
movq -0x78(%rbp), %rax
jmp 0x8ba8e
movq %rbx, %rax
andq %r13, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0x8bbc1
decl (%rax)
jne 0x8bbc1
movq %rbx, %rdi
leaq 0x7c555(%rip), %rsi     # 0x108111
callq 0xce94
cmpb $0x0, -0x31(%rbp)
movq -0x68(%rbp), %r15
movq -0x60(%rbp), %rbx
leaq 0x7c585(%rip), %r14     # 0x108159
je 0x8bbea
movq -0x58(%rbp), %rax
decl (%rax)
jne 0x8bbea
movq -0x50(%rbp), %rdi
movq %r14, %rsi
callq 0xce94
movq -0x30(%rbp), %rdi
andq %rdi, %r13
sete %al
testb $0x3, %dil
setne %cl
orb %al, %cl
jne 0x8bc03
incl (%r13)
movq %r14, %rsi
movq %rbx, %rdx
callq 0x1393b
movq -0x30(%rbp), %rax
movq -0x70(%rbp), %rbx
movq %rbx, (%r15)
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq