// File: /workspace/github_c_makefile_star2_O0/hiperiondev[P]hpsdrsim/src/hpsdr_sim.c
// Function: process_ep2
void process_ep2(uint8_t *frame) {
    uint16_t data;
    int rc;
    int mod;

    chk_data(frame[0] & 1, ptt, "PTT", ep2_ptt);
    switch (frame[0]) {
    case 0:
    case 1:
        chk_data((frame[1] & 0x03) >> 0, rate, "SampleRate", ep2_samplerate);
        chk_data((frame[1] & 0x0C) >> 3, ref10, "Ref10MHz", ep2_ref10mhz);
        chk_data((frame[1] & 0x10) >> 4, src122, "Source122MHz", ep2_src122mhz);
        chk_data((frame[1] & 0x60) >> 5, PMconfig, "Penelope/Mercury config", ep2_pm_config);
        chk_data((frame[1] & 0x80) >> 7, MicSrc, "MicSource", ep2_micsrc);

        chk_data(frame[2] & 1, TX_class_E, "TX CLASS-E", ep2_txclasse);
        chk_data((frame[2] & 0xfe) >> 1, OpenCollectorOutputs, "OpenCollector", ep2_opencollector);

        chk_data(((frame[4] >> 3) & 7) + 1, receivers, "RECEIVERS", ep2_receivers);
        chk_data(((frame[4] >> 6) & 1), MicTS, "TimeStampMic", ep2_timestampmic);
        chk_data(((frame[4] >> 7) & 1), CommonMercuryFreq, "Common Mercury Freq", ep2_commonmercuryfreq);

        mod = 0;
        rc = frame[3] & 0x03;
        if (rc != AlexAtt) {
            mod = 1;
            AlexAtt = rc;
        }
        rc = (frame[3] & 0x04) >> 2;
        if (rc != preamp) {
            mod = 1;
            preamp = rc;
        }
        rc = (frame[3] & 0x08) >> 3;
        if (rc != LTdither) {
            mod = 1;
            LTdither = rc;
        }
        rc = (frame[3] & 0x10) >> 4;
        if (rc != LTrandom) {
            mod = 1;
            LTrandom = rc;
        }
        if (mod)
            dbg_printf(1, "AlexAtt=%d Preamp=%d Dither=%d Random=%d\n", AlexAtt, preamp, LTdither, LTrandom);

        mod = 0;
        rc = (frame[3] & 0x60) >> 5;
        if (rc != alexRXant) {
            mod = 1;
            alexRXant = rc;
        }
        rc = (frame[3] & 0x80) >> 7;
        if (rc != alexRXout) {
            mod = 1;
            alexRXout = rc;
        }
        rc = (frame[4] >> 0) & 3;
        if (rc != AlexTXrel) {
            mod = 1;
            AlexTXrel = rc;
        }
        rc = (frame[4] >> 2) & 1;
        if (rc != duplex) {
            mod = 1;
            duplex = rc;
        }
        if (mod)
            dbg_printf(1, "RXout=%d RXant=%d TXrel=%d Duplex=%d\n", alexRXout, alexRXant, AlexTXrel, duplex);

        if (OLDDEVICE == DEVICE_C25) {
            // Charly25: has two 18-dB preamps that are switched with "preamp" and "dither"
            //           and two attenuators encoded in Alex-ATT
            //           Both only applies to RX1!
            rxatt_dbl[0] = pow(10.0, -0.05 * (12 * AlexAtt - 18 * LTdither - 18 * preamp));
            rxatt_dbl[1] = 1.0;
        } else {
            // Assume that it has ALEX attenuators in addition to the Step Attenuators
            rxatt_dbl[0] = pow(10.0, -0.05 * (10 * AlexAtt + rx_att[0]));
            rxatt_dbl[1] = 1.0;
        }
        break;

    case 2:
    case 3:
        chk_data(frame[4] | (frame[3] << 8) | (frame[2] << 16) | (frame[1] << 24), tx_freq, "TX FREQ", ep2_txfreq);
        break;

    case 4:
    case 5:
        chk_data(frame[4] | (frame[3] << 8) | (frame[2] << 16) | (frame[1] << 24), rx_freq[0], "RX FREQ1", ep2_rxfreq1);
        break;

    case 6:
    case 7:
        chk_data(frame[4] | (frame[3] << 8) | (frame[2] << 16) | (frame[1] << 24), rx_freq[1], "RX FREQ2", ep2_rxfreq2);
        break;

    case 8:
    case 9:
        chk_data(frame[4] | (frame[3] << 8) | (frame[2] << 16) | (frame[1] << 24), rx_freq[2], "RX FREQ3", ep2_rxfreq3);
        break;

    case 10:
    case 11:
        chk_data(frame[4] | (frame[3] << 8) | (frame[2] << 16) | (frame[1] << 24), rx_freq[3], "RX FREQ4", ep2_rxfreq4);
        break;

    case 12:
    case 13:
        chk_data(frame[4] | (frame[3] << 8) | (frame[2] << 16) | (frame[1] << 24), rx_freq[4], "RX FREQ5", ep2_rxfreq5);
        break;

    case 14:
    case 15:
        chk_data(frame[4] | (frame[3] << 8) | (frame[2] << 16) | (frame[1] << 24), rx_freq[5], "RX FREQ6", ep2_rxfreq6);
        break;

    case 16:
    case 17:
        chk_data(frame[4] | (frame[3] << 8) | (frame[2] << 16) | (frame[1] << 24), rx_freq[6], "RX FREQ7", ep2_rxfreq7);
        break;

    case 18:
    case 19:
        chk_data(frame[1], txdrive, "TX DRIVE", ep2_txdrive);
        chk_data(frame[2] & 0x3F, hermes_config, "HERMES CONFIG", ep2_hermesconfig);
        chk_data((frame[2] >> 6) & 0x01, alex_manual, "ALEX manual HPF/LPF", ep2_alexmanhpflpf);
        chk_data((frame[2] >> 7) & 0x01, vna, "VNA mode", ep2_vnamode);
        chk_data(frame[3] & 0x1F, alex_hpf, "ALEX HPF", ep2_alexhpf);
        chk_data((frame[3] >> 5) & 0x01, alex_bypass, "ALEX Bypass HPFs", ep2_alexbyphpfs);
        chk_data((frame[3] >> 6) & 0x01, lna6m, "ALEX 6m LNA", ep2_alex6mlna);
        chk_data((frame[3] >> 7) & 0x01, alexTRdisable, "ALEX T/R disable", ep2_alextrdis);
        chk_data(frame[4], alex_lpf, "ALEX LPF", ep2_alexlpf);
        // reset TX level. Leve a little head-room for noise
        txdrv_dbl = (double) txdrive * 0.00390625;  // div. by. 256
        break;

    case 20:
    case 21:
        chk_data((frame[1] & 0x01) >> 0, rx_preamp[0], "ADC1 preamp", ep2_adc1preamp);
        chk_data((frame[1] & 0x02) >> 1, rx_preamp[1], "ADC2 preamp", ep2_adc2preamp);
        chk_data((frame[1] & 0x04) >> 2, rx_preamp[2], "ADC3 preamp", ep2_adc3preamp);
        chk_data((frame[1] & 0x08) >> 3, rx_preamp[3], "ADC4 preamp", ep2_adc4preamp);
        chk_data((frame[1] & 0x10) >> 4, tip_ring, "TIP/Ring", ep2_tipring);
        chk_data((frame[1] & 0x20) >> 5, MicBias, "MicBias", ep2_micbias);
        chk_data((frame[1] & 0x40) >> 6, MicPTT, "MicPTT", ep2_micptt);

        chk_data((frame[2] & 0x1F) >> 0, LineGain, "LineGain", ep2_linegain);
        chk_data((frame[2] & 0x20) >> 5, MerTxATT0, "Mercury Att on TX/0", ep2_mercuryattontx0);
        chk_data((frame[2] & 0x40) >> 6, PureSignal, "PureSignal", ep2_puresignal);
        chk_data((frame[2] & 0x80) >> 7, PeneSel, "PenelopeSelect", ep2_penelopeselect);

        chk_data((frame[3] & 0x0F) >> 0, MetisDB9, "MetisDB9", ep2_metisdb9);
        chk_data((frame[3] & 0x10) >> 4, MerTxATT1, "Mercury Att on TX/1", ep2_mercuryattontx1);

        if (frame[4] & 0x40) {
            // Some firmware/emulators use bit6 to indicate a 6-bit format
            // for a combined attenuator/preamplifier with the AD9866 chip.
            // The value is between 0 and 60 and formally correspondes to
            // to an RX gain of -12 to +48 dB. However, we set here that
            // a value of +16 (that is, 28 on the 0-60 scale) corresponds to
            // "zero attenuation"
            chk_data(37 - (frame[4] & 0x3F), rx_att[0], "RX1 HL ATT/GAIN", ep2_rx1hlattgain);
        } else {
            chk_data((frame[4] & 0x1F) >> 0, rx_att[0], "RX1 ATT", ep2_rx1att);
            chk_data((frame[4] & 0x20) >> 5, rx1_attE, "RX1 ATT enable", ep2_rx1attenable);
            //
            // Some hardware emulates "switching off ATT and preamp" by setting ATT
            // to 20 dB, because the preamp cannot be switched.
            // if (!rx1_attE) rx_att[0]=20;
        }
        if (OLDDEVICE != DEVICE_C25) {
            // Set RX amplification factors. No switchable preamps available normally.
            rxatt_dbl[0] = pow(10.0, -0.05 * (10 * AlexAtt + rx_att[0]));
            rxatt_dbl[1] = pow(10.0, -0.05 * (rx_att[1]));
            rxatt_dbl[2] = 1.0;
            rxatt_dbl[3] = 1.0;
        }
        break;

    case 22:
    case 23:
        chk_data(frame[1] & 0x1f, rx_att[1], "RX2 ATT", ep2_rx2att);
        chk_data((frame[2] >> 6) & 1, cw_reversed, "CW REV", ep2_cwrev);
        chk_data(frame[3] & 63, cw_speed, "CW SPEED", ep2_cwspeed);
        chk_data((frame[3] >> 6) & 3, cw_mode, "CW MODE", ep2_cw_mode);
        chk_data(frame[4] & 127, cw_weight, "CW WEIGHT", ep2_cwweight);
        chk_data((frame[4] >> 7) & 1, cw_spacing, "CW SPACING", ep2_cwspacing);

        // Set RX amplification factors.
        rxatt_dbl[1] = pow(10.0, -0.05 * (rx_att[1]));
        break;

    case 24:
    case 25:
        data = frame[1];
        data |= frame[2] << 8;
        chk_data((frame[2] << 8) | frame[1], c25_ext_board_i2c_data, "C25 EXT BOARD DATA", ep2_c25extboarddata);
        break;

    case 28:
    case 29:
        chk_data((frame[1] & 0x03) >> 0, rx_adc[0], "RX1 ADC", ep2_rx1adc);
        chk_data((frame[1] & 0x0C) >> 2, rx_adc[1], "RX2 ADC", ep2_rx2adc);
        chk_data((frame[1] & 0x30) >> 4, rx_adc[2], "RX3 ADC", ep2_rx3adc);
        chk_data((frame[1] & 0xC0) >> 6, rx_adc[3], "RX4 ADC", ep2_rx4adc);
        chk_data((frame[2] & 0x03) >> 0, rx_adc[4], "RX5 ADC", ep2_rx5adc);
        chk_data((frame[2] & 0x0C) >> 2, rx_adc[5], "RX6 ADC", ep2_rx6adc);
        chk_data((frame[2] & 0x30) >> 4, rx_adc[6], "RX7 ADC", ep2_rx7adc);
        chk_data((frame[3] & 0x1f), txatt, "TX ATT", ep2_txatt);
        txatt_dbl = pow(10.0, -0.05 * (double) txatt);
        if (OLDDEVICE == DEVICE_C25) {
            // RedPitaya: Hard-wired ADC settings.
            rx_adc[0] = 0;
            rx_adc[1] = 1;
            rx_adc[2] = 1;
        }
        break;

    case 30:
    case 31:
        chk_data(frame[1] & 1, cw_internal, "CW INT", ep2_cwint);
        chk_data(frame[2], sidetone_volume, "SIDE TONE VOLUME", ep2_sidetonevolume);
        chk_data(frame[3], cw_delay, "CW DELAY", ep2_cwdelay);
        cw_delay = frame[3];
        break;

    case 32:
    case 33:
        chk_data((frame[1] << 2) | (frame[2] & 3), cw_hang, "CW HANG", ep2_cwhang);
        chk_data((frame[3] << 4) | (frame[4] & 255), freq, "SIDE TONE FREQ", ep2_sidetonefreq);
        break;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
andl $0x1, %eax
cmpl 0x18ce8dc(%rip), %eax   # 0x18d7aa8
je 0x91ef
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl (%rax), %edx
andl $0x1, %edx
leaq 0x18ce8c5(%rip), %rsi   # 0x18d7aa8
leaq 0x4906(%rip), %rcx      # 0xdaf0
callq 0x2270
movq -0x8(%rbp), %rax
movzbl (%rax), %eax
movq %rax, -0x20(%rbp)
subq $0x21, %rax
ja 0xa715
movq -0x20(%rbp), %rax
leaq 0x3e01(%rip), %rcx      # 0xd010
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x3, %eax
sarl $0x0, %eax
cmpl 0x6f40(%rip), %eax      # 0x1016c
je 0x9253
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x3, %edx
sarl $0x0, %edx
leaq 0x6f25(%rip), %rsi      # 0x1016c
leaq 0x46cc(%rip), %rcx      # 0xd91a
callq 0x2950
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0xc, %eax
sarl $0x3, %eax
cmpl 0x6f11(%rip), %eax      # 0x10178
je 0x928e
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0xc, %edx
sarl $0x3, %edx
leaq 0x6ef6(%rip), %rsi      # 0x10178
leaq 0x469c(%rip), %rcx      # 0xd925
callq 0x2360
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x10, %eax
sarl $0x4, %eax
cmpl 0x6eda(%rip), %eax      # 0x1017c
je 0x92c9
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x10, %edx
sarl $0x4, %edx
leaq 0x6ebf(%rip), %rsi      # 0x1017c
leaq 0x466a(%rip), %rcx      # 0xd92e
callq 0x2a40
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x60, %eax
sarl $0x5, %eax
cmpl 0x6ea3(%rip), %eax      # 0x10180
je 0x9304
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x60, %edx
sarl $0x5, %edx
leaq 0x6e88(%rip), %rsi      # 0x10180
leaq 0x463c(%rip), %rcx      # 0xd93b
callq 0x2220
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x80, %eax
sarl $0x7, %eax
cmpl 0x6e6a(%rip), %eax      # 0x10184
je 0x9344
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x80, %edx
sarl $0x7, %edx
leaq 0x6e4c(%rip), %rsi      # 0x10184
leaq 0x4614(%rip), %rcx      # 0xd953
callq 0x2130
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x1, %eax
cmpl 0x6e33(%rip), %eax      # 0x10188
je 0x9379
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0x1, %edx
leaq 0x6e1b(%rip), %rsi      # 0x10188
leaq 0x45e9(%rip), %rcx      # 0xd95d
callq 0x2b80
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0xfe, %eax
sarl %eax
cmpl 0x6dfe(%rip), %eax      # 0x1018c
je 0x93b7
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0xfe, %edx
sarl %edx
leaq 0x6de1(%rip), %rsi      # 0x1018c
leaq 0x45b6(%rip), %rcx      # 0xd968
callq 0x2180
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
sarl $0x3, %eax
andl $0x7, %eax
addl $0x1, %eax
cmpl 0x6dc2(%rip), %eax      # 0x10190
je 0x93f8
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
sarl $0x3, %edx
andl $0x7, %edx
addl $0x1, %edx
leaq 0x6da4(%rip), %rsi      # 0x10190
leaq 0x4583(%rip), %rcx      # 0xd976
callq 0x2310
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
sarl $0x6, %eax
andl $0x1, %eax
cmpl 0x6d88(%rip), %eax      # 0x10194
je 0x9433
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
sarl $0x6, %edx
andl $0x1, %edx
leaq 0x6d6d(%rip), %rsi      # 0x10194
leaq 0x4552(%rip), %rcx      # 0xd980
callq 0x2a90
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
sarl $0x7, %eax
andl $0x1, %eax
cmpl 0x6d51(%rip), %eax      # 0x10198
je 0x946e
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
sarl $0x7, %edx
andl $0x1, %edx
leaq 0x6d36(%rip), %rsi      # 0x10198
leaq 0x4524(%rip), %rcx      # 0xd98d
callq 0x1c30
movl $0x0, -0x14(%rbp)
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x3, %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl 0x6d10(%rip), %eax      # 0x1019c
je 0x949e
movl $0x1, -0x14(%rbp)
movl -0x10(%rbp), %eax
movl %eax, 0x6cfe(%rip)      # 0x1019c
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x4, %eax
sarl $0x2, %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl 0x6ce8(%rip), %eax      # 0x101a0
je 0x94ca
movl $0x1, -0x14(%rbp)
movl -0x10(%rbp), %eax
movl %eax, 0x6cd6(%rip)      # 0x101a0
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x8, %eax
sarl $0x3, %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl 0x6cc0(%rip), %eax      # 0x101a4
je 0x94f6
movl $0x1, -0x14(%rbp)
movl -0x10(%rbp), %eax
movl %eax, 0x6cae(%rip)      # 0x101a4
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x10, %eax
sarl $0x4, %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl 0x6c98(%rip), %eax      # 0x101a8
je 0x9522
movl $0x1, -0x14(%rbp)
movl -0x10(%rbp), %eax
movl %eax, 0x6c86(%rip)      # 0x101a8
cmpl $0x0, -0x14(%rbp)
je 0x9555
movl 0x6c6e(%rip), %edx      # 0x1019c
movl 0x6c6c(%rip), %ecx      # 0x101a0
movl 0x6c69(%rip), %r8d      # 0x101a4
movl 0x6c66(%rip), %r9d      # 0x101a8
movl $0x1, %edi
leaq 0x4453(%rip), %rsi      # 0xd9a1
movb $0x0, %al
callq 0x1370
movl $0x0, -0x14(%rbp)
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x60, %eax
sarl $0x5, %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl 0x6c36(%rip), %eax      # 0x101ac
je 0x9588
movl $0x1, -0x14(%rbp)
movl -0x10(%rbp), %eax
movl %eax, 0x6c24(%rip)      # 0x101ac
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x80, %eax
sarl $0x7, %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl 0x6c0c(%rip), %eax      # 0x101b0
je 0x95b6
movl $0x1, -0x14(%rbp)
movl -0x10(%rbp), %eax
movl %eax, 0x6bfa(%rip)      # 0x101b0
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
sarl $0x0, %eax
andl $0x3, %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl 0x6be4(%rip), %eax      # 0x101b4
je 0x95e2
movl $0x1, -0x14(%rbp)
movl -0x10(%rbp), %eax
movl %eax, 0x6bd2(%rip)      # 0x101b4
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
sarl $0x2, %eax
andl $0x1, %eax
movl %eax, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl 0x6bbc(%rip), %eax      # 0x101b8
je 0x960e
movl $0x1, -0x14(%rbp)
movl -0x10(%rbp), %eax
movl %eax, 0x6baa(%rip)      # 0x101b8
cmpl $0x0, -0x14(%rbp)
je 0x9641
movl 0x6b96(%rip), %edx      # 0x101b0
movl 0x6b8c(%rip), %ecx      # 0x101ac
movl 0x6b8d(%rip), %r8d      # 0x101b4
movl 0x6b8a(%rip), %r9d      # 0x101b8
movl $0x1, %edi
leaq 0x4391(%rip), %rsi      # 0xd9cb
movb $0x0, %al
callq 0x1370
cmpl $0x64, 0x6fdc(%rip)     # 0x10624
jne 0x969a
imull $0xc, 0x6b4b(%rip), %eax # 0x1019c
imull $0x12, 0x6b4c(%rip), %ecx # 0x101a4
subl %ecx, %eax
imull $0x12, 0x6b3f(%rip), %ecx # 0x101a0
subl %ecx, %eax
cvtsi2sd %eax, %xmm0
movsd 0x2a09(%rip), %xmm1     # 0xc078
mulsd %xmm0, %xmm1
movsd 0x29f5(%rip), %xmm0     # 0xc070
callq 0x1090
movsd %xmm0, 0x6b38(%rip)     # 0x101c0
movsd 0x38e8(%rip), %xmm0     # 0xcf78
movsd %xmm0, 0x6b30(%rip)     # 0x101c8
jmp 0x96dc
imull $0xa, 0x6afb(%rip), %eax # 0x1019c
addl 0x6b39(%rip), %eax      # 0x101e0
cvtsi2sd %eax, %xmm0
movsd 0x29c5(%rip), %xmm1     # 0xc078
mulsd %xmm0, %xmm1
movsd 0x29b1(%rip), %xmm0     # 0xc070
callq 0x1090
movsd %xmm0, 0x6af4(%rip)     # 0x101c0
movsd 0x38a4(%rip), %xmm0     # 0xcf78
movsd %xmm0, 0x6aec(%rip)     # 0x101c8
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
movq -0x8(%rbp), %rcx
movzbl 0x3(%rcx), %ecx
shll $0x8, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x10, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x18, %ecx
orl %ecx, %eax
cltq
cmpq 0x6acf(%rip), %rax      # 0x101e8
je 0x9761
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x8, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x10, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x18, %eax
orl %eax, %edx
leaq 0x6a93(%rip), %rsi      # 0x101e8
leaq 0x4295(%rip), %rcx      # 0xd9f1
callq 0x2c20
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
movq -0x8(%rbp), %rcx
movzbl 0x3(%rcx), %ecx
shll $0x8, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x10, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x18, %ecx
orl %ecx, %eax
cltq
cmpq 0x6a52(%rip), %rax      # 0x101f0
je 0x97e6
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x8, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x10, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x18, %eax
orl %eax, %edx
leaq 0x6a16(%rip), %rsi      # 0x101f0
leaq 0x4218(%rip), %rcx      # 0xd9f9
callq 0x2720
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
movq -0x8(%rbp), %rcx
movzbl 0x3(%rcx), %ecx
shll $0x8, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x10, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x18, %ecx
orl %ecx, %eax
cltq
cmpq 0x69d5(%rip), %rax      # 0x101f8
je 0x986f
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x8, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x10, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x18, %eax
orl %eax, %edx
leaq 0x6991(%rip), %rsi      # 0x101f0
addq $0x8, %rsi
leaq 0x4198(%rip), %rcx      # 0xda02
callq 0x2770
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
movq -0x8(%rbp), %rcx
movzbl 0x3(%rcx), %ecx
shll $0x8, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x10, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x18, %ecx
orl %ecx, %eax
cltq
cmpq 0x6954(%rip), %rax      # 0x10200
je 0x98f8
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x8, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x10, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x18, %eax
orl %eax, %edx
leaq 0x6908(%rip), %rsi      # 0x101f0
addq $0x10, %rsi
leaq 0x4118(%rip), %rcx      # 0xda0b
callq 0x27c0
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
movq -0x8(%rbp), %rcx
movzbl 0x3(%rcx), %ecx
shll $0x8, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x10, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x18, %ecx
orl %ecx, %eax
cltq
cmpq 0x68d3(%rip), %rax      # 0x10208
je 0x9981
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x8, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x10, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x18, %eax
orl %eax, %edx
leaq 0x687f(%rip), %rsi      # 0x101f0
addq $0x18, %rsi
leaq 0x4098(%rip), %rcx      # 0xda14
callq 0x2810
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
movq -0x8(%rbp), %rcx
movzbl 0x3(%rcx), %ecx
shll $0x8, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x10, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x18, %ecx
orl %ecx, %eax
cltq
cmpq 0x6852(%rip), %rax      # 0x10210
je 0x9a0a
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x8, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x10, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x18, %eax
orl %eax, %edx
leaq 0x67f6(%rip), %rsi      # 0x101f0
addq $0x20, %rsi
leaq 0x4018(%rip), %rcx      # 0xda1d
callq 0x2860
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
movq -0x8(%rbp), %rcx
movzbl 0x3(%rcx), %ecx
shll $0x8, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x10, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x18, %ecx
orl %ecx, %eax
cltq
cmpq 0x67d1(%rip), %rax      # 0x10218
je 0x9a93
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x8, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x10, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x18, %eax
orl %eax, %edx
leaq 0x676d(%rip), %rsi      # 0x101f0
addq $0x28, %rsi
leaq 0x3f98(%rip), %rcx      # 0xda26
callq 0x28b0
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
movq -0x8(%rbp), %rcx
movzbl 0x3(%rcx), %ecx
shll $0x8, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
shll $0x10, %ecx
orl %ecx, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
shll $0x18, %ecx
orl %ecx, %eax
cltq
cmpq 0x6750(%rip), %rax      # 0x10220
je 0x9b1c
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x8, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x10, %eax
orl %eax, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x18, %eax
orl %eax, %edx
leaq 0x66e4(%rip), %rsi      # 0x101f0
addq $0x30, %rsi
leaq 0x3f18(%rip), %rcx      # 0xda2f
callq 0x2900
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
cmpl 0x18cdf7d(%rip), %eax   # 0x18d7aac
je 0x9b50
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
leaq 0x18cdf68(%rip), %rsi   # 0x18d7aac
leaq 0x3eed(%rip), %rcx      # 0xda38
callq 0x2bd0
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x3f, %eax
cmpl 0x66c7(%rip), %eax      # 0x10228
je 0x9b85
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0x3f, %edx
leaq 0x66af(%rip), %rsi      # 0x10228
leaq 0x3ec1(%rip), %rcx      # 0xda41
callq 0x1f00
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
sarl $0x6, %eax
andl $0x1, %eax
cmpl 0x6693(%rip), %eax      # 0x1022c
je 0x9bc0
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
sarl $0x6, %edx
andl $0x1, %edx
leaq 0x6678(%rip), %rsi      # 0x1022c
leaq 0x3e94(%rip), %rcx      # 0xda4f
callq 0x1b40
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
sarl $0x7, %eax
andl $0x1, %eax
cmpl 0x665c(%rip), %eax      # 0x10230
je 0x9bfb
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
sarl $0x7, %edx
andl $0x1, %edx
leaq 0x6641(%rip), %rsi      # 0x10230
leaq 0x3e6d(%rip), %rcx      # 0xda63
callq 0x2c70
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x1f, %eax
cmpl 0x6628(%rip), %eax      # 0x10234
je 0x9c30
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
andl $0x1f, %edx
leaq 0x6610(%rip), %rsi      # 0x10234
leaq 0x3e41(%rip), %rcx      # 0xda6c
callq 0x1aa0
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
sarl $0x5, %eax
andl $0x1, %eax
cmpl 0x65f4(%rip), %eax      # 0x10238
je 0x9c6b
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
sarl $0x5, %edx
andl $0x1, %edx
leaq 0x65d9(%rip), %rsi      # 0x10238
leaq 0x3e0f(%rip), %rcx      # 0xda75
callq 0x1a50
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
sarl $0x6, %eax
andl $0x1, %eax
cmpl 0x65bd(%rip), %eax      # 0x1023c
je 0x9ca6
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
sarl $0x6, %edx
andl $0x1, %edx
leaq 0x65a2(%rip), %rsi      # 0x1023c
leaq 0x3de5(%rip), %rcx      # 0xda86
callq 0x1a00
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
sarl $0x7, %eax
andl $0x1, %eax
cmpl 0x6586(%rip), %eax      # 0x10240
je 0x9ce1
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
sarl $0x7, %edx
andl $0x1, %edx
leaq 0x656b(%rip), %rsi      # 0x10240
leaq 0x3db6(%rip), %rcx      # 0xda92
callq 0x1b90
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
cmpl 0x6555(%rip), %eax      # 0x10244
je 0x9d10
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
leaq 0x6540(%rip), %rsi      # 0x10244
leaq 0x3d98(%rip), %rcx      # 0xdaa3
callq 0x1af0
cvtsi2sdl 0x18cdd94(%rip), %xmm0 # 0x18d7aac
movsd 0x32c8(%rip), %xmm1     # 0xcfe8
mulsd %xmm1, %xmm0
movsd %xmm0, 0x6444(%rip)     # 0x10170
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x1, %eax
sarl $0x0, %eax
cmpl 0x650b(%rip), %eax      # 0x10250
je 0x9d6c
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x1, %edx
sarl $0x0, %edx
leaq 0x64f0(%rip), %rsi      # 0x10250
leaq 0x3d45(%rip), %rcx      # 0xdaac
callq 0x18c0
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x2, %eax
sarl %eax
cmpl 0x64d5(%rip), %eax      # 0x10254
je 0x9da9
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x2, %edx
sarl %edx
leaq 0x64b7(%rip), %rsi      # 0x10250
addq $0x4, %rsi
leaq 0x3d14(%rip), %rcx      # 0xdab8
callq 0x1910
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x4, %eax
sarl $0x2, %eax
cmpl 0x649b(%rip), %eax      # 0x10258
je 0x9de8
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x4, %edx
sarl $0x2, %edx
leaq 0x6478(%rip), %rsi      # 0x10250
addq $0x8, %rsi
leaq 0x3ce1(%rip), %rcx      # 0xdac4
callq 0x1960
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x8, %eax
sarl $0x3, %eax
cmpl 0x6460(%rip), %eax      # 0x1025c
je 0x9e27
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x8, %edx
sarl $0x3, %edx
leaq 0x6439(%rip), %rsi      # 0x10250
addq $0xc, %rsi
leaq 0x3cae(%rip), %rcx      # 0xdad0
callq 0x19b0
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x10, %eax
sarl $0x4, %eax
cmpl 0x6425(%rip), %eax      # 0x10260
je 0x9e62
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x10, %edx
sarl $0x4, %edx
leaq 0x640a(%rip), %rsi      # 0x10260
leaq 0x3c7f(%rip), %rcx      # 0xdadc
callq 0x2ae0
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x20, %eax
sarl $0x5, %eax
cmpl 0x63ee(%rip), %eax      # 0x10264
je 0x9e9d
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x20, %edx
sarl $0x5, %edx
leaq 0x63d3(%rip), %rsi      # 0x10264
leaq 0x3c4d(%rip), %rcx      # 0xdae5
callq 0x2090
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x40, %eax
sarl $0x6, %eax
cmpl 0x63b7(%rip), %eax      # 0x10268
je 0x9ed8
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x40, %edx
sarl $0x6, %edx
leaq 0x639c(%rip), %rsi      # 0x10268
leaq 0x3c1a(%rip), %rcx      # 0xdaed
callq 0x20e0
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x1f, %eax
sarl $0x0, %eax
cmpl 0x6380(%rip), %eax      # 0x1026c
je 0x9f13
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0x1f, %edx
sarl $0x0, %edx
leaq 0x6365(%rip), %rsi      # 0x1026c
leaq 0x3be6(%rip), %rcx      # 0xdaf4
callq 0x1f50
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x20, %eax
sarl $0x5, %eax
cmpl 0x6349(%rip), %eax      # 0x10270
je 0x9f4e
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0x20, %edx
sarl $0x5, %edx
leaq 0x632e(%rip), %rsi      # 0x10270
leaq 0x3bb4(%rip), %rcx      # 0xdafd
callq 0x1fa0
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x40, %eax
sarl $0x6, %eax
cmpl 0x6312(%rip), %eax      # 0x10274
je 0x9f89
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0x40, %edx
sarl $0x6, %edx
leaq 0x62f7(%rip), %rsi      # 0x10274
leaq 0x3b8d(%rip), %rcx      # 0xdb11
callq 0x22c0
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x80, %eax
sarl $0x7, %eax
cmpl 0x62d9(%rip), %eax      # 0x10278
je 0x9fc9
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0x80, %edx
sarl $0x7, %edx
leaq 0x62bb(%rip), %rsi      # 0x10278
leaq 0x3b58(%rip), %rcx      # 0xdb1c
callq 0x21d0
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0xf, %eax
sarl $0x0, %eax
cmpl 0x629f(%rip), %eax      # 0x1027c
je 0xa004
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
andl $0xf, %edx
sarl $0x0, %edx
leaq 0x6284(%rip), %rsi      # 0x1027c
leaq 0x3b2c(%rip), %rcx      # 0xdb2b
callq 0x2040
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x10, %eax
sarl $0x4, %eax
cmpl 0x6268(%rip), %eax      # 0x10280
je 0xa03f
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
andl $0x10, %edx
sarl $0x4, %edx
leaq 0x624d(%rip), %rsi      # 0x10280
leaq 0x3afa(%rip), %rcx      # 0xdb34
callq 0x1ff0
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
andl $0x40, %eax
cmpl $0x0, %eax
je 0xa094
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %ecx
andl $0x3f, %ecx
movl $0x25, %eax
subl %ecx, %eax
cmpl 0x6179(%rip), %eax      # 0x101e0
je 0xa092
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
andl $0x3f, %eax
movl $0x25, %edx
subl %eax, %edx
leaq 0x615a(%rip), %rsi      # 0x101e0
leaq 0x3abb(%rip), %rcx      # 0xdb48
callq 0x24a0
jmp 0xa10c
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
andl $0x1f, %eax
sarl $0x0, %eax
cmpl 0x6138(%rip), %eax      # 0x101e0
je 0xa0cf
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
andl $0x1f, %edx
sarl $0x0, %edx
leaq 0x611d(%rip), %rsi      # 0x101e0
leaq 0x3a8e(%rip), %rcx      # 0xdb58
callq 0x2450
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
andl $0x20, %eax
sarl $0x5, %eax
cmpl 0x61a1(%rip), %eax      # 0x10284
je 0xa10a
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
andl $0x20, %edx
sarl $0x5, %edx
leaq 0x6186(%rip), %rsi      # 0x10284
leaq 0x3a5b(%rip), %rcx      # 0xdb60
callq 0x2400
jmp 0xa10c
cmpl $0x64, 0x6511(%rip)     # 0x10624
je 0xa190
imull $0xa, 0x6080(%rip), %eax # 0x1019c
addl 0x60be(%rip), %eax      # 0x101e0
cvtsi2sd %eax, %xmm0
movsd 0x1f4a(%rip), %xmm1     # 0xc078
mulsd %xmm0, %xmm1
movsd 0x1f36(%rip), %xmm0     # 0xc070
callq 0x1090
movsd %xmm0, 0x6079(%rip)     # 0x101c0
cvtsi2sdl 0x6095(%rip), %xmm0 # 0x101e4
movsd 0x1f21(%rip), %xmm1     # 0xc078
mulsd %xmm0, %xmm1
movsd 0x1f0d(%rip), %xmm0     # 0xc070
callq 0x1090
movsd %xmm0, 0x6058(%rip)     # 0x101c8
movsd 0x2e00(%rip), %xmm0     # 0xcf78
movsd %xmm0, 0x6050(%rip)     # 0x101d0
movsd 0x2df0(%rip), %xmm0     # 0xcf78
movsd %xmm0, 0x6048(%rip)     # 0x101d8
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x1f, %eax
cmpl 0x603e(%rip), %eax      # 0x101e4
je 0xa1ce
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x1f, %edx
leaq 0x6022(%rip), %rsi      # 0x101e0
addq $0x4, %rsi
leaq 0x39a6(%rip), %rcx      # 0xdb6f
callq 0x2540
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
sarl $0x6, %eax
andl $0x1, %eax
cmpl 0x60a6(%rip), %eax      # 0x10288
je 0xa209
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
sarl $0x6, %edx
andl $0x1, %edx
leaq 0x608b(%rip), %rsi      # 0x10288
leaq 0x3973(%rip), %rcx      # 0xdb77
callq 0x1dc0
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x3f, %eax
cmpl 0x6072(%rip), %eax      # 0x1028c
je 0xa23e
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
andl $0x3f, %edx
leaq 0x605a(%rip), %rsi      # 0x1028c
leaq 0x3945(%rip), %rcx      # 0xdb7e
callq 0x1e60
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
sarl $0x6, %eax
andl $0x3, %eax
cmpl 0x603e(%rip), %eax      # 0x10290
je 0xa279
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
sarl $0x6, %edx
andl $0x3, %edx
leaq 0x6023(%rip), %rsi      # 0x10290
leaq 0x3913(%rip), %rcx      # 0xdb87
callq 0x1d70
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
andl $0x7f, %eax
cmpl 0x600a(%rip), %eax      # 0x10294
je 0xa2ae
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
andl $0x7f, %edx
leaq 0x5ff2(%rip), %rsi      # 0x10294
leaq 0x38e6(%rip), %rcx      # 0xdb8f
callq 0x1eb0
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
sarl $0x7, %eax
andl $0x1, %eax
cmpl 0x5fd6(%rip), %eax      # 0x10298
je 0xa2e9
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %edx
sarl $0x7, %edx
andl $0x1, %edx
leaq 0x5fbb(%rip), %rsi      # 0x10298
leaq 0x38b5(%rip), %rcx      # 0xdb99
callq 0x1e10
cvtsi2sdl 0x5ef3(%rip), %xmm0 # 0x101e4
movsd 0x1d7f(%rip), %xmm1     # 0xc078
mulsd %xmm0, %xmm1
movsd 0x1d6b(%rip), %xmm0     # 0xc070
callq 0x1090
movsd %xmm0, 0x5eb6(%rip)     # 0x101c8
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
movw %ax, -0xa(%rbp)
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %ecx
shll $0x8, %ecx
movzwl -0xa(%rbp), %eax
orl %ecx, %eax
movw %ax, -0xa(%rbp)
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
shll $0x8, %eax
movq -0x8(%rbp), %rcx
movzbl 0x1(%rcx), %ecx
orl %ecx, %eax
cmpl 0x5f49(%rip), %eax      # 0x1029c
je 0xa381
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
shll $0x8, %edx
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
orl %eax, %edx
leaq 0x5f27(%rip), %rsi      # 0x1029c
leaq 0x3828(%rip), %rcx      # 0xdba4
callq 0x1be0
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x3, %eax
sarl $0x0, %eax
cmpl 0x5f06(%rip), %eax      # 0x102a0
je 0xa3c1
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x3, %edx
sarl $0x0, %edx
leaq 0x5eeb(%rip), %rsi      # 0x102a0
leaq 0x37fb(%rip), %rcx      # 0xdbb7
callq 0x23b0
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0xc, %eax
sarl $0x2, %eax
cmpl 0x5ecf(%rip), %eax      # 0x102a4
je 0xa400
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0xc, %edx
sarl $0x2, %edx
leaq 0x5eb0(%rip), %rsi      # 0x102a0
addq $0x4, %rsi
leaq 0x37c4(%rip), %rcx      # 0xdbbf
callq 0x24f0
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x30, %eax
sarl $0x4, %eax
cmpl 0x5e94(%rip), %eax      # 0x102a8
je 0xa43f
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x30, %edx
sarl $0x4, %edx
leaq 0x5e71(%rip), %rsi      # 0x102a0
addq $0x8, %rsi
leaq 0x378d(%rip), %rcx      # 0xdbc7
callq 0x2590
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0xc0, %eax
sarl $0x6, %eax
cmpl 0x5e57(%rip), %eax      # 0x102ac
je 0xa483
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0xc0, %edx
sarl $0x6, %edx
leaq 0x5e2d(%rip), %rsi      # 0x102a0
addq $0xc, %rsi
leaq 0x3751(%rip), %rcx      # 0xdbcf
callq 0x25e0
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x3, %eax
sarl $0x0, %eax
cmpl 0x5e19(%rip), %eax      # 0x102b0
je 0xa4c2
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0x3, %edx
sarl $0x0, %edx
leaq 0x5dee(%rip), %rsi      # 0x102a0
addq $0x10, %rsi
leaq 0x371a(%rip), %rcx      # 0xdbd7
callq 0x2630
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0xc, %eax
sarl $0x2, %eax
cmpl 0x5dde(%rip), %eax      # 0x102b4
je 0xa501
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0xc, %edx
sarl $0x2, %edx
leaq 0x5daf(%rip), %rsi      # 0x102a0
addq $0x14, %rsi
leaq 0x36e3(%rip), %rcx      # 0xdbdf
callq 0x2680
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x30, %eax
sarl $0x4, %eax
cmpl 0x5da3(%rip), %eax      # 0x102b8
je 0xa540
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
andl $0x30, %edx
sarl $0x4, %edx
leaq 0x5d70(%rip), %rsi      # 0x102a0
addq $0x18, %rsi
leaq 0x36ac(%rip), %rcx      # 0xdbe7
callq 0x26d0
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
andl $0x1f, %eax
cmpl 0x18cd55f(%rip), %eax   # 0x18d7ab0
je 0xa575
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
andl $0x1f, %edx
leaq 0x18cd547(%rip), %rsi   # 0x18d7ab0
leaq 0x367f(%rip), %rcx      # 0xdbef
callq 0x2b30
cvtsi2sdl 0x18cd533(%rip), %xmm0 # 0x18d7ab0
movsd 0x1af3(%rip), %xmm1     # 0xc078
mulsd %xmm0, %xmm1
movsd 0x1adf(%rip), %xmm0     # 0xc070
callq 0x1090
movsd %xmm0, 0x5d22(%rip)     # 0x102c0
cmpl $0x64, 0x607f(%rip)     # 0x10624
jne 0xa5c5
movl $0x0, 0x5cef(%rip)      # 0x102a0
movl $0x1, 0x5ce9(%rip)      # 0x102a4
movl $0x1, 0x5ce3(%rip)      # 0x102a8
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
andl $0x1, %eax
cmpl 0x5ced(%rip), %eax      # 0x102c8
je 0xa5ff
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
andl $0x1, %edx
leaq 0x5cd5(%rip), %rsi      # 0x102c8
leaq 0x35fc(%rip), %rcx      # 0xdbf6
callq 0x1d20
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
cmpl 0x5cbf(%rip), %eax      # 0x102cc
je 0xa62e
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %edx
leaq 0x5caa(%rip), %rsi      # 0x102cc
leaq 0x35d4(%rip), %rcx      # 0xdbfd
callq 0x29f0
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
cmpl 0x5c94(%rip), %eax      # 0x102d0
je 0xa65d
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
leaq 0x5c7f(%rip), %rsi      # 0x102d0
leaq 0x35b6(%rip), %rcx      # 0xdc0e
callq 0x1c80
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
movl %eax, 0x5c65(%rip)      # 0x102d0
jmp 0xa715
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %eax
shll $0x2, %eax
movq -0x8(%rbp), %rcx
movzbl 0x2(%rcx), %ecx
andl $0x3, %ecx
orl %ecx, %eax
cmpl 0x5c46(%rip), %eax      # 0x102d4
je 0xa6bf
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x1(%rax), %edx
shll $0x2, %edx
movq -0x8(%rbp), %rax
movzbl 0x2(%rax), %eax
andl $0x3, %eax
orl %eax, %edx
leaq 0x5c21(%rip), %rsi      # 0x102d4
leaq 0x355d(%rip), %rcx      # 0xdc17
callq 0x1cd0
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %eax
shll $0x4, %eax
movq -0x8(%rbp), %rcx
movzbl 0x4(%rcx), %ecx
andl $0xff, %ecx
orl %ecx, %eax
cmpl 0x5bf8(%rip), %eax      # 0x102d8
je 0xa713
movq -0x8(%rbp), %rdi
movq -0x8(%rbp), %rax
movzbl 0x3(%rax), %edx
shll $0x4, %edx
movq -0x8(%rbp), %rax
movzbl 0x4(%rax), %eax
andl $0xff, %eax
orl %eax, %edx
leaq 0x5bd1(%rip), %rsi      # 0x102d8
leaq 0x3511(%rip), %rcx      # 0xdc1f
callq 0x29a0
jmp 0xa715
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)