Stránka 1 z 1

C++ dekompilátor

Napsal: pát 13. úno 2009, 10:52
od marek16
Existuje dekompilátor .exe souborů, ale aby to nepřevedl do assembleru, ale co zpátky do C++?:)
Je to vůbec technicky možné? (nepřišel jsem na nic, co by tomu bránilo) Zajímá mě to čistě teoreticky:)

Re: C++ dekompilátor

Napsal: pát 13. úno 2009, 11:25
od Trek
To nikoliv.

Nektery programy zobrazej v disasembleru dodatkovy informace, ale jen za urcitejch okolnosti, stejne ale skoncis na tom, ze musis ladit primo v assebleru.

Zalezi co chces udelat, jestli chces neco vocrackovat, tak to neni takovej problem, vetsinou staci zmena jedny intrukce (napr. skoku).

Java de napriklad komfortne dekompilovat tak, ze to vypada temer jako puvodni zdrojak, to jsem pouzil nekolikrat, kdyz jsem ztratil zdrojaky, ale C++ je jina kavicka.

Re: C++ dekompilátor

Napsal: pát 13. úno 2009, 11:54
od marek16
Trek: a víš proč? jako jestli tam je nějaká principielní překážka, nebo to je jen tak složitý že se s tím nikdo nechtěl dělat?:)

Re: C++ dekompilátor

Napsal: pát 13. úno 2009, 12:15
od Trek
V C++ delam dost, ale moc o procesu kompilace moc nespekuluju :-)

Ono hlavne v prubehu prekladu se objektova struktura zplosti na ruzny tabulky (napr. virtualnich metod), vetsinou zmizej vsechny nazvy metod a promennych.

Nebo si vem takovej h soubor, ten se inkluduje do cpp a ruzne preprocesuje, to pro kazdy cpp, jak bys to chtel rekonstruovat zpet do jednoho h souboru.

A pak ruzny optimalizace pri prekladu.

Vetsinou se tohle resi tak, ze se naucis jak kompilator kompiluje jednotlivy konstrukty (funkce, ...) a pak to vidis primo v tom jazyku symbolickych intrukci.

Uz jsem si i neco vocrackoval, ale proste jsem to resil primo v asembleru.

PS: doporucuji udelat prijimaci zkousky na CVUT FEL, katedra informatiky, dozvis se tam vse potrebne v predmetech zabyvajicich se prekladem, absolvujes tez predmety zaobirajici se strojove orientovanymi jazyky

Re: C++ dekompilátor

Napsal: pát 13. úno 2009, 12:30
od marek16
trek: To by bylo trošku kontraproduktivní když chodím na FIT VUT :-D
Formální jazyky a překladače máme myslím příští rok.. už jsem se dokonce díval na slajdy, ale vypadá to ohavně složitě, a mě ta kompilace taky dvakrát nezajímá, spíš bych bral projít si kódy pár aplikací v C++..

Re: C++ dekompilátor

Napsal: sob 14. úno 2009, 15:01
od Trek
Když chceš zdrojáky, tak si je stáhni ne?

Nebo si doufám nechtěl říci, že chceš studovat zdrojové kódy komerčních programů, to je totiž v rozporu s licenčními podmínkami. To dělají jen oškliví programátoři a takový ty přece nejsi.

Re: C++ dekompilátor

Napsal: sob 14. úno 2009, 15:04
od marek16
Myslím že jsem někde četl, že reverzní inženýrství pro studijní účely je legální :)

Ale ani můj morální filtr na tom neshledává nic závadného - zlepším svoje znalosti, a nikomu nezpůsobím škodu :)

Re: C++ dekompilátor

Napsal: sob 14. úno 2009, 15:07
od Trek
Spíš než dělání blbostí bych ti doporučil, pokud jsi v 3 ročníku a výše, hledat si práci na částečný úvazek (či z práce domova). Budeš mít praxi.

Pravdou je, že jsi v Brně, tak nevím jak to tam vypadá. V Praze stačí jenom vystavit někam svoje CV pokud něco v IT umíš a personalisti tě rozhtrhaj na kaši jak se o tebe budou prát. Měl jsem s tím loni dost problém, musel jsem si vypnout telefon, protože ráno když jsem ho zapl 30 nepřijatejch hovorů a asi milion SMS a mailů, docela opruz (to každej den po dobu několika tejdnů).

Re: C++ dekompilátor

Napsal: ned 15. úno 2009, 14:54
od marek16
ne, jsem v prváku :-D zatím umím jen C, učím se C++, pak je v plánu C# a sehnání brigády:)
každopádně dík za rady a pobavení :-D

Re: C++ dekompilátor

Napsal: ned 15. úno 2009, 16:09
od Trek
Nevím, co máte v prvních ročnících za předměty, ale je dobré se na začátku koncentrovat na školu.
Až tak 3 - 4 ročník je vhodnej na brigády. Já měl na začátku rozvrh každej den od rána do večera, nedovedu si představit, že bych u toho něco jinýho dělal.