Kamil Bęczyński

Kamil Bęczyński R, SAS, analizy

Temat: Czy można czymś zdekompilować bibliotekę dll napisaną w...

Czy można czymś zdekompilować bibliotekę dll napisaną w Fortranie ? Chciałbym zobaczyć jakiej funkcji statystycznej używa pewien program, a nie ma na ten temat żadnej informacji w dokumentacji. GPL >=2

chodzi mi o plik : /fGarch/libs/i386/garch.dll

do znalezienia w zipie dostępnym pod adresem :

http://cran.r-project.org/bin/windows/contrib/r-releas...

interesuje mnie definicja obiektu : "garchLLH" w nim zawart

Pozdrawiam

ps. jak na razie znalazłem http://simplyfortran.comKamil Bęczyński edytował(a) ten post dnia 08.05.11 o godzinie 22:41

Temat: Czy można czymś zdekompilować bibliotekę dll napisaną w...

Skoro jest na GPL (>=2) to piszesz maila do autora z prośbą o dostarczenie źródeł (tego wymaga licencja).
Jarosław Rybski

Jarosław Rybski Programista
C/C++/Python

Temat: Czy można czymś zdekompilować bibliotekę dll napisaną w...

Można zdekompilować jednak w ten sposób nie uzyskasz kodu programu a jedynie kod ASM. Do takich rzeczy w zupełności wystarczy IDA
http://www.hex-rays.com/idapro/idadownfreeware.htm

Poniżej część danej fun.


.text:622018E8 fld ds:flt_622040AC
.text:622018EE push ebp
.text:622018EF mov ebp, esp
.text:622018F1 push edi
.text:622018F2 push esi
.text:622018F3 push ebx
.text:622018F4 sub esp, 0BCh ; double
.text:622018FA mov esi, [ebp+arg_C]
.text:622018FD mov edi, [ebp+arg_10]
.text:62201900 mov ebx, [ebp+arg_18]
.text:62201903 mov ecx, [ebp+arg_1C]
.text:62201906 mov eax, [ebp+arg_24]
.text:62201909 mov edx, [eax]
.text:6220190B mov [ebp+var_94], edx
.text:62201911 mov edx, [eax+4]
.text:62201914 mov [ebp+var_90], edx
.text:6220191A mov edx, [eax+8]
.text:6220191D mov [ebp+var_58], edx
.text:62201920 mov edx, [eax+0Ch]
.text:62201923 mov [ebp+var_3C], edx
.text:62201926 mov edx, [eax+10h]
.text:62201929 mov [ebp+var_54], edx
.text:6220192C mov edx, [eax+14h]
.text:6220192F mov [ebp+var_40], edx
.text:62201932 mov edx, [eax+18h]
.text:62201935 mov [ebp+var_64], edx
.text:62201938 mov edx, [eax+1Ch]
.text:6220193B mov [ebp+var_44], edx
.text:6220193E mov edx, [eax+20h]
.text:62201941 mov [ebp+var_6C], edx
.text:62201944 mov eax, [eax+24h]
.text:62201947 mov [ebp+var_68], eax
.text:6220194A fld qword ptr [ecx]
.text:6220194C fstp [ebp+var_50]
.text:6220194F mov eax, [ecx+8]
.text:62201952 mov edx, [ecx+0Ch]
.text:62201955 mov dword ptr [ebp+var_30], eax
.text:62201958 mov dword ptr [ebp+var_30+4], edx
.text:6220195B mov eax, [ecx+10h]
.text:6220195E mov edx, [ecx+14h]
.text:62201961 mov [ebp+var_28], eax
.text:62201964 mov [ebp+var_24], edx
.text:62201967 mov eax, [ebp+var_58]
.text:6220196A inc eax
.text:6220196B mov [ebp+var_80], eax
.text:6220196E mov ecx, [ebp+var_64]
.text:62201971 add ecx, [ebp+var_58]
.text:62201974 lea edx, [ecx+1]
.text:62201977 mov [ebp+var_84], edx
.text:6220197D mov eax, [ebp+var_44]
.text:62201980 add eax, ecx
.text:62201982 mov [ebp+var_70], eax
.text:62201985 add eax, 2
.text:62201988 mov [ebp+var_88], eax
.text:6220198E mov eax, [ebp+var_90]
.text:62201994 inc eax
.text:62201995 imul eax, [ebp+var_6C]
.text:62201999 add eax, [ebp+var_70]
.text:6220199C mov [ebp+var_7C], eax
.text:6220199F add eax, 2
.text:622019A2 mov [ebp+var_8C], eax
.text:622019A8 mov eax, [ebp+var_68]
.text:622019AB mov edx, [ebp+var_7C]
.text:622019AE lea edx, [eax+edx+1]
.text:622019B2 mov dword ptr [ebp+var_78], edx
.text:622019B5 mov edx, [ebp+var_3C]
.text:622019B8 add edx, dword ptr [ebp+var_78]
.text:622019BB cmp [ebp+var_58], 1
.text:622019BF jz loc_62201E80
.text:622019C5 fldz


_______________________________________
Przy okazji google nie gryzie
source code fGarchJarosław Rybski edytował(a) ten post dnia 11.05.11 o godzinie 15:29



Wyślij zaproszenie do