Bacteria are responsible. When bacteria attack a dead fish, the chemical trimethylamine is gradually released from the flesh. These molecules, along with other substances created by the decomposition process, waft through the air, filling your nasal passages with odors reeking of ammonia. Sulfur, too, is generated by the deteriorating flesh. A fresh, just-caught ocean fish does not have the "fishy" odor. It smells like a fresh sea breeze.
Not to be confused with the fishy scent is the equally nauseating oil-and-kerosene odor that often emanates from fish that swam in bustling harbors.
** Asian Recipes