// File: /workspace/github_c_makefile_star2_O1/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_elab_elabzemodulezx
static uint64_t mw_mirth_elab_elabzemodulezx (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Module_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v7;
	uint64_t v8 = mw_mirth_module_Module_start(in_zaMirth_1, in_Module_2, &v7);
	struct mirth_mirth_zaMirth* v9;
	uint64_t v10 = mw_mirth_elab_elabzemodulezeheaderzx(v7, v8, &v9);
	struct mirth_name_Namespace v11 = mtw_mirth_name_Namespace_Module(in_Module_2);
	struct mirth_mirth_PropLabel v12 = { .tag=mirth_mirth_PropLabel_DefiningNamespace };
	struct mirth_mirth_zaMirth* v13;
	struct mirth_mirth_Prop_1* v14 = mw_mirth_mirth_PropLabel_prop(v9, MK_mirth_name_Namespace(v11), v12, &v13);
	struct std_maybe_Maybe_1 v15 = mtw_std_maybe_Maybe_1_Some(MK_mirth_mirth_Prop_1(v14));
	struct mirth_mirth_LexicalState* v16 = v13->mlexicalzestate;
	incref(MK_mirth_mirth_LexicalState(v16));
	incref(MK_mirth_mirth_LexicalState(v16));
	struct std_maybe_Maybe_1 v17 = v16->mdefiningzenamespace;
	incref(MK_std_maybe_Maybe_1(v17));
	decref(MK_mirth_mirth_LexicalState(v16));
	struct mirth_mirth_LexicalState* v18 = mirth_mirth_LexicalState_set_definingzenamespace(v16, v15);
	struct mirth_mirth_LexicalState* v19 = v13->mlexicalzestate;
	decref(MK_mirth_mirth_LexicalState(v19));
	v13->mlexicalzestate = v18;
	struct mirth_mirth_zaMirth* v20;
	uint64_t v21 = mw_mirth_elab_elabzedeclszx(v13, v10, &v20);
	struct mirth_mirth_zaMirth* v22;
	bool v23 = mw_mirth_token_Token_modulezeendzy(v20, v21, &v22);
	struct mirth_mirth_zaMirth* branch_zaMirth_24;
	uint64_t branch_Token_25;
	if (v23) {
		branch_Token_25 = v21;
		branch_zaMirth_24 = v22;
	} else {
		STR* v26;
		STRLIT(v26, "Unexpected token in module.", 27);
		mw_mirth_mirth_zaMirth_emitzefatalzeerrorzx(v22, v21, v26);
	}
	struct mirth_mirth_LexicalState* v29 = branch_zaMirth_24->mlexicalzestate;
	incref(MK_mirth_mirth_LexicalState(v29));
	struct mirth_mirth_LexicalState* v30 = mirth_mirth_LexicalState_set_definingzenamespace(v29, v17);
	struct mirth_mirth_LexicalState* v31 = branch_zaMirth_24->mlexicalzestate;
	decref(MK_mirth_mirth_LexicalState(v31));
	branch_zaMirth_24->mlexicalzestate = v30;
	*out_zaMirth_3 = branch_zaMirth_24;
	return in_Module_2;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xb8, %rsp
movq %rdx, -0xd0(%rbp)
movq %rdi, %rbx
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
leaq 0x109c31e(%rip), %rdi   # 0x111a6f8
movq %rsi, -0xc8(%rbp)
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %r14
leaq 0x109a948(%rip), %rdi   # 0x1118d40
movq %rax, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %r12
leaq 0x109b1e6(%rip), %rdi   # 0x11195f8
movq %r14, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, -0x48(%rbp)
leaq -0xd8(%rbp), %r15
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x316e2
movq (%r15), %rbx
leaq 0x109afa3(%rip), %rdi   # 0x11193e8
movq %r14, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %rdi
shrq $0x30, %rdi
andq %r13, %rax
movq %rax, %rsi
callq 0x3196d
cmpl $0x1, %eax
movq %r13, -0x38(%rbp)
jne 0x7f5d6
movq %rdx, %rdi
callq 0xdaeb
leaq 0x109a045(%rip), %rdi   # 0x11184c8
movq %rax, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %rdi
movq %rdx, %rsi
callq 0x942c
movq %rax, %r15
cmpq $0x0, 0x109c27f(%rip)   # 0x111a728
jne 0x7e4d1
movl $0x6, %edi
callq 0xf9f7
movq $0x6, 0x10(%rax)
movl $0x75646f6d, 0x18(%rax) # imm = 0x75646F6D
movw $0x656c, 0x1c(%rax)     # imm = 0x656C
movq %rax, 0x109c257(%rip)   # 0x111a728
movq 0x109c250(%rip), %rsi   # 0x111a728
movq %rsi, %rax
andq %r13, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x7e4ee
incl (%rax)
movq %r15, %rdi
callq 0xe2eb
testl %eax, %eax
jne 0x7f5d6
movq %r12, -0x98(%rbp)
leaq -0x80(%rbp), %rdx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2801e
movl $0x1, %edi
movq %rax, %rsi
callq 0xec04
testl %eax, %eax
js 0x7e580
movq -0x80(%rbp), %rdi
xorl %r15d, %r15d
cmpq %r14, 0x109aec5(%rip)   # 0x11193f8
leaq 0x1(%r14), %rax
cmovaq %rax, %r15
leaq -0x60(%rbp), %rbx
leaq -0x40(%rbp), %r14
movq %r15, %rsi
movq %rbx, %rdx
movq %r14, %rcx
callq 0x8a9d7
movq %rax, -0x70(%rbp)
movq (%rbx), %rdi
leaq -0x50(%rbp), %rbx
movq %r15, -0x78(%rbp)
movq %r15, %rsi
movq %rbx, %rdx
callq 0x28928
movq %rax, %rsi
movq (%rbx), %rdi
movq (%r14), %rax
movq %rax, -0xc0(%rbp)
jmp 0x7e616
movq -0x80(%rbp), %rdi
leaq -0x60(%rbp), %rbx
movq %r14, %rsi
movq %rbx, %rdx
callq 0x28928
movq %rax, %r12
movq (%rbx), %rdi
leaq -0x40(%rbp), %rbx
movq %r14, %rsi
movq %rbx, %rdx
callq 0x335a4
movq %rax, %r15
movq (%rbx), %rdi
leaq -0x50(%rbp), %rbx
leaq -0x88(%rbp), %rcx
movq %rax, %rsi
movq %rbx, %rdx
callq 0x8a9d7
movq %rax, -0x70(%rbp)
movq (%rbx), %rdi
leaq -0xa8(%rbp), %r14
movq %r15, %rsi
movq %r14, %rdx
callq 0x28928
movq %rax, %rbx
movq (%r14), %rdi
leaq -0xa0(%rbp), %rdx
movq %rax, %rsi
callq 0x28899
testb %al, %al
je 0x7f881
movq %r15, -0x78(%rbp)
movq -0xa0(%rbp), %rdi
movq -0x88(%rbp), %rax
movq %rax, -0xc0(%rbp)
movq %r12, %rsi
leaq -0xa0(%rbp), %rbx
movq %rsi, %r12
movq %rbx, %rdx
callq 0x8ade5
movq (%rbx), %r15
testb %al, %al
je 0x7e757
leaq -0x60(%rbp), %rdx
movq $0x0, -0x30(%rbp)
xorl %r14d, %r14d
movq %r15, %rdi
movq %r12, %rsi
movq %rdx, %rbx
callq 0x8ade5
testb %al, %al
je 0x7f492
movq -0x60(%rbp), %rdi
movq %r12, %rsi
leaq -0x40(%rbp), %rdx
callq 0x2801e
movl $0x1, %edi
movq %rax, %rsi
callq 0xec04
testl %eax, %eax
js 0x7e6a7
movq -0x40(%rbp), %rdi
cmpq %r12, 0x109ad74(%rip)   # 0x11193f8
leaq 0x1(%r12), %r15
movl $0x0, %eax
cmovbeq %rax, %r15
movq %r15, %rsi
leaq -0x50(%rbp), %rdx
callq 0x28928
movq %rax, %r12
movq -0x50(%rbp), %r13
jmp 0x7e70e
movq %r14, -0x68(%rbp)
movq -0x40(%rbp), %rdi
movq %r12, %rsi
leaq -0x50(%rbp), %rdx
callq 0x28928
movq %r12, %rsi
movq %rax, %r12
movq -0x50(%rbp), %rdi
leaq -0x88(%rbp), %rdx
callq 0x335a4
movq %rax, %r15
movq -0x88(%rbp), %rdi
leaq 0x1(%rax), %r14
cmpq %rax, 0x109ad12(%rip)   # 0x11193f8
movl $0x0, %esi
cmovaq %r14, %rsi
leaq -0xa8(%rbp), %rdx
callq 0x28899
movq -0xa8(%rbp), %r13
testb %al, %al
je 0x7f572
movq -0x68(%rbp), %r14
movq %r15, %rdi
leaq 0x976a0(%rip), %rsi     # 0x115db8
movl %r14d, %edx
movq -0x30(%rbp), %rcx
callq 0xd592
movq %rdx, -0x30(%rbp)
movq %r13, %rdi
movq %r12, %rsi
movq %rbx, %rdx
callq 0x8ade5
movq %rbx, %rdx
movq -0x60(%rbp), %r15
movl $0x1, %r14d
testb %al, %al
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
jne 0x7e642
jmp 0x7e762
xorl %r14d, %r14d
movq $0x0, -0x30(%rbp)
xorl %edi, %edi
xorl %esi, %esi
movl %r14d, %edx
movq -0x30(%rbp), %rcx
callq 0xd37c
movq %rax, -0xb8(%rbp)
movq %rdx, -0xb0(%rbp)
leaq -0x60(%rbp), %rbx
movq %r15, %rdi
movq %r12, %rsi
movq %rbx, %rdx
callq 0x3609b
cmpq %r12, 0x109ac5f(%rip)   # 0x11193f8
leaq 0x1(%r12), %rcx
movl $0x0, %edx
cmovbeq %rdx, %rcx
movq (%rbx), %rbx
testb %al, %al
cmoveq %r12, %rcx
movq %rcx, -0x90(%rbp)
leaq 0x1099d72(%rip), %rdi   # 0x1118530
movq -0x98(%rbp), %r14
movq %r14, %rsi
callq 0x13ff0
leaq 0x96f24(%rip), %rsi     # 0x1156f8
movq -0xc0(%rbp), %rdi
movq %rax, %rdx
callq 0x14ab5
leaq 0x109a7de(%rip), %rdi   # 0x1118fc8
movq %r14, %rsi
callq 0x13ff0
movq -0x48(%rbp), %rdi
andq $-0x4, %rdi
leaq 0x96ac0(%rip), %rsi     # 0x1152c1
movq %rax, %rdx
callq 0x14ab5
leaq 0x1099d10(%rip), %rdi   # 0x1118520
movq %r14, %rsi
callq 0x13ff0
leaq 0x97239(%rip), %rsi     # 0x115a58
movq -0x70(%rbp), %rdi
movq %rax, %rdx
callq 0x14ab5
leaq -0xd8(%rbp), %r15
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x15157
movq (%r15), %rdi
leaq -0x80(%rbp), %rdx
movq %rax, %rsi
callq 0x33063
testb %al, %al
jne 0x7f63b
movq -0x80(%rbp), %rbx
leaq 0x109bf06(%rip), %rdi   # 0x111a768
movq %r14, %rsi
callq 0x13ff0
leaq 0x97547(%rip), %rsi     # 0x115db8
movq -0x78(%rbp), %rdi
movq %rax, %rdx
callq 0x14ab5
movq %r14, %rdi
callq 0x1c64f
leaq -0xa0(%rbp), %r15
movq %rbx, %rdi
movl $0x1, %esi
movq %rax, %rdx
movq %r15, %rcx
callq 0x13817
movq (%r15), %r15
leaq 0x109a4d7(%rip), %rdi   # 0x1118d80
movq %r14, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %rdi
movq %rdx, %rsi
callq 0x942c
movq %rax, %rcx
andq %r13, %rcx
movq %rcx, -0x48(%rbp)
setne %cl
movq %rax, -0x30(%rbp)
testb $0x3, %al
sete %al
andb %cl, %al
movb %al, -0x68(%rbp)
cmpb $0x1, %al
jne 0x7e8e9
movq -0x48(%rbp), %rax
incl (%rax)
movq -0x30(%rbp), %rdi
callq 0xe740
movq %rax, %rdi
callq 0xe7a9
movq %rax, %rbx
andq %r13, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0x7e90f
incl (%rax)
movq %r15, -0x70(%rbp)
movl $0x1, %edi
movq %rbx, %rsi
callq 0xec04
xorl %r12d, %r12d
testl %eax, %eax
jns 0x7ea4c
movq %r12, %rax
andq %r13, %rax
sete %cl
testb $0x3, %r12b
setne %dl
orb %cl, %dl
jne 0x7e952
decl (%rax)
jne 0x7e952
movq %r12, %rdi
leaq 0x96974(%rip), %rsi     # 0x1152c1
callq 0xd4e3
movl $0x3, %esi
movq %rbx, %rdi
callq 0xedca
movq %rax, %rbx
movq %rax, %r15
andq %r13, %r15
setne %al
testb $0x3, %bl
sete %r14b
andb %al, %r14b
cmpb $0x1, %r14b
jne 0x7e97e
incl (%r15)
cmpb $0x0, -0x68(%rbp)
je 0x7e98a
movq -0x48(%rbp), %rax
incl (%rax)
movq %rbx, %rdi
movq -0x30(%rbp), %rsi
callq 0xea6e
movl %eax, %eax
leaq 0x1(,%rax,2), %rdi
callq 0xe818
cmpb $0x2f, %al
jne 0x7e9c8
testb %r14b, %r14b
je 0x7e9b1
incl (%r15)
movq %rbx, %rdi
leaq 0x96a6e(%rip), %rsi     # 0x115429
callq 0x95f6
movl $0x1, %r13d
jmp 0x7e9cd
xorl %r13d, %r13d
xorl %edx, %edx
movq %r13, %r12
shlq $0x30, %r12
orq %rdx, %r12
movq %rdx, %rax
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rax
sete %cl
testb $0x3, %dl
setne %dl
orb %cl, %dl
jne 0x7ea08
cmpl $0x0, (%rax)
jne 0x7ea08
movq %r12, %rdi
leaq 0x968be(%rip), %rsi     # 0x1152c1
callq 0xd4e3
leaq 0x1(,%r13,2), %rdi
movl $0x1, %esi
callq 0xec04
testl %eax, %eax
jne 0x7ea42
testb %r14b, %r14b
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
je 0x7ea30
incl (%r15)
movl $0x1, %edi
movq %rbx, %rsi
callq 0xec04
jmp 0x7e923
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
movq %rbx, %rax
andq %r13, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0x7ea72
decl (%rax)
jne 0x7ea72
movq %rbx, %rdi
leaq 0x969bc(%rip), %rsi     # 0x115429
callq 0xd4e3
movq %r12, %rsi
shrq $0x30, %rsi
andq %r13, %r12
leaq -0x60(%rbp), %r15
movq -0x30(%rbp), %rdi
movq %r12, %rdx
movq %r15, %rcx
callq 0x8b692
movq %rax, -0x48(%rbp)
movl (%r15), %eax
cmpl $0x1, %eax
je 0x7eb70
testl %eax, %eax
jne 0x7f462
leaq -0x60(%rbp), %rbx
movq -0x70(%rbp), %rdi
movq -0x98(%rbp), %rsi
movq %rbx, %rdx
callq 0x15157
movq (%rbx), %rsi
leaq -0x40(%rbp), %rdx
movq %rax, %rdi
callq 0x8aec5
movq %rax, %r12
movq %rax, %rdx
movq -0x48(%rbp), %rcx
movq %rcx, %r14
andq %r13, %r14
setne %al
testb $0x3, %cl
sete %bl
andb %al, %bl
cmpb $0x1, %bl
jne 0x7eaf0
incl (%r14)
andq %r13, %r12
setne %al
testb $0x3, %dl
sete %r13b
andb %al, %r13b
cmpb $0x1, %r13b
jne 0x7eb0a
incl (%r12)
movq -0x48(%rbp), %rdi
movq %rdx, -0x30(%rbp)
movq %rdx, %rsi
callq 0xe2eb
testl %eax, %eax
jne 0x7f702
leaq 0x96630(%rip), %rsi     # 0x115159
movq -0x40(%rbp), %r15
testb %r13b, %r13b
je 0x7eb47
decl (%r12)
jne 0x7eb47
movq -0x30(%rbp), %rdi
movq %rsi, %r12
callq 0xd4e3
movq %r12, %rsi
testb %bl, %bl
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
je 0x7efb8
decl (%r14)
jne 0x7efb8
movq -0x48(%rbp), %rdi
callq 0xd4e3
jmp 0x7efb8
movq -0x58(%rbp), %rdi
callq 0xdaeb
movq %rax, %r14
movq %rdx, %r12
movq %rax, %rdi
movq %rdx, %rsi
callq 0x942c
movq %r14, %rdi
movq %r12, %rsi
callq 0x942c
testq %r13, %rax
je 0x7ebb9
movq %r14, %rdi
movq %r12, %rsi
callq 0x942c
testb $0x3, %al
jne 0x7ebb9
movq %r14, %rdi
movq %r12, %rsi
callq 0x942c
andq %r13, %rax
incl (%rax)
movq %r14, %rdi
movq %r12, %rsi
callq 0x942c
movq %rax, %rdi
callq 0xe740
movq %rax, %rdi
callq 0xe7a9
movq %rax, %r15
andq %r13, %rax
sete %cl
testb $0x3, %r15b
setne %dl
orb %cl, %dl
jne 0x7ebea
incl (%rax)
movl $0x1, %edi
movq %r15, %rsi
callq 0xec04
movl %eax, %ebx
movq %r14, %rdi
movq %r12, %rsi
callq 0x942c
testl %ebx, %ebx
movq %rax, -0x30(%rbp)
js 0x7ec13
xorl %ebx, %ebx
jmp 0x7ed55
movq %rax, %rcx
andq %r13, %rcx
movq %rcx, -0x78(%rbp)
setne %cl
testb $0x3, %al
sete %al
andb %cl, %al
movb %al, -0x68(%rbp)
xorl %ebx, %ebx
movq %rbx, %rax
andq %r13, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0x7ec52
decl (%rax)
jne 0x7ec52
movq %rbx, %rdi
leaq 0x96674(%rip), %rsi     # 0x1152c1
callq 0xd4e3
movl $0x3, %esi
movq %r15, %rdi
callq 0xedca
movq %rax, %r15
movq %rax, %r12
andq %r13, %r12
setne %al
testb $0x3, %r15b
sete %r14b
andb %al, %r14b
cmpb $0x1, %r14b
jne 0x7ec80
incl (%r12)
cmpb $0x0, -0x68(%rbp)
movq -0x30(%rbp), %rsi
je 0x7ec90
movq -0x78(%rbp), %rax
incl (%rax)
movq %r15, %rdi
callq 0xea6e
movl %eax, %eax
leaq 0x1(,%rax,2), %rdi
callq 0xe818
cmpb $0x2e, %al
jne 0x7eccb
testb %r14b, %r14b
je 0x7ecb4
incl (%r12)
movq %r15, %rdi
leaq 0x9676b(%rip), %rsi     # 0x115429
callq 0x95f6
movl $0x1, %r13d
jmp 0x7ecd0
xorl %r13d, %r13d
xorl %edx, %edx
movq %r13, %rbx
shlq $0x30, %rbx
orq %rdx, %rbx
movq %rdx, %rax
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rax
sete %cl
testb $0x3, %dl
setne %dl
orb %cl, %dl
jne 0x7ed0b
cmpl $0x0, (%rax)
jne 0x7ed0b
movq %rbx, %rdi
leaq 0x965bb(%rip), %rsi     # 0x1152c1
callq 0xd4e3
leaq 0x1(,%r13,2), %rdi
movl $0x1, %esi
callq 0xec04
testl %eax, %eax
jne 0x7ed4b
testb %r14b, %r14b
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
je 0x7ed34
incl (%r12)
movl $0x1, %edi
movq %r15, %rsi
callq 0xec04
testl %eax, %eax
js 0x7ec2c
jmp 0x7ed55
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
movq %r15, %rax
andq %r13, %rax
sete %cl
testb $0x3, %r15b
setne %dl
orb %cl, %dl
jne 0x7ed7c
decl (%rax)
jne 0x7ed7c
movq %r15, %rdi
leaq 0x966b2(%rip), %rsi     # 0x115429
callq 0xd4e3
movq %rbx, %rsi
shrq $0x30, %rsi
andq %r13, %rbx
leaq -0x60(%rbp), %rcx
movq -0x30(%rbp), %rdi
movq %rbx, %rdx
callq 0x8b692
movq %rax, -0x30(%rbp)
cmpq $0x0, 0x109b9e6(%rip)   # 0x111a788
movq -0x98(%rbp), %r14
movq -0x70(%rbp), %r12
jne 0x7edd2
movl $0x3, %edi
callq 0xf9f7
movq $0x3, 0x10(%rax)
movw $0x746d, 0x18(%rax)     # imm = 0x746D
movb $0x68, 0x1a(%rax)
movq %rax, 0x109b9b6(%rip)   # 0x111a788
leaq 0x96380(%rip), %rsi     # 0x115159
movq 0x109b9a8(%rip), %rdi   # 0x111a788
movq %rdi, %rax
andq %r13, %rax
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
jne 0x7edf6
incl (%rax)
callq 0x95f6
movq %rdx, %rdi
callq 0xdaeb
movq %rax, %r15
movq %rdx, %rbx
movl -0x60(%rbp), %eax
testl %eax, %eax
je 0x7ee5a
cmpl $0x1, %eax
jne 0x7f462
movq -0x58(%rbp), %rdi
callq 0xdaeb
movq %rax, %rdi
movq %rdx, %rsi
callq 0x942c
movq %rax, %r12
movq %r15, %rdi
movq %rbx, %rsi
callq 0x942c
movq %r12, %rdi
movq %rax, %rsi
callq 0xe2eb
testl %eax, %eax
movq -0x98(%rbp), %r14
movq -0x70(%rbp), %r12
jne 0x7ee82
jmp 0x7ef18
testb $0x1, %bl
je 0x7ee82
movq %r15, %rax
andq %r13, %rax
sete %cl
testb $0x3, %r15b
setne %dl
orb %cl, %dl
jne 0x7ee82
decl (%rax)
jne 0x7ee82
movq %r15, %rdi
movq %rbx, %rsi
callq 0xd4e3
cmpq $0x0, 0x109b906(%rip)   # 0x111a790
jne 0x7eec9
movl $0x27, %edi
callq 0xf9f7
movq $0x27, 0x10(%rax)
movabsq $0x2e656c6966206874, %rcx # imm = 0x2E656C6966206874
movq %rcx, 0x37(%rax)
movups 0x6e0a5(%rip), %xmm0    # 0xecf58
movups %xmm0, 0x18(%rax)
movups 0x6e0aa(%rip), %xmm0    # 0xecf68
movups %xmm0, 0x28(%rax)
movq %rax, 0x109b8c7(%rip)   # 0x111a790
movq 0x109b8c0(%rip), %rbx   # 0x111a790
movq %rbx, %rax
andq %r13, %rax
sete %cl
testb $0x3, %bl
setne %dl
orb %cl, %dl
jne 0x7eee5
incl (%rax)
leaq -0x50(%rbp), %r15
movq %r12, %rdi
movq -0x90(%rbp), %rsi
movq %r15, %rdx
callq 0x1b861
movq (%r15), %rdi
leaq -0x40(%rbp), %r15
movq %rax, %rsi
movq %rbx, %rdx
movl $0x1, %ecx
movq %r15, %r8
callq 0x1bf3a
movq (%r15), %r12
leaq 0x1099611(%rip), %rdi   # 0x1118530
movq %r14, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
leaq 0x1099592(%rip), %rdi   # 0x11184c8
movq %rax, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %rdi
movq %rdx, %rsi
callq 0x942c
movq %rax, %rbx
movq -0x30(%rbp), %rdi
leaq 0x961fa(%rip), %r15     # 0x115159
movq %r15, %rsi
callq 0x942c
movq %rax, %rdi
movq %rbx, %rsi
callq 0xe2eb
testl %eax, %eax
jne 0x7f7e2
leaq 0x109959f(%rip), %rdi   # 0x1118520
movq %r14, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %rbx
movq -0x48(%rbp), %rdi
movq %r15, %rsi
callq 0x942c
leaq -0x40(%rbp), %r15
movq %r12, %rdi
movq %rax, %rsi
movq %rbx, %rdx
movq %r15, %rcx
callq 0x84dc2
movq (%r15), %r15
movq -0xb8(%rbp), %rdi
movq -0xb0(%rbp), %rsi
testl %edi, %edi
je 0x7f161
cmpl $0x1, %edi
jne 0x7f462
movq %rsi, %rdi
leaq -0x60(%rbp), %rsi
callq 0xd450
movq %rax, %r14
movq 0x48(%r15), %rbx
movq %rbx, %rax
andq %r13, %rax
setne %dl
testb $0x3, %bl
sete %cl
andb %dl, %cl
cmpb $0x1, %cl
jne 0x7f003
addl $0x2, (%rax)
movl 0x8(%rbx), %edx
movl %edx, -0x68(%rbp)
movq 0x10(%rbx), %rdi
movq %rdi, %rdx
andq %r13, %rdx
sete %sil
movq %rdi, -0x48(%rbp)
testb $0x3, %dil
setne %dil
orb %sil, %dil
jne 0x7f02a
incl (%rdx)
testb %cl, %cl
je 0x7f041
decl (%rax)
jne 0x7f041
movq %rbx, %rdi
leaq 0x96825(%rip), %rsi     # 0x115861
callq 0xd4e3
movq %r14, %rdi
leaq 0x96d6d(%rip), %rsi     # 0x115db8
callq 0x95f6
movq %rbx, %rdi
movl $0x1, %esi
callq 0x31886
movq %rax, %rbx
movq 0x48(%r15), %rdi
movq %rdi, %rax
andq %r13, %rax
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
jne 0x7f088
decl (%rax)
jne 0x7f088
leaq 0x967de(%rip), %rsi     # 0x115861
callq 0xd4e3
movq %rbx, 0x48(%r15)
movq %r15, %rdi
movq %r14, -0x30(%rbp)
movq %r14, %rsi
leaq -0x40(%rbp), %rbx
movq %rbx, %rdx
leaq -0x50(%rbp), %rcx
callq 0x8a9d7
movq %rax, %rdi
callq 0x1585d
movq -0x50(%rbp), %rdx
movl $0x1, %ecx
movl $0x1, %edi
movq %rax, %rsi
callq 0x157ee
movq %rax, %r13
movq -0x40(%rbp), %rdi
movq %rax, %r14
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq %rax, %r14
setne %al
testb $0x3, %r13b
sete %r12b
andb %al, %r12b
cmpb $0x1, %r12b
jne 0x7f0f2
incl (%r14)
movq %r13, %rsi
movq %rbx, %rdx
callq 0x1973b
testl %eax, %eax
je 0x7f16a
cmpl $0x1, %eax
jne 0x7f462
movq %rdx, %rdi
callq 0xdaeb
movq %rax, %rdi
shrq $0x30, %rdi
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rax
movq %rax, %rsi
callq 0x30a1d
cmpl $0x1, %eax
jne 0x7f4f5
movq %rdx, %rdi
callq 0xdaeb
movq %rax, %rbx
movq -0x40(%rbp), %r15
testb %r12b, %r12b
je 0x7f1ad
decl (%r14)
jne 0x7f1ad
movq %r13, %rdi
leaq 0x965e7(%rip), %rsi     # 0x115741
callq 0xd4e3
jmp 0x7f1ad
xorl %eax, %eax
xorl %esi, %esi
jmp 0x7f293
movq -0x40(%rbp), %rsi
movq %r13, %rdi
leaq -0x50(%rbp), %rdx
callq 0x8aec5
movq -0x50(%rbp), %rdi
movq %rax, %rsi
leaq -0x88(%rbp), %rdx
callq 0x7d14d
movq %rax, %rbx
movq -0x88(%rbp), %rdi
movq %rax, %rsi
leaq -0xa8(%rbp), %rdx
callq 0x7e3ab
movq -0xa8(%rbp), %r15
movq -0x30(%rbp), %r14
movq 0x48(%r15), %rdi
movq %rdi, %rax
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
andq %r13, %rax
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
jne 0x7f1d5
incl (%rax)
movl -0x68(%rbp), %esi
movq -0x48(%rbp), %rdx
callq 0x31886
movq %rax, %r12
movq 0x48(%r15), %rdi
movq %rdi, %rax
andq %r13, %rax
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
jne 0x7f20c
decl (%rax)
jne 0x7f20c
leaq 0x9665a(%rip), %rsi     # 0x115861
callq 0xd4e3
movq %r12, 0x48(%r15)
leaq 0x1099b29(%rip), %rdi   # 0x1118d40
movq %r14, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %r14
leaq 0x1099d87(%rip), %rdi   # 0x1118fb8
movq %rax, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %rdi
shrq $0x30, %rdi
andq %r13, %rax
movq %rax, %rsi
movq %rbx, %rdx
leaq 0x96da0(%rip), %rcx     # 0x115ff8
callq 0x3f2d0
movl %eax, %ebx
movq %rdx, %r12
leaq 0x1099d4f(%rip), %rdi   # 0x1118fb8
movq %r14, %rsi
callq 0x13ff0
shlq $0x30, %rbx
orq %r12, %rbx
movq %rbx, %rdi
leaq 0x95ff7(%rip), %rsi     # 0x115279
movq %rax, %rdx
callq 0x14ab5
movl -0x60(%rbp), %edi
movq -0x58(%rbp), %rsi
movb $0x1, %al
testb %al, %al
jne 0x7efc6
movq %rsi, %rax
andq %r13, %rax
sete %cl
testb $0x3, %sil
setne %dl
orb %cl, %dl
jne 0x7f2c6
decl (%rax)
jne 0x7f2c6
shlq $0x30, %rdi
orq %rsi, %rdi
leaq 0x95fb8(%rip), %rsi     # 0x115279
callq 0xd4e3
movq -0xc8(%rbp), %rdi
callq 0x1963c
btsq $0x31, %rax
leaq 0x9665b(%rip), %rsi     # 0x115939
movq %rax, %rdi
callq 0x15e68
xorl %edi, %edi
xorl %esi, %esi
xorl %edx, %edx
movq %rax, %rcx
callq 0x1faa2
leaq 0x964d6(%rip), %rsi     # 0x1157d1
movq %rax, %rdi
callq 0x95f6
movq %rdx, %r13
movq 0x48(%r15), %rbx
movq %rbx, %rax
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rax
setne %dl
testb $0x3, %bl
sete %cl
andb %dl, %cl
cmpb $0x1, %cl
jne 0x7f32d
addl $0x2, (%rax)
movl 0x18(%rbx), %r14d
movq 0x20(%rbx), %r12
movq %r12, %rdx
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rsi, %rdx
sete %sil
testb $0x3, %r12b
setne %dil
orb %sil, %dil
jne 0x7f358
incl (%rdx)
testb %cl, %cl
je 0x7f36f
decl (%rax)
jne 0x7f36f
movq %rbx, %rdi
leaq 0x964f7(%rip), %rsi     # 0x115861
callq 0xd4e3
movq %rbx, %rdi
movl $0x1, %esi
movq %r13, %rdx
callq 0x27dec
movq %rax, %rbx
movq 0x48(%r15), %rdi
movq %rdi, %rax
movabsq $0xfffffffffffc, %r13   # imm = 0xFFFFFFFFFFFC
andq %r13, %rax
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
jne 0x7f3b4
decl (%rax)
jne 0x7f3b4
leaq 0x964b2(%rip), %rsi     # 0x115861
callq 0xd4e3
movq %rbx, 0x48(%r15)
leaq -0x60(%rbp), %rbx
movq %r15, %rdi
movq -0x90(%rbp), %rsi
movq %rbx, %rdx
callq 0x3125d
movq %rax, %r15
movq (%rbx), %rdi
leaq -0x40(%rbp), %rdx
movq %rax, %rsi
callq 0x3138f
testb %al, %al
je 0x7f69f
movq -0x40(%rbp), %r15
movq 0x48(%r15), %rdi
movq %rdi, %rax
andq %r13, %rax
setne %cl
testb $0x3, %dil
sete %dl
testb %dl, %cl
je 0x7f406
incl (%rax)
movl %r14d, %esi
movq %r12, %rdx
callq 0x27dec
movq %rax, %rbx
movq 0x48(%r15), %rdi
andq %rdi, %r13
sete %al
testb $0x3, %dil
setne %cl
orb %al, %cl
jne 0x7f43b
decl (%r13)
jne 0x7f43b
leaq 0x9642b(%rip), %rsi     # 0x115861
callq 0xd4e3
movq %rbx, 0x48(%r15)
movq -0xd0(%rbp), %rax
movq %r15, (%rax)
movq -0xc8(%rbp), %rax
addq $0xb8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x20, %edi
callq 0xf9f7
movq $0x20, 0x10(%rax)
movups 0x652d2(%rip), %xmm0    # 0xe474d
movups %xmm0, 0x18(%rax)
movups 0x652d7(%rip), %xmm0    # 0xe475d
movups %xmm0, 0x28(%rax)
movq %rax, %rdi
callq 0x95a5
cmpq $0x0, 0x109b2be(%rip)   # 0x111a758
jne 0x7f4cb
movl $0x1a, %edi
callq 0xf9f7
movq $0x1a, 0x10(%rax)
movups 0x6da52(%rip), %xmm0    # 0xecf07
movups %xmm0, 0x18(%rax)
movups 0x6da51(%rip), %xmm0    # 0xecf11
movups %xmm0, 0x22(%rax)
movq %rax, 0x109b28d(%rip)   # 0x111a758
movq 0x109b286(%rip), %rdx   # 0x111a758
andq %rdx, -0x38(%rbp)
sete %al
testb $0x3, %dl
setne %cl
orb %al, %cl
jne 0x7f4e9
movq -0x38(%rbp), %rax
incl (%rax)
movq -0x60(%rbp), %rdi
movq %r12, %rsi
callq 0x2778c
testb %r12b, %r12b
je 0x7f50e
decl (%r14)
jne 0x7f50e
movq %r13, %rdi
leaq 0x96238(%rip), %rsi     # 0x115741
callq 0xd4e3
cmpq $0x0, 0x109b2aa(%rip)   # 0x111a7c0
jne 0x7f547
movl $0x19, %edi
callq 0xf9f7
movq $0x19, 0x10(%rax)
movups 0x6dac5(%rip), %xmm0    # 0xecff6
movups %xmm0, 0x18(%rax)
movups 0x6dac3(%rip), %xmm0    # 0xecfff
movups %xmm0, 0x21(%rax)
movq %rax, 0x109b279(%rip)   # 0x111a7c0
movq 0x109b272(%rip), %rdx   # 0x111a7c0
andq %rdx, -0x38(%rbp)
sete %al
testb $0x3, %dl
setne %cl
orb %al, %cl
jne 0x7f565
movq -0x38(%rbp), %rax
incl (%rax)
movq -0x40(%rbp), %rdi
movq -0x30(%rbp), %rsi
callq 0x2778c
movq 0x1099e7f(%rip), %rbx   # 0x11193f8
cmpq $0x0, 0x109b1df(%rip)   # 0x111a760
jne 0x7f5a7
movl $0x10, %edi
callq 0xf9f7
movq $0x10, 0x10(%rax)
movups 0x6d986(%rip), %xmm0    # 0xecf22
movups %xmm0, 0x18(%rax)
movq %rax, 0x109b1b9(%rip)   # 0x111a760
movq 0x109b1b2(%rip), %rdx   # 0x111a760
andq %rdx, -0x38(%rbp)
sete %al
testb $0x3, %dl
setne %cl
orb %al, %cl
jne 0x7f5c5
movq -0x38(%rbp), %rax
incl (%rax)
xorl %esi, %esi
cmpq %r15, %rbx
cmovaq %r14, %rsi
movq %r13, %rdi
callq 0x2778c
cmpq $0x0, 0x109b13a(%rip)   # 0x111a718
jne 0x7f612
movl $0x17, %edi
callq 0xf9f7
movq $0x17, 0x10(%rax)
movabsq $0x2e72656461656820, %rcx # imm = 0x2E72656461656820
movq %rcx, 0x27(%rax)
movups 0x6d81c(%rip), %xmm0    # 0xece23
movups %xmm0, 0x18(%rax)
movq %rax, 0x109b106(%rip)   # 0x111a718
movq 0x109b0ff(%rip), %rdx   # 0x111a718
andq %rdx, -0x38(%rbp)
sete %al
testb $0x3, %dl
setne %cl
orb %al, %cl
jne 0x7f630
movq -0x38(%rbp), %rax
incl (%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2778c
cmpq $0x0, 0x109b0cd(%rip)   # 0x111a710
jne 0x7f674
movl $0x1a, %edi
callq 0xf9f7
movq $0x1a, 0x10(%rax)
movups 0x6d7aa(%rip), %xmm0    # 0xece08
movups %xmm0, 0x18(%rax)
movups 0x6d7a9(%rip), %xmm0    # 0xece12
movups %xmm0, 0x22(%rax)
movq %rax, 0x109b09c(%rip)   # 0x111a710
movq 0x109b095(%rip), %rdx   # 0x111a710
andq %rdx, -0x38(%rbp)
sete %al
testb $0x3, %dl
setne %cl
orb %al, %cl
jne 0x7f692
movq -0x38(%rbp), %rax
incl (%rax)
movq -0x80(%rbp), %rdi
movq -0x78(%rbp), %rsi
callq 0x2778c
cmpq $0x0, 0x109b061(%rip)   # 0x111a708
jne 0x7f6d8
movl $0x1b, %edi
callq 0xf9f7
movq $0x1b, 0x10(%rax)
movups 0x6d72a(%rip), %xmm0    # 0xecdec
movups %xmm0, 0x18(%rax)
movups 0x6d72a(%rip), %xmm0    # 0xecdf7
movups %xmm0, 0x23(%rax)
movq %rax, 0x109b030(%rip)   # 0x111a708
movq 0x109b029(%rip), %rdx   # 0x111a708
andq %rdx, -0x38(%rbp)
sete %al
testb $0x3, %dl
setne %cl
orb %al, %cl
jne 0x7f6f6
movq -0x38(%rbp), %rax
incl (%rax)
movq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x2778c
cmpq $0x0, 0x109b06e(%rip)   # 0x111a778
jne 0x7f742
movl $0x24, %edi
callq 0xf9f7
movq $0x24, 0x10(%rax)
movups 0x6d80e(%rip), %xmm0    # 0xecf33
movups %xmm0, 0x18(%rax)
movups 0x6d813(%rip), %xmm0    # 0xecf43
movups %xmm0, 0x28(%rax)
movl $0xa2e6874, 0x38(%rax)  # imm = 0xA2E6874
movq %rax, 0x109b036(%rip)   # 0x111a778
movq 0x109b02f(%rip), %rdi   # 0x111a778
movq %rdi, %rax
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq %rcx, %rax
sete %cl
testb $0x3, %dil
setne %dl
orb %cl, %dl
jne 0x7f769
incl (%rax)
movq -0x30(%rbp), %rsi
callq 0xe43c
movq %rax, %rbx
cmpq $0x0, 0x109b003(%rip)   # 0x111a780
jne 0x7f79c
movl $0x1, %edi
callq 0xf9f7
movq $0x1, 0x10(%rax)
movb $0xa, 0x18(%rax)
movq %rax, 0x109afe4(%rip)   # 0x111a780
movq 0x109afdd(%rip), %rsi   # 0x111a780
andq %rsi, -0x38(%rbp)
sete %al
testb $0x3, %sil
setne %cl
orb %al, %cl
jne 0x7f7bb
movq -0x38(%rbp), %rax
incl (%rax)
movq %rbx, %rdi
callq 0xe43c
movq %rax, %rdi
movq -0x48(%rbp), %rsi
callq 0xe43c
movq -0x40(%rbp), %rdi
movq -0x90(%rbp), %rsi
movq %rax, %rdx
callq 0x2778c
leaq 0x1099557(%rip), %rdi   # 0x1118d40
movq -0x90(%rbp), %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
leaq 0x109af64(%rip), %rdi   # 0x111a768
movq %rax, %rsi
callq 0x13ff0
movq %rax, %rdi
callq 0x140f0
movq %rax, %rbx
cmpq $0x0, 0x109af79(%rip)   # 0x111a798
jne 0x7f85e
movl $0x28, %edi
callq 0xf9f7
movq $0x28, 0x10(%rax)
movabsq $0x2e656d616e20656c, %rcx # imm = 0x2E656D616E20656C
movq %rcx, 0x38(%rax)
movups 0x6d738(%rip), %xmm0    # 0xecf80
movups %xmm0, 0x18(%rax)
movups 0x6d73d(%rip), %xmm0    # 0xecf90
movups %xmm0, 0x28(%rax)
movq %rax, 0x109af3a(%rip)   # 0x111a798
movq 0x109af33(%rip), %rdx   # 0x111a798
andq %rdx, -0x38(%rbp)
sete %al
testb $0x3, %dl
setne %cl
orb %al, %cl
jne 0x7f87c
movq -0x38(%rbp), %rax
incl (%rax)
movq %r12, %rdi
jmp 0x7f8df
cmpq $0x0, 0x109ae97(%rip)   # 0x111a720
jne 0x7f8ba
movl $0x19, %edi
callq 0xf9f7
movq $0x19, 0x10(%rax)
movups 0x6d597(%rip), %xmm0    # 0xece3b
movups %xmm0, 0x18(%rax)
movups 0x6d595(%rip), %xmm0    # 0xece44
movups %xmm0, 0x21(%rax)
movq %rax, 0x109ae66(%rip)   # 0x111a720
movq 0x109ae5f(%rip), %rdx   # 0x111a720
andq %rdx, -0x38(%rbp)
sete %al
testb $0x3, %dl
setne %cl
orb %al, %cl
jne 0x7f8d8
movq -0x38(%rbp), %rax
incl (%rax)
movq -0xa0(%rbp), %rdi
movq %rbx, %rsi
callq 0x2778c