absolutely...there's no way for a program to magically work out if a number is big or little endian. So the script somehow has to know that and use the appropriate kind of pack/unpack. or you could even just swap half the string around using string manipulation, before coalescing to decimal. either way it has to be known which way the endian goes. if these numbers are some well known numbers (say serial numbers for a computer product) then they usually already have some logic encoding to them, which could give you a clue. e.g. leftmost decimal 4 digits a valid vendor code in a known list, etc.