Hi all,
I'm trying to analyze the structure of imghdr of DI-624S
After studying the source tarball of DI-624S, I've found the image tools are exist under tools direcory.

I've download all the released firmwares (5 files) of DI-624S from D-LINK's website.
I also have used Madedit tring to split kernel+romfs and imghdr.
I also applied splitted firmware with tools/packbin to regenerate the firmware image.
And I've convinced the analyzed firmware image should be correct.
But I have no jtag device so I'm afraid to reflash the repacked firmware to DI-624S.
I've found that webpage upgrade of DI-624S only compatible with IE browser.

The following is the imghdr structure and the log of using packbin to repack the "kernel+romfs" into firmware.

./packbin kenel_romfs_header.bix k 0 test.bix

(0x00-0x03) 0x60420011    =fake (also magic number?, or should be (-0x04)- (-0x01)?)
(0x04-0x07) 0x59A0E842    =magic number (from packbin)
(0x08-0x0B) 0x8DC90100    (?)
(0x0C-0x0D) 0x07D7        =2007
(0x0E-0x13) 0x061D0C0D0300=06/29 12:13:03,00 (mo,da,hr,mm,sec)
(0x14-0x17) 0x0036BA1c    =3586588  (size of Kernel+romfs+hdrof(kernel+romfs))
(0x18-0x1B) 0x00004038    =0x00004038
                          0x40=body checksum
                          0x38=Header checksum
(0x1C-0x1F) 0x41374B5A    =A7KZ
(0x20-0x23) 0x80470000    =(magic number?)
(0x24-0x27) 0x000F49F4    =1001972 (kernel length?)
(0x28-0x2B) 0x00000001    =(type?)
(0x2C-0x2F) 0x00277000    =2584576 (romfs length)

If some is interested of it I could mail the repacked firmware to you then U could try do upload it. ;p