Home | History | Annotate | Download | only in fipsmodule
      1 #if defined(__x86_64__) && !defined(OPENSSL_NO_ASM)
      2 .text
      3 
      4 .p2align	4
      5 _x86_64_AES_encrypt:
      6 	xorl	0(%r15),%eax
      7 	xorl	4(%r15),%ebx
      8 	xorl	8(%r15),%ecx
      9 	xorl	12(%r15),%edx
     10 
     11 	movl	240(%r15),%r13d
     12 	subl	$1,%r13d
     13 	jmp	L$enc_loop
     14 .p2align	4
     15 L$enc_loop:
     16 
     17 	movzbl	%al,%esi
     18 	movzbl	%bl,%edi
     19 	movzbl	%cl,%ebp
     20 	movl	0(%r14,%rsi,8),%r10d
     21 	movl	0(%r14,%rdi,8),%r11d
     22 	movl	0(%r14,%rbp,8),%r12d
     23 
     24 	movzbl	%bh,%esi
     25 	movzbl	%ch,%edi
     26 	movzbl	%dl,%ebp
     27 	xorl	3(%r14,%rsi,8),%r10d
     28 	xorl	3(%r14,%rdi,8),%r11d
     29 	movl	0(%r14,%rbp,8),%r8d
     30 
     31 	movzbl	%dh,%esi
     32 	shrl	$16,%ecx
     33 	movzbl	%ah,%ebp
     34 	xorl	3(%r14,%rsi,8),%r12d
     35 	shrl	$16,%edx
     36 	xorl	3(%r14,%rbp,8),%r8d
     37 
     38 	shrl	$16,%ebx
     39 	leaq	16(%r15),%r15
     40 	shrl	$16,%eax
     41 
     42 	movzbl	%cl,%esi
     43 	movzbl	%dl,%edi
     44 	movzbl	%al,%ebp
     45 	xorl	2(%r14,%rsi,8),%r10d
     46 	xorl	2(%r14,%rdi,8),%r11d
     47 	xorl	2(%r14,%rbp,8),%r12d
     48 
     49 	movzbl	%dh,%esi
     50 	movzbl	%ah,%edi
     51 	movzbl	%bl,%ebp
     52 	xorl	1(%r14,%rsi,8),%r10d
     53 	xorl	1(%r14,%rdi,8),%r11d
     54 	xorl	2(%r14,%rbp,8),%r8d
     55 
     56 	movl	12(%r15),%edx
     57 	movzbl	%bh,%edi
     58 	movzbl	%ch,%ebp
     59 	movl	0(%r15),%eax
     60 	xorl	1(%r14,%rdi,8),%r12d
     61 	xorl	1(%r14,%rbp,8),%r8d
     62 
     63 	movl	4(%r15),%ebx
     64 	movl	8(%r15),%ecx
     65 	xorl	%r10d,%eax
     66 	xorl	%r11d,%ebx
     67 	xorl	%r12d,%ecx
     68 	xorl	%r8d,%edx
     69 	subl	$1,%r13d
     70 	jnz	L$enc_loop
     71 	movzbl	%al,%esi
     72 	movzbl	%bl,%edi
     73 	movzbl	%cl,%ebp
     74 	movzbl	2(%r14,%rsi,8),%r10d
     75 	movzbl	2(%r14,%rdi,8),%r11d
     76 	movzbl	2(%r14,%rbp,8),%r12d
     77 
     78 	movzbl	%dl,%esi
     79 	movzbl	%bh,%edi
     80 	movzbl	%ch,%ebp
     81 	movzbl	2(%r14,%rsi,8),%r8d
     82 	movl	0(%r14,%rdi,8),%edi
     83 	movl	0(%r14,%rbp,8),%ebp
     84 
     85 	andl	$0x0000ff00,%edi
     86 	andl	$0x0000ff00,%ebp
     87 
     88 	xorl	%edi,%r10d
     89 	xorl	%ebp,%r11d
     90 	shrl	$16,%ecx
     91 
     92 	movzbl	%dh,%esi
     93 	movzbl	%ah,%edi
     94 	shrl	$16,%edx
     95 	movl	0(%r14,%rsi,8),%esi
     96 	movl	0(%r14,%rdi,8),%edi
     97 
     98 	andl	$0x0000ff00,%esi
     99 	andl	$0x0000ff00,%edi
    100 	shrl	$16,%ebx
    101 	xorl	%esi,%r12d
    102 	xorl	%edi,%r8d
    103 	shrl	$16,%eax
    104 
    105 	movzbl	%cl,%esi
    106 	movzbl	%dl,%edi
    107 	movzbl	%al,%ebp
    108 	movl	0(%r14,%rsi,8),%esi
    109 	movl	0(%r14,%rdi,8),%edi
    110 	movl	0(%r14,%rbp,8),%ebp
    111 
    112 	andl	$0x00ff0000,%esi
    113 	andl	$0x00ff0000,%edi
    114 	andl	$0x00ff0000,%ebp
    115 
    116 	xorl	%esi,%r10d
    117 	xorl	%edi,%r11d
    118 	xorl	%ebp,%r12d
    119 
    120 	movzbl	%bl,%esi
    121 	movzbl	%dh,%edi
    122 	movzbl	%ah,%ebp
    123 	movl	0(%r14,%rsi,8),%esi
    124 	movl	2(%r14,%rdi,8),%edi
    125 	movl	2(%r14,%rbp,8),%ebp
    126 
    127 	andl	$0x00ff0000,%esi
    128 	andl	$0xff000000,%edi
    129 	andl	$0xff000000,%ebp
    130 
    131 	xorl	%esi,%r8d
    132 	xorl	%edi,%r10d
    133 	xorl	%ebp,%r11d
    134 
    135 	movzbl	%bh,%esi
    136 	movzbl	%ch,%edi
    137 	movl	16+12(%r15),%edx
    138 	movl	2(%r14,%rsi,8),%esi
    139 	movl	2(%r14,%rdi,8),%edi
    140 	movl	16+0(%r15),%eax
    141 
    142 	andl	$0xff000000,%esi
    143 	andl	$0xff000000,%edi
    144 
    145 	xorl	%esi,%r12d
    146 	xorl	%edi,%r8d
    147 
    148 	movl	16+4(%r15),%ebx
    149 	movl	16+8(%r15),%ecx
    150 	xorl	%r10d,%eax
    151 	xorl	%r11d,%ebx
    152 	xorl	%r12d,%ecx
    153 	xorl	%r8d,%edx
    154 .byte	0xf3,0xc3
    155 
    156 
    157 .p2align	4
    158 _x86_64_AES_encrypt_compact:
    159 	leaq	128(%r14),%r8
    160 	movl	0-128(%r8),%edi
    161 	movl	32-128(%r8),%ebp
    162 	movl	64-128(%r8),%r10d
    163 	movl	96-128(%r8),%r11d
    164 	movl	128-128(%r8),%edi
    165 	movl	160-128(%r8),%ebp
    166 	movl	192-128(%r8),%r10d
    167 	movl	224-128(%r8),%r11d
    168 	jmp	L$enc_loop_compact
    169 .p2align	4
    170 L$enc_loop_compact:
    171 	xorl	0(%r15),%eax
    172 	xorl	4(%r15),%ebx
    173 	xorl	8(%r15),%ecx
    174 	xorl	12(%r15),%edx
    175 	leaq	16(%r15),%r15
    176 	movzbl	%al,%r10d
    177 	movzbl	%bl,%r11d
    178 	movzbl	%cl,%r12d
    179 	movzbl	%dl,%r8d
    180 	movzbl	%bh,%esi
    181 	movzbl	%ch,%edi
    182 	shrl	$16,%ecx
    183 	movzbl	%dh,%ebp
    184 	movzbl	(%r14,%r10,1),%r10d
    185 	movzbl	(%r14,%r11,1),%r11d
    186 	movzbl	(%r14,%r12,1),%r12d
    187 	movzbl	(%r14,%r8,1),%r8d
    188 
    189 	movzbl	(%r14,%rsi,1),%r9d
    190 	movzbl	%ah,%esi
    191 	movzbl	(%r14,%rdi,1),%r13d
    192 	movzbl	%cl,%edi
    193 	movzbl	(%r14,%rbp,1),%ebp
    194 	movzbl	(%r14,%rsi,1),%esi
    195 
    196 	shll	$8,%r9d
    197 	shrl	$16,%edx
    198 	shll	$8,%r13d
    199 	xorl	%r9d,%r10d
    200 	shrl	$16,%eax
    201 	movzbl	%dl,%r9d
    202 	shrl	$16,%ebx
    203 	xorl	%r13d,%r11d
    204 	shll	$8,%ebp
    205 	movzbl	%al,%r13d
    206 	movzbl	(%r14,%rdi,1),%edi
    207 	xorl	%ebp,%r12d
    208 
    209 	shll	$8,%esi
    210 	movzbl	%bl,%ebp
    211 	shll	$16,%edi
    212 	xorl	%esi,%r8d
    213 	movzbl	(%r14,%r9,1),%r9d
    214 	movzbl	%dh,%esi
    215 	movzbl	(%r14,%r13,1),%r13d
    216 	xorl	%edi,%r10d
    217 
    218 	shrl	$8,%ecx
    219 	movzbl	%ah,%edi
    220 	shll	$16,%r9d
    221 	shrl	$8,%ebx
    222 	shll	$16,%r13d
    223 	xorl	%r9d,%r11d
    224 	movzbl	(%r14,%rbp,1),%ebp
    225 	movzbl	(%r14,%rsi,1),%esi
    226 	movzbl	(%r14,%rdi,1),%edi
    227 	movzbl	(%r14,%rcx,1),%edx
    228 	movzbl	(%r14,%rbx,1),%ecx
    229 
    230 	shll	$16,%ebp
    231 	xorl	%r13d,%r12d
    232 	shll	$24,%esi
    233 	xorl	%ebp,%r8d
    234 	shll	$24,%edi
    235 	xorl	%esi,%r10d
    236 	shll	$24,%edx
    237 	xorl	%edi,%r11d
    238 	shll	$24,%ecx
    239 	movl	%r10d,%eax
    240 	movl	%r11d,%ebx
    241 	xorl	%r12d,%ecx
    242 	xorl	%r8d,%edx
    243 	cmpq	16(%rsp),%r15
    244 	je	L$enc_compact_done
    245 	movl	$0x80808080,%r10d
    246 	movl	$0x80808080,%r11d
    247 	andl	%eax,%r10d
    248 	andl	%ebx,%r11d
    249 	movl	%r10d,%esi
    250 	movl	%r11d,%edi
    251 	shrl	$7,%r10d
    252 	leal	(%rax,%rax,1),%r8d
    253 	shrl	$7,%r11d
    254 	leal	(%rbx,%rbx,1),%r9d
    255 	subl	%r10d,%esi
    256 	subl	%r11d,%edi
    257 	andl	$0xfefefefe,%r8d
    258 	andl	$0xfefefefe,%r9d
    259 	andl	$0x1b1b1b1b,%esi
    260 	andl	$0x1b1b1b1b,%edi
    261 	movl	%eax,%r10d
    262 	movl	%ebx,%r11d
    263 	xorl	%esi,%r8d
    264 	xorl	%edi,%r9d
    265 
    266 	xorl	%r8d,%eax
    267 	xorl	%r9d,%ebx
    268 	movl	$0x80808080,%r12d
    269 	roll	$24,%eax
    270 	movl	$0x80808080,%ebp
    271 	roll	$24,%ebx
    272 	andl	%ecx,%r12d
    273 	andl	%edx,%ebp
    274 	xorl	%r8d,%eax
    275 	xorl	%r9d,%ebx
    276 	movl	%r12d,%esi
    277 	rorl	$16,%r10d
    278 	movl	%ebp,%edi
    279 	rorl	$16,%r11d
    280 	leal	(%rcx,%rcx,1),%r8d
    281 	shrl	$7,%r12d
    282 	xorl	%r10d,%eax
    283 	shrl	$7,%ebp
    284 	xorl	%r11d,%ebx
    285 	rorl	$8,%r10d
    286 	leal	(%rdx,%rdx,1),%r9d
    287 	rorl	$8,%r11d
    288 	subl	%r12d,%esi
    289 	subl	%ebp,%edi
    290 	xorl	%r10d,%eax
    291 	xorl	%r11d,%ebx
    292 
    293 	andl	$0xfefefefe,%r8d
    294 	andl	$0xfefefefe,%r9d
    295 	andl	$0x1b1b1b1b,%esi
    296 	andl	$0x1b1b1b1b,%edi
    297 	movl	%ecx,%r12d
    298 	movl	%edx,%ebp
    299 	xorl	%esi,%r8d
    300 	xorl	%edi,%r9d
    301 
    302 	rorl	$16,%r12d
    303 	xorl	%r8d,%ecx
    304 	rorl	$16,%ebp
    305 	xorl	%r9d,%edx
    306 	roll	$24,%ecx
    307 	movl	0(%r14),%esi
    308 	roll	$24,%edx
    309 	xorl	%r8d,%ecx
    310 	movl	64(%r14),%edi
    311 	xorl	%r9d,%edx
    312 	movl	128(%r14),%r8d
    313 	xorl	%r12d,%ecx
    314 	rorl	$8,%r12d
    315 	xorl	%ebp,%edx
    316 	rorl	$8,%ebp
    317 	xorl	%r12d,%ecx
    318 	movl	192(%r14),%r9d
    319 	xorl	%ebp,%edx
    320 	jmp	L$enc_loop_compact
    321 .p2align	4
    322 L$enc_compact_done:
    323 	xorl	0(%r15),%eax
    324 	xorl	4(%r15),%ebx
    325 	xorl	8(%r15),%ecx
    326 	xorl	12(%r15),%edx
    327 .byte	0xf3,0xc3
    328 
    329 .p2align	4
    330 .globl	_asm_AES_encrypt
    331 .private_extern _asm_AES_encrypt
    332 
    333 .private_extern	_asm_AES_encrypt
    334 _asm_AES_encrypt:
    335 	movq	%rsp,%rax
    336 	pushq	%rbx
    337 	pushq	%rbp
    338 	pushq	%r12
    339 	pushq	%r13
    340 	pushq	%r14
    341 	pushq	%r15
    342 
    343 
    344 	leaq	-63(%rdx),%rcx
    345 	andq	$-64,%rsp
    346 	subq	%rsp,%rcx
    347 	negq	%rcx
    348 	andq	$0x3c0,%rcx
    349 	subq	%rcx,%rsp
    350 	subq	$32,%rsp
    351 
    352 	movq	%rsi,16(%rsp)
    353 	movq	%rax,24(%rsp)
    354 L$enc_prologue:
    355 
    356 	movq	%rdx,%r15
    357 	movl	240(%r15),%r13d
    358 
    359 	movl	0(%rdi),%eax
    360 	movl	4(%rdi),%ebx
    361 	movl	8(%rdi),%ecx
    362 	movl	12(%rdi),%edx
    363 
    364 	shll	$4,%r13d
    365 	leaq	(%r15,%r13,1),%rbp
    366 	movq	%r15,(%rsp)
    367 	movq	%rbp,8(%rsp)
    368 
    369 
    370 	leaq	L$AES_Te+2048(%rip),%r14
    371 	leaq	768(%rsp),%rbp
    372 	subq	%r14,%rbp
    373 	andq	$0x300,%rbp
    374 	leaq	(%r14,%rbp,1),%r14
    375 
    376 	call	_x86_64_AES_encrypt_compact
    377 
    378 	movq	16(%rsp),%r9
    379 	movq	24(%rsp),%rsi
    380 	movl	%eax,0(%r9)
    381 	movl	%ebx,4(%r9)
    382 	movl	%ecx,8(%r9)
    383 	movl	%edx,12(%r9)
    384 
    385 	movq	-48(%rsi),%r15
    386 	movq	-40(%rsi),%r14
    387 	movq	-32(%rsi),%r13
    388 	movq	-24(%rsi),%r12
    389 	movq	-16(%rsi),%rbp
    390 	movq	-8(%rsi),%rbx
    391 	leaq	(%rsi),%rsp
    392 L$enc_epilogue:
    393 	.byte	0xf3,0xc3
    394 
    395 
    396 .p2align	4
    397 _x86_64_AES_decrypt:
    398 	xorl	0(%r15),%eax
    399 	xorl	4(%r15),%ebx
    400 	xorl	8(%r15),%ecx
    401 	xorl	12(%r15),%edx
    402 
    403 	movl	240(%r15),%r13d
    404 	subl	$1,%r13d
    405 	jmp	L$dec_loop
    406 .p2align	4
    407 L$dec_loop:
    408 
    409 	movzbl	%al,%esi
    410 	movzbl	%bl,%edi
    411 	movzbl	%cl,%ebp
    412 	movl	0(%r14,%rsi,8),%r10d
    413 	movl	0(%r14,%rdi,8),%r11d
    414 	movl	0(%r14,%rbp,8),%r12d
    415 
    416 	movzbl	%dh,%esi
    417 	movzbl	%ah,%edi
    418 	movzbl	%dl,%ebp
    419 	xorl	3(%r14,%rsi,8),%r10d
    420 	xorl	3(%r14,%rdi,8),%r11d
    421 	movl	0(%r14,%rbp,8),%r8d
    422 
    423 	movzbl	%bh,%esi
    424 	shrl	$16,%eax
    425 	movzbl	%ch,%ebp
    426 	xorl	3(%r14,%rsi,8),%r12d
    427 	shrl	$16,%edx
    428 	xorl	3(%r14,%rbp,8),%r8d
    429 
    430 	shrl	$16,%ebx
    431 	leaq	16(%r15),%r15
    432 	shrl	$16,%ecx
    433 
    434 	movzbl	%cl,%esi
    435 	movzbl	%dl,%edi
    436 	movzbl	%al,%ebp
    437 	xorl	2(%r14,%rsi,8),%r10d
    438 	xorl	2(%r14,%rdi,8),%r11d
    439 	xorl	2(%r14,%rbp,8),%r12d
    440 
    441 	movzbl	%bh,%esi
    442 	movzbl	%ch,%edi
    443 	movzbl	%bl,%ebp
    444 	xorl	1(%r14,%rsi,8),%r10d
    445 	xorl	1(%r14,%rdi,8),%r11d
    446 	xorl	2(%r14,%rbp,8),%r8d
    447 
    448 	movzbl	%dh,%esi
    449 	movl	12(%r15),%edx
    450 	movzbl	%ah,%ebp
    451 	xorl	1(%r14,%rsi,8),%r12d
    452 	movl	0(%r15),%eax
    453 	xorl	1(%r14,%rbp,8),%r8d
    454 
    455 	xorl	%r10d,%eax
    456 	movl	4(%r15),%ebx
    457 	movl	8(%r15),%ecx
    458 	xorl	%r12d,%ecx
    459 	xorl	%r11d,%ebx
    460 	xorl	%r8d,%edx
    461 	subl	$1,%r13d
    462 	jnz	L$dec_loop
    463 	leaq	2048(%r14),%r14
    464 	movzbl	%al,%esi
    465 	movzbl	%bl,%edi
    466 	movzbl	%cl,%ebp
    467 	movzbl	(%r14,%rsi,1),%r10d
    468 	movzbl	(%r14,%rdi,1),%r11d
    469 	movzbl	(%r14,%rbp,1),%r12d
    470 
    471 	movzbl	%dl,%esi
    472 	movzbl	%dh,%edi
    473 	movzbl	%ah,%ebp
    474 	movzbl	(%r14,%rsi,1),%r8d
    475 	movzbl	(%r14,%rdi,1),%edi
    476 	movzbl	(%r14,%rbp,1),%ebp
    477 
    478 	shll	$8,%edi
    479 	shll	$8,%ebp
    480 
    481 	xorl	%edi,%r10d
    482 	xorl	%ebp,%r11d
    483 	shrl	$16,%edx
    484 
    485 	movzbl	%bh,%esi
    486 	movzbl	%ch,%edi
    487 	shrl	$16,%eax
    488 	movzbl	(%r14,%rsi,1),%esi
    489 	movzbl	(%r14,%rdi,1),%edi
    490 
    491 	shll	$8,%esi
    492 	shll	$8,%edi
    493 	shrl	$16,%ebx
    494 	xorl	%esi,%r12d
    495 	xorl	%edi,%r8d
    496 	shrl	$16,%ecx
    497 
    498 	movzbl	%cl,%esi
    499 	movzbl	%dl,%edi
    500 	movzbl	%al,%ebp
    501 	movzbl	(%r14,%rsi,1),%esi
    502 	movzbl	(%r14,%rdi,1),%edi
    503 	movzbl	(%r14,%rbp,1),%ebp
    504 
    505 	shll	$16,%esi
    506 	shll	$16,%edi
    507 	shll	$16,%ebp
    508 
    509 	xorl	%esi,%r10d
    510 	xorl	%edi,%r11d
    511 	xorl	%ebp,%r12d
    512 
    513 	movzbl	%bl,%esi
    514 	movzbl	%bh,%edi
    515 	movzbl	%ch,%ebp
    516 	movzbl	(%r14,%rsi,1),%esi
    517 	movzbl	(%r14,%rdi,1),%edi
    518 	movzbl	(%r14,%rbp,1),%ebp
    519 
    520 	shll	$16,%esi
    521 	shll	$24,%edi
    522 	shll	$24,%ebp
    523 
    524 	xorl	%esi,%r8d
    525 	xorl	%edi,%r10d
    526 	xorl	%ebp,%r11d
    527 
    528 	movzbl	%dh,%esi
    529 	movzbl	%ah,%edi
    530 	movl	16+12(%r15),%edx
    531 	movzbl	(%r14,%rsi,1),%esi
    532 	movzbl	(%r14,%rdi,1),%edi
    533 	movl	16+0(%r15),%eax
    534 
    535 	shll	$24,%esi
    536 	shll	$24,%edi
    537 
    538 	xorl	%esi,%r12d
    539 	xorl	%edi,%r8d
    540 
    541 	movl	16+4(%r15),%ebx
    542 	movl	16+8(%r15),%ecx
    543 	leaq	-2048(%r14),%r14
    544 	xorl	%r10d,%eax
    545 	xorl	%r11d,%ebx
    546 	xorl	%r12d,%ecx
    547 	xorl	%r8d,%edx
    548 .byte	0xf3,0xc3
    549 
    550 
    551 .p2align	4
    552 _x86_64_AES_decrypt_compact:
    553 	leaq	128(%r14),%r8
    554 	movl	0-128(%r8),%edi
    555 	movl	32-128(%r8),%ebp
    556 	movl	64-128(%r8),%r10d
    557 	movl	96-128(%r8),%r11d
    558 	movl	128-128(%r8),%edi
    559 	movl	160-128(%r8),%ebp
    560 	movl	192-128(%r8),%r10d
    561 	movl	224-128(%r8),%r11d
    562 	jmp	L$dec_loop_compact
    563 
    564 .p2align	4
    565 L$dec_loop_compact:
    566 	xorl	0(%r15),%eax
    567 	xorl	4(%r15),%ebx
    568 	xorl	8(%r15),%ecx
    569 	xorl	12(%r15),%edx
    570 	leaq	16(%r15),%r15
    571 	movzbl	%al,%r10d
    572 	movzbl	%bl,%r11d
    573 	movzbl	%cl,%r12d
    574 	movzbl	%dl,%r8d
    575 	movzbl	%dh,%esi
    576 	movzbl	%ah,%edi
    577 	shrl	$16,%edx
    578 	movzbl	%bh,%ebp
    579 	movzbl	(%r14,%r10,1),%r10d
    580 	movzbl	(%r14,%r11,1),%r11d
    581 	movzbl	(%r14,%r12,1),%r12d
    582 	movzbl	(%r14,%r8,1),%r8d
    583 
    584 	movzbl	(%r14,%rsi,1),%r9d
    585 	movzbl	%ch,%esi
    586 	movzbl	(%r14,%rdi,1),%r13d
    587 	movzbl	(%r14,%rbp,1),%ebp
    588 	movzbl	(%r14,%rsi,1),%esi
    589 
    590 	shrl	$16,%ecx
    591 	shll	$8,%r13d
    592 	shll	$8,%r9d
    593 	movzbl	%cl,%edi
    594 	shrl	$16,%eax
    595 	xorl	%r9d,%r10d
    596 	shrl	$16,%ebx
    597 	movzbl	%dl,%r9d
    598 
    599 	shll	$8,%ebp
    600 	xorl	%r13d,%r11d
    601 	shll	$8,%esi
    602 	movzbl	%al,%r13d
    603 	movzbl	(%r14,%rdi,1),%edi
    604 	xorl	%ebp,%r12d
    605 	movzbl	%bl,%ebp
    606 
    607 	shll	$16,%edi
    608 	xorl	%esi,%r8d
    609 	movzbl	(%r14,%r9,1),%r9d
    610 	movzbl	%bh,%esi
    611 	movzbl	(%r14,%rbp,1),%ebp
    612 	xorl	%edi,%r10d
    613 	movzbl	(%r14,%r13,1),%r13d
    614 	movzbl	%ch,%edi
    615 
    616 	shll	$16,%ebp
    617 	shll	$16,%r9d
    618 	shll	$16,%r13d
    619 	xorl	%ebp,%r8d
    620 	movzbl	%dh,%ebp
    621 	xorl	%r9d,%r11d
    622 	shrl	$8,%eax
    623 	xorl	%r13d,%r12d
    624 
    625 	movzbl	(%r14,%rsi,1),%esi
    626 	movzbl	(%r14,%rdi,1),%ebx
    627 	movzbl	(%r14,%rbp,1),%ecx
    628 	movzbl	(%r14,%rax,1),%edx
    629 
    630 	movl	%r10d,%eax
    631 	shll	$24,%esi
    632 	shll	$24,%ebx
    633 	shll	$24,%ecx
    634 	xorl	%esi,%eax
    635 	shll	$24,%edx
    636 	xorl	%r11d,%ebx
    637 	xorl	%r12d,%ecx
    638 	xorl	%r8d,%edx
    639 	cmpq	16(%rsp),%r15
    640 	je	L$dec_compact_done
    641 
    642 	movq	256+0(%r14),%rsi
    643 	shlq	$32,%rbx
    644 	shlq	$32,%rdx
    645 	movq	256+8(%r14),%rdi
    646 	orq	%rbx,%rax
    647 	orq	%rdx,%rcx
    648 	movq	256+16(%r14),%rbp
    649 	movq	%rsi,%r9
    650 	movq	%rsi,%r12
    651 	andq	%rax,%r9
    652 	andq	%rcx,%r12
    653 	movq	%r9,%rbx
    654 	movq	%r12,%rdx
    655 	shrq	$7,%r9
    656 	leaq	(%rax,%rax,1),%r8
    657 	shrq	$7,%r12
    658 	leaq	(%rcx,%rcx,1),%r11
    659 	subq	%r9,%rbx
    660 	subq	%r12,%rdx
    661 	andq	%rdi,%r8
    662 	andq	%rdi,%r11
    663 	andq	%rbp,%rbx
    664 	andq	%rbp,%rdx
    665 	xorq	%rbx,%r8
    666 	xorq	%rdx,%r11
    667 	movq	%rsi,%r10
    668 	movq	%rsi,%r13
    669 
    670 	andq	%r8,%r10
    671 	andq	%r11,%r13
    672 	movq	%r10,%rbx
    673 	movq	%r13,%rdx
    674 	shrq	$7,%r10
    675 	leaq	(%r8,%r8,1),%r9
    676 	shrq	$7,%r13
    677 	leaq	(%r11,%r11,1),%r12
    678 	subq	%r10,%rbx
    679 	subq	%r13,%rdx
    680 	andq	%rdi,%r9
    681 	andq	%rdi,%r12
    682 	andq	%rbp,%rbx
    683 	andq	%rbp,%rdx
    684 	xorq	%rbx,%r9
    685 	xorq	%rdx,%r12
    686 	movq	%rsi,%r10
    687 	movq	%rsi,%r13
    688 
    689 	andq	%r9,%r10
    690 	andq	%r12,%r13
    691 	movq	%r10,%rbx
    692 	movq	%r13,%rdx
    693 	shrq	$7,%r10
    694 	xorq	%rax,%r8
    695 	shrq	$7,%r13
    696 	xorq	%rcx,%r11
    697 	subq	%r10,%rbx
    698 	subq	%r13,%rdx
    699 	leaq	(%r9,%r9,1),%r10
    700 	leaq	(%r12,%r12,1),%r13
    701 	xorq	%rax,%r9
    702 	xorq	%rcx,%r12
    703 	andq	%rdi,%r10
    704 	andq	%rdi,%r13
    705 	andq	%rbp,%rbx
    706 	andq	%rbp,%rdx
    707 	xorq	%rbx,%r10
    708 	xorq	%rdx,%r13
    709 
    710 	xorq	%r10,%rax
    711 	xorq	%r13,%rcx
    712 	xorq	%r10,%r8
    713 	xorq	%r13,%r11
    714 	movq	%rax,%rbx
    715 	movq	%rcx,%rdx
    716 	xorq	%r10,%r9
    717 	shrq	$32,%rbx
    718 	xorq	%r13,%r12
    719 	shrq	$32,%rdx
    720 	xorq	%r8,%r10
    721 	roll	$8,%eax
    722 	xorq	%r11,%r13
    723 	roll	$8,%ecx
    724 	xorq	%r9,%r10
    725 	roll	$8,%ebx
    726 	xorq	%r12,%r13
    727 
    728 	roll	$8,%edx
    729 	xorl	%r10d,%eax
    730 	shrq	$32,%r10
    731 	xorl	%r13d,%ecx
    732 	shrq	$32,%r13
    733 	xorl	%r10d,%ebx
    734 	xorl	%r13d,%edx
    735 
    736 	movq	%r8,%r10
    737 	roll	$24,%r8d
    738 	movq	%r11,%r13
    739 	roll	$24,%r11d
    740 	shrq	$32,%r10
    741 	xorl	%r8d,%eax
    742 	shrq	$32,%r13
    743 	xorl	%r11d,%ecx
    744 	roll	$24,%r10d
    745 	movq	%r9,%r8
    746 	roll	$24,%r13d
    747 	movq	%r12,%r11
    748 	shrq	$32,%r8
    749 	xorl	%r10d,%ebx
    750 	shrq	$32,%r11
    751 	xorl	%r13d,%edx
    752 
    753 	movq	0(%r14),%rsi
    754 	roll	$16,%r9d
    755 	movq	64(%r14),%rdi
    756 	roll	$16,%r12d
    757 	movq	128(%r14),%rbp
    758 	roll	$16,%r8d
    759 	movq	192(%r14),%r10
    760 	xorl	%r9d,%eax
    761 	roll	$16,%r11d
    762 	xorl	%r12d,%ecx
    763 	movq	256(%r14),%r13
    764 	xorl	%r8d,%ebx
    765 	xorl	%r11d,%edx
    766 	jmp	L$dec_loop_compact
    767 .p2align	4
    768 L$dec_compact_done:
    769 	xorl	0(%r15),%eax
    770 	xorl	4(%r15),%ebx
    771 	xorl	8(%r15),%ecx
    772 	xorl	12(%r15),%edx
    773 .byte	0xf3,0xc3
    774 
    775 .p2align	4
    776 .globl	_asm_AES_decrypt
    777 .private_extern _asm_AES_decrypt
    778 
    779 .private_extern	_asm_AES_decrypt
    780 _asm_AES_decrypt:
    781 	movq	%rsp,%rax
    782 	pushq	%rbx
    783 	pushq	%rbp
    784 	pushq	%r12
    785 	pushq	%r13
    786 	pushq	%r14
    787 	pushq	%r15
    788 
    789 
    790 	leaq	-63(%rdx),%rcx
    791 	andq	$-64,%rsp
    792 	subq	%rsp,%rcx
    793 	negq	%rcx
    794 	andq	$0x3c0,%rcx
    795 	subq	%rcx,%rsp
    796 	subq	$32,%rsp
    797 
    798 	movq	%rsi,16(%rsp)
    799 	movq	%rax,24(%rsp)
    800 L$dec_prologue:
    801 
    802 	movq	%rdx,%r15
    803 	movl	240(%r15),%r13d
    804 
    805 	movl	0(%rdi),%eax
    806 	movl	4(%rdi),%ebx
    807 	movl	8(%rdi),%ecx
    808 	movl	12(%rdi),%edx
    809 
    810 	shll	$4,%r13d
    811 	leaq	(%r15,%r13,1),%rbp
    812 	movq	%r15,(%rsp)
    813 	movq	%rbp,8(%rsp)
    814 
    815 
    816 	leaq	L$AES_Td+2048(%rip),%r14
    817 	leaq	768(%rsp),%rbp
    818 	subq	%r14,%rbp
    819 	andq	$0x300,%rbp
    820 	leaq	(%r14,%rbp,1),%r14
    821 	shrq	$3,%rbp
    822 	addq	%rbp,%r14
    823 
    824 	call	_x86_64_AES_decrypt_compact
    825 
    826 	movq	16(%rsp),%r9
    827 	movq	24(%rsp),%rsi
    828 	movl	%eax,0(%r9)
    829 	movl	%ebx,4(%r9)
    830 	movl	%ecx,8(%r9)
    831 	movl	%edx,12(%r9)
    832 
    833 	movq	-48(%rsi),%r15
    834 	movq	-40(%rsi),%r14
    835 	movq	-32(%rsi),%r13
    836 	movq	-24(%rsi),%r12
    837 	movq	-16(%rsi),%rbp
    838 	movq	-8(%rsi),%rbx
    839 	leaq	(%rsi),%rsp
    840 L$dec_epilogue:
    841 	.byte	0xf3,0xc3
    842 
    843 .p2align	4
    844 .globl	_asm_AES_set_encrypt_key
    845 .private_extern _asm_AES_set_encrypt_key
    846 
    847 _asm_AES_set_encrypt_key:
    848 	pushq	%rbx
    849 	pushq	%rbp
    850 	pushq	%r12
    851 	pushq	%r13
    852 	pushq	%r14
    853 	pushq	%r15
    854 	subq	$8,%rsp
    855 L$enc_key_prologue:
    856 
    857 	call	_x86_64_AES_set_encrypt_key
    858 
    859 	movq	40(%rsp),%rbp
    860 	movq	48(%rsp),%rbx
    861 	addq	$56,%rsp
    862 L$enc_key_epilogue:
    863 	.byte	0xf3,0xc3
    864 
    865 
    866 
    867 .p2align	4
    868 _x86_64_AES_set_encrypt_key:
    869 	movl	%esi,%ecx
    870 	movq	%rdi,%rsi
    871 	movq	%rdx,%rdi
    872 
    873 	testq	$-1,%rsi
    874 	jz	L$badpointer
    875 	testq	$-1,%rdi
    876 	jz	L$badpointer
    877 
    878 	leaq	L$AES_Te(%rip),%rbp
    879 	leaq	2048+128(%rbp),%rbp
    880 
    881 
    882 	movl	0-128(%rbp),%eax
    883 	movl	32-128(%rbp),%ebx
    884 	movl	64-128(%rbp),%r8d
    885 	movl	96-128(%rbp),%edx
    886 	movl	128-128(%rbp),%eax
    887 	movl	160-128(%rbp),%ebx
    888 	movl	192-128(%rbp),%r8d
    889 	movl	224-128(%rbp),%edx
    890 
    891 	cmpl	$128,%ecx
    892 	je	L$10rounds
    893 	cmpl	$192,%ecx
    894 	je	L$12rounds
    895 	cmpl	$256,%ecx
    896 	je	L$14rounds
    897 	movq	$-2,%rax
    898 	jmp	L$exit
    899 
    900 L$10rounds:
    901 	movq	0(%rsi),%rax
    902 	movq	8(%rsi),%rdx
    903 	movq	%rax,0(%rdi)
    904 	movq	%rdx,8(%rdi)
    905 
    906 	shrq	$32,%rdx
    907 	xorl	%ecx,%ecx
    908 	jmp	L$10shortcut
    909 .p2align	2
    910 L$10loop:
    911 	movl	0(%rdi),%eax
    912 	movl	12(%rdi),%edx
    913 L$10shortcut:
    914 	movzbl	%dl,%esi
    915 	movzbl	-128(%rbp,%rsi,1),%ebx
    916 	movzbl	%dh,%esi
    917 	shll	$24,%ebx
    918 	xorl	%ebx,%eax
    919 
    920 	movzbl	-128(%rbp,%rsi,1),%ebx
    921 	shrl	$16,%edx
    922 	movzbl	%dl,%esi
    923 	xorl	%ebx,%eax
    924 
    925 	movzbl	-128(%rbp,%rsi,1),%ebx
    926 	movzbl	%dh,%esi
    927 	shll	$8,%ebx
    928 	xorl	%ebx,%eax
    929 
    930 	movzbl	-128(%rbp,%rsi,1),%ebx
    931 	shll	$16,%ebx
    932 	xorl	%ebx,%eax
    933 
    934 	xorl	1024-128(%rbp,%rcx,4),%eax
    935 	movl	%eax,16(%rdi)
    936 	xorl	4(%rdi),%eax
    937 	movl	%eax,20(%rdi)
    938 	xorl	8(%rdi),%eax
    939 	movl	%eax,24(%rdi)
    940 	xorl	12(%rdi),%eax
    941 	movl	%eax,28(%rdi)
    942 	addl	$1,%ecx
    943 	leaq	16(%rdi),%rdi
    944 	cmpl	$10,%ecx
    945 	jl	L$10loop
    946 
    947 	movl	$10,80(%rdi)
    948 	xorq	%rax,%rax
    949 	jmp	L$exit
    950 
    951 L$12rounds:
    952 	movq	0(%rsi),%rax
    953 	movq	8(%rsi),%rbx
    954 	movq	16(%rsi),%rdx
    955 	movq	%rax,0(%rdi)
    956 	movq	%rbx,8(%rdi)
    957 	movq	%rdx,16(%rdi)
    958 
    959 	shrq	$32,%rdx
    960 	xorl	%ecx,%ecx
    961 	jmp	L$12shortcut
    962 .p2align	2
    963 L$12loop:
    964 	movl	0(%rdi),%eax
    965 	movl	20(%rdi),%edx
    966 L$12shortcut:
    967 	movzbl	%dl,%esi
    968 	movzbl	-128(%rbp,%rsi,1),%ebx
    969 	movzbl	%dh,%esi
    970 	shll	$24,%ebx
    971 	xorl	%ebx,%eax
    972 
    973 	movzbl	-128(%rbp,%rsi,1),%ebx
    974 	shrl	$16,%edx
    975 	movzbl	%dl,%esi
    976 	xorl	%ebx,%eax
    977 
    978 	movzbl	-128(%rbp,%rsi,1),%ebx
    979 	movzbl	%dh,%esi
    980 	shll	$8,%ebx
    981 	xorl	%ebx,%eax
    982 
    983 	movzbl	-128(%rbp,%rsi,1),%ebx
    984 	shll	$16,%ebx
    985 	xorl	%ebx,%eax
    986 
    987 	xorl	1024-128(%rbp,%rcx,4),%eax
    988 	movl	%eax,24(%rdi)
    989 	xorl	4(%rdi),%eax
    990 	movl	%eax,28(%rdi)
    991 	xorl	8(%rdi),%eax
    992 	movl	%eax,32(%rdi)
    993 	xorl	12(%rdi),%eax
    994 	movl	%eax,36(%rdi)
    995 
    996 	cmpl	$7,%ecx
    997 	je	L$12break
    998 	addl	$1,%ecx
    999 
   1000 	xorl	16(%rdi),%eax
   1001 	movl	%eax,40(%rdi)
   1002 	xorl	20(%rdi),%eax
   1003 	movl	%eax,44(%rdi)
   1004 
   1005 	leaq	24(%rdi),%rdi
   1006 	jmp	L$12loop
   1007 L$12break:
   1008 	movl	$12,72(%rdi)
   1009 	xorq	%rax,%rax
   1010 	jmp	L$exit
   1011 
   1012 L$14rounds:
   1013 	movq	0(%rsi),%rax
   1014 	movq	8(%rsi),%rbx
   1015 	movq	16(%rsi),%rcx
   1016 	movq	24(%rsi),%rdx
   1017 	movq	%rax,0(%rdi)
   1018 	movq	%rbx,8(%rdi)
   1019 	movq	%rcx,16(%rdi)
   1020 	movq	%rdx,24(%rdi)
   1021 
   1022 	shrq	$32,%rdx
   1023 	xorl	%ecx,%ecx
   1024 	jmp	L$14shortcut
   1025 .p2align	2
   1026 L$14loop:
   1027 	movl	0(%rdi),%eax
   1028 	movl	28(%rdi),%edx
   1029 L$14shortcut:
   1030 	movzbl	%dl,%esi
   1031 	movzbl	-128(%rbp,%rsi,1),%ebx
   1032 	movzbl	%dh,%esi
   1033 	shll	$24,%ebx
   1034 	xorl	%ebx,%eax
   1035 
   1036 	movzbl	-128(%rbp,%rsi,1),%ebx
   1037 	shrl	$16,%edx
   1038 	movzbl	%dl,%esi
   1039 	xorl	%ebx,%eax
   1040 
   1041 	movzbl	-128(%rbp,%rsi,1),%ebx
   1042 	movzbl	%dh,%esi
   1043 	shll	$8,%ebx
   1044 	xorl	%ebx,%eax
   1045 
   1046 	movzbl	-128(%rbp,%rsi,1),%ebx
   1047 	shll	$16,%ebx
   1048 	xorl	%ebx,%eax
   1049 
   1050 	xorl	1024-128(%rbp,%rcx,4),%eax
   1051 	movl	%eax,32(%rdi)
   1052 	xorl	4(%rdi),%eax
   1053 	movl	%eax,36(%rdi)
   1054 	xorl	8(%rdi),%eax
   1055 	movl	%eax,40(%rdi)
   1056 	xorl	12(%rdi),%eax
   1057 	movl	%eax,44(%rdi)
   1058 
   1059 	cmpl	$6,%ecx
   1060 	je	L$14break
   1061 	addl	$1,%ecx
   1062 
   1063 	movl	%eax,%edx
   1064 	movl	16(%rdi),%eax
   1065 	movzbl	%dl,%esi
   1066 	movzbl	-128(%rbp,%rsi,1),%ebx
   1067 	movzbl	%dh,%esi
   1068 	xorl	%ebx,%eax
   1069 
   1070 	movzbl	-128(%rbp,%rsi,1),%ebx
   1071 	shrl	$16,%edx
   1072 	shll	$8,%ebx
   1073 	movzbl	%dl,%esi
   1074 	xorl	%ebx,%eax
   1075 
   1076 	movzbl	-128(%rbp,%rsi,1),%ebx
   1077 	movzbl	%dh,%esi
   1078 	shll	$16,%ebx
   1079 	xorl	%ebx,%eax
   1080 
   1081 	movzbl	-128(%rbp,%rsi,1),%ebx
   1082 	shll	$24,%ebx
   1083 	xorl	%ebx,%eax
   1084 
   1085 	movl	%eax,48(%rdi)
   1086 	xorl	20(%rdi),%eax
   1087 	movl	%eax,52(%rdi)
   1088 	xorl	24(%rdi),%eax
   1089 	movl	%eax,56(%rdi)
   1090 	xorl	28(%rdi),%eax
   1091 	movl	%eax,60(%rdi)
   1092 
   1093 	leaq	32(%rdi),%rdi
   1094 	jmp	L$14loop
   1095 L$14break:
   1096 	movl	$14,48(%rdi)
   1097 	xorq	%rax,%rax
   1098 	jmp	L$exit
   1099 
   1100 L$badpointer:
   1101 	movq	$-1,%rax
   1102 L$exit:
   1103 .byte	0xf3,0xc3
   1104 
   1105 .p2align	4
   1106 .globl	_asm_AES_set_decrypt_key
   1107 .private_extern _asm_AES_set_decrypt_key
   1108 
   1109 _asm_AES_set_decrypt_key:
   1110 	pushq	%rbx
   1111 	pushq	%rbp
   1112 	pushq	%r12
   1113 	pushq	%r13
   1114 	pushq	%r14
   1115 	pushq	%r15
   1116 	pushq	%rdx
   1117 L$dec_key_prologue:
   1118 
   1119 	call	_x86_64_AES_set_encrypt_key
   1120 	movq	(%rsp),%r8
   1121 	cmpl	$0,%eax
   1122 	jne	L$abort
   1123 
   1124 	movl	240(%r8),%r14d
   1125 	xorq	%rdi,%rdi
   1126 	leaq	(%rdi,%r14,4),%rcx
   1127 	movq	%r8,%rsi
   1128 	leaq	(%r8,%rcx,4),%rdi
   1129 .p2align	2
   1130 L$invert:
   1131 	movq	0(%rsi),%rax
   1132 	movq	8(%rsi),%rbx
   1133 	movq	0(%rdi),%rcx
   1134 	movq	8(%rdi),%rdx
   1135 	movq	%rax,0(%rdi)
   1136 	movq	%rbx,8(%rdi)
   1137 	movq	%rcx,0(%rsi)
   1138 	movq	%rdx,8(%rsi)
   1139 	leaq	16(%rsi),%rsi
   1140 	leaq	-16(%rdi),%rdi
   1141 	cmpq	%rsi,%rdi
   1142 	jne	L$invert
   1143 
   1144 	leaq	L$AES_Te+2048+1024(%rip),%rax
   1145 
   1146 	movq	40(%rax),%rsi
   1147 	movq	48(%rax),%rdi
   1148 	movq	56(%rax),%rbp
   1149 
   1150 	movq	%r8,%r15
   1151 	subl	$1,%r14d
   1152 .p2align	2
   1153 L$permute:
   1154 	leaq	16(%r15),%r15
   1155 	movq	0(%r15),%rax
   1156 	movq	8(%r15),%rcx
   1157 	movq	%rsi,%r9
   1158 	movq	%rsi,%r12
   1159 	andq	%rax,%r9
   1160 	andq	%rcx,%r12
   1161 	movq	%r9,%rbx
   1162 	movq	%r12,%rdx
   1163 	shrq	$7,%r9
   1164 	leaq	(%rax,%rax,1),%r8
   1165 	shrq	$7,%r12
   1166 	leaq	(%rcx,%rcx,1),%r11
   1167 	subq	%r9,%rbx
   1168 	subq	%r12,%rdx
   1169 	andq	%rdi,%r8
   1170 	andq	%rdi,%r11
   1171 	andq	%rbp,%rbx
   1172 	andq	%rbp,%rdx
   1173 	xorq	%rbx,%r8
   1174 	xorq	%rdx,%r11
   1175 	movq	%rsi,%r10
   1176 	movq	%rsi,%r13
   1177 
   1178 	andq	%r8,%r10
   1179 	andq	%r11,%r13
   1180 	movq	%r10,%rbx
   1181 	movq	%r13,%rdx
   1182 	shrq	$7,%r10
   1183 	leaq	(%r8,%r8,1),%r9
   1184 	shrq	$7,%r13
   1185 	leaq	(%r11,%r11,1),%r12
   1186 	subq	%r10,%rbx
   1187 	subq	%r13,%rdx
   1188 	andq	%rdi,%r9
   1189 	andq	%rdi,%r12
   1190 	andq	%rbp,%rbx
   1191 	andq	%rbp,%rdx
   1192 	xorq	%rbx,%r9
   1193 	xorq	%rdx,%r12
   1194 	movq	%rsi,%r10
   1195 	movq	%rsi,%r13
   1196 
   1197 	andq	%r9,%r10
   1198 	andq	%r12,%r13
   1199 	movq	%r10,%rbx
   1200 	movq	%r13,%rdx
   1201 	shrq	$7,%r10
   1202 	xorq	%rax,%r8
   1203 	shrq	$7,%r13
   1204 	xorq	%rcx,%r11
   1205 	subq	%r10,%rbx
   1206 	subq	%r13,%rdx
   1207 	leaq	(%r9,%r9,1),%r10
   1208 	leaq	(%r12,%r12,1),%r13
   1209 	xorq	%rax,%r9
   1210 	xorq	%rcx,%r12
   1211 	andq	%rdi,%r10
   1212 	andq	%rdi,%r13
   1213 	andq	%rbp,%rbx
   1214 	andq	%rbp,%rdx
   1215 	xorq	%rbx,%r10
   1216 	xorq	%rdx,%r13
   1217 
   1218 	xorq	%r10,%rax
   1219 	xorq	%r13,%rcx
   1220 	xorq	%r10,%r8
   1221 	xorq	%r13,%r11
   1222 	movq	%rax,%rbx
   1223 	movq	%rcx,%rdx
   1224 	xorq	%r10,%r9
   1225 	shrq	$32,%rbx
   1226 	xorq	%r13,%r12
   1227 	shrq	$32,%rdx
   1228 	xorq	%r8,%r10
   1229 	roll	$8,%eax
   1230 	xorq	%r11,%r13
   1231 	roll	$8,%ecx
   1232 	xorq	%r9,%r10
   1233 	roll	$8,%ebx
   1234 	xorq	%r12,%r13
   1235 
   1236 	roll	$8,%edx
   1237 	xorl	%r10d,%eax
   1238 	shrq	$32,%r10
   1239 	xorl	%r13d,%ecx
   1240 	shrq	$32,%r13
   1241 	xorl	%r10d,%ebx
   1242 	xorl	%r13d,%edx
   1243 
   1244 	movq	%r8,%r10
   1245 	roll	$24,%r8d
   1246 	movq	%r11,%r13
   1247 	roll	$24,%r11d
   1248 	shrq	$32,%r10
   1249 	xorl	%r8d,%eax
   1250 	shrq	$32,%r13
   1251 	xorl	%r11d,%ecx
   1252 	roll	$24,%r10d
   1253 	movq	%r9,%r8
   1254 	roll	$24,%r13d
   1255 	movq	%r12,%r11
   1256 	shrq	$32,%r8
   1257 	xorl	%r10d,%ebx
   1258 	shrq	$32,%r11
   1259 	xorl	%r13d,%edx
   1260 
   1261 
   1262 	roll	$16,%r9d
   1263 
   1264 	roll	$16,%r12d
   1265 
   1266 	roll	$16,%r8d
   1267 
   1268 	xorl	%r9d,%eax
   1269 	roll	$16,%r11d
   1270 	xorl	%r12d,%ecx
   1271 
   1272 	xorl	%r8d,%ebx
   1273 	xorl	%r11d,%edx
   1274 	movl	%eax,0(%r15)
   1275 	movl	%ebx,4(%r15)
   1276 	movl	%ecx,8(%r15)
   1277 	movl	%edx,12(%r15)
   1278 	subl	$1,%r14d
   1279 	jnz	L$permute
   1280 
   1281 	xorq	%rax,%rax
   1282 L$abort:
   1283 	movq	8(%rsp),%r15
   1284 	movq	16(%rsp),%r14
   1285 	movq	24(%rsp),%r13
   1286 	movq	32(%rsp),%r12
   1287 	movq	40(%rsp),%rbp
   1288 	movq	48(%rsp),%rbx
   1289 	addq	$56,%rsp
   1290 L$dec_key_epilogue:
   1291 	.byte	0xf3,0xc3
   1292 
   1293 .p2align	4
   1294 .globl	_asm_AES_cbc_encrypt
   1295 .private_extern _asm_AES_cbc_encrypt
   1296 
   1297 
   1298 .private_extern	_asm_AES_cbc_encrypt
   1299 _asm_AES_cbc_encrypt:
   1300 	cmpq	$0,%rdx
   1301 	je	L$cbc_epilogue
   1302 	pushfq
   1303 	pushq	%rbx
   1304 	pushq	%rbp
   1305 	pushq	%r12
   1306 	pushq	%r13
   1307 	pushq	%r14
   1308 	pushq	%r15
   1309 L$cbc_prologue:
   1310 
   1311 	cld
   1312 	movl	%r9d,%r9d
   1313 
   1314 	leaq	L$AES_Te(%rip),%r14
   1315 	leaq	L$AES_Td(%rip),%r10
   1316 	cmpq	$0,%r9
   1317 	cmoveq	%r10,%r14
   1318 
   1319 	leaq	_OPENSSL_ia32cap_P(%rip),%r10
   1320 	movl	(%r10),%r10d
   1321 	cmpq	$512,%rdx
   1322 	jb	L$cbc_slow_prologue
   1323 	testq	$15,%rdx
   1324 	jnz	L$cbc_slow_prologue
   1325 	btl	$28,%r10d
   1326 	jc	L$cbc_slow_prologue
   1327 
   1328 
   1329 	leaq	-88-248(%rsp),%r15
   1330 	andq	$-64,%r15
   1331 
   1332 
   1333 	movq	%r14,%r10
   1334 	leaq	2304(%r14),%r11
   1335 	movq	%r15,%r12
   1336 	andq	$0xFFF,%r10
   1337 	andq	$0xFFF,%r11
   1338 	andq	$0xFFF,%r12
   1339 
   1340 	cmpq	%r11,%r12
   1341 	jb	L$cbc_te_break_out
   1342 	subq	%r11,%r12
   1343 	subq	%r12,%r15
   1344 	jmp	L$cbc_te_ok
   1345 L$cbc_te_break_out:
   1346 	subq	%r10,%r12
   1347 	andq	$0xFFF,%r12
   1348 	addq	$320,%r12
   1349 	subq	%r12,%r15
   1350 .p2align	2
   1351 L$cbc_te_ok:
   1352 
   1353 	xchgq	%rsp,%r15
   1354 
   1355 	movq	%r15,16(%rsp)
   1356 L$cbc_fast_body:
   1357 	movq	%rdi,24(%rsp)
   1358 	movq	%rsi,32(%rsp)
   1359 	movq	%rdx,40(%rsp)
   1360 	movq	%rcx,48(%rsp)
   1361 	movq	%r8,56(%rsp)
   1362 	movl	$0,80+240(%rsp)
   1363 	movq	%r8,%rbp
   1364 	movq	%r9,%rbx
   1365 	movq	%rsi,%r9
   1366 	movq	%rdi,%r8
   1367 	movq	%rcx,%r15
   1368 
   1369 	movl	240(%r15),%eax
   1370 
   1371 	movq	%r15,%r10
   1372 	subq	%r14,%r10
   1373 	andq	$0xfff,%r10
   1374 	cmpq	$2304,%r10
   1375 	jb	L$cbc_do_ecopy
   1376 	cmpq	$4096-248,%r10
   1377 	jb	L$cbc_skip_ecopy
   1378 .p2align	2
   1379 L$cbc_do_ecopy:
   1380 	movq	%r15,%rsi
   1381 	leaq	80(%rsp),%rdi
   1382 	leaq	80(%rsp),%r15
   1383 	movl	$30,%ecx
   1384 .long	0x90A548F3
   1385 	movl	%eax,(%rdi)
   1386 L$cbc_skip_ecopy:
   1387 	movq	%r15,0(%rsp)
   1388 
   1389 	movl	$18,%ecx
   1390 .p2align	2
   1391 L$cbc_prefetch_te:
   1392 	movq	0(%r14),%r10
   1393 	movq	32(%r14),%r11
   1394 	movq	64(%r14),%r12
   1395 	movq	96(%r14),%r13
   1396 	leaq	128(%r14),%r14
   1397 	subl	$1,%ecx
   1398 	jnz	L$cbc_prefetch_te
   1399 	leaq	-2304(%r14),%r14
   1400 
   1401 	cmpq	$0,%rbx
   1402 	je	L$FAST_DECRYPT
   1403 
   1404 
   1405 	movl	0(%rbp),%eax
   1406 	movl	4(%rbp),%ebx
   1407 	movl	8(%rbp),%ecx
   1408 	movl	12(%rbp),%edx
   1409 
   1410 .p2align	2
   1411 L$cbc_fast_enc_loop:
   1412 	xorl	0(%r8),%eax
   1413 	xorl	4(%r8),%ebx
   1414 	xorl	8(%r8),%ecx
   1415 	xorl	12(%r8),%edx
   1416 	movq	0(%rsp),%r15
   1417 	movq	%r8,24(%rsp)
   1418 
   1419 	call	_x86_64_AES_encrypt
   1420 
   1421 	movq	24(%rsp),%r8
   1422 	movq	40(%rsp),%r10
   1423 	movl	%eax,0(%r9)
   1424 	movl	%ebx,4(%r9)
   1425 	movl	%ecx,8(%r9)
   1426 	movl	%edx,12(%r9)
   1427 
   1428 	leaq	16(%r8),%r8
   1429 	leaq	16(%r9),%r9
   1430 	subq	$16,%r10
   1431 	testq	$-16,%r10
   1432 	movq	%r10,40(%rsp)
   1433 	jnz	L$cbc_fast_enc_loop
   1434 	movq	56(%rsp),%rbp
   1435 	movl	%eax,0(%rbp)
   1436 	movl	%ebx,4(%rbp)
   1437 	movl	%ecx,8(%rbp)
   1438 	movl	%edx,12(%rbp)
   1439 
   1440 	jmp	L$cbc_fast_cleanup
   1441 
   1442 
   1443 .p2align	4
   1444 L$FAST_DECRYPT:
   1445 	cmpq	%r8,%r9
   1446 	je	L$cbc_fast_dec_in_place
   1447 
   1448 	movq	%rbp,64(%rsp)
   1449 .p2align	2
   1450 L$cbc_fast_dec_loop:
   1451 	movl	0(%r8),%eax
   1452 	movl	4(%r8),%ebx
   1453 	movl	8(%r8),%ecx
   1454 	movl	12(%r8),%edx
   1455 	movq	0(%rsp),%r15
   1456 	movq	%r8,24(%rsp)
   1457 
   1458 	call	_x86_64_AES_decrypt
   1459 
   1460 	movq	64(%rsp),%rbp
   1461 	movq	24(%rsp),%r8
   1462 	movq	40(%rsp),%r10
   1463 	xorl	0(%rbp),%eax
   1464 	xorl	4(%rbp),%ebx
   1465 	xorl	8(%rbp),%ecx
   1466 	xorl	12(%rbp),%edx
   1467 	movq	%r8,%rbp
   1468 
   1469 	subq	$16,%r10
   1470 	movq	%r10,40(%rsp)
   1471 	movq	%rbp,64(%rsp)
   1472 
   1473 	movl	%eax,0(%r9)
   1474 	movl	%ebx,4(%r9)
   1475 	movl	%ecx,8(%r9)
   1476 	movl	%edx,12(%r9)
   1477 
   1478 	leaq	16(%r8),%r8
   1479 	leaq	16(%r9),%r9
   1480 	jnz	L$cbc_fast_dec_loop
   1481 	movq	56(%rsp),%r12
   1482 	movq	0(%rbp),%r10
   1483 	movq	8(%rbp),%r11
   1484 	movq	%r10,0(%r12)
   1485 	movq	%r11,8(%r12)
   1486 	jmp	L$cbc_fast_cleanup
   1487 
   1488 .p2align	4
   1489 L$cbc_fast_dec_in_place:
   1490 	movq	0(%rbp),%r10
   1491 	movq	8(%rbp),%r11
   1492 	movq	%r10,0+64(%rsp)
   1493 	movq	%r11,8+64(%rsp)
   1494 .p2align	2
   1495 L$cbc_fast_dec_in_place_loop:
   1496 	movl	0(%r8),%eax
   1497 	movl	4(%r8),%ebx
   1498 	movl	8(%r8),%ecx
   1499 	movl	12(%r8),%edx
   1500 	movq	0(%rsp),%r15
   1501 	movq	%r8,24(%rsp)
   1502 
   1503 	call	_x86_64_AES_decrypt
   1504 
   1505 	movq	24(%rsp),%r8
   1506 	movq	40(%rsp),%r10
   1507 	xorl	0+64(%rsp),%eax
   1508 	xorl	4+64(%rsp),%ebx
   1509 	xorl	8+64(%rsp),%ecx
   1510 	xorl	12+64(%rsp),%edx
   1511 
   1512 	movq	0(%r8),%r11
   1513 	movq	8(%r8),%r12
   1514 	subq	$16,%r10
   1515 	jz	L$cbc_fast_dec_in_place_done
   1516 
   1517 	movq	%r11,0+64(%rsp)
   1518 	movq	%r12,8+64(%rsp)
   1519 
   1520 	movl	%eax,0(%r9)
   1521 	movl	%ebx,4(%r9)
   1522 	movl	%ecx,8(%r9)
   1523 	movl	%edx,12(%r9)
   1524 
   1525 	leaq	16(%r8),%r8
   1526 	leaq	16(%r9),%r9
   1527 	movq	%r10,40(%rsp)
   1528 	jmp	L$cbc_fast_dec_in_place_loop
   1529 L$cbc_fast_dec_in_place_done:
   1530 	movq	56(%rsp),%rdi
   1531 	movq	%r11,0(%rdi)
   1532 	movq	%r12,8(%rdi)
   1533 
   1534 	movl	%eax,0(%r9)
   1535 	movl	%ebx,4(%r9)
   1536 	movl	%ecx,8(%r9)
   1537 	movl	%edx,12(%r9)
   1538 
   1539 .p2align	2
   1540 L$cbc_fast_cleanup:
   1541 	cmpl	$0,80+240(%rsp)
   1542 	leaq	80(%rsp),%rdi
   1543 	je	L$cbc_exit
   1544 	movl	$30,%ecx
   1545 	xorq	%rax,%rax
   1546 .long	0x90AB48F3
   1547 
   1548 	jmp	L$cbc_exit
   1549 
   1550 
   1551 .p2align	4
   1552 L$cbc_slow_prologue:
   1553 
   1554 	leaq	-88(%rsp),%rbp
   1555 	andq	$-64,%rbp
   1556 
   1557 	leaq	-88-63(%rcx),%r10
   1558 	subq	%rbp,%r10
   1559 	negq	%r10
   1560 	andq	$0x3c0,%r10
   1561 	subq	%r10,%rbp
   1562 
   1563 	xchgq	%rsp,%rbp
   1564 
   1565 	movq	%rbp,16(%rsp)
   1566 L$cbc_slow_body:
   1567 
   1568 
   1569 
   1570 
   1571 	movq	%r8,56(%rsp)
   1572 	movq	%r8,%rbp
   1573 	movq	%r9,%rbx
   1574 	movq	%rsi,%r9
   1575 	movq	%rdi,%r8
   1576 	movq	%rcx,%r15
   1577 	movq	%rdx,%r10
   1578 
   1579 	movl	240(%r15),%eax
   1580 	movq	%r15,0(%rsp)
   1581 	shll	$4,%eax
   1582 	leaq	(%r15,%rax,1),%rax
   1583 	movq	%rax,8(%rsp)
   1584 
   1585 
   1586 	leaq	2048(%r14),%r14
   1587 	leaq	768-8(%rsp),%rax
   1588 	subq	%r14,%rax
   1589 	andq	$0x300,%rax
   1590 	leaq	(%r14,%rax,1),%r14
   1591 
   1592 	cmpq	$0,%rbx
   1593 	je	L$SLOW_DECRYPT
   1594 
   1595 
   1596 	testq	$-16,%r10
   1597 	movl	0(%rbp),%eax
   1598 	movl	4(%rbp),%ebx
   1599 	movl	8(%rbp),%ecx
   1600 	movl	12(%rbp),%edx
   1601 	jz	L$cbc_slow_enc_tail
   1602 
   1603 .p2align	2
   1604 L$cbc_slow_enc_loop:
   1605 	xorl	0(%r8),%eax
   1606 	xorl	4(%r8),%ebx
   1607 	xorl	8(%r8),%ecx
   1608 	xorl	12(%r8),%edx
   1609 	movq	0(%rsp),%r15
   1610 	movq	%r8,24(%rsp)
   1611 	movq	%r9,32(%rsp)
   1612 	movq	%r10,40(%rsp)
   1613 
   1614 	call	_x86_64_AES_encrypt_compact
   1615 
   1616 	movq	24(%rsp),%r8
   1617 	movq	32(%rsp),%r9
   1618 	movq	40(%rsp),%r10
   1619 	movl	%eax,0(%r9)
   1620 	movl	%ebx,4(%r9)
   1621 	movl	%ecx,8(%r9)
   1622 	movl	%edx,12(%r9)
   1623 
   1624 	leaq	16(%r8),%r8
   1625 	leaq	16(%r9),%r9
   1626 	subq	$16,%r10
   1627 	testq	$-16,%r10
   1628 	jnz	L$cbc_slow_enc_loop
   1629 	testq	$15,%r10
   1630 	jnz	L$cbc_slow_enc_tail
   1631 	movq	56(%rsp),%rbp
   1632 	movl	%eax,0(%rbp)
   1633 	movl	%ebx,4(%rbp)
   1634 	movl	%ecx,8(%rbp)
   1635 	movl	%edx,12(%rbp)
   1636 
   1637 	jmp	L$cbc_exit
   1638 
   1639 .p2align	2
   1640 L$cbc_slow_enc_tail:
   1641 	movq	%rax,%r11
   1642 	movq	%rcx,%r12
   1643 	movq	%r10,%rcx
   1644 	movq	%r8,%rsi
   1645 	movq	%r9,%rdi
   1646 .long	0x9066A4F3
   1647 	movq	$16,%rcx
   1648 	subq	%r10,%rcx
   1649 	xorq	%rax,%rax
   1650 .long	0x9066AAF3
   1651 	movq	%r9,%r8
   1652 	movq	$16,%r10
   1653 	movq	%r11,%rax
   1654 	movq	%r12,%rcx
   1655 	jmp	L$cbc_slow_enc_loop
   1656 
   1657 .p2align	4
   1658 L$SLOW_DECRYPT:
   1659 	shrq	$3,%rax
   1660 	addq	%rax,%r14
   1661 
   1662 	movq	0(%rbp),%r11
   1663 	movq	8(%rbp),%r12
   1664 	movq	%r11,0+64(%rsp)
   1665 	movq	%r12,8+64(%rsp)
   1666 
   1667 .p2align	2
   1668 L$cbc_slow_dec_loop:
   1669 	movl	0(%r8),%eax
   1670 	movl	4(%r8),%ebx
   1671 	movl	8(%r8),%ecx
   1672 	movl	12(%r8),%edx
   1673 	movq	0(%rsp),%r15
   1674 	movq	%r8,24(%rsp)
   1675 	movq	%r9,32(%rsp)
   1676 	movq	%r10,40(%rsp)
   1677 
   1678 	call	_x86_64_AES_decrypt_compact
   1679 
   1680 	movq	24(%rsp),%r8
   1681 	movq	32(%rsp),%r9
   1682 	movq	40(%rsp),%r10
   1683 	xorl	0+64(%rsp),%eax
   1684 	xorl	4+64(%rsp),%ebx
   1685 	xorl	8+64(%rsp),%ecx
   1686 	xorl	12+64(%rsp),%edx
   1687 
   1688 	movq	0(%r8),%r11
   1689 	movq	8(%r8),%r12
   1690 	subq	$16,%r10
   1691 	jc	L$cbc_slow_dec_partial
   1692 	jz	L$cbc_slow_dec_done
   1693 
   1694 	movq	%r11,0+64(%rsp)
   1695 	movq	%r12,8+64(%rsp)
   1696 
   1697 	movl	%eax,0(%r9)
   1698 	movl	%ebx,4(%r9)
   1699 	movl	%ecx,8(%r9)
   1700 	movl	%edx,12(%r9)
   1701 
   1702 	leaq	16(%r8),%r8
   1703 	leaq	16(%r9),%r9
   1704 	jmp	L$cbc_slow_dec_loop
   1705 L$cbc_slow_dec_done:
   1706 	movq	56(%rsp),%rdi
   1707 	movq	%r11,0(%rdi)
   1708 	movq	%r12,8(%rdi)
   1709 
   1710 	movl	%eax,0(%r9)
   1711 	movl	%ebx,4(%r9)
   1712 	movl	%ecx,8(%r9)
   1713 	movl	%edx,12(%r9)
   1714 
   1715 	jmp	L$cbc_exit
   1716 
   1717 .p2align	2
   1718 L$cbc_slow_dec_partial:
   1719 	movq	56(%rsp),%rdi
   1720 	movq	%r11,0(%rdi)
   1721 	movq	%r12,8(%rdi)
   1722 
   1723 	movl	%eax,0+64(%rsp)
   1724 	movl	%ebx,4+64(%rsp)
   1725 	movl	%ecx,8+64(%rsp)
   1726 	movl	%edx,12+64(%rsp)
   1727 
   1728 	movq	%r9,%rdi
   1729 	leaq	64(%rsp),%rsi
   1730 	leaq	16(%r10),%rcx
   1731 .long	0x9066A4F3
   1732 	jmp	L$cbc_exit
   1733 
   1734 .p2align	4
   1735 L$cbc_exit:
   1736 	movq	16(%rsp),%rsi
   1737 	movq	(%rsi),%r15
   1738 	movq	8(%rsi),%r14
   1739 	movq	16(%rsi),%r13
   1740 	movq	24(%rsi),%r12
   1741 	movq	32(%rsi),%rbp
   1742 	movq	40(%rsi),%rbx
   1743 	leaq	48(%rsi),%rsp
   1744 L$cbc_popfq:
   1745 	popfq
   1746 L$cbc_epilogue:
   1747 	.byte	0xf3,0xc3
   1748 
   1749 .p2align	6
   1750 L$AES_Te:
   1751 .long	0xa56363c6,0xa56363c6
   1752 .long	0x847c7cf8,0x847c7cf8
   1753 .long	0x997777ee,0x997777ee
   1754 .long	0x8d7b7bf6,0x8d7b7bf6
   1755 .long	0x0df2f2ff,0x0df2f2ff
   1756 .long	0xbd6b6bd6,0xbd6b6bd6
   1757 .long	0xb16f6fde,0xb16f6fde
   1758 .long	0x54c5c591,0x54c5c591
   1759 .long	0x50303060,0x50303060
   1760 .long	0x03010102,0x03010102
   1761 .long	0xa96767ce,0xa96767ce
   1762 .long	0x7d2b2b56,0x7d2b2b56
   1763 .long	0x19fefee7,0x19fefee7
   1764 .long	0x62d7d7b5,0x62d7d7b5
   1765 .long	0xe6abab4d,0xe6abab4d
   1766 .long	0x9a7676ec,0x9a7676ec
   1767 .long	0x45caca8f,0x45caca8f
   1768 .long	0x9d82821f,0x9d82821f
   1769 .long	0x40c9c989,0x40c9c989
   1770 .long	0x877d7dfa,0x877d7dfa
   1771 .long	0x15fafaef,0x15fafaef
   1772 .long	0xeb5959b2,0xeb5959b2
   1773 .long	0xc947478e,0xc947478e
   1774 .long	0x0bf0f0fb,0x0bf0f0fb
   1775 .long	0xecadad41,0xecadad41
   1776 .long	0x67d4d4b3,0x67d4d4b3
   1777 .long	0xfda2a25f,0xfda2a25f
   1778 .long	0xeaafaf45,0xeaafaf45
   1779 .long	0xbf9c9c23,0xbf9c9c23
   1780 .long	0xf7a4a453,0xf7a4a453
   1781 .long	0x967272e4,0x967272e4
   1782 .long	0x5bc0c09b,0x5bc0c09b
   1783 .long	0xc2b7b775,0xc2b7b775
   1784 .long	0x1cfdfde1,0x1cfdfde1
   1785 .long	0xae93933d,0xae93933d
   1786 .long	0x6a26264c,0x6a26264c
   1787 .long	0x5a36366c,0x5a36366c
   1788 .long	0x413f3f7e,0x413f3f7e
   1789 .long	0x02f7f7f5,0x02f7f7f5
   1790 .long	0x4fcccc83,0x4fcccc83
   1791 .long	0x5c343468,0x5c343468
   1792 .long	0xf4a5a551,0xf4a5a551
   1793 .long	0x34e5e5d1,0x34e5e5d1
   1794 .long	0x08f1f1f9,0x08f1f1f9
   1795 .long	0x937171e2,0x937171e2
   1796 .long	0x73d8d8ab,0x73d8d8ab
   1797 .long	0x53313162,0x53313162
   1798 .long	0x3f15152a,0x3f15152a
   1799 .long	0x0c040408,0x0c040408
   1800 .long	0x52c7c795,0x52c7c795
   1801 .long	0x65232346,0x65232346
   1802 .long	0x5ec3c39d,0x5ec3c39d
   1803 .long	0x28181830,0x28181830
   1804 .long	0xa1969637,0xa1969637
   1805 .long	0x0f05050a,0x0f05050a
   1806 .long	0xb59a9a2f,0xb59a9a2f
   1807 .long	0x0907070e,0x0907070e
   1808 .long	0x36121224,0x36121224
   1809 .long	0x9b80801b,0x9b80801b
   1810 .long	0x3de2e2df,0x3de2e2df
   1811 .long	0x26ebebcd,0x26ebebcd
   1812 .long	0x6927274e,0x6927274e
   1813 .long	0xcdb2b27f,0xcdb2b27f
   1814 .long	0x9f7575ea,0x9f7575ea
   1815 .long	0x1b090912,0x1b090912
   1816 .long	0x9e83831d,0x9e83831d
   1817 .long	0x742c2c58,0x742c2c58
   1818 .long	0x2e1a1a34,0x2e1a1a34
   1819 .long	0x2d1b1b36,0x2d1b1b36
   1820 .long	0xb26e6edc,0xb26e6edc
   1821 .long	0xee5a5ab4,0xee5a5ab4
   1822 .long	0xfba0a05b,0xfba0a05b
   1823 .long	0xf65252a4,0xf65252a4
   1824 .long	0x4d3b3b76,0x4d3b3b76
   1825 .long	0x61d6d6b7,0x61d6d6b7
   1826 .long	0xceb3b37d,0xceb3b37d
   1827 .long	0x7b292952,0x7b292952
   1828 .long	0x3ee3e3dd,0x3ee3e3dd
   1829 .long	0x712f2f5e,0x712f2f5e
   1830 .long	0x97848413,0x97848413
   1831 .long	0xf55353a6,0xf55353a6
   1832 .long	0x68d1d1b9,0x68d1d1b9
   1833 .long	0x00000000,0x00000000
   1834 .long	0x2cededc1,0x2cededc1
   1835 .long	0x60202040,0x60202040
   1836 .long	0x1ffcfce3,0x1ffcfce3
   1837 .long	0xc8b1b179,0xc8b1b179
   1838 .long	0xed5b5bb6,0xed5b5bb6
   1839 .long	0xbe6a6ad4,0xbe6a6ad4
   1840 .long	0x46cbcb8d,0x46cbcb8d
   1841 .long	0xd9bebe67,0xd9bebe67
   1842 .long	0x4b393972,0x4b393972
   1843 .long	0xde4a4a94,0xde4a4a94
   1844 .long	0xd44c4c98,0xd44c4c98
   1845 .long	0xe85858b0,0xe85858b0
   1846 .long	0x4acfcf85,0x4acfcf85
   1847 .long	0x6bd0d0bb,0x6bd0d0bb
   1848 .long	0x2aefefc5,0x2aefefc5
   1849 .long	0xe5aaaa4f,0xe5aaaa4f
   1850 .long	0x16fbfbed,0x16fbfbed
   1851 .long	0xc5434386,0xc5434386
   1852 .long	0xd74d4d9a,0xd74d4d9a
   1853 .long	0x55333366,0x55333366
   1854 .long	0x94858511,0x94858511
   1855 .long	0xcf45458a,0xcf45458a
   1856 .long	0x10f9f9e9,0x10f9f9e9
   1857 .long	0x06020204,0x06020204
   1858 .long	0x817f7ffe,0x817f7ffe
   1859 .long	0xf05050a0,0xf05050a0
   1860 .long	0x443c3c78,0x443c3c78
   1861 .long	0xba9f9f25,0xba9f9f25
   1862 .long	0xe3a8a84b,0xe3a8a84b
   1863 .long	0xf35151a2,0xf35151a2
   1864 .long	0xfea3a35d,0xfea3a35d
   1865 .long	0xc0404080,0xc0404080
   1866 .long	0x8a8f8f05,0x8a8f8f05
   1867 .long	0xad92923f,0xad92923f
   1868 .long	0xbc9d9d21,0xbc9d9d21
   1869 .long	0x48383870,0x48383870
   1870 .long	0x04f5f5f1,0x04f5f5f1
   1871 .long	0xdfbcbc63,0xdfbcbc63
   1872 .long	0xc1b6b677,0xc1b6b677
   1873 .long	0x75dadaaf,0x75dadaaf
   1874 .long	0x63212142,0x63212142
   1875 .long	0x30101020,0x30101020
   1876 .long	0x1affffe5,0x1affffe5
   1877 .long	0x0ef3f3fd,0x0ef3f3fd
   1878 .long	0x6dd2d2bf,0x6dd2d2bf
   1879 .long	0x4ccdcd81,0x4ccdcd81
   1880 .long	0x140c0c18,0x140c0c18
   1881 .long	0x35131326,0x35131326
   1882 .long	0x2fececc3,0x2fececc3
   1883 .long	0xe15f5fbe,0xe15f5fbe
   1884 .long	0xa2979735,0xa2979735
   1885 .long	0xcc444488,0xcc444488
   1886 .long	0x3917172e,0x3917172e
   1887 .long	0x57c4c493,0x57c4c493
   1888 .long	0xf2a7a755,0xf2a7a755
   1889 .long	0x827e7efc,0x827e7efc
   1890 .long	0x473d3d7a,0x473d3d7a
   1891 .long	0xac6464c8,0xac6464c8
   1892 .long	0xe75d5dba,0xe75d5dba
   1893 .long	0x2b191932,0x2b191932
   1894 .long	0x957373e6,0x957373e6
   1895 .long	0xa06060c0,0xa06060c0
   1896 .long	0x98818119,0x98818119
   1897 .long	0xd14f4f9e,0xd14f4f9e
   1898 .long	0x7fdcdca3,0x7fdcdca3
   1899 .long	0x66222244,0x66222244
   1900 .long	0x7e2a2a54,0x7e2a2a54
   1901 .long	0xab90903b,0xab90903b
   1902 .long	0x8388880b,0x8388880b
   1903 .long	0xca46468c,0xca46468c
   1904 .long	0x29eeeec7,0x29eeeec7
   1905 .long	0xd3b8b86b,0xd3b8b86b
   1906 .long	0x3c141428,0x3c141428
   1907 .long	0x79dedea7,0x79dedea7
   1908 .long	0xe25e5ebc,0xe25e5ebc
   1909 .long	0x1d0b0b16,0x1d0b0b16
   1910 .long	0x76dbdbad,0x76dbdbad
   1911 .long	0x3be0e0db,0x3be0e0db
   1912 .long	0x56323264,0x56323264
   1913 .long	0x4e3a3a74,0x4e3a3a74
   1914 .long	0x1e0a0a14,0x1e0a0a14
   1915 .long	0xdb494992,0xdb494992
   1916 .long	0x0a06060c,0x0a06060c
   1917 .long	0x6c242448,0x6c242448
   1918 .long	0xe45c5cb8,0xe45c5cb8
   1919 .long	0x5dc2c29f,0x5dc2c29f
   1920 .long	0x6ed3d3bd,0x6ed3d3bd
   1921 .long	0xefacac43,0xefacac43
   1922 .long	0xa66262c4,0xa66262c4
   1923 .long	0xa8919139,0xa8919139
   1924 .long	0xa4959531,0xa4959531
   1925 .long	0x37e4e4d3,0x37e4e4d3
   1926 .long	0x8b7979f2,0x8b7979f2
   1927 .long	0x32e7e7d5,0x32e7e7d5
   1928 .long	0x43c8c88b,0x43c8c88b
   1929 .long	0x5937376e,0x5937376e
   1930 .long	0xb76d6dda,0xb76d6dda
   1931 .long	0x8c8d8d01,0x8c8d8d01
   1932 .long	0x64d5d5b1,0x64d5d5b1
   1933 .long	0xd24e4e9c,0xd24e4e9c
   1934 .long	0xe0a9a949,0xe0a9a949
   1935 .long	0xb46c6cd8,0xb46c6cd8
   1936 .long	0xfa5656ac,0xfa5656ac
   1937 .long	0x07f4f4f3,0x07f4f4f3
   1938 .long	0x25eaeacf,0x25eaeacf
   1939 .long	0xaf6565ca,0xaf6565ca
   1940 .long	0x8e7a7af4,0x8e7a7af4
   1941 .long	0xe9aeae47,0xe9aeae47
   1942 .long	0x18080810,0x18080810
   1943 .long	0xd5baba6f,0xd5baba6f
   1944 .long	0x887878f0,0x887878f0
   1945 .long	0x6f25254a,0x6f25254a
   1946 .long	0x722e2e5c,0x722e2e5c
   1947 .long	0x241c1c38,0x241c1c38
   1948 .long	0xf1a6a657,0xf1a6a657
   1949 .long	0xc7b4b473,0xc7b4b473
   1950 .long	0x51c6c697,0x51c6c697
   1951 .long	0x23e8e8cb,0x23e8e8cb
   1952 .long	0x7cdddda1,0x7cdddda1
   1953 .long	0x9c7474e8,0x9c7474e8
   1954 .long	0x211f1f3e,0x211f1f3e
   1955 .long	0xdd4b4b96,0xdd4b4b96
   1956 .long	0xdcbdbd61,0xdcbdbd61
   1957 .long	0x868b8b0d,0x868b8b0d
   1958 .long	0x858a8a0f,0x858a8a0f
   1959 .long	0x907070e0,0x907070e0
   1960 .long	0x423e3e7c,0x423e3e7c
   1961 .long	0xc4b5b571,0xc4b5b571
   1962 .long	0xaa6666cc,0xaa6666cc
   1963 .long	0xd8484890,0xd8484890
   1964 .long	0x05030306,0x05030306
   1965 .long	0x01f6f6f7,0x01f6f6f7
   1966 .long	0x120e0e1c,0x120e0e1c
   1967 .long	0xa36161c2,0xa36161c2
   1968 .long	0x5f35356a,0x5f35356a
   1969 .long	0xf95757ae,0xf95757ae
   1970 .long	0xd0b9b969,0xd0b9b969
   1971 .long	0x91868617,0x91868617
   1972 .long	0x58c1c199,0x58c1c199
   1973 .long	0x271d1d3a,0x271d1d3a
   1974 .long	0xb99e9e27,0xb99e9e27
   1975 .long	0x38e1e1d9,0x38e1e1d9
   1976 .long	0x13f8f8eb,0x13f8f8eb
   1977 .long	0xb398982b,0xb398982b
   1978 .long	0x33111122,0x33111122
   1979 .long	0xbb6969d2,0xbb6969d2
   1980 .long	0x70d9d9a9,0x70d9d9a9
   1981 .long	0x898e8e07,0x898e8e07
   1982 .long	0xa7949433,0xa7949433
   1983 .long	0xb69b9b2d,0xb69b9b2d
   1984 .long	0x221e1e3c,0x221e1e3c
   1985 .long	0x92878715,0x92878715
   1986 .long	0x20e9e9c9,0x20e9e9c9
   1987 .long	0x49cece87,0x49cece87
   1988 .long	0xff5555aa,0xff5555aa
   1989 .long	0x78282850,0x78282850
   1990 .long	0x7adfdfa5,0x7adfdfa5
   1991 .long	0x8f8c8c03,0x8f8c8c03
   1992 .long	0xf8a1a159,0xf8a1a159
   1993 .long	0x80898909,0x80898909
   1994 .long	0x170d0d1a,0x170d0d1a
   1995 .long	0xdabfbf65,0xdabfbf65
   1996 .long	0x31e6e6d7,0x31e6e6d7
   1997 .long	0xc6424284,0xc6424284
   1998 .long	0xb86868d0,0xb86868d0
   1999 .long	0xc3414182,0xc3414182
   2000 .long	0xb0999929,0xb0999929
   2001 .long	0x772d2d5a,0x772d2d5a
   2002 .long	0x110f0f1e,0x110f0f1e
   2003 .long	0xcbb0b07b,0xcbb0b07b
   2004 .long	0xfc5454a8,0xfc5454a8
   2005 .long	0xd6bbbb6d,0xd6bbbb6d
   2006 .long	0x3a16162c,0x3a16162c
   2007 .byte	0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5
   2008 .byte	0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76
   2009 .byte	0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0
   2010 .byte	0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0
   2011 .byte	0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc
   2012 .byte	0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15
   2013 .byte	0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a
   2014 .byte	0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75
   2015 .byte	0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0
   2016 .byte	0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84
   2017 .byte	0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b
   2018 .byte	0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf
   2019 .byte	0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85
   2020 .byte	0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8
   2021 .byte	0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5
   2022 .byte	0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2
   2023 .byte	0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17
   2024 .byte	0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73
   2025 .byte	0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88
   2026 .byte	0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb
   2027 .byte	0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c
   2028 .byte	0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79
   2029 .byte	0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9
   2030 .byte	0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08
   2031 .byte	0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6
   2032 .byte	0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a
   2033 .byte	0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e
   2034 .byte	0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e
   2035 .byte	0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94
   2036 .byte	0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf
   2037 .byte	0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68
   2038 .byte	0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16
   2039 .byte	0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5
   2040 .byte	0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76
   2041 .byte	0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0
   2042 .byte	0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0
   2043 .byte	0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc
   2044 .byte	0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15
   2045 .byte	0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a
   2046 .byte	0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75
   2047 .byte	0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0
   2048 .byte	0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84
   2049 .byte	0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b
   2050 .byte	0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf
   2051 .byte	0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85
   2052 .byte	0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8
   2053 .byte	0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5
   2054 .byte	0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2
   2055 .byte	0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17
   2056 .byte	0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73
   2057 .byte	0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88
   2058 .byte	0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb
   2059 .byte	0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c
   2060 .byte	0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79
   2061 .byte	0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9
   2062 .byte	0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08
   2063 .byte	0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6
   2064 .byte	0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a
   2065 .byte	0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e
   2066 .byte	0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e
   2067 .byte	0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94
   2068 .byte	0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf
   2069 .byte	0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68
   2070 .byte	0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16
   2071 .byte	0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5
   2072 .byte	0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76
   2073 .byte	0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0
   2074 .byte	0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0
   2075 .byte	0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc
   2076 .byte	0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15
   2077 .byte	0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a
   2078 .byte	0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75
   2079 .byte	0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0
   2080 .byte	0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84
   2081 .byte	0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b
   2082 .byte	0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf
   2083 .byte	0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85
   2084 .byte	0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8
   2085 .byte	0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5
   2086 .byte	0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2
   2087 .byte	0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17
   2088 .byte	0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73
   2089 .byte	0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88
   2090 .byte	0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb
   2091 .byte	0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c
   2092 .byte	0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79
   2093 .byte	0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9
   2094 .byte	0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08
   2095 .byte	0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6
   2096 .byte	0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a
   2097 .byte	0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e
   2098 .byte	0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e
   2099 .byte	0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94
   2100 .byte	0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf
   2101 .byte	0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68
   2102 .byte	0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16
   2103 .byte	0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5
   2104 .byte	0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76
   2105 .byte	0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0
   2106 .byte	0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0
   2107 .byte	0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc
   2108 .byte	0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15
   2109 .byte	0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a
   2110 .byte	0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75
   2111 .byte	0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0
   2112 .byte	0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84
   2113 .byte	0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b
   2114 .byte	0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf
   2115 .byte	0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85
   2116 .byte	0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8
   2117 .byte	0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5
   2118 .byte	0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2
   2119 .byte	0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17
   2120 .byte	0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73
   2121 .byte	0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88
   2122 .byte	0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb
   2123 .byte	0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c
   2124 .byte	0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79
   2125 .byte	0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9
   2126 .byte	0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08
   2127 .byte	0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6
   2128 .byte	0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a
   2129 .byte	0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e
   2130 .byte	0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e
   2131 .byte	0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94
   2132 .byte	0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf
   2133 .byte	0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68
   2134 .byte	0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16
   2135 .long	0x00000001, 0x00000002, 0x00000004, 0x00000008
   2136 .long	0x00000010, 0x00000020, 0x00000040, 0x00000080
   2137 .long	0x0000001b, 0x00000036, 0x80808080, 0x80808080
   2138 .long	0xfefefefe, 0xfefefefe, 0x1b1b1b1b, 0x1b1b1b1b
   2139 .p2align	6
   2140 L$AES_Td:
   2141 .long	0x50a7f451,0x50a7f451
   2142 .long	0x5365417e,0x5365417e
   2143 .long	0xc3a4171a,0xc3a4171a
   2144 .long	0x965e273a,0x965e273a
   2145 .long	0xcb6bab3b,0xcb6bab3b
   2146 .long	0xf1459d1f,0xf1459d1f
   2147 .long	0xab58faac,0xab58faac
   2148 .long	0x9303e34b,0x9303e34b
   2149 .long	0x55fa3020,0x55fa3020
   2150 .long	0xf66d76ad,0xf66d76ad
   2151 .long	0x9176cc88,0x9176cc88
   2152 .long	0x254c02f5,0x254c02f5
   2153 .long	0xfcd7e54f,0xfcd7e54f
   2154 .long	0xd7cb2ac5,0xd7cb2ac5
   2155 .long	0x80443526,0x80443526
   2156 .long	0x8fa362b5,0x8fa362b5
   2157 .long	0x495ab1de,0x495ab1de
   2158 .long	0x671bba25,0x671bba25
   2159 .long	0x980eea45,0x980eea45
   2160 .long	0xe1c0fe5d,0xe1c0fe5d
   2161 .long	0x02752fc3,0x02752fc3
   2162 .long	0x12f04c81,0x12f04c81
   2163 .long	0xa397468d,0xa397468d
   2164 .long	0xc6f9d36b,0xc6f9d36b
   2165 .long	0xe75f8f03,0xe75f8f03
   2166 .long	0x959c9215,0x959c9215
   2167 .long	0xeb7a6dbf,0xeb7a6dbf
   2168 .long	0xda595295,0xda595295
   2169 .long	0x2d83bed4,0x2d83bed4
   2170 .long	0xd3217458,0xd3217458
   2171 .long	0x2969e049,0x2969e049
   2172 .long	0x44c8c98e,0x44c8c98e
   2173 .long	0x6a89c275,0x6a89c275
   2174 .long	0x78798ef4,0x78798ef4
   2175 .long	0x6b3e5899,0x6b3e5899
   2176 .long	0xdd71b927,0xdd71b927
   2177 .long	0xb64fe1be,0xb64fe1be
   2178 .long	0x17ad88f0,0x17ad88f0
   2179 .long	0x66ac20c9,0x66ac20c9
   2180 .long	0xb43ace7d,0xb43ace7d
   2181 .long	0x184adf63,0x184adf63
   2182 .long	0x82311ae5,0x82311ae5
   2183 .long	0x60335197,0x60335197
   2184 .long	0x457f5362,0x457f5362
   2185 .long	0xe07764b1,0xe07764b1
   2186 .long	0x84ae6bbb,0x84ae6bbb
   2187 .long	0x1ca081fe,0x1ca081fe
   2188 .long	0x942b08f9,0x942b08f9
   2189 .long	0x58684870,0x58684870
   2190 .long	0x19fd458f,0x19fd458f
   2191 .long	0x876cde94,0x876cde94
   2192 .long	0xb7f87b52,0xb7f87b52
   2193 .long	0x23d373ab,0x23d373ab
   2194 .long	0xe2024b72,0xe2024b72
   2195 .long	0x578f1fe3,0x578f1fe3
   2196 .long	0x2aab5566,0x2aab5566
   2197 .long	0x0728ebb2,0x0728ebb2
   2198 .long	0x03c2b52f,0x03c2b52f
   2199 .long	0x9a7bc586,0x9a7bc586
   2200 .long	0xa50837d3,0xa50837d3
   2201 .long	0xf2872830,0xf2872830
   2202 .long	0xb2a5bf23,0xb2a5bf23
   2203 .long	0xba6a0302,0xba6a0302
   2204 .long	0x5c8216ed,0x5c8216ed
   2205 .long	0x2b1ccf8a,0x2b1ccf8a
   2206 .long	0x92b479a7,0x92b479a7
   2207 .long	0xf0f207f3,0xf0f207f3
   2208 .long	0xa1e2694e,0xa1e2694e
   2209 .long	0xcdf4da65,0xcdf4da65
   2210 .long	0xd5be0506,0xd5be0506
   2211 .long	0x1f6234d1,0x1f6234d1
   2212 .long	0x8afea6c4,0x8afea6c4
   2213 .long	0x9d532e34,0x9d532e34
   2214 .long	0xa055f3a2,0xa055f3a2
   2215 .long	0x32e18a05,0x32e18a05
   2216 .long	0x75ebf6a4,0x75ebf6a4
   2217 .long	0x39ec830b,0x39ec830b
   2218 .long	0xaaef6040,0xaaef6040
   2219 .long	0x069f715e,0x069f715e
   2220 .long	0x51106ebd,0x51106ebd
   2221 .long	0xf98a213e,0xf98a213e
   2222 .long	0x3d06dd96,0x3d06dd96
   2223 .long	0xae053edd,0xae053edd
   2224 .long	0x46bde64d,0x46bde64d
   2225 .long	0xb58d5491,0xb58d5491
   2226 .long	0x055dc471,0x055dc471
   2227 .long	0x6fd40604,0x6fd40604
   2228 .long	0xff155060,0xff155060
   2229 .long	0x24fb9819,0x24fb9819
   2230 .long	0x97e9bdd6,0x97e9bdd6
   2231 .long	0xcc434089,0xcc434089
   2232 .long	0x779ed967,0x779ed967
   2233 .long	0xbd42e8b0,0xbd42e8b0
   2234 .long	0x888b8907,0x888b8907
   2235 .long	0x385b19e7,0x385b19e7
   2236 .long	0xdbeec879,0xdbeec879
   2237 .long	0x470a7ca1,0x470a7ca1
   2238 .long	0xe90f427c,0xe90f427c
   2239 .long	0xc91e84f8,0xc91e84f8
   2240 .long	0x00000000,0x00000000
   2241 .long	0x83868009,0x83868009
   2242 .long	0x48ed2b32,0x48ed2b32
   2243 .long	0xac70111e,0xac70111e
   2244 .long	0x4e725a6c,0x4e725a6c
   2245 .long	0xfbff0efd,0xfbff0efd
   2246 .long	0x5638850f,0x5638850f
   2247 .long	0x1ed5ae3d,0x1ed5ae3d
   2248 .long	0x27392d36,0x27392d36
   2249 .long	0x64d90f0a,0x64d90f0a
   2250 .long	0x21a65c68,0x21a65c68
   2251 .long	0xd1545b9b,0xd1545b9b
   2252 .long	0x3a2e3624,0x3a2e3624
   2253 .long	0xb1670a0c,0xb1670a0c
   2254 .long	0x0fe75793,0x0fe75793
   2255 .long	0xd296eeb4,0xd296eeb4
   2256 .long	0x9e919b1b,0x9e919b1b
   2257 .long	0x4fc5c080,0x4fc5c080
   2258 .long	0xa220dc61,0xa220dc61
   2259 .long	0x694b775a,0x694b775a
   2260 .long	0x161a121c,0x161a121c
   2261 .long	0x0aba93e2,0x0aba93e2
   2262 .long	0xe52aa0c0,0xe52aa0c0
   2263 .long	0x43e0223c,0x43e0223c
   2264 .long	0x1d171b12,0x1d171b12
   2265 .long	0x0b0d090e,0x0b0d090e
   2266 .long	0xadc78bf2,0xadc78bf2
   2267 .long	0xb9a8b62d,0xb9a8b62d
   2268 .long	0xc8a91e14,0xc8a91e14
   2269 .long	0x8519f157,0x8519f157
   2270 .long	0x4c0775af,0x4c0775af
   2271 .long	0xbbdd99ee,0xbbdd99ee
   2272 .long	0xfd607fa3,0xfd607fa3
   2273 .long	0x9f2601f7,0x9f2601f7
   2274 .long	0xbcf5725c,0xbcf5725c
   2275 .long	0xc53b6644,0xc53b6644
   2276 .long	0x347efb5b,0x347efb5b
   2277 .long	0x7629438b,0x7629438b
   2278 .long	0xdcc623cb,0xdcc623cb
   2279 .long	0x68fcedb6,0x68fcedb6
   2280 .long	0x63f1e4b8,0x63f1e4b8
   2281 .long	0xcadc31d7,0xcadc31d7
   2282 .long	0x10856342,0x10856342
   2283 .long	0x40229713,0x40229713
   2284 .long	0x2011c684,0x2011c684
   2285 .long	0x7d244a85,0x7d244a85
   2286 .long	0xf83dbbd2,0xf83dbbd2
   2287 .long	0x1132f9ae,0x1132f9ae
   2288 .long	0x6da129c7,0x6da129c7
   2289 .long	0x4b2f9e1d,0x4b2f9e1d
   2290 .long	0xf330b2dc,0xf330b2dc
   2291 .long	0xec52860d,0xec52860d
   2292 .long	0xd0e3c177,0xd0e3c177
   2293 .long	0x6c16b32b,0x6c16b32b
   2294 .long	0x99b970a9,0x99b970a9
   2295 .long	0xfa489411,0xfa489411
   2296 .long	0x2264e947,0x2264e947
   2297 .long	0xc48cfca8,0xc48cfca8
   2298 .long	0x1a3ff0a0,0x1a3ff0a0
   2299 .long	0xd82c7d56,0xd82c7d56
   2300 .long	0xef903322,0xef903322
   2301 .long	0xc74e4987,0xc74e4987
   2302 .long	0xc1d138d9,0xc1d138d9
   2303 .long	0xfea2ca8c,0xfea2ca8c
   2304 .long	0x360bd498,0x360bd498
   2305 .long	0xcf81f5a6,0xcf81f5a6
   2306 .long	0x28de7aa5,0x28de7aa5
   2307 .long	0x268eb7da,0x268eb7da
   2308 .long	0xa4bfad3f,0xa4bfad3f
   2309 .long	0xe49d3a2c,0xe49d3a2c
   2310 .long	0x0d927850,0x0d927850
   2311 .long	0x9bcc5f6a,0x9bcc5f6a
   2312 .long	0x62467e54,0x62467e54
   2313 .long	0xc2138df6,0xc2138df6
   2314 .long	0xe8b8d890,0xe8b8d890
   2315 .long	0x5ef7392e,0x5ef7392e
   2316 .long	0xf5afc382,0xf5afc382
   2317 .long	0xbe805d9f,0xbe805d9f
   2318 .long	0x7c93d069,0x7c93d069
   2319 .long	0xa92dd56f,0xa92dd56f
   2320 .long	0xb31225cf,0xb31225cf
   2321 .long	0x3b99acc8,0x3b99acc8
   2322 .long	0xa77d1810,0xa77d1810
   2323 .long	0x6e639ce8,0x6e639ce8
   2324 .long	0x7bbb3bdb,0x7bbb3bdb
   2325 .long	0x097826cd,0x097826cd
   2326 .long	0xf418596e,0xf418596e
   2327 .long	0x01b79aec,0x01b79aec
   2328 .long	0xa89a4f83,0xa89a4f83
   2329 .long	0x656e95e6,0x656e95e6
   2330 .long	0x7ee6ffaa,0x7ee6ffaa
   2331 .long	0x08cfbc21,0x08cfbc21
   2332 .long	0xe6e815ef,0xe6e815ef
   2333 .long	0xd99be7ba,0xd99be7ba
   2334 .long	0xce366f4a,0xce366f4a
   2335 .long	0xd4099fea,0xd4099fea
   2336 .long	0xd67cb029,0xd67cb029
   2337 .long	0xafb2a431,0xafb2a431
   2338 .long	0x31233f2a,0x31233f2a
   2339 .long	0x3094a5c6,0x3094a5c6
   2340 .long	0xc066a235,0xc066a235
   2341 .long	0x37bc4e74,0x37bc4e74
   2342 .long	0xa6ca82fc,0xa6ca82fc
   2343 .long	0xb0d090e0,0xb0d090e0
   2344 .long	0x15d8a733,0x15d8a733
   2345 .long	0x4a9804f1,0x4a9804f1
   2346 .long	0xf7daec41,0xf7daec41
   2347 .long	0x0e50cd7f,0x0e50cd7f
   2348 .long	0x2ff69117,0x2ff69117
   2349 .long	0x8dd64d76,0x8dd64d76
   2350 .long	0x4db0ef43,0x4db0ef43
   2351 .long	0x544daacc,0x544daacc
   2352 .long	0xdf0496e4,0xdf0496e4
   2353 .long	0xe3b5d19e,0xe3b5d19e
   2354 .long	0x1b886a4c,0x1b886a4c
   2355 .long	0xb81f2cc1,0xb81f2cc1
   2356 .long	0x7f516546,0x7f516546
   2357 .long	0x04ea5e9d,0x04ea5e9d
   2358 .long	0x5d358c01,0x5d358c01
   2359 .long	0x737487fa,0x737487fa
   2360 .long	0x2e410bfb,0x2e410bfb
   2361 .long	0x5a1d67b3,0x5a1d67b3
   2362 .long	0x52d2db92,0x52d2db92
   2363 .long	0x335610e9,0x335610e9
   2364 .long	0x1347d66d,0x1347d66d
   2365 .long	0x8c61d79a,0x8c61d79a
   2366 .long	0x7a0ca137,0x7a0ca137
   2367 .long	0x8e14f859,0x8e14f859
   2368 .long	0x893c13eb,0x893c13eb
   2369 .long	0xee27a9ce,0xee27a9ce
   2370 .long	0x35c961b7,0x35c961b7
   2371 .long	0xede51ce1,0xede51ce1
   2372 .long	0x3cb1477a,0x3cb1477a
   2373 .long	0x59dfd29c,0x59dfd29c
   2374 .long	0x3f73f255,0x3f73f255
   2375 .long	0x79ce1418,0x79ce1418
   2376 .long	0xbf37c773,0xbf37c773
   2377 .long	0xeacdf753,0xeacdf753
   2378 .long	0x5baafd5f,0x5baafd5f
   2379 .long	0x146f3ddf,0x146f3ddf
   2380 .long	0x86db4478,0x86db4478
   2381 .long	0x81f3afca,0x81f3afca
   2382 .long	0x3ec468b9,0x3ec468b9
   2383 .long	0x2c342438,0x2c342438
   2384 .long	0x5f40a3c2,0x5f40a3c2
   2385 .long	0x72c31d16,0x72c31d16
   2386 .long	0x0c25e2bc,0x0c25e2bc
   2387 .long	0x8b493c28,0x8b493c28
   2388 .long	0x41950dff,0x41950dff
   2389 .long	0x7101a839,0x7101a839
   2390 .long	0xdeb30c08,0xdeb30c08
   2391 .long	0x9ce4b4d8,0x9ce4b4d8
   2392 .long	0x90c15664,0x90c15664
   2393 .long	0x6184cb7b,0x6184cb7b
   2394 .long	0x70b632d5,0x70b632d5
   2395 .long	0x745c6c48,0x745c6c48
   2396 .long	0x4257b8d0,0x4257b8d0
   2397 .byte	0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38
   2398 .byte	0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb
   2399 .byte	0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87
   2400 .byte	0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb
   2401 .byte	0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d
   2402 .byte	0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e
   2403 .byte	0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2
   2404 .byte	0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25
   2405 .byte	0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16
   2406 .byte	0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92
   2407 .byte	0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda
   2408 .byte	0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84
   2409 .byte	0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a
   2410 .byte	0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06
   2411 .byte	0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02
   2412 .byte	0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b
   2413 .byte	0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea
   2414 .byte	0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73
   2415 .byte	0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85
   2416 .byte	0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e
   2417 .byte	0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89
   2418 .byte	0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b
   2419 .byte	0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20
   2420 .byte	0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4
   2421 .byte	0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31
   2422 .byte	0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f
   2423 .byte	0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d
   2424 .byte	0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef
   2425 .byte	0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0
   2426 .byte	0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61
   2427 .byte	0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26
   2428 .byte	0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d
   2429 .long	0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe
   2430 .long	0x1b1b1b1b, 0x1b1b1b1b, 0, 0
   2431 .byte	0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38
   2432 .byte	0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb
   2433 .byte	0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87
   2434 .byte	0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb
   2435 .byte	0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d
   2436 .byte	0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e
   2437 .byte	0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2
   2438 .byte	0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25
   2439 .byte	0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16
   2440 .byte	0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92
   2441 .byte	0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda
   2442 .byte	0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84
   2443 .byte	0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a
   2444 .byte	0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06
   2445 .byte	0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02
   2446 .byte	0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b
   2447 .byte	0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea
   2448 .byte	0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73
   2449 .byte	0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85
   2450 .byte	0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e
   2451 .byte	0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89
   2452 .byte	0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b
   2453 .byte	0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20
   2454 .byte	0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4
   2455 .byte	0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31
   2456 .byte	0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f
   2457 .byte	0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d
   2458 .byte	0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef
   2459 .byte	0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0
   2460 .byte	0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61
   2461 .byte	0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26
   2462 .byte	0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d
   2463 .long	0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe
   2464 .long	0x1b1b1b1b, 0x1b1b1b1b, 0, 0
   2465 .byte	0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38
   2466 .byte	0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb
   2467 .byte	0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87
   2468 .byte	0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb
   2469 .byte	0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d
   2470 .byte	0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e
   2471 .byte	0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2
   2472 .byte	0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25
   2473 .byte	0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16
   2474 .byte	0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92
   2475 .byte	0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda
   2476 .byte	0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84
   2477 .byte	0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a
   2478 .byte	0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06
   2479 .byte	0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02
   2480 .byte	0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b
   2481 .byte	0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea
   2482 .byte	0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73
   2483 .byte	0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85
   2484 .byte	0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e
   2485 .byte	0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89
   2486 .byte	0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b
   2487 .byte	0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20
   2488 .byte	0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4
   2489 .byte	0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31
   2490 .byte	0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f
   2491 .byte	0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d
   2492 .byte	0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef
   2493 .byte	0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0
   2494 .byte	0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61
   2495 .byte	0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26
   2496 .byte	0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d
   2497 .long	0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe
   2498 .long	0x1b1b1b1b, 0x1b1b1b1b, 0, 0
   2499 .byte	0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38
   2500 .byte	0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb
   2501 .byte	0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87
   2502 .byte	0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb
   2503 .byte	0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d
   2504 .byte	0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e
   2505 .byte	0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2
   2506 .byte	0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25
   2507 .byte	0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16
   2508 .byte	0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92
   2509 .byte	0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda
   2510 .byte	0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84
   2511 .byte	0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a
   2512 .byte	0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06
   2513 .byte	0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02
   2514 .byte	0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b
   2515 .byte	0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea
   2516 .byte	0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73
   2517 .byte	0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85
   2518 .byte	0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e
   2519 .byte	0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89
   2520 .byte	0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b
   2521 .byte	0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20
   2522 .byte	0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4
   2523 .byte	0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31
   2524 .byte	0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f
   2525 .byte	0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d
   2526 .byte	0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef
   2527 .byte	0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0
   2528 .byte	0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61
   2529 .byte	0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26
   2530 .byte	0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d
   2531 .long	0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe
   2532 .long	0x1b1b1b1b, 0x1b1b1b1b, 0, 0
   2533 .byte	65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
   2534 .p2align	6
   2535 #endif
   2536