// File: /workspace/github_c_makefile_star2_O3/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_arrow_Atom_similar
static bool mw_mirth_arrow_Atom_similar (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_arrow_Atom* in_Atom_2, struct mirth_arrow_Atom* in_Atom_3, struct mirth_mirth_zaMirth* *out_zaMirth_4) {
	incref(MK_mirth_arrow_Atom(in_Atom_2));
	incref(MK_mirth_arrow_Atom(in_Atom_3));
	struct mirth_arrow_Op v6 = in_Atom_2->mop;
	incref(MK_mirth_arrow_Op(v6));
	decref(MK_mirth_arrow_Atom(in_Atom_2));
	struct mirth_arrow_Op v7 = in_Atom_3->mop;
	incref(MK_mirth_arrow_Op(v7));
	decref(MK_mirth_arrow_Atom(in_Atom_3));
	struct mirth_mirth_zaMirth* v8;
	bool v9 = mw_mirth_arrow_Op_similar(in_zaMirth_1, v6, v7, &v8);
	struct mirth_mirth_zaMirth* branch_zaMirth_10;
	struct mirth_arrow_Atom* branch_Atom_11;
	struct mirth_arrow_Atom* branch_Atom_12;
	bool branch_Bool_13;
	if (v9) {
		incref(MK_mirth_arrow_Atom(in_Atom_2));
		incref(MK_mirth_arrow_Atom(in_Atom_3));
		struct std_list_List_1 v14 = in_Atom_2->margs;
		incref(MK_std_list_List_1(v14));
		decref(MK_mirth_arrow_Atom(in_Atom_2));
		struct std_list_List_1 v15 = in_Atom_3->margs;
		incref(MK_std_list_List_1(v15));
		decref(MK_mirth_arrow_Atom(in_Atom_3));
		struct mirth_mirth_zaMirth* v16;
		bool v17 = mw_std_list_List_1_zd_sp1(v8, v14, v15, &v16);
		branch_Bool_13 = v17;
		branch_Atom_12 = in_Atom_3;
		branch_Atom_11 = in_Atom_2;
		branch_zaMirth_10 = v16;
	} else {
		bool v18 = false;
		branch_Bool_13 = v18;
		branch_Atom_12 = in_Atom_3;
		branch_Atom_11 = in_Atom_2;
		branch_zaMirth_10 = v8;
	}
	decref(MK_mirth_arrow_Atom(branch_Atom_12));
	decref(MK_mirth_arrow_Atom(branch_Atom_11));
	*out_zaMirth_4 = branch_zaMirth_10;
	return branch_Bool_13;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rcx, -0x78(%rbp)
movq %rdx, %r8
movq %rsi, %r14
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movq %rsi, %r13
andq %r9, %r13
setne %al
testb $0x3, %r14b
sete %r11b
andb %al, %r11b
cmpb $0x1, %r11b
jne 0x8e2c2
incl (%r13)
movq %rdi, -0x40(%rbp)
movq %r8, %rax
andq %r9, %rax
movq %rax, -0x68(%rbp)
setne %al
testb $0x3, %r8b
sete %r10b
andb %al, %r10b
cmpb $0x1, %r10b
jne 0x8e2ea
movq -0x68(%rbp), %rax
incl (%rax)
movl 0x30(%r14), %ebx
movq 0x38(%r14), %r12
movq %r12, %rcx
andq %r9, %rcx
setne %al
testb $0x3, %r12b
sete %r15b
andb %al, %r15b
cmpb $0x1, %r15b
jne 0x8e30e
incl (%rcx)
movq %rcx, -0x48(%rbp)
testb %r11b, %r11b
movq %r8, -0x38(%rbp)
movb %r11b, -0x2a(%rbp)
movb %r10b, -0x29(%rbp)
je 0x8e34e
decl (%r13)
jne 0x8e34e
movq %r14, %rdi
leaq 0x84536(%rip), %rsi     # 0x112869
callq 0xd13d
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r13, -0x60(%rbp)
movq %r14, -0x58(%rbp)
movl 0x30(%r8), %r14d
movq 0x38(%r8), %r13
movq %r13, %rax
andq %r9, %rax
sete %cl
testb $0x3, %r13b
setne %dl
orb %cl, %dl
jne 0x8e374
incl (%rax)
testb %r10b, %r10b
je 0x8e3a6
movq -0x68(%rbp), %rax
decl (%rax)
jne 0x8e3a6
movq %r8, %rdi
leaq 0x844de(%rip), %rsi     # 0x112869
callq 0xd13d
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x15, %r14d
ja 0x8f25f
movq %rbx, %rdi
shlq $0x30, %rdi
orq %r12, %rdi
leaq 0x84388(%rip), %rsi     # 0x112749
movl %r14d, %eax
leaq 0x513a1(%rip), %rcx     # 0xdf76c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl 0x4(%r13), %r14d
decl (%r13)
jne 0x8e400
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
testl %ebx, %ebx
jne 0x8ea5e
movl 0x4(%r12), %ebx
decl (%r12)
jne 0x8e41b
movq %r12, %rdi
callq 0x5030
leaq 0x1(,%r14,2), %rdi
leaq 0x1(,%rbx,2), %rsi
callq 0xe83a
testl %eax, %eax
movq -0x40(%rbp), %r14
jne 0x8f1ca
jmp 0x8eb3b
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e477
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x10, %ebx
je 0x8e8d1
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e4bb
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0xe, %ebx
je 0x8e98f
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e4fb
movq %r14, -0x50(%rbp)
movq %rdi, %r14
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq %r14, %rdi
movq -0x50(%rbp), %r14
movq %r13, %rsi
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0xb, %ebx
je 0x8ea2c
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e53f
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x4, %ebx
je 0x8e98f
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e583
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0xc, %ebx
je 0x8e98f
jmp 0x8ea5e
decl (%r13)
movq -0x48(%rbp), %rax
jne 0x8e5bf
movq %rdi, %r14
movq %r13, %rdi
movq %rsi, %rbx
callq 0x5030
movq -0x48(%rbp), %rax
movq %r14, %rdi
movq %rbx, %rsi
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
testb %r15b, %r15b
jne 0x8ea6b
jmp 0x8f0d3
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e603
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x2, %ebx
je 0x8e98f
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e647
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0xf, %ebx
je 0x8e8d1
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e68b
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x3, %ebx
je 0x8e98f
jmp 0x8ea5e
movq %rdi, %r12
movq %rsi, %rbx
movq %r13, %rdi
callq 0x57cb8
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rax, %rsi
sete %cl
testb $0x3, %al
setne %dl
orb %cl, %dl
jne 0x8eac7
decl (%rsi)
jne 0x8eac7
leaq 0x83f9e(%rip), %rsi     # 0x112671
jmp 0x8eabf
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e70e
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x1, %ebx
je 0x8e98f
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e752
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x11, %ebx
je 0x8e8d1
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e796
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x14, %ebx
je 0x8e8d1
jmp 0x8ea5e
movq %rdi, %r14
movq %r13, %rdi
callq 0x5773d
movq %rdx, %r13
cmpl $0x5, %ebx
jne 0x8ec80
movq %r13, -0x48(%rbp)
movq %rax, %r14
movq %r12, %rdi
callq 0x5773d
cmpl $0xc, %eax
movq -0x58(%rbp), %r15
movq -0x60(%rbp), %r13
ja 0x8f25f
movl %eax, %eax
leaq 0x50fe0(%rip), %rcx     # 0xdf7c4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
movq -0x38(%rbp), %r8
movb -0x2a(%rbp), %r11b
movb -0x29(%rbp), %r10b
jmpq *%rax
movq %rdx, %rdi
callq 0x5829e
movq %rax, %rbx
movq %r14, %rdi
testl %edi, %edi
je 0x8f22f
movq %rax, %r12
movq -0x48(%rbp), %r8
movq %r8, %rax
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rsi, %rax
sete %cl
testb $0x3, %r8b
setne %dl
orb %cl, %dl
jne 0x8e855
decl (%rax)
jne 0x8e855
shlq $0x30, %rdi
orq %r8, %rdi
leaq 0x83fdb(%rip), %rsi     # 0x112821
callq 0xd13d
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rsi, %r12
sete %al
testb $0x3, %bl
setne %cl
orb %al, %cl
movq -0x40(%rbp), %r14
jne 0x8f1ca
decl (%r12)
movq -0x38(%rbp), %r8
movb -0x2a(%rbp), %r11b
movb -0x29(%rbp), %r10b
jne 0x8f0cb
leaq 0x828cf(%rip), %rsi     # 0x111159
movq %rbx, %rdi
jmp 0x8ea77
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e8c8
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x15, %ebx
jne 0x8ea5e
movq 0x8(%r12), %rbx
decl (%r12)
movq -0x58(%rbp), %r15
movq -0x60(%rbp), %r13
jne 0x8e902
movq %r12, %rdi
callq 0x5030
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpq %r14, %rbx
je 0x8eb59
jmp 0x8f0d3
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e946
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0xd, %ebx
je 0x8e98f
jmp 0x8ea5e
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8e986
movq %rdi, -0x50(%rbp)
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq -0x50(%rbp), %rdi
movq %r13, %rsi
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0x6, %ebx
jne 0x8ea5e
movq 0x8(%r12), %rbx
decl (%r12)
jne 0x8e9b8
movq %r12, %rdi
callq 0x5030
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpq %r14, %rbx
jne 0x8f0d3
movq -0x58(%rbp), %r15
movq -0x60(%rbp), %r13
jmp 0x8eb59
movq %rdi, %r14
movq %r13, %rdi
callq 0x57ec9
movq %rax, %rdi
cmpl $0x12, %ebx
jne 0x8ec16
movq %rdi, %r14
movq %r12, %rdi
callq 0x57ec9
jmp 0x8eb16
movq 0x8(%r13), %r14
decl (%r13)
jne 0x8ea27
movq %r14, -0x50(%rbp)
movq %rdi, %r14
movq %r13, %rdi
movq %rsi, %r13
callq 0x5030
movq %r14, %rdi
movq -0x50(%rbp), %r14
movq %r13, %rsi
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl $0xa, %ebx
jne 0x8ea5e
movq 0x8(%r12), %rbx
decl (%r12)
jne 0x8ea3f
movq %r12, %rdi
callq 0x5030
leaq -0x70(%rbp), %r12
movq -0x40(%rbp), %rdi
movq %r14, %rsi
movq %rbx, %rdx
movq %r12, %rcx
callq 0x8dd82
movq (%r12), %r14
jmp 0x8eb2f
testb %r15b, %r15b
je 0x8f0d3
movq -0x48(%rbp), %rax
decl (%rax)
movq -0x40(%rbp), %r14
jne 0x8f0cb
callq 0xd13d
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
jmp 0x8f0cb
movq %rdi, %r12
movq %rsi, %rbx
movq %r13, %rdi
callq 0x57cf3
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rax, %rsi
sete %cl
testb $0x3, %al
setne %dl
orb %cl, %dl
jne 0x8eac7
decl (%rsi)
jne 0x8eac7
leaq 0x83cd2(%rip), %rsi     # 0x112791
movq %rax, %rdi
callq 0xd13d
testb %r15b, %r15b
je 0x8f24b
movq -0x48(%rbp), %rax
decl (%rax)
movq -0x38(%rbp), %r8
movb -0x2a(%rbp), %r11b
movq -0x40(%rbp), %r14
movb -0x29(%rbp), %r10b
jne 0x8f0cb
movq %r12, %rdi
movq %rbx, %rsi
jmp 0x8ea77
movq %rdi, %r14
movq %r13, %rdi
callq 0x580fe
movq %rax, %rdi
cmpl $0x13, %ebx
jne 0x8ec16
movq %rdi, %r14
movq %r12, %rdi
callq 0x580fe
leaq -0x70(%rbp), %rbx
movq -0x40(%rbp), %rdi
movq %r14, %rsi
movq %rax, %rdx
movq %rbx, %rcx
callq 0x8f28f
movq (%rbx), %r14
testb %al, %al
je 0x8f1ca
movq %r14, -0x40(%rbp)
movq -0x58(%rbp), %r15
movq -0x60(%rbp), %r13
movq -0x38(%rbp), %r8
movb -0x2a(%rbp), %r11b
movb -0x29(%rbp), %r10b
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
testb %r11b, %r11b
je 0x8eb62
incl (%r13)
testb %r10b, %r10b
je 0x8eb6d
movq -0x68(%rbp), %rax
incl (%rax)
movl 0x40(%r15), %ebx
movq 0x48(%r15), %r12
movq %r12, %rax
andq %r9, %rax
sete %cl
testb $0x3, %r12b
setne %dl
orb %cl, %dl
jne 0x8eb8b
incl (%rax)
testb %r11b, %r11b
je 0x8ebb7
decl (%r13)
jne 0x8ebb7
movq %r15, %rdi
leaq 0x83cc9(%rip), %rsi     # 0x112869
callq 0xd13d
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movq -0x38(%rbp), %r8
movl 0x40(%r8), %r13d
movq 0x48(%r8), %r14
andq %r14, %r9
sete %al
testb $0x3, %r14b
setne %cl
orb %al, %cl
jne 0x8ebd3
incl (%r9)
testb %r10b, %r10b
je 0x8ebf0
movq -0x68(%rbp), %rax
decl (%rax)
jne 0x8ebf0
movq -0x38(%rbp), %rdi
leaq 0x83c7e(%rip), %rsi     # 0x112869
callq 0xd13d
leaq -0x70(%rbp), %r15
movq -0x40(%rbp), %rdi
movl %ebx, %esi
movq %r12, %rdx
movl %r13d, %ecx
movq %r14, %r8
movq %r15, %r9
callq 0x8d982
movl %eax, %r13d
movq (%r15), %r14
jmp 0x8f1cd
movq %rax, %r13
testb %r15b, %r15b
je 0x8ec3b
movq -0x48(%rbp), %rax
decl (%rax)
jne 0x8ec3b
movq %rdi, %rbx
movq %r14, %rdi
leaq 0x83b16(%rip), %rsi     # 0x112749
callq 0xd13d
movq %rbx, %rdi
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq %rax, %r13
sete %al
testb $0x3, %dil
setne %cl
orb %al, %cl
movq -0x40(%rbp), %r14
jne 0x8f1ca
decl (%r13)
movq -0x38(%rbp), %r8
movb -0x2a(%rbp), %r11b
movb -0x29(%rbp), %r10b
jne 0x8f0cb
leaq 0x83b5e(%rip), %rsi     # 0x1127d9
jmp 0x8ea77
testb %r15b, %r15b
movq -0x38(%rbp), %r8
movb -0x29(%rbp), %r10b
je 0x8ecb2
movq -0x48(%rbp), %rcx
decl (%rcx)
jne 0x8ecb2
movq %r14, %rdi
leaq 0x83aaa(%rip), %rsi     # 0x112749
movq %rax, %rbx
callq 0xd13d
movq %rbx, %rax
movb -0x29(%rbp), %r10b
movq -0x38(%rbp), %r8
movabsq $0xfffffffffffc, %rdx   # imm = 0xFFFFFFFFFFFC
andq %r13, %rdx
sete %sil
testb $0x3, %r13b
setne %cl
orb %sil, %cl
movq -0x40(%rbp), %r14
jne 0x8ecf5
decl (%rdx)
movb -0x2a(%rbp), %r11b
jne 0x8f0cb
shlq $0x30, %rax
orq %r13, %rax
leaq 0x83b34(%rip), %rsi     # 0x112821
movq %rax, %rdi
jmp 0x8ea77
xorl %r13d, %r13d
movb -0x2a(%rbp), %r11b
jmp 0x8f1d9
movss 0x4(%rdx), %xmm0
decl (%rdx)
jne 0x8ed28
movq %rdx, %rdi
movss %xmm0, -0x50(%rbp)
callq 0x5030
movss -0x50(%rbp), %xmm0
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0xb, %edi
jne 0x8f0a4
movq -0x48(%rbp), %rdi
movss 0x4(%rdi), %xmm1
decl (%rdi)
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
jne 0x8ed7a
movss %xmm0, -0x50(%rbp)
movss %xmm1, -0x48(%rbp)
callq 0x5030
movss -0x48(%rbp), %xmm1
movss -0x50(%rbp), %xmm0
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
ucomiss %xmm0, %xmm1
jmp 0x8ee2c
movzwl 0x4(%rdx), %ebx
decl (%rdx)
jne 0x8ed9e
movq %rdx, %rdi
callq 0x5030
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0x4, %edi
je 0x8f066
jmp 0x8f0a4
movsd 0x8(%rdx), %xmm0
decl (%rdx)
jne 0x8edd6
movq %rdx, %rdi
movsd %xmm0, -0x50(%rbp)
callq 0x5030
movsd -0x50(%rbp), %xmm0
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0xc, %edi
jne 0x8f0a4
movq -0x48(%rbp), %rdi
movsd 0x8(%rdi), %xmm1
decl (%rdi)
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
jne 0x8ee28
movsd %xmm0, -0x50(%rbp)
movsd %xmm1, -0x48(%rbp)
callq 0x5030
movsd -0x48(%rbp), %xmm1
movsd -0x50(%rbp), %xmm0
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
ucomisd %xmm0, %xmm1
jne 0x8f0d3
jnp 0x8eb59
jmp 0x8f0d3
movl 0x4(%rdx), %ebx
decl (%rdx)
jne 0x8ee58
movq %rdx, %rdi
callq 0x5030
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0x9, %edi
je 0x8ef73
jmp 0x8f0a4
movq %rdx, %rdi
callq 0x58314
movq %rax, %rbx
movq %r14, %rdi
cmpl $0x2, %edi
jne 0x8f0f2
movq -0x48(%rbp), %rdi
callq 0x58314
jmp 0x8ef3c
movb 0x4(%rdx), %bl
decl (%rdx)
jne 0x8eea9
movq %rdx, %rdi
callq 0x5030
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0x3, %edi
je 0x8eedd
jmp 0x8f0a4
movb 0x4(%rdx), %bl
decl (%rdx)
jne 0x8eed1
movq %rdx, %rdi
callq 0x5030
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0x7, %edi
jne 0x8f0a4
movq -0x48(%rbp), %rdi
movb 0x4(%rdi), %r14b
decl (%rdi)
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
jne 0x8ef0e
callq 0x5030
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpb %bl, %r14b
je 0x8eb59
jmp 0x8f0d3
movq %rdx, %rdi
callq 0x582d9
movq %rax, %rbx
movq %r14, %rdi
cmpl $0x1, %edi
jne 0x8f15b
movq -0x48(%rbp), %rdi
callq 0x582d9
movq %rax, %rdi
movq %rbx, %rsi
callq 0xe83a
jmp 0x8f243
movl 0x4(%rdx), %ebx
decl (%rdx)
jne 0x8ef67
movq %rdx, %rdi
callq 0x5030
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0x5, %edi
jne 0x8f0a4
movq -0x48(%rbp), %rdi
movl 0x4(%rdi), %r14d
decl (%rdi)
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
jne 0x8efa4
callq 0x5030
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpl %ebx, %r14d
je 0x8eb59
jmp 0x8f0d3
movq 0x8(%rdx), %rbx
decl (%rdx)
jne 0x8efce
movq %rdx, %rdi
callq 0x5030
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0x6, %edi
je 0x8f003
jmp 0x8f0a4
movq 0x8(%rdx), %rbx
decl (%rdx)
jne 0x8eff7
movq %rdx, %rdi
callq 0x5030
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0xa, %edi
jne 0x8f0a4
movq -0x48(%rbp), %rdi
movq 0x8(%rdi), %r14
decl (%rdi)
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
jne 0x8f034
callq 0x5030
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpq %rbx, %r14
je 0x8eb59
jmp 0x8f0d3
movzwl 0x4(%rdx), %ebx
decl (%rdx)
jne 0x8f05e
movq %rdx, %rdi
callq 0x5030
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
movq %r14, %rdi
cmpl $0x8, %edi
jne 0x8f0a4
movq -0x48(%rbp), %rdi
movzwl 0x4(%rdi), %r14d
decl (%rdi)
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
jne 0x8f098
callq 0x5030
movabsq $0xfffffffffffc, %r9    # imm = 0xFFFFFFFFFFFC
movb -0x29(%rbp), %r10b
movb -0x2a(%rbp), %r11b
movq -0x38(%rbp), %r8
cmpw %bx, %r14w
je 0x8eb59
jmp 0x8f0d3
movabsq $0xfffffffffffc, %rdx   # imm = 0xFFFFFFFFFFFC
movq -0x48(%rbp), %rsi
andq %rsi, %rdx
sete %al
testb $0x3, %sil
setne %cl
orb %al, %cl
jne 0x8f0d3
decl (%rdx)
movq -0x40(%rbp), %r14
je 0x8f0df
xorl %r13d, %r13d
jmp 0x8f1d9
xorl %r13d, %r13d
movq -0x40(%rbp), %r14
jmp 0x8f1d9
shlq $0x30, %rdi
orq %rsi, %rdi
leaq 0x83734(%rip), %rsi     # 0x112821
jmp 0x8ea77
movq %rax, %r12
movq -0x48(%rbp), %r8
movq %r8, %rax
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rsi, %rax
sete %cl
testb $0x3, %r8b
setne %dl
orb %cl, %dl
jne 0x8f138
decl (%rax)
jne 0x8f138
shlq $0x30, %rdi
orq %r8, %rdi
leaq 0x836f8(%rip), %rsi     # 0x112821
callq 0xd13d
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rsi, %r12
sete %al
testb $0x3, %bl
setne %cl
orb %al, %cl
movq -0x40(%rbp), %r14
jne 0x8f1ca
decl (%r12)
jne 0x8f1ca
leaq 0x81fb8(%rip), %rsi     # 0x111111
jmp 0x8f1c2
movq %rax, %r12
movq -0x48(%rbp), %r8
movq %r8, %rax
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rsi, %rax
sete %cl
testb $0x3, %r8b
setne %dl
orb %cl, %dl
jne 0x8f1a1
decl (%rax)
jne 0x8f1a1
shlq $0x30, %rdi
orq %r8, %rdi
leaq 0x8368f(%rip), %rsi     # 0x112821
callq 0xd13d
movabsq $0xfffffffffffc, %rsi   # imm = 0xFFFFFFFFFFFC
andq %rsi, %r12
sete %al
testb $0x3, %bl
setne %cl
orb %al, %cl
movq -0x40(%rbp), %r14
jne 0x8f1ca
decl (%r12)
jne 0x8f1ca
leaq 0x82267(%rip), %rsi     # 0x111429
movq %rbx, %rdi
callq 0xd13d
xorl %r13d, %r13d
movq -0x38(%rbp), %r8
movb -0x2a(%rbp), %r11b
movb -0x29(%rbp), %r10b
testb %r10b, %r10b
je 0x8f1f9
movq -0x68(%rbp), %rax
decl (%rax)
jne 0x8f1f9
movq %r8, %rdi
leaq 0x83679(%rip), %rsi     # 0x112869
callq 0xd13d
movb -0x2a(%rbp), %r11b
testb %r11b, %r11b
je 0x8f216
movq -0x60(%rbp), %rax
decl (%rax)
jne 0x8f216
movq -0x58(%rbp), %rdi
leaq 0x83658(%rip), %rsi     # 0x112869
callq 0xd13d
movq -0x78(%rbp), %rax
movq %r14, (%rax)
movl %r13d, %eax
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq -0x48(%rbp), %rdi
callq 0x5829e
movq %rax, %rdi
movq %rbx, %rsi
callq 0xdf18
testl %eax, %eax
je 0x8eb43
xorl %r13d, %r13d
movq -0x38(%rbp), %r8
movb -0x2a(%rbp), %r11b
movq -0x40(%rbp), %r14
jmp 0x8f1d5
movl $0x20, %edi
callq 0xf5e4
movq $0x20, 0x10(%rax)
movups 0x51455(%rip), %xmm0    # 0xe06cd
movups %xmm0, 0x18(%rax)
movups 0x5145a(%rip), %xmm0    # 0xe06dd
movups %xmm0, 0x28(%rax)
movq %rax, %rdi
callq 0x9302