private ObjectDef method457()
	{
		int i = -1;
		try {
			if(anInt1601 != -1)
			{
				VarBit varBit = VarBit.cache[anInt1601];
				int k = varBit.anInt648;
				int l = varBit.anInt649;
				int i1 = varBit.anInt650;
				int j1 = client.anIntArray1232[i1 - l];
				i = clientInstance.variousSettings[k] >> l & j1;
			} else
			if(anInt1602 != -1)
				i = clientInstance.variousSettings[anInt1602];
			if(i < 0 || i >= anIntArray1600.length || anIntArray1600[i] == -1)
				return null;
			else
				return ObjectDef.forID(anIntArray1600[i]);
		} catch (Exception _ex) {
			return null;
		}
	}