12.12.2013, 12:31
|
#16
|
MaNGOS Dev
Регистрация: 16.01.2011
Сообщений: 262
Сказал(а) спасибо: 57
Поблагодарили 73 раз(а) в 59 сообщениях
|
Цитата:
Сообщение от Konctantin
это что получается сюда они запихнули все обработчики?
Код:
char __thiscall sub_78D225(void *this, int a2, int a3, int a4)
{
int v4; // esi@1
int v5; // ebx@1
unsigned int v6; // edi@1
char result; // al@2
unsigned int v8; // eax@11
int v9; // ecx@12
unsigned int dwOpcode; // [sp+Ch] [bp-4h]@1
++dword_108D6D4;
v4 = (int)this;
CDataStore__GetInt32(a3, (int)&dwOpcode); // opcode
v5 = dwOpcode & 0x244;
v6 = dwOpcode;
if ( (dwOpcode & 0x244) == 4 )
{
result = sub_65261C(v4, v4, 0, a2, dwOpcode, a3);
}
else
{
if ( (dwOpcode & 0x276) == 80 )
{
result = sub_687488(v4, v4, 0, a2, dwOpcode, a3);
}
else
{
if ( (dwOpcode & 0x1240) == 512 )
{
result = sub_C68651(v4, 0, a2, dwOpcode, a3);
}
else
{
if ( (dwOpcode & 0x1244) == 580 )
{
result = sub_6880A4(v4, 0, a2, dwOpcode, a3);
}
else
{
if ( (dwOpcode & 0x252) == 64 )
{
result = sub_C4B8A2(v4, 0, a2, dwOpcode, a3);
}
else
{
(*(void (__thiscall **)(int, unsigned int))(*(_DWORD *)v4 + 68))(v4, dwOpcode);
v8 = v6 & 3 | ((v6 & 0x38 | ((v6 & 0x180 | (v6 >> 1) & 0x7E00) >> 1)) >> 1);
if ( v5 || (v9 = *(_DWORD *)(v4 + 4 * v8 + 1360)) == 0 )
result = (*(int (**)(void))(*(_DWORD *)a3 + 24))();
else
result = ((int (__cdecl *)(_DWORD, unsigned int, int, int))(v9
- ((v6 | (v6 << 16)) ^ 0x62A3A31D)))(
*(_DWORD *)(v4 + 4 * v8 + 9552),
v6,
a2,
a3);
}
}
}
}
}
return result;
}
|
да, это они, родимые
|
|
|