Add beef, bouillon cube, bay leaf, onion, 3-4 cloves garlic, and 2 cups water in a crock pot. Cover and cook on high for 6 hours.
Remove and reserve the onion. Shred or chop the beef.
Strain the liquid from the crock pot and reserve.
For chile puree: Rinse chiles, cover with water, boil, then steep until soft. Blend with 1 2/3 cup broth/water, 2 garlic cloves, reserved onion and strain the puree.
Reserve 1/3 cup chile puree for masa.
For meat filling: In a skillet, add oil and strained chile puree. Simmer for 3 minutes, add beef, and cook for another 3-5 minutes.
For masa: Mix corn flour, baking powder, and salt. Add lard/shortening and 1/3 cup chile puree. Gradually add 2-3 cups warm broth/water until the dough is like play dough.
Spread 3-4 Tbsp masa on a corn husk, add meat filling, and enclose the tamal.
In a steamer pot, add water, place a steamer plate and an upside-down bowl. Stack tamales around the bowl.
Cover tamales with corn husks, a cloth, and a lid. Boil, then reduce to medium heat. Cook for 1-1.5 hours.
Let tamales set for 20 minutes before serving. Makes about 30 tamales.