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