1# RUN: yaml2obj --docnum=1 %s -o %t.armv7 2# RUN: llvm-objdump --private-headers %t.armv7 | FileCheck %s --check-prefix=ARMV7 3 4# ARMV7: segname __PAGEZERO 5# ARMV7-NEXT: vmaddr 0x00000000 6# ARMV7-NEXT: vmsize 0x00004000 7# ARMV7: segname __TEXT 8# ARMV7-NEXT: vmaddr 0x00004000 9# ARMV7-NEXT: vmsize 0x00008000 10# ARMV7: segname __LINKEDIT 11# ARMV7-NEXT: vmaddr 0x0000c000 12# ARMV7-NEXT: vmsize 0x00004000 13 14# RUN: yaml2obj --docnum=2 %s -o %t.arm64 15# RUN: llvm-objdump --private-headers %t.arm64 | FileCheck %s --check-prefix=ARM64 16 17# ARM64: segname __PAGEZERO 18# ARM64-NEXT: vmaddr 0x0000000000000000 19# ARM64-NEXT: vmsize 0x0000000100000000 20# ARM64: segname __TEXT 21# ARM64-NEXT: vmaddr 0x0000000100000000 22# ARM64-NEXT: vmsize 0x0000000000008000 23# ARM64: segname __LINKEDIT 24# ARM64-NEXT: vmaddr 0x0000000100008000 25# ARM64-NEXT: vmsize 0x0000000000004000 26 27# RUN: yaml2obj --docnum=3 %s -o %t.arm64_32 28# RUN: llvm-objdump --private-headers %t.arm64_32 | FileCheck %s --check-prefix=ARM64_32 29 30# ARM64_32: segname __PAGEZERO 31# ARM64_32-NEXT: vmaddr 0x00000000 32# ARM64_32-NEXT: vmsize 0x00004000 33# ARM64_32: segname __TEXT 34# ARM64_32-NEXT: vmaddr 0x00004000 35# ARM64_32-NEXT: vmsize 0x00008000 36# ARM64_32: segname __LINKEDIT 37# ARM64_32-NEXT: vmaddr 0x0000c000 38# ARM64_32-NEXT: vmsize 0x00004000 39 40# RUN: yaml2obj --docnum=4 %s -o %t.x86_64 41# RUN: llvm-objdump --private-headers %t.x86_64 | FileCheck %s --check-prefix=X86_64 42 43# X86_64: segname __PAGEZERO 44# X86_64-NEXT: vmaddr 0x0000000000000000 45# X86_64-NEXT: vmsize 0x0000000100000000 46# X86_64: segname __TEXT 47# X86_64-NEXT: vmaddr 0x0000000100000000 48# X86_64-NEXT: vmsize 0x0000000000001000 49# X86_64: segname __LINKEDIT 50# X86_64-NEXT: vmaddr 0x0000000100001000 51# X86_64-NEXT: vmsize 0x0000000000001000 52 53## Input binaries: 54 55## Case 1: armv7 iOS binary. 56## This binary can be built on OSX as follows: 57## main.c: int main() { return 0; } 58## xcrun -sdk iphoneos clang -arch armv7 main.c -o main.exe 59--- !mach-o 60FileHeader: 61 magic: 0xFEEDFACE 62 cputype: 0x0000000C 63 cpusubtype: 0x00000009 64 filetype: 0x00000002 65 ncmds: 15 66 sizeofcmds: 600 67 flags: 0x00200085 68LoadCommands: 69 - cmd: LC_SEGMENT 70 cmdsize: 56 71 segname: __PAGEZERO 72 vmaddr: 0 73 vmsize: 16384 74 fileoff: 0 75 filesize: 0 76 maxprot: 0 77 initprot: 0 78 nsects: 0 79 flags: 0 80 - cmd: LC_SEGMENT 81 cmdsize: 124 82 segname: __TEXT 83 vmaddr: 16384 84 vmsize: 32768 85 fileoff: 0 86 filesize: 32768 87 maxprot: 5 88 initprot: 5 89 nsects: 1 90 flags: 0 91 Sections: 92 - sectname: __text 93 segname: __TEXT 94 addr: 0x000000000000BFF6 95 size: 10 96 offset: 0x00007FF6 97 align: 1 98 reloff: 0x00000000 99 nreloc: 0 100 flags: 0x80000400 101 reserved1: 0x00000000 102 reserved2: 0x00000000 103 reserved3: 0x00000000 104 content: 81B00020009001B07047 105 - cmd: LC_SEGMENT 106 cmdsize: 56 107 segname: __LINKEDIT 108 vmaddr: 49152 109 vmsize: 16384 110 fileoff: 32768 111 filesize: 132 112 maxprot: 1 113 initprot: 1 114 nsects: 0 115 flags: 0 116 - cmd: LC_DYLD_INFO_ONLY 117 cmdsize: 48 118 rebase_off: 0 119 rebase_size: 0 120 bind_off: 0 121 bind_size: 0 122 weak_bind_off: 0 123 weak_bind_size: 0 124 lazy_bind_off: 0 125 lazy_bind_size: 0 126 export_off: 32768 127 export_size: 44 128 - cmd: LC_SYMTAB 129 cmdsize: 24 130 symoff: 32816 131 nsyms: 3 132 stroff: 32852 133 strsize: 48 134 - cmd: LC_DYSYMTAB 135 cmdsize: 80 136 ilocalsym: 0 137 nlocalsym: 0 138 iextdefsym: 0 139 nextdefsym: 2 140 iundefsym: 2 141 nundefsym: 1 142 tocoff: 0 143 ntoc: 0 144 modtaboff: 0 145 nmodtab: 0 146 extrefsymoff: 0 147 nextrefsyms: 0 148 indirectsymoff: 0 149 nindirectsyms: 0 150 extreloff: 0 151 nextrel: 0 152 locreloff: 0 153 nlocrel: 0 154 - cmd: LC_LOAD_DYLINKER 155 cmdsize: 28 156 name: 12 157 Content: '/usr/lib/dyld' 158 ZeroPadBytes: 3 159 - cmd: LC_UUID 160 cmdsize: 24 161 uuid: C84A0193-BE6F-3625-882F-CBFC052AF6CF 162 - cmd: LC_VERSION_MIN_IPHONEOS 163 cmdsize: 16 164 version: 680803 165 sdk: 852480 166 - cmd: LC_SOURCE_VERSION 167 cmdsize: 16 168 version: 0 169 - cmd: LC_MAIN 170 cmdsize: 24 171 entryoff: 32759 172 stacksize: 0 173 - cmd: LC_ENCRYPTION_INFO 174 cmdsize: 20 175 cryptoff: 16384 176 cryptsize: 16384 177 cryptid: 0 178 - cmd: LC_LOAD_DYLIB 179 cmdsize: 52 180 dylib: 181 name: 24 182 timestamp: 2 183 current_version: 83951616 184 compatibility_version: 65536 185 Content: '/usr/lib/libSystem.B.dylib' 186 ZeroPadBytes: 2 187 - cmd: LC_FUNCTION_STARTS 188 cmdsize: 16 189 dataoff: 32812 190 datasize: 4 191 - cmd: LC_DATA_IN_CODE 192 cmdsize: 16 193 dataoff: 32816 194 datasize: 0 195LinkEditData: 196 ExportTrie: 197 TerminalSize: 0 198 NodeOffset: 0 199 Name: '' 200 Flags: 0x0000000000000000 201 Address: 0x0000000000000000 202 Other: 0x0000000000000000 203 ImportName: '' 204 Children: 205 - TerminalSize: 0 206 NodeOffset: 5 207 Name: _ 208 Flags: 0x0000000000000000 209 Address: 0x0000000000000000 210 Other: 0x0000000000000000 211 ImportName: '' 212 Children: 213 - TerminalSize: 2 214 NodeOffset: 33 215 Name: _mh_execute_header 216 Flags: 0x0000000000000000 217 Address: 0x0000000000000000 218 Other: 0x0000000000000000 219 ImportName: '' 220 - TerminalSize: 4 221 NodeOffset: 37 222 Name: main 223 Flags: 0x0000000000000000 224 Address: 0x0000000000007FF7 225 Other: 0x0000000000000000 226 ImportName: '' 227 NameList: 228 - n_strx: 2 229 n_type: 0x0F 230 n_sect: 1 231 n_desc: 16 232 n_value: 16384 233 - n_strx: 22 234 n_type: 0x0F 235 n_sect: 1 236 n_desc: 8 237 n_value: 49142 238 - n_strx: 28 239 n_type: 0x01 240 n_sect: 0 241 n_desc: 256 242 n_value: 0 243 StringTable: 244 - ' ' 245 - __mh_execute_header 246 - _main 247 - dyld_stub_binder 248 - '' 249 - '' 250 - '' 251... 252 253## Case 2: arm64 iOS binary. 254## This binary can be built on OSX as follows: 255## main.c: int main() { return 0; } 256## xcrun -sdk iphoneos clang -arch arm64 main.c -o main.exe 257--- !mach-o 258FileHeader: 259 magic: 0xFEEDFACF 260 cputype: 0x0100000C 261 cpusubtype: 0x00000000 262 filetype: 0x00000002 263 ncmds: 15 264 sizeofcmds: 768 265 flags: 0x00200085 266 reserved: 0x00000000 267LoadCommands: 268 - cmd: LC_SEGMENT_64 269 cmdsize: 72 270 segname: __PAGEZERO 271 vmaddr: 0 272 vmsize: 4294967296 273 fileoff: 0 274 filesize: 0 275 maxprot: 0 276 initprot: 0 277 nsects: 0 278 flags: 0 279 - cmd: LC_SEGMENT_64 280 cmdsize: 232 281 segname: __TEXT 282 vmaddr: 4294967296 283 vmsize: 32768 284 fileoff: 0 285 filesize: 32768 286 maxprot: 5 287 initprot: 5 288 nsects: 2 289 flags: 0 290 Sections: 291 - sectname: __text 292 segname: __TEXT 293 addr: 0x0000000100007FA0 294 size: 24 295 offset: 0x00007FA0 296 align: 2 297 reloff: 0x00000000 298 nreloc: 0 299 flags: 0x80000400 300 reserved1: 0x00000000 301 reserved2: 0x00000000 302 reserved3: 0x00000000 303 content: FF4300D1FF0F00B908008052E00308AAFF430091C0035FD6 304 - sectname: __unwind_info 305 segname: __TEXT 306 addr: 0x0000000100007FB8 307 size: 72 308 offset: 0x00007FB8 309 align: 2 310 reloff: 0x00000000 311 nreloc: 0 312 flags: 0x00000000 313 reserved1: 0x00000000 314 reserved2: 0x00000000 315 reserved3: 0x00000000 316 content: 010000001C000000000000001C000000000000001C00000002000000A07F00003400000034000000B97F00000000000034000000030000000C000100100001000000000000100002 317 - cmd: LC_SEGMENT_64 318 cmdsize: 72 319 segname: __LINKEDIT 320 vmaddr: 4295000064 321 vmsize: 16384 322 fileoff: 32768 323 filesize: 152 324 maxprot: 1 325 initprot: 1 326 nsects: 0 327 flags: 0 328 - cmd: LC_DYLD_INFO_ONLY 329 cmdsize: 48 330 rebase_off: 0 331 rebase_size: 0 332 bind_off: 0 333 bind_size: 0 334 weak_bind_off: 0 335 weak_bind_size: 0 336 lazy_bind_off: 0 337 lazy_bind_size: 0 338 export_off: 32768 339 export_size: 48 340 - cmd: LC_SYMTAB 341 cmdsize: 24 342 symoff: 32824 343 nsyms: 3 344 stroff: 32872 345 strsize: 48 346 - cmd: LC_DYSYMTAB 347 cmdsize: 80 348 ilocalsym: 0 349 nlocalsym: 0 350 iextdefsym: 0 351 nextdefsym: 2 352 iundefsym: 2 353 nundefsym: 1 354 tocoff: 0 355 ntoc: 0 356 modtaboff: 0 357 nmodtab: 0 358 extrefsymoff: 0 359 nextrefsyms: 0 360 indirectsymoff: 0 361 nindirectsyms: 0 362 extreloff: 0 363 nextrel: 0 364 locreloff: 0 365 nlocrel: 0 366 - cmd: LC_LOAD_DYLINKER 367 cmdsize: 32 368 name: 12 369 Content: '/usr/lib/dyld' 370 ZeroPadBytes: 7 371 - cmd: LC_UUID 372 cmdsize: 24 373 uuid: 945B24FC-E351-3186-9D74-A88A7A93392A 374 - cmd: LC_BUILD_VERSION 375 cmdsize: 32 376 platform: 2 377 minos: 852480 378 sdk: 852480 379 ntools: 1 380 Tools: 381 - tool: 3 382 version: 34734080 383 - cmd: LC_SOURCE_VERSION 384 cmdsize: 16 385 version: 0 386 - cmd: LC_MAIN 387 cmdsize: 24 388 entryoff: 32672 389 stacksize: 0 390 - cmd: LC_ENCRYPTION_INFO_64 391 cmdsize: 24 392 cryptoff: 16384 393 cryptsize: 16384 394 cryptid: 0 395 pad: 0 396 - cmd: LC_LOAD_DYLIB 397 cmdsize: 56 398 dylib: 399 name: 24 400 timestamp: 2 401 current_version: 83951616 402 compatibility_version: 65536 403 Content: '/usr/lib/libSystem.B.dylib' 404 ZeroPadBytes: 6 405 - cmd: LC_FUNCTION_STARTS 406 cmdsize: 16 407 dataoff: 32816 408 datasize: 8 409 - cmd: LC_DATA_IN_CODE 410 cmdsize: 16 411 dataoff: 32824 412 datasize: 0 413LinkEditData: 414 ExportTrie: 415 TerminalSize: 0 416 NodeOffset: 0 417 Name: '' 418 Flags: 0x0000000000000000 419 Address: 0x0000000000000000 420 Other: 0x0000000000000000 421 ImportName: '' 422 Children: 423 - TerminalSize: 0 424 NodeOffset: 5 425 Name: _ 426 Flags: 0x0000000000000000 427 Address: 0x0000000000000000 428 Other: 0x0000000000000000 429 ImportName: '' 430 Children: 431 - TerminalSize: 2 432 NodeOffset: 33 433 Name: _mh_execute_header 434 Flags: 0x0000000000000000 435 Address: 0x0000000000000000 436 Other: 0x0000000000000000 437 ImportName: '' 438 - TerminalSize: 4 439 NodeOffset: 37 440 Name: main 441 Flags: 0x0000000000000000 442 Address: 0x0000000000007FA0 443 Other: 0x0000000000000000 444 ImportName: '' 445 NameList: 446 - n_strx: 2 447 n_type: 0x0F 448 n_sect: 1 449 n_desc: 16 450 n_value: 4294967296 451 - n_strx: 22 452 n_type: 0x0F 453 n_sect: 1 454 n_desc: 0 455 n_value: 4294999968 456 - n_strx: 28 457 n_type: 0x01 458 n_sect: 0 459 n_desc: 256 460 n_value: 0 461 StringTable: 462 - ' ' 463 - __mh_execute_header 464 - _main 465 - dyld_stub_binder 466 - '' 467 - '' 468 - '' 469... 470 471## Case 3: arm64_32 WatchOS binary. 472## This binary can be built on OSX as follows: 473## main.c: int main() { return 0; } 474## xcrun -sdk watchos clang -arch arm64_32 main.c -o main.exe 475--- !mach-o 476FileHeader: 477 magic: 0xFEEDFACE 478 cputype: 0x0200000C 479 cpusubtype: 0x00000001 480 filetype: 0x00000002 481 ncmds: 15 482 sizeofcmds: 684 483 flags: 0x00200085 484LoadCommands: 485 - cmd: LC_SEGMENT 486 cmdsize: 56 487 segname: __PAGEZERO 488 vmaddr: 0 489 vmsize: 16384 490 fileoff: 0 491 filesize: 0 492 maxprot: 0 493 initprot: 0 494 nsects: 0 495 flags: 0 496 - cmd: LC_SEGMENT 497 cmdsize: 192 498 segname: __TEXT 499 vmaddr: 16384 500 vmsize: 32768 501 fileoff: 0 502 filesize: 32768 503 maxprot: 5 504 initprot: 5 505 nsects: 2 506 flags: 0 507 Sections: 508 - sectname: __text 509 segname: __TEXT 510 addr: 0x000000000000BFA0 511 size: 24 512 offset: 0x00007FA0 513 align: 2 514 reloff: 0x00000000 515 nreloc: 0 516 flags: 0x80000400 517 reserved1: 0x00000000 518 reserved2: 0x00000000 519 reserved3: 0x00000000 520 content: FF4300D108008052E80F00B9E00308AAFF430091C0035FD6 521 - sectname: __unwind_info 522 segname: __TEXT 523 addr: 0x000000000000BFB8 524 size: 72 525 offset: 0x00007FB8 526 align: 2 527 reloff: 0x00000000 528 nreloc: 0 529 flags: 0x00000000 530 reserved1: 0x00000000 531 reserved2: 0x00000000 532 reserved3: 0x00000000 533 content: 010000001C000000000000001C000000000000001C00000002000000A07F00003400000034000000B97F00000000000034000000030000000C000100100001000000000000100002 534 - cmd: LC_SEGMENT 535 cmdsize: 56 536 segname: __LINKEDIT 537 vmaddr: 49152 538 vmsize: 16384 539 fileoff: 32768 540 filesize: 132 541 maxprot: 1 542 initprot: 1 543 nsects: 0 544 flags: 0 545 - cmd: LC_DYLD_INFO_ONLY 546 cmdsize: 48 547 rebase_off: 0 548 rebase_size: 0 549 bind_off: 0 550 bind_size: 0 551 weak_bind_off: 0 552 weak_bind_size: 0 553 lazy_bind_off: 0 554 lazy_bind_size: 0 555 export_off: 32768 556 export_size: 44 557 - cmd: LC_SYMTAB 558 cmdsize: 24 559 symoff: 32816 560 nsyms: 3 561 stroff: 32852 562 strsize: 48 563 - cmd: LC_DYSYMTAB 564 cmdsize: 80 565 ilocalsym: 0 566 nlocalsym: 0 567 iextdefsym: 0 568 nextdefsym: 2 569 iundefsym: 2 570 nundefsym: 1 571 tocoff: 0 572 ntoc: 0 573 modtaboff: 0 574 nmodtab: 0 575 extrefsymoff: 0 576 nextrefsyms: 0 577 indirectsymoff: 0 578 nindirectsyms: 0 579 extreloff: 0 580 nextrel: 0 581 locreloff: 0 582 nlocrel: 0 583 - cmd: LC_LOAD_DYLINKER 584 cmdsize: 28 585 name: 12 586 Content: '/usr/lib/dyld' 587 ZeroPadBytes: 3 588 - cmd: LC_UUID 589 cmdsize: 24 590 uuid: F33E5680-8F64-3402-8952-7FD251400D78 591 - cmd: LC_BUILD_VERSION 592 cmdsize: 32 593 platform: 4 594 minos: 393472 595 sdk: 393472 596 ntools: 1 597 Tools: 598 - tool: 3 599 version: 34734080 600 - cmd: LC_SOURCE_VERSION 601 cmdsize: 16 602 version: 0 603 - cmd: LC_MAIN 604 cmdsize: 24 605 entryoff: 32672 606 stacksize: 0 607 - cmd: LC_ENCRYPTION_INFO 608 cmdsize: 20 609 cryptoff: 16384 610 cryptsize: 16384 611 cryptid: 0 612 - cmd: LC_LOAD_DYLIB 613 cmdsize: 52 614 dylib: 615 name: 24 616 timestamp: 2 617 current_version: 83951616 618 compatibility_version: 65536 619 Content: '/usr/lib/libSystem.B.dylib' 620 ZeroPadBytes: 2 621 - cmd: LC_FUNCTION_STARTS 622 cmdsize: 16 623 dataoff: 32812 624 datasize: 4 625 - cmd: LC_DATA_IN_CODE 626 cmdsize: 16 627 dataoff: 32816 628 datasize: 0 629LinkEditData: 630 ExportTrie: 631 TerminalSize: 0 632 NodeOffset: 0 633 Name: '' 634 Flags: 0x0000000000000000 635 Address: 0x0000000000000000 636 Other: 0x0000000000000000 637 ImportName: '' 638 Children: 639 - TerminalSize: 0 640 NodeOffset: 5 641 Name: _ 642 Flags: 0x0000000000000000 643 Address: 0x0000000000000000 644 Other: 0x0000000000000000 645 ImportName: '' 646 Children: 647 - TerminalSize: 2 648 NodeOffset: 33 649 Name: _mh_execute_header 650 Flags: 0x0000000000000000 651 Address: 0x0000000000000000 652 Other: 0x0000000000000000 653 ImportName: '' 654 - TerminalSize: 4 655 NodeOffset: 37 656 Name: main 657 Flags: 0x0000000000000000 658 Address: 0x0000000000007FA0 659 Other: 0x0000000000000000 660 ImportName: '' 661 NameList: 662 - n_strx: 2 663 n_type: 0x0F 664 n_sect: 1 665 n_desc: 16 666 n_value: 16384 667 - n_strx: 22 668 n_type: 0x0F 669 n_sect: 1 670 n_desc: 0 671 n_value: 49056 672 - n_strx: 28 673 n_type: 0x01 674 n_sect: 0 675 n_desc: 256 676 n_value: 0 677 StringTable: 678 - ' ' 679 - __mh_execute_header 680 - _main 681 - dyld_stub_binder 682 - '' 683 - '' 684 - '' 685... 686 687## Case 4: x86_64 OSX binary. 688## This binary can be built on OSX as follows: 689## main.c: int main() { return 0; } 690## clang -arch x86_64 main.c -o main.exe 691--- !mach-o 692FileHeader: 693 magic: 0xFEEDFACF 694 cputype: 0x01000007 695 cpusubtype: 0x80000003 696 filetype: 0x00000002 697 ncmds: 14 698 sizeofcmds: 744 699 flags: 0x00200085 700 reserved: 0x00000000 701LoadCommands: 702 - cmd: LC_SEGMENT_64 703 cmdsize: 72 704 segname: __PAGEZERO 705 vmaddr: 0 706 vmsize: 4294967296 707 fileoff: 0 708 filesize: 0 709 maxprot: 0 710 initprot: 0 711 nsects: 0 712 flags: 0 713 - cmd: LC_SEGMENT_64 714 cmdsize: 232 715 segname: __TEXT 716 vmaddr: 4294967296 717 vmsize: 4096 718 fileoff: 0 719 filesize: 4096 720 maxprot: 5 721 initprot: 5 722 nsects: 2 723 flags: 0 724 Sections: 725 - sectname: __text 726 segname: __TEXT 727 addr: 0x0000000100000FA0 728 size: 15 729 offset: 0x00000FA0 730 align: 4 731 reloff: 0x00000000 732 nreloc: 0 733 flags: 0x80000400 734 reserved1: 0x00000000 735 reserved2: 0x00000000 736 reserved3: 0x00000000 737 content: 554889E531C0C745FC000000005DC3 738 - sectname: __unwind_info 739 segname: __TEXT 740 addr: 0x0000000100000FB0 741 size: 72 742 offset: 0x00000FB0 743 align: 2 744 reloff: 0x00000000 745 nreloc: 0 746 flags: 0x00000000 747 reserved1: 0x00000000 748 reserved2: 0x00000000 749 reserved3: 0x00000000 750 content: 010000001C000000000000001C000000000000001C00000002000000A00F00003400000034000000B00F00000000000034000000030000000C000100100001000000000000000001 751 - cmd: LC_SEGMENT_64 752 cmdsize: 72 753 segname: __LINKEDIT 754 vmaddr: 4294971392 755 vmsize: 4096 756 fileoff: 4096 757 filesize: 152 758 maxprot: 1 759 initprot: 1 760 nsects: 0 761 flags: 0 762 - cmd: LC_DYLD_INFO_ONLY 763 cmdsize: 48 764 rebase_off: 0 765 rebase_size: 0 766 bind_off: 0 767 bind_size: 0 768 weak_bind_off: 0 769 weak_bind_size: 0 770 lazy_bind_off: 0 771 lazy_bind_size: 0 772 export_off: 4096 773 export_size: 48 774 - cmd: LC_SYMTAB 775 cmdsize: 24 776 symoff: 4152 777 nsyms: 3 778 stroff: 4200 779 strsize: 48 780 - cmd: LC_DYSYMTAB 781 cmdsize: 80 782 ilocalsym: 0 783 nlocalsym: 0 784 iextdefsym: 0 785 nextdefsym: 2 786 iundefsym: 2 787 nundefsym: 1 788 tocoff: 0 789 ntoc: 0 790 modtaboff: 0 791 nmodtab: 0 792 extrefsymoff: 0 793 nextrefsyms: 0 794 indirectsymoff: 0 795 nindirectsyms: 0 796 extreloff: 0 797 nextrel: 0 798 locreloff: 0 799 nlocrel: 0 800 - cmd: LC_LOAD_DYLINKER 801 cmdsize: 32 802 name: 12 803 Content: '/usr/lib/dyld' 804 ZeroPadBytes: 7 805 - cmd: LC_UUID 806 cmdsize: 24 807 uuid: D70F7C9D-410A-3567-83E2-4CA3F33585FF 808 - cmd: LC_BUILD_VERSION 809 cmdsize: 32 810 platform: 1 811 minos: 658944 812 sdk: 658944 813 ntools: 1 814 Tools: 815 - tool: 3 816 version: 34734080 817 - cmd: LC_SOURCE_VERSION 818 cmdsize: 16 819 version: 0 820 - cmd: LC_MAIN 821 cmdsize: 24 822 entryoff: 4000 823 stacksize: 0 824 - cmd: LC_LOAD_DYLIB 825 cmdsize: 56 826 dylib: 827 name: 24 828 timestamp: 2 829 current_version: 82115073 830 compatibility_version: 65536 831 Content: '/usr/lib/libSystem.B.dylib' 832 ZeroPadBytes: 6 833 - cmd: LC_FUNCTION_STARTS 834 cmdsize: 16 835 dataoff: 4144 836 datasize: 8 837 - cmd: LC_DATA_IN_CODE 838 cmdsize: 16 839 dataoff: 4152 840 datasize: 0 841LinkEditData: 842 ExportTrie: 843 TerminalSize: 0 844 NodeOffset: 0 845 Name: '' 846 Flags: 0x0000000000000000 847 Address: 0x0000000000000000 848 Other: 0x0000000000000000 849 ImportName: '' 850 Children: 851 - TerminalSize: 0 852 NodeOffset: 5 853 Name: _ 854 Flags: 0x0000000000000000 855 Address: 0x0000000000000000 856 Other: 0x0000000000000000 857 ImportName: '' 858 Children: 859 - TerminalSize: 2 860 NodeOffset: 33 861 Name: _mh_execute_header 862 Flags: 0x0000000000000000 863 Address: 0x0000000000000000 864 Other: 0x0000000000000000 865 ImportName: '' 866 - TerminalSize: 3 867 NodeOffset: 37 868 Name: main 869 Flags: 0x0000000000000000 870 Address: 0x0000000000000FA0 871 Other: 0x0000000000000000 872 ImportName: '' 873 NameList: 874 - n_strx: 2 875 n_type: 0x0F 876 n_sect: 1 877 n_desc: 16 878 n_value: 4294967296 879 - n_strx: 22 880 n_type: 0x0F 881 n_sect: 1 882 n_desc: 0 883 n_value: 4294971296 884 - n_strx: 28 885 n_type: 0x01 886 n_sect: 0 887 n_desc: 256 888 n_value: 0 889 StringTable: 890 - ' ' 891 - __mh_execute_header 892 - _main 893 - dyld_stub_binder 894 - '' 895 - '' 896 - '' 897... 898