---
triple:          'arm64-apple-darwin'
binary-path:     '/Users/levoy/imports/snoopx-HDR-claude/build/Release/SnoopX.app/Contents/MacOS/SnoopX'
relocations:
  - { offset: 0xE72BC, size: 0x8, addend: 0x0, symName: _main, symObjAddr: 0x0, symBinAddr: 0x100001190, symSize: 0x4 }
  - { offset: 0xE72E4, size: 0x8, addend: 0x0, symName: _main, symObjAddr: 0x0, symBinAddr: 0x100001190, symSize: 0x4 }
  - { offset: 0xE731E, size: 0x8, addend: 0x0, symName: _main, symObjAddr: 0x0, symBinAddr: 0x100001190, symSize: 0x4 }
  - { offset: 0xE738F, size: 0x8, addend: 0x0, symName: '-[HDRImageView initWithFrame:]', symObjAddr: 0x0, symBinAddr: 0x100001194, symSize: 0xD0 }
  - { offset: 0xE7D6D, size: 0x8, addend: 0x0, symName: '-[HDRImageView initWithFrame:]', symObjAddr: 0x0, symBinAddr: 0x100001194, symSize: 0xD0 }
  - { offset: 0xE7E00, size: 0x8, addend: 0x0, symName: '-[HDRImageView initWithCoder:]', symObjAddr: 0xD0, symBinAddr: 0x100001264, symSize: 0x94 }
  - { offset: 0xE7E7A, size: 0x8, addend: 0x0, symName: '-[HDRImageView setupMetal]', symObjAddr: 0x164, symBinAddr: 0x1000012F8, symSize: 0x1C4 }
  - { offset: 0xE7F42, size: 0x8, addend: 0x0, symName: '-[HDRImageView setupPipeline]', symObjAddr: 0x328, symBinAddr: 0x1000014BC, symSize: 0x438 }
  - { offset: 0xE8001, size: 0x8, addend: 0x0, symName: '-[HDRImageView setupVertexBuffer]', symObjAddr: 0x760, symBinAddr: 0x1000018F4, symSize: 0xB8 }
  - { offset: 0xE8043, size: 0x8, addend: 0x0, symName: '-[HDRImageView setImage:]', symObjAddr: 0x818, symBinAddr: 0x1000019AC, symSize: 0x90 }
  - { offset: 0xE8086, size: 0x8, addend: 0x0, symName: '-[HDRImageView setCGImage:]', symObjAddr: 0x8A8, symBinAddr: 0x100001A3C, symSize: 0xD8 }
  - { offset: 0xE822D, size: 0x8, addend: 0x0, symName: '-[HDRImageView createTextureFromImage:]', symObjAddr: 0x980, symBinAddr: 0x100001B14, symSize: 0x290 }
  - { offset: 0xE841C, size: 0x8, addend: 0x0, symName: '-[HDRImageView createTextureFrom8BitCGImage:]', symObjAddr: 0xC10, symBinAddr: 0x100001DA4, symSize: 0x240 }
  - { offset: 0xE87F5, size: 0x8, addend: 0x0, symName: '-[HDRImageView createTextureFromFloat16CGImage:]', symObjAddr: 0xE50, symBinAddr: 0x100001FE4, symSize: 0x150 }
  - { offset: 0xE89FB, size: 0x8, addend: 0x0, symName: '-[HDRImageView createTextureFromNonFloat16CGImage:]', symObjAddr: 0xFA0, symBinAddr: 0x100002134, symSize: 0x238 }
  - { offset: 0xE8D55, size: 0x8, addend: 0x0, symName: '-[HDRImageView floatToHalf:]', symObjAddr: 0x11D8, symBinAddr: 0x10000236C, symSize: 0x6C }
  - { offset: 0xE8DDE, size: 0x8, addend: 0x0, symName: '-[HDRImageView mtkView:drawableSizeWillChange:]', symObjAddr: 0x1244, symBinAddr: 0x1000023D8, symSize: 0x4 }
  - { offset: 0xE8E28, size: 0x8, addend: 0x0, symName: '-[HDRImageView drawInMTKView:]', symObjAddr: 0x1248, symBinAddr: 0x1000023DC, symSize: 0x298 }
  - { offset: 0xE8EEA, size: 0x8, addend: 0x0, symName: '-[HDRImageView setEnableHDR:]', symObjAddr: 0x14E0, symBinAddr: 0x100002674, symSize: 0x44 }
  - { offset: 0xE8F3C, size: 0x8, addend: 0x0, symName: '-[HDRImageView setUseLinearDisplayColorSpace:]', symObjAddr: 0x1524, symBinAddr: 0x1000026B8, symSize: 0x74 }
  - { offset: 0xE8FC3, size: 0x8, addend: 0x0, symName: '-[HDRImageView image]', symObjAddr: 0x1598, symBinAddr: 0x10000272C, symSize: 0x10 }
  - { offset: 0xE8FFA, size: 0x8, addend: 0x0, symName: '-[HDRImageView enableHDR]', symObjAddr: 0x15A8, symBinAddr: 0x10000273C, symSize: 0x10 }
  - { offset: 0xE9031, size: 0x8, addend: 0x0, symName: '-[HDRImageView useLinearDisplayColorSpace]', symObjAddr: 0x15B8, symBinAddr: 0x10000274C, symSize: 0x10 }
  - { offset: 0xE9068, size: 0x8, addend: 0x0, symName: '-[HDRImageView metalDevice]', symObjAddr: 0x15C8, symBinAddr: 0x10000275C, symSize: 0x10 }
  - { offset: 0xE909F, size: 0x8, addend: 0x0, symName: '-[HDRImageView setMetalDevice:]', symObjAddr: 0x15D8, symBinAddr: 0x10000276C, symSize: 0x14 }
  - { offset: 0xE90E0, size: 0x8, addend: 0x0, symName: '-[HDRImageView commandQueue]', symObjAddr: 0x15EC, symBinAddr: 0x100002780, symSize: 0x10 }
  - { offset: 0xE9117, size: 0x8, addend: 0x0, symName: '-[HDRImageView setCommandQueue:]', symObjAddr: 0x15FC, symBinAddr: 0x100002790, symSize: 0x14 }
  - { offset: 0xE9158, size: 0x8, addend: 0x0, symName: '-[HDRImageView pipelineState]', symObjAddr: 0x1610, symBinAddr: 0x1000027A4, symSize: 0x10 }
  - { offset: 0xE918F, size: 0x8, addend: 0x0, symName: '-[HDRImageView setPipelineState:]', symObjAddr: 0x1620, symBinAddr: 0x1000027B4, symSize: 0x14 }
  - { offset: 0xE91D0, size: 0x8, addend: 0x0, symName: '-[HDRImageView currentTexture]', symObjAddr: 0x1634, symBinAddr: 0x1000027C8, symSize: 0x10 }
  - { offset: 0xE9207, size: 0x8, addend: 0x0, symName: '-[HDRImageView setCurrentTexture:]', symObjAddr: 0x1644, symBinAddr: 0x1000027D8, symSize: 0x14 }
  - { offset: 0xE9248, size: 0x8, addend: 0x0, symName: '-[HDRImageView vertexBuffer]', symObjAddr: 0x1658, symBinAddr: 0x1000027EC, symSize: 0x10 }
  - { offset: 0xE927F, size: 0x8, addend: 0x0, symName: '-[HDRImageView setVertexBuffer:]', symObjAddr: 0x1668, symBinAddr: 0x1000027FC, symSize: 0x14 }
  - { offset: 0xE92C0, size: 0x8, addend: 0x0, symName: '-[HDRImageView edrHeadroom]', symObjAddr: 0x167C, symBinAddr: 0x100002810, symSize: 0x10 }
  - { offset: 0xE92F5, size: 0x8, addend: 0x0, symName: '-[HDRImageView setEdrHeadroom:]', symObjAddr: 0x168C, symBinAddr: 0x100002820, symSize: 0x10 }
  - { offset: 0xE9333, size: 0x8, addend: 0x0, symName: '-[HDRImageView .cxx_destruct]', symObjAddr: 0x169C, symBinAddr: 0x100002830, symSize: 0x90 }
  - { offset: 0xE9A0C, size: 0x8, addend: 0x0, symName: '+[Controller initialize]', symObjAddr: 0x0, symBinAddr: 0x1000028C0, symSize: 0x100 }
  - { offset: 0xEAB22, size: 0x8, addend: 0x0, symName: '+[Controller initialize]', symObjAddr: 0x0, symBinAddr: 0x1000028C0, symSize: 0x100 }
  - { offset: 0xEAB81, size: 0x8, addend: 0x0, symName: '-[Controller init]', symObjAddr: 0x100, symBinAddr: 0x1000029C0, symSize: 0xCC }
  - { offset: 0xEABB8, size: 0x8, addend: 0x0, symName: '___18-[Controller init]_block_invoke', symObjAddr: 0x1CC, symBinAddr: 0x100002A8C, symSize: 0x174 }
  - { offset: 0xEAD25, size: 0x8, addend: 0x0, symName: ___copy_helper_block_e8_32o, symObjAddr: 0x340, symBinAddr: 0x100002C00, symSize: 0x10 }
  - { offset: 0xEAD4E, size: 0x8, addend: 0x0, symName: ___destroy_helper_block_e8_32o, symObjAddr: 0x350, symBinAddr: 0x100002C10, symSize: 0xC }
  - { offset: 0xEAD6D, size: 0x8, addend: 0x0, symName: '-[Controller awakeFromNib]', symObjAddr: 0x35C, symBinAddr: 0x100002C1C, symSize: 0x15C }
  - { offset: 0xEAE17, size: 0x8, addend: 0x0, symName: '-[Controller setupHDRView]', symObjAddr: 0x4B8, symBinAddr: 0x100002D78, symSize: 0xC }
  - { offset: 0xEAE4A, size: 0x8, addend: 0x0, symName: '-[Controller applicationShouldTerminateAfterLastWindowClosed:]', symObjAddr: 0x4C4, symBinAddr: 0x100002D84, symSize: 0x8 }
  - { offset: 0xEAE89, size: 0x8, addend: 0x0, symName: '-[Controller applicationShouldHandleReopen:hasVisibleWindows:]', symObjAddr: 0x4CC, symBinAddr: 0x100002D8C, symSize: 0x30 }
  - { offset: 0xEAEDC, size: 0x8, addend: 0x0, symName: '-[Controller loadUserDefaults]', symObjAddr: 0x4FC, symBinAddr: 0x100002DBC, symSize: 0x164 }
  - { offset: 0xEAF1F, size: 0x8, addend: 0x0, symName: '-[Controller dealloc]', symObjAddr: 0x660, symBinAddr: 0x100002F20, symSize: 0x48 }
  - { offset: 0xEAF52, size: 0x8, addend: 0x0, symName: '-[Controller updateZoom:Sync:]', symObjAddr: 0x6A8, symBinAddr: 0x100002F68, symSize: 0x164 }
  - { offset: 0xEAFC4, size: 0x8, addend: 0x0, symName: '-[Controller updateHighlight:Sync:]', symObjAddr: 0x80C, symBinAddr: 0x1000030CC, symSize: 0x7C }
  - { offset: 0xEB017, size: 0x8, addend: 0x0, symName: '-[Controller updateLockPosition:Sync:]', symObjAddr: 0x888, symBinAddr: 0x100003148, symSize: 0x60 }
  - { offset: 0xEB06A, size: 0x8, addend: 0x0, symName: '-[Controller updateAlwaysOnTop:Sync:]', symObjAddr: 0x8E8, symBinAddr: 0x1000031A8, symSize: 0x90 }
  - { offset: 0xEB0C0, size: 0x8, addend: 0x0, symName: '-[Controller updateTimer:Sync:]', symObjAddr: 0x978, symBinAddr: 0x100003238, symSize: 0x138 }
  - { offset: 0xEB173, size: 0x8, addend: 0x0, symName: '-[Controller updateGraph:Sync:]', symObjAddr: 0xAB0, symBinAddr: 0x100003370, symSize: 0x110 }
  - { offset: 0xEB1D9, size: 0x8, addend: 0x0, symName: '-[Controller updateStatistics:Sync:]', symObjAddr: 0xBC0, symBinAddr: 0x100003480, symSize: 0x7C }
  - { offset: 0xEB22F, size: 0x8, addend: 0x0, symName: '-[Controller updateSwatch:Sync:]', symObjAddr: 0xC3C, symBinAddr: 0x1000034FC, symSize: 0x7C }
  - { offset: 0xEB285, size: 0x8, addend: 0x0, symName: '-[Controller updateDisplayMode:Sync:]', symObjAddr: 0xCB8, symBinAddr: 0x100003578, symSize: 0xFC }
  - { offset: 0xEB2EB, size: 0x8, addend: 0x0, symName: '-[Controller updateEDRMode:Sync:]', symObjAddr: 0xDB4, symBinAddr: 0x100003674, symSize: 0xF8 }
  - { offset: 0xEB371, size: 0x8, addend: 0x0, symName: '-[Controller updateView]', symObjAddr: 0xEAC, symBinAddr: 0x10000376C, symSize: 0x494 }
  - { offset: 0xEB5CB, size: 0x8, addend: 0x0, symName: '-[Controller actUpdate:]', symObjAddr: 0x1340, symBinAddr: 0x100003C00, symSize: 0x4 }
  - { offset: 0xEB60A, size: 0x8, addend: 0x0, symName: '-[Controller actGraph:]', symObjAddr: 0x1344, symBinAddr: 0x100003C04, symSize: 0x38 }
  - { offset: 0xEB64F, size: 0x8, addend: 0x0, symName: '-[Controller actZoom:]', symObjAddr: 0x137C, symBinAddr: 0x100003C3C, symSize: 0x38 }
  - { offset: 0xEB694, size: 0x8, addend: 0x0, symName: '-[Controller actTimer:]', symObjAddr: 0x13B4, symBinAddr: 0x100003C74, symSize: 0x30 }
  - { offset: 0xEB6D9, size: 0x8, addend: 0x0, symName: '-[Controller actAlwaysOnTop:]', symObjAddr: 0x13E4, symBinAddr: 0x100003CA4, symSize: 0x34 }
  - { offset: 0xEB71E, size: 0x8, addend: 0x0, symName: '-[Controller actHighlight:]', symObjAddr: 0x1418, symBinAddr: 0x100003CD8, symSize: 0x34 }
  - { offset: 0xEB763, size: 0x8, addend: 0x0, symName: '-[Controller actStatistics:]', symObjAddr: 0x144C, symBinAddr: 0x100003D0C, symSize: 0x3C }
  - { offset: 0xEB7A8, size: 0x8, addend: 0x0, symName: '-[Controller actSwatch:]', symObjAddr: 0x1488, symBinAddr: 0x100003D48, symSize: 0x3C }
  - { offset: 0xEB7ED, size: 0x8, addend: 0x0, symName: '-[Controller actLockPosition:]', symObjAddr: 0x14C4, symBinAddr: 0x100003D84, symSize: 0x34 }
  - { offset: 0xEB832, size: 0x8, addend: 0x0, symName: '-[Controller actDisplayMode:]', symObjAddr: 0x14F8, symBinAddr: 0x100003DB8, symSize: 0x50 }
  - { offset: 0xEB888, size: 0x8, addend: 0x0, symName: '-[Controller startTimer:]', symObjAddr: 0x1548, symBinAddr: 0x100003E08, symSize: 0x44 }
  - { offset: 0xEB8CD, size: 0x8, addend: 0x0, symName: '-[Controller stopTimer]', symObjAddr: 0x158C, symBinAddr: 0x100003E4C, symSize: 0x28 }
  - { offset: 0xEBA65, size: 0x8, addend: 0x0, symName: _clearBitmapData, symObjAddr: 0x0, symBinAddr: 0x100003E74, symSize: 0x3C }
  - { offset: 0xEBA73, size: 0x8, addend: 0x0, symName: '-[Snooper checkAndSwitchDisplayIfNeeded]', symObjAddr: 0x1298, symBinAddr: 0x10000510C, symSize: 0xD8 }
  - { offset: 0xEBA9B, size: 0x8, addend: 0x0, symName: _checkAndSwitchDisplayIfNeeded.lastLoggedID, symObjAddr: 0x2A690, symBinAddr: 0x10001AD70, symSize: 0x0 }
  - { offset: 0xEBB53, size: 0x8, addend: 0x0, symName: '-[Snooper drawGraphsOnHDRImage:]', symObjAddr: 0x2B74, symBinAddr: 0x1000069CC, symSize: 0x870 }
  - { offset: 0xEC3FB, size: 0x8, addend: 0x0, symName: '-[Snooper extractRegionFromYCbCrBuffer:toData:width:height:bytesPerRow:rectX:rectY:]', symObjAddr: 0x4EF4, symBinAddr: 0x100008D4C, symSize: 0x434 }
  - { offset: 0xEC427, size: 0x8, addend: 0x0, symName: '_extractRegionFromYCbCrBuffer:toData:width:height:bytesPerRow:rectX:rectY:.formatOnce', symObjAddr: 0x2A698, symBinAddr: 0x10001AD78, symSize: 0x0 }
  - { offset: 0xEC43E, size: 0x8, addend: 0x0, symName: '_extractRegionFromYCbCrBuffer:toData:width:height:bytesPerRow:rectX:rectY:.onceToken', symObjAddr: 0x2A6A0, symBinAddr: 0x10001AD80, symSize: 0x0 }
  - { offset: 0xEC89D, size: 0x8, addend: 0x0, symName: '-[Snooper stream:didOutputSampleBuffer:ofType:]', symObjAddr: 0x66C0, symBinAddr: 0x10000A518, symSize: 0xC4 }
  - { offset: 0xEC8C5, size: 0x8, addend: 0x0, symName: '_stream:didOutputSampleBuffer:ofType:.onceToken', symObjAddr: 0x2A6A8, symBinAddr: 0x10001AD88, symSize: 0x0 }
  - { offset: 0xED1EE, size: 0x8, addend: 0x0, symName: _clearBitmapData, symObjAddr: 0x0, symBinAddr: 0x100003E74, symSize: 0x3C }
  - { offset: 0xED234, size: 0x8, addend: 0x0, symName: _clearBitmapData, symObjAddr: 0x0, symBinAddr: 0x100003E74, symSize: 0x3C }
  - { offset: 0xED280, size: 0x8, addend: 0x0, symName: _drawBitmapData, symObjAddr: 0x3C, symBinAddr: 0x100003EB0, symSize: 0x170 }
  - { offset: 0xED45D, size: 0x8, addend: 0x0, symName: '-[Snooper init]', symObjAddr: 0x1AC, symBinAddr: 0x100004020, symSize: 0x194 }
  - { offset: 0xED562, size: 0x8, addend: 0x0, symName: '-[Snooper dealloc]', symObjAddr: 0x340, symBinAddr: 0x1000041B4, symSize: 0xB8 }
  - { offset: 0xED636, size: 0x8, addend: 0x0, symName: '-[Snooper setCursorPointX:Y:]', symObjAddr: 0x3F8, symBinAddr: 0x10000426C, symSize: 0x24 }
  - { offset: 0xED688, size: 0x8, addend: 0x0, symName: '-[Snooper getActualSamplePointX]', symObjAddr: 0x41C, symBinAddr: 0x100004290, symSize: 0x8 }
  - { offset: 0xED6BE, size: 0x8, addend: 0x0, symName: '-[Snooper getActualSamplePointY]', symObjAddr: 0x424, symBinAddr: 0x100004298, symSize: 0x8 }
  - { offset: 0xED6F4, size: 0x8, addend: 0x0, symName: '-[Snooper setViewPointWidth:Height:]', symObjAddr: 0x42C, symBinAddr: 0x1000042A0, symSize: 0x50 }
  - { offset: 0xED74A, size: 0x8, addend: 0x0, symName: '-[Snooper setZoom:]', symObjAddr: 0x47C, symBinAddr: 0x1000042F0, symSize: 0x38 }
  - { offset: 0xED78F, size: 0x8, addend: 0x0, symName: '-[Snooper resetPointSizes]', symObjAddr: 0x4B4, symBinAddr: 0x100004328, symSize: 0x3C }
  - { offset: 0xED7C1, size: 0x8, addend: 0x0, symName: '-[Snooper resetPixelSizes]', symObjAddr: 0x4F0, symBinAddr: 0x100004364, symSize: 0xB4 }
  - { offset: 0xED804, size: 0x8, addend: 0x0, symName: '-[Snooper resetCapturePointRect]', symObjAddr: 0x5A4, symBinAddr: 0x100004418, symSize: 0x6C }
  - { offset: 0xED988, size: 0x8, addend: 0x0, symName: '-[Snooper initCaptureData]', symObjAddr: 0x610, symBinAddr: 0x100004484, symSize: 0x100 }
  - { offset: 0xEDAA0, size: 0x8, addend: 0x0, symName: '-[Snooper initCaptureContextWithImage:]', symObjAddr: 0x710, symBinAddr: 0x100004584, symSize: 0x100 }
  - { offset: 0xEDC80, size: 0x8, addend: 0x0, symName: '-[Snooper initZoomContext]', symObjAddr: 0x810, symBinAddr: 0x100004684, symSize: 0xA0 }
  - { offset: 0xEDD28, size: 0x8, addend: 0x0, symName: '-[Snooper captureCursorColor]', symObjAddr: 0x8B0, symBinAddr: 0x100004724, symSize: 0x198 }
  - { offset: 0xEDF74, size: 0x8, addend: 0x0, symName: '-[Snooper getZoomContext]', symObjAddr: 0xA48, symBinAddr: 0x1000048BC, symSize: 0xB0 }
  - { offset: 0xEE07C, size: 0x8, addend: 0x0, symName: '-[Snooper getCropImage]', symObjAddr: 0xAF8, symBinAddr: 0x10000496C, symSize: 0xD0 }
  - { offset: 0xEE182, size: 0x8, addend: 0x0, symName: '-[Snooper getScreenshotFor:In:]', symObjAddr: 0xBC8, symBinAddr: 0x100004A3C, symSize: 0xD0 }
  - { offset: 0xEE2C0, size: 0x8, addend: 0x0, symName: '-[Snooper getCaptureContextFrom:]', symObjAddr: 0xC98, symBinAddr: 0x100004B0C, symSize: 0x438 }
  - { offset: 0xEE693, size: 0x8, addend: 0x0, symName: '-[Snooper snoopFrom:]', symObjAddr: 0x10D0, symBinAddr: 0x100004F44, symSize: 0x1C8 }
  - { offset: 0xEE842, size: 0x8, addend: 0x0, symName: '___40-[Snooper checkAndSwitchDisplayIfNeeded]_block_invoke', symObjAddr: 0x1370, symBinAddr: 0x1000051E4, symSize: 0x80 }
  - { offset: 0xEE8E4, size: 0x8, addend: 0x0, symName: '___40-[Snooper checkAndSwitchDisplayIfNeeded]_block_invoke_2', symObjAddr: 0x13F0, symBinAddr: 0x100005264, symSize: 0x8 }
  - { offset: 0xEE926, size: 0x8, addend: 0x0, symName: '-[Snooper snoopCGImageFrom:]', symObjAddr: 0x1414, symBinAddr: 0x10000526C, symSize: 0x220 }
  - { offset: 0xEEB57, size: 0x8, addend: 0x0, symName: '-[Snooper drawGraph]', symObjAddr: 0x1634, symBinAddr: 0x10000548C, symSize: 0x28 }
  - { offset: 0xEEB89, size: 0x8, addend: 0x0, symName: '-[Snooper drawStatistics]', symObjAddr: 0x165C, symBinAddr: 0x1000054B4, symSize: 0x378 }
  - { offset: 0xEEE7A, size: 0x8, addend: 0x0, symName: '-[Snooper formatStatisticsString]', symObjAddr: 0x19D4, symBinAddr: 0x10000582C, symSize: 0xB8 }
  - { offset: 0xEEEBB, size: 0x8, addend: 0x0, symName: '-[Snooper drawSwatch]', symObjAddr: 0x1A8C, symBinAddr: 0x1000058E4, symSize: 0x144 }
  - { offset: 0xEEFE6, size: 0x8, addend: 0x0, symName: '-[Snooper drawCenter]', symObjAddr: 0x1BD0, symBinAddr: 0x100005A28, symSize: 0x98 }
  - { offset: 0xEF09F, size: 0x8, addend: 0x0, symName: '-[Snooper drawHorizontalGraph]', symObjAddr: 0x1C68, symBinAddr: 0x100005AC0, symSize: 0x460 }
  - { offset: 0xEF408, size: 0x8, addend: 0x0, symName: '-[Snooper drawVerticalGraph]', symObjAddr: 0x20C8, symBinAddr: 0x100005F20, symSize: 0x4A0 }
  - { offset: 0xEF728, size: 0x8, addend: 0x0, symName: '-[Snooper drawGraphCanvasWithRect:]', symObjAddr: 0x2568, symBinAddr: 0x1000063C0, symSize: 0xA8 }
  - { offset: 0xEF7CB, size: 0x8, addend: 0x0, symName: '-[Snooper drawImage:At:]', symObjAddr: 0x2610, symBinAddr: 0x100006468, symSize: 0x114 }
  - { offset: 0xEF9DC, size: 0x8, addend: 0x0, symName: '-[Snooper setMainScreenHeight:]', symObjAddr: 0x2724, symBinAddr: 0x10000657C, symSize: 0x8 }
  - { offset: 0xEFA1D, size: 0x8, addend: 0x0, symName: '-[Snooper setMaxBackingScaleFactor:]', symObjAddr: 0x272C, symBinAddr: 0x100006584, symSize: 0x18 }
  - { offset: 0xEFA5F, size: 0x8, addend: 0x0, symName: '-[Snooper getCurrentDisplayFrame]', symObjAddr: 0x2744, symBinAddr: 0x10000659C, symSize: 0x14 }
  - { offset: 0xEFA95, size: 0x8, addend: 0x0, symName: '-[Snooper setHDRCapable:]', symObjAddr: 0x2758, symBinAddr: 0x1000065B0, symSize: 0x244 }
  - { offset: 0xEFBF5, size: 0x8, addend: 0x0, symName: '-[Snooper setDisplayMode:]', symObjAddr: 0x299C, symBinAddr: 0x1000067F4, symSize: 0x8 }
  - { offset: 0xEFC36, size: 0x8, addend: 0x0, symName: '-[Snooper isHDRActive]', symObjAddr: 0x29A4, symBinAddr: 0x1000067FC, symSize: 0x5C }
  - { offset: 0xEFC6E, size: 0x8, addend: 0x0, symName: '-[Snooper createHDRMagnifiedImage]', symObjAddr: 0x2A00, symBinAddr: 0x100006858, symSize: 0x174 }
  - { offset: 0xEFEB4, size: 0x8, addend: 0x0, symName: '-[Snooper drawGraphsIntoFloat16Buffer:width:height:bytesPerRow:zoom:]', symObjAddr: 0x33E4, symBinAddr: 0x10000723C, symSize: 0xFF4 }
  - { offset: 0xF0C5B, size: 0x8, addend: 0x0, symName: '___69-[Snooper drawGraphsIntoFloat16Buffer:width:height:bytesPerRow:zoom:]_block_invoke', symObjAddr: 0x43D8, symBinAddr: 0x100008230, symSize: 0x16C }
  - { offset: 0xF0D10, size: 0x8, addend: 0x0, symName: '___69-[Snooper drawGraphsIntoFloat16Buffer:width:height:bytesPerRow:zoom:]_block_invoke', symObjAddr: 0x43D8, symBinAddr: 0x100008230, symSize: 0x16C }
  - { offset: 0xF0F68, size: 0x8, addend: 0x0, symName: '___69-[Snooper drawGraphsIntoFloat16Buffer:width:height:bytesPerRow:zoom:]_block_invoke_2', symObjAddr: 0x4544, symBinAddr: 0x10000839C, symSize: 0x264 }
  - { offset: 0xF127D, size: 0x8, addend: 0x0, symName: '___69-[Snooper drawGraphsIntoFloat16Buffer:width:height:bytesPerRow:zoom:]_block_invoke_3', symObjAddr: 0x47A8, symBinAddr: 0x100008600, symSize: 0x298 }
  - { offset: 0xF132F, size: 0x8, addend: 0x0, symName: '___69-[Snooper drawGraphsIntoFloat16Buffer:width:height:bytesPerRow:zoom:]_block_invoke_3', symObjAddr: 0x47A8, symBinAddr: 0x100008600, symSize: 0x298 }
  - { offset: 0xF1521, size: 0x8, addend: 0x0, symName: '-[Snooper createHDRCGImageFromBuffer:rectX:rectY:width:height:zoom:]', symObjAddr: 0x4A40, symBinAddr: 0x100008898, symSize: 0x4AC }
  - { offset: 0xF1CCF, size: 0x8, addend: 0x0, symName: _releaseDataCallback, symObjAddr: 0x4EEC, symBinAddr: 0x100008D44, symSize: 0x8 }
  - { offset: 0xF1D96, size: 0x8, addend: 0x0, symName: '___84-[Snooper extractRegionFromYCbCrBuffer:toData:width:height:bytesPerRow:rectX:rectY:]_block_invoke', symObjAddr: 0x5328, symBinAddr: 0x100009180, symSize: 0x74 }
  - { offset: 0xF1DFE, size: 0x8, addend: 0x0, symName: '___84-[Snooper extractRegionFromYCbCrBuffer:toData:width:height:bytesPerRow:rectX:rectY:]_block_invoke_2', symObjAddr: 0x539C, symBinAddr: 0x1000091F4, symSize: 0xB8 }
  - { offset: 0xF1EE6, size: 0x8, addend: 0x0, symName: '-[Snooper computeHDRStatisticsFromBuffer:rectX:rectY:width:height:]', symObjAddr: 0x5454, symBinAddr: 0x1000092AC, symSize: 0x514 }
  - { offset: 0xF23AB, size: 0x8, addend: 0x0, symName: _compare_cgfloat, symObjAddr: 0x5968, symBinAddr: 0x1000097C0, symSize: 0x1C }
  - { offset: 0xF2404, size: 0x8, addend: 0x0, symName: '-[Snooper extractRegionFromHDRBuffer:toData:width:height:bytesPerRow:rectX:rectY:]', symObjAddr: 0x5984, symBinAddr: 0x1000097DC, symSize: 0x4C8 }
  - { offset: 0xF2819, size: 0x8, addend: 0x0, symName: '-[Snooper setupScreenCaptureKit]', symObjAddr: 0x5E4C, symBinAddr: 0x100009CA4, symSize: 0x68 }
  - { offset: 0xF284D, size: 0x8, addend: 0x0, symName: '___32-[Snooper setupScreenCaptureKit]_block_invoke', symObjAddr: 0x5EB4, symBinAddr: 0x100009D0C, symSize: 0x700 }
  - { offset: 0xF2BB7, size: 0x8, addend: 0x0, symName: '___32-[Snooper setupScreenCaptureKit]_block_invoke_2', symObjAddr: 0x65B4, symBinAddr: 0x10000A40C, symSize: 0x80 }
  - { offset: 0xF2C34, size: 0x8, addend: 0x0, symName: '-[Snooper stopScreenCaptureKit]', symObjAddr: 0x6634, symBinAddr: 0x10000A48C, symSize: 0x60 }
  - { offset: 0xF2C68, size: 0x8, addend: 0x0, symName: '___31-[Snooper stopScreenCaptureKit]_block_invoke', symObjAddr: 0x6694, symBinAddr: 0x10000A4EC, symSize: 0x2C }
  - { offset: 0xF2CDB, size: 0x8, addend: 0x0, symName: '___47-[Snooper stream:didOutputSampleBuffer:ofType:]_block_invoke', symObjAddr: 0x6784, symBinAddr: 0x10000A5DC, symSize: 0x254 }
  - { offset: 0xF3065, size: 0x8, addend: 0x0, symName: '-[Snooper stream:didStopWithError:]', symObjAddr: 0x69D8, symBinAddr: 0x10000A830, symSize: 0x38 }
  - { offset: 0xF30C5, size: 0x8, addend: 0x0, symName: '-[Snooper readHDRPixelFromBuffer:atX:Y:]', symObjAddr: 0x6A10, symBinAddr: 0x10000A868, symSize: 0x604 }
  - { offset: 0xF3541, size: 0x8, addend: 0x0, symName: '-[Snooper createStatisticsInfoString]', symObjAddr: 0x7014, symBinAddr: 0x10000AE6C, symSize: 0x30 }
  - { offset: 0xF3579, size: 0x8, addend: 0x0, symName: '-[Snooper cursorRed]', symObjAddr: 0x7044, symBinAddr: 0x10000AE9C, symSize: 0x8 }
  - { offset: 0xF35B0, size: 0x8, addend: 0x0, symName: '-[Snooper cursorGreen]', symObjAddr: 0x704C, symBinAddr: 0x10000AEA4, symSize: 0x8 }
  - { offset: 0xF35E7, size: 0x8, addend: 0x0, symName: '-[Snooper cursorBlue]', symObjAddr: 0x7054, symBinAddr: 0x10000AEAC, symSize: 0x8 }
  - { offset: 0xF361E, size: 0x8, addend: 0x0, symName: '-[Snooper cursorAlpha]', symObjAddr: 0x705C, symBinAddr: 0x10000AEB4, symSize: 0x8 }
  - { offset: 0xF3655, size: 0x8, addend: 0x0, symName: '-[Snooper cursorRedHDR]', symObjAddr: 0x7064, symBinAddr: 0x10000AEBC, symSize: 0x8 }
  - { offset: 0xF368A, size: 0x8, addend: 0x0, symName: '-[Snooper cursorGreenHDR]', symObjAddr: 0x706C, symBinAddr: 0x10000AEC4, symSize: 0x8 }
  - { offset: 0xF36BF, size: 0x8, addend: 0x0, symName: '-[Snooper cursorBlueHDR]', symObjAddr: 0x7074, symBinAddr: 0x10000AECC, symSize: 0x8 }
  - { offset: 0xF36F4, size: 0x8, addend: 0x0, symName: '-[Snooper cursorAlphaHDR]', symObjAddr: 0x707C, symBinAddr: 0x10000AED4, symSize: 0x8 }
  - { offset: 0xF3729, size: 0x8, addend: 0x0, symName: '-[Snooper highlight]', symObjAddr: 0x7084, symBinAddr: 0x10000AEDC, symSize: 0xC }
  - { offset: 0xF3760, size: 0x8, addend: 0x0, symName: '-[Snooper setHighlight:]', symObjAddr: 0x7090, symBinAddr: 0x10000AEE8, symSize: 0x8 }
  - { offset: 0xF379D, size: 0x8, addend: 0x0, symName: '-[Snooper graph]', symObjAddr: 0x7098, symBinAddr: 0x10000AEF0, symSize: 0x8 }
  - { offset: 0xF37D4, size: 0x8, addend: 0x0, symName: '-[Snooper setGraph:]', symObjAddr: 0x70A0, symBinAddr: 0x10000AEF8, symSize: 0x8 }
  - { offset: 0xF3811, size: 0x8, addend: 0x0, symName: '-[Snooper statistics]', symObjAddr: 0x70A8, symBinAddr: 0x10000AF00, symSize: 0xC }
  - { offset: 0xF3848, size: 0x8, addend: 0x0, symName: '-[Snooper setStatistics:]', symObjAddr: 0x70B4, symBinAddr: 0x10000AF0C, symSize: 0x8 }
  - { offset: 0xF3885, size: 0x8, addend: 0x0, symName: '-[Snooper swatch]', symObjAddr: 0x70BC, symBinAddr: 0x10000AF14, symSize: 0xC }
  - { offset: 0xF38BC, size: 0x8, addend: 0x0, symName: '-[Snooper setSwatch:]', symObjAddr: 0x70C8, symBinAddr: 0x10000AF20, symSize: 0x8 }
...
