// File: ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::parser<double>::parse_return_statement()
inline expression_node_ptr parse_return_statement()
      {
         if (state_.parsing_return_stmt)
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR214 - Return call within a return call is not allowed",
               exprtk_error_location));

            return error_node();
         }

         scoped_bool_negator sbn(state_.parsing_return_stmt);

         std::vector<expression_node_ptr> arg_list;

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

         if (!details::imatch(current_token().value,"return"))
         {
            return error_node();
         }
         else
            next_token();

         if (!token_is(token_t::e_lsqrbracket))
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR215 - Expected '[' at start of return statement",
               exprtk_error_location));

            return error_node();
         }
         else if (!token_is(token_t::e_rsqrbracket))
         {
            for ( ; ; )
            {
               expression_node_ptr arg = parse_expression();

               if (0 == arg)
                  return error_node();

               arg_list.push_back(arg);

               if (token_is(token_t::e_rsqrbracket))
                  break;
               else if (!token_is(token_t::e_comma))
               {
                  set_error(make_error(
                     parser_error::e_syntax,
                     current_token(),
                     "ERR216 - Expected ',' between values during call to return",
                     exprtk_error_location));

                  return error_node();
               }
            }
         }
         else if (settings_.zero_return_disabled())
         {
            set_error(make_error(
               parser_error::e_syntax,
               current_token(),
               "ERR217 - Zero parameter return statement not allowed",
               exprtk_error_location));

            return error_node();
         }

         const lexer::token prev_token = current_token();

         if (token_is(token_t::e_rsqrbracket))
         {
            if (!arg_list.empty())
            {
               set_error(make_error(
                  parser_error::e_syntax,
                  prev_token,
                  "ERR218 - Invalid ']' found during return call",
                  exprtk_error_location));

               return error_node();
            }
         }

         std::string ret_param_type_list;

         for (std::size_t i = 0; i < arg_list.size(); ++i)
         {
            if (0 == arg_list[i])
               return error_node();
            else if (is_ivector_node(arg_list[i]))
               ret_param_type_list += 'V';
            else if (is_generally_string_node(arg_list[i]))
               ret_param_type_list += 'S';
            else
               ret_param_type_list += 'T';
         }

         dec_.retparam_list_.push_back(ret_param_type_list);

         expression_node_ptr result = expression_generator_.return_call(arg_list);

         svd.delete_ptr = (0 == result);

         state_.return_stmt_present = true;

         state_.activate_side_effect("parse_return_statement()");

         return result;
      }

// Assembly:
subq $0x758, %rsp            # imm = 0x758
movq %rdi, 0x748(%rsp)
movq 0x748(%rsp), %rax
movq %rax, 0xd0(%rsp)
testb $0x1, 0x3a8(%rax)
je 0x394311
movq 0xd0(%rsp), %rdi
callq 0x373e90
movq %rax, 0xc0(%rsp)
leaq 0x67f(%rsp), %rdi
movq %rdi, 0xc8(%rsp)
callq 0x11b6f0
movq 0xc8(%rsp), %rdx
leaq 0x215eeb(%rip), %rsi    # 0x5aa070
leaq 0x680(%rsp), %rdi
callq 0x134520
jmp 0x394194
leaq 0x628(%rsp), %rdi
movl $0x7742, %esi           # imm = 0x7742
callq 0x371f20
jmp 0x3941a8
leaq 0x212d64(%rip), %rsi    # 0x5a6f13
leaq 0x648(%rsp), %rdi
leaq 0x628(%rsp), %rdx
callq 0x29dd70
jmp 0x3941c6
movq 0xc0(%rsp), %rdx
leaq 0x6a0(%rsp), %rdi
movl $0x1, %esi
leaq 0x680(%rsp), %rcx
leaq 0x648(%rsp), %r8
callq 0x3741e0
jmp 0x3941f2
movq 0xd0(%rsp), %rdi
leaq 0x6a0(%rsp), %rsi
callq 0x371e40
jmp 0x394209
leaq 0x6a0(%rsp), %rdi
callq 0x371330
leaq 0x648(%rsp), %rdi
callq 0x11b838
leaq 0x628(%rsp), %rdi
callq 0x11b838
leaq 0x680(%rsp), %rdi
callq 0x11b838
leaq 0x67f(%rsp), %rdi
callq 0x11b820
callq 0x2821f0
movq %rax, 0x750(%rsp)
jmp 0x3950ed
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3942ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3942f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3942e5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3942d8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
leaq 0x6a0(%rsp), %rdi
callq 0x371330
leaq 0x648(%rsp), %rdi
callq 0x11b838
leaq 0x628(%rsp), %rdi
callq 0x11b838
leaq 0x680(%rsp), %rdi
callq 0x11b838
leaq 0x67f(%rsp), %rdi
callq 0x11b820
jmp 0x3950fd
movq 0xd0(%rsp), %rsi
addq $0x3a8, %rsi            # imm = 0x3A8
leaq 0x620(%rsp), %rdi
callq 0x50e080
leaq 0x608(%rsp), %rdi
movq %rdi, 0xb8(%rsp)
callq 0x3798f0
movq 0xd0(%rsp), %rsi
movq 0xb8(%rsp), %rdx
leaq 0x5f0(%rsp), %rdi
callq 0x379910
jmp 0x394361
movq 0xd0(%rsp), %rdi
callq 0x373e90
movq %rax, 0xb0(%rsp)
jmp 0x394378
movq 0xb0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0xa0(%rsp)
leaq 0x5cf(%rsp), %rdi
movq %rdi, 0xa8(%rsp)
callq 0x11b6f0
movq 0xa8(%rsp), %rdx
leaq 0x215d60(%rip), %rsi    # 0x5aa110
leaq 0x5d0(%rsp), %rdi
callq 0x134520
jmp 0x3943bf
movq 0xa0(%rsp), %rdi
leaq 0x5d0(%rsp), %rsi
callq 0x37fb20
movb %al, 0x9f(%rsp)
jmp 0x3943dd
movb 0x9f(%rsp), %al
xorb $-0x1, %al
movb %al, 0x9e(%rsp)
leaq 0x5d0(%rsp), %rdi
callq 0x11b838
leaq 0x5cf(%rsp), %rdi
callq 0x11b820
movb 0x9e(%rsp), %al
testb $0x1, %al
jne 0x394417
jmp 0x3944af
callq 0x2821f0
movq %rax, 0x750(%rsp)
movl $0x1, 0x5c8(%rsp)
jmp 0x39509b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3950d1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3950c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x39449d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
leaq 0x5d0(%rsp), %rdi
callq 0x11b838
leaq 0x5cf(%rsp), %rdi
callq 0x11b820
jmp 0x3950c4
movq 0xd0(%rsp), %rdi
callq 0x373690
jmp 0x3944be
jmp 0x3944c0
movq 0xd0(%rsp), %rdi
movl $0x5b, 0x5c4(%rsp)
leaq 0x5c4(%rsp), %rsi
movl $0x1, %edx
callq 0x37d640
movb %al, 0x9d(%rsp)
jmp 0x3944ee
movb 0x9d(%rsp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x394500
jmp 0x3946d2
movq 0xd0(%rsp), %rdi
callq 0x373e90
movq %rax, 0x90(%rsp)
jmp 0x394517
leaq 0x4f7(%rsp), %rdi
movq %rdi, 0x88(%rsp)
callq 0x11b6f0
movq 0x88(%rsp), %rdx
leaq 0x215b6e(%rip), %rsi    # 0x5aa0a9
leaq 0x4f8(%rsp), %rdi
callq 0x134520
jmp 0x39454a
leaq 0x4b0(%rsp), %rdi
movl $0x775a, %esi           # imm = 0x775A
callq 0x371f20
jmp 0x39455e
leaq 0x2129ae(%rip), %rsi    # 0x5a6f13
leaq 0x4d0(%rsp), %rdi
leaq 0x4b0(%rsp), %rdx
callq 0x29dd70
jmp 0x39457c
movq 0x90(%rsp), %rdx
leaq 0x518(%rsp), %rdi
movl $0x1, %esi
leaq 0x4f8(%rsp), %rcx
leaq 0x4d0(%rsp), %r8
callq 0x3741e0
jmp 0x3945a8
movq 0xd0(%rsp), %rdi
leaq 0x518(%rsp), %rsi
callq 0x371e40
jmp 0x3945bf
leaq 0x518(%rsp), %rdi
callq 0x371330
leaq 0x4d0(%rsp), %rdi
callq 0x11b838
leaq 0x4b0(%rsp), %rdi
callq 0x11b838
leaq 0x4f8(%rsp), %rdi
callq 0x11b838
leaq 0x4f7(%rsp), %rdi
callq 0x11b820
callq 0x2821f0
movq %rax, 0x750(%rsp)
movl $0x1, 0x5c8(%rsp)
jmp 0x39509b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3946c0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3946b3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x3946a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394699
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
leaq 0x518(%rsp), %rdi
callq 0x371330
leaq 0x4d0(%rsp), %rdi
callq 0x11b838
leaq 0x4b0(%rsp), %rdi
callq 0x11b838
leaq 0x4f8(%rsp), %rdi
callq 0x11b838
leaq 0x4f7(%rsp), %rdi
callq 0x11b820
jmp 0x3950c4
movq 0xd0(%rsp), %rdi
movl $0x5d, 0x4ac(%rsp)
leaq 0x4ac(%rsp), %rsi
movl $0x1, %edx
callq 0x37d640
movb %al, 0x87(%rsp)
jmp 0x394700
movb 0x87(%rsp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x394712
jmp 0x3949bd
jmp 0x394714
movq 0xd0(%rsp), %rdi
xorl %esi, %esi
callq 0x379940
movq %rax, 0x78(%rsp)
jmp 0x39472a
movq 0x78(%rsp), %rax
movq %rax, 0x4a0(%rsp)
xorl %eax, %eax
cmpq 0x4a0(%rsp), %rax
jne 0x394760
callq 0x2821f0
movq %rax, 0x750(%rsp)
movl $0x1, 0x5c8(%rsp)
jmp 0x39509b
leaq 0x608(%rsp), %rdi
leaq 0x4a0(%rsp), %rsi
callq 0x37d3b0
jmp 0x394777
movq 0xd0(%rsp), %rdi
movl $0x5d, 0x49c(%rsp)
leaq 0x49c(%rsp), %rsi
movl $0x1, %edx
callq 0x37d640
movb %al, 0x77(%rsp)
jmp 0x3947a2
movb 0x77(%rsp), %al
testb $0x1, %al
jne 0x3947ac
jmp 0x3947b1
jmp 0x3949b8
movq 0xd0(%rsp), %rdi
movl $0x2c, 0x498(%rsp)
leaq 0x498(%rsp), %rsi
movl $0x1, %edx
callq 0x37d640
movb %al, 0x76(%rsp)
jmp 0x3947dc
movb 0x76(%rsp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3947eb
jmp 0x3949b1
movq 0xd0(%rsp), %rdi
callq 0x373e90
movq %rax, 0x68(%rsp)
jmp 0x3947ff
leaq 0x3cf(%rsp), %rdi
movq %rdi, 0x60(%rsp)
callq 0x11b6f0
movq 0x60(%rsp), %rdx
leaq 0x2158bf(%rip), %rsi    # 0x5aa0dc
leaq 0x3d0(%rsp), %rdi
callq 0x134520
jmp 0x39482c
leaq 0x388(%rsp), %rdi
movl $0x7771, %esi           # imm = 0x7771
callq 0x371f20
jmp 0x394840
leaq 0x2126cc(%rip), %rsi    # 0x5a6f13
leaq 0x3a8(%rsp), %rdi
leaq 0x388(%rsp), %rdx
callq 0x29dd70
jmp 0x39485e
movq 0x68(%rsp), %rdx
leaq 0x3f0(%rsp), %rdi
movl $0x1, %esi
leaq 0x3d0(%rsp), %rcx
leaq 0x3a8(%rsp), %r8
callq 0x3741e0
jmp 0x394887
movq 0xd0(%rsp), %rdi
leaq 0x3f0(%rsp), %rsi
callq 0x371e40
jmp 0x39489e
leaq 0x3f0(%rsp), %rdi
callq 0x371330
leaq 0x3a8(%rsp), %rdi
callq 0x11b838
leaq 0x388(%rsp), %rdi
callq 0x11b838
leaq 0x3d0(%rsp), %rdi
callq 0x11b838
leaq 0x3cf(%rsp), %rdi
callq 0x11b820
callq 0x2821f0
movq %rax, 0x750(%rsp)
movl $0x1, 0x5c8(%rsp)
jmp 0x39509b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x39499f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394992
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394985
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394978
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
leaq 0x3f0(%rsp), %rdi
callq 0x371330
leaq 0x3a8(%rsp), %rdi
callq 0x11b838
leaq 0x388(%rsp), %rdi
callq 0x11b838
leaq 0x3d0(%rsp), %rdi
callq 0x11b838
leaq 0x3cf(%rsp), %rdi
callq 0x11b820
jmp 0x3950c4
jmp 0x3949b3
jmp 0x394714
jmp 0x394bac
movq 0xd0(%rsp), %rdi
addq $0xd0, %rdi
callq 0x51d410
movb %al, 0x5f(%rsp)
jmp 0x3949d7
movb 0x5f(%rsp), %al
testb $0x1, %al
jne 0x3949e4
jmp 0x394baa
movq 0xd0(%rsp), %rdi
callq 0x373e90
movq %rax, 0x50(%rsp)
jmp 0x3949f8
leaq 0x2bf(%rsp), %rdi
movq %rdi, 0x48(%rsp)
callq 0x11b6f0
movq 0x48(%rsp), %rdx
leaq 0x215701(%rip), %rsi    # 0x5aa117
leaq 0x2c0(%rsp), %rdi
callq 0x134520
jmp 0x394a25
leaq 0x278(%rsp), %rdi
movl $0x777d, %esi           # imm = 0x777D
callq 0x371f20
jmp 0x394a39
leaq 0x2124d3(%rip), %rsi    # 0x5a6f13
leaq 0x298(%rsp), %rdi
leaq 0x278(%rsp), %rdx
callq 0x29dd70
jmp 0x394a57
movq 0x50(%rsp), %rdx
leaq 0x2e0(%rsp), %rdi
movl $0x1, %esi
leaq 0x2c0(%rsp), %rcx
leaq 0x298(%rsp), %r8
callq 0x3741e0
jmp 0x394a80
movq 0xd0(%rsp), %rdi
leaq 0x2e0(%rsp), %rsi
callq 0x371e40
jmp 0x394a97
leaq 0x2e0(%rsp), %rdi
callq 0x371330
leaq 0x298(%rsp), %rdi
callq 0x11b838
leaq 0x278(%rsp), %rdi
callq 0x11b838
leaq 0x2c0(%rsp), %rdi
callq 0x11b838
leaq 0x2bf(%rsp), %rdi
callq 0x11b820
callq 0x2821f0
movq %rax, 0x750(%rsp)
movl $0x1, 0x5c8(%rsp)
jmp 0x39509b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394b98
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394b8b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394b7e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394b71
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
leaq 0x2e0(%rsp), %rdi
callq 0x371330
leaq 0x298(%rsp), %rdi
callq 0x11b838
leaq 0x278(%rsp), %rdi
callq 0x11b838
leaq 0x2c0(%rsp), %rdi
callq 0x11b838
leaq 0x2bf(%rsp), %rdi
callq 0x11b820
jmp 0x3950c4
jmp 0x394bac
jmp 0x394bae
movq 0xd0(%rsp), %rdi
callq 0x373e90
movq %rax, 0x40(%rsp)
jmp 0x394bc2
movq 0x40(%rsp), %rsi
leaq 0x248(%rsp), %rdi
callq 0x255940
jmp 0x394bd6
movq 0xd0(%rsp), %rdi
movl $0x5d, 0x244(%rsp)
leaq 0x244(%rsp), %rsi
movl $0x1, %edx
callq 0x37d640
movb %al, 0x3f(%rsp)
jmp 0x394c01
movb 0x3f(%rsp), %al
testb $0x1, %al
jne 0x394c0e
jmp 0x394df3
leaq 0x608(%rsp), %rdi
callq 0x37d750
testb $0x1, %al
jne 0x394df1
leaq 0x177(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0x11b6f0
movq 0x30(%rsp), %rdx
leaq 0x21550b(%rip), %rsi    # 0x5aa14c
leaq 0x178(%rsp), %rdi
callq 0x134520
jmp 0x394c50
leaq 0x130(%rsp), %rdi
movl $0x778c, %esi           # imm = 0x778C
callq 0x371f20
jmp 0x394c64
leaq 0x2122a8(%rip), %rsi    # 0x5a6f13
leaq 0x150(%rsp), %rdi
leaq 0x130(%rsp), %rdx
callq 0x29dd70
jmp 0x394c82
leaq 0x198(%rsp), %rdi
movl $0x1, %esi
leaq 0x248(%rsp), %rdx
leaq 0x178(%rsp), %rcx
leaq 0x150(%rsp), %r8
callq 0x3741e0
jmp 0x394cae
movq 0xd0(%rsp), %rdi
leaq 0x198(%rsp), %rsi
callq 0x371e40
jmp 0x394cc5
leaq 0x198(%rsp), %rdi
callq 0x371330
leaq 0x150(%rsp), %rdi
callq 0x11b838
leaq 0x130(%rsp), %rdi
callq 0x11b838
leaq 0x178(%rsp), %rdi
callq 0x11b838
leaq 0x177(%rsp), %rdi
callq 0x11b820
callq 0x2821f0
movq %rax, 0x750(%rsp)
movl $0x1, 0x5c8(%rsp)
jmp 0x39507d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x39508c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394ddf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394dd2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394dc5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x394db8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
leaq 0x198(%rsp), %rdi
callq 0x371330
leaq 0x150(%rsp), %rdi
callq 0x11b838
leaq 0x130(%rsp), %rdi
callq 0x11b838
leaq 0x178(%rsp), %rdi
callq 0x11b838
leaq 0x177(%rsp), %rdi
callq 0x11b820
jmp 0x39508c
jmp 0x394df3
leaq 0x110(%rsp), %rdi
callq 0x11b2b0
movq $0x0, 0x108(%rsp)
movq 0x108(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x608(%rsp), %rdi
callq 0x39d0d0
movq %rax, %rcx
movq 0x28(%rsp), %rax
cmpq %rcx, %rax
jae 0x394f47
movq 0x108(%rsp), %rsi
leaq 0x608(%rsp), %rdi
callq 0x39d110
movq %rax, %rcx
xorl %eax, %eax
cmpq (%rcx), %rax
jne 0x394e73
callq 0x2821f0
movq %rax, 0x750(%rsp)
movl $0x1, 0x5c8(%rsp)
jmp 0x39505f
movq 0x108(%rsp), %rsi
leaq 0x608(%rsp), %rdi
callq 0x39d110
movq (%rax), %rdi
callq 0x39f460
movb %al, 0x27(%rsp)
jmp 0x394e96
movb 0x27(%rsp), %al
testb $0x1, %al
jne 0x394ea0
jmp 0x394ecf
leaq 0x110(%rsp), %rdi
movl $0x56, %esi
callq 0x11b510
jmp 0x394eb4
jmp 0x394f2a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
jmp 0x39506e
movq 0x108(%rsp), %rsi
leaq 0x608(%rsp), %rdi
callq 0x39d110
movq (%rax), %rdi
callq 0x3a7600
movb %al, 0x26(%rsp)
jmp 0x394ef2
movb 0x26(%rsp), %al
testb $0x1, %al
jne 0x394efc
jmp 0x394f12
leaq 0x110(%rsp), %rdi
movl $0x53, %esi
callq 0x11b510
jmp 0x394f10
jmp 0x394f28
leaq 0x110(%rsp), %rdi
movl $0x54, %esi
callq 0x11b510
jmp 0x394f26
jmp 0x394f28
jmp 0x394f2a
jmp 0x394f2c
jmp 0x394f2e
movq 0x108(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x108(%rsp)
jmp 0x394e0c
movq 0xd0(%rsp), %rdi
addq $0x2f0, %rdi            # imm = 0x2F0
leaq 0x110(%rsp), %rsi
callq 0x51d420
jmp 0x394f65
movq 0xd0(%rsp), %rdi
addq $0x220, %rdi            # imm = 0x220
leaq 0x608(%rsp), %rsi
callq 0x51d490
movq %rax, 0x18(%rsp)
jmp 0x394f88
movq 0xd0(%rsp), %rax
movq 0x18(%rsp), %rcx
movq %rcx, 0x100(%rsp)
movq 0x100(%rsp), %rcx
testq %rcx, %rcx
sete 0x5f0(%rsp)
movq %rax, %rcx
addq $0x3a8, %rcx            # imm = 0x3A8
movq %rcx, 0x8(%rsp)
movb $0x1, 0x3ab(%rax)
leaq 0xdf(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x11b6f0
movq 0x10(%rsp), %rdx
leaq 0x215196(%rip), %rsi    # 0x5aa17a
leaq 0xe0(%rsp), %rdi
callq 0x134520
jmp 0x394ff3
movq 0x8(%rsp), %rdi
leaq 0xe0(%rsp), %rsi
callq 0x3eb500
leaq 0xe0(%rsp), %rdi
callq 0x11b838
leaq 0xdf(%rsp), %rdi
callq 0x11b820
movq 0x100(%rsp), %rax
movq %rax, 0x750(%rsp)
movl $0x1, 0x5c8(%rsp)
jmp 0x39505f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x670(%rsp)
movl %eax, 0x66c(%rsp)
leaq 0xdf(%rsp), %rdi
callq 0x11b820
jmp 0x39506e
leaq 0x110(%rsp), %rdi
callq 0x11b838
jmp 0x39507d
leaq 0x110(%rsp), %rdi
callq 0x11b838
jmp 0x39508c
leaq 0x248(%rsp), %rdi
callq 0x2512e0
jmp 0x39509b
leaq 0x248(%rsp), %rdi
callq 0x2512e0
jmp 0x3950c4
leaq 0x5f0(%rsp), %rdi
callq 0x37dec0
leaq 0x608(%rsp), %rdi
callq 0x37df90
leaq 0x620(%rsp), %rdi
callq 0x50e150
jmp 0x3950ed
leaq 0x5f0(%rsp), %rdi
callq 0x37dec0
leaq 0x608(%rsp), %rdi
callq 0x37df90
leaq 0x620(%rsp), %rdi
callq 0x50e150
jmp 0x3950fd
movq 0x750(%rsp), %rax
addq $0x758, %rsp            # imm = 0x758
retq
movq 0x670(%rsp), %rdi
callq 0x11b4e0
nopw (%rax,%rax)