So I've been trying to find out where is combat flag stored (because I'm really scared of warden, so no inprocess tricks) by reversing UnitAffectingCombat and found this:
0x006A1180 - GetObjectByKeyword - This is just combination of here already listed GetGUIDByKeyword and GetObjectByGUID
And the flag:
Code:
uint result = reader.ReadUInt32( ( IntPtr )( unitBase + 0xd0 ) );
result = reader.ReadUInt32( ( IntPtr )( result + 0xd0 ) );
return ( result | 0x80000 ) == result;
dunno what other flags stored here means tho, gonna find out later