티스토리 뷰

리버싱

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;
}

'리버싱' 카테고리의 다른 글

리버싱 엔지니어링 바이블-0311  (0) 2022.03.11
리버싱 엔지니어링 바이블 - 0307  (0) 2022.03.07
Taint Analysis란  (0) 2022.02.14
PinTool Opcode binary 출력 구현  (0) 2022.02.14
Opcode에 대해  (0) 2022.02.07
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함