• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dekompilacja plików .dll

Object Storage Arubacloud
0 głosów
4,584 wizyt
pytanie zadane 24 września 2015 w C# przez zmiennoimienny Mądrala (5,540 p.)

Witam  smiley
Chciałbym przerobić kod pewnej gry i coś do niej dodać.
Pomyślałem więc że trzeba dekompilować plik .dll a potem ponownie go skąplikować. 
I tu 2 pytania:
W jaki sposób to uczynić?
Czy dobrze się za to zabieram?

3 odpowiedzi

0 głosów
odpowiedź 24 września 2015 przez Rogargol Pasjonat (16,600 p.)
Moge jedynie Ci doradzic zebys sobie odpuscil. Nie jestes w stanie tego zrobic.
komentarz 24 września 2015 przez Dorion300 Szeryf (90,250 p.)
Dlaczego?        q
komentarz 24 września 2015 przez Rogargol Pasjonat (16,600 p.)
O ile sie orientuje moze dostac wynik jedynie w postaci asm, jesli nigdy tego nie robil to zabieranie sie za przerabianie jakiejkolwiek gry to po prostu strata czasu. Jesli natomiast zna bardzo dobrze asm i ma duze pojecie o programowaniu, to nie zadawalby takiego pytania na tym forum ;)
komentarz 24 września 2015 przez Dorion300 Szeryf (90,250 p.)
edycja 24 września 2015 przez Dorion300

Warto zauważyć że mowa o programach napisanych w .NET.

Więc jest to nawet możliwe.

W niemal każdym skompilowanym programie .exe w kodzie nie-natywnym(np.Java C#) można bez problemu odczytać do pierwotnego stanu.

komentarz 24 września 2015 przez zmiennoimienny Mądrala (5,540 p.)
Najgorsze co może być czyli odpowiedź: "Odpuść sobie bo nie dasz rady" zamiast podania garści informacji.
Programuje od 5 lat w różnych językach, tak więc trochę się znam. Jednak nie poruszałem tej części wiedzy o którą pytam u góry.
komentarz 24 września 2015 przez zmiennoimienny Mądrala (5,540 p.)
PS. Przepraszam za bardzo amatorskie pytanie ponieważ ciężko mi złożyć sensowne zdanie o tej godzinie (nieprzespana noc) a akurat to mnie teraz zaciekawiło.
komentarz 24 września 2015 przez Rogargol Pasjonat (16,600 p.)
Wybacz, forum to miejsce wymieniania roznych opinii, oczywiscie moge sie mylic i jesli tak jest ktos inny naprowadzi Cie na dobre rozwiazanie. Wydaje mi sie jednak, ze mam racje.

Staralem sie zglebic ten temat w przypadku bibliotek pisanych w C++ i efekt jest taki, jak pisalem wyzej. Życze zeby sie jednak udalo w takim razie i zeby ktos podal Ci dobre rozwiazanie.
0 głosów
odpowiedź 24 września 2015 przez Dorion300 Szeryf (90,250 p.)
edycja 24 września 2015 przez Dorion300
Jeśli mowa o .NET to jest to wykonywalne.

Ogarnij środowisko XamarinStudio, posiada "assembly Browser"
Za pomocą XamarinStudio otwórz plik .dll (W trybie assembly Browser) i powinno ci ładnie funkcje wypisać.

Oczywiście jeszcze wybierz aby pokazywał kod w C# w prawym górnym rogu i powinno działać.
O ile dobrze pamiętam to niektóre .dll są chronione, więc nie da się ot tak sprawdzić co jest środku

Tu masz przykład:
http://s10.ifotos.pl/img/Assembly-_shhhrqr.png

Po lewej Assemblerowska wersja prosto z pliku .dll (po skompilowaniu i zoptymalizowaniu kodu przez kompilatora) A po prawej Kod źródłowy.
0 głosów
odpowiedź 25 września 2015 przez hit02 Nałogowiec (33,970 p.)

Zainteresuj się Reverse Engineeringiem. Możesz wykorzystać do tego np. dll spoff, albo funkcje ReadProcessMemory() i WriteProcessMemory(). Możesz też wrzucić swój kod do pliku wykonywalnego w jakieś nieurzywane miejsce i przekierować do niego wykonanie.

Jedyne, czego nie rozumiem, to czemu wpisałeś C# i .NET w języku. Jeżeli gra jest pisana w języku z rodziny .NET, to możesz spróbować zdekompilować dll - C# często można odtworzyć. Jeżeli to się nie uda, to przyda ci się narzędzie ildasm (jest razem z VisualStudio gdzieś w głębokim ukryciu smiley), lub inny disassembler. Jednak techniki powinny być te same, albo bardzo podobne. 

Moge jeszcze polecić ten film: https://youtu.be/aPHMv1PApGA?list=PL6990CCD81B9A3E9C ale w celach poglądowych, a nie dokładnego nauczenia się tych czynności. RE musisz się nauczyć samemu przez praktykę.

Podobne pytania

0 głosów
1 odpowiedź 136 wizyt
0 głosów
0 odpowiedzi 273 wizyt
pytanie zadane 5 czerwca 2019 w C i C++ przez MegaaSoft Obywatel (1,430 p.)
0 głosów
1 odpowiedź 158 wizyt
pytanie zadane 16 marca 2018 w C i C++ przez Unit67 Nowicjusz (190 p.)

92,555 zapytań

141,403 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...