Tôi đang viết một tập lệnh cho trình tách rời IDA Pro bằng Python bằng cách sử dụng plugin idapython
. Sử dụng điều này, tôi có thể điền vào những khoảng trống trong đó phân tích tự động của IDA giảm ngắn.C++ tên mangling bằng tay
Một khu vực đã khiến tôi bối rối là đặt tên các vị trí/chức năng với (để muốn có cụm từ tốt hơn) "tên đẹp". Một ví dụ về những gì tôi có ý nghĩa được minh họa dưới đây:
idapython
và IDA Pro bản thân chỉ cho phép tôi để nhập tên hàm C-ish cơ bản. Nếu tôi nhập các ký hiệu không được phép (ví dụ: toán tử phân giải phạm vi), chúng sẽ được thay thế bằng dấu gạch dưới. Tuy nhiên, nếu tôi nhập tên bị cắt xén bằng tay (ví dụ: __ZN9IOService15powerChangeDoneEm
), IDA Pro sẽ làm mới điều này cho tôi.
Do đó câu hỏi của tôi: làm thế nào tôi có thể tạo tên bị cắt xén để đi qua idapython
? Có thư viện mang tên có sẵn không? Là một trong Python? Là hy vọng duy nhất của tôi để xé các chức năng mangling ra khỏi g++
và làm việc xung quanh đó?
Tôi hy vọng có một số tài liệu xung quanh mà bạn có thể xem xét ... chúc bạn may mắn! –