KsepDbFreeDriverShims

VOID __fastcall KsepDbFreeDriverShims(CHAR *Buffer, UINT64 a2){
  CHAR *v3; 
  __int64 v4; 
  UNICODE_STRING *v5; 
  if( Buffer )
  {
    if( (_DWORD)a2 )
    {
      v3 = Buffer + 24;
      v4 = (unsigned int)a2;
      v5 = (UNICODE_STRING *)(Buffer + 16);
      do
      {
        if( *((_QWORD *)v3 + 2) )
          KsepStringFree(v5 + 1);
        if( *(_QWORD *)v3 )
          KsepStringFree(v5);
        if( *((_QWORD *)v3 + 4) )
          KsepStringFree(v5 + 2);
        v5 += 5;
        v3 += 80;
        --v4;
      }
      while( v4 );
    }
    KsepPoolFreePaged(Buffer);
  }
}

Referenced by:

KseDriverUnloadImage
KsepDbGetDriverShims
KsepDbGetDriverShimsInternal
KsepDbGetShimInfo
KsepGetShimsForDriver