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/bf-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 bf-586.pl. */
    3 #ifdef PIC
    4 .text
    5 .globl  BF_encrypt
    6 .type   BF_encrypt,@function
    7 .align  16
    8 BF_encrypt:
    9 .L_BF_encrypt_begin:
   10 
   11         pushl   %ebp
   12         pushl   %ebx
   13         movl    12(%esp),%ebx
   14         movl    16(%esp),%ebp
   15         pushl   %esi
   16         pushl   %edi
   17 
   18         movl    (%ebx),%edi
   19         movl    4(%ebx),%esi
   20         xorl    %eax,%eax
   21         movl    (%ebp),%ebx
   22         xorl    %ecx,%ecx
   23         xorl    %ebx,%edi
   24 
   25 
   26         movl    4(%ebp),%edx
   27         movl    %edi,%ebx
   28         xorl    %edx,%esi
   29         shrl    $16,%ebx
   30         movl    %edi,%edx
   31         movb    %bh,%al
   32         andl    $255,%ebx
   33         movb    %dh,%cl
   34         andl    $255,%edx
   35         movl    72(%ebp,%eax,4),%eax
   36         movl    1096(%ebp,%ebx,4),%ebx
   37         addl    %eax,%ebx
   38         movl    2120(%ebp,%ecx,4),%eax
   39         xorl    %eax,%ebx
   40         movl    3144(%ebp,%edx,4),%edx
   41         addl    %edx,%ebx
   42         xorl    %eax,%eax
   43         xorl    %ebx,%esi
   44 
   45 
   46         movl    8(%ebp),%edx
   47         movl    %esi,%ebx
   48         xorl    %edx,%edi
   49         shrl    $16,%ebx
   50         movl    %esi,%edx
   51         movb    %bh,%al
   52         andl    $255,%ebx
   53         movb    %dh,%cl
   54         andl    $255,%edx
   55         movl    72(%ebp,%eax,4),%eax
   56         movl    1096(%ebp,%ebx,4),%ebx
   57         addl    %eax,%ebx
   58         movl    2120(%ebp,%ecx,4),%eax
   59         xorl    %eax,%ebx
   60         movl    3144(%ebp,%edx,4),%edx
   61         addl    %edx,%ebx
   62         xorl    %eax,%eax
   63         xorl    %ebx,%edi
   64 
   65 
   66         movl    12(%ebp),%edx
   67         movl    %edi,%ebx
   68         xorl    %edx,%esi
   69         shrl    $16,%ebx
   70         movl    %edi,%edx
   71         movb    %bh,%al
   72         andl    $255,%ebx
   73         movb    %dh,%cl
   74         andl    $255,%edx
   75         movl    72(%ebp,%eax,4),%eax
   76         movl    1096(%ebp,%ebx,4),%ebx
   77         addl    %eax,%ebx
   78         movl    2120(%ebp,%ecx,4),%eax
   79         xorl    %eax,%ebx
   80         movl    3144(%ebp,%edx,4),%edx
   81         addl    %edx,%ebx
   82         xorl    %eax,%eax
   83         xorl    %ebx,%esi
   84 
   85 
   86         movl    16(%ebp),%edx
   87         movl    %esi,%ebx
   88         xorl    %edx,%edi
   89         shrl    $16,%ebx
   90         movl    %esi,%edx
   91         movb    %bh,%al
   92         andl    $255,%ebx
   93         movb    %dh,%cl
   94         andl    $255,%edx
   95         movl    72(%ebp,%eax,4),%eax
   96         movl    1096(%ebp,%ebx,4),%ebx
   97         addl    %eax,%ebx
   98         movl    2120(%ebp,%ecx,4),%eax
   99         xorl    %eax,%ebx
  100         movl    3144(%ebp,%edx,4),%edx
  101         addl    %edx,%ebx
  102         xorl    %eax,%eax
  103         xorl    %ebx,%edi
  104 
  105 
  106         movl    20(%ebp),%edx
  107         movl    %edi,%ebx
  108         xorl    %edx,%esi
  109         shrl    $16,%ebx
  110         movl    %edi,%edx
  111         movb    %bh,%al
  112         andl    $255,%ebx
  113         movb    %dh,%cl
  114         andl    $255,%edx
  115         movl    72(%ebp,%eax,4),%eax
  116         movl    1096(%ebp,%ebx,4),%ebx
  117         addl    %eax,%ebx
  118         movl    2120(%ebp,%ecx,4),%eax
  119         xorl    %eax,%ebx
  120         movl    3144(%ebp,%edx,4),%edx
  121         addl    %edx,%ebx
  122         xorl    %eax,%eax
  123         xorl    %ebx,%esi
  124 
  125 
  126         movl    24(%ebp),%edx
  127         movl    %esi,%ebx
  128         xorl    %edx,%edi
  129         shrl    $16,%ebx
  130         movl    %esi,%edx
  131         movb    %bh,%al
  132         andl    $255,%ebx
  133         movb    %dh,%cl
  134         andl    $255,%edx
  135         movl    72(%ebp,%eax,4),%eax
  136         movl    1096(%ebp,%ebx,4),%ebx
  137         addl    %eax,%ebx
  138         movl    2120(%ebp,%ecx,4),%eax
  139         xorl    %eax,%ebx
  140         movl    3144(%ebp,%edx,4),%edx
  141         addl    %edx,%ebx
  142         xorl    %eax,%eax
  143         xorl    %ebx,%edi
  144 
  145 
  146         movl    28(%ebp),%edx
  147         movl    %edi,%ebx
  148         xorl    %edx,%esi
  149         shrl    $16,%ebx
  150         movl    %edi,%edx
  151         movb    %bh,%al
  152         andl    $255,%ebx
  153         movb    %dh,%cl
  154         andl    $255,%edx
  155         movl    72(%ebp,%eax,4),%eax
  156         movl    1096(%ebp,%ebx,4),%ebx
  157         addl    %eax,%ebx
  158         movl    2120(%ebp,%ecx,4),%eax
  159         xorl    %eax,%ebx
  160         movl    3144(%ebp,%edx,4),%edx
  161         addl    %edx,%ebx
  162         xorl    %eax,%eax
  163         xorl    %ebx,%esi
  164 
  165 
  166         movl    32(%ebp),%edx
  167         movl    %esi,%ebx
  168         xorl    %edx,%edi
  169         shrl    $16,%ebx
  170         movl    %esi,%edx
  171         movb    %bh,%al
  172         andl    $255,%ebx
  173         movb    %dh,%cl
  174         andl    $255,%edx
  175         movl    72(%ebp,%eax,4),%eax
  176         movl    1096(%ebp,%ebx,4),%ebx
  177         addl    %eax,%ebx
  178         movl    2120(%ebp,%ecx,4),%eax
  179         xorl    %eax,%ebx
  180         movl    3144(%ebp,%edx,4),%edx
  181         addl    %edx,%ebx
  182         xorl    %eax,%eax
  183         xorl    %ebx,%edi
  184 
  185 
  186         movl    36(%ebp),%edx
  187         movl    %edi,%ebx
  188         xorl    %edx,%esi
  189         shrl    $16,%ebx
  190         movl    %edi,%edx
  191         movb    %bh,%al
  192         andl    $255,%ebx
  193         movb    %dh,%cl
  194         andl    $255,%edx
  195         movl    72(%ebp,%eax,4),%eax
  196         movl    1096(%ebp,%ebx,4),%ebx
  197         addl    %eax,%ebx
  198         movl    2120(%ebp,%ecx,4),%eax
  199         xorl    %eax,%ebx
  200         movl    3144(%ebp,%edx,4),%edx
  201         addl    %edx,%ebx
  202         xorl    %eax,%eax
  203         xorl    %ebx,%esi
  204 
  205 
  206         movl    40(%ebp),%edx
  207         movl    %esi,%ebx
  208         xorl    %edx,%edi
  209         shrl    $16,%ebx
  210         movl    %esi,%edx
  211         movb    %bh,%al
  212         andl    $255,%ebx
  213         movb    %dh,%cl
  214         andl    $255,%edx
  215         movl    72(%ebp,%eax,4),%eax
  216         movl    1096(%ebp,%ebx,4),%ebx
  217         addl    %eax,%ebx
  218         movl    2120(%ebp,%ecx,4),%eax
  219         xorl    %eax,%ebx
  220         movl    3144(%ebp,%edx,4),%edx
  221         addl    %edx,%ebx
  222         xorl    %eax,%eax
  223         xorl    %ebx,%edi
  224 
  225 
  226         movl    44(%ebp),%edx
  227         movl    %edi,%ebx
  228         xorl    %edx,%esi
  229         shrl    $16,%ebx
  230         movl    %edi,%edx
  231         movb    %bh,%al
  232         andl    $255,%ebx
  233         movb    %dh,%cl
  234         andl    $255,%edx
  235         movl    72(%ebp,%eax,4),%eax
  236         movl    1096(%ebp,%ebx,4),%ebx
  237         addl    %eax,%ebx
  238         movl    2120(%ebp,%ecx,4),%eax
  239         xorl    %eax,%ebx
  240         movl    3144(%ebp,%edx,4),%edx
  241         addl    %edx,%ebx
  242         xorl    %eax,%eax
  243         xorl    %ebx,%esi
  244 
  245 
  246         movl    48(%ebp),%edx
  247         movl    %esi,%ebx
  248         xorl    %edx,%edi
  249         shrl    $16,%ebx
  250         movl    %esi,%edx
  251         movb    %bh,%al
  252         andl    $255,%ebx
  253         movb    %dh,%cl
  254         andl    $255,%edx
  255         movl    72(%ebp,%eax,4),%eax
  256         movl    1096(%ebp,%ebx,4),%ebx
  257         addl    %eax,%ebx
  258         movl    2120(%ebp,%ecx,4),%eax
  259         xorl    %eax,%ebx
  260         movl    3144(%ebp,%edx,4),%edx
  261         addl    %edx,%ebx
  262         xorl    %eax,%eax
  263         xorl    %ebx,%edi
  264 
  265 
  266         movl    52(%ebp),%edx
  267         movl    %edi,%ebx
  268         xorl    %edx,%esi
  269         shrl    $16,%ebx
  270         movl    %edi,%edx
  271         movb    %bh,%al
  272         andl    $255,%ebx
  273         movb    %dh,%cl
  274         andl    $255,%edx
  275         movl    72(%ebp,%eax,4),%eax
  276         movl    1096(%ebp,%ebx,4),%ebx
  277         addl    %eax,%ebx
  278         movl    2120(%ebp,%ecx,4),%eax
  279         xorl    %eax,%ebx
  280         movl    3144(%ebp,%edx,4),%edx
  281         addl    %edx,%ebx
  282         xorl    %eax,%eax
  283         xorl    %ebx,%esi
  284 
  285 
  286         movl    56(%ebp),%edx
  287         movl    %esi,%ebx
  288         xorl    %edx,%edi
  289         shrl    $16,%ebx
  290         movl    %esi,%edx
  291         movb    %bh,%al
  292         andl    $255,%ebx
  293         movb    %dh,%cl
  294         andl    $255,%edx
  295         movl    72(%ebp,%eax,4),%eax
  296         movl    1096(%ebp,%ebx,4),%ebx
  297         addl    %eax,%ebx
  298         movl    2120(%ebp,%ecx,4),%eax
  299         xorl    %eax,%ebx
  300         movl    3144(%ebp,%edx,4),%edx
  301         addl    %edx,%ebx
  302         xorl    %eax,%eax
  303         xorl    %ebx,%edi
  304 
  305 
  306         movl    60(%ebp),%edx
  307         movl    %edi,%ebx
  308         xorl    %edx,%esi
  309         shrl    $16,%ebx
  310         movl    %edi,%edx
  311         movb    %bh,%al
  312         andl    $255,%ebx
  313         movb    %dh,%cl
  314         andl    $255,%edx
  315         movl    72(%ebp,%eax,4),%eax
  316         movl    1096(%ebp,%ebx,4),%ebx
  317         addl    %eax,%ebx
  318         movl    2120(%ebp,%ecx,4),%eax
  319         xorl    %eax,%ebx
  320         movl    3144(%ebp,%edx,4),%edx
  321         addl    %edx,%ebx
  322         xorl    %eax,%eax
  323         xorl    %ebx,%esi
  324 
  325 
  326         movl    64(%ebp),%edx
  327         movl    %esi,%ebx
  328         xorl    %edx,%edi
  329         shrl    $16,%ebx
  330         movl    %esi,%edx
  331         movb    %bh,%al
  332         andl    $255,%ebx
  333         movb    %dh,%cl
  334         andl    $255,%edx
  335         movl    72(%ebp,%eax,4),%eax
  336         movl    1096(%ebp,%ebx,4),%ebx
  337         addl    %eax,%ebx
  338         movl    2120(%ebp,%ecx,4),%eax
  339         xorl    %eax,%ebx
  340         movl    3144(%ebp,%edx,4),%edx
  341         addl    %edx,%ebx
  342 
  343         movl    20(%esp),%eax
  344         xorl    %ebx,%edi
  345         movl    68(%ebp),%edx
  346         xorl    %edx,%esi
  347         movl    %edi,4(%eax)
  348         movl    %esi,(%eax)
  349         popl    %edi
  350         popl    %esi
  351         popl    %ebx
  352         popl    %ebp
  353         ret
  354 .size   BF_encrypt,.-.L_BF_encrypt_begin
  355 .globl  BF_decrypt
  356 .type   BF_decrypt,@function
  357 .align  16
  358 BF_decrypt:
  359 .L_BF_decrypt_begin:
  360 
  361         pushl   %ebp
  362         pushl   %ebx
  363         movl    12(%esp),%ebx
  364         movl    16(%esp),%ebp
  365         pushl   %esi
  366         pushl   %edi
  367 
  368         movl    (%ebx),%edi
  369         movl    4(%ebx),%esi
  370         xorl    %eax,%eax
  371         movl    68(%ebp),%ebx
  372         xorl    %ecx,%ecx
  373         xorl    %ebx,%edi
  374 
  375 
  376         movl    64(%ebp),%edx
  377         movl    %edi,%ebx
  378         xorl    %edx,%esi
  379         shrl    $16,%ebx
  380         movl    %edi,%edx
  381         movb    %bh,%al
  382         andl    $255,%ebx
  383         movb    %dh,%cl
  384         andl    $255,%edx
  385         movl    72(%ebp,%eax,4),%eax
  386         movl    1096(%ebp,%ebx,4),%ebx
  387         addl    %eax,%ebx
  388         movl    2120(%ebp,%ecx,4),%eax
  389         xorl    %eax,%ebx
  390         movl    3144(%ebp,%edx,4),%edx
  391         addl    %edx,%ebx
  392         xorl    %eax,%eax
  393         xorl    %ebx,%esi
  394 
  395 
  396         movl    60(%ebp),%edx
  397         movl    %esi,%ebx
  398         xorl    %edx,%edi
  399         shrl    $16,%ebx
  400         movl    %esi,%edx
  401         movb    %bh,%al
  402         andl    $255,%ebx
  403         movb    %dh,%cl
  404         andl    $255,%edx
  405         movl    72(%ebp,%eax,4),%eax
  406         movl    1096(%ebp,%ebx,4),%ebx
  407         addl    %eax,%ebx
  408         movl    2120(%ebp,%ecx,4),%eax
  409         xorl    %eax,%ebx
  410         movl    3144(%ebp,%edx,4),%edx
  411         addl    %edx,%ebx
  412         xorl    %eax,%eax
  413         xorl    %ebx,%edi
  414 
  415 
  416         movl    56(%ebp),%edx
  417         movl    %edi,%ebx
  418         xorl    %edx,%esi
  419         shrl    $16,%ebx
  420         movl    %edi,%edx
  421         movb    %bh,%al
  422         andl    $255,%ebx
  423         movb    %dh,%cl
  424         andl    $255,%edx
  425         movl    72(%ebp,%eax,4),%eax
  426         movl    1096(%ebp,%ebx,4),%ebx
  427         addl    %eax,%ebx
  428         movl    2120(%ebp,%ecx,4),%eax
  429         xorl    %eax,%ebx
  430         movl    3144(%ebp,%edx,4),%edx
  431         addl    %edx,%ebx
  432         xorl    %eax,%eax
  433         xorl    %ebx,%esi
  434 
  435 
  436         movl    52(%ebp),%edx
  437         movl    %esi,%ebx
  438         xorl    %edx,%edi
  439         shrl    $16,%ebx
  440         movl    %esi,%edx
  441         movb    %bh,%al
  442         andl    $255,%ebx
  443         movb    %dh,%cl
  444         andl    $255,%edx
  445         movl    72(%ebp,%eax,4),%eax
  446         movl    1096(%ebp,%ebx,4),%ebx
  447         addl    %eax,%ebx
  448         movl    2120(%ebp,%ecx,4),%eax
  449         xorl    %eax,%ebx
  450         movl    3144(%ebp,%edx,4),%edx
  451         addl    %edx,%ebx
  452         xorl    %eax,%eax
  453         xorl    %ebx,%edi
  454 
  455 
  456         movl    48(%ebp),%edx
  457         movl    %edi,%ebx
  458         xorl    %edx,%esi
  459         shrl    $16,%ebx
  460         movl    %edi,%edx
  461         movb    %bh,%al
  462         andl    $255,%ebx
  463         movb    %dh,%cl
  464         andl    $255,%edx
  465         movl    72(%ebp,%eax,4),%eax
  466         movl    1096(%ebp,%ebx,4),%ebx
  467         addl    %eax,%ebx
  468         movl    2120(%ebp,%ecx,4),%eax
  469         xorl    %eax,%ebx
  470         movl    3144(%ebp,%edx,4),%edx
  471         addl    %edx,%ebx
  472         xorl    %eax,%eax
  473         xorl    %ebx,%esi
  474 
  475 
  476         movl    44(%ebp),%edx
  477         movl    %esi,%ebx
  478         xorl    %edx,%edi
  479         shrl    $16,%ebx
  480         movl    %esi,%edx
  481         movb    %bh,%al
  482         andl    $255,%ebx
  483         movb    %dh,%cl
  484         andl    $255,%edx
  485         movl    72(%ebp,%eax,4),%eax
  486         movl    1096(%ebp,%ebx,4),%ebx
  487         addl    %eax,%ebx
  488         movl    2120(%ebp,%ecx,4),%eax
  489         xorl    %eax,%ebx
  490         movl    3144(%ebp,%edx,4),%edx
  491         addl    %edx,%ebx
  492         xorl    %eax,%eax
  493         xorl    %ebx,%edi
  494 
  495 
  496         movl    40(%ebp),%edx
  497         movl    %edi,%ebx
  498         xorl    %edx,%esi
  499         shrl    $16,%ebx
  500         movl    %edi,%edx
  501         movb    %bh,%al
  502         andl    $255,%ebx
  503         movb    %dh,%cl
  504         andl    $255,%edx
  505         movl    72(%ebp,%eax,4),%eax
  506         movl    1096(%ebp,%ebx,4),%ebx
  507         addl    %eax,%ebx
  508         movl    2120(%ebp,%ecx,4),%eax
  509         xorl    %eax,%ebx
  510         movl    3144(%ebp,%edx,4),%edx
  511         addl    %edx,%ebx
  512         xorl    %eax,%eax
  513         xorl    %ebx,%esi
  514 
  515 
  516         movl    36(%ebp),%edx
  517         movl    %esi,%ebx
  518         xorl    %edx,%edi
  519         shrl    $16,%ebx
  520         movl    %esi,%edx
  521         movb    %bh,%al
  522         andl    $255,%ebx
  523         movb    %dh,%cl
  524         andl    $255,%edx
  525         movl    72(%ebp,%eax,4),%eax
  526         movl    1096(%ebp,%ebx,4),%ebx
  527         addl    %eax,%ebx
  528         movl    2120(%ebp,%ecx,4),%eax
  529         xorl    %eax,%ebx
  530         movl    3144(%ebp,%edx,4),%edx
  531         addl    %edx,%ebx
  532         xorl    %eax,%eax
  533         xorl    %ebx,%edi
  534 
  535 
  536         movl    32(%ebp),%edx
  537         movl    %edi,%ebx
  538         xorl    %edx,%esi
  539         shrl    $16,%ebx
  540         movl    %edi,%edx
  541         movb    %bh,%al
  542         andl    $255,%ebx
  543         movb    %dh,%cl
  544         andl    $255,%edx
  545         movl    72(%ebp,%eax,4),%eax
  546         movl    1096(%ebp,%ebx,4),%ebx
  547         addl    %eax,%ebx
  548         movl    2120(%ebp,%ecx,4),%eax
  549         xorl    %eax,%ebx
  550         movl    3144(%ebp,%edx,4),%edx
  551         addl    %edx,%ebx
  552         xorl    %eax,%eax
  553         xorl    %ebx,%esi
  554 
  555 
  556         movl    28(%ebp),%edx
  557         movl    %esi,%ebx
  558         xorl    %edx,%edi
  559         shrl    $16,%ebx
  560         movl    %esi,%edx
  561         movb    %bh,%al
  562         andl    $255,%ebx
  563         movb    %dh,%cl
  564         andl    $255,%edx
  565         movl    72(%ebp,%eax,4),%eax
  566         movl    1096(%ebp,%ebx,4),%ebx
  567         addl    %eax,%ebx
  568         movl    2120(%ebp,%ecx,4),%eax
  569         xorl    %eax,%ebx
  570         movl    3144(%ebp,%edx,4),%edx
  571         addl    %edx,%ebx
  572         xorl    %eax,%eax
  573         xorl    %ebx,%edi
  574 
  575 
  576         movl    24(%ebp),%edx
  577         movl    %edi,%ebx
  578         xorl    %edx,%esi
  579         shrl    $16,%ebx
  580         movl    %edi,%edx
  581         movb    %bh,%al
  582         andl    $255,%ebx
  583         movb    %dh,%cl
  584         andl    $255,%edx
  585         movl    72(%ebp,%eax,4),%eax
  586         movl    1096(%ebp,%ebx,4),%ebx
  587         addl    %eax,%ebx
  588         movl    2120(%ebp,%ecx,4),%eax
  589         xorl    %eax,%ebx
  590         movl    3144(%ebp,%edx,4),%edx
  591         addl    %edx,%ebx
  592         xorl    %eax,%eax
  593         xorl    %ebx,%esi
  594 
  595 
  596         movl    20(%ebp),%edx
  597         movl    %esi,%ebx
  598         xorl    %edx,%edi
  599         shrl    $16,%ebx
  600         movl    %esi,%edx
  601         movb    %bh,%al
  602         andl    $255,%ebx
  603         movb    %dh,%cl
  604         andl    $255,%edx
  605         movl    72(%ebp,%eax,4),%eax
  606         movl    1096(%ebp,%ebx,4),%ebx
  607         addl    %eax,%ebx
  608         movl    2120(%ebp,%ecx,4),%eax
  609         xorl    %eax,%ebx
  610         movl    3144(%ebp,%edx,4),%edx
  611         addl    %edx,%ebx
  612         xorl    %eax,%eax
  613         xorl    %ebx,%edi
  614 
  615 
  616         movl    16(%ebp),%edx
  617         movl    %edi,%ebx
  618         xorl    %edx,%esi
  619         shrl    $16,%ebx
  620         movl    %edi,%edx
  621         movb    %bh,%al
  622         andl    $255,%ebx
  623         movb    %dh,%cl
  624         andl    $255,%edx
  625         movl    72(%ebp,%eax,4),%eax
  626         movl    1096(%ebp,%ebx,4),%ebx
  627         addl    %eax,%ebx
  628         movl    2120(%ebp,%ecx,4),%eax
  629         xorl    %eax,%ebx
  630         movl    3144(%ebp,%edx,4),%edx
  631         addl    %edx,%ebx
  632         xorl    %eax,%eax
  633         xorl    %ebx,%esi
  634 
  635 
  636         movl    12(%ebp),%edx
  637         movl    %esi,%ebx
  638         xorl    %edx,%edi
  639         shrl    $16,%ebx
  640         movl    %esi,%edx
  641         movb    %bh,%al
  642         andl    $255,%ebx
  643         movb    %dh,%cl
  644         andl    $255,%edx
  645         movl    72(%ebp,%eax,4),%eax
  646         movl    1096(%ebp,%ebx,4),%ebx
  647         addl    %eax,%ebx
  648         movl    2120(%ebp,%ecx,4),%eax
  649         xorl    %eax,%ebx
  650         movl    3144(%ebp,%edx,4),%edx
  651         addl    %edx,%ebx
  652         xorl    %eax,%eax
  653         xorl    %ebx,%edi
  654 
  655 
  656         movl    8(%ebp),%edx
  657         movl    %edi,%ebx
  658         xorl    %edx,%esi
  659         shrl    $16,%ebx
  660         movl    %edi,%edx
  661         movb    %bh,%al
  662         andl    $255,%ebx
  663         movb    %dh,%cl
  664         andl    $255,%edx
  665         movl    72(%ebp,%eax,4),%eax
  666         movl    1096(%ebp,%ebx,4),%ebx
  667         addl    %eax,%ebx
  668         movl    2120(%ebp,%ecx,4),%eax
  669         xorl    %eax,%ebx
  670         movl    3144(%ebp,%edx,4),%edx
  671         addl    %edx,%ebx
  672         xorl    %eax,%eax
  673         xorl    %ebx,%esi
  674 
  675 
  676         movl    4(%ebp),%edx
  677         movl    %esi,%ebx
  678         xorl    %edx,%edi
  679         shrl    $16,%ebx
  680         movl    %esi,%edx
  681         movb    %bh,%al
  682         andl    $255,%ebx
  683         movb    %dh,%cl
  684         andl    $255,%edx
  685         movl    72(%ebp,%eax,4),%eax
  686         movl    1096(%ebp,%ebx,4),%ebx
  687         addl    %eax,%ebx
  688         movl    2120(%ebp,%ecx,4),%eax
  689         xorl    %eax,%ebx
  690         movl    3144(%ebp,%edx,4),%edx
  691         addl    %edx,%ebx
  692 
  693         movl    20(%esp),%eax
  694         xorl    %ebx,%edi
  695         movl    (%ebp),%edx
  696         xorl    %edx,%esi
  697         movl    %edi,4(%eax)
  698         movl    %esi,(%eax)
  699         popl    %edi
  700         popl    %esi
  701         popl    %ebx
  702         popl    %ebp
  703         ret
  704 .size   BF_decrypt,.-.L_BF_decrypt_begin
  705 .globl  BF_cbc_encrypt
  706 .type   BF_cbc_encrypt,@function
  707 .align  16
  708 BF_cbc_encrypt:
  709 .L_BF_cbc_encrypt_begin:
  710 
  711         pushl   %ebp
  712         pushl   %ebx
  713         pushl   %esi
  714         pushl   %edi
  715         movl    28(%esp),%ebp
  716 
  717         movl    36(%esp),%ebx
  718         movl    (%ebx),%esi
  719         movl    4(%ebx),%edi
  720         pushl   %edi
  721         pushl   %esi
  722         pushl   %edi
  723         pushl   %esi
  724         movl    %esp,%ebx
  725         movl    36(%esp),%esi
  726         movl    40(%esp),%edi
  727 
  728         movl    56(%esp),%ecx
  729 
  730         movl    48(%esp),%eax
  731         pushl   %eax
  732         pushl   %ebx
  733         cmpl    $0,%ecx
  734         jz      .L000decrypt
  735         andl    $4294967288,%ebp
  736         movl    8(%esp),%eax
  737         movl    12(%esp),%ebx
  738         jz      .L001encrypt_finish
  739 .L002encrypt_loop:
  740         movl    (%esi),%ecx
  741         movl    4(%esi),%edx
  742         xorl    %ecx,%eax
  743         xorl    %edx,%ebx
  744         bswap   %eax
  745         bswap   %ebx
  746         movl    %eax,8(%esp)
  747         movl    %ebx,12(%esp)
  748         call    .L_BF_encrypt_begin
  749         movl    8(%esp),%eax
  750         movl    12(%esp),%ebx
  751         bswap   %eax
  752         bswap   %ebx
  753         movl    %eax,(%edi)
  754         movl    %ebx,4(%edi)
  755         addl    $8,%esi
  756         addl    $8,%edi
  757         subl    $8,%ebp
  758         jnz     .L002encrypt_loop
  759 .L001encrypt_finish:
  760         movl    52(%esp),%ebp
  761         andl    $7,%ebp
  762         jz      .L003finish
  763         call    .L004PIC_point
  764 .L004PIC_point:
  765         popl    %edx
  766         leal    .L005cbc_enc_jmp_table-.L004PIC_point(%edx),%ecx
  767         movl    (%ecx,%ebp,4),%ebp
  768         addl    %edx,%ebp
  769         xorl    %ecx,%ecx
  770         xorl    %edx,%edx
  771         jmp     *%ebp
  772 .L006ej7:
  773         movb    6(%esi),%dh
  774         shll    $8,%edx
  775 .L007ej6:
  776         movb    5(%esi),%dh
  777 .L008ej5:
  778         movb    4(%esi),%dl
  779 .L009ej4:
  780         movl    (%esi),%ecx
  781         jmp     .L010ejend
  782 .L011ej3:
  783         movb    2(%esi),%ch
  784         shll    $8,%ecx
  785 .L012ej2:
  786         movb    1(%esi),%ch
  787 .L013ej1:
  788         movb    (%esi),%cl
  789 .L010ejend:
  790         xorl    %ecx,%eax
  791         xorl    %edx,%ebx
  792         bswap   %eax
  793         bswap   %ebx
  794         movl    %eax,8(%esp)
  795         movl    %ebx,12(%esp)
  796         call    .L_BF_encrypt_begin
  797         movl    8(%esp),%eax
  798         movl    12(%esp),%ebx
  799         bswap   %eax
  800         bswap   %ebx
  801         movl    %eax,(%edi)
  802         movl    %ebx,4(%edi)
  803         jmp     .L003finish
  804 .L000decrypt:
  805         andl    $4294967288,%ebp
  806         movl    16(%esp),%eax
  807         movl    20(%esp),%ebx
  808         jz      .L014decrypt_finish
  809 .L015decrypt_loop:
  810         movl    (%esi),%eax
  811         movl    4(%esi),%ebx
  812         bswap   %eax
  813         bswap   %ebx
  814         movl    %eax,8(%esp)
  815         movl    %ebx,12(%esp)
  816         call    .L_BF_decrypt_begin
  817         movl    8(%esp),%eax
  818         movl    12(%esp),%ebx
  819         bswap   %eax
  820         bswap   %ebx
  821         movl    16(%esp),%ecx
  822         movl    20(%esp),%edx
  823         xorl    %eax,%ecx
  824         xorl    %ebx,%edx
  825         movl    (%esi),%eax
  826         movl    4(%esi),%ebx
  827         movl    %ecx,(%edi)
  828         movl    %edx,4(%edi)
  829         movl    %eax,16(%esp)
  830         movl    %ebx,20(%esp)
  831         addl    $8,%esi
  832         addl    $8,%edi
  833         subl    $8,%ebp
  834         jnz     .L015decrypt_loop
  835 .L014decrypt_finish:
  836         movl    52(%esp),%ebp
  837         andl    $7,%ebp
  838         jz      .L003finish
  839         movl    (%esi),%eax
  840         movl    4(%esi),%ebx
  841         bswap   %eax
  842         bswap   %ebx
  843         movl    %eax,8(%esp)
  844         movl    %ebx,12(%esp)
  845         call    .L_BF_decrypt_begin
  846         movl    8(%esp),%eax
  847         movl    12(%esp),%ebx
  848         bswap   %eax
  849         bswap   %ebx
  850         movl    16(%esp),%ecx
  851         movl    20(%esp),%edx
  852         xorl    %eax,%ecx
  853         xorl    %ebx,%edx
  854         movl    (%esi),%eax
  855         movl    4(%esi),%ebx
  856 .L016dj7:
  857         rorl    $16,%edx
  858         movb    %dl,6(%edi)
  859         shrl    $16,%edx
  860 .L017dj6:
  861         movb    %dh,5(%edi)
  862 .L018dj5:
  863         movb    %dl,4(%edi)
  864 .L019dj4:
  865         movl    %ecx,(%edi)
  866         jmp     .L020djend
  867 .L021dj3:
  868         rorl    $16,%ecx
  869         movb    %cl,2(%edi)
  870         shll    $16,%ecx
  871 .L022dj2:
  872         movb    %ch,1(%esi)
  873 .L023dj1:
  874         movb    %cl,(%esi)
  875 .L020djend:
  876         jmp     .L003finish
  877 .L003finish:
  878         movl    60(%esp),%ecx
  879         addl    $24,%esp
  880         movl    %eax,(%ecx)
  881         movl    %ebx,4(%ecx)
  882         popl    %edi
  883         popl    %esi
  884         popl    %ebx
  885         popl    %ebp
  886         ret
  887 .align  64
  888 .L005cbc_enc_jmp_table:
  889 .long   0
  890 .long   .L013ej1-.L004PIC_point
  891 .long   .L012ej2-.L004PIC_point
  892 .long   .L011ej3-.L004PIC_point
  893 .long   .L009ej4-.L004PIC_point
  894 .long   .L008ej5-.L004PIC_point
  895 .long   .L007ej6-.L004PIC_point
  896 .long   .L006ej7-.L004PIC_point
  897 .align  64
  898 .size   BF_cbc_encrypt,.-.L_BF_cbc_encrypt_begin
  899 #else
  900 .text
  901 .globl  BF_encrypt
  902 .type   BF_encrypt,@function
  903 .align  16
  904 BF_encrypt:
  905 .L_BF_encrypt_begin:
  906 
  907         pushl   %ebp
  908         pushl   %ebx
  909         movl    12(%esp),%ebx
  910         movl    16(%esp),%ebp
  911         pushl   %esi
  912         pushl   %edi
  913 
  914         movl    (%ebx),%edi
  915         movl    4(%ebx),%esi
  916         xorl    %eax,%eax
  917         movl    (%ebp),%ebx
  918         xorl    %ecx,%ecx
  919         xorl    %ebx,%edi
  920 
  921 
  922         movl    4(%ebp),%edx
  923         movl    %edi,%ebx
  924         xorl    %edx,%esi
  925         shrl    $16,%ebx
  926         movl    %edi,%edx
  927         movb    %bh,%al
  928         andl    $255,%ebx
  929         movb    %dh,%cl
  930         andl    $255,%edx
  931         movl    72(%ebp,%eax,4),%eax
  932         movl    1096(%ebp,%ebx,4),%ebx
  933         addl    %eax,%ebx
  934         movl    2120(%ebp,%ecx,4),%eax
  935         xorl    %eax,%ebx
  936         movl    3144(%ebp,%edx,4),%edx
  937         addl    %edx,%ebx
  938         xorl    %eax,%eax
  939         xorl    %ebx,%esi
  940 
  941 
  942         movl    8(%ebp),%edx
  943         movl    %esi,%ebx
  944         xorl    %edx,%edi
  945         shrl    $16,%ebx
  946         movl    %esi,%edx
  947         movb    %bh,%al
  948         andl    $255,%ebx
  949         movb    %dh,%cl
  950         andl    $255,%edx
  951         movl    72(%ebp,%eax,4),%eax
  952         movl    1096(%ebp,%ebx,4),%ebx
  953         addl    %eax,%ebx
  954         movl    2120(%ebp,%ecx,4),%eax
  955         xorl    %eax,%ebx
  956         movl    3144(%ebp,%edx,4),%edx
  957         addl    %edx,%ebx
  958         xorl    %eax,%eax
  959         xorl    %ebx,%edi
  960 
  961 
  962         movl    12(%ebp),%edx
  963         movl    %edi,%ebx
  964         xorl    %edx,%esi
  965         shrl    $16,%ebx
  966         movl    %edi,%edx
  967         movb    %bh,%al
  968         andl    $255,%ebx
  969         movb    %dh,%cl
  970         andl    $255,%edx
  971         movl    72(%ebp,%eax,4),%eax
  972         movl    1096(%ebp,%ebx,4),%ebx
  973         addl    %eax,%ebx
  974         movl    2120(%ebp,%ecx,4),%eax
  975         xorl    %eax,%ebx
  976         movl    3144(%ebp,%edx,4),%edx
  977         addl    %edx,%ebx
  978         xorl    %eax,%eax
  979         xorl    %ebx,%esi
  980 
  981 
  982         movl    16(%ebp),%edx
  983         movl    %esi,%ebx
  984         xorl    %edx,%edi
  985         shrl    $16,%ebx
  986         movl    %esi,%edx
  987         movb    %bh,%al
  988         andl    $255,%ebx
  989         movb    %dh,%cl
  990         andl    $255,%edx
  991         movl    72(%ebp,%eax,4),%eax
  992         movl    1096(%ebp,%ebx,4),%ebx
  993         addl    %eax,%ebx
  994         movl    2120(%ebp,%ecx,4),%eax
  995         xorl    %eax,%ebx
  996         movl    3144(%ebp,%edx,4),%edx
  997         addl    %edx,%ebx
  998         xorl    %eax,%eax
  999         xorl    %ebx,%edi
 1000 
 1001 
 1002         movl    20(%ebp),%edx
 1003         movl    %edi,%ebx
 1004         xorl    %edx,%esi
 1005         shrl    $16,%ebx
 1006         movl    %edi,%edx
 1007         movb    %bh,%al
 1008         andl    $255,%ebx
 1009         movb    %dh,%cl
 1010         andl    $255,%edx
 1011         movl    72(%ebp,%eax,4),%eax
 1012         movl    1096(%ebp,%ebx,4),%ebx
 1013         addl    %eax,%ebx
 1014         movl    2120(%ebp,%ecx,4),%eax
 1015         xorl    %eax,%ebx
 1016         movl    3144(%ebp,%edx,4),%edx
 1017         addl    %edx,%ebx
 1018         xorl    %eax,%eax
 1019         xorl    %ebx,%esi
 1020 
 1021 
 1022         movl    24(%ebp),%edx
 1023         movl    %esi,%ebx
 1024         xorl    %edx,%edi
 1025         shrl    $16,%ebx
 1026         movl    %esi,%edx
 1027         movb    %bh,%al
 1028         andl    $255,%ebx
 1029         movb    %dh,%cl
 1030         andl    $255,%edx
 1031         movl    72(%ebp,%eax,4),%eax
 1032         movl    1096(%ebp,%ebx,4),%ebx
 1033         addl    %eax,%ebx
 1034         movl    2120(%ebp,%ecx,4),%eax
 1035         xorl    %eax,%ebx
 1036         movl    3144(%ebp,%edx,4),%edx
 1037         addl    %edx,%ebx
 1038         xorl    %eax,%eax
 1039         xorl    %ebx,%edi
 1040 
 1041 
 1042         movl    28(%ebp),%edx
 1043         movl    %edi,%ebx
 1044         xorl    %edx,%esi
 1045         shrl    $16,%ebx
 1046         movl    %edi,%edx
 1047         movb    %bh,%al
 1048         andl    $255,%ebx
 1049         movb    %dh,%cl
 1050         andl    $255,%edx
 1051         movl    72(%ebp,%eax,4),%eax
 1052         movl    1096(%ebp,%ebx,4),%ebx
 1053         addl    %eax,%ebx
 1054         movl    2120(%ebp,%ecx,4),%eax
 1055         xorl    %eax,%ebx
 1056         movl    3144(%ebp,%edx,4),%edx
 1057         addl    %edx,%ebx
 1058         xorl    %eax,%eax
 1059         xorl    %ebx,%esi
 1060 
 1061 
 1062         movl    32(%ebp),%edx
 1063         movl    %esi,%ebx
 1064         xorl    %edx,%edi
 1065         shrl    $16,%ebx
 1066         movl    %esi,%edx
 1067         movb    %bh,%al
 1068         andl    $255,%ebx
 1069         movb    %dh,%cl
 1070         andl    $255,%edx
 1071         movl    72(%ebp,%eax,4),%eax
 1072         movl    1096(%ebp,%ebx,4),%ebx
 1073         addl    %eax,%ebx
 1074         movl    2120(%ebp,%ecx,4),%eax
 1075         xorl    %eax,%ebx
 1076         movl    3144(%ebp,%edx,4),%edx
 1077         addl    %edx,%ebx
 1078         xorl    %eax,%eax
 1079         xorl    %ebx,%edi
 1080 
 1081 
 1082         movl    36(%ebp),%edx
 1083         movl    %edi,%ebx
 1084         xorl    %edx,%esi
 1085         shrl    $16,%ebx
 1086         movl    %edi,%edx
 1087         movb    %bh,%al
 1088         andl    $255,%ebx
 1089         movb    %dh,%cl
 1090         andl    $255,%edx
 1091         movl    72(%ebp,%eax,4),%eax
 1092         movl    1096(%ebp,%ebx,4),%ebx
 1093         addl    %eax,%ebx
 1094         movl    2120(%ebp,%ecx,4),%eax
 1095         xorl    %eax,%ebx
 1096         movl    3144(%ebp,%edx,4),%edx
 1097         addl    %edx,%ebx
 1098         xorl    %eax,%eax
 1099         xorl    %ebx,%esi
 1100 
 1101 
 1102         movl    40(%ebp),%edx
 1103         movl    %esi,%ebx
 1104         xorl    %edx,%edi
 1105         shrl    $16,%ebx
 1106         movl    %esi,%edx
 1107         movb    %bh,%al
 1108         andl    $255,%ebx
 1109         movb    %dh,%cl
 1110         andl    $255,%edx
 1111         movl    72(%ebp,%eax,4),%eax
 1112         movl    1096(%ebp,%ebx,4),%ebx
 1113         addl    %eax,%ebx
 1114         movl    2120(%ebp,%ecx,4),%eax
 1115         xorl    %eax,%ebx
 1116         movl    3144(%ebp,%edx,4),%edx
 1117         addl    %edx,%ebx
 1118         xorl    %eax,%eax
 1119         xorl    %ebx,%edi
 1120 
 1121 
 1122         movl    44(%ebp),%edx
 1123         movl    %edi,%ebx
 1124         xorl    %edx,%esi
 1125         shrl    $16,%ebx
 1126         movl    %edi,%edx
 1127         movb    %bh,%al
 1128         andl    $255,%ebx
 1129         movb    %dh,%cl
 1130         andl    $255,%edx
 1131         movl    72(%ebp,%eax,4),%eax
 1132         movl    1096(%ebp,%ebx,4),%ebx
 1133         addl    %eax,%ebx
 1134         movl    2120(%ebp,%ecx,4),%eax
 1135         xorl    %eax,%ebx
 1136         movl    3144(%ebp,%edx,4),%edx
 1137         addl    %edx,%ebx
 1138         xorl    %eax,%eax
 1139         xorl    %ebx,%esi
 1140 
 1141 
 1142         movl    48(%ebp),%edx
 1143         movl    %esi,%ebx
 1144         xorl    %edx,%edi
 1145         shrl    $16,%ebx
 1146         movl    %esi,%edx
 1147         movb    %bh,%al
 1148         andl    $255,%ebx
 1149         movb    %dh,%cl
 1150         andl    $255,%edx
 1151         movl    72(%ebp,%eax,4),%eax
 1152         movl    1096(%ebp,%ebx,4),%ebx
 1153         addl    %eax,%ebx
 1154         movl    2120(%ebp,%ecx,4),%eax
 1155         xorl    %eax,%ebx
 1156         movl    3144(%ebp,%edx,4),%edx
 1157         addl    %edx,%ebx
 1158         xorl    %eax,%eax
 1159         xorl    %ebx,%edi
 1160 
 1161 
 1162         movl    52(%ebp),%edx
 1163         movl    %edi,%ebx
 1164         xorl    %edx,%esi
 1165         shrl    $16,%ebx
 1166         movl    %edi,%edx
 1167         movb    %bh,%al
 1168         andl    $255,%ebx
 1169         movb    %dh,%cl
 1170         andl    $255,%edx
 1171         movl    72(%ebp,%eax,4),%eax
 1172         movl    1096(%ebp,%ebx,4),%ebx
 1173         addl    %eax,%ebx
 1174         movl    2120(%ebp,%ecx,4),%eax
 1175         xorl    %eax,%ebx
 1176         movl    3144(%ebp,%edx,4),%edx
 1177         addl    %edx,%ebx
 1178         xorl    %eax,%eax
 1179         xorl    %ebx,%esi
 1180 
 1181 
 1182         movl    56(%ebp),%edx
 1183         movl    %esi,%ebx
 1184         xorl    %edx,%edi
 1185         shrl    $16,%ebx
 1186         movl    %esi,%edx
 1187         movb    %bh,%al
 1188         andl    $255,%ebx
 1189         movb    %dh,%cl
 1190         andl    $255,%edx
 1191         movl    72(%ebp,%eax,4),%eax
 1192         movl    1096(%ebp,%ebx,4),%ebx
 1193         addl    %eax,%ebx
 1194         movl    2120(%ebp,%ecx,4),%eax
 1195         xorl    %eax,%ebx
 1196         movl    3144(%ebp,%edx,4),%edx
 1197         addl    %edx,%ebx
 1198         xorl    %eax,%eax
 1199         xorl    %ebx,%edi
 1200 
 1201 
 1202         movl    60(%ebp),%edx
 1203         movl    %edi,%ebx
 1204         xorl    %edx,%esi
 1205         shrl    $16,%ebx
 1206         movl    %edi,%edx
 1207         movb    %bh,%al
 1208         andl    $255,%ebx
 1209         movb    %dh,%cl
 1210         andl    $255,%edx
 1211         movl    72(%ebp,%eax,4),%eax
 1212         movl    1096(%ebp,%ebx,4),%ebx
 1213         addl    %eax,%ebx
 1214         movl    2120(%ebp,%ecx,4),%eax
 1215         xorl    %eax,%ebx
 1216         movl    3144(%ebp,%edx,4),%edx
 1217         addl    %edx,%ebx
 1218         xorl    %eax,%eax
 1219         xorl    %ebx,%esi
 1220 
 1221 
 1222         movl    64(%ebp),%edx
 1223         movl    %esi,%ebx
 1224         xorl    %edx,%edi
 1225         shrl    $16,%ebx
 1226         movl    %esi,%edx
 1227         movb    %bh,%al
 1228         andl    $255,%ebx
 1229         movb    %dh,%cl
 1230         andl    $255,%edx
 1231         movl    72(%ebp,%eax,4),%eax
 1232         movl    1096(%ebp,%ebx,4),%ebx
 1233         addl    %eax,%ebx
 1234         movl    2120(%ebp,%ecx,4),%eax
 1235         xorl    %eax,%ebx
 1236         movl    3144(%ebp,%edx,4),%edx
 1237         addl    %edx,%ebx
 1238 
 1239         movl    20(%esp),%eax
 1240         xorl    %ebx,%edi
 1241         movl    68(%ebp),%edx
 1242         xorl    %edx,%esi
 1243         movl    %edi,4(%eax)
 1244         movl    %esi,(%eax)
 1245         popl    %edi
 1246         popl    %esi
 1247         popl    %ebx
 1248         popl    %ebp
 1249         ret
 1250 .size   BF_encrypt,.-.L_BF_encrypt_begin
 1251 .globl  BF_decrypt
 1252 .type   BF_decrypt,@function
 1253 .align  16
 1254 BF_decrypt:
 1255 .L_BF_decrypt_begin:
 1256 
 1257         pushl   %ebp
 1258         pushl   %ebx
 1259         movl    12(%esp),%ebx
 1260         movl    16(%esp),%ebp
 1261         pushl   %esi
 1262         pushl   %edi
 1263 
 1264         movl    (%ebx),%edi
 1265         movl    4(%ebx),%esi
 1266         xorl    %eax,%eax
 1267         movl    68(%ebp),%ebx
 1268         xorl    %ecx,%ecx
 1269         xorl    %ebx,%edi
 1270 
 1271 
 1272         movl    64(%ebp),%edx
 1273         movl    %edi,%ebx
 1274         xorl    %edx,%esi
 1275         shrl    $16,%ebx
 1276         movl    %edi,%edx
 1277         movb    %bh,%al
 1278         andl    $255,%ebx
 1279         movb    %dh,%cl
 1280         andl    $255,%edx
 1281         movl    72(%ebp,%eax,4),%eax
 1282         movl    1096(%ebp,%ebx,4),%ebx
 1283         addl    %eax,%ebx
 1284         movl    2120(%ebp,%ecx,4),%eax
 1285         xorl    %eax,%ebx
 1286         movl    3144(%ebp,%edx,4),%edx
 1287         addl    %edx,%ebx
 1288         xorl    %eax,%eax
 1289         xorl    %ebx,%esi
 1290 
 1291 
 1292         movl    60(%ebp),%edx
 1293         movl    %esi,%ebx
 1294         xorl    %edx,%edi
 1295         shrl    $16,%ebx
 1296         movl    %esi,%edx
 1297         movb    %bh,%al
 1298         andl    $255,%ebx
 1299         movb    %dh,%cl
 1300         andl    $255,%edx
 1301         movl    72(%ebp,%eax,4),%eax
 1302         movl    1096(%ebp,%ebx,4),%ebx
 1303         addl    %eax,%ebx
 1304         movl    2120(%ebp,%ecx,4),%eax
 1305         xorl    %eax,%ebx
 1306         movl    3144(%ebp,%edx,4),%edx
 1307         addl    %edx,%ebx
 1308         xorl    %eax,%eax
 1309         xorl    %ebx,%edi
 1310 
 1311 
 1312         movl    56(%ebp),%edx
 1313         movl    %edi,%ebx
 1314         xorl    %edx,%esi
 1315         shrl    $16,%ebx
 1316         movl    %edi,%edx
 1317         movb    %bh,%al
 1318         andl    $255,%ebx
 1319         movb    %dh,%cl
 1320         andl    $255,%edx
 1321         movl    72(%ebp,%eax,4),%eax
 1322         movl    1096(%ebp,%ebx,4),%ebx
 1323         addl    %eax,%ebx
 1324         movl    2120(%ebp,%ecx,4),%eax
 1325         xorl    %eax,%ebx
 1326         movl    3144(%ebp,%edx,4),%edx
 1327         addl    %edx,%ebx
 1328         xorl    %eax,%eax
 1329         xorl    %ebx,%esi
 1330 
 1331 
 1332         movl    52(%ebp),%edx
 1333         movl    %esi,%ebx
 1334         xorl    %edx,%edi
 1335         shrl    $16,%ebx
 1336         movl    %esi,%edx
 1337         movb    %bh,%al
 1338         andl    $255,%ebx
 1339         movb    %dh,%cl
 1340         andl    $255,%edx
 1341         movl    72(%ebp,%eax,4),%eax
 1342         movl    1096(%ebp,%ebx,4),%ebx
 1343         addl    %eax,%ebx
 1344         movl    2120(%ebp,%ecx,4),%eax
 1345         xorl    %eax,%ebx
 1346         movl    3144(%ebp,%edx,4),%edx
 1347         addl    %edx,%ebx
 1348         xorl    %eax,%eax
 1349         xorl    %ebx,%edi
 1350 
 1351 
 1352         movl    48(%ebp),%edx
 1353         movl    %edi,%ebx
 1354         xorl    %edx,%esi
 1355         shrl    $16,%ebx
 1356         movl    %edi,%edx
 1357         movb    %bh,%al
 1358         andl    $255,%ebx
 1359         movb    %dh,%cl
 1360         andl    $255,%edx
 1361         movl    72(%ebp,%eax,4),%eax
 1362         movl    1096(%ebp,%ebx,4),%ebx
 1363         addl    %eax,%ebx
 1364         movl    2120(%ebp,%ecx,4),%eax
 1365         xorl    %eax,%ebx
 1366         movl    3144(%ebp,%edx,4),%edx
 1367         addl    %edx,%ebx
 1368         xorl    %eax,%eax
 1369         xorl    %ebx,%esi
 1370 
 1371 
 1372         movl    44(%ebp),%edx
 1373         movl    %esi,%ebx
 1374         xorl    %edx,%edi
 1375         shrl    $16,%ebx
 1376         movl    %esi,%edx
 1377         movb    %bh,%al
 1378         andl    $255,%ebx
 1379         movb    %dh,%cl
 1380         andl    $255,%edx
 1381         movl    72(%ebp,%eax,4),%eax
 1382         movl    1096(%ebp,%ebx,4),%ebx
 1383         addl    %eax,%ebx
 1384         movl    2120(%ebp,%ecx,4),%eax
 1385         xorl    %eax,%ebx
 1386         movl    3144(%ebp,%edx,4),%edx
 1387         addl    %edx,%ebx
 1388         xorl    %eax,%eax
 1389         xorl    %ebx,%edi
 1390 
 1391 
 1392         movl    40(%ebp),%edx
 1393         movl    %edi,%ebx
 1394         xorl    %edx,%esi
 1395         shrl    $16,%ebx
 1396         movl    %edi,%edx
 1397         movb    %bh,%al
 1398         andl    $255,%ebx
 1399         movb    %dh,%cl
 1400         andl    $255,%edx
 1401         movl    72(%ebp,%eax,4),%eax
 1402         movl    1096(%ebp,%ebx,4),%ebx
 1403         addl    %eax,%ebx
 1404         movl    2120(%ebp,%ecx,4),%eax
 1405         xorl    %eax,%ebx
 1406         movl    3144(%ebp,%edx,4),%edx
 1407         addl    %edx,%ebx
 1408         xorl    %eax,%eax
 1409         xorl    %ebx,%esi
 1410 
 1411 
 1412         movl    36(%ebp),%edx
 1413         movl    %esi,%ebx
 1414         xorl    %edx,%edi
 1415         shrl    $16,%ebx
 1416         movl    %esi,%edx
 1417         movb    %bh,%al
 1418         andl    $255,%ebx
 1419         movb    %dh,%cl
 1420         andl    $255,%edx
 1421         movl    72(%ebp,%eax,4),%eax
 1422         movl    1096(%ebp,%ebx,4),%ebx
 1423         addl    %eax,%ebx
 1424         movl    2120(%ebp,%ecx,4),%eax
 1425         xorl    %eax,%ebx
 1426         movl    3144(%ebp,%edx,4),%edx
 1427         addl    %edx,%ebx
 1428         xorl    %eax,%eax
 1429         xorl    %ebx,%edi
 1430 
 1431 
 1432         movl    32(%ebp),%edx
 1433         movl    %edi,%ebx
 1434         xorl    %edx,%esi
 1435         shrl    $16,%ebx
 1436         movl    %edi,%edx
 1437         movb    %bh,%al
 1438         andl    $255,%ebx
 1439         movb    %dh,%cl
 1440         andl    $255,%edx
 1441         movl    72(%ebp,%eax,4),%eax
 1442         movl    1096(%ebp,%ebx,4),%ebx
 1443         addl    %eax,%ebx
 1444         movl    2120(%ebp,%ecx,4),%eax
 1445         xorl    %eax,%ebx
 1446         movl    3144(%ebp,%edx,4),%edx
 1447         addl    %edx,%ebx
 1448         xorl    %eax,%eax
 1449         xorl    %ebx,%esi
 1450 
 1451 
 1452         movl    28(%ebp),%edx
 1453         movl    %esi,%ebx
 1454         xorl    %edx,%edi
 1455         shrl    $16,%ebx
 1456         movl    %esi,%edx
 1457         movb    %bh,%al
 1458         andl    $255,%ebx
 1459         movb    %dh,%cl
 1460         andl    $255,%edx
 1461         movl    72(%ebp,%eax,4),%eax
 1462         movl    1096(%ebp,%ebx,4),%ebx
 1463         addl    %eax,%ebx
 1464         movl    2120(%ebp,%ecx,4),%eax
 1465         xorl    %eax,%ebx
 1466         movl    3144(%ebp,%edx,4),%edx
 1467         addl    %edx,%ebx
 1468         xorl    %eax,%eax
 1469         xorl    %ebx,%edi
 1470 
 1471 
 1472         movl    24(%ebp),%edx
 1473         movl    %edi,%ebx
 1474         xorl    %edx,%esi
 1475         shrl    $16,%ebx
 1476         movl    %edi,%edx
 1477         movb    %bh,%al
 1478         andl    $255,%ebx
 1479         movb    %dh,%cl
 1480         andl    $255,%edx
 1481         movl    72(%ebp,%eax,4),%eax
 1482         movl    1096(%ebp,%ebx,4),%ebx
 1483         addl    %eax,%ebx
 1484         movl    2120(%ebp,%ecx,4),%eax
 1485         xorl    %eax,%ebx
 1486         movl    3144(%ebp,%edx,4),%edx
 1487         addl    %edx,%ebx
 1488         xorl    %eax,%eax
 1489         xorl    %ebx,%esi
 1490 
 1491 
 1492         movl    20(%ebp),%edx
 1493         movl    %esi,%ebx
 1494         xorl    %edx,%edi
 1495         shrl    $16,%ebx
 1496         movl    %esi,%edx
 1497         movb    %bh,%al
 1498         andl    $255,%ebx
 1499         movb    %dh,%cl
 1500         andl    $255,%edx
 1501         movl    72(%ebp,%eax,4),%eax
 1502         movl    1096(%ebp,%ebx,4),%ebx
 1503         addl    %eax,%ebx
 1504         movl    2120(%ebp,%ecx,4),%eax
 1505         xorl    %eax,%ebx
 1506         movl    3144(%ebp,%edx,4),%edx
 1507         addl    %edx,%ebx
 1508         xorl    %eax,%eax
 1509         xorl    %ebx,%edi
 1510 
 1511 
 1512         movl    16(%ebp),%edx
 1513         movl    %edi,%ebx
 1514         xorl    %edx,%esi
 1515         shrl    $16,%ebx
 1516         movl    %edi,%edx
 1517         movb    %bh,%al
 1518         andl    $255,%ebx
 1519         movb    %dh,%cl
 1520         andl    $255,%edx
 1521         movl    72(%ebp,%eax,4),%eax
 1522         movl    1096(%ebp,%ebx,4),%ebx
 1523         addl    %eax,%ebx
 1524         movl    2120(%ebp,%ecx,4),%eax
 1525         xorl    %eax,%ebx
 1526         movl    3144(%ebp,%edx,4),%edx
 1527         addl    %edx,%ebx
 1528         xorl    %eax,%eax
 1529         xorl    %ebx,%esi
 1530 
 1531 
 1532         movl    12(%ebp),%edx
 1533         movl    %esi,%ebx
 1534         xorl    %edx,%edi
 1535         shrl    $16,%ebx
 1536         movl    %esi,%edx
 1537         movb    %bh,%al
 1538         andl    $255,%ebx
 1539         movb    %dh,%cl
 1540         andl    $255,%edx
 1541         movl    72(%ebp,%eax,4),%eax
 1542         movl    1096(%ebp,%ebx,4),%ebx
 1543         addl    %eax,%ebx
 1544         movl    2120(%ebp,%ecx,4),%eax
 1545         xorl    %eax,%ebx
 1546         movl    3144(%ebp,%edx,4),%edx
 1547         addl    %edx,%ebx
 1548         xorl    %eax,%eax
 1549         xorl    %ebx,%edi
 1550 
 1551 
 1552         movl    8(%ebp),%edx
 1553         movl    %edi,%ebx
 1554         xorl    %edx,%esi
 1555         shrl    $16,%ebx
 1556         movl    %edi,%edx
 1557         movb    %bh,%al
 1558         andl    $255,%ebx
 1559         movb    %dh,%cl
 1560         andl    $255,%edx
 1561         movl    72(%ebp,%eax,4),%eax
 1562         movl    1096(%ebp,%ebx,4),%ebx
 1563         addl    %eax,%ebx
 1564         movl    2120(%ebp,%ecx,4),%eax
 1565         xorl    %eax,%ebx
 1566         movl    3144(%ebp,%edx,4),%edx
 1567         addl    %edx,%ebx
 1568         xorl    %eax,%eax
 1569         xorl    %ebx,%esi
 1570 
 1571 
 1572         movl    4(%ebp),%edx
 1573         movl    %esi,%ebx
 1574         xorl    %edx,%edi
 1575         shrl    $16,%ebx
 1576         movl    %esi,%edx
 1577         movb    %bh,%al
 1578         andl    $255,%ebx
 1579         movb    %dh,%cl
 1580         andl    $255,%edx
 1581         movl    72(%ebp,%eax,4),%eax
 1582         movl    1096(%ebp,%ebx,4),%ebx
 1583         addl    %eax,%ebx
 1584         movl    2120(%ebp,%ecx,4),%eax
 1585         xorl    %eax,%ebx
 1586         movl    3144(%ebp,%edx,4),%edx
 1587         addl    %edx,%ebx
 1588 
 1589         movl    20(%esp),%eax
 1590         xorl    %ebx,%edi
 1591         movl    (%ebp),%edx
 1592         xorl    %edx,%esi
 1593         movl    %edi,4(%eax)
 1594         movl    %esi,(%eax)
 1595         popl    %edi
 1596         popl    %esi
 1597         popl    %ebx
 1598         popl    %ebp
 1599         ret
 1600 .size   BF_decrypt,.-.L_BF_decrypt_begin
 1601 .globl  BF_cbc_encrypt
 1602 .type   BF_cbc_encrypt,@function
 1603 .align  16
 1604 BF_cbc_encrypt:
 1605 .L_BF_cbc_encrypt_begin:
 1606 
 1607         pushl   %ebp
 1608         pushl   %ebx
 1609         pushl   %esi
 1610         pushl   %edi
 1611         movl    28(%esp),%ebp
 1612 
 1613         movl    36(%esp),%ebx
 1614         movl    (%ebx),%esi
 1615         movl    4(%ebx),%edi
 1616         pushl   %edi
 1617         pushl   %esi
 1618         pushl   %edi
 1619         pushl   %esi
 1620         movl    %esp,%ebx
 1621         movl    36(%esp),%esi
 1622         movl    40(%esp),%edi
 1623 
 1624         movl    56(%esp),%ecx
 1625 
 1626         movl    48(%esp),%eax
 1627         pushl   %eax
 1628         pushl   %ebx
 1629         cmpl    $0,%ecx
 1630         jz      .L000decrypt
 1631         andl    $4294967288,%ebp
 1632         movl    8(%esp),%eax
 1633         movl    12(%esp),%ebx
 1634         jz      .L001encrypt_finish
 1635 .L002encrypt_loop:
 1636         movl    (%esi),%ecx
 1637         movl    4(%esi),%edx
 1638         xorl    %ecx,%eax
 1639         xorl    %edx,%ebx
 1640         bswap   %eax
 1641         bswap   %ebx
 1642         movl    %eax,8(%esp)
 1643         movl    %ebx,12(%esp)
 1644         call    .L_BF_encrypt_begin
 1645         movl    8(%esp),%eax
 1646         movl    12(%esp),%ebx
 1647         bswap   %eax
 1648         bswap   %ebx
 1649         movl    %eax,(%edi)
 1650         movl    %ebx,4(%edi)
 1651         addl    $8,%esi
 1652         addl    $8,%edi
 1653         subl    $8,%ebp
 1654         jnz     .L002encrypt_loop
 1655 .L001encrypt_finish:
 1656         movl    52(%esp),%ebp
 1657         andl    $7,%ebp
 1658         jz      .L003finish
 1659         call    .L004PIC_point
 1660 .L004PIC_point:
 1661         popl    %edx
 1662         leal    .L005cbc_enc_jmp_table-.L004PIC_point(%edx),%ecx
 1663         movl    (%ecx,%ebp,4),%ebp
 1664         addl    %edx,%ebp
 1665         xorl    %ecx,%ecx
 1666         xorl    %edx,%edx
 1667         jmp     *%ebp
 1668 .L006ej7:
 1669         movb    6(%esi),%dh
 1670         shll    $8,%edx
 1671 .L007ej6:
 1672         movb    5(%esi),%dh
 1673 .L008ej5:
 1674         movb    4(%esi),%dl
 1675 .L009ej4:
 1676         movl    (%esi),%ecx
 1677         jmp     .L010ejend
 1678 .L011ej3:
 1679         movb    2(%esi),%ch
 1680         shll    $8,%ecx
 1681 .L012ej2:
 1682         movb    1(%esi),%ch
 1683 .L013ej1:
 1684         movb    (%esi),%cl
 1685 .L010ejend:
 1686         xorl    %ecx,%eax
 1687         xorl    %edx,%ebx
 1688         bswap   %eax
 1689         bswap   %ebx
 1690         movl    %eax,8(%esp)
 1691         movl    %ebx,12(%esp)
 1692         call    .L_BF_encrypt_begin
 1693         movl    8(%esp),%eax
 1694         movl    12(%esp),%ebx
 1695         bswap   %eax
 1696         bswap   %ebx
 1697         movl    %eax,(%edi)
 1698         movl    %ebx,4(%edi)
 1699         jmp     .L003finish
 1700 .L000decrypt:
 1701         andl    $4294967288,%ebp
 1702         movl    16(%esp),%eax
 1703         movl    20(%esp),%ebx
 1704         jz      .L014decrypt_finish
 1705 .L015decrypt_loop:
 1706         movl    (%esi),%eax
 1707         movl    4(%esi),%ebx
 1708         bswap   %eax
 1709         bswap   %ebx
 1710         movl    %eax,8(%esp)
 1711         movl    %ebx,12(%esp)
 1712         call    .L_BF_decrypt_begin
 1713         movl    8(%esp),%eax
 1714         movl    12(%esp),%ebx
 1715         bswap   %eax
 1716         bswap   %ebx
 1717         movl    16(%esp),%ecx
 1718         movl    20(%esp),%edx
 1719         xorl    %eax,%ecx
 1720         xorl    %ebx,%edx
 1721         movl    (%esi),%eax
 1722         movl    4(%esi),%ebx
 1723         movl    %ecx,(%edi)
 1724         movl    %edx,4(%edi)
 1725         movl    %eax,16(%esp)
 1726         movl    %ebx,20(%esp)
 1727         addl    $8,%esi
 1728         addl    $8,%edi
 1729         subl    $8,%ebp
 1730         jnz     .L015decrypt_loop
 1731 .L014decrypt_finish:
 1732         movl    52(%esp),%ebp
 1733         andl    $7,%ebp
 1734         jz      .L003finish
 1735         movl    (%esi),%eax
 1736         movl    4(%esi),%ebx
 1737         bswap   %eax
 1738         bswap   %ebx
 1739         movl    %eax,8(%esp)
 1740         movl    %ebx,12(%esp)
 1741         call    .L_BF_decrypt_begin
 1742         movl    8(%esp),%eax
 1743         movl    12(%esp),%ebx
 1744         bswap   %eax
 1745         bswap   %ebx
 1746         movl    16(%esp),%ecx
 1747         movl    20(%esp),%edx
 1748         xorl    %eax,%ecx
 1749         xorl    %ebx,%edx
 1750         movl    (%esi),%eax
 1751         movl    4(%esi),%ebx
 1752 .L016dj7:
 1753         rorl    $16,%edx
 1754         movb    %dl,6(%edi)
 1755         shrl    $16,%edx
 1756 .L017dj6:
 1757         movb    %dh,5(%edi)
 1758 .L018dj5:
 1759         movb    %dl,4(%edi)
 1760 .L019dj4:
 1761         movl    %ecx,(%edi)
 1762         jmp     .L020djend
 1763 .L021dj3:
 1764         rorl    $16,%ecx
 1765         movb    %cl,2(%edi)
 1766         shll    $16,%ecx
 1767 .L022dj2:
 1768         movb    %ch,1(%esi)
 1769 .L023dj1:
 1770         movb    %cl,(%esi)
 1771 .L020djend:
 1772         jmp     .L003finish
 1773 .L003finish:
 1774         movl    60(%esp),%ecx
 1775         addl    $24,%esp
 1776         movl    %eax,(%ecx)
 1777         movl    %ebx,4(%ecx)
 1778         popl    %edi
 1779         popl    %esi
 1780         popl    %ebx
 1781         popl    %ebp
 1782         ret
 1783 .align  64
 1784 .L005cbc_enc_jmp_table:
 1785 .long   0
 1786 .long   .L013ej1-.L004PIC_point
 1787 .long   .L012ej2-.L004PIC_point
 1788 .long   .L011ej3-.L004PIC_point
 1789 .long   .L009ej4-.L004PIC_point
 1790 .long   .L008ej5-.L004PIC_point
 1791 .long   .L007ej6-.L004PIC_point
 1792 .long   .L006ej7-.L004PIC_point
 1793 .align  64
 1794 .size   BF_cbc_encrypt,.-.L_BF_cbc_encrypt_begin
 1795 #endif

Cache object: a27a85550baef04a109439066c8c4d5e


[ 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.