>>45
clearly has no idea how reverse engineers work nowadays.
>Modern programs are megabytes of instructions.
Yes, some can be quite bloated, but do you expect most of the code to be relevant to your interest? Why would you reverse the same libc/crt/etc library, that's what library identification plugins are for. A modern reverser can understand the gist of what's going on from a quick look, you don't need to understand every instruction in your application to find out how it works, if you need specific details of a function you don't understand you analyze it.
>Debugging something long is generally very time-consuming and requiring to memorize alot of code which is used in a single EXE.
Use an interactive disassembler, why would you memorize everything when you can have the dissasembler do that for you.
There are also helper decompilers for lazy asses which can't read asm fluenty.
>Debugging programs through single-step would takes years.
Untrue, it's possible to simulate the execution of an application through singlestep in a rather fast timeframe, but there is rarely the need to do that, why would you execute the same code all over again, you just need to document the parts which you understand, give meaningful names to functions, understand the structures involved and meaning of local and global variables, there are many automated and user-aided tools which accomplish this.
Reversing both large and small applications can be done fairly quickly depending on your experience and understanding of the target archicture, languages used, standard libraries and other helper libs, native/system APIs.
Also, when it comes to malware, which is what your reversing goal would be in this case, most are fairly small/easy to understand, some may be protected using bloated protections, but you can just remove those in your VM, and recover the actual app's code, which can them be easily analyzed.
tl;dl: Learn more about reversing before assuming it impossible, plenty of people can do it without much trouble if they have the required knowledge, and it doesn't take much time. It would take a few months of work to fully decompile an medium-sized application whose source you want to recover, but it would be easier to just rewrite it while only reversing the parts you don't understand,