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