// File: /workspace/github_cpp_makefile_star2_O1/jkingan[P]ladyheather/heather.cpp
// Function: label_plot_cursor_val(int, int, PLOT_Q)
int label_plot_cursor_val(int id, int col, struct PLOT_Q q)
{
double val;
char c;

   // format the plot header cursor value line entries

   if(plot[id].show_deriv) c = '*';
   else if(plot[id].show_freq) c = '#';
   else if(plot[id].drift_rate) c = '=';
   else c = ':';

   val = (double) q.data[id]/(double) queue_interval;
   out[0] = 0;

   if(tie_plot(id)) {  // it's a time interval error plot
      if(plot[id].show_freq) {  // frequency mode
         val = tie_to_freq(id, val);
         sprintf(out, "%s%c %.6f %s", plot[id].plot_id,c, val, "Hz");
      }
      else {  // time mode
         val = remove_trend(id, 1, q.q_jd, (DATA_SIZE) val);
         sprintf(out, "%s%c %.6f %s", plot[id].plot_id,c, val, plot[id].units);
      }
   }
   else if(phase_plot(id)) {
      val = remove_trend(id, 1, q.q_jd, (DATA_SIZE) val);
      sprintf(out, "%s%c %.6f %s", plot[id].plot_id,c, val, plot[id].units);
   }
   else if((id == ADC3) && (rcvr_type == THERMO_RCVR)) {  // PPS
      sprintf(out, "%s%c %.6f %s", plot[id].plot_id,c, val, plot[id].units);
   }
   else if((id == ADC4) && (rcvr_type == THERMO_RCVR)) {  // OSC
      sprintf(out, "%s%c %.6f %s", plot[id].plot_id,c, val, plot[id].units);
   }
   else if(id == DAC) {
      if(luxor) {
         sprintf(out, "%s%c %.3f V", plot[id].plot_id,c, val);
      }
      else if(TIMING_RCVR) {
         sprintf(out, "%s%c %.6f ns", plot[id].plot_id,c, val);
      }
      else {
         sprintf(out, "%s%c %.6f %s", plot[id].plot_id,c, val, plot[id].units);
      }
   }
   else if(id == TEMP) {
      if((rcvr_type == UCCM_RCVR) && (scpi_type == UCCMP_TYPE)) {
         sprintf(out, "%s%c %.6f %s", "TCOR", c, val, ppt_string);
      }
      else {
         sprintf(out, "%s%c %s", plot[id].plot_id,c, fmt_temp(val));
      }
   }
else if((id == PRESSURE) && enviro_mode()) {
   sprintf(out, "%s%c %s", plot[id].plot_id,c, fmt_pressure(val));
}
   else if(luxor && (id == TC2)) {
      sprintf(out, "%s%c %s", plot[id].plot_id,c, fmt_temp(val));
   }
   else if(id == OSC) {
      fmt_osc_val(0, plot[id].plot_id, val);
   }
   else if(id == PPS) {
      if(luxor) {
         val = val * (double) lux_scale;
         if(val <= (-10000.0))     sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
         else                      sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
      }
      else if(rcvr_type == CS_RCVR) {
         sprintf(out, "%s%c %.1f uA", plot[id].plot_id,c, val);
      }
      else if(rcvr_type == ESIP_RCVR) {
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f ns", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f ns", plot[id].plot_id,c, val);
      }
      else if(rcvr_type == GPSD_RCVR) {
         val = val / 1.0E6;
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f ms", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f ms", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f ms", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f ms", plot[id].plot_id,c, val);
      }
      else if(rcvr_type == NVS_RCVR) {
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f ns/s", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f ns/s", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f ns/s", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f ns/s", plot[id].plot_id,c, val);
      }
      else if(rcvr_type == UBX_RCVR) {
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f ns", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f ns", plot[id].plot_id,c, val);
      }
      else if((rcvr_type == VENUS_RCVR) && saw_venus_raw) {
         sprintf(out, "%s%c %.1f m", plot[id].plot_id,c, val);
      }
      else if(rcvr_type == ZODIAC_RCVR) {
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f ns", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f ns", plot[id].plot_id,c, val);
      }
      else if(lte_lite) {
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f ns", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f ns", plot[id].plot_id,c, val);
      }
      else if(ACU_GG || ACU_360) {
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f ns", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f ns", plot[id].plot_id,c, val);
      }
      else if(TIMING_RCVR) {
         val = val / 1000.0F;
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f us", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f us", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f us", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f us", plot[id].plot_id,c, val);
      }
      else {
         if(val <= (-10000.0))     sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else if(val <= (-1000.0)) sprintf(out, "%s%c %.5f ns", plot[id].plot_id,c, val);
         else if(val >= 10000.0)   sprintf(out, "%s%c %.4f ns", plot[id].plot_id,c, val);
         else                      sprintf(out, "%s%c %.6f ns", plot[id].plot_id,c, val);
      }
   }
   else if(id == SAT_PLOT) {
      sprintf(out, "%s%c %.0f %s", plot[id].plot_id,c, val, plot[id].units);
   }
   else if(rcvr_type == CS_RCVR) {
      sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
   }
   else if(rcvr_type == X72_RCVR) {
      sprintf(out, "%s%c %.5f %s", plot[id].plot_id,c, val, plot[id].units);
   }
   else if(id >= NUM_PLOTS) {  // derived plots DERIVED_PLOTS !!!!!
      if(luxor && (id == BATTW)) {        // battery watts
         val = (double) q.data[BATTI]*(double) q.data[BATTV] / (double) queue_interval;
      }
      else if(luxor && (id == LEDW)) {   // LED watts
         val = (double) q.data[LEDI]*(double) q.data[LEDV] / (double) queue_interval;
      }
      else if(luxor && (id == EFF)) { // driver efficency
         val = (double) q.data[BATTI]*(double) q.data[BATTV];
         if(val) val = (double) q.data[LEDI]*(double) q.data[LEDV] / val;
         val = val * 100.0;
      }
      else if(luxor && (id == CCT)) { // color temo
         cct_dbg = 1;
         val = (double) calc_cct(cct_type, 1, (double) q.data[REDHZ]/(double)queue_interval, (double) q.data[GREENHZ]/(double)queue_interval, (double) q.data[BLUEHZ]/(double)queue_interval);
         cct_dbg = 0;
      }
      else {
//       val = 0.0;
      }

      if(luxor) {
         sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
      }
      else {
         sprintf(out, "%s%c %.6f %s", plot[id].plot_id,c, val, plot[id].units);
      }
   }
   else if((id == ONE) || (id == TWO)) {
      if(rcvr_type == TIDE_RCVR) {  // ckckck
         sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
      }
      else if(rcvr_type == ZYFER_RCVR) {
         sprintf(out, "%s%c %.4f %s", plot[id].plot_id,c, val, plot[id].units);
      }
      else if(plot_loc) {
         sprintf(out, "%s%c %.8f %s", plot[id].plot_id,c, val, plot[id].units);
      }
      else sprintf(out, "%s%c (private) %s", plot[id].plot_id,c, plot[id].units);
   }
   else if(id == THREE) {
      sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
   }
   else if(id == SIX) {
      sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
   }
   else {
      if(luxor) {
         if(id == LUX2) val = val * (double) lum_scale;
         sprintf(out, "%s%c %.3f %s", plot[id].plot_id,c, val, plot[id].units);
      }
      else {
         sprintf(out, "%s%c %.6f %s", plot[id].plot_id,c, val, plot[id].units);
      }
   }

   no_x_margin = no_y_margin = 1;
   vidstr(CURSOR_VAL_ROW, col, plot[id].plot_color, out);
   no_x_margin = no_y_margin = 0;
   return strlen(out);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movl %esi, %ebx
movl %edi, %r15d
leaq 0x10(%rbp), %r13
movslq %edi, %rdi
imulq $0xe8, %rdi, %rax
leaq 0x1488cf(%rip), %rcx    # 0x15dd30
leaq (%rcx,%rax), %r12
movl $0x2a, %r14d
cmpl $0x0, 0xcc(%rax,%rcx)
jne 0x154a5
movl $0x23, %r14d
cmpl $0x0, 0xd0(%r12)
jne 0x154a5
xorpd %xmm0, %xmm0
cmpneqsd 0xa0(%r12), %xmm0
movq %xmm0, %rax
andl $0x1, %eax
leal (%rax,%rax,2), %r14d
addl $0x3a, %r14d
movsd 0x10(%r13,%rdi,8), %xmm1
xorps %xmm0, %xmm0
cvtsi2sdq 0x205ee0(%rip), %xmm0 # 0x21b398
divsd %xmm0, %xmm1
movapd %xmm1, -0x40(%rbp)
movb $0x0, 0x326d58(%rip)    # 0x33c220
callq 0x13ccd
testl %eax, %eax
je 0x1550b
cmpl $0x0, 0xd0(%r12)
je 0x1558f
movl %r15d, %edi
movapd -0x40(%rbp), %xmm0
callq 0xad8a2
movq (%r12), %rdx
leaq 0x326d28(%rip), %rdi    # 0x33c220
leaq 0xf5217(%rip), %rsi     # 0x10a716
leaq 0x100c5e(%rip), %r8     # 0x116164
jmp 0x155be
movq 0x2033be(%rip), %rax    # 0x2188d0
cmpq $0x10000, %rax          # imm = 0x10000
setne %cl
movl %r15d, %edx
andl $-0x4, %edx
cmpl $0x4, %edx
setne %dl
orb %cl, %dl
je 0x1558f
testl %r15d, %r15d
setne %cl
cmpq $0x80000, %rax          # imm = 0x80000
setne %dl
orb %cl, %dl
movapd -0x40(%rbp), %xmm0
je 0x155a7
cmpq $0x80000, %rax          # imm = 0x80000
setne %cl
cmpl $0x1, %r15d
setne %dl
orb %cl, %dl
je 0x155a7
cmpl $0x3, %r15d
je 0x1561a
cmpl $0x2, %r15d
jne 0x1564a
cmpb $0x0, 0x2299cc(%rip)    # 0x23ef3e
je 0x156c8
movq (%r12), %rdx
leaq 0x326c9d(%rip), %rdi    # 0x33c220
leaq 0xf5199(%rip), %rsi     # 0x10a723
jmp 0x1570c
movsd 0x8(%r13), %xmm0
movl %r15d, %edi
movl $0x1, %esi
movapd -0x40(%rbp), %xmm1
callq 0x13d5d
movq (%r12), %rdx
movq 0x8(%r12), %r8
leaq 0x326c69(%rip), %rdi    # 0x33c220
leaq 0xf5158(%rip), %rsi     # 0x10a716
movl %r14d, %ecx
movb $0x1, %al
callq 0x9060
movb $0x1, %al
movb %al, 0x20328b(%rip)     # 0x21885b
movb %al, 0x203284(%rip)     # 0x21885a
movl 0x2031cc(%rip), %edi    # 0x2187a8
addl $0x4, %edi
movzbl 0x20(%r12), %edx
leaq 0x326c34(%rip), %r14    # 0x33c220
movl %ebx, %esi
movq %r14, %rcx
callq 0xe7d0
xorl %eax, %eax
movb %al, 0x20325d(%rip)     # 0x21885b
movb %al, 0x203256(%rip)     # 0x21885a
movq %r14, %rdi
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x9120
cmpq $0x8, %rax
jne 0x15698
cmpl $0x50, 0x2059b9(%rip)   # 0x21afe0
jne 0x15698
movq 0x329ff0(%rip), %r8     # 0x33f620
leaq 0x326be9(%rip), %rdi    # 0x33c220
leaq 0xf50d8(%rip), %rsi     # 0x10a716
leaq 0xf4ef3(%rip), %rdx     # 0x10a538
jmp 0x155be
cmpl $0x10, %r15d
jne 0x1567e
callq 0x5f743
movapd -0x40(%rbp), %xmm0
testl %eax, %eax
je 0x1567e
movq (%r12), %r15
callq 0x133aa
leaq 0x326bb2(%rip), %rdi    # 0x33c220
leaq 0xf50c7(%rip), %rsi     # 0x10a73c
leaq 0x32ace4(%rip), %r8     # 0x340360
jmp 0x156b6
movb 0x2298ba(%rip), %al     # 0x23ef3e
testb %al, %al
sete %cl
cmpl $0x8, %r15d
setne %dl
orb %cl, %dl
jne 0x1571b
movq (%r12), %r15
callq 0x132fb
leaq 0x326b78(%rip), %rdi    # 0x33c220
leaq 0xf508d(%rip), %rsi     # 0x10a73c
leaq 0x32abaa(%rip), %r8     # 0x340260
movq %r15, %rdx
movl %r14d, %ecx
xorl %eax, %eax
callq 0x9060
jmp 0x155c8
cmpb $0x0, 0x203235(%rip)    # 0x218904
jne 0x156fa
cmpq $0x1, %rax
sete %dl
movl 0x2058f6(%rip), %ecx    # 0x21afd4
cmpl $0x41, %ecx
sete %sil
andb %dl, %sil
movl 0x20320a(%rip), %edx    # 0x2188f8
cmpl $0x47, %edx
sete %dil
testb %dil, %sil
je 0x15758
movq (%r12), %rdx
leaq 0x326b1b(%rip), %rdi    # 0x33c220
leaq 0xf5023(%rip), %rsi     # 0x10a72f
movl %r14d, %ecx
movb $0x1, %al
callq 0x9060
jmp 0x155c8
cmpl $0x1, %r15d
jne 0x15731
movq (%r12), %rsi
xorl %edi, %edi
callq 0x1356c
jmp 0x155c8
testl %r15d, %r15d
je 0x15796
cmpl $0x13, %r15d
jne 0x157a4
movq (%r12), %rdx
movq 0x8(%r12), %r8
leaq 0x326ad4(%rip), %rdi    # 0x33c220
leaq 0xf50ac(%rip), %rsi     # 0x10a7ff
jmp 0x155be
testb %sil, %sil
je 0x15767
cmpl $0x33, %edx
je 0x156fa
cmpl $0x47, %edx
je 0x156fa
cmpl $0x41, %ecx
sete %dl
cmpq $0x1, %rax
sete %sil
cmpl $0x50, %ecx
sete %cl
testl $0x800009e4, %eax       # imm = 0x800009E4
jne 0x156fa
orb %cl, %dl
andb %dl, %sil
je 0x155a7
jmp 0x156fa
testb %al, %al
je 0x157dd
mulsd 0x20310e(%rip), %xmm0   # 0x2188b0
jmp 0x157c1
movq 0x203125(%rip), %rcx    # 0x2188d0
cmpq $0x2000000, %rcx        # imm = 0x2000000
je 0x1582d
cmpq $0x20000, %rcx          # imm = 0x20000
jne 0x15849
movq (%r12), %rdx
movq 0x8(%r12), %r8
leaq 0x326a4f(%rip), %rdi    # 0x33c220
leaq 0xf4f6c(%rip), %rsi     # 0x10a744
jmp 0x155be
movq 0x2030ec(%rip), %rax    # 0x2188d0
cmpq $0x7ff, %rax            # imm = 0x7FF
jle 0x15888
cmpq $0x800, %rax            # imm = 0x800
je 0x159fa
movl $0x80000000, %ecx       # imm = 0x80000000
cmpq %rcx, %rax
je 0x1592a
cmpq $0x20000, %rax          # imm = 0x20000
jne 0x15a5f
movq (%r12), %rdx
leaq 0x3269ff(%rip), %rdi    # 0x33c220
leaq 0xf4f29(%rip), %rsi     # 0x10a751
jmp 0x1570c
movq (%r12), %rdx
movq 0x8(%r12), %r8
leaq 0x3269e3(%rip), %rdi    # 0x33c220
leaq 0xf4fc8(%rip), %rsi     # 0x10a80c
jmp 0x155be
cmpl $0x10, %r15d
jl 0x158f3
testb %al, %al
sete %cl
cmpl $0x10, %r15d
setne %dl
orb %cl, %dl
jne 0x15978
movsd 0x40(%r13), %xmm0
mulsd 0x38(%r13), %xmm0
xorps %xmm1, %xmm1
cvtsi2sdq 0x205b19(%rip), %xmm1 # 0x21b398
divsd %xmm1, %xmm0
jmp 0x15aea
cmpq $0x4, %rax
je 0x1592a
cmpq $0x200, %rax            # imm = 0x200
jne 0x15a5f
divsd 0xf37aa(%rip), %xmm0    # 0x109050
movsd 0xf3822(%rip), %xmm1    # 0x1090d0
ucomisd %xmm0, %xmm1
jae 0x15b1c
movsd 0xf3820(%rip), %xmm2    # 0x1090e0
movapd %xmm0, %xmm1
ucomisd %xmm0, %xmm2
jae 0x15bfa
ucomisd 0xf3802(%rip), %xmm1    # 0x1090d8
movq (%r12), %rdx
leaq 0x32693f(%rip), %rdi    # 0x33c220
jae 0x15c5d
leaq 0xf4ea4(%rip), %rsi     # 0x10a792
jmp 0x15c64
movl %r15d, %edx
andl $-0x2, %edx
cmpl $0x4, %edx
jne 0x159ca
cmpq $0x100000, %rcx         # imm = 0x100000
je 0x15bab
cmpq $0x800000, %rcx         # imm = 0x800000
jne 0x15bc4
movq (%r12), %rdx
movq 0x8(%r12), %r8
jmp 0x159e7
movsd 0xf379e(%rip), %xmm1    # 0x1090d0
ucomisd %xmm0, %xmm1
jae 0x15a48
movsd 0xf379c(%rip), %xmm1    # 0x1090e0
ucomisd %xmm0, %xmm1
jae 0x15b97
movapd -0x40(%rbp), %xmm0
ucomisd 0xf377d(%rip), %xmm0    # 0x1090d8
movq (%r12), %rdx
jae 0x15c12
leaq 0x3268b4(%rip), %rdi    # 0x33c220
leaq 0xf4dbc(%rip), %rsi     # 0x10a72f
jmp 0x15c20
testb %al, %al
sete %cl
cmpl $0x11, %r15d
setne %dl
orb %cl, %dl
jne 0x15a8f
movsd 0x18(%r13), %xmm2
movsd 0x40(%r13), %xmm1
mulsd 0x20(%r13), %xmm2
mulsd 0x38(%r13), %xmm1
divsd %xmm2, %xmm1
xorpd %xmm0, %xmm0
cmpneqsd %xmm2, %xmm0
andpd %xmm0, %xmm1
andnpd %xmm2, %xmm0
orpd %xmm1, %xmm0
mulsd 0xf369b(%rip), %xmm0    # 0x109060
jmp 0x15aea
movq (%r12), %rdx
movq 0x8(%r12), %r8
cmpl $0x9, %r15d
je 0x159e7
cmpl $0x6, %r15d
je 0x159e7
testb %al, %al
je 0x15c2d
leaq 0x326832(%rip), %rdi    # 0x33c220
leaq 0xf4d4f(%rip), %rsi     # 0x10a744
jmp 0x15c3b
movsd 0xf36ce(%rip), %xmm1    # 0x1090d0
ucomisd %xmm0, %xmm1
jae 0x15b05
movsd 0xf36cc(%rip), %xmm1    # 0x1090e0
ucomisd %xmm0, %xmm1
jae 0x15be6
movapd -0x40(%rbp), %xmm0
ucomisd 0xf36ad(%rip), %xmm0    # 0x1090d8
movq (%r12), %rdx
leaq 0x3267ea(%rip), %rdi    # 0x33c220
jae 0x15c54
leaq 0xf4d7a(%rip), %rsi     # 0x10a7bd
jmp 0x15c20
movq (%r12), %rdx
leaq 0x3267cd(%rip), %rdi    # 0x33c220
leaq 0xf4d04(%rip), %rsi     # 0x10a75e
jmp 0x1570c
cmpq $0x80, %rax
jne 0x15b33
cmpl $0x0, 0x328382(%rip)    # 0x33ddf4
je 0x15b33
movq (%r12), %rdx
leaq 0x32679d(%rip), %rdi    # 0x33c220
leaq 0xf4d42(%rip), %rsi     # 0x10a7cc
jmp 0x15c20
testb %al, %al
sete %al
cmpl $0x12, %r15d
setne %cl
orb %al, %cl
movapd -0x40(%rbp), %xmm0
jne 0x15aea
movb $0x1, 0x2f74c2(%rip)    # 0x30cf6d
movzbl 0x2f74b6(%rip), %edi    # 0x30cf68
movsd 0x68(%r13), %xmm0
cvtsi2sdq 0x2058d7(%rip), %xmm3 # 0x21b398
divsd %xmm3, %xmm0
movsd 0x58(%r13), %xmm2
movsd 0x60(%r13), %xmm1
divsd %xmm3, %xmm1
divsd %xmm3, %xmm2
movl $0x1, %esi
callq 0x7ace4
movb $0x0, 0x2f7483(%rip)    # 0x30cf6d
cmpb $0x0, 0x22944d(%rip)    # 0x23ef3e
movq (%r12), %rdx
movq 0x8(%r12), %r8
jne 0x157ca
jmp 0x155b0
movq (%r12), %rdx
leaq 0x326710(%rip), %rdi    # 0x33c220
leaq 0xf4c88(%rip), %rsi     # 0x10a79f
jmp 0x1570c
movq (%r12), %rdx
leaq 0x3266f9(%rip), %rdi    # 0x33c220
leaq 0xf4c4a(%rip), %rsi     # 0x10a778
jmp 0x1570c
cmpq $0x100, %rax            # imm = 0x100
je 0x15b71
cmpl $0x0, 0x20548e(%rip)    # 0x21afd0
jne 0x15b71
cmpq $0x1, %rax
sete %dl
movl 0x205483(%rip), %ecx    # 0x21afd4
cmpl $0x41, %ecx
sete %sil
andb %dl, %sil
movl 0x202d97(%rip), %edx    # 0x2188f8
cmpl $0x47, %edx
sete %dil
testb %dil, %sil
je 0x15c70
movsd 0xf3557(%rip), %xmm0    # 0x1090d0
ucomisd -0x40(%rbp), %xmm0
jae 0x15c0e
movsd 0xf3554(%rip), %xmm0    # 0x1090e0
ucomisd -0x40(%rbp), %xmm0
jb 0x1594e
movq (%r12), %rdx
leaq 0x32667e(%rip), %rdi    # 0x33c220
leaq 0xf4bc2(%rip), %rsi     # 0x10a76b
jmp 0x15c20
movq (%r12), %rdx
movq 0x8(%r12), %r8
leaq 0x326665(%rip), %rdi    # 0x33c220
leaq 0xf4c57(%rip), %rsi     # 0x10a819
jmp 0x15c3b
cmpb $0x0, 0x205817(%rip)    # 0x21b3e2
movq (%r12), %rdx
movq 0x8(%r12), %r8
leaq 0x326645(%rip), %rdi    # 0x33c220
je 0x15c48
leaq 0xf4c42(%rip), %rsi     # 0x10a826
jmp 0x15c3b
movq (%r12), %rdx
leaq 0x32662f(%rip), %rdi    # 0x33c220
leaq 0xf4bb6(%rip), %rsi     # 0x10a7ae
jmp 0x15c20
movq (%r12), %rdx
leaq 0x32661b(%rip), %rdi    # 0x33c220
leaq 0xf4b79(%rip), %rsi     # 0x10a785
jmp 0x15c64
movq (%r12), %rdx
leaq 0x326607(%rip), %rdi    # 0x33c220
leaq 0xf4b3e(%rip), %rsi     # 0x10a75e
movl %r14d, %ecx
movapd -0x40(%rbp), %xmm0
jmp 0x1570f
leaq 0x3265ec(%rip), %rdi    # 0x33c220
leaq 0xf4adb(%rip), %rsi     # 0x10a716
movl %r14d, %ecx
movapd -0x40(%rbp), %xmm0
jmp 0x155c1
leaq 0xf4be4(%rip), %rsi     # 0x10a833
jmp 0x156b9
leaq 0xf4b44(%rip), %rsi     # 0x10a79f
jmp 0x15c20
leaq 0xf4b14(%rip), %rsi     # 0x10a778
movl %r14d, %ecx
movapd %xmm1, %xmm0
jmp 0x1570f
testb %sil, %sil
je 0x15c87
cmpl $0x47, %edx
je 0x15b71
cmpl $0x33, %edx
je 0x15b71
cmpb $0x0, 0x202c76(%rip)    # 0x218904
je 0x15cf5
movapd -0x40(%rbp), %xmm1
divsd 0xf339b(%rip), %xmm1    # 0x109038
movsd 0xf342b(%rip), %xmm2    # 0x1090d0
movapd %xmm1, %xmm0
ucomisd %xmm1, %xmm2
jae 0x15cde
movsd 0xf3429(%rip), %xmm1    # 0x1090e0
ucomisd %xmm0, %xmm1
jae 0x15d33
ucomisd 0xf3413(%rip), %xmm0    # 0x1090d8
movq (%r12), %rdx
jae 0x15ce2
leaq 0x32654e(%rip), %rdi    # 0x33c220
leaq 0xf4b19(%rip), %rsi     # 0x10a7f2
jmp 0x1570c
movq (%r12), %rdx
leaq 0x326537(%rip), %rdi    # 0x33c220
leaq 0xf4ae8(%rip), %rsi     # 0x10a7d8
jmp 0x1570c
testb %sil, %sil
je 0x15d04
cmpl $0x33, %edx
je 0x15c90
cmpl $0x47, %edx
je 0x15c90
cmpl $0x41, %ecx
sete %dl
cmpq $0x1, %rax
sete %sil
cmpl $0x50, %ecx
sete %cl
testl $0x800009e4, %eax       # imm = 0x800009E4
jne 0x15c90
orb %cl, %dl
andb %dl, %sil
je 0x15b71
jmp 0x15c90
movq (%r12), %rdx
leaq 0x3264e2(%rip), %rdi    # 0x33c220
leaq 0xf4aa0(%rip), %rsi     # 0x10a7e5
jmp 0x1570c