// File: ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::parser<double>::parse_swap_statement()
inline expression_node_ptr parse_swap_statement()
      {
         if (!details::imatch(current_token().value,"swap"))
         {
            return error_node();
         }
         else
            next_token();

         if (!token_is(token_t::e_lbracket))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR205 - Expected '(' at start of swap statement",
               exprtk_error_location));

            return error_node();
         }

         expression_node_ptr variable0 = error_node();
         expression_node_ptr variable1 = error_node();

         bool variable0_generated = false;
         bool variable1_generated = false;

         const std::string var0_name = current_token().value;

         if (!token_is(token_t::e_symbol,prsrhlpr_t::e_hold))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR206 - Expected a symbol for variable or vector element definition",
               exprtk_error_location));

            return error_node();
         }
         else if (peek_token_is(token_t::e_lsqrbracket))
         {
            if (0 == (variable0 = parse_vector()))
            {
               set_error(make_error(
                  parser_error::e_syntax,
                  current_token(),
                  "ERR207 - First parameter to swap is an invalid vector element: '" + var0_name + "'",
                  exprtk_error_location));

               return error_node();
            }

            variable0_generated = true;
         }
         else
         {
            if (symtab_store_.is_variable(var0_name))
            {
               variable0 = symtab_store_.get_variable(var0_name);
            }

            const scope_element& se = sem_.get_element(var0_name);

            if (
                 (se.active)            &&
                 (se.name == var0_name) &&
                 (scope_element::e_variable == se.type)
               )
            {
               variable0 = se.var_node;
            }

            lodge_symbol(var0_name, e_st_variable);

            if (0 == variable0)
            {
               set_error(make_error(
                  parser_error::e_syntax,
                  current_token(),
                  "ERR208 - First parameter to swap is an invalid variable: '" + var0_name + "'",
                  exprtk_error_location));

               return error_node();
            }
            else
               next_token();
         }

         if (!token_is(token_t::e_comma))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR209 - Expected ',' between parameters to swap",
               exprtk_error_location));

            if (variable0_generated)
            {
               free_node(node_allocator_, variable0);
            }

            return error_node();
         }

         const std::string var1_name = current_token().value;

         if (!token_is(token_t::e_symbol,prsrhlpr_t::e_hold))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR210 - Expected a symbol for variable or vector element definition",
               exprtk_error_location));

            if (variable0_generated)
            {
               free_node(node_allocator_, variable0);
            }

            return error_node();
         }
         else if (peek_token_is(token_t::e_lsqrbracket))
         {
            if (0 == (variable1 = parse_vector()))
            {
               set_error(make_error(
                  parser_error::e_syntax,
                  current_token(),
                  "ERR211 - Second parameter to swap is an invalid vector element: '" + var1_name + "'",
                  exprtk_error_location));

               if (variable0_generated)
               {
                  free_node(node_allocator_, variable0);
               }

               return error_node();
            }

            variable1_generated = true;
         }
         else
         {
            if (symtab_store_.is_variable(var1_name))
            {
               variable1 = symtab_store_.get_variable(var1_name);
            }

            const scope_element& se = sem_.get_element(var1_name);

            if (
                 (se.active) &&
                 (se.name == var1_name) &&
                 (scope_element::e_variable == se.type)
               )
            {
               variable1 = se.var_node;
            }

            lodge_symbol(var1_name, e_st_variable);

            if (0 == variable1)
            {
               set_error(make_error(
                  parser_error::e_syntax,
                  current_token(),
                  "ERR212 - Second parameter to swap is an invalid variable: '" + var1_name + "'",
                  exprtk_error_location));

               if (variable0_generated)
               {
                  free_node(node_allocator_, variable0);
               }

               return error_node();
            }
            else
               next_token();
         }

         if (!token_is(token_t::e_rbracket))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR213 - Expected ')' at end of swap statement",
               exprtk_error_location));

            if (variable0_generated)
            {
               free_node(node_allocator_, variable0);
            }

            if (variable1_generated)
            {
               free_node(node_allocator_, variable1);
            }

            return error_node();
         }

         typedef details::variable_node<T>* variable_node_ptr;

         variable_node_ptr v0 = variable_node_ptr(0);
         variable_node_ptr v1 = variable_node_ptr(0);

         expression_node_ptr result = error_node();

         if (
              (0 != (v0 = dynamic_cast<variable_node_ptr>(variable0))) &&
              (0 != (v1 = dynamic_cast<variable_node_ptr>(variable1)))
            )
         {
            result = node_allocator_.allocate<details::swap_node<T> >(v0, v1);

            if (variable0_generated)
            {
               free_node(node_allocator_, variable0);
            }

            if (variable1_generated)
            {
               free_node(node_allocator_, variable1);
            }
         }
         else
            result = node_allocator_.allocate<details::swap_generic_node<T> >
                        (variable0, variable1);

         state_.activate_side_effect("parse_swap_statement()");

         return result;
      }

// Assembly:
subq $0xc68, %rsp            # imm = 0xC68
movq %rdi, 0xc58(%rsp)
movq 0xc58(%rsp), %rdi
movq %rdi, 0x140(%rsp)
callq 0x373e90
addq $0x8, %rax
movq %rax, 0x148(%rsp)
leaq 0xc37(%rsp), %rdi
movq %rdi, 0x150(%rsp)
callq 0x11b6f0
movq 0x150(%rsp), %rdx
leaq 0x2176bb(%rip), %rsi    # 0x5a9daf
leaq 0xc38(%rsp), %rdi
callq 0x134520
jmp 0x392703
movq 0x148(%rsp), %rdi
leaq 0xc38(%rsp), %rsi
callq 0x37fb20
movb %al, 0x13f(%rsp)
jmp 0x392721
movb 0x13f(%rsp), %al
xorb $-0x1, %al
movb %al, 0x13e(%rsp)
leaq 0xc38(%rsp), %rdi
callq 0x11b838
leaq 0xc37(%rsp), %rdi
callq 0x11b820
movb 0x13e(%rsp), %al
testb $0x1, %al
jne 0x392758
jmp 0x3927b3
callq 0x2821f0
movq %rax, 0xc60(%rsp)
jmp 0x3940fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x3927a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0xc38(%rsp), %rdi
callq 0x11b838
leaq 0xc37(%rsp), %rdi
callq 0x11b820
jmp 0x39410a
movq 0x140(%rsp), %rdi
callq 0x373690
movq 0x140(%rsp), %rdi
movl $0x28, 0xc20(%rsp)
leaq 0xc20(%rsp), %rsi
movl $0x1, %edx
callq 0x37d640
xorb $-0x1, %al
testb $0x1, %al
jne 0x3927f0
jmp 0x3929b5
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0x128(%rsp)
leaq 0xb57(%rsp), %rdi
movq %rdi, 0x130(%rsp)
callq 0x11b6f0
movq 0x130(%rsp), %rdx
leaq 0x217468(%rip), %rsi    # 0x5a9c91
leaq 0xb58(%rsp), %rdi
callq 0x134520
jmp 0x392838
leaq 0xb10(%rsp), %rdi
movl $0x765f, %esi           # imm = 0x765F
callq 0x371f20
jmp 0x39284c
leaq 0x2146c0(%rip), %rsi    # 0x5a6f13
leaq 0xb30(%rsp), %rdi
leaq 0xb10(%rsp), %rdx
callq 0x29dd70
jmp 0x39286a
movq 0x128(%rsp), %rdx
leaq 0xb78(%rsp), %rdi
movl $0x1, %esi
leaq 0xb58(%rsp), %rcx
leaq 0xb30(%rsp), %r8
callq 0x3741e0
jmp 0x392896
movq 0x140(%rsp), %rdi
leaq 0xb78(%rsp), %rsi
callq 0x371e40
jmp 0x3928ad
leaq 0xb78(%rsp), %rdi
callq 0x371330
leaq 0xb30(%rsp), %rdi
callq 0x11b838
leaq 0xb10(%rsp), %rdi
callq 0x11b838
leaq 0xb58(%rsp), %rdi
callq 0x11b838
leaq 0xb57(%rsp), %rdi
callq 0x11b820
callq 0x2821f0
movq %rax, 0xc60(%rsp)
jmp 0x3940fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x3929a3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392996
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392989
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x39297c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0xb78(%rsp), %rdi
callq 0x371330
leaq 0xb30(%rsp), %rdi
callq 0x11b838
leaq 0xb10(%rsp), %rdi
callq 0x11b838
leaq 0xb58(%rsp), %rdi
callq 0x11b838
leaq 0xb57(%rsp), %rdi
callq 0x11b820
jmp 0x39410a
callq 0x2821f0
movq %rax, 0xb08(%rsp)
callq 0x2821f0
movq 0x140(%rsp), %rdi
movq %rax, 0xb00(%rsp)
movb $0x0, 0xaff(%rsp)
movb $0x0, 0xafe(%rsp)
callq 0x373e90
movq %rax, %rsi
addq $0x8, %rsi
leaq 0xad8(%rsp), %rdi
callq 0x11b140
movq 0x140(%rsp), %rdi
movl $0x8, 0xad4(%rsp)
leaq 0xad4(%rsp), %rsi
xorl %edx, %edx
callq 0x37d640
movb %al, 0x127(%rsp)
jmp 0x392a2b
movb 0x127(%rsp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x392a3d
jmp 0x392c28
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0x118(%rsp)
jmp 0x392a54
leaq 0xa07(%rsp), %rdi
movq %rdi, 0x110(%rsp)
callq 0x11b6f0
movq 0x110(%rsp), %rdx
leaq 0x21724a(%rip), %rsi    # 0x5a9cc2
leaq 0xa08(%rsp), %rdi
callq 0x134520
jmp 0x392a87
leaq 0x9c0(%rsp), %rdi
movl $0x7672, %esi           # imm = 0x7672
callq 0x371f20
jmp 0x392a9b
leaq 0x214471(%rip), %rsi    # 0x5a6f13
leaq 0x9e0(%rsp), %rdi
leaq 0x9c0(%rsp), %rdx
callq 0x29dd70
jmp 0x392ab9
movq 0x118(%rsp), %rdx
leaq 0xa28(%rsp), %rdi
movl $0x1, %esi
leaq 0xa08(%rsp), %rcx
leaq 0x9e0(%rsp), %r8
callq 0x3741e0
jmp 0x392ae5
movq 0x140(%rsp), %rdi
leaq 0xa28(%rsp), %rsi
callq 0x371e40
jmp 0x392afc
leaq 0xa28(%rsp), %rdi
callq 0x371330
leaq 0x9e0(%rsp), %rdi
callq 0x11b838
leaq 0x9c0(%rsp), %rdi
callq 0x11b838
leaq 0xa08(%rsp), %rdi
callq 0x11b838
leaq 0xa07(%rsp), %rdi
callq 0x11b820
callq 0x2821f0
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940dc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x3940eb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392c16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392c09
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392bfc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392bef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0xa28(%rsp), %rdi
callq 0x371330
leaq 0x9e0(%rsp), %rdi
callq 0x11b838
leaq 0x9c0(%rsp), %rdi
callq 0x11b838
leaq 0xa08(%rsp), %rdi
callq 0x11b838
leaq 0xa07(%rsp), %rdi
callq 0x11b820
jmp 0x3940eb
movq 0x140(%rsp), %rdi
movl $0x5b, 0x9b8(%rsp)
leaq 0x9b8(%rsp), %rsi
callq 0x39c870
movb %al, 0x10f(%rsp)
jmp 0x392c51
movb 0x10f(%rsp), %al
testb $0x1, %al
jne 0x392c61
jmp 0x392e7b
movq 0x140(%rsp), %rdi
callq 0x516940
movq %rax, 0x100(%rsp)
jmp 0x392c78
movq 0x100(%rsp), %rcx
movq %rcx, 0xb08(%rsp)
xorl %eax, %eax
cmpq %rcx, %rax
jne 0x392e6e
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0xf8(%rsp)
jmp 0x392caa
leaq 0x217056(%rip), %rsi    # 0x5a9d07
leaq 0x8d0(%rsp), %rdi
leaq 0xad8(%rsp), %rdx
callq 0x3784f0
jmp 0x392cc8
leaq 0x216de2(%rip), %rdx    # 0x5a9ab1
leaq 0x8f0(%rsp), %rdi
leaq 0x8d0(%rsp), %rsi
callq 0x29dc30
jmp 0x392ce6
leaq 0x890(%rsp), %rdi
movl $0x767e, %esi           # imm = 0x767E
callq 0x371f20
jmp 0x392cfa
leaq 0x214212(%rip), %rsi    # 0x5a6f13
leaq 0x8b0(%rsp), %rdi
leaq 0x890(%rsp), %rdx
callq 0x29dd70
jmp 0x392d18
movq 0xf8(%rsp), %rdx
leaq 0x910(%rsp), %rdi
movl $0x1, %esi
leaq 0x8f0(%rsp), %rcx
leaq 0x8b0(%rsp), %r8
callq 0x3741e0
jmp 0x392d44
movq 0x140(%rsp), %rdi
leaq 0x910(%rsp), %rsi
callq 0x371e40
jmp 0x392d5b
leaq 0x910(%rsp), %rdi
callq 0x371330
leaq 0x8b0(%rsp), %rdi
callq 0x11b838
leaq 0x890(%rsp), %rdi
callq 0x11b838
leaq 0x8f0(%rsp), %rdi
callq 0x11b838
leaq 0x8d0(%rsp), %rdi
callq 0x11b838
callq 0x2821f0
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940dc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392e5c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392e4f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392e42
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x392e35
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0x910(%rsp), %rdi
callq 0x371330
leaq 0x8b0(%rsp), %rdi
callq 0x11b838
leaq 0x890(%rsp), %rdi
callq 0x11b838
leaq 0x8f0(%rsp), %rdi
callq 0x11b838
leaq 0x8d0(%rsp), %rdi
callq 0x11b838
jmp 0x3940eb
movb $0x1, 0xaff(%rsp)
jmp 0x393199
movq 0x140(%rsp), %rdi
addq $0x298, %rdi            # imm = 0x298
leaq 0xad8(%rsp), %rsi
callq 0x4e8390
movb %al, 0xf7(%rsp)
jmp 0x392ea0
movb 0xf7(%rsp), %al
testb $0x1, %al
jne 0x392ead
jmp 0x392ee3
movq 0x140(%rsp), %rdi
addq $0x298, %rdi            # imm = 0x298
leaq 0xad8(%rsp), %rsi
callq 0x517030
movq %rax, 0xe8(%rsp)
jmp 0x392ed3
movq 0xe8(%rsp), %rax
movq %rax, 0xb08(%rsp)
movq 0x140(%rsp), %rax
addq $0x530, %rax            # imm = 0x530
movq %rax, 0xd8(%rsp)
callq 0x237af0
movq 0xd8(%rsp), %rdi
movq %rax, %rdx
leaq 0xad8(%rsp), %rsi
callq 0x4e82a0
movq %rax, 0xe0(%rsp)
jmp 0x392f20
movq 0xe0(%rsp), %rax
movq %rax, 0x888(%rsp)
movq 0x888(%rsp), %rax
testb $0x1, 0x4c(%rax)
je 0x392f7f
movq 0x888(%rsp), %rdi
leaq 0xad8(%rsp), %rsi
callq 0x43e9b0
testb $0x1, %al
jne 0x392f59
jmp 0x392f7f
movq 0x888(%rsp), %rcx
movl $0x2, %eax
cmpl 0x48(%rcx), %eax
jne 0x392f7f
movq 0x888(%rsp), %rax
movq 0x58(%rax), %rax
movq %rax, 0xb08(%rsp)
movq 0x140(%rsp), %rdi
leaq 0xad8(%rsp), %rsi
movl $0x1, %edx
callq 0x39aef0
jmp 0x392f9b
xorl %eax, %eax
cmpq 0xb08(%rsp), %rax
jne 0x393186
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0xd0(%rsp)
jmp 0x392fc2
leaq 0x216d7f(%rip), %rsi    # 0x5a9d48
leaq 0x7a0(%rsp), %rdi
leaq 0xad8(%rsp), %rdx
callq 0x3784f0
jmp 0x392fe0
leaq 0x216aca(%rip), %rdx    # 0x5a9ab1
leaq 0x7c0(%rsp), %rdi
leaq 0x7a0(%rsp), %rsi
callq 0x29dc30
jmp 0x392ffe
leaq 0x760(%rsp), %rdi
movl $0x769f, %esi           # imm = 0x769F
callq 0x371f20
jmp 0x393012
leaq 0x213efa(%rip), %rsi    # 0x5a6f13
leaq 0x780(%rsp), %rdi
leaq 0x760(%rsp), %rdx
callq 0x29dd70
jmp 0x393030
movq 0xd0(%rsp), %rdx
leaq 0x7e0(%rsp), %rdi
movl $0x1, %esi
leaq 0x7c0(%rsp), %rcx
leaq 0x780(%rsp), %r8
callq 0x3741e0
jmp 0x39305c
movq 0x140(%rsp), %rdi
leaq 0x7e0(%rsp), %rsi
callq 0x371e40
jmp 0x393073
leaq 0x7e0(%rsp), %rdi
callq 0x371330
leaq 0x780(%rsp), %rdi
callq 0x11b838
leaq 0x760(%rsp), %rdi
callq 0x11b838
leaq 0x7c0(%rsp), %rdi
callq 0x11b838
leaq 0x7a0(%rsp), %rdi
callq 0x11b838
callq 0x2821f0
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940dc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393174
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393167
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x39315a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x39314d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0x7e0(%rsp), %rdi
callq 0x371330
leaq 0x780(%rsp), %rdi
callq 0x11b838
leaq 0x760(%rsp), %rdi
callq 0x11b838
leaq 0x7c0(%rsp), %rdi
callq 0x11b838
leaq 0x7a0(%rsp), %rdi
callq 0x11b838
jmp 0x3940eb
movq 0x140(%rsp), %rdi
callq 0x373690
jmp 0x393195
jmp 0x393197
jmp 0x393199
jmp 0x39319b
movq 0x140(%rsp), %rdi
movl $0x2c, 0x75c(%rsp)
leaq 0x75c(%rsp), %rsi
movl $0x1, %edx
callq 0x37d640
movb %al, 0xcf(%rsp)
jmp 0x3931c9
movb 0xcf(%rsp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3931db
jmp 0x3933de
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0xc0(%rsp)
jmp 0x3931f2
leaq 0x68f(%rsp), %rdi
movq %rdi, 0xb8(%rsp)
callq 0x11b6f0
movq 0xb8(%rsp), %rdx
leaq 0x216b6d(%rip), %rsi    # 0x5a9d83
leaq 0x690(%rsp), %rdi
callq 0x134520
jmp 0x393225
leaq 0x648(%rsp), %rdi
movl $0x76ad, %esi           # imm = 0x76AD
callq 0x371f20
jmp 0x393239
leaq 0x213cd3(%rip), %rsi    # 0x5a6f13
leaq 0x668(%rsp), %rdi
leaq 0x648(%rsp), %rdx
callq 0x29dd70
jmp 0x393257
movq 0xc0(%rsp), %rdx
leaq 0x6b0(%rsp), %rdi
movl $0x1, %esi
leaq 0x690(%rsp), %rcx
leaq 0x668(%rsp), %r8
callq 0x3741e0
jmp 0x393283
movq 0x140(%rsp), %rdi
leaq 0x6b0(%rsp), %rsi
callq 0x371e40
jmp 0x39329a
leaq 0x6b0(%rsp), %rdi
callq 0x371330
leaq 0x668(%rsp), %rdi
callq 0x11b838
leaq 0x648(%rsp), %rdi
callq 0x11b838
leaq 0x690(%rsp), %rdi
callq 0x11b838
leaq 0x68f(%rsp), %rdi
callq 0x11b820
testb $0x1, 0xaff(%rsp)
je 0x3933c1
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb08(%rsp), %rsi
callq 0x284bd0
jmp 0x393307
jmp 0x3933c1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x3933af
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x3933a2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393395
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393388
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0x6b0(%rsp), %rdi
callq 0x371330
leaq 0x668(%rsp), %rdi
callq 0x11b838
leaq 0x648(%rsp), %rdi
callq 0x11b838
leaq 0x690(%rsp), %rdi
callq 0x11b838
leaq 0x68f(%rsp), %rdi
callq 0x11b820
jmp 0x3940eb
callq 0x2821f0
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940dc
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0xb0(%rsp)
jmp 0x3933f5
movq 0xb0(%rsp), %rsi
addq $0x8, %rsi
leaq 0x628(%rsp), %rdi
callq 0x11b140
jmp 0x393410
movq 0x140(%rsp), %rdi
movl $0x8, 0x624(%rsp)
leaq 0x624(%rsp), %rsi
xorl %edx, %edx
callq 0x37d640
movb %al, 0xaf(%rsp)
jmp 0x39343b
movb 0xaf(%rsp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x39344d
jmp 0x393669
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0xa0(%rsp)
jmp 0x393464
leaq 0x557(%rsp), %rdi
movq %rdi, 0x98(%rsp)
callq 0x11b6f0
movq 0x98(%rsp), %rdx
leaq 0x21692c(%rip), %rsi    # 0x5a9db4
leaq 0x558(%rsp), %rdi
callq 0x134520
jmp 0x393497
leaq 0x510(%rsp), %rdi
movl $0x76bf, %esi           # imm = 0x76BF
callq 0x371f20
jmp 0x3934ab
leaq 0x213a61(%rip), %rsi    # 0x5a6f13
leaq 0x530(%rsp), %rdi
leaq 0x510(%rsp), %rdx
callq 0x29dd70
jmp 0x3934c9
movq 0xa0(%rsp), %rdx
leaq 0x578(%rsp), %rdi
movl $0x1, %esi
leaq 0x558(%rsp), %rcx
leaq 0x530(%rsp), %r8
callq 0x3741e0
jmp 0x3934f5
movq 0x140(%rsp), %rdi
leaq 0x578(%rsp), %rsi
callq 0x371e40
jmp 0x39350c
leaq 0x578(%rsp), %rdi
callq 0x371330
leaq 0x530(%rsp), %rdi
callq 0x11b838
leaq 0x510(%rsp), %rdi
callq 0x11b838
leaq 0x558(%rsp), %rdi
callq 0x11b838
leaq 0x557(%rsp), %rdi
callq 0x11b820
testb $0x1, 0xaff(%rsp)
je 0x39364c
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb08(%rsp), %rsi
callq 0x284bd0
jmp 0x393579
jmp 0x39364c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x3940cd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x39363a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x39362d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393620
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393613
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0x578(%rsp), %rdi
callq 0x371330
leaq 0x530(%rsp), %rdi
callq 0x11b838
leaq 0x510(%rsp), %rdi
callq 0x11b838
leaq 0x558(%rsp), %rdi
callq 0x11b838
leaq 0x557(%rsp), %rdi
callq 0x11b820
jmp 0x3940cd
callq 0x2821f0
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940be
movq 0x140(%rsp), %rdi
movl $0x5b, 0x50c(%rsp)
leaq 0x50c(%rsp), %rsi
callq 0x39c870
movb %al, 0x97(%rsp)
jmp 0x393692
movb 0x97(%rsp), %al
testb $0x1, %al
jne 0x3936a2
jmp 0x3938ed
movq 0x140(%rsp), %rdi
callq 0x516940
movq %rax, 0x88(%rsp)
jmp 0x3936b9
movq 0x88(%rsp), %rcx
movq %rcx, 0xb00(%rsp)
xorl %eax, %eax
cmpq %rcx, %rax
jne 0x3938e0
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0x80(%rsp)
jmp 0x3936eb
leaq 0x216707(%rip), %rsi    # 0x5a9df9
leaq 0x420(%rsp), %rdi
leaq 0x628(%rsp), %rdx
callq 0x3784f0
jmp 0x393709
leaq 0x2163a1(%rip), %rdx    # 0x5a9ab1
leaq 0x440(%rsp), %rdi
leaq 0x420(%rsp), %rsi
callq 0x29dc30
jmp 0x393727
leaq 0x3e0(%rsp), %rdi
movl $0x76d0, %esi           # imm = 0x76D0
callq 0x371f20
jmp 0x39373b
leaq 0x2137d1(%rip), %rsi    # 0x5a6f13
leaq 0x400(%rsp), %rdi
leaq 0x3e0(%rsp), %rdx
callq 0x29dd70
jmp 0x393759
movq 0x80(%rsp), %rdx
leaq 0x460(%rsp), %rdi
movl $0x1, %esi
leaq 0x440(%rsp), %rcx
leaq 0x400(%rsp), %r8
callq 0x3741e0
jmp 0x393785
movq 0x140(%rsp), %rdi
leaq 0x460(%rsp), %rsi
callq 0x371e40
jmp 0x39379c
leaq 0x460(%rsp), %rdi
callq 0x371330
leaq 0x400(%rsp), %rdi
callq 0x11b838
leaq 0x3e0(%rsp), %rdi
callq 0x11b838
leaq 0x440(%rsp), %rdi
callq 0x11b838
leaq 0x420(%rsp), %rdi
callq 0x11b838
testb $0x1, 0xaff(%rsp)
je 0x3938c3
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb08(%rsp), %rsi
callq 0x284bd0
jmp 0x393809
jmp 0x3938c3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x3938b1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x3938a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393897
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x39388a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0x460(%rsp), %rdi
callq 0x371330
leaq 0x400(%rsp), %rdi
callq 0x11b838
leaq 0x3e0(%rsp), %rdi
callq 0x11b838
leaq 0x440(%rsp), %rdi
callq 0x11b838
leaq 0x420(%rsp), %rdi
callq 0x11b838
jmp 0x3940cd
callq 0x2821f0
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940be
movb $0x1, 0xafe(%rsp)
jmp 0x393c1e
movq 0x140(%rsp), %rdi
addq $0x298, %rdi            # imm = 0x298
leaq 0x628(%rsp), %rsi
callq 0x4e8390
movb %al, 0x7f(%rsp)
jmp 0x39390f
movb 0x7f(%rsp), %al
testb $0x1, %al
jne 0x393919
jmp 0x393949
movq 0x140(%rsp), %rdi
addq $0x298, %rdi            # imm = 0x298
leaq 0x628(%rsp), %rsi
callq 0x517030
movq %rax, 0x70(%rsp)
jmp 0x39393c
movq 0x70(%rsp), %rax
movq %rax, 0xb00(%rsp)
movq 0x140(%rsp), %rax
addq $0x530, %rax            # imm = 0x530
movq %rax, 0x60(%rsp)
callq 0x237af0
movq 0x60(%rsp), %rdi
movq %rax, %rdx
leaq 0x628(%rsp), %rsi
callq 0x4e82a0
movq %rax, 0x68(%rsp)
jmp 0x39397d
movq 0x68(%rsp), %rax
movq %rax, 0x3d8(%rsp)
movq 0x3d8(%rsp), %rax
testb $0x1, 0x4c(%rax)
je 0x3939d9
movq 0x3d8(%rsp), %rdi
leaq 0x628(%rsp), %rsi
callq 0x43e9b0
testb $0x1, %al
jne 0x3939b3
jmp 0x3939d9
movq 0x3d8(%rsp), %rcx
movl $0x2, %eax
cmpl 0x48(%rcx), %eax
jne 0x3939d9
movq 0x3d8(%rsp), %rax
movq 0x58(%rax), %rax
movq %rax, 0xb00(%rsp)
movq 0x140(%rsp), %rdi
leaq 0x628(%rsp), %rsi
movl $0x1, %edx
callq 0x39aef0
jmp 0x3939f5
xorl %eax, %eax
cmpq 0xb00(%rsp), %rax
jne 0x393c0b
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0x58(%rsp)
jmp 0x393a19
leaq 0x21641b(%rip), %rsi    # 0x5a9e3b
leaq 0x2f0(%rsp), %rdi
leaq 0x628(%rsp), %rdx
callq 0x3784f0
jmp 0x393a37
leaq 0x216073(%rip), %rdx    # 0x5a9ab1
leaq 0x310(%rsp), %rdi
leaq 0x2f0(%rsp), %rsi
callq 0x29dc30
jmp 0x393a55
leaq 0x2b0(%rsp), %rdi
movl $0x76f6, %esi           # imm = 0x76F6
callq 0x371f20
jmp 0x393a69
leaq 0x2134a3(%rip), %rsi    # 0x5a6f13
leaq 0x2d0(%rsp), %rdi
leaq 0x2b0(%rsp), %rdx
callq 0x29dd70
jmp 0x393a87
movq 0x58(%rsp), %rdx
leaq 0x330(%rsp), %rdi
movl $0x1, %esi
leaq 0x310(%rsp), %rcx
leaq 0x2d0(%rsp), %r8
callq 0x3741e0
jmp 0x393ab0
movq 0x140(%rsp), %rdi
leaq 0x330(%rsp), %rsi
callq 0x371e40
jmp 0x393ac7
leaq 0x330(%rsp), %rdi
callq 0x371330
leaq 0x2d0(%rsp), %rdi
callq 0x11b838
leaq 0x2b0(%rsp), %rdi
callq 0x11b838
leaq 0x310(%rsp), %rdi
callq 0x11b838
leaq 0x2f0(%rsp), %rdi
callq 0x11b838
testb $0x1, 0xaff(%rsp)
je 0x393bee
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb08(%rsp), %rsi
callq 0x284bd0
jmp 0x393b34
jmp 0x393bee
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393bdc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393bcf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393bc2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393bb5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0x330(%rsp), %rdi
callq 0x371330
leaq 0x2d0(%rsp), %rdi
callq 0x11b838
leaq 0x2b0(%rsp), %rdi
callq 0x11b838
leaq 0x310(%rsp), %rdi
callq 0x11b838
leaq 0x2f0(%rsp), %rdi
callq 0x11b838
jmp 0x3940cd
callq 0x2821f0
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940be
movq 0x140(%rsp), %rdi
callq 0x373690
jmp 0x393c1a
jmp 0x393c1c
jmp 0x393c1e
jmp 0x393c20
movq 0x140(%rsp), %rdi
movl $0x29, 0x2ac(%rsp)
leaq 0x2ac(%rsp), %rsi
movl $0x1, %edx
callq 0x37d640
movb %al, 0x57(%rsp)
jmp 0x393c4b
movb 0x57(%rsp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x393c5a
jmp 0x393e7b
movq 0x140(%rsp), %rdi
callq 0x373e90
movq %rax, 0x48(%rsp)
jmp 0x393c6e
leaq 0x1df(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0x11b6f0
movq 0x40(%rsp), %rdx
leaq 0x2161eb(%rip), %rsi    # 0x5a9e77
leaq 0x1e0(%rsp), %rdi
callq 0x134520
jmp 0x393c9b
leaq 0x198(%rsp), %rdi
movl $0x7709, %esi           # imm = 0x7709
callq 0x371f20
jmp 0x393caf
leaq 0x21325d(%rip), %rsi    # 0x5a6f13
leaq 0x1b8(%rsp), %rdi
leaq 0x198(%rsp), %rdx
callq 0x29dd70
jmp 0x393ccd
movq 0x48(%rsp), %rdx
leaq 0x200(%rsp), %rdi
movl $0x1, %esi
leaq 0x1e0(%rsp), %rcx
leaq 0x1b8(%rsp), %r8
callq 0x3741e0
jmp 0x393cf6
movq 0x140(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x371e40
jmp 0x393d0d
leaq 0x200(%rsp), %rdi
callq 0x371330
leaq 0x1b8(%rsp), %rdi
callq 0x11b838
leaq 0x198(%rsp), %rdi
callq 0x11b838
leaq 0x1e0(%rsp), %rdi
callq 0x11b838
leaq 0x1df(%rsp), %rdi
callq 0x11b820
testb $0x1, 0xaff(%rsp)
je 0x393e34
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb08(%rsp), %rsi
callq 0x284bd0
jmp 0x393d7a
jmp 0x393e34
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393e22
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393e15
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393e08
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
jmp 0x393dfb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0x200(%rsp), %rdi
callq 0x371330
leaq 0x1b8(%rsp), %rdi
callq 0x11b838
leaq 0x198(%rsp), %rdi
callq 0x11b838
leaq 0x1e0(%rsp), %rdi
callq 0x11b838
leaq 0x1df(%rsp), %rdi
callq 0x11b820
jmp 0x3940cd
testb $0x1, 0xafe(%rsp)
je 0x393e5e
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb00(%rsp), %rsi
callq 0x284bd0
jmp 0x393e5c
jmp 0x393e5e
callq 0x2821f0
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940be
movq $0x0, 0x190(%rsp)
movq $0x0, 0x188(%rsp)
callq 0x2821f0
movq %rax, 0x180(%rsp)
movq 0xb08(%rsp), %rax
movq %rax, 0x38(%rsp)
cmpq $0x0, %rax
je 0x393ed6
movq 0x38(%rsp), %rdi
leaq 0x3d6321(%rip), %rsi    # 0x76a1e0
leaq 0x3d6362(%rip), %rdx    # 0x76a228
xorl %eax, %eax
movl %eax, %ecx
callq 0x11b6d0
movq %rax, 0x30(%rsp)
jmp 0x393edf
xorl %eax, %eax
movq %rax, 0x30(%rsp)
jmp 0x393edf
movq 0x30(%rsp), %rcx
movq %rcx, 0x190(%rsp)
xorl %eax, %eax
cmpq %rcx, %rax
je 0x393fdc
movq 0xb00(%rsp), %rax
movq %rax, 0x28(%rsp)
cmpq $0x0, %rax
je 0x393f2d
movq 0x28(%rsp), %rdi
leaq 0x3d62ca(%rip), %rsi    # 0x76a1e0
leaq 0x3d630b(%rip), %rdx    # 0x76a228
xorl %eax, %eax
movl %eax, %ecx
callq 0x11b6d0
movq %rax, 0x20(%rsp)
jmp 0x393f36
xorl %eax, %eax
movq %rax, 0x20(%rsp)
jmp 0x393f36
movq 0x20(%rsp), %rcx
movq %rcx, 0x188(%rsp)
xorl %eax, %eax
cmpq %rcx, %rax
je 0x393fdc
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0x190(%rsp), %rsi
leaq 0x188(%rsp), %rdx
callq 0x3f1240
movq %rax, 0x18(%rsp)
jmp 0x393f79
movq 0x18(%rsp), %rax
movq %rax, 0x180(%rsp)
testb $0x1, 0xaff(%rsp)
je 0x393fb0
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb08(%rsp), %rsi
callq 0x284bd0
jmp 0x393fae
jmp 0x393fb0
testb $0x1, 0xafe(%rsp)
je 0x393fda
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb00(%rsp), %rsi
callq 0x284bd0
jmp 0x393fd8
jmp 0x393fda
jmp 0x394014
movq 0x140(%rsp), %rdi
addq $0x290, %rdi            # imm = 0x290
leaq 0xb08(%rsp), %rsi
leaq 0xb00(%rsp), %rdx
callq 0x3f12d0
movq %rax, 0x10(%rsp)
jmp 0x394007
movq 0x10(%rsp), %rax
movq %rax, 0x180(%rsp)
movq 0x140(%rsp), %rax
addq $0x3a8, %rax            # imm = 0x3A8
movq %rax, (%rsp)
leaq 0x15f(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0x11b6f0
movq 0x8(%rsp), %rdx
leaq 0x215e62(%rip), %rsi    # 0x5a9ea6
leaq 0x160(%rsp), %rdi
callq 0x134520
jmp 0x394053
movq (%rsp), %rdi
leaq 0x160(%rsp), %rsi
callq 0x3eb500
leaq 0x160(%rsp), %rdi
callq 0x11b838
leaq 0x15f(%rsp), %rdi
callq 0x11b820
movq 0x180(%rsp), %rax
movq %rax, 0xc60(%rsp)
movl $0x1, 0x9bc(%rsp)
jmp 0x3940be
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xc28(%rsp)
movl %eax, 0xc24(%rsp)
leaq 0x15f(%rsp), %rdi
callq 0x11b820
jmp 0x3940cd
leaq 0x628(%rsp), %rdi
callq 0x11b838
jmp 0x3940dc
leaq 0x628(%rsp), %rdi
callq 0x11b838
jmp 0x3940eb
leaq 0xad8(%rsp), %rdi
callq 0x11b838
jmp 0x3940fa
leaq 0xad8(%rsp), %rdi
callq 0x11b838
jmp 0x39410a
movq 0xc60(%rsp), %rax
addq $0xc68, %rsp            # imm = 0xC68
retq
movq 0xc28(%rsp), %rdi
callq 0x11b4e0
nopw (%rax,%rax)