XmGeneralBitOffset

INT64 __fastcall XmGeneralBitOffset(INT64 a1, INT64 a2, VOID *a3){
  __int64 v4; 
  INT64 *OffsetAddress; 
  int v6; 
  int v7; 
  INT64 v9; 
  LODWORD(v9) = 0;
  *(_DWORD *)(a1 + 120) = *(_BYTE *)(a1 + 138) != 0 ? 3 : 1;
  XmEvaluateAddressSpecifier(a1, &v9, a3);
  XmSetSourceValue(a1, (UINT16 *)(a1 + 4 * ((unsigned int)v9 + 6i64)));
  if( !*(_BYTE *)(a1 + 142) )
  {
    v6 = 536870908;
    if( *(_DWORD *)(a1 + 120) != 3 )
      v6 = 536870910;
    OffsetAddress = XmGetOffsetAddress(v4, *(_DWORD *)(a1 + 128) + ((*(_DWORD *)(a1 + 108) >> 3) & (unsigned int)v6));
  }
  v7 = 31;
  if( *(_DWORD *)(a1 + 120) != 3 )
    v7 = 15;
  *(_DWORD *)(a1 + 108) &= v7;
  XmSetDestinationValue(a1, (UINT16 *)OffsetAddress);
  return 1i64;
}

Referenced by:

No references.