Basically, a simple explanation of "EUD" is that there is a range of memory that the game Starcraft uses. Originally we used overflows in the SetDeaths trigger (for players that didn't exist in game (example: 2342823), that caused it to try to write data for player "2342823" which ended up being something else entirely, such as the graphic a unit used, or the current upgrades it had.
However, it came possible that this could be exploited for malicious purposes, such as running a 3rd party executable, so Blizzard patched actions.
However since conditions dont actually write data (they just read from the memory) we can still use the overflow and read extended data

Basically, use Uberation's trigger manager and insert a EUD condition that way. It has a nifty calculator in it that calculates the correct deaths condition easily, and we can detect stuff such as what a user as typed, if a mouse enters in a location or not, if a user presses the arrow key, etc.
EDIT: Here is the list of what we can do with EUDS currently, kudos to Kusion

QUOTE
Saved Screen Position (F2) [Single-Player Only]
Saved Screen Position (F3) [Single-Player Only]
Saved Screen Position (F4) [Single-Player Only]
Zerg Supply Max
Terran Supply Max
Protoss Supply Max
Zerg Supply Used
Terran Supply Used
Protoss Supply Used
Technology Research
Technology Research BW
Upgrades
Upgrades BW
Location Position
Cheat Enabled [Single-Player Only]
Game Speed
Player Name
Text Display
Unit HP
Unit Destination
Unit Target Location
Unit Shields
Unit Queue(1/2)
Unit Queue(3/4)
Unit Queue 5 and Energy
Build Time
Unit Status
Rally Point
Energy Left[Broodling/Hallucination], Defense Matrix HP
Status Pack 1
Status Pack 2
Status Pack 3
Status Pack 4
Pauses Left
Game Latency Setting
Screen X Position [Single-Player Only]
Screen Y Position [Single-Player Only]
HUD Display
WAV(Sound) is Playing
WAV(Sound) has Stopped