Licson Lee says to Ow< [MSFW]
(int32_t)((*p & 0x80) << 24 | *p << 16 & 0x7fffff | *(p + 1) << 8 & 0xffff | *(p + 2) & 0xff);