ani-exploit.c - program to generate malicious ANI files bad.ani - a malicious ANI file ie-exploit.html - tell IE to load the malicious ANI file sample-exploit.ani - exploit vulnerable.c vulnerable.c - A vulnerable exe using LoadCursorFromFile() launcher.c - EXE injection example So to get your code to execute in a remote process you either put a DLL somewhere and create a remote thread to load it. Or you create some binary blob like a shellcode and run that. This approach basically creates the binary blob from it's own exe file, that way you can write your code in the usual way and link to any DLL's you like...