The one point that has me thinking is the missing leading underscore to
the _beginthreadex function:
https://msdn.microsoft.com/en-us/library/kdzttdcb.aspx
It should not link? Weird. Also, that function is used to create threads
along with an initialization of the CRT for said thread. So, the virus is C.
Creating code on Windows that does not use the CRT can make use of
CreateThread. Strange that a virus is not written in assembly language.