Unknown Code Retrieval

I am working on a project which involves the use of an Arduino Mega. Someone has previously written a lengthy piece of code which mostly performs the correct necessary functions but requires several modifications. Unfortunately, I do not have access to this code and cannot contact the individual who wrote the code in the first place. Is it possible to download the HEX file on the Arduino and then convert said HEX file back into Arduino code? If so, how? This would be much preferred compared to writing the whole bulk of code myself and would save a lot of time.

it is easier to learn C++ and write any needed sketches as wasting time while decoding machine code to something readable

Not easily, no.

Yes

No, There are tools that attempt to convert assemby to C, not sure how good they are; and it will never be the Arduino "language".