Functions API
Browse, search, and retrieve reconstructed source code from analyzed games.
Overview
After a job completes, all reconstructed functions are available via the Functions API. Each function has:
- Address — binary offset identifier
- Name — class and method name extracted from game metadata
- Source — reconstructed C# source code
- Category —
game-core,unity-sdk,firebase,admob, etc. - Doc — official documentation link (for classified SDK functions)
Get reconstructed source
GET /api/functions/{address}/decompile
X-SaaS-Email: you@example.com
X-API-Key: re_xxx
X-Binary-Id: {binary_id}
Response:
{
"address": 28120604,
"name": "GameManager$$StartMatch",
"source": "void GameManager::StartMatch() {\n ...\n}",
"category": "game-core",
"size": 312,
"doc": null
}
If the function belongs to Unity or a third-party SDK, the response includes a doc field:
{
"address": 28000000,
"name": "UnityEngine.MonoBehaviour::Update",
"category": "unity-sdk",
"doc": {
"source": "unity_engine",
"url": "https://docs.unity3d.com/2021.3/...",
"cached": {
"short_description": "Called every frame if enabled.",
"behavior_type": "lifecycle"
}
}
}
Text search
GET /api/functions/search/regex?pattern=Matchmaking&binary_id={id}
Searches function names and reconstructed source by regex pattern.
Code search
GET /api/functions/search/semantic?q=IAP+purchase+handler&binary_id={id}&limit=20
Returns functions ranked by similarity to the query. See Code Search for tips.
Response:
[
{
"address": "0x1AD291C",
"name": "PurchaseManager$$OnPurchaseComplete",
"similarity": 0.87,
"source_snippet": "..."
}
]
Get callers / callees
GET /api/functions/{address}/xrefs # who calls this function
GET /api/functions/{address}/callees # functions this one calls
Useful for tracing data flow — follow a method up to its entry points or down to its dependencies.
Full context
GET /api/functions/{address}/context
Returns everything in one call: reconstructed source + callers + callees + annotations + prior reconstructions.
List all functions (paginated)
POST /api/query
Content-Type: application/json
{
"source": "functions",
"where": [
{"field": "binary_id", "op": "eq", "value": "{binary_id}"},
{"field": "category", "op": "eq", "value": "game-core"}
],
"sort": "-size",
"limit": 50,
"offset": 0
}
Filter by category: game-core, unity-sdk, firebase, admob, untagged.
Get binary_id
The binary_id is returned in the job response:
GET /api/saas/jobs/{job_id}
{
"id": "...",
"status": "completed",
"binary_id": "47ca6be1-a877-4081-b9d4-1a001f5ae5ad",
"binary_name": "Tile Pyramid 1.0.13"
}