removeEventListener('click', mainFunc);mainFunc и прочие вызывать только после отработки асинхронного кода.addEventListener() на этой кнопке, чтобы все последующие обработчики складывать в массив. И вызывать их из массива только после своего и mainFunc.