NormBuffer__Append

UINT8 __stdcall NormBuffer__Append(_RTL_NORM_BUFFER *pNormBuffer, INT64 cAppend){
  unsigned __int64 v2; 
  _WORD *v3; 
  unsigned int v4; 
  _WORD *v5; 

  v2 = *((_QWORD *)pNormBuffer + 4);
  if( (int)cAppend < 0x10000 )
  {
    v5 = (_WORD *)*((_QWORD *)pNormBuffer + 5);
  }
  else
  {
    v3 = (_WORD *)*((_QWORD *)pNormBuffer + 5);
    if( (unsigned __int64)v3 >= v2 )
      return 0;
    v4 = cAppend - 0x10000;
    LODWORD(cAppend) = ((int)cAppend - 0x10000) >> 31;
    *v3 = __SPAIR64__(cAppend, v4) / 1024 - 10240;
    v5 = v3 + 1;
    *((_QWORD *)pNormBuffer + 5) = v3 + 1;
    LOWORD(cAppend) = __SPAIR64__(cAppend, v4) % 1024 - 9216;
  }
  if( (unsigned __int64)v5 >= v2 )
    return 0;
  *v5 = cAppend;
  *((_QWORD *)pNormBuffer + 5) = v5 + 1;
  return 1;
}

Referenced by:

NormBuffer__AppendEx
Normalization__Normalize
Normalization__NormalizeCharacter