Forum elektroda.pl

Regulamin  | Punkty  | Dodaj...  | Ostatnie  | Szukaj  | Rejestracja  | Zaloguj

Ta strona używa cookie. Dowiedz się więcej o celu ich używania i zmianie ustawień cookie w przeglądarce.
Korzystając ze strony wyrażasz zgodę na używanie cookie, zgodnie z aktualnymi ustawieniami przeglądarki.

Dekompilacja pliku *.exe na C lub C++


Napisz nowy temat  Odpowiedz do tematu      Strona Główna -> Forum elektroda.pl -> Komputery Serwis -> Komputery Software -> Dekompilacja pliku *.exe na C lub C++
Autor
Wiadomość
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#1 Post autora tematu 06 Lut 2006 18:20   

Dekompilacja pliku *.exe


Witam!
Wydaje mi sie ze mam dosyc fajny temat!
Otoz chodzi o dekompilacje plikow wykonywalnych exe na C lub C++???
Wiem ze to dosc szeroki temat, ale prosze o jakies spostrzerzenia odnosnie jakichs fajnych programow i czy wogole mozna przekompilowac w jakis znosny sposob taki plik zeby mozna bylo cos z niego zrozumiec i pobawic sie w kodzie zrodlowym:)?
Czekam na wszelkie spostrzerzenia i podpowedzi!!!
POZDRAWIAM WSZYSTKIM DOLACZAJACYCH SIE DO TEMATU!
Powrót do góry
   
arnoldk_20
Poziom 22
Poziom 22


Dołączył: 11 Lut 2004
Posty: 2183
Miasto: -

Post#2 06 Lut 2006 18:23   

Re: Dekompilacja pliku *.exe


madziulek napisał:
Witam!
Wydaje mi sie ze mam dosyc fajny temat!
Otoz chodzi o dekompilacje plikow wykonywalnych exe na C lub C++???
Wiem ze to dosc szeroki temat, ale prosze o jakies spostrzerzenia odnosnie jakichs fajnych programow i czy wogole mozna przekompilowac w jakis znosny sposob taki plik zeby mozna bylo cos z niego zrozumiec i pobawic sie w kodzie zrodlowym:)?
Czekam na wszelkie spostrzerzenia i podpowedzi!!!
POZDRAWIAM WSZYSTKIM DOLACZAJACYCH SIE DO TEMATU!

Do C i C++ nie da się ale można do kodów asemblera różnymi disasseblerami
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#3 Post autora tematu 06 Lut 2006 21:45   

Dekompilacja pliku *.exe


A czym mozna do assemblera?
A z assemblera nie mozna na C?
Znalazlem programy do zmiany duperelstw w tych plikach, ale mi chodzi zeby mozna bylo pogrzebac w kodzie zrodlowym???

Dodano po 3 [godziny] 3 [minuty]:

Czy juz nikt sie nie wypowie na ten temat!!!!
Powrót do góry
   
Platon
Spec od komputerów
Spec od komputerów


Dołączył: 05 Wrz 2002
Posty: 9267
Miasto: Białystok

Post#4 06 Lut 2006 21:45   

Dekompilacja pliku *.exe


Nie ma takiego programu, zeby na podstawie zdjecia ciasta zrobil przepis :)
Powrót do góry
   
LtLog
Poziom 20
Poziom 20


Dołączył: 13 Sie 2004
Posty: 980
Miasto: Jastrzębie

Post#5 06 Lut 2006 21:59   

Re: Dekompilacja pliku *.exe


Anakrino
Salamander

Nie są to dokładnie dekompilatory c++ działają w sposób opisany po części przez kolegę arnoldk_20, najpierw disassembling następnie na podstawie otrzymanych danych same układają kod. Należy jedynie pamiętać że kod jest zbiliżony w funkcjonalności lecz z całą pewnością rózni się od wyjściowego.

Pozdrawiam Lt.
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#6 Post autora tematu 06 Lut 2006 21:59   

Dekompilacja pliku *.exe


No ale nie rozumiem dlaczego!!!
Skoro kompilator to kompiluje na exe to dlaczego dekompilator nie moze tego odwrocic spowrotem???
Powrót do góry
   
LtLog
Poziom 20
Poziom 20


Dołączył: 13 Sie 2004
Posty: 980
Miasto: Jastrzębie

Post#7 06 Lut 2006 22:09   

Re: Dekompilacja pliku *.exe


Ponieważ kompilacja kodu C++ polega na zamianie języka na kod maszynowy.

Pozdrawiam Lt.
Powrót do góry
   
Google


Google Adsense


Post# 06 Lut 2006 22:09   





Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#8 Post autora tematu 06 Lut 2006 22:34   

Dekompilacja pliku *.exe


No dobrze ale kod maszynowy to zbior '0''1' wiec jesli mozna cos zamienic na 01 to czemu pozniej nie mozna tego zamienic spowrotem na literki:)?

Dodano po 7 [minuty]:

A jak jest z disassemblerami???
Czy zna ktos jakis lepszy?
Powrót do góry
   
LtLog
Poziom 20
Poziom 20


Dołączył: 13 Sie 2004
Posty: 980
Miasto: Jastrzębie

Post#9 06 Lut 2006 23:28   

Re: Dekompilacja pliku *.exe


madziulek napisał:
No dobrze ale kod maszynowy to zbior '0''1' wiec jesli mozna cos zamienic na 01 to czemu pozniej nie mozna tego zamienic spowrotem na literki:)?


Bo ten sam problem można przedstawić w różnoraki sposób; korzystając z tego samego języka i otrzymując te same wyniki.

Pozdrawiam Lt.
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#10 Post autora tematu 07 Lut 2006 12:03   

Re: Dekompilacja pliku *.exe


Nie bardzo rozumiem:(???
Powrót do góry
   
LtLog
Poziom 20
Poziom 20


Dołączył: 13 Sie 2004
Posty: 980
Miasto: Jastrzębie

Post#11 07 Lut 2006 13:02   

Re: Dekompilacja pliku *.exe


Ten sam problem, ten am wynik, a kod różni się od siebie:

Kod:

class InitializerDemo
{
int[] field = {0, 1, 2, 3, 4, 5, 6};
char[,] chars = {
{'A', 'B', 'C'},
{'D', 'E', 'F'},
};
InitializerDemo()
{
int[] field = new int[]{0, 1, 2, 3, 4, 5, 6};
string[,] strArray = {{"John", "Doe"}, {"1", "2"}};      
field[1] = 1 + field[1];      
strArray[0,2] = "OK";
}
}


Kod:

using System;
using System.Runtime.CompilerServices;
class InitializerDemo
{
private int[] field = new int[]{0, 1, 2, 3, 4, 5, 6};
private char[,] chars = new char[,]{
{'A', 'B', 'C'},
{'D', 'E', 'F'},
};
private InitializerDemo()
{
int[] nums = new int[]{0, 1, 2, 3, 4, 5, 6};
string[,] strs2 = new string[2, 2];
strs2.Set(0, 0, "John");
strs2.Set(0, 1, "Doe");
strs2.Set(1, 0, "1");
strs2.Set(1, 1, "2");
string[,] strs1 = strs2;
nums[1]++;
strs1.Set(0, 2, "OK");
}
}


A dekompilatro nie może sprawdzić dokładnie jak wyglądał kod w języku ponieważ musiał by sprawdzać każdą możliwą nazę funkcji, klas itp tak aby przy tym samym wyniku i tym samym problemie uzyskać identyczny kod maszynowy. Dekompilacja prostego kilkudzisięcio liniowego programu trwała by wtedy wieki. Dlatego też dekompilatroy nie istnieją, istnieją tylko automaty które na podstawie kodu maszynowego przeprowadzaja disassemblig, a następnie składają kod wg własnego uznania w taki sposób aby wynik końcowy był identyczny choć to nie zawsze się sprawdza.

Pozdrawiam Lt.
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#12 Post autora tematu 07 Lut 2006 21:48   

Dekompilacja pliku *.exe


w sumie to i racja, niestety:(
A znasz moze jakis dobry disassembler z ktorym by mozna sie pobawic i oczywiscie zkompilowac to pozniej do exe?
Pozdrawiam
Powrót do góry
   
Google


Google Adsense


Post# 07 Lut 2006 21:48   





Powrót do góry
   
tzok
Moderator Samochody
Moderator Samochody


Dołączył: 13 Wrz 2002
Posty: 24877
Miasto: Bielsko-Biała / Sosnowiec

Post#13 07 Lut 2006 21:57   

Dekompilacja pliku *.exe


Częściowo skutecznie można dekompilować programy napisane w VisualStudio (zwłaszcza .NET ale nie tylko), ponieważ one nie są kompilowane do kodu maszynowego a do kodu pośredniego, wykonywanego w środowisku uruchomieniowym.
Powrót do góry
   
Google


Google Adsense


Post# 07 Lut 2006 21:57   





Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#14 Post autora tematu 07 Lut 2006 22:00   

Re: Dekompilacja pliku *.exe


tzok napisał:
Częściowo skutecznie można dekompilować programy napisane w VisualStudio (zwłaszcza .NET ale nie tylko), ponieważ one nie są kompilowane do kodu maszynowego a do kodu pośredniego, wykonywanego w środowisku uruchomieniowym.



VisualStudio? nie bardzo wiem o jakie programy chodzi, jakie one maja rozszerzenie?
Powrót do góry
   
LtLog
Poziom 20
Poziom 20


Dołączył: 13 Sie 2004
Posty: 980
Miasto: Jastrzębie

Post#15 07 Lut 2006 22:59   

Re: Dekompilacja pliku *.exe


Koledze tzok chodzi ogólnie o technologię .NET. Aplikację wymagające dodatkowego wsparcia programowego w postaci Framework i jemu podobnych. Kod wtedy przetwarzany jest do tzw bytecode dlatego ich interpretacja jest łatwiejsza z punku widzenia dekompilatora. Do tych języków zaliczyć będzie mozna C#, Jave, Perla, Smalltalk.

Pozdrawiam Lt.
Powrót do góry
   
tzok
Moderator Samochody
Moderator Samochody


Dołączył: 13 Wrz 2002
Posty: 24877
Miasto: Bielsko-Biała / Sosnowiec

Post#16 07 Lut 2006 23:31   

Dekompilacja pliku *.exe


...i VisualBasic, niekoniecznie .NET (w starszych wersjach też był P-Code).
Powrót do góry
   
jankolo
Zasłużony dla elektroda
Zasłużony dla elektroda


Dołączył: 10 Sty 2005
Posty: 33254
Miasto: Łódź

Post#17 08 Lut 2006 01:24   

Re: Dekompilacja pliku *.exe


madziulek napisał:
ale mi chodzi zeby mozna bylo pogrzebac w kodzie zrodlowym

Z całego toku dyskusji wynika, że kolega nie ma bladego pojęcia o podstawach programowania komputerów, o programowaniu w C++ i Assemblerze już nie wspominając. Niech kolega da sobie spokój z "grzebaniem" w kodzie źródłowym (niezależnie od tego co to dla kolegi oznacza).
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#18 Post autora tematu 08 Lut 2006 16:45   

Dekompilacja pliku *.exe


Jesli chodzi o assembler to przyznam sie ze go nie znam, ale za to znam C i C++ i to bardzo dobrze:/
a jesli chodzi o "grzebanie" w kodzie zrodlowym to mysle ze wszyscy wiedza o co chodzi, a w tym temacie chce przede wszystkim sie dowiedziec czy jest taka mozliwosc w pliku wykonalnym???
Powrót do góry
   
tzok
Moderator Samochody
Moderator Samochody


Dołączył: 13 Wrz 2002
Posty: 24877
Miasto: Bielsko-Biała / Sosnowiec

Post#19 08 Lut 2006 17:25   

Dekompilacja pliku *.exe


Otrzymałeś więc odpowiedź, że w dużej mierze zależy to od tego w jakim środowisku został skompilowany program/biblioteka.
Jeśli kod był skompilowany do języka maszynowego to taka operacja jest nieodwracalna, bowiem program w postaci maszynowej jest liniowy, nie ma klas, obiektów a nawet procedur ani zmiennych, są tylko adresy, dane i kody operacji. Nie ma więc możliwości odtworzenia struktury programu, bo nie da się odtworzyć nawet nazw zmiennych.
Taki np. Delphi różnie traktuje funkcje (można mieć na to wpływ) - albo umieszcza kod funkcji w miejscu wywołania albo tworzy procedurę (podprogram) do której "skacze".
Wywołania API WIndowsa pozostaną czytelne ale pozostała część kodu - nie.

Natomiast programy napisane w VisualBasicu, nie są "do końca" kompilowane, podobnie jak programy pisane w VisualStudio (Visual C++, Visual C# i t.d.) i one dają się zdekompilować do w miarę czytelnej postaci.
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#20 Post autora tematu 08 Lut 2006 17:28   

Dekompilacja pliku *.exe


a jesli chodzi o taki program jak haker resurce, mozna w nim cos pozmieniac poza wygladem?
DZIEKI
Powrót do góry
   
tzok
Moderator Samochody
Moderator Samochody


Dołączył: 13 Wrz 2002
Posty: 24877
Miasto: Bielsko-Biała / Sosnowiec

Post#21 08 Lut 2006 17:36   

Dekompilacja pliku *.exe


Jak już to Resource Hacker (jest też Restorator), nie - on służy tylko do ingerencji w zasoby interfejsu (korzystające Windows).
Powrót do góry
   
arnoldk_20
Poziom 22
Poziom 22


Dołączył: 11 Lut 2004
Posty: 2183
Miasto: -

Post#22 08 Lut 2006 17:37   

Re: Dekompilacja pliku *.exe


madziulek napisał:
a jesli chodzi o taki program jak haker resurce, mozna w nim cos pozmieniac poza wygladem?
DZIEKI

Jeszcze teksty komikatów można zmienić.
Ale ten program przerabia nieskompresowane pliki exe (windosowe) i exepodobnych (*.dll *.ocx itp)
W niektórych przerobionych plikach mogą pojawić się problemy.
Ale dodatkowych funkcji programowni nie dodasz.
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#23 Post autora tematu 08 Lut 2006 17:50   

Dekompilacja pliku *.exe


A mozna co nieco pozmieniac odnosnie dzialania programu?
Sa tam operatory typy "true" i "false"???
Powrót do góry
   
LtLog
Poziom 20
Poziom 20


Dołączył: 13 Sie 2004
Posty: 980
Miasto: Jastrzębie

Post#24 08 Lut 2006 18:59   

Re: Dekompilacja pliku *.exe


Czasami są, a czasami nie ma, jak znam życie są do znaczniki dostępności funkcji menu ale na chybił trafił to łatwiej już będzie w totka wygrać niż powiedzieć Ci do czego w tym przypadku służą i co możesz osiągnąć przez ich zmianę; nikt z tu zebranych nie powie Ci jakie zmiany jesteś wstanie wprowadzić w niewiadomej aplikacji, kompilowanej i kompresowanej w niezany nikomu tu sposób. Sprawdź to się przekonasz co jesteś w stanie zrobić.

Pozdrawiam Lt.
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#25 Post autora tematu 08 Lut 2006 19:25   

Re: Dekompilacja pliku *.exe


no wlasnie chodzi o to ze jesli chodzi o tekst to mozna pozmieniac ale jesli zmienilem cos innego to albo wywalalo blad albo nic sie nie zmienialo:(

Dodano po 16 [minuty]:

a jak jest z disassemblerami???
Powrót do góry
   
LtLog
Poziom 20
Poziom 20


Dołączył: 13 Sie 2004
Posty: 980
Miasto: Jastrzębie

Post#26 08 Lut 2006 20:37   

Re: Dekompilacja pliku *.exe


Piszesz że znasz sie na programowaniu, więc widzać zarówno kod jak i rozkład aplikacji powinieneś umieć ocenić które parametry wolno Ci zmienić i jakie poniesie to za sobą konsekwencje.

Pytasz ciagle o dissasembling więc wkońcu odpowiem, jak pisałeś nie znasz wogólne asemblera więc po co Ci kod w tym języku jeżeli nie będziesz w stanie dokonać rzadnej zaplanowanej zmiany w jego wnętrzu?

Pozdrawiam Lt.
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#27 Post autora tematu 08 Lut 2006 21:17   

Dekompilacja pliku *.exe


chcialbym sie go nauczyc ale najpierw chce miec pewnosc ze jest po co:)?
Tak wiec???
Powrót do góry
   
tzok
Moderator Samochody
Moderator Samochody


Dołączył: 13 Wrz 2002
Posty: 24877
Miasto: Bielsko-Biała / Sosnowiec

Post#28 08 Lut 2006 21:24   

Dekompilacja pliku *.exe


W zasadzie nie ma po co, chyba, że chcesz się zajmować pisaniem c r a c k ó w i keygenów, wtedy bez dobrej znajomości assemblera ani rusz.
Powrót do góry
   
madziulek
Poziom 15
Poziom 15


Dołączył: 15 Cze 2005
Posty: 234
Miasto: szczepanek

Post#29 Post autora tematu 08 Lut 2006 21:40   

Dekompilacja pliku *.exe


a kto by nie chcial:)))
Powrót do góry
   
już nie 3
Poziom 1
Poziom 1


Dołączył: 18 Gru 2007
Posty: 1
Miasto: Pruszcz Gd

Post#30 18 Gru 2007 18:41   

Re: Dekompilacja pliku *.exe


Lepiej powiedzcie jak się zabrać do tworzenia nowych , prostych systemów operacyjnych , tak by pominąć "pana microsofta" .:|Jest wtedy szansa na grzebanie w kodzie żródłowym .
Powrót do góry
   
Google


Google Adsense


Post# 18 Gru 2007 18:41   





Powrót do góry
   
Napisz nowy temat  Odpowiedz do tematu      Strona Główna -> Forum elektroda.pl -> Komputery Serwis -> Komputery Software -> Dekompilacja pliku *.exe na C lub C++
Strona 1 z 2 Idź do strony 12  Następny
Podobne tematy
Dekompilacja pliku flash - podział pliku SWF (6)
.lua - Dekompilacja pliku (6)
otwieranie pliku exe - nie mogę otworzyć plików z exe (2)
Instalacja WINXP. SXS.DLL Błąd skałdniowy w pliku manifestu lub pliku zasad. (4)
poszukuje pliku dvdplay.exe (2)
Vista Sciaganie Pliku Exe (7)
Struktura pliku MZ dosowy exe (3)
Infekcja w pliku svchost.exe. (7)
XP - Brak pliku rundll.exe (6)
Modyfikacja pliku instalacyjnego *.exe (2)


Administrator || Moderatorzy || Regulamin forum || Regulamin ogólny || Informacja o cookies || Reklama || Kontakt

Page generation time: 0.094 seconds

elektroda.pl temat RSS