Advertisement
amgineyoc

Untitled

Mar 22nd, 2015
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.74 KB | None | 0 0
  1. //---------------------------------------------------------------------------
  2. bool bCompare(char *buf, char *signature, char *mask, std::size_t index)
  3. {
  4.     for(std::size_t i = 0; i < strlen(mask); i++)
  5.         if(*(mask + i) == '?')
  6.             continue;
  7.         else if(*(buf + (index + i)) != *(signature + i))
  8.             return false;
  9.     return true;
  10. }
  11. //---------------------------------------------------------------------------
  12. DWORD FindPattern(char *buf, std::size_t size, char *signature, char *mask)
  13. {
  14.     if(strlen(mask) <= 0 || size <= 0)
  15.         return 0;
  16.     for(std::size_t i = 0; i < size && i < (size - strlen(mask)); i++)
  17.         if(bCompare(buf, signature, mask, i))
  18.             return i;
  19.     return 0;
  20. }
  21. //---------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement