// File: jkingan[P]ladyheather/heathmsc.cpp
// Function: fetch_adev_info(unsigned char, ADEV_INFO*)
int fetch_adev_info(u08 dev_id, struct ADEV_INFO *bins)
{
double adev;
double tau;
long on;
struct BIN *table;

    if     (dev_id == PPS_ADEV) table = &pps_adev_bins[0];
    else if(dev_id == OSC_ADEV) table = &osc_adev_bins[0];
    else if(dev_id == CHC_ADEV) table = &chc_adev_bins[0];
    else if(dev_id == CHD_ADEV) table = &chd_adev_bins[0];

    else if(dev_id == PPS_HDEV) table = &pps_hdev_bins[0];
    else if(dev_id == OSC_HDEV) table = &osc_hdev_bins[0];
    else if(dev_id == CHC_HDEV) table = &chc_hdev_bins[0];
    else if(dev_id == CHD_HDEV) table = &chd_hdev_bins[0];

    else if(dev_id == PPS_MDEV) table = &pps_mdev_bins[0];
    else if(dev_id == OSC_MDEV) table = &osc_mdev_bins[0];
    else if(dev_id == CHC_MDEV) table = &chc_mdev_bins[0];
    else if(dev_id == CHD_MDEV) table = &chd_mdev_bins[0];

    else if(dev_id == PPS_TDEV) table = &pps_tdev_bins[0];
    else if(dev_id == OSC_TDEV) table = &osc_tdev_bins[0];
    else if(dev_id == CHC_TDEV) table = &chc_tdev_bins[0];
    else if(dev_id == CHD_TDEV) table = &chd_tdev_bins[0];

    else if(dev_id == A_MTIE) return fetch_mtie_info(CHA_MTIE, bins);
    else if(dev_id == B_MTIE) return fetch_mtie_info(CHB_MTIE, bins);
    else if(dev_id == C_MTIE) return fetch_mtie_info(CHC_MTIE, bins);
    else if(dev_id == D_MTIE) return fetch_mtie_info(CHD_MTIE, bins);
    else {
       sprintf(out, "Bad dev_id in calc_adevs: %d\n", dev_id);
       error_exit(92, out);
    }

    bins->adev_min = 1.0e29F;
    bins->adev_max = (-1.0e29F);
    bins->bin_count = 0;
    bins->adev_type = dev_id;

    // convert data from the incremental adev bins into the
    // old style adev tables (so we don't have to mess with changing
    // all that old well-debugged display code).
    while(bins->bin_count < MAX_ADEV_BINS) {
        on = table[bins->bin_count].n;
        if(on < min_points_per_bin) {
           if(1) {  // zap unused entries   // aaaahhhh
              bins->adev_on[bins->bin_count] = 0;
              bins->adev_taus[bins->bin_count] = (float) 0.0;
              bins->adev_bins[bins->bin_count] = (float) 0.0;
           }
////bins->bin_count += 1;
////continue;
           break;
        }

        tau = (double) table[bins->bin_count].tau;

        adev = table[bins->bin_count].value;

        bins->adev_on[bins->bin_count] = on;
        bins->adev_taus[bins->bin_count] = (float) tau;
        bins->adev_bins[bins->bin_count] = (float) adev;

        bins->bin_count += 1;
        if(adev > bins->adev_max) bins->adev_max = (float) adev;
        if(adev < bins->adev_min) bins->adev_min = (float) adev;
    }

    if(1 && global_adev_max) {  // give all adev plots the same top decade
       bins->adev_max = (float) global_adev_max;
    }

    bins->adev_max = adev_decade(bins->adev_max);

    // !!!!!! force tidy ADEV graph scale factors
    // aaaahhhh - we need to do this better... what if one VERT_MAJOR per decade
    if((PLOT_HEIGHT/VERT_MAJOR) <= 6) {  // three decades (/VS - makes for a cramped plot) 
       bins->adev_min = bins->adev_max * 1.0e-6F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 8) {  // four decades
       bins->adev_min = bins->adev_max * 1.0e-4F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 10) {  // five decades (/VM)
       bins->adev_min = bins->adev_max * 1.0e-5F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 12) {  // six decades
       bins->adev_min = bins->adev_max * 1.0e-6F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 14) {  // seven decades
       bins->adev_min = bins->adev_max * 1.0e-7F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 16) {  // eight decades (/VL)
       bins->adev_min = bins->adev_max * 1.0e-8F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 18) {  // nine decades
       bins->adev_min = bins->adev_max * 1.0e-9F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 20) {  // ten decades
       bins->adev_min = bins->adev_max * 1.0e-10F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 22) {  // eleven decades
       bins->adev_min = bins->adev_max * 1.0e-11F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 24) {  // twelve decades
       bins->adev_min = bins->adev_max * 1.0e-12F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 26) {  // 13 decades
       bins->adev_min = bins->adev_max * 1.0e-13F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 28) {  // 14 decades
       bins->adev_min = bins->adev_max * 1.0e-14F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 30) {  // 15 decades
       bins->adev_min = bins->adev_max * 1.0e-15F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 32) {  // 16 decades
       bins->adev_min = bins->adev_max * 1.0e-16F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 34) {  // 17 decades
       bins->adev_min = bins->adev_max * 1.0e-17F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 36) {  // 18 decades
       bins->adev_min = bins->adev_max * 1.0e-18F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 38) {  // 19 decades
       bins->adev_min = bins->adev_max * 1.0e-19F;
    }
    else if((PLOT_HEIGHT/VERT_MAJOR) <= 40) {  // 20 decades
       bins->adev_min = bins->adev_max * 1.0e-20F;
    }
    else { // ten decades?
       bins->adev_min = bins->adev_max * 1.0e-10F;
    }

    if((PLOT_HEIGHT/VERT_MAJOR) & 0x01) {  // odd number of decade bins are off-centered
       bins->adev_max /= 2.0F;
       bins->adev_min *= 5.0F;
    }

    return bins->bin_count;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movb %dil, %al
movb %al, -0x5(%rbp)
movq %rsi, -0x10(%rbp)
movzbl -0x5(%rbp), %eax
cmpl $0x5, %eax
jne 0x16292b
leaq 0x1231ae(%rip), %rax    # 0x285ad0
movq %rax, -0x30(%rbp)
jmp 0x162b6b
movzbl -0x5(%rbp), %eax
cmpl $0x0, %eax
jne 0x162944
leaq 0x12cc75(%rip), %rax    # 0x28f5b0
movq %rax, -0x30(%rbp)
jmp 0x162b69
movzbl -0x5(%rbp), %eax
cmpl $0xa, %eax
jne 0x16295d
leaq 0x12e27c(%rip), %rax    # 0x290bd0
movq %rax, -0x30(%rbp)
jmp 0x162b67
movzbl -0x5(%rbp), %eax
cmpl $0xf, %eax
jne 0x162976
leaq 0x133ae3(%rip), %rax    # 0x296450
movq %rax, -0x30(%rbp)
jmp 0x162b65
movzbl -0x5(%rbp), %eax
cmpl $0x6, %eax
jne 0x16298f
leaq 0x12476a(%rip), %rax    # 0x2870f0
movq %rax, -0x30(%rbp)
jmp 0x162b63
movzbl -0x5(%rbp), %eax
cmpl $0x1, %eax
jne 0x1629a8
leaq 0x1289b1(%rip), %rax    # 0x28b350
movq %rax, -0x30(%rbp)
jmp 0x162b61
movzbl -0x5(%rbp), %eax
cmpl $0xb, %eax
jne 0x1629c1
leaq 0x12f838(%rip), %rax    # 0x2921f0
movq %rax, -0x30(%rbp)
jmp 0x162b5f
movzbl -0x5(%rbp), %eax
cmpl $0x10, %eax
jne 0x1629da
leaq 0x13509f(%rip), %rax    # 0x297a70
movq %rax, -0x30(%rbp)
jmp 0x162b5d
movzbl -0x5(%rbp), %eax
cmpl $0x7, %eax
jne 0x1629f3
leaq 0x125d26(%rip), %rax    # 0x288710
movq %rax, -0x30(%rbp)
jmp 0x162b5b
movzbl -0x5(%rbp), %eax
cmpl $0x2, %eax
jne 0x162a0c
leaq 0x129f6d(%rip), %rax    # 0x28c970
movq %rax, -0x30(%rbp)
jmp 0x162b59
movzbl -0x5(%rbp), %eax
cmpl $0xc, %eax
jne 0x162a25
leaq 0x130df4(%rip), %rax    # 0x293810
movq %rax, -0x30(%rbp)
jmp 0x162b57
movzbl -0x5(%rbp), %eax
cmpl $0x11, %eax
jne 0x162a3e
leaq 0x13665b(%rip), %rax    # 0x299090
movq %rax, -0x30(%rbp)
jmp 0x162b55
movzbl -0x5(%rbp), %eax
cmpl $0x8, %eax
jne 0x162a57
leaq 0x1272e2(%rip), %rax    # 0x289d30
movq %rax, -0x30(%rbp)
jmp 0x162b53
movzbl -0x5(%rbp), %eax
cmpl $0x3, %eax
jne 0x162a70
leaq 0x12b529(%rip), %rax    # 0x28df90
movq %rax, -0x30(%rbp)
jmp 0x162b51
movzbl -0x5(%rbp), %eax
cmpl $0xd, %eax
jne 0x162a89
leaq 0x1323b0(%rip), %rax    # 0x294e30
movq %rax, -0x30(%rbp)
jmp 0x162b4f
movzbl -0x5(%rbp), %eax
cmpl $0x12, %eax
jne 0x162aa2
leaq 0x137c17(%rip), %rax    # 0x29a6b0
movq %rax, -0x30(%rbp)
jmp 0x162b4d
movzbl -0x5(%rbp), %eax
cmpl $0x9, %eax
jne 0x162abe
movq -0x10(%rbp), %rsi
xorl %edi, %edi
callq 0x15e3b0
movl %eax, -0x4(%rbp)
jmp 0x16328b
movzbl -0x5(%rbp), %eax
cmpl $0x4, %eax
jne 0x162add
movq -0x10(%rbp), %rsi
movl $0x1, %edi
callq 0x15e3b0
movl %eax, -0x4(%rbp)
jmp 0x16328b
movzbl -0x5(%rbp), %eax
cmpl $0xe, %eax
jne 0x162afc
movq -0x10(%rbp), %rsi
movl $0x2, %edi
callq 0x15e3b0
movl %eax, -0x4(%rbp)
jmp 0x16328b
movzbl -0x5(%rbp), %eax
cmpl $0x13, %eax
jne 0x162b1b
movq -0x10(%rbp), %rsi
movl $0x3, %edi
callq 0x15e3b0
movl %eax, -0x4(%rbp)
jmp 0x16328b
movzbl -0x5(%rbp), %edx
leaq 0x2388da(%rip), %rdi    # 0x39b400
leaq 0x35b00(%rip), %rsi     # 0x19862d
movb $0x0, %al
callq 0x9060
movl $0x5c, %edi
leaq 0x2388c0(%rip), %rsi    # 0x39b400
callq 0xc050
jmp 0x162b47
jmp 0x162b49
jmp 0x162b4b
jmp 0x162b4d
jmp 0x162b4f
jmp 0x162b51
jmp 0x162b53
jmp 0x162b55
jmp 0x162b57
jmp 0x162b59
jmp 0x162b5b
jmp 0x162b5d
jmp 0x162b5f
jmp 0x162b61
jmp 0x162b63
jmp 0x162b65
jmp 0x162b67
jmp 0x162b69
jmp 0x162b6b
movq -0x10(%rbp), %rax
movss 0x2c745(%rip), %xmm0    # 0x18f2bc
movss %xmm0, 0x64c(%rax)
movq -0x10(%rbp), %rax
movss 0x2c72d(%rip), %xmm0    # 0x18f2b8
movss %xmm0, 0x650(%rax)
movq -0x10(%rbp), %rax
movl $0x0, 0x648(%rax)
movb -0x5(%rbp), %cl
movq -0x10(%rbp), %rax
movb %cl, (%rax)
movq -0x10(%rbp), %rax
cmpl $0x64, 0x648(%rax)
jge 0x162d51
movq -0x30(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
imulq $0x38, %rcx, %rcx
addq %rcx, %rax
movslq 0x4(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
leaq 0x1392b8(%rip), %rcx    # 0x29be9c
movslq (%rcx), %rcx
cmpq %rcx, %rax
jge 0x162c3f
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
movq $0x0, 0x328(%rax,%rcx,8)
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
xorps %xmm0, %xmm0
movss %xmm0, 0x4(%rax,%rcx,4)
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
xorps %xmm0, %xmm0
movss %xmm0, 0x194(%rax,%rcx,4)
jmp 0x162d51
movq -0x30(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
imulq $0x38, %rcx, %rcx
addq %rcx, %rax
movsd 0x18(%rax), %xmm0
movsd %xmm0, -0x20(%rbp)
movq -0x30(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
imulq $0x38, %rcx, %rcx
addq %rcx, %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, -0x18(%rbp)
movq -0x28(%rbp), %rdx
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
movq %rdx, 0x328(%rax,%rcx,8)
movsd -0x20(%rbp), %xmm0
cvtsd2ss %xmm0, %xmm0
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
movss %xmm0, 0x4(%rax,%rcx,4)
movsd -0x18(%rbp), %xmm0
cvtsd2ss %xmm0, %xmm0
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rcx
movslq 0x648(%rcx), %rcx
movss %xmm0, 0x194(%rax,%rcx,4)
movq -0x10(%rbp), %rax
movl 0x648(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x648(%rax)
movsd -0x18(%rbp), %xmm0
movq -0x10(%rbp), %rax
movss 0x650(%rax), %xmm1
cvtss2sd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x162d1c
movsd -0x18(%rbp), %xmm0
cvtsd2ss %xmm0, %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x650(%rax)
movsd -0x18(%rbp), %xmm1
movq -0x10(%rbp), %rax
movss 0x64c(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
ucomisd %xmm1, %xmm0
jbe 0x162d4c
movsd -0x18(%rbp), %xmm0
cvtsd2ss %xmm0, %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x162baa
leaq 0x138f70(%rip), %rax    # 0x29bcc8
movsd (%rax), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jne 0x162d69
jp 0x162d69
jmp 0x162d84
leaq 0x138f58(%rip), %rax    # 0x29bcc8
movsd (%rax), %xmm0
cvtsd2ss %xmm0, %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x650(%rax)
movq -0x10(%rbp), %rax
movss 0x650(%rax), %xmm0
callq 0x15f150
movq -0x10(%rbp), %rax
movss %xmm0, 0x650(%rax)
leaq 0x114cc0(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114c9b(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x6, %eax
jg 0x162dde
movq -0x10(%rbp), %rax
movss 0x2c42b(%rip), %xmm0    # 0x18f1f0
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163227
leaq 0x114c83(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114c5e(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x8, %eax
jg 0x162e1b
movq -0x10(%rbp), %rax
movss 0x2c3e6(%rip), %xmm0    # 0x18f1e8
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163225
leaq 0x114c46(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114c21(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0xa, %eax
jg 0x162e58
movq -0x10(%rbp), %rax
movss 0x2c3ad(%rip), %xmm0    # 0x18f1ec
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163223
leaq 0x114c09(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114be4(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0xc, %eax
jg 0x162e95
movq -0x10(%rbp), %rax
movss 0x2c374(%rip), %xmm0    # 0x18f1f0
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163221
leaq 0x114bcc(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114ba7(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0xe, %eax
jg 0x162ed2
movq -0x10(%rbp), %rax
movss 0x2c33b(%rip), %xmm0    # 0x18f1f4
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x16321f
leaq 0x114b8f(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114b6a(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x10, %eax
jg 0x162f0f
movq -0x10(%rbp), %rax
movss 0x2c302(%rip), %xmm0    # 0x18f1f8
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x16321d
leaq 0x114b52(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114b2d(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x12, %eax
jg 0x162f4c
movq -0x10(%rbp), %rax
movss 0x2c2c9(%rip), %xmm0    # 0x18f1fc
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x16321b
leaq 0x114b15(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114af0(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x14, %eax
jg 0x162f89
movq -0x10(%rbp), %rax
movss 0x203cc(%rip), %xmm0    # 0x18333c
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163219
leaq 0x114ad8(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114ab3(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x16, %eax
jg 0x162fc6
movq -0x10(%rbp), %rax
movss 0x2c253(%rip), %xmm0    # 0x18f200
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163217
leaq 0x114a9b(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114a76(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x18, %eax
jg 0x163003
movq -0x10(%rbp), %rax
movss 0x2034e(%rip), %xmm0    # 0x183338
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163215
leaq 0x114a5e(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114a39(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x1a, %eax
jg 0x163040
movq -0x10(%rbp), %rax
movss 0x2c1dd(%rip), %xmm0    # 0x18f204
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163213
leaq 0x114a21(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x1149fc(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x1c, %eax
jg 0x16307d
movq -0x10(%rbp), %rax
movss 0x2c1a4(%rip), %xmm0    # 0x18f208
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163211
leaq 0x1149e4(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x1149bf(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x1e, %eax
jg 0x1630ba
movq -0x10(%rbp), %rax
movss 0x2c16b(%rip), %xmm0    # 0x18f20c
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x16320f
leaq 0x1149a7(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114982(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x20, %eax
jg 0x1630f7
movq -0x10(%rbp), %rax
movss 0x2c132(%rip), %xmm0    # 0x18f210
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x16320d
leaq 0x11496a(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114945(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x22, %eax
jg 0x163134
movq -0x10(%rbp), %rax
movss 0x2c0f9(%rip), %xmm0    # 0x18f214
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x16320b
leaq 0x11492d(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114908(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x24, %eax
jg 0x163171
movq -0x10(%rbp), %rax
movss 0x2c0c0(%rip), %xmm0    # 0x18f218
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163209
leaq 0x1148f0(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x1148cb(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x26, %eax
jg 0x1631ab
movq -0x10(%rbp), %rax
movss 0x2c04f(%rip), %xmm0    # 0x18f1e4
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163207
leaq 0x1148b6(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114891(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
cmpl $0x28, %eax
jg 0x1631e5
movq -0x10(%rbp), %rax
movss 0x2c04d(%rip), %xmm0    # 0x18f21c
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163205
movq -0x10(%rbp), %rax
movss 0x2014b(%rip), %xmm0    # 0x18333c
mulss 0x650(%rax), %xmm0
movq -0x10(%rbp), %rax
movss %xmm0, 0x64c(%rax)
jmp 0x163207
jmp 0x163209
jmp 0x16320b
jmp 0x16320d
jmp 0x16320f
jmp 0x163211
jmp 0x163213
jmp 0x163215
jmp 0x163217
jmp 0x163219
jmp 0x16321b
jmp 0x16321d
jmp 0x16321f
jmp 0x163221
jmp 0x163223
jmp 0x163225
jmp 0x163227
leaq 0x11483a(%rip), %rax    # 0x277a68
movl (%rax), %eax
leaq 0x114815(%rip), %rcx    # 0x277a4c
cltd
idivl (%rcx)
andl $0x1, %eax
cmpl $0x0, %eax
je 0x16327e
movq -0x10(%rbp), %rax
movss 0x650(%rax), %xmm0
movss 0x20116(%rip), %xmm1    # 0x18336c
divss %xmm1, %xmm0
movss %xmm0, 0x650(%rax)
movq -0x10(%rbp), %rax
movss 0x200f6(%rip), %xmm0    # 0x183364
mulss 0x64c(%rax), %xmm0
movss %xmm0, 0x64c(%rax)
movq -0x10(%rbp), %rax
movl 0x648(%rax), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)