| 228 | |
| 229 | template<class T> |
| 230 | static bool FunctionHasPrefix(uptr address, const T &pattern) { |
| 231 | u8* function = (u8*)address - sizeof(pattern); |
| 232 | for (size_t i = 0; i < sizeof(pattern); ++i) |
| 233 | if (function[i] != pattern[i]) |
| 234 | return false; |
| 235 | return true; |
| 236 | } |
| 237 | |
| 238 | static bool FunctionHasPadding(uptr address, uptr size) { |
| 239 | if (IsMemoryPadding(address - size, size)) |
no outgoing calls
no test coverage detected