文件
paintfcp-fxplug/docs/analysis/rea-image-orientation.json
T

11759 行
372 KiB
JSON

{
"schema": "paintfcp-read-only-image-orientation-evidence-v1",
"artifact": {
"path": "/Applications/MSE18V2.app",
"analyzed_arm64_sha256": "f01e8c0b7e2676b2961950b0e48efdd2589af218e4b36de7d39f5d1c76852bfb"
},
"scope": "Static shipped-artifact output-helper analysis. No application execution, host capture, private frame, source media, face observation or live face coordinates are included.",
"observations": [
{
"claim": "The CIImage input is constructed from IOSurface or MTLTexture with a one-entry kCIImageColorSpace options dictionary. The provided render body applies only extent scale and translation, with no orientation/flip transform.",
"source": "saved REA pseudocode /tmp/paintfcp-original-render.c",
"source_lines": [
[
358,
381
],
[
418,
455
]
],
"source_sha256": "b531c5f870ce90c0106c75c5e41db8938b5619bb96486fac51c18ba9cc94ab47"
},
{
"claim": "0x10002911c forwards the unchanged CIImage and CGRect to CIContext render:toIOSurface:bounds:colorSpace: after nil/empty checks. It does not receive an FxImageTile or imageOrigin and makes no additional image transform.",
"evidence_id": "ev_88a71ec62fade296495f1e3f5428cdb15ad4cda43866e09fb040fa3a4bdb0440",
"call_address": "0x100029188",
"body_bytes": 140
},
{
"claim": "0x1000291b4 renders BGRA8, RGBAh or RGBAf to a temporary bitmap, then copies rows forward to IOSurface. Both source and destination pointers increment positively; there is no reversed-row copy.",
"evidence_id": "ev_110d76f7958decb0c56b7daafe292d60a8bc56cd035b40a997f61395cb91ebfe",
"bitmap_render_address": "0x1000292e4",
"row_copy_address": "0x10002933c",
"source_increment_address": "0x100029340",
"destination_increment_address": "0x100029344",
"body_bytes": 480
}
],
"sdk_and_official_samples": [
{
"path": "/Library/Developer/SDKs/FxPlug.sdk/Library/Frameworks/FxPlug.framework/Headers/FxTypes.h",
"lines": [
519,
533
],
"observation": "FxImageOrigin describes coordinate-axis handedness/direction, Motion bottom-left and FCP top-left. This documentation does not establish IOSurface physical row order."
},
{
"path": "/Library/Developer/SDKs/FxPlug.sdk/Library/Frameworks/FxPlug.framework/Headers/FxImageTile.h",
"lines": [
19,
54
],
"observation": "ioSurface carries image data; imageOrigin is documented as tile origin. No physical row-reversal rule is stated."
},
{
"path": "/Library/Developer/Xcode/Templates/FxPlug/FxPlug 4.xctemplate/Plugin/PlugIn.m",
"lines": [
248,
266
],
"observation": "Apple FxPlug4 template wraps Metal input/output textures and uses fixed UV vertices, without an imageOrigin branch."
},
{
"path": "/Volumes/DayuMedia 4TB/FCParticular/Examples/FxBrightnessAnalysis/FxBrightnessAnalysis/PlugIn/FxBrightnessAnalysis.m",
"lines": [
688,
699
],
"observation": "Apple example directly creates CIImage from frame.ioSurface without an origin flip. Its area-average analysis is orientation-invariant, so the example alone cannot establish anatomical direction."
}
],
"conclusions": [
"The original CI-to-IOSurface direct and bitmap fallback paths contain no additional origin-dependent flip.",
"Applying FxImageOrigin-based input/output flips is not supported by these original CI paths.",
"Native host physical storage was not captured. Static facts and controlled IOSurface tests must remain distinct from native Motion/FCP observation."
],
"limitations": [
"Ghidra pseudocode is recovered non-source, not runtime behavior.",
"This focused check does not assert equivalence of the separate original Metal fragment-shader UV pipeline."
],
"native_dossiers": [
{
"evidence_id": "ev_88a71ec62fade296495f1e3f5428cdb15ad4cda43866e09fb040fa3a4bdb0440",
"subject": {
"name": "MSE18V2-arm64",
"digest": {
"sha256": "f01e8c0b7e2676b2961950b0e48efdd2589af218e4b36de7d39f5d1c76852bfb"
},
"format": "mach-o",
"architecture": "arm64",
"local_path": "/private/tmp/paintfcp-rea.b3j9Te/MSE18V2-arm64"
},
"provider": {
"id": "ghidra",
"name": "Ghidra",
"version": "12.1.4"
},
"analysis_profile": {
"provider": {
"id": "ghidra",
"name": "Ghidra",
"version": "12.1.4"
},
"parameters": {
"target_kind": "executable",
"target_format": "mach-o",
"architecture": "arm64",
"available_architectures": [
"arm64"
],
"import_mode": "ephemeral-source-immutable",
"annotation_policy": "atomic-function-entry-metadata-v1",
"load_image_observations": "source-mappings-entry-context-v2",
"function_body_evidence": "complete-inclusive-ranges-v1",
"function_references": "complete-body-and-entry-reference-manager-v2",
"string_inventory_evidence": "defined-data-coverage-v1",
"location_resolution": "explicit-address-exact-entry-symbol-first-v3",
"instruction_flow_evidence": "decoded-return-pcode-v1",
"function_boundary_observations": "ghidra-terminal-call-limitations-v1",
"no_return_repair": "returning-imports-decoded-return-v2",
"process_launch": "inspected-jvm-launch-support-v1",
"jump_table_evidence": "typed-case-default-blocks-v1",
"decompiler_jump_loads": true,
"loader": "auto-from-header",
"language_id": "auto-from-header",
"compiler_spec_id": "auto-default",
"analyzer_preset": "ghidra-default"
},
"digest": "20565088524a2d0359b9b96f46ac48e679d774c7b0092c56abc06de8fdbec11c"
},
"predicate_type": "rea.analysis",
"operation": "analyze_function",
"parameters": {
"procedure": "0x10002911c"
},
"normalized_result": {
"procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
},
"signature": "undefined FUN_10002911c()",
"locals": [
{
"description": "undefined8 local_10 @ Stack[-0x10]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_20 @ Stack[-0x20]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_30 @ Stack[-0x30]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_40 @ Stack[-0x40]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_50 @ Stack[-0x50]:8",
"provenance": "ghidra-function-database"
}
]
},
"pseudocode": "\nbool FUN_10002911c(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n ulong param_5,ID param_6,undefined8 param_7,undefined8 param_8)\n\n{\n bool bVar1;\n ulong uVar2;\n \n bVar1 = false;\n if (param_5 != 0) {\n uVar2 = param_5;\n _CGRectIsEmpty();\n bVar1 = (uVar2 & 1) == 0;\n if (bVar1) {\n objc_stub::render_toIOSurface_bounds_colorSpace_\n (param_6,param_1,param_2,param_3,param_4,param_5,param_7,param_8);\n }\n }\n return bVar1;\n}\n\n",
"assembly": [
"0x10002911c: cbz x0, 0x1000291a4",
"0x100029120: stp d11, d10, [sp, #-0x50]!",
"0x100029124: stp d9, d8, [sp, #0x10]",
"0x100029128: stp x22, x21, [sp, #0x20]",
"0x10002912c: stp x20, x19, [sp, #0x30]",
"0x100029130: stp x29, x30, [sp, #0x40]",
"0x100029134: add x29, sp, #0x40",
"0x100029138: mov x19, x3",
"0x10002913c: fmov d8, d3",
"0x100029140: fmov d9, d2",
"0x100029144: fmov d10, d1",
"0x100029148: fmov d11, d0",
"0x10002914c: mov x20, x2",
"0x100029150: mov x22, x1",
"0x100029154: mov x21, x0",
"0x100029158: bl 0x100055500",
"0x10002915c: tbz w0, #0x0, 0x100029168",
"0x100029160: mov w0, #0x0",
"0x100029164: b 0x100029190",
"0x100029168: mov x0, x22",
"0x10002916c: mov x2, x21",
"0x100029170: mov x3, x20",
"0x100029174: fmov d0, d11",
"0x100029178: fmov d1, d10",
"0x10002917c: fmov d2, d9",
"0x100029180: fmov d3, d8",
"0x100029184: mov x4, x19",
"0x100029188: bl 0x10005a920",
"0x10002918c: mov w0, #0x1",
"0x100029190: ldp x29, x30, [sp, #0x40]",
"0x100029194: ldp x20, x19, [sp, #0x30]",
"0x100029198: ldp x22, x21, [sp, #0x20]",
"0x10002919c: ldp d9, d8, [sp, #0x10]",
"0x1000291a0: ldp d11, d10, [sp], #0x50",
"0x1000291a4: ret"
],
"comments": [
{
"address": "0x100029188",
"kind": "inline",
"text": "[param_6 render:param_2 toIOSurface:param_3 bounds:param_4 colorSpace:param_5]"
}
],
"callers": [
{
"address": "0x10001cba4",
"name": "MSSuperSkinSmoothingPlugIn::renderDestinationImage:sourceImages:pluginState:atTime:error:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10001cba4",
"end": "0x100021c17"
}
],
"total_bytes": 20596,
"span_bytes": 20596,
"non_contiguous": false,
"contains_entry": true
}
}
],
"callees": [
{
"address": "0x100055500",
"name": "_CGRectIsEmpty",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xc4",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x100055500",
"end": "0x10005550b"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x10005a920",
"name": "objc_stub::render:toIOSurface:bounds:colorSpace:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10005a920",
"end": "0x10005a933"
}
],
"total_bytes": 20,
"span_bytes": 20,
"non_contiguous": false,
"contains_entry": true
}
}
],
"incoming_references": [
{
"source_address": "0x100021244",
"target_address": "0x10002911c",
"source_procedure": {
"address": "0x10001cba4",
"name": "MSSuperSkinSmoothingPlugIn::renderDestinationImage:sourceImages:pluginState:atTime:error:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10001cba4",
"end": "0x100021c17"
}
],
"total_bytes": 20596,
"span_bytes": 20596,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100021328",
"target_address": "0x10002911c",
"source_procedure": {
"address": "0x10001cba4",
"name": "MSSuperSkinSmoothingPlugIn::renderDestinationImage:sourceImages:pluginState:atTime:error:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10001cba4",
"end": "0x100021c17"
}
],
"total_bytes": 20596,
"span_bytes": 20596,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x1000922f0",
"target_address": "0x10002911c",
"source_procedure": null,
"target_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "DATA",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
}
],
"outgoing_references": [
{
"source_address": "0x10002911c",
"target_address": "0x1000291a4",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x100029120",
"target_address": "stack:0xffffffffffffffb0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029124",
"target_address": "stack:0xffffffffffffffc0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029128",
"target_address": "stack:0xffffffffffffffd0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x10002912c",
"target_address": "stack:0xffffffffffffffe0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029130",
"target_address": "stack:0xfffffffffffffff0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029158",
"target_address": "0x100055500",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x100055500",
"name": "_CGRectIsEmpty",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xc4",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x100055500",
"end": "0x10005550b"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002915c",
"target_address": "0x100029168",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029164",
"target_address": "0x100029190",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029188",
"target_address": "0x10005a920",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10005a920",
"name": "objc_stub::render:toIOSurface:bounds:colorSpace:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10005a920",
"end": "0x10005a933"
}
],
"total_bytes": 20,
"span_bytes": 20,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029190",
"target_address": "stack:0xfffffffffffffff0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "DATA",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029194",
"target_address": "stack:0xffffffffffffffe0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029198",
"target_address": "stack:0xffffffffffffffd0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x10002919c",
"target_address": "stack:0xffffffffffffffc0",
"source_procedure": {
"address": "0x10002911c",
"name": "FUN_10002911c",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10002911c",
"end": "0x1000291a7"
}
],
"total_bytes": 140,
"span_bytes": 140,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
}
],
"referenced_strings": [],
"referenced_names": [
{
"address": "0x100029168",
"value": "LAB_100029168",
"source_address": "0x10002915c"
},
{
"address": "0x100029190",
"value": "LAB_100029190",
"source_address": "0x100029164"
},
{
"address": "0x1000291a4",
"value": "LAB_1000291a4",
"source_address": "0x10002911c"
},
{
"address": "0x100055500",
"value": "_CGRectIsEmpty",
"source_address": "0x100029158"
},
{
"address": "0x10005a920",
"value": "objc_stub::render:toIOSurface:bounds:colorSpace:",
"source_address": "0x100029188"
}
],
"basic_blocks": [
{
"start": "0x10002911c",
"end": "0x100029120",
"successors": [
"0x100029120",
"0x1000291a4"
]
},
{
"start": "0x100029120",
"end": "0x100029160",
"successors": [
"0x100029160",
"0x100029168"
]
},
{
"start": "0x100029160",
"end": "0x100029168",
"successors": [
"0x100029190"
]
},
{
"start": "0x100029168",
"end": "0x100029190",
"successors": [
"0x100029190"
]
},
{
"start": "0x100029190",
"end": "0x1000291a4",
"successors": [
"0x1000291a4"
]
},
{
"start": "0x1000291a4",
"end": "0x1000291a8",
"successors": []
}
],
"native_api": {
"available": true,
"provenance": "ghidra-high-function",
"signature_source": "default",
"calling_convention": "__swiftcall",
"return_type": {
"ordinal": null,
"name": null,
"data_type": "bool",
"size_bytes": 1,
"storage": "w0:1",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type bool."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage"
],
"role": "return"
},
"parameters": [
{
"ordinal": 0,
"name": "param_1",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "d0:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 1,
"name": "param_2",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "d1:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 2,
"name": "param_3",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "d2:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 3,
"name": "param_4",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "d3:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 4,
"name": "param_5",
"data_type": "ulong",
"size_bytes": 8,
"storage": "x0:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type ulong."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 5,
"name": "param_6",
"data_type": "ID",
"size_bytes": 8,
"storage": "x1:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type ID."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 6,
"name": "param_7",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "x2:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 7,
"name": "param_8",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "x3:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
}
],
"jump_tables": [],
"pseudocode": {
"classification": "decompiler-generated-non-source",
"compilable": false
},
"decompiler_artifacts": [
"recovered-signature",
"register-and-stack-variables",
"compiler-generated-control-flow",
"pointer-arithmetic",
"pseudocode"
],
"limitations": [
"Types and calling conventions are Ghidra decompiler observations, not source declarations.",
"Register variables, compiler-generated blocks, and pointer arithmetic remain decompiler artifacts.",
"Pseudocode is neither original source nor guaranteed to compile."
]
},
"native_value_flow": {
"available": true,
"provenance": "ghidra-high-pcode",
"operations": [
{
"id": "0x10002911c#0",
"address": "0x10002911c",
"sequence": 0,
"opcode": "INT_NOTEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x31700",
"constant_hex": null
}
},
{
"id": "0x10002911c#1",
"address": "0x10002911c",
"sequence": 1,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x1000291a4",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x31700",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x10002911c#357",
"address": "0x10002911c",
"sequence": 357,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 1,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x1000001b",
"constant_hex": null
}
},
{
"id": "0x100029158#56",
"address": "0x100029158",
"sequence": 56,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100055500",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029158#170",
"address": "0x100029158",
"sequence": 170,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000023",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "38"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x100029158#358",
"address": "0x100029158",
"sequence": 358,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000023",
"constant_hex": null
}
},
{
"id": "0x10002915c#59",
"address": "0x10002915c",
"sequence": 59,
"opcode": "INT_EQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000012",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x30d00",
"constant_hex": null
}
},
{
"id": "0x10002915c#61",
"address": "0x10002915c",
"sequence": 61,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029168",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x30d00",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x10002915c#312",
"address": "0x10002915c",
"sequence": 312,
"opcode": "INT_AND",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "1"
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000012",
"constant_hex": null
}
},
{
"id": "0x100029188#126",
"address": "0x100029188",
"sequence": 126,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x10005a920",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4008",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5020",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5040",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5060",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4010",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4018",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000291a4#104",
"address": "0x1000291a4",
"sequence": 104,
"opcode": "RETURN",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000291a4#356",
"address": "0x1000291a4",
"sequence": 356,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x1000001b",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x30d00",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x30d00",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x4000",
"constant_hex": null
}
}
],
"def_use": [
{
"definition": "0x10002911c#0",
"use": "0x10002911c#1",
"input_index": 1
},
{
"definition": "0x100029158#358",
"use": "0x100029158#170",
"input_index": 0
},
{
"definition": "0x10002915c#312",
"use": "0x10002915c#59",
"input_index": 0
},
{
"definition": "0x10002915c#59",
"use": "0x10002915c#61",
"input_index": 1
},
{
"definition": "0x100029158#170",
"use": "0x10002915c#312",
"input_index": 0
},
{
"definition": "0x1000291a4#356",
"use": "0x1000291a4#104",
"input_index": 1
},
{
"definition": "0x10002911c#357",
"use": "0x1000291a4#356",
"input_index": 0
},
{
"definition": "0x10002915c#59",
"use": "0x1000291a4#356",
"input_index": 1
},
{
"definition": "0x10002915c#59",
"use": "0x1000291a4#356",
"input_index": 2
}
],
"effects": [
{
"operation": "0x10002911c#1",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x100029158#56",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x10002915c#61",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x100029188#126",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
}
],
"parameters": [
{
"ordinal": 0,
"name": "param_1",
"data_type": "/undefined8"
},
{
"ordinal": 1,
"name": "param_2",
"data_type": "/undefined8"
},
{
"ordinal": 2,
"name": "param_3",
"data_type": "/undefined8"
},
{
"ordinal": 3,
"name": "param_4",
"data_type": "/undefined8"
},
{
"ordinal": 4,
"name": "param_5",
"data_type": "/ulong"
},
{
"ordinal": 5,
"name": "param_6",
"data_type": "/_objc2_/ID"
},
{
"ordinal": 6,
"name": "param_7",
"data_type": "/undefined8"
},
{
"ordinal": 7,
"name": "param_8",
"data_type": "/undefined8"
}
],
"parameter_uses": [
{
"ordinal": 4,
"use": "0x10002911c#0",
"input_index": 0
},
{
"ordinal": 4,
"use": "0x100029158#358",
"input_index": 0
},
{
"ordinal": 5,
"use": "0x100029188#126",
"input_index": 1
},
{
"ordinal": 0,
"use": "0x100029188#126",
"input_index": 2
},
{
"ordinal": 1,
"use": "0x100029188#126",
"input_index": 3
},
{
"ordinal": 2,
"use": "0x100029188#126",
"input_index": 4
},
{
"ordinal": 3,
"use": "0x100029188#126",
"input_index": 5
},
{
"ordinal": 4,
"use": "0x100029188#126",
"input_index": 6
},
{
"ordinal": 6,
"use": "0x100029188#126",
"input_index": 7
},
{
"ordinal": 7,
"use": "0x100029188#126",
"input_index": 8
}
],
"truncated": false,
"omitted_operations_lower_bound": 0,
"known_omitted_inputs": 0,
"known_omitted_edges": 0,
"limitations": [
"High p-code is decompiler-derived, not original source or runtime behavior. is_dead preserves the Java AST flag; decoded block members can retain that flag, so block_membership separately reports actual syntax-tree membership.",
"Def-use links do not cross function boundaries and may omit memory aliasing, call side effects, or unresolved indirect flow.",
"Memory read/write effects include stack and temporary memory operations; they do not identify persistent state or business meaning.",
"Operation, input, and def-use limits can truncate large functions; inspect truncation, omitted lower bounds, and known omitted counts before drawing conclusions.",
"Known omitted-edge counts cover links omitted from retained operations; omitted operations may contain additional uncounted links."
]
},
"limitations": [
"Unresolved computed or indirect flows without target addresses are not represented as reference edges.",
"Thunk and external classifications are Ghidra FunctionManager observations; they do not resolve targetless calls.",
"Pseudocode and assembly are Ghidra-specific representations, not original source or Hopper-equivalent text.",
"Synthetic Ghidra entry-point references without actionable memory sources are omitted."
]
},
"confidence": "observed",
"authority": "shipped-artifact",
"environment": null,
"limitations": [
"The session serves operations only after Ghidra reports default auto-analysis complete; incomplete analysis does not expose partial results.",
"The imported Program and temporary project are ephemeral and deleted on close. Annotation operations edit session database metadata; original executable bytes are never written.",
"Cancelling an active Ghidra request terminates its ephemeral database and discards session annotations. The selected target remains open; the next provider query imports the original artifact again.",
"Default-space addresses use lowercase 0x-prefixed hexadecimal; other address spaces use <percent-encoded-space>:0x<hex>.",
"References cover the complete Ghidra function-body AddressSet and exact entry. Dossier incoming edges omit sources owned by that function; procedure_references also retains those internal edges.",
"The dossier combines Ghidra FunctionManager, Listing, ReferenceManager, BasicBlockModel, and decompiler observations; provider-specific pseudocode and assembly are not cross-provider text invariants.",
"Resolved reference metadata identifies computed, indirect, external, call, jump, and data edges; unresolved targetless flows remain unknown, and function classifications distinguish thunks and externals.",
"Synthetic Ghidra entry-point references without actionable memory sources are omitted.",
"The Java bridge serializes one function request per Program and lets each decompilation run until it completes or the caller cancels.",
"macOS sessions require a matching executable Ghidra native decompiler; REA checks for it but does not build native components or change Gatekeeper quarantine state."
],
"locations": [],
"evidence_links": []
},
{
"evidence_id": "ev_110d76f7958decb0c56b7daafe292d60a8bc56cd035b40a997f61395cb91ebfe",
"subject": {
"name": "MSE18V2-arm64",
"digest": {
"sha256": "f01e8c0b7e2676b2961950b0e48efdd2589af218e4b36de7d39f5d1c76852bfb"
},
"format": "mach-o",
"architecture": "arm64",
"local_path": "/private/tmp/paintfcp-rea.b3j9Te/MSE18V2-arm64"
},
"provider": {
"id": "ghidra",
"name": "Ghidra",
"version": "12.1.4"
},
"analysis_profile": {
"provider": {
"id": "ghidra",
"name": "Ghidra",
"version": "12.1.4"
},
"parameters": {
"target_kind": "executable",
"target_format": "mach-o",
"architecture": "arm64",
"available_architectures": [
"arm64"
],
"import_mode": "ephemeral-source-immutable",
"annotation_policy": "atomic-function-entry-metadata-v1",
"load_image_observations": "source-mappings-entry-context-v2",
"function_body_evidence": "complete-inclusive-ranges-v1",
"function_references": "complete-body-and-entry-reference-manager-v2",
"string_inventory_evidence": "defined-data-coverage-v1",
"location_resolution": "explicit-address-exact-entry-symbol-first-v3",
"instruction_flow_evidence": "decoded-return-pcode-v1",
"function_boundary_observations": "ghidra-terminal-call-limitations-v1",
"no_return_repair": "returning-imports-decoded-return-v2",
"process_launch": "inspected-jvm-launch-support-v1",
"jump_table_evidence": "typed-case-default-blocks-v1",
"decompiler_jump_loads": true,
"loader": "auto-from-header",
"language_id": "auto-from-header",
"compiler_spec_id": "auto-default",
"analyzer_preset": "ghidra-default"
},
"digest": "20565088524a2d0359b9b96f46ac48e679d774c7b0092c56abc06de8fdbec11c"
},
"predicate_type": "rea.analysis",
"operation": "analyze_function",
"parameters": {
"procedure": "0x1000291b4"
},
"normalized_result": {
"procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
},
"signature": "undefined FUN_1000291b4()",
"locals": [
{
"description": "undefined8 local_10 @ Stack[-0x10]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_20 @ Stack[-0x20]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_30 @ Stack[-0x30]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_40 @ Stack[-0x40]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_50 @ Stack[-0x50]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_60 @ Stack[-0x60]:8",
"provenance": "ghidra-function-database"
},
{
"description": "undefined8 local_70 @ Stack[-0x70]:8",
"provenance": "ghidra-function-database"
}
]
},
"pseudocode": "\nbool FUN_1000291b4(double param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n ulong param_5,ID param_6,void *param_7,undefined8 param_8)\n\n{\n uint uVar1;\n bool bVar2;\n bool bVar3;\n int iVar4;\n ulong uVar5;\n void *pvVar6;\n void *pvVar7;\n void *pvVar8;\n void *pvVar9;\n uint *puVar10;\n long lVar11;\n void *pvVar12;\n void *pvVar13;\n double dVar14;\n double dVar15;\n \n if ((param_5 != 0) && (uVar5 = param_5, _CGRectIsEmpty(), (uVar5 & 1) == 0)) {\n pvVar13 = param_7;\n _IOSurfaceGetPixelFormat();\n iVar4 = (int)pvVar13;\n if (iVar4 == 0x42475241) {\n lVar11 = 4;\n puVar10 = (uint *)PTR__kCIFormatBGRA8_100078160;\n }\n else if (iVar4 == 0x52476641) {\n lVar11 = 0x10;\n puVar10 = (uint *)PTR__kCIFormatRGBAf_100078178;\n }\n else {\n if (iVar4 != 0x52476841) {\n return false;\n }\n lVar11 = 8;\n puVar10 = (uint *)PTR__kCIFormatRGBAh_100078180;\n }\n uVar1 = *puVar10;\n dVar14 = param_1;\n _CGRectGetWidth(param_1,param_2,param_3,param_4);\n dVar15 = param_1;\n _CGRectGetHeight(param_1,param_2,param_3,param_4);\n pvVar13 = (void *)(long)dVar15;\n if ((long)dVar14 != 0 && pvVar13 != (void *)0x0) {\n pvVar12 = (void *)((long)dVar14 * lVar11);\n pvVar6 = _calloc((long)pvVar12 * (long)pvVar13,1);\n if (pvVar6 != (void *)0x0) {\n objc_stub::render_toBitmap_rowBytes_bounds_format_colorSpace_\n (param_6,param_1,param_2,param_3,param_4,param_5,pvVar6,pvVar12,(ulong)uVar1,\n param_8);\n _IOSurfaceLock(param_7,0,0);\n pvVar7 = param_7;\n _IOSurfaceGetBaseAddress();\n pvVar8 = param_7;\n _IOSurfaceGetBytesPerRow();\n pvVar9 = param_7;\n _IOSurfaceGetHeight();\n bVar2 = pvVar13 <= pvVar9;\n bVar3 = pvVar7 != (void *)0x0;\n pvVar9 = pvVar6;\n if ((pvVar12 <= pvVar8 && bVar2) && bVar3) {\n do {\n _memcpy(pvVar7,pvVar9,(size_t)pvVar12);\n pvVar7 = (void *)((long)pvVar7 + (long)pvVar8);\n pvVar13 = (void *)((long)pvVar13 + -1);\n pvVar9 = (void *)((long)pvVar9 + (long)pvVar12);\n } while (pvVar13 != (void *)0x0);\n }\n _IOSurfaceUnlock(param_7,0,0);\n _free(pvVar6);\n return (pvVar12 <= pvVar8 && bVar2) && bVar3;\n }\n }\n }\n return false;\n}\n\n",
"assembly": [
"0x1000291b4: stp d11, d10, [sp, #-0x70]!",
"0x1000291b8: stp d9, d8, [sp, #0x10]",
"0x1000291bc: stp x26, x25, [sp, #0x20]",
"0x1000291c0: stp x24, x23, [sp, #0x30]",
"0x1000291c4: stp x22, x21, [sp, #0x40]",
"0x1000291c8: stp x20, x19, [sp, #0x50]",
"0x1000291cc: stp x29, x30, [sp, #0x60]",
"0x1000291d0: add x29, sp, #0x60",
"0x1000291d4: cbz x0, 0x100029384",
"0x1000291d8: mov x20, x3",
"0x1000291dc: fmov d8, d3",
"0x1000291e0: fmov d9, d2",
"0x1000291e4: fmov d10, d1",
"0x1000291e8: fmov d11, d0",
"0x1000291ec: mov x19, x2",
"0x1000291f0: mov x23, x1",
"0x1000291f4: mov x22, x0",
"0x1000291f8: bl 0x100055500",
"0x1000291fc: tbnz w0, #0x0, 0x100029384",
"0x100029200: mov x0, x19",
"0x100029204: bl 0x1000555b4",
"0x100029208: mov w8, #0x5241",
"0x10002920c: movk w8, #0x4247, LSL #16",
"0x100029210: cmp w0, w8",
"0x100029214: b.eq 0x100029258",
"0x100029218: mov w8, #0x6641",
"0x10002921c: movk w8, #0x5247, LSL #16",
"0x100029220: cmp w0, w8",
"0x100029224: b.eq 0x100029248",
"0x100029228: mov w8, #0x6841",
"0x10002922c: movk w8, #0x5247, LSL #16",
"0x100029230: cmp w0, w8",
"0x100029234: b.ne 0x100029384",
"0x100029238: adrp x8, 0x100078000",
"0x10002923c: ldr x8, [x8, #0x180]",
"0x100029240: mov w21, #0x8",
"0x100029244: b 0x100029264",
"0x100029248: adrp x8, 0x100078000",
"0x10002924c: ldr x8, [x8, #0x178]",
"0x100029250: mov w21, #0x10",
"0x100029254: b 0x100029264",
"0x100029258: adrp x8, 0x100078000",
"0x10002925c: ldr x8, [x8, #0x160]",
"0x100029260: mov w21, #0x4",
"0x100029264: ldr w25, [x8]",
"0x100029268: fmov d0, d11",
"0x10002926c: fmov d1, d10",
"0x100029270: fmov d2, d9",
"0x100029274: fmov d3, d8",
"0x100029278: bl 0x1000554dc",
"0x10002927c: fcvtas x24, d0",
"0x100029280: fmov d0, d11",
"0x100029284: fmov d1, d10",
"0x100029288: fmov d2, d9",
"0x10002928c: fmov d3, d8",
"0x100029290: bl 0x100055488",
"0x100029294: fcvtas x26, d0",
"0x100029298: cmp x24, #0x0",
"0x10002929c: ccmp x26, #0x0, #0x4, ne",
"0x1000292a0: b.eq 0x100029384",
"0x1000292a4: mul x24, x24, x21",
"0x1000292a8: mul x0, x24, x26",
"0x1000292ac: mov w1, #0x1",
"0x1000292b0: bl 0x1000557dc",
"0x1000292b4: cbz x0, 0x100029384",
"0x1000292b8: mov x21, x0",
"0x1000292bc: mov x0, x23",
"0x1000292c0: mov x2, x22",
"0x1000292c4: mov x3, x21",
"0x1000292c8: mov x4, x24",
"0x1000292cc: fmov d0, d11",
"0x1000292d0: fmov d1, d10",
"0x1000292d4: fmov d2, d9",
"0x1000292d8: fmov d3, d8",
"0x1000292dc: mov x5, x25",
"0x1000292e0: mov x6, x20",
"0x1000292e4: bl 0x10005a900",
"0x1000292e8: mov x0, x19",
"0x1000292ec: mov w1, #0x0",
"0x1000292f0: mov x2, #0x0",
"0x1000292f4: bl 0x1000555cc",
"0x1000292f8: mov x0, x19",
"0x1000292fc: bl 0x100055590",
"0x100029300: mov x22, x0",
"0x100029304: mov x0, x19",
"0x100029308: bl 0x10005559c",
"0x10002930c: mov x23, x0",
"0x100029310: mov x0, x19",
"0x100029314: bl 0x1000555a8",
"0x100029318: cmp x23, x24",
"0x10002931c: ccmp x0, x26, #0x0, cs",
"0x100029320: ccmp x22, #0x0, #0x4, cs",
"0x100029324: cset w20, ne",
"0x100029328: b.eq 0x100029350",
"0x10002932c: mov x25, x21",
"0x100029330: mov x0, x22",
"0x100029334: mov x1, x25",
"0x100029338: mov x2, x24",
"0x10002933c: bl 0x1000558d8",
"0x100029340: add x25, x25, x24",
"0x100029344: add x22, x22, x23",
"0x100029348: subs x26, x26, #0x1",
"0x10002934c: b.ne 0x100029330",
"0x100029350: mov x0, x19",
"0x100029354: mov w1, #0x0",
"0x100029358: mov x2, #0x0",
"0x10002935c: bl 0x1000555d8",
"0x100029360: mov x0, x21",
"0x100029364: bl 0x10005586c",
"0x100029368: b 0x100029388",
"0x100029384: mov w20, #0x0",
"0x100029388: mov x0, x20",
"0x10002938c: ldp x29, x30, [sp, #0x60]",
"0x100029390: ldp x20, x19, [sp, #0x50]",
"0x100029394: ldp x22, x21, [sp, #0x40]",
"0x100029398: ldp x24, x23, [sp, #0x30]",
"0x10002939c: ldp x26, x25, [sp, #0x20]",
"0x1000293a0: ldp d9, d8, [sp, #0x10]",
"0x1000293a4: ldp d11, d10, [sp], #0x70",
"0x1000293a8: ret"
],
"comments": [
{
"address": "0x1000292e4",
"kind": "inline",
"text": "[param_6 render:param_2 toBitmap:param_3 rowBytes:param_4 bounds:param_5 format:0xcc colorSpace:0x4]"
}
],
"callers": [
{
"address": "0x10001cba4",
"name": "MSSuperSkinSmoothingPlugIn::renderDestinationImage:sourceImages:pluginState:atTime:error:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10001cba4",
"end": "0x100021c17"
}
],
"total_bytes": 20596,
"span_bytes": 20596,
"non_contiguous": false,
"contains_entry": true
}
}
],
"callees": [
{
"address": "0x100055488",
"name": "_CGRectGetHeight",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xba",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x100055488",
"end": "0x100055493"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x1000554dc",
"name": "_CGRectGetWidth",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xc1",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000554dc",
"end": "0x1000554e7"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x100055500",
"name": "_CGRectIsEmpty",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xc4",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x100055500",
"end": "0x10005550b"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x100055590",
"name": "_IOSurfaceGetBaseAddress",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd0",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x100055590",
"end": "0x10005559b"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x10005559c",
"name": "_IOSurfaceGetBytesPerRow",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd1",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10005559c",
"end": "0x1000555a7"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x1000555a8",
"name": "_IOSurfaceGetHeight",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd2",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000555a8",
"end": "0x1000555b3"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x1000555b4",
"name": "_IOSurfaceGetPixelFormat",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd3",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000555b4",
"end": "0x1000555bf"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x1000555cc",
"name": "_IOSurfaceLock",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd5",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000555cc",
"end": "0x1000555d7"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x1000555d8",
"name": "_IOSurfaceUnlock",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd6",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000555d8",
"end": "0x1000555e3"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x1000557dc",
"name": "_calloc",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0x101",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000557dc",
"end": "0x1000557e7"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x10005586c",
"name": "_free",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0x10d",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10005586c",
"end": "0x100055877"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x1000558d8",
"name": "_memcpy",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0x116",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000558d8",
"end": "0x1000558e3"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
{
"address": "0x10005a900",
"name": "objc_stub::render:toBitmap:rowBytes:bounds:format:colorSpace:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10005a900",
"end": "0x10005a913"
}
],
"total_bytes": 20,
"span_bytes": 20,
"non_contiguous": false,
"contains_entry": true
}
}
],
"incoming_references": [
{
"source_address": "0x1000212dc",
"target_address": "0x1000291b4",
"source_procedure": {
"address": "0x10001cba4",
"name": "MSSuperSkinSmoothingPlugIn::renderDestinationImage:sourceImages:pluginState:atTime:error:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10001cba4",
"end": "0x100021c17"
}
],
"total_bytes": 20596,
"span_bytes": 20596,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002135c",
"target_address": "0x1000291b4",
"source_procedure": {
"address": "0x10001cba4",
"name": "MSSuperSkinSmoothingPlugIn::renderDestinationImage:sourceImages:pluginState:atTime:error:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10001cba4",
"end": "0x100021c17"
}
],
"total_bytes": 20596,
"span_bytes": 20596,
"non_contiguous": false,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x1000922f2",
"target_address": "0x1000291b4",
"source_procedure": null,
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "DATA",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
}
],
"outgoing_references": [
{
"source_address": "0x1000291b4",
"target_address": "stack:0xffffffffffffff90",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x1000291b8",
"target_address": "stack:0xffffffffffffffa0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x1000291bc",
"target_address": "stack:0xffffffffffffffb0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x1000291c0",
"target_address": "stack:0xffffffffffffffc0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x1000291c4",
"target_address": "stack:0xffffffffffffffd0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x1000291c8",
"target_address": "stack:0xffffffffffffffe0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x1000291cc",
"target_address": "stack:0xfffffffffffffff0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "WRITE",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": true,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x1000291d4",
"target_address": "0x100029384",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x1000291f8",
"target_address": "0x100055500",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x100055500",
"name": "_CGRectIsEmpty",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xc4",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x100055500",
"end": "0x10005550b"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x1000291fc",
"target_address": "0x100029384",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029204",
"target_address": "0x1000555b4",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000555b4",
"name": "_IOSurfaceGetPixelFormat",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd3",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000555b4",
"end": "0x1000555bf"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029214",
"target_address": "0x100029258",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029224",
"target_address": "0x100029248",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029234",
"target_address": "0x100029384",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002923c",
"target_address": "0x100078180",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x100029244",
"target_address": "0x100029264",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002924c",
"target_address": "0x100078178",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x100029254",
"target_address": "0x100029264",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002925c",
"target_address": "0x100078160",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x100029264",
"target_address": "0x1000a9400",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": false,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x100029264",
"target_address": "0x1000a9700",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": false,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x100029264",
"target_address": "0x1000a9800",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x100029278",
"target_address": "0x1000554dc",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000554dc",
"name": "_CGRectGetWidth",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xc1",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000554dc",
"end": "0x1000554e7"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029290",
"target_address": "0x100055488",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x100055488",
"name": "_CGRectGetHeight",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xba",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x100055488",
"end": "0x100055493"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x1000292a0",
"target_address": "0x100029384",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x1000292b0",
"target_address": "0x1000557dc",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000557dc",
"name": "_calloc",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0x101",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000557dc",
"end": "0x1000557e7"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x1000292b4",
"target_address": "0x100029384",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 1,
"external": false
}
},
{
"source_address": "0x1000292e4",
"target_address": "0x10005a900",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10005a900",
"name": "objc_stub::render:toBitmap:rowBytes:bounds:format:colorSpace:",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10005a900",
"end": "0x10005a913"
}
],
"total_bytes": 20,
"span_bytes": 20,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x1000292f4",
"target_address": "0x1000555cc",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000555cc",
"name": "_IOSurfaceLock",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd5",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000555cc",
"end": "0x1000555d7"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x1000292fc",
"target_address": "0x100055590",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x100055590",
"name": "_IOSurfaceGetBaseAddress",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd0",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x100055590",
"end": "0x10005559b"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029308",
"target_address": "0x10005559c",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10005559c",
"name": "_IOSurfaceGetBytesPerRow",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd1",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10005559c",
"end": "0x1000555a7"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029314",
"target_address": "0x1000555a8",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000555a8",
"name": "_IOSurfaceGetHeight",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd2",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000555a8",
"end": "0x1000555b3"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029328",
"target_address": "0x100029350",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002933c",
"target_address": "0x1000558d8",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000558d8",
"name": "_memcpy",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0x116",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000558d8",
"end": "0x1000558e3"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002934c",
"target_address": "0x100029330",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "CONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": true,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002935c",
"target_address": "0x1000555d8",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000555d8",
"name": "_IOSurfaceUnlock",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0xd6",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000555d8",
"end": "0x1000555e3"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029364",
"target_address": "0x10005586c",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x10005586c",
"name": "_free",
"classification": {
"external": false,
"thunk": true,
"thunk_target": "EXTERNAL:0x10d",
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x10005586c",
"end": "0x100055877"
}
],
"total_bytes": 12,
"span_bytes": 12,
"non_contiguous": false,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_CALL",
"flow": true,
"call": true,
"jump": false,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029368",
"target_address": "0x100029388",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "UNCONDITIONAL_JUMP",
"flow": true,
"call": false,
"jump": true,
"data": false,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x10002938c",
"target_address": "stack:0xfffffffffffffff0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "DATA",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": false,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 0,
"external": false
}
},
{
"source_address": "0x100029390",
"target_address": "stack:0xffffffffffffffe0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029394",
"target_address": "stack:0xffffffffffffffd0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x100029398",
"target_address": "stack:0xffffffffffffffc0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x10002939c",
"target_address": "stack:0xffffffffffffffb0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
},
{
"source_address": "0x1000293a0",
"target_address": "stack:0xffffffffffffffa0",
"source_procedure": {
"address": "0x1000291b4",
"name": "FUN_1000291b4",
"classification": {
"external": false,
"thunk": false,
"thunk_target": null,
"provenance": "ghidra-function-manager"
},
"body": {
"available": true,
"provenance": "ghidra-function-body-address-set",
"ranges": [
{
"start": "0x1000291b4",
"end": "0x10002936b"
},
{
"start": "0x100029384",
"end": "0x1000293ab"
}
],
"total_bytes": 480,
"span_bytes": 504,
"non_contiguous": true,
"contains_entry": true
}
},
"target_procedure": null,
"kind": {
"available": true,
"provenance": "ghidra-reference-manager",
"type": "READ",
"flow": false,
"call": false,
"jump": false,
"data": true,
"read": true,
"write": false,
"indirect": false,
"computed": false,
"conditional": false,
"terminal": false,
"primary": true,
"operand_index": 2,
"external": false
}
}
],
"referenced_strings": [],
"referenced_names": [
{
"address": "0x100029248",
"value": "LAB_100029248",
"source_address": "0x100029224"
},
{
"address": "0x100029258",
"value": "LAB_100029258",
"source_address": "0x100029214"
},
{
"address": "0x100029264",
"value": "LAB_100029264",
"source_address": "0x100029244"
},
{
"address": "0x100029264",
"value": "LAB_100029264",
"source_address": "0x100029254"
},
{
"address": "0x100029330",
"value": "LAB_100029330",
"source_address": "0x10002934c"
},
{
"address": "0x100029350",
"value": "LAB_100029350",
"source_address": "0x100029328"
},
{
"address": "0x100029384",
"value": "LAB_100029384",
"source_address": "0x1000291d4"
},
{
"address": "0x100029384",
"value": "LAB_100029384",
"source_address": "0x1000291fc"
},
{
"address": "0x100029384",
"value": "LAB_100029384",
"source_address": "0x100029234"
},
{
"address": "0x100029384",
"value": "LAB_100029384",
"source_address": "0x1000292a0"
},
{
"address": "0x100029384",
"value": "LAB_100029384",
"source_address": "0x1000292b4"
},
{
"address": "0x100029388",
"value": "LAB_100029388",
"source_address": "0x100029368"
},
{
"address": "0x100055488",
"value": "_CGRectGetHeight",
"source_address": "0x100029290"
},
{
"address": "0x1000554dc",
"value": "_CGRectGetWidth",
"source_address": "0x100029278"
},
{
"address": "0x100055500",
"value": "_CGRectIsEmpty",
"source_address": "0x1000291f8"
},
{
"address": "0x100055590",
"value": "_IOSurfaceGetBaseAddress",
"source_address": "0x1000292fc"
},
{
"address": "0x10005559c",
"value": "_IOSurfaceGetBytesPerRow",
"source_address": "0x100029308"
},
{
"address": "0x1000555a8",
"value": "_IOSurfaceGetHeight",
"source_address": "0x100029314"
},
{
"address": "0x1000555b4",
"value": "_IOSurfaceGetPixelFormat",
"source_address": "0x100029204"
},
{
"address": "0x1000555cc",
"value": "_IOSurfaceLock",
"source_address": "0x1000292f4"
},
{
"address": "0x1000555d8",
"value": "_IOSurfaceUnlock",
"source_address": "0x10002935c"
},
{
"address": "0x1000557dc",
"value": "_calloc",
"source_address": "0x1000292b0"
},
{
"address": "0x10005586c",
"value": "_free",
"source_address": "0x100029364"
},
{
"address": "0x1000558d8",
"value": "_memcpy",
"source_address": "0x10002933c"
},
{
"address": "0x10005a900",
"value": "objc_stub::render:toBitmap:rowBytes:bounds:format:colorSpace:",
"source_address": "0x1000292e4"
},
{
"address": "0x100078160",
"value": "PTR__kCIFormatBGRA8_100078160",
"source_address": "0x10002925c"
},
{
"address": "0x100078178",
"value": "PTR__kCIFormatRGBAf_100078178",
"source_address": "0x10002924c"
},
{
"address": "0x100078180",
"value": "PTR__kCIFormatRGBAh_100078180",
"source_address": "0x10002923c"
},
{
"address": "0x1000a9400",
"value": "_kCIFormatBGRA8",
"source_address": "0x100029264"
},
{
"address": "0x1000a9700",
"value": "_kCIFormatRGBAf",
"source_address": "0x100029264"
},
{
"address": "0x1000a9800",
"value": "_kCIFormatRGBAh",
"source_address": "0x100029264"
}
],
"basic_blocks": [
{
"start": "0x1000291b4",
"end": "0x1000291d8",
"successors": [
"0x1000291d8",
"0x100029384"
]
},
{
"start": "0x1000291d8",
"end": "0x100029200",
"successors": [
"0x100029200",
"0x100029384"
]
},
{
"start": "0x100029200",
"end": "0x100029218",
"successors": [
"0x100029218",
"0x100029258"
]
},
{
"start": "0x100029218",
"end": "0x100029228",
"successors": [
"0x100029228",
"0x100029248"
]
},
{
"start": "0x100029228",
"end": "0x100029238",
"successors": [
"0x100029238",
"0x100029384"
]
},
{
"start": "0x100029238",
"end": "0x100029248",
"successors": [
"0x100029264"
]
},
{
"start": "0x100029248",
"end": "0x100029258",
"successors": [
"0x100029264"
]
},
{
"start": "0x100029258",
"end": "0x100029264",
"successors": [
"0x100029264"
]
},
{
"start": "0x100029264",
"end": "0x1000292a4",
"successors": [
"0x1000292a4",
"0x100029384"
]
},
{
"start": "0x1000292a4",
"end": "0x1000292b8",
"successors": [
"0x1000292b8",
"0x100029384"
]
},
{
"start": "0x1000292b8",
"end": "0x10002932c",
"successors": [
"0x10002932c",
"0x100029350"
]
},
{
"start": "0x10002932c",
"end": "0x100029330",
"successors": [
"0x100029330"
]
},
{
"start": "0x100029330",
"end": "0x100029350",
"successors": [
"0x100029330",
"0x100029350"
]
},
{
"start": "0x100029350",
"end": "0x10002936c",
"successors": [
"0x100029388"
]
},
{
"start": "0x100029384",
"end": "0x100029388",
"successors": [
"0x100029388"
]
},
{
"start": "0x100029388",
"end": "0x1000293ac",
"successors": []
}
],
"native_api": {
"available": true,
"provenance": "ghidra-high-function",
"signature_source": "default",
"calling_convention": "__swiftcall",
"return_type": {
"ordinal": null,
"name": null,
"data_type": "bool",
"size_bytes": 1,
"storage": "w0:1",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type bool."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage"
],
"role": "return"
},
"parameters": [
{
"ordinal": 0,
"name": "param_1",
"data_type": "double",
"size_bytes": 8,
"storage": "d0:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type double."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 1,
"name": "param_2",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "d1:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 2,
"name": "param_3",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "d2:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 3,
"name": "param_4",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "d3:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 4,
"name": "param_5",
"data_type": "ulong",
"size_bytes": 8,
"storage": "x0:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type ulong."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 5,
"name": "param_6",
"data_type": "ID",
"size_bytes": 8,
"storage": "x1:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type ID."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 6,
"name": "param_7",
"data_type": "void *",
"size_bytes": 8,
"storage": "x2:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type void *."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
},
{
"ordinal": 7,
"name": "param_8",
"data_type": "undefined8",
"size_bytes": 8,
"storage": "x3:8",
"confidence": "low",
"evidence": [
{
"kind": "signature-source",
"source": "ghidra-function-manager",
"detail": "Function signature source is default."
},
{
"kind": "decompiler-type",
"source": "ghidra-high-function",
"detail": "HighFunction recovered data type undefined8."
}
],
"decompiler_artifacts": [
"recovered-signature",
"register-or-stack-storage",
"compiler-generated-variable"
],
"role": "parameter"
}
],
"jump_tables": [],
"pseudocode": {
"classification": "decompiler-generated-non-source",
"compilable": false
},
"decompiler_artifacts": [
"recovered-signature",
"register-and-stack-variables",
"compiler-generated-control-flow",
"pointer-arithmetic",
"pseudocode"
],
"limitations": [
"Types and calling conventions are Ghidra decompiler observations, not source declarations.",
"Register variables, compiler-generated blocks, and pointer arithmetic remain decompiler artifacts.",
"Pseudocode is neither original source nor guaranteed to compile."
]
},
"native_value_flow": {
"available": true,
"provenance": "ghidra-high-pcode",
"operations": [
{
"id": "0x1000291d4#45",
"address": "0x1000291d4",
"sequence": 45,
"opcode": "INT_NOTEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x31700",
"constant_hex": null
}
},
{
"id": "0x1000291d4#46",
"address": "0x1000291d4",
"sequence": 46,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029384",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x31700",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000291f8#68",
"address": "0x1000291f8",
"sequence": 68,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100055500",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000291f8#701",
"address": "0x1000291f8",
"sequence": 701,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000c0",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "44"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x1000291f8#1379",
"address": "0x1000291f8",
"sequence": 1379,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "44"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x1000291f8#1397",
"address": "0x1000291f8",
"sequence": 1397,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "44"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x1000291f8#1415",
"address": "0x1000291f8",
"sequence": 1415,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "44"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x1000291f8#1711",
"address": "0x1000291f8",
"sequence": 1711,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000c0",
"constant_hex": null
}
},
{
"id": "0x1000291fc#71",
"address": "0x1000291fc",
"sequence": 71,
"opcode": "INT_EQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000075",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x30d00",
"constant_hex": null
}
},
{
"id": "0x1000291fc#73",
"address": "0x1000291fc",
"sequence": 73,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029384",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x30d00",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000291fc#1358",
"address": "0x1000291fc",
"sequence": 1358,
"opcode": "INT_AND",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "1"
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000075",
"constant_hex": null
}
},
{
"id": "0x100029204#76",
"address": "0x100029204",
"sequence": 76,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x1000555b4",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029204#702",
"address": "0x100029204",
"sequence": 702,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000c8",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "4c"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x100029204#1380",
"address": "0x100029204",
"sequence": 1380,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "4c"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029204#1398",
"address": "0x100029204",
"sequence": 1398,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "4c"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029204#1416",
"address": "0x100029204",
"sequence": 1416,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "4c"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029204#1712",
"address": "0x100029204",
"sequence": 1712,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4010",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000c8",
"constant_hex": null
}
},
{
"id": "0x100029210#85",
"address": "0x100029210",
"sequence": 85,
"opcode": "INT_EQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 4,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "42475241"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
},
{
"id": "0x100029210#694",
"address": "0x100029210",
"sequence": 694,
"opcode": "SUBPIECE",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "register",
"size_bytes": 4,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x100029214#90",
"address": "0x100029214",
"sequence": 90,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029258",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029220#99",
"address": "0x100029220",
"sequence": 99,
"opcode": "INT_EQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 4,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "52476641"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
},
{
"id": "0x100029224#104",
"address": "0x100029224",
"sequence": 104,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029248",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029230#113",
"address": "0x100029230",
"sequence": 113,
"opcode": "INT_NOTEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 4,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "52476841"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
},
{
"id": "0x100029234#119",
"address": "0x100029234",
"sequence": 119,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029384",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029240#123",
"address": "0x100029240",
"sequence": 123,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "8"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40a8",
"constant_hex": null
}
},
{
"id": "0x100029244#124",
"address": "0x100029244",
"sequence": 124,
"opcode": "BRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029264",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029244#1718",
"address": "0x100029244",
"sequence": 1718,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000130",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000f8",
"constant_hex": null
}
},
{
"id": "0x100029244#1725",
"address": "0x100029244",
"sequence": 1725,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000130",
"constant_hex": null
}
},
{
"id": "0x100029250#403",
"address": "0x100029250",
"sequence": 403,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "10"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40a8",
"constant_hex": null
}
},
{
"id": "0x100029254#404",
"address": "0x100029254",
"sequence": 404,
"opcode": "BRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029264",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029254#1716",
"address": "0x100029254",
"sequence": 1716,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000128",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000e8",
"constant_hex": null
}
},
{
"id": "0x100029254#1724",
"address": "0x100029254",
"sequence": 1724,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000128",
"constant_hex": null
}
},
{
"id": "0x100029260#408",
"address": "0x100029260",
"sequence": 408,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "4"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40a8",
"constant_hex": null
}
},
{
"id": "0x100029260#1717",
"address": "0x100029260",
"sequence": 1717,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000120",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000f0",
"constant_hex": null
}
},
{
"id": "0x100029260#1723",
"address": "0x100029260",
"sequence": 1723,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000120",
"constant_hex": null
}
},
{
"id": "0x100029264#126",
"address": "0x100029264",
"sequence": 126,
"opcode": "LOAD",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "1b1"
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4040",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 4,
"location": "unique:0x49000",
"constant_hex": null
}
},
{
"id": "0x100029264#127",
"address": "0x100029264",
"sequence": 127,
"opcode": "INT_ZEXT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 4,
"location": "unique:0x49000",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c8",
"constant_hex": null
}
},
{
"id": "0x100029264#846",
"address": "0x100029264",
"sequence": 846,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000f8",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000e8",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000f0",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4040",
"constant_hex": null
}
},
{
"id": "0x100029264#852",
"address": "0x100029264",
"sequence": 852,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40a8",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40a8",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40a8",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40a8",
"constant_hex": null
}
},
{
"id": "0x100029278#145",
"address": "0x100029278",
"sequence": 145,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x1000554dc",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5020",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5040",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5060",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029278#876",
"address": "0x100029278",
"sequence": 876,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000110",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "91"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
}
},
{
"id": "0x100029278#1381",
"address": "0x100029278",
"sequence": 1381,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "91"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029278#1399",
"address": "0x100029278",
"sequence": 1399,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "91"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029278#1417",
"address": "0x100029278",
"sequence": 1417,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "91"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029278#1721",
"address": "0x100029278",
"sequence": 1721,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000110",
"constant_hex": null
}
},
{
"id": "0x10002927c#146",
"address": "0x10002927c",
"sequence": 146,
"opcode": "TRUNC",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
}
},
{
"id": "0x100029290#164",
"address": "0x100029290",
"sequence": 164,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100055488",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5020",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5040",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5060",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029290#877",
"address": "0x100029290",
"sequence": 877,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000118",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "a4"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
}
},
{
"id": "0x100029290#1382",
"address": "0x100029290",
"sequence": 1382,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "a4"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029290#1400",
"address": "0x100029290",
"sequence": 1400,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "a4"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029290#1418",
"address": "0x100029290",
"sequence": 1418,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "a4"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029290#1722",
"address": "0x100029290",
"sequence": 1722,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000118",
"constant_hex": null
}
},
{
"id": "0x100029294#165",
"address": "0x100029294",
"sequence": 165,
"opcode": "TRUNC",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000138",
"constant_hex": null
}
},
{
"id": "0x100029294#1726",
"address": "0x100029294",
"sequence": 1726,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000138",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40d0",
"constant_hex": null
}
},
{
"id": "0x100029298#171",
"address": "0x100029298",
"sequence": 171,
"opcode": "INT_NOTEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
},
{
"id": "0x10002929c#1369",
"address": "0x10002929c",
"sequence": 1369,
"opcode": "INT_NOTEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40d0",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
},
{
"id": "0x1000292a0#199",
"address": "0x1000292a0",
"sequence": 199,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029384",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x100000b3",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000292a0#1674",
"address": "0x1000292a0",
"sequence": 1674,
"opcode": "BOOL_AND",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x100000b3",
"constant_hex": null
}
},
{
"id": "0x1000292a4#200",
"address": "0x1000292a4",
"sequence": 200,
"opcode": "INT_MULT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40a8",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000140",
"constant_hex": null
}
},
{
"id": "0x1000292a4#1727",
"address": "0x1000292a4",
"sequence": 1727,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000140",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
}
},
{
"id": "0x1000292a8#201",
"address": "0x1000292a8",
"sequence": 201,
"opcode": "INT_MULT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000148",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000150",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x1000292a8#1728",
"address": "0x1000292a8",
"sequence": 1728,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000148",
"constant_hex": null
}
},
{
"id": "0x1000292a8#1729",
"address": "0x1000292a8",
"sequence": 1729,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40d0",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000150",
"constant_hex": null
}
},
{
"id": "0x1000292b0#204",
"address": "0x1000292b0",
"sequence": 204,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x1000557dc",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "1"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x1000292b0#1383",
"address": "0x1000292b0",
"sequence": 1383,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "cc"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x1000292b0#1401",
"address": "0x1000292b0",
"sequence": 1401,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "cc"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x1000292b0#1419",
"address": "0x1000292b0",
"sequence": 1419,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "cc"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x1000292b4#205",
"address": "0x1000292b4",
"sequence": 205,
"opcode": "INT_NOTEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x31700",
"constant_hex": null
}
},
{
"id": "0x1000292b4#206",
"address": "0x1000292b4",
"sequence": 206,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029384",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x31700",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000292e4#231",
"address": "0x1000292e4",
"sequence": 231,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x10005a900",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4008",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5000",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5020",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5040",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x5060",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c8",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4018",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000292e4#1384",
"address": "0x1000292e4",
"sequence": 1384,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "e7"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x1000292e4#1402",
"address": "0x1000292e4",
"sequence": 1402,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "e7"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x1000292e4#1420",
"address": "0x1000292e4",
"sequence": 1420,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "e7"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x1000292f4#236",
"address": "0x1000292f4",
"sequence": 236,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x1000555cc",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4010",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": null
},
{
"id": "0x1000292f4#1385",
"address": "0x1000292f4",
"sequence": 1385,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "ec"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x1000292f4#1403",
"address": "0x1000292f4",
"sequence": 1403,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "ec"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x1000292f4#1421",
"address": "0x1000292f4",
"sequence": 1421,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "ec"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x1000292fc#239",
"address": "0x1000292fc",
"sequence": 239,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100055590",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000292fc#706",
"address": "0x1000292fc",
"sequence": 706,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000d0",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "ef"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x1000292fc#1386",
"address": "0x1000292fc",
"sequence": 1386,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "ef"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x1000292fc#1404",
"address": "0x1000292fc",
"sequence": 1404,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "ef"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x1000292fc#1422",
"address": "0x1000292fc",
"sequence": 1422,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "ef"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x1000292fc#1713",
"address": "0x1000292fc",
"sequence": 1713,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4010",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000d0",
"constant_hex": null
}
},
{
"id": "0x100029308#243",
"address": "0x100029308",
"sequence": 243,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x10005559c",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029308#707",
"address": "0x100029308",
"sequence": 707,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000d8",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "f3"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x100029308#1387",
"address": "0x100029308",
"sequence": 1387,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "f3"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029308#1405",
"address": "0x100029308",
"sequence": 1405,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "f3"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029308#1423",
"address": "0x100029308",
"sequence": 1423,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "f3"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029308#1714",
"address": "0x100029308",
"sequence": 1714,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4010",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000d8",
"constant_hex": null
}
},
{
"id": "0x100029314#247",
"address": "0x100029314",
"sequence": 247,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x1000555a8",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029314#708",
"address": "0x100029314",
"sequence": 708,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000e0",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "f7"
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x100029314#1388",
"address": "0x100029314",
"sequence": 1388,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "f7"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029314#1406",
"address": "0x100029314",
"sequence": 1406,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "f7"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029314#1424",
"address": "0x100029314",
"sequence": 1424,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "f7"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029314#1715",
"address": "0x100029314",
"sequence": 1715,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4010",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x100000e0",
"constant_hex": null
}
},
{
"id": "0x100029318#248",
"address": "0x100029318",
"sequence": 248,
"opcode": "INT_LESSEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x105",
"constant_hex": null
}
},
{
"id": "0x10002931c#1371",
"address": "0x10002931c",
"sequence": 1371,
"opcode": "INT_LESSEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40d0",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x105",
"constant_hex": null
}
},
{
"id": "0x100029320#1372",
"address": "0x100029320",
"sequence": 1372,
"opcode": "INT_NOTEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
},
{
"id": "0x100029324#300",
"address": "0x100029324",
"sequence": 300,
"opcode": "BOOL_AND",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x100000ac",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x4600",
"constant_hex": null
}
},
{
"id": "0x100029324#1375",
"address": "0x100029324",
"sequence": 1375,
"opcode": "BOOL_AND",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x105",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x105",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x100000ac",
"constant_hex": null
}
},
{
"id": "0x100029328#302",
"address": "0x100029328",
"sequence": 302,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029350",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x100000bb",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029328#1686",
"address": "0x100029328",
"sequence": 1686,
"opcode": "BOOL_AND",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x100000bc",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x100000bb",
"constant_hex": null
}
},
{
"id": "0x100029328#1687",
"address": "0x100029328",
"sequence": 1687,
"opcode": "BOOL_AND",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x105",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x105",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x100000bc",
"constant_hex": null
}
},
{
"id": "0x100029328#1720",
"address": "0x100029328",
"sequence": 1720,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000108",
"constant_hex": null
}
},
{
"id": "0x100029330#855",
"address": "0x100029330",
"sequence": 855,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x24200",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40b0",
"constant_hex": null
}
},
{
"id": "0x100029330#863",
"address": "0x100029330",
"sequence": 863,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000100",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000108",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c8",
"constant_hex": null
}
},
{
"id": "0x100029330#867",
"address": "0x100029330",
"sequence": 867,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x7b100",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40d0",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 8,
"location": "register:0x40d0",
"constant_hex": null
}
},
{
"id": "0x100029330#1394",
"address": "0x100029330",
"sequence": 1394,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029330#1412",
"address": "0x100029330",
"sequence": 1412,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029330#1430",
"address": "0x100029330",
"sequence": 1430,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x10002933c#308",
"address": "0x10002933c",
"sequence": 308,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x1000558d8",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40b0",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c8",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000158",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x10002933c#1389",
"address": "0x10002933c",
"sequence": 1389,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "134"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x10002933c#1407",
"address": "0x10002933c",
"sequence": 1407,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "134"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x10002933c#1425",
"address": "0x10002933c",
"sequence": 1425,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "134"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x10002933c#1730",
"address": "0x10002933c",
"sequence": 1730,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000158",
"constant_hex": null
}
},
{
"id": "0x100029340#312",
"address": "0x100029340",
"sequence": 312,
"opcode": "INT_ADD",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000160",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000168",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000170",
"constant_hex": null
}
},
{
"id": "0x100029340#1731",
"address": "0x100029340",
"sequence": 1731,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c8",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000160",
"constant_hex": null
}
},
{
"id": "0x100029340#1732",
"address": "0x100029340",
"sequence": 1732,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40c0",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000168",
"constant_hex": null
}
},
{
"id": "0x100029340#1733",
"address": "0x100029340",
"sequence": 1733,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000170",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x24200",
"constant_hex": null
}
},
{
"id": "0x100029344#319",
"address": "0x100029344",
"sequence": 319,
"opcode": "INT_ADD",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000178",
"constant_hex": null
},
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000180",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000188",
"constant_hex": null
}
},
{
"id": "0x100029344#1734",
"address": "0x100029344",
"sequence": 1734,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40b0",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000178",
"constant_hex": null
}
},
{
"id": "0x100029344#1735",
"address": "0x100029344",
"sequence": 1735,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000180",
"constant_hex": null
}
},
{
"id": "0x100029344#1736",
"address": "0x100029344",
"sequence": 1736,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000188",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x24200",
"constant_hex": null
}
},
{
"id": "0x100029348#326",
"address": "0x100029348",
"sequence": 326,
"opcode": "INT_ADD",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000190",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "ffffffffffffffff"
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000198",
"constant_hex": null
}
},
{
"id": "0x100029348#328",
"address": "0x100029348",
"sequence": 328,
"opcode": "INT_NOTEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x7b100",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
},
{
"id": "0x100029348#1737",
"address": "0x100029348",
"sequence": 1737,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x40d0",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000190",
"constant_hex": null
}
},
{
"id": "0x100029348#1738",
"address": "0x100029348",
"sequence": 1738,
"opcode": "CAST",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000198",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x7b100",
"constant_hex": null
}
},
{
"id": "0x10002934c#335",
"address": "0x10002934c",
"sequence": 335,
"opcode": "CBRANCH",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 1,
"location": "0x100029330",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x108",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x10002934c#1719",
"address": "0x10002934c",
"sequence": 1719,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x24200",
"constant_hex": null
}
],
"output": {
"kind": "unique",
"size_bytes": 8,
"location": "unique:0x10000100",
"constant_hex": null
}
},
{
"id": "0x100029350#1393",
"address": "0x100029350",
"sequence": 1393,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029350#1411",
"address": "0x100029350",
"sequence": 1411,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029350#1429",
"address": "0x100029350",
"sequence": 1429,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x10002935c#340",
"address": "0x10002935c",
"sequence": 340,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x1000555d8",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4010",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
},
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
}
],
"output": null
},
{
"id": "0x10002935c#1390",
"address": "0x10002935c",
"sequence": 1390,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "154"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x10002935c#1408",
"address": "0x10002935c",
"sequence": 1408,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "154"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x10002935c#1426",
"address": "0x10002935c",
"sequence": 1426,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "154"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029364#343",
"address": "0x100029364",
"sequence": 343,
"opcode": "CALL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x10005586c",
"constant_hex": null
},
{
"kind": "register",
"size_bytes": 8,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x100029364#1391",
"address": "0x100029364",
"sequence": 1391,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "157"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029364#1409",
"address": "0x100029364",
"sequence": 1409,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "157"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029364#1427",
"address": "0x100029364",
"sequence": 1427,
"opcode": "INDIRECT",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "constant",
"size_bytes": 4,
"location": null,
"constant_hex": "157"
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029384#1396",
"address": "0x100029384",
"sequence": 1396,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029384#1414",
"address": "0x100029384",
"sequence": 1414,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029384#1432",
"address": "0x100029384",
"sequence": 1432,
"opcode": "MULTIEQUAL",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
},
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029388#1395",
"address": "0x100029388",
"sequence": 1395,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x100029388#1413",
"address": "0x100029388",
"sequence": 1413,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x100029388#1431",
"address": "0x100029388",
"sequence": 1431,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x100029388#1684",
"address": "0x100029388",
"sequence": 1684,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 1,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x100029388#1695",
"address": "0x100029388",
"sequence": 1695,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "unique",
"size_bytes": 1,
"location": "unique:0x4600",
"constant_hex": null
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x100029388#1706",
"address": "0x100029388",
"sequence": 1706,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 1,
"location": null,
"constant_hex": "0"
}
],
"output": {
"kind": "register",
"size_bytes": 1,
"location": "register:0x4000",
"constant_hex": null
}
},
{
"id": "0x1000293a8#398",
"address": "0x1000293a8",
"sequence": 398,
"opcode": "RETURN",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000293a8#1392",
"address": "0x1000293a8",
"sequence": 1392,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1410",
"address": "0x1000293a8",
"sequence": 1410,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1428",
"address": "0x1000293a8",
"sequence": 1428,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1696",
"address": "0x1000293a8",
"sequence": 1696,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1697",
"address": "0x1000293a8",
"sequence": 1697,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1698",
"address": "0x1000293a8",
"sequence": 1698,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1699",
"address": "0x1000293a8",
"sequence": 1699,
"opcode": "RETURN",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": null
},
{
"id": "0x1000293a8#1707",
"address": "0x1000293a8",
"sequence": 1707,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078160",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1708",
"address": "0x1000293a8",
"sequence": 1708,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078178",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1709",
"address": "0x1000293a8",
"sequence": 1709,
"opcode": "COPY",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
],
"output": {
"kind": "address",
"size_bytes": 8,
"location": "0x100078180",
"constant_hex": null
}
},
{
"id": "0x1000293a8#1710",
"address": "0x1000293a8",
"sequence": 1710,
"opcode": "RETURN",
"is_dead": true,
"block_membership": "member",
"inputs": [
{
"kind": "constant",
"size_bytes": 8,
"location": null,
"constant_hex": "0"
},
{
"kind": "register",
"size_bytes": 1,
"location": "register:0x4000",
"constant_hex": null
}
],
"output": null
}
],
"def_use": [
{
"definition": "0x1000291d4#45",
"use": "0x1000291d4#46",
"input_index": 1
},
{
"definition": "0x1000291f8#1711",
"use": "0x1000291f8#701",
"input_index": 0
},
{
"definition": "0x1000291fc#1358",
"use": "0x1000291fc#71",
"input_index": 0
},
{
"definition": "0x1000291fc#71",
"use": "0x1000291fc#73",
"input_index": 1
},
{
"definition": "0x1000291f8#701",
"use": "0x1000291fc#1358",
"input_index": 0
},
{
"definition": "0x100029204#1712",
"use": "0x100029204#702",
"input_index": 0
},
{
"definition": "0x1000291f8#1379",
"use": "0x100029204#1380",
"input_index": 0
},
{
"definition": "0x1000291f8#1397",
"use": "0x100029204#1398",
"input_index": 0
},
{
"definition": "0x1000291f8#1415",
"use": "0x100029204#1416",
"input_index": 0
},
{
"definition": "0x100029210#694",
"use": "0x100029210#85",
"input_index": 0
},
{
"definition": "0x100029204#702",
"use": "0x100029210#694",
"input_index": 0
},
{
"definition": "0x100029210#85",
"use": "0x100029214#90",
"input_index": 1
},
{
"definition": "0x100029210#694",
"use": "0x100029220#99",
"input_index": 0
},
{
"definition": "0x100029220#99",
"use": "0x100029224#104",
"input_index": 1
},
{
"definition": "0x100029210#694",
"use": "0x100029230#113",
"input_index": 0
},
{
"definition": "0x100029230#113",
"use": "0x100029234#119",
"input_index": 1
},
{
"definition": "0x100029244#1725",
"use": "0x100029244#1718",
"input_index": 0
},
{
"definition": "0x100029204#1416",
"use": "0x100029244#1725",
"input_index": 0
},
{
"definition": "0x100029254#1724",
"use": "0x100029254#1716",
"input_index": 0
},
{
"definition": "0x100029204#1398",
"use": "0x100029254#1724",
"input_index": 0
},
{
"definition": "0x100029260#1723",
"use": "0x100029260#1717",
"input_index": 0
},
{
"definition": "0x100029204#1380",
"use": "0x100029260#1723",
"input_index": 0
},
{
"definition": "0x100029264#846",
"use": "0x100029264#126",
"input_index": 1
},
{
"definition": "0x100029264#126",
"use": "0x100029264#127",
"input_index": 0
},
{
"definition": "0x100029244#1718",
"use": "0x100029264#846",
"input_index": 0
},
{
"definition": "0x100029254#1716",
"use": "0x100029264#846",
"input_index": 1
},
{
"definition": "0x100029260#1717",
"use": "0x100029264#846",
"input_index": 2
},
{
"definition": "0x100029240#123",
"use": "0x100029264#852",
"input_index": 0
},
{
"definition": "0x100029250#403",
"use": "0x100029264#852",
"input_index": 1
},
{
"definition": "0x100029260#408",
"use": "0x100029264#852",
"input_index": 2
},
{
"definition": "0x100029278#1721",
"use": "0x100029278#876",
"input_index": 0
},
{
"definition": "0x100029204#1380",
"use": "0x100029278#1381",
"input_index": 0
},
{
"definition": "0x100029204#1398",
"use": "0x100029278#1399",
"input_index": 0
},
{
"definition": "0x100029204#1416",
"use": "0x100029278#1417",
"input_index": 0
},
{
"definition": "0x100029278#876",
"use": "0x10002927c#146",
"input_index": 0
},
{
"definition": "0x100029290#1722",
"use": "0x100029290#877",
"input_index": 0
},
{
"definition": "0x100029278#1381",
"use": "0x100029290#1382",
"input_index": 0
},
{
"definition": "0x100029278#1399",
"use": "0x100029290#1400",
"input_index": 0
},
{
"definition": "0x100029278#1417",
"use": "0x100029290#1418",
"input_index": 0
},
{
"definition": "0x100029290#877",
"use": "0x100029294#165",
"input_index": 0
},
{
"definition": "0x100029294#165",
"use": "0x100029294#1726",
"input_index": 0
},
{
"definition": "0x10002927c#146",
"use": "0x100029298#171",
"input_index": 0
},
{
"definition": "0x100029294#1726",
"use": "0x10002929c#1369",
"input_index": 0
},
{
"definition": "0x1000292a0#1674",
"use": "0x1000292a0#199",
"input_index": 1
},
{
"definition": "0x100029298#171",
"use": "0x1000292a0#1674",
"input_index": 0
},
{
"definition": "0x10002929c#1369",
"use": "0x1000292a0#1674",
"input_index": 1
},
{
"definition": "0x10002927c#146",
"use": "0x1000292a4#200",
"input_index": 0
},
{
"definition": "0x100029264#852",
"use": "0x1000292a4#200",
"input_index": 1
},
{
"definition": "0x1000292a4#200",
"use": "0x1000292a4#1727",
"input_index": 0
},
{
"definition": "0x1000292a8#1728",
"use": "0x1000292a8#201",
"input_index": 0
},
{
"definition": "0x1000292a8#1729",
"use": "0x1000292a8#201",
"input_index": 1
},
{
"definition": "0x1000292a4#1727",
"use": "0x1000292a8#1728",
"input_index": 0
},
{
"definition": "0x100029294#1726",
"use": "0x1000292a8#1729",
"input_index": 0
},
{
"definition": "0x1000292a8#201",
"use": "0x1000292b0#204",
"input_index": 1
},
{
"definition": "0x100029290#1382",
"use": "0x1000292b0#1383",
"input_index": 0
},
{
"definition": "0x100029290#1400",
"use": "0x1000292b0#1401",
"input_index": 0
},
{
"definition": "0x100029290#1418",
"use": "0x1000292b0#1419",
"input_index": 0
},
{
"definition": "0x1000292b0#204",
"use": "0x1000292b4#205",
"input_index": 0
},
{
"definition": "0x1000292b4#205",
"use": "0x1000292b4#206",
"input_index": 1
},
{
"definition": "0x1000292b0#204",
"use": "0x1000292e4#231",
"input_index": 7
},
{
"definition": "0x1000292a4#1727",
"use": "0x1000292e4#231",
"input_index": 8
},
{
"definition": "0x100029264#127",
"use": "0x1000292e4#231",
"input_index": 9
},
{
"definition": "0x1000292b0#1383",
"use": "0x1000292e4#1384",
"input_index": 0
},
{
"definition": "0x1000292b0#1401",
"use": "0x1000292e4#1402",
"input_index": 0
},
{
"definition": "0x1000292b0#1419",
"use": "0x1000292e4#1420",
"input_index": 0
},
{
"definition": "0x1000292e4#1384",
"use": "0x1000292f4#1385",
"input_index": 0
},
{
"definition": "0x1000292e4#1402",
"use": "0x1000292f4#1403",
"input_index": 0
},
{
"definition": "0x1000292e4#1420",
"use": "0x1000292f4#1421",
"input_index": 0
},
{
"definition": "0x1000292fc#1713",
"use": "0x1000292fc#706",
"input_index": 0
},
{
"definition": "0x1000292f4#1385",
"use": "0x1000292fc#1386",
"input_index": 0
},
{
"definition": "0x1000292f4#1403",
"use": "0x1000292fc#1404",
"input_index": 0
},
{
"definition": "0x1000292f4#1421",
"use": "0x1000292fc#1422",
"input_index": 0
},
{
"definition": "0x100029308#1714",
"use": "0x100029308#707",
"input_index": 0
},
{
"definition": "0x1000292fc#1386",
"use": "0x100029308#1387",
"input_index": 0
},
{
"definition": "0x1000292fc#1404",
"use": "0x100029308#1405",
"input_index": 0
},
{
"definition": "0x1000292fc#1422",
"use": "0x100029308#1423",
"input_index": 0
},
{
"definition": "0x100029314#1715",
"use": "0x100029314#708",
"input_index": 0
},
{
"definition": "0x100029308#1387",
"use": "0x100029314#1388",
"input_index": 0
},
{
"definition": "0x100029308#1405",
"use": "0x100029314#1406",
"input_index": 0
},
{
"definition": "0x100029308#1423",
"use": "0x100029314#1424",
"input_index": 0
},
{
"definition": "0x1000292a4#1727",
"use": "0x100029318#248",
"input_index": 0
},
{
"definition": "0x100029308#707",
"use": "0x100029318#248",
"input_index": 1
},
{
"definition": "0x100029294#1726",
"use": "0x10002931c#1371",
"input_index": 0
},
{
"definition": "0x100029314#708",
"use": "0x10002931c#1371",
"input_index": 1
},
{
"definition": "0x1000292fc#706",
"use": "0x100029320#1372",
"input_index": 0
},
{
"definition": "0x100029324#1375",
"use": "0x100029324#300",
"input_index": 0
},
{
"definition": "0x100029320#1372",
"use": "0x100029324#300",
"input_index": 1
},
{
"definition": "0x100029318#248",
"use": "0x100029324#1375",
"input_index": 0
},
{
"definition": "0x10002931c#1371",
"use": "0x100029324#1375",
"input_index": 1
},
{
"definition": "0x100029328#1686",
"use": "0x100029328#302",
"input_index": 1
},
{
"definition": "0x100029328#1687",
"use": "0x100029328#1686",
"input_index": 0
},
{
"definition": "0x100029320#1372",
"use": "0x100029328#1686",
"input_index": 1
},
{
"definition": "0x100029318#248",
"use": "0x100029328#1687",
"input_index": 0
},
{
"definition": "0x10002931c#1371",
"use": "0x100029328#1687",
"input_index": 1
},
{
"definition": "0x1000292b0#204",
"use": "0x100029328#1720",
"input_index": 0
},
{
"definition": "0x100029344#1736",
"use": "0x100029330#855",
"input_index": 0
},
{
"definition": "0x1000292fc#706",
"use": "0x100029330#855",
"input_index": 1
},
{
"definition": "0x10002934c#1719",
"use": "0x100029330#863",
"input_index": 0
},
{
"definition": "0x100029328#1720",
"use": "0x100029330#863",
"input_index": 1
},
{
"definition": "0x100029348#1738",
"use": "0x100029330#867",
"input_index": 0
},
{
"definition": "0x100029294#1726",
"use": "0x100029330#867",
"input_index": 1
},
{
"definition": "0x10002933c#1389",
"use": "0x100029330#1394",
"input_index": 0
},
{
"definition": "0x100029314#1388",
"use": "0x100029330#1394",
"input_index": 1
},
{
"definition": "0x10002933c#1407",
"use": "0x100029330#1412",
"input_index": 0
},
{
"definition": "0x100029314#1406",
"use": "0x100029330#1412",
"input_index": 1
},
{
"definition": "0x10002933c#1425",
"use": "0x100029330#1430",
"input_index": 0
},
{
"definition": "0x100029314#1424",
"use": "0x100029330#1430",
"input_index": 1
},
{
"definition": "0x100029330#855",
"use": "0x10002933c#308",
"input_index": 1
},
{
"definition": "0x100029330#863",
"use": "0x10002933c#308",
"input_index": 2
},
{
"definition": "0x10002933c#1730",
"use": "0x10002933c#308",
"input_index": 3
},
{
"definition": "0x100029330#1394",
"use": "0x10002933c#1389",
"input_index": 0
},
{
"definition": "0x100029330#1412",
"use": "0x10002933c#1407",
"input_index": 0
},
{
"definition": "0x100029330#1430",
"use": "0x10002933c#1425",
"input_index": 0
},
{
"definition": "0x1000292a4#1727",
"use": "0x10002933c#1730",
"input_index": 0
},
{
"definition": "0x100029340#1731",
"use": "0x100029340#312",
"input_index": 0
},
{
"definition": "0x100029340#1732",
"use": "0x100029340#312",
"input_index": 1
},
{
"definition": "0x100029330#863",
"use": "0x100029340#1731",
"input_index": 0
},
{
"definition": "0x1000292a4#1727",
"use": "0x100029340#1732",
"input_index": 0
},
{
"definition": "0x100029340#312",
"use": "0x100029340#1733",
"input_index": 0
},
{
"definition": "0x100029344#1734",
"use": "0x100029344#319",
"input_index": 0
},
{
"definition": "0x100029344#1735",
"use": "0x100029344#319",
"input_index": 1
},
{
"definition": "0x100029330#855",
"use": "0x100029344#1734",
"input_index": 0
},
{
"definition": "0x100029308#707",
"use": "0x100029344#1735",
"input_index": 0
},
{
"definition": "0x100029344#319",
"use": "0x100029344#1736",
"input_index": 0
},
{
"definition": "0x100029348#1737",
"use": "0x100029348#326",
"input_index": 0
},
{
"definition": "0x100029348#1738",
"use": "0x100029348#328",
"input_index": 0
},
{
"definition": "0x100029330#867",
"use": "0x100029348#1737",
"input_index": 0
},
{
"definition": "0x100029348#326",
"use": "0x100029348#1738",
"input_index": 0
},
{
"definition": "0x100029348#328",
"use": "0x10002934c#335",
"input_index": 1
},
{
"definition": "0x100029340#1733",
"use": "0x10002934c#1719",
"input_index": 0
},
{
"definition": "0x100029314#1388",
"use": "0x100029350#1393",
"input_index": 0
},
{
"definition": "0x10002933c#1389",
"use": "0x100029350#1393",
"input_index": 1
},
{
"definition": "0x100029314#1406",
"use": "0x100029350#1411",
"input_index": 0
},
{
"definition": "0x10002933c#1407",
"use": "0x100029350#1411",
"input_index": 1
},
{
"definition": "0x100029314#1424",
"use": "0x100029350#1429",
"input_index": 0
},
{
"definition": "0x10002933c#1425",
"use": "0x100029350#1429",
"input_index": 1
},
{
"definition": "0x100029350#1393",
"use": "0x10002935c#1390",
"input_index": 0
},
{
"definition": "0x100029350#1411",
"use": "0x10002935c#1408",
"input_index": 0
},
{
"definition": "0x100029350#1429",
"use": "0x10002935c#1426",
"input_index": 0
},
{
"definition": "0x1000292b0#204",
"use": "0x100029364#343",
"input_index": 1
},
{
"definition": "0x10002935c#1390",
"use": "0x100029364#1391",
"input_index": 0
},
{
"definition": "0x10002935c#1408",
"use": "0x100029364#1409",
"input_index": 0
},
{
"definition": "0x10002935c#1426",
"use": "0x100029364#1427",
"input_index": 0
},
{
"definition": "0x1000291f8#1379",
"use": "0x100029384#1396",
"input_index": 1
},
{
"definition": "0x100029290#1382",
"use": "0x100029384#1396",
"input_index": 2
},
{
"definition": "0x1000292b0#1383",
"use": "0x100029384#1396",
"input_index": 3
},
{
"definition": "0x1000291f8#1397",
"use": "0x100029384#1414",
"input_index": 1
},
{
"definition": "0x100029290#1400",
"use": "0x100029384#1414",
"input_index": 2
},
{
"definition": "0x1000292b0#1401",
"use": "0x100029384#1414",
"input_index": 3
},
{
"definition": "0x1000291f8#1415",
"use": "0x100029384#1432",
"input_index": 1
},
{
"definition": "0x100029290#1418",
"use": "0x100029384#1432",
"input_index": 2
},
{
"definition": "0x1000292b0#1419",
"use": "0x100029384#1432",
"input_index": 3
},
{
"definition": "0x100029384#1396",
"use": "0x100029388#1395",
"input_index": 0
},
{
"definition": "0x100029384#1414",
"use": "0x100029388#1413",
"input_index": 0
},
{
"definition": "0x100029384#1432",
"use": "0x100029388#1431",
"input_index": 0
},
{
"definition": "0x100029324#300",
"use": "0x100029388#1695",
"input_index": 0
},
{
"definition": "0x100029388#1684",
"use": "0x1000293a8#398",
"input_index": 1
},
{
"definition": "0x100029388#1395",
"use": "0x1000293a8#1392",
"input_index": 0
},
{
"definition": "0x100029388#1413",
"use": "0x1000293a8#1410",
"input_index": 0
},
{
"definition": "0x100029388#1431",
"use": "0x1000293a8#1428",
"input_index": 0
},
{
"definition": "0x100029364#1391",
"use": "0x1000293a8#1696",
"input_index": 0
},
{
"definition": "0x100029364#1409",
"use": "0x1000293a8#1697",
"input_index": 0
},
{
"definition": "0x100029364#1427",
"use": "0x1000293a8#1698",
"input_index": 0
},
{
"definition": "0x100029388#1695",
"use": "0x1000293a8#1699",
"input_index": 1
},
{
"definition": "0x100029204#1380",
"use": "0x1000293a8#1707",
"input_index": 0
},
{
"definition": "0x100029204#1398",
"use": "0x1000293a8#1708",
"input_index": 0
},
{
"definition": "0x100029204#1416",
"use": "0x1000293a8#1709",
"input_index": 0
},
{
"definition": "0x100029388#1706",
"use": "0x1000293a8#1710",
"input_index": 1
}
],
"effects": [
{
"operation": "0x1000291d4#46",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x1000291f8#68",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x1000291fc#73",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x100029204#76",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x100029214#90",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x100029224#104",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x100029234#119",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x100029264#126",
"kind": "memory_read",
"operand_input": 1,
"value_input": null
},
{
"operation": "0x100029278#145",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x100029290#164",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x1000292a0#199",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x1000292b0#204",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x1000292b4#206",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x1000292e4#231",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x1000292f4#236",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x1000292fc#239",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x100029308#243",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x100029314#247",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x100029328#302",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x10002933c#308",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x10002934c#335",
"kind": "conditional_branch",
"operand_input": null,
"value_input": 1
},
{
"operation": "0x10002935c#340",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
},
{
"operation": "0x100029364#343",
"kind": "direct_call",
"operand_input": 0,
"value_input": null
}
],
"parameters": [
{
"ordinal": 0,
"name": "param_1",
"data_type": "/double"
},
{
"ordinal": 1,
"name": "param_2",
"data_type": "/undefined8"
},
{
"ordinal": 2,
"name": "param_3",
"data_type": "/undefined8"
},
{
"ordinal": 3,
"name": "param_4",
"data_type": "/undefined8"
},
{
"ordinal": 4,
"name": "param_5",
"data_type": "/ulong"
},
{
"ordinal": 5,
"name": "param_6",
"data_type": "/_objc2_/ID"
},
{
"ordinal": 6,
"name": "param_7",
"data_type": "/void *"
},
{
"ordinal": 7,
"name": "param_8",
"data_type": "/undefined8"
}
],
"parameter_uses": [
{
"ordinal": 4,
"use": "0x1000291d4#45",
"input_index": 0
},
{
"ordinal": 4,
"use": "0x1000291f8#1711",
"input_index": 0
},
{
"ordinal": 6,
"use": "0x100029204#1712",
"input_index": 0
},
{
"ordinal": 0,
"use": "0x100029278#145",
"input_index": 1
},
{
"ordinal": 1,
"use": "0x100029278#145",
"input_index": 2
},
{
"ordinal": 2,
"use": "0x100029278#145",
"input_index": 3
},
{
"ordinal": 3,
"use": "0x100029278#145",
"input_index": 4
},
{
"ordinal": 0,
"use": "0x100029278#1721",
"input_index": 0
},
{
"ordinal": 0,
"use": "0x100029290#164",
"input_index": 1
},
{
"ordinal": 1,
"use": "0x100029290#164",
"input_index": 2
},
{
"ordinal": 2,
"use": "0x100029290#164",
"input_index": 3
},
{
"ordinal": 3,
"use": "0x100029290#164",
"input_index": 4
},
{
"ordinal": 0,
"use": "0x100029290#1722",
"input_index": 0
},
{
"ordinal": 5,
"use": "0x1000292e4#231",
"input_index": 1
},
{
"ordinal": 0,
"use": "0x1000292e4#231",
"input_index": 2
},
{
"ordinal": 1,
"use": "0x1000292e4#231",
"input_index": 3
},
{
"ordinal": 2,
"use": "0x1000292e4#231",
"input_index": 4
},
{
"ordinal": 3,
"use": "0x1000292e4#231",
"input_index": 5
},
{
"ordinal": 4,
"use": "0x1000292e4#231",
"input_index": 6
},
{
"ordinal": 7,
"use": "0x1000292e4#231",
"input_index": 10
},
{
"ordinal": 6,
"use": "0x1000292f4#236",
"input_index": 1
},
{
"ordinal": 6,
"use": "0x1000292fc#1713",
"input_index": 0
},
{
"ordinal": 6,
"use": "0x100029308#1714",
"input_index": 0
},
{
"ordinal": 6,
"use": "0x100029314#1715",
"input_index": 0
},
{
"ordinal": 6,
"use": "0x10002935c#340",
"input_index": 1
}
],
"truncated": false,
"omitted_operations_lower_bound": 0,
"known_omitted_inputs": 0,
"known_omitted_edges": 0,
"limitations": [
"High p-code is decompiler-derived, not original source or runtime behavior. is_dead preserves the Java AST flag; decoded block members can retain that flag, so block_membership separately reports actual syntax-tree membership.",
"Def-use links do not cross function boundaries and may omit memory aliasing, call side effects, or unresolved indirect flow.",
"Memory read/write effects include stack and temporary memory operations; they do not identify persistent state or business meaning.",
"Operation, input, and def-use limits can truncate large functions; inspect truncation, omitted lower bounds, and known omitted counts before drawing conclusions.",
"Known omitted-edge counts cover links omitted from retained operations; omitted operations may contain additional uncounted links."
]
},
"limitations": [
"Unresolved computed or indirect flows without target addresses are not represented as reference edges.",
"Thunk and external classifications are Ghidra FunctionManager observations; they do not resolve targetless calls.",
"Pseudocode and assembly are Ghidra-specific representations, not original source or Hopper-equivalent text.",
"Synthetic Ghidra entry-point references without actionable memory sources are omitted."
]
},
"confidence": "observed",
"authority": "shipped-artifact",
"environment": null,
"limitations": [
"The session serves operations only after Ghidra reports default auto-analysis complete; incomplete analysis does not expose partial results.",
"The imported Program and temporary project are ephemeral and deleted on close. Annotation operations edit session database metadata; original executable bytes are never written.",
"Cancelling an active Ghidra request terminates its ephemeral database and discards session annotations. The selected target remains open; the next provider query imports the original artifact again.",
"Default-space addresses use lowercase 0x-prefixed hexadecimal; other address spaces use <percent-encoded-space>:0x<hex>.",
"References cover the complete Ghidra function-body AddressSet and exact entry. Dossier incoming edges omit sources owned by that function; procedure_references also retains those internal edges.",
"The dossier combines Ghidra FunctionManager, Listing, ReferenceManager, BasicBlockModel, and decompiler observations; provider-specific pseudocode and assembly are not cross-provider text invariants.",
"Resolved reference metadata identifies computed, indirect, external, call, jump, and data edges; unresolved targetless flows remain unknown, and function classifications distinguish thunks and externals.",
"Synthetic Ghidra entry-point references without actionable memory sources are omitted.",
"The Java bridge serializes one function request per Program and lets each decompilation run until it completes or the caller cancels.",
"macOS sessions require a matching executable Ghidra native decompiler; REA checks for it but does not build native components or change Gatekeeper quarantine state."
],
"locations": [],
"evidence_links": []
}
]
}