// File: /workspace/github_cpp_makefile_star2_O1/toxaart[P]hierarchical_block_sparse_lib/source/HierarchicalBlockSparseMatrix.h
// Function: hbsm::HierarchicalBlockSparseMatrix<double>::get_spamm_errors(hbsm::HierarchicalBlockSparseMatrix<double> const&, bool, hbsm::HierarchicalBlockSparseMatrix<double> const&, bool, std::vector<double, std::allocator<double>> const&)
std::vector<Treal> HierarchicalBlockSparseMatrix<Treal>::get_spamm_errors(HierarchicalBlockSparseMatrix<Treal> const & A, const bool tA, HierarchicalBlockSparseMatrix<Treal> const & B, const bool tB, std::vector<Treal> const & taus){



				// look at the current level
			 const int length = taus.size();
			 std::vector<real> curr_level_errors;

			 if(!worth_to_multiply(A, tA, B, tB)){
				 return curr_level_errors;
			 }

			 curr_level_errors.resize(length,0.0);

			 Treal A_norm = std::sqrt(A.get_frob_norm_squared_internal());
			 Treal B_norm = std::sqrt(B.get_frob_norm_squared_internal());

			 Treal product_of_norms = A_norm * B_norm;

			 for(int i = 0; i < length; ++i){

				 	 // ensure that not only matrix product is small enough, but also that it is not empty, which might be the case
					 if(product_of_norms < taus[i]) curr_level_errors[i] = product_of_norms;

			 }

			 if(A.lowest_level() && B.lowest_level()){
					 return curr_level_errors;
			 }

			 if(A.get_depth() < B.get_depth()){

 					bool B0 = false, B1 = false, B2 = false, B3 = false;
 					if(B.children[0] != NULL) B0 = true;
 					if(B.children[1] != NULL) B1 = true;
 					if(B.children[2] != NULL) B2 = true;
 					if(B.children[3] != NULL) B3 = true;

 					std::vector<real> sub_errors0,sub_errors1,sub_errors2,sub_errors3;

 					if(B0){
					  sub_errors0 = get_spamm_errors(A, tA, *B.children[0],tB, taus);
				  }
 					if(tB){
 						if(B2) sub_errors1 = get_spamm_errors(A, tA, *B.children[2], tB, taus);
 						if(B1) sub_errors2 = get_spamm_errors(A, tA, *B.children[1], tB, taus);
 					}
 					else{
 						if(B1) sub_errors1 = get_spamm_errors(A, tA, *B.children[1], tB, taus);
 						if(B2) sub_errors2 = get_spamm_errors(A, tA, *B.children[2], tB, taus);
 					}
 					if(B3) sub_errors3 = get_spamm_errors(A, tA, *B.children[3], tB, taus);

					if(sub_errors0.empty() && sub_errors1.empty() && sub_errors2.empty() && sub_errors3.empty()){
						return curr_level_errors;
					}

 					std::vector<std::vector<real> > all_suberrors;
 					all_suberrors.push_back(std::move(sub_errors0));
 					all_suberrors.push_back(std::move(sub_errors1));
 					all_suberrors.push_back(std::move(sub_errors2));
 					all_suberrors.push_back(std::move(sub_errors3));

 					return sum_spamm_errors(curr_level_errors, all_suberrors);
 			}

 			if(A.get_depth() > B.get_depth()){

 					bool A0 = false, A1 = false, A2 = false, A3 = false;

 					std::vector<real> sub_errors0,sub_errors1,sub_errors2,sub_errors3;

 					if(A.children[0] != NULL) A0 = true;
 					if(A.children[1] != NULL) A1 = true;
 					if(A.children[2] != NULL) A2 = true;
 					if(A.children[3] != NULL) A3 = true;

 					if(A0) sub_errors0 = get_spamm_errors(*A.children[0], tA, B, tB, taus);
 					if(tA){
 						if(A2) sub_errors1 = get_spamm_errors(*A.children[2], tA, B, tB, taus);
 						if(A1) sub_errors2 = get_spamm_errors(*A.children[1], tA, B, tB, taus);
 					}
 					else{
 						if(A1) sub_errors1 = get_spamm_errors(*A.children[1], tA, B, tB, taus);
 						if(A2) sub_errors2 = get_spamm_errors(*A.children[2], tA, B, tB, taus);
 					}
 					if(A3) sub_errors3 = get_spamm_errors(*A.children[3], tA, B, tB, taus);

					if(sub_errors0.empty() && sub_errors1.empty() && sub_errors2.empty() && sub_errors3.empty()){
						return curr_level_errors;
					}

					std::vector<std::vector<real> > all_suberrors;
					all_suberrors.push_back(std::move(sub_errors0));
					all_suberrors.push_back(std::move(sub_errors1));
					all_suberrors.push_back(std::move(sub_errors2));
					all_suberrors.push_back(std::move(sub_errors3));

 					return sum_spamm_errors(curr_level_errors, all_suberrors);
 			}

			bool A0 = false, A1 = false, A2 = false, A3 = false, B0 = false, B1 = false, B2 = false, B3 = false;

			if(A.children[0] != NULL) A0 = true;
			if(A.children[1] != NULL) A1 = true;
			if(A.children[2] != NULL) A2 = true;
			if(A.children[3] != NULL) A3 = true;

			if(B.children[0] != NULL) B0 = true;
			if(B.children[1] != NULL) B1 = true;
			if(B.children[2] != NULL) B2 = true;
			if(B.children[3] != NULL) B3 = true;

			std::vector<real> sub_errors0,sub_errors1,sub_errors2,sub_errors3,sub_errors4,sub_errors5,sub_errors6,sub_errors7;

			if(!tA && !tB){
					if(A0 && B0) sub_errors0 = get_spamm_errors(*A.children[0], tA, *B.children[0], tB, taus);

					if(A2 && B1) sub_errors1 = get_spamm_errors(*A.children[2], tA, *B.children[1], tB, taus);

					if(A1 && B0) sub_errors2 = get_spamm_errors(*A.children[1], tA, *B.children[0], tB, taus);

					if(A3 && B1) sub_errors3 = get_spamm_errors(*A.children[3], tA, *B.children[1], tB, taus);

					if(A0 && B2) sub_errors4 = get_spamm_errors(*A.children[0], tA, *B.children[2], tB, taus);

					if(A2 && B3) sub_errors5 = get_spamm_errors(*A.children[2], tA, *B.children[3], tB, taus);

					if(A1 && B2) sub_errors6 = get_spamm_errors(*A.children[1], tA, *B.children[2], tB, taus);

					if(A3 && B3) sub_errors7 = get_spamm_errors(*A.children[3], tA, *B.children[3], tB, taus);
 			}

			if(!tA && tB){
					if(A0 && B0) sub_errors0 = get_spamm_errors(*A.children[0], tA, *B.children[0], tB, taus);

					if(A2 && B2) sub_errors1 = get_spamm_errors(*A.children[2], tA, *B.children[2], tB, taus);

					if(A1 && B0) sub_errors2 = get_spamm_errors(*A.children[1], tA, *B.children[0], tB, taus);

					if(A3 && B2) sub_errors3 = get_spamm_errors(*A.children[3], tA, *B.children[2], tB, taus);

					if(A0 && B1) sub_errors4 = get_spamm_errors(*A.children[0], tA, *B.children[1], tB, taus);

					if(A2 && B3) sub_errors5 = get_spamm_errors(*A.children[2], tA, *B.children[3], tB, taus);

					if(A1 && B1) sub_errors6 = get_spamm_errors(*A.children[1], tA, *B.children[1], tB, taus);

					if(A3 && B3) sub_errors7 = get_spamm_errors(*A.children[3], tA, *B.children[3], tB, taus);
			}

			if(tA && !tB){
					if(A0 && B0) sub_errors0 = get_spamm_errors(*A.children[0], tA, *B.children[0], tB, taus);

					if(A1 && B1) sub_errors1 = get_spamm_errors(*A.children[1], tA, *B.children[1], tB, taus);

					if(A2 && B0) sub_errors2 = get_spamm_errors(*A.children[2], tA, *B.children[0], tB, taus);

					if(A3 && B1) sub_errors3 = get_spamm_errors(*A.children[3], tA, *B.children[1], tB, taus);

					if(A0 && B2) sub_errors4 = get_spamm_errors(*A.children[0], tA, *B.children[2], tB, taus);

					if(A1 && B3) sub_errors5 = get_spamm_errors(*A.children[1], tA, *B.children[3], tB, taus);

					if(A2 && B2) sub_errors6 = get_spamm_errors(*A.children[2], tA, *B.children[2], tB, taus);

					if(A3 && B3) sub_errors7 = get_spamm_errors(*A.children[3], tA, *B.children[3], tB, taus);
			}

			if(tA && tB){
					if(A0 && B0) sub_errors0 = get_spamm_errors(*A.children[0], tA, *B.children[0], tB, taus);

					if(A1 && B2) sub_errors1 = get_spamm_errors(*A.children[1], tA, *B.children[2], tB, taus);

					if(A2 && B0) sub_errors2 = get_spamm_errors(*A.children[2], tA, *B.children[0], tB, taus);

					if(A3 && B2) sub_errors3 = get_spamm_errors(*A.children[3], tA, *B.children[2], tB, taus);

					if(A0 && B1) sub_errors4 = get_spamm_errors(*A.children[0], tA, *B.children[1], tB, taus);

					if(A1 && B3) sub_errors5 = get_spamm_errors(*A.children[1], tA, *B.children[3], tB, taus);

					if(A2 && B1) sub_errors6 = get_spamm_errors(*A.children[2], tA, *B.children[1], tB, taus);

					if(A3 && B3) sub_errors7 = get_spamm_errors(*A.children[3], tA, *B.children[3], tB, taus);
			}

			if(sub_errors0.empty() && sub_errors1.empty() && sub_errors2.empty() && sub_errors3.empty() &&
				 sub_errors4.empty() && sub_errors5.empty() && sub_errors6.empty() && sub_errors7.empty() ){
				return curr_level_errors;
			}

			std::vector<std::vector<real> > all_suberrors;

			if(sub_errors0.empty() && sub_errors1.empty()) all_suberrors.push_back(sub_errors0);
			if(sub_errors0.empty() && !sub_errors1.empty()) all_suberrors.push_back(sub_errors1);
			if(!sub_errors0.empty() && sub_errors1.empty()) all_suberrors.push_back(sub_errors0);
			if(!sub_errors0.empty() && !sub_errors1.empty()) all_suberrors.push_back(sub_errors0+sub_errors1);

			if(sub_errors2.empty() && sub_errors3.empty()) all_suberrors.push_back(sub_errors2);
			if(sub_errors2.empty() && !sub_errors3.empty()) all_suberrors.push_back(sub_errors3);
			if(!sub_errors2.empty() && sub_errors3.empty()) all_suberrors.push_back(sub_errors2);
			if(!sub_errors2.empty() && !sub_errors3.empty()) all_suberrors.push_back(sub_errors2+sub_errors3);

			if(sub_errors4.empty() && sub_errors5.empty()) all_suberrors.push_back(sub_errors4);
			if(sub_errors4.empty() && !sub_errors5.empty()) all_suberrors.push_back(sub_errors5);
			if(!sub_errors4.empty() && sub_errors5.empty()) all_suberrors.push_back(sub_errors4);
			if(!sub_errors4.empty() && !sub_errors5.empty()) all_suberrors.push_back(sub_errors4+sub_errors5);

			if(sub_errors6.empty() && sub_errors7.empty()) all_suberrors.push_back(sub_errors6);
			if(sub_errors6.empty() && !sub_errors7.empty()) all_suberrors.push_back(sub_errors7);
			if(!sub_errors6.empty() && sub_errors7.empty()) all_suberrors.push_back(sub_errors6);
			if(!sub_errors6.empty() && !sub_errors7.empty()) all_suberrors.push_back(sub_errors6+sub_errors7);

			return sum_spamm_errors(curr_level_errors, all_suberrors);

		}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x188, %rsp            # imm = 0x188
movq %r9, %r14
movq %rcx, %r15
movl %edx, %r13d
movq %rsi, %r12
movq 0x8(%r9), %rbx
subq (%r9), %rbx
movq %rdi, %rbp
xorpd %xmm0, %xmm0
movapd %xmm0, 0xd0(%rsp)
movq $0x0, 0xe0(%rsp)
movq %rsi, %rdi
movl %edx, %esi
movq %rcx, %rdx
movl %r8d, 0xcc(%rsp)
movl %r8d, %ecx
callq 0xec0a
testb %al, %al
je 0x187ab
shrq $0x3, %rbx
movslq %ebx, %rsi
leaq 0xa0(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0xd0(%rsp), %rdi
callq 0x21616
movsd 0x18(%r12), %xmm0
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jb 0x1872a
sqrtsd %xmm0, %xmm1
jmp 0x18737
callq 0x2170
xorpd %xmm2, %xmm2
movapd %xmm0, %xmm1
movsd 0x18(%r15), %xmm0
ucomisd %xmm2, %xmm0
jb 0x18749
sqrtsd %xmm0, %xmm0
jmp 0x18760
movsd %xmm1, 0xc0(%rsp)
callq 0x2170
movsd 0xc0(%rsp), %xmm1
testl %ebx, %ebx
jle 0x18793
mulsd %xmm0, %xmm1
movq (%r14), %rax
movq 0xd0(%rsp), %rcx
andl $0x7fffffff, %ebx       # imm = 0x7FFFFFFF
xorl %edx, %edx
movsd (%rax,%rdx,8), %xmm0
ucomisd %xmm1, %xmm0
jbe 0x1878b
movsd %xmm1, (%rcx,%rdx,8)
incq %rdx
cmpq %rdx, %rbx
jne 0x1877b
movq %r12, %rdi
callq 0x1aed4
testb %al, %al
je 0x187ed
movq %r15, %rdi
callq 0x1aed4
testb %al, %al
je 0x187ed
movq 0xd0(%rsp), %rax
movq %rax, (%rbp)
movq 0xd8(%rsp), %rax
movq %rax, 0x8(%rbp)
movq 0xe0(%rsp), %rax
movq %rax, 0x10(%rbp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0xd0(%rsp)
movq $0x0, 0xe0(%rsp)
jmp 0x1a43d
movq %r12, %rdi
callq 0xe96a
movl %eax, %ebx
movq %r15, %rdi
callq 0xe96a
cmpl %eax, %ebx
jge 0x189aa
movq %rbp, 0xc0(%rsp)
movq 0x28(%r15), %rcx
movq 0x38(%r15), %rbx
xorl %eax, %eax
movq 0x48(%r15), %rbp
movq 0x58(%r15), %rdx
movq %rdx, 0xb8(%rsp)
movq %rax, 0xb0(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0xa0(%rsp)
movq %rax, 0x70(%rsp)
movapd %xmm0, 0x60(%rsp)
movq %rax, 0x50(%rsp)
movapd %xmm0, 0x40(%rsp)
movq %rax, 0x90(%rsp)
movapd %xmm0, 0x80(%rsp)
testq %rcx, %rcx
je 0x188ee
movzbl %r13b, %edx
movzbl 0xcc(%rsp), %r8d
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movq %r14, %r9
callq 0x18690
movq 0xa0(%rsp), %rdi
movq 0xb0(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0xa0(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0xa8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x188d7
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x188ee
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpb $0x0, 0xcc(%rsp)
je 0x18b8f
testq %rbp, %rbp
movq 0xc0(%rsp), %rbp
je 0x1897e
movq 0x48(%r15), %rcx
movzbl %r13b, %edx
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x60(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x60(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x68(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x18967
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1897e
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
testq %rbx, %rbx
je 0x18c85
movq 0x38(%r15), %rcx
movzbl %r13b, %edx
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
jmp 0x18c2e
movq %r12, %rdi
callq 0xe96a
movl %eax, %ebx
movq %r15, %rdi
callq 0xe96a
cmpl %eax, %ebx
jle 0x18dc4
movq %r15, 0xb8(%rsp)
movl %r13d, %ecx
movq %rbp, 0xc0(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0xa0(%rsp)
xorl %eax, %eax
movq %rax, 0xb0(%rsp)
movq %rax, 0x70(%rsp)
movapd %xmm0, 0x60(%rsp)
movq %rax, 0x50(%rsp)
movapd %xmm0, 0x40(%rsp)
movq %rax, 0x90(%rsp)
movapd %xmm0, 0x80(%rsp)
movq 0x28(%r12), %rsi
movq 0x38(%r12), %rbp
movq 0x48(%r12), %rbx
movq %r12, %r15
movq 0x58(%r12), %rax
movq %rax, 0x148(%rsp)
movzbl %cl, %eax
movl %eax, 0xe8(%rsp)
movzbl 0xcc(%rsp), %r12d
testq %rsi, %rsi
je 0x18ad2
leaq 0x20(%rsp), %rdi
movl 0xe8(%rsp), %edx
movq 0xb8(%rsp), %rcx
movl %r12d, %r8d
movq %r14, %r9
callq 0x18690
movq 0xa0(%rsp), %rdi
movq 0xb0(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0xa0(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0xa8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x18abb
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x18ad2
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
testb %r13b, %r13b
je 0x1a193
testq %rbx, %rbx
je 0x18b58
movq 0x48(%r15), %rsi
leaq 0x20(%rsp), %rdi
movl $0x1, %edx
movq 0xb8(%rsp), %rcx
movl %r12d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x60(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x60(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x68(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x18b41
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x18b58
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
testq %rbp, %rbp
movq 0xc0(%rsp), %rbp
je 0x1a28f
movq 0x38(%r15), %rsi
leaq 0x20(%rsp), %rdi
movl $0x1, %edx
movq 0xb8(%rsp), %rcx
movl %r12d, %r8d
movq %r14, %r9
callq 0x18690
jmp 0x1a238
testq %rbx, %rbx
je 0x18c06
movq 0x38(%r15), %rcx
movzbl %r13b, %edx
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x60(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x60(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x68(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x18bef
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x18c06
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
testq %rbp, %rbp
movq 0xc0(%rsp), %rbp
je 0x18c85
movq 0x48(%r15), %rcx
movzbl %r13b, %edx
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x40(%rsp), %rdi
movq 0x50(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x40(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x48(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x18c6e
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x18c85
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
je 0x18d18
movq 0x58(%r15), %rcx
movzbl %r13b, %edx
movzbl 0xcc(%rsp), %r8d
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movq %r14, %r9
callq 0x18690
movq 0x80(%rsp), %rdi
movq 0x90(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x80(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x88(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x18d01
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x18d18
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xa0(%rsp), %rax
cmpq 0xa8(%rsp), %rax
jne 0x18d58
movq 0x60(%rsp), %rax
cmpq 0x68(%rsp), %rax
jne 0x18d58
movq 0x40(%rsp), %rax
cmpq 0x48(%rsp), %rax
jne 0x18d58
movq 0x80(%rsp), %rax
cmpq 0x88(%rsp), %rax
je 0x1a93e
xorpd %xmm0, %xmm0
leaq 0x20(%rsp), %rdi
movapd %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
leaq 0xa0(%rsp), %rsi
callq 0x21a2c
leaq 0x20(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x21a2c
leaq 0x20(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x21a2c
leaq 0x20(%rsp), %rdi
leaq 0x80(%rsp), %rsi
callq 0x21a2c
leaq 0xd0(%rsp), %rsi
leaq 0x20(%rsp), %rdx
movq %rbp, %rdi
callq 0x2164a
jmp 0x1a3cb
movq 0x28(%r12), %rax
movq %rax, 0xb8(%rsp)
movq 0x38(%r12), %rax
movq %rax, 0x160(%rsp)
movq 0x48(%r12), %rax
movq %rax, 0x168(%rsp)
movq 0x58(%r12), %rax
movq %rax, 0x158(%rsp)
movq 0x28(%r15), %rax
movq %rax, 0xc0(%rsp)
movq 0x38(%r15), %rax
movq %rax, 0xe8(%rsp)
movq 0x48(%r15), %rax
movq %rax, 0x148(%rsp)
movq 0x58(%r15), %rax
movq %rax, 0x150(%rsp)
xorl %eax, %eax
movq %rax, 0xb0(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0xa0(%rsp)
movq %rax, 0x70(%rsp)
movapd %xmm0, 0x60(%rsp)
movq %rax, 0x50(%rsp)
movapd %xmm0, 0x40(%rsp)
movq %rax, 0x90(%rsp)
movapd %xmm0, 0x80(%rsp)
movq %rax, 0x30(%rsp)
movapd %xmm0, 0x20(%rsp)
movq %rax, 0x140(%rsp)
movapd %xmm0, 0x130(%rsp)
movq %rax, 0x100(%rsp)
movapd %xmm0, 0xf0(%rsp)
movq %rax, 0x120(%rsp)
movapd %xmm0, 0x110(%rsp)
movl %r13d, %eax
orb 0xcc(%rsp), %al
jne 0x19343
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xb8(%rsp)
sete %cl
orb %al, %cl
jne 0x18f54
movq %rsp, %rdi
movq 0xb8(%rsp), %rsi
xorl %edx, %edx
movq 0xc0(%rsp), %rcx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0xa0(%rsp), %rdi
movq 0xb0(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xa0(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xa8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x18f3e
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x18f54
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xe8(%rsp)
sete %al
cmpq $0x0, 0x168(%rsp)
sete %cl
orb %al, %cl
jne 0x18fdd
movq 0x48(%r12), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x60(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x60(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x68(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x18fc7
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x18fdd
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x19066
movq 0x38(%r12), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x40(%rsp), %rdi
movq 0x50(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x40(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x48(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19050
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19066
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xe8(%rsp)
sete %al
cmpq $0x0, 0x158(%rsp)
sete %cl
orb %al, %cl
jne 0x190fb
movq 0x58(%r12), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x80(%rsp), %rdi
movq 0x90(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x80(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x88(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x190e5
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x190fb
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
sete %al
cmpq $0x0, 0xb8(%rsp)
sete %cl
orb %al, %cl
jne 0x19184
movq 0x28(%r12), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x20(%rsp), %rdi
movq 0x30(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x20(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x28(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1916e
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19184
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x150(%rsp)
sete %al
cmpq $0x0, 0x168(%rsp)
sete %cl
orb %al, %cl
jne 0x19219
movq 0x48(%r12), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x130(%rsp), %rdi
movq 0x140(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x130(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x138(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19203
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19219
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x192ae
movq 0x38(%r12), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0xf0(%rsp), %rdi
movq 0x100(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xf0(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xf8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19298
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x192ae
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x150(%rsp)
sete %al
cmpq $0x0, 0x158(%rsp)
sete %cl
orb %al, %cl
jne 0x19343
movq 0x58(%r12), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x110(%rsp), %rdi
movq 0x120(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x110(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x118(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1932d
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19343
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movl 0xcc(%rsp), %eax
movl %eax, %ebx
xorb $0x1, %bl
movl %ebx, %eax
orb %r13b, %al
jne 0x197f6
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xb8(%rsp)
sete %cl
orb %al, %cl
jne 0x193f2
movq 0x28(%r12), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0xa0(%rsp), %rdi
movq 0xb0(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xa0(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xa8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x193dc
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x193f2
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
sete %al
cmpq $0x0, 0x168(%rsp)
sete %cl
orb %al, %cl
jne 0x1947e
movq 0x48(%r12), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x60(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x60(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x68(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19468
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1947e
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x1950a
movq 0x38(%r12), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x40(%rsp), %rdi
movq 0x50(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x40(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x48(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x194f4
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1950a
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
sete %al
cmpq $0x0, 0x158(%rsp)
sete %cl
orb %al, %cl
jne 0x195a2
movq 0x58(%r12), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x80(%rsp), %rdi
movq 0x90(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x80(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x88(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1958c
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x195a2
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xe8(%rsp)
sete %al
cmpq $0x0, 0xb8(%rsp)
sete %cl
orb %al, %cl
jne 0x1962e
movq 0x28(%r12), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x20(%rsp), %rdi
movq 0x30(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x20(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x28(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19618
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1962e
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x150(%rsp)
sete %al
cmpq $0x0, 0x168(%rsp)
sete %cl
orb %al, %cl
jne 0x196c6
movq 0x48(%r12), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x130(%rsp), %rdi
movq 0x140(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x130(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x138(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x196b0
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x196c6
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xe8(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x1975e
movq 0x38(%r12), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0xf0(%rsp), %rdi
movq 0x100(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xf0(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xf8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19748
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1975e
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x150(%rsp)
sete %al
cmpq $0x0, 0x158(%rsp)
sete %cl
orb %al, %cl
jne 0x197f6
movq 0x58(%r12), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x110(%rsp), %rdi
movq 0x120(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x110(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x118(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x197e0
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x197f6
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
xorb $0x1, %r13b
movl 0xcc(%rsp), %eax
orb %r13b, %al
jne 0x19ca6
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xb8(%rsp)
sete %cl
orb %al, %cl
jne 0x198a2
movq 0x28(%r12), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0xa0(%rsp), %rdi
movq 0xb0(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xa0(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xa8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1988c
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x198a2
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xe8(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x1992e
movq 0x38(%r12), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x60(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x60(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x68(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19918
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1992e
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0x168(%rsp)
sete %cl
orb %al, %cl
jne 0x199ba
movq 0x48(%r12), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x40(%rsp), %rdi
movq 0x50(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x40(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x48(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x199a4
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x199ba
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xe8(%rsp)
sete %al
cmpq $0x0, 0x158(%rsp)
sete %cl
orb %al, %cl
jne 0x19a52
movq 0x58(%r12), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x80(%rsp), %rdi
movq 0x90(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x80(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x88(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19a3c
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19a52
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
sete %al
cmpq $0x0, 0xb8(%rsp)
sete %cl
orb %al, %cl
jne 0x19ade
movq 0x28(%r12), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x20(%rsp), %rdi
movq 0x30(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x20(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x28(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19ac8
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19ade
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x150(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x19b76
movq 0x38(%r12), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x130(%rsp), %rdi
movq 0x140(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x130(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x138(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19b60
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19b76
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
sete %al
cmpq $0x0, 0x168(%rsp)
sete %cl
orb %al, %cl
jne 0x19c0e
movq 0x48(%r12), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0xf0(%rsp), %rdi
movq 0x100(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xf0(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xf8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19bf8
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19c0e
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x150(%rsp)
sete %al
cmpq $0x0, 0x158(%rsp)
sete %cl
orb %al, %cl
jne 0x19ca6
movq 0x58(%r12), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x110(%rsp), %rdi
movq 0x120(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x110(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x118(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19c90
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19ca6
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
orb %bl, %r13b
jne 0x1a163
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xb8(%rsp)
sete %cl
orb %al, %cl
jne 0x19d4a
movq 0x28(%r12), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0xa0(%rsp), %rdi
movq 0xb0(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xa0(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xa8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19d34
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19d4a
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x19dd9
movq 0x38(%r12), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x60(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x60(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x68(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19dc3
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19dd9
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0x168(%rsp)
sete %cl
orb %al, %cl
jne 0x19e68
movq 0x48(%r12), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x40(%rsp), %rdi
movq 0x50(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x40(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x48(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19e52
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19e68
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
sete %al
cmpq $0x0, 0x158(%rsp)
sete %cl
orb %al, %cl
jne 0x19f03
movq 0x58(%r12), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x80(%rsp), %rdi
movq 0x90(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x80(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x88(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19eed
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19f03
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xe8(%rsp)
sete %al
cmpq $0x0, 0xb8(%rsp)
sete %cl
orb %al, %cl
jne 0x19f92
movq 0x28(%r12), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x20(%rsp), %rdi
movq 0x30(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x20(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x28(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x19f7c
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x19f92
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x150(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x1a02d
movq 0x38(%r12), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x130(%rsp), %rdi
movq 0x140(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x130(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x138(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1a017
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1a02d
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xe8(%rsp)
sete %al
cmpq $0x0, 0x168(%rsp)
sete %cl
orb %al, %cl
jne 0x1a0c8
movq 0x48(%r12), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0xf0(%rsp), %rdi
movq 0x100(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xf0(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xf8(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1a0b2
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1a0c8
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x150(%rsp)
sete %al
cmpq $0x0, 0x158(%rsp)
sete %cl
orb %al, %cl
jne 0x1a163
movq 0x58(%r12), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r14, %r9
callq 0x18690
movq 0x110(%rsp), %rdi
movq 0x120(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x110(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x118(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1a14d
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1a163
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xa0(%rsp), %rax
movq 0xa8(%rsp), %rcx
cmpq %rcx, %rax
je 0x1a46f
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
jmp 0x1a512
testq %rbp, %rbp
movq 0xc0(%rsp), %rbp
je 0x1a215
movq 0x38(%r15), %rsi
leaq 0x20(%rsp), %rdi
xorl %edx, %edx
movq 0xb8(%rsp), %rcx
movl %r12d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x60(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x60(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x68(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x1a1fe
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1a215
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
testq %rbx, %rbx
je 0x1a28f
movq 0x48(%r15), %rsi
leaq 0x20(%rsp), %rdi
xorl %edx, %edx
movq 0xb8(%rsp), %rcx
movl %r12d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x40(%rsp), %rdi
movq 0x50(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x40(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x48(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x1a278
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1a28f
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0x148(%rsp)
je 0x1a324
movq 0x58(%r15), %rsi
leaq 0x20(%rsp), %rdi
movl 0xe8(%rsp), %edx
movq 0xb8(%rsp), %rcx
movl %r12d, %r8d
movq %r14, %r9
callq 0x18690
movq 0x80(%rsp), %rdi
movq 0x90(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x80(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x88(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x1a30d
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1a324
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xa0(%rsp), %rax
cmpq 0xa8(%rsp), %rax
jne 0x1a364
movq 0x60(%rsp), %rax
cmpq 0x68(%rsp), %rax
jne 0x1a364
movq 0x40(%rsp), %rax
cmpq 0x48(%rsp), %rax
jne 0x1a364
movq 0x80(%rsp), %rax
cmpq 0x88(%rsp), %rax
je 0x1a93e
xorpd %xmm0, %xmm0
leaq 0x20(%rsp), %rdi
movapd %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
leaq 0xa0(%rsp), %rsi
callq 0x21a2c
leaq 0x20(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x21a2c
leaq 0x20(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x21a2c
leaq 0x20(%rsp), %rdi
leaq 0x80(%rsp), %rsi
callq 0x21a2c
leaq 0xd0(%rsp), %rsi
leaq 0x20(%rsp), %rdx
movq %rbp, %rdi
callq 0x2164a
leaq 0x20(%rsp), %rdi
callq 0x2173a
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x1a3f2
movq 0x90(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0x1a409
movq 0x50(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0x1a420
movq 0x70(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xa0(%rsp), %rdi
testq %rdi, %rdi
je 0x1a43d
movq 0xb0(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xd0(%rsp), %rdi
testq %rdi, %rdi
je 0x1a45a
movq 0xe0(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq %rbp, %rax
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x60(%rsp), %rdx
cmpq 0x68(%rsp), %rdx
jne 0x1a4df
movq 0x40(%rsp), %rdx
cmpq 0x48(%rsp), %rdx
jne 0x1a4df
movq 0x80(%rsp), %rdx
cmpq 0x88(%rsp), %rdx
jne 0x1a4df
movq 0x20(%rsp), %rdx
cmpq 0x28(%rsp), %rdx
jne 0x1a4df
movq 0x130(%rsp), %rdx
cmpq 0x138(%rsp), %rdx
jne 0x1a4df
movq 0xf0(%rsp), %rdx
cmpq 0xf8(%rsp), %rdx
jne 0x1a4df
movq 0x110(%rsp), %rdx
cmpq 0x118(%rsp), %rdx
je 0x1a980
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
cmpq %rcx, %rax
jne 0x1a512
movq 0x60(%rsp), %rax
cmpq 0x68(%rsp), %rax
jne 0x1a512
movq %rsp, %rdi
leaq 0xa0(%rsp), %rsi
callq 0x21788
movq 0xa0(%rsp), %rax
cmpq 0xa8(%rsp), %rax
jne 0x1a53d
movq 0x60(%rsp), %rax
cmpq 0x68(%rsp), %rax
je 0x1a53d
movq %rsp, %rdi
leaq 0x60(%rsp), %rsi
callq 0x21788
movq 0xa0(%rsp), %rax
cmpq 0xa8(%rsp), %rax
je 0x1a56b
movq 0x60(%rsp), %rax
cmpq 0x68(%rsp), %rax
jne 0x1a56b
movq %rsp, %rdi
leaq 0xa0(%rsp), %rsi
callq 0x21788
movq 0xa0(%rsp), %rax
cmpq 0xa8(%rsp), %rax
je 0x1a5d0
movq 0x60(%rsp), %rax
cmpq 0x68(%rsp), %rax
je 0x1a5d0
leaq 0x170(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
leaq 0x60(%rsp), %rdx
callq 0x217b4
movq %rsp, %rdi
leaq 0x170(%rsp), %rsi
callq 0x21a2c
movq 0x170(%rsp), %rdi
testq %rdi, %rdi
je 0x1a5d0
movq 0x180(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x40(%rsp), %rax
cmpq 0x48(%rsp), %rax
jne 0x1a5fb
movq 0x80(%rsp), %rax
cmpq 0x88(%rsp), %rax
jne 0x1a5fb
movq %rsp, %rdi
leaq 0x40(%rsp), %rsi
callq 0x21788
movq 0x40(%rsp), %rax
cmpq 0x48(%rsp), %rax
jne 0x1a629
movq 0x80(%rsp), %rax
cmpq 0x88(%rsp), %rax
je 0x1a629
movq %rsp, %rdi
leaq 0x80(%rsp), %rsi
callq 0x21788
movq 0x40(%rsp), %rax
cmpq 0x48(%rsp), %rax
je 0x1a654
movq 0x80(%rsp), %rax
cmpq 0x88(%rsp), %rax
jne 0x1a654
movq %rsp, %rdi
leaq 0x40(%rsp), %rsi
callq 0x21788
movq 0x40(%rsp), %rax
cmpq 0x48(%rsp), %rax
je 0x1a6b9
movq 0x80(%rsp), %rax
cmpq 0x88(%rsp), %rax
je 0x1a6b9
leaq 0x170(%rsp), %rdi
leaq 0x40(%rsp), %rsi
leaq 0x80(%rsp), %rdx
callq 0x217b4
movq %rsp, %rdi
leaq 0x170(%rsp), %rsi
callq 0x21a2c
movq 0x170(%rsp), %rdi
testq %rdi, %rdi
je 0x1a6b9
movq 0x180(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rax
cmpq 0x28(%rsp), %rax
jne 0x1a6e4
movq 0x130(%rsp), %rax
cmpq 0x138(%rsp), %rax
jne 0x1a6e4
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x21788
movq 0x20(%rsp), %rax
cmpq 0x28(%rsp), %rax
jne 0x1a712
movq 0x130(%rsp), %rax
cmpq 0x138(%rsp), %rax
je 0x1a712
movq %rsp, %rdi
leaq 0x130(%rsp), %rsi
callq 0x21788
movq 0x20(%rsp), %rax
cmpq 0x28(%rsp), %rax
je 0x1a73d
movq 0x130(%rsp), %rax
cmpq 0x138(%rsp), %rax
jne 0x1a73d
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x21788
movq 0x20(%rsp), %rax
cmpq 0x28(%rsp), %rax
je 0x1a7a2
movq 0x130(%rsp), %rax
cmpq 0x138(%rsp), %rax
je 0x1a7a2
leaq 0x170(%rsp), %rdi
leaq 0x20(%rsp), %rsi
leaq 0x130(%rsp), %rdx
callq 0x217b4
movq %rsp, %rdi
leaq 0x170(%rsp), %rsi
callq 0x21a2c
movq 0x170(%rsp), %rdi
testq %rdi, %rdi
je 0x1a7a2
movq 0x180(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xf0(%rsp), %rax
cmpq 0xf8(%rsp), %rax
jne 0x1a7d6
movq 0x110(%rsp), %rax
cmpq 0x118(%rsp), %rax
jne 0x1a7d6
movq %rsp, %rdi
leaq 0xf0(%rsp), %rsi
callq 0x21788
movq 0xf0(%rsp), %rax
cmpq 0xf8(%rsp), %rax
jne 0x1a80a
movq 0x110(%rsp), %rax
cmpq 0x118(%rsp), %rax
je 0x1a80a
movq %rsp, %rdi
leaq 0x110(%rsp), %rsi
callq 0x21788
movq 0xf0(%rsp), %rax
cmpq 0xf8(%rsp), %rax
je 0x1a83e
movq 0x110(%rsp), %rax
cmpq 0x118(%rsp), %rax
jne 0x1a83e
movq %rsp, %rdi
leaq 0xf0(%rsp), %rsi
callq 0x21788
movq 0xf0(%rsp), %rax
cmpq 0xf8(%rsp), %rax
je 0x1a8ac
movq 0x110(%rsp), %rax
cmpq 0x118(%rsp), %rax
je 0x1a8ac
leaq 0x170(%rsp), %rdi
leaq 0xf0(%rsp), %rsi
leaq 0x110(%rsp), %rdx
callq 0x217b4
movq %rsp, %rdi
leaq 0x170(%rsp), %rsi
callq 0x21a2c
movq 0x170(%rsp), %rdi
testq %rdi, %rdi
je 0x1a8ac
movq 0x180(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
leaq 0xd0(%rsp), %rsi
movq %rsp, %rdx
movq %rbp, %rdi
callq 0x2164a
movq %rsp, %rdi
callq 0x2173a
movq 0x110(%rsp), %rdi
testq %rdi, %rdi
je 0x1a8e4
movq 0x120(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xf0(%rsp), %rdi
testq %rdi, %rdi
je 0x1a901
movq 0x100(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x130(%rsp), %rdi
testq %rdi, %rdi
je 0x1a91e
movq 0x140(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1a3d5
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
jmp 0x1a3d5
movq 0xd0(%rsp), %rax
movq %rax, (%rbp)
movq 0xd8(%rsp), %rax
movq %rax, 0x8(%rbp)
movq 0xe0(%rsp), %rax
movq %rax, 0x10(%rbp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0xd0(%rsp)
movq $0x0, 0xe0(%rsp)
jmp 0x1a3d5
movq 0xd0(%rsp), %rax
movq %rax, (%rbp)
movq 0xd8(%rsp), %rax
movq %rax, 0x8(%rbp)
movq 0xe0(%rsp), %rax
movq %rax, 0x10(%rbp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0xd0(%rsp)
movq $0x0, 0xe0(%rsp)
jmp 0x1a8c7
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
jmp 0x1aa00
movq %rax, %rbx
jmp 0x1aa5e
jmp 0x1aa4b
jmp 0x1aa4b
jmp 0x1aa4b
jmp 0x1aa4b
jmp 0x1aa19
jmp 0x1aa53
jmp 0x1aa19
jmp 0x1aa53
jmp 0x1aa19
jmp 0x1aa53
movq %rax, %rbx
movq 0x170(%rsp), %rdi
testq %rdi, %rdi
je 0x1aa56
movq 0x180(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
jmp 0x1aa56
jmp 0x1aa53
jmp 0x1aa4b
jmp 0x1aa4b
jmp 0x1aa4b
jmp 0x1aa4b
jmp 0x1aa4b
jmp 0x1aa4b
jmp 0x1aa4b
movq %rax, %rbx
jmp 0x1aadf
movq %rax, %rbx
movq %rsp, %rdi
callq 0x2173a
movq 0x110(%rsp), %rdi
testq %rdi, %rdi
je 0x1aa7b
movq 0x120(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xf0(%rsp), %rdi
testq %rdi, %rdi
je 0x1aa98
movq 0x100(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x130(%rsp), %rdi
testq %rdi, %rdi
je 0x1aab5
movq 0x140(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1aadf
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
jmp 0x1aadf
jmp 0x1aad2
jmp 0x1ab4b
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x2173a
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x1aafc
movq 0x90(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0x1ab13
movq 0x50(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0x1ab2a
movq 0x70(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xa0(%rsp), %rdi
testq %rdi, %rdi
je 0x1ab4e
movq 0xb0(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
jmp 0x1ab4e
jmp 0x1ab4b
movq %rax, %rbx
movq 0xd0(%rsp), %rdi
testq %rdi, %rdi
je 0x1ab6b
movq 0xe0(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq %rbx, %rdi
callq 0x22b0
nop