// File: /workspace/github_cpp_makefile_star2_O1/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::parser<double>::expression_generator<double>::operator()(exprtk::details::operator_type const&, exprtk::details::expression_node<double>* (&) [2])
inline expression_node_ptr operator() (const details::operator_type& operation, expression_node_ptr (&branch)[2])
         {
            if ((0 == branch[0]) || (0 == branch[1]))
            {
               parser_->set_error(parser_error::make_error(
                  parser_error::e_syntax,
                  parser_->current_state().token,
                  "ERR249 - Invalid branches received for operator '" + details::to_str(operation) + "'",
                  exprtk_error_location));

               return error_node();
            }
            else if (is_invalid_string_op(operation,branch))
            {
               parser_->set_error(parser_error::make_error(
                  parser_error::e_syntax,
                  parser_->current_state().token,
                  "ERR250 - Invalid branch pair for string operator '" + details::to_str(operation) + "'",
                  exprtk_error_location));

               return error_node();
            }
            else if (is_invalid_assignment_op(operation,branch))
            {
               parser_->set_error(parser_error::make_error(
                  parser_error::e_syntax,
                  parser_->current_state().token,
                  "ERR251 - Invalid branch pair for assignment operator '" + details::to_str(operation) + "'",
                  exprtk_error_location));

               return error_node();
            }
            else if (is_invalid_break_continue_op(branch))
            {
               parser_->set_error(parser_error::make_error(
                  parser_error::e_syntax,
                  parser_->current_state().token,
                  "ERR252 - Invalid branch pair for break/continue operator '" + details::to_str(operation) + "'",
                  exprtk_error_location));

               return error_node();
            }
            else if (details::e_assign == operation)
            {
               return synthesize_assignment_expression(operation, branch);
            }
            else if (details::e_swap == operation)
            {
               return synthesize_swap_expression(branch);
            }
            else if (is_assignment_operation(operation))
            {
               return synthesize_assignment_operation_expression(operation, branch);
            }
            else if (is_vector_eqineq_logic_operation(operation, branch))
            {
               return synthesize_veceqineqlogic_operation_expression(operation, branch);
            }
            else if (is_vector_arithmetic_operation(operation, branch))
            {
               return synthesize_vecarithmetic_operation_expression(operation, branch);
            }
            else if (is_shortcircuit_expression(operation))
            {
               return synthesize_shortcircuit_expression(operation, branch);
            }
            else if (is_string_operation(operation, branch))
            {
               return synthesize_string_expression(operation, branch);
            }
            else if (is_null_present(branch))
            {
               return synthesize_null_expression(operation, branch);
            }
            #ifndef exprtk_disable_cardinal_pow_optimisation
            else if (is_constpow_operation(operation, branch))
            {
               return cardinal_pow_optimisation(branch);
            }
            #endif

            expression_node_ptr result = error_node();

            #ifndef exprtk_disable_enhanced_features
            if (synthesize_expression(operation, branch, result))
            {
               return result;
            }
            else
            #endif

            {
               /*
                  Possible reductions:
                  1. c o cob -> cob
                  2. cob o c -> cob
                  3. c o boc -> boc
                  4. boc o c -> boc
               */
               result = error_node();

               if (cocob_optimisable(operation, branch))
               {
                  result = synthesize_cocob_expression::process((*this), operation, branch);
               }
               else if (coboc_optimisable(operation, branch) && (0 == result))
               {
                  result = synthesize_coboc_expression::process((*this), operation, branch);
               }

               if (result)
                  return result;
            }

            if (uvouv_optimisable(operation, branch))
            {
               return synthesize_uvouv_expression(operation, branch);
            }
            else if (vob_optimisable(operation, branch))
            {
               return synthesize_vob_expression::process((*this), operation, branch);
            }
            else if (bov_optimisable(operation, branch))
            {
               return synthesize_bov_expression::process((*this), operation, branch);
            }
            else if (cob_optimisable(operation, branch))
            {
               return synthesize_cob_expression::process((*this), operation, branch);
            }
            else if (boc_optimisable(operation, branch))
            {
               return synthesize_boc_expression::process((*this), operation, branch);
            }
            #ifndef exprtk_disable_enhanced_features
            else if (cov_optimisable(operation, branch))
            {
               return synthesize_cov_expression::process((*this), operation, branch);
            }
            #endif
            else if (binext_optimisable(operation, branch))
            {
               return synthesize_binary_ext_expression::process((*this), operation, branch);
            }
            else
               return synthesize_expression<binary_node_t,2>(operation, branch);
         }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x188, %rsp            # imm = 0x188
movq %rsi, %rbx
movq %rdi, %r15
cmpq $0x0, (%rdx)
je 0x29b578
movq %rdx, %r14
cmpq $0x0, 0x8(%rdx)
je 0x29b578
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b443c
testb %al, %al
je 0x29b5d9
movq 0x68(%r15), %r14
movq 0x5d8(%r14), %r15
cmpq %r15, 0x5d0(%r14)
je 0x29b9d4
movl -0x38(%r15), %eax
leaq 0xb8(%rsp), %rdi
movl %eax, -0x10(%rdi)
movq -0x40(%r15), %rax
movq %rax, -0x18(%rdi)
movl -0x30(%r15), %eax
movl %eax, -0x8(%rdi)
leaq 0xc8(%rsp), %r12
movq %r12, -0x10(%r12)
movq -0x28(%r15), %rsi
movq -0x20(%r15), %rdx
addq %rsi, %rdx
callq 0x1eda34
movq -0x8(%r15), %rax
movq %rax, 0x10(%r12)
jmp 0x29ba06
movq 0x68(%r15), %r14
movq 0x5d8(%r14), %r15
cmpq %r15, 0x5d0(%r14)
je 0x29b650
movl -0x38(%r15), %eax
leaq 0xb8(%rsp), %rdi
movl %eax, -0x10(%rdi)
movq -0x40(%r15), %rax
movq %rax, -0x18(%rdi)
movl -0x30(%r15), %eax
movl %eax, -0x8(%rdi)
leaq 0xc8(%rsp), %r12
movq %r12, -0x10(%r12)
movq -0x28(%r15), %rsi
movq -0x20(%r15), %rdx
addq %rsi, %rdx
callq 0x1eda34
movq -0x8(%r15), %rax
movq %rax, 0x10(%r12)
jmp 0x29b682
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b4578
testb %al, %al
je 0x29b90d
movq 0x68(%r15), %r14
movq 0x5d8(%r14), %r15
cmpq %r15, 0x5d0(%r14)
je 0x29bc91
movl -0x38(%r15), %eax
leaq 0xb8(%rsp), %rdi
movl %eax, -0x10(%rdi)
movq -0x40(%r15), %rax
movq %rax, -0x18(%rdi)
movl -0x30(%r15), %eax
movl %eax, -0x8(%rdi)
leaq 0xc8(%rsp), %r12
movq %r12, -0x10(%r12)
movq -0x28(%r15), %rsi
movq -0x20(%r15), %rdx
addq %rsi, %rdx
callq 0x1eda34
movq -0x8(%r15), %rax
movq %rax, 0x10(%r12)
jmp 0x29bcc3
leaq 0xc8(%rsp), %rax
xorps %xmm0, %xmm0
movaps %xmm0, -0x18(%rax)
movaps %xmm0, -0x8(%rax)
movaps %xmm0, 0x8(%rax)
movaps %xmm0, -0x28(%rax)
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq $-0x1, 0x10(%rax)
movl (%rbx), %esi
leaq 0x80(%rsp), %rdi
callq 0x272e3e
leaq 0x12296c(%rip), %rcx    # 0x3be004
leaq 0x80(%rsp), %rdi
movl $0x31, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x70(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29b6d6
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x29b6dc
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
leaq 0x60(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x12493f(%rip), %rsi    # 0x3c003e
callq 0x120340
leaq 0x10(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29b72a
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x29b730
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x30(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
movl $0x7e54, %ebp           # imm = 0x7E54
leaq 0x20(%rsp), %rbx
movslq %ebp, %rax
imulq $0x66666667, %rax, %r15 # imm = 0x66666667
movq %r15, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r15
addl %ecx, %r15d
leal (%r15,%r15), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %rbx, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r15d, %ebp
jae 0x29b762
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x29b7df
incq %rax
movb -0x1(%rax), %dl
movb (%rcx), %sil
movb %sil, -0x1(%rax)
movb %dl, (%rcx)
decq %rcx
leaq 0x1(%rax), %rdx
cmpq %rcx, %rax
movq %rdx, %rax
jb 0x29b7c4
leaq 0x121d0d(%rip), %rcx    # 0x3bd4f3
leaq 0x20(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x50(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r12, %rbp
cmpq %rcx, %rdx
je 0x29b824
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x29b82a
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq %rcx, -0x8(%rbx)
movb %cl, (%rbx)
movq $-0x1, 0x10(%rbx)
leaq 0x128(%rsp), %r15
movq %r15, -0x10(%r15)
movq %rcx, -0x8(%r15)
movb %cl, (%r15)
leaq 0x148(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
leaq 0x168(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r13)
movl $0x1, -0x58(%r13)
leaq 0xb8(%rsp), %rsi
movl -0x8(%rsi), %eax
movl %eax, -0x68(%r12)
callq 0x1205a0
leaq 0x118(%rsp), %rdi
movq 0xd8(%rsp), %rax
movq %rax, -0x10(%rdi)
movq %rsp, %rsi
callq 0x1205a0
leaq 0x138(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x1205a0
addq $0x308, %r14            # imm = 0x308
leaq 0xe0(%rsp), %rsi
movq %r14, %rdi
callq 0x26b154
jmp 0x29bf49
movq (%r14), %rdi
testq %rdi, %rdi
je 0x29b922
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x95, %eax
je 0x29b96b
movq 0x8(%r14), %rdi
testq %rdi, %rdi
je 0x29b938
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x95, %eax
je 0x29b96b
movq (%r14), %rdi
testq %rdi, %rdi
je 0x29b94d
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x96, %eax
je 0x29b96b
movq 0x8(%r14), %rdi
testq %rdi, %rdi
je 0x29c46a
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x96, %eax
jne 0x29c46a
movq 0x68(%r15), %r14
movq 0x5d8(%r14), %r12
leaq 0xc8(%rsp), %rcx
cmpq %r12, 0x5d0(%r14)
je 0x29c080
movl -0x38(%r12), %eax
leaq 0xb8(%rsp), %r15
movl %eax, -0x10(%r15)
movq -0x40(%r12), %rax
movq %rax, -0x18(%r15)
movl -0x30(%r12), %eax
movl %eax, -0x8(%r15)
movq %rcx, (%r15)
movq -0x28(%r12), %rsi
movq -0x20(%r12), %rdx
addq %rsi, %rdx
movq %r15, %rdi
callq 0x1eda34
movq -0x8(%r12), %rax
movq %rax, 0x20(%r15)
jmp 0x29c0cb
leaq 0xc8(%rsp), %rax
xorps %xmm0, %xmm0
movaps %xmm0, -0x18(%rax)
movaps %xmm0, -0x8(%rax)
movaps %xmm0, 0x8(%rax)
movaps %xmm0, -0x28(%rax)
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq $-0x1, 0x10(%rax)
movl (%rbx), %esi
leaq 0x80(%rsp), %rdi
callq 0x272e3e
leaq 0x12261a(%rip), %rcx    # 0x3be036
leaq 0x80(%rsp), %rdi
movl $0x32, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x70(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29ba5a
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x29ba60
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
leaq 0x60(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x1245bb(%rip), %rsi    # 0x3c003e
callq 0x120340
leaq 0x10(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29baae
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x29bab4
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x30(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
movl $0x7e5e, %ebp           # imm = 0x7E5E
leaq 0x20(%rsp), %rbx
movslq %ebp, %rax
imulq $0x66666667, %rax, %r15 # imm = 0x66666667
movq %r15, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r15
addl %ecx, %r15d
leal (%r15,%r15), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %rbx, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r15d, %ebp
jae 0x29bae6
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x29bb63
incq %rax
movb -0x1(%rax), %dl
movb (%rcx), %sil
movb %sil, -0x1(%rax)
movb %dl, (%rcx)
decq %rcx
leaq 0x1(%rax), %rdx
cmpq %rcx, %rax
movq %rdx, %rax
jb 0x29bb48
leaq 0x121989(%rip), %rcx    # 0x3bd4f3
leaq 0x20(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x50(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r12, %rbp
cmpq %rcx, %rdx
je 0x29bba8
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x29bbae
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq %rcx, -0x8(%rbx)
movb %cl, (%rbx)
movq $-0x1, 0x10(%rbx)
leaq 0x128(%rsp), %r15
movq %r15, -0x10(%r15)
movq %rcx, -0x8(%r15)
movb %cl, (%r15)
leaq 0x148(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
leaq 0x168(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r13)
movl $0x1, -0x58(%r13)
leaq 0xb8(%rsp), %rsi
movl -0x8(%rsi), %eax
movl %eax, -0x68(%r12)
callq 0x1205a0
leaq 0x118(%rsp), %rdi
movq 0xd8(%rsp), %rax
movq %rax, -0x10(%rdi)
movq %rsp, %rsi
callq 0x1205a0
leaq 0x138(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x1205a0
addq $0x308, %r14            # imm = 0x308
leaq 0xe0(%rsp), %rsi
movq %r14, %rdi
callq 0x26b154
jmp 0x29bf49
leaq 0xc8(%rsp), %rax
xorps %xmm0, %xmm0
movaps %xmm0, -0x18(%rax)
movaps %xmm0, -0x8(%rax)
movaps %xmm0, 0x8(%rax)
movaps %xmm0, -0x28(%rax)
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq $-0x1, 0x10(%rax)
movl (%rbx), %esi
leaq 0x80(%rsp), %rdi
callq 0x272e3e
leaq 0x122390(%rip), %rcx    # 0x3be069
leaq 0x80(%rsp), %rdi
movl $0x36, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x70(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29bd17
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x29bd1d
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
leaq 0x60(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x1242fe(%rip), %rsi    # 0x3c003e
callq 0x120340
leaq 0x10(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29bd6b
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x29bd71
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x30(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
movl $0x7e68, %ebp           # imm = 0x7E68
leaq 0x20(%rsp), %rbx
movslq %ebp, %rax
imulq $0x66666667, %rax, %r15 # imm = 0x66666667
movq %r15, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r15
addl %ecx, %r15d
leal (%r15,%r15), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %rbx, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r15d, %ebp
jae 0x29bda3
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x29be20
incq %rax
movb -0x1(%rax), %dl
movb (%rcx), %sil
movb %sil, -0x1(%rax)
movb %dl, (%rcx)
decq %rcx
leaq 0x1(%rax), %rdx
cmpq %rcx, %rax
movq %rdx, %rax
jb 0x29be05
leaq 0x1216cc(%rip), %rcx    # 0x3bd4f3
leaq 0x20(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x50(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r12, %rbp
cmpq %rcx, %rdx
je 0x29be65
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x29be6b
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq %rcx, -0x8(%rbx)
movb %cl, (%rbx)
movq $-0x1, 0x10(%rbx)
leaq 0x128(%rsp), %r15
movq %r15, -0x10(%r15)
movq %rcx, -0x8(%r15)
movb %cl, (%r15)
leaq 0x148(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
leaq 0x168(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r13)
movl $0x1, -0x58(%r13)
leaq 0xb8(%rsp), %rsi
movl -0x8(%rsi), %eax
movl %eax, -0x68(%r12)
callq 0x1205a0
leaq 0x118(%rsp), %rdi
movq 0xd8(%rsp), %rax
movq %rax, -0x10(%rdi)
movq %rsp, %rsi
callq 0x1205a0
leaq 0x138(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x1205a0
addq $0x308, %r14            # imm = 0x308
leaq 0xe0(%rsp), %rsi
movq %r14, %rdi
callq 0x26b154
movq 0x158(%rsp), %rdi
cmpq %r13, %rdi
je 0x29bf66
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x138(%rsp), %rdi
cmpq %r12, %rdi
movq %rbp, %r12
je 0x29bf86
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x118(%rsp), %rdi
cmpq %r15, %rdi
leaq 0x70(%rsp), %r14
leaq 0x10(%rsp), %rbp
je 0x29bfad
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe8(%rsp), %rdi
cmpq %rbx, %rdi
je 0x29bfca
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x29bfe6
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x29bffd
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x29c013
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x29c02a
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
leaq 0x90(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x29c04b
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x1200c0
leaq 0xc8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x29c06c
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x1200c0
xorl %eax, %eax
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorps %xmm0, %xmm0
movaps %xmm0, 0xb0(%rsp)
movaps %xmm0, 0xc0(%rsp)
movaps %xmm0, 0xd0(%rsp)
movaps %xmm0, 0xa0(%rsp)
movq %rcx, 0xb8(%rsp)
movq $0x0, 0xc0(%rsp)
movb $0x0, 0xc8(%rsp)
movq $-0x1, 0xd8(%rsp)
movl (%rbx), %esi
leaq 0x80(%rsp), %rdi
callq 0x272e3e
leaq 0x121fbf(%rip), %rcx    # 0x3be0a0
leaq 0x80(%rsp), %rdi
movl $0x3a, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x70(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29c11f
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x29c125
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
leaq 0x60(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x123ef6(%rip), %rsi    # 0x3c003e
callq 0x120340
leaq 0x10(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29c173
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x29c179
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x30(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
movl $0x7e72, %ebp           # imm = 0x7E72
leaq 0x20(%rsp), %rbx
movslq %ebp, %rax
imulq $0x66666667, %rax, %r15 # imm = 0x66666667
movq %r15, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r15
addl %ecx, %r15d
leal (%r15,%r15), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %rbx, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r15d, %ebp
jae 0x29c1ab
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x29c228
incq %rax
movb -0x1(%rax), %dl
movb (%rcx), %sil
movb %sil, -0x1(%rax)
movb %dl, (%rcx)
decq %rcx
leaq 0x1(%rax), %rdx
cmpq %rcx, %rax
movq %rdx, %rax
jb 0x29c20d
leaq 0x1212c4(%rip), %rcx    # 0x3bd4f3
leaq 0x20(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x50(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x29c26a
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x29c270
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
movq $-0x1, 0x10(%r12)
leaq 0x128(%rsp), %r15
movq %r15, -0x10(%r15)
movq %rcx, -0x8(%r15)
movb %cl, (%r15)
leaq 0x148(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
leaq 0x168(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movb %cl, (%rbp)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%rbp)
movl $0x1, -0x58(%rbp)
leaq 0xb8(%rsp), %rsi
movl -0x8(%rsi), %eax
movl %eax, -0x68(%r13)
callq 0x1205a0
leaq 0x118(%rsp), %rdi
movq 0xd8(%rsp), %rax
movq %rax, -0x10(%rdi)
movq %rsp, %rsi
callq 0x1205a0
leaq 0x138(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x1205a0
addq $0x308, %r14            # imm = 0x308
leaq 0xe0(%rsp), %rsi
movq %r14, %rdi
callq 0x26b154
movq 0x158(%rsp), %rdi
cmpq %rbp, %rdi
je 0x29c36a
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x138(%rsp), %rdi
cmpq %r13, %rdi
je 0x29c387
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x118(%rsp), %rdi
cmpq %r15, %rdi
leaq 0xc8(%rsp), %r14
je 0x29c3ac
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe8(%rsp), %rdi
cmpq %r12, %rdi
je 0x29c3c9
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
leaq 0x70(%rsp), %rbx
leaq 0x10(%rsp), %r15
leaq 0x30(%rsp), %r12
je 0x29c3ef
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x29c406
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq (%rsp), %rdi
cmpq %r15, %rdi
je 0x29c41c
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %rbx, %rdi
je 0x29c433
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
leaq 0x90(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x29c454
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xb8(%rsp), %rdi
cmpq %r14, %rdi
jne 0x29c05c
jmp 0x29c06c
movl (%rbx), %eax
cmpl $0x5c, %eax
je 0x29c495
cmpl $0x51, %eax
jne 0x29c4b1
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b46f0
movq %r15, %rdi
movq %r14, %rsi
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b4dcc
addl $-0x52, %eax
cmpl $0x4, %eax
ja 0x29c4ed
movl $0xd0, %edi
addq 0x68(%r15), %rdi
movq %rbx, %rsi
callq 0x2c391c
testb %al, %al
je 0x29c4ed
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b579a
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b6810
testb %al, %al
je 0x29c51e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b687c
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b72c6
testb %al, %al
je 0x29c54f
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b732e
movl (%rbx), %eax
andl $-0x2, %eax
cmpl $0x1e, %eax
jne 0x29c578
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b7c5e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b7eb0
testb %al, %al
je 0x29c5a9
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b7f56
movq %r15, %rdi
movq %r14, %rsi
callq 0x2b84bc
testb %al, %al
je 0x29c5d7
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b84f2
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b883c
testb %al, %al
je 0x29c605
movq %r15, %rdi
movq %r14, %rsi
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2b894a
leaq 0xe0(%rsp), %rcx
movq $0x0, (%rcx)
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b8a4e
testb %al, %al
je 0x29c633
movq 0xe0(%rsp), %rax
jmp 0x29c06e
movq $0x0, 0xe0(%rsp)
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b8b0e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
testb %al, %al
je 0x29c661
callq 0x2b8bc6
jmp 0x29c683
callq 0x2b92ec
testb %al, %al
je 0x29c68b
cmpq $0x0, 0xe0(%rsp)
jne 0x29c68b
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b93a4
movq %rax, 0xe0(%rsp)
movq 0xe0(%rsp), %rax
testq %rax, %rax
jne 0x29c06e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b98cc
testb %al, %al
je 0x29c6c1
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b993c
jmp 0x29c06e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b9bec
testb %al, %al
je 0x29c6e6
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2b9c36
jmp 0x29c06e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2ba0a6
testb %al, %al
je 0x29c70b
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2ba0ec
jmp 0x29c06e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2ba55e
testb %al, %al
je 0x29c730
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2ba5d2
jmp 0x29c06e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2baabe
testb %al, %al
je 0x29c755
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2bab32
jmp 0x29c06e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2bb014
testb %al, %al
je 0x29c77a
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x200c16
jmp 0x29c06e
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x2bb074
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
testb %al, %al
je 0x29c79f
callq 0x2bb0e8
jmp 0x29c06e
callq 0x2bb6e6
jmp 0x29c06e
jmp 0x29c7dc
movq %rax, %r14
jmp 0x29c803
movq %rax, %r14
jmp 0x29c8ae
movq %rax, %r14
jmp 0x29c8ca
movq %rax, %r14
jmp 0x29c8eb
jmp 0x29c83a
jmp 0x29c818
jmp 0x29c820
jmp 0x29c828
jmp 0x29c830
jmp 0x29c83a
jmp 0x29c818
jmp 0x29c820
jmp 0x29c828
jmp 0x29c830
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
callq 0x266b98
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
je 0x29c803
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
jne 0x29c886
jmp 0x29c893
jmp 0x29c83a
jmp 0x29c83a
movq %r12, %rbp
movq %rax, %r14
jmp 0x29c866
movq %rax, %r14
jmp 0x29c939
movq %rax, %r14
jmp 0x29c955
movq %rax, %r14
jmp 0x29c976
jmp 0x29c83a
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
callq 0x266b98
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x29c866
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x20(%rsp), %rdi
cmpq %rbp, %rdi
jne 0x29c911
jmp 0x29c91e
movq %rax, %r14
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x29c893
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x29c8ae
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x29c8ca
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
leaq 0x90(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x29c8eb
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xb8(%rsp), %rdi
leaq 0xc8(%rsp), %rax
jmp 0x29c982
jmp 0x29c904
jmp 0x29c904
movq %rax, %r14
movq 0x20(%rsp), %rdi
cmpq %r12, %rdi
je 0x29c91e
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x29c939
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x29c955
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
leaq 0x90(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x29c976
movq 0x90(%rsp), %rsi
incq %rsi
callq 0x1200c0
leaq 0xc8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x29c997
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq %r14, %rdi
callq 0x120330
nop