для начала ==True или ==False излишние проверки
потом есть функции any и all которыми можно заменить проверку if (End_a[0]==True ...
#End flags
End_a=
- все это можно заменить на словарь листов или совсем убрать этот список, а просто считать количество обработок, и сравнивать их с длиной списка.
Также можно заменить списки count_a...
И в целом кажется не нужен тут двойной цикл.
Вы бы лучше нормально задание написали, что за чем и почем надо сделать