답변:
Hex-Rays로 IDA Pro 를 사용할 수 있습니다 . 디버깅 정보로 컴파일하지 않으면 일반적으로 바이너리에서 좋은 C ++를 얻을 수 없습니다. 코드를 뒤집는 데 많은 수작업 을 할 준비를 하십시오.
바이너리를 제거하지 않았다면 IDA Pro가 작업 할 수있는 C와 유사한 코드를 생성 할 수 있기 때문에 희망이 있습니다. 일반적으로 적어도 몇 년 전에 사용했을 때는 매우 거칠다.
정보는 컴파일 과정에서 폐기됩니다. 디 컴파일러가 클래스와 모든 것을 가지고 논리적으로 동등한 코드를 생성 할 수 있다고하더라도 (아마도 불가능할 것임), 자체 문서화 부분은 최적화 된 릴리스 코드에서 사라집니다. 변수 이름, 루틴 이름, 클래스 이름 없음-주소 만 있습니다.
예, 그러나 그들 중 누구도 노력할만한 가치가있는 충분한 코드를 생성하지 못할 것입니다. 이전 앱을 처음부터 다시 작성하는 것보다 내부에 어셈블러 블록이있는 디 컴파일 된 소스를 읽는 데 더 많은 시간을 할애 할 것입니다.
원본 코드가 얼마나 크고 잘 작성되었는지에 따라 좋아하는 언어 (여전히 C ++ 일 수 있음)로 다시 시작하고 마지막 버전에서 저지른 실수로부터 학습하는 것이 좋습니다. 누군가 버리기 위해 쓰는 것에 대해 한 번 말하지 않았습니까?
nb 분명히 이것이 거대한 제품이라면 시간의 가치가 없을 수도 있습니다.
objdump
Linux 용