void __fastcall CmpFreeSectionList(PVOID P){
PVOID v1;
void *v2;
void *v3;
if( P )
{
v1 = P;
do
{
v2 = *(void **)v1;
if( *((_BYTE *)v1 + 24) )
{
v3 = (void *)*((_QWORD *)v1 + 1);
if( v3 )
ExFreePoolWithTag(v3, 0);
}
CmpFreeLineList(*((PVOID *)v1 + 2));
ExFreePoolWithTag(v1, 0);
v1 = v2;
}
while( v2 );
}
}