Home | History | Annotate | Line # | Download | only in i386
      1 #include <machine/asm.h>
      2 .text
      3 .globl	aesni_encrypt
      4 .type	aesni_encrypt,@function
      5 .align	16
      6 aesni_encrypt:
      7 .L_aesni_encrypt_begin:
      8 	movl	4(%esp),%eax
      9 	movl	12(%esp),%edx
     10 	movups	(%eax),%xmm2
     11 	movl	240(%edx),%ecx
     12 	movl	8(%esp),%eax
     13 	movups	(%edx),%xmm0
     14 	movups	16(%edx),%xmm1
     15 	leal	32(%edx),%edx
     16 	xorps	%xmm0,%xmm2
     17 .L000enc1_loop_1:
     18 .byte	102,15,56,220,209
     19 	decl	%ecx
     20 	movups	(%edx),%xmm1
     21 	leal	16(%edx),%edx
     22 	jnz	.L000enc1_loop_1
     23 .byte	102,15,56,221,209
     24 	pxor	%xmm0,%xmm0
     25 	pxor	%xmm1,%xmm1
     26 	movups	%xmm2,(%eax)
     27 	pxor	%xmm2,%xmm2
     28 	ret
     29 .size	aesni_encrypt,.-.L_aesni_encrypt_begin
     30 .globl	aesni_decrypt
     31 .type	aesni_decrypt,@function
     32 .align	16
     33 aesni_decrypt:
     34 .L_aesni_decrypt_begin:
     35 	movl	4(%esp),%eax
     36 	movl	12(%esp),%edx
     37 	movups	(%eax),%xmm2
     38 	movl	240(%edx),%ecx
     39 	movl	8(%esp),%eax
     40 	movups	(%edx),%xmm0
     41 	movups	16(%edx),%xmm1
     42 	leal	32(%edx),%edx
     43 	xorps	%xmm0,%xmm2
     44 .L001dec1_loop_2:
     45 .byte	102,15,56,222,209
     46 	decl	%ecx
     47 	movups	(%edx),%xmm1
     48 	leal	16(%edx),%edx
     49 	jnz	.L001dec1_loop_2
     50 .byte	102,15,56,223,209
     51 	pxor	%xmm0,%xmm0
     52 	pxor	%xmm1,%xmm1
     53 	movups	%xmm2,(%eax)
     54 	pxor	%xmm2,%xmm2
     55 	ret
     56 .size	aesni_decrypt,.-.L_aesni_decrypt_begin
     57 .type	_aesni_encrypt2,@function
     58 .align	16
     59 _aesni_encrypt2:
     60 	movups	(%edx),%xmm0
     61 	shll	$4,%ecx
     62 	movups	16(%edx),%xmm1
     63 	xorps	%xmm0,%xmm2
     64 	pxor	%xmm0,%xmm3
     65 	movups	32(%edx),%xmm0
     66 	leal	32(%edx,%ecx,1),%edx
     67 	negl	%ecx
     68 	addl	$16,%ecx
     69 .L002enc2_loop:
     70 .byte	102,15,56,220,209
     71 .byte	102,15,56,220,217
     72 	movups	(%edx,%ecx,1),%xmm1
     73 	addl	$32,%ecx
     74 .byte	102,15,56,220,208
     75 .byte	102,15,56,220,216
     76 	movups	-16(%edx,%ecx,1),%xmm0
     77 	jnz	.L002enc2_loop
     78 .byte	102,15,56,220,209
     79 .byte	102,15,56,220,217
     80 .byte	102,15,56,221,208
     81 .byte	102,15,56,221,216
     82 	ret
     83 .size	_aesni_encrypt2,.-_aesni_encrypt2
     84 .type	_aesni_decrypt2,@function
     85 .align	16
     86 _aesni_decrypt2:
     87 	movups	(%edx),%xmm0
     88 	shll	$4,%ecx
     89 	movups	16(%edx),%xmm1
     90 	xorps	%xmm0,%xmm2
     91 	pxor	%xmm0,%xmm3
     92 	movups	32(%edx),%xmm0
     93 	leal	32(%edx,%ecx,1),%edx
     94 	negl	%ecx
     95 	addl	$16,%ecx
     96 .L003dec2_loop:
     97 .byte	102,15,56,222,209
     98 .byte	102,15,56,222,217
     99 	movups	(%edx,%ecx,1),%xmm1
    100 	addl	$32,%ecx
    101 .byte	102,15,56,222,208
    102 .byte	102,15,56,222,216
    103 	movups	-16(%edx,%ecx,1),%xmm0
    104 	jnz	.L003dec2_loop
    105 .byte	102,15,56,222,209
    106 .byte	102,15,56,222,217
    107 .byte	102,15,56,223,208
    108 .byte	102,15,56,223,216
    109 	ret
    110 .size	_aesni_decrypt2,.-_aesni_decrypt2
    111 .type	_aesni_encrypt3,@function
    112 .align	16
    113 _aesni_encrypt3:
    114 	movups	(%edx),%xmm0
    115 	shll	$4,%ecx
    116 	movups	16(%edx),%xmm1
    117 	xorps	%xmm0,%xmm2
    118 	pxor	%xmm0,%xmm3
    119 	pxor	%xmm0,%xmm4
    120 	movups	32(%edx),%xmm0
    121 	leal	32(%edx,%ecx,1),%edx
    122 	negl	%ecx
    123 	addl	$16,%ecx
    124 .L004enc3_loop:
    125 .byte	102,15,56,220,209
    126 .byte	102,15,56,220,217
    127 .byte	102,15,56,220,225
    128 	movups	(%edx,%ecx,1),%xmm1
    129 	addl	$32,%ecx
    130 .byte	102,15,56,220,208
    131 .byte	102,15,56,220,216
    132 .byte	102,15,56,220,224
    133 	movups	-16(%edx,%ecx,1),%xmm0
    134 	jnz	.L004enc3_loop
    135 .byte	102,15,56,220,209
    136 .byte	102,15,56,220,217
    137 .byte	102,15,56,220,225
    138 .byte	102,15,56,221,208
    139 .byte	102,15,56,221,216
    140 .byte	102,15,56,221,224
    141 	ret
    142 .size	_aesni_encrypt3,.-_aesni_encrypt3
    143 .type	_aesni_decrypt3,@function
    144 .align	16
    145 _aesni_decrypt3:
    146 	movups	(%edx),%xmm0
    147 	shll	$4,%ecx
    148 	movups	16(%edx),%xmm1
    149 	xorps	%xmm0,%xmm2
    150 	pxor	%xmm0,%xmm3
    151 	pxor	%xmm0,%xmm4
    152 	movups	32(%edx),%xmm0
    153 	leal	32(%edx,%ecx,1),%edx
    154 	negl	%ecx
    155 	addl	$16,%ecx
    156 .L005dec3_loop:
    157 .byte	102,15,56,222,209
    158 .byte	102,15,56,222,217
    159 .byte	102,15,56,222,225
    160 	movups	(%edx,%ecx,1),%xmm1
    161 	addl	$32,%ecx
    162 .byte	102,15,56,222,208
    163 .byte	102,15,56,222,216
    164 .byte	102,15,56,222,224
    165 	movups	-16(%edx,%ecx,1),%xmm0
    166 	jnz	.L005dec3_loop
    167 .byte	102,15,56,222,209
    168 .byte	102,15,56,222,217
    169 .byte	102,15,56,222,225
    170 .byte	102,15,56,223,208
    171 .byte	102,15,56,223,216
    172 .byte	102,15,56,223,224
    173 	ret
    174 .size	_aesni_decrypt3,.-_aesni_decrypt3
    175 .type	_aesni_encrypt4,@function
    176 .align	16
    177 _aesni_encrypt4:
    178 	movups	(%edx),%xmm0
    179 	movups	16(%edx),%xmm1
    180 	shll	$4,%ecx
    181 	xorps	%xmm0,%xmm2
    182 	pxor	%xmm0,%xmm3
    183 	pxor	%xmm0,%xmm4
    184 	pxor	%xmm0,%xmm5
    185 	movups	32(%edx),%xmm0
    186 	leal	32(%edx,%ecx,1),%edx
    187 	negl	%ecx
    188 .byte	15,31,64,0
    189 	addl	$16,%ecx
    190 .L006enc4_loop:
    191 .byte	102,15,56,220,209
    192 .byte	102,15,56,220,217
    193 .byte	102,15,56,220,225
    194 .byte	102,15,56,220,233
    195 	movups	(%edx,%ecx,1),%xmm1
    196 	addl	$32,%ecx
    197 .byte	102,15,56,220,208
    198 .byte	102,15,56,220,216
    199 .byte	102,15,56,220,224
    200 .byte	102,15,56,220,232
    201 	movups	-16(%edx,%ecx,1),%xmm0
    202 	jnz	.L006enc4_loop
    203 .byte	102,15,56,220,209
    204 .byte	102,15,56,220,217
    205 .byte	102,15,56,220,225
    206 .byte	102,15,56,220,233
    207 .byte	102,15,56,221,208
    208 .byte	102,15,56,221,216
    209 .byte	102,15,56,221,224
    210 .byte	102,15,56,221,232
    211 	ret
    212 .size	_aesni_encrypt4,.-_aesni_encrypt4
    213 .type	_aesni_decrypt4,@function
    214 .align	16
    215 _aesni_decrypt4:
    216 	movups	(%edx),%xmm0
    217 	movups	16(%edx),%xmm1
    218 	shll	$4,%ecx
    219 	xorps	%xmm0,%xmm2
    220 	pxor	%xmm0,%xmm3
    221 	pxor	%xmm0,%xmm4
    222 	pxor	%xmm0,%xmm5
    223 	movups	32(%edx),%xmm0
    224 	leal	32(%edx,%ecx,1),%edx
    225 	negl	%ecx
    226 .byte	15,31,64,0
    227 	addl	$16,%ecx
    228 .L007dec4_loop:
    229 .byte	102,15,56,222,209
    230 .byte	102,15,56,222,217
    231 .byte	102,15,56,222,225
    232 .byte	102,15,56,222,233
    233 	movups	(%edx,%ecx,1),%xmm1
    234 	addl	$32,%ecx
    235 .byte	102,15,56,222,208
    236 .byte	102,15,56,222,216
    237 .byte	102,15,56,222,224
    238 .byte	102,15,56,222,232
    239 	movups	-16(%edx,%ecx,1),%xmm0
    240 	jnz	.L007dec4_loop
    241 .byte	102,15,56,222,209
    242 .byte	102,15,56,222,217
    243 .byte	102,15,56,222,225
    244 .byte	102,15,56,222,233
    245 .byte	102,15,56,223,208
    246 .byte	102,15,56,223,216
    247 .byte	102,15,56,223,224
    248 .byte	102,15,56,223,232
    249 	ret
    250 .size	_aesni_decrypt4,.-_aesni_decrypt4
    251 .type	_aesni_encrypt6,@function
    252 .align	16
    253 _aesni_encrypt6:
    254 	movups	(%edx),%xmm0
    255 	shll	$4,%ecx
    256 	movups	16(%edx),%xmm1
    257 	xorps	%xmm0,%xmm2
    258 	pxor	%xmm0,%xmm3
    259 	pxor	%xmm0,%xmm4
    260 .byte	102,15,56,220,209
    261 	pxor	%xmm0,%xmm5
    262 	pxor	%xmm0,%xmm6
    263 .byte	102,15,56,220,217
    264 	leal	32(%edx,%ecx,1),%edx
    265 	negl	%ecx
    266 .byte	102,15,56,220,225
    267 	pxor	%xmm0,%xmm7
    268 	movups	(%edx,%ecx,1),%xmm0
    269 	addl	$16,%ecx
    270 	jmp	.L008_aesni_encrypt6_inner
    271 .align	16
    272 .L009enc6_loop:
    273 .byte	102,15,56,220,209
    274 .byte	102,15,56,220,217
    275 .byte	102,15,56,220,225
    276 .L008_aesni_encrypt6_inner:
    277 .byte	102,15,56,220,233
    278 .byte	102,15,56,220,241
    279 .byte	102,15,56,220,249
    280 .L_aesni_encrypt6_enter:
    281 	movups	(%edx,%ecx,1),%xmm1
    282 	addl	$32,%ecx
    283 .byte	102,15,56,220,208
    284 .byte	102,15,56,220,216
    285 .byte	102,15,56,220,224
    286 .byte	102,15,56,220,232
    287 .byte	102,15,56,220,240
    288 .byte	102,15,56,220,248
    289 	movups	-16(%edx,%ecx,1),%xmm0
    290 	jnz	.L009enc6_loop
    291 .byte	102,15,56,220,209
    292 .byte	102,15,56,220,217
    293 .byte	102,15,56,220,225
    294 .byte	102,15,56,220,233
    295 .byte	102,15,56,220,241
    296 .byte	102,15,56,220,249
    297 .byte	102,15,56,221,208
    298 .byte	102,15,56,221,216
    299 .byte	102,15,56,221,224
    300 .byte	102,15,56,221,232
    301 .byte	102,15,56,221,240
    302 .byte	102,15,56,221,248
    303 	ret
    304 .size	_aesni_encrypt6,.-_aesni_encrypt6
    305 .type	_aesni_decrypt6,@function
    306 .align	16
    307 _aesni_decrypt6:
    308 	movups	(%edx),%xmm0
    309 	shll	$4,%ecx
    310 	movups	16(%edx),%xmm1
    311 	xorps	%xmm0,%xmm2
    312 	pxor	%xmm0,%xmm3
    313 	pxor	%xmm0,%xmm4
    314 .byte	102,15,56,222,209
    315 	pxor	%xmm0,%xmm5
    316 	pxor	%xmm0,%xmm6
    317 .byte	102,15,56,222,217
    318 	leal	32(%edx,%ecx,1),%edx
    319 	negl	%ecx
    320 .byte	102,15,56,222,225
    321 	pxor	%xmm0,%xmm7
    322 	movups	(%edx,%ecx,1),%xmm0
    323 	addl	$16,%ecx
    324 	jmp	.L010_aesni_decrypt6_inner
    325 .align	16
    326 .L011dec6_loop:
    327 .byte	102,15,56,222,209
    328 .byte	102,15,56,222,217
    329 .byte	102,15,56,222,225
    330 .L010_aesni_decrypt6_inner:
    331 .byte	102,15,56,222,233
    332 .byte	102,15,56,222,241
    333 .byte	102,15,56,222,249
    334 .L_aesni_decrypt6_enter:
    335 	movups	(%edx,%ecx,1),%xmm1
    336 	addl	$32,%ecx
    337 .byte	102,15,56,222,208
    338 .byte	102,15,56,222,216
    339 .byte	102,15,56,222,224
    340 .byte	102,15,56,222,232
    341 .byte	102,15,56,222,240
    342 .byte	102,15,56,222,248
    343 	movups	-16(%edx,%ecx,1),%xmm0
    344 	jnz	.L011dec6_loop
    345 .byte	102,15,56,222,209
    346 .byte	102,15,56,222,217
    347 .byte	102,15,56,222,225
    348 .byte	102,15,56,222,233
    349 .byte	102,15,56,222,241
    350 .byte	102,15,56,222,249
    351 .byte	102,15,56,223,208
    352 .byte	102,15,56,223,216
    353 .byte	102,15,56,223,224
    354 .byte	102,15,56,223,232
    355 .byte	102,15,56,223,240
    356 .byte	102,15,56,223,248
    357 	ret
    358 .size	_aesni_decrypt6,.-_aesni_decrypt6
    359 .globl	aesni_ecb_encrypt
    360 .type	aesni_ecb_encrypt,@function
    361 .align	16
    362 aesni_ecb_encrypt:
    363 .L_aesni_ecb_encrypt_begin:
    364 	pushl	%ebp
    365 	pushl	%ebx
    366 	pushl	%esi
    367 	pushl	%edi
    368 	movl	20(%esp),%esi
    369 	movl	24(%esp),%edi
    370 	movl	28(%esp),%eax
    371 	movl	32(%esp),%edx
    372 	movl	36(%esp),%ebx
    373 	andl	$-16,%eax
    374 	jz	.L012ecb_ret
    375 	movl	240(%edx),%ecx
    376 	testl	%ebx,%ebx
    377 	jz	.L013ecb_decrypt
    378 	movl	%edx,%ebp
    379 	movl	%ecx,%ebx
    380 	cmpl	$96,%eax
    381 	jb	.L014ecb_enc_tail
    382 	movdqu	(%esi),%xmm2
    383 	movdqu	16(%esi),%xmm3
    384 	movdqu	32(%esi),%xmm4
    385 	movdqu	48(%esi),%xmm5
    386 	movdqu	64(%esi),%xmm6
    387 	movdqu	80(%esi),%xmm7
    388 	leal	96(%esi),%esi
    389 	subl	$96,%eax
    390 	jmp	.L015ecb_enc_loop6_enter
    391 .align	16
    392 .L016ecb_enc_loop6:
    393 	movups	%xmm2,(%edi)
    394 	movdqu	(%esi),%xmm2
    395 	movups	%xmm3,16(%edi)
    396 	movdqu	16(%esi),%xmm3
    397 	movups	%xmm4,32(%edi)
    398 	movdqu	32(%esi),%xmm4
    399 	movups	%xmm5,48(%edi)
    400 	movdqu	48(%esi),%xmm5
    401 	movups	%xmm6,64(%edi)
    402 	movdqu	64(%esi),%xmm6
    403 	movups	%xmm7,80(%edi)
    404 	leal	96(%edi),%edi
    405 	movdqu	80(%esi),%xmm7
    406 	leal	96(%esi),%esi
    407 .L015ecb_enc_loop6_enter:
    408 	call	_aesni_encrypt6
    409 	movl	%ebp,%edx
    410 	movl	%ebx,%ecx
    411 	subl	$96,%eax
    412 	jnc	.L016ecb_enc_loop6
    413 	movups	%xmm2,(%edi)
    414 	movups	%xmm3,16(%edi)
    415 	movups	%xmm4,32(%edi)
    416 	movups	%xmm5,48(%edi)
    417 	movups	%xmm6,64(%edi)
    418 	movups	%xmm7,80(%edi)
    419 	leal	96(%edi),%edi
    420 	addl	$96,%eax
    421 	jz	.L012ecb_ret
    422 .L014ecb_enc_tail:
    423 	movups	(%esi),%xmm2
    424 	cmpl	$32,%eax
    425 	jb	.L017ecb_enc_one
    426 	movups	16(%esi),%xmm3
    427 	je	.L018ecb_enc_two
    428 	movups	32(%esi),%xmm4
    429 	cmpl	$64,%eax
    430 	jb	.L019ecb_enc_three
    431 	movups	48(%esi),%xmm5
    432 	je	.L020ecb_enc_four
    433 	movups	64(%esi),%xmm6
    434 	xorps	%xmm7,%xmm7
    435 	call	_aesni_encrypt6
    436 	movups	%xmm2,(%edi)
    437 	movups	%xmm3,16(%edi)
    438 	movups	%xmm4,32(%edi)
    439 	movups	%xmm5,48(%edi)
    440 	movups	%xmm6,64(%edi)
    441 	jmp	.L012ecb_ret
    442 .align	16
    443 .L017ecb_enc_one:
    444 	movups	(%edx),%xmm0
    445 	movups	16(%edx),%xmm1
    446 	leal	32(%edx),%edx
    447 	xorps	%xmm0,%xmm2
    448 .L021enc1_loop_3:
    449 .byte	102,15,56,220,209
    450 	decl	%ecx
    451 	movups	(%edx),%xmm1
    452 	leal	16(%edx),%edx
    453 	jnz	.L021enc1_loop_3
    454 .byte	102,15,56,221,209
    455 	movups	%xmm2,(%edi)
    456 	jmp	.L012ecb_ret
    457 .align	16
    458 .L018ecb_enc_two:
    459 	call	_aesni_encrypt2
    460 	movups	%xmm2,(%edi)
    461 	movups	%xmm3,16(%edi)
    462 	jmp	.L012ecb_ret
    463 .align	16
    464 .L019ecb_enc_three:
    465 	call	_aesni_encrypt3
    466 	movups	%xmm2,(%edi)
    467 	movups	%xmm3,16(%edi)
    468 	movups	%xmm4,32(%edi)
    469 	jmp	.L012ecb_ret
    470 .align	16
    471 .L020ecb_enc_four:
    472 	call	_aesni_encrypt4
    473 	movups	%xmm2,(%edi)
    474 	movups	%xmm3,16(%edi)
    475 	movups	%xmm4,32(%edi)
    476 	movups	%xmm5,48(%edi)
    477 	jmp	.L012ecb_ret
    478 .align	16
    479 .L013ecb_decrypt:
    480 	movl	%edx,%ebp
    481 	movl	%ecx,%ebx
    482 	cmpl	$96,%eax
    483 	jb	.L022ecb_dec_tail
    484 	movdqu	(%esi),%xmm2
    485 	movdqu	16(%esi),%xmm3
    486 	movdqu	32(%esi),%xmm4
    487 	movdqu	48(%esi),%xmm5
    488 	movdqu	64(%esi),%xmm6
    489 	movdqu	80(%esi),%xmm7
    490 	leal	96(%esi),%esi
    491 	subl	$96,%eax
    492 	jmp	.L023ecb_dec_loop6_enter
    493 .align	16
    494 .L024ecb_dec_loop6:
    495 	movups	%xmm2,(%edi)
    496 	movdqu	(%esi),%xmm2
    497 	movups	%xmm3,16(%edi)
    498 	movdqu	16(%esi),%xmm3
    499 	movups	%xmm4,32(%edi)
    500 	movdqu	32(%esi),%xmm4
    501 	movups	%xmm5,48(%edi)
    502 	movdqu	48(%esi),%xmm5
    503 	movups	%xmm6,64(%edi)
    504 	movdqu	64(%esi),%xmm6
    505 	movups	%xmm7,80(%edi)
    506 	leal	96(%edi),%edi
    507 	movdqu	80(%esi),%xmm7
    508 	leal	96(%esi),%esi
    509 .L023ecb_dec_loop6_enter:
    510 	call	_aesni_decrypt6
    511 	movl	%ebp,%edx
    512 	movl	%ebx,%ecx
    513 	subl	$96,%eax
    514 	jnc	.L024ecb_dec_loop6
    515 	movups	%xmm2,(%edi)
    516 	movups	%xmm3,16(%edi)
    517 	movups	%xmm4,32(%edi)
    518 	movups	%xmm5,48(%edi)
    519 	movups	%xmm6,64(%edi)
    520 	movups	%xmm7,80(%edi)
    521 	leal	96(%edi),%edi
    522 	addl	$96,%eax
    523 	jz	.L012ecb_ret
    524 .L022ecb_dec_tail:
    525 	movups	(%esi),%xmm2
    526 	cmpl	$32,%eax
    527 	jb	.L025ecb_dec_one
    528 	movups	16(%esi),%xmm3
    529 	je	.L026ecb_dec_two
    530 	movups	32(%esi),%xmm4
    531 	cmpl	$64,%eax
    532 	jb	.L027ecb_dec_three
    533 	movups	48(%esi),%xmm5
    534 	je	.L028ecb_dec_four
    535 	movups	64(%esi),%xmm6
    536 	xorps	%xmm7,%xmm7
    537 	call	_aesni_decrypt6
    538 	movups	%xmm2,(%edi)
    539 	movups	%xmm3,16(%edi)
    540 	movups	%xmm4,32(%edi)
    541 	movups	%xmm5,48(%edi)
    542 	movups	%xmm6,64(%edi)
    543 	jmp	.L012ecb_ret
    544 .align	16
    545 .L025ecb_dec_one:
    546 	movups	(%edx),%xmm0
    547 	movups	16(%edx),%xmm1
    548 	leal	32(%edx),%edx
    549 	xorps	%xmm0,%xmm2
    550 .L029dec1_loop_4:
    551 .byte	102,15,56,222,209
    552 	decl	%ecx
    553 	movups	(%edx),%xmm1
    554 	leal	16(%edx),%edx
    555 	jnz	.L029dec1_loop_4
    556 .byte	102,15,56,223,209
    557 	movups	%xmm2,(%edi)
    558 	jmp	.L012ecb_ret
    559 .align	16
    560 .L026ecb_dec_two:
    561 	call	_aesni_decrypt2
    562 	movups	%xmm2,(%edi)
    563 	movups	%xmm3,16(%edi)
    564 	jmp	.L012ecb_ret
    565 .align	16
    566 .L027ecb_dec_three:
    567 	call	_aesni_decrypt3
    568 	movups	%xmm2,(%edi)
    569 	movups	%xmm3,16(%edi)
    570 	movups	%xmm4,32(%edi)
    571 	jmp	.L012ecb_ret
    572 .align	16
    573 .L028ecb_dec_four:
    574 	call	_aesni_decrypt4
    575 	movups	%xmm2,(%edi)
    576 	movups	%xmm3,16(%edi)
    577 	movups	%xmm4,32(%edi)
    578 	movups	%xmm5,48(%edi)
    579 .L012ecb_ret:
    580 	pxor	%xmm0,%xmm0
    581 	pxor	%xmm1,%xmm1
    582 	pxor	%xmm2,%xmm2
    583 	pxor	%xmm3,%xmm3
    584 	pxor	%xmm4,%xmm4
    585 	pxor	%xmm5,%xmm5
    586 	pxor	%xmm6,%xmm6
    587 	pxor	%xmm7,%xmm7
    588 	popl	%edi
    589 	popl	%esi
    590 	popl	%ebx
    591 	popl	%ebp
    592 	ret
    593 .size	aesni_ecb_encrypt,.-.L_aesni_ecb_encrypt_begin
    594 .globl	aesni_ccm64_encrypt_blocks
    595 .type	aesni_ccm64_encrypt_blocks,@function
    596 .align	16
    597 aesni_ccm64_encrypt_blocks:
    598 .L_aesni_ccm64_encrypt_blocks_begin:
    599 	pushl	%ebp
    600 	pushl	%ebx
    601 	pushl	%esi
    602 	pushl	%edi
    603 	movl	20(%esp),%esi
    604 	movl	24(%esp),%edi
    605 	movl	28(%esp),%eax
    606 	movl	32(%esp),%edx
    607 	movl	36(%esp),%ebx
    608 	movl	40(%esp),%ecx
    609 	movl	%esp,%ebp
    610 	subl	$60,%esp
    611 	andl	$-16,%esp
    612 	movl	%ebp,48(%esp)
    613 	movdqu	(%ebx),%xmm7
    614 	movdqu	(%ecx),%xmm3
    615 	movl	240(%edx),%ecx
    616 	movl	$202182159,(%esp)
    617 	movl	$134810123,4(%esp)
    618 	movl	$67438087,8(%esp)
    619 	movl	$66051,12(%esp)
    620 	movl	$1,%ebx
    621 	xorl	%ebp,%ebp
    622 	movl	%ebx,16(%esp)
    623 	movl	%ebp,20(%esp)
    624 	movl	%ebp,24(%esp)
    625 	movl	%ebp,28(%esp)
    626 	shll	$4,%ecx
    627 	movl	$16,%ebx
    628 	leal	(%edx),%ebp
    629 	movdqa	(%esp),%xmm5
    630 	movdqa	%xmm7,%xmm2
    631 	leal	32(%edx,%ecx,1),%edx
    632 	subl	%ecx,%ebx
    633 .byte	102,15,56,0,253
    634 .L030ccm64_enc_outer:
    635 	movups	(%ebp),%xmm0
    636 	movl	%ebx,%ecx
    637 	movups	(%esi),%xmm6
    638 	xorps	%xmm0,%xmm2
    639 	movups	16(%ebp),%xmm1
    640 	xorps	%xmm6,%xmm0
    641 	xorps	%xmm0,%xmm3
    642 	movups	32(%ebp),%xmm0
    643 .L031ccm64_enc2_loop:
    644 .byte	102,15,56,220,209
    645 .byte	102,15,56,220,217
    646 	movups	(%edx,%ecx,1),%xmm1
    647 	addl	$32,%ecx
    648 .byte	102,15,56,220,208
    649 .byte	102,15,56,220,216
    650 	movups	-16(%edx,%ecx,1),%xmm0
    651 	jnz	.L031ccm64_enc2_loop
    652 .byte	102,15,56,220,209
    653 .byte	102,15,56,220,217
    654 	paddq	16(%esp),%xmm7
    655 	decl	%eax
    656 .byte	102,15,56,221,208
    657 .byte	102,15,56,221,216
    658 	leal	16(%esi),%esi
    659 	xorps	%xmm2,%xmm6
    660 	movdqa	%xmm7,%xmm2
    661 	movups	%xmm6,(%edi)
    662 .byte	102,15,56,0,213
    663 	leal	16(%edi),%edi
    664 	jnz	.L030ccm64_enc_outer
    665 	movl	48(%esp),%esp
    666 	movl	40(%esp),%edi
    667 	movups	%xmm3,(%edi)
    668 	pxor	%xmm0,%xmm0
    669 	pxor	%xmm1,%xmm1
    670 	pxor	%xmm2,%xmm2
    671 	pxor	%xmm3,%xmm3
    672 	pxor	%xmm4,%xmm4
    673 	pxor	%xmm5,%xmm5
    674 	pxor	%xmm6,%xmm6
    675 	pxor	%xmm7,%xmm7
    676 	popl	%edi
    677 	popl	%esi
    678 	popl	%ebx
    679 	popl	%ebp
    680 	ret
    681 .size	aesni_ccm64_encrypt_blocks,.-.L_aesni_ccm64_encrypt_blocks_begin
    682 .globl	aesni_ccm64_decrypt_blocks
    683 .type	aesni_ccm64_decrypt_blocks,@function
    684 .align	16
    685 aesni_ccm64_decrypt_blocks:
    686 .L_aesni_ccm64_decrypt_blocks_begin:
    687 	pushl	%ebp
    688 	pushl	%ebx
    689 	pushl	%esi
    690 	pushl	%edi
    691 	movl	20(%esp),%esi
    692 	movl	24(%esp),%edi
    693 	movl	28(%esp),%eax
    694 	movl	32(%esp),%edx
    695 	movl	36(%esp),%ebx
    696 	movl	40(%esp),%ecx
    697 	movl	%esp,%ebp
    698 	subl	$60,%esp
    699 	andl	$-16,%esp
    700 	movl	%ebp,48(%esp)
    701 	movdqu	(%ebx),%xmm7
    702 	movdqu	(%ecx),%xmm3
    703 	movl	240(%edx),%ecx
    704 	movl	$202182159,(%esp)
    705 	movl	$134810123,4(%esp)
    706 	movl	$67438087,8(%esp)
    707 	movl	$66051,12(%esp)
    708 	movl	$1,%ebx
    709 	xorl	%ebp,%ebp
    710 	movl	%ebx,16(%esp)
    711 	movl	%ebp,20(%esp)
    712 	movl	%ebp,24(%esp)
    713 	movl	%ebp,28(%esp)
    714 	movdqa	(%esp),%xmm5
    715 	movdqa	%xmm7,%xmm2
    716 	movl	%edx,%ebp
    717 	movl	%ecx,%ebx
    718 .byte	102,15,56,0,253
    719 	movups	(%edx),%xmm0
    720 	movups	16(%edx),%xmm1
    721 	leal	32(%edx),%edx
    722 	xorps	%xmm0,%xmm2
    723 .L032enc1_loop_5:
    724 .byte	102,15,56,220,209
    725 	decl	%ecx
    726 	movups	(%edx),%xmm1
    727 	leal	16(%edx),%edx
    728 	jnz	.L032enc1_loop_5
    729 .byte	102,15,56,221,209
    730 	shll	$4,%ebx
    731 	movl	$16,%ecx
    732 	movups	(%esi),%xmm6
    733 	paddq	16(%esp),%xmm7
    734 	leal	16(%esi),%esi
    735 	subl	%ebx,%ecx
    736 	leal	32(%ebp,%ebx,1),%edx
    737 	movl	%ecx,%ebx
    738 	jmp	.L033ccm64_dec_outer
    739 .align	16
    740 .L033ccm64_dec_outer:
    741 	xorps	%xmm2,%xmm6
    742 	movdqa	%xmm7,%xmm2
    743 	movups	%xmm6,(%edi)
    744 	leal	16(%edi),%edi
    745 .byte	102,15,56,0,213
    746 	subl	$1,%eax
    747 	jz	.L034ccm64_dec_break
    748 	movups	(%ebp),%xmm0
    749 	movl	%ebx,%ecx
    750 	movups	16(%ebp),%xmm1
    751 	xorps	%xmm0,%xmm6
    752 	xorps	%xmm0,%xmm2
    753 	xorps	%xmm6,%xmm3
    754 	movups	32(%ebp),%xmm0
    755 .L035ccm64_dec2_loop:
    756 .byte	102,15,56,220,209
    757 .byte	102,15,56,220,217
    758 	movups	(%edx,%ecx,1),%xmm1
    759 	addl	$32,%ecx
    760 .byte	102,15,56,220,208
    761 .byte	102,15,56,220,216
    762 	movups	-16(%edx,%ecx,1),%xmm0
    763 	jnz	.L035ccm64_dec2_loop
    764 	movups	(%esi),%xmm6
    765 	paddq	16(%esp),%xmm7
    766 .byte	102,15,56,220,209
    767 .byte	102,15,56,220,217
    768 .byte	102,15,56,221,208
    769 .byte	102,15,56,221,216
    770 	leal	16(%esi),%esi
    771 	jmp	.L033ccm64_dec_outer
    772 .align	16
    773 .L034ccm64_dec_break:
    774 	movl	240(%ebp),%ecx
    775 	movl	%ebp,%edx
    776 	movups	(%edx),%xmm0
    777 	movups	16(%edx),%xmm1
    778 	xorps	%xmm0,%xmm6
    779 	leal	32(%edx),%edx
    780 	xorps	%xmm6,%xmm3
    781 .L036enc1_loop_6:
    782 .byte	102,15,56,220,217
    783 	decl	%ecx
    784 	movups	(%edx),%xmm1
    785 	leal	16(%edx),%edx
    786 	jnz	.L036enc1_loop_6
    787 .byte	102,15,56,221,217
    788 	movl	48(%esp),%esp
    789 	movl	40(%esp),%edi
    790 	movups	%xmm3,(%edi)
    791 	pxor	%xmm0,%xmm0
    792 	pxor	%xmm1,%xmm1
    793 	pxor	%xmm2,%xmm2
    794 	pxor	%xmm3,%xmm3
    795 	pxor	%xmm4,%xmm4
    796 	pxor	%xmm5,%xmm5
    797 	pxor	%xmm6,%xmm6
    798 	pxor	%xmm7,%xmm7
    799 	popl	%edi
    800 	popl	%esi
    801 	popl	%ebx
    802 	popl	%ebp
    803 	ret
    804 .size	aesni_ccm64_decrypt_blocks,.-.L_aesni_ccm64_decrypt_blocks_begin
    805 .globl	aesni_ctr32_encrypt_blocks
    806 .type	aesni_ctr32_encrypt_blocks,@function
    807 .align	16
    808 aesni_ctr32_encrypt_blocks:
    809 .L_aesni_ctr32_encrypt_blocks_begin:
    810 	pushl	%ebp
    811 	pushl	%ebx
    812 	pushl	%esi
    813 	pushl	%edi
    814 	movl	20(%esp),%esi
    815 	movl	24(%esp),%edi
    816 	movl	28(%esp),%eax
    817 	movl	32(%esp),%edx
    818 	movl	36(%esp),%ebx
    819 	movl	%esp,%ebp
    820 	subl	$88,%esp
    821 	andl	$-16,%esp
    822 	movl	%ebp,80(%esp)
    823 	cmpl	$1,%eax
    824 	je	.L037ctr32_one_shortcut
    825 	movdqu	(%ebx),%xmm7
    826 	movl	$202182159,(%esp)
    827 	movl	$134810123,4(%esp)
    828 	movl	$67438087,8(%esp)
    829 	movl	$66051,12(%esp)
    830 	movl	$6,%ecx
    831 	xorl	%ebp,%ebp
    832 	movl	%ecx,16(%esp)
    833 	movl	%ecx,20(%esp)
    834 	movl	%ecx,24(%esp)
    835 	movl	%ebp,28(%esp)
    836 .byte	102,15,58,22,251,3
    837 .byte	102,15,58,34,253,3
    838 	movl	240(%edx),%ecx
    839 	bswap	%ebx
    840 	pxor	%xmm0,%xmm0
    841 	pxor	%xmm1,%xmm1
    842 	movdqa	(%esp),%xmm2
    843 .byte	102,15,58,34,195,0
    844 	leal	3(%ebx),%ebp
    845 .byte	102,15,58,34,205,0
    846 	incl	%ebx
    847 .byte	102,15,58,34,195,1
    848 	incl	%ebp
    849 .byte	102,15,58,34,205,1
    850 	incl	%ebx
    851 .byte	102,15,58,34,195,2
    852 	incl	%ebp
    853 .byte	102,15,58,34,205,2
    854 	movdqa	%xmm0,48(%esp)
    855 .byte	102,15,56,0,194
    856 	movdqu	(%edx),%xmm6
    857 	movdqa	%xmm1,64(%esp)
    858 .byte	102,15,56,0,202
    859 	pshufd	$192,%xmm0,%xmm2
    860 	pshufd	$128,%xmm0,%xmm3
    861 	cmpl	$6,%eax
    862 	jb	.L038ctr32_tail
    863 	pxor	%xmm6,%xmm7
    864 	shll	$4,%ecx
    865 	movl	$16,%ebx
    866 	movdqa	%xmm7,32(%esp)
    867 	movl	%edx,%ebp
    868 	subl	%ecx,%ebx
    869 	leal	32(%edx,%ecx,1),%edx
    870 	subl	$6,%eax
    871 	jmp	.L039ctr32_loop6
    872 .align	16
    873 .L039ctr32_loop6:
    874 	pshufd	$64,%xmm0,%xmm4
    875 	movdqa	32(%esp),%xmm0
    876 	pshufd	$192,%xmm1,%xmm5
    877 	pxor	%xmm0,%xmm2
    878 	pshufd	$128,%xmm1,%xmm6
    879 	pxor	%xmm0,%xmm3
    880 	pshufd	$64,%xmm1,%xmm7
    881 	movups	16(%ebp),%xmm1
    882 	pxor	%xmm0,%xmm4
    883 	pxor	%xmm0,%xmm5
    884 .byte	102,15,56,220,209
    885 	pxor	%xmm0,%xmm6
    886 	pxor	%xmm0,%xmm7
    887 .byte	102,15,56,220,217
    888 	movups	32(%ebp),%xmm0
    889 	movl	%ebx,%ecx
    890 .byte	102,15,56,220,225
    891 .byte	102,15,56,220,233
    892 .byte	102,15,56,220,241
    893 .byte	102,15,56,220,249
    894 	call	.L_aesni_encrypt6_enter
    895 	movups	(%esi),%xmm1
    896 	movups	16(%esi),%xmm0
    897 	xorps	%xmm1,%xmm2
    898 	movups	32(%esi),%xmm1
    899 	xorps	%xmm0,%xmm3
    900 	movups	%xmm2,(%edi)
    901 	movdqa	16(%esp),%xmm0
    902 	xorps	%xmm1,%xmm4
    903 	movdqa	64(%esp),%xmm1
    904 	movups	%xmm3,16(%edi)
    905 	movups	%xmm4,32(%edi)
    906 	paddd	%xmm0,%xmm1
    907 	paddd	48(%esp),%xmm0
    908 	movdqa	(%esp),%xmm2
    909 	movups	48(%esi),%xmm3
    910 	movups	64(%esi),%xmm4
    911 	xorps	%xmm3,%xmm5
    912 	movups	80(%esi),%xmm3
    913 	leal	96(%esi),%esi
    914 	movdqa	%xmm0,48(%esp)
    915 .byte	102,15,56,0,194
    916 	xorps	%xmm4,%xmm6
    917 	movups	%xmm5,48(%edi)
    918 	xorps	%xmm3,%xmm7
    919 	movdqa	%xmm1,64(%esp)
    920 .byte	102,15,56,0,202
    921 	movups	%xmm6,64(%edi)
    922 	pshufd	$192,%xmm0,%xmm2
    923 	movups	%xmm7,80(%edi)
    924 	leal	96(%edi),%edi
    925 	pshufd	$128,%xmm0,%xmm3
    926 	subl	$6,%eax
    927 	jnc	.L039ctr32_loop6
    928 	addl	$6,%eax
    929 	jz	.L040ctr32_ret
    930 	movdqu	(%ebp),%xmm7
    931 	movl	%ebp,%edx
    932 	pxor	32(%esp),%xmm7
    933 	movl	240(%ebp),%ecx
    934 .L038ctr32_tail:
    935 	por	%xmm7,%xmm2
    936 	cmpl	$2,%eax
    937 	jb	.L041ctr32_one
    938 	pshufd	$64,%xmm0,%xmm4
    939 	por	%xmm7,%xmm3
    940 	je	.L042ctr32_two
    941 	pshufd	$192,%xmm1,%xmm5
    942 	por	%xmm7,%xmm4
    943 	cmpl	$4,%eax
    944 	jb	.L043ctr32_three
    945 	pshufd	$128,%xmm1,%xmm6
    946 	por	%xmm7,%xmm5
    947 	je	.L044ctr32_four
    948 	por	%xmm7,%xmm6
    949 	call	_aesni_encrypt6
    950 	movups	(%esi),%xmm1
    951 	movups	16(%esi),%xmm0
    952 	xorps	%xmm1,%xmm2
    953 	movups	32(%esi),%xmm1
    954 	xorps	%xmm0,%xmm3
    955 	movups	48(%esi),%xmm0
    956 	xorps	%xmm1,%xmm4
    957 	movups	64(%esi),%xmm1
    958 	xorps	%xmm0,%xmm5
    959 	movups	%xmm2,(%edi)
    960 	xorps	%xmm1,%xmm6
    961 	movups	%xmm3,16(%edi)
    962 	movups	%xmm4,32(%edi)
    963 	movups	%xmm5,48(%edi)
    964 	movups	%xmm6,64(%edi)
    965 	jmp	.L040ctr32_ret
    966 .align	16
    967 .L037ctr32_one_shortcut:
    968 	movups	(%ebx),%xmm2
    969 	movl	240(%edx),%ecx
    970 .L041ctr32_one:
    971 	movups	(%edx),%xmm0
    972 	movups	16(%edx),%xmm1
    973 	leal	32(%edx),%edx
    974 	xorps	%xmm0,%xmm2
    975 .L045enc1_loop_7:
    976 .byte	102,15,56,220,209
    977 	decl	%ecx
    978 	movups	(%edx),%xmm1
    979 	leal	16(%edx),%edx
    980 	jnz	.L045enc1_loop_7
    981 .byte	102,15,56,221,209
    982 	movups	(%esi),%xmm6
    983 	xorps	%xmm2,%xmm6
    984 	movups	%xmm6,(%edi)
    985 	jmp	.L040ctr32_ret
    986 .align	16
    987 .L042ctr32_two:
    988 	call	_aesni_encrypt2
    989 	movups	(%esi),%xmm5
    990 	movups	16(%esi),%xmm6
    991 	xorps	%xmm5,%xmm2
    992 	xorps	%xmm6,%xmm3
    993 	movups	%xmm2,(%edi)
    994 	movups	%xmm3,16(%edi)
    995 	jmp	.L040ctr32_ret
    996 .align	16
    997 .L043ctr32_three:
    998 	call	_aesni_encrypt3
    999 	movups	(%esi),%xmm5
   1000 	movups	16(%esi),%xmm6
   1001 	xorps	%xmm5,%xmm2
   1002 	movups	32(%esi),%xmm7
   1003 	xorps	%xmm6,%xmm3
   1004 	movups	%xmm2,(%edi)
   1005 	xorps	%xmm7,%xmm4
   1006 	movups	%xmm3,16(%edi)
   1007 	movups	%xmm4,32(%edi)
   1008 	jmp	.L040ctr32_ret
   1009 .align	16
   1010 .L044ctr32_four:
   1011 	call	_aesni_encrypt4
   1012 	movups	(%esi),%xmm6
   1013 	movups	16(%esi),%xmm7
   1014 	movups	32(%esi),%xmm1
   1015 	xorps	%xmm6,%xmm2
   1016 	movups	48(%esi),%xmm0
   1017 	xorps	%xmm7,%xmm3
   1018 	movups	%xmm2,(%edi)
   1019 	xorps	%xmm1,%xmm4
   1020 	movups	%xmm3,16(%edi)
   1021 	xorps	%xmm0,%xmm5
   1022 	movups	%xmm4,32(%edi)
   1023 	movups	%xmm5,48(%edi)
   1024 .L040ctr32_ret:
   1025 	pxor	%xmm0,%xmm0
   1026 	pxor	%xmm1,%xmm1
   1027 	pxor	%xmm2,%xmm2
   1028 	pxor	%xmm3,%xmm3
   1029 	pxor	%xmm4,%xmm4
   1030 	movdqa	%xmm0,32(%esp)
   1031 	pxor	%xmm5,%xmm5
   1032 	movdqa	%xmm0,48(%esp)
   1033 	pxor	%xmm6,%xmm6
   1034 	movdqa	%xmm0,64(%esp)
   1035 	pxor	%xmm7,%xmm7
   1036 	movl	80(%esp),%esp
   1037 	popl	%edi
   1038 	popl	%esi
   1039 	popl	%ebx
   1040 	popl	%ebp
   1041 	ret
   1042 .size	aesni_ctr32_encrypt_blocks,.-.L_aesni_ctr32_encrypt_blocks_begin
   1043 .globl	aesni_xts_encrypt
   1044 .type	aesni_xts_encrypt,@function
   1045 .align	16
   1046 aesni_xts_encrypt:
   1047 .L_aesni_xts_encrypt_begin:
   1048 	pushl	%ebp
   1049 	pushl	%ebx
   1050 	pushl	%esi
   1051 	pushl	%edi
   1052 	movl	36(%esp),%edx
   1053 	movl	40(%esp),%esi
   1054 	movl	240(%edx),%ecx
   1055 	movups	(%esi),%xmm2
   1056 	movups	(%edx),%xmm0
   1057 	movups	16(%edx),%xmm1
   1058 	leal	32(%edx),%edx
   1059 	xorps	%xmm0,%xmm2
   1060 .L046enc1_loop_8:
   1061 .byte	102,15,56,220,209
   1062 	decl	%ecx
   1063 	movups	(%edx),%xmm1
   1064 	leal	16(%edx),%edx
   1065 	jnz	.L046enc1_loop_8
   1066 .byte	102,15,56,221,209
   1067 	movl	20(%esp),%esi
   1068 	movl	24(%esp),%edi
   1069 	movl	28(%esp),%eax
   1070 	movl	32(%esp),%edx
   1071 	movl	%esp,%ebp
   1072 	subl	$120,%esp
   1073 	movl	240(%edx),%ecx
   1074 	andl	$-16,%esp
   1075 	movl	$135,96(%esp)
   1076 	movl	$0,100(%esp)
   1077 	movl	$1,104(%esp)
   1078 	movl	$0,108(%esp)
   1079 	movl	%eax,112(%esp)
   1080 	movl	%ebp,116(%esp)
   1081 	movdqa	%xmm2,%xmm1
   1082 	pxor	%xmm0,%xmm0
   1083 	movdqa	96(%esp),%xmm3
   1084 	pcmpgtd	%xmm1,%xmm0
   1085 	andl	$-16,%eax
   1086 	movl	%edx,%ebp
   1087 	movl	%ecx,%ebx
   1088 	subl	$96,%eax
   1089 	jc	.L047xts_enc_short
   1090 	shll	$4,%ecx
   1091 	movl	$16,%ebx
   1092 	subl	%ecx,%ebx
   1093 	leal	32(%edx,%ecx,1),%edx
   1094 	jmp	.L048xts_enc_loop6
   1095 .align	16
   1096 .L048xts_enc_loop6:
   1097 	pshufd	$19,%xmm0,%xmm2
   1098 	pxor	%xmm0,%xmm0
   1099 	movdqa	%xmm1,(%esp)
   1100 	paddq	%xmm1,%xmm1
   1101 	pand	%xmm3,%xmm2
   1102 	pcmpgtd	%xmm1,%xmm0
   1103 	pxor	%xmm2,%xmm1
   1104 	pshufd	$19,%xmm0,%xmm2
   1105 	pxor	%xmm0,%xmm0
   1106 	movdqa	%xmm1,16(%esp)
   1107 	paddq	%xmm1,%xmm1
   1108 	pand	%xmm3,%xmm2
   1109 	pcmpgtd	%xmm1,%xmm0
   1110 	pxor	%xmm2,%xmm1
   1111 	pshufd	$19,%xmm0,%xmm2
   1112 	pxor	%xmm0,%xmm0
   1113 	movdqa	%xmm1,32(%esp)
   1114 	paddq	%xmm1,%xmm1
   1115 	pand	%xmm3,%xmm2
   1116 	pcmpgtd	%xmm1,%xmm0
   1117 	pxor	%xmm2,%xmm1
   1118 	pshufd	$19,%xmm0,%xmm2
   1119 	pxor	%xmm0,%xmm0
   1120 	movdqa	%xmm1,48(%esp)
   1121 	paddq	%xmm1,%xmm1
   1122 	pand	%xmm3,%xmm2
   1123 	pcmpgtd	%xmm1,%xmm0
   1124 	pxor	%xmm2,%xmm1
   1125 	pshufd	$19,%xmm0,%xmm7
   1126 	movdqa	%xmm1,64(%esp)
   1127 	paddq	%xmm1,%xmm1
   1128 	movups	(%ebp),%xmm0
   1129 	pand	%xmm3,%xmm7
   1130 	movups	(%esi),%xmm2
   1131 	pxor	%xmm1,%xmm7
   1132 	movl	%ebx,%ecx
   1133 	movdqu	16(%esi),%xmm3
   1134 	xorps	%xmm0,%xmm2
   1135 	movdqu	32(%esi),%xmm4
   1136 	pxor	%xmm0,%xmm3
   1137 	movdqu	48(%esi),%xmm5
   1138 	pxor	%xmm0,%xmm4
   1139 	movdqu	64(%esi),%xmm6
   1140 	pxor	%xmm0,%xmm5
   1141 	movdqu	80(%esi),%xmm1
   1142 	pxor	%xmm0,%xmm6
   1143 	leal	96(%esi),%esi
   1144 	pxor	(%esp),%xmm2
   1145 	movdqa	%xmm7,80(%esp)
   1146 	pxor	%xmm1,%xmm7
   1147 	movups	16(%ebp),%xmm1
   1148 	pxor	16(%esp),%xmm3
   1149 	pxor	32(%esp),%xmm4
   1150 .byte	102,15,56,220,209
   1151 	pxor	48(%esp),%xmm5
   1152 	pxor	64(%esp),%xmm6
   1153 .byte	102,15,56,220,217
   1154 	pxor	%xmm0,%xmm7
   1155 	movups	32(%ebp),%xmm0
   1156 .byte	102,15,56,220,225
   1157 .byte	102,15,56,220,233
   1158 .byte	102,15,56,220,241
   1159 .byte	102,15,56,220,249
   1160 	call	.L_aesni_encrypt6_enter
   1161 	movdqa	80(%esp),%xmm1
   1162 	pxor	%xmm0,%xmm0
   1163 	xorps	(%esp),%xmm2
   1164 	pcmpgtd	%xmm1,%xmm0
   1165 	xorps	16(%esp),%xmm3
   1166 	movups	%xmm2,(%edi)
   1167 	xorps	32(%esp),%xmm4
   1168 	movups	%xmm3,16(%edi)
   1169 	xorps	48(%esp),%xmm5
   1170 	movups	%xmm4,32(%edi)
   1171 	xorps	64(%esp),%xmm6
   1172 	movups	%xmm5,48(%edi)
   1173 	xorps	%xmm1,%xmm7
   1174 	movups	%xmm6,64(%edi)
   1175 	pshufd	$19,%xmm0,%xmm2
   1176 	movups	%xmm7,80(%edi)
   1177 	leal	96(%edi),%edi
   1178 	movdqa	96(%esp),%xmm3
   1179 	pxor	%xmm0,%xmm0
   1180 	paddq	%xmm1,%xmm1
   1181 	pand	%xmm3,%xmm2
   1182 	pcmpgtd	%xmm1,%xmm0
   1183 	pxor	%xmm2,%xmm1
   1184 	subl	$96,%eax
   1185 	jnc	.L048xts_enc_loop6
   1186 	movl	240(%ebp),%ecx
   1187 	movl	%ebp,%edx
   1188 	movl	%ecx,%ebx
   1189 .L047xts_enc_short:
   1190 	addl	$96,%eax
   1191 	jz	.L049xts_enc_done6x
   1192 	movdqa	%xmm1,%xmm5
   1193 	cmpl	$32,%eax
   1194 	jb	.L050xts_enc_one
   1195 	pshufd	$19,%xmm0,%xmm2
   1196 	pxor	%xmm0,%xmm0
   1197 	paddq	%xmm1,%xmm1
   1198 	pand	%xmm3,%xmm2
   1199 	pcmpgtd	%xmm1,%xmm0
   1200 	pxor	%xmm2,%xmm1
   1201 	je	.L051xts_enc_two
   1202 	pshufd	$19,%xmm0,%xmm2
   1203 	pxor	%xmm0,%xmm0
   1204 	movdqa	%xmm1,%xmm6
   1205 	paddq	%xmm1,%xmm1
   1206 	pand	%xmm3,%xmm2
   1207 	pcmpgtd	%xmm1,%xmm0
   1208 	pxor	%xmm2,%xmm1
   1209 	cmpl	$64,%eax
   1210 	jb	.L052xts_enc_three
   1211 	pshufd	$19,%xmm0,%xmm2
   1212 	pxor	%xmm0,%xmm0
   1213 	movdqa	%xmm1,%xmm7
   1214 	paddq	%xmm1,%xmm1
   1215 	pand	%xmm3,%xmm2
   1216 	pcmpgtd	%xmm1,%xmm0
   1217 	pxor	%xmm2,%xmm1
   1218 	movdqa	%xmm5,(%esp)
   1219 	movdqa	%xmm6,16(%esp)
   1220 	je	.L053xts_enc_four
   1221 	movdqa	%xmm7,32(%esp)
   1222 	pshufd	$19,%xmm0,%xmm7
   1223 	movdqa	%xmm1,48(%esp)
   1224 	paddq	%xmm1,%xmm1
   1225 	pand	%xmm3,%xmm7
   1226 	pxor	%xmm1,%xmm7
   1227 	movdqu	(%esi),%xmm2
   1228 	movdqu	16(%esi),%xmm3
   1229 	movdqu	32(%esi),%xmm4
   1230 	pxor	(%esp),%xmm2
   1231 	movdqu	48(%esi),%xmm5
   1232 	pxor	16(%esp),%xmm3
   1233 	movdqu	64(%esi),%xmm6
   1234 	pxor	32(%esp),%xmm4
   1235 	leal	80(%esi),%esi
   1236 	pxor	48(%esp),%xmm5
   1237 	movdqa	%xmm7,64(%esp)
   1238 	pxor	%xmm7,%xmm6
   1239 	call	_aesni_encrypt6
   1240 	movaps	64(%esp),%xmm1
   1241 	xorps	(%esp),%xmm2
   1242 	xorps	16(%esp),%xmm3
   1243 	xorps	32(%esp),%xmm4
   1244 	movups	%xmm2,(%edi)
   1245 	xorps	48(%esp),%xmm5
   1246 	movups	%xmm3,16(%edi)
   1247 	xorps	%xmm1,%xmm6
   1248 	movups	%xmm4,32(%edi)
   1249 	movups	%xmm5,48(%edi)
   1250 	movups	%xmm6,64(%edi)
   1251 	leal	80(%edi),%edi
   1252 	jmp	.L054xts_enc_done
   1253 .align	16
   1254 .L050xts_enc_one:
   1255 	movups	(%esi),%xmm2
   1256 	leal	16(%esi),%esi
   1257 	xorps	%xmm5,%xmm2
   1258 	movups	(%edx),%xmm0
   1259 	movups	16(%edx),%xmm1
   1260 	leal	32(%edx),%edx
   1261 	xorps	%xmm0,%xmm2
   1262 .L055enc1_loop_9:
   1263 .byte	102,15,56,220,209
   1264 	decl	%ecx
   1265 	movups	(%edx),%xmm1
   1266 	leal	16(%edx),%edx
   1267 	jnz	.L055enc1_loop_9
   1268 .byte	102,15,56,221,209
   1269 	xorps	%xmm5,%xmm2
   1270 	movups	%xmm2,(%edi)
   1271 	leal	16(%edi),%edi
   1272 	movdqa	%xmm5,%xmm1
   1273 	jmp	.L054xts_enc_done
   1274 .align	16
   1275 .L051xts_enc_two:
   1276 	movaps	%xmm1,%xmm6
   1277 	movups	(%esi),%xmm2
   1278 	movups	16(%esi),%xmm3
   1279 	leal	32(%esi),%esi
   1280 	xorps	%xmm5,%xmm2
   1281 	xorps	%xmm6,%xmm3
   1282 	call	_aesni_encrypt2
   1283 	xorps	%xmm5,%xmm2
   1284 	xorps	%xmm6,%xmm3
   1285 	movups	%xmm2,(%edi)
   1286 	movups	%xmm3,16(%edi)
   1287 	leal	32(%edi),%edi
   1288 	movdqa	%xmm6,%xmm1
   1289 	jmp	.L054xts_enc_done
   1290 .align	16
   1291 .L052xts_enc_three:
   1292 	movaps	%xmm1,%xmm7
   1293 	movups	(%esi),%xmm2
   1294 	movups	16(%esi),%xmm3
   1295 	movups	32(%esi),%xmm4
   1296 	leal	48(%esi),%esi
   1297 	xorps	%xmm5,%xmm2
   1298 	xorps	%xmm6,%xmm3
   1299 	xorps	%xmm7,%xmm4
   1300 	call	_aesni_encrypt3
   1301 	xorps	%xmm5,%xmm2
   1302 	xorps	%xmm6,%xmm3
   1303 	xorps	%xmm7,%xmm4
   1304 	movups	%xmm2,(%edi)
   1305 	movups	%xmm3,16(%edi)
   1306 	movups	%xmm4,32(%edi)
   1307 	leal	48(%edi),%edi
   1308 	movdqa	%xmm7,%xmm1
   1309 	jmp	.L054xts_enc_done
   1310 .align	16
   1311 .L053xts_enc_four:
   1312 	movaps	%xmm1,%xmm6
   1313 	movups	(%esi),%xmm2
   1314 	movups	16(%esi),%xmm3
   1315 	movups	32(%esi),%xmm4
   1316 	xorps	(%esp),%xmm2
   1317 	movups	48(%esi),%xmm5
   1318 	leal	64(%esi),%esi
   1319 	xorps	16(%esp),%xmm3
   1320 	xorps	%xmm7,%xmm4
   1321 	xorps	%xmm6,%xmm5
   1322 	call	_aesni_encrypt4
   1323 	xorps	(%esp),%xmm2
   1324 	xorps	16(%esp),%xmm3
   1325 	xorps	%xmm7,%xmm4
   1326 	movups	%xmm2,(%edi)
   1327 	xorps	%xmm6,%xmm5
   1328 	movups	%xmm3,16(%edi)
   1329 	movups	%xmm4,32(%edi)
   1330 	movups	%xmm5,48(%edi)
   1331 	leal	64(%edi),%edi
   1332 	movdqa	%xmm6,%xmm1
   1333 	jmp	.L054xts_enc_done
   1334 .align	16
   1335 .L049xts_enc_done6x:
   1336 	movl	112(%esp),%eax
   1337 	andl	$15,%eax
   1338 	jz	.L056xts_enc_ret
   1339 	movdqa	%xmm1,%xmm5
   1340 	movl	%eax,112(%esp)
   1341 	jmp	.L057xts_enc_steal
   1342 .align	16
   1343 .L054xts_enc_done:
   1344 	movl	112(%esp),%eax
   1345 	pxor	%xmm0,%xmm0
   1346 	andl	$15,%eax
   1347 	jz	.L056xts_enc_ret
   1348 	pcmpgtd	%xmm1,%xmm0
   1349 	movl	%eax,112(%esp)
   1350 	pshufd	$19,%xmm0,%xmm5
   1351 	paddq	%xmm1,%xmm1
   1352 	pand	96(%esp),%xmm5
   1353 	pxor	%xmm1,%xmm5
   1354 .L057xts_enc_steal:
   1355 	movzbl	(%esi),%ecx
   1356 	movzbl	-16(%edi),%edx
   1357 	leal	1(%esi),%esi
   1358 	movb	%cl,-16(%edi)
   1359 	movb	%dl,(%edi)
   1360 	leal	1(%edi),%edi
   1361 	subl	$1,%eax
   1362 	jnz	.L057xts_enc_steal
   1363 	subl	112(%esp),%edi
   1364 	movl	%ebp,%edx
   1365 	movl	%ebx,%ecx
   1366 	movups	-16(%edi),%xmm2
   1367 	xorps	%xmm5,%xmm2
   1368 	movups	(%edx),%xmm0
   1369 	movups	16(%edx),%xmm1
   1370 	leal	32(%edx),%edx
   1371 	xorps	%xmm0,%xmm2
   1372 .L058enc1_loop_10:
   1373 .byte	102,15,56,220,209
   1374 	decl	%ecx
   1375 	movups	(%edx),%xmm1
   1376 	leal	16(%edx),%edx
   1377 	jnz	.L058enc1_loop_10
   1378 .byte	102,15,56,221,209
   1379 	xorps	%xmm5,%xmm2
   1380 	movups	%xmm2,-16(%edi)
   1381 .L056xts_enc_ret:
   1382 	pxor	%xmm0,%xmm0
   1383 	pxor	%xmm1,%xmm1
   1384 	pxor	%xmm2,%xmm2
   1385 	movdqa	%xmm0,(%esp)
   1386 	pxor	%xmm3,%xmm3
   1387 	movdqa	%xmm0,16(%esp)
   1388 	pxor	%xmm4,%xmm4
   1389 	movdqa	%xmm0,32(%esp)
   1390 	pxor	%xmm5,%xmm5
   1391 	movdqa	%xmm0,48(%esp)
   1392 	pxor	%xmm6,%xmm6
   1393 	movdqa	%xmm0,64(%esp)
   1394 	pxor	%xmm7,%xmm7
   1395 	movdqa	%xmm0,80(%esp)
   1396 	movl	116(%esp),%esp
   1397 	popl	%edi
   1398 	popl	%esi
   1399 	popl	%ebx
   1400 	popl	%ebp
   1401 	ret
   1402 .size	aesni_xts_encrypt,.-.L_aesni_xts_encrypt_begin
   1403 .globl	aesni_xts_decrypt
   1404 .type	aesni_xts_decrypt,@function
   1405 .align	16
   1406 aesni_xts_decrypt:
   1407 .L_aesni_xts_decrypt_begin:
   1408 	pushl	%ebp
   1409 	pushl	%ebx
   1410 	pushl	%esi
   1411 	pushl	%edi
   1412 	movl	36(%esp),%edx
   1413 	movl	40(%esp),%esi
   1414 	movl	240(%edx),%ecx
   1415 	movups	(%esi),%xmm2
   1416 	movups	(%edx),%xmm0
   1417 	movups	16(%edx),%xmm1
   1418 	leal	32(%edx),%edx
   1419 	xorps	%xmm0,%xmm2
   1420 .L059enc1_loop_11:
   1421 .byte	102,15,56,220,209
   1422 	decl	%ecx
   1423 	movups	(%edx),%xmm1
   1424 	leal	16(%edx),%edx
   1425 	jnz	.L059enc1_loop_11
   1426 .byte	102,15,56,221,209
   1427 	movl	20(%esp),%esi
   1428 	movl	24(%esp),%edi
   1429 	movl	28(%esp),%eax
   1430 	movl	32(%esp),%edx
   1431 	movl	%esp,%ebp
   1432 	subl	$120,%esp
   1433 	andl	$-16,%esp
   1434 	xorl	%ebx,%ebx
   1435 	testl	$15,%eax
   1436 	setnz	%bl
   1437 	shll	$4,%ebx
   1438 	subl	%ebx,%eax
   1439 	movl	$135,96(%esp)
   1440 	movl	$0,100(%esp)
   1441 	movl	$1,104(%esp)
   1442 	movl	$0,108(%esp)
   1443 	movl	%eax,112(%esp)
   1444 	movl	%ebp,116(%esp)
   1445 	movl	240(%edx),%ecx
   1446 	movl	%edx,%ebp
   1447 	movl	%ecx,%ebx
   1448 	movdqa	%xmm2,%xmm1
   1449 	pxor	%xmm0,%xmm0
   1450 	movdqa	96(%esp),%xmm3
   1451 	pcmpgtd	%xmm1,%xmm0
   1452 	andl	$-16,%eax
   1453 	subl	$96,%eax
   1454 	jc	.L060xts_dec_short
   1455 	shll	$4,%ecx
   1456 	movl	$16,%ebx
   1457 	subl	%ecx,%ebx
   1458 	leal	32(%edx,%ecx,1),%edx
   1459 	jmp	.L061xts_dec_loop6
   1460 .align	16
   1461 .L061xts_dec_loop6:
   1462 	pshufd	$19,%xmm0,%xmm2
   1463 	pxor	%xmm0,%xmm0
   1464 	movdqa	%xmm1,(%esp)
   1465 	paddq	%xmm1,%xmm1
   1466 	pand	%xmm3,%xmm2
   1467 	pcmpgtd	%xmm1,%xmm0
   1468 	pxor	%xmm2,%xmm1
   1469 	pshufd	$19,%xmm0,%xmm2
   1470 	pxor	%xmm0,%xmm0
   1471 	movdqa	%xmm1,16(%esp)
   1472 	paddq	%xmm1,%xmm1
   1473 	pand	%xmm3,%xmm2
   1474 	pcmpgtd	%xmm1,%xmm0
   1475 	pxor	%xmm2,%xmm1
   1476 	pshufd	$19,%xmm0,%xmm2
   1477 	pxor	%xmm0,%xmm0
   1478 	movdqa	%xmm1,32(%esp)
   1479 	paddq	%xmm1,%xmm1
   1480 	pand	%xmm3,%xmm2
   1481 	pcmpgtd	%xmm1,%xmm0
   1482 	pxor	%xmm2,%xmm1
   1483 	pshufd	$19,%xmm0,%xmm2
   1484 	pxor	%xmm0,%xmm0
   1485 	movdqa	%xmm1,48(%esp)
   1486 	paddq	%xmm1,%xmm1
   1487 	pand	%xmm3,%xmm2
   1488 	pcmpgtd	%xmm1,%xmm0
   1489 	pxor	%xmm2,%xmm1
   1490 	pshufd	$19,%xmm0,%xmm7
   1491 	movdqa	%xmm1,64(%esp)
   1492 	paddq	%xmm1,%xmm1
   1493 	movups	(%ebp),%xmm0
   1494 	pand	%xmm3,%xmm7
   1495 	movups	(%esi),%xmm2
   1496 	pxor	%xmm1,%xmm7
   1497 	movl	%ebx,%ecx
   1498 	movdqu	16(%esi),%xmm3
   1499 	xorps	%xmm0,%xmm2
   1500 	movdqu	32(%esi),%xmm4
   1501 	pxor	%xmm0,%xmm3
   1502 	movdqu	48(%esi),%xmm5
   1503 	pxor	%xmm0,%xmm4
   1504 	movdqu	64(%esi),%xmm6
   1505 	pxor	%xmm0,%xmm5
   1506 	movdqu	80(%esi),%xmm1
   1507 	pxor	%xmm0,%xmm6
   1508 	leal	96(%esi),%esi
   1509 	pxor	(%esp),%xmm2
   1510 	movdqa	%xmm7,80(%esp)
   1511 	pxor	%xmm1,%xmm7
   1512 	movups	16(%ebp),%xmm1
   1513 	pxor	16(%esp),%xmm3
   1514 	pxor	32(%esp),%xmm4
   1515 .byte	102,15,56,222,209
   1516 	pxor	48(%esp),%xmm5
   1517 	pxor	64(%esp),%xmm6
   1518 .byte	102,15,56,222,217
   1519 	pxor	%xmm0,%xmm7
   1520 	movups	32(%ebp),%xmm0
   1521 .byte	102,15,56,222,225
   1522 .byte	102,15,56,222,233
   1523 .byte	102,15,56,222,241
   1524 .byte	102,15,56,222,249
   1525 	call	.L_aesni_decrypt6_enter
   1526 	movdqa	80(%esp),%xmm1
   1527 	pxor	%xmm0,%xmm0
   1528 	xorps	(%esp),%xmm2
   1529 	pcmpgtd	%xmm1,%xmm0
   1530 	xorps	16(%esp),%xmm3
   1531 	movups	%xmm2,(%edi)
   1532 	xorps	32(%esp),%xmm4
   1533 	movups	%xmm3,16(%edi)
   1534 	xorps	48(%esp),%xmm5
   1535 	movups	%xmm4,32(%edi)
   1536 	xorps	64(%esp),%xmm6
   1537 	movups	%xmm5,48(%edi)
   1538 	xorps	%xmm1,%xmm7
   1539 	movups	%xmm6,64(%edi)
   1540 	pshufd	$19,%xmm0,%xmm2
   1541 	movups	%xmm7,80(%edi)
   1542 	leal	96(%edi),%edi
   1543 	movdqa	96(%esp),%xmm3
   1544 	pxor	%xmm0,%xmm0
   1545 	paddq	%xmm1,%xmm1
   1546 	pand	%xmm3,%xmm2
   1547 	pcmpgtd	%xmm1,%xmm0
   1548 	pxor	%xmm2,%xmm1
   1549 	subl	$96,%eax
   1550 	jnc	.L061xts_dec_loop6
   1551 	movl	240(%ebp),%ecx
   1552 	movl	%ebp,%edx
   1553 	movl	%ecx,%ebx
   1554 .L060xts_dec_short:
   1555 	addl	$96,%eax
   1556 	jz	.L062xts_dec_done6x
   1557 	movdqa	%xmm1,%xmm5
   1558 	cmpl	$32,%eax
   1559 	jb	.L063xts_dec_one
   1560 	pshufd	$19,%xmm0,%xmm2
   1561 	pxor	%xmm0,%xmm0
   1562 	paddq	%xmm1,%xmm1
   1563 	pand	%xmm3,%xmm2
   1564 	pcmpgtd	%xmm1,%xmm0
   1565 	pxor	%xmm2,%xmm1
   1566 	je	.L064xts_dec_two
   1567 	pshufd	$19,%xmm0,%xmm2
   1568 	pxor	%xmm0,%xmm0
   1569 	movdqa	%xmm1,%xmm6
   1570 	paddq	%xmm1,%xmm1
   1571 	pand	%xmm3,%xmm2
   1572 	pcmpgtd	%xmm1,%xmm0
   1573 	pxor	%xmm2,%xmm1
   1574 	cmpl	$64,%eax
   1575 	jb	.L065xts_dec_three
   1576 	pshufd	$19,%xmm0,%xmm2
   1577 	pxor	%xmm0,%xmm0
   1578 	movdqa	%xmm1,%xmm7
   1579 	paddq	%xmm1,%xmm1
   1580 	pand	%xmm3,%xmm2
   1581 	pcmpgtd	%xmm1,%xmm0
   1582 	pxor	%xmm2,%xmm1
   1583 	movdqa	%xmm5,(%esp)
   1584 	movdqa	%xmm6,16(%esp)
   1585 	je	.L066xts_dec_four
   1586 	movdqa	%xmm7,32(%esp)
   1587 	pshufd	$19,%xmm0,%xmm7
   1588 	movdqa	%xmm1,48(%esp)
   1589 	paddq	%xmm1,%xmm1
   1590 	pand	%xmm3,%xmm7
   1591 	pxor	%xmm1,%xmm7
   1592 	movdqu	(%esi),%xmm2
   1593 	movdqu	16(%esi),%xmm3
   1594 	movdqu	32(%esi),%xmm4
   1595 	pxor	(%esp),%xmm2
   1596 	movdqu	48(%esi),%xmm5
   1597 	pxor	16(%esp),%xmm3
   1598 	movdqu	64(%esi),%xmm6
   1599 	pxor	32(%esp),%xmm4
   1600 	leal	80(%esi),%esi
   1601 	pxor	48(%esp),%xmm5
   1602 	movdqa	%xmm7,64(%esp)
   1603 	pxor	%xmm7,%xmm6
   1604 	call	_aesni_decrypt6
   1605 	movaps	64(%esp),%xmm1
   1606 	xorps	(%esp),%xmm2
   1607 	xorps	16(%esp),%xmm3
   1608 	xorps	32(%esp),%xmm4
   1609 	movups	%xmm2,(%edi)
   1610 	xorps	48(%esp),%xmm5
   1611 	movups	%xmm3,16(%edi)
   1612 	xorps	%xmm1,%xmm6
   1613 	movups	%xmm4,32(%edi)
   1614 	movups	%xmm5,48(%edi)
   1615 	movups	%xmm6,64(%edi)
   1616 	leal	80(%edi),%edi
   1617 	jmp	.L067xts_dec_done
   1618 .align	16
   1619 .L063xts_dec_one:
   1620 	movups	(%esi),%xmm2
   1621 	leal	16(%esi),%esi
   1622 	xorps	%xmm5,%xmm2
   1623 	movups	(%edx),%xmm0
   1624 	movups	16(%edx),%xmm1
   1625 	leal	32(%edx),%edx
   1626 	xorps	%xmm0,%xmm2
   1627 .L068dec1_loop_12:
   1628 .byte	102,15,56,222,209
   1629 	decl	%ecx
   1630 	movups	(%edx),%xmm1
   1631 	leal	16(%edx),%edx
   1632 	jnz	.L068dec1_loop_12
   1633 .byte	102,15,56,223,209
   1634 	xorps	%xmm5,%xmm2
   1635 	movups	%xmm2,(%edi)
   1636 	leal	16(%edi),%edi
   1637 	movdqa	%xmm5,%xmm1
   1638 	jmp	.L067xts_dec_done
   1639 .align	16
   1640 .L064xts_dec_two:
   1641 	movaps	%xmm1,%xmm6
   1642 	movups	(%esi),%xmm2
   1643 	movups	16(%esi),%xmm3
   1644 	leal	32(%esi),%esi
   1645 	xorps	%xmm5,%xmm2
   1646 	xorps	%xmm6,%xmm3
   1647 	call	_aesni_decrypt2
   1648 	xorps	%xmm5,%xmm2
   1649 	xorps	%xmm6,%xmm3
   1650 	movups	%xmm2,(%edi)
   1651 	movups	%xmm3,16(%edi)
   1652 	leal	32(%edi),%edi
   1653 	movdqa	%xmm6,%xmm1
   1654 	jmp	.L067xts_dec_done
   1655 .align	16
   1656 .L065xts_dec_three:
   1657 	movaps	%xmm1,%xmm7
   1658 	movups	(%esi),%xmm2
   1659 	movups	16(%esi),%xmm3
   1660 	movups	32(%esi),%xmm4
   1661 	leal	48(%esi),%esi
   1662 	xorps	%xmm5,%xmm2
   1663 	xorps	%xmm6,%xmm3
   1664 	xorps	%xmm7,%xmm4
   1665 	call	_aesni_decrypt3
   1666 	xorps	%xmm5,%xmm2
   1667 	xorps	%xmm6,%xmm3
   1668 	xorps	%xmm7,%xmm4
   1669 	movups	%xmm2,(%edi)
   1670 	movups	%xmm3,16(%edi)
   1671 	movups	%xmm4,32(%edi)
   1672 	leal	48(%edi),%edi
   1673 	movdqa	%xmm7,%xmm1
   1674 	jmp	.L067xts_dec_done
   1675 .align	16
   1676 .L066xts_dec_four:
   1677 	movaps	%xmm1,%xmm6
   1678 	movups	(%esi),%xmm2
   1679 	movups	16(%esi),%xmm3
   1680 	movups	32(%esi),%xmm4
   1681 	xorps	(%esp),%xmm2
   1682 	movups	48(%esi),%xmm5
   1683 	leal	64(%esi),%esi
   1684 	xorps	16(%esp),%xmm3
   1685 	xorps	%xmm7,%xmm4
   1686 	xorps	%xmm6,%xmm5
   1687 	call	_aesni_decrypt4
   1688 	xorps	(%esp),%xmm2
   1689 	xorps	16(%esp),%xmm3
   1690 	xorps	%xmm7,%xmm4
   1691 	movups	%xmm2,(%edi)
   1692 	xorps	%xmm6,%xmm5
   1693 	movups	%xmm3,16(%edi)
   1694 	movups	%xmm4,32(%edi)
   1695 	movups	%xmm5,48(%edi)
   1696 	leal	64(%edi),%edi
   1697 	movdqa	%xmm6,%xmm1
   1698 	jmp	.L067xts_dec_done
   1699 .align	16
   1700 .L062xts_dec_done6x:
   1701 	movl	112(%esp),%eax
   1702 	andl	$15,%eax
   1703 	jz	.L069xts_dec_ret
   1704 	movl	%eax,112(%esp)
   1705 	jmp	.L070xts_dec_only_one_more
   1706 .align	16
   1707 .L067xts_dec_done:
   1708 	movl	112(%esp),%eax
   1709 	pxor	%xmm0,%xmm0
   1710 	andl	$15,%eax
   1711 	jz	.L069xts_dec_ret
   1712 	pcmpgtd	%xmm1,%xmm0
   1713 	movl	%eax,112(%esp)
   1714 	pshufd	$19,%xmm0,%xmm2
   1715 	pxor	%xmm0,%xmm0
   1716 	movdqa	96(%esp),%xmm3
   1717 	paddq	%xmm1,%xmm1
   1718 	pand	%xmm3,%xmm2
   1719 	pcmpgtd	%xmm1,%xmm0
   1720 	pxor	%xmm2,%xmm1
   1721 .L070xts_dec_only_one_more:
   1722 	pshufd	$19,%xmm0,%xmm5
   1723 	movdqa	%xmm1,%xmm6
   1724 	paddq	%xmm1,%xmm1
   1725 	pand	%xmm3,%xmm5
   1726 	pxor	%xmm1,%xmm5
   1727 	movl	%ebp,%edx
   1728 	movl	%ebx,%ecx
   1729 	movups	(%esi),%xmm2
   1730 	xorps	%xmm5,%xmm2
   1731 	movups	(%edx),%xmm0
   1732 	movups	16(%edx),%xmm1
   1733 	leal	32(%edx),%edx
   1734 	xorps	%xmm0,%xmm2
   1735 .L071dec1_loop_13:
   1736 .byte	102,15,56,222,209
   1737 	decl	%ecx
   1738 	movups	(%edx),%xmm1
   1739 	leal	16(%edx),%edx
   1740 	jnz	.L071dec1_loop_13
   1741 .byte	102,15,56,223,209
   1742 	xorps	%xmm5,%xmm2
   1743 	movups	%xmm2,(%edi)
   1744 .L072xts_dec_steal:
   1745 	movzbl	16(%esi),%ecx
   1746 	movzbl	(%edi),%edx
   1747 	leal	1(%esi),%esi
   1748 	movb	%cl,(%edi)
   1749 	movb	%dl,16(%edi)
   1750 	leal	1(%edi),%edi
   1751 	subl	$1,%eax
   1752 	jnz	.L072xts_dec_steal
   1753 	subl	112(%esp),%edi
   1754 	movl	%ebp,%edx
   1755 	movl	%ebx,%ecx
   1756 	movups	(%edi),%xmm2
   1757 	xorps	%xmm6,%xmm2
   1758 	movups	(%edx),%xmm0
   1759 	movups	16(%edx),%xmm1
   1760 	leal	32(%edx),%edx
   1761 	xorps	%xmm0,%xmm2
   1762 .L073dec1_loop_14:
   1763 .byte	102,15,56,222,209
   1764 	decl	%ecx
   1765 	movups	(%edx),%xmm1
   1766 	leal	16(%edx),%edx
   1767 	jnz	.L073dec1_loop_14
   1768 .byte	102,15,56,223,209
   1769 	xorps	%xmm6,%xmm2
   1770 	movups	%xmm2,(%edi)
   1771 .L069xts_dec_ret:
   1772 	pxor	%xmm0,%xmm0
   1773 	pxor	%xmm1,%xmm1
   1774 	pxor	%xmm2,%xmm2
   1775 	movdqa	%xmm0,(%esp)
   1776 	pxor	%xmm3,%xmm3
   1777 	movdqa	%xmm0,16(%esp)
   1778 	pxor	%xmm4,%xmm4
   1779 	movdqa	%xmm0,32(%esp)
   1780 	pxor	%xmm5,%xmm5
   1781 	movdqa	%xmm0,48(%esp)
   1782 	pxor	%xmm6,%xmm6
   1783 	movdqa	%xmm0,64(%esp)
   1784 	pxor	%xmm7,%xmm7
   1785 	movdqa	%xmm0,80(%esp)
   1786 	movl	116(%esp),%esp
   1787 	popl	%edi
   1788 	popl	%esi
   1789 	popl	%ebx
   1790 	popl	%ebp
   1791 	ret
   1792 .size	aesni_xts_decrypt,.-.L_aesni_xts_decrypt_begin
   1793 .globl	aesni_ocb_encrypt
   1794 .type	aesni_ocb_encrypt,@function
   1795 .align	16
   1796 aesni_ocb_encrypt:
   1797 .L_aesni_ocb_encrypt_begin:
   1798 	pushl	%ebp
   1799 	pushl	%ebx
   1800 	pushl	%esi
   1801 	pushl	%edi
   1802 	movl	40(%esp),%ecx
   1803 	movl	48(%esp),%ebx
   1804 	movl	20(%esp),%esi
   1805 	movl	24(%esp),%edi
   1806 	movl	28(%esp),%eax
   1807 	movl	32(%esp),%edx
   1808 	movdqu	(%ecx),%xmm0
   1809 	movl	36(%esp),%ebp
   1810 	movdqu	(%ebx),%xmm1
   1811 	movl	44(%esp),%ebx
   1812 	movl	%esp,%ecx
   1813 	subl	$132,%esp
   1814 	andl	$-16,%esp
   1815 	subl	%esi,%edi
   1816 	shll	$4,%eax
   1817 	leal	-96(%esi,%eax,1),%eax
   1818 	movl	%edi,120(%esp)
   1819 	movl	%eax,124(%esp)
   1820 	movl	%ecx,128(%esp)
   1821 	movl	240(%edx),%ecx
   1822 	testl	$1,%ebp
   1823 	jnz	.L074odd
   1824 	bsfl	%ebp,%eax
   1825 	addl	$1,%ebp
   1826 	shll	$4,%eax
   1827 	movdqu	(%ebx,%eax,1),%xmm7
   1828 	movl	%edx,%eax
   1829 	movdqu	(%esi),%xmm2
   1830 	leal	16(%esi),%esi
   1831 	pxor	%xmm0,%xmm7
   1832 	pxor	%xmm2,%xmm1
   1833 	pxor	%xmm7,%xmm2
   1834 	movdqa	%xmm1,%xmm6
   1835 	movups	(%edx),%xmm0
   1836 	movups	16(%edx),%xmm1
   1837 	leal	32(%edx),%edx
   1838 	xorps	%xmm0,%xmm2
   1839 .L075enc1_loop_15:
   1840 .byte	102,15,56,220,209
   1841 	decl	%ecx
   1842 	movups	(%edx),%xmm1
   1843 	leal	16(%edx),%edx
   1844 	jnz	.L075enc1_loop_15
   1845 .byte	102,15,56,221,209
   1846 	xorps	%xmm7,%xmm2
   1847 	movdqa	%xmm7,%xmm0
   1848 	movdqa	%xmm6,%xmm1
   1849 	movups	%xmm2,-16(%edi,%esi,1)
   1850 	movl	240(%eax),%ecx
   1851 	movl	%eax,%edx
   1852 	movl	124(%esp),%eax
   1853 .L074odd:
   1854 	shll	$4,%ecx
   1855 	movl	$16,%edi
   1856 	subl	%ecx,%edi
   1857 	movl	%edx,112(%esp)
   1858 	leal	32(%edx,%ecx,1),%edx
   1859 	movl	%edi,116(%esp)
   1860 	cmpl	%eax,%esi
   1861 	ja	.L076short
   1862 	jmp	.L077grandloop
   1863 .align	32
   1864 .L077grandloop:
   1865 	leal	1(%ebp),%ecx
   1866 	leal	3(%ebp),%eax
   1867 	leal	5(%ebp),%edi
   1868 	addl	$6,%ebp
   1869 	bsfl	%ecx,%ecx
   1870 	bsfl	%eax,%eax
   1871 	bsfl	%edi,%edi
   1872 	shll	$4,%ecx
   1873 	shll	$4,%eax
   1874 	shll	$4,%edi
   1875 	movdqu	(%ebx),%xmm2
   1876 	movdqu	(%ebx,%ecx,1),%xmm3
   1877 	movl	116(%esp),%ecx
   1878 	movdqa	%xmm2,%xmm4
   1879 	movdqu	(%ebx,%eax,1),%xmm5
   1880 	movdqa	%xmm2,%xmm6
   1881 	movdqu	(%ebx,%edi,1),%xmm7
   1882 	pxor	%xmm0,%xmm2
   1883 	pxor	%xmm2,%xmm3
   1884 	movdqa	%xmm2,(%esp)
   1885 	pxor	%xmm3,%xmm4
   1886 	movdqa	%xmm3,16(%esp)
   1887 	pxor	%xmm4,%xmm5
   1888 	movdqa	%xmm4,32(%esp)
   1889 	pxor	%xmm5,%xmm6
   1890 	movdqa	%xmm5,48(%esp)
   1891 	pxor	%xmm6,%xmm7
   1892 	movdqa	%xmm6,64(%esp)
   1893 	movdqa	%xmm7,80(%esp)
   1894 	movups	-48(%edx,%ecx,1),%xmm0
   1895 	movdqu	(%esi),%xmm2
   1896 	movdqu	16(%esi),%xmm3
   1897 	movdqu	32(%esi),%xmm4
   1898 	movdqu	48(%esi),%xmm5
   1899 	movdqu	64(%esi),%xmm6
   1900 	movdqu	80(%esi),%xmm7
   1901 	leal	96(%esi),%esi
   1902 	pxor	%xmm2,%xmm1
   1903 	pxor	%xmm0,%xmm2
   1904 	pxor	%xmm3,%xmm1
   1905 	pxor	%xmm0,%xmm3
   1906 	pxor	%xmm4,%xmm1
   1907 	pxor	%xmm0,%xmm4
   1908 	pxor	%xmm5,%xmm1
   1909 	pxor	%xmm0,%xmm5
   1910 	pxor	%xmm6,%xmm1
   1911 	pxor	%xmm0,%xmm6
   1912 	pxor	%xmm7,%xmm1
   1913 	pxor	%xmm0,%xmm7
   1914 	movdqa	%xmm1,96(%esp)
   1915 	movups	-32(%edx,%ecx,1),%xmm1
   1916 	pxor	(%esp),%xmm2
   1917 	pxor	16(%esp),%xmm3
   1918 	pxor	32(%esp),%xmm4
   1919 	pxor	48(%esp),%xmm5
   1920 	pxor	64(%esp),%xmm6
   1921 	pxor	80(%esp),%xmm7
   1922 	movups	-16(%edx,%ecx,1),%xmm0
   1923 .byte	102,15,56,220,209
   1924 .byte	102,15,56,220,217
   1925 .byte	102,15,56,220,225
   1926 .byte	102,15,56,220,233
   1927 .byte	102,15,56,220,241
   1928 .byte	102,15,56,220,249
   1929 	movl	120(%esp),%edi
   1930 	movl	124(%esp),%eax
   1931 	call	.L_aesni_encrypt6_enter
   1932 	movdqa	80(%esp),%xmm0
   1933 	pxor	(%esp),%xmm2
   1934 	pxor	16(%esp),%xmm3
   1935 	pxor	32(%esp),%xmm4
   1936 	pxor	48(%esp),%xmm5
   1937 	pxor	64(%esp),%xmm6
   1938 	pxor	%xmm0,%xmm7
   1939 	movdqa	96(%esp),%xmm1
   1940 	movdqu	%xmm2,-96(%edi,%esi,1)
   1941 	movdqu	%xmm3,-80(%edi,%esi,1)
   1942 	movdqu	%xmm4,-64(%edi,%esi,1)
   1943 	movdqu	%xmm5,-48(%edi,%esi,1)
   1944 	movdqu	%xmm6,-32(%edi,%esi,1)
   1945 	movdqu	%xmm7,-16(%edi,%esi,1)
   1946 	cmpl	%eax,%esi
   1947 	jb	.L077grandloop
   1948 .L076short:
   1949 	addl	$96,%eax
   1950 	subl	%esi,%eax
   1951 	jz	.L078done
   1952 	cmpl	$32,%eax
   1953 	jb	.L079one
   1954 	je	.L080two
   1955 	cmpl	$64,%eax
   1956 	jb	.L081three
   1957 	je	.L082four
   1958 	leal	1(%ebp),%ecx
   1959 	leal	3(%ebp),%eax
   1960 	bsfl	%ecx,%ecx
   1961 	bsfl	%eax,%eax
   1962 	shll	$4,%ecx
   1963 	shll	$4,%eax
   1964 	movdqu	(%ebx),%xmm2
   1965 	movdqu	(%ebx,%ecx,1),%xmm3
   1966 	movl	116(%esp),%ecx
   1967 	movdqa	%xmm2,%xmm4
   1968 	movdqu	(%ebx,%eax,1),%xmm5
   1969 	movdqa	%xmm2,%xmm6
   1970 	pxor	%xmm0,%xmm2
   1971 	pxor	%xmm2,%xmm3
   1972 	movdqa	%xmm2,(%esp)
   1973 	pxor	%xmm3,%xmm4
   1974 	movdqa	%xmm3,16(%esp)
   1975 	pxor	%xmm4,%xmm5
   1976 	movdqa	%xmm4,32(%esp)
   1977 	pxor	%xmm5,%xmm6
   1978 	movdqa	%xmm5,48(%esp)
   1979 	pxor	%xmm6,%xmm7
   1980 	movdqa	%xmm6,64(%esp)
   1981 	movups	-48(%edx,%ecx,1),%xmm0
   1982 	movdqu	(%esi),%xmm2
   1983 	movdqu	16(%esi),%xmm3
   1984 	movdqu	32(%esi),%xmm4
   1985 	movdqu	48(%esi),%xmm5
   1986 	movdqu	64(%esi),%xmm6
   1987 	pxor	%xmm7,%xmm7
   1988 	pxor	%xmm2,%xmm1
   1989 	pxor	%xmm0,%xmm2
   1990 	pxor	%xmm3,%xmm1
   1991 	pxor	%xmm0,%xmm3
   1992 	pxor	%xmm4,%xmm1
   1993 	pxor	%xmm0,%xmm4
   1994 	pxor	%xmm5,%xmm1
   1995 	pxor	%xmm0,%xmm5
   1996 	pxor	%xmm6,%xmm1
   1997 	pxor	%xmm0,%xmm6
   1998 	movdqa	%xmm1,96(%esp)
   1999 	movups	-32(%edx,%ecx,1),%xmm1
   2000 	pxor	(%esp),%xmm2
   2001 	pxor	16(%esp),%xmm3
   2002 	pxor	32(%esp),%xmm4
   2003 	pxor	48(%esp),%xmm5
   2004 	pxor	64(%esp),%xmm6
   2005 	movups	-16(%edx,%ecx,1),%xmm0
   2006 .byte	102,15,56,220,209
   2007 .byte	102,15,56,220,217
   2008 .byte	102,15,56,220,225
   2009 .byte	102,15,56,220,233
   2010 .byte	102,15,56,220,241
   2011 .byte	102,15,56,220,249
   2012 	movl	120(%esp),%edi
   2013 	call	.L_aesni_encrypt6_enter
   2014 	movdqa	64(%esp),%xmm0
   2015 	pxor	(%esp),%xmm2
   2016 	pxor	16(%esp),%xmm3
   2017 	pxor	32(%esp),%xmm4
   2018 	pxor	48(%esp),%xmm5
   2019 	pxor	%xmm0,%xmm6
   2020 	movdqa	96(%esp),%xmm1
   2021 	movdqu	%xmm2,(%edi,%esi,1)
   2022 	movdqu	%xmm3,16(%edi,%esi,1)
   2023 	movdqu	%xmm4,32(%edi,%esi,1)
   2024 	movdqu	%xmm5,48(%edi,%esi,1)
   2025 	movdqu	%xmm6,64(%edi,%esi,1)
   2026 	jmp	.L078done
   2027 .align	16
   2028 .L079one:
   2029 	movdqu	(%ebx),%xmm7
   2030 	movl	112(%esp),%edx
   2031 	movdqu	(%esi),%xmm2
   2032 	movl	240(%edx),%ecx
   2033 	pxor	%xmm0,%xmm7
   2034 	pxor	%xmm2,%xmm1
   2035 	pxor	%xmm7,%xmm2
   2036 	movdqa	%xmm1,%xmm6
   2037 	movl	120(%esp),%edi
   2038 	movups	(%edx),%xmm0
   2039 	movups	16(%edx),%xmm1
   2040 	leal	32(%edx),%edx
   2041 	xorps	%xmm0,%xmm2
   2042 .L083enc1_loop_16:
   2043 .byte	102,15,56,220,209
   2044 	decl	%ecx
   2045 	movups	(%edx),%xmm1
   2046 	leal	16(%edx),%edx
   2047 	jnz	.L083enc1_loop_16
   2048 .byte	102,15,56,221,209
   2049 	xorps	%xmm7,%xmm2
   2050 	movdqa	%xmm7,%xmm0
   2051 	movdqa	%xmm6,%xmm1
   2052 	movups	%xmm2,(%edi,%esi,1)
   2053 	jmp	.L078done
   2054 .align	16
   2055 .L080two:
   2056 	leal	1(%ebp),%ecx
   2057 	movl	112(%esp),%edx
   2058 	bsfl	%ecx,%ecx
   2059 	shll	$4,%ecx
   2060 	movdqu	(%ebx),%xmm6
   2061 	movdqu	(%ebx,%ecx,1),%xmm7
   2062 	movdqu	(%esi),%xmm2
   2063 	movdqu	16(%esi),%xmm3
   2064 	movl	240(%edx),%ecx
   2065 	pxor	%xmm0,%xmm6
   2066 	pxor	%xmm6,%xmm7
   2067 	pxor	%xmm2,%xmm1
   2068 	pxor	%xmm6,%xmm2
   2069 	pxor	%xmm3,%xmm1
   2070 	pxor	%xmm7,%xmm3
   2071 	movdqa	%xmm1,%xmm5
   2072 	movl	120(%esp),%edi
   2073 	call	_aesni_encrypt2
   2074 	xorps	%xmm6,%xmm2
   2075 	xorps	%xmm7,%xmm3
   2076 	movdqa	%xmm7,%xmm0
   2077 	movdqa	%xmm5,%xmm1
   2078 	movups	%xmm2,(%edi,%esi,1)
   2079 	movups	%xmm3,16(%edi,%esi,1)
   2080 	jmp	.L078done
   2081 .align	16
   2082 .L081three:
   2083 	leal	1(%ebp),%ecx
   2084 	movl	112(%esp),%edx
   2085 	bsfl	%ecx,%ecx
   2086 	shll	$4,%ecx
   2087 	movdqu	(%ebx),%xmm5
   2088 	movdqu	(%ebx,%ecx,1),%xmm6
   2089 	movdqa	%xmm5,%xmm7
   2090 	movdqu	(%esi),%xmm2
   2091 	movdqu	16(%esi),%xmm3
   2092 	movdqu	32(%esi),%xmm4
   2093 	movl	240(%edx),%ecx
   2094 	pxor	%xmm0,%xmm5
   2095 	pxor	%xmm5,%xmm6
   2096 	pxor	%xmm6,%xmm7
   2097 	pxor	%xmm2,%xmm1
   2098 	pxor	%xmm5,%xmm2
   2099 	pxor	%xmm3,%xmm1
   2100 	pxor	%xmm6,%xmm3
   2101 	pxor	%xmm4,%xmm1
   2102 	pxor	%xmm7,%xmm4
   2103 	movdqa	%xmm1,96(%esp)
   2104 	movl	120(%esp),%edi
   2105 	call	_aesni_encrypt3
   2106 	xorps	%xmm5,%xmm2
   2107 	xorps	%xmm6,%xmm3
   2108 	xorps	%xmm7,%xmm4
   2109 	movdqa	%xmm7,%xmm0
   2110 	movdqa	96(%esp),%xmm1
   2111 	movups	%xmm2,(%edi,%esi,1)
   2112 	movups	%xmm3,16(%edi,%esi,1)
   2113 	movups	%xmm4,32(%edi,%esi,1)
   2114 	jmp	.L078done
   2115 .align	16
   2116 .L082four:
   2117 	leal	1(%ebp),%ecx
   2118 	leal	3(%ebp),%eax
   2119 	bsfl	%ecx,%ecx
   2120 	bsfl	%eax,%eax
   2121 	movl	112(%esp),%edx
   2122 	shll	$4,%ecx
   2123 	shll	$4,%eax
   2124 	movdqu	(%ebx),%xmm4
   2125 	movdqu	(%ebx,%ecx,1),%xmm5
   2126 	movdqa	%xmm4,%xmm6
   2127 	movdqu	(%ebx,%eax,1),%xmm7
   2128 	pxor	%xmm0,%xmm4
   2129 	movdqu	(%esi),%xmm2
   2130 	pxor	%xmm4,%xmm5
   2131 	movdqu	16(%esi),%xmm3
   2132 	pxor	%xmm5,%xmm6
   2133 	movdqa	%xmm4,(%esp)
   2134 	pxor	%xmm6,%xmm7
   2135 	movdqa	%xmm5,16(%esp)
   2136 	movdqu	32(%esi),%xmm4
   2137 	movdqu	48(%esi),%xmm5
   2138 	movl	240(%edx),%ecx
   2139 	pxor	%xmm2,%xmm1
   2140 	pxor	(%esp),%xmm2
   2141 	pxor	%xmm3,%xmm1
   2142 	pxor	16(%esp),%xmm3
   2143 	pxor	%xmm4,%xmm1
   2144 	pxor	%xmm6,%xmm4
   2145 	pxor	%xmm5,%xmm1
   2146 	pxor	%xmm7,%xmm5
   2147 	movdqa	%xmm1,96(%esp)
   2148 	movl	120(%esp),%edi
   2149 	call	_aesni_encrypt4
   2150 	xorps	(%esp),%xmm2
   2151 	xorps	16(%esp),%xmm3
   2152 	xorps	%xmm6,%xmm4
   2153 	movups	%xmm2,(%edi,%esi,1)
   2154 	xorps	%xmm7,%xmm5
   2155 	movups	%xmm3,16(%edi,%esi,1)
   2156 	movdqa	%xmm7,%xmm0
   2157 	movups	%xmm4,32(%edi,%esi,1)
   2158 	movdqa	96(%esp),%xmm1
   2159 	movups	%xmm5,48(%edi,%esi,1)
   2160 .L078done:
   2161 	movl	128(%esp),%edx
   2162 	pxor	%xmm2,%xmm2
   2163 	pxor	%xmm3,%xmm3
   2164 	movdqa	%xmm2,(%esp)
   2165 	pxor	%xmm4,%xmm4
   2166 	movdqa	%xmm2,16(%esp)
   2167 	pxor	%xmm5,%xmm5
   2168 	movdqa	%xmm2,32(%esp)
   2169 	pxor	%xmm6,%xmm6
   2170 	movdqa	%xmm2,48(%esp)
   2171 	pxor	%xmm7,%xmm7
   2172 	movdqa	%xmm2,64(%esp)
   2173 	movdqa	%xmm2,80(%esp)
   2174 	movdqa	%xmm2,96(%esp)
   2175 	leal	(%edx),%esp
   2176 	movl	40(%esp),%ecx
   2177 	movl	48(%esp),%ebx
   2178 	movdqu	%xmm0,(%ecx)
   2179 	pxor	%xmm0,%xmm0
   2180 	movdqu	%xmm1,(%ebx)
   2181 	pxor	%xmm1,%xmm1
   2182 	popl	%edi
   2183 	popl	%esi
   2184 	popl	%ebx
   2185 	popl	%ebp
   2186 	ret
   2187 .size	aesni_ocb_encrypt,.-.L_aesni_ocb_encrypt_begin
   2188 .globl	aesni_ocb_decrypt
   2189 .type	aesni_ocb_decrypt,@function
   2190 .align	16
   2191 aesni_ocb_decrypt:
   2192 .L_aesni_ocb_decrypt_begin:
   2193 	pushl	%ebp
   2194 	pushl	%ebx
   2195 	pushl	%esi
   2196 	pushl	%edi
   2197 	movl	40(%esp),%ecx
   2198 	movl	48(%esp),%ebx
   2199 	movl	20(%esp),%esi
   2200 	movl	24(%esp),%edi
   2201 	movl	28(%esp),%eax
   2202 	movl	32(%esp),%edx
   2203 	movdqu	(%ecx),%xmm0
   2204 	movl	36(%esp),%ebp
   2205 	movdqu	(%ebx),%xmm1
   2206 	movl	44(%esp),%ebx
   2207 	movl	%esp,%ecx
   2208 	subl	$132,%esp
   2209 	andl	$-16,%esp
   2210 	subl	%esi,%edi
   2211 	shll	$4,%eax
   2212 	leal	-96(%esi,%eax,1),%eax
   2213 	movl	%edi,120(%esp)
   2214 	movl	%eax,124(%esp)
   2215 	movl	%ecx,128(%esp)
   2216 	movl	240(%edx),%ecx
   2217 	testl	$1,%ebp
   2218 	jnz	.L084odd
   2219 	bsfl	%ebp,%eax
   2220 	addl	$1,%ebp
   2221 	shll	$4,%eax
   2222 	movdqu	(%ebx,%eax,1),%xmm7
   2223 	movl	%edx,%eax
   2224 	movdqu	(%esi),%xmm2
   2225 	leal	16(%esi),%esi
   2226 	pxor	%xmm0,%xmm7
   2227 	pxor	%xmm7,%xmm2
   2228 	movdqa	%xmm1,%xmm6
   2229 	movups	(%edx),%xmm0
   2230 	movups	16(%edx),%xmm1
   2231 	leal	32(%edx),%edx
   2232 	xorps	%xmm0,%xmm2
   2233 .L085dec1_loop_17:
   2234 .byte	102,15,56,222,209
   2235 	decl	%ecx
   2236 	movups	(%edx),%xmm1
   2237 	leal	16(%edx),%edx
   2238 	jnz	.L085dec1_loop_17
   2239 .byte	102,15,56,223,209
   2240 	xorps	%xmm7,%xmm2
   2241 	movaps	%xmm6,%xmm1
   2242 	movdqa	%xmm7,%xmm0
   2243 	xorps	%xmm2,%xmm1
   2244 	movups	%xmm2,-16(%edi,%esi,1)
   2245 	movl	240(%eax),%ecx
   2246 	movl	%eax,%edx
   2247 	movl	124(%esp),%eax
   2248 .L084odd:
   2249 	shll	$4,%ecx
   2250 	movl	$16,%edi
   2251 	subl	%ecx,%edi
   2252 	movl	%edx,112(%esp)
   2253 	leal	32(%edx,%ecx,1),%edx
   2254 	movl	%edi,116(%esp)
   2255 	cmpl	%eax,%esi
   2256 	ja	.L086short
   2257 	jmp	.L087grandloop
   2258 .align	32
   2259 .L087grandloop:
   2260 	leal	1(%ebp),%ecx
   2261 	leal	3(%ebp),%eax
   2262 	leal	5(%ebp),%edi
   2263 	addl	$6,%ebp
   2264 	bsfl	%ecx,%ecx
   2265 	bsfl	%eax,%eax
   2266 	bsfl	%edi,%edi
   2267 	shll	$4,%ecx
   2268 	shll	$4,%eax
   2269 	shll	$4,%edi
   2270 	movdqu	(%ebx),%xmm2
   2271 	movdqu	(%ebx,%ecx,1),%xmm3
   2272 	movl	116(%esp),%ecx
   2273 	movdqa	%xmm2,%xmm4
   2274 	movdqu	(%ebx,%eax,1),%xmm5
   2275 	movdqa	%xmm2,%xmm6
   2276 	movdqu	(%ebx,%edi,1),%xmm7
   2277 	pxor	%xmm0,%xmm2
   2278 	pxor	%xmm2,%xmm3
   2279 	movdqa	%xmm2,(%esp)
   2280 	pxor	%xmm3,%xmm4
   2281 	movdqa	%xmm3,16(%esp)
   2282 	pxor	%xmm4,%xmm5
   2283 	movdqa	%xmm4,32(%esp)
   2284 	pxor	%xmm5,%xmm6
   2285 	movdqa	%xmm5,48(%esp)
   2286 	pxor	%xmm6,%xmm7
   2287 	movdqa	%xmm6,64(%esp)
   2288 	movdqa	%xmm7,80(%esp)
   2289 	movups	-48(%edx,%ecx,1),%xmm0
   2290 	movdqu	(%esi),%xmm2
   2291 	movdqu	16(%esi),%xmm3
   2292 	movdqu	32(%esi),%xmm4
   2293 	movdqu	48(%esi),%xmm5
   2294 	movdqu	64(%esi),%xmm6
   2295 	movdqu	80(%esi),%xmm7
   2296 	leal	96(%esi),%esi
   2297 	movdqa	%xmm1,96(%esp)
   2298 	pxor	%xmm0,%xmm2
   2299 	pxor	%xmm0,%xmm3
   2300 	pxor	%xmm0,%xmm4
   2301 	pxor	%xmm0,%xmm5
   2302 	pxor	%xmm0,%xmm6
   2303 	pxor	%xmm0,%xmm7
   2304 	movups	-32(%edx,%ecx,1),%xmm1
   2305 	pxor	(%esp),%xmm2
   2306 	pxor	16(%esp),%xmm3
   2307 	pxor	32(%esp),%xmm4
   2308 	pxor	48(%esp),%xmm5
   2309 	pxor	64(%esp),%xmm6
   2310 	pxor	80(%esp),%xmm7
   2311 	movups	-16(%edx,%ecx,1),%xmm0
   2312 .byte	102,15,56,222,209
   2313 .byte	102,15,56,222,217
   2314 .byte	102,15,56,222,225
   2315 .byte	102,15,56,222,233
   2316 .byte	102,15,56,222,241
   2317 .byte	102,15,56,222,249
   2318 	movl	120(%esp),%edi
   2319 	movl	124(%esp),%eax
   2320 	call	.L_aesni_decrypt6_enter
   2321 	movdqa	80(%esp),%xmm0
   2322 	pxor	(%esp),%xmm2
   2323 	movdqa	96(%esp),%xmm1
   2324 	pxor	16(%esp),%xmm3
   2325 	pxor	32(%esp),%xmm4
   2326 	pxor	48(%esp),%xmm5
   2327 	pxor	64(%esp),%xmm6
   2328 	pxor	%xmm0,%xmm7
   2329 	pxor	%xmm2,%xmm1
   2330 	movdqu	%xmm2,-96(%edi,%esi,1)
   2331 	pxor	%xmm3,%xmm1
   2332 	movdqu	%xmm3,-80(%edi,%esi,1)
   2333 	pxor	%xmm4,%xmm1
   2334 	movdqu	%xmm4,-64(%edi,%esi,1)
   2335 	pxor	%xmm5,%xmm1
   2336 	movdqu	%xmm5,-48(%edi,%esi,1)
   2337 	pxor	%xmm6,%xmm1
   2338 	movdqu	%xmm6,-32(%edi,%esi,1)
   2339 	pxor	%xmm7,%xmm1
   2340 	movdqu	%xmm7,-16(%edi,%esi,1)
   2341 	cmpl	%eax,%esi
   2342 	jb	.L087grandloop
   2343 .L086short:
   2344 	addl	$96,%eax
   2345 	subl	%esi,%eax
   2346 	jz	.L088done
   2347 	cmpl	$32,%eax
   2348 	jb	.L089one
   2349 	je	.L090two
   2350 	cmpl	$64,%eax
   2351 	jb	.L091three
   2352 	je	.L092four
   2353 	leal	1(%ebp),%ecx
   2354 	leal	3(%ebp),%eax
   2355 	bsfl	%ecx,%ecx
   2356 	bsfl	%eax,%eax
   2357 	shll	$4,%ecx
   2358 	shll	$4,%eax
   2359 	movdqu	(%ebx),%xmm2
   2360 	movdqu	(%ebx,%ecx,1),%xmm3
   2361 	movl	116(%esp),%ecx
   2362 	movdqa	%xmm2,%xmm4
   2363 	movdqu	(%ebx,%eax,1),%xmm5
   2364 	movdqa	%xmm2,%xmm6
   2365 	pxor	%xmm0,%xmm2
   2366 	pxor	%xmm2,%xmm3
   2367 	movdqa	%xmm2,(%esp)
   2368 	pxor	%xmm3,%xmm4
   2369 	movdqa	%xmm3,16(%esp)
   2370 	pxor	%xmm4,%xmm5
   2371 	movdqa	%xmm4,32(%esp)
   2372 	pxor	%xmm5,%xmm6
   2373 	movdqa	%xmm5,48(%esp)
   2374 	pxor	%xmm6,%xmm7
   2375 	movdqa	%xmm6,64(%esp)
   2376 	movups	-48(%edx,%ecx,1),%xmm0
   2377 	movdqu	(%esi),%xmm2
   2378 	movdqu	16(%esi),%xmm3
   2379 	movdqu	32(%esi),%xmm4
   2380 	movdqu	48(%esi),%xmm5
   2381 	movdqu	64(%esi),%xmm6
   2382 	pxor	%xmm7,%xmm7
   2383 	movdqa	%xmm1,96(%esp)
   2384 	pxor	%xmm0,%xmm2
   2385 	pxor	%xmm0,%xmm3
   2386 	pxor	%xmm0,%xmm4
   2387 	pxor	%xmm0,%xmm5
   2388 	pxor	%xmm0,%xmm6
   2389 	movups	-32(%edx,%ecx,1),%xmm1
   2390 	pxor	(%esp),%xmm2
   2391 	pxor	16(%esp),%xmm3
   2392 	pxor	32(%esp),%xmm4
   2393 	pxor	48(%esp),%xmm5
   2394 	pxor	64(%esp),%xmm6
   2395 	movups	-16(%edx,%ecx,1),%xmm0
   2396 .byte	102,15,56,222,209
   2397 .byte	102,15,56,222,217
   2398 .byte	102,15,56,222,225
   2399 .byte	102,15,56,222,233
   2400 .byte	102,15,56,222,241
   2401 .byte	102,15,56,222,249
   2402 	movl	120(%esp),%edi
   2403 	call	.L_aesni_decrypt6_enter
   2404 	movdqa	64(%esp),%xmm0
   2405 	pxor	(%esp),%xmm2
   2406 	movdqa	96(%esp),%xmm1
   2407 	pxor	16(%esp),%xmm3
   2408 	pxor	32(%esp),%xmm4
   2409 	pxor	48(%esp),%xmm5
   2410 	pxor	%xmm0,%xmm6
   2411 	pxor	%xmm2,%xmm1
   2412 	movdqu	%xmm2,(%edi,%esi,1)
   2413 	pxor	%xmm3,%xmm1
   2414 	movdqu	%xmm3,16(%edi,%esi,1)
   2415 	pxor	%xmm4,%xmm1
   2416 	movdqu	%xmm4,32(%edi,%esi,1)
   2417 	pxor	%xmm5,%xmm1
   2418 	movdqu	%xmm5,48(%edi,%esi,1)
   2419 	pxor	%xmm6,%xmm1
   2420 	movdqu	%xmm6,64(%edi,%esi,1)
   2421 	jmp	.L088done
   2422 .align	16
   2423 .L089one:
   2424 	movdqu	(%ebx),%xmm7
   2425 	movl	112(%esp),%edx
   2426 	movdqu	(%esi),%xmm2
   2427 	movl	240(%edx),%ecx
   2428 	pxor	%xmm0,%xmm7
   2429 	pxor	%xmm7,%xmm2
   2430 	movdqa	%xmm1,%xmm6
   2431 	movl	120(%esp),%edi
   2432 	movups	(%edx),%xmm0
   2433 	movups	16(%edx),%xmm1
   2434 	leal	32(%edx),%edx
   2435 	xorps	%xmm0,%xmm2
   2436 .L093dec1_loop_18:
   2437 .byte	102,15,56,222,209
   2438 	decl	%ecx
   2439 	movups	(%edx),%xmm1
   2440 	leal	16(%edx),%edx
   2441 	jnz	.L093dec1_loop_18
   2442 .byte	102,15,56,223,209
   2443 	xorps	%xmm7,%xmm2
   2444 	movaps	%xmm6,%xmm1
   2445 	movdqa	%xmm7,%xmm0
   2446 	xorps	%xmm2,%xmm1
   2447 	movups	%xmm2,(%edi,%esi,1)
   2448 	jmp	.L088done
   2449 .align	16
   2450 .L090two:
   2451 	leal	1(%ebp),%ecx
   2452 	movl	112(%esp),%edx
   2453 	bsfl	%ecx,%ecx
   2454 	shll	$4,%ecx
   2455 	movdqu	(%ebx),%xmm6
   2456 	movdqu	(%ebx,%ecx,1),%xmm7
   2457 	movdqu	(%esi),%xmm2
   2458 	movdqu	16(%esi),%xmm3
   2459 	movl	240(%edx),%ecx
   2460 	movdqa	%xmm1,%xmm5
   2461 	pxor	%xmm0,%xmm6
   2462 	pxor	%xmm6,%xmm7
   2463 	pxor	%xmm6,%xmm2
   2464 	pxor	%xmm7,%xmm3
   2465 	movl	120(%esp),%edi
   2466 	call	_aesni_decrypt2
   2467 	xorps	%xmm6,%xmm2
   2468 	xorps	%xmm7,%xmm3
   2469 	movdqa	%xmm7,%xmm0
   2470 	xorps	%xmm2,%xmm5
   2471 	movups	%xmm2,(%edi,%esi,1)
   2472 	xorps	%xmm3,%xmm5
   2473 	movups	%xmm3,16(%edi,%esi,1)
   2474 	movaps	%xmm5,%xmm1
   2475 	jmp	.L088done
   2476 .align	16
   2477 .L091three:
   2478 	leal	1(%ebp),%ecx
   2479 	movl	112(%esp),%edx
   2480 	bsfl	%ecx,%ecx
   2481 	shll	$4,%ecx
   2482 	movdqu	(%ebx),%xmm5
   2483 	movdqu	(%ebx,%ecx,1),%xmm6
   2484 	movdqa	%xmm5,%xmm7
   2485 	movdqu	(%esi),%xmm2
   2486 	movdqu	16(%esi),%xmm3
   2487 	movdqu	32(%esi),%xmm4
   2488 	movl	240(%edx),%ecx
   2489 	movdqa	%xmm1,96(%esp)
   2490 	pxor	%xmm0,%xmm5
   2491 	pxor	%xmm5,%xmm6
   2492 	pxor	%xmm6,%xmm7
   2493 	pxor	%xmm5,%xmm2
   2494 	pxor	%xmm6,%xmm3
   2495 	pxor	%xmm7,%xmm4
   2496 	movl	120(%esp),%edi
   2497 	call	_aesni_decrypt3
   2498 	movdqa	96(%esp),%xmm1
   2499 	xorps	%xmm5,%xmm2
   2500 	xorps	%xmm6,%xmm3
   2501 	xorps	%xmm7,%xmm4
   2502 	movups	%xmm2,(%edi,%esi,1)
   2503 	pxor	%xmm2,%xmm1
   2504 	movdqa	%xmm7,%xmm0
   2505 	movups	%xmm3,16(%edi,%esi,1)
   2506 	pxor	%xmm3,%xmm1
   2507 	movups	%xmm4,32(%edi,%esi,1)
   2508 	pxor	%xmm4,%xmm1
   2509 	jmp	.L088done
   2510 .align	16
   2511 .L092four:
   2512 	leal	1(%ebp),%ecx
   2513 	leal	3(%ebp),%eax
   2514 	bsfl	%ecx,%ecx
   2515 	bsfl	%eax,%eax
   2516 	movl	112(%esp),%edx
   2517 	shll	$4,%ecx
   2518 	shll	$4,%eax
   2519 	movdqu	(%ebx),%xmm4
   2520 	movdqu	(%ebx,%ecx,1),%xmm5
   2521 	movdqa	%xmm4,%xmm6
   2522 	movdqu	(%ebx,%eax,1),%xmm7
   2523 	pxor	%xmm0,%xmm4
   2524 	movdqu	(%esi),%xmm2
   2525 	pxor	%xmm4,%xmm5
   2526 	movdqu	16(%esi),%xmm3
   2527 	pxor	%xmm5,%xmm6
   2528 	movdqa	%xmm4,(%esp)
   2529 	pxor	%xmm6,%xmm7
   2530 	movdqa	%xmm5,16(%esp)
   2531 	movdqu	32(%esi),%xmm4
   2532 	movdqu	48(%esi),%xmm5
   2533 	movl	240(%edx),%ecx
   2534 	movdqa	%xmm1,96(%esp)
   2535 	pxor	(%esp),%xmm2
   2536 	pxor	16(%esp),%xmm3
   2537 	pxor	%xmm6,%xmm4
   2538 	pxor	%xmm7,%xmm5
   2539 	movl	120(%esp),%edi
   2540 	call	_aesni_decrypt4
   2541 	movdqa	96(%esp),%xmm1
   2542 	xorps	(%esp),%xmm2
   2543 	xorps	16(%esp),%xmm3
   2544 	xorps	%xmm6,%xmm4
   2545 	movups	%xmm2,(%edi,%esi,1)
   2546 	pxor	%xmm2,%xmm1
   2547 	xorps	%xmm7,%xmm5
   2548 	movups	%xmm3,16(%edi,%esi,1)
   2549 	pxor	%xmm3,%xmm1
   2550 	movdqa	%xmm7,%xmm0
   2551 	movups	%xmm4,32(%edi,%esi,1)
   2552 	pxor	%xmm4,%xmm1
   2553 	movups	%xmm5,48(%edi,%esi,1)
   2554 	pxor	%xmm5,%xmm1
   2555 .L088done:
   2556 	movl	128(%esp),%edx
   2557 	pxor	%xmm2,%xmm2
   2558 	pxor	%xmm3,%xmm3
   2559 	movdqa	%xmm2,(%esp)
   2560 	pxor	%xmm4,%xmm4
   2561 	movdqa	%xmm2,16(%esp)
   2562 	pxor	%xmm5,%xmm5
   2563 	movdqa	%xmm2,32(%esp)
   2564 	pxor	%xmm6,%xmm6
   2565 	movdqa	%xmm2,48(%esp)
   2566 	pxor	%xmm7,%xmm7
   2567 	movdqa	%xmm2,64(%esp)
   2568 	movdqa	%xmm2,80(%esp)
   2569 	movdqa	%xmm2,96(%esp)
   2570 	leal	(%edx),%esp
   2571 	movl	40(%esp),%ecx
   2572 	movl	48(%esp),%ebx
   2573 	movdqu	%xmm0,(%ecx)
   2574 	pxor	%xmm0,%xmm0
   2575 	movdqu	%xmm1,(%ebx)
   2576 	pxor	%xmm1,%xmm1
   2577 	popl	%edi
   2578 	popl	%esi
   2579 	popl	%ebx
   2580 	popl	%ebp
   2581 	ret
   2582 .size	aesni_ocb_decrypt,.-.L_aesni_ocb_decrypt_begin
   2583 .globl	aesni_cbc_encrypt
   2584 .type	aesni_cbc_encrypt,@function
   2585 .align	16
   2586 aesni_cbc_encrypt:
   2587 .L_aesni_cbc_encrypt_begin:
   2588 	pushl	%ebp
   2589 	pushl	%ebx
   2590 	pushl	%esi
   2591 	pushl	%edi
   2592 	movl	20(%esp),%esi
   2593 	movl	%esp,%ebx
   2594 	movl	24(%esp),%edi
   2595 	subl	$24,%ebx
   2596 	movl	28(%esp),%eax
   2597 	andl	$-16,%ebx
   2598 	movl	32(%esp),%edx
   2599 	movl	36(%esp),%ebp
   2600 	testl	%eax,%eax
   2601 	jz	.L094cbc_abort
   2602 	cmpl	$0,40(%esp)
   2603 	xchgl	%esp,%ebx
   2604 	movups	(%ebp),%xmm7
   2605 	movl	240(%edx),%ecx
   2606 	movl	%edx,%ebp
   2607 	movl	%ebx,16(%esp)
   2608 	movl	%ecx,%ebx
   2609 	je	.L095cbc_decrypt
   2610 	movaps	%xmm7,%xmm2
   2611 	cmpl	$16,%eax
   2612 	jb	.L096cbc_enc_tail
   2613 	subl	$16,%eax
   2614 	jmp	.L097cbc_enc_loop
   2615 .align	16
   2616 .L097cbc_enc_loop:
   2617 	movups	(%esi),%xmm7
   2618 	leal	16(%esi),%esi
   2619 	movups	(%edx),%xmm0
   2620 	movups	16(%edx),%xmm1
   2621 	xorps	%xmm0,%xmm7
   2622 	leal	32(%edx),%edx
   2623 	xorps	%xmm7,%xmm2
   2624 .L098enc1_loop_19:
   2625 .byte	102,15,56,220,209
   2626 	decl	%ecx
   2627 	movups	(%edx),%xmm1
   2628 	leal	16(%edx),%edx
   2629 	jnz	.L098enc1_loop_19
   2630 .byte	102,15,56,221,209
   2631 	movl	%ebx,%ecx
   2632 	movl	%ebp,%edx
   2633 	movups	%xmm2,(%edi)
   2634 	leal	16(%edi),%edi
   2635 	subl	$16,%eax
   2636 	jnc	.L097cbc_enc_loop
   2637 	addl	$16,%eax
   2638 	jnz	.L096cbc_enc_tail
   2639 	movaps	%xmm2,%xmm7
   2640 	pxor	%xmm2,%xmm2
   2641 	jmp	.L099cbc_ret
   2642 .L096cbc_enc_tail:
   2643 	movl	%eax,%ecx
   2644 .long	2767451785
   2645 	movl	$16,%ecx
   2646 	subl	%eax,%ecx
   2647 	xorl	%eax,%eax
   2648 .long	2868115081
   2649 	leal	-16(%edi),%edi
   2650 	movl	%ebx,%ecx
   2651 	movl	%edi,%esi
   2652 	movl	%ebp,%edx
   2653 	jmp	.L097cbc_enc_loop
   2654 .align	16
   2655 .L095cbc_decrypt:
   2656 	cmpl	$80,%eax
   2657 	jbe	.L100cbc_dec_tail
   2658 	movaps	%xmm7,(%esp)
   2659 	subl	$80,%eax
   2660 	jmp	.L101cbc_dec_loop6_enter
   2661 .align	16
   2662 .L102cbc_dec_loop6:
   2663 	movaps	%xmm0,(%esp)
   2664 	movups	%xmm7,(%edi)
   2665 	leal	16(%edi),%edi
   2666 .L101cbc_dec_loop6_enter:
   2667 	movdqu	(%esi),%xmm2
   2668 	movdqu	16(%esi),%xmm3
   2669 	movdqu	32(%esi),%xmm4
   2670 	movdqu	48(%esi),%xmm5
   2671 	movdqu	64(%esi),%xmm6
   2672 	movdqu	80(%esi),%xmm7
   2673 	call	_aesni_decrypt6
   2674 	movups	(%esi),%xmm1
   2675 	movups	16(%esi),%xmm0
   2676 	xorps	(%esp),%xmm2
   2677 	xorps	%xmm1,%xmm3
   2678 	movups	32(%esi),%xmm1
   2679 	xorps	%xmm0,%xmm4
   2680 	movups	48(%esi),%xmm0
   2681 	xorps	%xmm1,%xmm5
   2682 	movups	64(%esi),%xmm1
   2683 	xorps	%xmm0,%xmm6
   2684 	movups	80(%esi),%xmm0
   2685 	xorps	%xmm1,%xmm7
   2686 	movups	%xmm2,(%edi)
   2687 	movups	%xmm3,16(%edi)
   2688 	leal	96(%esi),%esi
   2689 	movups	%xmm4,32(%edi)
   2690 	movl	%ebx,%ecx
   2691 	movups	%xmm5,48(%edi)
   2692 	movl	%ebp,%edx
   2693 	movups	%xmm6,64(%edi)
   2694 	leal	80(%edi),%edi
   2695 	subl	$96,%eax
   2696 	ja	.L102cbc_dec_loop6
   2697 	movaps	%xmm7,%xmm2
   2698 	movaps	%xmm0,%xmm7
   2699 	addl	$80,%eax
   2700 	jle	.L103cbc_dec_clear_tail_collected
   2701 	movups	%xmm2,(%edi)
   2702 	leal	16(%edi),%edi
   2703 .L100cbc_dec_tail:
   2704 	movups	(%esi),%xmm2
   2705 	movaps	%xmm2,%xmm6
   2706 	cmpl	$16,%eax
   2707 	jbe	.L104cbc_dec_one
   2708 	movups	16(%esi),%xmm3
   2709 	movaps	%xmm3,%xmm5
   2710 	cmpl	$32,%eax
   2711 	jbe	.L105cbc_dec_two
   2712 	movups	32(%esi),%xmm4
   2713 	cmpl	$48,%eax
   2714 	jbe	.L106cbc_dec_three
   2715 	movups	48(%esi),%xmm5
   2716 	cmpl	$64,%eax
   2717 	jbe	.L107cbc_dec_four
   2718 	movups	64(%esi),%xmm6
   2719 	movaps	%xmm7,(%esp)
   2720 	movups	(%esi),%xmm2
   2721 	xorps	%xmm7,%xmm7
   2722 	call	_aesni_decrypt6
   2723 	movups	(%esi),%xmm1
   2724 	movups	16(%esi),%xmm0
   2725 	xorps	(%esp),%xmm2
   2726 	xorps	%xmm1,%xmm3
   2727 	movups	32(%esi),%xmm1
   2728 	xorps	%xmm0,%xmm4
   2729 	movups	48(%esi),%xmm0
   2730 	xorps	%xmm1,%xmm5
   2731 	movups	64(%esi),%xmm7
   2732 	xorps	%xmm0,%xmm6
   2733 	movups	%xmm2,(%edi)
   2734 	movups	%xmm3,16(%edi)
   2735 	pxor	%xmm3,%xmm3
   2736 	movups	%xmm4,32(%edi)
   2737 	pxor	%xmm4,%xmm4
   2738 	movups	%xmm5,48(%edi)
   2739 	pxor	%xmm5,%xmm5
   2740 	leal	64(%edi),%edi
   2741 	movaps	%xmm6,%xmm2
   2742 	pxor	%xmm6,%xmm6
   2743 	subl	$80,%eax
   2744 	jmp	.L108cbc_dec_tail_collected
   2745 .align	16
   2746 .L104cbc_dec_one:
   2747 	movups	(%edx),%xmm0
   2748 	movups	16(%edx),%xmm1
   2749 	leal	32(%edx),%edx
   2750 	xorps	%xmm0,%xmm2
   2751 .L109dec1_loop_20:
   2752 .byte	102,15,56,222,209
   2753 	decl	%ecx
   2754 	movups	(%edx),%xmm1
   2755 	leal	16(%edx),%edx
   2756 	jnz	.L109dec1_loop_20
   2757 .byte	102,15,56,223,209
   2758 	xorps	%xmm7,%xmm2
   2759 	movaps	%xmm6,%xmm7
   2760 	subl	$16,%eax
   2761 	jmp	.L108cbc_dec_tail_collected
   2762 .align	16
   2763 .L105cbc_dec_two:
   2764 	call	_aesni_decrypt2
   2765 	xorps	%xmm7,%xmm2
   2766 	xorps	%xmm6,%xmm3
   2767 	movups	%xmm2,(%edi)
   2768 	movaps	%xmm3,%xmm2
   2769 	pxor	%xmm3,%xmm3
   2770 	leal	16(%edi),%edi
   2771 	movaps	%xmm5,%xmm7
   2772 	subl	$32,%eax
   2773 	jmp	.L108cbc_dec_tail_collected
   2774 .align	16
   2775 .L106cbc_dec_three:
   2776 	call	_aesni_decrypt3
   2777 	xorps	%xmm7,%xmm2
   2778 	xorps	%xmm6,%xmm3
   2779 	xorps	%xmm5,%xmm4
   2780 	movups	%xmm2,(%edi)
   2781 	movaps	%xmm4,%xmm2
   2782 	pxor	%xmm4,%xmm4
   2783 	movups	%xmm3,16(%edi)
   2784 	pxor	%xmm3,%xmm3
   2785 	leal	32(%edi),%edi
   2786 	movups	32(%esi),%xmm7
   2787 	subl	$48,%eax
   2788 	jmp	.L108cbc_dec_tail_collected
   2789 .align	16
   2790 .L107cbc_dec_four:
   2791 	call	_aesni_decrypt4
   2792 	movups	16(%esi),%xmm1
   2793 	movups	32(%esi),%xmm0
   2794 	xorps	%xmm7,%xmm2
   2795 	movups	48(%esi),%xmm7
   2796 	xorps	%xmm6,%xmm3
   2797 	movups	%xmm2,(%edi)
   2798 	xorps	%xmm1,%xmm4
   2799 	movups	%xmm3,16(%edi)
   2800 	pxor	%xmm3,%xmm3
   2801 	xorps	%xmm0,%xmm5
   2802 	movups	%xmm4,32(%edi)
   2803 	pxor	%xmm4,%xmm4
   2804 	leal	48(%edi),%edi
   2805 	movaps	%xmm5,%xmm2
   2806 	pxor	%xmm5,%xmm5
   2807 	subl	$64,%eax
   2808 	jmp	.L108cbc_dec_tail_collected
   2809 .align	16
   2810 .L103cbc_dec_clear_tail_collected:
   2811 	pxor	%xmm3,%xmm3
   2812 	pxor	%xmm4,%xmm4
   2813 	pxor	%xmm5,%xmm5
   2814 	pxor	%xmm6,%xmm6
   2815 .L108cbc_dec_tail_collected:
   2816 	andl	$15,%eax
   2817 	jnz	.L110cbc_dec_tail_partial
   2818 	movups	%xmm2,(%edi)
   2819 	pxor	%xmm0,%xmm0
   2820 	jmp	.L099cbc_ret
   2821 .align	16
   2822 .L110cbc_dec_tail_partial:
   2823 	movaps	%xmm2,(%esp)
   2824 	pxor	%xmm0,%xmm0
   2825 	movl	$16,%ecx
   2826 	movl	%esp,%esi
   2827 	subl	%eax,%ecx
   2828 .long	2767451785
   2829 	movdqa	%xmm2,(%esp)
   2830 .L099cbc_ret:
   2831 	movl	16(%esp),%esp
   2832 	movl	36(%esp),%ebp
   2833 	pxor	%xmm2,%xmm2
   2834 	pxor	%xmm1,%xmm1
   2835 	movups	%xmm7,(%ebp)
   2836 	pxor	%xmm7,%xmm7
   2837 .L094cbc_abort:
   2838 	popl	%edi
   2839 	popl	%esi
   2840 	popl	%ebx
   2841 	popl	%ebp
   2842 	ret
   2843 .size	aesni_cbc_encrypt,.-.L_aesni_cbc_encrypt_begin
   2844 .type	_aesni_set_encrypt_key,@function
   2845 .align	16
   2846 _aesni_set_encrypt_key:
   2847 	pushl	%ebp
   2848 	pushl	%ebx
   2849 	testl	%eax,%eax
   2850 	jz	.L111bad_pointer
   2851 	testl	%edx,%edx
   2852 	jz	.L111bad_pointer
   2853 	call	.L112pic
   2854 .L112pic:
   2855 	popl	%ebx
   2856 	leal	.Lkey_const-.L112pic(%ebx),%ebx
   2857 	leal	OPENSSL_ia32cap_P-.Lkey_const(%ebx),%ebp
   2858 	movups	(%eax),%xmm0
   2859 	xorps	%xmm4,%xmm4
   2860 	movl	4(%ebp),%ebp
   2861 	leal	16(%edx),%edx
   2862 	andl	$268437504,%ebp
   2863 	cmpl	$256,%ecx
   2864 	je	.L11314rounds
   2865 	cmpl	$192,%ecx
   2866 	je	.L11412rounds
   2867 	cmpl	$128,%ecx
   2868 	jne	.L115bad_keybits
   2869 .align	16
   2870 .L11610rounds:
   2871 	cmpl	$268435456,%ebp
   2872 	je	.L11710rounds_alt
   2873 	movl	$9,%ecx
   2874 	movups	%xmm0,-16(%edx)
   2875 .byte	102,15,58,223,200,1
   2876 	call	.L118key_128_cold
   2877 .byte	102,15,58,223,200,2
   2878 	call	.L119key_128
   2879 .byte	102,15,58,223,200,4
   2880 	call	.L119key_128
   2881 .byte	102,15,58,223,200,8
   2882 	call	.L119key_128
   2883 .byte	102,15,58,223,200,16
   2884 	call	.L119key_128
   2885 .byte	102,15,58,223,200,32
   2886 	call	.L119key_128
   2887 .byte	102,15,58,223,200,64
   2888 	call	.L119key_128
   2889 .byte	102,15,58,223,200,128
   2890 	call	.L119key_128
   2891 .byte	102,15,58,223,200,27
   2892 	call	.L119key_128
   2893 .byte	102,15,58,223,200,54
   2894 	call	.L119key_128
   2895 	movups	%xmm0,(%edx)
   2896 	movl	%ecx,80(%edx)
   2897 	jmp	.L120good_key
   2898 .align	16
   2899 .L119key_128:
   2900 	movups	%xmm0,(%edx)
   2901 	leal	16(%edx),%edx
   2902 .L118key_128_cold:
   2903 	shufps	$16,%xmm0,%xmm4
   2904 	xorps	%xmm4,%xmm0
   2905 	shufps	$140,%xmm0,%xmm4
   2906 	xorps	%xmm4,%xmm0
   2907 	shufps	$255,%xmm1,%xmm1
   2908 	xorps	%xmm1,%xmm0
   2909 	ret
   2910 .align	16
   2911 .L11710rounds_alt:
   2912 	movdqa	(%ebx),%xmm5
   2913 	movl	$8,%ecx
   2914 	movdqa	32(%ebx),%xmm4
   2915 	movdqa	%xmm0,%xmm2
   2916 	movdqu	%xmm0,-16(%edx)
   2917 .L121loop_key128:
   2918 .byte	102,15,56,0,197
   2919 .byte	102,15,56,221,196
   2920 	pslld	$1,%xmm4
   2921 	leal	16(%edx),%edx
   2922 	movdqa	%xmm2,%xmm3
   2923 	pslldq	$4,%xmm2
   2924 	pxor	%xmm2,%xmm3
   2925 	pslldq	$4,%xmm2
   2926 	pxor	%xmm2,%xmm3
   2927 	pslldq	$4,%xmm2
   2928 	pxor	%xmm3,%xmm2
   2929 	pxor	%xmm2,%xmm0
   2930 	movdqu	%xmm0,-16(%edx)
   2931 	movdqa	%xmm0,%xmm2
   2932 	decl	%ecx
   2933 	jnz	.L121loop_key128
   2934 	movdqa	48(%ebx),%xmm4
   2935 .byte	102,15,56,0,197
   2936 .byte	102,15,56,221,196
   2937 	pslld	$1,%xmm4
   2938 	movdqa	%xmm2,%xmm3
   2939 	pslldq	$4,%xmm2
   2940 	pxor	%xmm2,%xmm3
   2941 	pslldq	$4,%xmm2
   2942 	pxor	%xmm2,%xmm3
   2943 	pslldq	$4,%xmm2
   2944 	pxor	%xmm3,%xmm2
   2945 	pxor	%xmm2,%xmm0
   2946 	movdqu	%xmm0,(%edx)
   2947 	movdqa	%xmm0,%xmm2
   2948 .byte	102,15,56,0,197
   2949 .byte	102,15,56,221,196
   2950 	movdqa	%xmm2,%xmm3
   2951 	pslldq	$4,%xmm2
   2952 	pxor	%xmm2,%xmm3
   2953 	pslldq	$4,%xmm2
   2954 	pxor	%xmm2,%xmm3
   2955 	pslldq	$4,%xmm2
   2956 	pxor	%xmm3,%xmm2
   2957 	pxor	%xmm2,%xmm0
   2958 	movdqu	%xmm0,16(%edx)
   2959 	movl	$9,%ecx
   2960 	movl	%ecx,96(%edx)
   2961 	jmp	.L120good_key
   2962 .align	16
   2963 .L11412rounds:
   2964 	movq	16(%eax),%xmm2
   2965 	cmpl	$268435456,%ebp
   2966 	je	.L12212rounds_alt
   2967 	movl	$11,%ecx
   2968 	movups	%xmm0,-16(%edx)
   2969 .byte	102,15,58,223,202,1
   2970 	call	.L123key_192a_cold
   2971 .byte	102,15,58,223,202,2
   2972 	call	.L124key_192b
   2973 .byte	102,15,58,223,202,4
   2974 	call	.L125key_192a
   2975 .byte	102,15,58,223,202,8
   2976 	call	.L124key_192b
   2977 .byte	102,15,58,223,202,16
   2978 	call	.L125key_192a
   2979 .byte	102,15,58,223,202,32
   2980 	call	.L124key_192b
   2981 .byte	102,15,58,223,202,64
   2982 	call	.L125key_192a
   2983 .byte	102,15,58,223,202,128
   2984 	call	.L124key_192b
   2985 	movups	%xmm0,(%edx)
   2986 	movl	%ecx,48(%edx)
   2987 	jmp	.L120good_key
   2988 .align	16
   2989 .L125key_192a:
   2990 	movups	%xmm0,(%edx)
   2991 	leal	16(%edx),%edx
   2992 .align	16
   2993 .L123key_192a_cold:
   2994 	movaps	%xmm2,%xmm5
   2995 .L126key_192b_warm:
   2996 	shufps	$16,%xmm0,%xmm4
   2997 	movdqa	%xmm2,%xmm3
   2998 	xorps	%xmm4,%xmm0
   2999 	shufps	$140,%xmm0,%xmm4
   3000 	pslldq	$4,%xmm3
   3001 	xorps	%xmm4,%xmm0
   3002 	pshufd	$85,%xmm1,%xmm1
   3003 	pxor	%xmm3,%xmm2
   3004 	pxor	%xmm1,%xmm0
   3005 	pshufd	$255,%xmm0,%xmm3
   3006 	pxor	%xmm3,%xmm2
   3007 	ret
   3008 .align	16
   3009 .L124key_192b:
   3010 	movaps	%xmm0,%xmm3
   3011 	shufps	$68,%xmm0,%xmm5
   3012 	movups	%xmm5,(%edx)
   3013 	shufps	$78,%xmm2,%xmm3
   3014 	movups	%xmm3,16(%edx)
   3015 	leal	32(%edx),%edx
   3016 	jmp	.L126key_192b_warm
   3017 .align	16
   3018 .L12212rounds_alt:
   3019 	movdqa	16(%ebx),%xmm5
   3020 	movdqa	32(%ebx),%xmm4
   3021 	movl	$8,%ecx
   3022 	movdqu	%xmm0,-16(%edx)
   3023 .L127loop_key192:
   3024 	movq	%xmm2,(%edx)
   3025 	movdqa	%xmm2,%xmm1
   3026 .byte	102,15,56,0,213
   3027 .byte	102,15,56,221,212
   3028 	pslld	$1,%xmm4
   3029 	leal	24(%edx),%edx
   3030 	movdqa	%xmm0,%xmm3
   3031 	pslldq	$4,%xmm0
   3032 	pxor	%xmm0,%xmm3
   3033 	pslldq	$4,%xmm0
   3034 	pxor	%xmm0,%xmm3
   3035 	pslldq	$4,%xmm0
   3036 	pxor	%xmm3,%xmm0
   3037 	pshufd	$255,%xmm0,%xmm3
   3038 	pxor	%xmm1,%xmm3
   3039 	pslldq	$4,%xmm1
   3040 	pxor	%xmm1,%xmm3
   3041 	pxor	%xmm2,%xmm0
   3042 	pxor	%xmm3,%xmm2
   3043 	movdqu	%xmm0,-16(%edx)
   3044 	decl	%ecx
   3045 	jnz	.L127loop_key192
   3046 	movl	$11,%ecx
   3047 	movl	%ecx,32(%edx)
   3048 	jmp	.L120good_key
   3049 .align	16
   3050 .L11314rounds:
   3051 	movups	16(%eax),%xmm2
   3052 	leal	16(%edx),%edx
   3053 	cmpl	$268435456,%ebp
   3054 	je	.L12814rounds_alt
   3055 	movl	$13,%ecx
   3056 	movups	%xmm0,-32(%edx)
   3057 	movups	%xmm2,-16(%edx)
   3058 .byte	102,15,58,223,202,1
   3059 	call	.L129key_256a_cold
   3060 .byte	102,15,58,223,200,1
   3061 	call	.L130key_256b
   3062 .byte	102,15,58,223,202,2
   3063 	call	.L131key_256a
   3064 .byte	102,15,58,223,200,2
   3065 	call	.L130key_256b
   3066 .byte	102,15,58,223,202,4
   3067 	call	.L131key_256a
   3068 .byte	102,15,58,223,200,4
   3069 	call	.L130key_256b
   3070 .byte	102,15,58,223,202,8
   3071 	call	.L131key_256a
   3072 .byte	102,15,58,223,200,8
   3073 	call	.L130key_256b
   3074 .byte	102,15,58,223,202,16
   3075 	call	.L131key_256a
   3076 .byte	102,15,58,223,200,16
   3077 	call	.L130key_256b
   3078 .byte	102,15,58,223,202,32
   3079 	call	.L131key_256a
   3080 .byte	102,15,58,223,200,32
   3081 	call	.L130key_256b
   3082 .byte	102,15,58,223,202,64
   3083 	call	.L131key_256a
   3084 	movups	%xmm0,(%edx)
   3085 	movl	%ecx,16(%edx)
   3086 	xorl	%eax,%eax
   3087 	jmp	.L120good_key
   3088 .align	16
   3089 .L131key_256a:
   3090 	movups	%xmm2,(%edx)
   3091 	leal	16(%edx),%edx
   3092 .L129key_256a_cold:
   3093 	shufps	$16,%xmm0,%xmm4
   3094 	xorps	%xmm4,%xmm0
   3095 	shufps	$140,%xmm0,%xmm4
   3096 	xorps	%xmm4,%xmm0
   3097 	shufps	$255,%xmm1,%xmm1
   3098 	xorps	%xmm1,%xmm0
   3099 	ret
   3100 .align	16
   3101 .L130key_256b:
   3102 	movups	%xmm0,(%edx)
   3103 	leal	16(%edx),%edx
   3104 	shufps	$16,%xmm2,%xmm4
   3105 	xorps	%xmm4,%xmm2
   3106 	shufps	$140,%xmm2,%xmm4
   3107 	xorps	%xmm4,%xmm2
   3108 	shufps	$170,%xmm1,%xmm1
   3109 	xorps	%xmm1,%xmm2
   3110 	ret
   3111 .align	16
   3112 .L12814rounds_alt:
   3113 	movdqa	(%ebx),%xmm5
   3114 	movdqa	32(%ebx),%xmm4
   3115 	movl	$7,%ecx
   3116 	movdqu	%xmm0,-32(%edx)
   3117 	movdqa	%xmm2,%xmm1
   3118 	movdqu	%xmm2,-16(%edx)
   3119 .L132loop_key256:
   3120 .byte	102,15,56,0,213
   3121 .byte	102,15,56,221,212
   3122 	movdqa	%xmm0,%xmm3
   3123 	pslldq	$4,%xmm0
   3124 	pxor	%xmm0,%xmm3
   3125 	pslldq	$4,%xmm0
   3126 	pxor	%xmm0,%xmm3
   3127 	pslldq	$4,%xmm0
   3128 	pxor	%xmm3,%xmm0
   3129 	pslld	$1,%xmm4
   3130 	pxor	%xmm2,%xmm0
   3131 	movdqu	%xmm0,(%edx)
   3132 	decl	%ecx
   3133 	jz	.L133done_key256
   3134 	pshufd	$255,%xmm0,%xmm2
   3135 	pxor	%xmm3,%xmm3
   3136 .byte	102,15,56,221,211
   3137 	movdqa	%xmm1,%xmm3
   3138 	pslldq	$4,%xmm1
   3139 	pxor	%xmm1,%xmm3
   3140 	pslldq	$4,%xmm1
   3141 	pxor	%xmm1,%xmm3
   3142 	pslldq	$4,%xmm1
   3143 	pxor	%xmm3,%xmm1
   3144 	pxor	%xmm1,%xmm2
   3145 	movdqu	%xmm2,16(%edx)
   3146 	leal	32(%edx),%edx
   3147 	movdqa	%xmm2,%xmm1
   3148 	jmp	.L132loop_key256
   3149 .L133done_key256:
   3150 	movl	$13,%ecx
   3151 	movl	%ecx,16(%edx)
   3152 .L120good_key:
   3153 	pxor	%xmm0,%xmm0
   3154 	pxor	%xmm1,%xmm1
   3155 	pxor	%xmm2,%xmm2
   3156 	pxor	%xmm3,%xmm3
   3157 	pxor	%xmm4,%xmm4
   3158 	pxor	%xmm5,%xmm5
   3159 	xorl	%eax,%eax
   3160 	popl	%ebx
   3161 	popl	%ebp
   3162 	ret
   3163 .align	4
   3164 .L111bad_pointer:
   3165 	movl	$-1,%eax
   3166 	popl	%ebx
   3167 	popl	%ebp
   3168 	ret
   3169 .align	4
   3170 .L115bad_keybits:
   3171 	pxor	%xmm0,%xmm0
   3172 	movl	$-2,%eax
   3173 	popl	%ebx
   3174 	popl	%ebp
   3175 	ret
   3176 .size	_aesni_set_encrypt_key,.-_aesni_set_encrypt_key
   3177 .globl	aesni_set_encrypt_key
   3178 .type	aesni_set_encrypt_key,@function
   3179 .align	16
   3180 aesni_set_encrypt_key:
   3181 .L_aesni_set_encrypt_key_begin:
   3182 	movl	4(%esp),%eax
   3183 	movl	8(%esp),%ecx
   3184 	movl	12(%esp),%edx
   3185 	call	_aesni_set_encrypt_key
   3186 	ret
   3187 .size	aesni_set_encrypt_key,.-.L_aesni_set_encrypt_key_begin
   3188 .globl	aesni_set_decrypt_key
   3189 .type	aesni_set_decrypt_key,@function
   3190 .align	16
   3191 aesni_set_decrypt_key:
   3192 .L_aesni_set_decrypt_key_begin:
   3193 	movl	4(%esp),%eax
   3194 	movl	8(%esp),%ecx
   3195 	movl	12(%esp),%edx
   3196 	call	_aesni_set_encrypt_key
   3197 	movl	12(%esp),%edx
   3198 	shll	$4,%ecx
   3199 	testl	%eax,%eax
   3200 	jnz	.L134dec_key_ret
   3201 	leal	16(%edx,%ecx,1),%eax
   3202 	movups	(%edx),%xmm0
   3203 	movups	(%eax),%xmm1
   3204 	movups	%xmm0,(%eax)
   3205 	movups	%xmm1,(%edx)
   3206 	leal	16(%edx),%edx
   3207 	leal	-16(%eax),%eax
   3208 .L135dec_key_inverse:
   3209 	movups	(%edx),%xmm0
   3210 	movups	(%eax),%xmm1
   3211 .byte	102,15,56,219,192
   3212 .byte	102,15,56,219,201
   3213 	leal	16(%edx),%edx
   3214 	leal	-16(%eax),%eax
   3215 	movups	%xmm0,16(%eax)
   3216 	movups	%xmm1,-16(%edx)
   3217 	cmpl	%edx,%eax
   3218 	ja	.L135dec_key_inverse
   3219 	movups	(%edx),%xmm0
   3220 .byte	102,15,56,219,192
   3221 	movups	%xmm0,(%edx)
   3222 	pxor	%xmm0,%xmm0
   3223 	pxor	%xmm1,%xmm1
   3224 	xorl	%eax,%eax
   3225 .L134dec_key_ret:
   3226 	ret
   3227 .size	aesni_set_decrypt_key,.-.L_aesni_set_decrypt_key_begin
   3228 .align	64
   3229 .Lkey_const:
   3230 .long	202313229,202313229,202313229,202313229
   3231 .long	67569157,67569157,67569157,67569157
   3232 .long	1,1,1,1
   3233 .long	27,27,27,27
   3234 .byte	65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69
   3235 .byte	83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83
   3236 .byte	32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115
   3237 .byte	115,108,46,111,114,103,62,0
   3238 .comm	OPENSSL_ia32cap_P,16,4
   3239