// File: /workspace/github_cpp_makefile_star2_O1/jkingan[P]ladyheather/heathgps.cpp
// Function: show_osc_params(int, int)
void show_osc_params(int row,int col)
{
double dac;
double drift;
double tempco;
char c[10];
int prn;
int color;
int max_row;

   if(zoom_screen == 'O') return;
   if(zoom_screen == 'H') return;

   prn = 0;
   c[0] = 0;

   if(all_adevs) {
      if(SCREEN_WIDTH > NARROW_SCREEN)   col += 3;
      else if(small_font == 1) col -= 3;
   }

////   if((rcvr_type == BRANDY_RCVR) && (have_info & MANUF_PARAMS)) {
   if(rcvr_type == BRANDY_RCVR) {
      row = show_brandy_info(row, col);
   }
   else if(rcvr_type == LPFRS_RCVR) {
      max_row = MOUSE_ROW;
      if(zoom_screen == 'D') {
         max_row = (SCREEN_HEIGHT / TEXT_HEIGHT) - 3;
         col = 3;
      }
//    else if(osc_params) ;
      else if(plot_digital_clock) {
         max_row = (row + 9);
      }
      row = show_lpfrs_info(row,col, max_row);
   }
   else if(rcvr_type == PRS_RCVR) {
      max_row = MOUSE_ROW;
      if(zoom_screen == 'D') {
         max_row = (SCREEN_HEIGHT / TEXT_HEIGHT) - 3;
         col = 3;
      }
//    else if(osc_params) ;
      else if(plot_digital_clock) {
         max_row = (row + 9);
      }
      row = show_prs_info(row,col, max_row);
   }
   else if(rcvr_type == RFTG_RCVR) {
      row = show_rftg_info(row, col);
   }
   else if(rcvr_type == SA35_RCVR) {
      max_row = MOUSE_ROW;
      if(zoom_screen == 'D') {
         max_row = (SCREEN_HEIGHT / TEXT_HEIGHT) - 3;
         col = 3;
      }
//    else if(osc_params) ;
      else if(plot_digital_clock) {
         max_row = (row + 9);
      }
      row = show_sa35_info(row,col, max_row);
   }
   else if(rcvr_type == SRO_RCVR) {
      max_row = MOUSE_ROW;
      if(zoom_screen == 'D') {
         max_row = (SCREEN_HEIGHT / TEXT_HEIGHT) - 3;
         col = 3;
      }
//    else if(osc_params) ;
      else if(plot_digital_clock) {
         max_row = (row + 9);
      }
      row = show_sro_info(row,col, max_row);
   }
   else if(rcvr_type == TICC_RCVR) {
      show_ticc_config(row);
   }
   else if(rcvr_type == X72_RCVR) {
      max_row = MOUSE_ROW;
      if(zoom_screen == 'D') {
         max_row = (SCREEN_HEIGHT / TEXT_HEIGHT) - 3;
         col = 3;
      }
//    else if(osc_params) ;
      else if(plot_digital_clock) {
         max_row = (row + 9);
      }
      row = show_x72_info(row,col, max_row);
   }

   else if(zoom_screen) return;

   else if(rcvr_type == STAR_RCVR) {
      if(have_tc & 0x01) color = WHITE;
      else               color = GREY; 
      sprintf(out, "User time constant: %.0f secs    ", time_constant);
      vidstr(row++, col, color, out);
      if(row >= MOUSE_ROW) goto show_max_sigs;

      if(have_tc & 0x02) color = WHITE;
      else               color = GREY; 
      sprintf(out, "Real time constant: %.0f secs    ", real_time_constant);
      vidstr(row++, col, color, out);
      if(row >= MOUSE_ROW) goto show_max_sigs;

      if(have_gpsdo_ref & 0x02) color = WHITE;
      else                      color = GREY; 
      if(gpsdo_ref) sprintf(out, "GPSDO reference:    AUX PPS    ");
      else          sprintf(out, "GPSDO reference:    GPS        ");
      vidstr(row++, col, color, out);
      if(row >= MOUSE_ROW) goto show_max_sigs;

      if(have_star_hbsq & 0x01) color = WHITE;
      else                     color = GREY;
      sprintf(out, "HBSQ squelch time:  %d mins    ", user_hbsq);
      vidstr(row++, col, color, out);
      if(row >= MOUSE_ROW) goto show_max_sigs;

      if(have_star_hbsq & 0x02) color = WHITE;
      else                     color = GREY;
      sprintf(out, "Time until HBSQ:    %d mins    ", current_hbsq);
      vidstr(row++, col, color, out);
      if(row >= MOUSE_ROW) goto show_max_sigs;

      if(star_type == OSA_TYPE) {
         if(have_star_wtr & 0x01) color = WHITE;
         else                     color = GREY;
         sprintf(out, "Wait to restore:    %d secs    ", star_wtr);
         vidstr(row++, col, color, out);
         if(row >= MOUSE_ROW) goto show_max_sigs;

         if(have_star_wtr & 0x02) color = WHITE;
         else                     color = GREY;
         sprintf(out, "GPS WTR timer:      %d secs    ", star_wtr_timer);
         vidstr(row++, col, color, out);
         if(row >= MOUSE_ROW) goto show_max_sigs;

         if(have_star_wtr & 0x04) color = WHITE;
         else                     color = GREY;
         sprintf(out, "AUX WTR timer:      %d secs    ", star_aux_timer);
         vidstr(row++, col, color, out);
         if(row >= MOUSE_ROW) goto show_max_sigs;
      }
   }
   else if(rcvr_type == TSIP_RCVR) {  //tqtq
      if(have_jam_sync) color = WHITE;
      else color = GREY;
      if(jam_sync < 10.0)       sprintf(out, "Jam sync threshold:   %.3f ns    ", jam_sync);
      else if(jam_sync < 100.0) sprintf(out, "Jam sync threshold:  %.3f ns    ", jam_sync);
      else                      sprintf(out, "Jam sync threshold: %.3f ns    ", jam_sync);
      if(saw_ntpx) vidstr(row++, col, GREY,  out);
      else         vidstr(row++, col, color, out);

      if(have_freq_ofs) color = WHITE;
      else color = GREY;
      if(max_freq_offset < 10.0) sprintf(out, "Max freq offset:      %.3f%s    ", max_freq_offset, ppb_string);
      else                       sprintf(out, "Max freq offset:     %.3f%s    ", max_freq_offset, ppb_string);
      if(saw_ntpx) vidstr(row++, col, GREY,  out);
      else         vidstr(row++, col, color, out);

      if(have_tc) color = WHITE;
      else        color = GREY; 
      sprintf(out, "Time constant:      %.3f secs    ", time_constant);
      vidstr(row++, col, color, out);

      if(have_damp) color = WHITE;
      else          color = GREY; 
      sprintf(out, "Damping factor:       %.3f    ", damping_factor);
      vidstr(row++, col, color, out);

      if(gain_color == YELLOW) color = gain_color;
      else if(have_gain) color = WHITE;
      else color = GREY; 
      sprintf(out, "Osc gain:            %+.6f Hz/V    ", osc_gain);
      vidstr(row++, col, color, out);

      if(have_initv) color = WHITE;
      else           color = GREY; 
      sprintf(out, "Initial DAC voltage: %+.6f V    ", initial_voltage);
      if(saw_ntpx) vidstr(row++, col, GREY,  out);
      else         vidstr(row++, col, color, out);

      if(have_minv) color = WHITE;
      else          color = GREY; 
      sprintf(out, "Min EFC voltage:     %+.6f V    ", min_volts);
      vidstr(row++, col, color, out);

      if(have_maxv) color = WHITE;
      else          color = GREY; 
      sprintf(out, "Max EFC voltage:     %+.6f V    ", max_volts);
      vidstr(row++, col, color, out);

      if(have_dac_range) {
         sprintf(out, "EFC DAC range:       %+.2f to %+.2f V ", min_dac_v, max_dac_v);
         if(saw_ntpx) vidstr(row++, col, GREY,  out);
         else         vidstr(row++, col, WHITE, out);
      }


   
      // Calculate oscillator drift rate per day based upon the dac
      // voltage change over the plot display interval.  This assumes
      // that the temperature is stable.
      dac = plot[DAC].a1;
      drift = (dac * (double) osc_gain) * 24.0*60.0*60.0;  // Hz per day
      sprintf(out, "Osc drift rate: %14.6e parts/day   ", drift/10.0E6F);
      vidstr(row+1, col, WHITE, out);

      // Calculate oscillator freq change with temperature over the plot
      // display interval.  This assumes that the temperature has changed
      // during the display interval.
      tempco = plot[TEMP].a1;  // degrees/sec
      if(tempco) {
         tempco = plot[OSC].a1 / tempco;  // (ppb/sec) divided by (degrees/sec)
         tempco /= (-1.0E9);              // convert ppb/degree C into parts/C
         sprintf(out, "Osc tempco:     %14.6e parts/%cC   ", tempco, DEGREES);
         vidstr(row+2, col, WHITE, out);
      }
   }
   else if(rcvr_type == UCCM_RCVR) {
      if(have_pullin) color = WHITE;
      else            color = GREY; 
      sprintf(out, "Pullin range:       %3d PPB      ", pullin_range);
      vidstr(row++, col, color, out);
   }

   show_max_sigs:
#ifdef SIG_LEVELS
if(rcvr_type != RFTG_RCVR) {
   show_max_signals();
}
#endif

   if(0) {  // alternate osc parameter calculations
      if(view_interval == 0) return;
      if(plot_mag == 0) return;
      if(plot[DAC].stat_count == 0.0) return;
      if(plot[OSC].stat_count == 0.0) return;
      ++row;

      dac = plot[DAC].sum_change / plot[DAC].stat_count / view_interval;
      dac /= plot_mag;
      drift = (dac * (double) osc_gain) * 24.0*60.0*60.0;  // Hz per day
      sprintf(out, "Osc drift rate: %14.6e parts/day   ", drift/10.0E6F);
      vidstr(row++, col, WHITE, out);

      tempco = plot[TEMP].sum_change / plot[TEMP].stat_count / view_interval;
      tempco /= plot_mag;
      if(tempco) {
         tempco = (plot[OSC].sum_change/plot[OSC].stat_count/view_interval) / tempco;  // (ppb/sec) divided by (degrees/sec)
         tempco /= (-1.0E9);              // convert ppb/degree C into parts/C
         sprintf(out, "Osc tempco:     %14.6e parts/%cC   ", tempco, DEGREES);
         vidstr(row++, col, WHITE, out);
      }
   }

   return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
leaq 0x25d193(%rip), %rax    # 0x30c7a8
movzbl (%rax), %eax
cmpl $0x48, %eax
je 0xafa13
cmpl $0x4f, %eax
je 0xafa13
movl %esi, %ebx
movl %edi, %r14d
leaq 0x18d708(%rip), %rcx    # 0x23cd3e
cmpb $0x0, (%rcx)
je 0xaf681
leaq 0x1691be(%rip), %rcx    # 0x218800
leaq 0x173efb(%rip), %rdx    # 0x223544
imull $0x31a, (%rdx), %edx    # imm = 0x31A
movslq %edx, %rdx
imulq $0x51eb851f, %rdx, %rdx # imm = 0x51EB851F
movq %rdx, %rsi
shrq $0x3f, %rsi
sarq $0x25, %rdx
addl %esi, %edx
cmpl %edx, (%rcx)
jle 0xaf66f
addl $0x3, %ebx
jmp 0xaf681
leaq 0x1691e3(%rip), %rcx    # 0x218859
cmpb $0x1, (%rcx)
leal -0x3(%rbx), %ecx
cmovnel %ebx, %ecx
movl %ecx, %ebx
leaq 0x169248(%rip), %r15    # 0x2188d0
movq (%r15), %rcx
cmpq $0x1ffffff, %rcx        # imm = 0x1FFFFFF
jg 0xaf6c6
cmpq $0x3fffff, %rcx         # imm = 0x3FFFFF
jg 0xaf717
cmpq $0x10000, %rcx          # imm = 0x10000
je 0xaf7a5
cmpq $0x40000, %rcx          # imm = 0x40000
jne 0xaf815
movl %r14d, %edi
movl %ebx, %esi
callq 0xaeafd
jmp 0xafa0a
cmpq $0xfffffff, %rcx        # imm = 0xFFFFFFF
jg 0xaf75b
cmpq $0x2000000, %rcx        # imm = 0x2000000
je 0xaf7b2
cmpq $0x8000000, %rcx        # imm = 0x8000000
jne 0xaf815
cmpb $0x44, %al
jne 0xaf977
leaq 0x169108(%rip), %rax    # 0x218804
movl (%rax), %eax
leaq 0x16910f(%rip), %rcx    # 0x218814
cltd
idivl (%rcx)
movl %eax, %edx
addl $-0x3, %edx
movl $0x3, %ebx
jmp 0xaf9e0
cmpq $0x400000, %rcx         # imm = 0x400000
je 0xaf7dc
cmpq $0x1000000, %rcx        # imm = 0x1000000
jne 0xaf815
cmpb $0x44, %al
jne 0xaf98e
leaq 0x1690c4(%rip), %rax    # 0x218804
movl (%rax), %eax
leaq 0x1690cb(%rip), %rcx    # 0x218814
cltd
idivl (%rcx)
movl %eax, %edx
addl $-0x3, %edx
movl $0x3, %ebx
jmp 0xaf9f0
cmpq $0x10000000, %rcx       # imm = 0x10000000
je 0xaf7eb
movabsq $0x1000000000, %rdx     # imm = 0x1000000000
cmpq %rdx, %rcx
jne 0xaf815
cmpb $0x44, %al
jne 0xaf9a5
leaq 0x16907a(%rip), %rax    # 0x218804
movl (%rax), %eax
leaq 0x169081(%rip), %rcx    # 0x218814
cltd
idivl (%rcx)
movl %eax, %edx
addl $-0x3, %edx
movl $0x3, %ebx
jmp 0xafa00
movl %r14d, %edi
callq 0xb00c2
jmp 0xafa0a
cmpb $0x44, %al
jne 0xaf949
leaq 0x169043(%rip), %rax    # 0x218804
movl (%rax), %eax
leaq 0x16904a(%rip), %rcx    # 0x218814
cltd
idivl (%rcx)
movl %eax, %edx
addl $-0x3, %edx
movl $0x3, %ebx
jmp 0xaf9c0
movl %r14d, %edi
movl %ebx, %esi
callq 0xaee2b
jmp 0xafa0a
cmpb $0x44, %al
jne 0xaf960
leaq 0x16900a(%rip), %rax    # 0x218804
movl (%rax), %eax
leaq 0x169011(%rip), %rcx    # 0x218814
cltd
idivl (%rcx)
movl %eax, %edx
addl $-0x3, %edx
movl $0x3, %ebx
jmp 0xaf9d0
testb %al, %al
jne 0xafa13
cmpq $0x1, %rcx
je 0xafa7f
cmpq $0x8, %rcx
je 0xafa35
cmpq $0x1000, %rcx           # imm = 0x1000
jne 0xafa0a
leaq 0x25daab(%rip), %rax    # 0x30d2f0
testb $0x1, (%rax)
leaq 0x25d8a1(%rip), %rax    # 0x30d0f0
movsd (%rax), %xmm0
leaq 0x77296(%rip), %rsi     # 0x126af0
leaq 0x28c9bf(%rip), %rdi    # 0x33c220
movl $0x8, %eax
movl $0xf, %r13d
cmovel %eax, %r13d
movb $0x1, %al
callq 0x9060
leal 0x1(%r14), %r12d
movl %r14d, %edi
movl %ebx, %esi
movl %r13d, %edx
leaq 0x28c996(%rip), %rcx    # 0x33c220
callq 0xe7d0
leaq 0x168f12(%rip), %rax    # 0x2187a8
cmpl (%rax), %r12d
jge 0xafa0a
leaq 0x25da4a(%rip), %rax    # 0x30d2f0
testb $0x2, (%rax)
leaq 0x25d848(%rip), %rax    # 0x30d0f8
movsd (%rax), %xmm0
leaq 0x77257(%rip), %rsi     # 0x126b12
leaq 0x28c95e(%rip), %rdi    # 0x33c220
movl $0xf, %r13d
movl $0x8, %eax
cmovel %eax, %r13d
movb $0x1, %al
callq 0x9060
leal 0x2(%r14), %eax
movl %eax, -0x2c(%rbp)
movl %r12d, %edi
leaq 0x28c937(%rip), %r12    # 0x33c220
movl %ebx, %esi
movl %r13d, %edx
movq %r12, %rcx
callq 0xe7d0
movl -0x2c(%rbp), %edi
leaq 0x168ea8(%rip), %rax    # 0x2187a8
cmpl (%rax), %edi
jge 0xafa0a
leaq 0x25d375(%rip), %rax    # 0x30cc84
testb $0x2, (%rax)
movl $0x8, %ecx
movl $0xf, %eax
cmovel %ecx, %eax
leaq 0x25d35a(%rip), %rcx    # 0x30cc80
cmpl $0x0, (%rcx)
je 0xafecc
movups 0x7720e(%rip), %xmm0    # 0x126b44
movaps %xmm0, 0x10(%r12)
movupd 0x771f0(%rip), %xmm0    # 0x126b34
jmp 0xafee1
leaq 0x16ba95(%rip), %rax    # 0x21b3e5
cmpb $0x0, (%rax)
jne 0xaf9bc
leaq 0x168e4c(%rip), %rax    # 0x2187a8
movl (%rax), %edx
jmp 0xaf9c0
leaq 0x16ba7e(%rip), %rax    # 0x21b3e5
cmpb $0x0, (%rax)
jne 0xaf9cc
leaq 0x168e35(%rip), %rax    # 0x2187a8
movl (%rax), %edx
jmp 0xaf9d0
leaq 0x16ba67(%rip), %rax    # 0x21b3e5
cmpb $0x0, (%rax)
jne 0xaf9dc
leaq 0x168e1e(%rip), %rax    # 0x2187a8
movl (%rax), %edx
jmp 0xaf9e0
leaq 0x16ba50(%rip), %rax    # 0x21b3e5
cmpb $0x0, (%rax)
jne 0xaf9ec
leaq 0x168e07(%rip), %rax    # 0x2187a8
movl (%rax), %edx
jmp 0xaf9f0
leaq 0x16ba39(%rip), %rax    # 0x21b3e5
cmpb $0x0, (%rax)
jne 0xaf9fc
leaq 0x168df0(%rip), %rax    # 0x2187a8
movl (%rax), %edx
jmp 0xafa00
leal 0x9(%r14), %edx
movl %r14d, %edi
movl %ebx, %esi
callq 0xc958a
jmp 0xafa0a
leal 0x9(%r14), %edx
movl %r14d, %edi
movl %ebx, %esi
callq 0xc788c
jmp 0xafa0a
leal 0x9(%r14), %edx
movl %r14d, %edi
movl %ebx, %esi
callq 0xc7df1
jmp 0xafa0a
leal 0x9(%r14), %edx
movl %r14d, %edi
movl %ebx, %esi
callq 0xc8588
jmp 0xafa0a
leal 0x9(%r14), %edx
movl %r14d, %edi
movl %ebx, %esi
callq 0xc7ba5
cmpq $0x400000, (%r15)       # imm = 0x400000
jne 0xafa22
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0xae77d
leaq 0x25d734(%rip), %rax    # 0x30d170
cmpl $0x0, (%rax)
leaq 0x25d726(%rip), %rax    # 0x30d16c
movl (%rax), %edx
leaq 0x773a0(%rip), %rsi     # 0x126def
leaq 0x28c7ca(%rip), %r13    # 0x33c220
movl $0x8, %eax
movl $0xf, %r12d
cmovel %eax, %r12d
movq %r13, %rdi
xorl %eax, %eax
callq 0x9060
movl %r14d, %edi
movl %ebx, %esi
movl %r12d, %edx
movq %r13, %rcx
jmp 0xafec2
leaq 0x25d88a(%rip), %rax    # 0x30d310
cmpl $0x0, (%rax)
movl $0x8, %eax
movl $0xf, %r13d
cmovel %eax, %r13d
leaq 0x25d6a1(%rip), %rax    # 0x30d140
movsd (%rax), %xmm0
movsd 0x595b5(%rip), %xmm1    # 0x109060
ucomisd %xmm0, %xmm1
leaq 0x77180(%rip), %rax     # 0x126c36
leaq 0x7719a(%rip), %rcx     # 0x126c57
cmovaq %rax, %rcx
movsd 0x595df(%rip), %xmm1    # 0x1090a8
ucomisd %xmm0, %xmm1
leaq 0x77140(%rip), %rsi     # 0x126c14
cmovbeq %rcx, %rsi
leaq 0x28c741(%rip), %r12    # 0x33c220
movq %r12, %rdi
movb $0x1, %al
callq 0x9060
leaq 0x18f44c(%rip), %rax    # 0x23ef3c
cmpb $0x0, (%rax)
movl $0x8, %eax
cmovnel %eax, %r13d
movl %r14d, %edi
movl %ebx, %esi
movl %r13d, %edx
movq %r12, %rcx
callq 0xe7d0
leaq 0x25d801(%rip), %rax    # 0x30d314
cmpl $0x0, (%rax)
movl $0xf, %r13d
movl $0x8, %eax
cmovel %eax, %r13d
leaq 0x25d61c(%rip), %rax    # 0x30d148
movsd (%rax), %xmm0
movsd 0x59570(%rip), %xmm1    # 0x1090a8
ucomisd %xmm0, %xmm1
leaq 0x77134(%rip), %rax     # 0x126c77
leaq 0x7714e(%rip), %rsi     # 0x126c98
cmovaq %rax, %rsi
leal 0x1(%r14), %r12d
leaq 0x28fabf(%rip), %rax    # 0x33f618
movq (%rax), %rdx
leaq 0x28c6bd(%rip), %rdi    # 0x33c220
movb $0x1, %al
callq 0x9060
leaq 0x18f3cb(%rip), %rax    # 0x23ef3c
cmpb $0x0, (%rax)
movl $0x8, %eax
cmovnel %eax, %r13d
movl %r12d, %edi
movl %ebx, %esi
movl %r13d, %edx
leaq 0x28c694(%rip), %rcx    # 0x33c220
callq 0xe7d0
leal 0x2(%r14), %r12d
leaq 0x25d754(%rip), %rax    # 0x30d2f0
cmpl $0x0, (%rax)
leaq 0x25d54a(%rip), %rax    # 0x30d0f0
movsd (%rax), %xmm0
leaq 0x77107(%rip), %rsi     # 0x126cb8
movl $0xf, %r13d
movl $0x8, %eax
cmovel %eax, %r13d
leaq 0x28c659(%rip), %rdi    # 0x33c220
movb $0x1, %al
callq 0x9060
leal 0x3(%r14), %eax
movl %eax, -0x30(%rbp)
movl %r12d, %edi
movl %ebx, %esi
movl %r13d, %edx
leaq 0x28c63c(%rip), %r13    # 0x33c220
movq %r13, %rcx
callq 0xe7d0
leaq 0x25d701(%rip), %rax    # 0x30d2f4
cmpl $0x0, (%rax)
leaq 0x25d503(%rip), %rax    # 0x30d100
movsd (%rax), %xmm0
leaq 0x770d2(%rip), %rsi     # 0x126cda
movl $0xf, %r12d
movl $0x8, %eax
cmovel %eax, %r12d
movq %r13, %rdi
movb $0x1, %al
callq 0x9060
leal 0x4(%r14), %eax
movl %eax, -0x2c(%rbp)
movl -0x30(%rbp), %edi
movl %ebx, %esi
movl %r12d, %edx
movq %r13, %rcx
callq 0xe7d0
leaq 0x25d529(%rip), %rax    # 0x30d168
movl (%rax), %eax
leaq 0x25d6b0(%rip), %rcx    # 0x30d2f8
cmpl $0x0, (%rcx)
movl $0xf, %r12d
movl $0x8, %ecx
cmovel %ecx, %r12d
cmpl $0xe, %eax
cmovel %eax, %r12d
leaq 0x25d4a0(%rip), %rax    # 0x30d108
movsd (%rax), %xmm0
leaq 0x77086(%rip), %rsi     # 0x126cf9
movq %r13, %rdi
movb $0x1, %al
callq 0x9060
leal 0x5(%r14), %eax
movl %eax, -0x30(%rbp)
movzbl %r12b, %edx
movl -0x2c(%rbp), %edi
movl %ebx, %esi
movq %r13, %rcx
callq 0xe7d0
leaq 0x25d664(%rip), %rax    # 0x30d300
leaq 0x25d4ad(%rip), %rcx    # 0x30d150
movsd (%rcx), %xmm0
cmpl $0x0, (%rax)
leaq 0x7706c(%rip), %rsi     # 0x126d1d
movl $0xf, %r12d
movl $0x8, %eax
cmovel %eax, %r12d
movq %r13, %rdi
movb $0x1, %al
callq 0x9060
leaq 0x18f26b(%rip), %rax    # 0x23ef3c
cmpb $0x0, (%rax)
movl $0x8, %eax
cmovnel %eax, %r12d
movl -0x30(%rbp), %edi
movl %ebx, %esi
movl %r12d, %edx
movq %r13, %r12
movq %r13, %rcx
callq 0xe7d0
leal 0x6(%r14), %eax
movl %eax, -0x30(%rbp)
leaq 0x25d606(%rip), %rax    # 0x30d304
cmpl $0x0, (%rax)
leaq 0x25d418(%rip), %rax    # 0x30d120
movsd (%rax), %xmm0
leaq 0x7702b(%rip), %rsi     # 0x126d3e
movl $0xf, %r13d
movl $0x8, %eax
cmovel %eax, %r13d
movq %r12, %rdi
movb $0x1, %al
callq 0x9060
leal 0x7(%r14), %eax
movl %eax, -0x2c(%rbp)
movl -0x30(%rbp), %edi
movl %ebx, %esi
movl %r13d, %edx
movq %r12, %r13
movq %r12, %rcx
callq 0xe7d0
leaq 0x25d5bb(%rip), %rax    # 0x30d308
cmpl $0x0, (%rax)
leaq 0x25d3d1(%rip), %rax    # 0x30d128
movsd (%rax), %xmm0
leaq 0x76ffd(%rip), %rsi     # 0x126d5f
movl $0xf, %r12d
movl $0x8, %eax
cmovel %eax, %r12d
movq %r13, %rdi
movb $0x1, %al
callq 0x9060
movl $0x8, %eax
leal (%r14,%rax), %r13d
movl -0x2c(%rbp), %edi
movl %ebx, %esi
movl %r12d, %edx
leaq 0x28c48d(%rip), %rcx    # 0x33c220
callq 0xe7d0
leaq 0x25d56d(%rip), %rax    # 0x30d30c
cmpl $0x0, (%rax)
je 0xafdfd
leaq 0x25d385(%rip), %rax    # 0x30d130
movsd (%rax), %xmm0
leaq 0x25d382(%rip), %rax    # 0x30d138
movsd (%rax), %xmm1
leaq 0x28c45f(%rip), %r12    # 0x33c220
leaq 0x76fb8(%rip), %rsi     # 0x126d80
movq %r12, %rdi
movb $0x2, %al
callq 0x9060
addl $0x9, %r14d
leaq 0x18f15f(%rip), %rax    # 0x23ef3c
cmpb $0x0, (%rax)
movl $0x8, %edx
movl $0xf, %eax
cmovel %eax, %edx
movl %r13d, %edi
movl %ebx, %esi
movq %r12, %rcx
callq 0xe7d0
movl %r14d, %r13d
leaq 0xadf2c(%rip), %r12     # 0x15dd30
movsd 0x268(%r12), %xmm0
leaq 0x25d2f3(%rip), %rax    # 0x30d108
mulsd (%rax), %xmm0
mulsd 0x5921f(%rip), %xmm0    # 0x109040
movsd 0x591df(%rip), %xmm1    # 0x109008
mulsd %xmm1, %xmm0
mulsd %xmm1, %xmm0
divsd 0x5ba8f(%rip), %xmm0    # 0x10b8c8
leaq 0x28c3e0(%rip), %r14    # 0x33c220
leaq 0x76f60(%rip), %rsi     # 0x126da7
movq %r14, %rdi
movb $0x1, %al
callq 0x9060
leal 0x1(%r13), %edi
movl %ebx, %esi
movl $0xf, %edx
movq %r14, %rcx
callq 0xe7d0
movsd 0x350(%r12), %xmm1
xorpd %xmm0, %xmm0
ucomisd %xmm0, %xmm1
jne 0xafe7e
jnp 0xafa0a
movsd 0x180(%r12), %xmm0
divsd %xmm1, %xmm0
divsd 0x6e8cc(%rip), %xmm0    # 0x11e760
leaq 0x28c385(%rip), %r14    # 0x33c220
leaq 0x76f29(%rip), %rsi     # 0x126dcb
movq %r14, %rdi
movl $0x1, %edx
movb $0x1, %al
callq 0x9060
addl $0x2, %r13d
movl %r13d, %edi
movl %ebx, %esi
movl $0xf, %edx
movq %r14, %rcx
callq 0xe7d0
jmp 0xafa0a
movups 0x76c91(%rip), %xmm0    # 0x126b64
movaps %xmm0, 0x10(%r12)
movupd 0x76c73(%rip), %xmm0    # 0x126b54
movapd %xmm0, (%r12)
leal 0x3(%r14), %r12d
movzbl %al, %edx
leaq 0x28c32b(%rip), %rcx    # 0x33c220
movl %ebx, %esi
callq 0xe7d0
leaq 0x1688a5(%rip), %rax    # 0x2187a8
cmpl (%rax), %r12d
jge 0xafa0a
leaq 0x28de35(%rip), %rax    # 0x33dd48
testb $0x1, (%rax)
leaq 0x28de23(%rip), %rax    # 0x33dd40
movl (%rax), %edx
leaq 0x76c4e(%rip), %rsi     # 0x126b74
leaq 0x28c2f3(%rip), %rdi    # 0x33c220
movl $0x8, %eax
movl $0xf, %r13d
cmovel %eax, %r13d
xorl %eax, %eax
callq 0x9060
movl %r12d, %edi
leal 0x4(%r14), %r12d
movl %ebx, %esi
movl %r13d, %edx
leaq 0x28c2ca(%rip), %rcx    # 0x33c220
callq 0xe7d0
leaq 0x168846(%rip), %rax    # 0x2187a8
movl %r12d, -0x2c(%rbp)
cmpl (%rax), %r12d
jge 0xafa0a
leaq 0x28ddd2(%rip), %rax    # 0x33dd48
testb $0x2, (%rax)
leaq 0x28ddc4(%rip), %rax    # 0x33dd44
movl (%rax), %edx
leaq 0x76c0b(%rip), %rsi     # 0x126b94
leaq 0x28c290(%rip), %rdi    # 0x33c220
movl $0xf, %r13d
movl $0x8, %eax
cmovel %eax, %r13d
xorl %eax, %eax
callq 0x9060
leal 0x5(%r14), %r12d
movl -0x2c(%rbp), %edi
movl %ebx, %esi
movl %r13d, %edx
leaq 0x28c267(%rip), %rcx    # 0x33c220
callq 0xe7d0
leaq 0x1687e3(%rip), %rax    # 0x2187a8
movl %r12d, -0x2c(%rbp)
cmpl (%rax), %r12d
jge 0xafa0a
leaq 0x16b00f(%rip), %rax    # 0x21afe8
cmpl $0x4f, (%rax)
jne 0xafa0a
leaq 0x25d3ef(%rip), %rax    # 0x30d3d8
testb $0x1, (%rax)
leaq 0x28dd3d(%rip), %rax    # 0x33dd30
movl (%rax), %edx
leaq 0x76bb8(%rip), %rsi     # 0x126bb4
leaq 0x28c21d(%rip), %rdi    # 0x33c220
movl $0x8, %eax
movl $0xf, %r13d
cmovel %eax, %r13d
xorl %eax, %eax
callq 0x9060
leal 0x6(%r14), %r12d
movl -0x2c(%rbp), %edi
movl %ebx, %esi
movl %r13d, %edx
leaq 0x28c1f4(%rip), %rcx    # 0x33c220
callq 0xe7d0
leaq 0x168770(%rip), %rax    # 0x2187a8
movl %r12d, -0x2c(%rbp)
cmpl (%rax), %r12d
jge 0xafa0a
leaq 0x25d38c(%rip), %rax    # 0x30d3d8
testb $0x2, (%rax)
leaq 0x28dcde(%rip), %rax    # 0x33dd34
movl (%rax), %edx
leaq 0x76b75(%rip), %rsi     # 0x126bd4
leaq 0x28c1ba(%rip), %r12    # 0x33c220
movl $0xf, %r13d
movl $0x8, %eax
cmovel %eax, %r13d
movq %r12, %rdi
xorl %eax, %eax
callq 0x9060
addl $0x7, %r14d
movl -0x2c(%rbp), %edi
movl %ebx, %esi
movl %r13d, %edx
movq %r12, %rcx
callq 0xe7d0
leaq 0x16870e(%rip), %rax    # 0x2187a8
cmpl (%rax), %r14d
jge 0xafa0a
leaq 0x25d32e(%rip), %rax    # 0x30d3d8
testb $0x4, (%rax)
leaq 0x28dc84(%rip), %rax    # 0x33dd38
movl (%rax), %edx
leaq 0x76b37(%rip), %rsi     # 0x126bf4
jmp 0xafa4f