Again title says it all I feel like I am total noob but I have tried everything I know.

Code:
GetBonePosition(enemy, 10, HeadPos);
CalcAngle(me->GetEyePosition(), HeadPos, AimAngles, me);

Code:
bool GetBonePosition(CBaseEntity *pEnt, int bone, Vector& hitbox)
{
	matrix3x4_t MatrixArray[128];

	if (!pEnt->SetupBones(&MatrixArray[0], 128, 0x00000100, Interfaces.Globals->curtime))
		return false;
	matrix3x4_t HitboxMatrix = MatrixArray[bone];
	hitbox = Vector(HitboxMatrix[0][3], HitboxMatrix[1][3], HitboxMatrix[2][3]);
	return true;
}

Code:
	bool SetupBones(matrix3x4_t *pBoneToWorldOut, int nMaxBones, int boneMask, float currentTime)
	{
		void *pRenderable = (void*)(this + 0x4);
		typedef bool(__thiscall* OriginalFn)(PVOID, matrix3x4_t*, int, int, float);
		return ((OriginalFn)VMT.GetFunction(pRenderable, 16))(pRenderable, pBoneToWorldOut, nMaxBones, boneMask, currentTime);
	}
Thanks in advance