usbsnoop, a Windows based USB sniffing utility, can be handy for monitoring traffic to and from a USB based device. This in turn means that it can be used to capture the firmware when it is uploaded to the device from the host system.