📄 mem.lst
字号:
302 01c8 0000000C jal printf 303 01cc 01001026 addiu $16,$16,1 304 305 .loc 1 58 0 306 01d0 1000022A slt $2,$16,16 307 .loc 1 60 0 308 .loc 1 58 0 309 01d4 DEFF4014 bne $2,$0,$L51 310 01d8 21103002 addu $2,$17,$16 311 312 .loc 1 49 0 313 01dc 1000D626 addiu $22,$22,16 314 .loc 1 75 0 315 01e0 0000000C jal printf 316 01e4 0000C427 addiu $4,$fp,%lo($LC4) 317 318 .loc 1 49 0GAS LISTING /tmp/ccRMOXS7.s page 8 319 01e8 2A10D702 slt $2,$22,$23 320 .loc 1 51 0 321 .loc 1 49 0 322 01ec C6FF4014 bne $2,$0,$L52 323 01f0 3800A28F lw $2,56($sp) 324 325 01f4 66000008 j $L50 326 01f8 3400BF8F lw $31,52($sp) 327 328 .set macro 329 .set reorder 330 $LFE5: 331 .end dump_memory 332 .align 2 333 .globl randomize_memory 334 .ent randomize_memory 335 .type randomize_memory, @function 336 randomize_memory: 337 $LFB6: 76:/mnt/hgfs/boot/booter/source/mem.c **** 77:/mnt/hgfs/boot/booter/source/mem.c **** //if(found) 78:/mnt/hgfs/boot/booter/source/mem.c **** //{ 79:/mnt/hgfs/boot/booter/source/mem.c **** // printf("Found that shit!\n"); 80:/mnt/hgfs/boot/booter/source/mem.c **** // getc(); 81:/mnt/hgfs/boot/booter/source/mem.c **** //} 82:/mnt/hgfs/boot/booter/source/mem.c **** } 83:/mnt/hgfs/boot/booter/source/mem.c **** } 84:/mnt/hgfs/boot/booter/source/mem.c **** 85:/mnt/hgfs/boot/booter/source/mem.c **** void randomize_memory(char* start, int bytes) 86:/mnt/hgfs/boot/booter/source/mem.c **** { 338 .loc 1 86 0 339 .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 340 .mask 0x80070000,-4 341 .fmask 0x00000000,0 342 .set noreorder 343 .set nomacro 344 345 01fc E0FFBD27 addiu $sp,$sp,-32 346 $LCFI11: 347 0200 1800B2AF sw $18,24($sp) 348 $LCFI12: 349 0204 1400B1AF sw $17,20($sp) 350 $LCFI13: 351 0208 21908000 move $18,$4 87:/mnt/hgfs/boot/booter/source/mem.c **** while(--bytes >= 0) 88:/mnt/hgfs/boot/booter/source/mem.c **** start[bytes] = srand(0xFF); 352 .loc 1 88 0 353 020c FFFFB124 addiu $17,$5,-1 354 .loc 1 86 0 355 0210 1C00BFAF sw $31,28($sp) 356 $LCFI14: 357 .loc 1 86 0 358 $LCFI15: 359 0214 8B000008 j $L59 360 0218 1000B0AF sw $16,16($sp) 361 362 $L60:GAS LISTING /tmp/ccRMOXS7.s page 9 363 .loc 1 88 0 364 021c 0000000C jal srand 365 0220 21805102 addu $16,$18,$17 366 367 0224 FFFF3126 addiu $17,$17,-1 368 0228 000002A2 sb $2,0($16) 369 $L59: 370 022c FBFF2106 bgez $17,$L60 371 0230 FF000424 li $4,255 # 0xff 372 373 0234 1C00BF8F lw $31,28($sp) 374 0238 1800B28F lw $18,24($sp) 375 023c 1400B18F lw $17,20($sp) 376 0240 1000B08F lw $16,16($sp) 377 0244 0800E003 j $31 378 0248 2000BD27 addiu $sp,$sp,32 379 380 .set macro 381 .set reorder 382 $LFE6: 383 .end randomize_memory 384 .align 2 385 .globl swap_bytes 386 .ent swap_bytes 387 .type swap_bytes, @function 388 swap_bytes: 389 $LFB7: 89:/mnt/hgfs/boot/booter/source/mem.c **** } 90:/mnt/hgfs/boot/booter/source/mem.c **** 91:/mnt/hgfs/boot/booter/source/mem.c **** void swap_bytes(uint32* bytes) 92:/mnt/hgfs/boot/booter/source/mem.c **** { 390 .loc 1 92 0 391 .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 392 .mask 0x00000000,0 393 .fmask 0x00000000,0 394 .set noreorder 395 .set nomacro 396 93:/mnt/hgfs/boot/booter/source/mem.c **** *bytes = ((*bytes >> 24) & 0x000000FF) | 397 .loc 1 93 0 398 024c 0000878C lw $7,0($4) 399 0250 FF00063C li $6,16711680 # 0xff0000 400 0254 021A0700 srl $3,$7,8 401 0258 02160700 srl $2,$7,24 402 025c 002A0700 sll $5,$7,8 403 0260 00FF6330 andi $3,$3,0xff00 404 0264 25104300 or $2,$2,$3 405 0268 2428A600 and $5,$5,$6 406 026c 25104500 or $2,$2,$5 407 0270 003E0700 sll $7,$7,24 408 0274 25104700 or $2,$2,$7 409 0278 0800E003 j $31 410 027c 000082AC sw $2,0($4) 411 412 .set macro 413 .set reorder 414 $LFE7:GAS LISTING /tmp/ccRMOXS7.s page 10 415 .end swap_bytes 416 .align 2 417 .globl swizzle_memory 418 .ent swizzle_memory 419 .type swizzle_memory, @function 420 swizzle_memory: 421 $LFB8: 94:/mnt/hgfs/boot/booter/source/mem.c **** ((*bytes >> 8) & 0x0000FF00) | 95:/mnt/hgfs/boot/booter/source/mem.c **** ((*bytes << 8) & 0x00FF0000) | 96:/mnt/hgfs/boot/booter/source/mem.c **** ((*bytes << 24) & 0xFF000000) ; 97:/mnt/hgfs/boot/booter/source/mem.c **** } 98:/mnt/hgfs/boot/booter/source/mem.c **** 99:/mnt/hgfs/boot/booter/source/mem.c **** void swizzle_memory(uint32* start, int bytes) 100:/mnt/hgfs/boot/booter/source/mem.c **** { 422 .loc 1 100 0 423 .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 424 .mask 0x80070000,-4 425 .fmask 0x00000000,0 426 .set noreorder 427 .set nomacro 428 429 0280 E0FFBD27 addiu $sp,$sp,-32 430 $LCFI16: 431 0284 1800B2AF sw $18,24($sp) 432 $LCFI17: 433 0288 1400B1AF sw $17,20($sp) 434 $LCFI18: 435 028c 1000B0AF sw $16,16($sp) 436 $LCFI19: 437 0290 1C00BFAF sw $31,28($sp) 438 $LCFI20: 439 .loc 1 100 0 440 0294 2190A000 move $18,$5 441 0298 21808000 move $16,$4 101:/mnt/hgfs/boot/booter/source/mem.c **** int i; 102:/mnt/hgfs/boot/booter/source/mem.c **** DPRINTF("%X, %d bytes\n", start, bytes); 103:/mnt/hgfs/boot/booter/source/mem.c **** for(i = 0; i < bytes/4; ++i) 442 .loc 1 103 0 443 029c AB000008 j $L63 444 02a0 21880000 move $17,$0 445 446 $L67: 104:/mnt/hgfs/boot/booter/source/mem.c **** swap_bytes(&start[i]); 447 .loc 1 104 0 448 02a4 0000000C jal swap_bytes 449 02a8 00000000 nop 450 451 $L63: 452 .loc 1 103 0 453 02ac 03004226 addiu $2,$18,3 454 02b0 0000432A slt $3,$18,0 455 02b4 0A104302 movz $2,$18,$3 456 02b8 83100200 sra $2,$2,2 457 02bc 2A102202 slt $2,$17,$2 458 .loc 1 104 0 459 02c0 21200002 move $4,$16 460 .loc 1 103 0GAS LISTING /tmp/ccRMOXS7.s page 11 461 02c4 01003126 addiu $17,$17,1 462 02c8 F6FF4014 bne $2,$0,$L67 463 02cc 04001026 addiu $16,$16,4 464 465 02d0 1C00BF8F lw $31,28($sp) 466 02d4 1800B28F lw $18,24($sp) 467 02d8 1400B18F lw $17,20($sp) 468 02dc 1000B08F lw $16,16($sp) 469 02e0 0800E003 j $31 470 02e4 2000BD27 addiu $sp,$sp,32 471 472 .set macro 473 .set reorder 474 $LFE8: 475 .end swizzle_memory 476 .section .debug_frame,"",@progbits 477 $Lframe0: 478 0000 0C000000 .4byte $LECIE0-$LSCIE0 479 $LSCIE0: 480 0004 FFFFFFFF .4byte 0xffffffff 481 0008 01 .byte 0x1 482 0009 00 .ascii "\000" 483 000a 01 .uleb128 0x1 484 000b 04 .sleb128 4 485 000c 1F .byte 0x1f 486 000d 0C .byte 0xc 487 000e 1D .uleb128 0x1d 488 000f 00 .uleb128 0x0 489 .align 2 490 $LECIE0: 491 $LSFDE0: 492 0010 0C000000 .4byte $LEFDE0-$LASFDE0 493 $LASFDE0: 494 0014 00000000 .4byte $Lframe0 495 0018 00000000 .4byte $LFB2 496 001c 4C000000 .4byte $LFE2-$LFB2 497 .align 2 498 $LEFDE0: 499 $LSFDE2: 500 0020 0C000000 .4byte $LEFDE2-$LASFDE2 501 $LASFDE2: 502 0024 00000000 .4byte $Lframe0 503 0028 4C000000 .4byte $LFB3 504 002c 30000000 .4byte $LFE3-$LFB3 505 .align 2 506 $LEFDE2: 507 $LSFDE4: 508 0030 0C000000 .4byte $LEFDE4-$LASFDE4 509 $LASFDE4: 510 0034 00000000 .4byte $Lframe0 511 0038 7C000000 .4byte $LFB4 512 003c 44000000 .4byte $LFE4-$LFB4 513 .align 2 514 $LEFDE4: 515 $LSFDE6: 516 0040 30000000 .4byte $LEFDE6-$LASFDE6 517 $LASFDE6:GAS LISTING /tmp/ccRMOXS7.s page 12 518 0044 00000000 .4byte $Lframe0 519 0048 C0000000 .4byte $LFB5 520 004c 3C010000 .4byte $LFE5-$LFB5 521 0050 44 .byte 0x4 522 .4byte $LCFI0-$LFB5 523 0051 0E .byte 0xe 524 0052 38 .uleb128 0x38 525 0053 68 .byte 0x4 526 .4byte $LCFI10-$LCFI0 527 0054 11 .byte 0x11 528 0055 10 .uleb128 0x10 529 0056 76 .sleb128 -10 530 0057 11 .byte 0x11 531 0058 11 .uleb128 0x11 532 0059 77 .sleb128 -9 533 005a 11 .byte 0x11 534 005b 12 .uleb128 0x12 535 005c 78 .sleb128 -8 536 005d 11 .byte 0x11 537 005e 13 .uleb128 0x13 538 005f 79 .sleb128 -7 539 0060 11 .byte 0x11 540 0061 14 .uleb128 0x14 541 0062 7A .sleb128 -6 542 0063 11 .byte 0x11 543 0064 15 .uleb128 0x15 544 0065 7B .sleb128 -5 545 0066 11 .byte 0x11 546 0067 1E .uleb128 0x1e 547 0068 7E .sleb128 -2 548 0069 11 .byte 0x11 549 006a 1F .uleb128 0x1f 550 006b 7F .sleb128 -1 551 006c 11 .byte 0x11 552 006d 16 .uleb128 0x16 553 006e 7C .sleb128 -4 554 006f 11 .byte 0x11 555 0070 17 .uleb128 0x17 556 0071 7D .sleb128 -3 557 0072 0000 .align 2 558 $LEFDE6: 559 $LSFDE8: 560 0074 20000000 .4byte $LEFDE8-$LASFDE8 561 $LASFDE8: 562 0078 00000000 .4byte $Lframe0 563 007c FC010000 .4byte $LFB6 564 0080 50000000 .4byte $LFE6-$LFB6 565 0084 44 .byte 0x4 566 .4byte $LCFI11-$LFB6 567 0085 0E .byte 0xe 568 0086 20 .uleb128 0x20 569 0087 48 .byte 0x4 570 .4byte $LCFI13-$LCFI11 571 0088 11 .byte 0x11 572 0089 11 .uleb128 0x11 573 008a 7D .sleb128 -3 574 008b 11 .byte 0x11GAS LISTING /tmp/ccRMOXS7.s page 13 575 008c 12 .uleb128 0x12 576 008d 7E .sleb128 -2 577 008e 4C .byte 0x4 578 .4byte $LCFI15-$LCFI13 579 008f 11 .byte 0x11 580 0090 10 .uleb128 0x10 581 0091 7C .sleb128 -4 582 0092 11 .byte 0x11 583 0093 1F .uleb128 0x1f 584 0094 7F .sleb128 -1 585 0095 000000 .align 2 586 $LEFDE8: 587 $LSFDE10: 588 0098 0C000000 .4byte $LEFDE10-$LASFDE10 589 $LASFDE10: 590 009c 00000000 .4byte $Lframe0 591 00a0 4C020000 .4byte $LFB7 592 00a4 34000000 .4byte $LFE7-$LFB7 593 .align 2 594 $LEFDE10: 595 $LSFDE12: 596 00a8 1C000000 .4byte $LEFDE12-$LASFDE12 597 $LASFDE12: 598 00ac 00000000 .4byte $Lframe0 599 00b0 80020000 .4byte $LFB8 600 00b4 68000000 .4byte $LFE8-$LFB8 601 00b8 44 .byte 0x4 602 .4byte $LCFI16-$LFB8 603 00b9 0E .byte 0xe 604 00ba 20 .uleb128 0x20 605 00bb 50 .byte 0x4 606 .4byte $LCFI20-$LCFI16 607 00bc 11 .byte 0x11 608 00bd 1F .uleb128 0x1f 609 00be 7F .sleb128 -1 610 00bf 11 .byte 0x11 611 00c0 10 .uleb128 0x10 612 00c1 7C .sleb128 -4 613 00c2 11 .byte 0x11 614 00c3 11 .uleb128 0x11 615 00c4 7D .sleb128 -3 616 00c5 11 .byte 0x11 617 00c6 12 .uleb128 0x12 618 00c7 7E .sleb128 -2 619 .align 2 620 $LEFDE12: 621 .align 0 622 .file 2 "/mnt/hgfs/boot/booter/include/example.h" 623 .file 3 "/mnt/hgfs/boot/booter/platforms/DB1200/platform.h" 624 .text 625 $Letext0: 626 02e8 00000000 .section .debug_info 626 00000000 627 0000 93020000 .4byte 0x293 628 0004 0200 .2byte 0x2 629 0006 00000000 .4byte $Ldebug_abbrev0 630 000a 04 .byte 0x4GAS LISTING /tmp/ccRMOXS7.s page 14 631 000b 01 .uleb128 0x1 632 000c 00000000 .4byte $Ldebug_line0 633 0010 E8020000 .4byte $Letext0 634 0014 00000000 .4byte $Ltext0 635 0018 A1000000 .4byte $LASF27 636 001c 01 .byte 0x1 637 001d 00010000 .4byte $LASF28 638 0021 02 .uleb128 0x2 639 0022 31010000 .4byte $LASF0 640 0026 01 .byte 0x1 641 0027 06 .byte 0x6 642 0028 02 .uleb128 0x2 643 0029 CC000000 .4byte $LASF1 644 002d 02 .byte 0x2 645 002e 05 .byte 0x5 646 002f 03 .uleb128 0x3 647 0030 696E7400 .ascii "int\000" 648 0034 04 .byte 0x4 649 0035 05 .byte 0x5 650 0036 02 .uleb128 0x2 651 0037 23010000 .4byte $LASF2 652 003b 01 .byte 0x1 653 003c 08 .byte 0x8
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -