1 .text 2 .globl _ossl_md5_block_asm_data_order 3 .align 4 4 _ossl_md5_block_asm_data_order: 5 L_ossl_md5_block_asm_data_order_begin: 6 %ifdef __CET__ 7 8 .byte 243,15,30,251 9 %endif 10 11 pushl %esi 12 pushl %edi 13 movl 12(%esp),%edi 14 movl 16(%esp),%esi 15 movl 20(%esp),%ecx 16 pushl %ebp 17 shll $6,%ecx 18 pushl %ebx 19 addl %esi,%ecx 20 subl $64,%ecx 21 movl (%edi),%eax 22 pushl %ecx 23 movl 4(%edi),%ebx 24 movl 8(%edi),%ecx 25 movl 12(%edi),%edx 26 L000start: 27 28 # R0 section 29 movl %ecx,%edi 30 movl (%esi),%ebp 31 # R0 0 32 xorl %edx,%edi 33 andl %ebx,%edi 34 leal 3614090360(%eax,%ebp,1),%eax 35 xorl %edx,%edi 36 movl 4(%esi),%ebp 37 addl %edi,%eax 38 roll $7,%eax 39 movl %ebx,%edi 40 addl %ebx,%eax 41 # R0 1 42 xorl %ecx,%edi 43 andl %eax,%edi 44 leal 3905402710(%edx,%ebp,1),%edx 45 xorl %ecx,%edi 46 movl 8(%esi),%ebp 47 addl %edi,%edx 48 roll $12,%edx 49 movl %eax,%edi 50 addl %eax,%edx 51 # R0 2 52 xorl %ebx,%edi 53 andl %edx,%edi 54 leal 606105819(%ecx,%ebp,1),%ecx 55 xorl %ebx,%edi 56 movl 12(%esi),%ebp 57 addl %edi,%ecx 58 roll $17,%ecx 59 movl %edx,%edi 60 addl %edx,%ecx 61 # R0 3 62 xorl %eax,%edi 63 andl %ecx,%edi 64 leal 3250441966(%ebx,%ebp,1),%ebx 65 xorl %eax,%edi 66 movl 16(%esi),%ebp 67 addl %edi,%ebx 68 roll $22,%ebx 69 movl %ecx,%edi 70 addl %ecx,%ebx 71 # R0 4 72 xorl %edx,%edi 73 andl %ebx,%edi 74 leal 4118548399(%eax,%ebp,1),%eax 75 xorl %edx,%edi 76 movl 20(%esi),%ebp 77 addl %edi,%eax 78 roll $7,%eax 79 movl %ebx,%edi 80 addl %ebx,%eax 81 # R0 5 82 xorl %ecx,%edi 83 andl %eax,%edi 84 leal 1200080426(%edx,%ebp,1),%edx 85 xorl %ecx,%edi 86 movl 24(%esi),%ebp 87 addl %edi,%edx 88 roll $12,%edx 89 movl %eax,%edi 90 addl %eax,%edx 91 # R0 6 92 xorl %ebx,%edi 93 andl %edx,%edi 94 leal 2821735955(%ecx,%ebp,1),%ecx 95 xorl %ebx,%edi 96 movl 28(%esi),%ebp 97 addl %edi,%ecx 98 roll $17,%ecx 99 movl %edx,%edi 100 addl %edx,%ecx 101 # R0 7 102 xorl %eax,%edi 103 andl %ecx,%edi 104 leal 4249261313(%ebx,%ebp,1),%ebx 105 xorl %eax,%edi 106 movl 32(%esi),%ebp 107 addl %edi,%ebx 108 roll $22,%ebx 109 movl %ecx,%edi 110 addl %ecx,%ebx 111 # R0 8 112 xorl %edx,%edi 113 andl %ebx,%edi 114 leal 1770035416(%eax,%ebp,1),%eax 115 xorl %edx,%edi 116 movl 36(%esi),%ebp 117 addl %edi,%eax 118 roll $7,%eax 119 movl %ebx,%edi 120 addl %ebx,%eax 121 # R0 9 122 xorl %ecx,%edi 123 andl %eax,%edi 124 leal 2336552879(%edx,%ebp,1),%edx 125 xorl %ecx,%edi 126 movl 40(%esi),%ebp 127 addl %edi,%edx 128 roll $12,%edx 129 movl %eax,%edi 130 addl %eax,%edx 131 # R0 10 132 xorl %ebx,%edi 133 andl %edx,%edi 134 leal 4294925233(%ecx,%ebp,1),%ecx 135 xorl %ebx,%edi 136 movl 44(%esi),%ebp 137 addl %edi,%ecx 138 roll $17,%ecx 139 movl %edx,%edi 140 addl %edx,%ecx 141 # R0 11 142 xorl %eax,%edi 143 andl %ecx,%edi 144 leal 2304563134(%ebx,%ebp,1),%ebx 145 xorl %eax,%edi 146 movl 48(%esi),%ebp 147 addl %edi,%ebx 148 roll $22,%ebx 149 movl %ecx,%edi 150 addl %ecx,%ebx 151 # R0 12 152 xorl %edx,%edi 153 andl %ebx,%edi 154 leal 1804603682(%eax,%ebp,1),%eax 155 xorl %edx,%edi 156 movl 52(%esi),%ebp 157 addl %edi,%eax 158 roll $7,%eax 159 movl %ebx,%edi 160 addl %ebx,%eax 161 # R0 13 162 xorl %ecx,%edi 163 andl %eax,%edi 164 leal 4254626195(%edx,%ebp,1),%edx 165 xorl %ecx,%edi 166 movl 56(%esi),%ebp 167 addl %edi,%edx 168 roll $12,%edx 169 movl %eax,%edi 170 addl %eax,%edx 171 # R0 14 172 xorl %ebx,%edi 173 andl %edx,%edi 174 leal 2792965006(%ecx,%ebp,1),%ecx 175 xorl %ebx,%edi 176 movl 60(%esi),%ebp 177 addl %edi,%ecx 178 roll $17,%ecx 179 movl %edx,%edi 180 addl %edx,%ecx 181 # R0 15 182 xorl %eax,%edi 183 andl %ecx,%edi 184 leal 1236535329(%ebx,%ebp,1),%ebx 185 xorl %eax,%edi 186 movl 4(%esi),%ebp 187 addl %edi,%ebx 188 roll $22,%ebx 189 movl %ecx,%edi 190 addl %ecx,%ebx 191 192 # R1 section 193 # R1 16 194 xorl %ebx,%edi 195 andl %edx,%edi 196 leal 4129170786(%eax,%ebp,1),%eax 197 xorl %ecx,%edi 198 movl 24(%esi),%ebp 199 addl %edi,%eax 200 movl %ebx,%edi 201 roll $5,%eax 202 addl %ebx,%eax 203 # R1 17 204 xorl %eax,%edi 205 andl %ecx,%edi 206 leal 3225465664(%edx,%ebp,1),%edx 207 xorl %ebx,%edi 208 movl 44(%esi),%ebp 209 addl %edi,%edx 210 movl %eax,%edi 211 roll $9,%edx 212 addl %eax,%edx 213 # R1 18 214 xorl %edx,%edi 215 andl %ebx,%edi 216 leal 643717713(%ecx,%ebp,1),%ecx 217 xorl %eax,%edi 218 movl (%esi),%ebp 219 addl %edi,%ecx 220 movl %edx,%edi 221 roll $14,%ecx 222 addl %edx,%ecx 223 # R1 19 224 xorl %ecx,%edi 225 andl %eax,%edi 226 leal 3921069994(%ebx,%ebp,1),%ebx 227 xorl %edx,%edi 228 movl 20(%esi),%ebp 229 addl %edi,%ebx 230 movl %ecx,%edi 231 roll $20,%ebx 232 addl %ecx,%ebx 233 # R1 20 234 xorl %ebx,%edi 235 andl %edx,%edi 236 leal 3593408605(%eax,%ebp,1),%eax 237 xorl %ecx,%edi 238 movl 40(%esi),%ebp 239 addl %edi,%eax 240 movl %ebx,%edi 241 roll $5,%eax 242 addl %ebx,%eax 243 # R1 21 244 xorl %eax,%edi 245 andl %ecx,%edi 246 leal 38016083(%edx,%ebp,1),%edx 247 xorl %ebx,%edi 248 movl 60(%esi),%ebp 249 addl %edi,%edx 250 movl %eax,%edi 251 roll $9,%edx 252 addl %eax,%edx 253 # R1 22 254 xorl %edx,%edi 255 andl %ebx,%edi 256 leal 3634488961(%ecx,%ebp,1),%ecx 257 xorl %eax,%edi 258 movl 16(%esi),%ebp 259 addl %edi,%ecx 260 movl %edx,%edi 261 roll $14,%ecx 262 addl %edx,%ecx 263 # R1 23 264 xorl %ecx,%edi 265 andl %eax,%edi 266 leal 3889429448(%ebx,%ebp,1),%ebx 267 xorl %edx,%edi 268 movl 36(%esi),%ebp 269 addl %edi,%ebx 270 movl %ecx,%edi 271 roll $20,%ebx 272 addl %ecx,%ebx 273 # R1 24 274 xorl %ebx,%edi 275 andl %edx,%edi 276 leal 568446438(%eax,%ebp,1),%eax 277 xorl %ecx,%edi 278 movl 56(%esi),%ebp 279 addl %edi,%eax 280 movl %ebx,%edi 281 roll $5,%eax 282 addl %ebx,%eax 283 # R1 25 284 xorl %eax,%edi 285 andl %ecx,%edi 286 leal 3275163606(%edx,%ebp,1),%edx 287 xorl %ebx,%edi 288 movl 12(%esi),%ebp 289 addl %edi,%edx 290 movl %eax,%edi 291 roll $9,%edx 292 addl %eax,%edx 293 # R1 26 294 xorl %edx,%edi 295 andl %ebx,%edi 296 leal 4107603335(%ecx,%ebp,1),%ecx 297 xorl %eax,%edi 298 movl 32(%esi),%ebp 299 addl %edi,%ecx 300 movl %edx,%edi 301 roll $14,%ecx 302 addl %edx,%ecx 303 # R1 27 304 xorl %ecx,%edi 305 andl %eax,%edi 306 leal 1163531501(%ebx,%ebp,1),%ebx 307 xorl %edx,%edi 308 movl 52(%esi),%ebp 309 addl %edi,%ebx 310 movl %ecx,%edi 311 roll $20,%ebx 312 addl %ecx,%ebx 313 # R1 28 314 xorl %ebx,%edi 315 andl %edx,%edi 316 leal 2850285829(%eax,%ebp,1),%eax 317 xorl %ecx,%edi 318 movl 8(%esi),%ebp 319 addl %edi,%eax 320 movl %ebx,%edi 321 roll $5,%eax 322 addl %ebx,%eax 323 # R1 29 324 xorl %eax,%edi 325 andl %ecx,%edi 326 leal 4243563512(%edx,%ebp,1),%edx 327 xorl %ebx,%edi 328 movl 28(%esi),%ebp 329 addl %edi,%edx 330 movl %eax,%edi 331 roll $9,%edx 332 addl %eax,%edx 333 # R1 30 334 xorl %edx,%edi 335 andl %ebx,%edi 336 leal 1735328473(%ecx,%ebp,1),%ecx 337 xorl %eax,%edi 338 movl 48(%esi),%ebp 339 addl %edi,%ecx 340 movl %edx,%edi 341 roll $14,%ecx 342 addl %edx,%ecx 343 # R1 31 344 xorl %ecx,%edi 345 andl %eax,%edi 346 leal 2368359562(%ebx,%ebp,1),%ebx 347 xorl %edx,%edi 348 movl 20(%esi),%ebp 349 addl %edi,%ebx 350 movl %ecx,%edi 351 roll $20,%ebx 352 addl %ecx,%ebx 353 354 # R2 section 355 # R2 32 356 xorl %edx,%edi 357 xorl %ebx,%edi 358 leal 4294588738(%eax,%ebp,1),%eax 359 addl %edi,%eax 360 movl 32(%esi),%ebp 361 roll $4,%eax 362 movl %ebx,%edi 363 # R2 33 364 addl %ebx,%eax 365 xorl %ecx,%edi 366 leal 2272392833(%edx,%ebp,1),%edx 367 xorl %eax,%edi 368 movl 44(%esi),%ebp 369 addl %edi,%edx 370 movl %eax,%edi 371 roll $11,%edx 372 addl %eax,%edx 373 # R2 34 374 xorl %ebx,%edi 375 xorl %edx,%edi 376 leal 1839030562(%ecx,%ebp,1),%ecx 377 addl %edi,%ecx 378 movl 56(%esi),%ebp 379 roll $16,%ecx 380 movl %edx,%edi 381 # R2 35 382 addl %edx,%ecx 383 xorl %eax,%edi 384 leal 4259657740(%ebx,%ebp,1),%ebx 385 xorl %ecx,%edi 386 movl 4(%esi),%ebp 387 addl %edi,%ebx 388 movl %ecx,%edi 389 roll $23,%ebx 390 addl %ecx,%ebx 391 # R2 36 392 xorl %edx,%edi 393 xorl %ebx,%edi 394 leal 2763975236(%eax,%ebp,1),%eax 395 addl %edi,%eax 396 movl 16(%esi),%ebp 397 roll $4,%eax 398 movl %ebx,%edi 399 # R2 37 400 addl %ebx,%eax 401 xorl %ecx,%edi 402 leal 1272893353(%edx,%ebp,1),%edx 403 xorl %eax,%edi 404 movl 28(%esi),%ebp 405 addl %edi,%edx 406 movl %eax,%edi 407 roll $11,%edx 408 addl %eax,%edx 409 # R2 38 410 xorl %ebx,%edi 411 xorl %edx,%edi 412 leal 4139469664(%ecx,%ebp,1),%ecx 413 addl %edi,%ecx 414 movl 40(%esi),%ebp 415 roll $16,%ecx 416 movl %edx,%edi 417 # R2 39 418 addl %edx,%ecx 419 xorl %eax,%edi 420 leal 3200236656(%ebx,%ebp,1),%ebx 421 xorl %ecx,%edi 422 movl 52(%esi),%ebp 423 addl %edi,%ebx 424 movl %ecx,%edi 425 roll $23,%ebx 426 addl %ecx,%ebx 427 # R2 40 428 xorl %edx,%edi 429 xorl %ebx,%edi 430 leal 681279174(%eax,%ebp,1),%eax 431 addl %edi,%eax 432 movl (%esi),%ebp 433 roll $4,%eax 434 movl %ebx,%edi 435 # R2 41 436 addl %ebx,%eax 437 xorl %ecx,%edi 438 leal 3936430074(%edx,%ebp,1),%edx 439 xorl %eax,%edi 440 movl 12(%esi),%ebp 441 addl %edi,%edx 442 movl %eax,%edi 443 roll $11,%edx 444 addl %eax,%edx 445 # R2 42 446 xorl %ebx,%edi 447 xorl %edx,%edi 448 leal 3572445317(%ecx,%ebp,1),%ecx 449 addl %edi,%ecx 450 movl 24(%esi),%ebp 451 roll $16,%ecx 452 movl %edx,%edi 453 # R2 43 454 addl %edx,%ecx 455 xorl %eax,%edi 456 leal 76029189(%ebx,%ebp,1),%ebx 457 xorl %ecx,%edi 458 movl 36(%esi),%ebp 459 addl %edi,%ebx 460 movl %ecx,%edi 461 roll $23,%ebx 462 addl %ecx,%ebx 463 # R2 44 464 xorl %edx,%edi 465 xorl %ebx,%edi 466 leal 3654602809(%eax,%ebp,1),%eax 467 addl %edi,%eax 468 movl 48(%esi),%ebp 469 roll $4,%eax 470 movl %ebx,%edi 471 # R2 45 472 addl %ebx,%eax 473 xorl %ecx,%edi 474 leal 3873151461(%edx,%ebp,1),%edx 475 xorl %eax,%edi 476 movl 60(%esi),%ebp 477 addl %edi,%edx 478 movl %eax,%edi 479 roll $11,%edx 480 addl %eax,%edx 481 # R2 46 482 xorl %ebx,%edi 483 xorl %edx,%edi 484 leal 530742520(%ecx,%ebp,1),%ecx 485 addl %edi,%ecx 486 movl 8(%esi),%ebp 487 roll $16,%ecx 488 movl %edx,%edi 489 # R2 47 490 addl %edx,%ecx 491 xorl %eax,%edi 492 leal 3299628645(%ebx,%ebp,1),%ebx 493 xorl %ecx,%edi 494 movl (%esi),%ebp 495 addl %edi,%ebx 496 movl $-1,%edi 497 roll $23,%ebx 498 addl %ecx,%ebx 499 500 # R3 section 501 # R3 48 502 xorl %edx,%edi 503 orl %ebx,%edi 504 leal 4096336452(%eax,%ebp,1),%eax 505 xorl %ecx,%edi 506 movl 28(%esi),%ebp 507 addl %edi,%eax 508 movl $-1,%edi 509 roll $6,%eax 510 xorl %ecx,%edi 511 addl %ebx,%eax 512 # R3 49 513 orl %eax,%edi 514 leal 1126891415(%edx,%ebp,1),%edx 515 xorl %ebx,%edi 516 movl 56(%esi),%ebp 517 addl %edi,%edx 518 movl $-1,%edi 519 roll $10,%edx 520 xorl %ebx,%edi 521 addl %eax,%edx 522 # R3 50 523 orl %edx,%edi 524 leal 2878612391(%ecx,%ebp,1),%ecx 525 xorl %eax,%edi 526 movl 20(%esi),%ebp 527 addl %edi,%ecx 528 movl $-1,%edi 529 roll $15,%ecx 530 xorl %eax,%edi 531 addl %edx,%ecx 532 # R3 51 533 orl %ecx,%edi 534 leal 4237533241(%ebx,%ebp,1),%ebx 535 xorl %edx,%edi 536 movl 48(%esi),%ebp 537 addl %edi,%ebx 538 movl $-1,%edi 539 roll $21,%ebx 540 xorl %edx,%edi 541 addl %ecx,%ebx 542 # R3 52 543 orl %ebx,%edi 544 leal 1700485571(%eax,%ebp,1),%eax 545 xorl %ecx,%edi 546 movl 12(%esi),%ebp 547 addl %edi,%eax 548 movl $-1,%edi 549 roll $6,%eax 550 xorl %ecx,%edi 551 addl %ebx,%eax 552 # R3 53 553 orl %eax,%edi 554 leal 2399980690(%edx,%ebp,1),%edx 555 xorl %ebx,%edi 556 movl 40(%esi),%ebp 557 addl %edi,%edx 558 movl $-1,%edi 559 roll $10,%edx 560 xorl %ebx,%edi 561 addl %eax,%edx 562 # R3 54 563 orl %edx,%edi 564 leal 4293915773(%ecx,%ebp,1),%ecx 565 xorl %eax,%edi 566 movl 4(%esi),%ebp 567 addl %edi,%ecx 568 movl $-1,%edi 569 roll $15,%ecx 570 xorl %eax,%edi 571 addl %edx,%ecx 572 # R3 55 573 orl %ecx,%edi 574 leal 2240044497(%ebx,%ebp,1),%ebx 575 xorl %edx,%edi 576 movl 32(%esi),%ebp 577 addl %edi,%ebx 578 movl $-1,%edi 579 roll $21,%ebx 580 xorl %edx,%edi 581 addl %ecx,%ebx 582 # R3 56 583 orl %ebx,%edi 584 leal 1873313359(%eax,%ebp,1),%eax 585 xorl %ecx,%edi 586 movl 60(%esi),%ebp 587 addl %edi,%eax 588 movl $-1,%edi 589 roll $6,%eax 590 xorl %ecx,%edi 591 addl %ebx,%eax 592 # R3 57 593 orl %eax,%edi 594 leal 4264355552(%edx,%ebp,1),%edx 595 xorl %ebx,%edi 596 movl 24(%esi),%ebp 597 addl %edi,%edx 598 movl $-1,%edi 599 roll $10,%edx 600 xorl %ebx,%edi 601 addl %eax,%edx 602 # R3 58 603 orl %edx,%edi 604 leal 2734768916(%ecx,%ebp,1),%ecx 605 xorl %eax,%edi 606 movl 52(%esi),%ebp 607 addl %edi,%ecx 608 movl $-1,%edi 609 roll $15,%ecx 610 xorl %eax,%edi 611 addl %edx,%ecx 612 # R3 59 613 orl %ecx,%edi 614 leal 1309151649(%ebx,%ebp,1),%ebx 615 xorl %edx,%edi 616 movl 16(%esi),%ebp 617 addl %edi,%ebx 618 movl $-1,%edi 619 roll $21,%ebx 620 xorl %edx,%edi 621 addl %ecx,%ebx 622 # R3 60 623 orl %ebx,%edi 624 leal 4149444226(%eax,%ebp,1),%eax 625 xorl %ecx,%edi 626 movl 44(%esi),%ebp 627 addl %edi,%eax 628 movl $-1,%edi 629 roll $6,%eax 630 xorl %ecx,%edi 631 addl %ebx,%eax 632 # R3 61 633 orl %eax,%edi 634 leal 3174756917(%edx,%ebp,1),%edx 635 xorl %ebx,%edi 636 movl 8(%esi),%ebp 637 addl %edi,%edx 638 movl $-1,%edi 639 roll $10,%edx 640 xorl %ebx,%edi 641 addl %eax,%edx 642 # R3 62 643 orl %edx,%edi 644 leal 718787259(%ecx,%ebp,1),%ecx 645 xorl %eax,%edi 646 movl 36(%esi),%ebp 647 addl %edi,%ecx 648 movl $-1,%edi 649 roll $15,%ecx 650 xorl %eax,%edi 651 addl %edx,%ecx 652 # R3 63 653 orl %ecx,%edi 654 leal 3951481745(%ebx,%ebp,1),%ebx 655 xorl %edx,%edi 656 movl 24(%esp),%ebp 657 addl %edi,%ebx 658 addl $64,%esi 659 roll $21,%ebx 660 movl (%ebp),%edi 661 addl %ecx,%ebx 662 addl %edi,%eax 663 movl 4(%ebp),%edi 664 addl %edi,%ebx 665 movl 8(%ebp),%edi 666 addl %edi,%ecx 667 movl 12(%ebp),%edi 668 addl %edi,%edx 669 movl %eax,(%ebp) 670 movl %ebx,4(%ebp) 671 movl (%esp),%edi 672 movl %ecx,8(%ebp) 673 movl %edx,12(%ebp) 674 cmpl %esi,%edi 675 jae L000start 676 popl %eax 677 popl %ebx 678 popl %ebp 679 popl %edi 680 popl %esi 681 ret 682