Advertisement
Guest User

ExtraWork.exe

a guest
Aug 31st, 2014
279
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.04 KB | None | 0 0
  1. #include <windows.h>
  2. #include <iostream>
  3.  
  4. using namespace std;
  5.  
  6. typedef bool (__fastcall *ExtraWorkProc)(void *);
  7.  
  8. enum GameType {
  9.   Diablo2 = 1,
  10.   Warcraft3 = 2,
  11.   Starcraft = 3,
  12.   WorldOfWarcraft = 4
  13. };
  14.  
  15. struct EXTRAWORK {
  16.   WORD GameType;
  17.   WORD Length;
  18.   char OutBuffer[1024];
  19. };
  20.  
  21. int main() {
  22.    HINSTANCE      hLib;
  23.    ExtraWorkProc   lpfnExtraWork;
  24.    BOOL         bReturn;
  25.    EXTRAWORK      ew;
  26.  
  27.    hLib = LoadLibrary("IX86ExtraWork.dll");
  28.  
  29.    bool success = false;
  30.    if (hLib) {
  31.       lpfnExtraWork = (ExtraWorkProc)GetProcAddress(hLib, "ExtraWork");
  32.  
  33.       if (lpfnExtraWork) {
  34.          bReturn = (*lpfnExtraWork)(&ew);
  35.  
  36.          cout << "ExtraWork returned " << (bReturn?"TRUE":"FALSE") << endl;
  37.          cout << "GameType: " << ew.GameType << "\t\t" << "Length: " << ew.Length << endl << endl;
  38.          cout << "Message: " << ew.OutBuffer << endl;
  39.  
  40.          success = true;
  41.       }
  42.       FreeLibrary(hLib);
  43.    }
  44.    if (!success)
  45.       cout << "Could not load " << "IX86ExtraWork.dll" << endl;
  46.  
  47.    return 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement