// File: sundale[P]gcode/rs274ngc/interp_read.cc
// Function: Interp::read_operation_unary(char*, int*, int*)
int Interp::read_operation_unary(char *line,     //!< string: line of RS274/NGC code being processed
                                int *counter,   //!< pointer to a counter for position on the line 
                                int *operation) //!< pointer to operation to be read               
{
  char c;

  c = line[*counter];
  *counter = (*counter + 1);
  switch (c) {
  case 'a':
    if ((line[*counter] == 'b') && (line[(*counter) + 1] == 's')) {
      *operation = ABS;
      *counter = (*counter + 2);
    } else if (strncmp((line + *counter), "cos", 3) == 0) {
      *operation = ACOS;
      *counter = (*counter + 3);
    } else if (strncmp((line + *counter), "sin", 3) == 0) {
      *operation = ASIN;
      *counter = (*counter + 3);
    } else if (strncmp((line + *counter), "tan", 3) == 0) {
      *operation = ATAN;
      *counter = (*counter + 3);
    } else
      ERS(NCE_UNKNOWN_WORD_STARTING_WITH_A);
    break;
  case 'c':
    if ((line[*counter] == 'o') && (line[(*counter) + 1] == 's')) {
      *operation = COS;
      *counter = (*counter + 2);
    } else
      ERS(NCE_UNKNOWN_WORD_STARTING_WITH_C);
    break;
  case 'e':
    if ((line[*counter] == 'x') && (line[(*counter) + 1] == 'p')) {
      *operation = EXP;
      *counter = (*counter + 2);
    } else
      ERS(NCE_UNKNOWN_WORD_STARTING_WITH_E);
    break;
  case 'f':
    if ((line[*counter] == 'i') && (line[(*counter) + 1] == 'x')) {
      *operation = FIX;
      *counter = (*counter + 2);
    } else if ((line[*counter] == 'u') && (line[(*counter) + 1] == 'p')) {
      *operation = FUP;
      *counter = (*counter + 2);
    } else
      ERS(NCE_UNKNOWN_WORD_STARTING_WITH_F);
    break;
  case 'l':
    if (line[*counter] == 'n') {
      *operation = LN;
      *counter = (*counter + 1);
    } else
      ERS(NCE_UNKNOWN_WORD_STARTING_WITH_L);
    break;
  case 'r':
    if (strncmp((line + *counter), "ound", 4) == 0) {
      *operation = ROUND;
      *counter = (*counter + 4);
    } else
      ERS(NCE_UNKNOWN_WORD_STARTING_WITH_R);
    break;
  case 's':
    if ((line[*counter] == 'i') && (line[(*counter) + 1] == 'n')) {
      *operation = SIN;
      *counter = (*counter + 2);
    } else if (strncmp((line + *counter), "qrt", 3) == 0) {
      *operation = SQRT;
      *counter = (*counter + 3);
    } else
      ERS(NCE_UNKNOWN_WORD_STARTING_WITH_S);
    break;
  case 't':
    if ((line[*counter] == 'a') && (line[(*counter) + 1] == 'n')) {
      *operation = TAN;
      *counter = (*counter + 2);
    } else
      ERS(NCE_UNKNOWN_WORD_STARTING_WITH_T);
    break;
  default:
    ERS(NCE_UNKNOWN_WORD_WHERE_UNARY_OPERATION_COULD_BE);
  }
  return INTERP_OK;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movb (%rax,%rcx), %al
movb %al, -0x29(%rbp)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
incl %ecx
movl %ecx, (%rax)
movsbl -0x29(%rbp), %eax
addl $-0x61, %eax
movl %eax, %ecx
movq %rcx, -0x38(%rbp)
subl $0x13, %eax
ja 0x649e8
movq -0x38(%rbp), %rax
leaq 0x192d0(%rip), %rcx     # 0x7d24c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x62, %eax
jne 0x63fd0
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movl (%rcx), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x73, %eax
jne 0x63fd0
movq -0x28(%rbp), %rax
movl $0x1, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x2, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x64171
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rax
movslq (%rax), %rax
addq %rax, %rdi
leaq 0x19c2f(%rip), %rsi     # 0x7dc14
movl $0x3, %edx
callq 0x10780
cmpl $0x0, %eax
jne 0x64012
movq -0x28(%rbp), %rax
movl $0x2, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x3, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x6416f
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rax
movslq (%rax), %rax
addq %rax, %rdi
leaq 0x19bf1(%rip), %rsi     # 0x7dc18
movl $0x3, %edx
callq 0x10780
cmpl $0x0, %eax
jne 0x64054
movq -0x28(%rbp), %rax
movl $0x3, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x3, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x6416d
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rax
movslq (%rax), %rax
addq %rax, %rdi
leaq 0x19313(%rip), %rsi     # 0x7d37c
movl $0x3, %edx
callq 0x10780
cmpl $0x0, %eax
jne 0x64096
movq -0x28(%rbp), %rax
movl $0x4, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x3, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x6416b
jmp 0x64098
leaq 0x19b7d(%rip), %rdi     # 0x7dc1c
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x22ea7(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x22e96(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x22e88(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x19b4c(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x22e62(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22e54(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x22e3c(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x22e2c(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x22e1f(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22e11(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
jmp 0x6416d
jmp 0x6416f
jmp 0x64171
jmp 0x64aba
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x6f, %eax
jne 0x641c1
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movl (%rcx), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x73, %eax
jne 0x641c1
movq -0x28(%rbp), %rax
movl $0x5, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x2, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x64296
jmp 0x641c3
leaq 0x19aa6(%rip), %rdi     # 0x7dc70
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x22d7c(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x22d6b(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x22d5d(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x19a21(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x22d37(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22d29(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x22d11(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x22d01(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x22cf4(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22ce6(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
jmp 0x64aba
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x78, %eax
jne 0x642e6
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movl (%rcx), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x70, %eax
jne 0x642e6
movq -0x28(%rbp), %rax
movl $0x6, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x2, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x643bb
jmp 0x642e8
leaq 0x1999e(%rip), %rdi     # 0x7dc8d
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x22c57(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x22c46(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x22c38(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x198fc(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x22c12(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22c04(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x22bec(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x22bdc(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x22bcf(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22bc1(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
jmp 0x64aba
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x69, %eax
jne 0x6440b
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movl (%rcx), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x78, %eax
jne 0x6440b
movq -0x28(%rbp), %rax
movl $0x7, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x2, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x6452d
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x75, %eax
jne 0x64456
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movl (%rcx), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x70, %eax
jne 0x64456
movq -0x28(%rbp), %rax
movl $0x8, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x2, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x6452b
jmp 0x64458
leaq 0x1984b(%rip), %rdi     # 0x7dcaa
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x22ae7(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x22ad6(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x22ac8(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x1978c(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x22aa2(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22a94(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x22a7c(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x22a6c(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x22a5f(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22a51(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
jmp 0x6452d
jmp 0x64aba
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x6e, %eax
jne 0x64564
movq -0x28(%rbp), %rax
movl $0x9, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x64639
jmp 0x64566
leaq 0x1975a(%rip), %rdi     # 0x7dcc7
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x229d9(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x229c8(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x229ba(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x1967e(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x22994(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22986(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x2296e(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x2295e(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x22951(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22943(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
jmp 0x64aba
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rax
movslq (%rax), %rax
addq %rax, %rdi
leaq 0x187ca(%rip), %rsi     # 0x7ce1d
movl $0x4, %edx
callq 0x10780
cmpl $0x0, %eax
jne 0x64680
movq -0x28(%rbp), %rax
movl $0xa, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x4, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x64755
jmp 0x64682
leaq 0x1965b(%rip), %rdi     # 0x7dce4
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x228bd(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x228ac(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x2289e(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x19562(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x22878(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x2286a(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x22852(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x22842(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x22835(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22827(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
jmp 0x64aba
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x69, %eax
jne 0x647a5
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movl (%rcx), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x6e, %eax
jne 0x647a5
movq -0x28(%rbp), %rax
movl $0xb, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x2, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x648be
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rax
movslq (%rax), %rax
addq %rax, %rdi
leaq 0x182b2(%rip), %rsi     # 0x7ca6c
movl $0x3, %edx
callq 0x10780
cmpl $0x0, %eax
jne 0x647e7
movq -0x28(%rbp), %rax
movl $0xc, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x3, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x648bc
jmp 0x647e9
leaq 0x19511(%rip), %rdi     # 0x7dd01
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x22756(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x22745(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x22737(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x193fb(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x22711(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22703(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x226eb(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x226db(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x226ce(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x226c0(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
jmp 0x648be
jmp 0x64aba
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x61, %eax
jne 0x6490e
movq -0x18(%rbp), %rax
movq -0x20(%rbp), %rcx
movl (%rcx), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x6e, %eax
jne 0x6490e
movq -0x28(%rbp), %rax
movl $0xd, (%rax)
movq -0x20(%rbp), %rax
movl (%rax), %ecx
addl $0x2, %ecx
movq -0x20(%rbp), %rax
movl %ecx, (%rax)
jmp 0x649e3
jmp 0x64910
leaq 0x19407(%rip), %rdi     # 0x7dd1e
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x2262f(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x2261e(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x22610(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x192d4(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x225ea(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x225dc(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x225c4(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x225b4(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x225a7(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22599(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
jmp 0x64aba
jmp 0x649ea
leaq 0x1934a(%rip), %rdi     # 0x7dd3b
callq 0x10380
movq -0x40(%rbp), %rdi
movq %rax, %rsi
movb $0x0, %al
callq 0x10df0
movq 0x22555(%rip), %rax     # 0x86f60
movl $0x0, 0xd670(%rax)
movq 0x22544(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x22536(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x191fa(%rip), %rsi     # 0x7dc39
movl $0x50, %edx
callq 0x10840
movq 0x22510(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x22502(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x224ea(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x224da(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x224cd(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x224bf(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl $0x5, -0x4(%rbp)
jmp 0x64ac1
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x40, %rsp
popq %rbp
retq
nopw (%rax,%rax)