To change the name of a DLL to load, you would normally just change the import table. The rest is just guess work, without knowing the specifics of the binaries in question.
I believe it's important to realize that not all 'crackers' know what exactly they're doing, maybe you're analyzing into something that shouldn't be analyzed at all.
That said, you might want to remove relocation for a few reasons:
- in executables, relocation data is useless (and can be safely removed) unless they are ASLR-aware.
- possibly the crack added code which would require relocation entries. Instead of adding these, the cracker simply removed the reloc table altogether (possibly also disabling ASLR in the header)
- if the file was packed, you normally run a PE rebuilder on the unpacked file to remove useless section data on disk and clean up the PE header. By default most of these tools strip reloc data from the PE.