The program I'm currently reversing is missing a section that contains a bunch of interesting strings. I see the memory addresses of where these should be, instead of the reference to the string.
The strings are in the binary file analyzed by IDA, but since there isn't any segment for them, IDA ignored them.
I tried manually creating the segment, which works (it now references unknown variables instead of memory addreses), but I can't figure out how to load the proper data into that section. (The entire section is filed with db ? ;
)
I've tried using File > Load File > Load additional binary file
(with file offset & size), as well as reloading the current file. I've also dumped the part of the file I'm interested in another file and tried to load that one as an additional binary as well.
The only results I can get from that is:
- IDA creates a new segment at the end of all other segments (Not following the
Loading Segment
address I filled in. - If I uncheck
Create Segments
, IDA does nothing. (Even though I specified the address of my manually created segment inLoading Segment
The segment I manually created has the following settings:
.
Here's the form I filled while loading the binary file that contains the data I want.
.
I've never done this before, so it's likely I'm doing something wrong, but I can't figure it out.
db ?
in IDA means the data is not initialised (usually present in.bss
section). Why did you give that segment execute permission if it only contains strings? I would also uncheck Code segment field when loading the additional binary file.