abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:22 | IT novinky

    Mikrokontroléry RP2350A a RP2350B jsou již volně v prodeji. Představeny byly v srpnu loňského roku společně s Raspberry Pi Pico 2.

    Ladislav Hagara | Komentářů: 0
    včera 20:33 | Nová verze Ladislav Hagara | Komentářů: 4
    včera 16:11 | Komunita

    Od 6. do 19. dubna proběhne volba vedoucího projektu Debian (DPL, Wikipedie) na další funkční období. Kandidují Gianfranco Costamagna, Julian Andres Klode, Andreas Tille a Sruthi Chandran.

    Ladislav Hagara | Komentářů: 4
    včera 01:55 | Pozvánky

    Korespondenční seminář z programování (KSP) pražského Matfyzu pořádá i letos jarní soustředění pro začátečníky. Zváni jsou všichni středoškoláci a starší základoškoláci, kteří se chtějí naučit programovat, lépe uvažovat o informatických úlohách a poznat nové podobně smýšlející kamarády. Úplným začátečníkům bude určen kurz základů programování a kurz základních algoritmických dovedností, pokročilejším nabídneme různorodé

    … více »
    Vladimir Sklenár | Komentářů: 0
    16.3. 17:33 | Zajímavý článek

    Joe Brockmeier z Linux Weekly News vyzkoušel různé forky webového prohlížeče Mozilla Firefox: především GNU IceCat, Floorp, LibreWolf a Zen. V článku shrnuje, v čem se liší od výchozí konfigurace Firefoxu, co mají za vlastní funkcionalitu, jak a kým jsou udržované atd.

    Fluttershy, yay! | Komentářů: 9
    15.3. 19:22 | Nová verze

    Byl vydán Debian 12.10, tj. desátá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    15.3. 18:22 | Nová verze

    Byla vydána nová verze 4.5 svobodného notačního programu MuseScore (Wikipedie). Představení novinek v oznámení v diskusním fóru a také na YouTube.

    Ladislav Hagara | Komentářů: 0
    15.3. 17:00 | Nová verze

    Byla vydána nová verze 8.6.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 0
    15.3. 04:44 | Komunita

    O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2025. Na programu je celá řada zajímavých přednášek a workshopů. Vstup je zdarma. Přednášky lze sledovat i online na YouTube.

    Ladislav Hagara | Komentářů: 1
    14.3. 22:11 | Nová verze

    Byla vydána nová verze 2.49.0 distribuovaného systému správy verzí Git. Přispělo 89 vývojářů, z toho 24 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Jaké je vaše preferované prostředí?
     (27%)
     (1%)
     (1%)
     (1%)
     (1%)
     (2%)
     (65%)
     (2%)
    Celkem 153 hlasů
     Komentářů: 5, poslední 13.3. 11:45
    Rozcestník

    Dotaz: c dekompiler

    5.10.2010 14:29 ubka7617
    c dekompiler
    Přečteno: 713×

    Ahojte,

    prebral som po byvalom kolegovi projekt s programami v c pod linuxom. Problem je v tom ze mam iba skompilovane verzia a potrebujem tie programy zmenit. Je neaky sposob na dekompilovanie c programov ? K zdrojakom uz nie je mozne sa dostat.

    dik


    Řešení dotazu:


    Odpovědi

    Bilbo avatar 5.10.2010 15:57 Bilbo | skóre: 29
    Rozbalit Rozbalit vše Re: c dekompiler
    V posdtatě není. Binárku lze poměrně přímočaře (pokud tam není nějaká obfuskace, nebo podobné věci) převést do assembleru, někde jsem viděl i projekty, co se snaží ty bloky assembleru analyzovat a sestavovat z toho kusy C kódu (např. z několika instrukcí na odčítání hodnoty v registru, porovnání s něčím a podmíněným skokem vyrobí for cyklus), ale vznikne něco, co má k původnímu zdrojáku dost daleko.

    I ve chvíli, kdy z toho něco vyleze, tak dostat ten dekompilát aspoň do stavu kdy to jde znovu zkompilovat a vyleze z toho něco co funguje stejně jako původní binárka je silně netriviální a někdy může být jednodušší to prostě napsat znovu.

    Co se nezachová jsou názvy proměnných, funkcí atd ... (i když pokud binárka není striplá, tak by mohla být nějaká šance), ani žádné komentáře.
    Big brother is not watching you anymore. Big Brother is telling you how to live...
    5.10.2010 16:25 Peter H. | skóre: 18
    Rozbalit Rozbalit vše Re: c dekompiler
    Ďalším problémom sú optimalizácie, ktoré prebiehajú počas kompilácie. Takže aj keby sa ten assembler dal nejako rozumne dekompilovať, výsledkom by bol zrejme vcelku hardcore kód.
    Have you tried turning it off and on again?
    5.10.2010 16:43 Sten
    Rozbalit Rozbalit vše Re: c dekompiler
    To záleží na tom, jak moc optimalizovaný ten kód je a jestli má v sobě debug symboly. Pokud nemá žádné oprimalizace a používá debug symboly, nemělo by být složité z toho dostat kód v C (případně lze použít GDB a pomocí něho procházet, co to vlastně dělá). Pokud je však optimalizovaný, často to dekompilovat nepůjde (dekompilátor bude zmatený, že debug symboly neodpovídají tomu, na co narazil), a pokud to nemá debugovací symboly, tak už se ani nedá pořádně zjistit, co patří k sobě, takže tam zbude asi jenom ten assembler
    6.10.2010 15:32 ubka7617
    Rozbalit Rozbalit vše Re: c dekompiler
    Dik, tie programy su dost zlozite a ja sa len ucim programovat, takze mi to trosku potrva
    6.10.2010 19:00 jekub
    Rozbalit Rozbalit vše Re: c dekompiler
    mam iba skompilovane verzia a potrebujem tie programy zmenit

    tie programy su dost zlozite a ja sa len ucim programovat

    tak tomu říkám známka panku.

    ps: jste si jistý, že to co máte k dispozici, nejsou zdrojáky?
    rADOn avatar 6.10.2010 19:41 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: c dekompiler
    ps: jste si jistý, že to co máte k dispozici, nejsou zdrojáky?
    :-D

    zrucny (a lehce sileny) asemblerista by asi dokazal pomoci gdbcka vyrobit jednoduchy patch primo do binarky, ale to je stezi uloha pro nekoho kdo se uci programovat
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    7.10.2010 13:12 zmije
    Rozbalit Rozbalit vše Re: c dekompiler
    A potom někdo píše sáho dlouhý článek o tom, jak je zbytečné se v 21. století učit assembler a jak jde všechno udělat v C.
    7.10.2010 16:42 Jary | skóre: 30 | blog: Jary má blog | Dům
    Rozbalit Rozbalit vše Re: c dekompiler
    A k čemu je patch binárky, kromě crackingu? Pokud mám zdrojový kód, tak bude jistě mnohem levnější vytvořit nějakou novou verzi, než patchovat binárku.
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky. GitHub
    rADOn avatar 7.10.2010 17:57 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: c dekompiler
    A k čemu je patch binárky, kromě crackingu?…
    K tomu, aby lidi kteri odpovidaji do poradny aniz by se obtezovali precist na co vlastne odpovidaji vypadali jako blbci.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    7.10.2010 20:10 Jary | skóre: 30 | blog: Jary má blog | Dům
    Rozbalit Rozbalit vše Re: c dekompiler
    Au. Hmm, stejnak mám vyšší skore, než ty (:
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky. GitHub
    8.10.2010 12:47 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: c dekompiler
    Kuš
    In Ada the typical infinite loop would normally be terminated by detonation.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.