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