0

IDEs are one of several types of tools that allow to run and convert code to binary files, making them ready to run on specific systems. Now some software are intentionally hardcoded and/or made difficult to brake through in order to keep the source code safe from modification from the part of software users. Is it possible to retrieve the source code from these programs in any specified language using artificial intelligence or, perhaps, some sort of complex algorithm that could generate readable functions from the binary data? I know technology has already gotten so far as to be able to do amazing things such as decrypt files. If what I describe is impossible, do you think it might be in the near future? Has anyone started developing such tools for benevolent use, such as for spyware detection? Have advances in such technologies been made for malicious purposes?

P.S. I have no intention to brake through code and infringe copyrights. This question is asked by pure curiosity.

Thank you.

GPWR
  • 186
  • 3
  • 11
  • Yes, it is called `reverse engineering` or `reverse code engineering`. Research it. Of course, you will never get the exact same code again. For example, if you use a variable called `sum` in the original code, when it gets compiled to binary it just uses a memory location, so the original variable name is lost when you decompile it. The new variable name might just be `z` and no longer have a meaningful name. This is just a simple example of what might change, there are more complicated constructs that would change as well. – kojow7 Jun 13 '21 at 21:52
  • 1
    @kojow7 Thank you. Your response is elaborate, useful and clear, as usual. – GPWR Jun 14 '21 at 00:09

0 Answers0