Boil the corn in plenty of water until it's chewy, but pleasantly so, about 1 hour. Add salt late in the cooking process, about 30 to 45 minutes in.
When the corn is mostly ready, fry the onions in the lard or bacon fat over medium heat until transparent, and just a little brown on the edges. Add the garlic and cook another minute more.
Usually the water level in the boiling corn has reduced enough to be a nice soup consistency. You want it milky looking and covering the corn by about 1 inch. If there's too much water, drain some. If not enough, add some. Scrape the onions and garlic into this pot and continue to simmer.
Hand crush the peeled tomatoes into the pot. Add the tomato juice from the can if you'd like. Stir in the oregano. Let all this cook for 10 minutes, and add salt if needed.
Stir in the cilantro, and bring the soup to a rolling boil. Ladle it out very hot into bowls and add the grated cheese on top, for everyone to stir in. Serve with lime wedges and hot sauce on the side.