The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/crypto/openssl/i386/des-586.S

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /* $FreeBSD$ */
    2 /* Do not modify. This file is auto-generated from des-586.pl. */
    3 #ifdef PIC
    4 .text
    5 .globl  DES_SPtrans
    6 .type   _x86_DES_encrypt,@function
    7 .align  16
    8 _x86_DES_encrypt:
    9         pushl   %ecx
   10 
   11         movl    (%ecx),%eax
   12         xorl    %ebx,%ebx
   13         movl    4(%ecx),%edx
   14         xorl    %esi,%eax
   15         xorl    %ecx,%ecx
   16         xorl    %esi,%edx
   17         andl    $0xfcfcfcfc,%eax
   18         andl    $0xcfcfcfcf,%edx
   19         movb    %al,%bl
   20         movb    %ah,%cl
   21         rorl    $4,%edx
   22         xorl    (%ebp,%ebx,1),%edi
   23         movb    %dl,%bl
   24         xorl    0x200(%ebp,%ecx,1),%edi
   25         movb    %dh,%cl
   26         shrl    $16,%eax
   27         xorl    0x100(%ebp,%ebx,1),%edi
   28         movb    %ah,%bl
   29         shrl    $16,%edx
   30         xorl    0x300(%ebp,%ecx,1),%edi
   31         movb    %dh,%cl
   32         andl    $0xff,%eax
   33         andl    $0xff,%edx
   34         xorl    0x600(%ebp,%ebx,1),%edi
   35         xorl    0x700(%ebp,%ecx,1),%edi
   36         movl    (%esp),%ecx
   37         xorl    0x400(%ebp,%eax,1),%edi
   38         xorl    0x500(%ebp,%edx,1),%edi
   39 
   40         movl    8(%ecx),%eax
   41         xorl    %ebx,%ebx
   42         movl    12(%ecx),%edx
   43         xorl    %edi,%eax
   44         xorl    %ecx,%ecx
   45         xorl    %edi,%edx
   46         andl    $0xfcfcfcfc,%eax
   47         andl    $0xcfcfcfcf,%edx
   48         movb    %al,%bl
   49         movb    %ah,%cl
   50         rorl    $4,%edx
   51         xorl    (%ebp,%ebx,1),%esi
   52         movb    %dl,%bl
   53         xorl    0x200(%ebp,%ecx,1),%esi
   54         movb    %dh,%cl
   55         shrl    $16,%eax
   56         xorl    0x100(%ebp,%ebx,1),%esi
   57         movb    %ah,%bl
   58         shrl    $16,%edx
   59         xorl    0x300(%ebp,%ecx,1),%esi
   60         movb    %dh,%cl
   61         andl    $0xff,%eax
   62         andl    $0xff,%edx
   63         xorl    0x600(%ebp,%ebx,1),%esi
   64         xorl    0x700(%ebp,%ecx,1),%esi
   65         movl    (%esp),%ecx
   66         xorl    0x400(%ebp,%eax,1),%esi
   67         xorl    0x500(%ebp,%edx,1),%esi
   68 
   69         movl    16(%ecx),%eax
   70         xorl    %ebx,%ebx
   71         movl    20(%ecx),%edx
   72         xorl    %esi,%eax
   73         xorl    %ecx,%ecx
   74         xorl    %esi,%edx
   75         andl    $0xfcfcfcfc,%eax
   76         andl    $0xcfcfcfcf,%edx
   77         movb    %al,%bl
   78         movb    %ah,%cl
   79         rorl    $4,%edx
   80         xorl    (%ebp,%ebx,1),%edi
   81         movb    %dl,%bl
   82         xorl    0x200(%ebp,%ecx,1),%edi
   83         movb    %dh,%cl
   84         shrl    $16,%eax
   85         xorl    0x100(%ebp,%ebx,1),%edi
   86         movb    %ah,%bl
   87         shrl    $16,%edx
   88         xorl    0x300(%ebp,%ecx,1),%edi
   89         movb    %dh,%cl
   90         andl    $0xff,%eax
   91         andl    $0xff,%edx
   92         xorl    0x600(%ebp,%ebx,1),%edi
   93         xorl    0x700(%ebp,%ecx,1),%edi
   94         movl    (%esp),%ecx
   95         xorl    0x400(%ebp,%eax,1),%edi
   96         xorl    0x500(%ebp,%edx,1),%edi
   97 
   98         movl    24(%ecx),%eax
   99         xorl    %ebx,%ebx
  100         movl    28(%ecx),%edx
  101         xorl    %edi,%eax
  102         xorl    %ecx,%ecx
  103         xorl    %edi,%edx
  104         andl    $0xfcfcfcfc,%eax
  105         andl    $0xcfcfcfcf,%edx
  106         movb    %al,%bl
  107         movb    %ah,%cl
  108         rorl    $4,%edx
  109         xorl    (%ebp,%ebx,1),%esi
  110         movb    %dl,%bl
  111         xorl    0x200(%ebp,%ecx,1),%esi
  112         movb    %dh,%cl
  113         shrl    $16,%eax
  114         xorl    0x100(%ebp,%ebx,1),%esi
  115         movb    %ah,%bl
  116         shrl    $16,%edx
  117         xorl    0x300(%ebp,%ecx,1),%esi
  118         movb    %dh,%cl
  119         andl    $0xff,%eax
  120         andl    $0xff,%edx
  121         xorl    0x600(%ebp,%ebx,1),%esi
  122         xorl    0x700(%ebp,%ecx,1),%esi
  123         movl    (%esp),%ecx
  124         xorl    0x400(%ebp,%eax,1),%esi
  125         xorl    0x500(%ebp,%edx,1),%esi
  126 
  127         movl    32(%ecx),%eax
  128         xorl    %ebx,%ebx
  129         movl    36(%ecx),%edx
  130         xorl    %esi,%eax
  131         xorl    %ecx,%ecx
  132         xorl    %esi,%edx
  133         andl    $0xfcfcfcfc,%eax
  134         andl    $0xcfcfcfcf,%edx
  135         movb    %al,%bl
  136         movb    %ah,%cl
  137         rorl    $4,%edx
  138         xorl    (%ebp,%ebx,1),%edi
  139         movb    %dl,%bl
  140         xorl    0x200(%ebp,%ecx,1),%edi
  141         movb    %dh,%cl
  142         shrl    $16,%eax
  143         xorl    0x100(%ebp,%ebx,1),%edi
  144         movb    %ah,%bl
  145         shrl    $16,%edx
  146         xorl    0x300(%ebp,%ecx,1),%edi
  147         movb    %dh,%cl
  148         andl    $0xff,%eax
  149         andl    $0xff,%edx
  150         xorl    0x600(%ebp,%ebx,1),%edi
  151         xorl    0x700(%ebp,%ecx,1),%edi
  152         movl    (%esp),%ecx
  153         xorl    0x400(%ebp,%eax,1),%edi
  154         xorl    0x500(%ebp,%edx,1),%edi
  155 
  156         movl    40(%ecx),%eax
  157         xorl    %ebx,%ebx
  158         movl    44(%ecx),%edx
  159         xorl    %edi,%eax
  160         xorl    %ecx,%ecx
  161         xorl    %edi,%edx
  162         andl    $0xfcfcfcfc,%eax
  163         andl    $0xcfcfcfcf,%edx
  164         movb    %al,%bl
  165         movb    %ah,%cl
  166         rorl    $4,%edx
  167         xorl    (%ebp,%ebx,1),%esi
  168         movb    %dl,%bl
  169         xorl    0x200(%ebp,%ecx,1),%esi
  170         movb    %dh,%cl
  171         shrl    $16,%eax
  172         xorl    0x100(%ebp,%ebx,1),%esi
  173         movb    %ah,%bl
  174         shrl    $16,%edx
  175         xorl    0x300(%ebp,%ecx,1),%esi
  176         movb    %dh,%cl
  177         andl    $0xff,%eax
  178         andl    $0xff,%edx
  179         xorl    0x600(%ebp,%ebx,1),%esi
  180         xorl    0x700(%ebp,%ecx,1),%esi
  181         movl    (%esp),%ecx
  182         xorl    0x400(%ebp,%eax,1),%esi
  183         xorl    0x500(%ebp,%edx,1),%esi
  184 
  185         movl    48(%ecx),%eax
  186         xorl    %ebx,%ebx
  187         movl    52(%ecx),%edx
  188         xorl    %esi,%eax
  189         xorl    %ecx,%ecx
  190         xorl    %esi,%edx
  191         andl    $0xfcfcfcfc,%eax
  192         andl    $0xcfcfcfcf,%edx
  193         movb    %al,%bl
  194         movb    %ah,%cl
  195         rorl    $4,%edx
  196         xorl    (%ebp,%ebx,1),%edi
  197         movb    %dl,%bl
  198         xorl    0x200(%ebp,%ecx,1),%edi
  199         movb    %dh,%cl
  200         shrl    $16,%eax
  201         xorl    0x100(%ebp,%ebx,1),%edi
  202         movb    %ah,%bl
  203         shrl    $16,%edx
  204         xorl    0x300(%ebp,%ecx,1),%edi
  205         movb    %dh,%cl
  206         andl    $0xff,%eax
  207         andl    $0xff,%edx
  208         xorl    0x600(%ebp,%ebx,1),%edi
  209         xorl    0x700(%ebp,%ecx,1),%edi
  210         movl    (%esp),%ecx
  211         xorl    0x400(%ebp,%eax,1),%edi
  212         xorl    0x500(%ebp,%edx,1),%edi
  213 
  214         movl    56(%ecx),%eax
  215         xorl    %ebx,%ebx
  216         movl    60(%ecx),%edx
  217         xorl    %edi,%eax
  218         xorl    %ecx,%ecx
  219         xorl    %edi,%edx
  220         andl    $0xfcfcfcfc,%eax
  221         andl    $0xcfcfcfcf,%edx
  222         movb    %al,%bl
  223         movb    %ah,%cl
  224         rorl    $4,%edx
  225         xorl    (%ebp,%ebx,1),%esi
  226         movb    %dl,%bl
  227         xorl    0x200(%ebp,%ecx,1),%esi
  228         movb    %dh,%cl
  229         shrl    $16,%eax
  230         xorl    0x100(%ebp,%ebx,1),%esi
  231         movb    %ah,%bl
  232         shrl    $16,%edx
  233         xorl    0x300(%ebp,%ecx,1),%esi
  234         movb    %dh,%cl
  235         andl    $0xff,%eax
  236         andl    $0xff,%edx
  237         xorl    0x600(%ebp,%ebx,1),%esi
  238         xorl    0x700(%ebp,%ecx,1),%esi
  239         movl    (%esp),%ecx
  240         xorl    0x400(%ebp,%eax,1),%esi
  241         xorl    0x500(%ebp,%edx,1),%esi
  242 
  243         movl    64(%ecx),%eax
  244         xorl    %ebx,%ebx
  245         movl    68(%ecx),%edx
  246         xorl    %esi,%eax
  247         xorl    %ecx,%ecx
  248         xorl    %esi,%edx
  249         andl    $0xfcfcfcfc,%eax
  250         andl    $0xcfcfcfcf,%edx
  251         movb    %al,%bl
  252         movb    %ah,%cl
  253         rorl    $4,%edx
  254         xorl    (%ebp,%ebx,1),%edi
  255         movb    %dl,%bl
  256         xorl    0x200(%ebp,%ecx,1),%edi
  257         movb    %dh,%cl
  258         shrl    $16,%eax
  259         xorl    0x100(%ebp,%ebx,1),%edi
  260         movb    %ah,%bl
  261         shrl    $16,%edx
  262         xorl    0x300(%ebp,%ecx,1),%edi
  263         movb    %dh,%cl
  264         andl    $0xff,%eax
  265         andl    $0xff,%edx
  266         xorl    0x600(%ebp,%ebx,1),%edi
  267         xorl    0x700(%ebp,%ecx,1),%edi
  268         movl    (%esp),%ecx
  269         xorl    0x400(%ebp,%eax,1),%edi
  270         xorl    0x500(%ebp,%edx,1),%edi
  271 
  272         movl    72(%ecx),%eax
  273         xorl    %ebx,%ebx
  274         movl    76(%ecx),%edx
  275         xorl    %edi,%eax
  276         xorl    %ecx,%ecx
  277         xorl    %edi,%edx
  278         andl    $0xfcfcfcfc,%eax
  279         andl    $0xcfcfcfcf,%edx
  280         movb    %al,%bl
  281         movb    %ah,%cl
  282         rorl    $4,%edx
  283         xorl    (%ebp,%ebx,1),%esi
  284         movb    %dl,%bl
  285         xorl    0x200(%ebp,%ecx,1),%esi
  286         movb    %dh,%cl
  287         shrl    $16,%eax
  288         xorl    0x100(%ebp,%ebx,1),%esi
  289         movb    %ah,%bl
  290         shrl    $16,%edx
  291         xorl    0x300(%ebp,%ecx,1),%esi
  292         movb    %dh,%cl
  293         andl    $0xff,%eax
  294         andl    $0xff,%edx
  295         xorl    0x600(%ebp,%ebx,1),%esi
  296         xorl    0x700(%ebp,%ecx,1),%esi
  297         movl    (%esp),%ecx
  298         xorl    0x400(%ebp,%eax,1),%esi
  299         xorl    0x500(%ebp,%edx,1),%esi
  300 
  301         movl    80(%ecx),%eax
  302         xorl    %ebx,%ebx
  303         movl    84(%ecx),%edx
  304         xorl    %esi,%eax
  305         xorl    %ecx,%ecx
  306         xorl    %esi,%edx
  307         andl    $0xfcfcfcfc,%eax
  308         andl    $0xcfcfcfcf,%edx
  309         movb    %al,%bl
  310         movb    %ah,%cl
  311         rorl    $4,%edx
  312         xorl    (%ebp,%ebx,1),%edi
  313         movb    %dl,%bl
  314         xorl    0x200(%ebp,%ecx,1),%edi
  315         movb    %dh,%cl
  316         shrl    $16,%eax
  317         xorl    0x100(%ebp,%ebx,1),%edi
  318         movb    %ah,%bl
  319         shrl    $16,%edx
  320         xorl    0x300(%ebp,%ecx,1),%edi
  321         movb    %dh,%cl
  322         andl    $0xff,%eax
  323         andl    $0xff,%edx
  324         xorl    0x600(%ebp,%ebx,1),%edi
  325         xorl    0x700(%ebp,%ecx,1),%edi
  326         movl    (%esp),%ecx
  327         xorl    0x400(%ebp,%eax,1),%edi
  328         xorl    0x500(%ebp,%edx,1),%edi
  329 
  330         movl    88(%ecx),%eax
  331         xorl    %ebx,%ebx
  332         movl    92(%ecx),%edx
  333         xorl    %edi,%eax
  334         xorl    %ecx,%ecx
  335         xorl    %edi,%edx
  336         andl    $0xfcfcfcfc,%eax
  337         andl    $0xcfcfcfcf,%edx
  338         movb    %al,%bl
  339         movb    %ah,%cl
  340         rorl    $4,%edx
  341         xorl    (%ebp,%ebx,1),%esi
  342         movb    %dl,%bl
  343         xorl    0x200(%ebp,%ecx,1),%esi
  344         movb    %dh,%cl
  345         shrl    $16,%eax
  346         xorl    0x100(%ebp,%ebx,1),%esi
  347         movb    %ah,%bl
  348         shrl    $16,%edx
  349         xorl    0x300(%ebp,%ecx,1),%esi
  350         movb    %dh,%cl
  351         andl    $0xff,%eax
  352         andl    $0xff,%edx
  353         xorl    0x600(%ebp,%ebx,1),%esi
  354         xorl    0x700(%ebp,%ecx,1),%esi
  355         movl    (%esp),%ecx
  356         xorl    0x400(%ebp,%eax,1),%esi
  357         xorl    0x500(%ebp,%edx,1),%esi
  358 
  359         movl    96(%ecx),%eax
  360         xorl    %ebx,%ebx
  361         movl    100(%ecx),%edx
  362         xorl    %esi,%eax
  363         xorl    %ecx,%ecx
  364         xorl    %esi,%edx
  365         andl    $0xfcfcfcfc,%eax
  366         andl    $0xcfcfcfcf,%edx
  367         movb    %al,%bl
  368         movb    %ah,%cl
  369         rorl    $4,%edx
  370         xorl    (%ebp,%ebx,1),%edi
  371         movb    %dl,%bl
  372         xorl    0x200(%ebp,%ecx,1),%edi
  373         movb    %dh,%cl
  374         shrl    $16,%eax
  375         xorl    0x100(%ebp,%ebx,1),%edi
  376         movb    %ah,%bl
  377         shrl    $16,%edx
  378         xorl    0x300(%ebp,%ecx,1),%edi
  379         movb    %dh,%cl
  380         andl    $0xff,%eax
  381         andl    $0xff,%edx
  382         xorl    0x600(%ebp,%ebx,1),%edi
  383         xorl    0x700(%ebp,%ecx,1),%edi
  384         movl    (%esp),%ecx
  385         xorl    0x400(%ebp,%eax,1),%edi
  386         xorl    0x500(%ebp,%edx,1),%edi
  387 
  388         movl    104(%ecx),%eax
  389         xorl    %ebx,%ebx
  390         movl    108(%ecx),%edx
  391         xorl    %edi,%eax
  392         xorl    %ecx,%ecx
  393         xorl    %edi,%edx
  394         andl    $0xfcfcfcfc,%eax
  395         andl    $0xcfcfcfcf,%edx
  396         movb    %al,%bl
  397         movb    %ah,%cl
  398         rorl    $4,%edx
  399         xorl    (%ebp,%ebx,1),%esi
  400         movb    %dl,%bl
  401         xorl    0x200(%ebp,%ecx,1),%esi
  402         movb    %dh,%cl
  403         shrl    $16,%eax
  404         xorl    0x100(%ebp,%ebx,1),%esi
  405         movb    %ah,%bl
  406         shrl    $16,%edx
  407         xorl    0x300(%ebp,%ecx,1),%esi
  408         movb    %dh,%cl
  409         andl    $0xff,%eax
  410         andl    $0xff,%edx
  411         xorl    0x600(%ebp,%ebx,1),%esi
  412         xorl    0x700(%ebp,%ecx,1),%esi
  413         movl    (%esp),%ecx
  414         xorl    0x400(%ebp,%eax,1),%esi
  415         xorl    0x500(%ebp,%edx,1),%esi
  416 
  417         movl    112(%ecx),%eax
  418         xorl    %ebx,%ebx
  419         movl    116(%ecx),%edx
  420         xorl    %esi,%eax
  421         xorl    %ecx,%ecx
  422         xorl    %esi,%edx
  423         andl    $0xfcfcfcfc,%eax
  424         andl    $0xcfcfcfcf,%edx
  425         movb    %al,%bl
  426         movb    %ah,%cl
  427         rorl    $4,%edx
  428         xorl    (%ebp,%ebx,1),%edi
  429         movb    %dl,%bl
  430         xorl    0x200(%ebp,%ecx,1),%edi
  431         movb    %dh,%cl
  432         shrl    $16,%eax
  433         xorl    0x100(%ebp,%ebx,1),%edi
  434         movb    %ah,%bl
  435         shrl    $16,%edx
  436         xorl    0x300(%ebp,%ecx,1),%edi
  437         movb    %dh,%cl
  438         andl    $0xff,%eax
  439         andl    $0xff,%edx
  440         xorl    0x600(%ebp,%ebx,1),%edi
  441         xorl    0x700(%ebp,%ecx,1),%edi
  442         movl    (%esp),%ecx
  443         xorl    0x400(%ebp,%eax,1),%edi
  444         xorl    0x500(%ebp,%edx,1),%edi
  445 
  446         movl    120(%ecx),%eax
  447         xorl    %ebx,%ebx
  448         movl    124(%ecx),%edx
  449         xorl    %edi,%eax
  450         xorl    %ecx,%ecx
  451         xorl    %edi,%edx
  452         andl    $0xfcfcfcfc,%eax
  453         andl    $0xcfcfcfcf,%edx
  454         movb    %al,%bl
  455         movb    %ah,%cl
  456         rorl    $4,%edx
  457         xorl    (%ebp,%ebx,1),%esi
  458         movb    %dl,%bl
  459         xorl    0x200(%ebp,%ecx,1),%esi
  460         movb    %dh,%cl
  461         shrl    $16,%eax
  462         xorl    0x100(%ebp,%ebx,1),%esi
  463         movb    %ah,%bl
  464         shrl    $16,%edx
  465         xorl    0x300(%ebp,%ecx,1),%esi
  466         movb    %dh,%cl
  467         andl    $0xff,%eax
  468         andl    $0xff,%edx
  469         xorl    0x600(%ebp,%ebx,1),%esi
  470         xorl    0x700(%ebp,%ecx,1),%esi
  471         movl    (%esp),%ecx
  472         xorl    0x400(%ebp,%eax,1),%esi
  473         xorl    0x500(%ebp,%edx,1),%esi
  474         addl    $4,%esp
  475         ret
  476 .size   _x86_DES_encrypt,.-_x86_DES_encrypt
  477 .type   _x86_DES_decrypt,@function
  478 .align  16
  479 _x86_DES_decrypt:
  480         pushl   %ecx
  481 
  482         movl    120(%ecx),%eax
  483         xorl    %ebx,%ebx
  484         movl    124(%ecx),%edx
  485         xorl    %esi,%eax
  486         xorl    %ecx,%ecx
  487         xorl    %esi,%edx
  488         andl    $0xfcfcfcfc,%eax
  489         andl    $0xcfcfcfcf,%edx
  490         movb    %al,%bl
  491         movb    %ah,%cl
  492         rorl    $4,%edx
  493         xorl    (%ebp,%ebx,1),%edi
  494         movb    %dl,%bl
  495         xorl    0x200(%ebp,%ecx,1),%edi
  496         movb    %dh,%cl
  497         shrl    $16,%eax
  498         xorl    0x100(%ebp,%ebx,1),%edi
  499         movb    %ah,%bl
  500         shrl    $16,%edx
  501         xorl    0x300(%ebp,%ecx,1),%edi
  502         movb    %dh,%cl
  503         andl    $0xff,%eax
  504         andl    $0xff,%edx
  505         xorl    0x600(%ebp,%ebx,1),%edi
  506         xorl    0x700(%ebp,%ecx,1),%edi
  507         movl    (%esp),%ecx
  508         xorl    0x400(%ebp,%eax,1),%edi
  509         xorl    0x500(%ebp,%edx,1),%edi
  510 
  511         movl    112(%ecx),%eax
  512         xorl    %ebx,%ebx
  513         movl    116(%ecx),%edx
  514         xorl    %edi,%eax
  515         xorl    %ecx,%ecx
  516         xorl    %edi,%edx
  517         andl    $0xfcfcfcfc,%eax
  518         andl    $0xcfcfcfcf,%edx
  519         movb    %al,%bl
  520         movb    %ah,%cl
  521         rorl    $4,%edx
  522         xorl    (%ebp,%ebx,1),%esi
  523         movb    %dl,%bl
  524         xorl    0x200(%ebp,%ecx,1),%esi
  525         movb    %dh,%cl
  526         shrl    $16,%eax
  527         xorl    0x100(%ebp,%ebx,1),%esi
  528         movb    %ah,%bl
  529         shrl    $16,%edx
  530         xorl    0x300(%ebp,%ecx,1),%esi
  531         movb    %dh,%cl
  532         andl    $0xff,%eax
  533         andl    $0xff,%edx
  534         xorl    0x600(%ebp,%ebx,1),%esi
  535         xorl    0x700(%ebp,%ecx,1),%esi
  536         movl    (%esp),%ecx
  537         xorl    0x400(%ebp,%eax,1),%esi
  538         xorl    0x500(%ebp,%edx,1),%esi
  539 
  540         movl    104(%ecx),%eax
  541         xorl    %ebx,%ebx
  542         movl    108(%ecx),%edx
  543         xorl    %esi,%eax
  544         xorl    %ecx,%ecx
  545         xorl    %esi,%edx
  546         andl    $0xfcfcfcfc,%eax
  547         andl    $0xcfcfcfcf,%edx
  548         movb    %al,%bl
  549         movb    %ah,%cl
  550         rorl    $4,%edx
  551         xorl    (%ebp,%ebx,1),%edi
  552         movb    %dl,%bl
  553         xorl    0x200(%ebp,%ecx,1),%edi
  554         movb    %dh,%cl
  555         shrl    $16,%eax
  556         xorl    0x100(%ebp,%ebx,1),%edi
  557         movb    %ah,%bl
  558         shrl    $16,%edx
  559         xorl    0x300(%ebp,%ecx,1),%edi
  560         movb    %dh,%cl
  561         andl    $0xff,%eax
  562         andl    $0xff,%edx
  563         xorl    0x600(%ebp,%ebx,1),%edi
  564         xorl    0x700(%ebp,%ecx,1),%edi
  565         movl    (%esp),%ecx
  566         xorl    0x400(%ebp,%eax,1),%edi
  567         xorl    0x500(%ebp,%edx,1),%edi
  568 
  569         movl    96(%ecx),%eax
  570         xorl    %ebx,%ebx
  571         movl    100(%ecx),%edx
  572         xorl    %edi,%eax
  573         xorl    %ecx,%ecx
  574         xorl    %edi,%edx
  575         andl    $0xfcfcfcfc,%eax
  576         andl    $0xcfcfcfcf,%edx
  577         movb    %al,%bl
  578         movb    %ah,%cl
  579         rorl    $4,%edx
  580         xorl    (%ebp,%ebx,1),%esi
  581         movb    %dl,%bl
  582         xorl    0x200(%ebp,%ecx,1),%esi
  583         movb    %dh,%cl
  584         shrl    $16,%eax
  585         xorl    0x100(%ebp,%ebx,1),%esi
  586         movb    %ah,%bl
  587         shrl    $16,%edx
  588         xorl    0x300(%ebp,%ecx,1),%esi
  589         movb    %dh,%cl
  590         andl    $0xff,%eax
  591         andl    $0xff,%edx
  592         xorl    0x600(%ebp,%ebx,1),%esi
  593         xorl    0x700(%ebp,%ecx,1),%esi
  594         movl    (%esp),%ecx
  595         xorl    0x400(%ebp,%eax,1),%esi
  596         xorl    0x500(%ebp,%edx,1),%esi
  597 
  598         movl    88(%ecx),%eax
  599         xorl    %ebx,%ebx
  600         movl    92(%ecx),%edx
  601         xorl    %esi,%eax
  602         xorl    %ecx,%ecx
  603         xorl    %esi,%edx
  604         andl    $0xfcfcfcfc,%eax
  605         andl    $0xcfcfcfcf,%edx
  606         movb    %al,%bl
  607         movb    %ah,%cl
  608         rorl    $4,%edx
  609         xorl    (%ebp,%ebx,1),%edi
  610         movb    %dl,%bl
  611         xorl    0x200(%ebp,%ecx,1),%edi
  612         movb    %dh,%cl
  613         shrl    $16,%eax
  614         xorl    0x100(%ebp,%ebx,1),%edi
  615         movb    %ah,%bl
  616         shrl    $16,%edx
  617         xorl    0x300(%ebp,%ecx,1),%edi
  618         movb    %dh,%cl
  619         andl    $0xff,%eax
  620         andl    $0xff,%edx
  621         xorl    0x600(%ebp,%ebx,1),%edi
  622         xorl    0x700(%ebp,%ecx,1),%edi
  623         movl    (%esp),%ecx
  624         xorl    0x400(%ebp,%eax,1),%edi
  625         xorl    0x500(%ebp,%edx,1),%edi
  626 
  627         movl    80(%ecx),%eax
  628         xorl    %ebx,%ebx
  629         movl    84(%ecx),%edx
  630         xorl    %edi,%eax
  631         xorl    %ecx,%ecx
  632         xorl    %edi,%edx
  633         andl    $0xfcfcfcfc,%eax
  634         andl    $0xcfcfcfcf,%edx
  635         movb    %al,%bl
  636         movb    %ah,%cl
  637         rorl    $4,%edx
  638         xorl    (%ebp,%ebx,1),%esi
  639         movb    %dl,%bl
  640         xorl    0x200(%ebp,%ecx,1),%esi
  641         movb    %dh,%cl
  642         shrl    $16,%eax
  643         xorl    0x100(%ebp,%ebx,1),%esi
  644         movb    %ah,%bl
  645         shrl    $16,%edx
  646         xorl    0x300(%ebp,%ecx,1),%esi
  647         movb    %dh,%cl
  648         andl    $0xff,%eax
  649         andl    $0xff,%edx
  650         xorl    0x600(%ebp,%ebx,1),%esi
  651         xorl    0x700(%ebp,%ecx,1),%esi
  652         movl    (%esp),%ecx
  653         xorl    0x400(%ebp,%eax,1),%esi
  654         xorl    0x500(%ebp,%edx,1),%esi
  655 
  656         movl    72(%ecx),%eax
  657         xorl    %ebx,%ebx
  658         movl    76(%ecx),%edx
  659         xorl    %esi,%eax
  660         xorl    %ecx,%ecx
  661         xorl    %esi,%edx
  662         andl    $0xfcfcfcfc,%eax
  663         andl    $0xcfcfcfcf,%edx
  664         movb    %al,%bl
  665         movb    %ah,%cl
  666         rorl    $4,%edx
  667         xorl    (%ebp,%ebx,1),%edi
  668         movb    %dl,%bl
  669         xorl    0x200(%ebp,%ecx,1),%edi
  670         movb    %dh,%cl
  671         shrl    $16,%eax
  672         xorl    0x100(%ebp,%ebx,1),%edi
  673         movb    %ah,%bl
  674         shrl    $16,%edx
  675         xorl    0x300(%ebp,%ecx,1),%edi
  676         movb    %dh,%cl
  677         andl    $0xff,%eax
  678         andl    $0xff,%edx
  679         xorl    0x600(%ebp,%ebx,1),%edi
  680         xorl    0x700(%ebp,%ecx,1),%edi
  681         movl    (%esp),%ecx
  682         xorl    0x400(%ebp,%eax,1),%edi
  683         xorl    0x500(%ebp,%edx,1),%edi
  684 
  685         movl    64(%ecx),%eax
  686         xorl    %ebx,%ebx
  687         movl    68(%ecx),%edx
  688         xorl    %edi,%eax
  689         xorl    %ecx,%ecx
  690         xorl    %edi,%edx
  691         andl    $0xfcfcfcfc,%eax
  692         andl    $0xcfcfcfcf,%edx
  693         movb    %al,%bl
  694         movb    %ah,%cl
  695         rorl    $4,%edx
  696         xorl    (%ebp,%ebx,1),%esi
  697         movb    %dl,%bl
  698         xorl    0x200(%ebp,%ecx,1),%esi
  699         movb    %dh,%cl
  700         shrl    $16,%eax
  701         xorl    0x100(%ebp,%ebx,1),%esi
  702         movb    %ah,%bl
  703         shrl    $16,%edx
  704         xorl    0x300(%ebp,%ecx,1),%esi
  705         movb    %dh,%cl
  706         andl    $0xff,%eax
  707         andl    $0xff,%edx
  708         xorl    0x600(%ebp,%ebx,1),%esi
  709         xorl    0x700(%ebp,%ecx,1),%esi
  710         movl    (%esp),%ecx
  711         xorl    0x400(%ebp,%eax,1),%esi
  712         xorl    0x500(%ebp,%edx,1),%esi
  713 
  714         movl    56(%ecx),%eax
  715         xorl    %ebx,%ebx
  716         movl    60(%ecx),%edx
  717         xorl    %esi,%eax
  718         xorl    %ecx,%ecx
  719         xorl    %esi,%edx
  720         andl    $0xfcfcfcfc,%eax
  721         andl    $0xcfcfcfcf,%edx
  722         movb    %al,%bl
  723         movb    %ah,%cl
  724         rorl    $4,%edx
  725         xorl    (%ebp,%ebx,1),%edi
  726         movb    %dl,%bl
  727         xorl    0x200(%ebp,%ecx,1),%edi
  728         movb    %dh,%cl
  729         shrl    $16,%eax
  730         xorl    0x100(%ebp,%ebx,1),%edi
  731         movb    %ah,%bl
  732         shrl    $16,%edx
  733         xorl    0x300(%ebp,%ecx,1),%edi
  734         movb    %dh,%cl
  735         andl    $0xff,%eax
  736         andl    $0xff,%edx
  737         xorl    0x600(%ebp,%ebx,1),%edi
  738         xorl    0x700(%ebp,%ecx,1),%edi
  739         movl    (%esp),%ecx
  740         xorl    0x400(%ebp,%eax,1),%edi
  741         xorl    0x500(%ebp,%edx,1),%edi
  742 
  743         movl    48(%ecx),%eax
  744         xorl    %ebx,%ebx
  745         movl    52(%ecx),%edx
  746         xorl    %edi,%eax
  747         xorl    %ecx,%ecx
  748         xorl    %edi,%edx
  749         andl    $0xfcfcfcfc,%eax
  750         andl    $0xcfcfcfcf,%edx
  751         movb    %al,%bl
  752         movb    %ah,%cl
  753         rorl    $4,%edx
  754         xorl    (%ebp,%ebx,1),%esi
  755         movb    %dl,%bl
  756         xorl    0x200(%ebp,%ecx,1),%esi
  757         movb    %dh,%cl
  758         shrl    $16,%eax
  759         xorl    0x100(%ebp,%ebx,1),%esi
  760         movb    %ah,%bl
  761         shrl    $16,%edx
  762         xorl    0x300(%ebp,%ecx,1),%esi
  763         movb    %dh,%cl
  764         andl    $0xff,%eax
  765         andl    $0xff,%edx
  766         xorl    0x600(%ebp,%ebx,1),%esi
  767         xorl    0x700(%ebp,%ecx,1),%esi
  768         movl    (%esp),%ecx
  769         xorl    0x400(%ebp,%eax,1),%esi
  770         xorl    0x500(%ebp,%edx,1),%esi
  771 
  772         movl    40(%ecx),%eax
  773         xorl    %ebx,%ebx
  774         movl    44(%ecx),%edx
  775         xorl    %esi,%eax
  776         xorl    %ecx,%ecx
  777         xorl    %esi,%edx
  778         andl    $0xfcfcfcfc,%eax
  779         andl    $0xcfcfcfcf,%edx
  780         movb    %al,%bl
  781         movb    %ah,%cl
  782         rorl    $4,%edx
  783         xorl    (%ebp,%ebx,1),%edi
  784         movb    %dl,%bl
  785         xorl    0x200(%ebp,%ecx,1),%edi
  786         movb    %dh,%cl
  787         shrl    $16,%eax
  788         xorl    0x100(%ebp,%ebx,1),%edi
  789         movb    %ah,%bl
  790         shrl    $16,%edx
  791         xorl    0x300(%ebp,%ecx,1),%edi
  792         movb    %dh,%cl
  793         andl    $0xff,%eax
  794         andl    $0xff,%edx
  795         xorl    0x600(%ebp,%ebx,1),%edi
  796         xorl    0x700(%ebp,%ecx,1),%edi
  797         movl    (%esp),%ecx
  798         xorl    0x400(%ebp,%eax,1),%edi
  799         xorl    0x500(%ebp,%edx,1),%edi
  800 
  801         movl    32(%ecx),%eax
  802         xorl    %ebx,%ebx
  803         movl    36(%ecx),%edx
  804         xorl    %edi,%eax
  805         xorl    %ecx,%ecx
  806         xorl    %edi,%edx
  807         andl    $0xfcfcfcfc,%eax
  808         andl    $0xcfcfcfcf,%edx
  809         movb    %al,%bl
  810         movb    %ah,%cl
  811         rorl    $4,%edx
  812         xorl    (%ebp,%ebx,1),%esi
  813         movb    %dl,%bl
  814         xorl    0x200(%ebp,%ecx,1),%esi
  815         movb    %dh,%cl
  816         shrl    $16,%eax
  817         xorl    0x100(%ebp,%ebx,1),%esi
  818         movb    %ah,%bl
  819         shrl    $16,%edx
  820         xorl    0x300(%ebp,%ecx,1),%esi
  821         movb    %dh,%cl
  822         andl    $0xff,%eax
  823         andl    $0xff,%edx
  824         xorl    0x600(%ebp,%ebx,1),%esi
  825         xorl    0x700(%ebp,%ecx,1),%esi
  826         movl    (%esp),%ecx
  827         xorl    0x400(%ebp,%eax,1),%esi
  828         xorl    0x500(%ebp,%edx,1),%esi
  829 
  830         movl    24(%ecx),%eax
  831         xorl    %ebx,%ebx
  832         movl    28(%ecx),%edx
  833         xorl    %esi,%eax
  834         xorl    %ecx,%ecx
  835         xorl    %esi,%edx
  836         andl    $0xfcfcfcfc,%eax
  837         andl    $0xcfcfcfcf,%edx
  838         movb    %al,%bl
  839         movb    %ah,%cl
  840         rorl    $4,%edx
  841         xorl    (%ebp,%ebx,1),%edi
  842         movb    %dl,%bl
  843         xorl    0x200(%ebp,%ecx,1),%edi
  844         movb    %dh,%cl
  845         shrl    $16,%eax
  846         xorl    0x100(%ebp,%ebx,1),%edi
  847         movb    %ah,%bl
  848         shrl    $16,%edx
  849         xorl    0x300(%ebp,%ecx,1),%edi
  850         movb    %dh,%cl
  851         andl    $0xff,%eax
  852         andl    $0xff,%edx
  853         xorl    0x600(%ebp,%ebx,1),%edi
  854         xorl    0x700(%ebp,%ecx,1),%edi
  855         movl    (%esp),%ecx
  856         xorl    0x400(%ebp,%eax,1),%edi
  857         xorl    0x500(%ebp,%edx,1),%edi
  858 
  859         movl    16(%ecx),%eax
  860         xorl    %ebx,%ebx
  861         movl    20(%ecx),%edx
  862         xorl    %edi,%eax
  863         xorl    %ecx,%ecx
  864         xorl    %edi,%edx
  865         andl    $0xfcfcfcfc,%eax
  866         andl    $0xcfcfcfcf,%edx
  867         movb    %al,%bl
  868         movb    %ah,%cl
  869         rorl    $4,%edx
  870         xorl    (%ebp,%ebx,1),%esi
  871         movb    %dl,%bl
  872         xorl    0x200(%ebp,%ecx,1),%esi
  873         movb    %dh,%cl
  874         shrl    $16,%eax
  875         xorl    0x100(%ebp,%ebx,1),%esi
  876         movb    %ah,%bl
  877         shrl    $16,%edx
  878         xorl    0x300(%ebp,%ecx,1),%esi
  879         movb    %dh,%cl
  880         andl    $0xff,%eax
  881         andl    $0xff,%edx
  882         xorl    0x600(%ebp,%ebx,1),%esi
  883         xorl    0x700(%ebp,%ecx,1),%esi
  884         movl    (%esp),%ecx
  885         xorl    0x400(%ebp,%eax,1),%esi
  886         xorl    0x500(%ebp,%edx,1),%esi
  887 
  888         movl    8(%ecx),%eax
  889         xorl    %ebx,%ebx
  890         movl    12(%ecx),%edx
  891         xorl    %esi,%eax
  892         xorl    %ecx,%ecx
  893         xorl    %esi,%edx
  894         andl    $0xfcfcfcfc,%eax
  895         andl    $0xcfcfcfcf,%edx
  896         movb    %al,%bl
  897         movb    %ah,%cl
  898         rorl    $4,%edx
  899         xorl    (%ebp,%ebx,1),%edi
  900         movb    %dl,%bl
  901         xorl    0x200(%ebp,%ecx,1),%edi
  902         movb    %dh,%cl
  903         shrl    $16,%eax
  904         xorl    0x100(%ebp,%ebx,1),%edi
  905         movb    %ah,%bl
  906         shrl    $16,%edx
  907         xorl    0x300(%ebp,%ecx,1),%edi
  908         movb    %dh,%cl
  909         andl    $0xff,%eax
  910         andl    $0xff,%edx
  911         xorl    0x600(%ebp,%ebx,1),%edi
  912         xorl    0x700(%ebp,%ecx,1),%edi
  913         movl    (%esp),%ecx
  914         xorl    0x400(%ebp,%eax,1),%edi
  915         xorl    0x500(%ebp,%edx,1),%edi
  916 
  917         movl    (%ecx),%eax
  918         xorl    %ebx,%ebx
  919         movl    4(%ecx),%edx
  920         xorl    %edi,%eax
  921         xorl    %ecx,%ecx
  922         xorl    %edi,%edx
  923         andl    $0xfcfcfcfc,%eax
  924         andl    $0xcfcfcfcf,%edx
  925         movb    %al,%bl
  926         movb    %ah,%cl
  927         rorl    $4,%edx
  928         xorl    (%ebp,%ebx,1),%esi
  929         movb    %dl,%bl
  930         xorl    0x200(%ebp,%ecx,1),%esi
  931         movb    %dh,%cl
  932         shrl    $16,%eax
  933         xorl    0x100(%ebp,%ebx,1),%esi
  934         movb    %ah,%bl
  935         shrl    $16,%edx
  936         xorl    0x300(%ebp,%ecx,1),%esi
  937         movb    %dh,%cl
  938         andl    $0xff,%eax
  939         andl    $0xff,%edx
  940         xorl    0x600(%ebp,%ebx,1),%esi
  941         xorl    0x700(%ebp,%ecx,1),%esi
  942         movl    (%esp),%ecx
  943         xorl    0x400(%ebp,%eax,1),%esi
  944         xorl    0x500(%ebp,%edx,1),%esi
  945         addl    $4,%esp
  946         ret
  947 .size   _x86_DES_decrypt,.-_x86_DES_decrypt
  948 .globl  DES_encrypt1
  949 .type   DES_encrypt1,@function
  950 .align  16
  951 DES_encrypt1:
  952 .L_DES_encrypt1_begin:
  953         pushl   %esi
  954         pushl   %edi
  955 
  956 
  957         movl    12(%esp),%esi
  958         xorl    %ecx,%ecx
  959         pushl   %ebx
  960         pushl   %ebp
  961         movl    (%esi),%eax
  962         movl    28(%esp),%ebx
  963         movl    4(%esi),%edi
  964 
  965 
  966         roll    $4,%eax
  967         movl    %eax,%esi
  968         xorl    %edi,%eax
  969         andl    $0xf0f0f0f0,%eax
  970         xorl    %eax,%esi
  971         xorl    %eax,%edi
  972 
  973         roll    $20,%edi
  974         movl    %edi,%eax
  975         xorl    %esi,%edi
  976         andl    $0xfff0000f,%edi
  977         xorl    %edi,%eax
  978         xorl    %edi,%esi
  979 
  980         roll    $14,%eax
  981         movl    %eax,%edi
  982         xorl    %esi,%eax
  983         andl    $0x33333333,%eax
  984         xorl    %eax,%edi
  985         xorl    %eax,%esi
  986 
  987         roll    $22,%esi
  988         movl    %esi,%eax
  989         xorl    %edi,%esi
  990         andl    $0x03fc03fc,%esi
  991         xorl    %esi,%eax
  992         xorl    %esi,%edi
  993 
  994         roll    $9,%eax
  995         movl    %eax,%esi
  996         xorl    %edi,%eax
  997         andl    $0xaaaaaaaa,%eax
  998         xorl    %eax,%esi
  999         xorl    %eax,%edi
 1000 
 1001         roll    $1,%edi
 1002         call    .L000pic_point
 1003 .L000pic_point:
 1004         popl    %ebp
 1005         leal    .Ldes_sptrans-.L000pic_point(%ebp),%ebp
 1006         movl    24(%esp),%ecx
 1007         cmpl    $0,%ebx
 1008         je      .L001decrypt
 1009         call    _x86_DES_encrypt
 1010         jmp     .L002done
 1011 .L001decrypt:
 1012         call    _x86_DES_decrypt
 1013 .L002done:
 1014 
 1015 
 1016         movl    20(%esp),%edx
 1017         rorl    $1,%esi
 1018         movl    %edi,%eax
 1019         xorl    %esi,%edi
 1020         andl    $0xaaaaaaaa,%edi
 1021         xorl    %edi,%eax
 1022         xorl    %edi,%esi
 1023 
 1024         roll    $23,%eax
 1025         movl    %eax,%edi
 1026         xorl    %esi,%eax
 1027         andl    $0x03fc03fc,%eax
 1028         xorl    %eax,%edi
 1029         xorl    %eax,%esi
 1030 
 1031         roll    $10,%edi
 1032         movl    %edi,%eax
 1033         xorl    %esi,%edi
 1034         andl    $0x33333333,%edi
 1035         xorl    %edi,%eax
 1036         xorl    %edi,%esi
 1037 
 1038         roll    $18,%esi
 1039         movl    %esi,%edi
 1040         xorl    %eax,%esi
 1041         andl    $0xfff0000f,%esi
 1042         xorl    %esi,%edi
 1043         xorl    %esi,%eax
 1044 
 1045         roll    $12,%edi
 1046         movl    %edi,%esi
 1047         xorl    %eax,%edi
 1048         andl    $0xf0f0f0f0,%edi
 1049         xorl    %edi,%esi
 1050         xorl    %edi,%eax
 1051 
 1052         rorl    $4,%eax
 1053         movl    %eax,(%edx)
 1054         movl    %esi,4(%edx)
 1055         popl    %ebp
 1056         popl    %ebx
 1057         popl    %edi
 1058         popl    %esi
 1059         ret
 1060 .size   DES_encrypt1,.-.L_DES_encrypt1_begin
 1061 .globl  DES_encrypt2
 1062 .type   DES_encrypt2,@function
 1063 .align  16
 1064 DES_encrypt2:
 1065 .L_DES_encrypt2_begin:
 1066         pushl   %esi
 1067         pushl   %edi
 1068 
 1069 
 1070         movl    12(%esp),%eax
 1071         xorl    %ecx,%ecx
 1072         pushl   %ebx
 1073         pushl   %ebp
 1074         movl    (%eax),%esi
 1075         movl    28(%esp),%ebx
 1076         roll    $3,%esi
 1077         movl    4(%eax),%edi
 1078         roll    $3,%edi
 1079         call    .L003pic_point
 1080 .L003pic_point:
 1081         popl    %ebp
 1082         leal    .Ldes_sptrans-.L003pic_point(%ebp),%ebp
 1083         movl    24(%esp),%ecx
 1084         cmpl    $0,%ebx
 1085         je      .L004decrypt
 1086         call    _x86_DES_encrypt
 1087         jmp     .L005done
 1088 .L004decrypt:
 1089         call    _x86_DES_decrypt
 1090 .L005done:
 1091 
 1092 
 1093         rorl    $3,%edi
 1094         movl    20(%esp),%eax
 1095         rorl    $3,%esi
 1096         movl    %edi,(%eax)
 1097         movl    %esi,4(%eax)
 1098         popl    %ebp
 1099         popl    %ebx
 1100         popl    %edi
 1101         popl    %esi
 1102         ret
 1103 .size   DES_encrypt2,.-.L_DES_encrypt2_begin
 1104 .globl  DES_encrypt3
 1105 .type   DES_encrypt3,@function
 1106 .align  16
 1107 DES_encrypt3:
 1108 .L_DES_encrypt3_begin:
 1109         pushl   %ebx
 1110         movl    8(%esp),%ebx
 1111         pushl   %ebp
 1112         pushl   %esi
 1113         pushl   %edi
 1114 
 1115 
 1116         movl    (%ebx),%edi
 1117         movl    4(%ebx),%esi
 1118         subl    $12,%esp
 1119 
 1120 
 1121         roll    $4,%edi
 1122         movl    %edi,%edx
 1123         xorl    %esi,%edi
 1124         andl    $0xf0f0f0f0,%edi
 1125         xorl    %edi,%edx
 1126         xorl    %edi,%esi
 1127 
 1128         roll    $20,%esi
 1129         movl    %esi,%edi
 1130         xorl    %edx,%esi
 1131         andl    $0xfff0000f,%esi
 1132         xorl    %esi,%edi
 1133         xorl    %esi,%edx
 1134 
 1135         roll    $14,%edi
 1136         movl    %edi,%esi
 1137         xorl    %edx,%edi
 1138         andl    $0x33333333,%edi
 1139         xorl    %edi,%esi
 1140         xorl    %edi,%edx
 1141 
 1142         roll    $22,%edx
 1143         movl    %edx,%edi
 1144         xorl    %esi,%edx
 1145         andl    $0x03fc03fc,%edx
 1146         xorl    %edx,%edi
 1147         xorl    %edx,%esi
 1148 
 1149         roll    $9,%edi
 1150         movl    %edi,%edx
 1151         xorl    %esi,%edi
 1152         andl    $0xaaaaaaaa,%edi
 1153         xorl    %edi,%edx
 1154         xorl    %edi,%esi
 1155 
 1156         rorl    $3,%edx
 1157         rorl    $2,%esi
 1158         movl    %esi,4(%ebx)
 1159         movl    36(%esp),%eax
 1160         movl    %edx,(%ebx)
 1161         movl    40(%esp),%edi
 1162         movl    44(%esp),%esi
 1163         movl    $1,8(%esp)
 1164         movl    %eax,4(%esp)
 1165         movl    %ebx,(%esp)
 1166         call    .L_DES_encrypt2_begin
 1167         movl    $0,8(%esp)
 1168         movl    %edi,4(%esp)
 1169         movl    %ebx,(%esp)
 1170         call    .L_DES_encrypt2_begin
 1171         movl    $1,8(%esp)
 1172         movl    %esi,4(%esp)
 1173         movl    %ebx,(%esp)
 1174         call    .L_DES_encrypt2_begin
 1175         addl    $12,%esp
 1176         movl    (%ebx),%edi
 1177         movl    4(%ebx),%esi
 1178 
 1179 
 1180         roll    $2,%esi
 1181         roll    $3,%edi
 1182         movl    %edi,%eax
 1183         xorl    %esi,%edi
 1184         andl    $0xaaaaaaaa,%edi
 1185         xorl    %edi,%eax
 1186         xorl    %edi,%esi
 1187 
 1188         roll    $23,%eax
 1189         movl    %eax,%edi
 1190         xorl    %esi,%eax
 1191         andl    $0x03fc03fc,%eax
 1192         xorl    %eax,%edi
 1193         xorl    %eax,%esi
 1194 
 1195         roll    $10,%edi
 1196         movl    %edi,%eax
 1197         xorl    %esi,%edi
 1198         andl    $0x33333333,%edi
 1199         xorl    %edi,%eax
 1200         xorl    %edi,%esi
 1201 
 1202         roll    $18,%esi
 1203         movl    %esi,%edi
 1204         xorl    %eax,%esi
 1205         andl    $0xfff0000f,%esi
 1206         xorl    %esi,%edi
 1207         xorl    %esi,%eax
 1208 
 1209         roll    $12,%edi
 1210         movl    %edi,%esi
 1211         xorl    %eax,%edi
 1212         andl    $0xf0f0f0f0,%edi
 1213         xorl    %edi,%esi
 1214         xorl    %edi,%eax
 1215 
 1216         rorl    $4,%eax
 1217         movl    %eax,(%ebx)
 1218         movl    %esi,4(%ebx)
 1219         popl    %edi
 1220         popl    %esi
 1221         popl    %ebp
 1222         popl    %ebx
 1223         ret
 1224 .size   DES_encrypt3,.-.L_DES_encrypt3_begin
 1225 .globl  DES_decrypt3
 1226 .type   DES_decrypt3,@function
 1227 .align  16
 1228 DES_decrypt3:
 1229 .L_DES_decrypt3_begin:
 1230         pushl   %ebx
 1231         movl    8(%esp),%ebx
 1232         pushl   %ebp
 1233         pushl   %esi
 1234         pushl   %edi
 1235 
 1236 
 1237         movl    (%ebx),%edi
 1238         movl    4(%ebx),%esi
 1239         subl    $12,%esp
 1240 
 1241 
 1242         roll    $4,%edi
 1243         movl    %edi,%edx
 1244         xorl    %esi,%edi
 1245         andl    $0xf0f0f0f0,%edi
 1246         xorl    %edi,%edx
 1247         xorl    %edi,%esi
 1248 
 1249         roll    $20,%esi
 1250         movl    %esi,%edi
 1251         xorl    %edx,%esi
 1252         andl    $0xfff0000f,%esi
 1253         xorl    %esi,%edi
 1254         xorl    %esi,%edx
 1255 
 1256         roll    $14,%edi
 1257         movl    %edi,%esi
 1258         xorl    %edx,%edi
 1259         andl    $0x33333333,%edi
 1260         xorl    %edi,%esi
 1261         xorl    %edi,%edx
 1262 
 1263         roll    $22,%edx
 1264         movl    %edx,%edi
 1265         xorl    %esi,%edx
 1266         andl    $0x03fc03fc,%edx
 1267         xorl    %edx,%edi
 1268         xorl    %edx,%esi
 1269 
 1270         roll    $9,%edi
 1271         movl    %edi,%edx
 1272         xorl    %esi,%edi
 1273         andl    $0xaaaaaaaa,%edi
 1274         xorl    %edi,%edx
 1275         xorl    %edi,%esi
 1276 
 1277         rorl    $3,%edx
 1278         rorl    $2,%esi
 1279         movl    %esi,4(%ebx)
 1280         movl    36(%esp),%esi
 1281         movl    %edx,(%ebx)
 1282         movl    40(%esp),%edi
 1283         movl    44(%esp),%eax
 1284         movl    $0,8(%esp)
 1285         movl    %eax,4(%esp)
 1286         movl    %ebx,(%esp)
 1287         call    .L_DES_encrypt2_begin
 1288         movl    $1,8(%esp)
 1289         movl    %edi,4(%esp)
 1290         movl    %ebx,(%esp)
 1291         call    .L_DES_encrypt2_begin
 1292         movl    $0,8(%esp)
 1293         movl    %esi,4(%esp)
 1294         movl    %ebx,(%esp)
 1295         call    .L_DES_encrypt2_begin
 1296         addl    $12,%esp
 1297         movl    (%ebx),%edi
 1298         movl    4(%ebx),%esi
 1299 
 1300 
 1301         roll    $2,%esi
 1302         roll    $3,%edi
 1303         movl    %edi,%eax
 1304         xorl    %esi,%edi
 1305         andl    $0xaaaaaaaa,%edi
 1306         xorl    %edi,%eax
 1307         xorl    %edi,%esi
 1308 
 1309         roll    $23,%eax
 1310         movl    %eax,%edi
 1311         xorl    %esi,%eax
 1312         andl    $0x03fc03fc,%eax
 1313         xorl    %eax,%edi
 1314         xorl    %eax,%esi
 1315 
 1316         roll    $10,%edi
 1317         movl    %edi,%eax
 1318         xorl    %esi,%edi
 1319         andl    $0x33333333,%edi
 1320         xorl    %edi,%eax
 1321         xorl    %edi,%esi
 1322 
 1323         roll    $18,%esi
 1324         movl    %esi,%edi
 1325         xorl    %eax,%esi
 1326         andl    $0xfff0000f,%esi
 1327         xorl    %esi,%edi
 1328         xorl    %esi,%eax
 1329 
 1330         roll    $12,%edi
 1331         movl    %edi,%esi
 1332         xorl    %eax,%edi
 1333         andl    $0xf0f0f0f0,%edi
 1334         xorl    %edi,%esi
 1335         xorl    %edi,%eax
 1336 
 1337         rorl    $4,%eax
 1338         movl    %eax,(%ebx)
 1339         movl    %esi,4(%ebx)
 1340         popl    %edi
 1341         popl    %esi
 1342         popl    %ebp
 1343         popl    %ebx
 1344         ret
 1345 .size   DES_decrypt3,.-.L_DES_decrypt3_begin
 1346 .globl  DES_ncbc_encrypt
 1347 .type   DES_ncbc_encrypt,@function
 1348 .align  16
 1349 DES_ncbc_encrypt:
 1350 .L_DES_ncbc_encrypt_begin:
 1351 
 1352         pushl   %ebp
 1353         pushl   %ebx
 1354         pushl   %esi
 1355         pushl   %edi
 1356         movl    28(%esp),%ebp
 1357 
 1358         movl    36(%esp),%ebx
 1359         movl    (%ebx),%esi
 1360         movl    4(%ebx),%edi
 1361         pushl   %edi
 1362         pushl   %esi
 1363         pushl   %edi
 1364         pushl   %esi
 1365         movl    %esp,%ebx
 1366         movl    36(%esp),%esi
 1367         movl    40(%esp),%edi
 1368 
 1369         movl    56(%esp),%ecx
 1370 
 1371         pushl   %ecx
 1372 
 1373         movl    52(%esp),%eax
 1374         pushl   %eax
 1375         pushl   %ebx
 1376         cmpl    $0,%ecx
 1377         jz      .L006decrypt
 1378         andl    $4294967288,%ebp
 1379         movl    12(%esp),%eax
 1380         movl    16(%esp),%ebx
 1381         jz      .L007encrypt_finish
 1382 .L008encrypt_loop:
 1383         movl    (%esi),%ecx
 1384         movl    4(%esi),%edx
 1385         xorl    %ecx,%eax
 1386         xorl    %edx,%ebx
 1387         movl    %eax,12(%esp)
 1388         movl    %ebx,16(%esp)
 1389         call    .L_DES_encrypt1_begin
 1390         movl    12(%esp),%eax
 1391         movl    16(%esp),%ebx
 1392         movl    %eax,(%edi)
 1393         movl    %ebx,4(%edi)
 1394         addl    $8,%esi
 1395         addl    $8,%edi
 1396         subl    $8,%ebp
 1397         jnz     .L008encrypt_loop
 1398 .L007encrypt_finish:
 1399         movl    56(%esp),%ebp
 1400         andl    $7,%ebp
 1401         jz      .L009finish
 1402         call    .L010PIC_point
 1403 .L010PIC_point:
 1404         popl    %edx
 1405         leal    .L011cbc_enc_jmp_table-.L010PIC_point(%edx),%ecx
 1406         movl    (%ecx,%ebp,4),%ebp
 1407         addl    %edx,%ebp
 1408         xorl    %ecx,%ecx
 1409         xorl    %edx,%edx
 1410         jmp     *%ebp
 1411 .L012ej7:
 1412         movb    6(%esi),%dh
 1413         shll    $8,%edx
 1414 .L013ej6:
 1415         movb    5(%esi),%dh
 1416 .L014ej5:
 1417         movb    4(%esi),%dl
 1418 .L015ej4:
 1419         movl    (%esi),%ecx
 1420         jmp     .L016ejend
 1421 .L017ej3:
 1422         movb    2(%esi),%ch
 1423         shll    $8,%ecx
 1424 .L018ej2:
 1425         movb    1(%esi),%ch
 1426 .L019ej1:
 1427         movb    (%esi),%cl
 1428 .L016ejend:
 1429         xorl    %ecx,%eax
 1430         xorl    %edx,%ebx
 1431         movl    %eax,12(%esp)
 1432         movl    %ebx,16(%esp)
 1433         call    .L_DES_encrypt1_begin
 1434         movl    12(%esp),%eax
 1435         movl    16(%esp),%ebx
 1436         movl    %eax,(%edi)
 1437         movl    %ebx,4(%edi)
 1438         jmp     .L009finish
 1439 .L006decrypt:
 1440         andl    $4294967288,%ebp
 1441         movl    20(%esp),%eax
 1442         movl    24(%esp),%ebx
 1443         jz      .L020decrypt_finish
 1444 .L021decrypt_loop:
 1445         movl    (%esi),%eax
 1446         movl    4(%esi),%ebx
 1447         movl    %eax,12(%esp)
 1448         movl    %ebx,16(%esp)
 1449         call    .L_DES_encrypt1_begin
 1450         movl    12(%esp),%eax
 1451         movl    16(%esp),%ebx
 1452         movl    20(%esp),%ecx
 1453         movl    24(%esp),%edx
 1454         xorl    %eax,%ecx
 1455         xorl    %ebx,%edx
 1456         movl    (%esi),%eax
 1457         movl    4(%esi),%ebx
 1458         movl    %ecx,(%edi)
 1459         movl    %edx,4(%edi)
 1460         movl    %eax,20(%esp)
 1461         movl    %ebx,24(%esp)
 1462         addl    $8,%esi
 1463         addl    $8,%edi
 1464         subl    $8,%ebp
 1465         jnz     .L021decrypt_loop
 1466 .L020decrypt_finish:
 1467         movl    56(%esp),%ebp
 1468         andl    $7,%ebp
 1469         jz      .L009finish
 1470         movl    (%esi),%eax
 1471         movl    4(%esi),%ebx
 1472         movl    %eax,12(%esp)
 1473         movl    %ebx,16(%esp)
 1474         call    .L_DES_encrypt1_begin
 1475         movl    12(%esp),%eax
 1476         movl    16(%esp),%ebx
 1477         movl    20(%esp),%ecx
 1478         movl    24(%esp),%edx
 1479         xorl    %eax,%ecx
 1480         xorl    %ebx,%edx
 1481         movl    (%esi),%eax
 1482         movl    4(%esi),%ebx
 1483 .L022dj7:
 1484         rorl    $16,%edx
 1485         movb    %dl,6(%edi)
 1486         shrl    $16,%edx
 1487 .L023dj6:
 1488         movb    %dh,5(%edi)
 1489 .L024dj5:
 1490         movb    %dl,4(%edi)
 1491 .L025dj4:
 1492         movl    %ecx,(%edi)
 1493         jmp     .L026djend
 1494 .L027dj3:
 1495         rorl    $16,%ecx
 1496         movb    %cl,2(%edi)
 1497         shll    $16,%ecx
 1498 .L028dj2:
 1499         movb    %ch,1(%esi)
 1500 .L029dj1:
 1501         movb    %cl,(%esi)
 1502 .L026djend:
 1503         jmp     .L009finish
 1504 .L009finish:
 1505         movl    64(%esp),%ecx
 1506         addl    $28,%esp
 1507         movl    %eax,(%ecx)
 1508         movl    %ebx,4(%ecx)
 1509         popl    %edi
 1510         popl    %esi
 1511         popl    %ebx
 1512         popl    %ebp
 1513         ret
 1514 .align  64
 1515 .L011cbc_enc_jmp_table:
 1516 .long   0
 1517 .long   .L019ej1-.L010PIC_point
 1518 .long   .L018ej2-.L010PIC_point
 1519 .long   .L017ej3-.L010PIC_point
 1520 .long   .L015ej4-.L010PIC_point
 1521 .long   .L014ej5-.L010PIC_point
 1522 .long   .L013ej6-.L010PIC_point
 1523 .long   .L012ej7-.L010PIC_point
 1524 .align  64
 1525 .size   DES_ncbc_encrypt,.-.L_DES_ncbc_encrypt_begin
 1526 .globl  DES_ede3_cbc_encrypt
 1527 .type   DES_ede3_cbc_encrypt,@function
 1528 .align  16
 1529 DES_ede3_cbc_encrypt:
 1530 .L_DES_ede3_cbc_encrypt_begin:
 1531 
 1532         pushl   %ebp
 1533         pushl   %ebx
 1534         pushl   %esi
 1535         pushl   %edi
 1536         movl    28(%esp),%ebp
 1537 
 1538         movl    44(%esp),%ebx
 1539         movl    (%ebx),%esi
 1540         movl    4(%ebx),%edi
 1541         pushl   %edi
 1542         pushl   %esi
 1543         pushl   %edi
 1544         pushl   %esi
 1545         movl    %esp,%ebx
 1546         movl    36(%esp),%esi
 1547         movl    40(%esp),%edi
 1548 
 1549         movl    64(%esp),%ecx
 1550 
 1551         movl    56(%esp),%eax
 1552         pushl   %eax
 1553 
 1554         movl    56(%esp),%eax
 1555         pushl   %eax
 1556 
 1557         movl    56(%esp),%eax
 1558         pushl   %eax
 1559         pushl   %ebx
 1560         cmpl    $0,%ecx
 1561         jz      .L030decrypt
 1562         andl    $4294967288,%ebp
 1563         movl    16(%esp),%eax
 1564         movl    20(%esp),%ebx
 1565         jz      .L031encrypt_finish
 1566 .L032encrypt_loop:
 1567         movl    (%esi),%ecx
 1568         movl    4(%esi),%edx
 1569         xorl    %ecx,%eax
 1570         xorl    %edx,%ebx
 1571         movl    %eax,16(%esp)
 1572         movl    %ebx,20(%esp)
 1573         call    .L_DES_encrypt3_begin
 1574         movl    16(%esp),%eax
 1575         movl    20(%esp),%ebx
 1576         movl    %eax,(%edi)
 1577         movl    %ebx,4(%edi)
 1578         addl    $8,%esi
 1579         addl    $8,%edi
 1580         subl    $8,%ebp
 1581         jnz     .L032encrypt_loop
 1582 .L031encrypt_finish:
 1583         movl    60(%esp),%ebp
 1584         andl    $7,%ebp
 1585         jz      .L033finish
 1586         call    .L034PIC_point
 1587 .L034PIC_point:
 1588         popl    %edx
 1589         leal    .L035cbc_enc_jmp_table-.L034PIC_point(%edx),%ecx
 1590         movl    (%ecx,%ebp,4),%ebp
 1591         addl    %edx,%ebp
 1592         xorl    %ecx,%ecx
 1593         xorl    %edx,%edx
 1594         jmp     *%ebp
 1595 .L036ej7:
 1596         movb    6(%esi),%dh
 1597         shll    $8,%edx
 1598 .L037ej6:
 1599         movb    5(%esi),%dh
 1600 .L038ej5:
 1601         movb    4(%esi),%dl
 1602 .L039ej4:
 1603         movl    (%esi),%ecx
 1604         jmp     .L040ejend
 1605 .L041ej3:
 1606         movb    2(%esi),%ch
 1607         shll    $8,%ecx
 1608 .L042ej2:
 1609         movb    1(%esi),%ch
 1610 .L043ej1:
 1611         movb    (%esi),%cl
 1612 .L040ejend:
 1613         xorl    %ecx,%eax
 1614         xorl    %edx,%ebx
 1615         movl    %eax,16(%esp)
 1616         movl    %ebx,20(%esp)
 1617         call    .L_DES_encrypt3_begin
 1618         movl    16(%esp),%eax
 1619         movl    20(%esp),%ebx
 1620         movl    %eax,(%edi)
 1621         movl    %ebx,4(%edi)
 1622         jmp     .L033finish
 1623 .L030decrypt:
 1624         andl    $4294967288,%ebp
 1625         movl    24(%esp),%eax
 1626         movl    28(%esp),%ebx
 1627         jz      .L044decrypt_finish
 1628 .L045decrypt_loop:
 1629         movl    (%esi),%eax
 1630         movl    4(%esi),%ebx
 1631         movl    %eax,16(%esp)
 1632         movl    %ebx,20(%esp)
 1633         call    .L_DES_decrypt3_begin
 1634         movl    16(%esp),%eax
 1635         movl    20(%esp),%ebx
 1636         movl    24(%esp),%ecx
 1637         movl    28(%esp),%edx
 1638         xorl    %eax,%ecx
 1639         xorl    %ebx,%edx
 1640         movl    (%esi),%eax
 1641         movl    4(%esi),%ebx
 1642         movl    %ecx,(%edi)
 1643         movl    %edx,4(%edi)
 1644         movl    %eax,24(%esp)
 1645         movl    %ebx,28(%esp)
 1646         addl    $8,%esi
 1647         addl    $8,%edi
 1648         subl    $8,%ebp
 1649         jnz     .L045decrypt_loop
 1650 .L044decrypt_finish:
 1651         movl    60(%esp),%ebp
 1652         andl    $7,%ebp
 1653         jz      .L033finish
 1654         movl    (%esi),%eax
 1655         movl    4(%esi),%ebx
 1656         movl    %eax,16(%esp)
 1657         movl    %ebx,20(%esp)
 1658         call    .L_DES_decrypt3_begin
 1659         movl    16(%esp),%eax
 1660         movl    20(%esp),%ebx
 1661         movl    24(%esp),%ecx
 1662         movl    28(%esp),%edx
 1663         xorl    %eax,%ecx
 1664         xorl    %ebx,%edx
 1665         movl    (%esi),%eax
 1666         movl    4(%esi),%ebx
 1667 .L046dj7:
 1668         rorl    $16,%edx
 1669         movb    %dl,6(%edi)
 1670         shrl    $16,%edx
 1671 .L047dj6:
 1672         movb    %dh,5(%edi)
 1673 .L048dj5:
 1674         movb    %dl,4(%edi)
 1675 .L049dj4:
 1676         movl    %ecx,(%edi)
 1677         jmp     .L050djend
 1678 .L051dj3:
 1679         rorl    $16,%ecx
 1680         movb    %cl,2(%edi)
 1681         shll    $16,%ecx
 1682 .L052dj2:
 1683         movb    %ch,1(%esi)
 1684 .L053dj1:
 1685         movb    %cl,(%esi)
 1686 .L050djend:
 1687         jmp     .L033finish
 1688 .L033finish:
 1689         movl    76(%esp),%ecx
 1690         addl    $32,%esp
 1691         movl    %eax,(%ecx)
 1692         movl    %ebx,4(%ecx)
 1693         popl    %edi
 1694         popl    %esi
 1695         popl    %ebx
 1696         popl    %ebp
 1697         ret
 1698 .align  64
 1699 .L035cbc_enc_jmp_table:
 1700 .long   0
 1701 .long   .L043ej1-.L034PIC_point
 1702 .long   .L042ej2-.L034PIC_point
 1703 .long   .L041ej3-.L034PIC_point
 1704 .long   .L039ej4-.L034PIC_point
 1705 .long   .L038ej5-.L034PIC_point
 1706 .long   .L037ej6-.L034PIC_point
 1707 .long   .L036ej7-.L034PIC_point
 1708 .align  64
 1709 .size   DES_ede3_cbc_encrypt,.-.L_DES_ede3_cbc_encrypt_begin
 1710 .align  64
 1711 DES_SPtrans:
 1712 .Ldes_sptrans:
 1713 .long   34080768,524288,33554434,34080770
 1714 .long   33554432,526338,524290,33554434
 1715 .long   526338,34080768,34078720,2050
 1716 .long   33556482,33554432,0,524290
 1717 .long   524288,2,33556480,526336
 1718 .long   34080770,34078720,2050,33556480
 1719 .long   2,2048,526336,34078722
 1720 .long   2048,33556482,34078722,0
 1721 .long   0,34080770,33556480,524290
 1722 .long   34080768,524288,2050,33556480
 1723 .long   34078722,2048,526336,33554434
 1724 .long   526338,2,33554434,34078720
 1725 .long   34080770,526336,34078720,33556482
 1726 .long   33554432,2050,524290,0
 1727 .long   524288,33554432,33556482,34080768
 1728 .long   2,34078722,2048,526338
 1729 .long   1074823184,0,1081344,1074790400
 1730 .long   1073741840,32784,1073774592,1081344
 1731 .long   32768,1074790416,16,1073774592
 1732 .long   1048592,1074823168,1074790400,16
 1733 .long   1048576,1073774608,1074790416,32768
 1734 .long   1081360,1073741824,0,1048592
 1735 .long   1073774608,1081360,1074823168,1073741840
 1736 .long   1073741824,1048576,32784,1074823184
 1737 .long   1048592,1074823168,1073774592,1081360
 1738 .long   1074823184,1048592,1073741840,0
 1739 .long   1073741824,32784,1048576,1074790416
 1740 .long   32768,1073741824,1081360,1073774608
 1741 .long   1074823168,32768,0,1073741840
 1742 .long   16,1074823184,1081344,1074790400
 1743 .long   1074790416,1048576,32784,1073774592
 1744 .long   1073774608,16,1074790400,1081344
 1745 .long   67108865,67371264,256,67109121
 1746 .long   262145,67108864,67109121,262400
 1747 .long   67109120,262144,67371008,1
 1748 .long   67371265,257,1,67371009
 1749 .long   0,262145,67371264,256
 1750 .long   257,67371265,262144,67108865
 1751 .long   67371009,67109120,262401,67371008
 1752 .long   262400,0,67108864,262401
 1753 .long   67371264,256,1,262144
 1754 .long   257,262145,67371008,67109121
 1755 .long   0,67371264,262400,67371009
 1756 .long   262145,67108864,67371265,1
 1757 .long   262401,67108865,67108864,67371265
 1758 .long   262144,67109120,67109121,262400
 1759 .long   67109120,0,67371009,257
 1760 .long   67108865,262401,256,67371008
 1761 .long   4198408,268439552,8,272633864
 1762 .long   0,272629760,268439560,4194312
 1763 .long   272633856,268435464,268435456,4104
 1764 .long   268435464,4198408,4194304,268435456
 1765 .long   272629768,4198400,4096,8
 1766 .long   4198400,268439560,272629760,4096
 1767 .long   4104,0,4194312,272633856
 1768 .long   268439552,272629768,272633864,4194304
 1769 .long   272629768,4104,4194304,268435464
 1770 .long   4198400,268439552,8,272629760
 1771 .long   268439560,0,4096,4194312
 1772 .long   0,272629768,272633856,4096
 1773 .long   268435456,272633864,4198408,4194304
 1774 .long   272633864,8,268439552,4198408
 1775 .long   4194312,4198400,272629760,268439560
 1776 .long   4104,268435456,268435464,272633856
 1777 .long   134217728,65536,1024,134284320
 1778 .long   134283296,134218752,66592,134283264
 1779 .long   65536,32,134217760,66560
 1780 .long   134218784,134283296,134284288,0
 1781 .long   66560,134217728,65568,1056
 1782 .long   134218752,66592,0,134217760
 1783 .long   32,134218784,134284320,65568
 1784 .long   134283264,1024,1056,134284288
 1785 .long   134284288,134218784,65568,134283264
 1786 .long   65536,32,134217760,134218752
 1787 .long   134217728,66560,134284320,0
 1788 .long   66592,134217728,1024,65568
 1789 .long   134218784,1024,0,134284320
 1790 .long   134283296,134284288,1056,65536
 1791 .long   66560,134283296,134218752,1056
 1792 .long   32,66592,134283264,134217760
 1793 .long   2147483712,2097216,0,2149588992
 1794 .long   2097216,8192,2147491904,2097152
 1795 .long   8256,2149589056,2105344,2147483648
 1796 .long   2147491840,2147483712,2149580800,2105408
 1797 .long   2097152,2147491904,2149580864,0
 1798 .long   8192,64,2149588992,2149580864
 1799 .long   2149589056,2149580800,2147483648,8256
 1800 .long   64,2105344,2105408,2147491840
 1801 .long   8256,2147483648,2147491840,2105408
 1802 .long   2149588992,2097216,0,2147491840
 1803 .long   2147483648,8192,2149580864,2097152
 1804 .long   2097216,2149589056,2105344,64
 1805 .long   2149589056,2105344,2097152,2147491904
 1806 .long   2147483712,2149580800,2105408,0
 1807 .long   8192,2147483712,2147491904,2149588992
 1808 .long   2149580800,8256,64,2149580864
 1809 .long   16384,512,16777728,16777220
 1810 .long   16794116,16388,16896,0
 1811 .long   16777216,16777732,516,16793600
 1812 .long   4,16794112,16793600,516
 1813 .long   16777732,16384,16388,16794116
 1814 .long   0,16777728,16777220,16896
 1815 .long   16793604,16900,16794112,4
 1816 .long   16900,16793604,512,16777216
 1817 .long   16900,16793600,16793604,516
 1818 .long   16384,512,16777216,16793604
 1819 .long   16777732,16900,16896,0
 1820 .long   512,16777220,4,16777728
 1821 .long   0,16777732,16777728,16896
 1822 .long   516,16384,16794116,16777216
 1823 .long   16794112,4,16388,16794116
 1824 .long   16777220,16794112,16793600,16388
 1825 .long   545259648,545390592,131200,0
 1826 .long   537001984,8388736,545259520,545390720
 1827 .long   128,536870912,8519680,131200
 1828 .long   8519808,537002112,536871040,545259520
 1829 .long   131072,8519808,8388736,537001984
 1830 .long   545390720,536871040,0,8519680
 1831 .long   536870912,8388608,537002112,545259648
 1832 .long   8388608,131072,545390592,128
 1833 .long   8388608,131072,536871040,545390720
 1834 .long   131200,536870912,0,8519680
 1835 .long   545259648,537002112,537001984,8388736
 1836 .long   545390592,128,8388736,537001984
 1837 .long   545390720,8388608,545259520,536871040
 1838 .long   8519680,131200,537002112,545259520
 1839 .long   128,545390592,8519808,0
 1840 .long   536870912,545259648,131072,8519808
 1841 #else
 1842 .text
 1843 .globl  DES_SPtrans
 1844 .type   _x86_DES_encrypt,@function
 1845 .align  16
 1846 _x86_DES_encrypt:
 1847         pushl   %ecx
 1848 
 1849         movl    (%ecx),%eax
 1850         xorl    %ebx,%ebx
 1851         movl    4(%ecx),%edx
 1852         xorl    %esi,%eax
 1853         xorl    %ecx,%ecx
 1854         xorl    %esi,%edx
 1855         andl    $0xfcfcfcfc,%eax
 1856         andl    $0xcfcfcfcf,%edx
 1857         movb    %al,%bl
 1858         movb    %ah,%cl
 1859         rorl    $4,%edx
 1860         xorl    (%ebp,%ebx,1),%edi
 1861         movb    %dl,%bl
 1862         xorl    0x200(%ebp,%ecx,1),%edi
 1863         movb    %dh,%cl
 1864         shrl    $16,%eax
 1865         xorl    0x100(%ebp,%ebx,1),%edi
 1866         movb    %ah,%bl
 1867         shrl    $16,%edx
 1868         xorl    0x300(%ebp,%ecx,1),%edi
 1869         movb    %dh,%cl
 1870         andl    $0xff,%eax
 1871         andl    $0xff,%edx
 1872         xorl    0x600(%ebp,%ebx,1),%edi
 1873         xorl    0x700(%ebp,%ecx,1),%edi
 1874         movl    (%esp),%ecx
 1875         xorl    0x400(%ebp,%eax,1),%edi
 1876         xorl    0x500(%ebp,%edx,1),%edi
 1877 
 1878         movl    8(%ecx),%eax
 1879         xorl    %ebx,%ebx
 1880         movl    12(%ecx),%edx
 1881         xorl    %edi,%eax
 1882         xorl    %ecx,%ecx
 1883         xorl    %edi,%edx
 1884         andl    $0xfcfcfcfc,%eax
 1885         andl    $0xcfcfcfcf,%edx
 1886         movb    %al,%bl
 1887         movb    %ah,%cl
 1888         rorl    $4,%edx
 1889         xorl    (%ebp,%ebx,1),%esi
 1890         movb    %dl,%bl
 1891         xorl    0x200(%ebp,%ecx,1),%esi
 1892         movb    %dh,%cl
 1893         shrl    $16,%eax
 1894         xorl    0x100(%ebp,%ebx,1),%esi
 1895         movb    %ah,%bl
 1896         shrl    $16,%edx
 1897         xorl    0x300(%ebp,%ecx,1),%esi
 1898         movb    %dh,%cl
 1899         andl    $0xff,%eax
 1900         andl    $0xff,%edx
 1901         xorl    0x600(%ebp,%ebx,1),%esi
 1902         xorl    0x700(%ebp,%ecx,1),%esi
 1903         movl    (%esp),%ecx
 1904         xorl    0x400(%ebp,%eax,1),%esi
 1905         xorl    0x500(%ebp,%edx,1),%esi
 1906 
 1907         movl    16(%ecx),%eax
 1908         xorl    %ebx,%ebx
 1909         movl    20(%ecx),%edx
 1910         xorl    %esi,%eax
 1911         xorl    %ecx,%ecx
 1912         xorl    %esi,%edx
 1913         andl    $0xfcfcfcfc,%eax
 1914         andl    $0xcfcfcfcf,%edx
 1915         movb    %al,%bl
 1916         movb    %ah,%cl
 1917         rorl    $4,%edx
 1918         xorl    (%ebp,%ebx,1),%edi
 1919         movb    %dl,%bl
 1920         xorl    0x200(%ebp,%ecx,1),%edi
 1921         movb    %dh,%cl
 1922         shrl    $16,%eax
 1923         xorl    0x100(%ebp,%ebx,1),%edi
 1924         movb    %ah,%bl
 1925         shrl    $16,%edx
 1926         xorl    0x300(%ebp,%ecx,1),%edi
 1927         movb    %dh,%cl
 1928         andl    $0xff,%eax
 1929         andl    $0xff,%edx
 1930         xorl    0x600(%ebp,%ebx,1),%edi
 1931         xorl    0x700(%ebp,%ecx,1),%edi
 1932         movl    (%esp),%ecx
 1933         xorl    0x400(%ebp,%eax,1),%edi
 1934         xorl    0x500(%ebp,%edx,1),%edi
 1935 
 1936         movl    24(%ecx),%eax
 1937         xorl    %ebx,%ebx
 1938         movl    28(%ecx),%edx
 1939         xorl    %edi,%eax
 1940         xorl    %ecx,%ecx
 1941         xorl    %edi,%edx
 1942         andl    $0xfcfcfcfc,%eax
 1943         andl    $0xcfcfcfcf,%edx
 1944         movb    %al,%bl
 1945         movb    %ah,%cl
 1946         rorl    $4,%edx
 1947         xorl    (%ebp,%ebx,1),%esi
 1948         movb    %dl,%bl
 1949         xorl    0x200(%ebp,%ecx,1),%esi
 1950         movb    %dh,%cl
 1951         shrl    $16,%eax
 1952         xorl    0x100(%ebp,%ebx,1),%esi
 1953         movb    %ah,%bl
 1954         shrl    $16,%edx
 1955         xorl    0x300(%ebp,%ecx,1),%esi
 1956         movb    %dh,%cl
 1957         andl    $0xff,%eax
 1958         andl    $0xff,%edx
 1959         xorl    0x600(%ebp,%ebx,1),%esi
 1960         xorl    0x700(%ebp,%ecx,1),%esi
 1961         movl    (%esp),%ecx
 1962         xorl    0x400(%ebp,%eax,1),%esi
 1963         xorl    0x500(%ebp,%edx,1),%esi
 1964 
 1965         movl    32(%ecx),%eax
 1966         xorl    %ebx,%ebx
 1967         movl    36(%ecx),%edx
 1968         xorl    %esi,%eax
 1969         xorl    %ecx,%ecx
 1970         xorl    %esi,%edx
 1971         andl    $0xfcfcfcfc,%eax
 1972         andl    $0xcfcfcfcf,%edx
 1973         movb    %al,%bl
 1974         movb    %ah,%cl
 1975         rorl    $4,%edx
 1976         xorl    (%ebp,%ebx,1),%edi
 1977         movb    %dl,%bl
 1978         xorl    0x200(%ebp,%ecx,1),%edi
 1979         movb    %dh,%cl
 1980         shrl    $16,%eax
 1981         xorl    0x100(%ebp,%ebx,1),%edi
 1982         movb    %ah,%bl
 1983         shrl    $16,%edx
 1984         xorl    0x300(%ebp,%ecx,1),%edi
 1985         movb    %dh,%cl
 1986         andl    $0xff,%eax
 1987         andl    $0xff,%edx
 1988         xorl    0x600(%ebp,%ebx,1),%edi
 1989         xorl    0x700(%ebp,%ecx,1),%edi
 1990         movl    (%esp),%ecx
 1991         xorl    0x400(%ebp,%eax,1),%edi
 1992         xorl    0x500(%ebp,%edx,1),%edi
 1993 
 1994         movl    40(%ecx),%eax
 1995         xorl    %ebx,%ebx
 1996         movl    44(%ecx),%edx
 1997         xorl    %edi,%eax
 1998         xorl    %ecx,%ecx
 1999         xorl    %edi,%edx
 2000         andl    $0xfcfcfcfc,%eax
 2001         andl    $0xcfcfcfcf,%edx
 2002         movb    %al,%bl
 2003         movb    %ah,%cl
 2004         rorl    $4,%edx
 2005         xorl    (%ebp,%ebx,1),%esi
 2006         movb    %dl,%bl
 2007         xorl    0x200(%ebp,%ecx,1),%esi
 2008         movb    %dh,%cl
 2009         shrl    $16,%eax
 2010         xorl    0x100(%ebp,%ebx,1),%esi
 2011         movb    %ah,%bl
 2012         shrl    $16,%edx
 2013         xorl    0x300(%ebp,%ecx,1),%esi
 2014         movb    %dh,%cl
 2015         andl    $0xff,%eax
 2016         andl    $0xff,%edx
 2017         xorl    0x600(%ebp,%ebx,1),%esi
 2018         xorl    0x700(%ebp,%ecx,1),%esi
 2019         movl    (%esp),%ecx
 2020         xorl    0x400(%ebp,%eax,1),%esi
 2021         xorl    0x500(%ebp,%edx,1),%esi
 2022 
 2023         movl    48(%ecx),%eax
 2024         xorl    %ebx,%ebx
 2025         movl    52(%ecx),%edx
 2026         xorl    %esi,%eax
 2027         xorl    %ecx,%ecx
 2028         xorl    %esi,%edx
 2029         andl    $0xfcfcfcfc,%eax
 2030         andl    $0xcfcfcfcf,%edx
 2031         movb    %al,%bl
 2032         movb    %ah,%cl
 2033         rorl    $4,%edx
 2034         xorl    (%ebp,%ebx,1),%edi
 2035         movb    %dl,%bl
 2036         xorl    0x200(%ebp,%ecx,1),%edi
 2037         movb    %dh,%cl
 2038         shrl    $16,%eax
 2039         xorl    0x100(%ebp,%ebx,1),%edi
 2040         movb    %ah,%bl
 2041         shrl    $16,%edx
 2042         xorl    0x300(%ebp,%ecx,1),%edi
 2043         movb    %dh,%cl
 2044         andl    $0xff,%eax
 2045         andl    $0xff,%edx
 2046         xorl    0x600(%ebp,%ebx,1),%edi
 2047         xorl    0x700(%ebp,%ecx,1),%edi
 2048         movl    (%esp),%ecx
 2049         xorl    0x400(%ebp,%eax,1),%edi
 2050         xorl    0x500(%ebp,%edx,1),%edi
 2051 
 2052         movl    56(%ecx),%eax
 2053         xorl    %ebx,%ebx
 2054         movl    60(%ecx),%edx
 2055         xorl    %edi,%eax
 2056         xorl    %ecx,%ecx
 2057         xorl    %edi,%edx
 2058         andl    $0xfcfcfcfc,%eax
 2059         andl    $0xcfcfcfcf,%edx
 2060         movb    %al,%bl
 2061         movb    %ah,%cl
 2062         rorl    $4,%edx
 2063         xorl    (%ebp,%ebx,1),%esi
 2064         movb    %dl,%bl
 2065         xorl    0x200(%ebp,%ecx,1),%esi
 2066         movb    %dh,%cl
 2067         shrl    $16,%eax
 2068         xorl    0x100(%ebp,%ebx,1),%esi
 2069         movb    %ah,%bl
 2070         shrl    $16,%edx
 2071         xorl    0x300(%ebp,%ecx,1),%esi
 2072         movb    %dh,%cl
 2073         andl    $0xff,%eax
 2074         andl    $0xff,%edx
 2075         xorl    0x600(%ebp,%ebx,1),%esi
 2076         xorl    0x700(%ebp,%ecx,1),%esi
 2077         movl    (%esp),%ecx
 2078         xorl    0x400(%ebp,%eax,1),%esi
 2079         xorl    0x500(%ebp,%edx,1),%esi
 2080 
 2081         movl    64(%ecx),%eax
 2082         xorl    %ebx,%ebx
 2083         movl    68(%ecx),%edx
 2084         xorl    %esi,%eax
 2085         xorl    %ecx,%ecx
 2086         xorl    %esi,%edx
 2087         andl    $0xfcfcfcfc,%eax
 2088         andl    $0xcfcfcfcf,%edx
 2089         movb    %al,%bl
 2090         movb    %ah,%cl
 2091         rorl    $4,%edx
 2092         xorl    (%ebp,%ebx,1),%edi
 2093         movb    %dl,%bl
 2094         xorl    0x200(%ebp,%ecx,1),%edi
 2095         movb    %dh,%cl
 2096         shrl    $16,%eax
 2097         xorl    0x100(%ebp,%ebx,1),%edi
 2098         movb    %ah,%bl
 2099         shrl    $16,%edx
 2100         xorl    0x300(%ebp,%ecx,1),%edi
 2101         movb    %dh,%cl
 2102         andl    $0xff,%eax
 2103         andl    $0xff,%edx
 2104         xorl    0x600(%ebp,%ebx,1),%edi
 2105         xorl    0x700(%ebp,%ecx,1),%edi
 2106         movl    (%esp),%ecx
 2107         xorl    0x400(%ebp,%eax,1),%edi
 2108         xorl    0x500(%ebp,%edx,1),%edi
 2109 
 2110         movl    72(%ecx),%eax
 2111         xorl    %ebx,%ebx
 2112         movl    76(%ecx),%edx
 2113         xorl    %edi,%eax
 2114         xorl    %ecx,%ecx
 2115         xorl    %edi,%edx
 2116         andl    $0xfcfcfcfc,%eax
 2117         andl    $0xcfcfcfcf,%edx
 2118         movb    %al,%bl
 2119         movb    %ah,%cl
 2120         rorl    $4,%edx
 2121         xorl    (%ebp,%ebx,1),%esi
 2122         movb    %dl,%bl
 2123         xorl    0x200(%ebp,%ecx,1),%esi
 2124         movb    %dh,%cl
 2125         shrl    $16,%eax
 2126         xorl    0x100(%ebp,%ebx,1),%esi
 2127         movb    %ah,%bl
 2128         shrl    $16,%edx
 2129         xorl    0x300(%ebp,%ecx,1),%esi
 2130         movb    %dh,%cl
 2131         andl    $0xff,%eax
 2132         andl    $0xff,%edx
 2133         xorl    0x600(%ebp,%ebx,1),%esi
 2134         xorl    0x700(%ebp,%ecx,1),%esi
 2135         movl    (%esp),%ecx
 2136         xorl    0x400(%ebp,%eax,1),%esi
 2137         xorl    0x500(%ebp,%edx,1),%esi
 2138 
 2139         movl    80(%ecx),%eax
 2140         xorl    %ebx,%ebx
 2141         movl    84(%ecx),%edx
 2142         xorl    %esi,%eax
 2143         xorl    %ecx,%ecx
 2144         xorl    %esi,%edx
 2145         andl    $0xfcfcfcfc,%eax
 2146         andl    $0xcfcfcfcf,%edx
 2147         movb    %al,%bl
 2148         movb    %ah,%cl
 2149         rorl    $4,%edx
 2150         xorl    (%ebp,%ebx,1),%edi
 2151         movb    %dl,%bl
 2152         xorl    0x200(%ebp,%ecx,1),%edi
 2153         movb    %dh,%cl
 2154         shrl    $16,%eax
 2155         xorl    0x100(%ebp,%ebx,1),%edi
 2156         movb    %ah,%bl
 2157         shrl    $16,%edx
 2158         xorl    0x300(%ebp,%ecx,1),%edi
 2159         movb    %dh,%cl
 2160         andl    $0xff,%eax
 2161         andl    $0xff,%edx
 2162         xorl    0x600(%ebp,%ebx,1),%edi
 2163         xorl    0x700(%ebp,%ecx,1),%edi
 2164         movl    (%esp),%ecx
 2165         xorl    0x400(%ebp,%eax,1),%edi
 2166         xorl    0x500(%ebp,%edx,1),%edi
 2167 
 2168         movl    88(%ecx),%eax
 2169         xorl    %ebx,%ebx
 2170         movl    92(%ecx),%edx
 2171         xorl    %edi,%eax
 2172         xorl    %ecx,%ecx
 2173         xorl    %edi,%edx
 2174         andl    $0xfcfcfcfc,%eax
 2175         andl    $0xcfcfcfcf,%edx
 2176         movb    %al,%bl
 2177         movb    %ah,%cl
 2178         rorl    $4,%edx
 2179         xorl    (%ebp,%ebx,1),%esi
 2180         movb    %dl,%bl
 2181         xorl    0x200(%ebp,%ecx,1),%esi
 2182         movb    %dh,%cl
 2183         shrl    $16,%eax
 2184         xorl    0x100(%ebp,%ebx,1),%esi
 2185         movb    %ah,%bl
 2186         shrl    $16,%edx
 2187         xorl    0x300(%ebp,%ecx,1),%esi
 2188         movb    %dh,%cl
 2189         andl    $0xff,%eax
 2190         andl    $0xff,%edx
 2191         xorl    0x600(%ebp,%ebx,1),%esi
 2192         xorl    0x700(%ebp,%ecx,1),%esi
 2193         movl    (%esp),%ecx
 2194         xorl    0x400(%ebp,%eax,1),%esi
 2195         xorl    0x500(%ebp,%edx,1),%esi
 2196 
 2197         movl    96(%ecx),%eax
 2198         xorl    %ebx,%ebx
 2199         movl    100(%ecx),%edx
 2200         xorl    %esi,%eax
 2201         xorl    %ecx,%ecx
 2202         xorl    %esi,%edx
 2203         andl    $0xfcfcfcfc,%eax
 2204         andl    $0xcfcfcfcf,%edx
 2205         movb    %al,%bl
 2206         movb    %ah,%cl
 2207         rorl    $4,%edx
 2208         xorl    (%ebp,%ebx,1),%edi
 2209         movb    %dl,%bl
 2210         xorl    0x200(%ebp,%ecx,1),%edi
 2211         movb    %dh,%cl
 2212         shrl    $16,%eax
 2213         xorl    0x100(%ebp,%ebx,1),%edi
 2214         movb    %ah,%bl
 2215         shrl    $16,%edx
 2216         xorl    0x300(%ebp,%ecx,1),%edi
 2217         movb    %dh,%cl
 2218         andl    $0xff,%eax
 2219         andl    $0xff,%edx
 2220         xorl    0x600(%ebp,%ebx,1),%edi
 2221         xorl    0x700(%ebp,%ecx,1),%edi
 2222         movl    (%esp),%ecx
 2223         xorl    0x400(%ebp,%eax,1),%edi
 2224         xorl    0x500(%ebp,%edx,1),%edi
 2225 
 2226         movl    104(%ecx),%eax
 2227         xorl    %ebx,%ebx
 2228         movl    108(%ecx),%edx
 2229         xorl    %edi,%eax
 2230         xorl    %ecx,%ecx
 2231         xorl    %edi,%edx
 2232         andl    $0xfcfcfcfc,%eax
 2233         andl    $0xcfcfcfcf,%edx
 2234         movb    %al,%bl
 2235         movb    %ah,%cl
 2236         rorl    $4,%edx
 2237         xorl    (%ebp,%ebx,1),%esi
 2238         movb    %dl,%bl
 2239         xorl    0x200(%ebp,%ecx,1),%esi
 2240         movb    %dh,%cl
 2241         shrl    $16,%eax
 2242         xorl    0x100(%ebp,%ebx,1),%esi
 2243         movb    %ah,%bl
 2244         shrl    $16,%edx
 2245         xorl    0x300(%ebp,%ecx,1),%esi
 2246         movb    %dh,%cl
 2247         andl    $0xff,%eax
 2248         andl    $0xff,%edx
 2249         xorl    0x600(%ebp,%ebx,1),%esi
 2250         xorl    0x700(%ebp,%ecx,1),%esi
 2251         movl    (%esp),%ecx
 2252         xorl    0x400(%ebp,%eax,1),%esi
 2253         xorl    0x500(%ebp,%edx,1),%esi
 2254 
 2255         movl    112(%ecx),%eax
 2256         xorl    %ebx,%ebx
 2257         movl    116(%ecx),%edx
 2258         xorl    %esi,%eax
 2259         xorl    %ecx,%ecx
 2260         xorl    %esi,%edx
 2261         andl    $0xfcfcfcfc,%eax
 2262         andl    $0xcfcfcfcf,%edx
 2263         movb    %al,%bl
 2264         movb    %ah,%cl
 2265         rorl    $4,%edx
 2266         xorl    (%ebp,%ebx,1),%edi
 2267         movb    %dl,%bl
 2268         xorl    0x200(%ebp,%ecx,1),%edi
 2269         movb    %dh,%cl
 2270         shrl    $16,%eax
 2271         xorl    0x100(%ebp,%ebx,1),%edi
 2272         movb    %ah,%bl
 2273         shrl    $16,%edx
 2274         xorl    0x300(%ebp,%ecx,1),%edi
 2275         movb    %dh,%cl
 2276         andl    $0xff,%eax
 2277         andl    $0xff,%edx
 2278         xorl    0x600(%ebp,%ebx,1),%edi
 2279         xorl    0x700(%ebp,%ecx,1),%edi
 2280         movl    (%esp),%ecx
 2281         xorl    0x400(%ebp,%eax,1),%edi
 2282         xorl    0x500(%ebp,%edx,1),%edi
 2283 
 2284         movl    120(%ecx),%eax
 2285         xorl    %ebx,%ebx
 2286         movl    124(%ecx),%edx
 2287         xorl    %edi,%eax
 2288         xorl    %ecx,%ecx
 2289         xorl    %edi,%edx
 2290         andl    $0xfcfcfcfc,%eax
 2291         andl    $0xcfcfcfcf,%edx
 2292         movb    %al,%bl
 2293         movb    %ah,%cl
 2294         rorl    $4,%edx
 2295         xorl    (%ebp,%ebx,1),%esi
 2296         movb    %dl,%bl
 2297         xorl    0x200(%ebp,%ecx,1),%esi
 2298         movb    %dh,%cl
 2299         shrl    $16,%eax
 2300         xorl    0x100(%ebp,%ebx,1),%esi
 2301         movb    %ah,%bl
 2302         shrl    $16,%edx
 2303         xorl    0x300(%ebp,%ecx,1),%esi
 2304         movb    %dh,%cl
 2305         andl    $0xff,%eax
 2306         andl    $0xff,%edx
 2307         xorl    0x600(%ebp,%ebx,1),%esi
 2308         xorl    0x700(%ebp,%ecx,1),%esi
 2309         movl    (%esp),%ecx
 2310         xorl    0x400(%ebp,%eax,1),%esi
 2311         xorl    0x500(%ebp,%edx,1),%esi
 2312         addl    $4,%esp
 2313         ret
 2314 .size   _x86_DES_encrypt,.-_x86_DES_encrypt
 2315 .type   _x86_DES_decrypt,@function
 2316 .align  16
 2317 _x86_DES_decrypt:
 2318         pushl   %ecx
 2319 
 2320         movl    120(%ecx),%eax
 2321         xorl    %ebx,%ebx
 2322         movl    124(%ecx),%edx
 2323         xorl    %esi,%eax
 2324         xorl    %ecx,%ecx
 2325         xorl    %esi,%edx
 2326         andl    $0xfcfcfcfc,%eax
 2327         andl    $0xcfcfcfcf,%edx
 2328         movb    %al,%bl
 2329         movb    %ah,%cl
 2330         rorl    $4,%edx
 2331         xorl    (%ebp,%ebx,1),%edi
 2332         movb    %dl,%bl
 2333         xorl    0x200(%ebp,%ecx,1),%edi
 2334         movb    %dh,%cl
 2335         shrl    $16,%eax
 2336         xorl    0x100(%ebp,%ebx,1),%edi
 2337         movb    %ah,%bl
 2338         shrl    $16,%edx
 2339         xorl    0x300(%ebp,%ecx,1),%edi
 2340         movb    %dh,%cl
 2341         andl    $0xff,%eax
 2342         andl    $0xff,%edx
 2343         xorl    0x600(%ebp,%ebx,1),%edi
 2344         xorl    0x700(%ebp,%ecx,1),%edi
 2345         movl    (%esp),%ecx
 2346         xorl    0x400(%ebp,%eax,1),%edi
 2347         xorl    0x500(%ebp,%edx,1),%edi
 2348 
 2349         movl    112(%ecx),%eax
 2350         xorl    %ebx,%ebx
 2351         movl    116(%ecx),%edx
 2352         xorl    %edi,%eax
 2353         xorl    %ecx,%ecx
 2354         xorl    %edi,%edx
 2355         andl    $0xfcfcfcfc,%eax
 2356         andl    $0xcfcfcfcf,%edx
 2357         movb    %al,%bl
 2358         movb    %ah,%cl
 2359         rorl    $4,%edx
 2360         xorl    (%ebp,%ebx,1),%esi
 2361         movb    %dl,%bl
 2362         xorl    0x200(%ebp,%ecx,1),%esi
 2363         movb    %dh,%cl
 2364         shrl    $16,%eax
 2365         xorl    0x100(%ebp,%ebx,1),%esi
 2366         movb    %ah,%bl
 2367         shrl    $16,%edx
 2368         xorl    0x300(%ebp,%ecx,1),%esi
 2369         movb    %dh,%cl
 2370         andl    $0xff,%eax
 2371         andl    $0xff,%edx
 2372         xorl    0x600(%ebp,%ebx,1),%esi
 2373         xorl    0x700(%ebp,%ecx,1),%esi
 2374         movl    (%esp),%ecx
 2375         xorl    0x400(%ebp,%eax,1),%esi
 2376         xorl    0x500(%ebp,%edx,1),%esi
 2377 
 2378         movl    104(%ecx),%eax
 2379         xorl    %ebx,%ebx
 2380         movl    108(%ecx),%edx
 2381         xorl    %esi,%eax
 2382         xorl    %ecx,%ecx
 2383         xorl    %esi,%edx
 2384         andl    $0xfcfcfcfc,%eax
 2385         andl    $0xcfcfcfcf,%edx
 2386         movb    %al,%bl
 2387         movb    %ah,%cl
 2388         rorl    $4,%edx
 2389         xorl    (%ebp,%ebx,1),%edi
 2390         movb    %dl,%bl
 2391         xorl    0x200(%ebp,%ecx,1),%edi
 2392         movb    %dh,%cl
 2393         shrl    $16,%eax
 2394         xorl    0x100(%ebp,%ebx,1),%edi
 2395         movb    %ah,%bl
 2396         shrl    $16,%edx
 2397         xorl    0x300(%ebp,%ecx,1),%edi
 2398         movb    %dh,%cl
 2399         andl    $0xff,%eax
 2400         andl    $0xff,%edx
 2401         xorl    0x600(%ebp,%ebx,1),%edi
 2402         xorl    0x700(%ebp,%ecx,1),%edi
 2403         movl    (%esp),%ecx
 2404         xorl    0x400(%ebp,%eax,1),%edi
 2405         xorl    0x500(%ebp,%edx,1),%edi
 2406 
 2407         movl    96(%ecx),%eax
 2408         xorl    %ebx,%ebx
 2409         movl    100(%ecx),%edx
 2410         xorl    %edi,%eax
 2411         xorl    %ecx,%ecx
 2412         xorl    %edi,%edx
 2413         andl    $0xfcfcfcfc,%eax
 2414         andl    $0xcfcfcfcf,%edx
 2415         movb    %al,%bl
 2416         movb    %ah,%cl
 2417         rorl    $4,%edx
 2418         xorl    (%ebp,%ebx,1),%esi
 2419         movb    %dl,%bl
 2420         xorl    0x200(%ebp,%ecx,1),%esi
 2421         movb    %dh,%cl
 2422         shrl    $16,%eax
 2423         xorl    0x100(%ebp,%ebx,1),%esi
 2424         movb    %ah,%bl
 2425         shrl    $16,%edx
 2426         xorl    0x300(%ebp,%ecx,1),%esi
 2427         movb    %dh,%cl
 2428         andl    $0xff,%eax
 2429         andl    $0xff,%edx
 2430         xorl    0x600(%ebp,%ebx,1),%esi
 2431         xorl    0x700(%ebp,%ecx,1),%esi
 2432         movl    (%esp),%ecx
 2433         xorl    0x400(%ebp,%eax,1),%esi
 2434         xorl    0x500(%ebp,%edx,1),%esi
 2435 
 2436         movl    88(%ecx),%eax
 2437         xorl    %ebx,%ebx
 2438         movl    92(%ecx),%edx
 2439         xorl    %esi,%eax
 2440         xorl    %ecx,%ecx
 2441         xorl    %esi,%edx
 2442         andl    $0xfcfcfcfc,%eax
 2443         andl    $0xcfcfcfcf,%edx
 2444         movb    %al,%bl
 2445         movb    %ah,%cl
 2446         rorl    $4,%edx
 2447         xorl    (%ebp,%ebx,1),%edi
 2448         movb    %dl,%bl
 2449         xorl    0x200(%ebp,%ecx,1),%edi
 2450         movb    %dh,%cl
 2451         shrl    $16,%eax
 2452         xorl    0x100(%ebp,%ebx,1),%edi
 2453         movb    %ah,%bl
 2454         shrl    $16,%edx
 2455         xorl    0x300(%ebp,%ecx,1),%edi
 2456         movb    %dh,%cl
 2457         andl    $0xff,%eax
 2458         andl    $0xff,%edx
 2459         xorl    0x600(%ebp,%ebx,1),%edi
 2460         xorl    0x700(%ebp,%ecx,1),%edi
 2461         movl    (%esp),%ecx
 2462         xorl    0x400(%ebp,%eax,1),%edi
 2463         xorl    0x500(%ebp,%edx,1),%edi
 2464 
 2465         movl    80(%ecx),%eax
 2466         xorl    %ebx,%ebx
 2467         movl    84(%ecx),%edx
 2468         xorl    %edi,%eax
 2469         xorl    %ecx,%ecx
 2470         xorl    %edi,%edx
 2471         andl    $0xfcfcfcfc,%eax
 2472         andl    $0xcfcfcfcf,%edx
 2473         movb    %al,%bl
 2474         movb    %ah,%cl
 2475         rorl    $4,%edx
 2476         xorl    (%ebp,%ebx,1),%esi
 2477         movb    %dl,%bl
 2478         xorl    0x200(%ebp,%ecx,1),%esi
 2479         movb    %dh,%cl
 2480         shrl    $16,%eax
 2481         xorl    0x100(%ebp,%ebx,1),%esi
 2482         movb    %ah,%bl
 2483         shrl    $16,%edx
 2484         xorl    0x300(%ebp,%ecx,1),%esi
 2485         movb    %dh,%cl
 2486         andl    $0xff,%eax
 2487         andl    $0xff,%edx
 2488         xorl    0x600(%ebp,%ebx,1),%esi
 2489         xorl    0x700(%ebp,%ecx,1),%esi
 2490         movl    (%esp),%ecx
 2491         xorl    0x400(%ebp,%eax,1),%esi
 2492         xorl    0x500(%ebp,%edx,1),%esi
 2493 
 2494         movl    72(%ecx),%eax
 2495         xorl    %ebx,%ebx
 2496         movl    76(%ecx),%edx
 2497         xorl    %esi,%eax
 2498         xorl    %ecx,%ecx
 2499         xorl    %esi,%edx
 2500         andl    $0xfcfcfcfc,%eax
 2501         andl    $0xcfcfcfcf,%edx
 2502         movb    %al,%bl
 2503         movb    %ah,%cl
 2504         rorl    $4,%edx
 2505         xorl    (%ebp,%ebx,1),%edi
 2506         movb    %dl,%bl
 2507         xorl    0x200(%ebp,%ecx,1),%edi
 2508         movb    %dh,%cl
 2509         shrl    $16,%eax
 2510         xorl    0x100(%ebp,%ebx,1),%edi
 2511         movb    %ah,%bl
 2512         shrl    $16,%edx
 2513         xorl    0x300(%ebp,%ecx,1),%edi
 2514         movb    %dh,%cl
 2515         andl    $0xff,%eax
 2516         andl    $0xff,%edx
 2517         xorl    0x600(%ebp,%ebx,1),%edi
 2518         xorl    0x700(%ebp,%ecx,1),%edi
 2519         movl    (%esp),%ecx
 2520         xorl    0x400(%ebp,%eax,1),%edi
 2521         xorl    0x500(%ebp,%edx,1),%edi
 2522 
 2523         movl    64(%ecx),%eax
 2524         xorl    %ebx,%ebx
 2525         movl    68(%ecx),%edx
 2526         xorl    %edi,%eax
 2527         xorl    %ecx,%ecx
 2528         xorl    %edi,%edx
 2529         andl    $0xfcfcfcfc,%eax
 2530         andl    $0xcfcfcfcf,%edx
 2531         movb    %al,%bl
 2532         movb    %ah,%cl
 2533         rorl    $4,%edx
 2534         xorl    (%ebp,%ebx,1),%esi
 2535         movb    %dl,%bl
 2536         xorl    0x200(%ebp,%ecx,1),%esi
 2537         movb    %dh,%cl
 2538         shrl    $16,%eax
 2539         xorl    0x100(%ebp,%ebx,1),%esi
 2540         movb    %ah,%bl
 2541         shrl    $16,%edx
 2542         xorl    0x300(%ebp,%ecx,1),%esi
 2543         movb    %dh,%cl
 2544         andl    $0xff,%eax
 2545         andl    $0xff,%edx
 2546         xorl    0x600(%ebp,%ebx,1),%esi
 2547         xorl    0x700(%ebp,%ecx,1),%esi
 2548         movl    (%esp),%ecx
 2549         xorl    0x400(%ebp,%eax,1),%esi
 2550         xorl    0x500(%ebp,%edx,1),%esi
 2551 
 2552         movl    56(%ecx),%eax
 2553         xorl    %ebx,%ebx
 2554         movl    60(%ecx),%edx
 2555         xorl    %esi,%eax
 2556         xorl    %ecx,%ecx
 2557         xorl    %esi,%edx
 2558         andl    $0xfcfcfcfc,%eax
 2559         andl    $0xcfcfcfcf,%edx
 2560         movb    %al,%bl
 2561         movb    %ah,%cl
 2562         rorl    $4,%edx
 2563         xorl    (%ebp,%ebx,1),%edi
 2564         movb    %dl,%bl
 2565         xorl    0x200(%ebp,%ecx,1),%edi
 2566         movb    %dh,%cl
 2567         shrl    $16,%eax
 2568         xorl    0x100(%ebp,%ebx,1),%edi
 2569         movb    %ah,%bl
 2570         shrl    $16,%edx
 2571         xorl    0x300(%ebp,%ecx,1),%edi
 2572         movb    %dh,%cl
 2573         andl    $0xff,%eax
 2574         andl    $0xff,%edx
 2575         xorl    0x600(%ebp,%ebx,1),%edi
 2576         xorl    0x700(%ebp,%ecx,1),%edi
 2577         movl    (%esp),%ecx
 2578         xorl    0x400(%ebp,%eax,1),%edi
 2579         xorl    0x500(%ebp,%edx,1),%edi
 2580 
 2581         movl    48(%ecx),%eax
 2582         xorl    %ebx,%ebx
 2583         movl    52(%ecx),%edx
 2584         xorl    %edi,%eax
 2585         xorl    %ecx,%ecx
 2586         xorl    %edi,%edx
 2587         andl    $0xfcfcfcfc,%eax
 2588         andl    $0xcfcfcfcf,%edx
 2589         movb    %al,%bl
 2590         movb    %ah,%cl
 2591         rorl    $4,%edx
 2592         xorl    (%ebp,%ebx,1),%esi
 2593         movb    %dl,%bl
 2594         xorl    0x200(%ebp,%ecx,1),%esi
 2595         movb    %dh,%cl
 2596         shrl    $16,%eax
 2597         xorl    0x100(%ebp,%ebx,1),%esi
 2598         movb    %ah,%bl
 2599         shrl    $16,%edx
 2600         xorl    0x300(%ebp,%ecx,1),%esi
 2601         movb    %dh,%cl
 2602         andl    $0xff,%eax
 2603         andl    $0xff,%edx
 2604         xorl    0x600(%ebp,%ebx,1),%esi
 2605         xorl    0x700(%ebp,%ecx,1),%esi
 2606         movl    (%esp),%ecx
 2607         xorl    0x400(%ebp,%eax,1),%esi
 2608         xorl    0x500(%ebp,%edx,1),%esi
 2609 
 2610         movl    40(%ecx),%eax
 2611         xorl    %ebx,%ebx
 2612         movl    44(%ecx),%edx
 2613         xorl    %esi,%eax
 2614         xorl    %ecx,%ecx
 2615         xorl    %esi,%edx
 2616         andl    $0xfcfcfcfc,%eax
 2617         andl    $0xcfcfcfcf,%edx
 2618         movb    %al,%bl
 2619         movb    %ah,%cl
 2620         rorl    $4,%edx
 2621         xorl    (%ebp,%ebx,1),%edi
 2622         movb    %dl,%bl
 2623         xorl    0x200(%ebp,%ecx,1),%edi
 2624         movb    %dh,%cl
 2625         shrl    $16,%eax
 2626         xorl    0x100(%ebp,%ebx,1),%edi
 2627         movb    %ah,%bl
 2628         shrl    $16,%edx
 2629         xorl    0x300(%ebp,%ecx,1),%edi
 2630         movb    %dh,%cl
 2631         andl    $0xff,%eax
 2632         andl    $0xff,%edx
 2633         xorl    0x600(%ebp,%ebx,1),%edi
 2634         xorl    0x700(%ebp,%ecx,1),%edi
 2635         movl    (%esp),%ecx
 2636         xorl    0x400(%ebp,%eax,1),%edi
 2637         xorl    0x500(%ebp,%edx,1),%edi
 2638 
 2639         movl    32(%ecx),%eax
 2640         xorl    %ebx,%ebx
 2641         movl    36(%ecx),%edx
 2642         xorl    %edi,%eax
 2643         xorl    %ecx,%ecx
 2644         xorl    %edi,%edx
 2645         andl    $0xfcfcfcfc,%eax
 2646         andl    $0xcfcfcfcf,%edx
 2647         movb    %al,%bl
 2648         movb    %ah,%cl
 2649         rorl    $4,%edx
 2650         xorl    (%ebp,%ebx,1),%esi
 2651         movb    %dl,%bl
 2652         xorl    0x200(%ebp,%ecx,1),%esi
 2653         movb    %dh,%cl
 2654         shrl    $16,%eax
 2655         xorl    0x100(%ebp,%ebx,1),%esi
 2656         movb    %ah,%bl
 2657         shrl    $16,%edx
 2658         xorl    0x300(%ebp,%ecx,1),%esi
 2659         movb    %dh,%cl
 2660         andl    $0xff,%eax
 2661         andl    $0xff,%edx
 2662         xorl    0x600(%ebp,%ebx,1),%esi
 2663         xorl    0x700(%ebp,%ecx,1),%esi
 2664         movl    (%esp),%ecx
 2665         xorl    0x400(%ebp,%eax,1),%esi
 2666         xorl    0x500(%ebp,%edx,1),%esi
 2667 
 2668         movl    24(%ecx),%eax
 2669         xorl    %ebx,%ebx
 2670         movl    28(%ecx),%edx
 2671         xorl    %esi,%eax
 2672         xorl    %ecx,%ecx
 2673         xorl    %esi,%edx
 2674         andl    $0xfcfcfcfc,%eax
 2675         andl    $0xcfcfcfcf,%edx
 2676         movb    %al,%bl
 2677         movb    %ah,%cl
 2678         rorl    $4,%edx
 2679         xorl    (%ebp,%ebx,1),%edi
 2680         movb    %dl,%bl
 2681         xorl    0x200(%ebp,%ecx,1),%edi
 2682         movb    %dh,%cl
 2683         shrl    $16,%eax
 2684         xorl    0x100(%ebp,%ebx,1),%edi
 2685         movb    %ah,%bl
 2686         shrl    $16,%edx
 2687         xorl    0x300(%ebp,%ecx,1),%edi
 2688         movb    %dh,%cl
 2689         andl    $0xff,%eax
 2690         andl    $0xff,%edx
 2691         xorl    0x600(%ebp,%ebx,1),%edi
 2692         xorl    0x700(%ebp,%ecx,1),%edi
 2693         movl    (%esp),%ecx
 2694         xorl    0x400(%ebp,%eax,1),%edi
 2695         xorl    0x500(%ebp,%edx,1),%edi
 2696 
 2697         movl    16(%ecx),%eax
 2698         xorl    %ebx,%ebx
 2699         movl    20(%ecx),%edx
 2700         xorl    %edi,%eax
 2701         xorl    %ecx,%ecx
 2702         xorl    %edi,%edx
 2703         andl    $0xfcfcfcfc,%eax
 2704         andl    $0xcfcfcfcf,%edx
 2705         movb    %al,%bl
 2706         movb    %ah,%cl
 2707         rorl    $4,%edx
 2708         xorl    (%ebp,%ebx,1),%esi
 2709         movb    %dl,%bl
 2710         xorl    0x200(%ebp,%ecx,1),%esi
 2711         movb    %dh,%cl
 2712         shrl    $16,%eax
 2713         xorl    0x100(%ebp,%ebx,1),%esi
 2714         movb    %ah,%bl
 2715         shrl    $16,%edx
 2716         xorl    0x300(%ebp,%ecx,1),%esi
 2717         movb    %dh,%cl
 2718         andl    $0xff,%eax
 2719         andl    $0xff,%edx
 2720         xorl    0x600(%ebp,%ebx,1),%esi
 2721         xorl    0x700(%ebp,%ecx,1),%esi
 2722         movl    (%esp),%ecx
 2723         xorl    0x400(%ebp,%eax,1),%esi
 2724         xorl    0x500(%ebp,%edx,1),%esi
 2725 
 2726         movl    8(%ecx),%eax
 2727         xorl    %ebx,%ebx
 2728         movl    12(%ecx),%edx
 2729         xorl    %esi,%eax
 2730         xorl    %ecx,%ecx
 2731         xorl    %esi,%edx
 2732         andl    $0xfcfcfcfc,%eax
 2733         andl    $0xcfcfcfcf,%edx
 2734         movb    %al,%bl
 2735         movb    %ah,%cl
 2736         rorl    $4,%edx
 2737         xorl    (%ebp,%ebx,1),%edi
 2738         movb    %dl,%bl
 2739         xorl    0x200(%ebp,%ecx,1),%edi
 2740         movb    %dh,%cl
 2741         shrl    $16,%eax
 2742         xorl    0x100(%ebp,%ebx,1),%edi
 2743         movb    %ah,%bl
 2744         shrl    $16,%edx
 2745         xorl    0x300(%ebp,%ecx,1),%edi
 2746         movb    %dh,%cl
 2747         andl    $0xff,%eax
 2748         andl    $0xff,%edx
 2749         xorl    0x600(%ebp,%ebx,1),%edi
 2750         xorl    0x700(%ebp,%ecx,1),%edi
 2751         movl    (%esp),%ecx
 2752         xorl    0x400(%ebp,%eax,1),%edi
 2753         xorl    0x500(%ebp,%edx,1),%edi
 2754 
 2755         movl    (%ecx),%eax
 2756         xorl    %ebx,%ebx
 2757         movl    4(%ecx),%edx
 2758         xorl    %edi,%eax
 2759         xorl    %ecx,%ecx
 2760         xorl    %edi,%edx
 2761         andl    $0xfcfcfcfc,%eax
 2762         andl    $0xcfcfcfcf,%edx
 2763         movb    %al,%bl
 2764         movb    %ah,%cl
 2765         rorl    $4,%edx
 2766         xorl    (%ebp,%ebx,1),%esi
 2767         movb    %dl,%bl
 2768         xorl    0x200(%ebp,%ecx,1),%esi
 2769         movb    %dh,%cl
 2770         shrl    $16,%eax
 2771         xorl    0x100(%ebp,%ebx,1),%esi
 2772         movb    %ah,%bl
 2773         shrl    $16,%edx
 2774         xorl    0x300(%ebp,%ecx,1),%esi
 2775         movb    %dh,%cl
 2776         andl    $0xff,%eax
 2777         andl    $0xff,%edx
 2778         xorl    0x600(%ebp,%ebx,1),%esi
 2779         xorl    0x700(%ebp,%ecx,1),%esi
 2780         movl    (%esp),%ecx
 2781         xorl    0x400(%ebp,%eax,1),%esi
 2782         xorl    0x500(%ebp,%edx,1),%esi
 2783         addl    $4,%esp
 2784         ret
 2785 .size   _x86_DES_decrypt,.-_x86_DES_decrypt
 2786 .globl  DES_encrypt1
 2787 .type   DES_encrypt1,@function
 2788 .align  16
 2789 DES_encrypt1:
 2790 .L_DES_encrypt1_begin:
 2791         pushl   %esi
 2792         pushl   %edi
 2793 
 2794 
 2795         movl    12(%esp),%esi
 2796         xorl    %ecx,%ecx
 2797         pushl   %ebx
 2798         pushl   %ebp
 2799         movl    (%esi),%eax
 2800         movl    28(%esp),%ebx
 2801         movl    4(%esi),%edi
 2802 
 2803 
 2804         roll    $4,%eax
 2805         movl    %eax,%esi
 2806         xorl    %edi,%eax
 2807         andl    $0xf0f0f0f0,%eax
 2808         xorl    %eax,%esi
 2809         xorl    %eax,%edi
 2810 
 2811         roll    $20,%edi
 2812         movl    %edi,%eax
 2813         xorl    %esi,%edi
 2814         andl    $0xfff0000f,%edi
 2815         xorl    %edi,%eax
 2816         xorl    %edi,%esi
 2817 
 2818         roll    $14,%eax
 2819         movl    %eax,%edi
 2820         xorl    %esi,%eax
 2821         andl    $0x33333333,%eax
 2822         xorl    %eax,%edi
 2823         xorl    %eax,%esi
 2824 
 2825         roll    $22,%esi
 2826         movl    %esi,%eax
 2827         xorl    %edi,%esi
 2828         andl    $0x03fc03fc,%esi
 2829         xorl    %esi,%eax
 2830         xorl    %esi,%edi
 2831 
 2832         roll    $9,%eax
 2833         movl    %eax,%esi
 2834         xorl    %edi,%eax
 2835         andl    $0xaaaaaaaa,%eax
 2836         xorl    %eax,%esi
 2837         xorl    %eax,%edi
 2838 
 2839         roll    $1,%edi
 2840         call    .L000pic_point
 2841 .L000pic_point:
 2842         popl    %ebp
 2843         leal    .Ldes_sptrans-.L000pic_point(%ebp),%ebp
 2844         movl    24(%esp),%ecx
 2845         cmpl    $0,%ebx
 2846         je      .L001decrypt
 2847         call    _x86_DES_encrypt
 2848         jmp     .L002done
 2849 .L001decrypt:
 2850         call    _x86_DES_decrypt
 2851 .L002done:
 2852 
 2853 
 2854         movl    20(%esp),%edx
 2855         rorl    $1,%esi
 2856         movl    %edi,%eax
 2857         xorl    %esi,%edi
 2858         andl    $0xaaaaaaaa,%edi
 2859         xorl    %edi,%eax
 2860         xorl    %edi,%esi
 2861 
 2862         roll    $23,%eax
 2863         movl    %eax,%edi
 2864         xorl    %esi,%eax
 2865         andl    $0x03fc03fc,%eax
 2866         xorl    %eax,%edi
 2867         xorl    %eax,%esi
 2868 
 2869         roll    $10,%edi
 2870         movl    %edi,%eax
 2871         xorl    %esi,%edi
 2872         andl    $0x33333333,%edi
 2873         xorl    %edi,%eax
 2874         xorl    %edi,%esi
 2875 
 2876         roll    $18,%esi
 2877         movl    %esi,%edi
 2878         xorl    %eax,%esi
 2879         andl    $0xfff0000f,%esi
 2880         xorl    %esi,%edi
 2881         xorl    %esi,%eax
 2882 
 2883         roll    $12,%edi
 2884         movl    %edi,%esi
 2885         xorl    %eax,%edi
 2886         andl    $0xf0f0f0f0,%edi
 2887         xorl    %edi,%esi
 2888         xorl    %edi,%eax
 2889 
 2890         rorl    $4,%eax
 2891         movl    %eax,(%edx)
 2892         movl    %esi,4(%edx)
 2893         popl    %ebp
 2894         popl    %ebx
 2895         popl    %edi
 2896         popl    %esi
 2897         ret
 2898 .size   DES_encrypt1,.-.L_DES_encrypt1_begin
 2899 .globl  DES_encrypt2
 2900 .type   DES_encrypt2,@function
 2901 .align  16
 2902 DES_encrypt2:
 2903 .L_DES_encrypt2_begin:
 2904         pushl   %esi
 2905         pushl   %edi
 2906 
 2907 
 2908         movl    12(%esp),%eax
 2909         xorl    %ecx,%ecx
 2910         pushl   %ebx
 2911         pushl   %ebp
 2912         movl    (%eax),%esi
 2913         movl    28(%esp),%ebx
 2914         roll    $3,%esi
 2915         movl    4(%eax),%edi
 2916         roll    $3,%edi
 2917         call    .L003pic_point
 2918 .L003pic_point:
 2919         popl    %ebp
 2920         leal    .Ldes_sptrans-.L003pic_point(%ebp),%ebp
 2921         movl    24(%esp),%ecx
 2922         cmpl    $0,%ebx
 2923         je      .L004decrypt
 2924         call    _x86_DES_encrypt
 2925         jmp     .L005done
 2926 .L004decrypt:
 2927         call    _x86_DES_decrypt
 2928 .L005done:
 2929 
 2930 
 2931         rorl    $3,%edi
 2932         movl    20(%esp),%eax
 2933         rorl    $3,%esi
 2934         movl    %edi,(%eax)
 2935         movl    %esi,4(%eax)
 2936         popl    %ebp
 2937         popl    %ebx
 2938         popl    %edi
 2939         popl    %esi
 2940         ret
 2941 .size   DES_encrypt2,.-.L_DES_encrypt2_begin
 2942 .globl  DES_encrypt3
 2943 .type   DES_encrypt3,@function
 2944 .align  16
 2945 DES_encrypt3:
 2946 .L_DES_encrypt3_begin:
 2947         pushl   %ebx
 2948         movl    8(%esp),%ebx
 2949         pushl   %ebp
 2950         pushl   %esi
 2951         pushl   %edi
 2952 
 2953 
 2954         movl    (%ebx),%edi
 2955         movl    4(%ebx),%esi
 2956         subl    $12,%esp
 2957 
 2958 
 2959         roll    $4,%edi
 2960         movl    %edi,%edx
 2961         xorl    %esi,%edi
 2962         andl    $0xf0f0f0f0,%edi
 2963         xorl    %edi,%edx
 2964         xorl    %edi,%esi
 2965 
 2966         roll    $20,%esi
 2967         movl    %esi,%edi
 2968         xorl    %edx,%esi
 2969         andl    $0xfff0000f,%esi
 2970         xorl    %esi,%edi
 2971         xorl    %esi,%edx
 2972 
 2973         roll    $14,%edi
 2974         movl    %edi,%esi
 2975         xorl    %edx,%edi
 2976         andl    $0x33333333,%edi
 2977         xorl    %edi,%esi
 2978         xorl    %edi,%edx
 2979 
 2980         roll    $22,%edx
 2981         movl    %edx,%edi
 2982         xorl    %esi,%edx
 2983         andl    $0x03fc03fc,%edx
 2984         xorl    %edx,%edi
 2985         xorl    %edx,%esi
 2986 
 2987         roll    $9,%edi
 2988         movl    %edi,%edx
 2989         xorl    %esi,%edi
 2990         andl    $0xaaaaaaaa,%edi
 2991         xorl    %edi,%edx
 2992         xorl    %edi,%esi
 2993 
 2994         rorl    $3,%edx
 2995         rorl    $2,%esi
 2996         movl    %esi,4(%ebx)
 2997         movl    36(%esp),%eax
 2998         movl    %edx,(%ebx)
 2999         movl    40(%esp),%edi
 3000         movl    44(%esp),%esi
 3001         movl    $1,8(%esp)
 3002         movl    %eax,4(%esp)
 3003         movl    %ebx,(%esp)
 3004         call    .L_DES_encrypt2_begin
 3005         movl    $0,8(%esp)
 3006         movl    %edi,4(%esp)
 3007         movl    %ebx,(%esp)
 3008         call    .L_DES_encrypt2_begin
 3009         movl    $1,8(%esp)
 3010         movl    %esi,4(%esp)
 3011         movl    %ebx,(%esp)
 3012         call    .L_DES_encrypt2_begin
 3013         addl    $12,%esp
 3014         movl    (%ebx),%edi
 3015         movl    4(%ebx),%esi
 3016 
 3017 
 3018         roll    $2,%esi
 3019         roll    $3,%edi
 3020         movl    %edi,%eax
 3021         xorl    %esi,%edi
 3022         andl    $0xaaaaaaaa,%edi
 3023         xorl    %edi,%eax
 3024         xorl    %edi,%esi
 3025 
 3026         roll    $23,%eax
 3027         movl    %eax,%edi
 3028         xorl    %esi,%eax
 3029         andl    $0x03fc03fc,%eax
 3030         xorl    %eax,%edi
 3031         xorl    %eax,%esi
 3032 
 3033         roll    $10,%edi
 3034         movl    %edi,%eax
 3035         xorl    %esi,%edi
 3036         andl    $0x33333333,%edi
 3037         xorl    %edi,%eax
 3038         xorl    %edi,%esi
 3039 
 3040         roll    $18,%esi
 3041         movl    %esi,%edi
 3042         xorl    %eax,%esi
 3043         andl    $0xfff0000f,%esi
 3044         xorl    %esi,%edi
 3045         xorl    %esi,%eax
 3046 
 3047         roll    $12,%edi
 3048         movl    %edi,%esi
 3049         xorl    %eax,%edi
 3050         andl    $0xf0f0f0f0,%edi
 3051         xorl    %edi,%esi
 3052         xorl    %edi,%eax
 3053 
 3054         rorl    $4,%eax
 3055         movl    %eax,(%ebx)
 3056         movl    %esi,4(%ebx)
 3057         popl    %edi
 3058         popl    %esi
 3059         popl    %ebp
 3060         popl    %ebx
 3061         ret
 3062 .size   DES_encrypt3,.-.L_DES_encrypt3_begin
 3063 .globl  DES_decrypt3
 3064 .type   DES_decrypt3,@function
 3065 .align  16
 3066 DES_decrypt3:
 3067 .L_DES_decrypt3_begin:
 3068         pushl   %ebx
 3069         movl    8(%esp),%ebx
 3070         pushl   %ebp
 3071         pushl   %esi
 3072         pushl   %edi
 3073 
 3074 
 3075         movl    (%ebx),%edi
 3076         movl    4(%ebx),%esi
 3077         subl    $12,%esp
 3078 
 3079 
 3080         roll    $4,%edi
 3081         movl    %edi,%edx
 3082         xorl    %esi,%edi
 3083         andl    $0xf0f0f0f0,%edi
 3084         xorl    %edi,%edx
 3085         xorl    %edi,%esi
 3086 
 3087         roll    $20,%esi
 3088         movl    %esi,%edi
 3089         xorl    %edx,%esi
 3090         andl    $0xfff0000f,%esi
 3091         xorl    %esi,%edi
 3092         xorl    %esi,%edx
 3093 
 3094         roll    $14,%edi
 3095         movl    %edi,%esi
 3096         xorl    %edx,%edi
 3097         andl    $0x33333333,%edi
 3098         xorl    %edi,%esi
 3099         xorl    %edi,%edx
 3100 
 3101         roll    $22,%edx
 3102         movl    %edx,%edi
 3103         xorl    %esi,%edx
 3104         andl    $0x03fc03fc,%edx
 3105         xorl    %edx,%edi
 3106         xorl    %edx,%esi
 3107 
 3108         roll    $9,%edi
 3109         movl    %edi,%edx
 3110         xorl    %esi,%edi
 3111         andl    $0xaaaaaaaa,%edi
 3112         xorl    %edi,%edx
 3113         xorl    %edi,%esi
 3114 
 3115         rorl    $3,%edx
 3116         rorl    $2,%esi
 3117         movl    %esi,4(%ebx)
 3118         movl    36(%esp),%esi
 3119         movl    %edx,(%ebx)
 3120         movl    40(%esp),%edi
 3121         movl    44(%esp),%eax
 3122         movl    $0,8(%esp)
 3123         movl    %eax,4(%esp)
 3124         movl    %ebx,(%esp)
 3125         call    .L_DES_encrypt2_begin
 3126         movl    $1,8(%esp)
 3127         movl    %edi,4(%esp)
 3128         movl    %ebx,(%esp)
 3129         call    .L_DES_encrypt2_begin
 3130         movl    $0,8(%esp)
 3131         movl    %esi,4(%esp)
 3132         movl    %ebx,(%esp)
 3133         call    .L_DES_encrypt2_begin
 3134         addl    $12,%esp
 3135         movl    (%ebx),%edi
 3136         movl    4(%ebx),%esi
 3137 
 3138 
 3139         roll    $2,%esi
 3140         roll    $3,%edi
 3141         movl    %edi,%eax
 3142         xorl    %esi,%edi
 3143         andl    $0xaaaaaaaa,%edi
 3144         xorl    %edi,%eax
 3145         xorl    %edi,%esi
 3146 
 3147         roll    $23,%eax
 3148         movl    %eax,%edi
 3149         xorl    %esi,%eax
 3150         andl    $0x03fc03fc,%eax
 3151         xorl    %eax,%edi
 3152         xorl    %eax,%esi
 3153 
 3154         roll    $10,%edi
 3155         movl    %edi,%eax
 3156         xorl    %esi,%edi
 3157         andl    $0x33333333,%edi
 3158         xorl    %edi,%eax
 3159         xorl    %edi,%esi
 3160 
 3161         roll    $18,%esi
 3162         movl    %esi,%edi
 3163         xorl    %eax,%esi
 3164         andl    $0xfff0000f,%esi
 3165         xorl    %esi,%edi
 3166         xorl    %esi,%eax
 3167 
 3168         roll    $12,%edi
 3169         movl    %edi,%esi
 3170         xorl    %eax,%edi
 3171         andl    $0xf0f0f0f0,%edi
 3172         xorl    %edi,%esi
 3173         xorl    %edi,%eax
 3174 
 3175         rorl    $4,%eax
 3176         movl    %eax,(%ebx)
 3177         movl    %esi,4(%ebx)
 3178         popl    %edi
 3179         popl    %esi
 3180         popl    %ebp
 3181         popl    %ebx
 3182         ret
 3183 .size   DES_decrypt3,.-.L_DES_decrypt3_begin
 3184 .globl  DES_ncbc_encrypt
 3185 .type   DES_ncbc_encrypt,@function
 3186 .align  16
 3187 DES_ncbc_encrypt:
 3188 .L_DES_ncbc_encrypt_begin:
 3189 
 3190         pushl   %ebp
 3191         pushl   %ebx
 3192         pushl   %esi
 3193         pushl   %edi
 3194         movl    28(%esp),%ebp
 3195 
 3196         movl    36(%esp),%ebx
 3197         movl    (%ebx),%esi
 3198         movl    4(%ebx),%edi
 3199         pushl   %edi
 3200         pushl   %esi
 3201         pushl   %edi
 3202         pushl   %esi
 3203         movl    %esp,%ebx
 3204         movl    36(%esp),%esi
 3205         movl    40(%esp),%edi
 3206 
 3207         movl    56(%esp),%ecx
 3208 
 3209         pushl   %ecx
 3210 
 3211         movl    52(%esp),%eax
 3212         pushl   %eax
 3213         pushl   %ebx
 3214         cmpl    $0,%ecx
 3215         jz      .L006decrypt
 3216         andl    $4294967288,%ebp
 3217         movl    12(%esp),%eax
 3218         movl    16(%esp),%ebx
 3219         jz      .L007encrypt_finish
 3220 .L008encrypt_loop:
 3221         movl    (%esi),%ecx
 3222         movl    4(%esi),%edx
 3223         xorl    %ecx,%eax
 3224         xorl    %edx,%ebx
 3225         movl    %eax,12(%esp)
 3226         movl    %ebx,16(%esp)
 3227         call    .L_DES_encrypt1_begin
 3228         movl    12(%esp),%eax
 3229         movl    16(%esp),%ebx
 3230         movl    %eax,(%edi)
 3231         movl    %ebx,4(%edi)
 3232         addl    $8,%esi
 3233         addl    $8,%edi
 3234         subl    $8,%ebp
 3235         jnz     .L008encrypt_loop
 3236 .L007encrypt_finish:
 3237         movl    56(%esp),%ebp
 3238         andl    $7,%ebp
 3239         jz      .L009finish
 3240         call    .L010PIC_point
 3241 .L010PIC_point:
 3242         popl    %edx
 3243         leal    .L011cbc_enc_jmp_table-.L010PIC_point(%edx),%ecx
 3244         movl    (%ecx,%ebp,4),%ebp
 3245         addl    %edx,%ebp
 3246         xorl    %ecx,%ecx
 3247         xorl    %edx,%edx
 3248         jmp     *%ebp
 3249 .L012ej7:
 3250         movb    6(%esi),%dh
 3251         shll    $8,%edx
 3252 .L013ej6:
 3253         movb    5(%esi),%dh
 3254 .L014ej5:
 3255         movb    4(%esi),%dl
 3256 .L015ej4:
 3257         movl    (%esi),%ecx
 3258         jmp     .L016ejend
 3259 .L017ej3:
 3260         movb    2(%esi),%ch
 3261         shll    $8,%ecx
 3262 .L018ej2:
 3263         movb    1(%esi),%ch
 3264 .L019ej1:
 3265         movb    (%esi),%cl
 3266 .L016ejend:
 3267         xorl    %ecx,%eax
 3268         xorl    %edx,%ebx
 3269         movl    %eax,12(%esp)
 3270         movl    %ebx,16(%esp)
 3271         call    .L_DES_encrypt1_begin
 3272         movl    12(%esp),%eax
 3273         movl    16(%esp),%ebx
 3274         movl    %eax,(%edi)
 3275         movl    %ebx,4(%edi)
 3276         jmp     .L009finish
 3277 .L006decrypt:
 3278         andl    $4294967288,%ebp
 3279         movl    20(%esp),%eax
 3280         movl    24(%esp),%ebx
 3281         jz      .L020decrypt_finish
 3282 .L021decrypt_loop:
 3283         movl    (%esi),%eax
 3284         movl    4(%esi),%ebx
 3285         movl    %eax,12(%esp)
 3286         movl    %ebx,16(%esp)
 3287         call    .L_DES_encrypt1_begin
 3288         movl    12(%esp),%eax
 3289         movl    16(%esp),%ebx
 3290         movl    20(%esp),%ecx
 3291         movl    24(%esp),%edx
 3292         xorl    %eax,%ecx
 3293         xorl    %ebx,%edx
 3294         movl    (%esi),%eax
 3295         movl    4(%esi),%ebx
 3296         movl    %ecx,(%edi)
 3297         movl    %edx,4(%edi)
 3298         movl    %eax,20(%esp)
 3299         movl    %ebx,24(%esp)
 3300         addl    $8,%esi
 3301         addl    $8,%edi
 3302         subl    $8,%ebp
 3303         jnz     .L021decrypt_loop
 3304 .L020decrypt_finish:
 3305         movl    56(%esp),%ebp
 3306         andl    $7,%ebp
 3307         jz      .L009finish
 3308         movl    (%esi),%eax
 3309         movl    4(%esi),%ebx
 3310         movl    %eax,12(%esp)
 3311         movl    %ebx,16(%esp)
 3312         call    .L_DES_encrypt1_begin
 3313         movl    12(%esp),%eax
 3314         movl    16(%esp),%ebx
 3315         movl    20(%esp),%ecx
 3316         movl    24(%esp),%edx
 3317         xorl    %eax,%ecx
 3318         xorl    %ebx,%edx
 3319         movl    (%esi),%eax
 3320         movl    4(%esi),%ebx
 3321 .L022dj7:
 3322         rorl    $16,%edx
 3323         movb    %dl,6(%edi)
 3324         shrl    $16,%edx
 3325 .L023dj6:
 3326         movb    %dh,5(%edi)
 3327 .L024dj5:
 3328         movb    %dl,4(%edi)
 3329 .L025dj4:
 3330         movl    %ecx,(%edi)
 3331         jmp     .L026djend
 3332 .L027dj3:
 3333         rorl    $16,%ecx
 3334         movb    %cl,2(%edi)
 3335         shll    $16,%ecx
 3336 .L028dj2:
 3337         movb    %ch,1(%esi)
 3338 .L029dj1:
 3339         movb    %cl,(%esi)
 3340 .L026djend:
 3341         jmp     .L009finish
 3342 .L009finish:
 3343         movl    64(%esp),%ecx
 3344         addl    $28,%esp
 3345         movl    %eax,(%ecx)
 3346         movl    %ebx,4(%ecx)
 3347         popl    %edi
 3348         popl    %esi
 3349         popl    %ebx
 3350         popl    %ebp
 3351         ret
 3352 .align  64
 3353 .L011cbc_enc_jmp_table:
 3354 .long   0
 3355 .long   .L019ej1-.L010PIC_point
 3356 .long   .L018ej2-.L010PIC_point
 3357 .long   .L017ej3-.L010PIC_point
 3358 .long   .L015ej4-.L010PIC_point
 3359 .long   .L014ej5-.L010PIC_point
 3360 .long   .L013ej6-.L010PIC_point
 3361 .long   .L012ej7-.L010PIC_point
 3362 .align  64
 3363 .size   DES_ncbc_encrypt,.-.L_DES_ncbc_encrypt_begin
 3364 .globl  DES_ede3_cbc_encrypt
 3365 .type   DES_ede3_cbc_encrypt,@function
 3366 .align  16
 3367 DES_ede3_cbc_encrypt:
 3368 .L_DES_ede3_cbc_encrypt_begin:
 3369 
 3370         pushl   %ebp
 3371         pushl   %ebx
 3372         pushl   %esi
 3373         pushl   %edi
 3374         movl    28(%esp),%ebp
 3375 
 3376         movl    44(%esp),%ebx
 3377         movl    (%ebx),%esi
 3378         movl    4(%ebx),%edi
 3379         pushl   %edi
 3380         pushl   %esi
 3381         pushl   %edi
 3382         pushl   %esi
 3383         movl    %esp,%ebx
 3384         movl    36(%esp),%esi
 3385         movl    40(%esp),%edi
 3386 
 3387         movl    64(%esp),%ecx
 3388 
 3389         movl    56(%esp),%eax
 3390         pushl   %eax
 3391 
 3392         movl    56(%esp),%eax
 3393         pushl   %eax
 3394 
 3395         movl    56(%esp),%eax
 3396         pushl   %eax
 3397         pushl   %ebx
 3398         cmpl    $0,%ecx
 3399         jz      .L030decrypt
 3400         andl    $4294967288,%ebp
 3401         movl    16(%esp),%eax
 3402         movl    20(%esp),%ebx
 3403         jz      .L031encrypt_finish
 3404 .L032encrypt_loop:
 3405         movl    (%esi),%ecx
 3406         movl    4(%esi),%edx
 3407         xorl    %ecx,%eax
 3408         xorl    %edx,%ebx
 3409         movl    %eax,16(%esp)
 3410         movl    %ebx,20(%esp)
 3411         call    .L_DES_encrypt3_begin
 3412         movl    16(%esp),%eax
 3413         movl    20(%esp),%ebx
 3414         movl    %eax,(%edi)
 3415         movl    %ebx,4(%edi)
 3416         addl    $8,%esi
 3417         addl    $8,%edi
 3418         subl    $8,%ebp
 3419         jnz     .L032encrypt_loop
 3420 .L031encrypt_finish:
 3421         movl    60(%esp),%ebp
 3422         andl    $7,%ebp
 3423         jz      .L033finish
 3424         call    .L034PIC_point
 3425 .L034PIC_point:
 3426         popl    %edx
 3427         leal    .L035cbc_enc_jmp_table-.L034PIC_point(%edx),%ecx
 3428         movl    (%ecx,%ebp,4),%ebp
 3429         addl    %edx,%ebp
 3430         xorl    %ecx,%ecx
 3431         xorl    %edx,%edx
 3432         jmp     *%ebp
 3433 .L036ej7:
 3434         movb    6(%esi),%dh
 3435         shll    $8,%edx
 3436 .L037ej6:
 3437         movb    5(%esi),%dh
 3438 .L038ej5:
 3439         movb    4(%esi),%dl
 3440 .L039ej4:
 3441         movl    (%esi),%ecx
 3442         jmp     .L040ejend
 3443 .L041ej3:
 3444         movb    2(%esi),%ch
 3445         shll    $8,%ecx
 3446 .L042ej2:
 3447         movb    1(%esi),%ch
 3448 .L043ej1:
 3449         movb    (%esi),%cl
 3450 .L040ejend:
 3451         xorl    %ecx,%eax
 3452         xorl    %edx,%ebx
 3453         movl    %eax,16(%esp)
 3454         movl    %ebx,20(%esp)
 3455         call    .L_DES_encrypt3_begin
 3456         movl    16(%esp),%eax
 3457         movl    20(%esp),%ebx
 3458         movl    %eax,(%edi)
 3459         movl    %ebx,4(%edi)
 3460         jmp     .L033finish
 3461 .L030decrypt:
 3462         andl    $4294967288,%ebp
 3463         movl    24(%esp),%eax
 3464         movl    28(%esp),%ebx
 3465         jz      .L044decrypt_finish
 3466 .L045decrypt_loop:
 3467         movl    (%esi),%eax
 3468         movl    4(%esi),%ebx
 3469         movl    %eax,16(%esp)
 3470         movl    %ebx,20(%esp)
 3471         call    .L_DES_decrypt3_begin
 3472         movl    16(%esp),%eax
 3473         movl    20(%esp),%ebx
 3474         movl    24(%esp),%ecx
 3475         movl    28(%esp),%edx
 3476         xorl    %eax,%ecx
 3477         xorl    %ebx,%edx
 3478         movl    (%esi),%eax
 3479         movl    4(%esi),%ebx
 3480         movl    %ecx,(%edi)
 3481         movl    %edx,4(%edi)
 3482         movl    %eax,24(%esp)
 3483         movl    %ebx,28(%esp)
 3484         addl    $8,%esi
 3485         addl    $8,%edi
 3486         subl    $8,%ebp
 3487         jnz     .L045decrypt_loop
 3488 .L044decrypt_finish:
 3489         movl    60(%esp),%ebp
 3490         andl    $7,%ebp
 3491         jz      .L033finish
 3492         movl    (%esi),%eax
 3493         movl    4(%esi),%ebx
 3494         movl    %eax,16(%esp)
 3495         movl    %ebx,20(%esp)
 3496         call    .L_DES_decrypt3_begin
 3497         movl    16(%esp),%eax
 3498         movl    20(%esp),%ebx
 3499         movl    24(%esp),%ecx
 3500         movl    28(%esp),%edx
 3501         xorl    %eax,%ecx
 3502         xorl    %ebx,%edx
 3503         movl    (%esi),%eax
 3504         movl    4(%esi),%ebx
 3505 .L046dj7:
 3506         rorl    $16,%edx
 3507         movb    %dl,6(%edi)
 3508         shrl    $16,%edx
 3509 .L047dj6:
 3510         movb    %dh,5(%edi)
 3511 .L048dj5:
 3512         movb    %dl,4(%edi)
 3513 .L049dj4:
 3514         movl    %ecx,(%edi)
 3515         jmp     .L050djend
 3516 .L051dj3:
 3517         rorl    $16,%ecx
 3518         movb    %cl,2(%edi)
 3519         shll    $16,%ecx
 3520 .L052dj2:
 3521         movb    %ch,1(%esi)
 3522 .L053dj1:
 3523         movb    %cl,(%esi)
 3524 .L050djend:
 3525         jmp     .L033finish
 3526 .L033finish:
 3527         movl    76(%esp),%ecx
 3528         addl    $32,%esp
 3529         movl    %eax,(%ecx)
 3530         movl    %ebx,4(%ecx)
 3531         popl    %edi
 3532         popl    %esi
 3533         popl    %ebx
 3534         popl    %ebp
 3535         ret
 3536 .align  64
 3537 .L035cbc_enc_jmp_table:
 3538 .long   0
 3539 .long   .L043ej1-.L034PIC_point
 3540 .long   .L042ej2-.L034PIC_point
 3541 .long   .L041ej3-.L034PIC_point
 3542 .long   .L039ej4-.L034PIC_point
 3543 .long   .L038ej5-.L034PIC_point
 3544 .long   .L037ej6-.L034PIC_point
 3545 .long   .L036ej7-.L034PIC_point
 3546 .align  64
 3547 .size   DES_ede3_cbc_encrypt,.-.L_DES_ede3_cbc_encrypt_begin
 3548 .align  64
 3549 DES_SPtrans:
 3550 .Ldes_sptrans:
 3551 .long   34080768,524288,33554434,34080770
 3552 .long   33554432,526338,524290,33554434
 3553 .long   526338,34080768,34078720,2050
 3554 .long   33556482,33554432,0,524290
 3555 .long   524288,2,33556480,526336
 3556 .long   34080770,34078720,2050,33556480
 3557 .long   2,2048,526336,34078722
 3558 .long   2048,33556482,34078722,0
 3559 .long   0,34080770,33556480,524290
 3560 .long   34080768,524288,2050,33556480
 3561 .long   34078722,2048,526336,33554434
 3562 .long   526338,2,33554434,34078720
 3563 .long   34080770,526336,34078720,33556482
 3564 .long   33554432,2050,524290,0
 3565 .long   524288,33554432,33556482,34080768
 3566 .long   2,34078722,2048,526338
 3567 .long   1074823184,0,1081344,1074790400
 3568 .long   1073741840,32784,1073774592,1081344
 3569 .long   32768,1074790416,16,1073774592
 3570 .long   1048592,1074823168,1074790400,16
 3571 .long   1048576,1073774608,1074790416,32768
 3572 .long   1081360,1073741824,0,1048592
 3573 .long   1073774608,1081360,1074823168,1073741840
 3574 .long   1073741824,1048576,32784,1074823184
 3575 .long   1048592,1074823168,1073774592,1081360
 3576 .long   1074823184,1048592,1073741840,0
 3577 .long   1073741824,32784,1048576,1074790416
 3578 .long   32768,1073741824,1081360,1073774608
 3579 .long   1074823168,32768,0,1073741840
 3580 .long   16,1074823184,1081344,1074790400
 3581 .long   1074790416,1048576,32784,1073774592
 3582 .long   1073774608,16,1074790400,1081344
 3583 .long   67108865,67371264,256,67109121
 3584 .long   262145,67108864,67109121,262400
 3585 .long   67109120,262144,67371008,1
 3586 .long   67371265,257,1,67371009
 3587 .long   0,262145,67371264,256
 3588 .long   257,67371265,262144,67108865
 3589 .long   67371009,67109120,262401,67371008
 3590 .long   262400,0,67108864,262401
 3591 .long   67371264,256,1,262144
 3592 .long   257,262145,67371008,67109121
 3593 .long   0,67371264,262400,67371009
 3594 .long   262145,67108864,67371265,1
 3595 .long   262401,67108865,67108864,67371265
 3596 .long   262144,67109120,67109121,262400
 3597 .long   67109120,0,67371009,257
 3598 .long   67108865,262401,256,67371008
 3599 .long   4198408,268439552,8,272633864
 3600 .long   0,272629760,268439560,4194312
 3601 .long   272633856,268435464,268435456,4104
 3602 .long   268435464,4198408,4194304,268435456
 3603 .long   272629768,4198400,4096,8
 3604 .long   4198400,268439560,272629760,4096
 3605 .long   4104,0,4194312,272633856
 3606 .long   268439552,272629768,272633864,4194304
 3607 .long   272629768,4104,4194304,268435464
 3608 .long   4198400,268439552,8,272629760
 3609 .long   268439560,0,4096,4194312
 3610 .long   0,272629768,272633856,4096
 3611 .long   268435456,272633864,4198408,4194304
 3612 .long   272633864,8,268439552,4198408
 3613 .long   4194312,4198400,272629760,268439560
 3614 .long   4104,268435456,268435464,272633856
 3615 .long   134217728,65536,1024,134284320
 3616 .long   134283296,134218752,66592,134283264
 3617 .long   65536,32,134217760,66560
 3618 .long   134218784,134283296,134284288,0
 3619 .long   66560,134217728,65568,1056
 3620 .long   134218752,66592,0,134217760
 3621 .long   32,134218784,134284320,65568
 3622 .long   134283264,1024,1056,134284288
 3623 .long   134284288,134218784,65568,134283264
 3624 .long   65536,32,134217760,134218752
 3625 .long   134217728,66560,134284320,0
 3626 .long   66592,134217728,1024,65568
 3627 .long   134218784,1024,0,134284320
 3628 .long   134283296,134284288,1056,65536
 3629 .long   66560,134283296,134218752,1056
 3630 .long   32,66592,134283264,134217760
 3631 .long   2147483712,2097216,0,2149588992
 3632 .long   2097216,8192,2147491904,2097152
 3633 .long   8256,2149589056,2105344,2147483648
 3634 .long   2147491840,2147483712,2149580800,2105408
 3635 .long   2097152,2147491904,2149580864,0
 3636 .long   8192,64,2149588992,2149580864
 3637 .long   2149589056,2149580800,2147483648,8256
 3638 .long   64,2105344,2105408,2147491840
 3639 .long   8256,2147483648,2147491840,2105408
 3640 .long   2149588992,2097216,0,2147491840
 3641 .long   2147483648,8192,2149580864,2097152
 3642 .long   2097216,2149589056,2105344,64
 3643 .long   2149589056,2105344,2097152,2147491904
 3644 .long   2147483712,2149580800,2105408,0
 3645 .long   8192,2147483712,2147491904,2149588992
 3646 .long   2149580800,8256,64,2149580864
 3647 .long   16384,512,16777728,16777220
 3648 .long   16794116,16388,16896,0
 3649 .long   16777216,16777732,516,16793600
 3650 .long   4,16794112,16793600,516
 3651 .long   16777732,16384,16388,16794116
 3652 .long   0,16777728,16777220,16896
 3653 .long   16793604,16900,16794112,4
 3654 .long   16900,16793604,512,16777216
 3655 .long   16900,16793600,16793604,516
 3656 .long   16384,512,16777216,16793604
 3657 .long   16777732,16900,16896,0
 3658 .long   512,16777220,4,16777728
 3659 .long   0,16777732,16777728,16896
 3660 .long   516,16384,16794116,16777216
 3661 .long   16794112,4,16388,16794116
 3662 .long   16777220,16794112,16793600,16388
 3663 .long   545259648,545390592,131200,0
 3664 .long   537001984,8388736,545259520,545390720
 3665 .long   128,536870912,8519680,131200
 3666 .long   8519808,537002112,536871040,545259520
 3667 .long   131072,8519808,8388736,537001984
 3668 .long   545390720,536871040,0,8519680
 3669 .long   536870912,8388608,537002112,545259648
 3670 .long   8388608,131072,545390592,128
 3671 .long   8388608,131072,536871040,545390720
 3672 .long   131200,536870912,0,8519680
 3673 .long   545259648,537002112,537001984,8388736
 3674 .long   545390592,128,8388736,537001984
 3675 .long   545390720,8388608,545259520,536871040
 3676 .long   8519680,131200,537002112,545259520
 3677 .long   128,545390592,8519808,0
 3678 .long   536870912,545259648,131072,8519808
 3679 #endif

Cache object: 83f2c48a4207ea37dda3e2991978dad7


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.