eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingbędę disasemblował
Ilość wypowiedzi w tym wątku: 12

  • 1. Data: 2011-11-07 18:07:58
    Temat: będę disasemblował
    Od: " generał kenobi" <f...@g...pl>

    uwaga, będę disasemblował

    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 2. Data: 2011-11-07 18:58:39
    Temat: Re: będę disasemblował
    Od: Sławomir Szczyrba <c...@o...the.night>

    Ave ! Morituri te salutant!
    [...]>
    > co to jest i czy to jest naprawde potrzebne w kazdym exe?
    > czy takie anonimowe funkcje sa wymagane? ktos zna jakies info o tym
    > dokladnie (o tych kilkudziesieciu powiedzmy anonimowych routinach jakie
    > kompilatory wstawiaja do prawie pustych pustych pozatym execow)
    >
    Ale wiesz, czym się różni exe od com ?

    Hmm, myślę, że zamiast męczyć asm czy inne bcc na pecetach,
    powinieneś zacząć bawić się mikrokontrolerami.
    Możesz pisac wyłącznie w asm, masz pełniusieńką kontrolę nad
    sprzętem, a gdy postanowisz przejść z asm na c, po drugim programie
    będziesz znał odpowiedzi na wszystkie powyższe pytania :)

    > kenobi

    Sławek
    --
    ________
    _/ __/ __/ I AM IN TOTAL CONTROL, but don't tell the wife.
    \__ \__ \___________________________________________________
    ____________
    /___/___/ Sławomir Szczyrba steev/AT/hot\dot\pl


  • 3. Data: 2011-11-07 19:31:41
    Temat: Re: będę disasemblował
    Od: " " <f...@g...pl>

    =?ISO-8859-2?Q?_genera=B3_kenobi?= <f...@g...pl> napisał(a):

    > uwaga, będę disasemblował
    >

    trochę zartuję,

    najchetniej dowiedzialbym sie co te cholerne kompilatory
    ----------------------------------------------------
    -----
    wstawiaja do pustych execów;
    ----------------------------

    znalazlem 4ry stare male kompilatory gdzies na archiwalnym dysku,
    skompilowalem puste mainy i ogladam rezultaty

    o ile pliki obj jakie produkuja sa przyzwoite co do dlugosci
    np okolo 200 bajtow i zawartosc maja w stylu

    push ebp ; 0000 _ 55
    mov ebp, esp ; 0001 _ 89. E5
    @1: pop ebp ; 0003 _ 5D
    ret ; 0004 _ C3

    choc np devcpp ma

    _main:
    ___gnu_compiled_c:
    gcc2_compiled.:
    push ebp ; 0000 _ 55
    mov ebp, esp ; 0001 _ 89. E5
    sub esp, 8 ; 0003 _ 83. EC, 08
    call ___main ; 0006 _ E8, 00000000
    (rel)
    mov eax, 5 ; 000B _ B8, 00000005
    jmp ?_001 ; 0010 _ EB, 00

    ?_001: leave ; 0012 _ C9
    ret ; 0013 _ C3

    nie wiem co to za call __main w srodku maina (?)

    to po zlinkowaniu do exe wstawiaja tam duzo tych tajemniczych bebechow
    co jeden to gorzej: main.exe w lcc ma 13k mingw 14k devcpp 4k (najlepiej)
    pelles 8k np borland 48k (najgorzej)

    nie wiem na jakiej zasadzie kompilatory moga zaszywajz nazwy
    funkcji w exe, tak ze po disasemblacji widac jak sie nazywaja
    routines w asmie, ale tylko mingw zrobil cos takiego (za co jemu plus)
    i widac ze jest tam okolo 30 procedur
    podobnych do

    ___mingw_CRTStartup:; Local function
    push ebp ; 004011E0 _ 55
    mov ebp, esp ; 004011E1 _ 89. E5
    sub esp, 24 ; 004011E3 _ 83. EC,
    18
    mov dword [esp], __gnu_exception_handler@4 ; 004011E6 _ C7. 04
    24, 004010E0(d)
    mov dword [ebp-4H], ebx ; 004011ED _ 89. 5D,
    FC
    call _SetUnhandledExceptionFilter@4 ; 004011F0 _ E8,
    0000060B
    sub esp, 4 ; 004011F5 _ 83. EC,
    04
    call __fpreset ; 004011F8 _ E8,
    00000163
    call ___RUNTIME_PSEUDO_RELOC_LIST__ ; 004011FD _ E8,
    FFFFFDFE
    call __mingw32_init_fmode ; 00401202 _ E8,
    FFFFFE39
    call __pei386_runtime_relocator ; 00401207 _ E8,
    00000124
    call ___p__environ ; 0040120C _ E8,
    0000055F
    mov eax, dword [eax] ; 00401211 _ 8B. 00
    mov dword [esp+8H], eax ; 00401213 _ 89. 44
    24, 08
    mov eax, dword [__argv] ; 00401217 _ A1,
    00402004(d)
    mov dword [esp+4H], eax ; 0040121C _ 89. 44
    24, 04
    mov eax, dword [__data_start__] ; 00401220 _ A1,
    00402000(d)
    mov dword [esp], eax ; 00401225 _ 89. 04 24
    call _main ; 00401228 _ E8,
    000000A3
    mov ebx, eax ; 0040122D _ 89. C3
    call __cexit ; 0040122F _ E8,
    0000052C
    mov dword [esp], ebx ; 00401234 _ 89. 1C 24
    call _ExitProcess@4 ; 00401237 _ E8,
    000005D4

    o nazwach jak _init_mainargs, init_fmode, gnu_exception_handler,
    crtStartup, atexit, onexit, do_sjlj_init, do_pseudo_realoc,
    pei386_runtime_relocator, fpreset, do_global_dtors, do_global_ctors,
    sharedptr_default_unexpected, eh_shared_initialize i takie tam

    co to jest i czy to jest naprawde potrzebne w kazdym exe?
    czy takie anonimowe funkcje sa wymagane? ktos zna jakies info o tym
    dokladnie (o tych kilkudziesieciu powiedzmy anonimowych routinach jakie
    kompilatory wstawiaja do prawie pustych pustych pozatym execow)

    kenobi













    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 4. Data: 2011-11-08 02:08:24
    Temat: Re: będę disasemblował
    Od: Michoo <m...@v...pl>

    W dniu 07.11.2011 19:58, Sławomir Szczyrba pisze:
    > Hmm, myślę, że zamiast męczyć asm czy inne bcc na pecetach,
    Etam. Na MASMie spokojnie dawało się uzyskiwać pliki exe korzystające z
    winapi w rozmiarze 512-1024 bajtów.

    A hardcoreowcy ładowali kod w pola nagłówka PE i osiągali
    stokilkadziesiąt bajtów.

    Na uC fun jest w drugą stronę - napisać kod w C++ na procesor ze 128B ramu.
    --
    Pozdrawiam
    Michoo


  • 5. Data: 2011-11-08 07:17:52
    Temat: Re: będę disasemblował
    Od: MoonWolf <m...@p...com>

    Michoo denied rebel lies:

    > Na uC fun jest w drugą stronę - napisać kod w C++ na procesor ze 128B
    > ramu.

    Fun to jest przy przechodzeniu na ARMa z AVRów. Chociaż osobiście
    zaczynam się bać czy nie przegiąłem z OOP...

    --
    <:> Roger, MoonWolf Out <:>|Can you march to the distant thunder
    (::) (::)|
    (:) JID:m...@j...org(:)| http://karakkhaz.prv.pl


  • 6. Data: 2011-11-08 15:10:09
    Temat: Re: będę disasemblował
    Od: " " <f...@g...pl>

    Michoo <m...@v...pl> napisał(a):

    > W dniu 07.11.2011 19:58, Sławomir Szczyrba pisze:
    > > Hmm, myślę, że zamiast męczyć asm czy inne bcc na pecetach,
    > Etam. Na MASMie spokojnie dawało się uzyskiwać pliki exe korzystające z
    > winapi w rozmiarze 512-1024 bajtów.
    >
    > A hardcoreowcy ładowali kod w pola nagłówka PE i osiągali
    > stokilkadziesiąt bajtów.
    >

    no, jest swietny artykul nt tego jak napisac najmniejszy exe
    ktory sciagnie z netu program i uruchomi go (Smallest PE file that
    downloads a file over WebDAV and executes it) 133 bajty,
    - podoba mi sie to na tyle ze zaczalem zamiarowac by wykorzystac
    bezposrednio to wlasnie info do zapoczatkowania pisania (i jak sie uda
    napisania) swojej konkretnej wersji kompilatora c/c2 - o ile sie da,
    jest tam fajny kawalek ktory bodajze po skompilowaniu nasmem stworzy
    minimalny PE, ja raczej bede pisac w c ale wykorzystam to info (o ile
    sie uda)





    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 7. Data: 2011-11-08 15:20:47
    Temat: Re: będę disasemblował
    Od: Jacek <a...@o...pl>

    Dnia Tue, 8 Nov 2011 15:10:09 +0000 (UTC), f...@g...pl napisał(a):

    > Michoo <m...@v...pl> napisał(a):
    >
    >> W dniu 07.11.2011 19:58, Sławomir Szczyrba pisze:
    >>> Hmm, myślę, że zamiast męczyć asm czy inne bcc na pecetach,
    >> Etam. Na MASMie spokojnie dawało się uzyskiwać pliki exe korzystające z
    >> winapi w rozmiarze 512-1024 bajtów.
    >>
    >> A hardcoreowcy ładowali kod w pola nagłówka PE i osiągali
    >> stokilkadziesiąt bajtów.
    >>
    >
    > no, jest swietny artykul nt tego jak napisac najmniejszy exe
    > ktory sciagnie z netu program i uruchomi go (Smallest PE file that
    > downloads a file over WebDAV and executes it) 133 bajty,
    > - podoba mi sie to na tyle ze zaczalem zamiarowac by wykorzystac
    > bezposrednio to wlasnie info do zapoczatkowania pisania (i jak sie uda
    > napisania) swojej konkretnej wersji kompilatora c/c2 - o ile sie da,
    > jest tam fajny kawalek ktory bodajze po skompilowaniu nasmem stworzy
    > minimalny PE, ja raczej bede pisac w c ale wykorzystam to info (o ile
    > sie uda)

    Zastanawiales sie moze na NOP?


  • 8. Data: 2011-11-09 08:28:59
    Temat: Re: będę disasemblował
    Od: " " <f...@g...pl>

    <f...@g...pl> napisał(a):

    > Michoo <m...@v...pl> napisał(a):
    >
    > > W dniu 07.11.2011 19:58, Sławomir Szczyrba pisze:
    > > > Hmm, myślę, że zamiast męczyć asm czy inne bcc na pecetach,
    > > Etam. Na MASMie spokojnie dawało się uzyskiwać pliki exe korzystające z
    > > winapi w rozmiarze 512-1024 bajtów.
    > >
    > > A hardcoreowcy ładowali kod w pola nagłówka PE i osiągali
    > > stokilkadziesiąt bajtów.
    > >
    >
    > no, jest swietny artykul nt tego jak napisac najmniejszy exe
    > ktory sciagnie z netu program i uruchomi go (Smallest PE file that
    > downloads a file over WebDAV and executes it) 133 bajty,
    > - podoba mi sie to na tyle ze zaczalem zamiarowac by wykorzystac
    > bezposrednio to wlasnie info do zapoczatkowania pisania (i jak sie uda
    > napisania) swojej konkretnej wersji kompilatora c/c2 - o ile sie da,
    > jest tam fajny kawalek ktory bodajze po skompilowaniu nasmem stworzy
    > minimalny PE, ja raczej bede pisac w c ale wykorzystam to info (o ile
    > sie uda)
    >
    sęk w tym, że c2 (zestaw obmyslanych przeze mnie poprawek do c)
    nie jest jeszcze wymyslone do konca (i nie wiem czy uwinę sie
    np nawet w nastepne 10 lat) Napisanie samego kompilatora jest
    dosyc proste (bo wiadomo co trzeba zrobic pisze sie i wkoncu
    dziala) Gorzej z wymysleniem c2 tak by trzymal ducha c (z tym
    mam pewien powazny problem), np slowko kluczowe realloc

    int tab[1000];

    realloc tab[2000];

    (vel realloc int tab[2000]; // ?? - bo nie wiem)

    rozwiazanie dobre a przynajmniej ciekawe, tylko kwestia
    tego ze zgodnie z duchem c warto uzywac lekkich operacji,
    a taki reallok enkompasuje dwie na raz ralokacje i kopiowanie
    - czy dac mozliwosc uzycia tylko realokacji bez kopiowania
    starej zawartosci? czy tez spojrzec na to jednak tak ze sama
    definicja realloc jako 'ciezkiej operacji' tu sie defakto nie
    stosuje bo ciezkosc tej operacji definiuje system/implementacja
    i ze nalezaloby raczej sprobowac zmusic implementacje do tego
    by byla lekka (?) -- jeden z problemow, 'opracoweanie' tego jest
    o wiele trudniejsze i wazniejsze niz napisanie samego kompilatora
    - i tak to jest

    (professeur fir)











    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/


  • 9. Data: 2011-11-09 08:32:19
    Temat: Re: będę disasemblował
    Od: Sławomir Szczyrba <c...@o...the.night>

    Ave !
    [...]
    > dziala) Gorzej z wymysleniem c2 tak by trzymal ducha c (z tym
    > mam pewien powazny problem), np slowko kluczowe realloc
    >
    > int tab[1000];
    >
    > realloc tab[2000];
    >
    > (vel realloc int tab[2000]; // ?? - bo nie wiem)
    >
    > rozwiazanie dobre a przynajmniej ciekawe, tylko kwestia
    > tego ze zgodnie z duchem c warto uzywac lekkich operacji,
    > a taki reallok enkompasuje dwie na raz ralokacje i kopiowanie
    > - czy dac mozliwosc uzycia tylko realokacji bez kopiowania
    > starej zawartosci? czy tez spojrzec na to jednak tak ze sama
    > definicja realloc jako 'ciezkiej operacji' tu sie defakto nie
    > stosuje bo ciezkosc tej operacji definiuje system/implementacja
    > i ze nalezaloby raczej sprobowac zmusic implementacje do tego
    > by byla lekka (?) -- jeden z problemow, 'opracoweanie' tego jest
    > o wiele trudniejsze i wazniejsze niz napisanie samego kompilatora
    > - i tak to jest
    >
    Jesli ma się trzymać ducha, to chyba powinno działać tak jak
    'oryginalny' realloc (czy też std::realloc)...?

    > (professeur fir)

    Sławek
    --
    ________ Q: How many chickens does it take to screw in a light bulb?
    _/ __/ __/ A: Two-one to do it and one to cross the road.
    \__ \__ \___________________________________________________
    ____________
    /___/___/ Sławomir Szczyrba steev/AT/hot\dot\pl


  • 10. Data: 2011-11-09 13:29:36
    Temat: Re: będę disasemblował
    Od: " " <f...@g...pl>

    > o wiele trudniejsze i wazniejsze niz napisanie samego kompilatora
    > - i tak to jest

    pozostaje jeszcze opracowanie nazwy tego kompilatora:
    moze 'rage' byloby dobre, nazwa zgrana i banalna jak
    niewiadomoco ale poniekąd moze nie bylaby zla




    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/

strony : [ 1 ] . 2


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: