// File: /workspace/github_cpp_makefile_star2_O3/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::parser<double>::expression_generator<double>::synthesize_covovoc_expression0::process(exprtk::parser<double>::expression_generator<double>&, exprtk::details::operator_type const&, exprtk::details::expression_node<double>* (&) [2])
static inline expression_node_ptr process(expression_generator<Type>& expr_gen,
                                                      const details::operator_type& operation,
                                                      expression_node_ptr (&branch)[2])
            {
               // (c0 o0 v0) o1 (v1 o2 c1)
               const details::cov_base_node<Type>* cov = static_cast<details::cov_base_node<Type>*>(branch[0]);
               const details::voc_base_node<Type>* voc = static_cast<details::voc_base_node<Type>*>(branch[1]);
               const Type  c0 = cov->c();
               const Type& v0 = cov->v();
               const Type  c1 = voc->c();
               const Type& v1 = voc->v();
               const details::operator_type o0 = cov->operation();
               const details::operator_type o1 = operation;
               const details::operator_type o2 = voc->operation();

               details::free_node(*(expr_gen.node_allocator_),branch[0]);
               details::free_node(*(expr_gen.node_allocator_),branch[1]);

               expression_node_ptr result = error_node();

               if (expr_gen.parser_->settings_.strength_reduction_enabled())
               {
                  // (c0 + v0) + (v1 + c1) --> (covov) (c0 + c1) + v0 + v1
                  if ((details::e_add == o0) && (details::e_add == o1) && (details::e_add == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "(t+t)+t", (c0 + c1), v0, v1, result);

                     exprtk_debug(("(c0 + v0) + (v1 + c1) --> (covov) (c0 + c1) + v0 + v1\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c0 + v0) - (v1 + c1) --> (covov) (c0 - c1) + v0 - v1
                  else if ((details::e_add == o0) && (details::e_sub == o1) && (details::e_add == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "(t+t)-t", (c0 - c1), v0, v1, result);

                     exprtk_debug(("(c0 + v0) - (v1 + c1) --> (covov) (c0 - c1) + v0 - v1\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c0 - v0) - (v1 - c1) --> (covov) (c0 + c1) - v0 - v1
                  else if ((details::e_sub == o0) && (details::e_sub == o1) && (details::e_sub == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "t-(t+t)", (c0 + c1), v0, v1, result);

                     exprtk_debug(("(c0 - v0) - (v1 - c1) --> (covov) (c0 + c1) - v0 - v1\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c0 * v0) * (v1 * c1) --> (covov) (c0 * c1) * v0 * v1
                  else if ((details::e_mul == o0) && (details::e_mul == o1) && (details::e_mul == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "(t*t)*t", (c0 * c1), v0, v1, result);

                     exprtk_debug(("(c0 * v0) * (v1 * c1) --> (covov) (c0 * c1) * v0 * v1\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c0 * v0) / (v1 * c1) --> (covov) (c0 / c1) * (v0 / v1)
                  else if ((details::e_mul == o0) && (details::e_div == o1) && (details::e_mul == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "(t*t)/t", (c0 / c1), v0, v1, result);

                     exprtk_debug(("(c0 * v0) / (v1 * c1) --> (covov) (c0 / c1) * (v0 / v1)\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c0 / v0) * (v1 / c1) --> (covov) (c0 / c1) * (v1 / v0)
                  else if ((details::e_div == o0) && (details::e_mul == o1) && (details::e_div == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "t*(t/t)", (c0 / c1), v1, v0, result);

                     exprtk_debug(("(c0 / v0) * (v1 / c1) --> (covov) (c0 / c1) * (v1 / v0)\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c0 / v0) / (v1 / c1) --> (covov) (c0 * c1) / (v0 * v1)
                  else if ((details::e_div == o0) && (details::e_div == o1) && (details::e_div == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "t/(t*t)", (c0 * c1), v0, v1, result);

                     exprtk_debug(("(c0 / v0) / (v1 / c1) --> (covov) (c0 * c1) / (v0 * v1)\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c0 * v0) / (v1 / c1) --> (covov) (c0 * c1) * (v0 / v1)
                  else if ((details::e_mul == o0) && (details::e_div == o1) && (details::e_div == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "(t*t)/t", (c0 * c1), v0, v1, result);

                     exprtk_debug(("(c0 * v0) / (v1 / c1) --> (covov) (c0 * c1) * (v0 / v1)\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c0 / v0) / (v1 * c1) --> (covov) (c0 / c1) / (v0 * v1)
                  else if ((details::e_div == o0) && (details::e_div == o1) && (details::e_mul == o2))
                  {
                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, "t/(t*t)", (c0 / c1), v0, v1, result);

                     exprtk_debug(("(c0 / v0) / (v1 * c1) --> (covov) (c0 / c1) / (v0 * v1)\n"));

                     return (synthesis_result) ? result : error_node();
                  }
                  // (c * v0) +/- (v1 * c) --> (covov) c * (v0 +/- v1)
                  else if (
                            (std::equal_to<T>()(c0,c1)) &&
                            (details::e_mul == o0)      &&
                            (details::e_mul == o2)      &&
                            (
                              (details::e_add == o1) ||
                              (details::e_sub == o1)
                            )
                          )
                  {
                     std::string specfunc;

                     switch (o1)
                     {
                        case details::e_add : specfunc = "t*(t+t)"; break;
                        case details::e_sub : specfunc = "t*(t-t)"; break;
                        default             : return error_node();
                     }

                     const bool synthesis_result =
                        synthesize_sf3ext_expression::
                           template compile<ctype, vtype, vtype>(expr_gen, specfunc, c0, v0, v1, result);

                     exprtk_debug(("(c * v0) +/- (v1 * c) --> (covov) c * (v0 +/- v1)\n"));

                     return (synthesis_result) ? result : error_node();
                  }
               }

               const bool synthesis_result =
                  synthesize_sf4ext_expression::template compile<T0, T1, T2, T3>
                     (expr_gen, id(expr_gen, o0, o1, o2), c0, v0, v1, c1, result);

               if (synthesis_result)
                  return result;

               binary_functor_t f0 = reinterpret_cast<binary_functor_t>(0);
               binary_functor_t f1 = reinterpret_cast<binary_functor_t>(0);
               binary_functor_t f2 = reinterpret_cast<binary_functor_t>(0);

               if (!expr_gen.valid_operator(o0,f0))
                  return error_node();
               else if (!expr_gen.valid_operator(o1,f1))
                  return error_node();
               else if (!expr_gen.valid_operator(o2,f2))
                  return error_node();
               else
                  return node_type::allocate(*(expr_gen.node_allocator_), c0, v0, v1, c1, f0, f1, f2);
            }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rdx, %r14
movq %rsi, %r12
movq %rdi, %r15
leaq 0x8(%rdx), %rbx
movq (%rdx), %r13
movq 0x8(%rdx), %rbp
movq (%r13), %rax
movq %r13, %rdi
callq *0x40(%rax)
movsd %xmm0, 0x30(%rsp)
movq (%r13), %rax
movq %r13, %rdi
callq *0x48(%rax)
movq %rax, 0x40(%rsp)
movq (%rbp), %rax
movq %rbp, %rdi
callq *0x40(%rax)
movsd %xmm0, 0x48(%rsp)
movq (%rbp), %rax
movq %rbp, %rdi
callq *0x48(%rax)
movq %rax, 0x38(%rsp)
movq (%r13), %rax
movq %r13, %rdi
callq *0x38(%rax)
movl %eax, %r13d
movl (%r12), %r12d
movq (%rbp), %rax
movq %rbp, %rdi
callq *0x38(%rax)
movl %eax, %ebp
movq (%r14), %rdi
testq %rdi, %rdi
je 0x1ff14f
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x11, %eax
je 0x1ff14f
movq (%r14), %rdi
testq %rdi, %rdi
je 0x1ff147
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x12, %eax
je 0x1ff14f
movq %r14, %rdi
callq 0x1ea63e
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x1ff17d
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x11, %eax
je 0x1ff17d
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x1ff175
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x12, %eax
je 0x1ff17d
movq %rbx, %rdi
callq 0x1ea63e
movq $0x0, 0x8(%rsp)
movq 0x68(%r15), %rax
cmpb $0x1, 0xd6(%rax)
jne 0x1ff6dc
movl %r13d, %eax
xorl $0x2, %eax
movl %r12d, %edx
xorl $0x2, %edx
orl %eax, %edx
movl %ebp, %ecx
xorl $0x2, %ecx
orl %ecx, %edx
jne 0x1ff239
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194dc5(%rip), %rsi    # 0x393f87
leaq 0x194dc5(%rip), %rdx    # 0x393f8e
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movq 0x58(%r15), %rdi
leaq 0x10(%rsp), %rsi
callq 0x2092ce
movq %rax, %rbx
movq 0x58(%r15), %r15
addq $0x8, %r15
cmpq %rax, %r15
je 0x1ff429
movl $0xfffffc18, %eax       # imm = 0xFFFFFC18
addl 0x48(%rbx), %eax
cmpl $0x1e, %eax
ja 0x1ff422
movl %eax, %eax
leaq 0x340079(%rip), %rcx    # 0x53f288
movq (%rcx,%rax,8), %r12
leaq 0x340166(%rip), %rcx    # 0x53f380
movq (%rcx,%rax,8), %r13
movl $0x38, %edi
callq 0x11e0f0
movsd 0x30(%rsp), %xmm0
addsd 0x48(%rsp), %xmm0
jmp 0x1ff2cb
movl %r12d, %edx
xorl $0x3, %edx
orl %edx, %eax
orl %ecx, %eax
jne 0x1ff2fa
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194d26(%rip), %rsi    # 0x393f7f
leaq 0x194d26(%rip), %rdx    # 0x393f86
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movq 0x58(%r15), %rdi
leaq 0x10(%rsp), %rsi
callq 0x2092ce
movq %rax, %rbx
movq 0x58(%r15), %r15
addq $0x8, %r15
cmpq %rax, %r15
je 0x1ff429
movl $0xfffffc18, %eax       # imm = 0xFFFFFC18
addl 0x48(%rbx), %eax
cmpl $0x1e, %eax
ja 0x1ff422
movl %eax, %eax
leaq 0x33ffe2(%rip), %rcx    # 0x53f288
movq (%rcx,%rax,8), %r12
leaq 0x3400cf(%rip), %rcx    # 0x53f380
movq (%rcx,%rax,8), %r13
movl $0x38, %edi
callq 0x11e0f0
movsd 0x30(%rsp), %xmm0
subsd 0x48(%rsp), %xmm0
movb $0x0, 0x10(%rax)
movq $0x0, 0x18(%rax)
movq %r12, (%rax)
movq %r13, 0x8(%rax)
movsd %xmm0, 0x20(%rax)
movq 0x40(%rsp), %rcx
movq %rcx, 0x28(%rax)
movq 0x38(%rsp), %rcx
movq %rcx, 0x30(%rax)
jmp 0x1ff424
movl %r13d, %eax
xorl $0x3, %eax
orl %edx, %eax
movl %ebp, %ecx
xorl $0x3, %ecx
orl %eax, %ecx
jne 0x1ff386
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194d0c(%rip), %rsi    # 0x394027
leaq 0x194d0c(%rip), %rdx    # 0x39402e
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movq 0x58(%r15), %rdi
leaq 0x10(%rsp), %rsi
callq 0x2092ce
movq %rax, %rbx
movq 0x58(%r15), %r15
addq $0x8, %r15
cmpq %rax, %r15
je 0x1ff429
movl $0xfffffc18, %eax       # imm = 0xFFFFFC18
addl 0x48(%rbx), %eax
cmpl $0x1e, %eax
ja 0x1ff422
movl %eax, %eax
leaq 0x33ff20(%rip), %rcx    # 0x53f288
movq (%rcx,%rax,8), %r12
leaq 0x34000d(%rip), %rcx    # 0x53f380
movq (%rcx,%rax,8), %r13
movl $0x38, %edi
callq 0x11e0f0
jmp 0x1ff228
movl %r13d, %eax
xorl $0x4, %eax
movl %r12d, %esi
xorl $0x4, %esi
movl %eax, %edx
orl %esi, %edx
movl %ebp, %ecx
xorl $0x4, %ecx
orl %ecx, %edx
jne 0x1ff44e
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194c0c(%rip), %rsi    # 0x393fbf
leaq 0x194c0c(%rip), %rdx    # 0x393fc6
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movq 0x58(%r15), %rdi
leaq 0x10(%rsp), %rsi
callq 0x2092ce
movq %rax, %rbx
movq 0x58(%r15), %r15
addq $0x8, %r15
cmpq %rax, %r15
je 0x1ff429
movl $0xfffffc18, %eax       # imm = 0xFFFFFC18
addl 0x48(%rbx), %eax
cmpl $0x1e, %eax
ja 0x1ff422
movl %eax, %eax
leaq 0x33fe90(%rip), %rcx    # 0x53f288
movq (%rcx,%rax,8), %r12
leaq 0x33ff7d(%rip), %rcx    # 0x53f380
movq (%rcx,%rax,8), %r13
movl $0x38, %edi
callq 0x11e0f0
movsd 0x30(%rsp), %xmm0
mulsd 0x48(%rsp), %xmm0
jmp 0x1ff2cb
xorl %eax, %eax
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x1ff440
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x11e0c0
cmpq %rbx, %r15
jne 0x1ff75e
jmp 0x1ff7fb
movl %r12d, %edi
xorl $0x5, %edi
movl %eax, %r8d
orl %edi, %r8d
sete %dl
orl %ecx, %r8d
jne 0x1ff4b0
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194b45(%rip), %rsi    # 0x393fb7
leaq 0x194b45(%rip), %rdx    # 0x393fbe
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movsd 0x30(%rsp), %xmm0
divsd 0x48(%rsp), %xmm0
leaq 0x10(%rsp), %rsi
leaq 0x8(%rsp), %r8
movq %r15, %rdi
movq 0x40(%rsp), %rdx
movq 0x38(%rsp), %rcx
callq 0x20e656
jmp 0x1ff620
movl %r13d, %r8d
xorl $0x5, %r8d
orl %r8d, %esi
movl %ebp, %r9d
xorl $0x5, %r9d
orl %r9d, %esi
jne 0x1ff514
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194b49(%rip), %rsi    # 0x39401f
leaq 0x194b49(%rip), %rdx    # 0x394026
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movsd 0x30(%rsp), %xmm0
divsd 0x48(%rsp), %xmm0
leaq 0x10(%rsp), %rsi
leaq 0x8(%rsp), %r8
movq %r15, %rdi
movq 0x38(%rsp), %rdx
movq 0x40(%rsp), %rcx
callq 0x20e656
jmp 0x1ff620
orl %edi, %r8d
sete %sil
orl %r9d, %r8d
jne 0x1ff56e
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194ac7(%rip), %rsi    # 0x393ff7
leaq 0x194ac7(%rip), %rdx    # 0x393ffe
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movsd 0x30(%rsp), %xmm0
mulsd 0x48(%rsp), %xmm0
leaq 0x10(%rsp), %rsi
leaq 0x8(%rsp), %r8
movq %r15, %rdi
movq 0x40(%rsp), %rdx
movq 0x38(%rsp), %rcx
callq 0x20e656
jmp 0x1ff620
cmpl $0x5, %ebp
setne %dil
xorb $0x1, %dl
orb %dil, %dl
jne 0x1ff5c8
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194a2a(%rip), %rsi    # 0x393fb7
leaq 0x194a2a(%rip), %rdx    # 0x393fbe
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movsd 0x30(%rsp), %xmm0
mulsd 0x48(%rsp), %xmm0
leaq 0x10(%rsp), %rsi
leaq 0x8(%rsp), %r8
movq %r15, %rdi
movq 0x40(%rsp), %rdx
movq 0x38(%rsp), %rcx
callq 0x20e656
jmp 0x1ff620
cmpl $0x4, %ebp
setne %dl
xorb $0x1, %sil
orb %dl, %sil
jne 0x1ff646
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x194a10(%rip), %rsi    # 0x393ff7
leaq 0x194a10(%rip), %rdx    # 0x393ffe
leaq 0x10(%rsp), %rdi
callq 0x1e4740
movsd 0x30(%rsp), %xmm0
divsd 0x48(%rsp), %xmm0
leaq 0x10(%rsp), %rsi
leaq 0x8(%rsp), %r8
movq %r15, %rdi
movq 0x40(%rsp), %rdx
movq 0x38(%rsp), %rcx
callq 0x20e656
movl %eax, %ebx
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x1ff639
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x11e0c0
testb %bl, %bl
jne 0x1ff75e
jmp 0x1ff7fb
movsd 0x30(%rsp), %xmm0
ucomisd 0x48(%rsp), %xmm0
setnp %dl
sete %sil
andb %dl, %sil
orl %ecx, %eax
movl %r12d, %ecx
andl $-0x2, %ecx
xorl $0x2, %ecx
orl %eax, %ecx
sete %al
andb %sil, %al
cmpb $0x1, %al
jne 0x1ff6dc
cmpl $0x2, %r12d
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
movq $0x0, -0x8(%r14)
movb $0x0, (%r14)
leaq 0x194974(%rip), %rax    # 0x394007
leaq 0x194975(%rip), %rsi    # 0x39400f
cmoveq %rax, %rsi
leaq 0x10(%rsp), %rdi
callq 0x11e210
leaq 0x10(%rsp), %rsi
leaq 0x8(%rsp), %r8
movq %r15, %rdi
movsd 0x30(%rsp), %xmm0
movq 0x40(%rsp), %rdx
movq 0x38(%rsp), %rcx
callq 0x20e656
testb %al, %al
je 0x1ff87a
movq 0x8(%rsp), %r15
jmp 0x1ff87d
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
movq %r15, %rsi
movl %r13d, %edx
movl %r12d, %ecx
movl %ebp, %r8d
callq 0x22e3c8
movq 0x60(%r15), %rdi
movq %rbx, %rsi
callq 0x214ed4
movq %rax, %rbx
movq 0x60(%r15), %r14
addq $0x8, %r14
cmpq %rax, %r14
je 0x1ff73e
movl 0x48(%rbx), %eax
leaq 0x54(%rsp), %rsi
movl %eax, (%rsi)
movq %r15, %rdi
movsd 0x30(%rsp), %xmm0
movq 0x40(%rsp), %rdx
movq 0x38(%rsp), %rcx
movsd 0x48(%rsp), %xmm1
callq 0x22e730
movq %rax, 0x8(%rsp)
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1ff759
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x11e0c0
cmpq %rbx, %r14
je 0x1ff768
movq 0x8(%rsp), %r15
jmp 0x1ff7fe
movq 0x48(%r15), %rax
movq 0x10(%rax), %rcx
testq %rcx, %rcx
je 0x1ff7fb
addq $0x8, %rax
movq %rcx, %rsi
movq %rax, %rdx
xorl %edi, %edi
cmpl %r13d, 0x20(%rsi)
setl %dil
cmovgeq %rsi, %rdx
movq 0x10(%rsi,%rdi,8), %rsi
testq %rsi, %rsi
jne 0x1ff783
cmpq %rax, %rdx
je 0x1ff7fb
cmpl 0x20(%rdx), %r13d
jl 0x1ff7fb
movq 0x28(%rdx), %rbx
movq %rcx, %rsi
movq %rax, %rdx
xorl %edi, %edi
cmpl %r12d, 0x20(%rsi)
setl %dil
cmovgeq %rsi, %rdx
movq 0x10(%rsi,%rdi,8), %rsi
testq %rsi, %rsi
jne 0x1ff7b0
cmpq %rax, %rdx
je 0x1ff7fb
cmpl 0x20(%rdx), %r12d
jl 0x1ff7fb
movq 0x28(%rdx), %r14
movq %rax, %rdx
xorl %esi, %esi
cmpl %ebp, 0x20(%rcx)
setl %sil
cmovgeq %rcx, %rdx
movq 0x10(%rcx,%rsi,8), %rcx
testq %rcx, %rcx
jne 0x1ff7da
cmpq %rax, %rdx
je 0x1ff7fb
cmpl 0x20(%rdx), %ebp
jge 0x1ff810
xorl %r15d, %r15d
movq %r15, %rax
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x28(%rdx), %r12
movl $0x58, %edi
callq 0x11e0f0
movq %rax, %r15
movb $0x0, 0x10(%rax)
movq $0x0, 0x18(%rax)
leaq 0x302e6c(%rip), %rax    # 0x5026a0
movq %rax, (%r15)
leaq 0x302eb2(%rip), %rax    # 0x5026f0
movq %rax, 0x8(%r15)
movsd 0x30(%rsp), %xmm0
movsd %xmm0, 0x20(%r15)
movq 0x40(%rsp), %rax
movq %rax, 0x28(%r15)
movq 0x38(%rsp), %rax
movq %rax, 0x30(%r15)
movsd 0x48(%rsp), %xmm0
movsd %xmm0, 0x38(%r15)
movq %rbx, 0x40(%r15)
movq %r14, 0x48(%r15)
movq %r12, 0x50(%r15)
jmp 0x1ff7fe
xorl %r15d, %r15d
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x1ff7fe
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x11e0c0
jmp 0x1ff7fe
jmp 0x1ff8c6
jmp 0x1ff8c6
jmp 0x1ff8c6
jmp 0x1ff8c1
jmp 0x1ff8c6
jmp 0x1ff8c1
jmp 0x1ff8c6
jmp 0x1ff8c1
jmp 0x1ff8c6
jmp 0x1ff8c1
jmp 0x1ff8c6
jmp 0x1ff8c1
jmp 0x1ff8c1
jmp 0x1ff8c6
jmp 0x1ff8c1
jmp 0x1ff8c6
jmp 0x1ff8c1
jmp 0x1ff8c6
movq %rax, %rbx
jmp 0x1ff8f3
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
jne 0x1ff8e6
jmp 0x1ff8f3
movq %rax, %rbx
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1ff8f3
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x11e0c0
movq %rbx, %rdi
callq 0x11e330
nop