W32dasm assembly

di il
3 risposte

W32dasm assembly

Ciao a tutti, ho disassemblato in linguaggio assembly con w32dasm un file exe che non mi trova l'audio. ho cercato all'interno di w32dasm come initializing sound system e mi è uscito questo:

0002.1ca7 68bc06 push 06BC
0002.1caa 0e push cs
0002.1cab e844ec call 08f2
0002.1cae 83c404 add sp, 0004
0002.1cb1 1e push ds

Mi sapete dire cosa vuol dire, vorrei imparare.. Grazie

3 Risposte

  • Re: W32dasm assembly

    0002.1ca7 68bc06 push 06BC ; immetti nello stack il contenuto della locazione 06bc dovrebbe essere una variabile di parametrica
    0002.1caa 0e push cs ;immetti nello stack la locazione di cs << code segment >>
    0002.1cab e844ec call 08f2 ; chiama la subroutine che sta alla locazione 08f2
    0002.1cae 83c404 add sp, 0004 ; incrementa lo stack pointer di 4
    0002.1cb1 1e push ds ; immetti nello stack la locazione di ds << data segment >>

    le prime due push fanno pensare che il programma passi dei parametri alla funzione della locazione 08f2 (li non avendo il codice non posso capire cosa possa fare questa funzione!)
    le due istruzioni successive alla call
    fanno pensare che ci sarà a breve un altra chiamata a funzione e lo spostamento in avanti del registro sp fa pensare che siano stati restituiti dei dati dalla funzione 08f2 i quali saranno riutilizzati nella prossima funzione chiamata.

    comunque se ci vuoi capire qualcosa devi iniziare dalle cose semplici e non dal codice disassemblato di programma c++.
  • Re: W32dasm assembly

    smalldragon ha scritto:


    0002.1ca7 68bc06 push 06BC ; immetti nello stack il contenuto della locazione 06bc dovrebbe essere una variabile di parametrica
    0002.1caa 0e push cs ;immetti nello stack la locazione di cs << code segment >>
    0002.1cab e844ec call 08f2 ; chiama la subroutine che sta alla locazione 08f2
    0002.1cae 83c404 add sp, 0004 ; incrementa lo stack pointer di 4
    0002.1cb1 1e push ds ; immetti nello stack la locazione di ds << data segment >>

    le prime due push fanno pensare che il programma passi dei parametri alla funzione della locazione 08f2 (li non avendo il codice non posso capire cosa possa fare questa funzione!)
    le due istruzioni successive alla call
    fanno pensare che ci sarà a breve un altra chiamata a funzione e lo spostamento in avanti del registro sp fa pensare che siano stati restituiti dei dati dalla funzione 08f2 i quali saranno riutilizzati nella prossima funzione chiamata.

    comunque se ci vuoi capire qualcosa devi iniziare dalle cose semplici e non dal codice disassemblato di programma c++.


    dalle cose semplici cosa intendi?
  • Re: W32dasm assembly

    Tipo la struttura di un programma la gestione delle stringhe gli interrupt base etc etc
    da qui devi cominciare
Devi accedere o registrarti per scrivere nel forum
3 risposte