@420noscope510 mm ok just to rule it out lets make sure windows is not making the problem and did you find much dust in the PC? If you did then blow it out again and get every fan etc make sure it is as clean as can be with power pulled from PC.
EDIT.... Sorry just thinking on your issue as well as just to be safe make sure all this is up to date on your PC go to the source for the last update never ever from the game...
Latest version of DirectX see this page
http://www.microsoft.com/en-ca/download/confirmation.aspx?id=35
Reinstall Microsoft C++ For my game PC's I install both x64 and x86 as it does not hurt the PC
NOTE>>> you need to select the x64 or the x86 file depending on what architecture your computer has. To find this out, Click Start, right click on "Computer" and select "Properties". Under system type is should say "32-Bit Operating System" or "64-bit Operating System". If 32-bit operating system, download the x86 file, and if 64-bit download the x64 file.
http://www.microsoft.com/en-US/download/details.aspx?id=40784
Update your Microsoft .NET framework.
http://www.microsoft.com/en-ca/download/details.aspx?id=30653
Adobe Flash Player update
http://get.adobe.com/flashplayer/
Go to Punk Buster site
http://www.punkbuster.com/index.php?page=pbsetup.php
1- Download PB then extract files to your desktop.
2- Open Punk Buster folder.
3- Click on the PB setup and it will open.
4-Add your BF4 game to punk buster its at the top of Punk Buster.
5-Then update punk buster again at the top of Punk Buster.
Reboot PC
Test your windows for errors as a clean windows install does not always make a stable windows.
NOTE: Running SFC does not guarantee the crash will not happen, but it will ensure it is not because a windows Dll or file is corrupted in windows.
This works in all windows O/S vista Win7, Win8 , Win8.1 and win 10 windows system file checker :] Copy and past this to note pad and put it on your desktop. As open programs can give you errors when you run this.
sfc /scannow, ever hear of it if not your going to love this, it will inspect all the important windows files as well as the windows DLL files. If windows system file checker finds any issues with the windows files and windows DLL files it will replace them / try to fix them.
-For win7 go to start/ bottom left screen / windows globe .. Right click in search type cmd and right click cmd pick run as administrator.
-For win 8.1 right mouse click start bottom left of screen / windows box and pick command prompt administrator.
1-Open administrator command prompt and close web pages and programs like Origin, Steam etc.
2-Type or copy and paste in sfc /scannow and hit enter, This takes 5 min to 15 min SSD vs HD
3-This can go one of a few ways ..... no errors ... it fixed some errors ..... could not fix all errors...... does not finish checking and errors out ....... and the last one could not fix errors at all :/
4-After its done REBOOT PC and Run sfc /scannow again even if you had no errors the first time or had errors, could not fix run sfc /scannow again and when its done a second time reboot. You need to do this a and get no errors 2 x in a row ...
5-So if you ran it 2x and no errors your safe you can stop. If you had errors first time but not the second then run sfc /scannow again and when its done reboot. You need to get could not find any errors 2 x to be safe. If it still finds errors try and run it a few more times until it finds no errors 2x AND ALWAYS REBOOT BETWEEN RUNNING sfc /scannow
6-If you get a message indicating that it can not be repaired and you ran sfc /scannow more then 3x in a row on win vista or 7 mm you need a format or try repair win 7 :/ But after format or repair and all updates are done run sfc /scannow to make sure your windows is stable same deal 2x error free reboot between them.