| 20 | pass |
| 21 | |
| 22 | def get_complete(self): |
| 23 | cmd_map = { |
| 24 | LC_SEGMENT_64 : LoadSegment64, |
| 25 | LC_SEGMENT : LoadSegment32, |
| 26 | LC_SYMTAB : LoadSymtab, |
| 27 | LC_DYSYMTAB : LoadDysymtab, |
| 28 | LC_ID_DYLINKER : LoadIdDylinker, |
| 29 | LC_UUID : LoadUuid, |
| 30 | LC_VERSION_MIN_MACOSX : LoadVersionMinMacosx, |
| 31 | LC_VERSION_MIN_IPHONEOS : LoadVersionMinIphoneos, |
| 32 | LC_SOURCE_VERSION : LoadSourceVersion, |
| 33 | LC_UNIXTHREAD : LoadUnixThread, |
| 34 | LC_SEGMENT_SPLIT_INFO : LoadSegmentSplitInfo, |
| 35 | LC_FUNCTION_STARTS : LoadFunctionStarts, |
| 36 | LC_DATA_IN_CODE : LoadDataInCode, |
| 37 | LC_CODE_SIGNATURE : LoadCodeSignature, |
| 38 | LC_DYLD_INFO_ONLY : LoadDyldInfoOnly, |
| 39 | LC_LOAD_DYLINKER : LoadDylinker, |
| 40 | LC_MAIN : LoadMain, |
| 41 | LC_LOAD_DYLIB : LoadDyLib, |
| 42 | LC_LOAD_WEAK_DYLIB : LoadWeakDyLib, |
| 43 | LC_ENCRYPTION_INFO_64 : LoadEncryptionInfo64, |
| 44 | LC_DYLD_EXPORTS_TRIE : LoadDyldExportTrie, |
| 45 | LC_DYLD_CHAINED_FIXUPS : LoadDyldChainedFixups, |
| 46 | LC_RPATH : LoadRPath, |
| 47 | LC_ID_DYLIB : LoadIdDylib, |
| 48 | LC_BUILD_VERSION : LoadBuildVersion |
| 49 | } |
| 50 | |
| 51 | exec_func = cmd_map.get(self.cmd_id) |
| 52 | if exec_func: |
| 53 | return exec_func(self.data) |
| 54 | |
| 55 | |
| 56 | class LoadSegment(LoadCommand): |