That could be a number of things. Since safe mode still uses the registry, it could be a corrupt registry file, it could be a bad driver, it could be missing files.
If you have the Windows CD, I would suggest reinstalling Windows to the same location where Windows is currently at. That should fix the problem and you should not lose anything.
If you don't have the Windows CD, I would suggest trying to restore a backup of an older registry. If that does not work, you may have to take it to the computer shop. They will probably reformat your harddrive and install a new Windows (which you will probably have to pay for).