ExpReplaceListEntry

_QWORD *__fastcall ExpReplaceListEntry(_QWORD *a1, _QWORD *a2){
  _QWORD *v2; 
  _QWORD *result; 

  v2 = (_QWORD *)*a1;
  if( *a1 )
  {
    if( v2 == a1 )
    {
      a2[1] = a2;
      *a2 = a2;
    }
    else
    {
      result = (_QWORD *)a1[1];
      *a2 = v2;
      a2[1] = result;
      v2[1] = a2;
      *result = a2;
    }
  }
  else
  {
    *a2 = 0i64;
    a2[1] = 0i64;
  }
  *a1 = 0i64;
  a1[1] = 0i64;
  return result;
}

Referenced by:

ExpRotateFastOwnerEntrySublistHead