// File: sundale[P]gcode/rs274ngc/interp_read.cc
// Function: Interp::read_parameter_setting(char*, int*, block_struct*, double*)
int Interp::read_parameter_setting(
    char *line,   //!< string: line of RS274/NGC code being processed
    int *counter, //!< pointer to a counter for position on the line 
    block_pointer block,  //!< pointer to a block being filled from the line 
    double *parameters)   //!< array of system parameters
{
  static char name[] = "read_parameter_setting";
  int index;
  double value;
  char *param;
  char *dup;

  CHKS((line[*counter] != '#'), NCE_BUG_FUNCTION_SHOULD_NOT_HAVE_BEEN_CALLED);
  *counter = (*counter + 1);

  // named parameters look like '<letter...>' or '<_letter.....>'
  if((line[*counter] == '<') || isalpha(line[*(counter)]))
  {
      CHP(read_named_parameter_setting(line, counter, &param, parameters));

      CHKS((line[*counter] != '='),
          NCE_EQUAL_SIGN_MISSING_IN_PARAMETER_SETTING);
      *counter = (*counter + 1);
      CHP(read_real_value(line, counter, &value, parameters));

      logDebug("setting up named param[%d]:|%s| value:%lf",
               _setup.named_parameter_occurrence, param, value);

      dup = strdup(param);
      if(dup == 0)
      {
          ERS(NCE_OUT_OF_MEMORY);
      }
      logDebug("%s strdup[0x%x]:|%s|", name, dup, dup);
      _setup.named_parameters[_setup.named_parameter_occurrence] = dup;

      _setup.named_parameter_values[_setup.named_parameter_occurrence] = value;
      _setup.named_parameter_occurrence++;
      logDebug("done setting up named param[%d]:|%s| value:%lf",
               _setup.named_parameter_occurrence, param, value);
  }
  else
  {
      CHP(read_integer_value(line, counter, &index, parameters));
      CHKS(((index < 1) || (index >= RS274NGC_MAX_PARAMETERS)),
          NCE_PARAMETER_NUMBER_OUT_OF_RANGE);
      CHKS((isreadonly(index)), NCE_PARAMETER_NUMBER_READONLY);
      CHKS((line[*counter] != '='),
          NCE_EQUAL_SIGN_MISSING_IN_PARAMETER_SETTING);
      *counter = (*counter + 1);
      CHP(read_real_value(line, counter, &value, parameters));
      _setup.parameter_numbers[_setup.parameter_occurrence] = index;
      _setup.parameter_values[_setup.parameter_occurrence] = value;
      _setup.parameter_occurrence++;
  }
  return INTERP_OK;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x23, %eax
je 0x66394
jmp 0x662c1
leaq 0x1611d(%rip), %rdi     # 0x7c3e5
callq 0x10380
movq -0x68(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x20c7e(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x20c6d(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x20c5f(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x180dd(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x20c39(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x20c2b(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x20c13(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x20c03(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x20bf6(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x20be8(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x66e10
jmp 0x66396
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x3c, %eax
je 0x663d6
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %edi
callq 0x11c30
cmpl $0x0, %eax
je 0x66907
jmp 0x663d8
movq -0x68(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
movq -0x30(%rbp), %r8
leaq -0x48(%rbp), %rcx
callq 0x11d70
movl %eax, -0x54(%rbp)
cmpl $0x0, -0x54(%rbp)
je 0x664bb
jmp 0x66400
movq 0x20b59(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x664b0
movq 0x20b45(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x20b37(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x17fb5(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x20b11(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x20b03(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x20aeb(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x20adb(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x20ace(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x20ac0(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x54(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x66e10
jmp 0x664bd
jmp 0x664bf
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x3d, %eax
je 0x665ac
jmp 0x664d9
leaq 0x17f5e(%rip), %rdi     # 0x7e43e
callq 0x10380
movq -0x68(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x20a66(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x20a55(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x20a47(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x17ec5(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x20a21(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x20a13(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x209fb(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x209eb(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x209de(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x209d0(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x66e10
jmp 0x665ae
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
movq -0x68(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
movq -0x30(%rbp), %r8
leaq -0x40(%rbp), %rcx
callq 0x118a0
movl %eax, -0x58(%rbp)
cmpl $0x0, -0x58(%rbp)
je 0x666a0
jmp 0x665e5
movq 0x20974(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x66695
movq 0x20960(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x20952(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x17dd0(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x2092c(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x2091e(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x20906(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x208f6(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x208e9(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x208db(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x58(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x66e10
jmp 0x666a2
jmp 0x666a4
xorl %eax, %eax
movq 0x208b3(%rip), %rcx     # 0x86f60
cmpl 0x1b6b4(%rcx), %eax
jge 0x666fd
callq 0x11950
movq -0x68(%rbp), %rdi
movl %eax, %ecx
movq 0x20899(%rip), %rax     # 0x86f60
movl 0xc350(%rax), %r10d
movq -0x48(%rbp), %rax
movsd -0x40(%rbp), %xmm0
leaq 0x17d88(%rip), %rsi     # 0x7e466
xorl %edx, %edx
leaq 0x176e2(%rip), %r8      # 0x7ddc9
movl $0x8a3, %r9d            # imm = 0x8A3
movl %r10d, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x1, %al
callq 0x12050
jmp 0x666ff
movq -0x48(%rbp), %rdi
callq 0x120d0
movq %rax, -0x50(%rbp)
cmpq $0x0, -0x50(%rbp)
jne 0x667ec
jmp 0x66719
leaq 0x17b99(%rip), %rdi     # 0x7e2b9
callq 0x10380
movq -0x68(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x20826(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x20815(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x20807(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x17c85(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x207e1(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x207d3(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x207bb(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x207ab(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x2079e(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x20790(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x66e10
jmp 0x667ee
xorl %eax, %eax
movq 0x20769(%rip), %rcx     # 0x86f60
cmpl 0x1b6b4(%rcx), %eax
jge 0x66844
callq 0x11950
movq -0x68(%rbp), %rdi
movl %eax, %ecx
movq -0x50(%rbp), %r10
movq -0x50(%rbp), %rax
leaq 0x17aae(%rip), %rsi     # 0x7e2c7
xorl %edx, %edx
leaq 0x175a7(%rip), %r8      # 0x7ddc9
movl $0x8aa, %r9d            # imm = 0x8AA
leaq 0x21a11(%rip), %r11     # 0x88240
movq %r11, (%rsp)
movq %r10, 0x8(%rsp)
movq %rax, 0x10(%rsp)
movb $0x0, %al
callq 0x12050
jmp 0x66846
movq -0x50(%rbp), %rdx
movq 0x2070f(%rip), %rax     # 0x86f60
movslq 0xc350(%rax), %rcx
movq 0x20701(%rip), %rax     # 0x86f60
movq %rdx, 0xc358(%rax,%rcx,8)
movsd -0x40(%rbp), %xmm0
movq 0x206ed(%rip), %rax     # 0x86f60
movslq 0xc350(%rax), %rcx
movq 0x206df(%rip), %rax     # 0x86f60
movsd %xmm0, 0xc4e8(%rax,%rcx,8)
movq 0x206cf(%rip), %rax     # 0x86f60
movl 0xc350(%rax), %ecx
addl $0x1, %ecx
movq 0x206bf(%rip), %rax     # 0x86f60
movl %ecx, 0xc350(%rax)
xorl %eax, %eax
movq 0x206b0(%rip), %rcx     # 0x86f60
cmpl 0x1b6b4(%rcx), %eax
jge 0x66900
callq 0x11950
movq -0x68(%rbp), %rdi
movl %eax, %ecx
movq 0x20696(%rip), %rax     # 0x86f60
movl 0xc350(%rax), %r10d
movq -0x48(%rbp), %rax
movsd -0x40(%rbp), %xmm0
leaq 0x17bc2(%rip), %rsi     # 0x7e4a3
xorl %edx, %edx
leaq 0x174df(%rip), %r8      # 0x7ddc9
movl $0x8b0, %r9d            # imm = 0x8B0
movl %r10d, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x1, %al
callq 0x12050
jmp 0x66902
jmp 0x66e09
jmp 0x66909
movq -0x68(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
movq -0x30(%rbp), %r8
leaq -0x34(%rbp), %rcx
callq 0x11250
movl %eax, -0x5c(%rbp)
cmpl $0x0, -0x5c(%rbp)
je 0x669ec
jmp 0x66931
movq 0x20628(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x669e1
movq 0x20614(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x20606(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x17a84(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x205e0(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x205d2(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x205ba(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x205aa(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x2059d(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x2058f(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x5c(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x66e10
jmp 0x669ee
jmp 0x669f0
cmpl $0x1, -0x34(%rbp)
jl 0x66a03
cmpl $0x1526, -0x34(%rbp)    # imm = 0x1526
jl 0x66ad8
jmp 0x66a05
leaq 0x179c9(%rip), %rdi     # 0x7e3d5
callq 0x10380
movq -0x68(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x2053a(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x20529(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x2051b(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x17999(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x204f5(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x204e7(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x204cf(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x204bf(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x204b2(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x204a4(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x66e10
jmp 0x66ada
jmp 0x66adc
movq -0x68(%rbp), %rdi
movl -0x34(%rbp), %esi
callq 0x11190
testb $0x1, %al
jne 0x66af1
jmp 0x66bc6
jmp 0x66af3
leaq 0x179eb(%rip), %rdi     # 0x7e4e5
callq 0x10380
movq -0x68(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x2044c(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x2043b(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x2042d(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x178ab(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x20407(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x203f9(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x203e1(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x203d1(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x203c4(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x203b6(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x66e10
jmp 0x66bc8
jmp 0x66bca
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x3d, %eax
je 0x66cb7
jmp 0x66be4
leaq 0x17853(%rip), %rdi     # 0x7e43e
callq 0x10380
movq -0x68(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x2035b(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x2034a(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x2033c(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x177ba(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x20316(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x20308(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x202f0(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x202e0(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x202d3(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x202c5(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x66e10
jmp 0x66cb9
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
movq -0x68(%rbp), %rdi
movq -0x18(%rbp), %rsi
movq -0x20(%rbp), %rdx
movq -0x30(%rbp), %r8
leaq -0x40(%rbp), %rcx
callq 0x118a0
movl %eax, -0x60(%rbp)
cmpl $0x0, -0x60(%rbp)
je 0x66da8
jmp 0x66cf0
movq 0x20269(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x66da0
movq 0x20255(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x20247(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x176c5(%rip), %rsi     # 0x7e3f3
movl $0x50, %edx
callq 0x10840
movq 0x20221(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x20213(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x201fb(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x201eb(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x201de(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x201d0(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x60(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x66e10
jmp 0x66daa
movl -0x34(%rbp), %edx
movq 0x201ac(%rip), %rax     # 0x86f60
movslq 0xc0f0(%rax), %rcx
movq 0x2019e(%rip), %rax     # 0x86f60
movl %edx, 0xc0f4(%rax,%rcx,4)
movsd -0x40(%rbp), %xmm0
movq 0x2018b(%rip), %rax     # 0x86f60
movslq 0xc0f0(%rax), %rcx
movq 0x2017d(%rip), %rax     # 0x86f60
movsd %xmm0, 0xc1c0(%rax,%rcx,8)
movq 0x2016d(%rip), %rax     # 0x86f60
movl 0xc0f0(%rax), %ecx
addl $0x1, %ecx
movq 0x2015d(%rip), %rax     # 0x86f60
movl %ecx, 0xc0f0(%rax)
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x80, %rsp
popq %rbp
retq
nopl (%rax)