Second Winchester Confederate order of battle

The following Confederate States Army units and commanders fought in the Second Battle of Winchester. The Union order of battle is listed separately.
Confederate army.
Second Corps, Army of Northern Virginia
LTG Richard S. Ewell