dyld cache extractor used by OCLP 

I used https://github.com/keith/dyld-shared-cache-extractor while researching the patch in my fork of WhateverGreen that allows changing the dscTargetBPP setting from 12 to 8bpp to enable 4K240Hz for GPUs that support DSC. It seems to work ok except for the addresses don't seem to be correct. For example, in the CoreDisplay framework extracted by dyld-shared-cache-extractor, I see the following: There's a string literal here: aDsctargetbpp: 00007ff8025e80f2 db "dscTargetBPP", 0 which is used in a cfstring here: 00007ff840505778 dq 0x0000040043146b28, 0x00000000000007c8, 0x00000400025e80f2, 0x000000000000000c ; DATA XREF=_CGXMappedDisplayStart+3905 however, the addresses in the cfstring have 00000400 instead of 00007ff8 for the upper 32-bits. I don't know why. Maybe it's an issue with the disassembler. I'm using Hopper.app but otool shows the same addresses and data. I guess that makes sense since they're both looking at the same extracted binary. Do any of the other extractors output different results? I tried the "Read File From DYLD Cache..." command in Hopper.app and it produces better results: aDsctargetbpp: 00007ff8025e80f2 db "dscTargetBPP", 0 ; DATA XREF=cfstring_dscTargetBPP cfstring_dscTargetBPP: 00007ff840505778 dq 0x00007ff843146b28, 0x00000000000007c8, 0x00007ff8025e80f2, 0x000000000000000c ; "dscTargetBPP", DATA XREF=_CGXMappedDisplayStart+3905 The dyld shared cache contains many libraries and frameworks. For /S/L/E, it does not include kexts but has these items: AMDRadeonX5000GLDriver.bundle AGXGPURawCounterBundle.bundle AMDRadeonX4000GLDriver.bundle AMDRadeonX5000MTLDriver.bundle AMDRadeonX6000GLDriver.bundle AMDRadeonX6000MTLDriver.bundle AMDRadeonX6000Shared.bundle AMDShared.bundle AppleIntelICLGraphicsGLDriver.bundle AppleIntelICLGraphicsMTLDriver.bundle AppleIntelKBLGraphicsGLDriver.bundle AppleMultitouchDriver.kext AppleParavirtGPUMetalIOGPUFamily.bundle AMDMTLBronzeDriver.bundle AMDRadeonVADriver.bundle AMDRadeonVADriver2.bundle AMDRadeonX5000Shared.bundle AppleIntelKBLGraphicsMTLDriver.bundle AppleMetalOpenGLRenderer.bundle AppleParavirtGPUMetal.bundle For kexts, I've used the ones from the KDKs downloaded from Apple. open "https://developer.apple.com/download/more/?=kernel%20debug%20kit"

Author:
[source]