When you get a P300 code, it means the misfire is random and is moving around from cylinder to cylinder. More than likely the problem would be something related to the engine's air/fuel mixture, such as a major vacuum leak, leaky EGR valve or lower than normal fuel pressure (weak pump or faulty pressure regulator).