Avatar
dave.bubenik
Člen
Avatar
dave.bubenik:

Čau,
mám takovej dotaz. Mám pár dll souborů, které jsou napsané zřejmně v C# jako plugin/rozšíření hry napsané v Unity3D.
Už jsem se snažil o dekompilaci těchto dll souborů různými programy, ale vždycky se mi kód ukázal s divnými proměnnými a bez textového obsahu. Proměnné chápu, že se změní asi kvůli optimalizaci, ale co textový obsah? Kde je?
Chci se proto zeptat, jestli neexistuje něco co dll dekompiluje úplně, nebo alespoň použitelně, aby se to dalo zase zakompilovat ve Visual Studiu

 
Odpovědět 17.2.2015 14:18
Avatar
Odpovídá na dave.bubenik
Ondřej Štorc:

Sice nevím jestli ti to pomůže, ale můžeš zkusit se kouknout na videa od Luboš Běhounek (Satik) http://www.itnetwork.cz/…ani-programu

Nahoru Odpovědět  +1 17.2.2015 14:24
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Avatar
Luboš Běhounek (Satik):

Může to být prohnané nějaký obfuskátorem.

https://www.jetbrains.com/decompiler/ Jsi už zkoušel?
S ním mi to obvykle celkem fungovalo.

Nahoru Odpovědět  +1 17.2.2015 14:41
:)
Avatar
dave.bubenik
Člen
Avatar
Odpovídá na Luboš Běhounek (Satik)
dave.bubenik:

Jo ten jsem zkoušel, ukázalo to sice kód, ale proměnný byli jen char s '#' na začátku a nikde jsem nemohl najít text co by tam měl být. (Vypisuje se do konzole když program běží)

 
Nahoru Odpovědět 17.2.2015 14:45
Avatar
Luboš Běhounek (Satik):

Můžou tam ty stringy i mít nějak zašifrované :)

Nahoru Odpovědět  +1 17.2.2015 14:47
:)
Avatar
dave.bubenik
Člen
Avatar
dave.bubenik:

Ach jo :D No ty promenny chapu, ale nechapu ty textovy stringy! Proste jako by tam nebyli :D
Neda se ta šifrace nejak obejit? Popripade se zeptam takhle: Jak zašifrovat tak aby nesli vycist udaje jako tady?

 
Nahoru Odpovědět 17.2.2015 17:13
Avatar
dave.bubenik
Člen
Avatar
dave.bubenik:

Tak se mi to povedlo nějak dekompilovat a vložit do VS.
Luboš Běhounek (Satik) měl jsi pravdu. Opravdu to bylo prohnané nějakým obfuskátorem.

TeĎ se mi ale vyskytl problém. VS mi píše chybu, kvůli které nelze dll znovu zakompilovat. Vůbec nic jsem v programu neupravoval.

string ValueType.ToS­tring()
{
return string.Format("{0}{1}{­2}{3}{4}{5}{6}{7}{8}{9}{­10}{11}{12}{13}{14}{15}", new object[] { Convert.ToChar(this­.string0.Length), this.string0, Convert.ToChar(this­.string1.Length), this.string1, Convert.ToChar(this­.string2.Length), this.string2, Convert.ToChar(this­.string3.Length), this.string3, Convert.ToChar(this­.string4.Length), this.string4, Convert.ToChar(this­.string6.Length), this.string6, Convert.ToChar(this­.string7.Length), this.string7, Convert.ToChar(this­.string5.Length), this.string5 });
}

Vrací to chybu: *Error 1 'ValueType' in explicit interface declaration is not an interface C:\Users\Bate­rie\Desktop\Rus­tExtendedCode\Rus­tExtended\Loa­der.cs 423 20 RustExtended
*

Vůbec nevím v čem chyba spočívá. Poradíte prosím?

 
Nahoru Odpovědět 18.2.2015 8:07
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.