Advertisement
Guest User

Untitled

a guest
Aug 6th, 2012
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.53 KB | None | 0 0
  1. PBYTE FindPatternEx(PBYTE startAddr, size_t length, PBYTE pattern, const char *mask) {
  2.     size_t patternLength=strlen(mask);
  3.     if (length < patternLength) return NULL;
  4.  
  5.     for (unsigned int j=0; j <= length; j++) {
  6.         size_t i;
  7.  
  8.         for (i=0; i<patternLength; i++) {
  9.             if ((startAddr[j+i] != pattern[i]) && (mask[i] == 'x'))
  10.                 break;
  11.         }
  12.  
  13.         if (i == patternLength)
  14.             return startAddr+j;;
  15.     }
  16.  
  17.     return NULL;
  18. }
  19.  
  20. PBYTE FindPattern(PBYTE pattern, const char *mask) {
  21.     return FindPatternEx((BYTE*)0x400000, 0x300000, pattern, mask);
  22. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement