B
B
Blyyya2016-09-25 01:39:17
C++ / C#
Blyyya, 2016-09-25 01:39:17

How to remove/disable obfuscation to rebuild .dll?

For a long time there was a desire, like any gamer, to create his own game, and then Unity3D turned up. I tried to make rides, but due to study, work and occasional parties, I abandoned the game for more than 3 years.
Naturally, after a certain period of time, I deleted both Unity itself and the source codes, but deleting the game, something stopped ... Sometimes I launched and rolled into my bibiks (square and rectangular) =D
Now I have free time and decided to dig a little, maybe I'll get involved and become a super-igrodelem =D
And then NATEBE! How to make a game if you yourself deleted the program with the source code (for some reason, I didn’t think of it before). And now I'm suffering ... there are ready-made .dll, .exe, etc.
I've been suffering for three days now. I got the source code with the .dll with the help of dotpeek and everything seems to be cool, the sources have appeared, but ... I'm trying to add new values ​​​​and rebuild the .dll and then NATEBE! I start to collect and errors appear in the code, all sorts of characters (such as $, \a004c and all sorts of others). I googled and realized that this is code obfuscation and because of it it does not rebuild the .dll again.
How to remove / disable this obfuscation so that you can rebuild the .dll ?
You can, of course, copy-paste the entire .dll, all the files, and eventually rebuild, but since there are a lot of them, I AM IN SCRAP to spend so much time =D
Yes, and my knowledge of C # is weak in order to clearly determine what I need and should be copied and what can be passed.

Answer the question

In order to leave comments, you need to log in

2 answer(s)
D
Daniil Basmanov, 2016-09-26
@Blyyya

This is not obfuscation, these are decompiler limitations, it cannot restore the names of all variables without additional information. Unity does not obfuscate binaries in any way. You can try another decompiler, sometimes the results are better.
In any case, if you used physics for cars, then your three-year-old code is most likely out of date, a lot has been shoveled in the unit in three years. It will be easier for you to take cars from standard unit examples.

R
Rou1997, 2016-09-25
@Rou1997

Getting source code from binary is reverse engineering, it takes a lot of time and requires a lot of experience, on more or less complex algorithms it always requires dealing with assembler and not just decompilers that cannot produce completely correct code even if you use all the decompilers that are on light and assemble code from the best "pieces" from each of them, all the same, some "pieces" have to be checked with assembler, up to fairly close "relations" with it, it is much easier to write from scratch, in extreme cases, decompile only individual parts.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question