// File: jkingan[P]ladyheather/heathui.cpp
// Function: kbd_help()
void kbd_help()
{
char *s, *ems_info;
COORD help_row, help_col;
COORD row, col;
COORD help_row_1;

   // this routine displays help info about the keyboard commands
   // until a key is pressed
   //
   // NEW_RCVR

   request_version(); // so the "Press space for help" message gets updated quickly
   plot_version = 1;  // once asked for help,  switch help message to version
                      // display since the user should now know that help exists

   if(zoom_screen == 'K') {
      change_zoom_config(-100);
      cancel_zoom(10);      //zkzk
   }

   if(1 && osc_params) {   // if enabled, cancel the osc param display mode
      osc_params = 0;
      text_mode = 0;
      no_x_margin = no_y_margin = 0;
      erase_screen();
      redraw_screen();
//    do_kbd(' ');
      sure_exit();
      return;
   }

   osc_params = 0;
   erase_screen();
   redraw_screen();

   // !!! kludge: for undersized screens
   if(screen_type == 't') {   // text mode
      no_x_margin = no_y_margin = 1;
   }
   else if(ALWAYS_TEXT_HELP || (SCREEN_HEIGHT <= SHORT_SCREEN)) {  // small graphics screens
      text_mode = 2;  // say we are in text mode while help is displayed
      no_x_margin = no_y_margin = 1;
   }

   if(text_mode) {   // full screen help mode
      if(SCREEN_WIDTH >= NARROW_SCREEN) {  // there is room for a margin
         if(SCREEN_HEIGHT < TINY_HEIGHT) help_row = 0;
         else                            help_row = 1;
         help_col = 3;
      }
      else {         // no margin space available
         help_row = 0;
         help_col = HELP_COL;
      }
      erase_screen();
   }
   else {            // help is in the plot area
      help_row = HELP_ROW;
      help_col = HELP_COL+3;
   }

   row = help_row;
   col = help_col + 0;

   s = "Control ";
   ems_info = "";
   if(TEXT_COLS <= 100) {
      if(luxor) sprintf(out, "Luxor Power/LED Analyzer %sProgram", s);
      else      sprintf(out, "Lady Heather's Disciplined Oscillator %sProgram", s);
      vidstr(row,col,  HELP_COLOR, out);
      ++row;

      sprintf(out, "Rev %s - %s %s%s", VERSION, date_string, __TIME__, ems_info);
      vidstr(row,col,  HELP_COLOR, out);
      ++row;

      vidstr(row,col,  HELP_COLOR, "Keyboard command help.  Press any key to continue...");
      ++row;
      ++row;
   }
   else {
      if(luxor) sprintf(out, "Luxor Power/LED Analyzer %sProgram.  Rev %s - %s %s%s", s, VERSION, date_string, __TIME__, ems_info);
      else      sprintf(out, "Lady Heather's Disciplined Oscillator %sProgram.  Rev %s - %s %s%s", s, VERSION, date_string, __TIME__, ems_info);
      vidstr(row,col,  HELP_COLOR, out);
      ++row;

      vidstr(row,col,  HELP_COLOR, "Keyboard command help.  Press any key to continue...");
      ++row;
      ++row;
   }
   help_row = row;

   if(script_file) {  // error was in a script file,  abandon script
      sprintf(out, "Unknown command seen in script file: %s line %d, col %d: %c",
         script_name, script_line, script_col, script_err);
      vidstr(row, col,  HELP_COLOR, out);
      close_script(1);
      goto help_exit;
   }

   #ifdef ADEV_STUFF
      if(luxor == 0) {
         s = "a - select Adev type to display";
         vidstr(row++, col,  HELP_COLOR, s);
      }
   #endif

   if(luxor) {
      s = "b - Battery capacity/resistance";
      vidstr(row++, col,  HELP_COLOR, s);
   }
   else {
      s = "b - experimental OSC control PID";
      vidstr(row++, col,  HELP_COLOR, s);
   }

   s = "c - Clear collected data";
   vidstr(row++, col,  HELP_COLOR, s);

   if(luxor == 0) {
      if(rcvr_type == CS_RCVR)       s = "d - set Standby mode / DAC voltage";
      else if(rcvr_type == PRS_RCVR) s = "d - set discipline mode / FC value";
      else                           s = "d - set osc Disciplining / DAC voltage";
      vidstr(row++, col,  HELP_COLOR, s);

      s = "e - save current config to EEPROM";
      vidstr(row++, col,  HELP_COLOR, s);
   }

   if(luxor)                        s = "f - change display Filter";
   else if(rcvr_type == CS_RCVR)    s = "f - change display Filter";
   else if(rcvr_type == TICC_RCVR)  s = "f - change display Filter";
   else                             s = "f - toggle Filter or signal/elev masks";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "g - modify Graph or screen display";
   vidstr(row++, col,  HELP_COLOR, s);

   if(luxor == 0) {
      s = "h - toggle manual Holdover mode";
      vidstr(row++, col,  HELP_COLOR, s);
   }

   s = "i - set the plot queue update Interval";
   vidstr(row++, col,  HELP_COLOR, s);

   if(luxor == 0) {
      if     (rcvr_type == CS_RCVR)     s = "j - sync PPS outputs";
      else if(timing_mode == TMODE_UTC) s = "j - Jam sync PPS to UTC time";
      else if(timing_mode == TMODE_GPS) s = "j - Jam sync PPS to GPS time";
      else if(timing_mode == TMODE_SU)  s = "j - Jam sync PPS to UTC(SU) time";
      else                              s = "j - Jam sync PPS to time";
      vidstr(row++, col,  HELP_COLOR, s);

      s = "k - temperature control PID";
      vidstr(row++, col,  HELP_COLOR, s);
   }

   s = "l - data Logging";
   vidstr(row++, col,  HELP_COLOR, s);

   if(luxor) {
      s = "m - change LED driver Mode";
      vidstr(row++, col,  HELP_COLOR, s);

#ifdef WINDOWS
      s = "n - use NOTEPAD to edit a file";
      vidstr(row++, col,  HELP_COLOR, s);
#else  // __linux__  __MACH__   __FreeBSD__
      s = "n - use NANO to edit a file";
      vidstr(row++, col,  HELP_COLOR, s);
#endif

      s = "o - Set misc options";
      vidstr(row++, col,  HELP_COLOR, s);

      s = "p - set Protection values";
      vidstr(row++, col,  HELP_COLOR, s);
   }
   else {
      if(1 || jd_obs) {
         s = "m - RINEX file commands";
         vidstr(row++, col,  HELP_COLOR, s);
      }
#ifdef WINDOWS
      s = "n - use NOTEPAD to edit a file";
      vidstr(row++, col,  HELP_COLOR, s);
#else  // __linux__  __MACH__   __FreeBSD__
      s = "n - use NANO to edit a file";
      vidstr(row++, col,  HELP_COLOR, s);
#endif

      s = "o - Set misc options";
      vidstr(row++, col,  HELP_COLOR, s);

      if     (rcvr_type == CS_RCVR)   s = "p - Configuration control";
      else if(rcvr_type == TICC_RCVR) s = "p - Configuration control";
      else                            s = "p - PPS and TRAIM control";
      vidstr(row++, col,  HELP_COLOR, s);
   }

   s = "r - Read in a file";
   vidstr(row++, col,  HELP_COLOR, s);


   help_row_1 = row;      // switch to next column
   row = help_row;
   col = help_col + 40;

   if(luxor)                       s = "s - enter position (lat lon alt)";
   else if(rcvr_type == CS_RCVR)   s = "s - enter position (lat lon alt)";
   else if(rcvr_type == TICC_RCVR) s = "s - enter position (lat lon alt)";
   else      s = "s - Survey/sats/signals/positioning";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "t - Time and temperature control";
   vidstr(row++, col,  HELP_COLOR, s);

   if(luxor) {
      if(pause_data) s = "u - resume plot queue Updates";
      else           s = "u - pause plot queue Updates";
      vidstr(row++, col,  HELP_COLOR, s);

      s = "v - set View time span of plot window";
      vidstr(row++, col,  HELP_COLOR, s);
   }
   else {
      if(pause_data) s = "u - resume plot/adev queue Updates";
      else           s = "u - pause plot/adev queue Updates";
      vidstr(row++, col,  HELP_COLOR, s);
   }

   if(luxor) {
      s = "w - Write data, screen, delete file";
      vidstr(row++, col,  HELP_COLOR, s);
   }
   else {
      s = "v - set View time span of plot window";
      vidstr(row++, col,  HELP_COLOR, s);

      s = "w - Write data, screen, delete file";
      vidstr(row++, col,  HELP_COLOR, s);
   }

   sprintf(out, "x - view graphs at 1 hr/div");
   vidstr(row++, col,  HELP_COLOR, out);

   if(day_size) sprintf(out, "y - view graphs at %d hr/screen", day_size);
   else         sprintf(out, "y - view graphs at %d hr/screen", 24);
   vidstr(row++, col,  HELP_COLOR, out);

   if(luxor) s = "z - Zoom fullscreen clocks";
   else      s = "z - Zoom fullscreen clocks and maps";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "-+  lower/raise last selected graph";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "{}  shrink/grow last selected graph";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "! - device resets and diagnostics";
   vidstr(row++, col,  HELP_COLOR, s);

   if(luxor) s = "& - change calibration parameters";
   else      s = "& - oscillator discipling parameters";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "/ - startup (command line) only options";
   vidstr(row++, col,  HELP_COLOR, s);

   #ifdef GIF_FILES
      sprintf(out, "\\ - dump screen to %s.gif", unit_file_name);
   #else
      sprintf(out, "\\ - dump screen to %s.bmp", unit_file_name);
   #endif
   vidstr(row++, col,  HELP_COLOR, out);

   s = "$ - change screen resolution";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "` - RPN calculator";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "? - display command line help";
   vidstr(row++, col,  HELP_COLOR, s);



   if(text_mode) {  // full screen help
      col = help_col;
      if(SCREEN_HEIGHT < TINY_HEIGHT) row = help_row_1;
      else                            row = help_row_1 + 1;
      help_row_1 = row;
   }
   else {           // help in the plot area
      row = help_row;
      col = help_col + 80;
   }

   s = "HOME - scroll plot to beginning of data";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "END - scroll plot to end of data";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "LEFT - scroll plot forward one division";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "RIGHT - scroll plot back one division";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "PG UP - scroll plot forward one screen";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "PG DN - scroll plot back one screen";
   vidstr(row++, col,  HELP_COLOR, s);

   if(text_mode && (SCREEN_HEIGHT < SHORT_SCREEN)) {
      row = help_row_1;
      col = help_col + 40;
   }

   s = "UP - scroll plot forward one hour";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "DOWN - scroll plot back one hour";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "<> - scroll plot one day";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "[] - scroll plot one pixel";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "DEL - return plotting back to normal";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "% - scroll to next error event";
   vidstr(row++, col,  HELP_COLOR, s);

   s = "0..9,=,+,- set or move to plot markers";
   vidstr(row++, col,  HELP_COLOR, s);

   if(SCREEN_HEIGHT < TINY_HEIGHT) ;
   else ++row;
   col = help_col;
   s = "LEFT CLICK in plot area - zoom and center plot at mouse pointer";
   vidstr(row++, col, HELP_COLOR, s);
   s = "RIGHT BUTTON (at center of plot area) - scroll plot left or right";
   vidstr(row++, col, HELP_COLOR, s);
   s = "LEFT CLICK lat/lon info, sat info, plot header, adev table, maps, clock, watch";
   vidstr(row++, col, HELP_COLOR, s);
   s = "           to zoom them to full screen.  Click again to restore screen";
   vidstr(row++, col, HELP_COLOR, s);

   if(SCREEN_HEIGHT < TINY_HEIGHT) ;
   else ++row;
   sprintf(out, "Config/log directory: %s", heather_path);
   vidstr(row++, col, GREEN, out);

   help_exit:
   refresh_page();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
callq 0x8b430
leaq 0x2440bd(%rip), %rax    # 0x27a5c1
movb $0x1, (%rax)
leaq 0x33547a(%rip), %rax    # 0x36b988
movzbl (%rax), %eax
cmpl $0x4b, %eax
jne 0x3652a
movl $0xffffff9c, %edi       # imm = 0xFFFFFF9C
callq 0x375a0
movl $0xa, %edi
callq 0x376e0
leaq 0x335d9b(%rip), %rax    # 0x36c2cc
cmpb $0x0, (%rax)
je 0x36575
leaq 0x335d8f(%rip), %rax    # 0x36c2cc
movb $0x0, (%rax)
leaq 0x241471(%rip), %rax    # 0x2779b8
movl $0x0, (%rax)
leaq 0x2414e7(%rip), %rax    # 0x277a3b
movb $0x0, (%rax)
leaq 0x2414dc(%rip), %rax    # 0x277a3a
movb $0x0, (%rax)
callq 0x117e0
callq 0x12ae0
callq 0x37720
jmp 0x37598
leaq 0x335d50(%rip), %rax    # 0x36c2cc
movb $0x0, (%rax)
callq 0x117e0
callq 0x12ae0
leaq 0x241481(%rip), %rax    # 0x277a11
movzbl (%rax), %eax
cmpl $0x74, %eax
jne 0x365ae
leaq 0x24149c(%rip), %rax    # 0x277a3b
movb $0x1, (%rax)
leaq 0x241491(%rip), %rax    # 0x277a3a
movb $0x1, (%rax)
jmp 0x365cf
leaq 0x241403(%rip), %rax    # 0x2779b8
movl $0x2, (%rax)
leaq 0x241479(%rip), %rax    # 0x277a3b
movb $0x1, (%rax)
leaq 0x24146e(%rip), %rax    # 0x277a3a
movb $0x1, (%rax)
leaq 0x2413e2(%rip), %rax    # 0x2779b8
cmpl $0x0, (%rax)
je 0x3664a
leaq 0x2413fe(%rip), %rax    # 0x2779e0
movl (%rax), %eax
movl %eax, -0x28(%rbp)
leaq 0x24c136(%rip), %rax    # 0x282724
imull $0x31a, (%rax), %eax    # imm = 0x31A
movl $0x64, %ecx
cltd
idivl %ecx
movl %eax, %ecx
movl -0x28(%rbp), %eax
cmpl %ecx, %eax
jl 0x3662d
leaq 0x2413d8(%rip), %rax    # 0x2779e4
cmpl $0x1e0, (%rax)          # imm = 0x1E0
jge 0x3661d
movl $0x0, -0x14(%rbp)
jmp 0x36624
movl $0x1, -0x14(%rbp)
movl $0x3, -0x18(%rbp)
jmp 0x36643
movl $0x0, -0x14(%rbp)
xorl %eax, %eax
leaq 0x2413b3(%rip), %rcx    # 0x2779f0
cltd
idivl (%rcx)
movl %eax, -0x18(%rbp)
callq 0x117e0
jmp 0x3666b
leaq 0x24141f(%rip), %rax    # 0x277a70
movl (%rax), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
xorl %eax, %eax
leaq 0x24138e(%rip), %rcx    # 0x2779f0
cltd
idivl (%rcx)
addl $0x3, %eax
movl %eax, -0x18(%rbp)
movl -0x14(%rbp), %eax
movl %eax, -0x1c(%rbp)
movl -0x18(%rbp), %eax
addl $0x0, %eax
movl %eax, -0x20(%rbp)
leaq 0x13bdcd(%rip), %rax    # 0x17244e
movq %rax, -0x8(%rbp)
leaq 0x15df06(%rip), %rax    # 0x194592
movq %rax, -0x10(%rbp)
leaq 0x241351(%rip), %rax    # 0x2779e8
cmpl $0x64, (%rax)
jg 0x3677c
leaq 0x267a77(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x366c7
movq -0x8(%rbp), %rdx
leaq 0x364d49(%rip), %rdi    # 0x39b400
leaq 0x13bd99(%rip), %rsi    # 0x172457
movb $0x0, %al
callq 0x9060
jmp 0x366e0
movq -0x8(%rbp), %rdx
leaq 0x364d2e(%rip), %rdi    # 0x39b400
leaq 0x13bda1(%rip), %rsi    # 0x17247a
movb $0x0, %al
callq 0x9060
movl -0x1c(%rbp), %edi
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x364d0e(%rip), %rcx    # 0x39b400
callq 0x10ee0
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movq -0x10(%rbp), %r9
leaq 0x364cf5(%rip), %rdi    # 0x39b400
leaq 0x13be07(%rip), %rsi    # 0x172519
leaq 0x13bd91(%rip), %rdx    # 0x1724aa
leaq 0x24c010(%rip), %rcx    # 0x282730
leaq 0x13bd8f(%rip), %r8     # 0x1724b6
movb $0x0, %al
callq 0x9060
movl -0x1c(%rbp), %edi
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x364cc0(%rip), %rcx    # 0x39b400
callq 0x10ee0
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %edi
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x13bd5f(%rip), %rcx    # 0x1724bf
callq 0x10ee0
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x3683f
leaq 0x26799b(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x367c0
movq -0x8(%rbp), %rdx
movq -0x10(%rbp), %rax
leaq 0x364c69(%rip), %rdi    # 0x39b400
leaq 0x13bd56(%rip), %rsi    # 0x1724f4
leaq 0x13bd05(%rip), %rcx    # 0x1724aa
leaq 0x24bf84(%rip), %r8     # 0x282730
leaq 0x13bd03(%rip), %r9     # 0x1724b6
movq %rax, (%rsp)
movb $0x0, %al
callq 0x9060
jmp 0x367f6
movq -0x8(%rbp), %rdx
movq -0x10(%rbp), %rax
leaq 0x364c31(%rip), %rdi    # 0x39b400
leaq 0x13bd54(%rip), %rsi    # 0x17252a
leaq 0x13bccd(%rip), %rcx    # 0x1724aa
leaq 0x24bf4c(%rip), %r8     # 0x282730
leaq 0x13bccb(%rip), %r9     # 0x1724b6
movq %rax, (%rsp)
movb $0x0, %al
callq 0x9060
movl -0x1c(%rbp), %edi
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x364bf8(%rip), %rcx    # 0x39b400
callq 0x10ee0
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %edi
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x13bc97(%rip), %rcx    # 0x1724bf
callq 0x10ee0
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0x14(%rbp)
leaq 0x26784c(%rip), %rax    # 0x29e098
cmpq $0x0, (%rax)
je 0x368b1
leaq 0x267847(%rip), %rax    # 0x29e0a0
movl (%rax), %ecx
leaq 0x267842(%rip), %rax    # 0x29e0a4
movl (%rax), %r8d
leaq 0x26783c(%rip), %rax    # 0x29e0a8
movl (%rax), %r9d
leaq 0x364b8a(%rip), %rdi    # 0x39b400
leaq 0x13bcf0(%rip), %rsi    # 0x17256d
leaq 0x26778c(%rip), %rdx    # 0x29e010
movb $0x0, %al
callq 0x9060
movl -0x1c(%rbp), %edi
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x364b63(%rip), %rcx    # 0x39b400
callq 0x10ee0
movl $0x1, %edi
callq 0x293a0
jmp 0x37593
leaq 0x267866(%rip), %rax    # 0x29e11e
movzbl (%rax), %eax
cmpl $0x0, %eax
jne 0x368e7
leaq 0x13bce2(%rip), %rax    # 0x1725a9
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x267830(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x3691c
leaq 0x13bccf(%rip), %rax    # 0x1725c9
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
jmp 0x36943
leaq 0x13bcc6(%rip), %rax    # 0x1725e9
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bcc0(%rip), %rax    # 0x17260a
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x2677ad(%rip), %rax    # 0x29e11e
movzbl (%rax), %eax
cmpl $0x0, %eax
jne 0x36a07
leaq 0x24112c(%rip), %rax    # 0x277ab0
cmpq $0x20000, (%rax)        # imm = 0x20000
jne 0x3699a
leaq 0x13bc8f(%rip), %rax    # 0x172623
movq %rax, -0x8(%rbp)
jmp 0x369c4
leaq 0x24110f(%rip), %rax    # 0x277ab0
cmpq $0x1000000, (%rax)      # imm = 0x1000000
jne 0x369b7
leaq 0x13bc95(%rip), %rax    # 0x172646
movq %rax, -0x8(%rbp)
jmp 0x369c2
leaq 0x13bcab(%rip), %rax    # 0x172669
movq %rax, -0x8(%rbp)
jmp 0x369c4
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bca9(%rip), %rax    # 0x172690
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x267710(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x36a20
leaq 0x13bc98(%rip), %rax    # 0x1726b2
movq %rax, -0x8(%rbp)
jmp 0x36a69
leaq 0x241089(%rip), %rax    # 0x277ab0
cmpq $0x20000, (%rax)        # imm = 0x20000
jne 0x36a3d
leaq 0x13bc7b(%rip), %rax    # 0x1726b2
movq %rax, -0x8(%rbp)
jmp 0x36a67
leaq 0x24106c(%rip), %rax    # 0x277ab0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x36a5a
leaq 0x13bc5e(%rip), %rax    # 0x1726b2
movq %rax, -0x8(%rbp)
jmp 0x36a65
leaq 0x13bc6b(%rip), %rax    # 0x1726cc
movq %rax, -0x8(%rbp)
jmp 0x36a67
jmp 0x36a69
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bc67(%rip), %rax    # 0x1726f3
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x26766b(%rip), %rax    # 0x29e11e
movzbl (%rax), %eax
cmpl $0x0, %eax
jne 0x36ae2
leaq 0x13bc54(%rip), %rax    # 0x172716
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bc4d(%rip), %rax    # 0x172736
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x26760e(%rip), %rax    # 0x29e11e
movzbl (%rax), %eax
cmpl $0x0, %eax
jne 0x36be3
leaq 0x240f8d(%rip), %rax    # 0x277ab0
cmpq $0x20000, (%rax)        # imm = 0x20000
jne 0x36b39
leaq 0x13bc2a(%rip), %rax    # 0x17275d
movq %rax, -0x8(%rbp)
jmp 0x36ba0
leaq 0x335b5d(%rip), %rax    # 0x36c69d
movzbl (%rax), %eax
cmpl $0x3, %eax
jne 0x36b55
leaq 0x13bc23(%rip), %rax    # 0x172772
movq %rax, -0x8(%rbp)
jmp 0x36b9e
leaq 0x335b41(%rip), %rax    # 0x36c69d
movzbl (%rax), %eax
cmpl $0x0, %eax
jne 0x36b71
leaq 0x13bc24(%rip), %rax    # 0x17278f
movq %rax, -0x8(%rbp)
jmp 0x36b9c
leaq 0x335b25(%rip), %rax    # 0x36c69d
movzbl (%rax), %eax
cmpl $0x80, %eax
jne 0x36b8f
leaq 0x13bc23(%rip), %rax    # 0x1727ac
movq %rax, -0x8(%rbp)
jmp 0x36b9a
leaq 0x13bc37(%rip), %rax    # 0x1727cd
movq %rax, -0x8(%rbp)
jmp 0x36b9c
jmp 0x36b9e
jmp 0x36ba0
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bc23(%rip), %rax    # 0x1727e6
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bc18(%rip), %rax    # 0x172802
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x26750d(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x36cbb
leaq 0x13bbf2(%rip), %rax    # 0x172813
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bbe6(%rip), %rax    # 0x17282e
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bbdb(%rip), %rax    # 0x17284a
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bbc9(%rip), %rax    # 0x17285f
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
jmp 0x36d93
leaq 0x13bbb7(%rip), %rax    # 0x172879
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bb45(%rip), %rax    # 0x17282e
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bb3a(%rip), %rax    # 0x17284a
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x240d79(%rip), %rax    # 0x277ab0
cmpq $0x20000, (%rax)        # imm = 0x20000
jne 0x36d4d
leaq 0x13bb4a(%rip), %rax    # 0x172891
movq %rax, -0x8(%rbp)
jmp 0x36d77
leaq 0x240d5c(%rip), %rax    # 0x277ab0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x36d6a
leaq 0x13bb2d(%rip), %rax    # 0x172891
movq %rax, -0x8(%rbp)
jmp 0x36d75
leaq 0x13bb3a(%rip), %rax    # 0x1728ab
movq %rax, -0x8(%rbp)
jmp 0x36d77
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bb2b(%rip), %rax    # 0x1728c5
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
movl -0x1c(%rbp), %eax
movl %eax, -0x24(%rbp)
movl -0x14(%rbp), %eax
movl %eax, -0x1c(%rbp)
movl -0x18(%rbp), %eax
addl $0x28, %eax
movl %eax, -0x20(%rbp)
leaq 0x267348(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x36de8
leaq 0x13baf6(%rip), %rax    # 0x1728d8
movq %rax, -0x8(%rbp)
jmp 0x36e31
leaq 0x240cc1(%rip), %rax    # 0x277ab0
cmpq $0x20000, (%rax)        # imm = 0x20000
jne 0x36e05
leaq 0x13bad9(%rip), %rax    # 0x1728d8
movq %rax, -0x8(%rbp)
jmp 0x36e2f
leaq 0x240ca4(%rip), %rax    # 0x277ab0
cmpq $0x10000, (%rax)        # imm = 0x10000
jne 0x36e22
leaq 0x13babc(%rip), %rax    # 0x1728d8
movq %rax, -0x8(%rbp)
jmp 0x36e2d
leaq 0x13bad0(%rip), %rax    # 0x1728f9
movq %rax, -0x8(%rbp)
jmp 0x36e2f
jmp 0x36e31
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bac9(%rip), %rax    # 0x17291d
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x2672a3(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x36ee9
leaq 0x24358d(%rip), %rax    # 0x27a414
cmpb $0x0, (%rax)
je 0x36e99
leaq 0x13baab(%rip), %rax    # 0x17293e
movq %rax, -0x8(%rbp)
jmp 0x36ea4
leaq 0x13babc(%rip), %rax    # 0x17295c
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13bab2(%rip), %rax    # 0x172979
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
jmp 0x36f29
leaq 0x243524(%rip), %rax    # 0x27a414
cmpb $0x0, (%rax)
je 0x36f02
leaq 0x13baa3(%rip), %rax    # 0x17299f
movq %rax, -0x8(%rbp)
jmp 0x36f0d
leaq 0x13bab9(%rip), %rax    # 0x1729c2
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x2671ee(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x36f5e
leaq 0x13baa8(%rip), %rax    # 0x1729e4
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
jmp 0x36fac
leaq 0x13ba14(%rip), %rax    # 0x172979
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13ba58(%rip), %rax    # 0x1729e4
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x36444d(%rip), %rdi    # 0x39b400
leaq 0x13ba4e(%rip), %rsi    # 0x172a08
movb $0x0, %al
callq 0x9060
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x364425(%rip), %rcx    # 0x39b400
callq 0x10ee0
leaq 0x240a99(%rip), %rax    # 0x277a80
cmpl $0x0, (%rax)
je 0x3700c
leaq 0x240a8d(%rip), %rax    # 0x277a80
movl (%rax), %edx
leaq 0x364404(%rip), %rdi    # 0x39b400
leaq 0x13ba21(%rip), %rsi    # 0x172a24
movb $0x0, %al
callq 0x9060
jmp 0x37026
leaq 0x3643ed(%rip), %rdi    # 0x39b400
leaq 0x13ba0a(%rip), %rsi    # 0x172a24
movl $0x18, %edx
movb $0x0, %al
callq 0x9060
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x3643c0(%rip), %rcx    # 0x39b400
callq 0x10ee0
leaq 0x2670d2(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x3705e
leaq 0x13b9ec(%rip), %rax    # 0x172a44
movq %rax, -0x8(%rbp)
jmp 0x37069
leaq 0x13b9fa(%rip), %rax    # 0x172a5f
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b9f7(%rip), %rax    # 0x172a83
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b9f4(%rip), %rax    # 0x172aa7
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b9f1(%rip), %rax    # 0x172acb
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x26701d(%rip), %rax    # 0x29e11e
cmpb $0x0, (%rax)
je 0x37113
leaq 0x13b9e0(%rip), %rax    # 0x172aed
movq %rax, -0x8(%rbp)
jmp 0x3711e
leaq 0x13b9f5(%rip), %rax    # 0x172b0f
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b9f3(%rip), %rax    # 0x172b34
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x198d00(%rip), %rax    # 0x1cfe68
movq (%rax), %rdx
leaq 0x36428e(%rip), %rdi    # 0x39b400
leaq 0x13b9e3(%rip), %rsi    # 0x172b5c
movb $0x0, %al
callq 0x9060
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movl $0xf, %edx
leaq 0x364266(%rip), %rcx    # 0x39b400
callq 0x10ee0
leaq 0x13b9d0(%rip), %rax    # 0x172b76
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b9c6(%rip), %rax    # 0x172b93
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b9b2(%rip), %rax    # 0x172ba6
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x24079d(%rip), %rax    # 0x2779b8
cmpl $0x0, (%rax)
je 0x3724e
movl -0x18(%rbp), %eax
movl %eax, -0x20(%rbp)
leaq 0x2407b7(%rip), %rax    # 0x2779e4
cmpl $0x1e0, (%rax)          # imm = 0x1E0
jge 0x3723d
movl -0x24(%rbp), %eax
movl %eax, -0x1c(%rbp)
jmp 0x37246
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0x24(%rbp)
jmp 0x3725d
movl -0x14(%rbp), %eax
movl %eax, -0x1c(%rbp)
movl -0x18(%rbp), %eax
addl $0x50, %eax
movl %eax, -0x20(%rbp)
leaq 0x13b960(%rip), %rax    # 0x172bc4
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b961(%rip), %rax    # 0x172bec
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b95b(%rip), %rax    # 0x172c0d
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b95c(%rip), %rax    # 0x172c35
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b95b(%rip), %rax    # 0x172c5b
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b95b(%rip), %rax    # 0x172c82
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x24066a(%rip), %rax    # 0x2779b8
cmpl $0x0, (%rax)
je 0x37371
leaq 0x24068a(%rip), %rax    # 0x2779e4
cmpl $0x258, (%rax)          # imm = 0x258
jge 0x37371
movl -0x24(%rbp), %eax
movl %eax, -0x1c(%rbp)
movl -0x18(%rbp), %eax
addl $0x28, %eax
movl %eax, -0x20(%rbp)
leaq 0x13b92e(%rip), %rax    # 0x172ca6
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b929(%rip), %rax    # 0x172cc8
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b923(%rip), %rax    # 0x172ce9
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b915(%rip), %rax    # 0x172d02
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b909(%rip), %rax    # 0x172d1d
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b907(%rip), %rax    # 0x172d42
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b8ff(%rip), %rax    # 0x172d61
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x24055b(%rip), %rax    # 0x2779e4
cmpl $0x1e0, (%rax)          # imm = 0x1E0
jge 0x37493
jmp 0x3749c
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x18(%rbp), %eax
movl %eax, -0x20(%rbp)
leaq 0x13b8df(%rip), %rax    # 0x172d88
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b8f8(%rip), %rax    # 0x172dc8
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b913(%rip), %rax    # 0x172e0a
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x13b93b(%rip), %rax    # 0x172e59
movq %rax, -0x8(%rbp)
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movq -0x8(%rbp), %rcx
movl $0xf, %edx
callq 0x10ee0
leaq 0x24049f(%rip), %rax    # 0x2779e4
cmpl $0x1e0, (%rax)          # imm = 0x1E0
jge 0x3754f
jmp 0x37558
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq 0x363ea1(%rip), %rdi    # 0x39b400
leaq 0x13b93a(%rip), %rsi    # 0x172ea0
leaq 0x198903(%rip), %rdx    # 0x1cfe70
movb $0x0, %al
callq 0x9060
movl -0x1c(%rbp), %edi
movl %edi, %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movl -0x20(%rbp), %esi
movl $0xa, %edx
leaq 0x363e72(%rip), %rcx    # 0x39b400
callq 0x10ee0
callq 0xb0d0
addq $0x30, %rsp
popq %rbp
retq
nop