It does not have an ICM; ignition control module.
First step - have the stored fault codes or check engine light scanned - for free - at any local auto parts store; Advance Auto, Auto Zone, NAPA. Then, post a reply as 'add answer' with the specific code for more assistance.
This aspect is important; there may be a fault code stored in the OBD memory which may not be displayed as a check engine light.
Do not skip this important first step - there are literally hundreds of possible fault codes. Avoid wasting/ throwing money at the problem.
Possible Causes of Engine Hesitation or Stumble:
Dirty fuel injectors (cleaning the injectors often fixes this)
Dirty air filter (change filter)
Dirty / clogged fuel filter (change filter)
Bad MAP (manifold absolute pressure) sensor
Bad TPS (throttle position) sensor
Bad or dirty MAF (mass airflow) sensor
Low fuel pressure (leaky fuel pressure regulator or weak fuel pump)
Vacuum leaks (intake manifold, vacuum hoses, throttle body, EGR valve)
Bad gasoline (fuel contaminated with water or too much alcohol)
Sometimes, what feels like a hesitation is actually ignition misfire rather than lean misfire. The causes of ignition misfire may include:
Dirty or worn spark plugs
Bad plug wires
Weak ignition coil
Wet plug wires