문제

I want to find memory addresses that a exe file uses. I have the exe file and I want to have a list of addresses that it uses.

This must be done statically and without running the executable itself. Can anybody help me please?

Also, if you know a dynamic way to do it please tell me.

도움이 되었습니까?

해결책

You must look into the exe header. There is a list of addresses that the loader must adapt relative to the base address when an executable is run. This is called a relocation table. When you look into the exe via a disassembler like IDA you can assume a load address or the exe can specify it.

Normally addresses are relative, so even if you find an address once, it's not be guaranteed that it will always be in that same place. If a program is written or compiled with position independent code, then it doesn't rely on any absolute address.

Just for disassembling you can look at tools like IDA or similar.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top