Wrap the tofu in a kitchen towel and press it for 20 minutes. Soak the corn husks in a large bowl with hot water until you're ready to use them. Place something heavy on top to help keep them submerged.
Meanwhile, wipe the chilies clean and cut the stems off with scissors. Shake the seeds out and add the chilies to a large, heavy-bottom pot. Add the onions, garlic, salt, cumin, oregano, pepper, and 4 cups of broth. Bring this to a boil over medium-high heat, then reduce the heat to the low setting. Let this simmer for 20 minutes, loosely covered.
Use an immersion blender to pulse the chilies into a sauce. If you don't have one, you can remove the softened veggies with a slotted spoon and pulse them in a blender before adding them back to the pot.
Take out 1 cup of the chile sauce and set it aside to use in the masa later. Shred the tofu with a grater and add it to the pot. Cook this on medium-low for 20 minutes, stirring occasionally. Leave it uncovered so the sauce can cook down.
In a large bowl, stir together the dry masa, baking powder, oil, broth, cup of chile sauce, and salt. It should be a moist and fluffy texture.
Pat a husk dry and spread about 2-3 tablespoons of masa onto it in a thin layer. The spread should fill most of the lower square portion of the husk. Add around 1.5 tablespoons of tofu filling to the center. Fold one side over this, then the other. Fold the triangle end over it all and set it aside for now with the folded side down. Repeat these steps until all the tamales have been assembled.
Fill the bottom of a large pot with water. Place a steamer basket inside and then line it with a few corn husks. Arrange the tamales in an upright position with the openings facing upwards. Cover them with a clean kitchen towel and then a lid.
Steam them for about an hour. Add more water to the bottom of the pot every 10-15 minutes. The tamales are ready when they feel firm from the outside and one of them easily comes off the husk.