From an old source,
Note: Address and offset are up to date.
void Give_HP(int player, int hp)
{
DWORD _eax= *(DWORD*)0xE41C80;
if(!_eax)
return;
_eax= *(DWORD*)(_eax + 0x20);
if(!_eax)
return;
_eax= *(DWORD*)(_eax + 0x680);
if(!_eax)
return;
*(BYTE*)(player + _eax + 0x537C) = hp;
}