// File: /workspace/github_c_makefile_star2_O1/xiane[P]libvphevcodec/AML_HEVCEncoder.cpp
// Function: PrintVpuStatus(unsigned int)
void PrintVpuStatus(u32 coreIdx) {
    if (1) {
        int rd, wr;
        Uint32 reg_val, num;
        Uint32 index;
        Uint32 vcpu_reg[31] = { 0, };

        VLOG(ERR, "------------------------------------------------------------------------------- ");
        VLOG(ERR, "------                            VCPU STATUS(ENC)                        ----- ");
        VLOG(ERR, "------------------------------------------------------------------------------- ");
        rd = VpuReadReg(coreIdx, W4_BS_RD_PTR);
        wr = VpuReadReg(coreIdx, W4_BS_WR_PTR);
        VLOG(ERR, "RD_PTR: 0x%08x WR_PTR: 0x%08x BS_OPT: 0x%08x BS_PARAM: 0x%08x\n",
                        rd, wr, VpuReadReg(coreIdx, W4_BS_OPTION), VpuReadReg(coreIdx, W4_BS_PARAM));

        // --------- VCPU register Dump
        VLOG(ERR, "[+] VCPU REG Dump\n");
        for (index = 0; index < 25; index++) {
            VpuWriteReg(coreIdx, W4_VPU_PDBG_IDX_REG, (1 << 9) | (index & 0xff));
            vcpu_reg[index] = VpuReadReg(coreIdx, W4_VPU_PDBG_RDATA_REG);

            if (index < 16) {
                VLOG(ERR, "0x%08x\t", vcpu_reg[index]);
                if ((index % 4) == 3)
                    VLOG(ERR, " ");
            } else {
                switch (index) {
                    case 16:
                        VLOG(ERR, "CR0: 0x%08x\t", vcpu_reg[index]);
                        break;
                    case 17:
                        VLOG(ERR, "CR1: 0x%08x\n", vcpu_reg[index]);
                        break;
                    case 18:
                        VLOG(ERR, "ML:  0x%08x\t", vcpu_reg[index]);
                        break;
                    case 19:
                        VLOG(ERR, "MH:  0x%08x\n", vcpu_reg[index]);
                        break;
                    case 21:
                        VLOG(ERR, "LR:  0x%08x\n", vcpu_reg[index]);
                        break;
                    case 22:
                        VLOG(ERR, "PC:  0x%08x\n", vcpu_reg[index]);
                        break;
                    case 23:
                        VLOG(ERR, "SR:  0x%08x\n", vcpu_reg[index]);
                        break;
                    case 24:
                        VLOG(ERR, "SSP: 0x%08x\n", vcpu_reg[index]);
                        break;
                }
            }
        }
        VLOG(ERR, "[-] VCPU REG Dump\n");
        VLOG(ERR, "vce run flag = %d\n", VpuReadReg(coreIdx, 0x1E8));
        // --------- BIT register Dump
        VLOG(ERR, "[+] BPU REG Dump\n");
        for (index = 0; index < 30; index++) {
            unsigned int temp;
            temp = FIORead(coreIdx, (W4_REG_BASE + 0x8000 + 0x18));
            VLOG(ERR, "BITPC = 0x%08x\n", temp);
            if (temp == 0xffffffff)
                return;
        }

        // --------- BIT HEVC Status Dump
        VLOG(ERR, "[-] BPU REG Dump\n");

        VLOG(ERR, "DBG_FIFO_VALID   [%08x] ", FIORead(coreIdx, (W4_REG_BASE + 0x8000 + 0x6C)));

        //SDMA debug information
        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x13c);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0x78));
        VLOG(ERR, "SDMA_DBG_INFO    [%08x] ", reg_val);
        VLOG(ERR, "\t- [   28] need_more_update  : 0x%x  ", (reg_val >> 28) & 0x1);
        VLOG(ERR, "\t- [27:25] tr_init_fsm       : 0x%x  ", (reg_val >> 25) & 0x7);
        VLOG(ERR, "\t- [24:18] remain_trans_size : 0x%x  ", (reg_val >> 18) & 0x7F);
        VLOG(ERR, "\t- [17:13] wdata_out_cnt     : 0x%x  ", (reg_val >> 13) & 0x1F);
        VLOG(ERR, "\t- [12:10] wdma_wd_fsm       : 0x%x  ", (reg_val >> 10) & 0x1F);
        VLOG(ERR, "\t- [ 9: 7] wdma_wa_fsm       : 0x%x ", (reg_val >> 7) & 0x7);
        if (((reg_val >> 7) & 0x7) == 3) {
            VLOG(ERR, "-->WDMA_WAIT_ADDR   ");
        } else {
            VLOG(ERR, " ");
        }
        VLOG(ERR, "\t- [ 6: 5] sdma_init_fsm     : 0x%x  ", (reg_val >> 5) & 0x3);
        VLOG(ERR, "\t- [ 4: 1] save_fsm          : 0x%x  ", (reg_val >> 1) & 0xF);
        VLOG(ERR, "\t- [    0] unalign_written   : 0x%x  ", (reg_val >> 0) & 0x1);

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x13b);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0x78));
        VLOG(ERR, "SDMA_NAL_MEM_INF [%08x] ", reg_val);
        VLOG(ERR, "\t- [ 7: 1] nal_mem_empty_room : 0x%x  ", (reg_val >> 1) & 0x3F);
        VLOG(ERR, "\t- [    0] ge_wnbuf_size      : 0x%x  ", (reg_val >> 0) & 0x1);

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x131);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0x78));
        VLOG(ERR, "SDMA_IRQ   [%08x]: [1]sdma_irq : 0x%x, [2]enable_sdma_irq : 0x%x\n", reg_val, (reg_val >> 1) & 0x1, (reg_val & 0x1));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x134);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "SDMA_BS_BASE_ADDR [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x135);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "SDMA_NAL_STR_ADDR [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x136);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "SDMA_IRQ_ADDR     [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x137);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "SDMA_BS_END_ADDR [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x13A);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "SDMA_CUR_ADDR    [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x139);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0x78));
        VLOG(ERR, "SDMA_STATUS      [%08x] ", reg_val);
        VLOG(ERR, "\t- [2] all_wresp_done : 0x%x  ", (reg_val >> 2) & 0x1);
        VLOG(ERR, "\t- [1] sdma_init_busy : 0x%x  ", (reg_val >> 1) & 0x1);
        VLOG(ERR, "\t- [0] save_busy      : 0x%x  ", (reg_val >> 0) & 0x1);

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x164);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0x78));
        VLOG(ERR, "SHU_DBG        [%08x] : shu_unaligned_num (0x%x) ", reg_val, reg_val);

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x169);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "SHU_NBUF_WPTR    [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x16A);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "SHU_NBUF_RPTR    [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x16C);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0x78));
        VLOG(ERR, "SHU_NBUF_INFO    [%08x] ", reg_val);
        VLOG(ERR, "\t- [5:1] nbuf_remain_byte : 0x%x  ", (reg_val >> 1) & 0x1F);
        VLOG(ERR, "\t- [  0] nbuf_wptr_wrap   : 0x%x  ", (reg_val >> 0) & 0x1);

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x184);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "CTU_LAST_ENC_POS [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x187);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "CTU_POS_IN_PIC   [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x110);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "MIB_EXTADDR      [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x111);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "MIB_INTADDR      [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x113);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "MIB_CMD        [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        FIOWrite(0, (W4_REG_BASE + 0x8000 + 0x74), (1 << 20) | (1 << 16) | 0x114);
        while ((FIORead(0,(W4_REG_BASE + 0x8000 + 0x7c)) & 0x1) == 0)
            ;
        VLOG(ERR, "MIB_BUSY     [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x78)));

        VLOG(ERR, "DBG_BPU_ENC_NB0    [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x40)));
        VLOG(ERR, "DBG_BPU_CTU_CTRL0  [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x44)));
        VLOG(ERR, "DBG_BPU_CAB_FSM0 [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x48)));
        VLOG(ERR, "DBG_BPU_BIN_GEN0 [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x4C)));
        VLOG(ERR, "DBG_BPU_CAB_MBAE0  [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x50)));
        VLOG(ERR, "DBG_BPU_BUS_BUSY [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x68)));
        VLOG(ERR, "DBG_FIFO_VALID   [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x6C)));
        VLOG(ERR, "DBG_BPU_CTU_CTRL1  [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x54)));
        VLOG(ERR, "DBG_BPU_CTU_CTRL2  [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x58)));
        VLOG(ERR, "DBG_BPU_CTU_CTRL3  [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x5C)));

        for (index = 0x80; index < 0xA0; index += 4) {
            reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + index));
            num = (index - 0x80) / 2;
            VLOG(ERR, "DBG_BIT_STACK    [%08x] : Stack%02d (0x%04x), Stack%02d(0x%04x)  ", reg_val, num, reg_val >> 16, num + 1, reg_val & 0xffff);
        }

        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0xA0));
        VLOG(ERR, "DGB_BIT_CORE_INFO  [%08x] : pc_ctrl_id (0x%04x), pfu_reg_pc(0x%04x) ", reg_val, reg_val >> 16, reg_val & 0xffff);
        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0xA4));
        VLOG(ERR, "DGB_BIT_CORE_INFO  [%08x] : ACC0 (0x%08x) ", reg_val, reg_val);
        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0xA8));
        VLOG(ERR, "DGB_BIT_CORE_INFO  [%08x] : ACC1 (0x%08x) ", reg_val, reg_val);

        reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0xAC));
        VLOG(ERR, "DGB_BIT_CORE_INFO  [%08x] : pfu_ibuff_id(0x%04x), pfu_ibuff_op(0x%04x) ", reg_val, reg_val >> 16, reg_val & 0xffff);

        for (num = 0; num < 5; num += 1) {
            reg_val = FIORead(0, (W4_REG_BASE + 0x8000 + 0xB0));
            VLOG(ERR, "DGB_BIT_CORE_INFO  [%08x] : core_pram_rd_en(0x%04x), core_pram_rd_addr(0x%04x) ", reg_val, reg_val >> 16, reg_val & 0xffff);
        }

        VLOG(ERR, "SAO_LUMA_OFFSET  [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0xB4)));
        VLOG(ERR, "SAO_CB_OFFSET  [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0xB8)));
        VLOG(ERR, "SAO_CR_OFFSET  [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0xBC)));

        VLOG(ERR, "GDI_NO_MORE_REQ    [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x8f0)));
        VLOG(ERR, "GDI_EMPTY_FLAG   [%08x] ", FIORead(0,(W4_REG_BASE + 0x8000 + 0x8f4)));

        // --------- VCE register Dump
        VLOG(ERR, "[+] VCE REG Dump\n");
        for (index = 0; index < 0xC4; index += 8) {
            VLOG(ERR, "VCE REG[0x%08x] -> 0x%08x \tVCE REG[0x%08x] -> 0x%08x  ", index, ReadRegVCE(0, 0, 0x0b00 + index), index + 4, ReadRegVCE(0, 0, 0x0b00 + index + 4));
        }
        WriteRegVCE(0, 0, 0x0bc8, 0);

        VLOG(ERR, "DEBUG----------- common ------------------------------- ");
        VLOG(ERR, "DEBUG1 REG[0x%08x] -> 0x%08x\n", 0xcc, ReadRegVCE(0, 0, 0x0bcc));
        VLOG(ERR, "DEBUG2 REG[0x%08x] -> 0x%08x\n", 0xd0, ReadRegVCE(0, 0, 0x0bd0));
        VLOG(ERR, "DEBUG----------- common ------------------------------- ");
        VLOG(ERR, "DEBUG----------- common ------------------------------- ");
        {
            reg_val = ReadRegVCE(0, 0, 0x0bcc);
        }
        VLOG(ERR, "DEBUG1 REG[0x%08x] -> 0x%08x ; SFU %d , LF %d , RDO %d IMD %d FME %d IME %d\n",
                0xcc, ReadRegVCE(0, 0, 0x0bcc),
                ((reg_val >> 5) & 0x1),
                ((reg_val >> 4) & 0x1),
                ((reg_val >> 3) & 0x1),
                ((reg_val >> 2) & 0x1),
                ((reg_val >> 1) & 0x1),
                ((reg_val >> 0) & 0x1));
        //VLOG(ERR,"DEBUG1 REG[0x%08x] -> 0x%08x\n", 0xcc, ReadRegVCE(0, 0, 0x0bcc));
        //VLOG(ERR,"DEBUG2 REG[0x%08x] -> 0x%08x\n", 0xd0, ReadRegVCE(0, 0, 0x0bd0));

        VLOG(ERR, "DEBUG----------- MODE 0 : DCI dequeue/queue counts ---------------------- ");
        WriteRegVCE(0, 0, 0x0bc8, 0); //mode 0 select
        VLOG(ERR, "DCI TUH  READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bd4) >> 16), (ReadRegVCE(0, 0, 0x0bd4) & 0xffff));
        VLOG(ERR, "DCI CU   READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bd8) >> 16), (ReadRegVCE(0, 0, 0x0bd8) & 0xffff));
        VLOG(ERR, "DCI CTU  READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bdc) >> 16), (ReadRegVCE(0, 0, 0x0bdc) & 0xffff));
        VLOG(ERR, "DCI COEF READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0be0) >> 16), (ReadRegVCE(0, 0, 0x0be0) & 0xffff));
        VLOG(ERR, "DCI Full/Empty Info : %08x  ", ReadRegVCE(0, 0, 0x0be4));
        VLOG(ERR, "MODE0 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0be8));
        VLOG(ERR, "MODE0 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0bec));

        VLOG(ERR, "DEBUG----------- MODE 1 ---RDO debug --------------------- ");
        WriteRegVCE(0, 0, 0x0bc8, 1); //mode 1 select
        VLOG(ERR, "RDO_DBG1 : %08x  ", ReadRegVCE(0, 0, 0x0bd4));
        VLOG(ERR, "RDO_DBG2 : %08x  ", ReadRegVCE(0, 0, 0x0bd8));
        VLOG(ERR, "RDO_DBG3 : %08x  ", ReadRegVCE(0, 0, 0x0bdc));
        VLOG(ERR, "RDO_DBG4 : %08x  ", ReadRegVCE(0, 0, 0x0be0));
        VLOG(ERR, "RDO_DBG5 : %08x  ", ReadRegVCE(0, 0, 0x0be4));
        VLOG(ERR, "RDO_DBG6 : %08x  ", ReadRegVCE(0, 0, 0x0be8));
        VLOG(ERR, "MODE1 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0bec));

        VLOG(ERR, "DEBUG----------- MODE 2 ---LF debug ---------------------------- ");
        WriteRegVCE(0, 0, 0x0bc8, 2); //mode 2 select
        reg_val = ReadRegVCE(0, 0, 0x0bd4);
        VLOG(ERR, "LF : %08x  ", reg_val);
        VLOG(ERR, "\t- cur_enc_main_state   : 0x%x  ", (reg_val >> 27) & 0x1F);
        VLOG(ERR, "\t- i_sao_para_valie     : 0x%x  ", (reg_val >> 26) & 0x1);
        VLOG(ERR, "\t- i_sao_fetch_done     : 0x%x  ", (reg_val >> 25) & 0x1);
        VLOG(ERR, "\t- i_global_encode_en   : 0x%x  ", (reg_val >> 24) & 0x1);
        VLOG(ERR, "\t- i_bs_valid           : 0x%x  ", (reg_val >> 23) & 0x1);
        VLOG(ERR, "\t- i_rec_buf_rdo_ready  : 0x%x  ", (reg_val >> 22) & 0x1);
        VLOG(ERR, "\t- o_rec_buf_dbk_hold   : 0x%x  ", (reg_val >> 21) & 0x1);
        VLOG(ERR, "\t- cur_main_state       : 0x%x  ", (reg_val >> 16) & 0x1F);
        VLOG(ERR, "\t- r_lf_pic_dbk_disable : 0x%x  ", (reg_val >> 15) & 0x1);
        VLOG(ERR, "\t- r_lf_pic_sao_disable : 0x%x  ", (reg_val >> 14) & 0x1);
        VLOG(ERR, "\t- para_load_done       : 0x%x  ", (reg_val >> 13) & 0x1);
        VLOG(ERR, "\t- i_rdma_ack_wait      : 0x%x  ", (reg_val >> 12) & 0x1);
        VLOG(ERR, "\t- i_sao_intl_col_done  : 0x%x  ", (reg_val >> 11) & 0x1);
        VLOG(ERR, "\t- i_sao_outbuf_full    : 0x%x  ", (reg_val >> 10) & 0x1);
        VLOG(ERR, "\t- lf_sub_done          : 0x%x  ", (reg_val >> 9) & 0x1);
        VLOG(ERR, "\t- i_wdma_ack_wait      : 0x%x  ", (reg_val >> 8) & 0x1);
        VLOG(ERR, "\t- lf_all_sub_done      : 0x%x  ", (reg_val >> 6) & 0x1);
        VLOG(ERR, "\t- cur_ycbcr            : 0x%x  ", (reg_val >> 5) & 0x3);
        VLOG(ERR, "\t- sub8x8_done          : 0x%x  ", (reg_val >> 0) & 0xF);
        VLOG(ERR, "MODE2 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0bd4));
        VLOG(ERR, "MODE2 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0bd8));
        VLOG(ERR, "MODE2 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0bdc));
        VLOG(ERR, "MODE2 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0be0));
        VLOG(ERR, "MODE2 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0be4));
        VLOG(ERR, "MODE2 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0be8));
        VLOG(ERR, "MODE2 RESERVED : %08x  ", ReadRegVCE(0, 0, 0x0bec));

        VLOG(ERR, "DEBUG----------- MODE 3 --------SFU-------------------- ");
        WriteRegVCE(0, 0, 0x0bc8, 3); //mode 3 select
        VLOG(ERR, "SFU 0 : %08x  ", (ReadRegVCE(0, 0, 0x0bd4)));
        VLOG(ERR, "SFU 1 : %08x  ", (ReadRegVCE(0, 0, 0x0bd8)));
        VLOG(ERR, "SFU 2 : %08x  ", (ReadRegVCE(0, 0, 0x0bdc)));
        VLOG(ERR, "SFU 3 : %08x  ", (ReadRegVCE(0, 0, 0x0be0)));

        VLOG(ERR, "DEBUG----------- MODE 4 --------DCI read/write cnt-------------------- ");
        WriteRegVCE(0, 0, 0x0bc8, 4);
        VLOG(ERR, "DCI TUH  READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bd4) >> 16), (ReadRegVCE(0, 0, 0x0bd4) & 0xffff));
        VLOG(ERR, "DCI CU   READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bd8) >> 16), (ReadRegVCE(0, 0, 0x0bd8) & 0xffff));
        VLOG(ERR, "DCI CTU  READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bdc) >> 16), (ReadRegVCE(0, 0, 0x0bdc) & 0xffff));
        VLOG(ERR, "DCI COEF READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0be0) >> 16), (ReadRegVCE(0, 0, 0x0be0) & 0xffff));

        VLOG(ERR, "DEBUG----------- MODE 5 --------DCI last read data-------------------- ");
        WriteRegVCE(0, 0, 0x0bc8, 5);
        VLOG(ERR, "DCI TUH    last read data : %08x  ", ReadRegVCE(0, 0, 0x0bd4));
        VLOG(ERR, "DCI CTU    last read data : %08x  ", ReadRegVCE(0, 0, 0x0bd8));
        VLOG(ERR, "DCI CU     last read data : %08x  ", ReadRegVCE(0, 0, 0x0bdc));
        VLOG(ERR, "DCI COEF_H last read data : %08x  ", ReadRegVCE(0, 0, 0x0be0));
        VLOG(ERR, "DCI COEF_L last read data : %08x  ", ReadRegVCE(0, 0, 0x0be4));
        VLOG(ERR, "DCI INFO 0               : %08x  ", ReadRegVCE(0, 0, 0x0be8));
        VLOG(ERR, "DCI INFO 1               : %08x  ", ReadRegVCE(0, 0, 0x0beC));

        VLOG(ERR, "DEBUG----------- MODE 6 --------DCI   Big buffer read/write cnt-------------------- ");
        WriteRegVCE(0, 0, 0x0bc8, 6);
        VLOG(ERR, "DCI TUH  READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bd4) >> 16), (ReadRegVCE(0, 0, 0x0bd4) & 0xffff));
        VLOG(ERR, "DCI CU   READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bd8) >> 16), (ReadRegVCE(0, 0, 0x0bd8) & 0xffff));
        VLOG(ERR, "DCI COEF READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bdc) >> 16), (ReadRegVCE(0, 0, 0x0bdc) & 0xffff));
        VLOG(ERR, "DEBUG----------- MODE 6 --------DCI Small buffer read/write cnt-------------------- ");
        VLOG(ERR, "DCI TUH  READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0be0) >> 16), (ReadRegVCE(0, 0, 0x0be0) & 0xffff));
        VLOG(ERR, "DCI CU   READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0be4) >> 16), (ReadRegVCE(0, 0, 0x0be4) & 0xffff));
        VLOG(ERR, "DCI CTU  READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0be8) >> 16), (ReadRegVCE(0, 0, 0x0be8) & 0xffff));
        VLOG(ERR, "DCI COEF READ: %08x, WRITE : %08x  ", (ReadRegVCE(0, 0, 0x0bec) >> 16), (ReadRegVCE(0, 0, 0x0bec) & 0xffff));

        VLOG(ERR, "DEBUG----------- MODE 7 --------DCI   Big buffer read/write address--------------------");
        WriteRegVCE(0, 0, 0x0bc8, 7);
        VLOG(ERR, "DCI TUH  READ: %08x, WRITE : %08x", (ReadRegVCE(0, 0, 0x0bd4) >> 16), (ReadRegVCE(0, 0, 0x0bd4) & 0xffff));
        VLOG(ERR, "DCI CU   READ: %08x, WRITE : %08x", (ReadRegVCE(0, 0, 0x0bd8) >> 16), (ReadRegVCE(0, 0, 0x0bd8) & 0xffff));
        VLOG(ERR, "DCI COEF READ: %08x, WRITE : %08x", (ReadRegVCE(0, 0, 0x0bdc) >> 16), (ReadRegVCE(0, 0, 0x0bdc) & 0xffff));
        VLOG(ERR, "DEBUG----------- MODE 7 --------DCI Small buffer read/write address--------------------");
        VLOG(ERR, "DCI TUH  READ: %08x, WRITE : %08x", (ReadRegVCE(0, 0, 0x0be0) >> 16), (ReadRegVCE(0, 0, 0x0be0) & 0xffff));
        VLOG(ERR, "DCI CU   READ: %08x, WRITE : %08x", (ReadRegVCE(0, 0, 0x0be4) >> 16), (ReadRegVCE(0, 0, 0x0be4) & 0xffff));
        VLOG(ERR, "DCI CTU  READ: %08x, WRITE : %08x", (ReadRegVCE(0, 0, 0x0be8) >> 16), (ReadRegVCE(0, 0, 0x0be8) & 0xffff));
        VLOG(ERR, "DCI COEF READ: %08x, WRITE : %08x", (ReadRegVCE(0, 0, 0x0bec) >> 16), (ReadRegVCE(0, 0, 0x0bec) & 0xffff));

        VLOG(ERR, "DEBUG----------- Others --------------------");
        VLOG(ERR, "DEBUG10 : %08x", (ReadRegVCE(0, 0, 0x0bf0)));
        VLOG(ERR, "DEBUG11 : %08x", (ReadRegVCE(0, 0, 0x0bf4)));
        VLOG(ERR, "DEBUG12 : %08x", (ReadRegVCE(0, 0, 0x0bf8)));
        VLOG(ERR, "-------------------------------------------------------------------------------");
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %edi, %ebx
leaq 0x293a2(%rip), %r14     # 0x2b9c5
movq %r14, %rdi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x293d8(%rip), %rdi     # 0x2ba16
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movq %r14, %rdi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %edi
movl $0x130, %esi            # imm = 0x130
callq 0x2200
movl %eax, %ebp
movl %ebx, %edi
movl $0x134, %esi            # imm = 0x134
callq 0x2200
movl %eax, %r14d
movl %ebx, %edi
movl $0x12c, %esi            # imm = 0x12C
callq 0x2200
movl %eax, %r15d
movl %ebx, %edi
movl $0x128, %esi            # imm = 0x128
callq 0x2200
leaq 0x293c5(%rip), %rdi     # 0x2ba67
movl %ebp, %esi
movl %r14d, %edx
movl %r15d, %ecx
movl %eax, %r8d
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x2a8ce(%rip), %rdi     # 0x2cf93
callq 0x2280
movl $0xa, %edi
callq 0x2220
leaq 0x293ea(%rip), %r14     # 0x2bac5
leaq 0x691e(%rip), %r15      # 0x9000
leaq 0x2940b(%rip), %r13     # 0x2baf4
leaq 0x29411(%rip), %rbp     # 0x2bb01
xorl %r12d, %r12d
leal 0x200(%r12), %edx
movl %ebx, %edi
movl $0x14, %esi
callq 0x2150
movl %ebx, %edi
movl $0x1c, %esi
callq 0x2200
cmpl $0xf, %r12d
ja 0x2744
movq %r14, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %r12d, %eax
notl %eax
testb $0x3, %al
jne 0x27a8
movl $0x20, %edi
callq 0x2220
jmp 0x279e
leal -0x10(%r12), %ecx
cmpl $0x8, %ecx
ja 0x27a8
movslq (%r15,%rcx,4), %rcx
addq %r15, %rcx
jmpq *%rcx
leaq 0x29348(%rip), %rdi     # 0x2baa6
jmp 0x2795
leaq 0x29380(%rip), %rdi     # 0x2bae7
jmp 0x2795
leaq 0x29343(%rip), %rdi     # 0x2bab3
jmp 0x2795
movq %r13, %rdi
jmp 0x2795
movq %rbp, %rdi
jmp 0x2795
leaq 0x2933d(%rip), %rdi     # 0x2bac0
jmp 0x2795
leaq 0x29341(%rip), %rdi     # 0x2bacd
jmp 0x2795
leaq 0x29345(%rip), %rdi     # 0x2bada
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
incl %r12d
cmpl $0x19, %r12d
jne 0x26f3
leaq 0x2a7e9(%rip), %rdi     # 0x2cfa5
callq 0x2280
movl $0xa, %edi
callq 0x2220
movl %ebx, %edi
movl $0x1e8, %esi            # imm = 0x1E8
callq 0x2200
leaq 0x29330(%rip), %rdi     # 0x2bb0e
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x2a7bf(%rip), %rdi     # 0x2cfb7
callq 0x2280
movl $0xa, %edi
callq 0x2220
movl $0x1e, %r15d
leaq 0x2930d(%rip), %r14     # 0x2bb21
movl %ebx, %edi
movl $0x8018, %esi           # imm = 0x8018
callq 0x2030
movl %eax, %ebp
movq %r14, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
cmpl $-0x1, %ebp
je 0x29a2
decl %r15d
jne 0x2814
leaq 0x2a77b(%rip), %rdi     # 0x2cfc8
callq 0x2280
movl $0xa, %edi
callq 0x2220
movl %ebx, %edi
movl $0x806c, %esi           # imm = 0x806C
callq 0x2030
leaq 0x292c2(%rip), %rdi     # 0x2bb31
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x11013c, %edx         # imm = 0x11013C
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2893
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
movl %eax, %ebx
leaq 0x29292(%rip), %rdi     # 0x2bb4a
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl $0x1c, %esi
andl $0x1, %esi
leaq 0x29289(%rip), %rdi     # 0x2bb63
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl $0x19, %esi
andl $0x7, %esi
leaq 0x2928f(%rip), %rdi     # 0x2bb89
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl $0x12, %esi
andl $0x7f, %esi
leaq 0x29295(%rip), %rdi     # 0x2bbaf
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl $0xd, %esi
andl $0x1f, %esi
leaq 0x2929b(%rip), %rdi     # 0x2bbd5
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl $0xa, %esi
andl $0x1f, %esi
leaq 0x292a1(%rip), %rdi     # 0x2bbfb
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %ebp
shrl $0x7, %ebp
andl $0x7, %ebp
leaq 0x292a7(%rip), %rdi     # 0x2bc21
movl %ebp, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
cmpl $0x3, %ebp
jne 0x29b1
leaq 0x292ad(%rip), %rdi     # 0x2bc46
xorl %eax, %eax
callq 0x2050
jmp 0x29bb
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x20, %edi
callq 0x2220
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl $0x5, %esi
andl $0x3, %esi
leaq 0x29287(%rip), %rdi     # 0x2bc5b
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl %esi
andl $0xf, %esi
leaq 0x2928e(%rip), %rdi     # 0x2bc81
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
andl $0x1, %ebx
leaq 0x29299(%rip), %rdi     # 0x2bca7
movl %ebx, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x11013b, %edx         # imm = 0x11013B
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2a32
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
movl %eax, %ebx
leaq 0x29276(%rip), %rdi     # 0x2bccd
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl %esi
andl $0x3f, %esi
leaq 0x2926e(%rip), %rdi     # 0x2bce6
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
andl $0x1, %ebx
leaq 0x2927a(%rip), %rdi     # 0x2bd0d
movl %ebx, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110131, %edx         # imm = 0x110131
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2ab7
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
movl %eax, %edx
shrl %edx
andl $0x1, %edx
movl %eax, %ecx
andl $0x1, %ecx
leaq 0x2924e(%rip), %rdi     # 0x2bd34
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110134, %edx         # imm = 0x110134
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2b0a
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x29249(%rip), %rdi     # 0x2bd76
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110135, %edx         # imm = 0x110135
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2b51
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x2921c(%rip), %rdi     # 0x2bd90
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110136, %edx         # imm = 0x110136
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2b98
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x291ef(%rip), %rdi     # 0x2bdaa
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110137, %edx         # imm = 0x110137
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2bdf
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x291c2(%rip), %rdi     # 0x2bdc4
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x11013a, %edx         # imm = 0x11013A
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2c26
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x29194(%rip), %rdi     # 0x2bddd
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110139, %edx         # imm = 0x110139
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2c6d
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
movl %eax, %ebx
leaq 0x29164(%rip), %rdi     # 0x2bdf6
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl $0x2, %esi
andl $0x1, %esi
leaq 0x2915b(%rip), %rdi     # 0x2be0f
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl %esi
andl $0x1, %esi
leaq 0x2915b(%rip), %rdi     # 0x2be2e
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
andl $0x1, %ebx
leaq 0x2915f(%rip), %rdi     # 0x2be4d
movl %ebx, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110164, %edx         # imm = 0x110164
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2d12
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x29137(%rip), %rdi     # 0x2be6c
movl %eax, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110169, %edx         # imm = 0x110169
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2d5b
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x29120(%rip), %rdi     # 0x2be9e
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x11016a, %edx         # imm = 0x11016A
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2da2
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x290f2(%rip), %rdi     # 0x2beb7
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x11016c, %edx         # imm = 0x11016C
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2de9
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
movl %eax, %ebx
leaq 0x290c2(%rip), %rdi     # 0x2bed0
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebx, %esi
shrl %esi
andl $0x1f, %esi
leaq 0x290ba(%rip), %rdi     # 0x2bee9
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
andl $0x1, %ebx
leaq 0x290c2(%rip), %rdi     # 0x2bf0c
movl %ebx, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110184, %edx         # imm = 0x110184
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2e6e
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x2909e(%rip), %rdi     # 0x2bf2f
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110187, %edx         # imm = 0x110187
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2eb5
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x29070(%rip), %rdi     # 0x2bf48
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110110, %edx         # imm = 0x110110
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2efc
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x29042(%rip), %rdi     # 0x2bf61
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110111, %edx         # imm = 0x110111
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2f43
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x29014(%rip), %rdi     # 0x2bf7a
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110113, %edx         # imm = 0x110113
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2f8a
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x28fe6(%rip), %rdi     # 0x2bf93
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8074, %esi           # imm = 0x8074
movl $0x110114, %edx         # imm = 0x110114
callq 0x2070
xorl %edi, %edi
movl $0x807c, %esi           # imm = 0x807C
callq 0x2030
testb $0x1, %al
je 0x2fd1
xorl %edi, %edi
movl $0x8078, %esi           # imm = 0x8078
callq 0x2030
leaq 0x28fb6(%rip), %rdi     # 0x2bfaa
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8040, %esi           # imm = 0x8040
callq 0x2030
leaq 0x28fa5(%rip), %rdi     # 0x2bfbf
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8044, %esi           # imm = 0x8044
callq 0x2030
leaq 0x28f9a(%rip), %rdi     # 0x2bfda
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8048, %esi           # imm = 0x8048
callq 0x2030
leaq 0x28f8f(%rip), %rdi     # 0x2bff5
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x804c, %esi           # imm = 0x804C
callq 0x2030
leaq 0x28f82(%rip), %rdi     # 0x2c00e
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8050, %esi           # imm = 0x8050
callq 0x2030
leaq 0x28f75(%rip), %rdi     # 0x2c027
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8068, %esi           # imm = 0x8068
callq 0x2030
leaq 0x28f6a(%rip), %rdi     # 0x2c042
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x806c, %esi           # imm = 0x806C
callq 0x2030
leaq 0x28a33(%rip), %rdi     # 0x2bb31
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8054, %esi           # imm = 0x8054
callq 0x2030
leaq 0x28f37(%rip), %rdi     # 0x2c05b
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x8058, %esi           # imm = 0x8058
callq 0x2030
leaq 0x28f2c(%rip), %rdi     # 0x2c076
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x805c, %esi           # imm = 0x805C
callq 0x2030
leaq 0x28f21(%rip), %rdi     # 0x2c091
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl $0x8080, %r15d          # imm = 0x8080
movl $0x1, %ebx
leaq 0x28f17(%rip), %r14     # 0x2c0ac
xorl %edi, %edi
movl %r15d, %esi
callq 0x2030
leal -0x1(%rbx), %edx
movl %eax, %ecx
shrl $0x10, %ecx
movzwl %ax, %r9d
movq %r14, %rdi
movl %eax, %esi
movl %ebx, %r8d
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leal 0x4(%r15), %eax
addl $0xffff8000, %r15d      # imm = 0xFFFF8000
addl $0x2, %ebx
cmpl $0x9c, %r15d
movl %eax, %r15d
jb 0x3195
xorl %edi, %edi
movl $0x80a0, %esi           # imm = 0x80A0
callq 0x2030
movl %eax, %edx
shrl $0x10, %edx
movl $0xffff, %ebx           # imm = 0xFFFF
movl %eax, %ecx
andl %ebx, %ecx
leaq 0x28eef(%rip), %rdi     # 0x2c0ee
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x80a4, %esi           # imm = 0x80A4
callq 0x2030
leaq 0x28f0e(%rip), %rdi     # 0x2c133
movl %eax, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x80a8, %esi           # imm = 0x80A8
callq 0x2030
leaq 0x28f11(%rip), %rdi     # 0x2c15e
movl %eax, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x80ac, %esi           # imm = 0x80AC
callq 0x2030
movl %eax, %edx
shrl $0x10, %edx
andl %eax, %ebx
leaq 0x28f0d(%rip), %rdi     # 0x2c189
movl %eax, %esi
movl %ebx, %ecx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl $0x5, %ebp
leaq 0x28f34(%rip), %rbx     # 0x2c1d1
xorl %edi, %edi
movl $0x80b0, %esi           # imm = 0x80B0
callq 0x2030
movl %eax, %edx
shrl $0x10, %edx
movzwl %ax, %ecx
movq %rbx, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
decl %ebp
jne 0x329d
xorl %edi, %edi
movl $0x80b4, %esi           # imm = 0x80B4
callq 0x2030
leaq 0x28f43(%rip), %rdi     # 0x2c221
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x80b8, %esi           # imm = 0x80B8
callq 0x2030
leaq 0x28f36(%rip), %rdi     # 0x2c23a
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x80bc, %esi           # imm = 0x80BC
callq 0x2030
leaq 0x28f27(%rip), %rdi     # 0x2c251
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x88f0, %esi           # imm = 0x88F0
callq 0x2030
leaq 0x28f18(%rip), %rdi     # 0x2c268
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
movl $0x88f4, %esi           # imm = 0x88F4
callq 0x2030
leaq 0x28f0d(%rip), %rdi     # 0x2c283
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x29c49(%rip), %rdi     # 0x2cfd9
callq 0x2280
movl $0xa, %edi
callq 0x2220
movl $0xfffffff8, %r14d      # imm = 0xFFFFFFF8
leaq 0x28ef0(%rip), %rbx     # 0x2c29c
leal 0x8(%r14), %ebp
leal 0xb08(%r14), %edx
xorl %edi, %edi
xorl %esi, %esi
callq 0x20a0
movl %eax, %r15d
leal 0xc(%r14), %r12d
addl $0xb0c, %r14d           # imm = 0xB0C
xorl %edi, %edi
xorl %esi, %esi
movl %r14d, %edx
callq 0x20a0
movq %rbx, %rdi
movl %ebp, %esi
movl %r15d, %edx
movl %r12d, %ecx
movl %eax, %r8d
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %r14d
cmpl $0xbc, %ebp
jb 0x33ac
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
xorl %ecx, %ecx
callq 0x2300
leaq 0x28eb8(%rip), %rbx     # 0x2c2d3
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbcc, %edx            # imm = 0xBCC
callq 0x20a0
leaq 0x28ec8(%rip), %rdi     # 0x2c30c
movl $0xcc, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd0, %edx            # imm = 0xBD0
callq 0x20a0
leaq 0x28eb9(%rip), %rdi     # 0x2c32a
movl $0xd0, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbcc, %edx            # imm = 0xBCC
callq 0x20a0
movl %eax, %ebx
xorl %edi, %edi
xorl %esi, %esi
movl $0xbcc, %edx            # imm = 0xBCC
callq 0x20a0
movl %ebx, %ecx
shrl $0x5, %ecx
andl $0x1, %ecx
movl %ebx, %r8d
shrl $0x4, %r8d
andl $0x1, %r8d
movl %ebx, %r9d
shrl $0x3, %r9d
andl $0x1, %r9d
movl %ebx, %r10d
shrl $0x2, %r10d
andl $0x1, %r10d
movl %ebx, %r11d
shrl %r11d
andl $0x1, %r11d
andl $0x1, %ebx
subq $0x8, %rsp
leaq 0x28e38(%rip), %rdi     # 0x2c348
movl $0xcc, %esi
movl %eax, %edx
xorl %eax, %eax
pushq %rbx
pushq %r11
pushq %r10
callq 0x2050
addq $0x20, %rsp
movl $0xa, %edi
callq 0x2220
leaq 0x28e5d(%rip), %rdi     # 0x2c395
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
xorl %ecx, %ecx
callq 0x2300
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
movl $0xffff, %ebx           # imm = 0xFFFF
andl %ebx, %eax
leaq 0x28e58(%rip), %r14     # 0x2c3e0
movq %r14, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
andl %ebx, %eax
leaq 0x28e3a(%rip), %r15     # 0x2c404
movq %r15, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
andl %ebx, %eax
leaq 0x28e1c(%rip), %r12     # 0x2c428
movq %r12, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
andl %ebx, %eax
leaq 0x28dfe(%rip), %r13     # 0x2c44c
movq %r13, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe4, %edx            # imm = 0xBE4
callq 0x20a0
leaq 0x28df5(%rip), %rdi     # 0x2c470
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe8, %edx            # imm = 0xBE8
callq 0x20a0
leaq 0x28dea(%rip), %rbp     # 0x2c48d
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbec, %edx            # imm = 0xBEC
callq 0x20a0
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28dc1(%rip), %rdi     # 0x2c4a5
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
movl $0x1, %ecx
callq 0x2300
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
leaq 0x28dc4(%rip), %rdi     # 0x2c4e1
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
leaq 0x28dae(%rip), %rdi     # 0x2c4f3
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
leaq 0x28d98(%rip), %rdi     # 0x2c505
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
leaq 0x28d82(%rip), %rdi     # 0x2c517
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe4, %edx            # imm = 0xBE4
callq 0x20a0
leaq 0x28d6c(%rip), %rdi     # 0x2c529
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe8, %edx            # imm = 0xBE8
callq 0x20a0
leaq 0x28d56(%rip), %rdi     # 0x2c53b
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbec, %edx            # imm = 0xBEC
callq 0x20a0
leaq 0x28d40(%rip), %rdi     # 0x2c54d
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28d3e(%rip), %rdi     # 0x2c565
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
movl $0x2, %ecx
callq 0x2300
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
movl %eax, %ebp
leaq 0x28d45(%rip), %rdi     # 0x2c5a7
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x1b, %esi
leaq 0x28d32(%rip), %rdi     # 0x2c5b3
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x1a, %esi
andl $0x1, %esi
leaq 0x28d33(%rip), %rdi     # 0x2c5d4
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x19, %esi
andl $0x1, %esi
leaq 0x28d34(%rip), %rdi     # 0x2c5f5
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x18, %esi
andl $0x1, %esi
leaq 0x28d35(%rip), %rdi     # 0x2c616
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x17, %esi
andl $0x1, %esi
leaq 0x28d36(%rip), %rdi     # 0x2c637
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x16, %esi
andl $0x1, %esi
leaq 0x28d37(%rip), %rdi     # 0x2c658
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x15, %esi
andl $0x1, %esi
leaq 0x28d38(%rip), %rdi     # 0x2c679
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x10, %esi
andl $0x1f, %esi
leaq 0x28d39(%rip), %rdi     # 0x2c69a
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0xf, %esi
andl $0x1, %esi
leaq 0x28d3a(%rip), %rdi     # 0x2c6bb
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0xe, %esi
andl $0x1, %esi
leaq 0x28d3b(%rip), %rdi     # 0x2c6dc
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0xd, %esi
andl $0x1, %esi
leaq 0x28d3c(%rip), %rdi     # 0x2c6fd
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0xc, %esi
andl $0x1, %esi
leaq 0x28d3d(%rip), %rdi     # 0x2c71e
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0xb, %esi
andl $0x1, %esi
leaq 0x28d3e(%rip), %rdi     # 0x2c73f
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0xa, %esi
andl $0x1, %esi
leaq 0x28d3f(%rip), %rdi     # 0x2c760
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x9, %esi
andl $0x1, %esi
leaq 0x28d40(%rip), %rdi     # 0x2c781
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x8, %esi
andl $0x1, %esi
leaq 0x28d41(%rip), %rdi     # 0x2c7a2
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x6, %esi
andl $0x1, %esi
leaq 0x28d42(%rip), %rdi     # 0x2c7c3
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
movl %ebp, %esi
shrl $0x5, %esi
andl $0x3, %esi
leaq 0x28d43(%rip), %rdi     # 0x2c7e4
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
andl $0xf, %ebp
leaq 0x28d49(%rip), %rdi     # 0x2c805
movl %ebp, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
leaq 0x28d42(%rip), %rbp     # 0x2c826
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe4, %edx            # imm = 0xBE4
callq 0x20a0
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe8, %edx            # imm = 0xBE8
callq 0x20a0
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbec, %edx            # imm = 0xBEC
callq 0x20a0
movq %rbp, %rdi
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28c65(%rip), %rdi     # 0x2c83e
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
movl $0x3, %ecx
callq 0x2300
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
leaq 0x28c65(%rip), %rdi     # 0x2c877
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
leaq 0x28c4c(%rip), %rdi     # 0x2c886
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
leaq 0x28c33(%rip), %rdi     # 0x2c895
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
leaq 0x28c1a(%rip), %rdi     # 0x2c8a4
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28c0f(%rip), %rdi     # 0x2c8b3
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
movl $0x4, %ecx
callq 0x2300
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
andl %ebx, %eax
movq %r14, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
andl %ebx, %eax
movq %r15, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
andl %ebx, %eax
movq %r12, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
andl %ebx, %eax
movq %r13, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28b40(%rip), %rdi     # 0x2c8fb
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
movl $0x5, %ecx
callq 0x2300
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
leaq 0x28b4f(%rip), %rdi     # 0x2c943
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
leaq 0x28b4a(%rip), %rdi     # 0x2c966
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
leaq 0x28b45(%rip), %rdi     # 0x2c989
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
leaq 0x28b40(%rip), %rdi     # 0x2c9ac
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe4, %edx            # imm = 0xBE4
callq 0x20a0
leaq 0x28b3b(%rip), %rdi     # 0x2c9cf
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe8, %edx            # imm = 0xBE8
callq 0x20a0
leaq 0x28b36(%rip), %rdi     # 0x2c9f2
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbec, %edx            # imm = 0xBEC
callq 0x20a0
leaq 0x28b30(%rip), %rdi     # 0x2ca14
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28b38(%rip), %rdi     # 0x2ca36
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
movl $0x6, %ecx
callq 0x2300
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
andl %ebx, %eax
movq %r14, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
andl %ebx, %eax
movq %r15, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
andl %ebx, %eax
movq %r13, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28ab1(%rip), %rdi     # 0x2ca8b
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
andl %ebx, %eax
movq %r14, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe4, %edx            # imm = 0xBE4
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe4, %edx            # imm = 0xBE4
callq 0x20a0
andl %ebx, %eax
movq %r15, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe8, %edx            # imm = 0xBE8
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe8, %edx            # imm = 0xBE8
callq 0x20a0
andl %ebx, %eax
movq %r12, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbec, %edx            # imm = 0xBEC
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbec, %edx            # imm = 0xBEC
callq 0x20a0
andl %ebx, %eax
movq %r13, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28a02(%rip), %rdi     # 0x2cae0
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbc8, %edx            # imm = 0xBC8
movl $0x7, %ecx
callq 0x2300
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd4, %edx            # imm = 0xBD4
callq 0x20a0
andl %ebx, %eax
leaq 0x28a0c(%rip), %r15     # 0x2cb38
movq %r15, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbd8, %edx            # imm = 0xBD8
callq 0x20a0
andl %ebx, %eax
leaq 0x289ec(%rip), %r12     # 0x2cb5a
movq %r12, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbdc, %edx            # imm = 0xBDC
callq 0x20a0
andl %ebx, %eax
leaq 0x289cc(%rip), %r14     # 0x2cb7c
movq %r14, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x289cf(%rip), %rdi     # 0x2cb9e
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe0, %edx            # imm = 0xBE0
callq 0x20a0
andl %ebx, %eax
movq %r15, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe4, %edx            # imm = 0xBE4
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe4, %edx            # imm = 0xBE4
callq 0x20a0
andl %ebx, %eax
movq %r12, %rdi
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe8, %edx            # imm = 0xBE8
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbe8, %edx            # imm = 0xBE8
callq 0x20a0
andl %ebx, %eax
leaq 0x28976(%rip), %rdi     # 0x2cbf6
movl %ebp, %esi
movl %eax, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbec, %edx            # imm = 0xBEC
callq 0x20a0
movl %eax, %ebp
shrl $0x10, %ebp
xorl %edi, %edi
xorl %esi, %esi
movl $0xbec, %edx            # imm = 0xBEC
callq 0x20a0
andl %eax, %ebx
movq %r14, %rdi
movl %ebp, %esi
movl %ebx, %edx
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x28941(%rip), %rdi     # 0x2cc18
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbf0, %edx            # imm = 0xBF0
callq 0x20a0
leaq 0x28948(%rip), %rdi     # 0x2cc45
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbf4, %edx            # imm = 0xBF4
callq 0x20a0
leaq 0x2892f(%rip), %rdi     # 0x2cc54
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
xorl %edi, %edi
xorl %esi, %esi
movl $0xbf8, %edx            # imm = 0xBF8
callq 0x20a0
leaq 0x28916(%rip), %rdi     # 0x2cc63
movl %eax, %esi
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
callq 0x2220
leaq 0x2890b(%rip), %rdi     # 0x2cc72
xorl %eax, %eax
callq 0x2050
movl $0xa, %edi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2220