示例#1
0
//--------------------------------------------------------------------------
VOID check_unpacked_cb(VOID * ip, const CONTEXT *ctxt, THREADID tid)
{
  ADDRINT ea = (ADDRINT)ip;
  addrdeq_t::iterator it = std::find(write_address.begin(), write_address.end(), ea);
  if ( it != write_address.end() )
    write_address.erase(it);
  fprintf(stderr, "Layer unpacked: %p\n", ip);
  PIN_ApplicationBreakpoint(ctxt, tid, false, "Layer unpacked!");
}
示例#2
0
//--------------------------------------------------------------------------
inline ADDRINT was_writen(ADDRINT ea)
{
  return std::find(write_address.begin(), write_address.end(), ea) != write_address.end();
}