Does this also mean that it is possible to insert completely new objects by moving the very first objects to the end of file and thereby making room available for new declarations?
Theoretically, yes. But this will require a lot of work with rebuilding headers/lists. And there is something about that list order I don't yet understand: there are some references (?) in function header to objectlist, which could be order-sensitive. The problem is, I don't know a thing about first 0x28 bytes of function header, so I can't tell for sure.
UPD Didn't read correctly: no, you can't make space in objectlist by moving first object, as first object after objectlist is importtlist, so you have to move importlist too. This is doable, but will require a lot of work (see above).
Edited by wghost81, 08 December 2013 - 12:19 PM.