// File: /workspace/github_cpp_makefile_star2_O3/ArashPartow[P]exprtk/exprtk_test.cpp
// Function: bool run_test15<double>()
bool run_test15()
{
   typedef exprtk::expression<T> expression_t;

   T x = T(1.1);
   T y = T(2.2);
   T z = T(3.3);

   exprtk::symbol_table<T> symbol_table;
   symbol_table.add_constants();
   symbol_table.add_variable("x",x);
   symbol_table.add_variable("y",y);
   symbol_table.add_variable("z",z);

   static const std::string expr_str_list[] =
   {
      "2 - (x + y) / z//Comment 01   ",
      "2 - (x + y) / z#Comment 02    ",
      "2 - (x + y) / z //Comment 03  ",
      "2 - (x + y) / z #Comment 04   ",
      "2 - (x + y) / z//Comment 05 \n",
      "2 - (x + y) / z#Comment 06  \n",
      "2 - (x + y) / z //Comment 07\n",
      "2 - (x + y) / z #Comment 08 \n",
      "/* Comment 09*/2 - (x + y) / z",
      "/* Comment 10*/2 - (x + y) / z\n",
      "/* Comment 11*/2 - (x + y) / z/* Comment 12*/",
      "/* Comment 13*/2 - (x + y) / z/* Comment 14*/\n",
      "2 - /* Comment 15 */(x + y) / z",
      "2 - /* Comment 16 */(x + y) /* Comment 17 *// z \n",
      "2 - /* Comment 18 */(x + y) /* Comment 19 */ / z //Comment 20\n",
      "2 - /* Comment 21 */(x + y) /* Comment 22 */ / z #Comment 23\n",
      "2 - /* Comment 24 */(x + y) /* Comment 25 */ / z //Comment 26",
      "2 - /* Comment 27 */(x + y) /* Comment 28 */ / z #Comment 29"
   };
   static const std::size_t expr_str_list_size = sizeof(expr_str_list) / sizeof(std::string);

   std::deque<expression_t> expression_list;

   for (std::size_t i = 0; i < expr_str_list_size; ++i)
   {
      expression_t expression;
      expression.register_symbol_table(symbol_table);

      exprtk::parser<T> parser;

      if (!parser.compile(expr_str_list[i],expression))
      {
         printf("run_test15() - Error: %s   Expression: %s\n",
                parser.error().c_str(),
                expr_str_list[i].c_str());

         return false;
      }
      else
         expression_list.push_back(expression);
   }

   expression_t base_expression;
   const std::string base_expr_str = "2 - (x + y) / z";

   {
      base_expression.register_symbol_table(symbol_table);

      exprtk::parser<T> parser;

      if (!parser.compile(base_expr_str,base_expression))
      {
         printf("run_test15() - Error: %s   Expression: %s\n",
                parser.error().c_str(),
                base_expr_str.c_str());

         return false;
      }
   }

   bool error_found = false;

   for (std::size_t i = 0; i < expression_list.size(); ++i)
   {
      T base_result = base_expression.value();
      T result      = expression_list[i].value();

      if (not_equal(base_result,result))
      {
         printf("run_test15() - Error in evaluation! (1)  Base: %20.10f\tResult: %20.10f\tExpression: %s\n",
                static_cast<double>(base_result),
                static_cast<double>(result),
                expr_str_list[i].c_str());

         error_found = true;
      }
   }

   return !error_found;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xb48, %rsp            # imm = 0xB48
movabsq $0x3ff199999999999a, %rax # imm = 0x3FF199999999999A
movq %rax, 0x78(%rsp)
movabsq $0x400199999999999a, %rax # imm = 0x400199999999999A
movq %rax, 0x70(%rsp)
movabsq $0x400a666666666666, %rax # imm = 0x400A666666666666
movq %rax, 0x68(%rsp)
leaq 0x8(%rsp), %rbx
movq %rbx, %rdi
movl $0x1, %esi
callq 0x1e5424
movq %rbx, %rdi
callq 0x1e546c
leaq 0x230(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x20cf0b(%rip), %rsi    # 0x3bcb67
leaq 0x20cf05(%rip), %rdx    # 0x3bcb68
leaq 0x220(%rsp), %rdi
callq 0x1e4740
leaq 0x8(%rsp), %rdi
leaq 0x220(%rsp), %rsi
leaq 0x78(%rsp), %rdx
xorl %ecx, %ecx
callq 0x1e7f1a
movq 0x220(%rsp), %rdi
cmpq %r14, %rdi
je 0x1afca6
movq 0x230(%rsp), %rsi
incq %rsi
callq 0x11e0c0
leaq 0x220(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1f8b83(%rip), %rsi    # 0x3a883b
leaq 0x1f8b7d(%rip), %rdx    # 0x3a883c
callq 0x1e4740
leaq 0x8(%rsp), %rdi
leaq 0x220(%rsp), %rsi
leaq 0x70(%rsp), %rdx
xorl %ecx, %ecx
callq 0x1e7f1a
movq 0x220(%rsp), %rdi
cmpq %r14, %rdi
je 0x1afcfa
movq 0x230(%rsp), %rsi
incq %rsi
callq 0x11e0c0
leaq 0x220(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x1fe7de(%rip), %rsi    # 0x3ae4ea
leaq 0x1fe7d8(%rip), %rdx    # 0x3ae4eb
callq 0x1e4740
leaq 0x8(%rsp), %rbx
leaq 0x220(%rsp), %rsi
leaq 0x68(%rsp), %rdx
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x1e7f1a
movq 0x220(%rsp), %rdi
cmpq %r14, %rdi
je 0x1afd51
movq 0x230(%rsp), %rsi
incq %rsi
callq 0x11e0c0
movb 0x3be1a9(%rip), %al     # 0x56df00
testb %al, %al
je 0x1b03c5
xorpd %xmm0, %xmm0
leaq 0x80(%rsp), %rdi
movapd %xmm0, 0x40(%rdi)
movapd %xmm0, 0x30(%rdi)
movapd %xmm0, 0x20(%rdi)
movapd %xmm0, 0x10(%rdi)
movapd %xmm0, (%rdi)
xorl %esi, %esi
callq 0x371386
leaq 0xe0(%rsp), %r14
leaq 0x10(%rsp), %rbp
leaq 0xd0(%rsp), %r15
leaq 0x220(%rsp), %r12
movq $0x0, 0x30(%rsp)
movq %rbp, %rdi
callq 0x1e56bc
movq 0x18(%rsp), %rax
movq 0x20(%rsp), %rcx
subq %rax, %rcx
je 0x1afdeb
sarq $0x3, %rcx
movq 0x8(%rsp), %rdx
cmpq $0x1, %rcx
adcq $0x0, %rcx
cmpq %rbx, %rax
je 0x1afdf8
cmpq (%rax), %rdx
je 0x1afdf8
addq $0x8, %rax
decq %rcx
jne 0x1afdd8
leaq 0x18(%rsp), %rdi
movq %rbx, %rsi
callq 0x1eb0e8
movl $0x7f, %esi
movq %r15, %rdi
callq 0x1e57c8
movq %r12, %rdi
movq %r15, %rsi
callq 0x1e58c8
leaq 0x1d0(%rsp), %rdi
callq 0x1eb2ea
leaq 0x1a0(%rsp), %rdi
callq 0x1eb2ea
leaq 0x170(%rsp), %rdi
callq 0x1eb2ea
leaq 0x140(%rsp), %rdi
callq 0x1eb2ea
leaq 0x110(%rsp), %rdi
callq 0x1eb2ea
movq %r14, %rbx
movq %r14, %rdi
callq 0x1eb2ea
movq 0x30(%rsp), %r15
shlq $0x5, %r15
leaq 0x3bde54(%rip), %rax    # 0x56dcc0
addq %rax, %r15
movq %r12, %r13
movq %r12, %rdi
movq %r15, %rsi
movq %rbp, %rdx
callq 0x1e60ec
movl %eax, %r14d
testb %al, %al
je 0x1afe9c
leaq 0x80(%rsp), %rdi
movq %rbp, %rsi
callq 0x3712ee
jmp 0x1affaf
movq 0x538(%rsp), %rdi
cmpq %rdi, 0x558(%rsp)
je 0x1afef7
movq 0x550(%rsp), %rsi
movq %rdi, %rcx
subq 0x540(%rsp), %rcx
movq %rcx, %rax
sarq $0x3, %rax
movabsq $-0x30c30c30c30c30c3, %rdx # imm = 0xCF3CF3CF3CF3CF3D
imulq %rdx, %rax
cmpq $-0xa7, %rcx
jl 0x1aff2d
cmpq $0x3, %rax
jb 0x1aff51
movabsq $-0x5555555555555555, %rdx # imm = 0xAAAAAAAAAAAAAAAB
mulq %rdx
shrq %rdx
jmp 0x1aff43
movq %rbx, %rbp
movq %rbx, 0xd0(%rsp)
movabsq $0x726f727245206f4e, %rax # imm = 0x726F727245206F4E
movq %rax, 0xe0(%rsp)
movq $0x8, 0xd8(%rsp)
movb $0x0, 0xe8(%rsp)
movq %rbx, %rsi
jmp 0x1aff7c
notq %rax
movabsq $-0x5555555555555555, %rdx # imm = 0xAAAAAAAAAAAAAAAB
mulq %rdx
shrq %rdx
notq %rdx
imulq $-0x1f8, %rdx, %rdi     # imm = 0xFE08
addq (%rsi,%rdx,8), %rdi
addq %rcx, %rdi
movq %rbx, 0xd0(%rsp)
movq 0x38(%rdi), %rsi
movq 0x40(%rdi), %rdx
addq %rsi, %rdx
leaq 0xd0(%rsp), %rdi
callq 0x1e7738
movq 0xd0(%rsp), %rsi
movq %rbx, %rbp
movq (%r15), %rdx
leaq 0x1fe72d(%rip), %rdi    # 0x3ae6b3
xorl %eax, %eax
callq 0x11e080
movq 0xd0(%rsp), %rdi
cmpq %rbp, %rdi
je 0x1affaa
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x11e0c0
leaq 0x10(%rsp), %rbp
movq %r13, %rdi
callq 0x1e6d46
movq %rbp, %rdi
callq 0x1e7008
testb %r14b, %r14b
je 0x1b0253
movq 0x30(%rsp), %rcx
incq %rcx
movq %rcx, 0x30(%rsp)
cmpq $0x12, %rcx
movq %rbx, %r14
leaq 0xd0(%rsp), %r15
leaq 0x8(%rsp), %rbx
movq %r13, %r12
jne 0x1afdb0
leaq 0x10(%rsp), %rdi
callq 0x1e56bc
leaq 0x58(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x1fe4d0(%rip), %rsi    # 0x3ae4dc
leaq 0x1fe4d8(%rip), %rdx    # 0x3ae4eb
leaq 0x48(%rsp), %rdi
callq 0x1e4740
movq 0x18(%rsp), %rax
movq 0x20(%rsp), %rcx
subq %rax, %rcx
je 0x1b0050
sarq $0x3, %rcx
movq 0x8(%rsp), %rdx
cmpq $0x1, %rcx
adcq $0x0, %rcx
cmpq %rbx, %rax
je 0x1b005f
cmpq (%rax), %rdx
je 0x1b005f
addq $0x8, %rax
decq %rcx
jne 0x1b003d
leaq 0x18(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x1eb0e8
leaq 0xd0(%rsp), %rdi
movl $0x7f, %esi
callq 0x1e57c8
leaq 0x220(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0x1e58c8
leaq 0x1d0(%rsp), %rdi
callq 0x1eb2ea
leaq 0x1a0(%rsp), %rdi
callq 0x1eb2ea
leaq 0x170(%rsp), %rdi
callq 0x1eb2ea
leaq 0x140(%rsp), %rdi
callq 0x1eb2ea
leaq 0x110(%rsp), %rdi
callq 0x1eb2ea
leaq 0xe0(%rsp), %rbx
movq %rbx, %rdi
callq 0x1eb2ea
leaq 0x220(%rsp), %rdi
leaq 0x48(%rsp), %rsi
leaq 0x10(%rsp), %rdx
callq 0x1e60ec
testb %al, %al
je 0x1b025a
leaq 0x220(%rsp), %rdi
callq 0x1e6d46
xorl %r12d, %r12d
leaq 0x1fe5d1(%rip), %r14    # 0x3ae6de
xorl %ebx, %ebx
xorl %r13d, %r13d
movq 0xc8(%rsp), %rax
movq %rax, %rcx
subq 0xa8(%rsp), %rcx
shrq $0x3, %rcx
cmpq $0x1, %rax
adcq $-0x1, %rcx
shlq $0x4, %rcx
movq 0xb0(%rsp), %rax
subq 0xb8(%rsp), %rax
movq 0xa0(%rsp), %rdx
sarq $0x5, %rax
subq 0x90(%rsp), %rdx
sarq $0x5, %rdx
addq %rax, %rdx
addq %rcx, %rdx
cmpq %rdx, %r13
jae 0x1b02b5
movq 0x10(%rsp), %rax
movq 0x8(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
movq 0x90(%rsp), %rdx
movq 0xa8(%rsp), %rcx
movq %rdx, %rax
subq 0x98(%rsp), %rax
sarq $0x5, %rax
addq %r13, %rax
movapd %xmm0, 0x30(%rsp)
js 0x1b01b3
cmpq $0xf, %rax
ja 0x1b01bc
addq %r12, %rdx
movq %rdx, %rax
jmp 0x1b01d5
movq %rax, %rdx
sarq $0x4, %rdx
jmp 0x1b01c3
movq %rax, %rdx
shrq $0x4, %rdx
movq %rdx, %rsi
shlq $0x4, %rsi
subq %rsi, %rax
shlq $0x5, %rax
addq (%rcx,%rdx,8), %rax
movq (%rax), %rax
movq 0x8(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
movapd %xmm0, %xmm1
movapd 0x30(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jp 0x1b0230
movapd %xmm0, %xmm5
subsd %xmm1, %xmm5
movapd 0x1d915e(%rip), %xmm4   # 0x389360
andpd %xmm4, %xmm5
movapd %xmm0, %xmm2
andpd %xmm4, %xmm2
movapd %xmm1, %xmm3
andpd %xmm4, %xmm3
maxsd %xmm2, %xmm3
maxsd 0x1d8dfe(%rip), %xmm3   # 0x389020
mulsd 0x1d8e2e(%rip), %xmm3   # 0x389058
ucomisd %xmm3, %xmm5
jbe 0x1b0247
leaq 0x3bda89(%rip), %rax    # 0x56dcc0
movq (%r12,%rax), %rsi
movq %r14, %rdi
movb $0x2, %al
callq 0x11e080
movb $0x1, %bl
incq %r13
addq $0x20, %r12
jmp 0x1b0112
xorl %ebx, %ebx
jmp 0x1b0397
movq 0x538(%rsp), %r8
cmpq %r8, 0x558(%rsp)
je 0x1b02bd
movq 0x550(%rsp), %rsi
movq %r8, %rcx
subq 0x540(%rsp), %rcx
movq %rcx, %rax
sarq $0x3, %rax
movabsq $-0x30c30c30c30c30c3, %rdx # imm = 0xCF3CF3CF3CF3CF3D
imulq %rdx, %rax
cmpq $-0xa7, %rcx
jl 0x1b02f0
cmpq $0x3, %rax
jb 0x1b0314
movabsq $-0x5555555555555555, %rdx # imm = 0xAAAAAAAAAAAAAAAB
mulq %rdx
shrq %rdx
jmp 0x1b0306
xorb $0x1, %bl
jmp 0x1b0376
movq %rbx, 0xd0(%rsp)
movabsq $0x726f727245206f4e, %rax # imm = 0x726F727245206F4E
movq %rax, 0xe0(%rsp)
movq $0x8, 0xd8(%rsp)
movb $0x0, 0xe8(%rsp)
movq %rbx, %rsi
jmp 0x1b0337
notq %rax
movabsq $-0x5555555555555555, %rdx # imm = 0xAAAAAAAAAAAAAAAB
mulq %rdx
shrq %rdx
notq %rdx
imulq $-0x1f8, %rdx, %r8      # imm = 0xFE08
addq (%rsi,%rdx,8), %r8
addq %rcx, %r8
leaq 0xd0(%rsp), %rdi
movq %rbx, (%rdi)
movq 0x38(%r8), %rsi
movq 0x40(%r8), %rdx
addq %rsi, %rdx
callq 0x1e7738
movq 0xd0(%rsp), %rsi
movq 0x48(%rsp), %rdx
leaq 0x1fe370(%rip), %rdi    # 0x3ae6b3
xorl %eax, %eax
callq 0x11e080
movq 0xd0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x1b0367
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x11e0c0
leaq 0x220(%rsp), %rdi
callq 0x1e6d46
xorl %ebx, %ebx
movq 0x48(%rsp), %rdi
cmpq %r15, %rdi
je 0x1b038d
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x11e0c0
leaq 0x10(%rsp), %rdi
callq 0x1e7008
leaq 0x80(%rsp), %rdi
callq 0x37133c
leaq 0x8(%rsp), %rdi
callq 0x1e7056
andb $0x1, %bl
movl %ebx, %eax
addq $0xb48, %rsp            # imm = 0xB48
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x3bdb34(%rip), %rdi    # 0x56df00
callq 0x11e1a0
testl %eax, %eax
je 0x1afd5f
leaq 0x3bd8f0(%rip), %rax    # 0x56dcd0
movq %rax, 0x3bd8d9(%rip)    # 0x56dcc0
leaq 0x3bd8d2(%rip), %r14    # 0x56dcc0
leaq 0x1fdfe4(%rip), %rsi    # 0x3ae3d9
leaq 0x1fdffb(%rip), %rdx    # 0x3ae3f7
movq %r14, %rdi
callq 0x1e4740
leaq 0x3bd8e5(%rip), %rax    # 0x56dcf0
movq %rax, 0x3bd8ce(%rip)    # 0x56dce0
leaq 0x3bd8c7(%rip), %r15    # 0x56dce0
leaq 0x1fdfd8(%rip), %rsi    # 0x3ae3f8
leaq 0x1fdfef(%rip), %rdx    # 0x3ae416
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd8da(%rip), %rax    # 0x56dd10
movq %rax, 0x3bd8c3(%rip)    # 0x56dd00
leaq 0x3bd8bc(%rip), %r15    # 0x56dd00
leaq 0x1fdfcc(%rip), %rsi    # 0x3ae417
leaq 0x1fdfe3(%rip), %rdx    # 0x3ae435
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd8cf(%rip), %rax    # 0x56dd30
movq %rax, 0x3bd8b8(%rip)    # 0x56dd20
leaq 0x3bd8b1(%rip), %r15    # 0x56dd20
leaq 0x1fdfc0(%rip), %rsi    # 0x3ae436
leaq 0x1fdfd7(%rip), %rdx    # 0x3ae454
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd8c4(%rip), %rax    # 0x56dd50
movq %rax, 0x3bd8ad(%rip)    # 0x56dd40
leaq 0x3bd8a6(%rip), %r15    # 0x56dd40
leaq 0x1fdfb4(%rip), %rsi    # 0x3ae455
leaq 0x1fdfca(%rip), %rdx    # 0x3ae472
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd8b9(%rip), %rax    # 0x56dd70
movq %rax, 0x3bd8a2(%rip)    # 0x56dd60
leaq 0x3bd89b(%rip), %r15    # 0x56dd60
leaq 0x1fdfa7(%rip), %rsi    # 0x3ae473
leaq 0x1fdfbd(%rip), %rdx    # 0x3ae490
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd8ae(%rip), %rax    # 0x56dd90
movq %rax, 0x3bd897(%rip)    # 0x56dd80
leaq 0x3bd890(%rip), %r15    # 0x56dd80
leaq 0x1fdf9a(%rip), %rsi    # 0x3ae491
leaq 0x1fdfb0(%rip), %rdx    # 0x3ae4ae
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd8a3(%rip), %rax    # 0x56ddb0
movq %rax, 0x3bd88c(%rip)    # 0x56dda0
leaq 0x3bd885(%rip), %r15    # 0x56dda0
leaq 0x1fdf8d(%rip), %rsi    # 0x3ae4af
leaq 0x1fdfa3(%rip), %rdx    # 0x3ae4cc
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd898(%rip), %rax    # 0x56ddd0
movq %rax, 0x3bd881(%rip)    # 0x56ddc0
leaq 0x3bd87a(%rip), %r15    # 0x56ddc0
leaq 0x1fdf80(%rip), %rsi    # 0x3ae4cd
leaq 0x1fdf97(%rip), %rdx    # 0x3ae4eb
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd88d(%rip), %rax    # 0x56ddf0
movq %rax, 0x3bd876(%rip)    # 0x56dde0
leaq 0x3bd86f(%rip), %r15    # 0x56dde0
leaq 0x1fdf74(%rip), %rsi    # 0x3ae4ec
leaq 0x1fdf8c(%rip), %rdx    # 0x3ae50b
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd882(%rip), %rax    # 0x56de10
movq %rax, 0x3bd86b(%rip)    # 0x56de00
leaq 0x3bd864(%rip), %r15    # 0x56de00
leaq 0x1fdf69(%rip), %rsi    # 0x3ae50c
leaq 0x1fdf8f(%rip), %rdx    # 0x3ae539
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd877(%rip), %rax    # 0x56de30
movq %rax, 0x3bd860(%rip)    # 0x56de20
leaq 0x3bd859(%rip), %r15    # 0x56de20
leaq 0x1fdf6c(%rip), %rsi    # 0x3ae53a
leaq 0x1fdf93(%rip), %rdx    # 0x3ae568
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd86c(%rip), %rax    # 0x56de50
movq %rax, 0x3bd855(%rip)    # 0x56de40
leaq 0x3bd84e(%rip), %r15    # 0x56de40
leaq 0x1fdf70(%rip), %rsi    # 0x3ae569
leaq 0x1fdf88(%rip), %rdx    # 0x3ae588
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd861(%rip), %rax    # 0x56de70
movq %rax, 0x3bd84a(%rip)    # 0x56de60
leaq 0x3bd843(%rip), %r15    # 0x56de60
leaq 0x1fdf65(%rip), %rsi    # 0x3ae589
leaq 0x1fdf8f(%rip), %rdx    # 0x3ae5ba
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd856(%rip), %rax    # 0x56de90
movq %rax, 0x3bd83f(%rip)    # 0x56de80
leaq 0x3bd838(%rip), %r15    # 0x56de80
leaq 0x1fdf6c(%rip), %rsi    # 0x3ae5bb
leaq 0x1fdfa3(%rip), %rdx    # 0x3ae5f9
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd84b(%rip), %rax    # 0x56deb0
movq %rax, 0x3bd834(%rip)    # 0x56dea0
leaq 0x3bd82d(%rip), %r15    # 0x56dea0
leaq 0x1fdf80(%rip), %rsi    # 0x3ae5fa
leaq 0x1fdfb6(%rip), %rdx    # 0x3ae637
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd840(%rip), %rax    # 0x56ded0
movq %rax, 0x3bd829(%rip)    # 0x56dec0
leaq 0x3bd822(%rip), %r15    # 0x56dec0
leaq 0x1fdf93(%rip), %rsi    # 0x3ae638
leaq 0x1fdfc9(%rip), %rdx    # 0x3ae675
movq %r15, %rdi
callq 0x1e4740
leaq 0x3bd835(%rip), %rax    # 0x56def0
movq %rax, 0x3bd81e(%rip)    # 0x56dee0
leaq 0x3bd817(%rip), %r15    # 0x56dee0
leaq 0x1fdfa6(%rip), %rsi    # 0x3ae676
leaq 0x1fdfdb(%rip), %rdx    # 0x3ae6b2
movq %r15, %rdi
callq 0x1e4740
leaq -0x8162b(%rip), %rdi    # 0x12f0bb
leaq 0x38fc23(%rip), %rdx    # 0x540310
xorl %esi, %esi
callq 0x11e480
leaq 0x3bd805(%rip), %rdi    # 0x56df00
callq 0x11e2e0
jmp 0x1afd5f
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
jmp 0x1b0725
movq %rax, %rbx
addq $-0x10, %r15
movq -0x10(%r15), %rdi
cmpq %rdi, %r15
je 0x1b0740
movq (%r15), %rsi
incq %rsi
callq 0x11e0c0
leaq -0x20(%r15), %rax
addq $-0x10, %r15
cmpq %r14, %r15
movq %rax, %r15
jne 0x1b072c
leaq 0x3bd7a9(%rip), %rdi    # 0x56df00
callq 0x11e220
jmp 0x1b082c
movq %rax, %rbx
jmp 0x1b0750
jmp 0x1b076a
jmp 0x1b07cb
movq %rax, %rbx
leaq 0x220(%rsp), %rdi
callq 0x1e6d46
jmp 0x1b07ce
movq %rax, %rbx
leaq 0xd0(%rsp), %rdi
callq 0x1e60a4
jmp 0x1b07ce
jmp 0x1b07cb
jmp 0x1b07ee
jmp 0x1b07e9
jmp 0x1b07c2
jmp 0x1b079e
jmp 0x1b07c2
jmp 0x1b079e
jmp 0x1b07c2
movq %rax, %rbx
movq 0x220(%rsp), %rdi
cmpq %r14, %rdi
je 0x1b082c
movq 0x230(%rsp), %rsi
incq %rsi
callq 0x11e0c0
jmp 0x1b082c
jmp 0x1b07c2
movq %rax, %rbx
jmp 0x1b082c
jmp 0x1b0805
jmp 0x1b07cb
movq %rax, %rbx
movq 0x48(%rsp), %rdi
cmpq %r15, %rdi
je 0x1b0815
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x11e0c0
jmp 0x1b0815
jmp 0x1b07ee
movq %rax, %rbx
jmp 0x1b081f
movq %rax, %rbx
jmp 0x1b0815
movq %rax, %rbx
leaq 0xd0(%rsp), %rdi
callq 0x1e60a4
jmp 0x1b0815
movq %rax, %rbx
leaq 0x220(%rsp), %rdi
callq 0x1e6d46
leaq 0x10(%rsp), %rdi
callq 0x1e7008
leaq 0x80(%rsp), %rdi
callq 0x37133c
leaq 0x8(%rsp), %rdi
callq 0x1e7056
movq %rbx, %rdi
callq 0x11e330