I use a laptop for a lot of my development, and for some reason, from time to time, NumLock keeps turning on when I log on. I discovered this behavior is controlled by a registry key, and I'm assuming some program tweaks it on install. Here's the info:

Key: InitialKeyboardIndicators
All Users: HKEY_USERS\.DEFAULT\Control Panel\Keyboard
Current User: HKEY_CURRENT_USER\Control Panel\Keyboard

The possible settings are as follows:

Off: 0
On: 2

The All Users key sets the NumLock state for the login screen.