Bug fix: Unmarshal big endian messages correctly

The endianness of the message was parsed correctly, but the
endianness was not passed to the unmarshal function, which
defaults to little-endian format. This caused big endian data
to be unmarshalled  incorrectly.