RtlpRemoveUCRBlock

VOID __stdcall RtlpRemoveUCRBlock(_HEAP_UCR_DESCRIPTOR *UCRBlock){
  __int64 v1; 
  VOID *v2; 
  _QWORD *v3; 
  _QWORD *v4; 
  VOID **v5; 
  VOID *v6; 
  VOID *Param2; 
  _QWORD *v8; 
  VOID **v9; 
  VOID *v10; 
  _QWORD *v11; 

  v2 = (VOID *)(v1 + 16);
  v3 = (_QWORD *)v1;
  v4 = *(_QWORD **)(v1 + 16);
  v5 = *(VOID ***)(v1 + 24);
  v6 = (VOID *)v4[1];
  Param2 = *v5;
  if( *v5 == v6 && Param2 == v2 )
  {
    *v5 = v4;
    v4[1] = v5;
  }
  else
  {
    RtlpLogHeapFailure(heap_failure_freelists_corruption, 0i64, v2, v6, Param2);
  }
  if( v3[5] )
  {
    v8 = (_QWORD *)*v3;
    v9 = (VOID **)v3[1];
    v10 = *(VOID **)(*v3 + 8i64);
    v11 = *v9;
    if( *v9 == v10 && v11 == v3 )
    {
      *v9 = v8;
      v8[1] = v9;
    }
    else
    {
      RtlpLogHeapFailure(heap_failure_freelists_corruption, 0i64, v3, v10, v11);
    }
  }
}

Referenced by:

RtlpDeCommitFreeBlock
RtlpFindAndCommitPages