If anyone wants to use Cheat Engine for this, here's my tip. HP is float value, 100 default and seems to be +50 for each star in VIT, so 100 for default lesser succubus, 150 for defaul Imp, 250 for True Imp Lvl10 with three stars in VIT. Search while in combat. Twelve bytes before HP value is a pointer (for example 78 BC 65 19 = 1965BC78 ) that goes to memory segment with something like <.......P l a y e r _ H P _ N o w >, note it down. May also note down addresses for useful pointers nearby (in similar fashion : HP_Max - essential; Barrier_Count that pretty much can make your unit invincible since enemies don't break their own-like barriers (for example, text goes after Address 1965BA38); H_Strength that defines how much HP orgasm takes away (default for Les Suc 125); SP_Max if you lower it units may cast spells constantly. Probably in another memory region there are: Bound_Strength defines how long units grapple enemies (default Les Suc 125); HP/SP_Recovery regen (default SP regen value for Lesser Succubus 6, Imp 5.5 , Imp True 10).
So, for Les Succubuses I searched array like : 78 BC 65 19 XX XX XX XX 01 01 00 00 00 00 C8 42. 00 00 C8 42 is 100 as float I think. Constantly gave me 1 value per default Les Suc deployed, most of the time other values I wanted are clearly visible with Memory View > display float. In case values aren't near, I noted addresses that pointers before stat values should have , searched them (for example 1965BA38 for Barrier) and then address closest to HP value's address I found would be what I needed. It's Unity, so stuff changes per session, tho values for pointers that point to text stay same for single session.