Newsgroup: it.comp.lang.visual-basic
Titolo: Disassemblare una DLL

Ciao a tutti... in un mio precedete post avevo la necessità di poter
utilizzare una scheda di acquisizione video con un mio applicativo net. Ho
provato a chiedere l'SDK alla casa costruttrice che con un secco NIENTE DA
FARE mi ha liquidato. Vorrei provare ugualmente a fare qualcosa. Ho trovato
un piccolo eseguibile che mi fa un elenco delle API  e delle DLL che un
applicativo usa... l'ho quindi usato con il software fornito dalla casa
costruttrice della scheda. Adesso la mia domanda è questa... è possibile
avendo una dll sapere quali sono le chiamate che bisogna fargli? Si può
disassemblare una dll a tale scopo? Insomma sapere parametri e risposte
delle funzioni della DLL?
Grazie

 delle funzioni della DLL?
Il reverse-enginering č illegale... comunque dovrebbe essere possibili visto
che le dll sono degli eseguibili un po' particolari e per gli eseguibili č
possibile farlo!
Ciao

> Il reverse-enginering è illegale...
Mi sembra una mezza fesseria.
Quando ho qualcosa posso farne quel ke mi pare (ovvio che la 
redistribuzione non è compresa fra le cose)...
-- 
Rivolterò il mondo per trovarlo, e anche se andasse in Indocina uno dei 
nostri starà nascosto in una ciotola di riso pronto a sparargli nel culo.
(Pulp Fiction)

 redistribuzione non č compresa fra le cose)...
Invece č possibile anche la ridistribuzione.
Infatti la maggior parte (99%) dei driver creati su Linux sono frutto di
reverse enginering.
bye
-- 
Esistono 10 tipi di persone: chi conosce il binario e chi no.
Gestione Ottica - Gestionale per Ottici e Programmi Gratuiti su:
http://www.nicolaottomano.it

 reverse enginering.
andate a chiedere a quelli che hanno fatto il driver se per loro va bene che
ne facciate ciò che volete!
sbagliate tutti e due... Ciao

 sbagliate tutti e due... Ciao
Il reverse enginering è illegale se "fine a sé stesso", diventa legale
se utilizzato per garantire l'interoperabilità fra vari "sistemi".
Se ho un particolare dispositivo hw che ha i driver solo per Windows è
"legalissimo" fare reverse enginering per svilupparsi i driver per farlo
funzionare anche sotto altri sistemi operativi.
Direi che se ha la necessità di comandare questo dispositivo tramite un 
suo programma è legalmente autorizzato a fare reverse enginering...
Ciao.
-- 
BSD is for UNIX lovers -- linux is for Windows haters.


Concordo. Era appunto quello che volevo dire.


 sbagliate tutti e due... Ciao
Non parlavo di crackare i driver esistenti.
Non confondiamo reverse enginering con cracking.


Io credo che rendere pubblica le dll che fanno funzionare un apparato
hardware vada tutta a vantaggio di chi l'abbia costruita.... se io compro la
scheda di acquisizione video perchè la voglio integrare in un software e poi
questo software andrà a girare su altre macchine queste dovranno avere la
scheda di acquisizione che io ho comprato e quindi si compreranno altre
schede video di quel tipo... l'atteggiamento poco professionale che invece
mi ha dimostrato questa casa produttrice di cui non faccio il nome è un
atteggiamento poco furbo... uno perchè io della loro scheda adesso non me ne
farò niente, due perchè integrerò il mio software con un altra scheda video
che mi fornirà SDK e tre perchè comprerò le altre dieci schede da un altro.
Ma non è questo che mi ha dato fastidio... uno può fare ciò che vuole anche
se poco intelligente... ma è proprio il modo con cui sono stato trattato e
mandato quasi a quel Paese... come se fossi un pazzo criminale che volesse
apropriarmi dei segreti TOP SECRET di qualcuno... a questo punto legale o
meno se io potessi farei questo lo farei: PRENDEREI LE LORO DLL, LE APRIREI,
CI FAREI I MIEI PORCI COMODI, POI CI CAGHER... DENTRO, LE RICHIUDEREI E LE
RISPEDISCO AL MITTENTE!
Alla luce di tutto questo qualcuno a qualche suggerimento su come
disassemblare queste dll? Grazie


Da quello che ho capito hai già usato un disassemblatore, a questo punto due
sono le strade da seguire:
 - studiare il disassemblato nei punti in cui avviene la chiamata (puoi
provare in debug-mode o a manina su carta), e se ti può servire una volta su
www.crackstore.com
 c'era l'elenco completo delle istruzioni assembly della
famiglia x86, chissà se l'hanno aggiornato!?!?!?
 - riuscire a trovare qualche resource-hacker che oltre alle librerie
importate ed esportate riesca a darti qualche info in più sui parametri da
passare o passati dalla dll in questione.
Al momento......no aspetta, forse ho un'idea ma devi sbattere unpo' in rete.
Anche se non ne conosco l'affidabilità e a quanto ho sentito il codice
prodotto non è dei più leggibili, ci dovrebbe essere in giro qualche
decompilatore C, se riesci a trovarlo credo che ti potrebbe tornare utile.
Se ho qualche info in più ti faccio un fischio.

 disassemblare queste dll? Grazie
Non so come disassemblarle, perň potresti avere l'elenco delle funzioni con
Dependancy Walker della M$ (si chiama depend.exe e sta nel cd di VB).


Ho trovato questi link:
http://www.backerstreet.com/rec/rec.htm
http://www.autistici.org/uncc/
http://www.itee.uq.edu.au/~cristina/dcc.html
Buon lavoro e in bocca al Lupo!