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