On 01/06/2016 02:15 PM, Shuai Wang
wrote:
Hello Bill,
Thank you for your information. I am wondering, besides the
machine learning-based method, is there any other mechanism
implemented in DynInst?Â
For example, would you consider address 0x80102030 is a
function entry point if a call instruction (call 0x80102030)
can be found in the disassembled output?
Naturally; we use the entry point of the binary, available function
symbols, and internal control flow to generate function entry points
as well. The machine learning approach is used to cover the gaps in
the binary where authoritative information is missing.
(And, of course, we also use the calls made by functions that are
discovered through gap parsing to find further function entry
points. The rationale here is derived from Nate Rosenblum's earlier
gap parsing work; the intuition is that if code reachable from a
likely (probability P) FEP F includes "call G", G is a FEP with
probability Q >= P.)
--bw
|
|