亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? aes_via_ace.h

?? 一個用vc編寫的aes算法實現
?? H
?? 第 1 頁 / 共 2 頁
字號:
        mov     esi, eax
        mov     edi, (w)
        movsd
        movsd
        movsd
        movsd
    }
}

__inline volatile  void via_cfb_op6(
            const void *k, const void *c, const void *s, void *d, int l, void *v)
{   __asm
    {
        NEH_REKEY
        mov     ebx, (k)
        mov     edx, (c)
        mov     esi, (s)
        mov     edi, (d)
        mov     ecx, (l)
        mov     eax, (v)
        NEH_CFB
    }
}

__inline volatile  void via_cfb_op7(
        const void *k, const void *c, const void *s, void *d, int l, void *v, void *w)
{   __asm
    {
        NEH_REKEY
        mov     ebx, (k)
        mov     edx, (c)
        mov     esi, (s)
        mov     edi, (d)
        mov     ecx, (l)
        mov     eax, (v)
        NEH_CFB
        mov     esi, eax
        mov     edi, (w)
        movsd
        movsd
        movsd
        movsd
    }
}

__inline volatile  void via_ofb_op6(
            const void *k, const void *c, const void *s, void *d, int l, void *v)
{   __asm
    {
        NEH_REKEY
        mov     ebx, (k)
        mov     edx, (c)
        mov     esi, (s)
        mov     edi, (d)
        mov     ecx, (l)
        mov     eax, (v)
        NEH_OFB
    }
}

#elif defined( __GNUC__ )

#define NEH_REKEY   asm("pushfl\n popfl\n\t")
#define NEH_ECB     asm(".byte 0xf3, 0x0f, 0xa7, 0xc8\n\t")
#define NEH_CBC     asm(".byte 0xf3, 0x0f, 0xa7, 0xd0\n\t")
#define NEH_CFB     asm(".byte 0xf3, 0x0f, 0xa7, 0xe0\n\t")
#define NEH_OFB     asm(".byte 0xf3, 0x0f, 0xa7, 0xe8\n\t")
#define NEH_RNG     asm(".byte 0x0f, 0xa7, 0xc0\n\t");

__inline int has_cpuid(void)
{   int val;
    asm("pushfl\n\t");
    asm("movl  0(%esp),%eax\n\t");
    asm("xor   $0x00200000,%eax\n\t");
    asm("pushl %eax\n\t");
    asm("popfl\n\t");
    asm("pushfl\n\t");
    asm("popl  %eax\n\t");
    asm("xorl  0(%esp),%edx\n\t");
    asm("andl  $0x00200000,%eax\n\t");
    asm("movl  %%eax,%0\n\t" : "=m" (val));
    asm("popfl\n\t");
    return val ? 1 : 0;
}

__inline int is_via_cpu(void)
{   int val;
    asm("xorl %eax,%eax\n\t");
    asm("cpuid\n\t");
    asm("xorl %eax,%eax\n\t");
    asm("subl $0x746e6543,%ebx\n\t");
    asm("orl  %ebx,%eax\n\t");
    asm("subl $0x48727561,%edx\n\t");
    asm("orl  %edx,%eax\n\t");
    asm("subl $0x736c7561,%ecx\n\t");
    asm("orl  %ecx,%eax\n\t");
    asm("movl %%eax,%0\n\t" : "=m" (val));
    val = (val ? 0 : 1);
    via_flags = (val | NEH_CPU_READ);
    return val;
}

__inline int read_via_flags(void)
{   unsigned char   val;
    asm("movl $0xc0000000,%eax\n\t");
    asm("cpuid\n\t");
    asm("movl $0xc0000001,%edx\n\t");
    asm("cmpl %edx,%eax\n\t");
    asm("setae %al\n\t");
    asm("movb %%al,%0\n\t" : "=m" (val));
    if(!val) return 0;
    asm("movl $0xc0000001,%eax\n\t");
    asm("cpuid\n\t");
    asm("movb %%dl,%0\n\t" : "=m" (val));
    val &= NEH_FLAGS_MASK;
    via_flags |= val;
    return (int) val;
}

__inline int via_rng_in(void *buf)
{   int val;
    asm("pushl %edi\n\t");
    asm("movl %0,%%edi\n\t" : : "m" (buf));
    asm("xorl %edx,%edx\n\t");
    NEH_RNG
    asm("andl $0x0000001f,%eax\n\t");
    asm("movl %%eax,%0\n\t" : "=m" (val));
    asm("popl %edi\n\t");
    return val;
}

__inline volatile  void via_ecb_op5(
            const void *k, const void *c, const void *s, void *d, int l)
{
    NEH_REKEY;
    asm("movl %0, %%ebx\n\t" : : "m" (k));
    asm("movl %0, %%edx\n\t" : : "m" (c));
    asm("movl %0, %%esi\n\t" : : "m" (s));
    asm("movl %0, %%edi\n\t" : : "m" (d));
    asm("movl %0, %%ecx\n\t" : : "m" (l));
    NEH_ECB;
}

__inline volatile  void via_cbc_op6(
            const void *k, const void *c, const void *s, void *d, int l, void *v)
{
    NEH_REKEY;
    asm("movl %0, %%ebx\n\t" : : "m" (k));
    asm("movl %0, %%edx\n\t" : : "m" (c));
    asm("movl %0, %%esi\n\t" : : "m" (s));
    asm("movl %0, %%edi\n\t" : : "m" (d));
    asm("movl %0, %%ecx\n\t" : : "m" (l));
    asm("movl %0, %%eax\n\t" : : "m" (v));
    NEH_CBC;
}

__inline volatile  void via_cbc_op7(
        const void *k, const void *c, const void *s, void *d, int l, void *v, void *w)
{
    NEH_REKEY;
    asm("movl %0, %%ebx\n\t" : : "m" (k));
    asm("movl %0, %%edx\n\t" : : "m" (c));
    asm("movl %0, %%esi\n\t" : : "m" (s));
    asm("movl %0, %%edi\n\t" : : "m" (d));
    asm("movl %0, %%ecx\n\t" : : "m" (l));
    asm("movl %0, %%eax\n\t" : : "m" (v));
    NEH_CBC;
    asm("movl %eax,%esi\n\t");
    asm("movl %0, %%edi\n\t" : : "m" (w));
    asm("movsl; movsl; movsl; movsl\n\t");
}

__inline volatile  void via_cfb_op6(
            const void *k, const void *c, const void *s, void *d, int l, void *v)
{
    NEH_REKEY;
    asm("movl %0, %%ebx\n\t" : : "m" (k));
    asm("movl %0, %%edx\n\t" : : "m" (c));
    asm("movl %0, %%esi\n\t" : : "m" (s));
    asm("movl %0, %%edi\n\t" : : "m" (d));
    asm("movl %0, %%ecx\n\t" : : "m" (l));
    asm("movl %0, %%eax\n\t" : : "m" (v));
    NEH_CFB;
}

__inline volatile  void via_cfb_op7(
        const void *k, const void *c, const void *s, void *d, int l, void *v, void *w)
{
    NEH_REKEY;
    asm("movl %0, %%ebx\n\t" : : "m" (k));
    asm("movl %0, %%edx\n\t" : : "m" (c));
    asm("movl %0, %%esi\n\t" : : "m" (s));
    asm("movl %0, %%edi\n\t" : : "m" (d));
    asm("movl %0, %%ecx\n\t" : : "m" (l));
    asm("movl %0, %%eax\n\t" : : "m" (v));
    NEH_CFB;
    asm("movl %eax,%esi\n\t");
    asm("movl %0, %%edi\n\t" : : "m" (w));
    asm("movsl; movsl; movsl; movsl\n\t");
}

__inline volatile  void via_ofb_op6(
            const void *k, const void *c, const void *s, void *d, int l, void *v)
{
    NEH_REKEY;
    asm("movl %0, %%ebx\n\t" : : "m" (k));
    asm("movl %0, %%edx\n\t" : : "m" (c));
    asm("movl %0, %%esi\n\t" : : "m" (s));
    asm("movl %0, %%edi\n\t" : : "m" (d));
    asm("movl %0, %%ecx\n\t" : : "m" (l));
    asm("movl %0, %%eax\n\t" : : "m" (v));
    NEH_OFB;
}

#else
#error VIA ACE is not available with this compiler
#endif

__inline int via_ace_test(void)
{
    return has_cpuid() && is_via_cpu() && ((read_via_flags() & NEH_ACE_FLAGS) == NEH_ACE_FLAGS);
}

#define VIA_ACE_AVAILABLE   (((via_flags & NEH_ACE_FLAGS) == NEH_ACE_FLAGS)         \
    || (via_flags & NEH_CPU_READ) && (via_flags & NEH_CPU_IS_VIA) || via_ace_test())

__inline int via_rng_test(void)
{
    return has_cpuid() && is_via_cpu() && ((read_via_flags() & NEH_RNG_FLAGS) == NEH_RNG_FLAGS);
}

#define VIA_RNG_AVAILABLE   (((via_flags & NEH_RNG_FLAGS) == NEH_RNG_FLAGS)         \
    || (via_flags & NEH_CPU_READ) && (via_flags & NEH_CPU_IS_VIA) || via_rng_test())

__inline int read_via_rng(void *buf, int count)
{   int nbr, max_reads, lcnt = count;
    unsigned char *p, *q;
    aligned_auto(unsigned char, bp, 64, 16);

    if(!VIA_RNG_AVAILABLE)
        return 0;

    do
    {
        max_reads = MAX_READ_ATTEMPTS;
        do
            nbr = via_rng_in(bp);
        while
            (nbr == 0 && --max_reads);

        lcnt -= nbr;
        p = (unsigned char*)buf; q = bp;
        while(nbr--)
            *p++ = *q++;
    }
    while
        (lcnt && max_reads);

    return count - lcnt;
}

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产污网站| 婷婷一区二区三区| 亚洲v精品v日韩v欧美v专区| 久久精品久久综合| 91小视频在线观看| 国产午夜久久久久| 久久激五月天综合精品| 在线欧美小视频| 国产精品久久久久久久蜜臀| 久久精品久久综合| 777a∨成人精品桃花网| 亚洲黄色av一区| av在线免费不卡| 国产无遮挡一区二区三区毛片日本| 亚洲成人自拍偷拍| 欧美羞羞免费网站| 亚洲日穴在线视频| 波多野结衣视频一区| 亚洲精品一区二区三区精华液 | 91麻豆精东视频| 国产日韩欧美精品综合| 国产在线日韩欧美| 欧美一区二区三区视频在线 | 亚洲精品国产成人久久av盗摄| 国产成人一级电影| 国产亚洲短视频| 国产麻豆视频精品| 亚洲精品在线观| 激情综合一区二区三区| 精品入口麻豆88视频| 日一区二区三区| 91精品在线一区二区| 亚洲va欧美va人人爽午夜| 欧美午夜一区二区| 午夜精品久久久久久久久久 | 一本色道久久综合狠狠躁的推荐 | 欧美一区二区三区在线观看| 午夜影院在线观看欧美| 欧美日韩一区二区三区视频| 亚州成人在线电影| 日韩欧美的一区| 国产老妇另类xxxxx| 欧美国产成人在线| 色综合视频在线观看| 亚洲国产日韩精品| 日韩一级免费观看| 国产乱码精品1区2区3区| 国产精品你懂的在线| 91网站在线播放| 亚洲电影在线免费观看| 91精品国产高清一区二区三区蜜臀 | 久久久久久99久久久精品网站| 国产精品12区| 亚洲精品日韩综合观看成人91| 欧美亚洲另类激情小说| 日本不卡一二三| 欧美国产精品中文字幕| 欧美在线你懂的| 看电影不卡的网站| 1024精品合集| 欧美美女黄视频| 国产成人午夜高潮毛片| 一区二区日韩av| 日韩精品一区二区三区老鸭窝| 成人高清视频在线观看| 亚洲成人av一区二区三区| 欧美精品一区二区三区一线天视频| 国产成人亚洲综合a∨婷婷图片| 一区二区三区成人| 久久综合色之久久综合| 色中色一区二区| 国产一级精品在线| 亚洲一二三区视频在线观看| 久久久久国产精品人| 在线精品国精品国产尤物884a| 激情久久五月天| 一区二区三区在线观看国产 | 中文在线一区二区| 日韩一二三四区| 色婷婷综合久久久久中文一区二区| 麻豆传媒一区二区三区| 亚洲精品乱码久久久久久黑人| 337p粉嫩大胆色噜噜噜噜亚洲 | 日韩欧美一区在线| 91免费观看在线| 国产最新精品精品你懂的| 亚洲电影视频在线| 亚洲人午夜精品天堂一二香蕉| 精品成人在线观看| 欧美精品成人一区二区三区四区| 精品欧美一区二区久久| 粉嫩一区二区三区在线看| 亚洲欧美激情插| 国产无人区一区二区三区| 欧美日韩精品久久久| av在线播放不卡| 国产二区国产一区在线观看| 日本中文字幕一区二区视频| 亚洲一区成人在线| 日韩美女精品在线| 国产精品美女久久久久av爽李琼| 日韩三级免费观看| 欧美人妇做爰xxxⅹ性高电影 | 韩国女主播成人在线观看| 亚洲国产精品人人做人人爽| 中文字幕在线一区| 国产亚洲午夜高清国产拍精品| 日韩天堂在线观看| 制服丝袜在线91| 精品国产髙清在线看国产毛片| 欧美激情一二三区| 99久久夜色精品国产网站| 欧美一区二区福利视频| 欧美日韩一区二区在线观看视频| 欧美亚洲综合另类| 欧美军同video69gay| 欧美日韩精品一区二区在线播放| 色www精品视频在线观看| 色综合天天天天做夜夜夜夜做| www.爱久久.com| 色综合久久中文综合久久97| 色婷婷一区二区三区四区| 不卡欧美aaaaa| 91麻豆福利精品推荐| 91黄色激情网站| 欧美日韩在线一区二区| 欧美少妇一区二区| 日韩女优毛片在线| 亚洲国产精品传媒在线观看| 国产精品素人一区二区| 一区在线观看视频| 亚洲国产日产av| 日韩电影在线一区| 激情丁香综合五月| 成人午夜视频网站| 欧美视频第二页| 欧美成人猛片aaaaaaa| 国产欧美日韩三级| 综合色中文字幕| 午夜精品久久久| 久久99精品久久久久久| 国产成人av一区二区三区在线观看| 成人免费观看视频| 欧美系列日韩一区| 久久综合九色综合欧美亚洲| 中文字幕亚洲不卡| 天堂va蜜桃一区二区三区漫画版| 久久成人免费网站| 色综合天天综合网天天狠天天| 欧美在线不卡视频| 欧美mv日韩mv| 亚洲综合免费观看高清完整版在线| 蜜桃av一区二区| 99re视频精品| 26uuu欧美| 亚洲午夜在线视频| 丰满少妇久久久久久久| 欧美日韩在线三级| 一区免费观看视频| 麻豆成人免费电影| 色欲综合视频天天天| 2021国产精品久久精品| 有坂深雪av一区二区精品| 韩国成人福利片在线播放| 欧美性猛片xxxx免费看久爱| 国产亚洲精久久久久久| 午夜视频久久久久久| www.综合网.com| 日韩欧美国产精品| 亚洲一区二区三区视频在线播放 | 亚洲成av人影院在线观看网| 国产伦精品一区二区三区免费迷 | 91丨porny丨在线| 久久精品夜夜夜夜久久| 美女视频黄 久久| 欧美日韩一区国产| 亚洲激情自拍偷拍| av激情亚洲男人天堂| 337p日本欧洲亚洲大胆色噜噜| 亚洲电影你懂得| 欧美亚洲愉拍一区二区| 最新热久久免费视频| 国产激情一区二区三区| 日韩美女视频一区二区在线观看| 亚洲午夜激情网站| 日本韩国精品在线| 日韩毛片精品高清免费| 成人午夜视频在线观看| 日本一区二区三区高清不卡| 激情成人综合网| 精品少妇一区二区三区日产乱码| 日韩精品91亚洲二区在线观看| 欧美中文一区二区三区| 亚洲精品欧美在线| 色综合天天综合狠狠| 伊人一区二区三区| 在线观看三级视频欧美| 亚洲一区二区欧美| 欧洲国内综合视频| 日韩激情一二三区|