int __thiscall sub_667C10(int this, int a2)
{
int v2; // esi@1
int v3; // ebx@1
int v4; // edx@1
int v5; // ebp@1
int v6; // edx@1
int result; // eax@1
v2 = this;
*(_DWORD *)(this + 736) = 0;
v3 = CInPacket::Decode4(a2);
v5 = (unsigned __int8)CInPacket::Decode1(a2, v4);
*(_DWORD *)(v2 + 744) = (unsigned __int8)CInPacket::Decode1(a2, v6);
result = dword_1002560;
if ( dword_1002560 && v3 == *(_DWORD *)(dword_1002560 + 8280) && !(_WORD)v5 )
{
*(_DWORD *)(v2 + 736) = 1;
if ( dword_100B280 )
result = sub_67B910();
}
return result;
}