RtlShiftLeftBitMap
NTSTATUS __stdcall RtlShiftLeftBitMap(PRTL_BITMAP BitMapHeader, ULONG NumberToClear){
NTSTATUS result;
unsigned int SizeOfBitMap;
int v4;
if( NumberToClear )
{
SizeOfBitMap = BitMapHeader->SizeOfBitMap;
v4 = 0;
if( NumberToClear < BitMapHeader->SizeOfBitMap )
{
RtlExtractBitMap(
(INT64)BitMapHeader,
(UINT64 *)&BitMapHeader->SizeOfBitMap,
NumberToClear,
SizeOfBitMap - NumberToClear);
return(unsigned int)RtlClearBits(BitMapHeader, BitMapHeader->SizeOfBitMap - NumberToClear, NumberToClear);
}
else
{
LOBYTE(v4) = (SizeOfBitMap & 0x1F) != 0;
return(unsigned int)memset(BitMapHeader->Buffer, 0i64, 4 * ((SizeOfBitMap >> 5) + v4));
}
}
return result;
}Referenced by:
No references.