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

	    // look at the current level
			std::vector<unsigned long int> curr_level_skips;
			const int length = taus.size();
			curr_level_skips.resize(length);

			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){

					// depending on values of apply_truncation and apply_spamm decide if this multiplication is to be skipped

					//truncmul
					if(apply_truncation && !apply_spamm){
						if(A_norm < taus[i] || B_norm < taus[i])	curr_level_skips[i] = 1;
						else curr_level_skips[i] = 0;
					}

					//SpAMM
					if(!apply_truncation && apply_spamm){
						if(product_of_norms < taus[i]) curr_level_skips[i] = 1;
						else curr_level_skips[i] = 0;
					}

					//hybrid
					if(apply_truncation && apply_spamm){
						if(A_norm < taus[i] || B_norm < taus[i] || product_of_norms < taus[i]) curr_level_skips[i] = 1;
						else curr_level_skips[i] = 0;
					}

					if(!apply_truncation && !apply_spamm){
						curr_level_skips[i] = 0;
					}

			}


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

			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<unsigned long int> sub_skips0(length,0),sub_skips1(length,0),sub_skips2(length,0),sub_skips3(length,0);

					if(B0) sub_skips0 = count_skips(A, tA, *B.children[0],tB, taus, apply_truncation, apply_spamm);
					if(tB){
						if(B2) sub_skips1 = count_skips(A, tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);
						if(B1) sub_skips2 = count_skips(A, tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);
					}
					else{
						if(B1) sub_skips1 = count_skips(A, tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);
					  if(B2) sub_skips2 = count_skips(A, tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);
					}
					if(B3) sub_skips3 = count_skips(A, tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);

					std::vector<std::vector<unsigned long int> > all_subskips;
					all_subskips.push_back(std::move(sub_skips0));
					all_subskips.push_back(std::move(sub_skips1));
					all_subskips.push_back(std::move(sub_skips2));
					all_subskips.push_back(std::move(sub_skips3));

					return sum_skips(curr_level_skips, all_subskips);
			}

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

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

					std::vector<unsigned long int> sub_skips0(length,0),sub_skips1(length,0),sub_skips2(length,0),sub_skips3(length,0);

					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_skips0 = count_skips(*A.children[0], tA, B, tB, taus, apply_truncation, apply_spamm);
					if(tA){
						if(A2) sub_skips1 = count_skips(*A.children[2], tA, B, tB, taus, apply_truncation, apply_spamm);
						if(A1) sub_skips2 = count_skips(*A.children[1], tA, B, tB, taus, apply_truncation, apply_spamm);
					}
					else{
						if(A1) sub_skips1 = count_skips(*A.children[1], tA, B, tB, taus, apply_truncation, apply_spamm);
						if(A2) sub_skips2 = count_skips(*A.children[2], tA, B, tB, taus, apply_truncation, apply_spamm);
					}
					if(A3) sub_skips3 = count_skips(*A.children[3], tA, B, tB, taus, apply_truncation, apply_spamm);

					std::vector<std::vector<unsigned long int> > all_subskips;
					all_subskips.push_back(std::move(sub_skips0));
					all_subskips.push_back(std::move(sub_skips1));
					all_subskips.push_back(std::move(sub_skips2));
					all_subskips.push_back(std::move(sub_skips3));

					return sum_skips(curr_level_skips, all_subskips);
			}

			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<unsigned long int> sub_skips0(length,0),sub_skips1(length,0),sub_skips2(length,0),sub_skips3(length,0),sub_skips4(length,0),sub_skips5(length,0),sub_skips6(length,0),sub_skips7(length,0);

			if(!tA && !tB){
					if(A0 && B0) sub_skips0 = count_skips(*A.children[0], tA, *B.children[0], tB, taus, apply_truncation, apply_spamm);

					if(A2 && B1) sub_skips1 = count_skips(*A.children[2], tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);

					if(A1 && B0) sub_skips2 = count_skips(*A.children[1], tA, *B.children[0], tB, taus, apply_truncation, apply_spamm);

					if(A3 && B1) sub_skips3 = count_skips(*A.children[3], tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);

					if(A0 && B2) sub_skips4 = count_skips(*A.children[0], tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);

					if(A2 && B3) sub_skips5 = count_skips(*A.children[2], tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);

					if(A1 && B2) sub_skips6 = count_skips(*A.children[1], tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);

					if(A3 && B3) sub_skips7 = count_skips(*A.children[3], tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);
 			}

			if(!tA && tB){
					if(A0 && B0) sub_skips0 = count_skips(*A.children[0], tA, *B.children[0], tB, taus, apply_truncation, apply_spamm);

					if(A2 && B2) sub_skips1 = count_skips(*A.children[2], tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);

					if(A1 && B0) sub_skips2 = count_skips(*A.children[1], tA, *B.children[0], tB, taus, apply_truncation, apply_spamm);

					if(A3 && B2) sub_skips3 = count_skips(*A.children[3], tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);

					if(A0 && B1) sub_skips4 = count_skips(*A.children[0], tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);

					if(A2 && B3) sub_skips5 = count_skips(*A.children[2], tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);

					if(A1 && B1) sub_skips6 = count_skips(*A.children[1], tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);

					if(A3 && B3) sub_skips7 = count_skips(*A.children[3], tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);
			}

			if(tA && !tB){
					if(A0 && B0) sub_skips0 = count_skips(*A.children[0], tA, *B.children[0], tB, taus, apply_truncation, apply_spamm);

					if(A1 && B1) sub_skips1 = count_skips(*A.children[1], tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);

					if(A2 && B0) sub_skips2 = count_skips(*A.children[2], tA, *B.children[0], tB, taus, apply_truncation, apply_spamm);

					if(A3 && B1) sub_skips3 = count_skips(*A.children[3], tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);

					if(A0 && B2) sub_skips4 = count_skips(*A.children[0], tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);

					if(A1 && B3) sub_skips5 = count_skips(*A.children[1], tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);

					if(A2 && B2) sub_skips6 = count_skips(*A.children[2], tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);

					if(A3 && B3) sub_skips7 = count_skips(*A.children[3], tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);
			}

			if(tA && tB){
					if(A0 && B0) sub_skips0 = count_skips(*A.children[0], tA, *B.children[0], tB, taus, apply_truncation, apply_spamm);

					if(A1 && B2) sub_skips1 = count_skips(*A.children[1], tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);

					if(A2 && B0) sub_skips2 = count_skips(*A.children[2], tA, *B.children[0], tB, taus, apply_truncation, apply_spamm);

					if(A3 && B2) sub_skips3 = count_skips(*A.children[3], tA, *B.children[2], tB, taus, apply_truncation, apply_spamm);;

					if(A0 && B1) sub_skips4 = count_skips(*A.children[0], tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);

					if(A1 && B3) sub_skips5 = count_skips(*A.children[1], tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);

					if(A2 && B1) sub_skips6 = count_skips(*A.children[2], tA, *B.children[1], tB, taus, apply_truncation, apply_spamm);

					if(A3 && B3) sub_skips7 = count_skips(*A.children[3], tA, *B.children[3], tB, taus, apply_truncation, apply_spamm);
			}



			std::vector<std::vector<unsigned long int> > all_subskips;
			all_subskips.push_back(std::move(sub_skips0));
			all_subskips.push_back(std::move(sub_skips1));
			all_subskips.push_back(std::move(sub_skips2));
			all_subskips.push_back(std::move(sub_skips3));
			all_subskips.push_back(std::move(sub_skips4));
			all_subskips.push_back(std::move(sub_skips5));
			all_subskips.push_back(std::move(sub_skips6));
			all_subskips.push_back(std::move(sub_skips7));

			return sum_skips(curr_level_skips, all_subskips);



	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x168, %rsp            # imm = 0x168
movq %r9, %r12
movl %r8d, 0x84(%rsp)
movq %rcx, %r15
movl %edx, 0xa4(%rsp)
movq %rsi, %rbp
movq %rdi, %r14
xorpd %xmm0, %xmm0
leaq 0x140(%rsp), %rdi
movapd %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movq 0x8(%r9), %r13
subq (%r9), %r13
shrq $0x3, %r13
movslq %r13d, %rbx
movq %rbx, %rsi
callq 0x20f98
movq %rbp, 0x138(%rsp)
movsd 0x18(%rbp), %xmm0
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x15eef
sqrtsd %xmm0, %xmm5
jmp 0x15efc
callq 0x2170
xorpd %xmm1, %xmm1
movapd %xmm0, %xmm5
movsd 0x18(%r15), %xmm0
ucomisd %xmm1, %xmm0
jb 0x15f0e
sqrtsd %xmm0, %xmm0
jmp 0x15f25
movapd %xmm5, 0xf0(%rsp)
callq 0x2170
movapd 0xf0(%rsp), %xmm5
testl %r13d, %r13d
jle 0x16019
movapd %xmm5, %xmm1
mulsd %xmm0, %xmm1
movq 0x1a0(%rsp), %rax
movb (%rax), %al
movq 0x1a8(%rsp), %rcx
movb (%rcx), %cl
movq (%r12), %rdx
movq 0x140(%rsp), %rsi
andl $0x7fffffff, %r13d      # imm = 0x7FFFFFFF
movl %eax, %edi
orb %cl, %dil
xorl %r8d, %r8d
testb %al, %al
je 0x15f9b
testb $0x1, %cl
jne 0x15f97
movsd (%rdx,%r8,8), %xmm2
movapd %xmm0, %xmm3
cmpltpd %xmm2, %xmm3
movapd %xmm5, %xmm4
cmpltpd %xmm2, %xmm4
orpd %xmm3, %xmm4
movq %xmm4, %r9
andl $0x1, %r9d
movq %r9, (%rsi,%r8,8)
testb %al, %al
jne 0x15fb9
testb $0x1, %cl
je 0x15fb5
movsd (%rdx,%r8,8), %xmm2
xorl %r9d, %r9d
ucomisd %xmm1, %xmm2
seta %r9b
movq %r9, (%rsi,%r8,8)
testb %al, %al
je 0x16012
testb $0x1, %cl
je 0x15ff6
movsd (%rdx,%r8,8), %xmm2
movapd %xmm0, %xmm3
cmpltpd %xmm2, %xmm3
movapd %xmm5, %xmm4
cmpltpd %xmm2, %xmm4
orpd %xmm3, %xmm4
movd %xmm4, %r9d
ucomisd %xmm1, %xmm2
seta %r10b
orb %r9b, %r10b
movzbl %r10b, %r9d
andl $0x1, %r9d
movq %r9, (%rsi,%r8,8)
testb $0x1, %dil
jne 0x16004
movq $0x0, (%rsi,%r8,8)
incq %r8
cmpq %r8, %r13
jne 0x15f65
jmp 0x16019
testb $0x1, %cl
je 0x15ffc
jmp 0x16004
movq 0x138(%rsp), %r13
movq %r13, %rdi
callq 0x1aed4
testb %al, %al
je 0x1607a
movq %r15, %rdi
callq 0x1aed4
testb %al, %al
je 0x1607a
movq 0x140(%rsp), %rax
movq %rax, (%r14)
movq 0x148(%rsp), %rax
movq %rax, 0x8(%r14)
movq 0x150(%rsp), %rax
movq %rax, 0x10(%r14)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x140(%rsp)
movq $0x0, 0x150(%rsp)
jmp 0x18148
movq %r13, %rdi
callq 0xe96a
movl %eax, %ebp
movq %r15, %rdi
callq 0xe96a
cmpl %eax, %ebp
jge 0x162cf
movq %r12, %r13
movq %r14, %r12
movq 0x28(%r15), %r14
movq 0x38(%r15), %rcx
movq %rcx, 0xf0(%rsp)
movq 0x48(%r15), %rbp
movq 0x58(%r15), %rax
movq %rax, 0xa8(%rsp)
leaq 0x50(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x88(%rsp), %rdi
leaq 0x38(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x38(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x50(%rsp), %rdi
leaq 0x68(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x68(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x38(%rsp), %rdi
leaq 0x20(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x20(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x68(%rsp), %rdi
leaq 0xd8(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
testq %r14, %r14
movq %r12, %r14
movq %r13, %rbx
movq 0x138(%rsp), %r12
movl 0xa4(%rsp), %r13d
je 0x161ed
movq 0x28(%r15), %rcx
movzbl %r13b, %edx
movzbl 0x84(%rsp), %r8d
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movq %rbx, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x88(%rsp), %rdi
movq 0x98(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x88(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x90(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x161d6
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x161ed
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpb $0x0, 0x84(%rsp)
je 0x17ca2
testq %rbp, %rbp
je 0x1628b
movq 0x48(%r15), %rcx
movzbl %r13b, %edx
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movl $0x1, %r8d
movq %rbx, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x50(%rsp), %rdi
movq 0x60(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x50(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x58(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x16274
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1628b
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xf0(%rsp)
je 0x17dc2
movq 0x38(%r15), %rcx
movzbl %r13b, %edx
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movl $0x1, %r8d
movq %rbx, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
jmp 0x17d6b
movq %r13, %rdi
callq 0xe96a
movl %eax, %ebp
movq %r15, %rdi
callq 0xe96a
cmpl %eax, %ebp
jle 0x16519
leaq 0x50(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x88(%rsp), %rdi
leaq 0x38(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x38(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x50(%rsp), %rdi
leaq 0x68(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x68(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x38(%rsp), %rdi
leaq 0x20(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x20(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x68(%rsp), %rdi
leaq 0xd8(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
movq 0x28(%r13), %rsi
movq %r13, %rax
movq 0x38(%r13), %r13
movq 0x48(%rax), %rbp
movq 0x58(%rax), %rax
movq %rax, 0xa8(%rsp)
movzbl 0xa4(%rsp), %eax
movl %eax, 0xf0(%rsp)
movzbl 0x84(%rsp), %ebx
testq %rsi, %rsi
je 0x16431
leaq 0x20(%rsp), %rdi
movl 0xf0(%rsp), %edx
movq %r15, %rcx
movl %ebx, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x88(%rsp), %rdi
movq 0x98(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x88(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x90(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x1641a
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x16431
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpb $0x0, 0xa4(%rsp)
je 0x17ec4
testq %rbp, %rbp
je 0x164d5
movq 0x138(%rsp), %rax
movq 0x48(%rax), %rsi
leaq 0x20(%rsp), %rdi
movl $0x1, %edx
movq %r15, %rcx
movl %ebx, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x50(%rsp), %rdi
movq 0x60(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x50(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x58(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x164be
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x164d5
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
testq %r13, %r13
movq 0x138(%rsp), %r13
je 0x17fe2
movq 0x38(%r13), %rsi
leaq 0x20(%rsp), %rdi
movl $0x1, %edx
movq %r15, %rcx
movl %ebx, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
jmp 0x17f8b
movq 0x28(%r13), %rax
movq %rax, 0xa8(%rsp)
movq 0x38(%r13), %rax
movq %rax, 0xc8(%rsp)
movq 0x48(%r13), %rax
movq %rax, 0xd0(%rsp)
movq 0x58(%r13), %rbp
movq 0x28(%r15), %rax
movq %rax, 0xf0(%rsp)
movq 0x38(%r15), %rax
movq %rax, 0xb8(%rsp)
movq 0x48(%r15), %rax
movq %rax, 0xc0(%rsp)
movq 0x58(%r15), %rax
movq %rax, 0xb0(%rsp)
leaq 0x50(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x88(%rsp), %rdi
leaq 0x38(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x38(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x50(%rsp), %rdi
leaq 0x68(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x68(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x38(%rsp), %rdi
leaq 0x20(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x20(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x68(%rsp), %rdi
leaq 0xd8(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0xd8(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x20(%rsp), %rdi
leaq 0x118(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x118(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0xd8(%rsp), %rdi
leaq 0x100(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
leaq 0x100(%rsp), %rdx
movq $0x0, (%rdx)
leaq 0x118(%rsp), %rdi
movq %rsp, %rcx
movq %rbx, %rsi
callq 0x20fca
movq %rsp, %rdx
movq $0x0, (%rdx)
leaq 0x100(%rsp), %rdi
leaq 0x137(%rsp), %rcx
movq %rbx, %rsi
callq 0x20fca
movl 0xa4(%rsp), %eax
orb 0x84(%rsp), %al
jne 0x16b96
cmpq $0x0, 0xf0(%rsp)
sete %al
cmpq $0x0, 0xa8(%rsp)
sete %cl
orb %al, %cl
jne 0x1673c
movq 0x28(%r13), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x88(%rsp), %rdi
movq 0x98(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x88(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x90(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16726
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1673c
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
sete %al
cmpq $0x0, 0xd0(%rsp)
sete %cl
orb %al, %cl
jne 0x167d6
movq 0x48(%r13), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x50(%rsp), %rdi
movq 0x60(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x50(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x58(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x167c0
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x167d6
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xf0(%rsp)
sete %al
cmpq $0x0, 0xc8(%rsp)
sete %cl
orb %al, %cl
jne 0x16870
movq 0x38(%r13), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x38(%rsp), %rdi
movq 0x48(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x38(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x40(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1685a
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16870
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
sete %al
testq %rbp, %rbp
sete %cl
orb %al, %cl
jne 0x16904
movq 0x58(%r13), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x68(%rsp), %rdi
movq 0x78(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x68(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x70(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x168ee
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16904
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xa8(%rsp)
sete %cl
orb %al, %cl
jne 0x1699e
movq 0x28(%r13), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
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 0x16988
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1699e
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb0(%rsp)
sete %al
cmpq $0x0, 0xd0(%rsp)
sete %cl
orb %al, %cl
jne 0x16a48
movq 0x48(%r13), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0xd8(%rsp), %rdi
movq 0xe8(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xd8(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xe0(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16a32
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16a48
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xc8(%rsp)
sete %cl
orb %al, %cl
jne 0x16af2
movq 0x38(%r13), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x118(%rsp), %rdi
movq 0x128(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x118(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x120(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16adc
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16af2
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb0(%rsp)
sete %al
testq %rbp, %rbp
sete %cl
orb %al, %cl
jne 0x16b96
movq 0x58(%r13), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x100(%rsp), %rdi
movq 0x110(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x100(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x108(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16b80
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16b96
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movl 0x84(%rsp), %eax
movl %eax, %ebx
xorb $0x1, %bl
movl %ebx, %eax
orb 0xa4(%rsp), %al
jne 0x170dd
cmpq $0x0, 0xf0(%rsp)
sete %al
cmpq $0x0, 0xa8(%rsp)
sete %cl
orb %al, %cl
jne 0x16c5e
movq 0x28(%r13), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x88(%rsp), %rdi
movq 0x98(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x88(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x90(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16c48
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16c5e
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xd0(%rsp)
sete %cl
orb %al, %cl
jne 0x16cff
movq 0x48(%r13), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x50(%rsp), %rdi
movq 0x60(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x50(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x58(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16ce9
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16cff
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xf0(%rsp)
sete %al
cmpq $0x0, 0xc8(%rsp)
sete %cl
orb %al, %cl
jne 0x16da0
movq 0x38(%r13), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x38(%rsp), %rdi
movq 0x48(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x38(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x40(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16d8a
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16da0
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
testq %rbp, %rbp
sete %cl
orb %al, %cl
jne 0x16e3b
movq 0x58(%r13), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x68(%rsp), %rdi
movq 0x78(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x68(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x70(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16e25
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16e3b
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
sete %al
cmpq $0x0, 0xa8(%rsp)
sete %cl
orb %al, %cl
jne 0x16edc
movq 0x28(%r13), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
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 0x16ec6
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16edc
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb0(%rsp)
sete %al
cmpq $0x0, 0xd0(%rsp)
sete %cl
orb %al, %cl
jne 0x16f89
movq 0x48(%r13), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0xd8(%rsp), %rdi
movq 0xe8(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xd8(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xe0(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x16f73
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x16f89
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
sete %al
cmpq $0x0, 0xc8(%rsp)
sete %cl
orb %al, %cl
jne 0x17036
movq 0x38(%r13), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x118(%rsp), %rdi
movq 0x128(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x118(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x120(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17020
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x17036
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb0(%rsp)
sete %al
testq %rbp, %rbp
sete %cl
orb %al, %cl
jne 0x170dd
movq 0x58(%r13), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
xorl %edx, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x100(%rsp), %rdi
movq 0x110(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x100(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x108(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x170c7
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x170dd
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq %rbp, 0x160(%rsp)
movl 0xa4(%rsp), %eax
xorb $0x1, %al
movl %eax, %ebp
movl 0x84(%rsp), %ecx
orb %al, %cl
jne 0x17637
cmpq $0x0, 0xf0(%rsp)
sete %al
cmpq $0x0, 0xa8(%rsp)
sete %cl
orb %al, %cl
jne 0x171ac
movq 0x28(%r13), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x88(%rsp), %rdi
movq 0x98(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x88(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x90(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17196
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x171ac
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
sete %al
cmpq $0x0, 0xc8(%rsp)
sete %cl
orb %al, %cl
jne 0x1724d
movq 0x38(%r13), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x50(%rsp), %rdi
movq 0x60(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x50(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x58(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17237
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1724d
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xf0(%rsp)
sete %al
cmpq $0x0, 0xd0(%rsp)
sete %cl
orb %al, %cl
jne 0x172ee
movq 0x48(%r13), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x38(%rsp), %rdi
movq 0x48(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x38(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x40(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x172d8
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x172ee
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x1738f
movq 0x58(%r13), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x68(%rsp), %rdi
movq 0x78(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x68(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x70(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17379
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1738f
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xa8(%rsp)
sete %cl
orb %al, %cl
jne 0x17430
movq 0x28(%r13), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
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 0x1741a
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x17430
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb0(%rsp)
sete %al
cmpq $0x0, 0xc8(%rsp)
sete %cl
orb %al, %cl
jne 0x174dd
movq 0x38(%r13), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0xd8(%rsp), %rdi
movq 0xe8(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xd8(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xe0(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x174c7
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x174dd
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xd0(%rsp)
sete %cl
orb %al, %cl
jne 0x1758a
movq 0x48(%r13), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x118(%rsp), %rdi
movq 0x128(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x118(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x120(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17574
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1758a
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb0(%rsp)
sete %al
cmpq $0x0, 0x160(%rsp)
sete %cl
orb %al, %cl
jne 0x17637
movq 0x58(%r13), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
xorl %r8d, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x100(%rsp), %rdi
movq 0x110(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x100(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x108(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17621
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x17637
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
orb %bl, %bpl
jne 0x17b8c
cmpq $0x0, 0xf0(%rsp)
sete %al
cmpq $0x0, 0xa8(%rsp)
sete %cl
orb %al, %cl
movq 0x160(%rsp), %rbx
jne 0x176f8
movq 0x28(%r13), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x88(%rsp), %rdi
movq 0x98(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x88(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x90(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x176e2
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x176f8
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
cmpq $0x0, 0xc8(%rsp)
sete %cl
orb %al, %cl
jne 0x1779c
movq 0x38(%r13), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x50(%rsp), %rdi
movq 0x60(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x50(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x58(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17786
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1779c
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xf0(%rsp)
sete %al
cmpq $0x0, 0xd0(%rsp)
sete %cl
orb %al, %cl
jne 0x17840
movq 0x48(%r13), %rsi
movq 0x28(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x38(%rsp), %rdi
movq 0x48(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x38(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x40(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x1782a
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x17840
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xc0(%rsp)
sete %al
testq %rbx, %rbx
sete %cl
orb %al, %cl
jne 0x178de
movq 0x58(%r13), %rsi
movq 0x48(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x68(%rsp), %rdi
movq 0x78(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x68(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x70(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x178c8
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x178de
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
sete %al
cmpq $0x0, 0xa8(%rsp)
sete %cl
orb %al, %cl
jne 0x17982
movq 0x28(%r13), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
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 0x1796c
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x17982
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb0(%rsp)
sete %al
cmpq $0x0, 0xc8(%rsp)
sete %cl
orb %al, %cl
jne 0x17a32
movq 0x38(%r13), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0xd8(%rsp), %rdi
movq 0xe8(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0xd8(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0xe0(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17a1c
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x17a32
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb8(%rsp)
sete %al
cmpq $0x0, 0xd0(%rsp)
sete %cl
orb %al, %cl
jne 0x17ae2
movq 0x48(%r13), %rsi
movq 0x38(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x118(%rsp), %rdi
movq 0x128(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x118(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x120(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17acc
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x17ae2
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xb0(%rsp)
sete %al
testq %rbx, %rbx
sete %cl
orb %al, %cl
jne 0x17b8c
movq 0x58(%r13), %rsi
movq 0x58(%r15), %rcx
movq %rsp, %rdi
movl $0x1, %edx
movl $0x1, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x100(%rsp), %rdi
movq 0x110(%rsp), %rsi
movq (%rsp), %rax
movq %rax, 0x100(%rsp)
movupd 0x8(%rsp), %xmm0
movupd %xmm0, 0x108(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, (%rsp)
movq $0x0, 0x10(%rsp)
testq %rdi, %rdi
je 0x17b76
subq %rdi, %rsi
callq 0x21d0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x17b8c
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
xorpd %xmm0, %xmm0
movq %rsp, %rdi
movapd %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
leaq 0x88(%rsp), %rsi
callq 0x212d4
movq %rsp, %rdi
leaq 0x50(%rsp), %rsi
callq 0x212d4
movq %rsp, %rdi
leaq 0x38(%rsp), %rsi
callq 0x212d4
movq %rsp, %rdi
leaq 0x68(%rsp), %rsi
callq 0x212d4
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x212d4
movq %rsp, %rdi
leaq 0xd8(%rsp), %rsi
callq 0x212d4
movq %rsp, %rdi
leaq 0x118(%rsp), %rsi
callq 0x212d4
movq %rsp, %rdi
leaq 0x100(%rsp), %rsi
callq 0x212d4
leaq 0x140(%rsp), %rsi
movq %rsp, %rdx
movq %r14, %rdi
callq 0x21048
movq %rsp, %rdi
callq 0x2111e
movq 0x100(%rsp), %rdi
testq %rdi, %rdi
je 0x17c48
movq 0x110(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0x17c65
movq 0x128(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x17c82
movq 0xe8(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x180e6
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
jmp 0x180e6
cmpq $0x0, 0xf0(%rsp)
je 0x17d35
movq 0x38(%r15), %rcx
movzbl %r13b, %edx
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
xorl %r8d, %r8d
movq %rbx, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x50(%rsp), %rdi
movq 0x60(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x50(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x58(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x17d1e
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x17d35
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
testq %rbp, %rbp
je 0x17dc2
movq 0x48(%r15), %rcx
movzbl %r13b, %edx
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
xorl %r8d, %r8d
movq %rbx, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x38(%rsp), %rdi
movq 0x48(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x38(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x40(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x17dab
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x17dc2
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xa8(%rsp)
je 0x17e5b
movq 0x58(%r15), %rcx
movzbl %r13b, %edx
movzbl 0x84(%rsp), %r8d
leaq 0x20(%rsp), %rdi
movq %r12, %rsi
movq %rbx, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x68(%rsp), %rdi
movq 0x78(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x68(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x70(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x17e44
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x17e5b
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
xorpd %xmm0, %xmm0
leaq 0x20(%rsp), %rdi
movapd %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
leaq 0x88(%rsp), %rsi
callq 0x212d4
leaq 0x20(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x212d4
leaq 0x20(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0x212d4
leaq 0x20(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x212d4
leaq 0x140(%rsp), %rsi
leaq 0x20(%rsp), %rdx
movq %r14, %rdi
callq 0x21048
jmp 0x180dc
testq %r13, %r13
movq 0x138(%rsp), %r13
je 0x17f57
movq 0x38(%r13), %rsi
leaq 0x20(%rsp), %rdi
xorl %edx, %edx
movq %r15, %rcx
movl %ebx, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x50(%rsp), %rdi
movq 0x60(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x50(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x58(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x17f40
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x17f57
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
testq %rbp, %rbp
je 0x17fe2
movq 0x48(%r13), %rsi
leaq 0x20(%rsp), %rdi
xorl %edx, %edx
movq %r15, %rcx
movl %ebx, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x38(%rsp), %rdi
movq 0x48(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x38(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x40(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x17fcb
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x17fe2
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
cmpq $0x0, 0xa8(%rsp)
je 0x18078
movq 0x58(%r13), %rsi
leaq 0x20(%rsp), %rdi
movl 0xf0(%rsp), %edx
movq %r15, %rcx
movl %ebx, %r8d
movq %r12, %r9
pushq 0x1a8(%rsp)
pushq 0x1a8(%rsp)
callq 0x15e78
addq $0x10, %rsp
movq 0x68(%rsp), %rdi
movq 0x78(%rsp), %rsi
movq 0x20(%rsp), %rax
movq %rax, 0x68(%rsp)
movupd 0x28(%rsp), %xmm0
movupd %xmm0, 0x70(%rsp)
xorpd %xmm0, %xmm0
movapd %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
testq %rdi, %rdi
je 0x18061
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x18078
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
xorpd %xmm0, %xmm0
leaq 0x20(%rsp), %rdi
movapd %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
leaq 0x88(%rsp), %rsi
callq 0x212d4
leaq 0x20(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x212d4
leaq 0x20(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0x212d4
leaq 0x20(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x212d4
leaq 0x140(%rsp), %rsi
leaq 0x20(%rsp), %rdx
movq %r14, %rdi
callq 0x21048
leaq 0x20(%rsp), %rdi
callq 0x2111e
movq 0x68(%rsp), %rdi
testq %rdi, %rdi
je 0x180fd
movq 0x78(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x38(%rsp), %rdi
testq %rdi, %rdi
je 0x18114
movq 0x48(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x50(%rsp), %rdi
testq %rdi, %rdi
je 0x1812b
movq 0x60(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x88(%rsp), %rdi
testq %rdi, %rdi
je 0x18148
movq 0x98(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x140(%rsp), %rdi
testq %rdi, %rdi
je 0x18165
movq 0x150(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq %r14, %rax
addq $0x168, %rsp            # imm = 0x168
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
jmp 0x181b8
movq %rax, %rbx
jmp 0x18240
jmp 0x18206
jmp 0x18206
jmp 0x18206
jmp 0x18206
jmp 0x18206
jmp 0x18206
jmp 0x18206
jmp 0x18206
jmp 0x18206
jmp 0x18206
movq %rax, %rbx
jmp 0x1825d
movq %rax, %rbx
jmp 0x1827a
movq %rax, %rbx
jmp 0x18297
jmp 0x18206
jmp 0x1820e
jmp 0x1820e
jmp 0x18216
jmp 0x18216
jmp 0x1821e
jmp 0x1821e
jmp 0x18321
jmp 0x18321
jmp 0x18206
movq %rax, %rbx
jmp 0x182bd
movq %rax, %rbx
jmp 0x182d4
movq %rax, %rbx
jmp 0x182eb
movq %rax, %rbx
jmp 0x18302
jmp 0x18321
jmp 0x182b0
jmp 0x18321
movq %rax, %rbx
movq %rsp, %rdi
callq 0x2111e
movq 0x100(%rsp), %rdi
testq %rdi, %rdi
je 0x1825d
movq 0x110(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0x1827a
movq 0x128(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x18297
movq 0xe8(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x182bd
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
jmp 0x182bd
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x2111e
movq 0x68(%rsp), %rdi
testq %rdi, %rdi
je 0x182d4
movq 0x78(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x38(%rsp), %rdi
testq %rdi, %rdi
je 0x182eb
movq 0x48(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x50(%rsp), %rdi
testq %rdi, %rdi
je 0x18302
movq 0x60(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq 0x88(%rsp), %rdi
testq %rdi, %rdi
je 0x18324
movq 0x98(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
jmp 0x18324
movq %rax, %rbx
movq 0x140(%rsp), %rdi
testq %rdi, %rdi
je 0x18341
movq 0x150(%rsp), %rsi
subq %rdi, %rsi
callq 0x21d0
movq %rbx, %rdi
callq 0x22b0
nop