// File: /workspace/github_cpp_makefile_star2_O1/gioannides[P]Language_Processors/src/../include/ast/ast_Expressions.cpp
// Function: EqualityExpression::render_asm(std::basic_ofstream<char, std::char_traits<char>>&, Context&)
inline void EqualityExpression::render_asm(std::ofstream& file,Context& contxt) {

			if(OPERATOR==NULL && RElationalExpression != NULL){
				RElationalExpression->render_asm(file,contxt);
				//postfix_ops(contxt, file);
			}

			if(contxt.LocalArray && contxt.reading && contxt.function){
				if(EqualityExpressionPtr != NULL && RElationalExpression != NULL){
					EqualityExpressionPtr->render_asm(file,contxt);
					RElationalExpression->render_asm(file,contxt);
				}
					if(contxt.ArraySize.size()>=2){
						if( OPERATOR != NULL && *OPERATOR == "==" ){
							
								int result = contxt.ArraySize[contxt.ArraySize.size()-1] ==  contxt.ArraySize[contxt.ArraySize.size()-2];
								contxt.ArraySize.pop_back();
								contxt.ArraySize.pop_back();
								contxt.ArraySize.push_back(result);
							}
						
						else if( OPERATOR != NULL && *OPERATOR== "!=") {
								int result = contxt.ArraySize[contxt.ArraySize.size()-1] !=  contxt.ArraySize[contxt.ArraySize.size()-2];
								contxt.ArraySize.pop_back();
								contxt.ArraySize.pop_back();
								contxt.ArraySize.push_back(result);
						}
					}
			}
			else if(EqualityExpressionPtr != NULL && !contxt.reading && RElationalExpression != NULL && OPERATOR != NULL){ 
				EqualityExpressionPtr->render_asm(file,contxt);
				contxt.Regs++;	
				RElationalExpression->render_asm(file,contxt);

					
					
					if(*OPERATOR == "==" && contxt.enum_constant)
					{
						if(contxt.EnumOperands.size()>=2){
							int result =  contxt.EnumOperands[contxt.EnumOperands.size()-1] == contxt.EnumOperands[contxt.EnumOperands.size()-2];
							contxt.EnumOperands.pop_back();
							contxt.EnumOperands.pop_back();
							contxt.EnumOperands.push_back(result);
						}
					}
						
					
					else if(*OPERATOR == "!="  && contxt.enum_constant)
					{
					
						if(contxt.EnumOperands.size()>=2){
							int result =  contxt.EnumOperands[contxt.EnumOperands.size()-1] != contxt.EnumOperands[contxt.EnumOperands.size()-2];
							contxt.EnumOperands.pop_back();
							contxt.EnumOperands.pop_back();
							contxt.EnumOperands.push_back(result);
						}
					}
					
				
				if (contxt.function  && !contxt.sizeof_ && !contxt.enum_constant){
					//postfix_ops(contxt, file);
					typePromotion(contxt.Regs,contxt.Regs+1,file,contxt);	
					if( *OPERATOR == "==" ){
						if(contxt.regType[contxt.Regs]=='f' || contxt.regType[contxt.Regs+1]=='f'){
							std::string label_id = labelGen(contxt);
							std::string END = "$ENDEQ" + label_id;
							std::string NOT_EQ = "$NOT_EQ" + label_id;

							file << std::endl << "\tc.eq.s\t$f" << contxt.Regs << ",$f" << contxt.Regs+1;
							contxt.regType[contxt.Regs]='f';
							contxt.regType[contxt.Regs+1]='f';
							file << std::endl << "\tbc1f\t" << NOT_EQ;
							file << std::endl << "\tnop" << std::endl;
							
							file << std::endl << "\tli.s\t$f" << contxt.Regs << ",1";
							contxt.regType[contxt.Regs]='f';
							file << std::endl << "\tb\t" << END;
							file << std::endl << "\tnop\t";
							file << std::endl << NOT_EQ << ":";
							file << std::endl << "\tmtc1\t$0,$f" << contxt.Regs;
							contxt.regType[contxt.Regs]='f';
							file << std::endl << "\tnop" << std::endl;
							file << std::endl << END << ":";

						}
						else{
							file << std::endl << "\tseq\t$" << contxt.Regs << ", $" << contxt.Regs << ", $" << contxt.Regs+1;
							contxt.regType[contxt.Regs]='i';
							contxt.regType[contxt.Regs+1]='i';
						}						
						
					}
					else if(  *OPERATOR == "!=" ){

						if(contxt.regType[contxt.Regs]=='f' || contxt.regType[contxt.Regs+1]=='f'){
							std::string label_id = labelGen(contxt);
							std::string END = "$ENDEQ" + label_id;
							std::string _EQ = "$_EQ" + label_id;

							file << std::endl << "\tc.eq.s\t$f" << contxt.Regs << ",$f" << contxt.Regs+1;
							contxt.regType[contxt.Regs]='f';
							contxt.regType[contxt.Regs+1]='f';
							file << std::endl << "\tbc1t\t" << _EQ;
							file << std::endl << "\tnop" << std::endl;
						
							file << std::endl << "\tli.s\t$f" << contxt.Regs << ",1";
							contxt.regType[contxt.Regs]='f';
							file << std::endl << "\tb\t" << END;
							file << std::endl << "\tnop\t";
							file << std::endl << _EQ << ":";
							file << std::endl << "\tmtc1\t$0,$f" << contxt.Regs;
							contxt.regType[contxt.Regs]='f';
							file << std::endl << "\tnop" << std::endl;
							file << std::endl << END << ":";

						}
						else{
							file << std::endl << "\txor\t$" << contxt.Regs << ", $" << contxt.Regs << ", $" << contxt.Regs+1;						
							file << std::endl << "\tsltu\t$" << contxt.Regs << ", $0, $" << contxt.Regs;
							contxt.regType[contxt.Regs]='i';
							contxt.regType[contxt.Regs+1]='i';
						}
						
					}
					
				}
				else 
				{
					if(*OPERATOR == "=="  && ((!contxt.sizeof_ && !contxt.enum_constant)))
					{
						contxt.eval[contxt.Regs] = contxt.eval[contxt.Regs] == contxt.eval[contxt.Regs+1];
						contxt.eval_f[contxt.Regs] = contxt.eval_f[contxt.Regs] == contxt.eval_f[contxt.Regs+1];
					}
					else if(*OPERATOR == "!="  && ((!contxt.sizeof_ && !contxt.enum_constant)))
					{
						contxt.eval[contxt.Regs] = contxt.eval[contxt.Regs] != contxt.eval[contxt.Regs+1];
						contxt.eval_f[contxt.Regs] = contxt.eval_f[contxt.Regs] != contxt.eval_f[contxt.Regs+1]; 
					}
				}
				contxt.Regs--;
				
			}

		}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r15
cmpq $0x0, 0x10(%rdi)
jne 0x1458d
movq 0x8(%r15), %rdi
testq %rdi, %rdi
je 0x1458d
movq %r14, %rsi
movq %rbx, %rdx
callq 0x15016
cmpb $0x1, 0x74(%rbx)
jne 0x14649
cmpb $0x1, 0x21b(%rbx)
jne 0x14649
cmpb $0x1, 0x218(%rbx)
jne 0x14649
movq 0x18(%r15), %rdi
testq %rdi, %rdi
je 0x145db
cmpq $0x0, 0x8(%r15)
je 0x145db
movq %r14, %rsi
movq %rbx, %rdx
callq 0x1455e
movq 0x8(%r15), %rdi
movq %r14, %rsi
movq %rbx, %rdx
callq 0x15016
movq 0x80(%rbx), %rax
subq 0x78(%rbx), %rax
cmpq $0x5, %rax
jb 0x14b93
leaq 0x78(%rbx), %r14
movq 0x10(%r15), %rdi
testq %rdi, %rdi
je 0x14611
leaq 0x2314b(%rip), %rsi     # 0x3774f
callq 0x70c0
testl %eax, %eax
je 0x1475b
movq 0x10(%r15), %rdi
testq %rdi, %rdi
je 0x14b93
leaq 0x2312d(%rip), %rsi     # 0x37752
callq 0x70c0
testl %eax, %eax
jne 0x14b93
movq 0x80(%rbx), %rax
movl -0x4(%rax), %edx
xorl %ecx, %ecx
cmpl -0x8(%rax), %edx
setne %cl
jmp 0x1476d
movq 0x18(%r15), %rdi
testq %rdi, %rdi
je 0x14b93
cmpb $0x0, 0x21b(%rbx)
jne 0x14b93
cmpq $0x0, 0x8(%r15)
je 0x14b93
cmpq $0x0, 0x10(%r15)
je 0x14b93
movq %r14, %rsi
movq %rbx, %rdx
callq 0x1455e
incl 0x310(%rbx)
movq 0x8(%r15), %rdi
movq %r14, %rsi
movq %rbx, %rdx
callq 0x15016
movq 0x10(%r15), %rdi
leaq 0x230ab(%rip), %rsi     # 0x3774f
callq 0x70c0
testl %eax, %eax
jne 0x146e3
cmpb $0x1, 0x14d(%rbx)
jne 0x146e3
movq 0x150(%rbx), %rdx
movq 0x158(%rbx), %rax
movq %rax, %rsi
subq %rdx, %rsi
cmpq $0x5, %rsi
jb 0x147bb
movl -0x4(%rdx,%rsi), %edi
xorl %ecx, %ecx
cmpl -0x8(%rdx,%rsi), %edi
sete %cl
jmp 0x14733
movq 0x10(%r15), %rdi
leaq 0x23064(%rip), %rsi     # 0x37752
callq 0x70c0
testl %eax, %eax
jne 0x147bb
cmpb $0x1, 0x14d(%rbx)
jne 0x147bb
movq 0x150(%rbx), %rdx
movq 0x158(%rbx), %rax
movq %rax, %rsi
subq %rdx, %rsi
cmpq $0x5, %rsi
jb 0x147bb
movl -0x4(%rdx,%rsi), %edi
xorl %ecx, %ecx
cmpl -0x8(%rdx,%rsi), %edi
setne %cl
movl %ecx, 0x8(%rsp)
leaq -0x8(%rax), %rsi
movq %rsi, 0x158(%rbx)
cmpq 0x160(%rbx), %rsi
je 0x147aa
movl %ecx, -0x8(%rax)
addq $-0x4, %rax
movq %rax, 0x158(%rbx)
jmp 0x147bb
movq 0x80(%rbx), %rax
movl -0x4(%rax), %edx
xorl %ecx, %ecx
cmpl -0x8(%rax), %edx
sete %cl
movl %ecx, 0x8(%rsp)
leaq -0x8(%rax), %rsi
movq %rsi, 0x80(%rbx)
cmpq 0x88(%rbx), %rsi
je 0x14798
movl %ecx, -0x8(%rax)
addq $-0x4, %rax
movq %rax, 0x80(%rbx)
jmp 0x14b93
leaq 0x8(%rsp), %rdx
movq %r14, %rdi
callq 0x20a34
jmp 0x14b93
leaq 0x150(%rbx), %rdi
leaq 0x8(%rsp), %rdx
callq 0x20a34
cmpb $0x1, 0x218(%rbx)
jne 0x147da
cmpb $0x0, 0x1f8(%rbx)
jne 0x147da
cmpb $0x0, 0x14d(%rbx)
je 0x14876
movq 0x10(%r15), %rdi
leaq 0x22f6a(%rip), %rsi     # 0x3774f
callq 0x70c0
testl %eax, %eax
jne 0x14804
cmpb $0x0, 0x1f8(%rbx)
jne 0x14804
cmpb $0x0, 0x14d(%rbx)
je 0x14b3e
movq 0x10(%r15), %rdi
leaq 0x22f43(%rip), %rsi     # 0x37752
callq 0x70c0
testl %eax, %eax
jne 0x14b8d
cmpb $0x0, 0x1f8(%rbx)
jne 0x14b8d
cmpb $0x0, 0x14d(%rbx)
jne 0x14b8d
movslq 0x310(%rbx), %rax
movl 0x5f8(%rbx,%rax,4), %ecx
xorl %edx, %edx
cmpl 0x5fc(%rbx,%rax,4), %ecx
setne %dl
movl %edx, 0x5f8(%rbx,%rax,4)
movslq 0x310(%rbx), %rax
movss 0xa23c(%rbx,%rax,4), %xmm0
cmpneqss 0xa238(%rbx,%rax,4), %xmm0
jmp 0x14b79
movl 0x310(%rbx), %edi
leal 0x1(%rdi), %esi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x138f3
movq 0x10(%r15), %rdi
leaq 0x22eba(%rip), %rsi     # 0x3774f
callq 0x70c0
testl %eax, %eax
je 0x14b9f
movq 0x10(%r15), %rdi
leaq 0x22ea5(%rip), %rsi     # 0x37752
callq 0x70c0
testl %eax, %eax
jne 0x14b8d
movslq 0x310(%rbx), %rax
cmpb $0x66, 0x341(%rbx,%rax)
je 0x148d9
cmpb $0x66, 0x342(%rbx,%rax)
jne 0x14ed5
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
callq 0x106b0
leaq 0x22e65(%rip), %rsi     # 0x37755
leaq 0x48(%rsp), %rdi
movq %r15, %rdx
callq 0x107e2
leaq 0x22e7c(%rip), %rsi     # 0x37780
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x107e2
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22d90(%rip), %rsi     # 0x376b5
movl $0xa, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r15, %rdi
callq 0x75c0
movq %rax, %r15
leaq 0x22e2b(%rip), %rsi     # 0x37775
movl $0x3, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
incl %esi
movq %r15, %rdi
callq 0x75c0
movslq 0x310(%rbx), %rax
movb $0x66, %cl
movb %cl, 0x341(%rbx,%rax)
movslq 0x310(%rbx), %rax
movb %cl, 0x342(%rbx,%rax)
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22d4d(%rip), %rsi     # 0x376e4
movl $0x6, %edx
movq %rax, %rdi
callq 0x73a0
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %r15, %rdi
callq 0x73a0
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22c2a(%rip), %rsi     # 0x375f2
movl $0x4, %edx
movq %rax, %rdi
callq 0x73a0
movq %r15, %rdi
callq 0x7180
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22d75(%rip), %rsi     # 0x37764
movl $0x8, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r15, %rdi
callq 0x75c0
leaq 0x22cc5(%rip), %rsi     # 0x376d6
movl $0x2, %edx
movq %rax, %rdi
callq 0x73a0
movslq 0x310(%rbx), %rax
movb $0x66, 0x341(%rbx,%rax)
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22c93(%rip), %rsi     # 0x376d2
movl $0x3, %edx
movq %rax, %rdi
callq 0x73a0
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
movq %r15, %rdi
callq 0x73a0
movq %r14, %rdi
callq 0x7180
leaq 0x22c5f(%rip), %rsi     # 0x376cc
movl $0x5, %edx
movq %rax, %rdi
callq 0x73a0
movq %r14, %rdi
callq 0x7180
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rax, %rdi
callq 0x73a0
leaq 0x2297b(%rip), %rsi     # 0x37416
movl $0x1, %edx
movq %rax, %rdi
callq 0x73a0
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22cb3(%rip), %rsi     # 0x3776d
movl $0xb, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r15, %rdi
callq 0x75c0
movslq 0x310(%rbx), %rax
movb $0x66, 0x341(%rbx,%rax)
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22afc(%rip), %rsi     # 0x375f2
movl $0x4, %edx
movq %rax, %rdi
callq 0x73a0
movq %r15, %rdi
callq 0x7180
movq %r14, %rdi
callq 0x7180
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
movq %rax, %rdi
callq 0x73a0
leaq 0x228ea(%rip), %rsi     # 0x37416
movl $0x1, %edx
movq %rax, %rdi
callq 0x73a0
jmp 0x14e1e
movslq 0x310(%rbx), %rax
movl 0x5f8(%rbx,%rax,4), %ecx
xorl %edx, %edx
cmpl 0x5fc(%rbx,%rax,4), %ecx
sete %dl
movl %edx, 0x5f8(%rbx,%rax,4)
movslq 0x310(%rbx), %rax
movss 0xa23c(%rbx,%rax,4), %xmm0
cmpeqss 0xa238(%rbx,%rax,4), %xmm0
movss 0x22773(%rip), %xmm1    # 0x372f4
andps %xmm0, %xmm1
movss %xmm1, 0xa238(%rbx,%rax,4)
decl 0x310(%rbx)
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movslq 0x310(%rbx), %rax
cmpb $0x66, 0x341(%rbx,%rax)
je 0x14bbe
cmpb $0x66, 0x342(%rbx,%rax)
jne 0x14e60
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
callq 0x106b0
leaq 0x22b80(%rip), %rsi     # 0x37755
leaq 0x48(%rsp), %rdi
movq %r15, %rdx
callq 0x107e2
leaq 0x22b73(%rip), %rsi     # 0x3775c
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %rdx
callq 0x107e2
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22aab(%rip), %rsi     # 0x376b5
movl $0xa, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r15, %rdi
callq 0x75c0
movq %rax, %r15
leaq 0x22b46(%rip), %rsi     # 0x37775
movl $0x3, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
incl %esi
movq %r15, %rdi
callq 0x75c0
movslq 0x310(%rbx), %rax
movb $0x66, %cl
movb %cl, 0x341(%rbx,%rax)
movslq 0x310(%rbx), %rax
movb %cl, 0x342(%rbx,%rax)
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22a49(%rip), %rsi     # 0x376c5
movl $0x6, %edx
movq %rax, %rdi
callq 0x73a0
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %r15, %rdi
callq 0x73a0
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22945(%rip), %rsi     # 0x375f2
movl $0x4, %edx
movq %rax, %rdi
callq 0x73a0
movq %r15, %rdi
callq 0x7180
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22a90(%rip), %rsi     # 0x37764
movl $0x8, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r15, %rdi
callq 0x75c0
leaq 0x229e0(%rip), %rsi     # 0x376d6
movl $0x2, %edx
movq %rax, %rdi
callq 0x73a0
movslq 0x310(%rbx), %rax
movb $0x66, 0x341(%rbx,%rax)
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x229ae(%rip), %rsi     # 0x376d2
movl $0x3, %edx
movq %rax, %rdi
callq 0x73a0
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
movq %r15, %rdi
callq 0x73a0
movq %r14, %rdi
callq 0x7180
leaq 0x2297a(%rip), %rsi     # 0x376cc
movl $0x5, %edx
movq %rax, %rdi
callq 0x73a0
movq %r14, %rdi
callq 0x7180
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rax, %rdi
callq 0x73a0
leaq 0x22696(%rip), %rsi     # 0x37416
movl $0x1, %edx
movq %rax, %rdi
callq 0x73a0
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x229ce(%rip), %rsi     # 0x3776d
movl $0xb, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r15, %rdi
callq 0x75c0
movslq 0x310(%rbx), %rax
movb $0x66, 0x341(%rbx,%rax)
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x22817(%rip), %rsi     # 0x375f2
movl $0x4, %edx
movq %rax, %rdi
callq 0x73a0
movq %r15, %rdi
callq 0x7180
movq %r14, %rdi
callq 0x7180
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
movq %rax, %rdi
callq 0x73a0
leaq 0x22605(%rip), %rsi     # 0x37416
movl $0x1, %edx
movq %rax, %rdi
callq 0x73a0
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x14e31
callq 0x72e0
leaq 0x58(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x14e44
callq 0x72e0
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x14b8d
callq 0x72e0
jmp 0x14b8d
movq %r14, %rdi
callq 0x7180
movq %rax, %r14
leaq 0x22907(%rip), %rsi     # 0x37779
movl $0x6, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r14, %rdi
callq 0x75c0
movq %rax, %r14
leaq 0x228fa(%rip), %r15     # 0x37791
movl $0x3, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r14, %rdi
callq 0x75c0
movq %rax, %r14
movl $0x3, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x73a0
movl 0x310(%rbx), %esi
incl %esi
jmp 0x14f97
movq %r14, %rdi
callq 0x7180
movq %rax, %r15
leaq 0x2285a(%rip), %rsi     # 0x37741
movl $0x6, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r15, %rdi
callq 0x75c0
movq %rax, %r15
leaq 0x22885(%rip), %r12     # 0x37791
movl $0x3, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r15, %rdi
callq 0x75c0
movq %rax, %r15
movl $0x3, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x73a0
movl 0x310(%rbx), %esi
incl %esi
movq %r15, %rdi
callq 0x75c0
movq %r14, %rdi
callq 0x7180
movq %rax, %r14
leaq 0x22826(%rip), %rsi     # 0x37785
movl $0x7, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r14, %rdi
callq 0x75c0
movq %rax, %r14
leaq 0x22809(%rip), %rsi     # 0x3778d
movl $0x7, %edx
movq %rax, %rdi
callq 0x73a0
movl 0x310(%rbx), %esi
movq %r14, %rdi
callq 0x75c0
movslq 0x310(%rbx), %rax
movb $0x69, %cl
movb %cl, 0x341(%rbx,%rax)
movslq 0x310(%rbx), %rax
movb %cl, 0x342(%rbx,%rax)
jmp 0x14b8d
jmp 0x14fc6
jmp 0x14fcb
movq %rax, %rbx
jmp 0x14fe8
movq %rax, %rbx
jmp 0x14ffb
jmp 0x14fd2
movq %rax, %rbx
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x14fe8
callq 0x72e0
leaq 0x58(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x14ffb
callq 0x72e0
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1500e
callq 0x72e0
movq %rbx, %rdi
callq 0x75f0