리버싱
PinTool BBL 개수 출력
삼전동해커
2022. 2. 15. 16:10
#include "pin.H"
#include<fstream>
#include<iostream>
// FILE *trace;
UINT32 nbl = 0;
VOID printnbbl(UINT32 nb){
fprintf(trace,"%d",nb);
}
VOID Trace(TRACE trace,VOID *v){
nbl = TRACE_NumBbl(trace);
}
VOID Fini(INT32 code, VOID *v) {
printf("count = %ld\n",(long)nbl);
}
INT32 Usage(VOID) {
PIN_ERROR("This Pintool failed\n"
+ KNOB_BASE::StringKnobSummary() + "\n");
return -1;
}
int main(int argc, char *argv[]){
// trace = fopen("trace.out","w");
if(PIN_Init(argc,argv)){
return Usage();
}
PIN_InitSymbols();
TRACE_AddInstrumentFunction(Trace,0);
PIN_AddFiniFunction(Fini,0);
PIN_StartProgram();
return 0;
}