I have a Balong flash image that has a bunch of crap before the partition table. (It's from the Huawei H112-370 router). I've added an optional 2nd command line option to specify a starting address to read from, and it's only used if specified. Very simple, very clean.