I delivered a talk at Rust Sydney about this exact topic last week:
https://reorchestrate.com/posts/your-binary-is-no-longer-saf...
I am able to translate multi-thousand line c functions - and reproduce bug-for-bug implementation
https://reorchestrate.com/posts/your-binary-is-no-longer-saf...
I am able to translate multi-thousand line c functions - and reproduce bug-for-bug implementation
I'm also doing this on an old Win32 DLL so the task is probably much easier than a lot of code bases.
It is written up in my link - please bear in mind it is really hard to find the right level to communicate this level of detail at - so I'm happy to answer questions.
I willing to bet that the decompiled output is gonna be more readable than the original source code.