PFCB
NpFindPrefix(
IN  PUNICODE_STRING String,
IN  BOOLEAN CaseInsensitive,
OUT PUNICODE_STRING RemainingPart
);

Routine Description:

This routine searches the FCBs/DCBs of a volume and locates the
FCB/DCB with longest matching prefix for the given input string.  The
search is relative to the root of the volume.  So all names must start
with a "\".

Arguments:

String - Supplies the input string to search for

CaseInsensitive - Specifies if the search is to be done case sensitive
(FALSE) or insensitive (TRUE)

RemainingPart - Returns the string when the prefix no longer matches.
For example, if the input string is "\alpha\beta" only matches the
root directory then the remaining string is "alpha\beta".  If the
same string matches a DCB for "\alpha" then the remaining string is
"beta".

Return Value:

PFCB - Returns a pointer to either an FCB or a DCB whichever is the
longest matching prefix.