Skip to content

Make migration to newer PIN versions easier #2

@disasmwinnie

Description

@disasmwinnie

Basically address point 6 from the limitations section in the Readme:

6. The file code/analyzer/utils/pin_iclass.rb contains a mapping of PIN instructions, which varies throughout PIN-releases. At the moment it is partly created by "intelligent grep-ing" and partly by hand. Writing a hacky script to automate this task, would make porting to newer versions easier.

I see three ways to approach this:

  • Write a helper scripts which parses pins iclass file and re-maps the instruction numbers in pin_iclass.rb
  • Make the analyzer take a cmd argument to parse PINs corresponding header file.
  • parse the string mnemonics from the trace files.

The last one is not very efficient, which is why the number was implemented in the first place. The second is at the moment my favorite.

Also, as additional TODO: change readme to highlight that wrong PIN versions also break the analyzer. Atm, it's mentioned elsewhere in the doc.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions