There’s a good converter I just came across at https://www.mathsisfun.com/binary-decimal-hexadecimal-converter.html
Click the “Binary Type” drop-down, and select “signed 32-bit”, then in the decimal field you can enter the original -2146885628 which yields hexadecimal 80092004.
The “oddness” here is in how computer systems represent a negative integer, known as Two’s Complement. https://en.wikipedia.org/wiki/Two’s_complement
Internally, the return value is simply 32-bits of binary values. It’s only when you try to represent it as a “signed integer” in the return code, that the highest bit is considered a “negative sign” bit and it’s displayed as a negative value. When representing a negative value, basically every bit is flipped, add a “1”, and display the result with a negative sign. But to display the (actual) result in hex, we have to “not do” all of that.
10000000000010010010000000000100 = 0x80092004
But, when displayed as a “signed integer” type, that leading 1 indicates a negative value, the two’s complement operation is performed on it, and you get a -2146885628 displayed.