I'm reversing a firmware, that comes in one big binary chunk(.bin
file).
After some reversing, I could identify that the big bin has two segments - text and data. Now I want to split the original segment into those two segments.
For example:
Original file segments:
Name start end
ROM 0x0 0x21bd
One big segment containing all the code and data.
Desired result segments:
Name start end
.text 0x0 0x11bd
.data 0xc000 0xd000
I want to split the one big segment into two nonadjusted segments, like this.
the .data
section should hold the bytes from the original ROM
section. In other words, 0x11bd - 0x21bd from the original ROM
section should be copied to
0xc000 - 0xd000 of the new data section.
Any ideas how can I achieve this?