| 87 | } |
| 88 | |
| 89 | static int memcmp_mask(const uint8_t *buffer1, const uint8_t *buffer2, const uint8_t *mask2, size_t count) |
| 90 | { |
| 91 | while (count--) { |
| 92 | if (*mask2) { |
| 93 | if (*buffer1 != *buffer2) |
| 94 | return -1; |
| 95 | } |
| 96 | |
| 97 | buffer1++, buffer2++, mask2++; |
| 98 | } |
| 99 | return 0; |
| 100 | } |
| 101 | |
| 102 | // Find signature pattern in memory |
| 103 | __attribute__((target("avx2"))) uint8_t* SigSearch::FindAVX2(uint8_t* data, size_t size, const Signature &sig, bool hasWildcards) |