When you commit to rewriting existing software, you are committing to a waterfall process.
To succeed you need to move through the process one phase at a time.
First you need to determine the requirements. All of them. In excruciating detail.
Second, deliver the requirements and nothing else.
Resist the urge to improve anything except code quality. Don’t add new features. No customer facing improvements.
Burn down the requirements list for month after month until you finish.
Leaders who have delivered successful rewrites often describe the process as one of the greatest accomplishments in their career, but they never describe it as fun.