MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / GetHighLevelILSSAVariables

Method GetHighLevelILSSAVariables

function.cpp:1497–1518  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1495
1496
1497set<SSAVariable> Function::GetHighLevelILSSAVariables()
1498{
1499 Ref<HighLevelILFunction> hlil = this->GetHighLevelIL();
1500 if (!hlil)
1501 return {};
1502
1503 size_t count;
1504 BNVariable* vars = BNGetHighLevelILVariables(hlil->GetObject(), &count);
1505
1506 set<SSAVariable> result;
1507 for (size_t i = 0; i < count; ++i)
1508 {
1509 size_t versionCount;
1510 size_t* versions = BNGetHighLevelILVariableSSAVersions(hlil->GetObject(), &vars[i], &versionCount);
1511 for (size_t j = 0; j < versionCount; ++j)
1512 result.emplace(vars[i], versions[j]);
1513 BNFreeILInstructionList(versions);
1514 }
1515
1516 BNFreeVariableList(vars);
1517 return result;
1518}
1519
1520
1521set<Variable> Function::GetMediumLevelILVariablesIfAvailable()

Callers

nothing calls this directly

Calls 2

GetHighLevelILMethod · 0.95
GetObjectMethod · 0.45

Tested by

no test coverage detected