Best way to convert an unsigned int array to a signed decimal number

If you read the code that is what I did. All stored in an unsigned int array in big endian. Some solutions for int, hex, string, char conversions that I have found can be easily changed for either so i didn't want to rule out a conversion from the read in little endian. simpler code is better code.