Being an indie and professional game developer, I mostly use assembly for 'constructional hacking'
Scenario: GameServer.exe loads Server.dll, Game.exe loads Client.dll and UI.dll
I have the source to the dll's, but not the .exe, so I RE the .exe, hook functions, patch stuff, etc.
That's how it started, anyway.
I found myself addicted to learning, and began experimenting with hooking, hacking, exploiting (Shellcode etc), and it's great @_@
I wish I was better at assembly, I do appreciate it. It's all about the right tool for the job. Thank god I know about this little tool called Assembly n_n'