RawCleanupVcb
VOID __stdcall RawCleanupVcb(_VCB *Vcb){
void *v2;
__int64 v3;
v2 = (void *)*((_QWORD *)Vcb + 24);
if( v2 )
{
ExFreePoolWithTag(v2, 0);
*((_QWORD *)Vcb + 24) = 0i64;
}
else if( (Vcb[26] & 8) != 0 )
{
ExFreePoolWithTag(*((PVOID *)Vcb + 23), 0);
*((_QWORD *)Vcb + 23) = 0i64;
}
if( (Vcb[26] & 0x10) != 0 )
FsRtlTeardownPerStreamContexts((_FSRTL_ADVANCED_FCB_HEADER *)Vcb);
v3 = *((_QWORD *)Vcb + 27);
if( v3 )
ExFreeCacheAwareRundownProtection(v3);
*((_QWORD *)Vcb + 27) = 0i64;
}Referenced by:
RawCheckForDeleteVolume
RawInitiateDeleteVolume
RawMountVolume