Why would the NSA deliberately weaken crypto algorithms ?
Sure, that makes spying easier but it is also quite dangerous. Because if the vulnerability is found anyone can access the encrypted data, including the enemies.
Think about it : the NSA releases a "recommended" crypto package. Obviously, US companies will be much more likely to use it than, say, the Chinese. If this package happens to be weak and that the Chinese find out, US companies will be the most affected. Also, to spy on its own citizen, it is more effective to use the legal system than relying on broken algorithms.
To use broken algorithms as a weapon, I think it is much more effective to distribute it undercover as something that is "definitely not from the USA".