// File: sundale[P]gcode/rs274ngc/interp_convert.cc
// Function: Interp::convert_g(block_struct*, setup_struct*)
int Interp::convert_g(block_pointer block,       //!< pointer to a block of RS274/NGC instructions
                     setup_pointer settings)    //!< pointer to machine settings                 
{

  if (block->g_modes[0] == G_4) {
    CHP(convert_dwell(settings, block->p_number));
  }
  if (block->g_modes[2] != -1) {
    CHP(convert_set_plane(block->g_modes[2], settings));
  }
  if (block->g_modes[6] != -1) {
    CHP(convert_length_units(block->g_modes[6], settings));
  }
  if (block->g_modes[15] != -1) {
    CHP(convert_lathe_diameter_mode(block->g_modes[15], block, settings));
  }
  if (block->g_modes[7] != -1) {
    CHP(convert_cutter_compensation(block->g_modes[7], block, settings));
  }
  if (block->g_modes[8] != -1) {
    CHP(convert_tool_length_offset(block->g_modes[8], block, settings));
  }
  if (block->g_modes[12] != -1) {
    CHP(convert_coordinate_system(block->g_modes[12], settings));
  }
  if (block->g_modes[13] != -1) {
    CHP(convert_control_mode(block->g_modes[13], block->p_number, block->q_number, settings));
  }
  if (block->g_modes[3] != -1) {
    CHP(convert_distance_mode(block->g_modes[3], settings));
  }
  if (block->g_modes[4] != -1) {
    CHP(convert_ijk_distance_mode(block->g_modes[4], settings));
  }
  if (block->g_modes[10] != -1) {
    CHP(convert_retract_mode(block->g_modes[10], settings));
  }
  if (block->g_modes[0] != -1) {
    CHP(convert_modal_0(block->g_modes[0], block, settings));
  }
  if (block->motion_to_be != -1) {
    CHP(convert_motion(block->motion_to_be, block, settings));
  }
  return INTERP_OK;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0x18(%rbp), %rax
cmpl $0x28, 0x150(%rax)
jne 0x21966
jmp 0x2187f
movq -0x60(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x18(%rbp), %rax
movsd 0x210(%rax), %xmm0
callq 0x10fb0
movl %eax, -0x24(%rbp)
cmpl $0x0, -0x24(%rbp)
je 0x21962
jmp 0x218a7
movq 0x656b2(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x21957
movq 0x6569e(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x65690(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x58a86(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x6566a(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x6565c(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x65644(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x65634(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x65627(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65619(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x24(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x21964
jmp 0x21966
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x158(%rax)
je 0x21a5e
jmp 0x21979
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x158(%rax), %esi
movq -0x20(%rbp), %rdx
callq 0x12320
movl %eax, -0x28(%rbp)
cmpl $0x0, -0x28(%rbp)
je 0x21a5a
jmp 0x2199f
movq 0x655ba(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x21a4f
movq 0x655a6(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x65598(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x5898e(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x65572(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65564(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x6554c(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x6553c(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x6552f(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65521(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x28(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x21a5c
jmp 0x21a5e
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x168(%rax)
je 0x21b56
jmp 0x21a71
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x168(%rax), %esi
movq -0x20(%rbp), %rdx
callq 0x119f0
movl %eax, -0x2c(%rbp)
cmpl $0x0, -0x2c(%rbp)
je 0x21b52
jmp 0x21a97
movq 0x654c2(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x21b47
movq 0x654ae(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x654a0(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x58896(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x6547a(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x6546c(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x65454(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x65444(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x65437(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65429(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x2c(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x21b54
jmp 0x21b56
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x18c(%rax)
je 0x21c52
jmp 0x21b69
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x18c(%rax), %esi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
callq 0x10730
movl %eax, -0x30(%rbp)
cmpl $0x0, -0x30(%rbp)
je 0x21c4e
jmp 0x21b93
movq 0x653c6(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x21c43
movq 0x653b2(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x653a4(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x5879a(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x6537e(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65370(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x65358(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x65348(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x6533b(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x6532d(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x30(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x21c50
jmp 0x21c52
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x16c(%rax)
je 0x21d4e
jmp 0x21c65
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x16c(%rax), %esi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
callq 0x11540
movl %eax, -0x34(%rbp)
cmpl $0x0, -0x34(%rbp)
je 0x21d4a
jmp 0x21c8f
movq 0x652ca(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x21d3f
movq 0x652b6(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x652a8(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x5869e(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x65282(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65274(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x6525c(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x6524c(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x6523f(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65231(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x34(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x21d4c
jmp 0x21d4e
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x170(%rax)
je 0x21e4a
jmp 0x21d61
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x170(%rax), %esi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
callq 0x10890
movl %eax, -0x38(%rbp)
cmpl $0x0, -0x38(%rbp)
je 0x21e46
jmp 0x21d8b
movq 0x651ce(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x21e3b
movq 0x651ba(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x651ac(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x585a2(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x65186(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65178(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x65160(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x65150(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x65143(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65135(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x38(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x21e48
jmp 0x21e4a
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x180(%rax)
je 0x21f42
jmp 0x21e5d
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x180(%rax), %esi
movq -0x20(%rbp), %rdx
callq 0x10b50
movl %eax, -0x3c(%rbp)
cmpl $0x0, -0x3c(%rbp)
je 0x21f3e
jmp 0x21e83
movq 0x650d6(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x21f33
movq 0x650c2(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x650b4(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x584aa(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x6508e(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x65080(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x65068(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x65058(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x6504b(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x6503d(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x3c(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x21f40
jmp 0x21f42
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x184(%rax)
je 0x22052
jmp 0x21f55
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x184(%rax), %esi
movq -0x18(%rbp), %rax
movsd 0x210(%rax), %xmm0
movq -0x18(%rbp), %rax
movsd 0x220(%rax), %xmm1
movq -0x20(%rbp), %rdx
callq 0x109b0
movl %eax, -0x40(%rbp)
cmpl $0x0, -0x40(%rbp)
je 0x2204e
jmp 0x21f93
movq 0x64fc6(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x22043
movq 0x64fb2(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x64fa4(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x5839a(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x64f7e(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64f70(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x64f58(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x64f48(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x64f3b(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64f2d(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x40(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x22050
jmp 0x22052
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x15c(%rax)
je 0x2214a
jmp 0x22065
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x15c(%rax), %esi
movq -0x20(%rbp), %rdx
callq 0x11780
movl %eax, -0x44(%rbp)
cmpl $0x0, -0x44(%rbp)
je 0x22146
jmp 0x2208b
movq 0x64ece(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x2213b
movq 0x64eba(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x64eac(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x582a2(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x64e86(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64e78(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x64e60(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x64e50(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x64e43(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64e35(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x44(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x22148
jmp 0x2214a
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x160(%rax)
je 0x22242
jmp 0x2215d
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x160(%rax), %esi
movq -0x20(%rbp), %rdx
callq 0x117a0
movl %eax, -0x48(%rbp)
cmpl $0x0, -0x48(%rbp)
je 0x2223e
jmp 0x22183
movq 0x64dd6(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x22233
movq 0x64dc2(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x64db4(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x581aa(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x64d8e(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64d80(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x64d68(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x64d58(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x64d4b(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64d3d(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x48(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x22240
jmp 0x22242
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x178(%rax)
je 0x2233a
jmp 0x22255
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x178(%rax), %esi
movq -0x20(%rbp), %rdx
callq 0x103e0
movl %eax, -0x4c(%rbp)
cmpl $0x0, -0x4c(%rbp)
je 0x22336
jmp 0x2227b
movq 0x64cde(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x2232b
movq 0x64cca(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x64cbc(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x580b2(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x64c96(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64c88(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x64c70(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x64c60(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x64c53(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64c45(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x4c(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x22338
jmp 0x2233a
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x150(%rax)
je 0x22436
jmp 0x2234d
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x150(%rax), %esi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
callq 0x120c0
movl %eax, -0x50(%rbp)
cmpl $0x0, -0x50(%rbp)
je 0x22432
jmp 0x22377
movq 0x64be2(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x22427
movq 0x64bce(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x64bc0(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x57fb6(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x64b9a(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64b8c(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x64b74(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x64b64(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x64b57(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64b49(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, (%rax)
movl -0x50(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x22536
jmp 0x22434
jmp 0x22436
movq -0x18(%rbp), %rax
cmpl $-0x1, 0x1d8(%rax)
je 0x2252f
jmp 0x22449
movq -0x60(%rbp), %rdi
movq -0x18(%rbp), %rax
movl 0x1d8(%rax), %esi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
callq 0x109c0
movl %eax, -0x54(%rbp)
cmpl $0x0, -0x54(%rbp)
je 0x2252b
jmp 0x22473
movq 0x64ae6(%rip), %rax     # 0x86f60
cmpl $0x31, 0xd670(%rax)
jge 0x22523
movq 0x64ad2(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rax
movq 0x64ac4(%rip), %rdi     # 0x86f60
addq $0xc6d0, %rdi           # imm = 0xC6D0
imulq $0x50, %rax, %rax
addq %rax, %rdi
leaq 0x57eba(%rip), %rsi     # 0x7a36b
movl $0x50, %edx
callq 0x10840
movq 0x64a9e(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64a90(%rip), %rax     # 0x86f60
addq $0xc6d0, %rax           # imm = 0xC6D0
imulq $0x50, %rcx, %rcx
addq %rcx, %rax
movb $0x0, 0x4f(%rax)
movq 0x64a78(%rip), %rax     # 0x86f60
movl 0xd670(%rax), %ecx
addl $0x1, %ecx
movq 0x64a68(%rip), %rax     # 0x86f60
movl %ecx, 0xd670(%rax)
movq 0x64a5b(%rip), %rax     # 0x86f60
movslq 0xd670(%rax), %rcx
movq 0x64a4d(%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 0x22536
jmp 0x2252d
jmp 0x2252f
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x60, %rsp
popq %rbp
retq
nop