gdb 에서 헬프만 해도 명령어 쫙~~~~~~~~~~~~~ 나옴
간단히 그냥 gdb 바이너리이름 치고 set disassembly-flavor intel 하면 어셈블리가 at&t 에서 intel 형식으로 바뀜
바이너리 심볼이 살아있으면 예를들면 disas main 이라고 치면 main 코드가 쫙 나옴
없으면 objdump 같은걸로 main 주소 알아내서 x/nxi 주소 라고 치면 알아서 그 주소부터 코드변환시켜서 보여줌
b 주소 라고 하면 bp 걸수있고 심볼만있으면 걍 b main 이나 b *(main+n) 식으로 해도 됨
r하면 실행. 띄우고 뒤에 인자도 넣을수있음. 멈추면 ni(VS의 F10 같은 거) 하고 si(VS의 F11 같은거) 로 한줄씩 실행할수있고 그냥 n 이나 s 만 치면 일단 쭉 나감(보통 함수콜 끝나는 정도까지). c 누르면 멈춘곳부터 다시 그냥 진행함
info reg 하면 레지스터 정보 볼 수 있음
cl (bp번호) 하면 브포삭제 가능
대충 퍼뜩 지금 생각나는건 이정도밖에 없군
gdb 에서 헬프만 해도 명령어 쫙~~~~~~~~~~~~~ 나옴
간단히 그냥 gdb 바이너리이름 치고 set disassembly-flavor intel 하면 어셈블리가 at&t 에서 intel 형식으로 바뀜
바이너리 심볼이 살아있으면 예를들면 disas main 이라고 치면 main 코드가 쫙 나옴
없으면 objdump 같은걸로 main 주소 알아내서 x/nxi 주소 라고 치면 알아서 그 주소부터 코드변환시켜서 보여줌
b 주소 라고 하면 bp 걸수있고 심볼만있으면 걍 b main 이나 b *(main+n) 식으로 해도 됨
r하면 실행. 띄우고 뒤에 인자도 넣을수있음. 멈추면 ni(VS의 F10 같은 거) 하고 si(VS의 F11 같은거) 로 한줄씩 실행할수있고 그냥 n 이나 s 만 치면 일단 쭉 나감(보통 함수콜 끝나는 정도까지). c 누르면 멈춘곳부터 다시 그냥 진행함
info reg 하면 레지스터 정보 볼 수 있음
cl (bp번호) 하면 브포삭제 가능
대충 퍼뜩 지금 생각나는건 이정도밖에 없군