Đầu tiên, tệp nhị phân có thể mở! Đừng sợ nó, bạn chỉ cần những công cụ phù hợp! Là dữ liệu nhị phân, một trình soạn thảo văn bản không phải là công cụ phù hợp; một công cụ thích hợp có thể là trình chỉnh sửa hex hoặc trình chỉnh sửa nâng cao như emacs hoặc công cụ thay vì chỉ đơn giản là "xuất" byte trong biểu diễn "hex" của chúng và cho phép bạn một mình giải thích dữ liệu, biết định dạng cụ thể đó và " diễn giải "dữ liệu đúng, ở một mức nào đó (vdGIMP diễn giải một tệp PNG dưới dạng hình ảnh và hiển thị nó, một trình phân tích PNG sẽ "phân tích" dữ liệu bên trong phần PNG hiển thị cho bạn biết các cờ trong một số byte nhất định, ... vv).
Trong trường hợp của bạn, câu trả lời chung là tệp đối tượng chứa mã được biên dịch (và dữ liệu) của bạn, cộng với tất cả thông tin bổ sung cần thiết bởi trình liên kết và cuối cùng là hơn.
Làm thế nào các thông tin này được "sắp xếp" và trong một số trường hợp trong những gì "dần dần" bao gồm, nó phụ thuộc vào định dạng đối tượng cụ thể. Một số liên kết wikipedia liệt kê một số khả năng là this, this, this, this ...
Mỗi công cụ này có thể phân tích nội dung; ví dụ. readelf
đối với ELF, objdump
đối với một số định dạng (hãy thử objdump -i
) tùy thuộc vào cách được biên dịch.
Có một loạt các công cụ * nix để tìm kiếm bên trong một tệp đối tượng: bắt đầu bằng nm, http://unixhelp.ed.ac.uk/CGI/man-cgi?nm –