The rule for gaining muscle is to consume 1 – 2 grams of protein per pound of bodyweight, so in your case you should be eating at least 150 g of protein per day. It sounds daunting at first, but if you have a whole egg with a couple of egg whites with your breakfast, chicken with lunch, almonds or similar nut for snacks, beef for dinner, you start to get close. with a fast metabolism you could probably get away with increasing your protein intake while not adding too much fat.
As for the smoking, I’m no doctor, but I would think that smoking will hinder the uptake of oxygen into the blood have a negative impact on muscle metabolism meaning less than optimum gains. In other words, if you’re serious about putting on muscle then smoking isn’t helping you any.