Note: TakeDamage and GiveDamage won't match up perfectly until lag compensation is done on the shooting. And even then there will be some differences (due to lag).
One thing you can do with GiveDamage is detect when other players report that they have damaged a certain player, and that player hasn't taken any health loss. You can flag those players as suspicious.
You can also set all players to the same team (so they don't take damage from other players) and process all health loss from other players manually.
You might have a server where players get a wanted level if they attack Cop players (or some specific class). In that case you might trust GiveDamage over TakeDamage.
There should be a lot you can do with it. You just have to keep in mind the levels of trust between clients. In most cases it's better to trust the client who is being damaged to report their health/armour (TakeDamage). SA-MP normally does this. GiveDamage provides some extra information which may be useful when you require a different level of trust.