Agregar en Pet.cpp despues del BYTE CustomPets = CharSet[15] >> 1;
	if ((CharSet[11] & 4) == 4)
	{
		lpObj->PetSlot = 7864;
		BYTE v17 = CharSet[15] & 3; // era 3
		if (CharSet[16] & 1)
			v17 = 4;
		if (CustomPets == 122)
			v17 = 8;
		else if (CustomPets == 123)
			v17 = 16;
		else if (CustomPets == 124)
			v17 = 32;
		lpObj->PetExcellent = v17;
		switch (v17)
		{
		case 1:
			if (Mode)
				sub_5013B0(384, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, Mode, 0);
			else
				sub_501700(384, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, 0, 0);
			break;
		case 2:
			if (Mode)
				sub_5013B0(386, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, Mode, 0);
			else
				sub_501700(386, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, 0, 0);
			break;
		case 4:
			if (Mode)
				sub_5013B0(387, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, Mode, 0);
			else
				sub_501700(387, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, 0, 0);
			break;
		case 8:
			if (Mode)
				sub_5013B0(0x1833, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, Mode, 0);
			else
				sub_501700(0x1833, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, 0, 0);
			break;
		case 16:
			if (Mode)
				sub_5013B0(0x1834, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, Mode, 0);
			else
				sub_501700(0x1834, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, 0, 0);
			break;
		case 32:
			if (Mode)
				sub_5013B0(0x1835, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, Mode, 0);
			else
				sub_501700(0x1835, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, 0, 0);
			break;
		default:
			if (Mode)
				sub_5013B0(385, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, Mode, 0);
			else
				sub_501700(385, (int)&lpObj->m_Model + 252, (int)&lpObj->m_Model, 0, 0);
			break;
		}
	}
//#endif
}
  
Para los que no usan PetCustom y solo quieren los Fenrir, usen esta funcion en Item.cpp
void PreviewCharSet(int ObjectIndex, BYTE * CharSet, lpViewObj Object, int Mode)
{
	pPreviewCharSet(ObjectIndex, CharSet, Object, Mode);
	lpViewObj lpObj;
	if( Object == 0 )
	{
		lpObj = &*(lpViewObj)pGetPreviewStruct(pPreviewThis(), ObjectIndex);
	}
	else
	{
		lpObj = Object;
	}
	BYTE CustomWings = CharSet[16] >> 2;
	if( CustomWings > 0 )
	{
		lpObj->WingsSlot = ITEM2(12, 180) + (CustomWings - 1);
	}
	if ((CharSet[11] & 4) == 4)
	{
		lpObj->PetSlot = 7864;
		if ((CharSet[15] & 3) == 1 && (CharSet[16] & 3) == 0)
		{
			if (Mode)
				pPetCall1(384, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, Mode, 0);
			else
				pPetCall2(384, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, 0, 0);
			lpObj->PetExcellent = 1;
		}
		else if ((CharSet[15] & 3) == 2 && (CharSet[16] & 3) == 0)
		{
			if (Mode)
				pPetCall1(386, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, Mode, 0);
			else
				pPetCall2(386, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, 0, 0);
			lpObj->PetExcellent = 2;
		}
		else if ((CharSet[15] & 3) == 3 && (CharSet[16] & 3) == 0)
		{
			if (Mode)
				pPetCall1(387, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, Mode, 0);
			else
				pPetCall2(387, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, 0, 0);
			lpObj->PetExcellent = 4;
		}
		else if ((CharSet[15] & 3) == 1 && (CharSet[16] & 3) == 1)
		{
			if (Mode)
				pPetCall1(PetWhiteTiger, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, Mode, 0);
			else
				pPetCall2(PetWhiteTiger, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, 0, 0);
			lpObj->PetExcellent = 8;
		}
		else if ((CharSet[15] & 3) == 2 && (CharSet[16] & 3) == 1)
		{
			if (Mode)
				pPetCall1(PetHullWolf, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, Mode, 0);
			else
				pPetCall2(PetHullWolf, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, 0, 0);
			lpObj->PetExcellent = 16;
		}
		else if ((CharSet[15] & 3) == 3 && (CharSet[16] & 3) == 1)
		{
			if (Mode)
				pPetCall1(PetBeast, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, Mode, 0);
			else
				pPetCall2(PetBeast, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, 0, 0);
			lpObj->PetExcellent = 32;
		}
		else
		{
			if (Mode)
				pPetCall1(385, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, Mode, 0);
			else
				pPetCall2(385, ((DWORD)&lpObj->m_Model) + 252, (DWORD)&lpObj->m_Model, 0, 0);
			lpObj->PetExcellent = 0;
		}
}
}