// File: /workspace/github_cpp_makefile_star2_O1/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::parser<double>::parse_repeat_until_loop()
inline expression_node_ptr parse_repeat_until_loop()
      {
         // Parse: [repeat][{][expression][}][until][(][test expr][)]
         expression_node_ptr condition = error_node();
         expression_node_ptr branch    = error_node();
         next_token();

         std::vector<expression_node_ptr> arg_list;
         std::vector<bool> side_effect_list;

         scoped_vec_delete<expression_node_t> svd((*this), arg_list);

         brkcnt_list_.push_front(false);

         if (details::imatch(current_token().value,"until"))
         {
            next_token();
            branch = node_allocator_.allocate<details::null_node<T> >();
         }
         else
         {
            const token_t::token_type separator = token_t::e_eof;

            scope_handler sh(*this);

            scoped_bool_or_restorer sbr(state_.side_effect_present);

            scoped_inc_dec sid(state_.parsing_loop_stmt_count);

            for ( ; ; )
            {
               state_.side_effect_present = false;

               expression_node_ptr arg = parse_expression();

               if (0 == arg)
                  return error_node();
               else
               {
                  arg_list.push_back(arg);
                  side_effect_list.push_back(state_.side_effect_present);
               }

               if (details::imatch(current_token().value,"until"))
               {
                  next_token();
                  break;
               }

               const bool is_next_until = peek_token_is(token_t::e_symbol) &&
                                          peek_token_is("until");

               if (!token_is(separator) && is_next_until)
               {
                  set_error(make_error(
                     parser_error::e_syntax,
                     current_token(),
                     "ERR070 - Expected '" + token_t::to_str(separator) + "' in body of repeat until loop",
                     exprtk_error_location));

                  return error_node();
               }

               if (details::imatch(current_token().value,"until"))
               {
                  next_token();
                  break;
               }
            }

            branch = simplify(arg_list,side_effect_list);

            svd.delete_ptr = (0 == branch);

            if (svd.delete_ptr)
            {
               set_error(make_error(
                  parser_error::e_syntax,
                  current_token(),
                  "ERR071 - Failed to parse body of repeat until loop",
                  exprtk_error_location));

               return error_node();
            }
         }

         if (!token_is(token_t::e_lbracket))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR072 - Expected '(' before condition statement of repeat until loop",
               exprtk_error_location));

            free_node(node_allocator_, branch);
            return error_node();
         }
         else if (0 == (condition = parse_expression()))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR073 - Failed to parse condition for repeat until loop",
               exprtk_error_location));

            free_node(node_allocator_, branch);
            return error_node();
         }
         else if (!token_is(token_t::e_rbracket))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR074 - Expected ')' after condition of repeat until loop",
               exprtk_error_location));

            free_node(node_allocator_, branch   );
            free_node(node_allocator_, condition);

            return error_node();
         }

         expression_node_ptr result_node =
            expression_generator_
               .repeat_until_loop(
                  condition,
                  branch,
                  brkcnt_list_.front());

         if (0 == result_node)
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR075 - Failed to synthesize repeat until loop",
               exprtk_error_location));

            free_node(node_allocator_, condition);

            return error_node();
         }

         handle_brkcnt_scope_exit();

         if (result_node && result_node->valid())
         {
            return result_node;
         }

         set_error(make_error(
            parser_error::e_synthesis,
            current_token(),
            "ERR076 - Failed to synthesize 'valid' repeat until loop",
            exprtk_error_location));

         free_node(node_allocator_, result_node);

         return error_node();
      }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x228, %rsp            # imm = 0x228
movq %rdi, %r13
xorl %eax, %eax
movq %rax, 0x130(%rsp)
movq %rax, 0x80(%rsp)
movq 0x18(%rdi), %rbx
cmpq %rbx, 0x8(%rdi)
je 0x27c660
leaq 0x30(%rbx), %rax
movq %rax, 0x18(%r13)
jmp 0x27c664
leaq 0x28(%r13), %rbx
movl (%rbx), %eax
movl %eax, 0x70(%r13)
leaq 0x78(%r13), %rdi
leaq 0x8(%rbx), %rsi
movq %rdi, 0x58(%rsp)
callq 0x1205a0
movq 0x28(%rbx), %rax
movq %rax, 0x98(%r13)
xorl %eax, %eax
leaq 0x1b0(%rsp), %rcx
movq %rax, 0x10(%rcx)
xorps %xmm0, %xmm0
movaps %xmm0, (%rcx)
movq %rax, 0x168(%rsp)
movl %eax, 0x170(%rsp)
movq %rax, 0x178(%rsp)
movl %eax, 0x180(%rsp)
movq %rax, 0x188(%rsp)
movb $0x1, 0x210(%rsp)
movq %r13, 0x218(%rsp)
movq %rcx, 0x220(%rsp)
leaq 0x358(%r13), %rbx
movb $0x0, 0x88(%rsp)
movq 0x368(%r13), %rax
cmpq 0x370(%r13), %rax
je 0x27c708
movb $0x0, -0x1(%rax)
decq %rax
movq %rax, 0x368(%r13)
jmp 0x27c718
leaq 0x88(%rsp), %rsi
movq %rbx, %rdi
callq 0x342a68
leaq 0x98(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x13a421(%rip), %rsi    # 0x3b6b4c
leaq 0x13a41f(%rip), %rdx    # 0x3b6b51
leaq 0x88(%rsp), %rdi
callq 0x1eabb8
movq %rbx, 0x1e0(%rsp)
movq 0x80(%r13), %r14
cmpq 0x90(%rsp), %r14
jne 0x27c7be
testq %r14, %r14
sete %bpl
je 0x27c7cc
movq 0x58(%rsp), %rax
movq (%rax), %r15
movq 0x88(%rsp), %r12
movsbl (%r15), %edi
callq 0x120450
movl %eax, %ebp
movsbl (%r12), %edi
callq 0x120450
cmpl %eax, %ebp
jne 0x27c7c2
movl $0x1, %ecx
movq %rcx, %rbx
cmpq %rcx, %r14
je 0x27c7b5
movsbl (%r15,%rbx), %edi
callq 0x120450
movl %eax, %ebp
movsbl (%r12,%rbx), %edi
callq 0x120450
leaq 0x1(%rbx), %rcx
cmpl %eax, %ebp
je 0x27c78f
cmpq %r14, %rbx
setae %bpl
jmp 0x27c7c4
xorl %ebp, %ebp
jmp 0x27c7cc
xorl %ebp, %ebp
leaq 0x98(%rsp), %r15
movq 0x88(%rsp), %rdi
cmpq %r15, %rdi
je 0x27c7e9
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x1200c0
testb %bpl, %bpl
movq %r13, 0x10(%rsp)
je 0x27c80e
movq 0x18(%r13), %rbx
cmpq %rbx, 0x8(%r13)
je 0x27d19d
leaq 0x30(%rbx), %rax
movq %rax, 0x18(%r13)
jmp 0x27d1a1
movq %r13, 0x140(%rsp)
incq 0x3b0(%r13)
movb 0x3ac(%r13), %al
movb %al, 0xf(%rsp)
incq 0x3c0(%r13)
leaq 0x28(%r13), %rax
movq %rax, 0x138(%rsp)
leaq 0x70(%rsp), %r12
leaq 0x308(%r13), %rax
movq %rax, 0x1d8(%rsp)
movb $0x0, 0x3ac(%r13)
movq %r13, %rdi
xorl %esi, %esi
callq 0x26cc52
movq %rax, 0x208(%rsp)
movl $0x1, %ebp
testq %rax, %rax
je 0x27d02f
movq 0x1b8(%rsp), %rsi
cmpq 0x1c0(%rsp), %rsi
je 0x27c897
movq %rax, (%rsi)
addq $0x8, 0x1b8(%rsp)
jmp 0x27c8ac
leaq 0x1b0(%rsp), %rdi
leaq 0x208(%rsp), %rdx
callq 0x396592
movzbl 0x3ac(%r13), %esi
leaq 0x168(%rsp), %rdi
callq 0x2710e0
movq %r15, 0x88(%rsp)
leaq 0x88(%rsp), %rdi
leaq 0x13a274(%rip), %rsi    # 0x3b6b4c
leaq 0x13a272(%rip), %rdx    # 0x3b6b51
callq 0x1eabb8
movq 0x80(%r13), %r14
cmpq 0x90(%rsp), %r14
jne 0x27c961
testq %r14, %r14
sete %bpl
je 0x27c979
movq 0x58(%rsp), %rax
movq (%rax), %r12
movq 0x88(%rsp), %r13
movsbl (%r12), %edi
callq 0x120450
movl %eax, %r15d
movsbl (%r13), %edi
callq 0x120450
cmpl %eax, %r15d
jne 0x27c965
movl $0x1, %ecx
movq %rcx, %rbx
cmpq %rcx, %r14
je 0x27c958
movsbl (%r12,%rbx), %edi
callq 0x120450
movl %eax, %r15d
movsbl (%r13,%rbx), %edi
callq 0x120450
leaq 0x1(%rbx), %rcx
cmpl %eax, %r15d
je 0x27c92f
cmpq %r14, %rbx
setae %bpl
jmp 0x27c967
xorl %ebp, %ebp
jmp 0x27c979
xorl %ebp, %ebp
movq 0x10(%rsp), %r13
leaq 0x70(%rsp), %r12
leaq 0x98(%rsp), %r15
movq 0x88(%rsp), %rdi
cmpq %r15, %rdi
je 0x27c996
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x8(%r13), %rcx
movq 0x18(%r13), %rax
testb %bpl, %bpl
je 0x27c9e4
movq 0x138(%rsp), %rbx
cmpq %rax, %rcx
je 0x27c9bb
leaq 0x30(%rax), %rcx
movq %rcx, 0x18(%r13)
movq %rax, %rbx
movl (%rbx), %eax
movl %eax, 0x70(%r13)
leaq 0x8(%rbx), %rsi
movq 0x58(%rsp), %rdi
callq 0x1205a0
movq 0x28(%rbx), %rax
movq %rax, 0x98(%r13)
movl $0x2, %ebp
jmp 0x27d02f
cmpq %rax, %rcx
cmoveq 0x138(%rsp), %rax
movl (%rax), %r12d
cmpl $0x8, %r12d
jne 0x27cab8
leaq 0x1f8(%rsp), %rax
movq %rax, 0x1e8(%rsp)
leaq 0x1e8(%rsp), %rdi
leaq 0x13a130(%rip), %rsi    # 0x3b6b4c
leaq 0x13a12e(%rip), %rdx    # 0x3b6b51
callq 0x1eabb8
movq 0x18(%r13), %rax
cmpq %rax, 0x8(%r13)
cmoveq 0x138(%rsp), %rax
movq 0x10(%rax), %rbx
cmpq 0x1f0(%rsp), %rbx
jne 0x27cab8
testq %rbx, %rbx
sete %r15b
je 0x27cabb
movq 0x8(%rax), %rbp
movq 0x1e8(%rsp), %r13
movsbl (%rbp), %edi
callq 0x120450
movl %eax, %r15d
movsbl (%r13), %edi
callq 0x120450
cmpl %eax, %r15d
jne 0x27d03f
movq %rbx, 0x1d0(%rsp)
decq %rbx
xorl %r14d, %r14d
cmpq %r14, %rbx
je 0x27d0d8
movsbl 0x1(%rbp,%r14), %edi
callq 0x120450
movl %eax, %r15d
movsbl 0x1(%r13,%r14), %edi
callq 0x120450
incq %r14
cmpl %eax, %r15d
je 0x27ca89
jmp 0x27d0e0
xorl %r15d, %r15d
cmpl $0x8, %r12d
leaq 0x70(%rsp), %r12
jne 0x27caeb
movq 0x1e8(%rsp), %rdi
leaq 0x1f8(%rsp), %rax
cmpq %rax, %rdi
je 0x27caeb
movq 0x1f8(%rsp), %rsi
incq %rsi
callq 0x1200c0
movl 0x70(%r13), %ebp
cmpl $0x6, %ebp
jne 0x27cb30
movq 0x18(%r13), %rax
movq 0x138(%rsp), %rbx
cmpq %rax, 0x8(%r13)
je 0x27cb11
leaq 0x30(%rax), %rcx
movq %rcx, 0x18(%r13)
movq %rax, %rbx
movl (%rbx), %eax
movl %eax, 0x70(%r13)
leaq 0x8(%rbx), %rsi
movq 0x58(%rsp), %rdi
callq 0x1205a0
movq 0x28(%rbx), %rax
movq %rax, 0x98(%r13)
cmpl $0x6, %ebp
sete %al
xorb $0x1, %r15b
orb %al, %r15b
jne 0x27cbb2
leaq 0x48(%rsp), %rax
movq %rax, 0x38(%rsp)
movb $0x46, 0x2(%rax)
movw $0x4f45, (%rax)         # imm = 0x4F45
movq $0x3, 0x40(%rsp)
movb $0x0, 0x4b(%rsp)
movl $0x13, %r8d
leaq 0x38(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x142219(%rip), %rcx    # 0x3bed8f
callq 0x120110
leaq 0x28(%rsp), %rbx
leaq 0x98(%rsp), %r15
movq %rbx, 0x18(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x27cc6c
movq %rdx, 0x18(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x28(%rsp)
jmp 0x27cc72
leaq 0x98(%rsp), %r15
movq %r15, 0x88(%rsp)
leaq 0x88(%rsp), %rdi
leaq 0x139f7b(%rip), %rsi    # 0x3b6b4c
leaq 0x139f79(%rip), %rdx    # 0x3b6b51
callq 0x1eabb8
movq 0x80(%r13), %r14
cmpq 0x90(%rsp), %r14
jne 0x27cc65
testq %r14, %r14
sete %bpl
je 0x27d05b
movq 0x58(%rsp), %rax
movq (%rax), %r12
movq 0x88(%rsp), %r13
movsbl (%r12), %edi
callq 0x120450
movl %eax, %r15d
movsbl (%r13), %edi
callq 0x120450
cmpl %eax, %r15d
jne 0x27d047
movl $0x1, %ecx
movq %rcx, %rbx
cmpq %rcx, %r14
je 0x27cc59
movsbl (%r12,%rbx), %edi
callq 0x120450
movl %eax, %r15d
movsbl (%r13,%rbx), %edi
callq 0x120450
leaq 0x1(%rbx), %rcx
cmpl %eax, %r15d
je 0x27cc30
cmpq %r14, %rbx
setae %bpl
jmp 0x27d049
xorl %ebp, %ebp
jmp 0x27d05b
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x8(%rax), %rdx
movq %rdx, 0x20(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x18(%rsp), %rdi
leaq 0x14210d(%rip), %rsi    # 0x3beda3
callq 0x120340
movq %r12, 0x60(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x27ccbe
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x27ccc6
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
movq %rdx, 0x68(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x1a0(%rsp), %rax
movq %rax, 0x190(%rsp)
movq %rcx, 0x198(%rsp)
movb %cl, 0x1a0(%rsp)
movl $0x68b7, %ebp           # imm = 0x68B7
movslq %ebp, %rax
imulq $0x66666667, %rax, %r14 # imm = 0x66666667
movq %r14, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r14
addl %ecx, %r14d
leal (%r14,%r14), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
leaq 0x190(%rsp), %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r14d, %ebp
jae 0x27ccff
movq 0x190(%rsp), %rax
movq 0x198(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x27cd87
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 0x27cd6c
movl $0xb, %r8d
leaq 0x190(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x140753(%rip), %rcx    # 0x3bd4f3
callq 0x120110
leaq 0xa0(%rsp), %r14
movl $0x1, %ebp
leaq 0x158(%rsp), %rsi
movq %rsi, 0x148(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x27cde6
movq %rdx, 0x148(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x158(%rsp)
jmp 0x27cdec
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x150(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
movl %ecx, 0x88(%rsp)
movq %r14, 0x90(%rsp)
movq %rcx, 0x98(%rsp)
movb %cl, 0xa0(%rsp)
movq $-0x1, 0xb0(%rsp)
movl %ecx, 0xb8(%rsp)
leaq 0xd0(%rsp), %rax
movq %rax, 0xc0(%rsp)
movq %rcx, 0xc8(%rsp)
movb %cl, 0xd0(%rsp)
leaq 0xf0(%rsp), %rax
movq %rax, 0xe0(%rsp)
movq %rcx, 0xe8(%rsp)
movb %cl, 0xf0(%rsp)
leaq 0x110(%rsp), %rax
movq %rax, 0x100(%rsp)
movq %rcx, 0x108(%rsp)
movb %cl, 0x110(%rsp)
leaq 0x90(%rsp), %rdi
xorps %xmm0, %xmm0
movups %xmm0, 0x90(%rdi)
movl $0x1, 0xb8(%rsp)
movl 0x70(%r13), %eax
movl %eax, 0x88(%rsp)
movq 0x58(%rsp), %rsi
callq 0x1205a0
movq 0x98(%r13), %rax
movq %rax, 0xb0(%rsp)
leaq 0xc0(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1205a0
leaq 0xe0(%rsp), %rdi
leaq 0x148(%rsp), %rsi
callq 0x1205a0
movq 0x1d8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x26b154
movq 0x100(%rsp), %rdi
leaq 0x110(%rsp), %rax
cmpq %rax, %rdi
je 0x27cf34
movq 0x110(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe0(%rsp), %rdi
leaq 0xf0(%rsp), %rax
cmpq %rax, %rdi
je 0x27cf59
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xc0(%rsp), %rdi
leaq 0xd0(%rsp), %rax
cmpq %rax, %rdi
je 0x27cf7e
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
je 0x27cf9b
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x148(%rsp), %rdi
leaq 0x158(%rsp), %rax
cmpq %rax, %rdi
je 0x27cfc0
movq 0x158(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x190(%rsp), %rdi
leaq 0x1a0(%rsp), %rax
cmpq %rax, %rdi
je 0x27cfe5
movq 0x1a0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r12, %rdi
je 0x27cffc
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x18(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27d013
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x27d02f
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
xorl %r14d, %r14d
testl %ebp, %ebp
je 0x27c84f
jmp 0x27d0f6
xorl %r15d, %r15d
jmp 0x27d0ec
xorl %ebp, %ebp
movq 0x10(%rsp), %r13
leaq 0x70(%rsp), %r12
leaq 0x98(%rsp), %r15
movq 0x88(%rsp), %rdi
cmpq %r15, %rdi
je 0x27d078
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x1200c0
testb %bpl, %bpl
je 0x27d0ce
movq 0x18(%r13), %rax
movq 0x138(%rsp), %rbx
cmpq %rax, 0x8(%r13)
je 0x27d09a
leaq 0x30(%rax), %rcx
movq %rcx, 0x18(%r13)
movq %rax, %rbx
movl (%rbx), %eax
movl %eax, 0x70(%r13)
leaq 0x8(%rbx), %rsi
movq 0x58(%rsp), %rdi
callq 0x1205a0
movq 0x28(%rbx), %rax
movq %rax, 0x98(%r13)
movl $0x2, %ebp
xorl %r14d, %r14d
leaq 0x98(%rsp), %r15
jmp 0x27d032
xorl %ebp, %ebp
movb $0x1, %r14b
jmp 0x27d032
movq 0x1d0(%rsp), %r14
cmpq 0x1d0(%rsp), %r14
setae %r15b
movq 0x10(%rsp), %r13
jmp 0x27cabb
cmpl $0x2, %ebp
jne 0x27d163
leaq 0x1b0(%rsp), %rsi
leaq 0x168(%rsp), %rdx
movq %r13, %rdi
xorl %ecx, %ecx
callq 0x271208
movq %rax, 0x80(%rsp)
testq %rax, %rax
sete 0x210(%rsp)
je 0x27d587
decq 0x3c0(%r13)
movzbl 0xf(%rsp), %eax
cmpb $0x0, 0x3ac(%r13)
movl $0x1, %ecx
cmovel %eax, %ecx
movb %cl, 0x3ac(%r13)
leaq 0x140(%rsp), %rdi
callq 0x294306
jmp 0x27d1fd
decq 0x3c0(%r13)
movzbl 0xf(%rsp), %eax
cmpb $0x0, 0x3ac(%r13)
movl $0x1, %ecx
cmovel %eax, %ecx
movb %cl, 0x3ac(%r13)
leaq 0x140(%rsp), %rdi
callq 0x294306
testb %r14b, %r14b
jne 0x27d1fd
jmp 0x27df1f
leaq 0x28(%r13), %rbx
movl (%rbx), %eax
movl %eax, 0x70(%r13)
leaq 0x8(%rbx), %rsi
movq 0x58(%rsp), %rdi
callq 0x1205a0
movq 0x28(%rbx), %rax
movq %rax, 0x98(%r13)
movl $0x20, %edi
callq 0x1200f0
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rax)
movaps %xmm0, (%rax)
movb $0x0, 0x10(%rax)
movq $0x0, 0x18(%rax)
leaq 0x292f49(%rip), %rcx    # 0x510130
movq %rcx, (%rax)
leaq 0x292f87(%rip), %rcx    # 0x510178
movq %rcx, 0x8(%rax)
movq %rax, 0x80(%rsp)
movl 0x70(%r13), %ebp
cmpl $0x28, %ebp
jne 0x27d285
movq 0x18(%r13), %rbx
cmpq %rbx, 0x8(%r13)
je 0x27d21a
leaq 0x30(%rbx), %rax
movq %rax, 0x18(%r13)
jmp 0x27d21e
leaq 0x28(%r13), %rbx
movl (%rbx), %eax
movl %eax, 0x70(%r13)
leaq 0x8(%rbx), %rsi
movq 0x58(%rsp), %rdi
callq 0x1205a0
movq 0x28(%rbx), %rax
movq %rax, 0x98(%r13)
cmpl $0x28, %ebp
jne 0x27d285
movq %r13, %rdi
xorl %esi, %esi
callq 0x26cc52
movq %rax, 0x130(%rsp)
testq %rax, %rax
je 0x27d690
movl 0x70(%r13), %ebp
cmpl $0x29, %ebp
jne 0x27dc10
movq 0x18(%r13), %rbx
cmpq %rbx, 0x8(%r13)
je 0x27db75
leaq 0x30(%rbx), %rax
movq %rax, 0x18(%r13)
jmp 0x27db79
leaq 0x70(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x141b5f(%rip), %rsi    # 0x3bedf5
leaq 0x141b9d(%rip), %rdx    # 0x3bee3a
leaq 0x60(%rsp), %rdi
callq 0x1eabb8
leaq 0x48(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq $0x0, -0x8(%rbx)
movb $0x0, (%rbx)
movl $0x68d9, %ebp           # imm = 0x68D9
leaq 0x38(%rsp), %r15
movslq %ebp, %rax
imulq $0x66666667, %rax, %r14 # imm = 0x66666667
movq %r14, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r14
addl %ecx, %r14d
leal (%r14,%r14), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %r15, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r14d, %ebp
jae 0x27d2c5
movq 0x38(%rsp), %rax
movq 0x40(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x27d342
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 0x27d327
leaq 0x1401aa(%rip), %rcx    # 0x3bd4f3
leaq 0x38(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x28(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r12, %r15
cmpq %rcx, %rdx
je 0x27d387
movq %rdx, 0x18(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x28(%rsp)
jmp 0x27d38d
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x20(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x90(%rsp), %rdi
movl $0x0, -0x8(%rdi)
leaq 0xa0(%rsp), %r14
movq %r14, -0x10(%r14)
movq %rcx, -0x8(%r14)
movb %cl, (%r14)
movq $-0x1, 0x10(%r14)
leaq 0xd0(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movb %cl, (%rbp)
leaq 0xf0(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
leaq 0x110(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r13)
movl $0x1, -0x58(%r13)
movq 0x10(%rsp), %rax
movl 0x70(%rax), %eax
movl %eax, -0x68(%r12)
movq 0x58(%rsp), %rsi
callq 0x1205a0
leaq 0xc0(%rsp), %rdi
movq 0x10(%rsp), %rax
movq 0x98(%rax), %rax
movq %rax, -0x10(%rdi)
leaq 0x60(%rsp), %rsi
callq 0x1205a0
leaq 0xe0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1205a0
movq 0x10(%rsp), %rdi
addq $0x308, %rdi            # imm = 0x308
leaq 0x88(%rsp), %rsi
callq 0x26b154
movq 0x100(%rsp), %rdi
cmpq %r13, %rdi
je 0x27d49a
movq 0x110(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe0(%rsp), %rdi
cmpq %r12, %rdi
je 0x27d4b7
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xc0(%rsp), %rdi
cmpq %rbp, %rdi
je 0x27d4d4
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
je 0x27d4f1
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27d50d
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x38(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27d524
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r15, %rdi
je 0x27d53b
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x27df1f
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x11, %eax
je 0x27df1f
leaq 0x80(%rsp), %rbx
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x27d57a
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x12, %eax
je 0x27df1f
movq %rbx, %rdi
callq 0x1f1690
jmp 0x27df1f
leaq 0x60(%rsp), %rdi
movq %r12, (%rdi)
leaq 0x14182c(%rip), %rsi    # 0x3bedc2
leaq 0x141857(%rip), %rdx    # 0x3bedf4
callq 0x1eabb8
leaq 0x38(%rsp), %r15
leaq 0x48(%rsp), %rax
movq %rax, (%r15)
movq $0x0, 0x8(%r15)
movb $0x0, 0x10(%r15)
movl $0x68cd, %ebp           # imm = 0x68CD
movslq %ebp, %rax
imulq $0x66666667, %rax, %r14 # imm = 0x66666667
movq %r14, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r14
addl %ecx, %r14d
leal (%r14,%r14), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %r15, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r14d, %ebp
jae 0x27d5c1
movq 0x38(%rsp), %rax
movq 0x40(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x27d63e
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 0x27d623
leaq 0x13feae(%rip), %rcx    # 0x3bd4f3
leaq 0x38(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x28(%rsp), %rbx
leaq 0xa0(%rsp), %r14
movq %rbx, 0x18(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x27d799
movq %rdx, 0x18(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x28(%rsp)
jmp 0x27d79f
leaq 0x70(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x14179a(%rip), %rsi    # 0x3bee3b
leaq 0x1417cb(%rip), %rdx    # 0x3bee73
leaq 0x60(%rsp), %rdi
callq 0x1eabb8
leaq 0x48(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq $0x0, -0x8(%rbx)
movb $0x0, (%rbx)
movl $0x68e4, %ebp           # imm = 0x68E4
leaq 0x38(%rsp), %r15
movslq %ebp, %rax
imulq $0x66666667, %rax, %r14 # imm = 0x66666667
movq %r14, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r14
addl %ecx, %r14d
leal (%r14,%r14), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %r15, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r14d, %ebp
jae 0x27d6d0
movq 0x38(%rsp), %rax
movq 0x40(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x27d74d
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 0x27d732
leaq 0x13fd9f(%rip), %rcx    # 0x3bd4f3
leaq 0x38(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x28(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r12, %r15
cmpq %rcx, %rdx
je 0x27d982
movq %rdx, 0x18(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x28(%rsp)
jmp 0x27d988
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x8(%rax), %rdx
movq %rdx, 0x20(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x90(%rsp), %rdi
movl $0x0, -0x8(%rdi)
movq %r14, (%rdi)
movq %rcx, 0x8(%rdi)
movb %cl, 0x10(%rdi)
movq $-0x1, 0x20(%rdi)
leaq 0xd0(%rsp), %rax
movq %rax, 0x30(%rdi)
movq %rcx, 0x38(%rdi)
movb %cl, 0x40(%rdi)
leaq 0xf0(%rsp), %rax
movq %rax, 0x50(%rdi)
movq %rcx, 0x58(%rdi)
movb %cl, 0x60(%rdi)
leaq 0x110(%rsp), %rax
movq %rax, 0x70(%rdi)
movq %rcx, 0x78(%rdi)
movb %cl, 0x80(%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x90(%rdi)
movl $0x1, 0x28(%rdi)
movl 0x70(%r13), %eax
movl %eax, -0x8(%rdi)
movq 0x58(%rsp), %rsi
callq 0x1205a0
leaq 0xc0(%rsp), %rdi
movq 0x98(%r13), %rax
movq %rax, -0x10(%rdi)
leaq 0x60(%rsp), %rsi
callq 0x1205a0
leaq 0xe0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1205a0
leaq 0x88(%rsp), %rsi
movq 0x1d8(%rsp), %rdi
callq 0x26b154
movq 0x100(%rsp), %rdi
leaq 0x110(%rsp), %rax
cmpq %rax, %rdi
je 0x27d89c
movq 0x110(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe0(%rsp), %rdi
leaq 0xf0(%rsp), %rax
cmpq %rax, %rdi
je 0x27d8c1
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xc0(%rsp), %rdi
leaq 0xd0(%rsp), %rax
cmpq %rax, %rdi
je 0x27d8e6
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
je 0x27d903
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x18(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27d91a
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x27d936
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r12, %rdi
je 0x27d94d
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
decq 0x3c0(%r13)
movzbl 0xf(%rsp), %eax
cmpb $0x0, 0x3ac(%r13)
movl $0x1, %ecx
cmovel %eax, %ecx
movb %cl, 0x3ac(%r13)
leaq 0x140(%rsp), %rdi
callq 0x294306
jmp 0x27df1f
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x20(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x90(%rsp), %rdi
movl $0x0, -0x8(%rdi)
leaq 0xa0(%rsp), %r14
movq %r14, -0x10(%r14)
movq %rcx, -0x8(%r14)
movb %cl, (%r14)
movq $-0x1, 0x10(%r14)
leaq 0xd0(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movb %cl, (%rbp)
leaq 0xf0(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
leaq 0x110(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r13)
movl $0x1, -0x58(%r13)
movq 0x10(%rsp), %rax
movl 0x70(%rax), %eax
movl %eax, -0x68(%r12)
movq 0x58(%rsp), %rsi
callq 0x1205a0
leaq 0xc0(%rsp), %rdi
movq 0x10(%rsp), %rax
movq 0x98(%rax), %rax
movq %rax, -0x10(%rdi)
leaq 0x60(%rsp), %rsi
callq 0x1205a0
leaq 0xe0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1205a0
movq 0x10(%rsp), %rdi
addq $0x308, %rdi            # imm = 0x308
leaq 0x88(%rsp), %rsi
callq 0x26b154
movq 0x100(%rsp), %rdi
cmpq %r13, %rdi
je 0x27da95
movq 0x110(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe0(%rsp), %rdi
cmpq %r12, %rdi
je 0x27dab2
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xc0(%rsp), %rdi
cmpq %rbp, %rdi
je 0x27dacf
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
je 0x27daec
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27db08
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x38(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27db1f
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r15, %rdi
je 0x27db36
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x27df1f
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x11, %eax
je 0x27df1f
leaq 0x80(%rsp), %rbx
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x27d57a
movq (%rdi), %rax
callq *0x28(%rax)
jmp 0x27d571
leaq 0x28(%r13), %rbx
movl (%rbx), %eax
movl %eax, 0x70(%r13)
leaq 0x8(%rbx), %rsi
movq 0x58(%rsp), %rdi
callq 0x1205a0
movq 0x28(%rbx), %rax
movq %rax, 0x98(%r13)
cmpl $0x29, %ebp
jne 0x27dc10
leaq 0x220(%r13), %rdi
movq 0x368(%r13), %rax
movzbl (%rax), %ecx
leaq 0x130(%rsp), %r15
leaq 0x80(%rsp), %rdx
movq %r15, %rsi
callq 0x34319c
movq %rax, 0x148(%rsp)
testq %rax, %rax
movq 0x1e0(%rsp), %rdi
je 0x27e0cd
callq 0x343150
movq 0x148(%rsp), %rdi
testq %rdi, %rdi
je 0x27dfc4
movq (%rdi), %rax
callq *0x30(%rax)
testb %al, %al
je 0x27dfc4
movq 0x148(%rsp), %rbx
jmp 0x27df21
leaq 0x70(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x141253(%rip), %rsi    # 0x3bee74
leaq 0x141286(%rip), %rdx    # 0x3beeae
leaq 0x60(%rsp), %rdi
callq 0x1eabb8
leaq 0x48(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq $0x0, -0x8(%rbx)
movb $0x0, (%rbx)
movl $0x68ef, %ebp           # imm = 0x68EF
leaq 0x38(%rsp), %r15
movslq %ebp, %rax
imulq $0x66666667, %rax, %r14 # imm = 0x66666667
movq %r14, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r14
addl %ecx, %r14d
leal (%r14,%r14), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %r15, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r14d, %ebp
jae 0x27dc50
movq 0x38(%rsp), %rax
movq 0x40(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x27dccd
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 0x27dcb2
leaq 0x13f81f(%rip), %rcx    # 0x3bd4f3
leaq 0x38(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x28(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r12, %r15
cmpq %rcx, %rdx
je 0x27dd12
movq %rdx, 0x18(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x28(%rsp)
jmp 0x27dd18
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x20(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x90(%rsp), %rdi
movl $0x0, -0x8(%rdi)
leaq 0xa0(%rsp), %r14
movq %r14, -0x10(%r14)
movq %rcx, -0x8(%r14)
movb %cl, (%r14)
movq $-0x1, 0x10(%r14)
leaq 0xd0(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movb %cl, (%rbp)
leaq 0xf0(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
leaq 0x110(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r13)
movl $0x1, -0x58(%r13)
movq 0x10(%rsp), %rax
movl 0x70(%rax), %eax
movl %eax, -0x68(%r12)
movq 0x58(%rsp), %rsi
callq 0x1205a0
leaq 0xc0(%rsp), %rdi
movq 0x10(%rsp), %rax
movq 0x98(%rax), %rax
movq %rax, -0x10(%rdi)
leaq 0x60(%rsp), %rsi
callq 0x1205a0
leaq 0xe0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1205a0
movq 0x10(%rsp), %rdi
addq $0x308, %rdi            # imm = 0x308
leaq 0x88(%rsp), %rsi
callq 0x26b154
movq 0x100(%rsp), %rdi
cmpq %r13, %rdi
je 0x27de25
movq 0x110(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe0(%rsp), %rdi
cmpq %r12, %rdi
je 0x27de42
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xc0(%rsp), %rdi
cmpq %rbp, %rdi
je 0x27de5f
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
je 0x27de7c
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27de98
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x38(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27deaf
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r15, %rdi
je 0x27dec6
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x27df03
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x11, %eax
je 0x27df03
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x27def6
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x12, %eax
je 0x27df03
leaq 0x80(%rsp), %rdi
callq 0x1f1690
movq 0x130(%rsp), %rdi
testq %rdi, %rdi
je 0x27df1f
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x11, %eax
jne 0x27dfa5
xorl %ebx, %ebx
leaq 0x210(%rsp), %rdi
callq 0x2716ba
movq 0x168(%rsp), %rdi
testq %rdi, %rdi
je 0x27df73
movq 0x188(%rsp), %rsi
subq %rdi, %rsi
callq 0x1200c0
xorl %eax, %eax
movq %rax, 0x168(%rsp)
movl %eax, 0x170(%rsp)
movq %rax, 0x178(%rsp)
movl %eax, 0x180(%rsp)
movq %rax, 0x188(%rsp)
movq 0x1b0(%rsp), %rdi
testq %rdi, %rdi
je 0x27df90
movq 0x1c0(%rsp), %rsi
subq %rdi, %rsi
callq 0x1200c0
movq %rbx, %rax
addq $0x228, %rsp            # imm = 0x228
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x130(%rsp), %rbx
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x27d57a
movq (%rdi), %rax
callq *0x28(%rax)
jmp 0x27d571
leaq 0x70(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x140f0a(%rip), %rsi    # 0x3beedf
leaq 0x140f3a(%rip), %rdx    # 0x3bef16
leaq 0x60(%rsp), %rdi
callq 0x1eabb8
leaq 0x48(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq $0x0, -0x8(%rbx)
movb $0x0, (%rbx)
movl $0x6916, %ebp           # imm = 0x6916
leaq 0x38(%rsp), %r15
movslq %ebp, %rax
imulq $0x66666667, %rax, %r14 # imm = 0x66666667
movq %r14, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r14
addl %ecx, %r14d
leal (%r14,%r14), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %r15, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r14d, %ebp
jae 0x27e004
movq 0x38(%rsp), %rax
movq 0x40(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x27e081
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 0x27e066
leaq 0x13f46b(%rip), %rcx    # 0x3bd4f3
leaq 0x38(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x28(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r12, %r15
cmpq %rcx, %rdx
je 0x27e1d2
movq %rdx, 0x18(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x28(%rsp)
jmp 0x27e1d8
leaq 0x70(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x140dd2(%rip), %rsi    # 0x3beeaf
leaq 0x140dfa(%rip), %rdx    # 0x3beede
leaq 0x60(%rsp), %rdi
callq 0x1eabb8
leaq 0x48(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq $0x0, -0x8(%rbx)
movb $0x0, (%rbx)
movl $0x6904, %ebp           # imm = 0x6904
leaq 0x38(%rsp), %r12
movslq %ebp, %rax
imulq $0x66666667, %rax, %r14 # imm = 0x66666667
movq %r14, %rcx
shrq $0x3f, %rcx
sarq $0x22, %r14
addl %ecx, %r14d
leal (%r14,%r14), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %eax
addb $0x30, %al
movsbl %al, %esi
movq %r12, %rdi
callq 0x1205d0
addl $0x9, %ebp
cmpl $0x13, %ebp
movl %r14d, %ebp
jae 0x27e10c
movq 0x38(%rsp), %rax
movq 0x40(%rsp), %rcx
testq %rcx, %rcx
setne %dl
addq %rax, %rcx
decq %rcx
cmpq %rax, %rcx
seta %sil
andb %dl, %sil
cmpb $0x1, %sil
jne 0x27e189
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 0x27e16e
leaq 0x13f363(%rip), %rcx    # 0x3bd4f3
leaq 0x38(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x120110
leaq 0x28(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x27e3c5
movq %rdx, 0x18(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x28(%rsp)
jmp 0x27e3cb
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x20(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x90(%rsp), %rdi
movl $0x0, -0x8(%rdi)
leaq 0xa0(%rsp), %r14
movq %r14, -0x10(%r14)
movq %rcx, -0x8(%r14)
movb %cl, (%r14)
movq $-0x1, 0x10(%r14)
leaq 0xd0(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movb %cl, (%rbp)
leaq 0xf0(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
leaq 0x110(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r13)
movl $0x7, -0x58(%r13)
movq 0x10(%rsp), %rax
movl 0x70(%rax), %eax
movl %eax, -0x68(%r12)
movq 0x58(%rsp), %rsi
callq 0x1205a0
leaq 0xc0(%rsp), %rdi
movq 0x10(%rsp), %rax
movq 0x98(%rax), %rax
movq %rax, -0x10(%rdi)
leaq 0x60(%rsp), %rsi
callq 0x1205a0
leaq 0xe0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1205a0
movq 0x10(%rsp), %rdi
addq $0x308, %rdi            # imm = 0x308
leaq 0x88(%rsp), %rsi
callq 0x26b154
movq 0x100(%rsp), %rdi
cmpq %r13, %rdi
je 0x27e2e5
movq 0x110(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe0(%rsp), %rdi
cmpq %r12, %rdi
je 0x27e302
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xc0(%rsp), %rdi
cmpq %rbp, %rdi
je 0x27e31f
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
je 0x27e33c
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27e358
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x38(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27e36f
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r15, %rdi
je 0x27e386
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x148(%rsp), %rdi
testq %rdi, %rdi
je 0x27df1f
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x11, %eax
je 0x27df1f
leaq 0x148(%rsp), %r15
movq (%r15), %rdi
testq %rdi, %rdi
je 0x27e5ba
movq (%rdi), %rax
callq *0x28(%rax)
jmp 0x27e5b1
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x20(%rsp)
movq %rcx, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movb %cl, 0x10(%rax)
leaq 0x90(%rsp), %rdi
movl $0x0, -0x8(%rdi)
leaq 0xa0(%rsp), %r14
movq %r14, -0x10(%r14)
movq %rcx, -0x8(%r14)
movb %cl, (%r14)
movq $-0x1, 0x10(%r14)
leaq 0xd0(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rcx, -0x8(%r13)
movb %cl, (%r13)
leaq 0xf0(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movb %cl, (%rbp)
leaq 0x110(%rsp), %r12
movq %r12, -0x10(%r12)
movq %rcx, -0x8(%r12)
movb %cl, (%r12)
xorps %xmm0, %xmm0
movups %xmm0, 0x10(%r12)
movl $0x1, -0x58(%r12)
movq 0x10(%rsp), %rax
movl 0x70(%rax), %eax
movl %eax, -0x68(%rbp)
movq 0x58(%rsp), %rsi
callq 0x1205a0
leaq 0xc0(%rsp), %rdi
movq 0x10(%rsp), %rax
movq 0x98(%rax), %rax
movq %rax, -0x10(%rdi)
leaq 0x60(%rsp), %rsi
callq 0x1205a0
leaq 0xe0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1205a0
movq 0x10(%rsp), %rdi
addq $0x308, %rdi            # imm = 0x308
leaq 0x88(%rsp), %rsi
callq 0x26b154
movq 0x100(%rsp), %rdi
cmpq %r12, %rdi
je 0x27e4d8
movq 0x110(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xe0(%rsp), %rdi
cmpq %rbp, %rdi
je 0x27e4f5
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0xc0(%rsp), %rdi
cmpq %r13, %rdi
je 0x27e512
movq 0xd0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
leaq 0x70(%rsp), %r14
je 0x27e534
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27e550
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x38(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27e567
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x27e57e
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x130(%rsp), %rdi
testq %rdi, %rdi
je 0x27df1f
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x11, %eax
je 0x27df1f
movq 0x130(%rsp), %rdi
testq %rdi, %rdi
je 0x27e5ba
movq (%rdi), %rax
callq *0x28(%rax)
cmpl $0x12, %eax
je 0x27df1f
movq %r15, %rdi
callq 0x1f1690
jmp 0x27df1f
jmp 0x27e5e2
jmp 0x27e694
jmp 0x27e738
jmp 0x27e6fe
jmp 0x27e7c1
jmp 0x27e738
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0x266b98
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27e697
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
jmp 0x27e697
jmp 0x27e6fe
jmp 0x27e738
jmp 0x27e738
jmp 0x27e6fe
jmp 0x27e7c1
jmp 0x27e738
jmp 0x27e6fe
jmp 0x27e7c1
jmp 0x27e738
jmp 0x27e65f
jmp 0x27e744
jmp 0x27e7b9
jmp 0x27e6fe
jmp 0x27e7b9
jmp 0x27e6fe
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0x266b98
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27e747
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
jmp 0x27e747
movq %rax, %r14
movq 0x38(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27e6ae
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
jne 0x27e7ec
jmp 0x27e8ad
jmp 0x27e738
jmp 0x27e738
jmp 0x27e7c1
jmp 0x27e6fe
jmp 0x27e7c1
jmp 0x27e738
jmp 0x27e738
movq %rax, %r14
jmp 0x27e842
movq %rax, %r14
jmp 0x27e85e
jmp 0x27e7b9
jmp 0x27e7b9
jmp 0x27e780
jmp 0x27e7fe
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0x266b98
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27e7c7
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
jmp 0x27e7c7
jmp 0x27e7b9
movq %rax, %r14
jmp 0x27e8ad
jmp 0x27e7c1
jmp 0x27e7c1
movq %rax, %r14
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x27e763
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x27e87a
movq 0x70(%rsp), %rsi
jmp 0x27e872
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0x266b98
movq 0x148(%rsp), %rdi
leaq 0x158(%rsp), %rax
cmpq %rax, %rdi
je 0x27e801
movq 0x158(%rsp), %rsi
incq %rsi
callq 0x1200c0
jmp 0x27e801
jmp 0x27e7b9
movq %rax, %r14
jmp 0x27e87a
movq %r12, %r15
movq %rax, %r14
movq 0x38(%rsp), %rdi
cmpq %rbx, %rdi
je 0x27e7de
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
cmpq %r15, %rdi
je 0x27e8ad
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
jmp 0x27e8ad
movq %rax, %r14
movq 0x190(%rsp), %rdi
leaq 0x1a0(%rsp), %rax
cmpq %rax, %rdi
je 0x27e826
movq 0x1a0(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x27e842
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x27e85e
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x27e87a
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x1200c0
movq 0x10(%rsp), %rdx
decq 0x3c0(%rdx)
movzbl 0xf(%rsp), %eax
cmpb $0x0, 0x3ac(%rdx)
movl $0x1, %ecx
cmovel %eax, %ecx
movb %cl, 0x3ac(%rdx)
leaq 0x140(%rsp), %rdi
callq 0x294306
leaq 0x210(%rsp), %rdi
callq 0x2716ba
movq 0x168(%rsp), %rdi
testq %rdi, %rdi
je 0x27e8ff
movq 0x188(%rsp), %rsi
subq %rdi, %rsi
callq 0x1200c0
xorl %eax, %eax
movq %rax, 0x168(%rsp)
movl %eax, 0x170(%rsp)
movq %rax, 0x178(%rsp)
movl %eax, 0x180(%rsp)
movq %rax, 0x188(%rsp)
movq 0x1b0(%rsp), %rdi
testq %rdi, %rdi
je 0x27e91c
movq 0x1c0(%rsp), %rsi
subq %rdi, %rsi
callq 0x1200c0
movq %r14, %rdi
callq 0x120330