AsiAddDataToSchema

INT64 __fastcall AsiAddDataToSchema(INT64 a1, UINT64 *a2, const VOID *a3, UINT64 a4){
  unsigned int v4; 
  unsigned int v7; 
  __int64 v8; 
  unsigned int v9; 
  v4 = a4;
  v7 = (a4 + 3) & 0xFFFFFFFC;
  if( v7 < (unsigned int)a4 )
    return 3221225621i64;
  v8 = *(unsigned int *)a2;
  v9 = v8 + v7;
  if( (unsigned int)v8 + v7 < (unsigned int)v8 )
    return 3221225621i64;
  if( v9 > *(_DWORD *)(a1 + 20) )
    return 2147483653i64;
  memmove((UINT8 *)(v8 + a1), (UINT8 *)a3, (unsigned int)a4);
  if( v4 < v7 )
    memset(a1 + (unsigned int)v8 + v4, 0i64);
  *(_DWORD *)a2 = v9;
  return 0i64;
}

Referenced by:

ApiSetComposeSchema