crypt586.s revision 95967
1 # $FreeBSD: head/secure/lib/libcrypto/i386/crypt586.s 95967 2002-05-03 00:14:39Z peter $ 2 # Dont even think of reading this code 3 # It was automatically generated by crypt586.pl 4 # Which is a perl program used to generate the x86 assember for 5 # any of elf, a.out, BSDI, Win32, gaswin (for GNU as on Win32) or Solaris 6 # eric <eay@cryptsoft.com> 7 8 .file "crypt586.s" 9 .version "01.01" 10gcc2_compiled.: 11.text 12 .align 16 13.globl fcrypt_body 14 .type fcrypt_body,@function 15fcrypt_body: 16 pushl %ebp 17 pushl %ebx 18 pushl %esi 19 pushl %edi 20 21 22 # Load the 2 words 23 xorl %edi, %edi 24 xorl %esi, %esi 25 movl 24(%esp), %ebp 26 pushl $25 27.L000start: 28 29 # Round 0 30 movl 32(%esp), %eax 31 movl %esi, %edx 32 shrl $16, %edx 33 movl 36(%esp), %ecx 34 xorl %esi, %edx 35 andl %edx, %eax 36 andl %ecx, %edx 37 movl %eax, %ebx 38 sall $16, %ebx 39 movl %edx, %ecx 40 sall $16, %ecx 41 xorl %ebx, %eax 42 xorl %ecx, %edx 43 movl (%ebp), %ebx 44 xorl %ebx, %eax 45 movl 4(%ebp), %ecx 46 xorl %esi, %eax 47 xorl %esi, %edx 48 xorl %ecx, %edx 49 andl $0xfcfcfcfc, %eax 50 xorl %ebx, %ebx 51 andl $0xcfcfcfcf, %edx 52 xorl %ecx, %ecx 53 movb %al, %bl 54 movb %ah, %cl 55 rorl $4, %edx 56 movl des_SPtrans(%ebx),%ebp 57 movb %dl, %bl 58 xorl %ebp, %edi 59 movl 0x200+des_SPtrans(%ecx),%ebp 60 xorl %ebp, %edi 61 movb %dh, %cl 62 shrl $16, %eax 63 movl 0x100+des_SPtrans(%ebx),%ebp 64 xorl %ebp, %edi 65 movb %ah, %bl 66 shrl $16, %edx 67 movl 0x300+des_SPtrans(%ecx),%ebp 68 xorl %ebp, %edi 69 movl 28(%esp), %ebp 70 movb %dh, %cl 71 andl $0xff, %eax 72 andl $0xff, %edx 73 movl 0x600+des_SPtrans(%ebx),%ebx 74 xorl %ebx, %edi 75 movl 0x700+des_SPtrans(%ecx),%ebx 76 xorl %ebx, %edi 77 movl 0x400+des_SPtrans(%eax),%ebx 78 xorl %ebx, %edi 79 movl 0x500+des_SPtrans(%edx),%ebx 80 xorl %ebx, %edi 81 82 # Round 1 83 movl 32(%esp), %eax 84 movl %edi, %edx 85 shrl $16, %edx 86 movl 36(%esp), %ecx 87 xorl %edi, %edx 88 andl %edx, %eax 89 andl %ecx, %edx 90 movl %eax, %ebx 91 sall $16, %ebx 92 movl %edx, %ecx 93 sall $16, %ecx 94 xorl %ebx, %eax 95 xorl %ecx, %edx 96 movl 8(%ebp), %ebx 97 xorl %ebx, %eax 98 movl 12(%ebp), %ecx 99 xorl %edi, %eax 100 xorl %edi, %edx 101 xorl %ecx, %edx 102 andl $0xfcfcfcfc, %eax 103 xorl %ebx, %ebx 104 andl $0xcfcfcfcf, %edx 105 xorl %ecx, %ecx 106 movb %al, %bl 107 movb %ah, %cl 108 rorl $4, %edx 109 movl des_SPtrans(%ebx),%ebp 110 movb %dl, %bl 111 xorl %ebp, %esi 112 movl 0x200+des_SPtrans(%ecx),%ebp 113 xorl %ebp, %esi 114 movb %dh, %cl 115 shrl $16, %eax 116 movl 0x100+des_SPtrans(%ebx),%ebp 117 xorl %ebp, %esi 118 movb %ah, %bl 119 shrl $16, %edx 120 movl 0x300+des_SPtrans(%ecx),%ebp 121 xorl %ebp, %esi 122 movl 28(%esp), %ebp 123 movb %dh, %cl 124 andl $0xff, %eax 125 andl $0xff, %edx 126 movl 0x600+des_SPtrans(%ebx),%ebx 127 xorl %ebx, %esi 128 movl 0x700+des_SPtrans(%ecx),%ebx 129 xorl %ebx, %esi 130 movl 0x400+des_SPtrans(%eax),%ebx 131 xorl %ebx, %esi 132 movl 0x500+des_SPtrans(%edx),%ebx 133 xorl %ebx, %esi 134 135 # Round 2 136 movl 32(%esp), %eax 137 movl %esi, %edx 138 shrl $16, %edx 139 movl 36(%esp), %ecx 140 xorl %esi, %edx 141 andl %edx, %eax 142 andl %ecx, %edx 143 movl %eax, %ebx 144 sall $16, %ebx 145 movl %edx, %ecx 146 sall $16, %ecx 147 xorl %ebx, %eax 148 xorl %ecx, %edx 149 movl 16(%ebp), %ebx 150 xorl %ebx, %eax 151 movl 20(%ebp), %ecx 152 xorl %esi, %eax 153 xorl %esi, %edx 154 xorl %ecx, %edx 155 andl $0xfcfcfcfc, %eax 156 xorl %ebx, %ebx 157 andl $0xcfcfcfcf, %edx 158 xorl %ecx, %ecx 159 movb %al, %bl 160 movb %ah, %cl 161 rorl $4, %edx 162 movl des_SPtrans(%ebx),%ebp 163 movb %dl, %bl 164 xorl %ebp, %edi 165 movl 0x200+des_SPtrans(%ecx),%ebp 166 xorl %ebp, %edi 167 movb %dh, %cl 168 shrl $16, %eax 169 movl 0x100+des_SPtrans(%ebx),%ebp 170 xorl %ebp, %edi 171 movb %ah, %bl 172 shrl $16, %edx 173 movl 0x300+des_SPtrans(%ecx),%ebp 174 xorl %ebp, %edi 175 movl 28(%esp), %ebp 176 movb %dh, %cl 177 andl $0xff, %eax 178 andl $0xff, %edx 179 movl 0x600+des_SPtrans(%ebx),%ebx 180 xorl %ebx, %edi 181 movl 0x700+des_SPtrans(%ecx),%ebx 182 xorl %ebx, %edi 183 movl 0x400+des_SPtrans(%eax),%ebx 184 xorl %ebx, %edi 185 movl 0x500+des_SPtrans(%edx),%ebx 186 xorl %ebx, %edi 187 188 # Round 3 189 movl 32(%esp), %eax 190 movl %edi, %edx 191 shrl $16, %edx 192 movl 36(%esp), %ecx 193 xorl %edi, %edx 194 andl %edx, %eax 195 andl %ecx, %edx 196 movl %eax, %ebx 197 sall $16, %ebx 198 movl %edx, %ecx 199 sall $16, %ecx 200 xorl %ebx, %eax 201 xorl %ecx, %edx 202 movl 24(%ebp), %ebx 203 xorl %ebx, %eax 204 movl 28(%ebp), %ecx 205 xorl %edi, %eax 206 xorl %edi, %edx 207 xorl %ecx, %edx 208 andl $0xfcfcfcfc, %eax 209 xorl %ebx, %ebx 210 andl $0xcfcfcfcf, %edx 211 xorl %ecx, %ecx 212 movb %al, %bl 213 movb %ah, %cl 214 rorl $4, %edx 215 movl des_SPtrans(%ebx),%ebp 216 movb %dl, %bl 217 xorl %ebp, %esi 218 movl 0x200+des_SPtrans(%ecx),%ebp 219 xorl %ebp, %esi 220 movb %dh, %cl 221 shrl $16, %eax 222 movl 0x100+des_SPtrans(%ebx),%ebp 223 xorl %ebp, %esi 224 movb %ah, %bl 225 shrl $16, %edx 226 movl 0x300+des_SPtrans(%ecx),%ebp 227 xorl %ebp, %esi 228 movl 28(%esp), %ebp 229 movb %dh, %cl 230 andl $0xff, %eax 231 andl $0xff, %edx 232 movl 0x600+des_SPtrans(%ebx),%ebx 233 xorl %ebx, %esi 234 movl 0x700+des_SPtrans(%ecx),%ebx 235 xorl %ebx, %esi 236 movl 0x400+des_SPtrans(%eax),%ebx 237 xorl %ebx, %esi 238 movl 0x500+des_SPtrans(%edx),%ebx 239 xorl %ebx, %esi 240 241 # Round 4 242 movl 32(%esp), %eax 243 movl %esi, %edx 244 shrl $16, %edx 245 movl 36(%esp), %ecx 246 xorl %esi, %edx 247 andl %edx, %eax 248 andl %ecx, %edx 249 movl %eax, %ebx 250 sall $16, %ebx 251 movl %edx, %ecx 252 sall $16, %ecx 253 xorl %ebx, %eax 254 xorl %ecx, %edx 255 movl 32(%ebp), %ebx 256 xorl %ebx, %eax 257 movl 36(%ebp), %ecx 258 xorl %esi, %eax 259 xorl %esi, %edx 260 xorl %ecx, %edx 261 andl $0xfcfcfcfc, %eax 262 xorl %ebx, %ebx 263 andl $0xcfcfcfcf, %edx 264 xorl %ecx, %ecx 265 movb %al, %bl 266 movb %ah, %cl 267 rorl $4, %edx 268 movl des_SPtrans(%ebx),%ebp 269 movb %dl, %bl 270 xorl %ebp, %edi 271 movl 0x200+des_SPtrans(%ecx),%ebp 272 xorl %ebp, %edi 273 movb %dh, %cl 274 shrl $16, %eax 275 movl 0x100+des_SPtrans(%ebx),%ebp 276 xorl %ebp, %edi 277 movb %ah, %bl 278 shrl $16, %edx 279 movl 0x300+des_SPtrans(%ecx),%ebp 280 xorl %ebp, %edi 281 movl 28(%esp), %ebp 282 movb %dh, %cl 283 andl $0xff, %eax 284 andl $0xff, %edx 285 movl 0x600+des_SPtrans(%ebx),%ebx 286 xorl %ebx, %edi 287 movl 0x700+des_SPtrans(%ecx),%ebx 288 xorl %ebx, %edi 289 movl 0x400+des_SPtrans(%eax),%ebx 290 xorl %ebx, %edi 291 movl 0x500+des_SPtrans(%edx),%ebx 292 xorl %ebx, %edi 293 294 # Round 5 295 movl 32(%esp), %eax 296 movl %edi, %edx 297 shrl $16, %edx 298 movl 36(%esp), %ecx 299 xorl %edi, %edx 300 andl %edx, %eax 301 andl %ecx, %edx 302 movl %eax, %ebx 303 sall $16, %ebx 304 movl %edx, %ecx 305 sall $16, %ecx 306 xorl %ebx, %eax 307 xorl %ecx, %edx 308 movl 40(%ebp), %ebx 309 xorl %ebx, %eax 310 movl 44(%ebp), %ecx 311 xorl %edi, %eax 312 xorl %edi, %edx 313 xorl %ecx, %edx 314 andl $0xfcfcfcfc, %eax 315 xorl %ebx, %ebx 316 andl $0xcfcfcfcf, %edx 317 xorl %ecx, %ecx 318 movb %al, %bl 319 movb %ah, %cl 320 rorl $4, %edx 321 movl des_SPtrans(%ebx),%ebp 322 movb %dl, %bl 323 xorl %ebp, %esi 324 movl 0x200+des_SPtrans(%ecx),%ebp 325 xorl %ebp, %esi 326 movb %dh, %cl 327 shrl $16, %eax 328 movl 0x100+des_SPtrans(%ebx),%ebp 329 xorl %ebp, %esi 330 movb %ah, %bl 331 shrl $16, %edx 332 movl 0x300+des_SPtrans(%ecx),%ebp 333 xorl %ebp, %esi 334 movl 28(%esp), %ebp 335 movb %dh, %cl 336 andl $0xff, %eax 337 andl $0xff, %edx 338 movl 0x600+des_SPtrans(%ebx),%ebx 339 xorl %ebx, %esi 340 movl 0x700+des_SPtrans(%ecx),%ebx 341 xorl %ebx, %esi 342 movl 0x400+des_SPtrans(%eax),%ebx 343 xorl %ebx, %esi 344 movl 0x500+des_SPtrans(%edx),%ebx 345 xorl %ebx, %esi 346 347 # Round 6 348 movl 32(%esp), %eax 349 movl %esi, %edx 350 shrl $16, %edx 351 movl 36(%esp), %ecx 352 xorl %esi, %edx 353 andl %edx, %eax 354 andl %ecx, %edx 355 movl %eax, %ebx 356 sall $16, %ebx 357 movl %edx, %ecx 358 sall $16, %ecx 359 xorl %ebx, %eax 360 xorl %ecx, %edx 361 movl 48(%ebp), %ebx 362 xorl %ebx, %eax 363 movl 52(%ebp), %ecx 364 xorl %esi, %eax 365 xorl %esi, %edx 366 xorl %ecx, %edx 367 andl $0xfcfcfcfc, %eax 368 xorl %ebx, %ebx 369 andl $0xcfcfcfcf, %edx 370 xorl %ecx, %ecx 371 movb %al, %bl 372 movb %ah, %cl 373 rorl $4, %edx 374 movl des_SPtrans(%ebx),%ebp 375 movb %dl, %bl 376 xorl %ebp, %edi 377 movl 0x200+des_SPtrans(%ecx),%ebp 378 xorl %ebp, %edi 379 movb %dh, %cl 380 shrl $16, %eax 381 movl 0x100+des_SPtrans(%ebx),%ebp 382 xorl %ebp, %edi 383 movb %ah, %bl 384 shrl $16, %edx 385 movl 0x300+des_SPtrans(%ecx),%ebp 386 xorl %ebp, %edi 387 movl 28(%esp), %ebp 388 movb %dh, %cl 389 andl $0xff, %eax 390 andl $0xff, %edx 391 movl 0x600+des_SPtrans(%ebx),%ebx 392 xorl %ebx, %edi 393 movl 0x700+des_SPtrans(%ecx),%ebx 394 xorl %ebx, %edi 395 movl 0x400+des_SPtrans(%eax),%ebx 396 xorl %ebx, %edi 397 movl 0x500+des_SPtrans(%edx),%ebx 398 xorl %ebx, %edi 399 400 # Round 7 401 movl 32(%esp), %eax 402 movl %edi, %edx 403 shrl $16, %edx 404 movl 36(%esp), %ecx 405 xorl %edi, %edx 406 andl %edx, %eax 407 andl %ecx, %edx 408 movl %eax, %ebx 409 sall $16, %ebx 410 movl %edx, %ecx 411 sall $16, %ecx 412 xorl %ebx, %eax 413 xorl %ecx, %edx 414 movl 56(%ebp), %ebx 415 xorl %ebx, %eax 416 movl 60(%ebp), %ecx 417 xorl %edi, %eax 418 xorl %edi, %edx 419 xorl %ecx, %edx 420 andl $0xfcfcfcfc, %eax 421 xorl %ebx, %ebx 422 andl $0xcfcfcfcf, %edx 423 xorl %ecx, %ecx 424 movb %al, %bl 425 movb %ah, %cl 426 rorl $4, %edx 427 movl des_SPtrans(%ebx),%ebp 428 movb %dl, %bl 429 xorl %ebp, %esi 430 movl 0x200+des_SPtrans(%ecx),%ebp 431 xorl %ebp, %esi 432 movb %dh, %cl 433 shrl $16, %eax 434 movl 0x100+des_SPtrans(%ebx),%ebp 435 xorl %ebp, %esi 436 movb %ah, %bl 437 shrl $16, %edx 438 movl 0x300+des_SPtrans(%ecx),%ebp 439 xorl %ebp, %esi 440 movl 28(%esp), %ebp 441 movb %dh, %cl 442 andl $0xff, %eax 443 andl $0xff, %edx 444 movl 0x600+des_SPtrans(%ebx),%ebx 445 xorl %ebx, %esi 446 movl 0x700+des_SPtrans(%ecx),%ebx 447 xorl %ebx, %esi 448 movl 0x400+des_SPtrans(%eax),%ebx 449 xorl %ebx, %esi 450 movl 0x500+des_SPtrans(%edx),%ebx 451 xorl %ebx, %esi 452 453 # Round 8 454 movl 32(%esp), %eax 455 movl %esi, %edx 456 shrl $16, %edx 457 movl 36(%esp), %ecx 458 xorl %esi, %edx 459 andl %edx, %eax 460 andl %ecx, %edx 461 movl %eax, %ebx 462 sall $16, %ebx 463 movl %edx, %ecx 464 sall $16, %ecx 465 xorl %ebx, %eax 466 xorl %ecx, %edx 467 movl 64(%ebp), %ebx 468 xorl %ebx, %eax 469 movl 68(%ebp), %ecx 470 xorl %esi, %eax 471 xorl %esi, %edx 472 xorl %ecx, %edx 473 andl $0xfcfcfcfc, %eax 474 xorl %ebx, %ebx 475 andl $0xcfcfcfcf, %edx 476 xorl %ecx, %ecx 477 movb %al, %bl 478 movb %ah, %cl 479 rorl $4, %edx 480 movl des_SPtrans(%ebx),%ebp 481 movb %dl, %bl 482 xorl %ebp, %edi 483 movl 0x200+des_SPtrans(%ecx),%ebp 484 xorl %ebp, %edi 485 movb %dh, %cl 486 shrl $16, %eax 487 movl 0x100+des_SPtrans(%ebx),%ebp 488 xorl %ebp, %edi 489 movb %ah, %bl 490 shrl $16, %edx 491 movl 0x300+des_SPtrans(%ecx),%ebp 492 xorl %ebp, %edi 493 movl 28(%esp), %ebp 494 movb %dh, %cl 495 andl $0xff, %eax 496 andl $0xff, %edx 497 movl 0x600+des_SPtrans(%ebx),%ebx 498 xorl %ebx, %edi 499 movl 0x700+des_SPtrans(%ecx),%ebx 500 xorl %ebx, %edi 501 movl 0x400+des_SPtrans(%eax),%ebx 502 xorl %ebx, %edi 503 movl 0x500+des_SPtrans(%edx),%ebx 504 xorl %ebx, %edi 505 506 # Round 9 507 movl 32(%esp), %eax 508 movl %edi, %edx 509 shrl $16, %edx 510 movl 36(%esp), %ecx 511 xorl %edi, %edx 512 andl %edx, %eax 513 andl %ecx, %edx 514 movl %eax, %ebx 515 sall $16, %ebx 516 movl %edx, %ecx 517 sall $16, %ecx 518 xorl %ebx, %eax 519 xorl %ecx, %edx 520 movl 72(%ebp), %ebx 521 xorl %ebx, %eax 522 movl 76(%ebp), %ecx 523 xorl %edi, %eax 524 xorl %edi, %edx 525 xorl %ecx, %edx 526 andl $0xfcfcfcfc, %eax 527 xorl %ebx, %ebx 528 andl $0xcfcfcfcf, %edx 529 xorl %ecx, %ecx 530 movb %al, %bl 531 movb %ah, %cl 532 rorl $4, %edx 533 movl des_SPtrans(%ebx),%ebp 534 movb %dl, %bl 535 xorl %ebp, %esi 536 movl 0x200+des_SPtrans(%ecx),%ebp 537 xorl %ebp, %esi 538 movb %dh, %cl 539 shrl $16, %eax 540 movl 0x100+des_SPtrans(%ebx),%ebp 541 xorl %ebp, %esi 542 movb %ah, %bl 543 shrl $16, %edx 544 movl 0x300+des_SPtrans(%ecx),%ebp 545 xorl %ebp, %esi 546 movl 28(%esp), %ebp 547 movb %dh, %cl 548 andl $0xff, %eax 549 andl $0xff, %edx 550 movl 0x600+des_SPtrans(%ebx),%ebx 551 xorl %ebx, %esi 552 movl 0x700+des_SPtrans(%ecx),%ebx 553 xorl %ebx, %esi 554 movl 0x400+des_SPtrans(%eax),%ebx 555 xorl %ebx, %esi 556 movl 0x500+des_SPtrans(%edx),%ebx 557 xorl %ebx, %esi 558 559 # Round 10 560 movl 32(%esp), %eax 561 movl %esi, %edx 562 shrl $16, %edx 563 movl 36(%esp), %ecx 564 xorl %esi, %edx 565 andl %edx, %eax 566 andl %ecx, %edx 567 movl %eax, %ebx 568 sall $16, %ebx 569 movl %edx, %ecx 570 sall $16, %ecx 571 xorl %ebx, %eax 572 xorl %ecx, %edx 573 movl 80(%ebp), %ebx 574 xorl %ebx, %eax 575 movl 84(%ebp), %ecx 576 xorl %esi, %eax 577 xorl %esi, %edx 578 xorl %ecx, %edx 579 andl $0xfcfcfcfc, %eax 580 xorl %ebx, %ebx 581 andl $0xcfcfcfcf, %edx 582 xorl %ecx, %ecx 583 movb %al, %bl 584 movb %ah, %cl 585 rorl $4, %edx 586 movl des_SPtrans(%ebx),%ebp 587 movb %dl, %bl 588 xorl %ebp, %edi 589 movl 0x200+des_SPtrans(%ecx),%ebp 590 xorl %ebp, %edi 591 movb %dh, %cl 592 shrl $16, %eax 593 movl 0x100+des_SPtrans(%ebx),%ebp 594 xorl %ebp, %edi 595 movb %ah, %bl 596 shrl $16, %edx 597 movl 0x300+des_SPtrans(%ecx),%ebp 598 xorl %ebp, %edi 599 movl 28(%esp), %ebp 600 movb %dh, %cl 601 andl $0xff, %eax 602 andl $0xff, %edx 603 movl 0x600+des_SPtrans(%ebx),%ebx 604 xorl %ebx, %edi 605 movl 0x700+des_SPtrans(%ecx),%ebx 606 xorl %ebx, %edi 607 movl 0x400+des_SPtrans(%eax),%ebx 608 xorl %ebx, %edi 609 movl 0x500+des_SPtrans(%edx),%ebx 610 xorl %ebx, %edi 611 612 # Round 11 613 movl 32(%esp), %eax 614 movl %edi, %edx 615 shrl $16, %edx 616 movl 36(%esp), %ecx 617 xorl %edi, %edx 618 andl %edx, %eax 619 andl %ecx, %edx 620 movl %eax, %ebx 621 sall $16, %ebx 622 movl %edx, %ecx 623 sall $16, %ecx 624 xorl %ebx, %eax 625 xorl %ecx, %edx 626 movl 88(%ebp), %ebx 627 xorl %ebx, %eax 628 movl 92(%ebp), %ecx 629 xorl %edi, %eax 630 xorl %edi, %edx 631 xorl %ecx, %edx 632 andl $0xfcfcfcfc, %eax 633 xorl %ebx, %ebx 634 andl $0xcfcfcfcf, %edx 635 xorl %ecx, %ecx 636 movb %al, %bl 637 movb %ah, %cl 638 rorl $4, %edx 639 movl des_SPtrans(%ebx),%ebp 640 movb %dl, %bl 641 xorl %ebp, %esi 642 movl 0x200+des_SPtrans(%ecx),%ebp 643 xorl %ebp, %esi 644 movb %dh, %cl 645 shrl $16, %eax 646 movl 0x100+des_SPtrans(%ebx),%ebp 647 xorl %ebp, %esi 648 movb %ah, %bl 649 shrl $16, %edx 650 movl 0x300+des_SPtrans(%ecx),%ebp 651 xorl %ebp, %esi 652 movl 28(%esp), %ebp 653 movb %dh, %cl 654 andl $0xff, %eax 655 andl $0xff, %edx 656 movl 0x600+des_SPtrans(%ebx),%ebx 657 xorl %ebx, %esi 658 movl 0x700+des_SPtrans(%ecx),%ebx 659 xorl %ebx, %esi 660 movl 0x400+des_SPtrans(%eax),%ebx 661 xorl %ebx, %esi 662 movl 0x500+des_SPtrans(%edx),%ebx 663 xorl %ebx, %esi 664 665 # Round 12 666 movl 32(%esp), %eax 667 movl %esi, %edx 668 shrl $16, %edx 669 movl 36(%esp), %ecx 670 xorl %esi, %edx 671 andl %edx, %eax 672 andl %ecx, %edx 673 movl %eax, %ebx 674 sall $16, %ebx 675 movl %edx, %ecx 676 sall $16, %ecx 677 xorl %ebx, %eax 678 xorl %ecx, %edx 679 movl 96(%ebp), %ebx 680 xorl %ebx, %eax 681 movl 100(%ebp), %ecx 682 xorl %esi, %eax 683 xorl %esi, %edx 684 xorl %ecx, %edx 685 andl $0xfcfcfcfc, %eax 686 xorl %ebx, %ebx 687 andl $0xcfcfcfcf, %edx 688 xorl %ecx, %ecx 689 movb %al, %bl 690 movb %ah, %cl 691 rorl $4, %edx 692 movl des_SPtrans(%ebx),%ebp 693 movb %dl, %bl 694 xorl %ebp, %edi 695 movl 0x200+des_SPtrans(%ecx),%ebp 696 xorl %ebp, %edi 697 movb %dh, %cl 698 shrl $16, %eax 699 movl 0x100+des_SPtrans(%ebx),%ebp 700 xorl %ebp, %edi 701 movb %ah, %bl 702 shrl $16, %edx 703 movl 0x300+des_SPtrans(%ecx),%ebp 704 xorl %ebp, %edi 705 movl 28(%esp), %ebp 706 movb %dh, %cl 707 andl $0xff, %eax 708 andl $0xff, %edx 709 movl 0x600+des_SPtrans(%ebx),%ebx 710 xorl %ebx, %edi 711 movl 0x700+des_SPtrans(%ecx),%ebx 712 xorl %ebx, %edi 713 movl 0x400+des_SPtrans(%eax),%ebx 714 xorl %ebx, %edi 715 movl 0x500+des_SPtrans(%edx),%ebx 716 xorl %ebx, %edi 717 718 # Round 13 719 movl 32(%esp), %eax 720 movl %edi, %edx 721 shrl $16, %edx 722 movl 36(%esp), %ecx 723 xorl %edi, %edx 724 andl %edx, %eax 725 andl %ecx, %edx 726 movl %eax, %ebx 727 sall $16, %ebx 728 movl %edx, %ecx 729 sall $16, %ecx 730 xorl %ebx, %eax 731 xorl %ecx, %edx 732 movl 104(%ebp), %ebx 733 xorl %ebx, %eax 734 movl 108(%ebp), %ecx 735 xorl %edi, %eax 736 xorl %edi, %edx 737 xorl %ecx, %edx 738 andl $0xfcfcfcfc, %eax 739 xorl %ebx, %ebx 740 andl $0xcfcfcfcf, %edx 741 xorl %ecx, %ecx 742 movb %al, %bl 743 movb %ah, %cl 744 rorl $4, %edx 745 movl des_SPtrans(%ebx),%ebp 746 movb %dl, %bl 747 xorl %ebp, %esi 748 movl 0x200+des_SPtrans(%ecx),%ebp 749 xorl %ebp, %esi 750 movb %dh, %cl 751 shrl $16, %eax 752 movl 0x100+des_SPtrans(%ebx),%ebp 753 xorl %ebp, %esi 754 movb %ah, %bl 755 shrl $16, %edx 756 movl 0x300+des_SPtrans(%ecx),%ebp 757 xorl %ebp, %esi 758 movl 28(%esp), %ebp 759 movb %dh, %cl 760 andl $0xff, %eax 761 andl $0xff, %edx 762 movl 0x600+des_SPtrans(%ebx),%ebx 763 xorl %ebx, %esi 764 movl 0x700+des_SPtrans(%ecx),%ebx 765 xorl %ebx, %esi 766 movl 0x400+des_SPtrans(%eax),%ebx 767 xorl %ebx, %esi 768 movl 0x500+des_SPtrans(%edx),%ebx 769 xorl %ebx, %esi 770 771 # Round 14 772 movl 32(%esp), %eax 773 movl %esi, %edx 774 shrl $16, %edx 775 movl 36(%esp), %ecx 776 xorl %esi, %edx 777 andl %edx, %eax 778 andl %ecx, %edx 779 movl %eax, %ebx 780 sall $16, %ebx 781 movl %edx, %ecx 782 sall $16, %ecx 783 xorl %ebx, %eax 784 xorl %ecx, %edx 785 movl 112(%ebp), %ebx 786 xorl %ebx, %eax 787 movl 116(%ebp), %ecx 788 xorl %esi, %eax 789 xorl %esi, %edx 790 xorl %ecx, %edx 791 andl $0xfcfcfcfc, %eax 792 xorl %ebx, %ebx 793 andl $0xcfcfcfcf, %edx 794 xorl %ecx, %ecx 795 movb %al, %bl 796 movb %ah, %cl 797 rorl $4, %edx 798 movl des_SPtrans(%ebx),%ebp 799 movb %dl, %bl 800 xorl %ebp, %edi 801 movl 0x200+des_SPtrans(%ecx),%ebp 802 xorl %ebp, %edi 803 movb %dh, %cl 804 shrl $16, %eax 805 movl 0x100+des_SPtrans(%ebx),%ebp 806 xorl %ebp, %edi 807 movb %ah, %bl 808 shrl $16, %edx 809 movl 0x300+des_SPtrans(%ecx),%ebp 810 xorl %ebp, %edi 811 movl 28(%esp), %ebp 812 movb %dh, %cl 813 andl $0xff, %eax 814 andl $0xff, %edx 815 movl 0x600+des_SPtrans(%ebx),%ebx 816 xorl %ebx, %edi 817 movl 0x700+des_SPtrans(%ecx),%ebx 818 xorl %ebx, %edi 819 movl 0x400+des_SPtrans(%eax),%ebx 820 xorl %ebx, %edi 821 movl 0x500+des_SPtrans(%edx),%ebx 822 xorl %ebx, %edi 823 824 # Round 15 825 movl 32(%esp), %eax 826 movl %edi, %edx 827 shrl $16, %edx 828 movl 36(%esp), %ecx 829 xorl %edi, %edx 830 andl %edx, %eax 831 andl %ecx, %edx 832 movl %eax, %ebx 833 sall $16, %ebx 834 movl %edx, %ecx 835 sall $16, %ecx 836 xorl %ebx, %eax 837 xorl %ecx, %edx 838 movl 120(%ebp), %ebx 839 xorl %ebx, %eax 840 movl 124(%ebp), %ecx 841 xorl %edi, %eax 842 xorl %edi, %edx 843 xorl %ecx, %edx 844 andl $0xfcfcfcfc, %eax 845 xorl %ebx, %ebx 846 andl $0xcfcfcfcf, %edx 847 xorl %ecx, %ecx 848 movb %al, %bl 849 movb %ah, %cl 850 rorl $4, %edx 851 movl des_SPtrans(%ebx),%ebp 852 movb %dl, %bl 853 xorl %ebp, %esi 854 movl 0x200+des_SPtrans(%ecx),%ebp 855 xorl %ebp, %esi 856 movb %dh, %cl 857 shrl $16, %eax 858 movl 0x100+des_SPtrans(%ebx),%ebp 859 xorl %ebp, %esi 860 movb %ah, %bl 861 shrl $16, %edx 862 movl 0x300+des_SPtrans(%ecx),%ebp 863 xorl %ebp, %esi 864 movl 28(%esp), %ebp 865 movb %dh, %cl 866 andl $0xff, %eax 867 andl $0xff, %edx 868 movl 0x600+des_SPtrans(%ebx),%ebx 869 xorl %ebx, %esi 870 movl 0x700+des_SPtrans(%ecx),%ebx 871 xorl %ebx, %esi 872 movl 0x400+des_SPtrans(%eax),%ebx 873 xorl %ebx, %esi 874 movl 0x500+des_SPtrans(%edx),%ebx 875 xorl %ebx, %esi 876 movl (%esp), %ebx 877 movl %edi, %eax 878 decl %ebx 879 movl %esi, %edi 880 movl %eax, %esi 881 movl %ebx, (%esp) 882 jnz .L000start 883 884 # FP 885 movl 24(%esp), %edx 886.byte 209 887.byte 207 # rorl $1 %edi 888 movl %esi, %eax 889 xorl %edi, %esi 890 andl $0xaaaaaaaa, %esi 891 xorl %esi, %eax 892 xorl %esi, %edi 893 894 roll $23, %eax 895 movl %eax, %esi 896 xorl %edi, %eax 897 andl $0x03fc03fc, %eax 898 xorl %eax, %esi 899 xorl %eax, %edi 900 901 roll $10, %esi 902 movl %esi, %eax 903 xorl %edi, %esi 904 andl $0x33333333, %esi 905 xorl %esi, %eax 906 xorl %esi, %edi 907 908 roll $18, %edi 909 movl %edi, %esi 910 xorl %eax, %edi 911 andl $0xfff0000f, %edi 912 xorl %edi, %esi 913 xorl %edi, %eax 914 915 roll $12, %esi 916 movl %esi, %edi 917 xorl %eax, %esi 918 andl $0xf0f0f0f0, %esi 919 xorl %esi, %edi 920 xorl %esi, %eax 921 922 rorl $4, %eax 923 movl %eax, (%edx) 924 movl %edi, 4(%edx) 925 popl %ecx 926 popl %edi 927 popl %esi 928 popl %ebx 929 popl %ebp 930 ret 931.fcrypt_body_end: 932 .size fcrypt_body,.fcrypt_body_end-fcrypt_body 933.ident "fcrypt_body" 934