1; This file is generated from a similarly-named Perl script in the BoringSSL 2; source tree. Do not edit by hand. 3 4%ifdef BORINGSSL_PREFIX 5%include "boringssl_prefix_symbols_nasm.inc" 6%endif 7%ifidn __OUTPUT_FORMAT__, win32 8%ifidn __OUTPUT_FORMAT__,obj 9section code use32 class=code align=64 10%elifidn __OUTPUT_FORMAT__,win32 11$@feat.00 equ 1 12section .text code align=64 13%else 14section .text code 15%endif 16;extern _OPENSSL_ia32cap_P 17global _sha1_block_data_order 18align 16 19_sha1_block_data_order: 20L$_sha1_block_data_order_begin: 21 push ebp 22 push ebx 23 push esi 24 push edi 25 call L$000pic_point 26L$000pic_point: 27 pop ebp 28 lea esi,[_OPENSSL_ia32cap_P] 29 lea ebp,[(L$K_XX_XX-L$000pic_point)+ebp] 30 mov eax,DWORD [esi] 31 mov edx,DWORD [4+esi] 32 test edx,512 33 jz NEAR L$001x86 34 mov ecx,DWORD [8+esi] 35 test eax,16777216 36 jz NEAR L$001x86 37 and edx,268435456 38 and eax,1073741824 39 or eax,edx 40 cmp eax,1342177280 41 je NEAR L$avx_shortcut 42 jmp NEAR L$ssse3_shortcut 43align 16 44L$001x86: 45 mov ebp,DWORD [20+esp] 46 mov esi,DWORD [24+esp] 47 mov eax,DWORD [28+esp] 48 sub esp,76 49 shl eax,6 50 add eax,esi 51 mov DWORD [104+esp],eax 52 mov edi,DWORD [16+ebp] 53 jmp NEAR L$002loop 54align 16 55L$002loop: 56 mov eax,DWORD [esi] 57 mov ebx,DWORD [4+esi] 58 mov ecx,DWORD [8+esi] 59 mov edx,DWORD [12+esi] 60 bswap eax 61 bswap ebx 62 bswap ecx 63 bswap edx 64 mov DWORD [esp],eax 65 mov DWORD [4+esp],ebx 66 mov DWORD [8+esp],ecx 67 mov DWORD [12+esp],edx 68 mov eax,DWORD [16+esi] 69 mov ebx,DWORD [20+esi] 70 mov ecx,DWORD [24+esi] 71 mov edx,DWORD [28+esi] 72 bswap eax 73 bswap ebx 74 bswap ecx 75 bswap edx 76 mov DWORD [16+esp],eax 77 mov DWORD [20+esp],ebx 78 mov DWORD [24+esp],ecx 79 mov DWORD [28+esp],edx 80 mov eax,DWORD [32+esi] 81 mov ebx,DWORD [36+esi] 82 mov ecx,DWORD [40+esi] 83 mov edx,DWORD [44+esi] 84 bswap eax 85 bswap ebx 86 bswap ecx 87 bswap edx 88 mov DWORD [32+esp],eax 89 mov DWORD [36+esp],ebx 90 mov DWORD [40+esp],ecx 91 mov DWORD [44+esp],edx 92 mov eax,DWORD [48+esi] 93 mov ebx,DWORD [52+esi] 94 mov ecx,DWORD [56+esi] 95 mov edx,DWORD [60+esi] 96 bswap eax 97 bswap ebx 98 bswap ecx 99 bswap edx 100 mov DWORD [48+esp],eax 101 mov DWORD [52+esp],ebx 102 mov DWORD [56+esp],ecx 103 mov DWORD [60+esp],edx 104 mov DWORD [100+esp],esi 105 mov eax,DWORD [ebp] 106 mov ebx,DWORD [4+ebp] 107 mov ecx,DWORD [8+ebp] 108 mov edx,DWORD [12+ebp] 109 ; 00_15 0 110 mov esi,ecx 111 mov ebp,eax 112 rol ebp,5 113 xor esi,edx 114 add ebp,edi 115 mov edi,DWORD [esp] 116 and esi,ebx 117 ror ebx,2 118 xor esi,edx 119 lea ebp,[1518500249+edi*1+ebp] 120 add ebp,esi 121 ; 00_15 1 122 mov edi,ebx 123 mov esi,ebp 124 rol ebp,5 125 xor edi,ecx 126 add ebp,edx 127 mov edx,DWORD [4+esp] 128 and edi,eax 129 ror eax,2 130 xor edi,ecx 131 lea ebp,[1518500249+edx*1+ebp] 132 add ebp,edi 133 ; 00_15 2 134 mov edx,eax 135 mov edi,ebp 136 rol ebp,5 137 xor edx,ebx 138 add ebp,ecx 139 mov ecx,DWORD [8+esp] 140 and edx,esi 141 ror esi,2 142 xor edx,ebx 143 lea ebp,[1518500249+ecx*1+ebp] 144 add ebp,edx 145 ; 00_15 3 146 mov ecx,esi 147 mov edx,ebp 148 rol ebp,5 149 xor ecx,eax 150 add ebp,ebx 151 mov ebx,DWORD [12+esp] 152 and ecx,edi 153 ror edi,2 154 xor ecx,eax 155 lea ebp,[1518500249+ebx*1+ebp] 156 add ebp,ecx 157 ; 00_15 4 158 mov ebx,edi 159 mov ecx,ebp 160 rol ebp,5 161 xor ebx,esi 162 add ebp,eax 163 mov eax,DWORD [16+esp] 164 and ebx,edx 165 ror edx,2 166 xor ebx,esi 167 lea ebp,[1518500249+eax*1+ebp] 168 add ebp,ebx 169 ; 00_15 5 170 mov eax,edx 171 mov ebx,ebp 172 rol ebp,5 173 xor eax,edi 174 add ebp,esi 175 mov esi,DWORD [20+esp] 176 and eax,ecx 177 ror ecx,2 178 xor eax,edi 179 lea ebp,[1518500249+esi*1+ebp] 180 add ebp,eax 181 ; 00_15 6 182 mov esi,ecx 183 mov eax,ebp 184 rol ebp,5 185 xor esi,edx 186 add ebp,edi 187 mov edi,DWORD [24+esp] 188 and esi,ebx 189 ror ebx,2 190 xor esi,edx 191 lea ebp,[1518500249+edi*1+ebp] 192 add ebp,esi 193 ; 00_15 7 194 mov edi,ebx 195 mov esi,ebp 196 rol ebp,5 197 xor edi,ecx 198 add ebp,edx 199 mov edx,DWORD [28+esp] 200 and edi,eax 201 ror eax,2 202 xor edi,ecx 203 lea ebp,[1518500249+edx*1+ebp] 204 add ebp,edi 205 ; 00_15 8 206 mov edx,eax 207 mov edi,ebp 208 rol ebp,5 209 xor edx,ebx 210 add ebp,ecx 211 mov ecx,DWORD [32+esp] 212 and edx,esi 213 ror esi,2 214 xor edx,ebx 215 lea ebp,[1518500249+ecx*1+ebp] 216 add ebp,edx 217 ; 00_15 9 218 mov ecx,esi 219 mov edx,ebp 220 rol ebp,5 221 xor ecx,eax 222 add ebp,ebx 223 mov ebx,DWORD [36+esp] 224 and ecx,edi 225 ror edi,2 226 xor ecx,eax 227 lea ebp,[1518500249+ebx*1+ebp] 228 add ebp,ecx 229 ; 00_15 10 230 mov ebx,edi 231 mov ecx,ebp 232 rol ebp,5 233 xor ebx,esi 234 add ebp,eax 235 mov eax,DWORD [40+esp] 236 and ebx,edx 237 ror edx,2 238 xor ebx,esi 239 lea ebp,[1518500249+eax*1+ebp] 240 add ebp,ebx 241 ; 00_15 11 242 mov eax,edx 243 mov ebx,ebp 244 rol ebp,5 245 xor eax,edi 246 add ebp,esi 247 mov esi,DWORD [44+esp] 248 and eax,ecx 249 ror ecx,2 250 xor eax,edi 251 lea ebp,[1518500249+esi*1+ebp] 252 add ebp,eax 253 ; 00_15 12 254 mov esi,ecx 255 mov eax,ebp 256 rol ebp,5 257 xor esi,edx 258 add ebp,edi 259 mov edi,DWORD [48+esp] 260 and esi,ebx 261 ror ebx,2 262 xor esi,edx 263 lea ebp,[1518500249+edi*1+ebp] 264 add ebp,esi 265 ; 00_15 13 266 mov edi,ebx 267 mov esi,ebp 268 rol ebp,5 269 xor edi,ecx 270 add ebp,edx 271 mov edx,DWORD [52+esp] 272 and edi,eax 273 ror eax,2 274 xor edi,ecx 275 lea ebp,[1518500249+edx*1+ebp] 276 add ebp,edi 277 ; 00_15 14 278 mov edx,eax 279 mov edi,ebp 280 rol ebp,5 281 xor edx,ebx 282 add ebp,ecx 283 mov ecx,DWORD [56+esp] 284 and edx,esi 285 ror esi,2 286 xor edx,ebx 287 lea ebp,[1518500249+ecx*1+ebp] 288 add ebp,edx 289 ; 00_15 15 290 mov ecx,esi 291 mov edx,ebp 292 rol ebp,5 293 xor ecx,eax 294 add ebp,ebx 295 mov ebx,DWORD [60+esp] 296 and ecx,edi 297 ror edi,2 298 xor ecx,eax 299 lea ebp,[1518500249+ebx*1+ebp] 300 mov ebx,DWORD [esp] 301 add ecx,ebp 302 ; 16_19 16 303 mov ebp,edi 304 xor ebx,DWORD [8+esp] 305 xor ebp,esi 306 xor ebx,DWORD [32+esp] 307 and ebp,edx 308 xor ebx,DWORD [52+esp] 309 rol ebx,1 310 xor ebp,esi 311 add eax,ebp 312 mov ebp,ecx 313 ror edx,2 314 mov DWORD [esp],ebx 315 rol ebp,5 316 lea ebx,[1518500249+eax*1+ebx] 317 mov eax,DWORD [4+esp] 318 add ebx,ebp 319 ; 16_19 17 320 mov ebp,edx 321 xor eax,DWORD [12+esp] 322 xor ebp,edi 323 xor eax,DWORD [36+esp] 324 and ebp,ecx 325 xor eax,DWORD [56+esp] 326 rol eax,1 327 xor ebp,edi 328 add esi,ebp 329 mov ebp,ebx 330 ror ecx,2 331 mov DWORD [4+esp],eax 332 rol ebp,5 333 lea eax,[1518500249+esi*1+eax] 334 mov esi,DWORD [8+esp] 335 add eax,ebp 336 ; 16_19 18 337 mov ebp,ecx 338 xor esi,DWORD [16+esp] 339 xor ebp,edx 340 xor esi,DWORD [40+esp] 341 and ebp,ebx 342 xor esi,DWORD [60+esp] 343 rol esi,1 344 xor ebp,edx 345 add edi,ebp 346 mov ebp,eax 347 ror ebx,2 348 mov DWORD [8+esp],esi 349 rol ebp,5 350 lea esi,[1518500249+edi*1+esi] 351 mov edi,DWORD [12+esp] 352 add esi,ebp 353 ; 16_19 19 354 mov ebp,ebx 355 xor edi,DWORD [20+esp] 356 xor ebp,ecx 357 xor edi,DWORD [44+esp] 358 and ebp,eax 359 xor edi,DWORD [esp] 360 rol edi,1 361 xor ebp,ecx 362 add edx,ebp 363 mov ebp,esi 364 ror eax,2 365 mov DWORD [12+esp],edi 366 rol ebp,5 367 lea edi,[1518500249+edx*1+edi] 368 mov edx,DWORD [16+esp] 369 add edi,ebp 370 ; 20_39 20 371 mov ebp,esi 372 xor edx,DWORD [24+esp] 373 xor ebp,eax 374 xor edx,DWORD [48+esp] 375 xor ebp,ebx 376 xor edx,DWORD [4+esp] 377 rol edx,1 378 add ecx,ebp 379 ror esi,2 380 mov ebp,edi 381 rol ebp,5 382 mov DWORD [16+esp],edx 383 lea edx,[1859775393+ecx*1+edx] 384 mov ecx,DWORD [20+esp] 385 add edx,ebp 386 ; 20_39 21 387 mov ebp,edi 388 xor ecx,DWORD [28+esp] 389 xor ebp,esi 390 xor ecx,DWORD [52+esp] 391 xor ebp,eax 392 xor ecx,DWORD [8+esp] 393 rol ecx,1 394 add ebx,ebp 395 ror edi,2 396 mov ebp,edx 397 rol ebp,5 398 mov DWORD [20+esp],ecx 399 lea ecx,[1859775393+ebx*1+ecx] 400 mov ebx,DWORD [24+esp] 401 add ecx,ebp 402 ; 20_39 22 403 mov ebp,edx 404 xor ebx,DWORD [32+esp] 405 xor ebp,edi 406 xor ebx,DWORD [56+esp] 407 xor ebp,esi 408 xor ebx,DWORD [12+esp] 409 rol ebx,1 410 add eax,ebp 411 ror edx,2 412 mov ebp,ecx 413 rol ebp,5 414 mov DWORD [24+esp],ebx 415 lea ebx,[1859775393+eax*1+ebx] 416 mov eax,DWORD [28+esp] 417 add ebx,ebp 418 ; 20_39 23 419 mov ebp,ecx 420 xor eax,DWORD [36+esp] 421 xor ebp,edx 422 xor eax,DWORD [60+esp] 423 xor ebp,edi 424 xor eax,DWORD [16+esp] 425 rol eax,1 426 add esi,ebp 427 ror ecx,2 428 mov ebp,ebx 429 rol ebp,5 430 mov DWORD [28+esp],eax 431 lea eax,[1859775393+esi*1+eax] 432 mov esi,DWORD [32+esp] 433 add eax,ebp 434 ; 20_39 24 435 mov ebp,ebx 436 xor esi,DWORD [40+esp] 437 xor ebp,ecx 438 xor esi,DWORD [esp] 439 xor ebp,edx 440 xor esi,DWORD [20+esp] 441 rol esi,1 442 add edi,ebp 443 ror ebx,2 444 mov ebp,eax 445 rol ebp,5 446 mov DWORD [32+esp],esi 447 lea esi,[1859775393+edi*1+esi] 448 mov edi,DWORD [36+esp] 449 add esi,ebp 450 ; 20_39 25 451 mov ebp,eax 452 xor edi,DWORD [44+esp] 453 xor ebp,ebx 454 xor edi,DWORD [4+esp] 455 xor ebp,ecx 456 xor edi,DWORD [24+esp] 457 rol edi,1 458 add edx,ebp 459 ror eax,2 460 mov ebp,esi 461 rol ebp,5 462 mov DWORD [36+esp],edi 463 lea edi,[1859775393+edx*1+edi] 464 mov edx,DWORD [40+esp] 465 add edi,ebp 466 ; 20_39 26 467 mov ebp,esi 468 xor edx,DWORD [48+esp] 469 xor ebp,eax 470 xor edx,DWORD [8+esp] 471 xor ebp,ebx 472 xor edx,DWORD [28+esp] 473 rol edx,1 474 add ecx,ebp 475 ror esi,2 476 mov ebp,edi 477 rol ebp,5 478 mov DWORD [40+esp],edx 479 lea edx,[1859775393+ecx*1+edx] 480 mov ecx,DWORD [44+esp] 481 add edx,ebp 482 ; 20_39 27 483 mov ebp,edi 484 xor ecx,DWORD [52+esp] 485 xor ebp,esi 486 xor ecx,DWORD [12+esp] 487 xor ebp,eax 488 xor ecx,DWORD [32+esp] 489 rol ecx,1 490 add ebx,ebp 491 ror edi,2 492 mov ebp,edx 493 rol ebp,5 494 mov DWORD [44+esp],ecx 495 lea ecx,[1859775393+ebx*1+ecx] 496 mov ebx,DWORD [48+esp] 497 add ecx,ebp 498 ; 20_39 28 499 mov ebp,edx 500 xor ebx,DWORD [56+esp] 501 xor ebp,edi 502 xor ebx,DWORD [16+esp] 503 xor ebp,esi 504 xor ebx,DWORD [36+esp] 505 rol ebx,1 506 add eax,ebp 507 ror edx,2 508 mov ebp,ecx 509 rol ebp,5 510 mov DWORD [48+esp],ebx 511 lea ebx,[1859775393+eax*1+ebx] 512 mov eax,DWORD [52+esp] 513 add ebx,ebp 514 ; 20_39 29 515 mov ebp,ecx 516 xor eax,DWORD [60+esp] 517 xor ebp,edx 518 xor eax,DWORD [20+esp] 519 xor ebp,edi 520 xor eax,DWORD [40+esp] 521 rol eax,1 522 add esi,ebp 523 ror ecx,2 524 mov ebp,ebx 525 rol ebp,5 526 mov DWORD [52+esp],eax 527 lea eax,[1859775393+esi*1+eax] 528 mov esi,DWORD [56+esp] 529 add eax,ebp 530 ; 20_39 30 531 mov ebp,ebx 532 xor esi,DWORD [esp] 533 xor ebp,ecx 534 xor esi,DWORD [24+esp] 535 xor ebp,edx 536 xor esi,DWORD [44+esp] 537 rol esi,1 538 add edi,ebp 539 ror ebx,2 540 mov ebp,eax 541 rol ebp,5 542 mov DWORD [56+esp],esi 543 lea esi,[1859775393+edi*1+esi] 544 mov edi,DWORD [60+esp] 545 add esi,ebp 546 ; 20_39 31 547 mov ebp,eax 548 xor edi,DWORD [4+esp] 549 xor ebp,ebx 550 xor edi,DWORD [28+esp] 551 xor ebp,ecx 552 xor edi,DWORD [48+esp] 553 rol edi,1 554 add edx,ebp 555 ror eax,2 556 mov ebp,esi 557 rol ebp,5 558 mov DWORD [60+esp],edi 559 lea edi,[1859775393+edx*1+edi] 560 mov edx,DWORD [esp] 561 add edi,ebp 562 ; 20_39 32 563 mov ebp,esi 564 xor edx,DWORD [8+esp] 565 xor ebp,eax 566 xor edx,DWORD [32+esp] 567 xor ebp,ebx 568 xor edx,DWORD [52+esp] 569 rol edx,1 570 add ecx,ebp 571 ror esi,2 572 mov ebp,edi 573 rol ebp,5 574 mov DWORD [esp],edx 575 lea edx,[1859775393+ecx*1+edx] 576 mov ecx,DWORD [4+esp] 577 add edx,ebp 578 ; 20_39 33 579 mov ebp,edi 580 xor ecx,DWORD [12+esp] 581 xor ebp,esi 582 xor ecx,DWORD [36+esp] 583 xor ebp,eax 584 xor ecx,DWORD [56+esp] 585 rol ecx,1 586 add ebx,ebp 587 ror edi,2 588 mov ebp,edx 589 rol ebp,5 590 mov DWORD [4+esp],ecx 591 lea ecx,[1859775393+ebx*1+ecx] 592 mov ebx,DWORD [8+esp] 593 add ecx,ebp 594 ; 20_39 34 595 mov ebp,edx 596 xor ebx,DWORD [16+esp] 597 xor ebp,edi 598 xor ebx,DWORD [40+esp] 599 xor ebp,esi 600 xor ebx,DWORD [60+esp] 601 rol ebx,1 602 add eax,ebp 603 ror edx,2 604 mov ebp,ecx 605 rol ebp,5 606 mov DWORD [8+esp],ebx 607 lea ebx,[1859775393+eax*1+ebx] 608 mov eax,DWORD [12+esp] 609 add ebx,ebp 610 ; 20_39 35 611 mov ebp,ecx 612 xor eax,DWORD [20+esp] 613 xor ebp,edx 614 xor eax,DWORD [44+esp] 615 xor ebp,edi 616 xor eax,DWORD [esp] 617 rol eax,1 618 add esi,ebp 619 ror ecx,2 620 mov ebp,ebx 621 rol ebp,5 622 mov DWORD [12+esp],eax 623 lea eax,[1859775393+esi*1+eax] 624 mov esi,DWORD [16+esp] 625 add eax,ebp 626 ; 20_39 36 627 mov ebp,ebx 628 xor esi,DWORD [24+esp] 629 xor ebp,ecx 630 xor esi,DWORD [48+esp] 631 xor ebp,edx 632 xor esi,DWORD [4+esp] 633 rol esi,1 634 add edi,ebp 635 ror ebx,2 636 mov ebp,eax 637 rol ebp,5 638 mov DWORD [16+esp],esi 639 lea esi,[1859775393+edi*1+esi] 640 mov edi,DWORD [20+esp] 641 add esi,ebp 642 ; 20_39 37 643 mov ebp,eax 644 xor edi,DWORD [28+esp] 645 xor ebp,ebx 646 xor edi,DWORD [52+esp] 647 xor ebp,ecx 648 xor edi,DWORD [8+esp] 649 rol edi,1 650 add edx,ebp 651 ror eax,2 652 mov ebp,esi 653 rol ebp,5 654 mov DWORD [20+esp],edi 655 lea edi,[1859775393+edx*1+edi] 656 mov edx,DWORD [24+esp] 657 add edi,ebp 658 ; 20_39 38 659 mov ebp,esi 660 xor edx,DWORD [32+esp] 661 xor ebp,eax 662 xor edx,DWORD [56+esp] 663 xor ebp,ebx 664 xor edx,DWORD [12+esp] 665 rol edx,1 666 add ecx,ebp 667 ror esi,2 668 mov ebp,edi 669 rol ebp,5 670 mov DWORD [24+esp],edx 671 lea edx,[1859775393+ecx*1+edx] 672 mov ecx,DWORD [28+esp] 673 add edx,ebp 674 ; 20_39 39 675 mov ebp,edi 676 xor ecx,DWORD [36+esp] 677 xor ebp,esi 678 xor ecx,DWORD [60+esp] 679 xor ebp,eax 680 xor ecx,DWORD [16+esp] 681 rol ecx,1 682 add ebx,ebp 683 ror edi,2 684 mov ebp,edx 685 rol ebp,5 686 mov DWORD [28+esp],ecx 687 lea ecx,[1859775393+ebx*1+ecx] 688 mov ebx,DWORD [32+esp] 689 add ecx,ebp 690 ; 40_59 40 691 mov ebp,edi 692 xor ebx,DWORD [40+esp] 693 xor ebp,esi 694 xor ebx,DWORD [esp] 695 and ebp,edx 696 xor ebx,DWORD [20+esp] 697 rol ebx,1 698 add ebp,eax 699 ror edx,2 700 mov eax,ecx 701 rol eax,5 702 mov DWORD [32+esp],ebx 703 lea ebx,[2400959708+ebp*1+ebx] 704 mov ebp,edi 705 add ebx,eax 706 and ebp,esi 707 mov eax,DWORD [36+esp] 708 add ebx,ebp 709 ; 40_59 41 710 mov ebp,edx 711 xor eax,DWORD [44+esp] 712 xor ebp,edi 713 xor eax,DWORD [4+esp] 714 and ebp,ecx 715 xor eax,DWORD [24+esp] 716 rol eax,1 717 add ebp,esi 718 ror ecx,2 719 mov esi,ebx 720 rol esi,5 721 mov DWORD [36+esp],eax 722 lea eax,[2400959708+ebp*1+eax] 723 mov ebp,edx 724 add eax,esi 725 and ebp,edi 726 mov esi,DWORD [40+esp] 727 add eax,ebp 728 ; 40_59 42 729 mov ebp,ecx 730 xor esi,DWORD [48+esp] 731 xor ebp,edx 732 xor esi,DWORD [8+esp] 733 and ebp,ebx 734 xor esi,DWORD [28+esp] 735 rol esi,1 736 add ebp,edi 737 ror ebx,2 738 mov edi,eax 739 rol edi,5 740 mov DWORD [40+esp],esi 741 lea esi,[2400959708+ebp*1+esi] 742 mov ebp,ecx 743 add esi,edi 744 and ebp,edx 745 mov edi,DWORD [44+esp] 746 add esi,ebp 747 ; 40_59 43 748 mov ebp,ebx 749 xor edi,DWORD [52+esp] 750 xor ebp,ecx 751 xor edi,DWORD [12+esp] 752 and ebp,eax 753 xor edi,DWORD [32+esp] 754 rol edi,1 755 add ebp,edx 756 ror eax,2 757 mov edx,esi 758 rol edx,5 759 mov DWORD [44+esp],edi 760 lea edi,[2400959708+ebp*1+edi] 761 mov ebp,ebx 762 add edi,edx 763 and ebp,ecx 764 mov edx,DWORD [48+esp] 765 add edi,ebp 766 ; 40_59 44 767 mov ebp,eax 768 xor edx,DWORD [56+esp] 769 xor ebp,ebx 770 xor edx,DWORD [16+esp] 771 and ebp,esi 772 xor edx,DWORD [36+esp] 773 rol edx,1 774 add ebp,ecx 775 ror esi,2 776 mov ecx,edi 777 rol ecx,5 778 mov DWORD [48+esp],edx 779 lea edx,[2400959708+ebp*1+edx] 780 mov ebp,eax 781 add edx,ecx 782 and ebp,ebx 783 mov ecx,DWORD [52+esp] 784 add edx,ebp 785 ; 40_59 45 786 mov ebp,esi 787 xor ecx,DWORD [60+esp] 788 xor ebp,eax 789 xor ecx,DWORD [20+esp] 790 and ebp,edi 791 xor ecx,DWORD [40+esp] 792 rol ecx,1 793 add ebp,ebx 794 ror edi,2 795 mov ebx,edx 796 rol ebx,5 797 mov DWORD [52+esp],ecx 798 lea ecx,[2400959708+ebp*1+ecx] 799 mov ebp,esi 800 add ecx,ebx 801 and ebp,eax 802 mov ebx,DWORD [56+esp] 803 add ecx,ebp 804 ; 40_59 46 805 mov ebp,edi 806 xor ebx,DWORD [esp] 807 xor ebp,esi 808 xor ebx,DWORD [24+esp] 809 and ebp,edx 810 xor ebx,DWORD [44+esp] 811 rol ebx,1 812 add ebp,eax 813 ror edx,2 814 mov eax,ecx 815 rol eax,5 816 mov DWORD [56+esp],ebx 817 lea ebx,[2400959708+ebp*1+ebx] 818 mov ebp,edi 819 add ebx,eax 820 and ebp,esi 821 mov eax,DWORD [60+esp] 822 add ebx,ebp 823 ; 40_59 47 824 mov ebp,edx 825 xor eax,DWORD [4+esp] 826 xor ebp,edi 827 xor eax,DWORD [28+esp] 828 and ebp,ecx 829 xor eax,DWORD [48+esp] 830 rol eax,1 831 add ebp,esi 832 ror ecx,2 833 mov esi,ebx 834 rol esi,5 835 mov DWORD [60+esp],eax 836 lea eax,[2400959708+ebp*1+eax] 837 mov ebp,edx 838 add eax,esi 839 and ebp,edi 840 mov esi,DWORD [esp] 841 add eax,ebp 842 ; 40_59 48 843 mov ebp,ecx 844 xor esi,DWORD [8+esp] 845 xor ebp,edx 846 xor esi,DWORD [32+esp] 847 and ebp,ebx 848 xor esi,DWORD [52+esp] 849 rol esi,1 850 add ebp,edi 851 ror ebx,2 852 mov edi,eax 853 rol edi,5 854 mov DWORD [esp],esi 855 lea esi,[2400959708+ebp*1+esi] 856 mov ebp,ecx 857 add esi,edi 858 and ebp,edx 859 mov edi,DWORD [4+esp] 860 add esi,ebp 861 ; 40_59 49 862 mov ebp,ebx 863 xor edi,DWORD [12+esp] 864 xor ebp,ecx 865 xor edi,DWORD [36+esp] 866 and ebp,eax 867 xor edi,DWORD [56+esp] 868 rol edi,1 869 add ebp,edx 870 ror eax,2 871 mov edx,esi 872 rol edx,5 873 mov DWORD [4+esp],edi 874 lea edi,[2400959708+ebp*1+edi] 875 mov ebp,ebx 876 add edi,edx 877 and ebp,ecx 878 mov edx,DWORD [8+esp] 879 add edi,ebp 880 ; 40_59 50 881 mov ebp,eax 882 xor edx,DWORD [16+esp] 883 xor ebp,ebx 884 xor edx,DWORD [40+esp] 885 and ebp,esi 886 xor edx,DWORD [60+esp] 887 rol edx,1 888 add ebp,ecx 889 ror esi,2 890 mov ecx,edi 891 rol ecx,5 892 mov DWORD [8+esp],edx 893 lea edx,[2400959708+ebp*1+edx] 894 mov ebp,eax 895 add edx,ecx 896 and ebp,ebx 897 mov ecx,DWORD [12+esp] 898 add edx,ebp 899 ; 40_59 51 900 mov ebp,esi 901 xor ecx,DWORD [20+esp] 902 xor ebp,eax 903 xor ecx,DWORD [44+esp] 904 and ebp,edi 905 xor ecx,DWORD [esp] 906 rol ecx,1 907 add ebp,ebx 908 ror edi,2 909 mov ebx,edx 910 rol ebx,5 911 mov DWORD [12+esp],ecx 912 lea ecx,[2400959708+ebp*1+ecx] 913 mov ebp,esi 914 add ecx,ebx 915 and ebp,eax 916 mov ebx,DWORD [16+esp] 917 add ecx,ebp 918 ; 40_59 52 919 mov ebp,edi 920 xor ebx,DWORD [24+esp] 921 xor ebp,esi 922 xor ebx,DWORD [48+esp] 923 and ebp,edx 924 xor ebx,DWORD [4+esp] 925 rol ebx,1 926 add ebp,eax 927 ror edx,2 928 mov eax,ecx 929 rol eax,5 930 mov DWORD [16+esp],ebx 931 lea ebx,[2400959708+ebp*1+ebx] 932 mov ebp,edi 933 add ebx,eax 934 and ebp,esi 935 mov eax,DWORD [20+esp] 936 add ebx,ebp 937 ; 40_59 53 938 mov ebp,edx 939 xor eax,DWORD [28+esp] 940 xor ebp,edi 941 xor eax,DWORD [52+esp] 942 and ebp,ecx 943 xor eax,DWORD [8+esp] 944 rol eax,1 945 add ebp,esi 946 ror ecx,2 947 mov esi,ebx 948 rol esi,5 949 mov DWORD [20+esp],eax 950 lea eax,[2400959708+ebp*1+eax] 951 mov ebp,edx 952 add eax,esi 953 and ebp,edi 954 mov esi,DWORD [24+esp] 955 add eax,ebp 956 ; 40_59 54 957 mov ebp,ecx 958 xor esi,DWORD [32+esp] 959 xor ebp,edx 960 xor esi,DWORD [56+esp] 961 and ebp,ebx 962 xor esi,DWORD [12+esp] 963 rol esi,1 964 add ebp,edi 965 ror ebx,2 966 mov edi,eax 967 rol edi,5 968 mov DWORD [24+esp],esi 969 lea esi,[2400959708+ebp*1+esi] 970 mov ebp,ecx 971 add esi,edi 972 and ebp,edx 973 mov edi,DWORD [28+esp] 974 add esi,ebp 975 ; 40_59 55 976 mov ebp,ebx 977 xor edi,DWORD [36+esp] 978 xor ebp,ecx 979 xor edi,DWORD [60+esp] 980 and ebp,eax 981 xor edi,DWORD [16+esp] 982 rol edi,1 983 add ebp,edx 984 ror eax,2 985 mov edx,esi 986 rol edx,5 987 mov DWORD [28+esp],edi 988 lea edi,[2400959708+ebp*1+edi] 989 mov ebp,ebx 990 add edi,edx 991 and ebp,ecx 992 mov edx,DWORD [32+esp] 993 add edi,ebp 994 ; 40_59 56 995 mov ebp,eax 996 xor edx,DWORD [40+esp] 997 xor ebp,ebx 998 xor edx,DWORD [esp] 999 and ebp,esi 1000 xor edx,DWORD [20+esp] 1001 rol edx,1 1002 add ebp,ecx 1003 ror esi,2 1004 mov ecx,edi 1005 rol ecx,5 1006 mov DWORD [32+esp],edx 1007 lea edx,[2400959708+ebp*1+edx] 1008 mov ebp,eax 1009 add edx,ecx 1010 and ebp,ebx 1011 mov ecx,DWORD [36+esp] 1012 add edx,ebp 1013 ; 40_59 57 1014 mov ebp,esi 1015 xor ecx,DWORD [44+esp] 1016 xor ebp,eax 1017 xor ecx,DWORD [4+esp] 1018 and ebp,edi 1019 xor ecx,DWORD [24+esp] 1020 rol ecx,1 1021 add ebp,ebx 1022 ror edi,2 1023 mov ebx,edx 1024 rol ebx,5 1025 mov DWORD [36+esp],ecx 1026 lea ecx,[2400959708+ebp*1+ecx] 1027 mov ebp,esi 1028 add ecx,ebx 1029 and ebp,eax 1030 mov ebx,DWORD [40+esp] 1031 add ecx,ebp 1032 ; 40_59 58 1033 mov ebp,edi 1034 xor ebx,DWORD [48+esp] 1035 xor ebp,esi 1036 xor ebx,DWORD [8+esp] 1037 and ebp,edx 1038 xor ebx,DWORD [28+esp] 1039 rol ebx,1 1040 add ebp,eax 1041 ror edx,2 1042 mov eax,ecx 1043 rol eax,5 1044 mov DWORD [40+esp],ebx 1045 lea ebx,[2400959708+ebp*1+ebx] 1046 mov ebp,edi 1047 add ebx,eax 1048 and ebp,esi 1049 mov eax,DWORD [44+esp] 1050 add ebx,ebp 1051 ; 40_59 59 1052 mov ebp,edx 1053 xor eax,DWORD [52+esp] 1054 xor ebp,edi 1055 xor eax,DWORD [12+esp] 1056 and ebp,ecx 1057 xor eax,DWORD [32+esp] 1058 rol eax,1 1059 add ebp,esi 1060 ror ecx,2 1061 mov esi,ebx 1062 rol esi,5 1063 mov DWORD [44+esp],eax 1064 lea eax,[2400959708+ebp*1+eax] 1065 mov ebp,edx 1066 add eax,esi 1067 and ebp,edi 1068 mov esi,DWORD [48+esp] 1069 add eax,ebp 1070 ; 20_39 60 1071 mov ebp,ebx 1072 xor esi,DWORD [56+esp] 1073 xor ebp,ecx 1074 xor esi,DWORD [16+esp] 1075 xor ebp,edx 1076 xor esi,DWORD [36+esp] 1077 rol esi,1 1078 add edi,ebp 1079 ror ebx,2 1080 mov ebp,eax 1081 rol ebp,5 1082 mov DWORD [48+esp],esi 1083 lea esi,[3395469782+edi*1+esi] 1084 mov edi,DWORD [52+esp] 1085 add esi,ebp 1086 ; 20_39 61 1087 mov ebp,eax 1088 xor edi,DWORD [60+esp] 1089 xor ebp,ebx 1090 xor edi,DWORD [20+esp] 1091 xor ebp,ecx 1092 xor edi,DWORD [40+esp] 1093 rol edi,1 1094 add edx,ebp 1095 ror eax,2 1096 mov ebp,esi 1097 rol ebp,5 1098 mov DWORD [52+esp],edi 1099 lea edi,[3395469782+edx*1+edi] 1100 mov edx,DWORD [56+esp] 1101 add edi,ebp 1102 ; 20_39 62 1103 mov ebp,esi 1104 xor edx,DWORD [esp] 1105 xor ebp,eax 1106 xor edx,DWORD [24+esp] 1107 xor ebp,ebx 1108 xor edx,DWORD [44+esp] 1109 rol edx,1 1110 add ecx,ebp 1111 ror esi,2 1112 mov ebp,edi 1113 rol ebp,5 1114 mov DWORD [56+esp],edx 1115 lea edx,[3395469782+ecx*1+edx] 1116 mov ecx,DWORD [60+esp] 1117 add edx,ebp 1118 ; 20_39 63 1119 mov ebp,edi 1120 xor ecx,DWORD [4+esp] 1121 xor ebp,esi 1122 xor ecx,DWORD [28+esp] 1123 xor ebp,eax 1124 xor ecx,DWORD [48+esp] 1125 rol ecx,1 1126 add ebx,ebp 1127 ror edi,2 1128 mov ebp,edx 1129 rol ebp,5 1130 mov DWORD [60+esp],ecx 1131 lea ecx,[3395469782+ebx*1+ecx] 1132 mov ebx,DWORD [esp] 1133 add ecx,ebp 1134 ; 20_39 64 1135 mov ebp,edx 1136 xor ebx,DWORD [8+esp] 1137 xor ebp,edi 1138 xor ebx,DWORD [32+esp] 1139 xor ebp,esi 1140 xor ebx,DWORD [52+esp] 1141 rol ebx,1 1142 add eax,ebp 1143 ror edx,2 1144 mov ebp,ecx 1145 rol ebp,5 1146 mov DWORD [esp],ebx 1147 lea ebx,[3395469782+eax*1+ebx] 1148 mov eax,DWORD [4+esp] 1149 add ebx,ebp 1150 ; 20_39 65 1151 mov ebp,ecx 1152 xor eax,DWORD [12+esp] 1153 xor ebp,edx 1154 xor eax,DWORD [36+esp] 1155 xor ebp,edi 1156 xor eax,DWORD [56+esp] 1157 rol eax,1 1158 add esi,ebp 1159 ror ecx,2 1160 mov ebp,ebx 1161 rol ebp,5 1162 mov DWORD [4+esp],eax 1163 lea eax,[3395469782+esi*1+eax] 1164 mov esi,DWORD [8+esp] 1165 add eax,ebp 1166 ; 20_39 66 1167 mov ebp,ebx 1168 xor esi,DWORD [16+esp] 1169 xor ebp,ecx 1170 xor esi,DWORD [40+esp] 1171 xor ebp,edx 1172 xor esi,DWORD [60+esp] 1173 rol esi,1 1174 add edi,ebp 1175 ror ebx,2 1176 mov ebp,eax 1177 rol ebp,5 1178 mov DWORD [8+esp],esi 1179 lea esi,[3395469782+edi*1+esi] 1180 mov edi,DWORD [12+esp] 1181 add esi,ebp 1182 ; 20_39 67 1183 mov ebp,eax 1184 xor edi,DWORD [20+esp] 1185 xor ebp,ebx 1186 xor edi,DWORD [44+esp] 1187 xor ebp,ecx 1188 xor edi,DWORD [esp] 1189 rol edi,1 1190 add edx,ebp 1191 ror eax,2 1192 mov ebp,esi 1193 rol ebp,5 1194 mov DWORD [12+esp],edi 1195 lea edi,[3395469782+edx*1+edi] 1196 mov edx,DWORD [16+esp] 1197 add edi,ebp 1198 ; 20_39 68 1199 mov ebp,esi 1200 xor edx,DWORD [24+esp] 1201 xor ebp,eax 1202 xor edx,DWORD [48+esp] 1203 xor ebp,ebx 1204 xor edx,DWORD [4+esp] 1205 rol edx,1 1206 add ecx,ebp 1207 ror esi,2 1208 mov ebp,edi 1209 rol ebp,5 1210 mov DWORD [16+esp],edx 1211 lea edx,[3395469782+ecx*1+edx] 1212 mov ecx,DWORD [20+esp] 1213 add edx,ebp 1214 ; 20_39 69 1215 mov ebp,edi 1216 xor ecx,DWORD [28+esp] 1217 xor ebp,esi 1218 xor ecx,DWORD [52+esp] 1219 xor ebp,eax 1220 xor ecx,DWORD [8+esp] 1221 rol ecx,1 1222 add ebx,ebp 1223 ror edi,2 1224 mov ebp,edx 1225 rol ebp,5 1226 mov DWORD [20+esp],ecx 1227 lea ecx,[3395469782+ebx*1+ecx] 1228 mov ebx,DWORD [24+esp] 1229 add ecx,ebp 1230 ; 20_39 70 1231 mov ebp,edx 1232 xor ebx,DWORD [32+esp] 1233 xor ebp,edi 1234 xor ebx,DWORD [56+esp] 1235 xor ebp,esi 1236 xor ebx,DWORD [12+esp] 1237 rol ebx,1 1238 add eax,ebp 1239 ror edx,2 1240 mov ebp,ecx 1241 rol ebp,5 1242 mov DWORD [24+esp],ebx 1243 lea ebx,[3395469782+eax*1+ebx] 1244 mov eax,DWORD [28+esp] 1245 add ebx,ebp 1246 ; 20_39 71 1247 mov ebp,ecx 1248 xor eax,DWORD [36+esp] 1249 xor ebp,edx 1250 xor eax,DWORD [60+esp] 1251 xor ebp,edi 1252 xor eax,DWORD [16+esp] 1253 rol eax,1 1254 add esi,ebp 1255 ror ecx,2 1256 mov ebp,ebx 1257 rol ebp,5 1258 mov DWORD [28+esp],eax 1259 lea eax,[3395469782+esi*1+eax] 1260 mov esi,DWORD [32+esp] 1261 add eax,ebp 1262 ; 20_39 72 1263 mov ebp,ebx 1264 xor esi,DWORD [40+esp] 1265 xor ebp,ecx 1266 xor esi,DWORD [esp] 1267 xor ebp,edx 1268 xor esi,DWORD [20+esp] 1269 rol esi,1 1270 add edi,ebp 1271 ror ebx,2 1272 mov ebp,eax 1273 rol ebp,5 1274 mov DWORD [32+esp],esi 1275 lea esi,[3395469782+edi*1+esi] 1276 mov edi,DWORD [36+esp] 1277 add esi,ebp 1278 ; 20_39 73 1279 mov ebp,eax 1280 xor edi,DWORD [44+esp] 1281 xor ebp,ebx 1282 xor edi,DWORD [4+esp] 1283 xor ebp,ecx 1284 xor edi,DWORD [24+esp] 1285 rol edi,1 1286 add edx,ebp 1287 ror eax,2 1288 mov ebp,esi 1289 rol ebp,5 1290 mov DWORD [36+esp],edi 1291 lea edi,[3395469782+edx*1+edi] 1292 mov edx,DWORD [40+esp] 1293 add edi,ebp 1294 ; 20_39 74 1295 mov ebp,esi 1296 xor edx,DWORD [48+esp] 1297 xor ebp,eax 1298 xor edx,DWORD [8+esp] 1299 xor ebp,ebx 1300 xor edx,DWORD [28+esp] 1301 rol edx,1 1302 add ecx,ebp 1303 ror esi,2 1304 mov ebp,edi 1305 rol ebp,5 1306 mov DWORD [40+esp],edx 1307 lea edx,[3395469782+ecx*1+edx] 1308 mov ecx,DWORD [44+esp] 1309 add edx,ebp 1310 ; 20_39 75 1311 mov ebp,edi 1312 xor ecx,DWORD [52+esp] 1313 xor ebp,esi 1314 xor ecx,DWORD [12+esp] 1315 xor ebp,eax 1316 xor ecx,DWORD [32+esp] 1317 rol ecx,1 1318 add ebx,ebp 1319 ror edi,2 1320 mov ebp,edx 1321 rol ebp,5 1322 mov DWORD [44+esp],ecx 1323 lea ecx,[3395469782+ebx*1+ecx] 1324 mov ebx,DWORD [48+esp] 1325 add ecx,ebp 1326 ; 20_39 76 1327 mov ebp,edx 1328 xor ebx,DWORD [56+esp] 1329 xor ebp,edi 1330 xor ebx,DWORD [16+esp] 1331 xor ebp,esi 1332 xor ebx,DWORD [36+esp] 1333 rol ebx,1 1334 add eax,ebp 1335 ror edx,2 1336 mov ebp,ecx 1337 rol ebp,5 1338 mov DWORD [48+esp],ebx 1339 lea ebx,[3395469782+eax*1+ebx] 1340 mov eax,DWORD [52+esp] 1341 add ebx,ebp 1342 ; 20_39 77 1343 mov ebp,ecx 1344 xor eax,DWORD [60+esp] 1345 xor ebp,edx 1346 xor eax,DWORD [20+esp] 1347 xor ebp,edi 1348 xor eax,DWORD [40+esp] 1349 rol eax,1 1350 add esi,ebp 1351 ror ecx,2 1352 mov ebp,ebx 1353 rol ebp,5 1354 lea eax,[3395469782+esi*1+eax] 1355 mov esi,DWORD [56+esp] 1356 add eax,ebp 1357 ; 20_39 78 1358 mov ebp,ebx 1359 xor esi,DWORD [esp] 1360 xor ebp,ecx 1361 xor esi,DWORD [24+esp] 1362 xor ebp,edx 1363 xor esi,DWORD [44+esp] 1364 rol esi,1 1365 add edi,ebp 1366 ror ebx,2 1367 mov ebp,eax 1368 rol ebp,5 1369 lea esi,[3395469782+edi*1+esi] 1370 mov edi,DWORD [60+esp] 1371 add esi,ebp 1372 ; 20_39 79 1373 mov ebp,eax 1374 xor edi,DWORD [4+esp] 1375 xor ebp,ebx 1376 xor edi,DWORD [28+esp] 1377 xor ebp,ecx 1378 xor edi,DWORD [48+esp] 1379 rol edi,1 1380 add edx,ebp 1381 ror eax,2 1382 mov ebp,esi 1383 rol ebp,5 1384 lea edi,[3395469782+edx*1+edi] 1385 add edi,ebp 1386 mov ebp,DWORD [96+esp] 1387 mov edx,DWORD [100+esp] 1388 add edi,DWORD [ebp] 1389 add esi,DWORD [4+ebp] 1390 add eax,DWORD [8+ebp] 1391 add ebx,DWORD [12+ebp] 1392 add ecx,DWORD [16+ebp] 1393 mov DWORD [ebp],edi 1394 add edx,64 1395 mov DWORD [4+ebp],esi 1396 cmp edx,DWORD [104+esp] 1397 mov DWORD [8+ebp],eax 1398 mov edi,ecx 1399 mov DWORD [12+ebp],ebx 1400 mov esi,edx 1401 mov DWORD [16+ebp],ecx 1402 jb NEAR L$002loop 1403 add esp,76 1404 pop edi 1405 pop esi 1406 pop ebx 1407 pop ebp 1408 ret 1409align 16 1410__sha1_block_data_order_ssse3: 1411 push ebp 1412 push ebx 1413 push esi 1414 push edi 1415 call L$003pic_point 1416L$003pic_point: 1417 pop ebp 1418 lea ebp,[(L$K_XX_XX-L$003pic_point)+ebp] 1419L$ssse3_shortcut: 1420 movdqa xmm7,[ebp] 1421 movdqa xmm0,[16+ebp] 1422 movdqa xmm1,[32+ebp] 1423 movdqa xmm2,[48+ebp] 1424 movdqa xmm6,[64+ebp] 1425 mov edi,DWORD [20+esp] 1426 mov ebp,DWORD [24+esp] 1427 mov edx,DWORD [28+esp] 1428 mov esi,esp 1429 sub esp,208 1430 and esp,-64 1431 movdqa [112+esp],xmm0 1432 movdqa [128+esp],xmm1 1433 movdqa [144+esp],xmm2 1434 shl edx,6 1435 movdqa [160+esp],xmm7 1436 add edx,ebp 1437 movdqa [176+esp],xmm6 1438 add ebp,64 1439 mov DWORD [192+esp],edi 1440 mov DWORD [196+esp],ebp 1441 mov DWORD [200+esp],edx 1442 mov DWORD [204+esp],esi 1443 mov eax,DWORD [edi] 1444 mov ebx,DWORD [4+edi] 1445 mov ecx,DWORD [8+edi] 1446 mov edx,DWORD [12+edi] 1447 mov edi,DWORD [16+edi] 1448 mov esi,ebx 1449 movdqu xmm0,[ebp-64] 1450 movdqu xmm1,[ebp-48] 1451 movdqu xmm2,[ebp-32] 1452 movdqu xmm3,[ebp-16] 1453db 102,15,56,0,198 1454db 102,15,56,0,206 1455db 102,15,56,0,214 1456 movdqa [96+esp],xmm7 1457db 102,15,56,0,222 1458 paddd xmm0,xmm7 1459 paddd xmm1,xmm7 1460 paddd xmm2,xmm7 1461 movdqa [esp],xmm0 1462 psubd xmm0,xmm7 1463 movdqa [16+esp],xmm1 1464 psubd xmm1,xmm7 1465 movdqa [32+esp],xmm2 1466 mov ebp,ecx 1467 psubd xmm2,xmm7 1468 xor ebp,edx 1469 pshufd xmm4,xmm0,238 1470 and esi,ebp 1471 jmp NEAR L$004loop 1472align 16 1473L$004loop: 1474 ror ebx,2 1475 xor esi,edx 1476 mov ebp,eax 1477 punpcklqdq xmm4,xmm1 1478 movdqa xmm6,xmm3 1479 add edi,DWORD [esp] 1480 xor ebx,ecx 1481 paddd xmm7,xmm3 1482 movdqa [64+esp],xmm0 1483 rol eax,5 1484 add edi,esi 1485 psrldq xmm6,4 1486 and ebp,ebx 1487 xor ebx,ecx 1488 pxor xmm4,xmm0 1489 add edi,eax 1490 ror eax,7 1491 pxor xmm6,xmm2 1492 xor ebp,ecx 1493 mov esi,edi 1494 add edx,DWORD [4+esp] 1495 pxor xmm4,xmm6 1496 xor eax,ebx 1497 rol edi,5 1498 movdqa [48+esp],xmm7 1499 add edx,ebp 1500 and esi,eax 1501 movdqa xmm0,xmm4 1502 xor eax,ebx 1503 add edx,edi 1504 ror edi,7 1505 movdqa xmm6,xmm4 1506 xor esi,ebx 1507 pslldq xmm0,12 1508 paddd xmm4,xmm4 1509 mov ebp,edx 1510 add ecx,DWORD [8+esp] 1511 psrld xmm6,31 1512 xor edi,eax 1513 rol edx,5 1514 movdqa xmm7,xmm0 1515 add ecx,esi 1516 and ebp,edi 1517 xor edi,eax 1518 psrld xmm0,30 1519 add ecx,edx 1520 ror edx,7 1521 por xmm4,xmm6 1522 xor ebp,eax 1523 mov esi,ecx 1524 add ebx,DWORD [12+esp] 1525 pslld xmm7,2 1526 xor edx,edi 1527 rol ecx,5 1528 pxor xmm4,xmm0 1529 movdqa xmm0,[96+esp] 1530 add ebx,ebp 1531 and esi,edx 1532 pxor xmm4,xmm7 1533 pshufd xmm5,xmm1,238 1534 xor edx,edi 1535 add ebx,ecx 1536 ror ecx,7 1537 xor esi,edi 1538 mov ebp,ebx 1539 punpcklqdq xmm5,xmm2 1540 movdqa xmm7,xmm4 1541 add eax,DWORD [16+esp] 1542 xor ecx,edx 1543 paddd xmm0,xmm4 1544 movdqa [80+esp],xmm1 1545 rol ebx,5 1546 add eax,esi 1547 psrldq xmm7,4 1548 and ebp,ecx 1549 xor ecx,edx 1550 pxor xmm5,xmm1 1551 add eax,ebx 1552 ror ebx,7 1553 pxor xmm7,xmm3 1554 xor ebp,edx 1555 mov esi,eax 1556 add edi,DWORD [20+esp] 1557 pxor xmm5,xmm7 1558 xor ebx,ecx 1559 rol eax,5 1560 movdqa [esp],xmm0 1561 add edi,ebp 1562 and esi,ebx 1563 movdqa xmm1,xmm5 1564 xor ebx,ecx 1565 add edi,eax 1566 ror eax,7 1567 movdqa xmm7,xmm5 1568 xor esi,ecx 1569 pslldq xmm1,12 1570 paddd xmm5,xmm5 1571 mov ebp,edi 1572 add edx,DWORD [24+esp] 1573 psrld xmm7,31 1574 xor eax,ebx 1575 rol edi,5 1576 movdqa xmm0,xmm1 1577 add edx,esi 1578 and ebp,eax 1579 xor eax,ebx 1580 psrld xmm1,30 1581 add edx,edi 1582 ror edi,7 1583 por xmm5,xmm7 1584 xor ebp,ebx 1585 mov esi,edx 1586 add ecx,DWORD [28+esp] 1587 pslld xmm0,2 1588 xor edi,eax 1589 rol edx,5 1590 pxor xmm5,xmm1 1591 movdqa xmm1,[112+esp] 1592 add ecx,ebp 1593 and esi,edi 1594 pxor xmm5,xmm0 1595 pshufd xmm6,xmm2,238 1596 xor edi,eax 1597 add ecx,edx 1598 ror edx,7 1599 xor esi,eax 1600 mov ebp,ecx 1601 punpcklqdq xmm6,xmm3 1602 movdqa xmm0,xmm5 1603 add ebx,DWORD [32+esp] 1604 xor edx,edi 1605 paddd xmm1,xmm5 1606 movdqa [96+esp],xmm2 1607 rol ecx,5 1608 add ebx,esi 1609 psrldq xmm0,4 1610 and ebp,edx 1611 xor edx,edi 1612 pxor xmm6,xmm2 1613 add ebx,ecx 1614 ror ecx,7 1615 pxor xmm0,xmm4 1616 xor ebp,edi 1617 mov esi,ebx 1618 add eax,DWORD [36+esp] 1619 pxor xmm6,xmm0 1620 xor ecx,edx 1621 rol ebx,5 1622 movdqa [16+esp],xmm1 1623 add eax,ebp 1624 and esi,ecx 1625 movdqa xmm2,xmm6 1626 xor ecx,edx 1627 add eax,ebx 1628 ror ebx,7 1629 movdqa xmm0,xmm6 1630 xor esi,edx 1631 pslldq xmm2,12 1632 paddd xmm6,xmm6 1633 mov ebp,eax 1634 add edi,DWORD [40+esp] 1635 psrld xmm0,31 1636 xor ebx,ecx 1637 rol eax,5 1638 movdqa xmm1,xmm2 1639 add edi,esi 1640 and ebp,ebx 1641 xor ebx,ecx 1642 psrld xmm2,30 1643 add edi,eax 1644 ror eax,7 1645 por xmm6,xmm0 1646 xor ebp,ecx 1647 movdqa xmm0,[64+esp] 1648 mov esi,edi 1649 add edx,DWORD [44+esp] 1650 pslld xmm1,2 1651 xor eax,ebx 1652 rol edi,5 1653 pxor xmm6,xmm2 1654 movdqa xmm2,[112+esp] 1655 add edx,ebp 1656 and esi,eax 1657 pxor xmm6,xmm1 1658 pshufd xmm7,xmm3,238 1659 xor eax,ebx 1660 add edx,edi 1661 ror edi,7 1662 xor esi,ebx 1663 mov ebp,edx 1664 punpcklqdq xmm7,xmm4 1665 movdqa xmm1,xmm6 1666 add ecx,DWORD [48+esp] 1667 xor edi,eax 1668 paddd xmm2,xmm6 1669 movdqa [64+esp],xmm3 1670 rol edx,5 1671 add ecx,esi 1672 psrldq xmm1,4 1673 and ebp,edi 1674 xor edi,eax 1675 pxor xmm7,xmm3 1676 add ecx,edx 1677 ror edx,7 1678 pxor xmm1,xmm5 1679 xor ebp,eax 1680 mov esi,ecx 1681 add ebx,DWORD [52+esp] 1682 pxor xmm7,xmm1 1683 xor edx,edi 1684 rol ecx,5 1685 movdqa [32+esp],xmm2 1686 add ebx,ebp 1687 and esi,edx 1688 movdqa xmm3,xmm7 1689 xor edx,edi 1690 add ebx,ecx 1691 ror ecx,7 1692 movdqa xmm1,xmm7 1693 xor esi,edi 1694 pslldq xmm3,12 1695 paddd xmm7,xmm7 1696 mov ebp,ebx 1697 add eax,DWORD [56+esp] 1698 psrld xmm1,31 1699 xor ecx,edx 1700 rol ebx,5 1701 movdqa xmm2,xmm3 1702 add eax,esi 1703 and ebp,ecx 1704 xor ecx,edx 1705 psrld xmm3,30 1706 add eax,ebx 1707 ror ebx,7 1708 por xmm7,xmm1 1709 xor ebp,edx 1710 movdqa xmm1,[80+esp] 1711 mov esi,eax 1712 add edi,DWORD [60+esp] 1713 pslld xmm2,2 1714 xor ebx,ecx 1715 rol eax,5 1716 pxor xmm7,xmm3 1717 movdqa xmm3,[112+esp] 1718 add edi,ebp 1719 and esi,ebx 1720 pxor xmm7,xmm2 1721 pshufd xmm2,xmm6,238 1722 xor ebx,ecx 1723 add edi,eax 1724 ror eax,7 1725 pxor xmm0,xmm4 1726 punpcklqdq xmm2,xmm7 1727 xor esi,ecx 1728 mov ebp,edi 1729 add edx,DWORD [esp] 1730 pxor xmm0,xmm1 1731 movdqa [80+esp],xmm4 1732 xor eax,ebx 1733 rol edi,5 1734 movdqa xmm4,xmm3 1735 add edx,esi 1736 paddd xmm3,xmm7 1737 and ebp,eax 1738 pxor xmm0,xmm2 1739 xor eax,ebx 1740 add edx,edi 1741 ror edi,7 1742 xor ebp,ebx 1743 movdqa xmm2,xmm0 1744 movdqa [48+esp],xmm3 1745 mov esi,edx 1746 add ecx,DWORD [4+esp] 1747 xor edi,eax 1748 rol edx,5 1749 pslld xmm0,2 1750 add ecx,ebp 1751 and esi,edi 1752 psrld xmm2,30 1753 xor edi,eax 1754 add ecx,edx 1755 ror edx,7 1756 xor esi,eax 1757 mov ebp,ecx 1758 add ebx,DWORD [8+esp] 1759 xor edx,edi 1760 rol ecx,5 1761 por xmm0,xmm2 1762 add ebx,esi 1763 and ebp,edx 1764 movdqa xmm2,[96+esp] 1765 xor edx,edi 1766 add ebx,ecx 1767 add eax,DWORD [12+esp] 1768 xor ebp,edi 1769 mov esi,ebx 1770 pshufd xmm3,xmm7,238 1771 rol ebx,5 1772 add eax,ebp 1773 xor esi,edx 1774 ror ecx,7 1775 add eax,ebx 1776 add edi,DWORD [16+esp] 1777 pxor xmm1,xmm5 1778 punpcklqdq xmm3,xmm0 1779 xor esi,ecx 1780 mov ebp,eax 1781 rol eax,5 1782 pxor xmm1,xmm2 1783 movdqa [96+esp],xmm5 1784 add edi,esi 1785 xor ebp,ecx 1786 movdqa xmm5,xmm4 1787 ror ebx,7 1788 paddd xmm4,xmm0 1789 add edi,eax 1790 pxor xmm1,xmm3 1791 add edx,DWORD [20+esp] 1792 xor ebp,ebx 1793 mov esi,edi 1794 rol edi,5 1795 movdqa xmm3,xmm1 1796 movdqa [esp],xmm4 1797 add edx,ebp 1798 xor esi,ebx 1799 ror eax,7 1800 add edx,edi 1801 pslld xmm1,2 1802 add ecx,DWORD [24+esp] 1803 xor esi,eax 1804 psrld xmm3,30 1805 mov ebp,edx 1806 rol edx,5 1807 add ecx,esi 1808 xor ebp,eax 1809 ror edi,7 1810 add ecx,edx 1811 por xmm1,xmm3 1812 add ebx,DWORD [28+esp] 1813 xor ebp,edi 1814 movdqa xmm3,[64+esp] 1815 mov esi,ecx 1816 rol ecx,5 1817 add ebx,ebp 1818 xor esi,edi 1819 ror edx,7 1820 pshufd xmm4,xmm0,238 1821 add ebx,ecx 1822 add eax,DWORD [32+esp] 1823 pxor xmm2,xmm6 1824 punpcklqdq xmm4,xmm1 1825 xor esi,edx 1826 mov ebp,ebx 1827 rol ebx,5 1828 pxor xmm2,xmm3 1829 movdqa [64+esp],xmm6 1830 add eax,esi 1831 xor ebp,edx 1832 movdqa xmm6,[128+esp] 1833 ror ecx,7 1834 paddd xmm5,xmm1 1835 add eax,ebx 1836 pxor xmm2,xmm4 1837 add edi,DWORD [36+esp] 1838 xor ebp,ecx 1839 mov esi,eax 1840 rol eax,5 1841 movdqa xmm4,xmm2 1842 movdqa [16+esp],xmm5 1843 add edi,ebp 1844 xor esi,ecx 1845 ror ebx,7 1846 add edi,eax 1847 pslld xmm2,2 1848 add edx,DWORD [40+esp] 1849 xor esi,ebx 1850 psrld xmm4,30 1851 mov ebp,edi 1852 rol edi,5 1853 add edx,esi 1854 xor ebp,ebx 1855 ror eax,7 1856 add edx,edi 1857 por xmm2,xmm4 1858 add ecx,DWORD [44+esp] 1859 xor ebp,eax 1860 movdqa xmm4,[80+esp] 1861 mov esi,edx 1862 rol edx,5 1863 add ecx,ebp 1864 xor esi,eax 1865 ror edi,7 1866 pshufd xmm5,xmm1,238 1867 add ecx,edx 1868 add ebx,DWORD [48+esp] 1869 pxor xmm3,xmm7 1870 punpcklqdq xmm5,xmm2 1871 xor esi,edi 1872 mov ebp,ecx 1873 rol ecx,5 1874 pxor xmm3,xmm4 1875 movdqa [80+esp],xmm7 1876 add ebx,esi 1877 xor ebp,edi 1878 movdqa xmm7,xmm6 1879 ror edx,7 1880 paddd xmm6,xmm2 1881 add ebx,ecx 1882 pxor xmm3,xmm5 1883 add eax,DWORD [52+esp] 1884 xor ebp,edx 1885 mov esi,ebx 1886 rol ebx,5 1887 movdqa xmm5,xmm3 1888 movdqa [32+esp],xmm6 1889 add eax,ebp 1890 xor esi,edx 1891 ror ecx,7 1892 add eax,ebx 1893 pslld xmm3,2 1894 add edi,DWORD [56+esp] 1895 xor esi,ecx 1896 psrld xmm5,30 1897 mov ebp,eax 1898 rol eax,5 1899 add edi,esi 1900 xor ebp,ecx 1901 ror ebx,7 1902 add edi,eax 1903 por xmm3,xmm5 1904 add edx,DWORD [60+esp] 1905 xor ebp,ebx 1906 movdqa xmm5,[96+esp] 1907 mov esi,edi 1908 rol edi,5 1909 add edx,ebp 1910 xor esi,ebx 1911 ror eax,7 1912 pshufd xmm6,xmm2,238 1913 add edx,edi 1914 add ecx,DWORD [esp] 1915 pxor xmm4,xmm0 1916 punpcklqdq xmm6,xmm3 1917 xor esi,eax 1918 mov ebp,edx 1919 rol edx,5 1920 pxor xmm4,xmm5 1921 movdqa [96+esp],xmm0 1922 add ecx,esi 1923 xor ebp,eax 1924 movdqa xmm0,xmm7 1925 ror edi,7 1926 paddd xmm7,xmm3 1927 add ecx,edx 1928 pxor xmm4,xmm6 1929 add ebx,DWORD [4+esp] 1930 xor ebp,edi 1931 mov esi,ecx 1932 rol ecx,5 1933 movdqa xmm6,xmm4 1934 movdqa [48+esp],xmm7 1935 add ebx,ebp 1936 xor esi,edi 1937 ror edx,7 1938 add ebx,ecx 1939 pslld xmm4,2 1940 add eax,DWORD [8+esp] 1941 xor esi,edx 1942 psrld xmm6,30 1943 mov ebp,ebx 1944 rol ebx,5 1945 add eax,esi 1946 xor ebp,edx 1947 ror ecx,7 1948 add eax,ebx 1949 por xmm4,xmm6 1950 add edi,DWORD [12+esp] 1951 xor ebp,ecx 1952 movdqa xmm6,[64+esp] 1953 mov esi,eax 1954 rol eax,5 1955 add edi,ebp 1956 xor esi,ecx 1957 ror ebx,7 1958 pshufd xmm7,xmm3,238 1959 add edi,eax 1960 add edx,DWORD [16+esp] 1961 pxor xmm5,xmm1 1962 punpcklqdq xmm7,xmm4 1963 xor esi,ebx 1964 mov ebp,edi 1965 rol edi,5 1966 pxor xmm5,xmm6 1967 movdqa [64+esp],xmm1 1968 add edx,esi 1969 xor ebp,ebx 1970 movdqa xmm1,xmm0 1971 ror eax,7 1972 paddd xmm0,xmm4 1973 add edx,edi 1974 pxor xmm5,xmm7 1975 add ecx,DWORD [20+esp] 1976 xor ebp,eax 1977 mov esi,edx 1978 rol edx,5 1979 movdqa xmm7,xmm5 1980 movdqa [esp],xmm0 1981 add ecx,ebp 1982 xor esi,eax 1983 ror edi,7 1984 add ecx,edx 1985 pslld xmm5,2 1986 add ebx,DWORD [24+esp] 1987 xor esi,edi 1988 psrld xmm7,30 1989 mov ebp,ecx 1990 rol ecx,5 1991 add ebx,esi 1992 xor ebp,edi 1993 ror edx,7 1994 add ebx,ecx 1995 por xmm5,xmm7 1996 add eax,DWORD [28+esp] 1997 movdqa xmm7,[80+esp] 1998 ror ecx,7 1999 mov esi,ebx 2000 xor ebp,edx 2001 rol ebx,5 2002 pshufd xmm0,xmm4,238 2003 add eax,ebp 2004 xor esi,ecx 2005 xor ecx,edx 2006 add eax,ebx 2007 add edi,DWORD [32+esp] 2008 pxor xmm6,xmm2 2009 punpcklqdq xmm0,xmm5 2010 and esi,ecx 2011 xor ecx,edx 2012 ror ebx,7 2013 pxor xmm6,xmm7 2014 movdqa [80+esp],xmm2 2015 mov ebp,eax 2016 xor esi,ecx 2017 rol eax,5 2018 movdqa xmm2,xmm1 2019 add edi,esi 2020 paddd xmm1,xmm5 2021 xor ebp,ebx 2022 pxor xmm6,xmm0 2023 xor ebx,ecx 2024 add edi,eax 2025 add edx,DWORD [36+esp] 2026 and ebp,ebx 2027 movdqa xmm0,xmm6 2028 movdqa [16+esp],xmm1 2029 xor ebx,ecx 2030 ror eax,7 2031 mov esi,edi 2032 xor ebp,ebx 2033 rol edi,5 2034 pslld xmm6,2 2035 add edx,ebp 2036 xor esi,eax 2037 psrld xmm0,30 2038 xor eax,ebx 2039 add edx,edi 2040 add ecx,DWORD [40+esp] 2041 and esi,eax 2042 xor eax,ebx 2043 ror edi,7 2044 por xmm6,xmm0 2045 mov ebp,edx 2046 xor esi,eax 2047 movdqa xmm0,[96+esp] 2048 rol edx,5 2049 add ecx,esi 2050 xor ebp,edi 2051 xor edi,eax 2052 add ecx,edx 2053 pshufd xmm1,xmm5,238 2054 add ebx,DWORD [44+esp] 2055 and ebp,edi 2056 xor edi,eax 2057 ror edx,7 2058 mov esi,ecx 2059 xor ebp,edi 2060 rol ecx,5 2061 add ebx,ebp 2062 xor esi,edx 2063 xor edx,edi 2064 add ebx,ecx 2065 add eax,DWORD [48+esp] 2066 pxor xmm7,xmm3 2067 punpcklqdq xmm1,xmm6 2068 and esi,edx 2069 xor edx,edi 2070 ror ecx,7 2071 pxor xmm7,xmm0 2072 movdqa [96+esp],xmm3 2073 mov ebp,ebx 2074 xor esi,edx 2075 rol ebx,5 2076 movdqa xmm3,[144+esp] 2077 add eax,esi 2078 paddd xmm2,xmm6 2079 xor ebp,ecx 2080 pxor xmm7,xmm1 2081 xor ecx,edx 2082 add eax,ebx 2083 add edi,DWORD [52+esp] 2084 and ebp,ecx 2085 movdqa xmm1,xmm7 2086 movdqa [32+esp],xmm2 2087 xor ecx,edx 2088 ror ebx,7 2089 mov esi,eax 2090 xor ebp,ecx 2091 rol eax,5 2092 pslld xmm7,2 2093 add edi,ebp 2094 xor esi,ebx 2095 psrld xmm1,30 2096 xor ebx,ecx 2097 add edi,eax 2098 add edx,DWORD [56+esp] 2099 and esi,ebx 2100 xor ebx,ecx 2101 ror eax,7 2102 por xmm7,xmm1 2103 mov ebp,edi 2104 xor esi,ebx 2105 movdqa xmm1,[64+esp] 2106 rol edi,5 2107 add edx,esi 2108 xor ebp,eax 2109 xor eax,ebx 2110 add edx,edi 2111 pshufd xmm2,xmm6,238 2112 add ecx,DWORD [60+esp] 2113 and ebp,eax 2114 xor eax,ebx 2115 ror edi,7 2116 mov esi,edx 2117 xor ebp,eax 2118 rol edx,5 2119 add ecx,ebp 2120 xor esi,edi 2121 xor edi,eax 2122 add ecx,edx 2123 add ebx,DWORD [esp] 2124 pxor xmm0,xmm4 2125 punpcklqdq xmm2,xmm7 2126 and esi,edi 2127 xor edi,eax 2128 ror edx,7 2129 pxor xmm0,xmm1 2130 movdqa [64+esp],xmm4 2131 mov ebp,ecx 2132 xor esi,edi 2133 rol ecx,5 2134 movdqa xmm4,xmm3 2135 add ebx,esi 2136 paddd xmm3,xmm7 2137 xor ebp,edx 2138 pxor xmm0,xmm2 2139 xor edx,edi 2140 add ebx,ecx 2141 add eax,DWORD [4+esp] 2142 and ebp,edx 2143 movdqa xmm2,xmm0 2144 movdqa [48+esp],xmm3 2145 xor edx,edi 2146 ror ecx,7 2147 mov esi,ebx 2148 xor ebp,edx 2149 rol ebx,5 2150 pslld xmm0,2 2151 add eax,ebp 2152 xor esi,ecx 2153 psrld xmm2,30 2154 xor ecx,edx 2155 add eax,ebx 2156 add edi,DWORD [8+esp] 2157 and esi,ecx 2158 xor ecx,edx 2159 ror ebx,7 2160 por xmm0,xmm2 2161 mov ebp,eax 2162 xor esi,ecx 2163 movdqa xmm2,[80+esp] 2164 rol eax,5 2165 add edi,esi 2166 xor ebp,ebx 2167 xor ebx,ecx 2168 add edi,eax 2169 pshufd xmm3,xmm7,238 2170 add edx,DWORD [12+esp] 2171 and ebp,ebx 2172 xor ebx,ecx 2173 ror eax,7 2174 mov esi,edi 2175 xor ebp,ebx 2176 rol edi,5 2177 add edx,ebp 2178 xor esi,eax 2179 xor eax,ebx 2180 add edx,edi 2181 add ecx,DWORD [16+esp] 2182 pxor xmm1,xmm5 2183 punpcklqdq xmm3,xmm0 2184 and esi,eax 2185 xor eax,ebx 2186 ror edi,7 2187 pxor xmm1,xmm2 2188 movdqa [80+esp],xmm5 2189 mov ebp,edx 2190 xor esi,eax 2191 rol edx,5 2192 movdqa xmm5,xmm4 2193 add ecx,esi 2194 paddd xmm4,xmm0 2195 xor ebp,edi 2196 pxor xmm1,xmm3 2197 xor edi,eax 2198 add ecx,edx 2199 add ebx,DWORD [20+esp] 2200 and ebp,edi 2201 movdqa xmm3,xmm1 2202 movdqa [esp],xmm4 2203 xor edi,eax 2204 ror edx,7 2205 mov esi,ecx 2206 xor ebp,edi 2207 rol ecx,5 2208 pslld xmm1,2 2209 add ebx,ebp 2210 xor esi,edx 2211 psrld xmm3,30 2212 xor edx,edi 2213 add ebx,ecx 2214 add eax,DWORD [24+esp] 2215 and esi,edx 2216 xor edx,edi 2217 ror ecx,7 2218 por xmm1,xmm3 2219 mov ebp,ebx 2220 xor esi,edx 2221 movdqa xmm3,[96+esp] 2222 rol ebx,5 2223 add eax,esi 2224 xor ebp,ecx 2225 xor ecx,edx 2226 add eax,ebx 2227 pshufd xmm4,xmm0,238 2228 add edi,DWORD [28+esp] 2229 and ebp,ecx 2230 xor ecx,edx 2231 ror ebx,7 2232 mov esi,eax 2233 xor ebp,ecx 2234 rol eax,5 2235 add edi,ebp 2236 xor esi,ebx 2237 xor ebx,ecx 2238 add edi,eax 2239 add edx,DWORD [32+esp] 2240 pxor xmm2,xmm6 2241 punpcklqdq xmm4,xmm1 2242 and esi,ebx 2243 xor ebx,ecx 2244 ror eax,7 2245 pxor xmm2,xmm3 2246 movdqa [96+esp],xmm6 2247 mov ebp,edi 2248 xor esi,ebx 2249 rol edi,5 2250 movdqa xmm6,xmm5 2251 add edx,esi 2252 paddd xmm5,xmm1 2253 xor ebp,eax 2254 pxor xmm2,xmm4 2255 xor eax,ebx 2256 add edx,edi 2257 add ecx,DWORD [36+esp] 2258 and ebp,eax 2259 movdqa xmm4,xmm2 2260 movdqa [16+esp],xmm5 2261 xor eax,ebx 2262 ror edi,7 2263 mov esi,edx 2264 xor ebp,eax 2265 rol edx,5 2266 pslld xmm2,2 2267 add ecx,ebp 2268 xor esi,edi 2269 psrld xmm4,30 2270 xor edi,eax 2271 add ecx,edx 2272 add ebx,DWORD [40+esp] 2273 and esi,edi 2274 xor edi,eax 2275 ror edx,7 2276 por xmm2,xmm4 2277 mov ebp,ecx 2278 xor esi,edi 2279 movdqa xmm4,[64+esp] 2280 rol ecx,5 2281 add ebx,esi 2282 xor ebp,edx 2283 xor edx,edi 2284 add ebx,ecx 2285 pshufd xmm5,xmm1,238 2286 add eax,DWORD [44+esp] 2287 and ebp,edx 2288 xor edx,edi 2289 ror ecx,7 2290 mov esi,ebx 2291 xor ebp,edx 2292 rol ebx,5 2293 add eax,ebp 2294 xor esi,edx 2295 add eax,ebx 2296 add edi,DWORD [48+esp] 2297 pxor xmm3,xmm7 2298 punpcklqdq xmm5,xmm2 2299 xor esi,ecx 2300 mov ebp,eax 2301 rol eax,5 2302 pxor xmm3,xmm4 2303 movdqa [64+esp],xmm7 2304 add edi,esi 2305 xor ebp,ecx 2306 movdqa xmm7,xmm6 2307 ror ebx,7 2308 paddd xmm6,xmm2 2309 add edi,eax 2310 pxor xmm3,xmm5 2311 add edx,DWORD [52+esp] 2312 xor ebp,ebx 2313 mov esi,edi 2314 rol edi,5 2315 movdqa xmm5,xmm3 2316 movdqa [32+esp],xmm6 2317 add edx,ebp 2318 xor esi,ebx 2319 ror eax,7 2320 add edx,edi 2321 pslld xmm3,2 2322 add ecx,DWORD [56+esp] 2323 xor esi,eax 2324 psrld xmm5,30 2325 mov ebp,edx 2326 rol edx,5 2327 add ecx,esi 2328 xor ebp,eax 2329 ror edi,7 2330 add ecx,edx 2331 por xmm3,xmm5 2332 add ebx,DWORD [60+esp] 2333 xor ebp,edi 2334 mov esi,ecx 2335 rol ecx,5 2336 add ebx,ebp 2337 xor esi,edi 2338 ror edx,7 2339 add ebx,ecx 2340 add eax,DWORD [esp] 2341 xor esi,edx 2342 mov ebp,ebx 2343 rol ebx,5 2344 add eax,esi 2345 xor ebp,edx 2346 ror ecx,7 2347 paddd xmm7,xmm3 2348 add eax,ebx 2349 add edi,DWORD [4+esp] 2350 xor ebp,ecx 2351 mov esi,eax 2352 movdqa [48+esp],xmm7 2353 rol eax,5 2354 add edi,ebp 2355 xor esi,ecx 2356 ror ebx,7 2357 add edi,eax 2358 add edx,DWORD [8+esp] 2359 xor esi,ebx 2360 mov ebp,edi 2361 rol edi,5 2362 add edx,esi 2363 xor ebp,ebx 2364 ror eax,7 2365 add edx,edi 2366 add ecx,DWORD [12+esp] 2367 xor ebp,eax 2368 mov esi,edx 2369 rol edx,5 2370 add ecx,ebp 2371 xor esi,eax 2372 ror edi,7 2373 add ecx,edx 2374 mov ebp,DWORD [196+esp] 2375 cmp ebp,DWORD [200+esp] 2376 je NEAR L$005done 2377 movdqa xmm7,[160+esp] 2378 movdqa xmm6,[176+esp] 2379 movdqu xmm0,[ebp] 2380 movdqu xmm1,[16+ebp] 2381 movdqu xmm2,[32+ebp] 2382 movdqu xmm3,[48+ebp] 2383 add ebp,64 2384db 102,15,56,0,198 2385 mov DWORD [196+esp],ebp 2386 movdqa [96+esp],xmm7 2387 add ebx,DWORD [16+esp] 2388 xor esi,edi 2389 mov ebp,ecx 2390 rol ecx,5 2391 add ebx,esi 2392 xor ebp,edi 2393 ror edx,7 2394db 102,15,56,0,206 2395 add ebx,ecx 2396 add eax,DWORD [20+esp] 2397 xor ebp,edx 2398 mov esi,ebx 2399 paddd xmm0,xmm7 2400 rol ebx,5 2401 add eax,ebp 2402 xor esi,edx 2403 ror ecx,7 2404 movdqa [esp],xmm0 2405 add eax,ebx 2406 add edi,DWORD [24+esp] 2407 xor esi,ecx 2408 mov ebp,eax 2409 psubd xmm0,xmm7 2410 rol eax,5 2411 add edi,esi 2412 xor ebp,ecx 2413 ror ebx,7 2414 add edi,eax 2415 add edx,DWORD [28+esp] 2416 xor ebp,ebx 2417 mov esi,edi 2418 rol edi,5 2419 add edx,ebp 2420 xor esi,ebx 2421 ror eax,7 2422 add edx,edi 2423 add ecx,DWORD [32+esp] 2424 xor esi,eax 2425 mov ebp,edx 2426 rol edx,5 2427 add ecx,esi 2428 xor ebp,eax 2429 ror edi,7 2430db 102,15,56,0,214 2431 add ecx,edx 2432 add ebx,DWORD [36+esp] 2433 xor ebp,edi 2434 mov esi,ecx 2435 paddd xmm1,xmm7 2436 rol ecx,5 2437 add ebx,ebp 2438 xor esi,edi 2439 ror edx,7 2440 movdqa [16+esp],xmm1 2441 add ebx,ecx 2442 add eax,DWORD [40+esp] 2443 xor esi,edx 2444 mov ebp,ebx 2445 psubd xmm1,xmm7 2446 rol ebx,5 2447 add eax,esi 2448 xor ebp,edx 2449 ror ecx,7 2450 add eax,ebx 2451 add edi,DWORD [44+esp] 2452 xor ebp,ecx 2453 mov esi,eax 2454 rol eax,5 2455 add edi,ebp 2456 xor esi,ecx 2457 ror ebx,7 2458 add edi,eax 2459 add edx,DWORD [48+esp] 2460 xor esi,ebx 2461 mov ebp,edi 2462 rol edi,5 2463 add edx,esi 2464 xor ebp,ebx 2465 ror eax,7 2466db 102,15,56,0,222 2467 add edx,edi 2468 add ecx,DWORD [52+esp] 2469 xor ebp,eax 2470 mov esi,edx 2471 paddd xmm2,xmm7 2472 rol edx,5 2473 add ecx,ebp 2474 xor esi,eax 2475 ror edi,7 2476 movdqa [32+esp],xmm2 2477 add ecx,edx 2478 add ebx,DWORD [56+esp] 2479 xor esi,edi 2480 mov ebp,ecx 2481 psubd xmm2,xmm7 2482 rol ecx,5 2483 add ebx,esi 2484 xor ebp,edi 2485 ror edx,7 2486 add ebx,ecx 2487 add eax,DWORD [60+esp] 2488 xor ebp,edx 2489 mov esi,ebx 2490 rol ebx,5 2491 add eax,ebp 2492 ror ecx,7 2493 add eax,ebx 2494 mov ebp,DWORD [192+esp] 2495 add eax,DWORD [ebp] 2496 add esi,DWORD [4+ebp] 2497 add ecx,DWORD [8+ebp] 2498 mov DWORD [ebp],eax 2499 add edx,DWORD [12+ebp] 2500 mov DWORD [4+ebp],esi 2501 add edi,DWORD [16+ebp] 2502 mov DWORD [8+ebp],ecx 2503 mov ebx,ecx 2504 mov DWORD [12+ebp],edx 2505 xor ebx,edx 2506 mov DWORD [16+ebp],edi 2507 mov ebp,esi 2508 pshufd xmm4,xmm0,238 2509 and esi,ebx 2510 mov ebx,ebp 2511 jmp NEAR L$004loop 2512align 16 2513L$005done: 2514 add ebx,DWORD [16+esp] 2515 xor esi,edi 2516 mov ebp,ecx 2517 rol ecx,5 2518 add ebx,esi 2519 xor ebp,edi 2520 ror edx,7 2521 add ebx,ecx 2522 add eax,DWORD [20+esp] 2523 xor ebp,edx 2524 mov esi,ebx 2525 rol ebx,5 2526 add eax,ebp 2527 xor esi,edx 2528 ror ecx,7 2529 add eax,ebx 2530 add edi,DWORD [24+esp] 2531 xor esi,ecx 2532 mov ebp,eax 2533 rol eax,5 2534 add edi,esi 2535 xor ebp,ecx 2536 ror ebx,7 2537 add edi,eax 2538 add edx,DWORD [28+esp] 2539 xor ebp,ebx 2540 mov esi,edi 2541 rol edi,5 2542 add edx,ebp 2543 xor esi,ebx 2544 ror eax,7 2545 add edx,edi 2546 add ecx,DWORD [32+esp] 2547 xor esi,eax 2548 mov ebp,edx 2549 rol edx,5 2550 add ecx,esi 2551 xor ebp,eax 2552 ror edi,7 2553 add ecx,edx 2554 add ebx,DWORD [36+esp] 2555 xor ebp,edi 2556 mov esi,ecx 2557 rol ecx,5 2558 add ebx,ebp 2559 xor esi,edi 2560 ror edx,7 2561 add ebx,ecx 2562 add eax,DWORD [40+esp] 2563 xor esi,edx 2564 mov ebp,ebx 2565 rol ebx,5 2566 add eax,esi 2567 xor ebp,edx 2568 ror ecx,7 2569 add eax,ebx 2570 add edi,DWORD [44+esp] 2571 xor ebp,ecx 2572 mov esi,eax 2573 rol eax,5 2574 add edi,ebp 2575 xor esi,ecx 2576 ror ebx,7 2577 add edi,eax 2578 add edx,DWORD [48+esp] 2579 xor esi,ebx 2580 mov ebp,edi 2581 rol edi,5 2582 add edx,esi 2583 xor ebp,ebx 2584 ror eax,7 2585 add edx,edi 2586 add ecx,DWORD [52+esp] 2587 xor ebp,eax 2588 mov esi,edx 2589 rol edx,5 2590 add ecx,ebp 2591 xor esi,eax 2592 ror edi,7 2593 add ecx,edx 2594 add ebx,DWORD [56+esp] 2595 xor esi,edi 2596 mov ebp,ecx 2597 rol ecx,5 2598 add ebx,esi 2599 xor ebp,edi 2600 ror edx,7 2601 add ebx,ecx 2602 add eax,DWORD [60+esp] 2603 xor ebp,edx 2604 mov esi,ebx 2605 rol ebx,5 2606 add eax,ebp 2607 ror ecx,7 2608 add eax,ebx 2609 mov ebp,DWORD [192+esp] 2610 add eax,DWORD [ebp] 2611 mov esp,DWORD [204+esp] 2612 add esi,DWORD [4+ebp] 2613 add ecx,DWORD [8+ebp] 2614 mov DWORD [ebp],eax 2615 add edx,DWORD [12+ebp] 2616 mov DWORD [4+ebp],esi 2617 add edi,DWORD [16+ebp] 2618 mov DWORD [8+ebp],ecx 2619 mov DWORD [12+ebp],edx 2620 mov DWORD [16+ebp],edi 2621 pop edi 2622 pop esi 2623 pop ebx 2624 pop ebp 2625 ret 2626align 16 2627__sha1_block_data_order_avx: 2628 push ebp 2629 push ebx 2630 push esi 2631 push edi 2632 call L$006pic_point 2633L$006pic_point: 2634 pop ebp 2635 lea ebp,[(L$K_XX_XX-L$006pic_point)+ebp] 2636L$avx_shortcut: 2637 vzeroall 2638 vmovdqa xmm7,[ebp] 2639 vmovdqa xmm0,[16+ebp] 2640 vmovdqa xmm1,[32+ebp] 2641 vmovdqa xmm2,[48+ebp] 2642 vmovdqa xmm6,[64+ebp] 2643 mov edi,DWORD [20+esp] 2644 mov ebp,DWORD [24+esp] 2645 mov edx,DWORD [28+esp] 2646 mov esi,esp 2647 sub esp,208 2648 and esp,-64 2649 vmovdqa [112+esp],xmm0 2650 vmovdqa [128+esp],xmm1 2651 vmovdqa [144+esp],xmm2 2652 shl edx,6 2653 vmovdqa [160+esp],xmm7 2654 add edx,ebp 2655 vmovdqa [176+esp],xmm6 2656 add ebp,64 2657 mov DWORD [192+esp],edi 2658 mov DWORD [196+esp],ebp 2659 mov DWORD [200+esp],edx 2660 mov DWORD [204+esp],esi 2661 mov eax,DWORD [edi] 2662 mov ebx,DWORD [4+edi] 2663 mov ecx,DWORD [8+edi] 2664 mov edx,DWORD [12+edi] 2665 mov edi,DWORD [16+edi] 2666 mov esi,ebx 2667 vmovdqu xmm0,[ebp-64] 2668 vmovdqu xmm1,[ebp-48] 2669 vmovdqu xmm2,[ebp-32] 2670 vmovdqu xmm3,[ebp-16] 2671 vpshufb xmm0,xmm0,xmm6 2672 vpshufb xmm1,xmm1,xmm6 2673 vpshufb xmm2,xmm2,xmm6 2674 vmovdqa [96+esp],xmm7 2675 vpshufb xmm3,xmm3,xmm6 2676 vpaddd xmm4,xmm0,xmm7 2677 vpaddd xmm5,xmm1,xmm7 2678 vpaddd xmm6,xmm2,xmm7 2679 vmovdqa [esp],xmm4 2680 mov ebp,ecx 2681 vmovdqa [16+esp],xmm5 2682 xor ebp,edx 2683 vmovdqa [32+esp],xmm6 2684 and esi,ebp 2685 jmp NEAR L$007loop 2686align 16 2687L$007loop: 2688 shrd ebx,ebx,2 2689 xor esi,edx 2690 vpalignr xmm4,xmm1,xmm0,8 2691 mov ebp,eax 2692 add edi,DWORD [esp] 2693 vpaddd xmm7,xmm7,xmm3 2694 vmovdqa [64+esp],xmm0 2695 xor ebx,ecx 2696 shld eax,eax,5 2697 vpsrldq xmm6,xmm3,4 2698 add edi,esi 2699 and ebp,ebx 2700 vpxor xmm4,xmm4,xmm0 2701 xor ebx,ecx 2702 add edi,eax 2703 vpxor xmm6,xmm6,xmm2 2704 shrd eax,eax,7 2705 xor ebp,ecx 2706 vmovdqa [48+esp],xmm7 2707 mov esi,edi 2708 add edx,DWORD [4+esp] 2709 vpxor xmm4,xmm4,xmm6 2710 xor eax,ebx 2711 shld edi,edi,5 2712 add edx,ebp 2713 and esi,eax 2714 vpsrld xmm6,xmm4,31 2715 xor eax,ebx 2716 add edx,edi 2717 shrd edi,edi,7 2718 xor esi,ebx 2719 vpslldq xmm0,xmm4,12 2720 vpaddd xmm4,xmm4,xmm4 2721 mov ebp,edx 2722 add ecx,DWORD [8+esp] 2723 xor edi,eax 2724 shld edx,edx,5 2725 vpsrld xmm7,xmm0,30 2726 vpor xmm4,xmm4,xmm6 2727 add ecx,esi 2728 and ebp,edi 2729 xor edi,eax 2730 add ecx,edx 2731 vpslld xmm0,xmm0,2 2732 shrd edx,edx,7 2733 xor ebp,eax 2734 vpxor xmm4,xmm4,xmm7 2735 mov esi,ecx 2736 add ebx,DWORD [12+esp] 2737 xor edx,edi 2738 shld ecx,ecx,5 2739 vpxor xmm4,xmm4,xmm0 2740 add ebx,ebp 2741 and esi,edx 2742 vmovdqa xmm0,[96+esp] 2743 xor edx,edi 2744 add ebx,ecx 2745 shrd ecx,ecx,7 2746 xor esi,edi 2747 vpalignr xmm5,xmm2,xmm1,8 2748 mov ebp,ebx 2749 add eax,DWORD [16+esp] 2750 vpaddd xmm0,xmm0,xmm4 2751 vmovdqa [80+esp],xmm1 2752 xor ecx,edx 2753 shld ebx,ebx,5 2754 vpsrldq xmm7,xmm4,4 2755 add eax,esi 2756 and ebp,ecx 2757 vpxor xmm5,xmm5,xmm1 2758 xor ecx,edx 2759 add eax,ebx 2760 vpxor xmm7,xmm7,xmm3 2761 shrd ebx,ebx,7 2762 xor ebp,edx 2763 vmovdqa [esp],xmm0 2764 mov esi,eax 2765 add edi,DWORD [20+esp] 2766 vpxor xmm5,xmm5,xmm7 2767 xor ebx,ecx 2768 shld eax,eax,5 2769 add edi,ebp 2770 and esi,ebx 2771 vpsrld xmm7,xmm5,31 2772 xor ebx,ecx 2773 add edi,eax 2774 shrd eax,eax,7 2775 xor esi,ecx 2776 vpslldq xmm1,xmm5,12 2777 vpaddd xmm5,xmm5,xmm5 2778 mov ebp,edi 2779 add edx,DWORD [24+esp] 2780 xor eax,ebx 2781 shld edi,edi,5 2782 vpsrld xmm0,xmm1,30 2783 vpor xmm5,xmm5,xmm7 2784 add edx,esi 2785 and ebp,eax 2786 xor eax,ebx 2787 add edx,edi 2788 vpslld xmm1,xmm1,2 2789 shrd edi,edi,7 2790 xor ebp,ebx 2791 vpxor xmm5,xmm5,xmm0 2792 mov esi,edx 2793 add ecx,DWORD [28+esp] 2794 xor edi,eax 2795 shld edx,edx,5 2796 vpxor xmm5,xmm5,xmm1 2797 add ecx,ebp 2798 and esi,edi 2799 vmovdqa xmm1,[112+esp] 2800 xor edi,eax 2801 add ecx,edx 2802 shrd edx,edx,7 2803 xor esi,eax 2804 vpalignr xmm6,xmm3,xmm2,8 2805 mov ebp,ecx 2806 add ebx,DWORD [32+esp] 2807 vpaddd xmm1,xmm1,xmm5 2808 vmovdqa [96+esp],xmm2 2809 xor edx,edi 2810 shld ecx,ecx,5 2811 vpsrldq xmm0,xmm5,4 2812 add ebx,esi 2813 and ebp,edx 2814 vpxor xmm6,xmm6,xmm2 2815 xor edx,edi 2816 add ebx,ecx 2817 vpxor xmm0,xmm0,xmm4 2818 shrd ecx,ecx,7 2819 xor ebp,edi 2820 vmovdqa [16+esp],xmm1 2821 mov esi,ebx 2822 add eax,DWORD [36+esp] 2823 vpxor xmm6,xmm6,xmm0 2824 xor ecx,edx 2825 shld ebx,ebx,5 2826 add eax,ebp 2827 and esi,ecx 2828 vpsrld xmm0,xmm6,31 2829 xor ecx,edx 2830 add eax,ebx 2831 shrd ebx,ebx,7 2832 xor esi,edx 2833 vpslldq xmm2,xmm6,12 2834 vpaddd xmm6,xmm6,xmm6 2835 mov ebp,eax 2836 add edi,DWORD [40+esp] 2837 xor ebx,ecx 2838 shld eax,eax,5 2839 vpsrld xmm1,xmm2,30 2840 vpor xmm6,xmm6,xmm0 2841 add edi,esi 2842 and ebp,ebx 2843 xor ebx,ecx 2844 add edi,eax 2845 vpslld xmm2,xmm2,2 2846 vmovdqa xmm0,[64+esp] 2847 shrd eax,eax,7 2848 xor ebp,ecx 2849 vpxor xmm6,xmm6,xmm1 2850 mov esi,edi 2851 add edx,DWORD [44+esp] 2852 xor eax,ebx 2853 shld edi,edi,5 2854 vpxor xmm6,xmm6,xmm2 2855 add edx,ebp 2856 and esi,eax 2857 vmovdqa xmm2,[112+esp] 2858 xor eax,ebx 2859 add edx,edi 2860 shrd edi,edi,7 2861 xor esi,ebx 2862 vpalignr xmm7,xmm4,xmm3,8 2863 mov ebp,edx 2864 add ecx,DWORD [48+esp] 2865 vpaddd xmm2,xmm2,xmm6 2866 vmovdqa [64+esp],xmm3 2867 xor edi,eax 2868 shld edx,edx,5 2869 vpsrldq xmm1,xmm6,4 2870 add ecx,esi 2871 and ebp,edi 2872 vpxor xmm7,xmm7,xmm3 2873 xor edi,eax 2874 add ecx,edx 2875 vpxor xmm1,xmm1,xmm5 2876 shrd edx,edx,7 2877 xor ebp,eax 2878 vmovdqa [32+esp],xmm2 2879 mov esi,ecx 2880 add ebx,DWORD [52+esp] 2881 vpxor xmm7,xmm7,xmm1 2882 xor edx,edi 2883 shld ecx,ecx,5 2884 add ebx,ebp 2885 and esi,edx 2886 vpsrld xmm1,xmm7,31 2887 xor edx,edi 2888 add ebx,ecx 2889 shrd ecx,ecx,7 2890 xor esi,edi 2891 vpslldq xmm3,xmm7,12 2892 vpaddd xmm7,xmm7,xmm7 2893 mov ebp,ebx 2894 add eax,DWORD [56+esp] 2895 xor ecx,edx 2896 shld ebx,ebx,5 2897 vpsrld xmm2,xmm3,30 2898 vpor xmm7,xmm7,xmm1 2899 add eax,esi 2900 and ebp,ecx 2901 xor ecx,edx 2902 add eax,ebx 2903 vpslld xmm3,xmm3,2 2904 vmovdqa xmm1,[80+esp] 2905 shrd ebx,ebx,7 2906 xor ebp,edx 2907 vpxor xmm7,xmm7,xmm2 2908 mov esi,eax 2909 add edi,DWORD [60+esp] 2910 xor ebx,ecx 2911 shld eax,eax,5 2912 vpxor xmm7,xmm7,xmm3 2913 add edi,ebp 2914 and esi,ebx 2915 vmovdqa xmm3,[112+esp] 2916 xor ebx,ecx 2917 add edi,eax 2918 vpalignr xmm2,xmm7,xmm6,8 2919 vpxor xmm0,xmm0,xmm4 2920 shrd eax,eax,7 2921 xor esi,ecx 2922 mov ebp,edi 2923 add edx,DWORD [esp] 2924 vpxor xmm0,xmm0,xmm1 2925 vmovdqa [80+esp],xmm4 2926 xor eax,ebx 2927 shld edi,edi,5 2928 vmovdqa xmm4,xmm3 2929 vpaddd xmm3,xmm3,xmm7 2930 add edx,esi 2931 and ebp,eax 2932 vpxor xmm0,xmm0,xmm2 2933 xor eax,ebx 2934 add edx,edi 2935 shrd edi,edi,7 2936 xor ebp,ebx 2937 vpsrld xmm2,xmm0,30 2938 vmovdqa [48+esp],xmm3 2939 mov esi,edx 2940 add ecx,DWORD [4+esp] 2941 xor edi,eax 2942 shld edx,edx,5 2943 vpslld xmm0,xmm0,2 2944 add ecx,ebp 2945 and esi,edi 2946 xor edi,eax 2947 add ecx,edx 2948 shrd edx,edx,7 2949 xor esi,eax 2950 mov ebp,ecx 2951 add ebx,DWORD [8+esp] 2952 vpor xmm0,xmm0,xmm2 2953 xor edx,edi 2954 shld ecx,ecx,5 2955 vmovdqa xmm2,[96+esp] 2956 add ebx,esi 2957 and ebp,edx 2958 xor edx,edi 2959 add ebx,ecx 2960 add eax,DWORD [12+esp] 2961 xor ebp,edi 2962 mov esi,ebx 2963 shld ebx,ebx,5 2964 add eax,ebp 2965 xor esi,edx 2966 shrd ecx,ecx,7 2967 add eax,ebx 2968 vpalignr xmm3,xmm0,xmm7,8 2969 vpxor xmm1,xmm1,xmm5 2970 add edi,DWORD [16+esp] 2971 xor esi,ecx 2972 mov ebp,eax 2973 shld eax,eax,5 2974 vpxor xmm1,xmm1,xmm2 2975 vmovdqa [96+esp],xmm5 2976 add edi,esi 2977 xor ebp,ecx 2978 vmovdqa xmm5,xmm4 2979 vpaddd xmm4,xmm4,xmm0 2980 shrd ebx,ebx,7 2981 add edi,eax 2982 vpxor xmm1,xmm1,xmm3 2983 add edx,DWORD [20+esp] 2984 xor ebp,ebx 2985 mov esi,edi 2986 shld edi,edi,5 2987 vpsrld xmm3,xmm1,30 2988 vmovdqa [esp],xmm4 2989 add edx,ebp 2990 xor esi,ebx 2991 shrd eax,eax,7 2992 add edx,edi 2993 vpslld xmm1,xmm1,2 2994 add ecx,DWORD [24+esp] 2995 xor esi,eax 2996 mov ebp,edx 2997 shld edx,edx,5 2998 add ecx,esi 2999 xor ebp,eax 3000 shrd edi,edi,7 3001 add ecx,edx 3002 vpor xmm1,xmm1,xmm3 3003 add ebx,DWORD [28+esp] 3004 xor ebp,edi 3005 vmovdqa xmm3,[64+esp] 3006 mov esi,ecx 3007 shld ecx,ecx,5 3008 add ebx,ebp 3009 xor esi,edi 3010 shrd edx,edx,7 3011 add ebx,ecx 3012 vpalignr xmm4,xmm1,xmm0,8 3013 vpxor xmm2,xmm2,xmm6 3014 add eax,DWORD [32+esp] 3015 xor esi,edx 3016 mov ebp,ebx 3017 shld ebx,ebx,5 3018 vpxor xmm2,xmm2,xmm3 3019 vmovdqa [64+esp],xmm6 3020 add eax,esi 3021 xor ebp,edx 3022 vmovdqa xmm6,[128+esp] 3023 vpaddd xmm5,xmm5,xmm1 3024 shrd ecx,ecx,7 3025 add eax,ebx 3026 vpxor xmm2,xmm2,xmm4 3027 add edi,DWORD [36+esp] 3028 xor ebp,ecx 3029 mov esi,eax 3030 shld eax,eax,5 3031 vpsrld xmm4,xmm2,30 3032 vmovdqa [16+esp],xmm5 3033 add edi,ebp 3034 xor esi,ecx 3035 shrd ebx,ebx,7 3036 add edi,eax 3037 vpslld xmm2,xmm2,2 3038 add edx,DWORD [40+esp] 3039 xor esi,ebx 3040 mov ebp,edi 3041 shld edi,edi,5 3042 add edx,esi 3043 xor ebp,ebx 3044 shrd eax,eax,7 3045 add edx,edi 3046 vpor xmm2,xmm2,xmm4 3047 add ecx,DWORD [44+esp] 3048 xor ebp,eax 3049 vmovdqa xmm4,[80+esp] 3050 mov esi,edx 3051 shld edx,edx,5 3052 add ecx,ebp 3053 xor esi,eax 3054 shrd edi,edi,7 3055 add ecx,edx 3056 vpalignr xmm5,xmm2,xmm1,8 3057 vpxor xmm3,xmm3,xmm7 3058 add ebx,DWORD [48+esp] 3059 xor esi,edi 3060 mov ebp,ecx 3061 shld ecx,ecx,5 3062 vpxor xmm3,xmm3,xmm4 3063 vmovdqa [80+esp],xmm7 3064 add ebx,esi 3065 xor ebp,edi 3066 vmovdqa xmm7,xmm6 3067 vpaddd xmm6,xmm6,xmm2 3068 shrd edx,edx,7 3069 add ebx,ecx 3070 vpxor xmm3,xmm3,xmm5 3071 add eax,DWORD [52+esp] 3072 xor ebp,edx 3073 mov esi,ebx 3074 shld ebx,ebx,5 3075 vpsrld xmm5,xmm3,30 3076 vmovdqa [32+esp],xmm6 3077 add eax,ebp 3078 xor esi,edx 3079 shrd ecx,ecx,7 3080 add eax,ebx 3081 vpslld xmm3,xmm3,2 3082 add edi,DWORD [56+esp] 3083 xor esi,ecx 3084 mov ebp,eax 3085 shld eax,eax,5 3086 add edi,esi 3087 xor ebp,ecx 3088 shrd ebx,ebx,7 3089 add edi,eax 3090 vpor xmm3,xmm3,xmm5 3091 add edx,DWORD [60+esp] 3092 xor ebp,ebx 3093 vmovdqa xmm5,[96+esp] 3094 mov esi,edi 3095 shld edi,edi,5 3096 add edx,ebp 3097 xor esi,ebx 3098 shrd eax,eax,7 3099 add edx,edi 3100 vpalignr xmm6,xmm3,xmm2,8 3101 vpxor xmm4,xmm4,xmm0 3102 add ecx,DWORD [esp] 3103 xor esi,eax 3104 mov ebp,edx 3105 shld edx,edx,5 3106 vpxor xmm4,xmm4,xmm5 3107 vmovdqa [96+esp],xmm0 3108 add ecx,esi 3109 xor ebp,eax 3110 vmovdqa xmm0,xmm7 3111 vpaddd xmm7,xmm7,xmm3 3112 shrd edi,edi,7 3113 add ecx,edx 3114 vpxor xmm4,xmm4,xmm6 3115 add ebx,DWORD [4+esp] 3116 xor ebp,edi 3117 mov esi,ecx 3118 shld ecx,ecx,5 3119 vpsrld xmm6,xmm4,30 3120 vmovdqa [48+esp],xmm7 3121 add ebx,ebp 3122 xor esi,edi 3123 shrd edx,edx,7 3124 add ebx,ecx 3125 vpslld xmm4,xmm4,2 3126 add eax,DWORD [8+esp] 3127 xor esi,edx 3128 mov ebp,ebx 3129 shld ebx,ebx,5 3130 add eax,esi 3131 xor ebp,edx 3132 shrd ecx,ecx,7 3133 add eax,ebx 3134 vpor xmm4,xmm4,xmm6 3135 add edi,DWORD [12+esp] 3136 xor ebp,ecx 3137 vmovdqa xmm6,[64+esp] 3138 mov esi,eax 3139 shld eax,eax,5 3140 add edi,ebp 3141 xor esi,ecx 3142 shrd ebx,ebx,7 3143 add edi,eax 3144 vpalignr xmm7,xmm4,xmm3,8 3145 vpxor xmm5,xmm5,xmm1 3146 add edx,DWORD [16+esp] 3147 xor esi,ebx 3148 mov ebp,edi 3149 shld edi,edi,5 3150 vpxor xmm5,xmm5,xmm6 3151 vmovdqa [64+esp],xmm1 3152 add edx,esi 3153 xor ebp,ebx 3154 vmovdqa xmm1,xmm0 3155 vpaddd xmm0,xmm0,xmm4 3156 shrd eax,eax,7 3157 add edx,edi 3158 vpxor xmm5,xmm5,xmm7 3159 add ecx,DWORD [20+esp] 3160 xor ebp,eax 3161 mov esi,edx 3162 shld edx,edx,5 3163 vpsrld xmm7,xmm5,30 3164 vmovdqa [esp],xmm0 3165 add ecx,ebp 3166 xor esi,eax 3167 shrd edi,edi,7 3168 add ecx,edx 3169 vpslld xmm5,xmm5,2 3170 add ebx,DWORD [24+esp] 3171 xor esi,edi 3172 mov ebp,ecx 3173 shld ecx,ecx,5 3174 add ebx,esi 3175 xor ebp,edi 3176 shrd edx,edx,7 3177 add ebx,ecx 3178 vpor xmm5,xmm5,xmm7 3179 add eax,DWORD [28+esp] 3180 vmovdqa xmm7,[80+esp] 3181 shrd ecx,ecx,7 3182 mov esi,ebx 3183 xor ebp,edx 3184 shld ebx,ebx,5 3185 add eax,ebp 3186 xor esi,ecx 3187 xor ecx,edx 3188 add eax,ebx 3189 vpalignr xmm0,xmm5,xmm4,8 3190 vpxor xmm6,xmm6,xmm2 3191 add edi,DWORD [32+esp] 3192 and esi,ecx 3193 xor ecx,edx 3194 shrd ebx,ebx,7 3195 vpxor xmm6,xmm6,xmm7 3196 vmovdqa [80+esp],xmm2 3197 mov ebp,eax 3198 xor esi,ecx 3199 vmovdqa xmm2,xmm1 3200 vpaddd xmm1,xmm1,xmm5 3201 shld eax,eax,5 3202 add edi,esi 3203 vpxor xmm6,xmm6,xmm0 3204 xor ebp,ebx 3205 xor ebx,ecx 3206 add edi,eax 3207 add edx,DWORD [36+esp] 3208 vpsrld xmm0,xmm6,30 3209 vmovdqa [16+esp],xmm1 3210 and ebp,ebx 3211 xor ebx,ecx 3212 shrd eax,eax,7 3213 mov esi,edi 3214 vpslld xmm6,xmm6,2 3215 xor ebp,ebx 3216 shld edi,edi,5 3217 add edx,ebp 3218 xor esi,eax 3219 xor eax,ebx 3220 add edx,edi 3221 add ecx,DWORD [40+esp] 3222 and esi,eax 3223 vpor xmm6,xmm6,xmm0 3224 xor eax,ebx 3225 shrd edi,edi,7 3226 vmovdqa xmm0,[96+esp] 3227 mov ebp,edx 3228 xor esi,eax 3229 shld edx,edx,5 3230 add ecx,esi 3231 xor ebp,edi 3232 xor edi,eax 3233 add ecx,edx 3234 add ebx,DWORD [44+esp] 3235 and ebp,edi 3236 xor edi,eax 3237 shrd edx,edx,7 3238 mov esi,ecx 3239 xor ebp,edi 3240 shld ecx,ecx,5 3241 add ebx,ebp 3242 xor esi,edx 3243 xor edx,edi 3244 add ebx,ecx 3245 vpalignr xmm1,xmm6,xmm5,8 3246 vpxor xmm7,xmm7,xmm3 3247 add eax,DWORD [48+esp] 3248 and esi,edx 3249 xor edx,edi 3250 shrd ecx,ecx,7 3251 vpxor xmm7,xmm7,xmm0 3252 vmovdqa [96+esp],xmm3 3253 mov ebp,ebx 3254 xor esi,edx 3255 vmovdqa xmm3,[144+esp] 3256 vpaddd xmm2,xmm2,xmm6 3257 shld ebx,ebx,5 3258 add eax,esi 3259 vpxor xmm7,xmm7,xmm1 3260 xor ebp,ecx 3261 xor ecx,edx 3262 add eax,ebx 3263 add edi,DWORD [52+esp] 3264 vpsrld xmm1,xmm7,30 3265 vmovdqa [32+esp],xmm2 3266 and ebp,ecx 3267 xor ecx,edx 3268 shrd ebx,ebx,7 3269 mov esi,eax 3270 vpslld xmm7,xmm7,2 3271 xor ebp,ecx 3272 shld eax,eax,5 3273 add edi,ebp 3274 xor esi,ebx 3275 xor ebx,ecx 3276 add edi,eax 3277 add edx,DWORD [56+esp] 3278 and esi,ebx 3279 vpor xmm7,xmm7,xmm1 3280 xor ebx,ecx 3281 shrd eax,eax,7 3282 vmovdqa xmm1,[64+esp] 3283 mov ebp,edi 3284 xor esi,ebx 3285 shld edi,edi,5 3286 add edx,esi 3287 xor ebp,eax 3288 xor eax,ebx 3289 add edx,edi 3290 add ecx,DWORD [60+esp] 3291 and ebp,eax 3292 xor eax,ebx 3293 shrd edi,edi,7 3294 mov esi,edx 3295 xor ebp,eax 3296 shld edx,edx,5 3297 add ecx,ebp 3298 xor esi,edi 3299 xor edi,eax 3300 add ecx,edx 3301 vpalignr xmm2,xmm7,xmm6,8 3302 vpxor xmm0,xmm0,xmm4 3303 add ebx,DWORD [esp] 3304 and esi,edi 3305 xor edi,eax 3306 shrd edx,edx,7 3307 vpxor xmm0,xmm0,xmm1 3308 vmovdqa [64+esp],xmm4 3309 mov ebp,ecx 3310 xor esi,edi 3311 vmovdqa xmm4,xmm3 3312 vpaddd xmm3,xmm3,xmm7 3313 shld ecx,ecx,5 3314 add ebx,esi 3315 vpxor xmm0,xmm0,xmm2 3316 xor ebp,edx 3317 xor edx,edi 3318 add ebx,ecx 3319 add eax,DWORD [4+esp] 3320 vpsrld xmm2,xmm0,30 3321 vmovdqa [48+esp],xmm3 3322 and ebp,edx 3323 xor edx,edi 3324 shrd ecx,ecx,7 3325 mov esi,ebx 3326 vpslld xmm0,xmm0,2 3327 xor ebp,edx 3328 shld ebx,ebx,5 3329 add eax,ebp 3330 xor esi,ecx 3331 xor ecx,edx 3332 add eax,ebx 3333 add edi,DWORD [8+esp] 3334 and esi,ecx 3335 vpor xmm0,xmm0,xmm2 3336 xor ecx,edx 3337 shrd ebx,ebx,7 3338 vmovdqa xmm2,[80+esp] 3339 mov ebp,eax 3340 xor esi,ecx 3341 shld eax,eax,5 3342 add edi,esi 3343 xor ebp,ebx 3344 xor ebx,ecx 3345 add edi,eax 3346 add edx,DWORD [12+esp] 3347 and ebp,ebx 3348 xor ebx,ecx 3349 shrd eax,eax,7 3350 mov esi,edi 3351 xor ebp,ebx 3352 shld edi,edi,5 3353 add edx,ebp 3354 xor esi,eax 3355 xor eax,ebx 3356 add edx,edi 3357 vpalignr xmm3,xmm0,xmm7,8 3358 vpxor xmm1,xmm1,xmm5 3359 add ecx,DWORD [16+esp] 3360 and esi,eax 3361 xor eax,ebx 3362 shrd edi,edi,7 3363 vpxor xmm1,xmm1,xmm2 3364 vmovdqa [80+esp],xmm5 3365 mov ebp,edx 3366 xor esi,eax 3367 vmovdqa xmm5,xmm4 3368 vpaddd xmm4,xmm4,xmm0 3369 shld edx,edx,5 3370 add ecx,esi 3371 vpxor xmm1,xmm1,xmm3 3372 xor ebp,edi 3373 xor edi,eax 3374 add ecx,edx 3375 add ebx,DWORD [20+esp] 3376 vpsrld xmm3,xmm1,30 3377 vmovdqa [esp],xmm4 3378 and ebp,edi 3379 xor edi,eax 3380 shrd edx,edx,7 3381 mov esi,ecx 3382 vpslld xmm1,xmm1,2 3383 xor ebp,edi 3384 shld ecx,ecx,5 3385 add ebx,ebp 3386 xor esi,edx 3387 xor edx,edi 3388 add ebx,ecx 3389 add eax,DWORD [24+esp] 3390 and esi,edx 3391 vpor xmm1,xmm1,xmm3 3392 xor edx,edi 3393 shrd ecx,ecx,7 3394 vmovdqa xmm3,[96+esp] 3395 mov ebp,ebx 3396 xor esi,edx 3397 shld ebx,ebx,5 3398 add eax,esi 3399 xor ebp,ecx 3400 xor ecx,edx 3401 add eax,ebx 3402 add edi,DWORD [28+esp] 3403 and ebp,ecx 3404 xor ecx,edx 3405 shrd ebx,ebx,7 3406 mov esi,eax 3407 xor ebp,ecx 3408 shld eax,eax,5 3409 add edi,ebp 3410 xor esi,ebx 3411 xor ebx,ecx 3412 add edi,eax 3413 vpalignr xmm4,xmm1,xmm0,8 3414 vpxor xmm2,xmm2,xmm6 3415 add edx,DWORD [32+esp] 3416 and esi,ebx 3417 xor ebx,ecx 3418 shrd eax,eax,7 3419 vpxor xmm2,xmm2,xmm3 3420 vmovdqa [96+esp],xmm6 3421 mov ebp,edi 3422 xor esi,ebx 3423 vmovdqa xmm6,xmm5 3424 vpaddd xmm5,xmm5,xmm1 3425 shld edi,edi,5 3426 add edx,esi 3427 vpxor xmm2,xmm2,xmm4 3428 xor ebp,eax 3429 xor eax,ebx 3430 add edx,edi 3431 add ecx,DWORD [36+esp] 3432 vpsrld xmm4,xmm2,30 3433 vmovdqa [16+esp],xmm5 3434 and ebp,eax 3435 xor eax,ebx 3436 shrd edi,edi,7 3437 mov esi,edx 3438 vpslld xmm2,xmm2,2 3439 xor ebp,eax 3440 shld edx,edx,5 3441 add ecx,ebp 3442 xor esi,edi 3443 xor edi,eax 3444 add ecx,edx 3445 add ebx,DWORD [40+esp] 3446 and esi,edi 3447 vpor xmm2,xmm2,xmm4 3448 xor edi,eax 3449 shrd edx,edx,7 3450 vmovdqa xmm4,[64+esp] 3451 mov ebp,ecx 3452 xor esi,edi 3453 shld ecx,ecx,5 3454 add ebx,esi 3455 xor ebp,edx 3456 xor edx,edi 3457 add ebx,ecx 3458 add eax,DWORD [44+esp] 3459 and ebp,edx 3460 xor edx,edi 3461 shrd ecx,ecx,7 3462 mov esi,ebx 3463 xor ebp,edx 3464 shld ebx,ebx,5 3465 add eax,ebp 3466 xor esi,edx 3467 add eax,ebx 3468 vpalignr xmm5,xmm2,xmm1,8 3469 vpxor xmm3,xmm3,xmm7 3470 add edi,DWORD [48+esp] 3471 xor esi,ecx 3472 mov ebp,eax 3473 shld eax,eax,5 3474 vpxor xmm3,xmm3,xmm4 3475 vmovdqa [64+esp],xmm7 3476 add edi,esi 3477 xor ebp,ecx 3478 vmovdqa xmm7,xmm6 3479 vpaddd xmm6,xmm6,xmm2 3480 shrd ebx,ebx,7 3481 add edi,eax 3482 vpxor xmm3,xmm3,xmm5 3483 add edx,DWORD [52+esp] 3484 xor ebp,ebx 3485 mov esi,edi 3486 shld edi,edi,5 3487 vpsrld xmm5,xmm3,30 3488 vmovdqa [32+esp],xmm6 3489 add edx,ebp 3490 xor esi,ebx 3491 shrd eax,eax,7 3492 add edx,edi 3493 vpslld xmm3,xmm3,2 3494 add ecx,DWORD [56+esp] 3495 xor esi,eax 3496 mov ebp,edx 3497 shld edx,edx,5 3498 add ecx,esi 3499 xor ebp,eax 3500 shrd edi,edi,7 3501 add ecx,edx 3502 vpor xmm3,xmm3,xmm5 3503 add ebx,DWORD [60+esp] 3504 xor ebp,edi 3505 mov esi,ecx 3506 shld ecx,ecx,5 3507 add ebx,ebp 3508 xor esi,edi 3509 shrd edx,edx,7 3510 add ebx,ecx 3511 add eax,DWORD [esp] 3512 vpaddd xmm7,xmm7,xmm3 3513 xor esi,edx 3514 mov ebp,ebx 3515 shld ebx,ebx,5 3516 add eax,esi 3517 vmovdqa [48+esp],xmm7 3518 xor ebp,edx 3519 shrd ecx,ecx,7 3520 add eax,ebx 3521 add edi,DWORD [4+esp] 3522 xor ebp,ecx 3523 mov esi,eax 3524 shld eax,eax,5 3525 add edi,ebp 3526 xor esi,ecx 3527 shrd ebx,ebx,7 3528 add edi,eax 3529 add edx,DWORD [8+esp] 3530 xor esi,ebx 3531 mov ebp,edi 3532 shld edi,edi,5 3533 add edx,esi 3534 xor ebp,ebx 3535 shrd eax,eax,7 3536 add edx,edi 3537 add ecx,DWORD [12+esp] 3538 xor ebp,eax 3539 mov esi,edx 3540 shld edx,edx,5 3541 add ecx,ebp 3542 xor esi,eax 3543 shrd edi,edi,7 3544 add ecx,edx 3545 mov ebp,DWORD [196+esp] 3546 cmp ebp,DWORD [200+esp] 3547 je NEAR L$008done 3548 vmovdqa xmm7,[160+esp] 3549 vmovdqa xmm6,[176+esp] 3550 vmovdqu xmm0,[ebp] 3551 vmovdqu xmm1,[16+ebp] 3552 vmovdqu xmm2,[32+ebp] 3553 vmovdqu xmm3,[48+ebp] 3554 add ebp,64 3555 vpshufb xmm0,xmm0,xmm6 3556 mov DWORD [196+esp],ebp 3557 vmovdqa [96+esp],xmm7 3558 add ebx,DWORD [16+esp] 3559 xor esi,edi 3560 vpshufb xmm1,xmm1,xmm6 3561 mov ebp,ecx 3562 shld ecx,ecx,5 3563 vpaddd xmm4,xmm0,xmm7 3564 add ebx,esi 3565 xor ebp,edi 3566 shrd edx,edx,7 3567 add ebx,ecx 3568 vmovdqa [esp],xmm4 3569 add eax,DWORD [20+esp] 3570 xor ebp,edx 3571 mov esi,ebx 3572 shld ebx,ebx,5 3573 add eax,ebp 3574 xor esi,edx 3575 shrd ecx,ecx,7 3576 add eax,ebx 3577 add edi,DWORD [24+esp] 3578 xor esi,ecx 3579 mov ebp,eax 3580 shld eax,eax,5 3581 add edi,esi 3582 xor ebp,ecx 3583 shrd ebx,ebx,7 3584 add edi,eax 3585 add edx,DWORD [28+esp] 3586 xor ebp,ebx 3587 mov esi,edi 3588 shld edi,edi,5 3589 add edx,ebp 3590 xor esi,ebx 3591 shrd eax,eax,7 3592 add edx,edi 3593 add ecx,DWORD [32+esp] 3594 xor esi,eax 3595 vpshufb xmm2,xmm2,xmm6 3596 mov ebp,edx 3597 shld edx,edx,5 3598 vpaddd xmm5,xmm1,xmm7 3599 add ecx,esi 3600 xor ebp,eax 3601 shrd edi,edi,7 3602 add ecx,edx 3603 vmovdqa [16+esp],xmm5 3604 add ebx,DWORD [36+esp] 3605 xor ebp,edi 3606 mov esi,ecx 3607 shld ecx,ecx,5 3608 add ebx,ebp 3609 xor esi,edi 3610 shrd edx,edx,7 3611 add ebx,ecx 3612 add eax,DWORD [40+esp] 3613 xor esi,edx 3614 mov ebp,ebx 3615 shld ebx,ebx,5 3616 add eax,esi 3617 xor ebp,edx 3618 shrd ecx,ecx,7 3619 add eax,ebx 3620 add edi,DWORD [44+esp] 3621 xor ebp,ecx 3622 mov esi,eax 3623 shld eax,eax,5 3624 add edi,ebp 3625 xor esi,ecx 3626 shrd ebx,ebx,7 3627 add edi,eax 3628 add edx,DWORD [48+esp] 3629 xor esi,ebx 3630 vpshufb xmm3,xmm3,xmm6 3631 mov ebp,edi 3632 shld edi,edi,5 3633 vpaddd xmm6,xmm2,xmm7 3634 add edx,esi 3635 xor ebp,ebx 3636 shrd eax,eax,7 3637 add edx,edi 3638 vmovdqa [32+esp],xmm6 3639 add ecx,DWORD [52+esp] 3640 xor ebp,eax 3641 mov esi,edx 3642 shld edx,edx,5 3643 add ecx,ebp 3644 xor esi,eax 3645 shrd edi,edi,7 3646 add ecx,edx 3647 add ebx,DWORD [56+esp] 3648 xor esi,edi 3649 mov ebp,ecx 3650 shld ecx,ecx,5 3651 add ebx,esi 3652 xor ebp,edi 3653 shrd edx,edx,7 3654 add ebx,ecx 3655 add eax,DWORD [60+esp] 3656 xor ebp,edx 3657 mov esi,ebx 3658 shld ebx,ebx,5 3659 add eax,ebp 3660 shrd ecx,ecx,7 3661 add eax,ebx 3662 mov ebp,DWORD [192+esp] 3663 add eax,DWORD [ebp] 3664 add esi,DWORD [4+ebp] 3665 add ecx,DWORD [8+ebp] 3666 mov DWORD [ebp],eax 3667 add edx,DWORD [12+ebp] 3668 mov DWORD [4+ebp],esi 3669 add edi,DWORD [16+ebp] 3670 mov ebx,ecx 3671 mov DWORD [8+ebp],ecx 3672 xor ebx,edx 3673 mov DWORD [12+ebp],edx 3674 mov DWORD [16+ebp],edi 3675 mov ebp,esi 3676 and esi,ebx 3677 mov ebx,ebp 3678 jmp NEAR L$007loop 3679align 16 3680L$008done: 3681 add ebx,DWORD [16+esp] 3682 xor esi,edi 3683 mov ebp,ecx 3684 shld ecx,ecx,5 3685 add ebx,esi 3686 xor ebp,edi 3687 shrd edx,edx,7 3688 add ebx,ecx 3689 add eax,DWORD [20+esp] 3690 xor ebp,edx 3691 mov esi,ebx 3692 shld ebx,ebx,5 3693 add eax,ebp 3694 xor esi,edx 3695 shrd ecx,ecx,7 3696 add eax,ebx 3697 add edi,DWORD [24+esp] 3698 xor esi,ecx 3699 mov ebp,eax 3700 shld eax,eax,5 3701 add edi,esi 3702 xor ebp,ecx 3703 shrd ebx,ebx,7 3704 add edi,eax 3705 add edx,DWORD [28+esp] 3706 xor ebp,ebx 3707 mov esi,edi 3708 shld edi,edi,5 3709 add edx,ebp 3710 xor esi,ebx 3711 shrd eax,eax,7 3712 add edx,edi 3713 add ecx,DWORD [32+esp] 3714 xor esi,eax 3715 mov ebp,edx 3716 shld edx,edx,5 3717 add ecx,esi 3718 xor ebp,eax 3719 shrd edi,edi,7 3720 add ecx,edx 3721 add ebx,DWORD [36+esp] 3722 xor ebp,edi 3723 mov esi,ecx 3724 shld ecx,ecx,5 3725 add ebx,ebp 3726 xor esi,edi 3727 shrd edx,edx,7 3728 add ebx,ecx 3729 add eax,DWORD [40+esp] 3730 xor esi,edx 3731 mov ebp,ebx 3732 shld ebx,ebx,5 3733 add eax,esi 3734 xor ebp,edx 3735 shrd ecx,ecx,7 3736 add eax,ebx 3737 add edi,DWORD [44+esp] 3738 xor ebp,ecx 3739 mov esi,eax 3740 shld eax,eax,5 3741 add edi,ebp 3742 xor esi,ecx 3743 shrd ebx,ebx,7 3744 add edi,eax 3745 add edx,DWORD [48+esp] 3746 xor esi,ebx 3747 mov ebp,edi 3748 shld edi,edi,5 3749 add edx,esi 3750 xor ebp,ebx 3751 shrd eax,eax,7 3752 add edx,edi 3753 add ecx,DWORD [52+esp] 3754 xor ebp,eax 3755 mov esi,edx 3756 shld edx,edx,5 3757 add ecx,ebp 3758 xor esi,eax 3759 shrd edi,edi,7 3760 add ecx,edx 3761 add ebx,DWORD [56+esp] 3762 xor esi,edi 3763 mov ebp,ecx 3764 shld ecx,ecx,5 3765 add ebx,esi 3766 xor ebp,edi 3767 shrd edx,edx,7 3768 add ebx,ecx 3769 add eax,DWORD [60+esp] 3770 xor ebp,edx 3771 mov esi,ebx 3772 shld ebx,ebx,5 3773 add eax,ebp 3774 shrd ecx,ecx,7 3775 add eax,ebx 3776 vzeroall 3777 mov ebp,DWORD [192+esp] 3778 add eax,DWORD [ebp] 3779 mov esp,DWORD [204+esp] 3780 add esi,DWORD [4+ebp] 3781 add ecx,DWORD [8+ebp] 3782 mov DWORD [ebp],eax 3783 add edx,DWORD [12+ebp] 3784 mov DWORD [4+ebp],esi 3785 add edi,DWORD [16+ebp] 3786 mov DWORD [8+ebp],ecx 3787 mov DWORD [12+ebp],edx 3788 mov DWORD [16+ebp],edi 3789 pop edi 3790 pop esi 3791 pop ebx 3792 pop ebp 3793 ret 3794align 64 3795L$K_XX_XX: 3796dd 1518500249,1518500249,1518500249,1518500249 3797dd 1859775393,1859775393,1859775393,1859775393 3798dd 2400959708,2400959708,2400959708,2400959708 3799dd 3395469782,3395469782,3395469782,3395469782 3800dd 66051,67438087,134810123,202182159 3801db 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0 3802db 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115 3803db 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82 3804db 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112 3805db 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 3806segment .bss 3807common _OPENSSL_ia32cap_P 16 3808%else 3809; Work around https://bugzilla.nasm.us/show_bug.cgi?id=3392738 3810ret 3811%endif 3812