Показать сообщение отдельно
Старый 25.07.2010, 15:20   #27
TOM_RUS
MaNGOS Dev
 
Регистрация: 11.03.2010
Сообщений: 468
Сказал(а) спасибо: 0
Поблагодарили 514 раз(а) в 163 сообщениях
TOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небес
По умолчанию

Код:
int __thiscall sub_982340(UnkFloats *this, int *a2)
{
  long double v2; // st5@1
  long double v4; // st6@1 wtf is v4?
  int result; // eax@2

  this->float0 = 0.0;
  this->float4 = 0.0;
  this->float8 = 0.0;
  this->floatC = 0.0;
  this->float0 = (double)(signed int)(*(_QWORD *)a2 >> 42) * 0.000000476837158203125;
  this->float4 = (double)((signed int)(*(_QWORD *)a2 << 22 >> 32) >> 11) * 0.00000095367431640625;
  this->float8 = (double)(signed int)(*(_QWORD *)a2 << 43 >> 43) * v4; // * 0.00000095367431640625 ?
  v2 = this->float8 * this->float8 + this->float0 * this->float0 + this->float4 * this->float4;
  if ( fabs(v2 - 1.0) >= v4 ) // ???
  {
      result = (int)this;
      this->floatC = sqrt(1.0 - v2);
  }
  else
  {
      result = (int)this;
      this->floatC = 0.0;
  }
  return result;
}

Последний раз редактировалось TOM_RUS; 25.07.2010 в 16:16.
TOM_RUS вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Konctantin (25.07.2010)