final int MAX_HEADER_LENGTH = 24;
final ByteBuffer view = BufferUtils.duplicate(buffer);
final int capacity = view.capacity();
boolean status = true;
for (int i = 0; i < count && view.position() + MAX_HEADER_LENGTH < capacity; i++) {
view.mark();
long length = headerReader.readLength(view);
int p = view.position() + (int) length;
if (pattern.match(view) == false) {