Skip to content

Add static analysis when no context is available #10

@ampotos

Description

@ampotos

For some accesses the context instruction does not provide any context. When it's the case for every access of a member the type stay the default one.

The data gatherer will not record more instructions, but dynStruct.py can do a bit of static analysis for member with a default type. The idea here is to check the isntructions and the context isntruction are really the same (if not it can be auto-modifying code and in that case stop the static analysis). If they are the same looking maximum X instructions before/after (depending if it is a read or a write access) to see if some context may be available and use it for recovering the type of the member.

The main issue here will be to follow the execution flow of the function (especially backward) maybe limiting the static analysis to the basic block containing the access is a good start.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions