|
DVD AVI Converter Plus (Build 030110) |
|
amois |
|
Program Tipi: * |
|
Araçlar:
SoftIce |
|
|
|
|
"Sadece oluler savasin sonunu gordu."
|
Yazı |
Aspack ile paketlenmis, Unpack islemi size ait.
"amois", "amois@fb.org" ve "1907" -> [bpx hmemcpy]
-> [F12] -> [F10]
biraz takip ->
...
0167:0042D2F6 PUSH EAX
<- "1907"
0167:0042D2F7 PUSH EDI
<- "amois@fb.org"
0167:0042D2F8 PUSH ECX
<- "amois"
0167:0042D2F9 CALL [009F4A78]
<- util.max -> util.dll
0167:0042D2FF ADD ESP,0C
0167:0042D302 TEST AL,AL
0167:0042D304 PUSH 00
0167:0042D306 JZ 0042D328
<- kotu cocuk
Registration kontrol islemi util.max dosyasi
tarafindan yapiliyor. Aslinda bu bir DLL dosyasi. Cagri sonucunda AL degerimizin
0'dan farkli donmesi gerekiyor. ->
...
0167:014416D6 CALL 01441E60
0167:014416DB MOV EAX,[ESP+18]
0167:014416DF CMP EAX,EBX
0167:014416E1 JZ 01441700
0167:014416E3 LEA ECX,[EAX-01]
0167:014416E6 MOV AL,[EAX-01]
0167:014416E9 CMP AL,BL
<- [d eax] -> :)
016F:01590B00 00 50 50 4C 46 58 4C 47-53 00 00 00 00 00 00 00 .PPLFXLGS.......
016F:01590B10 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
016F:01590B20 00 00 00 00 00 00 00 00-20 0B 00 00 31 00 00 00 ........ ...1...
016F:01590B30 00 58 4C 47 53 36 00 00-00 00 00 00 00 00 00 00 .XLGS6..........
016F:01590B40 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
016F:01590B50 00 00 00 00 00 00 00 00-50 0B 00 00 31 00 00 00 ........P...1...
016F:01590B60 00 39 37 4E 30 2D 50 50-4C 46 58 4C 47 53 2D 58 .97N0-PPLFXLGS-X
016F:01590B70 4C 47 53 36 00 4C 38 55-31 00 00 00 00 00 00 00 L???.L8U1.......
[F10] takibi sonucunda, gecerli seriali bulduk.
KeyGen algoritmasina girmeden ve herhangi bir patch yapmadan nasil KeyGenerator
yazabiliriz ? Tabii ki, util.max dosyasinin kendisini kullanarak. 42D2F9'da esp
degerimiz 115E318. 14416E6'da gecerli serial 1590B61'de duruyor. Bu bolgeye
yazildigi rutini, birazcik [F10] takibi ile
bulabilirsiniz. Boylece, gercekte memory'deki yerini tesbit edebilirsiniz. Bu
deger ile, esp degerimiz arasindaki fark "Delta" olsun.
.data
dll_adi db "utils.max",0
; dll adi
dll_base
dd 0h
; dll base image degeri
fonk_of dd 15a0h
; utils.max'da cagrilan bolum
serial_yer dd Delta
; esp ile fark (04??h)
sonuc db 32 dup(?)
; gecerli serial buraya
sallama db "1907",0
imeyl db
"amois@fb.org",0
isim db
"amois",0
.code
start:
lea eax, dll_adi
; dll_adi offset degeri
invoke LoadLibraryA, eax
; dll yukle
mov ebx, eax
; image base degerini sakla
add ebx, fonk_of
; cagrilan bolumu bul
lea eax, sallama
lea edi, imeyl
lea ecx, isim
push eax
push edi
push ecx
call ebx
; utils.max'daki bolumu cagir
mov eax, esp
; esp degerimiz eax'de
sub eax, serial_yer
; serialin memory'deki yeri
@cikis:
invoke MessageBox, 0, addr isim, eax, 0
; seriali goster
invoke ExitProcess, 0
end start
|
|
Bir programı kullanarak para kazanıyorsanız, programı satın alın.