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