
*pluskurt@hanimail.com*
2. About A Girl
2. About A Girl
ũ κ +ORC ũĿ ¿ ϴ.
ũĿ Ƿ ϴ ̶ о ̶
մϴ. ̸ HOW TO CRACK, by +ORC, A TUTORIAL Դϴ.
̴ϴ. ۿ +ORC ũ δ
α ũϴ ϴ ٶ ߽ϴ.
ְ, 켱 ϴ. α̶ ؼ ũ
ִ ƴ, 켱 .. ؾ , ܾ
, 켱 (?)ϴ ܼ߱ ִٰ ϸ
ذ ̴ϴ. ݵ ũ ʾҽϴ.
帧̶ . ȸ ǰ ʱ
ణ , 밳 ϰ Ա , ʱ
ٸ ũ ִٴ Ⱑ ˴ϴ.
ϴϱ, +ORCó ⸦ Ǯ
ϴ. , 켱 ϳ α ũϸ鼭, ڼϰ
Ϸ մϴ. ϸ, ٸ α ũϴ ʿ
մϴ.
ؾ . ٷ '' ũϴ ̴ϴ. 츮 ַ
W32Dasm ũϴ װԴϴ. ۿ W32Dasm
ũϰڽϴ.
βԵ W32Dasm ũϴ ٸ ũĿ Դϴ.
˾Ƴ ƴ϶ ſ. ۽, ̷
ƴ϶ մϴ. , װ ó ϱ װ ϴ
ʱ , ̷ ù ۷ ̶
մϴ.
Frog's print, +Adynts ϴ. װ
ٽ Ǯ ̾߱ ϴ ̴ϴ.
_W32Dasm7 ũϱ_
intro ߵ w32dasm ֽϴ. ٽ
ڸ,
1. ϳ ҽ Ͽ ۾ Ƚ Ǿ ִ.
2. ҽ
̴ϴ.
ù° , ƹ α(ǵ ũⰡ
. ð ɸϱ)̳ disassemble .
'ã(find)' ؼ, mov ܾ ã .
ã⸦ ϴ ̴ ̻ ٶ
ڰ ̴ϴ. ̰ ù° ̰. ι° ״
disassemble ؼ ҽ ٴ ̴ϴ. 츮 ҽ
ҷ 鿩 ƾ ϴµ, ̷
ٸ, ȵǰ. w32dasm Բ ҽ ''
ι° Ǵ ſ.
켱 ° ѻ . ù ° ֱ
ؼ ° ־ մϴ.
ؼ w32dasm ҽ ڵ带 ؾ մϴ. װ, w32dasm ̿ؼ
. ϱ, w32dasm w32dasm disassembleϴ ̴ϴ.
disassembleϴ ְ. ߿
߸ ų, Disassembler->Open File To Disassemble.. α(
, w32dasm7.exe) ϸ ˴ϴ.
disassemble w32dasmȭ鿡 ҽ Դϴ.
ҽ ϴ ̴ϴ. װ , и ̷
տ ̴ ҽ ٴ ̻. ¿
w32dasm Ѵٸ ҽ ϵ Բ ϴ. ȭ鿡 Ӹ ƴ϶
ũ '' ̴ϴ. Ž w32dasm 캸.
Ƹ winsys ̴ϴ. ũ 0byte̱. ( Ž
, ǥ.. ¿ Դϴ.) Ӽ (hidden). ٷ
̰ 츮 w32dasmȭ ִ w32dasm ҽ Դϴ.
w32dasm ϸ ˴ϴ. , ʰ ϸ ι°
ִ ̰ڳ.
w32dasm ߿ Functions->Import ֽϴ. ̰ α ϴ
Լ ݴϴ. ߿ DeleteFileA Լ ã ֽϴ.
DeleteFileA.. ̰ ϴ Լϱ..
ã(find) ̿ؼ DeleteFileA ãƺ.(ãµ ð ɸϴ.
ֳı? w32dasm ̴ϱ. :) 4 ã ֽϴ.
̴ϴ.
* Reference To : KERNEL32.DeleteFileA, Ord:0000h
|
.... Call 0047ABCC
call̶ ƾ θ Դϴ. ٸ, BASIC
GOSUB~RETURN . ڽϴ.
:α_
call ȭ__κ
.
.
.
:ȭ__κ
ȭ ʿ 1
ȭ ʿ 2
ȭ ʿ 3
.
.
ȭ ʿ 10
θ ư(ret)
.
.
.
: α_߰_κ
call ȭ__κ
.
.
.
. ȭ ⺸ ġ ۾ΰ ϴ.
ʿϴٰ . α ߰߰ ȭ ʿ䰡
̷ Ѵٸ ϰ.
ȭ__κ ̶ κ(ν) ȭ
ɾ call ؼ κ ҷ ָ
Ǵ ſ. call ϴ ˰?
ٽ ư, call 0047ABCC FileDeleteA Լ θ
˾ҽϴ. ؾ ұ. 츮 FileDeleteAԼ ҷ
DZ ٶ ʽϴ.
켱 FileDeleteA Լ Ǵ , 0047ABCC . w32dasm
'Go to location' ̿ؼ, 0047ABCC ֽϴ.
ֽϴ.
*Reference To: KERNEL32.DeleteFileA, Ord0000h
:0047ABCC FF251CA74900 jmp dword ptr [0049A71C]
̹ jmpԴϴ. dword ptr ߿ ƴմϴ.
ִٰ ϰ, dword double word '' Ÿ ִ Դϴ.
0101 0101 0101 0101 ̶ 16ڸ ڰ ִٰ ϸ 츮 װ ̷
4ڸ ְ, 8ڸ ̴ϴ. 01010101 01010101
ó Դϴ. Ǵ 16ڸ ֱ. dword ptr 32ڸ
ϳ ض.. 켱 ˸ ǰڽϴ.
߿ jmp Դϴ. jmp jump϶ Դϴ. ״Դϴ.
̴ :0047ABCC ̶ ϴ, 'ּ' Դϴ. BASIC
ȣ ־ϴ. ,
100 a=1
110 b=2
120 print a+b
130 print a-b
140 goto 150
150 end
̶ basic α ִٰ ϸ 100, 110, 120 :0047ABCCԴϴ.
̷ 'ּ' ʿ Ŷ մϴ. ¶ư jmp
dword ptr [0049A71C] 0049a71c Ű ϴ 32ڸ ŭ
ּ ϰ, ּҷ jumpϿ Դϴ. ̸ '
б'Դϴ. BASIC α goto 150 ̶
ֽϴ.
jump ϸ Ƹ DeleteFileA Լ ϴ ʿ
ɵ Ŷ ְ. jump ʵ ؾ .
RET ̿ϸ ˴ϴ. RET BASIC returnɰ մϴ.
call ؼ .
call κ ʿ κ ִ θٰ ߽ϴ.
ҷ ٽ ִ , , ҷ ư ϴ ,
۾ ϴ ٷ ret(return)Դϴ.
ϱ 츮 jump ret ٲٹǷν, DeleteFileA ʰ
ٷ call 0047ABCC, ҷ ư ϰԲ ̴ϴ.
˰?..
. ڵ带 ٲ . jump
dword ptr [0049A71C] ڵ ֵ FF251CA74900 Դϴ.
̰ ret ڵ C3 ٲٸ ǰ. Ȯ ϸ C39090909090
ٲ մϴ. ڵ 90 nop ڵ Դϴ. nop ƹ͵
ʴ Դϴ. 츮 ڸ ߱ ؼ 90 ÿ ٿϴ.
ߴ hex editor w32dasm ff251ca74900
c39090909090 ٲָ ° ִ ̴ϴ.
ù ° .
۾ 'Ƚ' Ǿ ֽϴ. .. ڼ , Ƹ ̷
ֽϴ. w32dasm 츮 'Ƚ' '
ִ' ̿. Ѿ, ̻
ٴ ڸ ̻ ʵ Ѵ. ̷
ϰ. ٸ Ƚ Ѿ ȵǴ '' ٵ..
ũ شٸ, 츮 ù° ̴ϴ.
켱, Ƚ '' κ ãƾ ϰ.
⼭ ܼҸ ϰڽϴ. Ϳ ⸦ Ϸ մϴ.
ũμ (register) ֽϴ. ʹ
α մϴ. ϱ ϰ
ִٴ . Ϳ ֽϴ.
(general-purpose register) ۿ Ư Ǵ
ֽϴ. ڼ å
̴ϴ. 켱 ʹ, ̸ ֵ Ϲ ó
ִ ̴ϴ. AX, BX, CX, DX Ͱ ֽϴ.
̷ ͵ 16Ʈ ̸ ϴ. (386̻ ũμ
32Ʈ ̸ ϴ. ̸ EAX, EBX, ECX.. ó տ E
ٽϴ.) 'Ʈ' κ ˰ ̴ϴ. 2 ڸ
Ʈ(bit) մϴ. 2 1010 4Ʈ ̷ ִٰ
ְ. ̷ 4Ʈ 16 ڸ Ÿ ִٴ ߰,
̹ ˰ մϴ. 8Ʈ 1Ʈ(byte)
մϴ. ϱ 1Ʈ ڸ 16 Ÿ Դϴ.
2Ʈ 1(word) մϴ. ϱ 1 4 16
ڸ Ÿ Դϴ. 1 16Ʈ Դϴ.
̸ڿ X ٷ 带 Ѵٰ ϴ . , AX 16Ʈ
̰, EAX 32Ʈ , , 2(double word, dword) Դϴ.
AX : 1111 0000 1111 0000
|=========||========|
Ʈ Ʈ
ֵ ϳ ʹ Ʈ Ǿ ְ,
Ʈ, Ʈ մϴ. AX
Ʈ AH, Ʈ AL̶ մϴ. BX BH, BL ǰ.
ٽ ư, ϸ ' ' κ ã
.
̷ ' ' κ
ְ, ''Ű Դϴ.
츦 .
:Ⱑ_ó
ax 1
cx 4
ax Ű
cx 0
ΰ?
ٸ ι°_κ
ʴٸ Ⱑ_ó (loop)
:ι°_κ
.
.
.
߿ loop̶ ֽϴ. ̰ ״ ݺ϶
Դϴ. ݺ Ƚ cx ־ϴ. loop
cx 1 մϴ. cx 0 Ǹ loop , ʴٸ
ݺմϴ. , w32dasm cxó ϴ ִٰ
ϴ ſ. 'Ƚ' ̰. Ƚ 90̶
ְ, 츮 1 Ѵٰ մϴ.
Ƚ 75 Ǿ , ̻ ϵ Ѵٸ ù°
ڵ带 ְ. ƽð?
̷ Ű dec(decrement)Դϴ. ,
w32dasm 'dec Ƚ' ó Դϴ. 츮 32bit
ǻ ̴ dword(double word)Դϴ. Ƿ dec
dec dword ptr Դϴ. 츮 ҽ Ͽ dec dword
ptr ãƾ . dec dword ptr Դϴ.
ٷ 'dec Ƚ' ɼ .
ã dec dword ptr ã ٴ
ϰ ƴ ϴ. .
grep ϸ ǰ. ˱δ dos grep ϱ, ⸦
grep.com Ƽ ϼ. winsys ִ 丮
մϴ.
c:\where_winsys_is_located> grep dec.dword.ptr winsys > dec.crk
winsys ִ ߿ dec dword ptr ִ ãƼ dec.crk
Ͽ մϴ. 츮 dec.crk
ǰ. ϴ.
File WINSYS:
:004028D8 FF8D60FFFFFF dec dword ptr [ebp+FFFFFF60]
:00403A41 FF8B523C5300 dec dword ptr [ebx+00533C52]
:00403A58 FF8B523C5300 dec dword ptr [ebx+00533C52]
:00403A6F FF8B523C5300 dec dword ptr [ebx+00533C52]
:0040457B FF8D60FFFFFF dec dword ptr [ebp+FFFFFF60]
:004206A1 FF8B523C5300 dec dword ptr [ebx+00533C52]
:00420832 FF8B523C5300 dec dword ptr [ebx+00533C52]
:00420849 FF8B523C5300 dec dword ptr [ebx+00533C52]
:00420860 FF8B523C5300 dec dword ptr [ebx+00533C52]
:00420BCB FF8B523C5300 dec dword ptr [ebx+00533C52]
:004402FF FF0A dec dword ptr [edx]
:004417A3 FF8B39275300 dec dword ptr [ebx+00532739]
:00441DB3 FF8B39275300 dec dword ptr [ebx+00532739]
:004433D1 FF8B39275300 dec dword ptr [ebx+00532739]
:00443BEC FF8B39275300 dec dword ptr [ebx+00532739]
:00443F77 FF8B39275300 dec dword ptr [ebx+00532739]
:0044420D FF8B39275300 dec dword ptr [ebx+00532739]
:00444989 FF8B39275300 dec dword ptr [ebx+00532739]
:00444AF6 FF8B39275300 dec dword ptr [ebx+00532739]
:00446ADD FF8B39275300 dec dword ptr [ebx+00532739]
:00446F0A FF8B39275300 dec dword ptr [ebx+00532739]
:00447275 FF8B39275300 dec dword ptr [ebx+00532739]
:0044740C FF8B39275300 dec dword ptr [ebx+00532739]
:004477EE FF8B39275300 dec dword ptr [ebx+00532739]
:00448250 FF0E dec dword ptr [esi]
:00448263 FF0E dec dword ptr [esi]
:00448276 FF0E dec dword ptr [esi]
:004523A9 FF8B91EE0100 dec dword ptr [ebx+0001EE91]
:004527BF FF8B09BB4500 dec dword ptr [ebx+0045BB09]
:004543F7 FF8BE8295300 dec dword ptr [ebx+005329E8]
:004543FD FF8BE4295300 dec dword ptr [ebx+005329E4]
:004545BF FF8B24295300 dec dword ptr [ebx+00532924]
:0045460F FF8BE3274800 dec dword ptr [ebx+004827E3]
:0045641E FF8BC31D4800 dec dword ptr [ebx+00481DC3]
:00456604 FF8BAB244800 dec dword ptr [ebx+004824AB]
:004572C6 FF8B39275300 dec dword ptr [ebx+00532739]
:004573A3 FF8B39275300 dec dword ptr [ebx+00532739]
:0045773A FF09 dec dword ptr [ecx]
:00457771 FF08 dec dword ptr [eax]
:00457891 FF0A dec dword ptr [edx]
:00457B2B FF08 dec dword ptr [eax]
:00457B6E FF09 dec dword ptr [ecx]
:00458143 FF8B09225300 dec dword ptr [ebx+00532209]
:00458154 FF8BC3EE0100 dec dword ptr [ebx+0001EEC3]
:00459218 FF8BE4295300 dec dword ptr [ebx+005329E4]
:00459645 FF8BAC345300 dec dword ptr [ebx+005334AC]
:0046401C FF8B39275300 dec dword ptr [ebx+00532739]
:004642C6 FF8BAC345300 dec dword ptr [ebx+005334AC]
:00464439 FF8BC3EE0100 dec dword ptr [ebx+0001EEC3]
:004648D3 FF8B2A5D1100 dec dword ptr [ebx+00115D2A]
:0046B846 FF08 dec dword ptr [eax]
:0046B9C7 FF0A dec dword ptr [edx]
:0046BD19 FF08 dec dword ptr [eax]
:0046BDEE FF08 dec dword ptr [eax]
:0046CB4C FF08 dec dword ptr [eax]
:0046CB54 FF0A dec dword ptr [edx]
:0046CBC5 FF08 dec dword ptr [eax]
:0046CBF6 FF08 dec dword ptr [eax]
:0046CCF8 FF08 dec dword ptr [eax]
:0046CDBC FF08 dec dword ptr [eax]
:0046CDC4 FF0A dec dword ptr [edx]
:0046CF12 FF08 dec dword ptr [eax]
:0046D093 FF08 dec dword ptr [eax]
:0046D2C5 FF08 dec dword ptr [eax]
:00470675 FF08 dec dword ptr [eax]
:00470AA9 FF08 dec dword ptr [eax]
:00470BAF FF8BE5215300 dec dword ptr [ebx+005321E5]
:00471154 FF08 dec dword ptr [eax]
:004713F3 FF08 dec dword ptr [eax]
:0047177A FF08 dec dword ptr [eax]
:00471BBA FF08 dec dword ptr [eax]
:00471E59 FF08 dec dword ptr [eax]
:00472517 FF08 dec dword ptr [eax]
:00472637 FF8BFDBA4500 dec dword ptr [ebx+0045BAFD]
:00472642 FF8BD1215300 dec dword ptr [ebx+005321D1]
:00472655 FF8BFDBA4500 dec dword ptr [ebx+0045BAFD]
:00474594 FF08 dec dword ptr [eax]
:00474A7C FF08 dec dword ptr [eax]
:00474F64 FF08 dec dword ptr [eax]
:004753BF FF08 dec dword ptr [eax]
:00475A47 FF8BC3EE0100 dec dword ptr [ebx+0001EEC3]
:00475B03 FF8BC3EE0100 dec dword ptr [ebx+0001EEC3]
:004761C3 FF08 dec dword ptr [eax]
:00476480 FF08 dec dword ptr [eax]
:0047677B FF08 dec dword ptr [eax]
:00476A34 FF08 dec dword ptr [eax]
:00476C82 FF88365D1100 dec dword ptr [eax+00115D36]
:00476D18 FF882D275300 dec dword ptr [eax+0053272D]
:00476FD8 FF08 dec dword ptr [eax]
:004774C0 FF08 dec dword ptr [eax]
:004779A8 FF08 dec dword ptr [eax]
:00477EB0 FF08 dec dword ptr [eax]
:004788B1 FF0A dec dword ptr [edx]
:00478A14 FF08 dec dword ptr [eax]
:004794C3 FF08 dec dword ptr [eax]
:0047972F FF08 dec dword ptr [eax]
:0047986D FF08 dec dword ptr [eax]
:00479AE8 FF08 dec dword ptr [eax]
:0047A07F FF08 dec dword ptr [eax]
:0047A0BA FF09 dec dword ptr [ecx]
:0047A1C8 FF08 dec dword ptr [eax]
:0047A203 FF09 dec dword ptr [ecx]
:0047A4A8 FF09 dec dword ptr [ecx]
, dec dword ptr [ebx+00532739] ´ٴ
ֽϴ. ebx+00532739 Ű ִ Ű ,
'ʱȭ' ϴ ɵ и Դϴ. ã .
ʱȭ ϴ Ű ִ Դϴ.
ϴ movԴϴ. mov move, ű
մϴ. 쿡 mov dword ptr . ڼ ڸ " mov dword ptr
[ebx+00532739], ʱⰪ " ɾ Դϴ. winsys
ã mov dword ptr [ebx+00532739] ã .
:0043F7F0 C7837C33530001000000 mov dword ptr [ebx+0053337C], 00000001
:0043F7FA C783392753002C010000 mov dword ptr [ebx+00532739], 0000012C
κ ã ֽϴ. winsys ϴ.
Դϴ. ̰ 츮 ã 'ʱȭ' κ̶ ְ. ֳϸ
ʱȭ κ Ÿ ̴ϱ.
w32dasm Urbanik Ƚ ʱⰪ 0000012C ־ϴ.
츮 ξ 000FFFFF ʱⰪ ָ, ι°
Դϴ. ڵ带 ٲμ
ֽϴ. C783392753002C010000 ̶ ڵ带 캸.
ٲ 츮 ϴ ٲ ִ ϱ.
⼭ . ߴ mov ɾ
ڽϴ. mov cx,3039 cx Ϳ 3039 Ű ݴϴ. ̿ ϴ
ڵ BA3930Դϴ. ڵ带 캸. BA 39 30Դϴ.
ڸ 39 30. ٷ κ 3039 Ÿ κԴϴ. 3039 39 30
ó Ÿϴ. ̷ ñ.
3930 3039 Ʈ ݴԴϴ.
̹ տ ֵ Ʈ Ʈ
˴ϴ. 3039 Ʈ 39̰, Ʈ 30Դϴ.
ּ Ʈ(39) ϰ, ּ
Ʈ(30) ϴ ſ 翬 Դϴ. 3039 3930ó Ÿ
Դϴ.
C783392753002C010000 . C78339275300 2C 01 00 00.
0000012C 000FFFFF ٲ ֱ ؼ ڵ 2C 01 00 00
FF FF 0F 00 ٲ ָ ǰ.
̷ ؼ ι° dz.
_w32dasm7.exe ũ_
1.ff251ca74900 c39090909090 ٲ ݴϴ.
2.C783392753002C010000 C78339275300FFFF0F00 ٲ ݴϴ.
̷ ؼ w32dasm ֽϴ.
ٽ , ݱ ˾Ƴ ƴմϴ.
Adynts frog's print а ű Ϳ Ұմϴ.
ۿ ACDSystem ACDSee PicaView ũϰڽϴ.(
ֽϴ.) ˾Ƴ Դϴ.
ε ˾Ƴ ٸ ũĿ ˾ Ȯ
ڽϴ.
-------------------------------------------------------------------------------
_̴ _: ٽ Ľϴ. ι°
, ʱⰪ ִ ߸Ǿ ־ϴ. (˷ֽ
ϴ. : )
Page 1
3. The Man Who Sold The World
3. The Man Who Sold The World
̹ ۿ PicaView32 ⸦ ϰڽϴ.
߾. ũ ó ſ ũ
а Ǿٱ. ٷ PicaView ũϴ
''ϴ. ó а, ϴ.
ϰ ִ , ؾ ϴ . ƹ͵ ϴ.
Ӹ ͵ ǰ. ڸ, ó ϴ
Ϳ ؼ ó ƹ͵ 翬 ʰھ?
ڼ մϴ. ɷ Ǵ ̿.
, о Ͻ
ٸ Դϴ. Ȯ ϼ̴ մϴ. Ǹ
ũ ̾ϴ. , ũ ƹ͵ е
ϱ, ϱ ٴ ϸ鼭
ϴ Ϸ մϴ.
key generator(KeyGen)̶ θ, Ϲȣ α
Դϴ. picaview32.dll disassembleؼ ҽ мؼ,
picaview ' ̸(name)' ' ȣ(registration code)'
, 츮 ̸ Էϸ ȣ ϴ
α Դϴ.
̷ о Ͻ ٸ ſ
մϴ. ϴ Ǻб(conditional jump) ġ
ϴ.(̰ ŵ ˴ϴ.)
̾߱⸦ ؼ ũ ʿ api Լ ̾߱ϰ
ǰ װ ߿ ũ ̶ մϴ.
, ̷ Ϲȣ α(keygen)
ƴմϴ. ־ , picaview(ACDSee
Դϴ.) ܼ ļ Ϲȣ ֱ Դϴ.
̷ ʺ ۷ε ϴٰ ϰ ڽϴ.
̹ , ̷ Ȩ picaview
־ϴ. ó ϼϱ ,
Ȩ ݰ Ǿ, ׳ ϵ ũ ִ
ʽϴ. ( ̼ ǻ Ƿ ᱹ ϵ ũ
ؾ߸ ߱ .) ̿ Ҵ
͵ ־ ʰ.
. :)
մϴ. Ƹ
. ڼϰ ϰڽϴ. :)
_PicaView32 (ver 1.3) ũϱ(SoftIce̿)_
PicaView32 ̴ ٵ ˰ ̴ϴ. acdsystem
αԴϴ. ȸ翡 ACDSee32 ˰ ̴ϴ.
acdsee picaview ȸ ǰ̴ϱ Ϲȣ ڵ嵵
ϴ. picaview acdsee web(www.acdsystems.com)
̴ϴ.
ϱ ؼ picaview.dll w32dasm
disassemble ߽ϴ.(̷ disassemble ʰ
ſ ŷӴٰ , 츮 ̷
ֽϴ. ƽô 輼? :) ʾƵ ˴ϴ.
softice ̿ؼ ҽ ϱ. sice
̿ؼ ũϰ ִٰ ϰ ̾߱⸦ ϰڽϴ. ϱ sice
츦 ּ.
Ž Ͽ 콺 ư
ɴϴ. picaview Register PicaView32... Ʒ ɴϴ.
Register.. ϸ ڰ ɴϴ. ̸ Ϲȣ ִ
Դϴ.
̸ pluskurt , Ϲȣ 1234 ڽϴ. е
˴ϴ. OKư . ߴ ó Ϲȣ
Ʋٴ ۻڰ ɴϴ. CtrlŰ DŰ siceȭ
. ( siceȭ CtrlŰ DŰ ٴ
ʰڽϴ.)
, sice ⸦ ϰڽϴ.
siceȭ ȭ ȭ ణ ٸ ֽϴ.
sice ƹ͵ ִٰ Ѵٰ ϱ ȭ
ϴ ٰ ϰڽϴ. ȭ
ؼ winice.dat ణ ٲϴ.
INIT="lines 60;color f a 4f 1f e;wd 22;wc 22;wr;code on;X;"
init="x;" ٲϴ. Ƹ init=κп ׳
INIT="X;" Ǿ Դϴ. κ ó ٲ ָ
sice ȭ Դϴ. sice
, ϴ . lines
ٲִ ̱, color ȭ ణ ٲ ſ. wd
â(data window) Ÿ ϴ Դϴ. wd 22ó
22 Բ ༭ â ũ⸦ ߽ϴ. wc ڵ
â(code window), wr â(register window) Ȱȭ Ű Դϴ.
code ڵ带 siceȭ鿡 Ÿ ƴ մϴ.
code on̴ϱ ڵ带 Ÿ. x sice
Դϴ. ϱ sice ȭ鿡 , ȭ鿡
ߴ ó Ctrl+D , x ص ˴ϴ.
̷ init=ο ɵ sice óϰ
մϴ. ״ sice ʱȭ .
siceȭ â(window) еǾ ֽϴ.
ߴٸ ȭ鿡
â (register window)
â (data window)
ڵ â (code window)
(command line window)
еǾ ſ. softice Ŵ ʾƼ
Դϴٿ. , softice
о, ִ ̷ ʺ ʾƵ ȴٰ ϳ.
softice Ŵ ֽϴ. ȳ ũⰡ
Ǵ ƿ. ް µ. pdfİ txt ־ ɷ
մϴ. о ʾƼ .
ٽ siceȭ ư. ִ â ״
¸ ִ âԴϴ. Ϳ ؼ ۿ
߾. ߴ EAX, EBX, ECX, EDX ̰,
͵鵵 ſ. ͵鿡
ϰڽϴ. ȭ ʿ ÷(flag) ͵ Դϴ. ÷
ʹ ƯϰԵ 0 1, ϴ. ÷ Ϳ
ϱ . б ٴ 忡 100 ⸦
? '' '' ֽϴ. ȣ ϰ
غϰ ִٰ '' 'ø' ٱ
ϴ . , 100 ö ﷷŸ .. :)
ư ÷ ʹ ٷ '' ̴ϴ.
ö , 1 0 Ѵٰ .
EAXͿ 11̶ ְ, EBXͿ 11̶ Ǿ
ִٰ սô. ٸ 0 Դϴ.
÷(zero flag) ˴ϴ. ÷װ ''ȴٴ ÷
1 ȴٴ Դϴ.
siceȭ鿡 o d i s z a p c, ̷ 8 ÷ Ͱ ǥ ˴ϴ.
z ٷ ÷ Դϴ. ÷װ ũ Դϴ.
ֳϸ ó Ϲȣ Էϴ α ִٰ . 츮
Ϲȣ '¥' Ϲȣ ϰ ٸ ÷װ
ǰ, ʴٸ ˴ϴ. ÷װ Ǹ (
̰.. :) бϰ, ʾҴٸ ٸ б ϰų ƴϸ
б ʰų ϴ α ϴ. ̷
Ǻб(conditional jump) ̿ߴٰ . ϱ 츮 Ϲȣ
, ÷ , Ǵ ؼ 츮 ϴ
б ֵ ְ. ̴ ũ ϳԴϴ.
⼭ r(Register)ɿ ˾ƺ. r debug.com(debug.exe)
softice ִ r []> ؼ,
ٲ ֽϴ. EIP ٲٰ , sice r
eip ָ, Ŀ â EIP=00001234 ġϰ ǰ, ű⼭
츮 ڸ Ἥ eip ٲ ִ ̴ϴ. ÷
0 1, ϳ ϱ, Ŀ Ű
Ȱȭ/Ȱȭ(toggle) Դϴ. , ÷װ Ǿ
¿ r fl z (register flag zero) ÷װ Ǵ
Դϴ. ٸ ͵ ٲ ֽϴ. r fl a r
fl só ̿.
â . ̰ ״ ִ ͵ ǥմϴ.
â ִ δ d ֽϴ. d eax Ѵٸ eax
ִ â Ÿϴ. d ''̶ ϸ ''
شϴ κ Ͱ â ǥõ Դϴ.
ڵ â ڽϴ. ڵ â ٷ ҽ Ͽ ִ
Ÿϴ. 츮 ַ ڵ â ũ ϰ ˴ϴ.
ۿ ô ҽ ڵ â Ÿ
̴ϴ. IP ֽϴ. IP(Instruction Pointer) ip(EIP)Ϳ
˴ϴ. ̸ ֵ, Ǵ ּҸ Ÿ
Դϴ. 00001234 ּ ʶ ip
00001234 ̰, ڵ â 00001234ּҿ ִ ɿ ִ Ⱑ
ġ ̴ϴ. ǻ ̰ ' ' θڽϴ.
쿡 Ÿϴ. е Ʊ ߴ ʱȭ ߴٸ
Ÿ ⸦ ̴ϴ.
Ʒ ٷ Ű Դϴ.
ִ siceδ '_._' ֽϴ. ħǥ(.)
ϸ ڵ â Ⱑ ִ ǥմϴ. ذ
? CtrlŰ Page Up/Page DownŰ . ڵ â Ѱ
̴ϴ. ̷ Ctrl+PageUp/PageDownŰ ̿ؼ ڵ â
캸 Ⱑ ִ ֽϴ. ħǥ
Ⱑ ִ ڵ â Ÿ ȴٴ .
â ̷ ֽϴ. â AltŰ
PageUp/PageDownŰ ̿ؼ ֽϴ.
. Ⱑ 츮 Դϴ. Help ϸ
ٿ Ÿ . Alt+c ٰ ڵ â ̸ Ŀ
Դٰ ϰ ֽϴ. ߵ, Alt+d Ŀ ٰ
â ̸ Ű ٴմϴ. Ŀ ٿ ShiftŰ Ű
̿ؼ ٽ ֽϴ.
siceȭ鿡 ϰ, sice ɾ ˾ƺڽϴ.
sice̶ , debug.com(debug.exe) ɰ . ٸ
sice 뼺ְ ϰ, dz ɾ ֽϴ.
⼭ ⺻ ɸ ڽϴ.(Ʊ ߵ,
sice Ŵ о ߽ϴ. :)
켱 t(Trace)Դϴ. ܰ ڵ
մϴ. ù° ۿ , Ÿ ̿ؼ, 츮
α ܰ ִٰ ߽ϴ. , t ϳ
ϴ . ̷ ϳ ɾ ip ɾ
Ű.(, Ⱑ Ʒ ٷ Ű ٴ ) siceȭ鿡
t . Ⱑ Ʒ ̴ Ͱ eip ȭ Ȯ
̴ϴ. ̷ t ̿ؼ ϳ ϴ
Ƹ tracing̶ ϳ ϴ. 츮δ Ʈΰ? (
Ʈ̶̽ ʰ Ʈ̶ ϴ ڽϴ.) ƹư,
̷ t ſ Ŷ ְ.
sice Ű t ְ մϴ. ٷ F8Ű t ִ
ŰԴϴ. (̰ winice.dat ĥ ֽϴ. ã .) ϱ
tracing̶ Ʈ̶ ʰ, F8
ǥ Դϴ.
p(Proceed) ֽϴ. ̰ tɰ ϴٰ
ֽϴ. ϳ ɾ մϴ. ٸ и
ֽϴ. ڽϴ.
:α__κ
.
.
.
.
:α_߰_κ
call ȭ_ a
ȭ____ b
.
.
.
:ȭ_
ȭ___ʿ_1 c
ȭ___ʿ_2 d
.
.
ȭ___ʿ_10 e
ư(ret) f
:α_
, α ִٰ . ip ؼ ʿ ĺ
ҽϴ. a ʶ . t aɾ
մϴ. t cɾ մϴ. ֳϸ call ؼ
ȭ_ κ ҷ ־ κ پ Ѿ Դϴ. ٽ
t d, ؼ t ϸ f b
մϴ. , tδ
a -> c -> d -> -> e -> f -> b
sice ȭ Ⱑ Ű ٴ Դϴ.
ٸ p . a ʶ ϰ, p
c ƴ b ġմϴ. , call ҷ κ
''Ǿ . ϱ, ȭ ɾ ʿ
, ȭ ǰ ִٴ ˰
p ϸ ǰ. p ٸ, call
κ ϱ ̴ϴ.
pɰ t ̸ ̴ϴ. sice F10Ű p ϴ
ŰԴϴ.
˾ p retԴϴ. p ̹ ˰ ְ, ret ڿ
پϴ. ret ؼ ̹ ⸦ ֽϴ. ̷
. α c ִٰ ô. ϱ t
ű ̰. c ϱ ڵ
κ̶ ؼ ٷ κ , κ θ κ
ư ʹٰ ô. ϱ, b ٽ ư ʹٰ Դϴ.
ϴ t ְ װͺٴ p ret
ϴ. p ret ret ϶ Դϴ.
f ret ϱ, ű ret ϰ b
Ⱑ ġ Դϴ. p ret Ŷ մϴ.
sice F12 p ret մϴ.
g @ss:esp . ̰ p ret ణ մϴ. ɿ
ڼ ʰڽϴ. ڼϰ Ϸ ؾ ϱ
Դϴ. stack Դϴ. p ret g @ss:esp Ŵ..
ϸ ˴ϴ. ణ ⸦ ڸ, call κ ip
Ű ٰ սô. ֿ ϴٰ ret ٽ call θ
ip ư մϴ. '' ,
ּ(return address) ˰ ־ ϰ. ʿ (stack)̶
̴ϴ. Ϳ ˴ϴ. SP(Stack Pointer) SS(Stack
Segment) ٷ Դϴ. g(go till) 'ּ' Բ Ἥ ּұ
϶ Դϴ. ϱ g @ss:esp ' ּ' ϶
̰. ? ⼭ stack ڼ
ʰڽϴ. ȸ ְ. picaview ⸦ ʹ
ϰ ־ϱ ư. g @ss:esp ϴ Ű F11Դϴ.
, ٽ picaview ư.
츮 ̸ Ϲȣ ְ Ctrl+d siceȭ Խϴ.
̹ . ٷ ߴ(breakpoint) Ϸ ϴ ̴ϴ.
ߴ(, Ƕ ߴ̶ ϰڽϴ) Ʊ
gɰ 谡 ֽϴ. g ϰ '' ̶
߽ϴ. ٷ ̷ 'ߴ ' ִ ߴ ϴ ̶
˴ϴ. sice ߴ ϴ ֽϴ.
bpx Ϸ մϴ. bpx GetDlgItemTextA
մϴ. sice α ϴٰ, α
GetDlgItemTextA Լ ϸ sice α ߰ κ
ڵ â ְ ˴ϴ. ϰ ִ ذ
ֽϴ. GetDlgItemTextAԼ ϴ , sice
Ѵٴ .. ̿. 켱 bpx GetDlgItemTextA siceȭ鿡
(ҹڸ ʿ ϴ) Ctrl+d sice ȭ
. , ߴ ִ ̾߱ ϰڽϴ.
bl, bd, bc, be װԴϴ. bl(list breakpoint) ߴ
ִ Դϴ. ϱ bpx GetDlgItemTextA bl
, ٿ sice ó ߴ Ǿ ִٴ Ÿ ݴϴ.
bd(disable breakpoint) ߴ ̴ Դϴ.
ߴ ϰ ʹٸ, bd ɰ ߴ ȣ ָ
˴ϴ. GetDlgItemTextA ߴ ȣ 0̴ϱ, bd 0
ߴ ֽϴ. Ǿ Ȯϱ
ؼ bl . Ʊʹ ٸ ߰ Դϴ. bc(clear
breakpoint) ߴ ƿ ̴ϴ. bd ߴ
be(enable breakpoint) ٽ , ߴ
״ ̴ϴ. be ɵ bd ó ߴ ȣ Բ ϴ.
, ü 츮 GetDlgItemTextA Լ ߴ ϴ .
GetDlgItemTextA Լ ̸ ֵ(Get Dialog Item of Text ΰ?
:), ȭ (dialogbox) ̳ Ƶ̴ մϴ.
, Լ ߴٸ ̳ ְ, ߴٸ
0 ݴϴ. 츮 (̰͵ ȭ) ̸
Ϲȣ ־ϴ. ̰͵ Ƶ̱ ؼ picaview
getdlgitemtext Լ Դϴ. (Լ̸ ڿ A
32bitԼ մϴ) ̷ ȭڿ Ϲȣ ̴
α getdlgitemtext Լ Դϴ. ,
GetWindowText Լ ̴ Դϴ.
getwindowtextԼ մϴ. â(window) â
ǥٿ ִ ƵԴϴ. â
ֽϴ. 츮 getdlgitemtexta Լ ߴ ߴ
˰.
ϳ ִ ֽϴ. picaview getdlgitemtext Լ
Ŷ Դϴ. ϳ '̸' Ƶ̱ ؼ ̰,
ٸ ϳ 'Ϲȣ' ̱ ̾ ̴ϴ.
, ڿ ִ OKư ô.(׳ ĵ ˴ϴ)
Ʊʹ Ϲȣ Ʋٴ ڰ ʰ siceȭ Ÿϴ.
Ƹ Ʒ ڵ â Ÿ Դϴ.
USER32!GetDlgItemTextA
0137:BFF61657 BC96 MOV CL, 96
0137:BFF61659 55 PUSH EBP
.
.
.
0137:BFF6167E C21000 RET 0100
.
.
-----------------USER32!.text+0654--------------------
USER32!GetDlgItemTextA Դϴ. picaview
getdlgitemtextaԼ ߱ sice 츮 Դϴ.
Ctrl+d sice . ˴ϱ? sice
ϴ. ٽ Ctrl+d sice ֽϴ. Ʊ
, picaview getdlgitemtextaԼ ϰ ֳ ϴ.
ϱ, sice 츮 װ Ű. sice ȭ
Ϲȣ Ʋȴٰ ϴ ڰ ֽϴ. Ȯ ư
ڸ ְ, ٽ ѹ OKư ô. ٽ siceȭ Դϴ.
̹ F11 ô. sice 츮 picaview ڵ尡 ִ
ϴ.
ֽϴ. sice ó 츮
picaview ڵ尡 ִ ƴմϴ. USER32!.text+0654 ִ κ
ֵ װ user32.dll ڵ尡 ִ Դϴ. 츮
κ θ(call) picaview ڵԴϴ. Ƿ F11(G
@SS:ESP) picaview ڵ ̴ϴ. picaviewڵ Ʒ
̴ϴ.
:10005FBE FFD6 call esi ;call
getdlgitemtexta
:10005FC0 8D4C2464 lea ecx, [esp + 64]
;Ϲȣ Ƶ
:10005FC4 68C9000000 push 000000C9
:10005FC9 51 push ecx
:10005FCA 68C9000000 push 000000C9
:10005FCF 57 push edi
:10005FD0 FFD6 call esi ;
picaview disassembleؼ ҽ Ϻθ
̹Ƿ, siceȭ Ȱ Դϴ. ״ ˾ƺ
ſ. F11Ű picaviewڵ call esiƷ 밡
ġ Դϴ. , call esi call getdlgitemtexta Դϴ. call
ؼ 'Ϲȣ' ƵԴϴ. F10 ܰ .
´ call esi ٽ ѹ user32ڵ Դϴ.
F11 picaviewڵ ƿɴϴ.( F10(p) ret
ǰ, F12 Դϴ.) call esi ؼ '̸'
Ƶ鿩 ſ. d esp+64 . â 츮
Ϲȣ Ÿ ſ. 1234. d esp+20 غ 츮
̸ â Ÿ ̴ϴ. pluskurtԴϴ.
߿ test al, al/je 10006008 ǹ̸ ˾ƺ. mov al,
[esp+20] ɿ '̸' alͿ Űٴ .
(Ͻ. ax ah Ʈ, al̶ Ʈ
ִٴ .) test al, al al 0 ƴ ȮѴٰ
˴ϴ. , 츮 ̸ ִ ̰ ־ Ȯϰ
ִ ̴ϴ. ̸ ƹ͵ ʾҴٸ 翬 ȵǰ.(picaviewԴ
Դϴٿ) je Խϴ. je jump equal, ٸ
б϶ Դϴ. б . տ test al, al ؼ al
0̶ zero flag ǰ, Ǹ je ɿ ؼ б(JUMP)
Դϴ. 츮 , ̸ ־ ⼭ б
ʽϴ(NO JUMP). ⼭ . r fl z
. sice ȭ鿡 NO JUMP JUMP ٲ ̴ϴ. ٽ ѹ r fl z
NO JUMP ˴ϴ.
ؼ κ .
:̸_о_̱
:10005FE2 0FBE16 movsx byte ptr edx, [esi] ;̸
ھ о
:10005FE5 52 push edx
:10005FE6 E81D210600 call 10068108
;빮ڷ ٲ
:10005FEB 83C404 add esp, 00000004
:10005FEE 3C41 cmp al, 41 ;'A'
:10005FF0 7C04 jl 10005FF6 ;
:10005FF2 3C5A cmp al, 5A ;'Z'
:10005FF4 7E04 jle 10005FFA
;'A'~'Z', ĺΰ?
:10005FF6 3C20 cmp al, 20 ;ƴϸ
ĭΰ?
:10005FF8 7506 jne 10006000 ;
ƴѰ?
:10005FFA 8A06 mov al , [esi] ;
:10005FFC 884500 mov [ebp+00], al ;ҷ
̸ ڸ
:10005FFF 45 inc ebp ;
:10006000 8A4601 mov al , [esi+01] ;
ڸ
:10006003 46 inc esi
;о
:10006004 84C0 test al , al ;̸
о
:10006006 75DA jne 10005FE2 ;ʾҴٸ
̷ ڵ带 ó е ణ ϱ ̴ϴ.
Ӹ ߴ°ɿ.
movsx byte ptr edx, [esi]
Ʊ esi ̸ Ű ִٴ ˾ҽϴ. movsx ߿
ۿ ȸ ֽϴ. ڼ ϱ ϰ, 켱 ⼭,
츮 ̸ ھ о ̰ ִٰ ϸ ˴ϴ.
call 10068108
̰ ϴ κ θ callϱ. к ڸ 츮
̸ о 빮ڷ ٲְ ִ κ ȣϴ callԴϴ.
ִٰ ٽ ڼ .
cmp al, 41
al 빮ڷ ٲ ̸ ֽϴ. al 41 ''ϰ ִ ̴ϴ.
cmp compare, ϴ Դϴ. 41 ٷ asciiڵ
A شϴ Դϴ. ϱ 빮ڷ ٲ ̸ A ϰ ִ
̴ϴ.
jl 10005FF6
cmp al, 5A
jle 10005FFA
jl jump if less, ؼ ۴ٸ б϶
Դϴ. cmp al, 5A al 5A(asciiڵ Z شմϴ) ϶
̰, jle jump if less or equal, ų б϶
ǰڽϴ. , 빮ڷ ٲ ̸ ĺ Ȯϰ ִ
ڵ尡 ǰ. al A ũ Z Դϴ.
pluskurt ù p 빮ڷ ٲ P, ̰ ĺ̴ϱ jle
10005FFA бϰ.
cmp al, 20
jne 1000600
ڵ尡 ϴ ̴ϴ. 빮ڷ ٲ ̸
ĺ ƴ Ǵµ, Ȯϴ ڵԴϴ. 20
asciiڵ忡 (SPace)̴ϱ. 鵵 ƴ϶ 100600 бմϴ.
mov al, [esi]
mov [ebp+00], al
inc ebp
빮ڷ ٲ ̸ ĺ̳ ɴϴ. inc ebp
(increment)ϴ.
mov al, [esi+01]
inc esi
test al, al
jne 10005FE2
inc esi esi ŵϴ. ̸ '' ڸ Ƶ
غ ϴ Դϴ. 캼 ̸ ḭ̆ų ĺ 쿡 ebp
Ų Ŀ ̰ , ٸ 쿡 ebp Ű ʰ
ȴٴ ſ. ̸ pluskurt ʰ, +kurt
ٸ, + ĺ 鵵 ƴϱ ebp Ű ʰ ٷ ̰
. ˰? test al, al/jne 10005FE2 ̸ о
鿴 Ȯϰ ʴٸ ٽ :̸_о̱ ư κ
ݺϰ մϴ.
ؼ ڵ带 .
:10006008 8D4C2464 lea ecx, [esp + 64]
:1000600C 8D542420 lea edx, [esp + 20]
:10006010 51 push ecx
:10006011 52 push edx
:10006012 C6450000 mov [ebp+00], 00
:10006016 E835020000 call 10006250
:1000601B 83C408 add esp, 00000008
:1000601E 83FB01 cmp ebx, 00000001
:10006021 7539 jne 1000605C
:10006023 8D442464 lea eax, [esp + 64]
:10006027 8D4C2420 lea ecx, [esp + 20]
:1000602B 50 push eax
:1000602C 51 push ecx
:1000602D E83EF6FFFF call 10005670 ;
? ũ ó д ̶ ذ ȵ
ϴ. ڼ Ѵٰ ߴµ, ڽϴ.
̹ '' غ. ù° ȭǥ ִ ܰ躰
.( F10 p ̶
ƽ?) ߴ մϴ. ִ ߴ
ϴ. 콺 call 1005670̶ ִ κп Ŭ
ϸ ٲ ߴ ˴ϴ.
ũ ϴٺ ϴ. ߿ call̰ ƴ
Դϴٿ. , ó . ù° ȭǥ ִ
call ߿ callԴϴ. . t call
κ ȣϰ ִ ڼ , ° ȭǥ ִ
б(jle) . sice JUMP ̴ϴ. r fl z
zero flag ؼ NO JUMP ٲ㺸. siceȭ ͺô.
(Ctrl+d ų F5 ˴ϴ. F5 xԴϴ.) Ʊʹ ٸ
ڰ ɴϴ. ༭ ٴ Դϴ.
츮 ũ ɱ? ٽ ѹ picaview ʴٴ
ֽϴ. ( ڵ带 ٲٰ Դϴ.)
call 10005680
add esp, 00000008
test eax, eax
jle 10006077
츮 ٲ б jle eax бϴ ̾ϴ. eax
0̾ jle б⸦ ߴ ̾µ 츮 r fl z
б⸦ ʰ ٲ . , б⸦ ٲٱ⸸
Ѵٰ ũ Ǵ ƴմϴ. , ̷ Ƿ call 1005680̶
call ſ ߿ call̶ ֽϴ. call eax
ؼ, Ǵ ϴ б⸦ ϴϱ Դϴ. ϱ
call ȣϴ κ ڼ ʿ䰡 ְ.(̷
call test eax, eax ͼ call ˻ϰ, ٷ
бⰡ α Դϴ.
б⸦ ִ ε ũ 찡 ϴ.)
ۿ ٽ ڽϴ. ð ɾƼ ϱ, ʹ
鱺.
-------------------------------------------------------------------------------
̴
test eax, eax/jle 10006077 κп JUMP NO JUMP ߸
Ǿ ־ϴ. piranha@jean.ssm.samsung.co.krԲ ˷ ּż
ƽϴ. ϴ.
Page 1
4. The Unforgiven
4. The Unforgiven
ۿ øڽϴ. 켱 ٸ ũĿ
Ű ýϴ. 뵵 ƴմϴ. (beginners
߱) ٿ غ, ׳ ״
츮 ٲٱ⸸ ߽ϴ. ۵ ̶ ۵
մϴ. Ȥ κ ,
picaview а ٽ о ֽϴ.
д տ ۰ Ǵ κ Դϴ. , տ
picaview ũ Ϲȣ ̸ 踦 캸, ̸ Էϸ
Ϲȣ ϴ α(keygenerator) ߽ϴ.
ũĿ ٸ ߽ϴ. ٸ
ְ, ũĿ ִ ̶ մϴ.
۾̴ Little-John̶ ϴ ũĿԴϴ.
-------------------------------------------------------------------------------
winrar 95 ver.2.0: the guts of a simple protection
Written by Little-John
Micro$oft ûϰ ġū α̳ ø ϰ ִ.
95 OS ġų, RAM ũ
ý ڿ ȿ ø ʴ Ȳ, 츮
ؾ ұ? ̴. ũ ϴ
ũⰡ ū ϳ ̴. ִ Ʈ
ִ. ( ) ϳ, Ǿ Ǹ Pkzip ִ,
Winzip 6.x̴. װͿ ߰, ٸ ãٰ Ǹ
GUI 32bit ⸦ ãƳ´. Eugene Roshal WinRAR 95 v2.0 ٷ
װ̴.
ʿ :(SoftIce)
Hex Editor
γ(brain)
ϴ ٸ ̿ص ȴ.
Winrar ϴ , ¥ ϴ
' ڵ(Authenticity Code)'̴. ƴ
Ϳ ִ.
, , , , , , ... ƾ..
ư , (Ϳ :) ڰ ̷ ߴ
: " ִ ̶ϴ". , ũ,
ٸ ̿ ģ...
ص, Eugene ȭ ʾҴ. ϵ
" ƴ" WinRAR95 ̴. Ǭ ʰ, Ӹ
ʿ䵵 , warez ӿ Ϻϰ ϵ
־. ũϴ
Ѵ.
Soft-Ice ũ.. ... ڵ带 ϱ ߴ.
WinRAR95 ϰ, Option Registration Ѵ. "Enter your
regstration (AV) text" ִ ̸(Ǵ :) ִ´.
, Johnny .
ڵ带 ִ ϴ ִ´.(
123321 Ѵ.)
Soft-Ice (Ctrl-D ), GetDlgItemTexta ߴ
Ͼ . ̸ ȴ.
ó ؾ Ƹ ߴ ϰ ̸ ȭ ֳ
캸 Դ. ڵ带 캸.
ǥ ũϷ װ Ѵ.
ؼ, g , ٸ USER32!GetDlgItemTextA Լ
̴. ̹ ʿ . ؼ ڵ带
̷ ڵ带 ִ.
:004226CC 8D8554FFFFFF LEA EAX,[EBP+FFFFFF54]
:004226D2 50 PUSH EAX
:004226D3 8D459C LEA EAX,[EBP-64]
:004226D6 50 PUSH EAX
:004226D7 E84D66FFFF CALL 00418D29 ; ̷ο
call
:004226DC 83C408 ADD ESP,08 ;(stack)
ġ
:004226DF 85C0 TEST EAX,EAX ;Ϲȣ
³?
:004226E1 752F JNZ 00422712 ;¾/Ʋ
:004226E3 6A30 PUSH 30
:004226E5 6A1A PUSH 1A
"Ϲȣ ½ϴ. ּż ϴ" ִ ڸ
ʹٸ
:004226E1 752F JNZ 00422712 ;¾/Ʋ
:004226E1 742F JZ 00422712 ;¾/Ʋ
ġ ȴ. δ ġ ʴ.
Option->General ؼ Authenticity Code ٸ,
"Ϲ մϴ" ϴ ۻڸ ̴.
"CALL 00418D29" WinRAR
ൿϳ ƾ ϴ ̴.
ó Call ִ, 츮 ִ.
ϳ ̸ Ϲȣ ̿ 谡 ִ ˾Ƽ ùٸ Ϲȣ
˾Ƴ ̴.(̰ ô ̴. ʿϴٰ
ϴ°?) ٸ ϳ ̸ ´ ȣ
̴.(ª Ǹ ̴. Ѵ. û 鿡
ֱ KeyGenerator ʿ ʴ.)
° ϱ ٶ....
.. ƿ. ϰڴٴ ϴ. :)
winrar 츮 Ϲȣ ´ Ʋ ϴ ˱
ؼ Ʊ call(CALL 00418D29) ãư Ѵ. տ
ڵ , ڵ尡 ̴:
:00418F7D 8D8574FFFFFF LEA EAX,[EBP+FFFFFF74]
;̸/Ϲȣ call
:00418F83 50 PUSH EAX ;
:00418F84 FF35706D4400 PUSH DWORD PTR [00446D70]
;̸/Ϲȣ call
:00418F8A E871240100 CALL 0041B400 ; Call
Ű ƿ
:00418F8F 83C40C ADD ESP,0C ; ġ
:00418F92 85C0 TEST EAX,EAX
:00418F94 0F94C0 SETZ AL
:00418F97 83E001 AND EAX,01 ;if EAX EAX=0 =>
:00418F9A A348074400 MOV [00440748],EAX ; =>Ͼ
:00418F9F FF3528074400 PUSH DWORD PTR [00440728]
:00418FA5 E8BA830100 CALL 00431364
:00418FAA 59 POP ECX
:00418FAB 33C0 XOR EAX,EAX
:00418FAD A328074400 MOV [00440728],EAX
:00418FB2 A148074400 MOV EAX,[00440748] ;EAX=1 => WINRAR95
ϵ
:00418FB7 5F POP EDI ;EAX=0 => WINRAR95
ȵ
:00418FB8 5E POP ESI
:00418FB9 5B POP EBX
:00418FBA 8BE5 MOV ESP,EBP
:00418FBC 5D POP EBP
:00418FBD C3 RET
RET Ʒ ڵ .
:004226DC 83C408 ADD ESP,08 ; ġ
:004226DF 85C0 TEST EAX,EAX ;EAX=1ΰ? ƴ -
:004226E1 752F JNZ 00422712 ; ´ -
ȶ ũĿ
ڵ, call ൿѴ. EAX=0̸ ߸
Ϲȣ , EAX=1̸ Ϲȣ ̴.
EAX 1 ǰԲ ȴ.
?
.
:00418F8F 83C40C ADD ESP,0C
:00418F92 85C0 TEST EAX,EAX
:00418F94 0F94C0 SETZ AL
:00418F97 83E001 AND EAX,01
:00418F9A A348074400 MOV [00440748],EAX
츮 ڵ带 ٲٸ ȴ.
:00418F8F 83C40C ADD ESP,0C
:00418F92 33C0 XOR EAX,EAX ; EAX
0 .
:00418F94 B800010000 MOV EAX,1 ;EAX=1 =>ϵ
:00418F97 90 NOP
:00418F9A A348074400 MOV [00440748],EAX
EAX 1̴. ̸ Ϲȣ ִ
ϵȴ. α Ϲȣ ־ٰ ϴ´.
α ְ ȴ.
Ciao a tutti
By Little-John
-------------------------------------------------------------------------------
, ٸ ũĿ ű Ͱ ٸ
̰ ִ , ϴٸ ̴ϴ.
Page 1
5. Lithium
5. Lithium
ٽ picaview ̾߱Դϴ.
the unforgiven ó ܱ ũĿ ׳ 츮 ű⸸ ϴ
. ̷ ٴ Դϴ. the man
who sold the world 'ǽɽ' call(call 115670) ãƳ
߾ϴ. ǽɽ call eax ϵǾٴ
ۻڸ , ƴϸ Ϲȣ Ʋȴٴ ڸ
ȴٰ ߽ϴ. ̹ ǽɽ call ȣϴ κ
.
:10005670 56 push esi
:10005671 8B742408 mov esi, [esp + 08]
:10005675 56 push esi
:10005676 FF15F8600710 Call [KERNEL32!lstrlen] ;̸
̸ Ѵ
:1000567C 83F805 cmp eax, 00000005 ;5
̻ΰ?
:1000567F 7D04 jge 10005685
;ٸ б
:10005681 33C0 xor eax, eax
;ƴ϶ eax 0
:10005683 5E pop esi
:10005684 C3 ret ;ret
ǽɽ call κ θ ֽϴ. κ ̸
'' ϴ κ̶ ֽϴ. ٷ Call [KERNEL32!lstrlen]
ϰ . (, lstrlenԼ ũ̶ Ͱ е
װ ϴ ˰ մϴ. е
ְ. ڸ, lstrlenԼ ̸ ϴ
ԼԴϴ. ̸ Ʈ (ANSI version), character(Unicode
version) ݴϴ( (null terminated string)
ʽϴ))
cmp eax, 5
jge 10005685
̰ 5 ū Ȯմϴ. , 츮 ̸
5ڰ Ѵ Ȯϴ . pluskurtϱ 8ڸ ־.
ϱ Դϴ. 5 ̻ ʾҴٸ
ڵ մϴ.
xor eax, eax
pop esi
ret
xor eax, eax eax 0 ϴ. ۿ õ eax 0
Ǹ Ϲȣ Ʋٴ ڰ ˴ϴ. ȵ.
ϰڽϴ. xor eax, eax eax 0 ɱ.(the
unforgiven ̷ ־.)
xor XOR ϴ Դϴ. , OR, AND, NOT
? ߿ XOR(eXcluded OR)̶ ͵ ̴ϴ.
A B XOR A XOR B
0 0 0
0 1 1
1 0 1
1 1 0
XOR մϴ. ϱ, ٸ
1 ְ, 0 ݴϴ. xor eax, eax eax
ϴϱ 翬 0 ְ ǰ eax ˴ϴ.
eax 0 Ǵ . ذ ǰ? eax 0
sub eax, eax ְ. sub(Subtract)
״ Դϴ. eax=eax-eax ϴϱ 翬 eax 0
. ̷ 0 ʿ䰡 xor eax,
eax Ѵٰ ϳ. ϴ ó ӵ ٰ
մϴ.
, the unforgiven ó ̸/Ϲȣ Ű Ἥ
ũ ְ, 츮 װͺٴ keygen ִ ̴ϱ,
5ڸ Ѱ Ἥ jge 10005685 бϵ .
:10005685 682D224900 push 0049222D
;49222D.. μ
:1000568A 56 push esi
;esi-->pluskurt
:1000568B E820AD0000 call 100103B0
, call ֽϴ. 츮 call ϴ
˾ ؼ call ȣ κ 캸ƾ ұ? , ϸ
Ȯ ̴ϴ. װ ſ ϰ ð ɸ
ǰ. ̷ keygen ʽϴ.
, call ȣϴ κ ڼ , call
캸 call ϴ ֽϴ.
켱 ù° call ڽϴ.
push esi
call 100103B0
mov esi, eax
push ɾ Խϴ. push ణ .
ƸƮ 信 ־. ̶̼
ü ̾µ, ־ϴ. ģ ϰ
̾ ص ű⼭ ִ ٰ̾
˴ϴ. Ͻô е鵵 е̾. ̽,
ĵ ϰ ϰ.. ̾. п
, ϰ Ǿϴ. : ) ̽ ϴ
̾. ͼ ϰ ִ ģ ..
̾. ģ, ƸƮؼ ε ٰ ߴµ, ٳԳ
ڱ. .. Ͽư, ? ð
ֽϴ. ø մԵ ư. push ''
谡 ֽϴ. '' Ͷ ϰ, ò̸ .
ø ϴ ũ μ : ) ٷ ̷ ø
ò̿ ϴ push ̴ϴ. ϴ
. մ ؼ ø ϴ popԴϴ.
Ǿ ִ . push esi esi
ϴ Դϴ. ͵ ? ̷
ƸƮ ϱ ϸ鼭 ÿ . ̰ ð 谡 ִ
Դϴ. LIFO(Last In First Out)̶ Ҹ Դϴ. 츮 ϸ
() ɱ. ø ϼ,
մ ø ߿ . ذ ǰ?
(ò) ϰ, ͵ Դϴ. push
ʹ ߿ pop˴ϴ. push esi, push eax ߴٸ pop eax,
pop esi ִ .
push esi ÿ esi ߽ϴ. ⼭ esi pluskurt,
־ ̸Դϴ.(d esi Ȯ ֽϴ.) ̰ call
100103B0 ҷ ̴ϴ. call eax
˴ϴ. mov esi, eax eax esi Ű .
eax siceȭ â Ȯ . pluskurt
, eax 104C5DE5Դϴ. ߿. sice ?
104C5DE5(Ǵ ? eax ɵ Դϴ.) . ?
16 10 ٲ ִ Դϴ. 104C5DE5 10
273440229Դϴ. ٷ pluskurt "¥" Ϲȣ.
? call ̷ϴ. esi ִ '̸' 鿩
'Ϲȣ' . eax , ٽ esi
Űϴ.
ϰ ˾Ƴ Ϲȣ ־ picaview
ֽϴ. װ͵ ũ.(ED!SON̶ ũĿ ¿ ̷
Ǿϴ. , ۵ о ʰ ,
̸ pluskurt Ϲȣ 273440229 Է ְ. װ ũ
ƴ. ̸ ְ ݱ ϴٰ siceȭ鿡 ̴ ''
Ϲȣ ϴ ũԴϴ. pluskurt Ϲȣ
̾߱⸦ ϱ ؼԴϴ.) Ϲȣ
α ̱ call ȣϴ κ ڼ
ϰ. Ʒ ִ ° call ϴ
캸.( ġ ִ ̶ ̹ ְ Դϴٿ)
mov eax, [esp+14]
push eax
call 10068043
add esp, C
xor ecx, ecx
cmp esi, eax
sete cl
mov eax, ecx
pop esi
ret
ó mov eax, [esp+14] Խϴ. [esp+14] Ű ִ
Ϲȣ Դϴ. 1234. ̰ eax ű pushմϴ. ° call
1234 ְڱ. ڸ ° call 1234
picaview ˾ ִ Ϲȣ ٲ㼭, ù ° call ¥
Ϲȣ غ ϴ ̴ϴ. е picaview ˾ ִ
Ϲȣ ٲ۴ٴ ذ ٵ. ̷ ſ.
1234 "" ƴմϴ. Ʊ ù ° call picaview
Ϲȣ 16 104C5DE5 ""ϴ. 1234 ״
ڿ Դϴ. ° call 1234 ڿ 16 ٲٴ
̴ϴ. ° call eax 4D2 ̴ϴ. 16
4D2 10 ٲٸ 1234, õ ̹ 簡 Ǵ ſ. ϱ μ
picaview 4D2(1234) 104C5DE5 ִ Ű. ذ ǰ?
ι° call ϴ ذ Ǽ ˴ϴ.
츮 call ι° call ƴ϶ ù ° call̰. picaview
̸ Ϲȣ ߿, ڿ 1234
ٲٳ ϴ ϴ.
ɵ 캸.
° call , 츮 Ϲȣ(4D2) ¥
Ϲȣ(104C5DE5) ϴ Դϴ.
xor ecx, ecx ϴ е ſ. cmp esi,
eax ϴ ˰ڱ. , ° call eax(4D2) ù
° call ִ esi(104C5DE5) ϴ . cmp
ؼ ÷ Ѵٰ ߾. ( ,
״ ÷״ ̴ϴ.)
sete cl̶ ο ֽϴ. SETE(SET if Equal)
(condition) ϳ Ʈ(byte) 01 (set) ϴ
(Set on Condition) ϳԴϴ. ÷װ
Ǿ̰, Ǿٸ cl 01 . տ Դ cmp
esi, eax ؼ (Ϲȣ) ٸ ÷װ Ǿ ̰,
ٸ sete cl ؼ cl 01 (set) Դϴ.
Ǹ mov eax, ecx ؼ eax 1 װ retǾ Ҵ
test eax, eax / jle κп NO JUMP Դϴ. ̰ 'ϵǾ'
ڸ Ÿ ϴ .
˰?
ġ ̶ ⼭ ũϴ ãƳ ſ.
ã ̳? keygen ʰ picaview ׳ ũϴ ̿.
ֽϴ. ϳ α ũϴ
ϱ. ⼭ ݹ ã ִ sete ̿
Դϴ.
, . picaview 츮 Ϲȣ ¥ Ϲȣ ؼ
cl 01 ϴ. ʴٸ 00 .
ٽ eax ȴٴ , ٷ ߴ ݾƿ. ٷ eax 00 Ǵ
01 ǴĿ Ǵ ĸ ϴ ̴ϴ. .. 츮
Ϲȣ Ϲȣ clʹ 01 ˴ϴ.
00 . ݴ شٸ ɱ?
̳ ϸ. 츮 Ϲȣ Ϲȣ ϶
clͰ 00 ǰ, 쿡 clͰ 01 Ǵ ſ.
츮 ƹ ȣ( Ϲȣ ƴ ȣ) ־
picaview 츮 Ű. ? ϸ ˴ϴ. ϰ.
sete 츮 Ϲȣ ¥ Ϲȣ ؼ '' cl 01
̶ . setne(Set If Not Equal, setnz)
Ѵٸ...
, 츮 Ϲȣ ¥ Ϲȣ ؼ ' ' cl 01
. sete cl ڵ 0F94C1̾ϴ. setne cl ڵ
0F95C1Դϴ. ˾ҳİ? ̾߱ б
je(jump if equal, jz) ڵ 74Դϴ. jne(jump if not equal, jnz)
ڵ 75Դϴ(쿡 ̵ ڵ ٲ ֽϴ). ٷ
74 75 ٲٴ ũ ̰, ݱ Ǵ
ũ Դϴ. . 츮 Ϸ ϴ
ݾƿ?
ϱ sete ڵ 94 ϱ, Ƹ setne ڵ忡
95 ʰڳ ϰ ִ ſ. Ȯ
ֽϴ. ٷ a(Assemble) ̿ϴ ̴ϴ. sice a ָ
ip ְ ݴϴ. ϱ е
siceȭ鿡 Ⱑ sete cl ġ a .
ٿ Է ְ Ǵ ֽϴ. ű⼭
setne cl̶ ϴ. sice
Էϱ ٸϴ. ̻ Է ׳ ġ a
¸ մϴ. Ⱑ ִ ڵ尡 0F94C1
0F95C1 ٲ ֽϴ. setnz cl̶ ٲ ̿.
(equal̶ Ͱ zero ٲ㰡 ִٴ ̹ ƽ?
sice zero ϴ.)
ġ Ŀ sice . 'ϵǾϴ'ϴ ۻڰ
ٸ ̴ϴ. ̷ ϵ 'Ͻ' Դϴ. 츮
aδ ( ) picaview ڵ带 ٲִ
ƿ ٲ ƴϱ Դϴ. ƿ ٲٷ hex editor picaview
ٲ .(hex editor ڵ带 ٲٴ ƽ. about a
girl w32dasm ũ ߾) hex editor ٲ
'Ͻ' ƴ϶ Ǵ ſ.
. ̰͵ ϳ ũ ǰ? ݱ picaview ũϴ
˾ҽϴ. ϳ ¥ Ϲȣ siceȭ鿡(ù° call
eax) ڿ ִ ̾. ٸ ϳ ̷ sete cl
setne cl ٲٴ .
¶ư 츮 ⼭ , ǥ keygen ؼ
.
, ù ° call ȣϴ κ ڼ ҽϴ.
ݱ , 츮 ϴ Ϲȣ α
Ǵ ƴմϴ. ߿. picaview, 츮
̸ Ϲȣ ״ϱ.
. ݱ picaview '̸' ڰ ҽϴ.
ڰ ̶ ٷ ̸ '' 5 ̻̾ Ѵٴ .
'' ĺ 鸸 ϴ. +pluskurt
pluskurt picaview 忡 ̰ 8ڷ ̴ ̴ϴ. '+'
ĺ ƴϰ 鵵 ƴ 'Ư'̱ ̸ ̸ ,
.
ݱ Cα ڽϴ.
for (i=0; (c=getchar()) != '\n' ; ++i){
name[i]=toupper(c); /*빮ڷ ħ*/
if (isalpha(c)) /*ĺ̶ */
++length; /* ̸ ԽŴ*/
else if (isspace(c)) /*鵵 */
++length; /* ̸ ԽŴ*/
else /* 쿡*/
--i; /*о */
}
name[i]='\0';
if (length30) /*̰ 30ڰ 30°
ʹ*/
name[30]='\0'; /**/
.. ֽϴ. б C , ù
ķ Ƿ̴ϱ ̿.(..
ѽ. б Ⱦ߳
ȸ˴ϴ. θԲ ˼ϱ. ϱ 鿩 ϸ б
̴ּµ, ̿.) ׳ ȥ ɽ
Cå 鼭 .
?
̸ ִ ̸ ƹԳ ֵ Ǿ ִ
ƴմϴ. picaview ڿ ̸ ڳ Ƶ̴
. 30 Դϴ. ̸ 30 Ѱ ,
Ȯ ϱ ؼ Ʒ 뵵 Խϴ.
̹ . picaview ȣ
ڵ带 ڽϴ. ϱ ù ° call ȣϴ κ
.
Page 1
6. Until It Sleeps
5. Until It Sleeps
ι° ܱ ũĿ űϴ.
۵ ʺڸ ̴ ϱ Ư
ϴ. 漳 ణ ʿ κе Ƽ
漳 ϰڽϴ.
켱 츮 ű鼭 ܾ ε, protection
scheme̶ ܾ ״ Űϴ. 츮 ٲ ã
ؼԴϴ. protection scheme ˾Ƴ ' ' ͵ ũ̶
ְ. protection scheme .
켱 ̸ Ϲȣ Էؾ ϴ paper protection scheme ֽϴ.
.
ȿⰣ ξ Ⱓ ϵ ϴ best
before protection scheme ֽϴ. ̿ ణ Ⱓ ƴ϶,
ߴ α Դϴ. ,
20 ̻ Ǹ ȴٴ ϴ. ̷ ͵ Cinderella protection
scheme̶ .
ٸ ְ, ַ Դϴ. ̷ ⸦ ϸ ,
protection scheme ˰?
, ۿ Nop ̾߱⸦ ϰڽϴ.
w32dasm ũ Ⱑ Ǿ. ߿ nop ƹ
ǹ̾ ̰, ڵδ 90̶ ߽ϴ. w32dasm ũ
ff251ca74900̶ ڵ带 3c9090909090 ٲپ ־. 3c ret
ڵ̰, 90 ä ־ϴ. ̷ ϴ
'nopѴ'(nopping) ǥմϴ. ̰ 츮 ʾƼ
׳ ״ ϴ.
+ORC ¿ ̷ 90 ؼ ʴٰ
߽ϴ. ũĿ ̷ nopping ϱ ,
protectionist( ܾ ƽð? : ) α , 90
̻ ؼ ݺǸ װ ˾ ϰų, ƴϸ
α ̷ а(?)ϵ ڵ带 Ѵٴ ̴ϴ. ϱ
ڵ带 ַ 90 ؼ ʴٴ
. +ORC . Ʒ ۿ Ͱ inc ax,
dec ax, inc ax, dec ax.. þ Դϴ. inc ax ڵ 40,
dec ax ڵ 48Դϴ. inc ax ax ״ٰ dec ax ٽ
Ű ᱹ ƹ͵ ̵. ϱ 9090ٴ 4048 nopϴ
Ǵ ̴ϴ. inc bx, dec bx .
-------------------------------------------------------------------------------
ʺ û protection (1997)!
ȣȭ Ϲȣ : ʺڸ ̾߱
by Tristan
+HCU л а, +ORC Ǹ 츮 ְ ,
ڵ鿡 λ縦 帳ϴ.
ϱ ϰڽϴ.
ũ ۿ ʾҽϴ. ó ũ õ
۵ ߰, ̹ ũ ϴ Ϳ
Ұ.
Ⱓ Ŀ μ ũ ְ
Ǿϴ.
protection scheme Խϴ. , ''
α鿡 Ⱑ ũ õ е鿡 ⸦
ְ ϴ.
, ü ũ ذ ˴ϴ.
ʺڵ鿡 ְ ְ, ϱ
protection scheme鿡 ϴ. ϰ "ʺ
, . ã protection scheme
ũϸ и ҷ ſ." ̴ϴ.
谡 ֽϴ. " ٺ protection "
ĺ ã ϴ.
û : ϱ ŭ û protection scheme
츮 ũ α cyberspace hq. Add Web 1.23Դϴ.
www.download.com̳ α
http://www.cyberspacehq.com/home.htm ٿ ֽϴ. Ǵ ˻
˰ ִٸ, ٸ ̳ ֽ ã ְ.
켱 ũ . Add Web ִٴ
ֽϴ.
ù° ν縸 ϸ . Դϴ. ,
Ȩ 10 search engine ִ ϴ
Դϴ.
355 search engine Ȩ Ͻִ
Դϴ. (, . ʿ search engine ʰ ̰,
͵).
ϴ ' (gold registered
version)'Դϴ.
" report header footer ĥ ִ ϸ,
e-mail reports ִ ɵ մϴ."
Add Web Ͽ ؼ ٿϴ. ܿ
. ȣ ־ ϴ.
ƾƾ.. Ʈ .
α Դϴ :
===========================
$49.00
$89.00
89 ? ̷ α ʹ α. Win95 Ա
Ŷ մϴ( 찡 װ ϸ
ݵ ƴ Դϴ)
̷ ̴ϴ: .. ̷ α̶ и
protection scheme ְ.
ũ .
ù° :
addweb.exe(732,160 bytes ũԴϴ) w32dasm 8.9 ϴ.
(+ORC ڵ ) "now registered" "sorry this was
a bad reg. number" ã. ̷ ִ κ ãҽϴ.
̷ ִ ã:
"AW21-JH8WFHB-84EWFW8"
"AW23-JH843H8-8426298"
"AW98-2J882DB-JW01192"
"AWD8-362HF83-8EHE532"
"AWE1-F373736-UJU8376"
"AWGD-WDWD824-4962345"
"AWGE-DWE837A-FE97438"
... and a lot more
... ̰͵ ̴ ϱ? ״ δ ʴ
. ? ȣȭ Ϲȣ ƴұ.
۽, ٸ ȣȭ Ǿ?
ٸ Ȥ....? Ƴ, ! ︮!
Ȥ ü Ϲȣϱ?
Ǫ .. . ( )
Ϲȣ ־ . ۻڰ
Ƣñ ϸ鼭 Դϴ. , ϴ. ̷ ִ
ۻڰ ſ.
'49(Ǵ 89) ּż ϴ'... ȣȭ ü
Ϲȣ ̴ϴ. ! Ǫ.. "ũ" ϴ 2е ɸ
ʾҽϴ. Ӹ ʾҰ.
, ũ ƴմϴ. ̹ ߵ
ϱ. '' ''.
About ڸ ϱ, '' ϵǾ ִ. ̹
Ϲȣ ٽ ѹ ýϴ.
. о . ̰ ݸ
غ ִ Ŷϴ.
Ϲȣ ! ˾Ƴ³?
ƹ о ʰ, ñ⸦ ٶϴ.
ʹ ϴ. Ģ ֽϴ.
- Ϲȣ AW մϴ.(̷, Ȥ AddWeb Ÿ ϴ
ǰ? : )
- AW G մϴ.(G Gold ϰ. ..)
- G ʴ ٸ Ϲȣ '' Դϴ.
, ϰ ѹ ٽ . ʿ ʹ
?
ι° :
̹ Ϲȣ ̿ؾ߸ ϴ . αӰ û
ʾҴٸ ũ .
Wdasm ٽ ؼ Ϲȣ ãư.
ڵ尡 Դϴ.
* Referenced by a Jump at Address:045A459(C)
|
:045A495 8B831C050000 mov eax, dword ptr [ebx+0000051C]
* StringData Ref from Code Obj ->"AW25-7JREG7C-3H1EG54"
"AWGM-MCC77WA-G55WGS5"
Ʒ ݺմϴ.
:045A505 66BA0A00 mov dx, 000A
:045A509 66B86200 mov ax, 0062
:045A50D E826C4FAFF call 00406938
:045A512 DD9B14050000 fstp qword ptr [ebx+514]
:045A518 9B wait
:045A519 C783280500000B000000 mov dword ptr [ebx+528], B
:045A523 C7832C050000CE070000 mov dword ptr [ebx+52C], 7CE
ߴ ũ . ֽϴ.
켱 ǰ ϳ ؾ մϴ. ̶
:0045A4A5 ִ jne, ̶ :0045A4F1 ִ jne ľ
մϴ. ֽϴ. б⸦ Nop ƴϸ
б ٲ ؾ մϴ. nop ̶ 753A 9090
ٲ ϰ. ٲ ַ 753A 743A(75="jne" 74="je") ٲ
ϰ. (ι° ֽϴ: Ϲȣ
ִ´ٸ бⰡ б⸦ ϰ ǰ :-) ܼ 90 nopϴ
(+ORC 츮 ) protectionist '̳' ɸ
ֽϴ. (, ̷ û αӰ α ũϴ 쿡
. 츮 '̳' ̷ ִٰ ϰ
⸦ ) ũĿ鿡 '̳' ־ 90 ̿ nop
ϸ 츮 ϵũ ڻ쳻 ٰ (, Ʈ
ڻ쳾 ֽϴ. ǻ ̷ ְ).
ؼ ' nop' ֽϴ.
2Ʈ nop
inc ax 40 1000000
dec ax 48 1001000
- - ~ - -
inc bx 43 1000011
dec bx 4B 1001011
- - ~ - -
inc cx 41 1000001
dec cx 44 1000100
- - ~ - -
inc dx 42 1000010
dec dx 4A 1001010
FEC0 inc al , FEC8 dec al 4Ʈ nop ֽϴ.
ڵ带 ϸ '' ڵ嵵 ũ ֽϴ.
װ ׳ α ũϴ Ͱ .
Ʈ:
ٽ Ѵٸ Win95 regedit AddWeb
ã. 丮 Init RegNum̶ Ű ã ֽϴ. װ
ϸ ٽ ˴ϴ.
¥ Ʈ:
Ư¡ ϳ, ũ ƹ͵
־ ũ ִٴ ̴ϴ. ũ 켼. װ ()
ϴ ͺ ϴ.
¥ ¥ :
ϰ ִٸ Ʒ ּ:
to(point)tristan(at)usa(point)net
Winimage ũϰ ֽϴ.( ̰ ũϰ ִ ֳ?
ּ!)
ֽñ ٶϴ. Ͼ ŵ.
ϱ Ͼ ص ǰ. Tristan.
All rights released.
-------Tristan----------------
-------------------------------------------------------------------------------
Page 1
7. Yellow Submarine
7. Yellow Submarine
̹ picaview , ٽ ܱ ũĿ
űϴ. picaview ҰԿ.
̹ HexWorkshop(ver 2.53) ũϴ Դϴ. , ٸ
ũ . ũϴ ̰,
ִ Դϴ. ȸ hexworkshop ũߴ
ؼ ̾߱ϰڽϴ.
ʺ̰, ũ ζ,
ֽϴ. ҽ м ڼ Ǿ ʱ
ε. е ׳ . ۵ , ٽ
ذ ȵǾ κ , ظ ſ.
-------------------------------------------------------------------------------
How to register HexWorkshop v2.52 (32bit)
- by Heres -
[Courier New 8Ʈ ̿ؾ Դϴ.]
̸ ãƳ ⺻ ϴ, ҽ ̿
̴.
ũ ִ 丮 HEXWORKS.REG(ũ 0 byte) ִ.
ڸ ãư.
* Possible StringData Ref from Data Obj ->"HEXWORKS.REG" ;ƿ,
ֱ.
|
:0043B10C BAC05B4800 mov edx, 00485BC0
:0043B111 83E103 and ecx, 00000003
:0043B114 F3 repz
:0043B115 A4 movsb
:0043B116 8D7C240C lea edi, [esp 0C]
:0043B11A B9FFFFFFFF mov ecx, FFFFFFFF
:0043B11F 2BC0 sub eax, eax
:0043B121 F2 repnz
:0043B122 AE scasb
:0043B123 4F dec edi
:0043B124 8B02 mov eax, [edx]
:0043B126 8B4A04 mov ecx, [edx]
:0043B129 8B5A08 mov ebx, [edx]
:0043B12C 6A00 push 00000000
:0043B12E 8907 mov [edi], eax
:0043B130 8A420C mov al , [edx]
:0043B133 894F04 mov [edi], ecx
:0043B136 8D4C2410 lea ecx, [esp 10]
:0043B13A 895F08 mov [edi], ebx
:0043B13D 51 push ecx
:0043B13E 88470C mov [edi], al
* Reference To: KERNEL32._lopen, Ord:0262h ;
|
:0043B141 FF15C85A4900 Call dword ptr [00495AC8]
:0043B147 83F8FF cmp eax, FFFFFFFF
:0043B14A 8BF0 mov esi, eax
:0043B14C 0F84D7000000 je 0043B229
:0043B152 8B9C2418010000 mov ebx, [esp 00000118]
:0043B159 68D2000000 push 000000D2 ;ũⰡ 210
bytes̻̾ Ѵ
:0043B15E 53 push ebx ;Ͽ о
...
:0043B15F 56 push esi
* Reference To: KERNEL32._lread, Ord:0263h ;Ͽ о
.
|
:0043B160 FF15CC5A4900 Call dword ptr [00495ACC]
:0043B166 8BF8 mov edi, eax
:0043B168 56 push esi
* Reference To: KERNEL32._lclose, Ord:025Fh ; .
|
:0043B169 FF15D05A4900 Call dword ptr [00495AD0]
:0043B16F 81FFD2000000 cmp edi, 000000D2 ;ũⰡ
210bytes¾?
:0043B175 752A jne 0043B1A1
:0043B177 81ECD4000000 sub esp, 000000D4
:0043B17D 8BF3 mov esi, ebx
:0043B17F 8BFC mov edi, esp
:0043B181 B934000000 mov ecx, 00000034
:0043B186 F3 repz
:0043B187 A5 movsd
:0043B188 66A5 movsw
:0043B18A E861020000 call 0043B3F0 ;Ϲȣ
:0043B18F 81C4D4000000 add esp, 000000D4
:0043B195 3B83CE000000 cmp eax, [ebx000000CE] ;ȣ!
Ϲȣ!
:0043B19B 0F8418010000 je 0043B2B9 ;ϵǾٸ
б
* Referenced by a Jump at Address:0043B175(C)
|
:0043B1A1 66C7030000 mov word ptr [ebx], 0000
:0043B1A6 BFD05B4800 mov edi, 00485BD0
:0043B1AB B9FFFFFFFF mov ecx, FFFFFFFF
:0043B1B0 2BC0 sub eax, eax
:0043B1B2 F2 repnz
:0043B1B3 AE scasb
:0043B1B4 F7D1 not ecx
:0043B1B6 2BF9 sub edi, ecx
:0043B1B8 8BC1 mov eax, ecx
:0043B1BA C1E902 shr ecx, 02
:0043B1BD 8BF7 mov esi, edi
:0043B1BF 8D7B02 lea edi, [ebx]
:0043B1C2 F3 repz
:0043B1C3 A5 movsd
:0043B1C4 8BC8 mov ecx, eax
:0043B1C6 83E103 and ecx, 00000003
:0043B1C9 F3 repz
:0043B1CA A4 movsb
* Possible StringData Ref from Data Obj ->"Unregistered" ; +ORC ã
ߴ
|
:0043B1CB BFD45B4800 mov edi, 00485BD4
, hexworkshop ִ 丮 ũⰡ 210 bytes ̻
HEXWORKS.REG ̸ . ( )
Ʒ ִ. ߿Ѱ ũ̴ϱ 켱 ׳ .
xx0000000000
Heres
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ٸ 0Dh, 0Ah ִ´.(׳ ȴ.)
α ũϴ ִ.
1. ڵ带 ġ
켱 HWORKS32.EXE Ѵ.( ڸ HWORKS32.ORI)
OFFSET: --
0003A59B 0F8418010000 je 0043B2B9 ;ϵǾ б
OFFSET: -ũ-
0003A59B E919010000 jmp 0043B2B9 ; б
0003A5A0 90 nop ; :-o
2. Softice ̿ؼ Ϲȣ ˾Ƴ
Softice hexworkshop ߴ Ѵ.
bpx cs:43B195
F5 Ų... Ϲȣ Ÿ ̴.
:0043B195 3B83CE000000 cmp eax, [ebx+000000CE] ; ȣ! Ϲȣ!
.. ̷ӱ... EAX HEXWORKS.REGϿ Ųٷ ؼ
̴.
Ʊ 4 byte ƴ.
78h, 78h, 0Dh, 0Ah
36h, E8h, 0Fh, C8h
HWORKS32.EXE ٲ۴.
.. İ ũ ´. ð ִٸ, Ϲȣ
Ϲȣ α ̴.
˸:
̼ߴٸ ֱ ٶ. Ǹ +ORC ¸
ũ Ż̴.
Heres, 1997 7 3.
(c) Heres 1997. All rights reserved
-------------------------------------------------------------------------------
Page 1
8. Come As You Are
8. Come As You Are
ٽ PicaView Դϴ.
ۿ κ Ϲȣ κ , call
ҽϴ. ̹ ۿ Ϲȣ κ ڼ
ϰڽϴ.
к ڸ Ϲȣ κ ũ κ ֽϴ.
κ ģ ణ ļ Ϲȣ ϼϰ Ǵ . ̹
ۿ Ƹ ù ° κи ĥ ϴ.
κ ѹ . ˾ƺ ٷ call 100103B0
Ϲȣ ȣϴ ̾ϴ. 100103B0 .
:100103B0 81ECA8000000 sub esp, 000000A8
:100103B6 55 push ebp
:100103B7 8BAC24B0000000 mov ebp, [esp + 000000B0]
;pluskurt ebp ű
:100103BE 56 push esi
:100103BF 57 push edi
:100103C0 8BFD mov edi, ebp
;pluskurt edi ű
:100103C2 83C9FF or ecx, FFFFFFFF ;ecx
Ʈ 1
:100103C5 33C0 xor eax, eax ;eax
0
:100103C7 33F6 xor esi, esi ;esi
0
:100103C9 F2 repnz ;⼭
ʹ
:100103CA AE scasb
;pluskurt
:100103CB F7D1 not ecx ;
:100103CD 49 dec ecx
;Դϴ.
:100103CE 8974240C mov [esp + 0C], esi
:100103D2 6683F901 cmp cx, 0001 ;
1 ū
:100103D6 0F8299010000 jb 10010575 ;Ȯ
:100103DC 6683F950 cmp cx, 0050 ;
80
:100103E0 0F878F010000 ja 10010575 ;Ȯ
:100103E6 8B8424BC000000 mov eax, [esp + 000000BC] ;49222D
:100103ED 53 push ebx ;
:100103EE 3BC6 cmp eax, esi
;49222D 1
:100103F0 0F85C4000000 jne 100104BA ;翬
ʽϴ.
:100103F6 8BF9 mov edi, ecx
:100103F8 33D2 xor edx, edx
:100103FA 81E7FFFF0000 and edi, 0000FFFF
:10010400 7E11 jle 10010413
:10010402 33C0 xor eax, eax
, ̸(pluskurt) Ϲȣ ٽ
̸ ̸ Ȯϴ ϴ. ĺ 鸸
ٽ ̸ ̸ ϴ.(̸ ִ !@#$% 'Ư'ڵ
)
mov ebp, [esp+B0]
esp+B0 Ű ִ pluskurt ebp ű,
mov edi, ebp
pluskurt edi űϴ. edi ű
ֽϴ.(scasb)
or ecx, -01
xor eax, eax
xor esi, esi
repnz scasb
not ecx
dec ecx
pluskurt Դϴ. w32dasm ҽ
Ͽ or ecx, ffffffff Ǿ siceȭ鿡 or ecx, -01̶
ſ. Դϴ.(ñϽ е о
. ffffffff -01 ſ.) ۿ repnz
scasb siceȭ鿡 ٿ Ÿ, ҽ Ͽ ٸ ٿ Ÿϴ.
ϴ.
켱 or ecx, -01 ecx ffffffff ˴ϴ. ̷ ϴ Ʈ
ϱ ؼ or ϴ ſ. .
A or B AorB
0 0 0
0 1 1
1 0 1
1 1 1
ƽð or ൿմϴ. ,
ϳ 1̸ 1 ſ. ٸ, CX
Ʈ 1 ʹٸ ϸ ɱ.
or cx, 00ff
̷ ϸ ɰ̴ϴ. ff Ʈ ǥϸ 11111111 ˴ϴ. cx
1010 1010 1010 1010̶ ,
cx 1010 1010 1010 1010
OR |00ff 0000 0000 1111 1111
----------------------------
1010 1010 1111 1111
|========|
ֵ Ʈ 1 Ǿϴ. or ecx,
ffffffff ecx Ʈ 1 ذ ſ.
, ̹ ִ xor ̿ؼ eax esi 0 ϴ.
repnz scasb ó . 켱 scasb(SCAn String by
Byte) ˾ƺ. ״ ڵ о Դϴ. ڼ ڸ
ALͷ ڸ о 鿩 es:di ִ ϴ .
ݺ cpu ŭ di Ű鼭, ÷
Ǵ մϴ.
⼭ pluskurt(es:edi) ڸ о 鿩 0(eax) մϴ.
ٵ ƽð ڵ(strings) , ,
0(null character) ֽϴ. ϱ pluskurt
p l u s k u r t
70 6c 75 73 6b 75 72 74 00
̷ Ǿ ִ . sice ȭε Ȯ ̴ϴ.
scasb pluskurt 0 ϴ ɱ. repnz ϸ
ֽϴ. repnz(REPeat while Not Zero) scasb
ΰ մϴ. , pluskurt о ٰ 0
. 0 pluskurt а null character̴ϱ,
ᱹ repnz scasb pluskurt ݺ϶ .
ְ , ̳. ϰھ?
ƹư ̷ repnz scasb pluskurt о , ڸ
ecx ϳ մϴ. ó ecx ffffffff
. , repnz scasb ġ ecx fffffff6 ˴ϴ.
not ecx Ʈ ٲٰ(notƽ?), dec ecx ϳ ҽŰ
ecx 8, pluskurt ̰ ˴ϴ.
̷ pluskurt ̸ ˾ ſ.
̷ ecx(cx) մϴ.
cmp cx, 1
jb 10010575
cmp cx, 50
ja 10010575
̸ ̰ 1̻ 80 ƴϸ б϶ Դϴ. бϴ
(10010575) ʴ ƴ϶
ְ?
mov eax, [esp+BC]
push ebx
cmp eax, esi
jne 100104ba
esp+BC Ű ִ 49222D Ϲȣ
Դϴ. ϱ 켱 ϰ ־ . eax esi
մϴ. esi Ʊ 0 ̰, eax 49222DԴϴ. 翬
. Ϲȣ .. Ư
Ϲȣ üǴ ڵ бϴ ,
Ȯ ڽϴ. ⼭ ̷ ȵǴ ؼ б⸦
ϴ ̿. ƽô ּ.
¶ư ⼭ б 'ùٸ' б̴ϱ ׳ ؿ.
Ϲȣ бմϴ.
:100104BA 8BD9 mov ebx, ecx ;ebx
ű
:100104BC 33FF xor edi, edi ;edi
0
:100104BE 81E3FFFF0000 and ebx, 0000FFFF ;ebx
常
:100104C4 7E2C jle 100104F2
:ù°_κ_
:100104C6 0FBE0C2E movsx byte ptr ecx, [esi + ebp] ;̸
ڸ
:100104CA 51 push ecx ;ϳ
ϳ ҷ 鿩
:100104CB E8387C0500 call 10068108
;빮ڷ ٲ
:100104D0 0FAF8424C4000000 imul eax, [esp + 000000C4]
;eax*=49222D
:100104D8 03C7 add eax, edi ;eax+=edi
:100104DA 83C404 add esp, 00000004
:100104DD 25FFFF0000 and eax, 0000FFFF ;eax
常
:100104E2 99 cdq
:100104E3 F7FB idiv ebx
;eax:edx=eax:edx/ebx
:100104E5 47 inc edi ;
:100104E6 6689547418 mov [esp + 2*esi + 18], dx ;''
ۼ
:100104EB 0FBFF7 movsx word ptr esi, edi ;
ڸ о
:100104EE 3BF3 cmp esi, ebx ;
ǰ?
:100104F0 7CD4 jl 100104C6 ;ƴϸ
ݺ
pluskurt ̸ Ϲȣ ϴ
κԴϴ.
κ , picaview ̸ Ϲȣ
⸦ . Ƹ.. å .
å ̷ ־ϴ. ð л鿡 ɰ ٿ
κб 縦 ν߸ ʰ ¿ Ѵٸ, л
ʹ ̴. , ʶƮ
̶ ˷ ְ Ѵٸ л ְ ̴.
, а ִ е л, ǹ Ϸ ϴ
ƴϱ. ׳ .
ڸ, pluskurt ̸ ҷ 鿩 빮ڷ
ٲߴϴ. ϱ, pLuSkUrT plusKURT picaview ̴
.(PLUSKURT)
빮 asciiڵ ణ մϴ.
װ '' '' ϴ. κ ù ° κ̱.
'' ϳ ϳ о ٽ
Ĩϴ. ؼ ϳ 'ȣ' ϴ. ȣ ȣ ,
̸ , ̸ ؼ ο ȣ ϴ. 0̸
̹ 'غ' ȣ մϴ. ؼ ȣ ٽ
, ٷ 'Ϲȣ' Ǵ ſ.
ٴ ⱸ, ù κ ڵ带 ڼ .
mov ebx, ecx
xor edi, edi
and ebx, FFFF
jle 100104f2
ecx Ǿ ִ ebx մϴ. edi 0 ϴ.
̸ ڸ ϳ ϳ 鿩 ٰ . edi
ڰ ° ΰ Դϴ.
ebx 尪 մϴ. or ϴ ŭ Ʈ
ִٰ ߴ , andδ ϴ κ Ʈ ְ
ݴϴ. .
bx : 1010 1010 1010 1010
AND | 0000 0000 1111 1111
=========================
0000 0000 1010 1010
and bx, FF bx Ʈ Ƶΰ Ʈ 0
ſ. Ʈ ְ Ǵ .
ǰ?
ebx '' Ǿ ֽϴ. ū ƴ
, ¶ư ߽ϴ. ٽ ѹ 0
Ȯմϴ.
movsx byte ptr ecx, [esi+ebp]
push ecx
call 10068108
esi Ʊ 0 Ǿ־. ebp pluskurt 'Ű' ֽϴ.
[esi+ebp] esi 0 p, esi 1 l, 2 u..̷ ǰ.
̷ ̸ ڸ ù ھ ɴϴ. װ ecx Ű ,
call 10068108 ؼ 빮ڷ ٲ ˴ϴ. Ȯ ڸ 빮
asciiڵ ̰, . ⼭ call 10068108 θ ִ κб 鿩
ʰڽϴ. κп 빮ڷ ٲٴ ñϽ е
.
imul eax, [esp+C4]
add eax, edi
add esp, 4
and eax, FFFF
빮 asciiڵ ణ մϴ. imul̶ Գ.
ϼ̰ mul(multiplication), ϱ⸦ ϴ Դϴ.
(Ӹ ƴϰ) ȣ ִ ȣ ֽϴ.
ϱ ϱ ȣ ִ ȣ ,
־ . imul ȣ ִ , mul ȣ
Դϴ. , siceȭ鿡 Ȯ ֵ esp+C4 49222DԴϴ. ⼭
ó imul eax, [esp+C4] δ eax*49222D ؼ eax մϴ.
addԴϴ. ״ ϴ Դϴ. eax+edi eax
.
add esp, 4 , 츮μ Ű ʾƵ Ǵ ſ.
..̶ Ͱ Ǿ ִ ǵ. ⼭
ʰڽϴ. ̾߱Ⱑ ƴϴϱ.
and eax, FFFF ٽ ѹ մϴ.
cdq
idiv ebx
inc edi
mov [esp+2*esi+18], dx
movsx word ptr esi, edi
cmp esi, ebx
jl ù°_κ_
ҽϴ.
cdq Խϴ. ̰, ϱ غ ۾ ϴ
ɾε. Ʒ idiv, ϱ ؼ غ ϴ ſ. Ʊ
ߵ ȣ ִ Ŀ Դϴ. idivó
ȣ ִ ϱ ؼ, cdq eax ȣ ִ
ִ ſ. ̰ movsx ɰ ִ
ǵ. ߵ, Ȩ .
picaview ũϴ ⸦ ߾µ, ̷ cdq, movsx
Ϳ ؼ ⸦ ߾. , ߿ ϱ
ʾƵ . ߿ ȸ ϱ ϱ. 켱,
ϱ غ ۾̶ ˰ ϴ.
idiv ebxԴϴ. edx eax ִ ebx( )
, eax ϰ, edx մϴ.
mov [esp+2*esi+18], dx ֵ picaview
մϴ. '' ִ Դϴ.
ϰ , esi ϴ 캸 ''
ִ ϰ ִٴ .
movsx word ptr esi, edi Ʊ inc edi edi ϴ.
edi esi Ű ϰ ֽϴ. ebx .(cmp esi,
ebx) ebx ִ ? ̿ϴ. ϱ
κ pluskurt, ڸ ó ߳ Ȯ ϴ . jl(Jump if
Less) esi ebx ۴ٸ, ó ʾҴٸ, ٽ
ݺϴ ſ.
ù° κԴϴ.
ٽ ϸ, ڸ ϳϳ оͼ 빮ڷ ٲٰ,
ascii ణ 峭 ģ '' ϴ .
pluskurt ù° p ġ .
켱 빮ڷ ٲϴ. P asciiڵ 50( ε
16 մϴ)Դϴ. 49222D մϴ. 16DAAE10Դϴ.
edi, ڸ( °) մϴ. p ù° ̴ϱ 0(1
ƴմϴ. 0 մϴ.) 0 Ծ 16DAAE10Դϴ.
常 մϴ. AE10 ǰ. ebx, ̷
ϴ. pluskurt 8̴ϱ, AE10/8Դϴ. ''
ֽϴ. 0̱.
l . L asciiڵ
4CԴϴ.(.. ascii ڵ ǥ ? ڷǿ .
ƴϸ siceȭ鿡 ? 'L' ˾Ƴ ֱ. :) 49222D
. 15B6255C. 1 ؾ . u pluskurt '1'° ڴϱ.
15B6255D. 255D ؼ 8 5 Ͽ ֽϴ.
u. ̷ ؼ, ̸ ڸ ó ݺմϴ.
'' '' ϵ˴ϴ. ''
״ ߿մϴ.
κ C ٽ .
for (i=0; ilength; ++i){
lst[i]=(int)(((name[i]*0x49222d+i))%length);
}
?
켱 ۿ ̶ ̾ϴ. length ߾.
״ ſ. lst array '' .
ª . Ȩ , κп
ũⰡ 20k Ʈ Ѿ . ϴ .
ڼϰ ʾƼ . movsx cdq, idiv 뵵
, .
ۿ, κ ؼ ڽϴ.
Page 2
9. Eight Days A Week
9. Eight Days A week
ִ Դϴ.
protectionist ûϰ ̶ +ORC ٽ Ǵ
Դϴ. α ϳ ũ ܹ ũϴ
ϰ ִ Դϴ.
ֵ ũ ʽϴ. б⸦ ٲٴ .
, hwnd task, bmsg , BPR ο(?)
ߴ ϴ ɾ ͼġ ʺе鿡Դ ణ ذ Ǵ
κ ־. +ORC ¿ . 켱
ϰ о .(siceȭ鿡 task hwnd [+task name]
ε ϴ ͵
ſ.) ƴϸ +ORC ã ø, ϴ
̴ϴ.
⼭ ̴ ڵ , picaview ۿ ͵
ϸ, keygen ŭ ͵
ƴϿ.( keygen . :)
ۿ ó, ũϴ α '' ' ȸ'
߿ Ұ . , ؼ α Ÿ鼭 ִ
picaview ص . ȸ ǰ ACDSee protection
ֱ , picaview keygen Ϲȣ ACDSee
ִ . , ACDSee(ver 2.4) ٸ
Ϲȣ ִ. ο ã ٴϸ鼭 ٿ
ʴµ, ߵ ϵ带 ϰ
. keygen(picaview 켭 ) Ϸ ߴ
Ǵ.
ϱ, ACDSystem Ϲȣ ٲ . ʹ
ũĿ ACDSee picaview ũϱ. 츸
ص ũ ȵǼ ED!SON ¿ϴ. ʺ
̾µ, ̾. ACDSee
. ( ACDSee ο (2.4) ũϴ ۵ øڽϴ. ,
Ƽ.. ũ ʾҰŵ. : )
-------------------------------------------------------------------------------
Ʈ ȸ縦 ġ!
Part 1
_by Plushmm [PC'97]_
97 8 8
αӵ ̴... ؼ, ϰ
ϵ ϰ, α ؾ Ҿ ֱ ̴.(,
ؾ ִٸ ̴ :-)
α ϴ ð ̴. ⼭ ''
αӵ ϰ ִ ƴϴ. 鿡, ULEAD
ū ȸ糪 Micro$oft ȸ protection ûϰ
͵ ̴. ȸ α ߿ ̵ ϳ ũ
ϸ, ͵鿡 ũ ̹ ̴.
̷ ִ ̴. ȸ簡
α ߿ ϳ ũ ؼ θ ũ ִٴ
̴.
⺻ .
1) ϴ α ȸ Ʈ ã .
2) װ ٿ Ƽ.. ũѴ.. Ƹ, ũϴ ɸ ð 5
̴... ¼ 3ð ɸ ̴.. * ũϴ
̶ ð Ǵ ƴ ̴...*
3) ũ ߴٸ, ȸ翡 ٸ ǰ ũ ִ.
ֳ.. ̴ϱ.
... ܼҸ ϰ ù° α ũ ...
Basta Computing, LLC
http://www.basta.com
ȸ α ̵ . ߿ ˷ Filo,
Winsock, ExIcon ֽϴ.
켱 _Filo v1.7_ . ϸ α ִ
˷ִ ڰ ϴ.
REGISTER ϸ '' ĭ ɴϴ.
ƹ ڳ ְ register մϴ. .. '߸ ' ڸ ٰ
. Disassemleؼ ҽ , ϵǾٰ
ִ κ ã ٴ ֽϴ. ҽ
ֵ, Call Jump ϰ ִٴ ͵
. ... ٸ SoftIce ؾ.
ڷ
ȣ 12121212 34343434 ְ
SoftIce մϴ.
_task_ .. task name Filo
_hwnd_ Filo
( ĭ, edit box) handle ؼ
_bmsg_ ̿ؼ ű wm_gettext ߴ մϴ. ;+ORC
. :)
α ƿͼ OKư ϴ.
SoftIce .
F5 ϴ.... ̷ ؼ α Edit Box( ĭ) ִ
о ϴ .
_s 30:0 lffffffff "12121212" _ Ϲȣ Ǿ
ִ ã ſ.
_BPR_ ߴ մϴ.
ٽ α ϰ մϴ. Softice ٽ ߴ .
, α, Է Ϲȣ "1212121234343434"
ٴ ̴ϴ.
κп _BPR_ ߴ ϰ ٽ α ϰ մϴ.
Ϲȣ ϴ κ softice Դϴ.
Ʒ .
* Referenced by a Jump at Address:00407901(C)
|
:004078E9 8A0431 mov al, byte ptr [ecx + esi]
:004078EC 3C30 cmp al, 30 ;"0"
:004078EE 0F8CC4000000 jl 004079B8 ;ڰ
ƴϱ
:004078F4 3C39 cmp al, 39 ;"9"
:004078F6 0F8FBC000000 jg 004079B8 ;ڰ
ƴϱ
:004078FC 8BC1 mov eax, ecx
:004078FE 49 dec ecx
:004078FF 85C0 test eax, eax
:00407901 75E6 jne 004078E9
:00407903 0FBE5E0F movsx ebx, byte ptr [esi+0F]
:00407907 83EB30 sub ebx, 00000030
:0040790A 8D4301 lea eax, dword ptr [ebx+01]
:0040790D 83F80F cmp eax, 0000000F
:00407910 7C03 jl 00407915
:00407912 83E80F sub eax, 0000000F
* Referenced by a Jump at Address:00407910(C)
|
:00407915 40 inc eax
:00407916 83F80F cmp eax, 0000000F
:00407919 7C03 jl 0040791E
:0040791B 83E80F sub eax, 0000000F
* Referenced by a Jump at Address:00407919(C)
|
:0040791E 8BC8 mov ecx, eax
:00407920 83C003 add eax, 00000003
:00407923 83F80F cmp eax, 0000000F
:00407926 7C03 jl 0040792B
:00407928 83E80F sub eax, 0000000F
* Referenced by a Jump at Address:00407926(C)
:0040792B 0FBE3C31 movsx edi, byte ptr [ecx + esi]
:0040792F 8BC8 mov ecx, eax
:00407931 83C003 add eax, 00000003
:00407934 83EF30 sub edi, 00000030
:00407937 83F80F cmp eax, 0000000F
:0040793A 7C03 jl 0040793F
:0040793C 83E80F sub eax, 0000000F
* Referenced by a Jump at Address:0040793A(C)
|
:0040793F 8BD0 mov edx, eax
:00407941 83C003 add eax, 00000003
:00407944 83F80F cmp eax, 0000000F
:00407947 7C03 jl 0040794C
:00407949 83E80F sub eax, 0000000F
* Referenced by a Jump at Address:00407947(C)
|
:0040794C 0FBE0C31 movsx ecx, byte ptr [ecx + esi] ;
:00407950 0FBE1432 movsx edx, byte ptr [edx + esi] ;̷ ڵ带
ٸ
:00407954 8D0C89 lea ecx, dword ptr [ecx + 4*ecx];ݵ
:00407957 8D0C4A lea ecx, dword ptr [edx + 2*ecx];ǽ
մϴ.
:0040795A 0FBE1430 movsx edx, byte ptr [eax + esi] ;̷ ڵ
:0040795E 8D0C89 lea ecx, dword ptr [ecx + 4*ecx];Ϲȣ
:00407961 8D844A30EBFFFF lea eax, dword ptr [edx + 2*ecx -
000014D0];̴ϱ
:00407968 83F803 cmp eax, 00000003 ; ڵ尡
;eax 3
̴ϴ.
:0040796B 754B jne 004079B8 ; б
:0040796D 33C0 xor eax, eax
:0040796F B90F000000 mov ecx, 0000000F
* Referenced by a Jump at Address:00407982(C)
|
:00407974 0FBE1431 movsx edx, byte ptr [ecx + esi] ;ణ
:00407978 0FAFD1 imul edx, ecx
:0040797B 03C2 add eax, edx
:0040797D 8BD1 mov edx, ecx
:0040797F 49 dec ecx
:00407980 85D2 test edx, edx
:00407982 75F0 jne 00407974
:00407984 8D4B0E lea ecx, dword ptr [ebx+0E]
:00407987 83F90F cmp ecx, 0000000F
:0040798A 7C03 jl 0040798F
:0040798C 83E90F sub ecx, 0000000F
* Referenced by a Jump at Address:0040798A(C)
|
:0040798F 0FBE1431 movsx edx, byte ptr [ecx + esi]
:00407993 0FAFD1 imul edx, ecx
:00407996 2BC2 sub eax, edx
:00407998 49 dec ecx
:00407999 7903 jns 0040799E
:0040799B 83C10F add ecx, 0000000F
* Referenced by a Jump at Address:00407999(C)
|
:0040799E 8A1C31 mov bl, byte ptr [ecx + esi] ;
ۿ
:004079A1 0FBED3 movsx edx, bl ;
Ͱ
:004079A4 0FAFCA imul ecx, edx ;""
ڵ尡
:004079A7 2BC1 sub eax, ecx
;ǰ
:004079A9 B90A000000 mov ecx, 0000000A
:004079AE 99 cdq
:004079AF F7F9 idiv ecx
:004079B1 80C230 add dl, 30
:004079B4 3AD3 cmp dl, bl
;ι° մϴ
:004079B6 7406 je 004079BE ;
б
* Referenced by a Jump at Addresses:004078C9(C), :004078DE(C), :004078EE(C),
:004078F6(C),
:0040796B(C)
|
:004079B8 33C0 xor eax, eax
:004079BA 5F pop edi
:004079BB 5E pop esi
:004079BC 5B pop ebx
:004079BD C3 ret
ڵ带 , keygenerator
̴ϴ.
keygen ƴϱ ׳ ġ ϱ .
:0040796B 754B jne 004079B8 ; б
4840 ٲپ б ʰ մϴ.
:004079B6 7406 je 004079BE ; б
EB06 ٲپ бϵ մϴ.
.. ̰ _Filo v1.7_ ũ ϴ. ̹ _WhoSock v1.91_
.
...
...Filo ڵ尡 ֿ ...
...
* Referenced by a Jump at Address:00406737(C)
|
:0040673C 0FBE0C31 movsx ecx, byte ptr [ecx+esi]
:00406740 0FBE1432 movsx edx, byte ptr [edx+esi]
:00406744 8D0C89 lea ecx, dword ptr [ecx+4*ecx]
:00406747 8D0C4A lea ecx, dword ptr [edx+2*ecx]
:0040674A 0FBE1430 movsx edx, byte ptr [eax+esi]
:0040674E 8D0C89 lea ecx, dword ptr [ecx+4*ecx]
:00406751 8D844A30EBFFFF lea eax, dword ptr [edx+2*ecx-000014D0]
:00406758 83F809 cmp eax, 00000009 ;Ǵ
ణ ٸ!
:0040675B 754B jne 004067A8 ;Ȱ
бϴ !
:0040675D 33C0 xor eax, eax
:0040675F B90F000000 mov ecx, 0000000F
* Referenced by a Jump at Address:00406772(C)
|
:00406764 0FBE1431 movsx edx, byte ptr [ecx+esi]
:00406768 0FAFD1 imul edx, ecx
:0040676B 03C2 add eax, edx
:0040676D 8BD1 mov edx, ecx
:0040676F 49 dec ecx
:00406770 85D2 test edx, edx
:00406772 75F0 jne 00406764
:00406774 8D4B0E lea ecx, dword ptr [ebx+0E]
:00406777 83F90F cmp ecx, 0000000F
:0040677A 7C03 jl 0040677F
:0040677C 83E90F sub ecx, 0000000F
* Referenced by a Jump at Address:0040677A(C)
|
:0040677F 0FBE1431 movsx edx, byte ptr [ecx+esi]
:00406783 0FAFD1 imul edx, ecx
:00406786 2BC2 sub eax, edx
:00406788 49 dec ecx
:00406789 7903 jns 0040678E
:0040678B 83C10F add ecx, 0000000F
* Referenced by a Jump at Address:00406789(C)
|
:0040678E 8A1C31 mov bl, byte ptr [ecx+esi]
:00406791 0FBED3 movsx edx, bl
:00406794 0FAFCA imul ecx, edx
:00406797 2BC1 sub eax, ecx
:00406799 B90A000000 mov ecx, 0000000A
:0040679E 99 cdq
:0040679F F7F9 idiv ecx
:004067A1 80C230 add dl, 30
:004067A4 3AD3 cmp dl, bl ;
ι°
:004067A6 7406 je 004067AE ;Ȱ
б!!!
̷̷.. ̹ _ExIcon v1.9a_ ..
...
...Filo Ȱ ڵ...
...
* Referenced by a Jump at Address:0040AC77(C)
|
:0040AC7C 0FBE0C31 movsx ecx, byte ptr [ecx+esi]
:0040AC80 0FBE1432 movsx edx, byte ptr [edx+esi]
:0040AC84 0FBE0430 movsx eax, byte ptr [eax+esi]
:0040AC88 8D0C89 lea ecx, dword ptr [ecx+4*ecx]
:0040AC8B 8D0C4A lea ecx, dword ptr [edx+2*ecx]
:0040AC8E 8D1489 lea edx, dword ptr [ecx+4*ecx]
:0040AC91 8D8C5030EBFFFF lea ecx, dword ptr [eax+2*edx-000014D0]
:0040AC98 83F902 cmp ecx, 00000002 ;Ǵ
ణ ٸ !
:0040AC9B 754B jne 0040ACE8 ;Ȱ
б!!
:0040AC9D 33C0 xor eax, eax
:0040AC9F B90F000000 mov ecx, 0000000F
* Referenced by a Jump at Address:0040ACB2(C)
|
:0040ACA4 0FBE1431 movsx edx, byte ptr [ecx+esi]
:0040ACA8 0FAFD1 imul edx, ecx
:0040ACAB 03C2 add eax, edx
:0040ACAD 8BD1 mov edx, ecx
:0040ACAF 49 dec ecx
:0040ACB0 85D2 test edx, edx
:0040ACB2 75F0 jne 0040ACA4
:0040ACB4 8D4B0E lea ecx, dword ptr [ebx+0E]
:0040ACB7 83F90F cmp ecx, 0000000F
:0040ACBA 7C03 jl 0040ACBF
:0040ACBC 83E90F sub ecx, 0000000F
* Referenced by a Jump at Address:0040ACBA(C)
|
:0040ACBF 0FBE1431 movsx edx, byte ptr [ecx+esi]
:0040ACC3 0FAFD1 imul edx, ecx
:0040ACC6 2BC2 sub eax, edx
:0040ACC8 49 dec ecx
:0040ACC9 7903 jns 0040ACCE
:0040ACCB 83C10F add ecx, 0000000F
* Referenced by a Jump at Address:0040ACC9(C)
|
:0040ACCE 8A1C31 mov bl, byte ptr [ecx+esi]
:0040ACD1 0FBED3 movsx edx, bl
:0040ACD4 0FAFCA imul ecx, edx
:0040ACD7 2BC1 sub eax, ecx
:0040ACD9 B90A000000 mov ecx, 0000000A
:0040ACDE 99 cdq
:0040ACDF F7F9 idiv ecx
:0040ACE1 80C230 add dl, 30
:0040ACE4 3AD3 cmp dl, bl ;Ȱ !!
:0040ACE6 7406 je 0040ACEE ;Ȱ б!!
_Horas v2.1_ .
.. ̸ϸ Ϸ . ٸ α鵵
ߴ Ƽ Ȯ ʾҽϴ. , ȸ ǰ 4
ߴٸ (Ȯ ؼ 8 ֽϴ)
protection .
·ư, ȸ ǰ θ ũ ִ ġ Ʒ ϴ...
!
Plushmm [PC'97]
done := False;
location := $FF; {Skip the initial codes}
Repeat
if thefile(location) = $75 and thefile(location+1) = $4B then
if thefile(location+$4B) = $74 and thefile(location+4C) = $06 then
begin
Patch_File
done := True;
end;
location := location+1;
Until done or limit_reached;
(c) Plushmm 1997. All rights reserved
-------------------------------------------------------------------------------
ű , ó ݸ űٰ, ߿ ٲ ȳ.
븻 ϴ. ģ , ݸ
ʾƿ. Ͽư ̻ ̶ , . : )
Page 2
10. Year Of The Boomerang
10. Year Of The Boomerang
ű鼭 ε. picaview ũϴ о
е鿡 帳ϴ. ⼭ , picaview siceȭ鿡
' ' Ϲȣ ˾ ־. ؼ Ϲȣ
Ƽ Ͻ е, а ũ ,
ؾ . е Ƽ մϴ.
⸦ ߾ ߴ , ߳.
ƹư, Ʈ ǵ帮 ˴ϴ. ۾
ǥ '' '' մϴ. ɾ Էϴ
regedit Ʈ Ⱑ ɴϴ. ʿ ̴
͵ ߿ HKEY_LOCAL_MACHINE̶ , ٽ ACDSystems ,
, PicaView, LicenseŰ ֽϴ. .. picaview ° ֵ
DZ, ƴϸ LicenseŰ ൵ ˴ϴ. Ʈ ũ
Դϴ.( iniϵ Դϴ. winzip ũ
Դϴ. +ORC ¿ Ծ.
WritePrivateProfileString̶ Լ 캸 ִ Լ ߾.)
, ۵ ִ Ұ Դϴ. ̷
..ϴ . ۿ keygen
'ο' Դϴٿ.
ݱ ۰ , 뵵 ʽϴ.
ſ.
-------------------------------------------------------------------------------
AddLink KeyGenerator
_- ۻڸ keygen ٲ!-_
Written by Jon
ȳϼ.
α ũߴ. ΰ α Firas
El-Hasan ͵̴. װ α ִ Window$
ƿƼ̴. , ŸԵ α ΰ , ** ڰ
. α Ұ ð ۿ ɸ ʾ
ϸ ¥ ƴ .
α .
SysDate - ýۿ Ͽ ִ α̴.
StartClean - ϰ .
SysLaunch - α ϰ ִ, ''
lite ̴.
QuickDesk - ALT+TABŰ ۾ ǥٿ Ŭ ϸ â ǥ÷
ش.
HotCorners - ȭ 콺 ȭ
ȣⰡ ǵ ش.(ȣ..ѱ)
DirectNet - ͳ ü(ISP) ȭ ɾ, ϴ ͳ α
ϰ ش.( ֳ?)
AddLink - ư α Ŭϸ ߰ ش.
, DOS-Explore DialMSN (MSN? !!!) ִ. װ͵
freeware̱ , ũ ʿ䰡 . :-)
ũ Ϸ Ѵ.
1. SoftIce ̿ϴ "Hear the echo".
2. SoftIce/HIEW ̿ؼ α key-gen .
α ִ AddLink ؼ ̴.
, StartClean α̴. Qapla ̹
α ũϴ ¸ .( ̴)
ٸ α ִ ϰڴ. , ٸ
α ٸ ִٸ, װͿ ؼ ϰڴ.
_ʿ :_
SoftIce 3.22 for Win95/NT(ƹ ̶ )
HIEW 5.66(Ǵ ִ hex editor ƹ ̳)
_URL/FTP_
α Ȩ ٿ ִ.
http://users.aol.com/felhasan/
_History_
( ׳ ¼ٰ ˰ ͵̶)... ñ ,
Ȩ ̴.
AddLink(ƴϸ, α ߿ ũϰ ƹų) ν.
ƹ Ͽ ư Ŭϰ Send To--> Start ؼ
AddLink Ѵ. α ϴ '' Ѵٴ ˷ ִ,
** ڰ ̴. SoftIce ϰ(_Ctrl+D_)
_BPX Lstrcmp_
F5 SoftIce ´..
Register Ѵ..
̸ ִ´. ( _-=[JON!]=-_̶ )
Ϲȣ ִ´. _1212121212_ (Copyright +ORC)
Ű ..
SoftIce _Lstrcmp_ ̴.
_BC *_ Էؼ ߴ .
_F11_ ҷ ư. ణ ȭ ÷
ڵ带 ̴.
_
CALL 00401BB0 ; Ϲȣ .
LEA EAX,[ESP+18] ;츮 Ϲȣ EAX Ѵ.
ADD ESP,08
PUSH EAX ;츮 Ϲȣ PUSH.
PUSH 004051C8 ; Ϲȣ PUSH.
CALL [Kernel32!lstrcmp] ;ڸ Ѵ.
TEST EAX,EAX ; Ǿ?
JNZ 00401BA5 ; Ǿٸ, ۻ !
_
¥ Ϲȣ ؼ, 츮 Ϲȣ PUSHߴ
κп ߴ Ѵ. ̷ Ϸ ׳ Ŭϱ⸸ ϸ
ȴ.( 콺 ϴ Ȳ̶, BPX XXXX:YYYYYYYY ߴ
Ѵ. XXXX:YYYYYYYY ̴ּ.) , SoftIce ͼ
ٽ ѹ ̸ Ϲȣ . Okư ٽ ѹ SoftIceȭ
Ÿ ̴.
_BD *_ ߴ Ѵ( Ŀ ٽ ̴).
_D 004051C8_ .
_-=[JON!]=-_ Ϲȣ
_14621-136061-2316-6752_ ̴.
⼭ ΰ? key-gen ǰ? ٽ keygen
Ϸ, ؾ ̴. Ʈ
Ű(_HKEY_CURRENT_USER\SOFTWARE\ADDLINK_) ؼ ִ.
Ǿ. ٽ α ؼ, SoftIce .
_BE *_ ߴ ٽ Ѵ.
ƹ ̸ Ϲȣ ְ, Ok . Ϲȣ PUSHǴ
, SoftIceȭ ٽ ̴.
ߴ .
_BC *_ , PUSHԼ 16 ڵ带 :_ 68C8514000 _
68C8514000 PUSH 004051C8 ;¥ Ϲȣ PUSH
ڵ尡 , F10 .
_
PUSH 00
PUSH 00
PUSH 004051B4 ;"Incorrect code!" PUSH
PUSH ESI
CALL [USER32!MessageBoxA] ; ڸ
MOV EAX,00000001 ;EAX 1 (ϵ )
_
_E XXXX:YYYYYYYY_̶ Ѵ.
XXXX:YYYYYYYY _PUSH 004051B4_ ִ ̴ּ.
Ʊ ξ 16 ڵ(_68c851400_) ִ´.
_F5_ SoftIce ´. ̴°? Է ̸
Ϲȣ ִ ** ۻڰ ִ!!!_ ?_
ũ ϱ ؼ:
_
HIEW ADDLINK.EXE
_ F7_ : 6A006A0068B451400056_
^^
ãƼ
_ 6A006A0068C851400056_ ٲ۴.
_
(_F9_) (_F10_), key-generator ̴!
6A006A0068B451400056 ;߸ Ϲȣ pushϴ ڵ尡
6A006A0068C851400056 ;¥ Ϲȣ pushϴ ڵ ٲ ̴
տ α (ణ ʿϰ)
ִ. ٸ, QuickDesk SysLaunch . ̰,
Ϲȣ Ǵ * * ٸ ͷ
̴. :-( ϸ Ϲȣ
̴.
츮 ͵.
1. Lstrcmp ڵ带 ϴ δٸ, ڵ带 ã
Ա̴. ̹ Ǿ ϱ ̴.
2. "Ϲȣ ƲȾ" ڰ Ÿ ¥ Ϲȣ
, κ 쿡 츮, 츮 '' key-gen
ִ.
3. αӵ α ϳ ̶̻, ٸ
protection scheme ̴.
4. SoftIce debugger̴!
5. ũ ̴!
Ʒ е鿡 ٴ մϴ.
+ORC, The +HCU, Fravia+, +Gthorne, (+)ũĿ Ǹ ũ ,
spam ѷ óġ , а ִ ſ!
Ϸ Ǽ! :-)
By Jon, 1998 2 9
߽:
ۿ ؼ ǰ(Ḭ̄ ̰) е
ּ.
jon101514(at)cyberjunkie(point)com
-------------------------------------------------------------------------------
Page 2
11. Dumb
11. Dumb
ȳϼ. picaview dz.
ʾ. ٻ ô ϴ.. : ) ִ ٳ
־, ű⸦ ٳԾ. ε ټ ð̳ ɸ. .. Դٰ
ϴ 10ð ɷ.. £ ʾҴµ,
ű . ߸ ãƼ 鼭 . ϱ
.. ƴϰ. ˰ڽϱ.
ƹư, ۿ Ϲȣ ù ° κ ҽϴ.
̸ ھ ҷ 鿩 빮ڷ ٲ ణ ļ
'' Ҿ.
캼 ι° '' ̿մϴ. ι° ù
° ٴ ణ , ſ.
ϱ. : )
ô ڵ ٷ ڵ带 캸.
:100104F2 33FF xor edi, edi ;edi
0
:100104F4 3BDF cmp ebx, edi
;ڼ(ebx) 0
:100104F6 897C2414 mov [esp + 14], edi
;[esp+14] 0 Ȯ
κ ״, κԴϴ. ̸ ־, ٽ
Ȯϰ ֽϴ. edi 0 ٴ Ͱ [esp+14] 0 ʱȭ
״ٴ ξ մϴ.
:Ϲȣ__ι°_
:100104FC 33F6 xor esi, esi ;esi
0
:100104FE 668B747C18 mov si, [esp + 2*edi + 18]
;'' '' ϳ
:10010503 0FBE142E movsx byte ptr edx, [esi + ebp] ;,
''°
:10010507 52 push edx ;
ڸ
:10010508 E8FB7B0500 call 10068108
;빮ڷ ٲ۴
:1001050D 8BD0 mov edx, eax
:1001050F 8BCE mov ecx, esi
;Ͽ ''->ecx
:10010511 D3E2 shl edx, cl ;̸
Ʈ ű->edx
:10010513 83C404 add esp, 00000004
:10010516 47 inc edi ;edi
:10010517 8B742410 mov esi, [esp + 10]
;pre_code esi
:1001051B 0FAFD7 imul edx, edi
;edx=edx*edi
:1001051E 0FAF9424C0000000 imul edx, [esp + 000000C0]
;edx=edx*49222D
:10010526 0BD0 or edx, eax ;edx|eax
:10010528 8B442414 mov eax, [esp + 14] ;eax
׳ ٿ ذ ? е鵵 ð.
ڼ ڽϴ.
xor esi, esi
mov si, [esp+2*edi+18]
movsx byte ptr edx, [esi+ebp]
켱 esi 0 ʱȭ , '' о 鿩 si մϴ.
ڵ带 ˰, edi κ ݺ (inc
edi)մϴ. ϱ '' ù ° ʷ о ְ.
'' .
о '' si ǰ ٽ [esi+ebp]
ֵ ̸ ڸ ҷ ˴ϴ. ebp ̸ ù ° ڸ
'Ű' ֽϴ. , movsx byte ptr edx, [esi+ebp] ̸ ' '
° ڸ ҷ Դϴ. ذ Ǽ?
pluskurt ̸ Ǿ װ, 'Ű(pointing)'
ִ ebp. , pluskurt Ǵ , p Ű ְ.
0+ebp , p ̰, 1+ebp l, 2+ebp u..̷ ǰ. esi
ϳ Ѽ ̸ ھ ҷ ִ Ŷ .
picaview ̸ ó ϳϳ ҷ ƴ϶, ' (esi)'
° ڸ ҷ ´ٴ ſ. ù° 0̾,
ι° 5ٴ come as you are 鼭 ˾ .
ϱ ó 0+ebp, p ҷ ̰, κ ٽ
5+ebp u ҷ .
push edx
call 빮ڷ_ġ
mov edx, eax
̸ ' ' ° ڸ ҷ ͼ, 빮ڷ ٲߴϴ. call
10068108 call? 빮ڷ ٲ ٽ, edx
Ű ϴ.
mov ecx, esi
shl edx, cl
' ' esi ecx űϴ. shl Խϴ. shl(SHift
Left) Ʈ ŭ ̵Ű Դϴ. ax
0000 1111 0101 1010̶ ְ shl ax, 3̶ ϸ
ax 0000 1111 0101 1010
|
shl ax, 03
|
ax 0111 1010 1101 0000
̷ ax 3Ʈ Ű ȴٴ . ̷
3Ʈ Űܰٸ ax 2 3 .
shl ̵(arithmetic shift) Ѵϴ.
ϱ picaview 쿡 빮ڷ ٲ ̸( asciiڵ
ϴ)ٰ 2 ' ' ǰ.
add esp, 4
inc edi
mov esi, [esp+10]
edi Ѽ , ' ' ҷ غ մϴ. esp+10
ִٰ ٽ , 츮 ִ
'(pre_code ǻ ̸ ٿϴ)' Դϴ.
Ʊ 0 ʱȭ Ǿ.
imul edx, edi
imul edx, [esp+c0]
Ա. ݱ ִ edx, edi մϴ. edi
' °' ΰ ϴ ִµ, ϱ 1
ְ. ٽ . picaview ó ڵ带 ϰ
ִٸ 'ù°' 0 ϰ ̴ϴ. 'ù°'
edi 0̱ װ. ° picaview κ
ڵ带 ϰ ִٸ 'ι°' 5 ϰ ̰,
edi 1 . edi 'ī' ϰ ֽϴ.
imul edx, edi ɿ edi 'ī' 1 ū
ִٴ ؾ մϴ. , κ ڵ带 picaview ó ϰ
ִٰ ص imul edx, edi edi 0 ƴ϶ 1. ٷ
inc edi Ǿ Դϴ.
imul edx, [esp+c0]̳. esp+c0 Ű ִ ٸ ƴ
49222DԴϴ. ϳ? ¶ư ˾
ٽ
imul edx, edi ------ edx
Դϴ.
or edx, eax
mov eax, [esp+14]
add esi, edx
inc eax
movsx word ptr edi, eax
cmp edi, ebx
mov [esp+10], esi
mov [esp+14], eax
jl Ϲȣ__ι°_
edx eax ORմϴ. OR? OR ˰, edx ݱ
̰, eax Ʊ 빮ڷ ٲ ascii ڵ ֽϴ.
ణ ִ κε, ƴմϴ.
esp+14 Ķ eax 踦 ΰ ֳ ϴ
ſ.
Ʊ Ʊ edi 0 , ٽ 0 [esp+14] Ű Ͻ.
ϱ [esp+14] 0 ʱȭ Ǿֽϴ. 0 eax Ű,
(inc eax), edi Ű, ٽ [esp+14] Ű ϴ. ᱹ κ,
'Ϲȣ__ι°_' ߳, ̸ ִ (pluskurt)
ó߳ ϴ Ȯϴ Դϴ. ٽ .
ſ(ebx ̸ ϰ ?).
̿ add esi, edx mov [esp+10], esi ֽϴ.
. ? edx ݱ
Դϴ. ̰Ͱ esi ؼ esi ٽ ϰ ֱ. ...
ϼ? Ʊ mov esi, [esp+10]̶ ־. esp+10
pre_code ̸ ٿٰ ߱.
ϱ . edx esi ؼ
esi ֽϴ. [esp+10](pre_code)̶
˴ϴ. ٽ Ϲȣ__ι°_
mov esi, [esp+10]̶ , ٷ ߾ pre_code esi
Ű ˴ϴ. add esi, edx edx
Ǿ esi(pre_code) ؼ, ο pre_code
ſ. pre_code ٽ ױ. ˰?
C ǥڸ pre_code+=(¼ ¼) ó ǰ.
jl, cmp edi, ebx бϴ , ̸
ڸ ó߳ Ȯϴ ̶ ƽ ̴ϴ.
̷ ؼ ι° Ҵ . ذ Ǽ̴
ڱ. ι° κ C ֽϴ. ̰Ͱ
鼭 ٽ ذ ſ.
pre_code=0;
for (i=0; ilength; ++i){
pre_code+=((long)(name[lst[i]]*pow(2,lst[i])*(i+1)*0x49222d)|name[lst[i]]);
}
pre_code ߱, lst come as you are
'' Դϴ. shl 䳻 ؼ pow()Լ ϴ.
(left shift) ᵵ ǰ( ִٴ ˱ picaview
ũϰ keygen ŵ. ߾. ȥ Cå ' ִ'
C ζ. ִ ˾.. Ƽ ٲ
ʾҽϴ. ݾƿ. : )
length ó length( )Դϴ.
κ . κ 'ι°' pre_code
, , 0 ణ ٷ ¥
'Ϲȣ' κԴϴ(pre_code ű ־ : ).
κ մϴ.
:1001053E 8BC6 mov eax, esi
;pre_code eax ű
:10010540 85C0 test eax, eax ;eax
0 ?
:10010542 7D08 jge 1001054C
;ƴ϶ ?
:10010544 F7D8 neg eax ;0
۴ٸ ȣ ٲٱ
:10010546 89442410 mov [esp + 10], eax ;
:1001054A 85C0 test eax, eax ;ٽ
ѹ Ȯ
:eax_0̴
:1001054C 750C jne 1001055A ;0̾?
:1001054E C7442410DC6F2400 mov [esp + 10], 00246FDC ;
pre_code 246FDC
:10010556 8B442410 mov eax, [esp + 10] ;ٲ۴
:eax_0_ũ
:1001055A 99 cdq
:1001055B B900CA9A3B mov ecx, 3B9ACA00
:10010560 F7F9 idiv ecx ;ecx:eax
/ ebx
:10010562 89542410 mov [esp + 10], edx ;
:10010566 8B442410 mov eax, [esp + 10] ;eax
ű
:1001056A 5B pop ebx
:1001056B 5F pop edi
:1001056C 5E pop esi
:1001056D 5D pop ebp
:1001056E 81C4A8000000 add esp, 000000A8
:10010574 C3 ret
ʾƵ ٵ ſ.
pre_code esi Ǿ ֽϴ. װ eax ű
ȣ մϴ. 0 ۴ٸ neg(NEGate), ȣ ٲݴϴ. 0̶
̹ 'غ' 246FDC pre_code ϴ. 0 ũٸ
pre_code 3B9ACA00 eax ű ſ. ٷ
eax '¥' Ϲȣ Ǵ .
κ C ڽϴ.
code=0;
if (pre_code0)
pre_code=-pre_code;
if (pre_code==0)
pre_code=0x246fdc;
code=pre_code%0x3b9aca00;
code Ϲȣ ǰ.
, ļ ϰ picaview keygen
Ѳ ڽϴ.
#include
#include
#include
#define MAX 80
int main(void)
{
char c, name[MAX];
int i, length=0, lst[MAX], lst_str;
long pre_code, code;
printf("\nPicaView32 ver 1.3 KeyGenerator .. Cracked By +kurt\n");
printf("Name: ");
for (i=0; (c=getchar()) != '\n' ; ++i){
name[i]=toupper(c);
if (isalpha(c))
++length;
else if (isspace(c))
++length;
else
--i;
}
name[i]='\0';
if (length30)
name[30]='\0';
for (i=0; i
, ó C α
ſ.
̰ picaview ⸦ ġڽϴ.
Ʋ , Ʋ , ۿ ̶ ǰ ø ˷
ּ.
, keygen Ϲȣ ACDSee ֽϴ.
ֱ (v 2.4) . ֱ ũ߽ϴ.
ȸ Ǹ ڽϴ.
Page 2
12. Revolver
12. Revolver
, ۾ ̵ ªϴ. ª ȿ ʺ
ؼ ڼ Ʈ ʾҽϴ. bc, bpm, hmemcpy
ϴ ģ
Դϴ.
, 캸 Ǵ ҽ κп , ̰
ſ. ݱ ۵ о е̶
װ͵ ״ϱ.
ۿ 'Flag' ϴ ϴ Դϴ. , (save)
ؼ ڰ ʿմϴ. , ؾ ϴ
. , α 'ڰ' ƴ. ٷ 'Flag' ƴ
ſ. al մϴ. , al 0 Ǿ
, ̰, al 1 Ǿ ִ
. ̷ flag 'ڰ' Ǵϴ α ִ
Դϴ.
ٸ ڸ ̷ ְ. α 30 ۿ
Ѵٰ մϴ. 30 ѵ .. ɴϴ.
ý ð踦 ĥ Ҵٰ . ٽ
ϱ, ٰ ſ.
, α 츮 ð踦 ˾ ?
Ƹ ̷ ̴ϴ. 30 flag մϴ. ,
30 ʾҴٸ 0 ִ κ ֽϴ. 30
1 ϴ . ٽ ð踦 30 DZ Ƶ,
α flag 30 ̹ ٴ ְ.
̷ α ũϷ flag Ǿִ ã ,
ð 0 Ǵ Ű.(+ORC ¿
Դϴ. : )
ƹư, ̷ flag ⸦ ̾߱ Դϴ(⼭ ϴ flag
flag register ϴ ƴ϶ ˰ : ).
-------------------------------------------------------------------------------
ARJSHELL DISABLED SAVE FUNCTION
by Rundus
(20 September 1997)
켱 ʹ Ϳ ؼ 帳ϴ. KISS(Keep It Simple
Stupid) Ģ Ű ϰ ְŵ.
츮 ũ α Arjshell version 1.2
http://www.windows95.com
̳
http://www.filez.com(arjsh12.zip)
ã ֽϴ.
α α arj.exe ִ αԴϴ.
(save)ɰ dos-batch ٰ
ֽϴ. project ִ ɵ ϴ.
Arjsh32.exe Wdasm String Function References ã
κ ã ֽϴ.
"Sorry, saving projects is possible in registered version only"
"Sorry, saving Dos-batch is possible in registered version only"
"Sorry, loading projects is possible in registered version only"
"You are a registered user of Arjshell"
κп Ŭϸ Ʒ ִ ڵ带 ã ϴ.
|:0042F693(C)
|
:0042F702 E87D450000 call 00433C84 : call մϴ.
:0042F707 A2D3774300 mov byte ptr [004377D3], al ;Flag
( ÷)
:0042F70C 803DD377430000 cmp byte ptr [004377D3], 00 ; / ?
:0042F713 747F je 0042F794 ; ̸ б
:0042F715 8D55FC lea edx, dword ptr [ebp-04]
:0042F718 8B83B4010000 mov eax, dword ptr [ebx+000001B4]
:0042F71E E8492CFEFF call 0041236C
:0042F723 8B45FC mov eax, dword ptr [ebp-04]
:0042F726 50 push eax
:0042F727 33C9 xor ecx, ecx
* StringData Ref from Code Obj ->"ArjShell\UserName"
|
:0042F729 BA0CF84200 mov edx, 0042F80C
:0042F72E B800000080 mov eax, 80000000
:0042F733 E810BCFFFF call 0042B348
:0042F738 8D55FC lea edx, dword ptr [ebp-04]
:0042F73B 8B83B8010000 mov eax, dword ptr [ebx+000001B8]
:0042F741 E8262CFEFF call 0041236C
:0042F746 8B45FC mov eax, dword ptr [ebp-04]
:0042F749 50 push eax
:0042F74A 33C9 xor ecx, ecx
* StringData Ref from Code Obj ->"ArjShell\UserID"
|
:0042F74C BA28F84200 mov edx, 0042F828
:0042F751 B800000080 mov eax, 80000000
:0042F756 E8EDBBFFFF call 0042B348
:0042F75B B8D0764300 mov eax, 004376D0
* StringData Ref from Code Obj ->"You are a registered User of ArjShell "
->"now !"
|
:0042F760 BA40F84200 mov edx, 0042F840
:0042F765 E89E65FDFF call 00405D08
:0042F76A 6A40 push 00000040
* Reference To: user32.MessageBeep, Ord:0000h
|
:0042F76C E83F56FDFF Call 00404DB0
:0042F771 6A40 push 00000040
* StringData Ref from Code Obj ->"Registering successful"
ã ֽϴ.
:00431F02 803DD377430000 cmp byte ptr [004377D3], 00
:00431F09 751D jne 00431F28
* StringData Ref from Code Obj ->"Sorry, saving DOS-Files is possible "
->"in the"
|
:00431F0B 6848214300 push 00432148
* StringData Ref from Code Obj ->"Warning"
ã ֽϴ.
:00432EF2 803DD377430000 cmp byte ptr [004377D3], 00
:00432EF9 751D jne 00432F18
* StringData Ref from Code Obj ->"Sorry, loading Projects is possible "
->"in the"
|
:00432EFB 6804364300 push 00433604
* Possible StringData Ref from Code Obj ->"Warning"
ã ֽϴ.
* Referenced by a Jump at Address:004322C2(C)
|
:00432338 803DD377430000 cmp byte ptr [004377D3], 00
:0043233F 751D jne 0043235E
* StringData Ref from Code Obj ->"Sorry, saving Projects is possible "
->"in the"
|
:00432341 68EC2A4300 push 00432AEC
* StringData Ref from Code Obj ->"Warning"
, ֵ [004377D3] Ǿ ִ
ϴ. AL ִ װ ϴ Դϴ.
call 00433C84 ȣϴ κ ϰ.
.. κ̰ ٸ call ֱ. softice ̿ .
:0042F702 E87D450000 call 00433C84 ; Call
ſ
:0042F707 A2D3774300 mov byte ptr [004377D3], al
:0042F70C 803DD377430000 cmp byte ptr [004377D3], 00
(1) Arjshell32.exe ϰ Preference Register մϴ.
(2) ̸ Ϲȣ ƹ ̳ ֽϴ.
(3) Ctrl+D softiceȭ ϴ.
(4) :bpx hmemcpy ;츮 ϴ ɿ ߴ մϴ.
(5) :bpm 004377D3 ; ߴ մϴ. (6) F5 ϴ.
Ʒ κп ֽϴ. Ʈ Ͱ
ٸ ֽϴ. ſ.(????:0042F707)
014F:0042F702 call 00433C84
014F:0042F707 mov byte ptr [004377D3], al
014F:0042F70C cmp byte ptr [004377D3], 00
(7) :bc * ;ߴ ϴ.
(8) :bpx 014F:042F702 ; callκп ߴ մϴ.
(9) F5Ű softice մϴ.
(10) ٽ softiceȭ Ÿϴ. F8Ű call ȣϴ κ
ϴ.
(11) Ʒ κ F10 ϴ.( 35
ϴ)
:00433CF2 E931F3FCFF jmp 00403028
:00433CF7 EBEB jmp 00433CE4
:00433CF9 8BC3 mov eax, ebx
:00433CFB 5F pop edi
:00433CFC 5E pop esi
:00433CFD 5B pop ebx
:00433CFE 8BE5 mov esp, ebp
:00433D00 5D pop ebp
:00433D01 C3 ret
ڵ â 7ٷ ϴ. :wc 7
00433CF9 eax 0 ˴ϴ. κ ٲ ϰ.
츮 2Ʈ ۿ ϱ mov eax, 0001(B801000000)
ϴ. mov al, 01(B001) մϴ.
ڵ忡 ʿϽ е
http://www.expage.com/page/w32dasm
ãư .
Arjshell32.exe hex editor κ ٲ ֱ⸸ ϸ ˴ϴ.
(save)ɰ (load) ֽϴ.
ϱ ư Ǿ ˴ϴ.
30 α ְ, ̸
Ÿ ϱ ̰ ɰ .
softice ebx 00000000 00000001 ٲ Ҵ,
HKEY-LOCAL-MACHINE\Software\Classes\Arjshell ̸ Ϲȣ Ű
. Ƹ α Ǿ ʾҳ κ ؼ
Ȯϰ ֳ ϴ.
Registerư κ ߿ ڽϴ.
ٲٴ ؼ
帮.
(1) mov eax, ebx F10 ϴ.
(2) :r ebx ; ٲٶ Դϴ.
(3) 00000000 00000001 ٲߴϴ.
(4) Esc ϴ.
Ƹ ٸ ũĿ, ãƳ ã
ְ.
Դϴ. п Ǿٸ ڱ.
cheers Rundus
(c) Rundus 1997 All rights reversed
-------------------------------------------------------------------------------
Page 2
13. Something In The Way
13. Something In The Way
ȳϼ.
̹ ۿ ̾߱ ' 98 v2.32'Դϴ. α ϴ
̴ ϴ. PC Խǿ ִ
α̶ ϴ , Ͱ ̶.
켱, α ˰ в ± Դϴ.
α ũϴ (?) ϼ. : )
, PCſ ڷǿ ã ô, û
ũ(4, 442, 838 bytes). ӵεٰ ȭ
ǰ ؼ, ٿ ޱⰡ ʾҾµ, ߿
(?) ؼ ٿ Ҿ. û ð 鿩 ٿ
Ƽ, ũ ϱ.. ũϴ ɸ ð 3е ʴ.
в keygen ϼ ʿ䵵 ϴ. α Visual
Basic ϴ. Visual Basic α
ũϴ Դϴٸ, 쿡 ٴ ǥ Ʊϴ.
ƹ ʿ ٰ ϴ ſ(Visual Basic
ũϴ ٴ ǥ źΰ ʱ ٶϴ. ߳ ô Ϸ
ƴմϴ. ũĿ ̿ ߿ ̷ ־. IF visual
basic Then Cracked At Once. ʺ ũĿԴ
ƴϰ Դϴٿ. : ).
켱 α readme ֽϴ.
98 2.32 (/) ǰ : 10
Ʈ 7ϵ ƹ 밡
ѵ 98 6 Ǹ մϴ.
: ٿ ʹ 7ϵȸ ֽϴ.
Ŀ ̻ ǰ
Ϸ ϰ Ļڷ Ͻʽÿ.
ҹ δ 98 ̿ ùԿ
ó ˷帳ϴ.
ǰ Ź ġ ǰȣ ˴ϴ.
ϱ äϿϴ.
Ϲȣ ߰ 帳ϴ.
: Ź
ʳ?
Ϸ 10 ϴ Űڱ. ȣ.. 10̶.. ̰͵
α̱.
̰ ƴϰ, 7 ۿ ʴ±. ȿ
Ʈ ض...
6 ¥ ʴ 缭 .
Ŀ.. ̷ ϵ , ڱ.
ҽض..
6 ̳ ְ, ʴ Ǵٴ, óϰ .
־. ε. ܱ ڳ տ
å þ , ƴϸ 7õ ΰ ȴ. ٰ
å Ƽ Ϸ
. ʸ ٷ ϱ, å ٰ ƹ
å ٸ ѱ ſ. ä
ٷ. 10 ٸ ڴϱ, ͼ å 3
¥ ϴ. ߸ ˰ ۿٰ ٰ... ٽ
ͼ ô, åε å ڿ CD ִ. ϱ,
CD ҷǰ Ȱ, ︸ ް.. , ȭ
.
Ź ġ ǰȣ ȴ... ҹ ϱ
̶.. ,
ϱ, ڼ ϴ. ũ , û
protection scheme 츮 α ĺ
ϴ. ͳݿ Ϲȣ ؼ
α 'ġ' ̶ մϴ.
α ִٸ 翬 ġ ϰ(κ ''
ġ Ѵٴ 츮 Դϴٿ).
Ϲȣ ؾų ѹ ˷ ְ, ʹ
ްڴ.. ̶.. ϱ. ݱ Ƽ ټ
ũؼ ϱ, ̽ ̳. .
¶ư ٽ 帮, α
̶ ϼž .
츮 ʺ ũĿ '' α 'ũ'ϴ
̴ϴ. : )
_ 98 v2.32 ũϱ_
α ũϸ鼭 ϴ. ⼭ protection scheme
ũ ٴ ܿ Դϴ. ,
Ѱ ֳ. α ũϱ ƴ϶ .
̷ ͵ ִٴ Դϴٿ.
, 'ƹ ' ũ .
̹ ˰ ֵ α 7 ۿ ϴ. ¥
ٽ ٰ ص, α װ ˾ ϴ. : )
α ؼ 'ǰ'->'ǰ' ϴ.
ǰȣ Ÿ ְ Ϲȣ ĭ ֽϴ. ǰȣ
295324Դϴ(¾ ٽ ġص ǰȣ ʾҽϴ).
Ϲȣ ó 1234 ־ϴ.
'Ȯ' ư Ŭϸ, ߴ ۻڰ Ƣ ɴϴ.
Ϲȣ ƲȽϴ. Ȯ Ŀ ٽ ԷϽʽÿ.
¶ư 츮 ϱ . ܱ α ũϴٰ 츮
ũϴϱ ̰ . : )
̹ ߴ ؾ ٵ.. ϴ GetDlgItemTextA ߴ
ؾ ұ? ҿϴ. GetWindowTextAԼ ߴ ص
. bpx hmemcpy ߴ մϴ. ̰ ִ
ڿ( "1234" ǰ) κп ߴ
ϴ ̿.
ٽ Ȯ ư siceȭ ϴ.
F11 ؼ F12 18 ڵ ãưϴ.
CALL 004040B8 ;Ϲȣ о
̱
MOV EAX,[00486144] ;¥ Ϲȣ
о ̱
MOV DWORD PTR [EBP-6C], 00008008
MOV [EBP-64], EAX
LEA EAX, [EBP-3C]
PUSH EAX
LEA EAX, [EBP-6C]
PUSH EAX
CALL 004040E8
MOV SI, AX
LEA EAX, [EBO-3C]
PUSH EAX
LEA EAX, [EBP-2C]
PUSH EAX
PUSH 02
CALL 0040405E
ADD ESP, 0C
CMP SI, DI
JZ 0044CC31 ;Ϲȣ Ʋ
б
CMP [00486BEC], EDI
JNZ 0044CAAD
ڵ尡 ̴ ſ. bpx hmemcpy ߴ
ϰ CALL 004040B8 ߴ ٽ մϴ( Ŭ
ߴ / ִٴ ƽð : ). sice
ͺ.
, ٽ 'Ȯ' ô. siceȭ ٽ ϴ. call
004040b8 ߴ Ⱑ ſ. F10 ܰ躰
ؼ mov dword ptr [ebp-6c], 8008 ⸦ űϴ.
'' '1234' а, ¥ Ϲȣ оϴ. 486144 'Ű'
ִ ٷ ¥ Ϲȣ. ⼭ d eax .
â Ÿ Դϴ.
2.C.7.8.D.D.8.0.
..c...e.t.\.0.0.
0.1..... $...
............. ..
... ....... ....
.......3J.......
4.......2.9.5.3.
2.4...o.t.......
ȭ Ʒ ̴ 295324 ˰ھ? ٷ ǰȣ. ִ
2C78DD80 ?
visual basic ڿ 16 ڵ 00 ڿ ̸
ϴ ϴ. ̷ Wide Format̶ Ѵٳ.
ƹư Ϲȣ տ ũ ϴ. Ϲȣ
ֽϴ. ƴϸ JZ 0044CC31 Ⱑ , JUMPϴ
r fl z zero flag ٲ㼭 NO JUMP ٲݴϴ.
α Ʈ Ϲȣ Ű
ݴϴ(HKEY_CURRENT_USER\Software\VB and VBA Prgram Settings\
98\Setup\RegCode).
ϱ Ǻб⸦ hex editor ٲ ʿ ٴ ſ.
ٲٰ е JZ 0044CC31 ڵ 0F849B010000
0F859B010000 ٲ ָ ǰ.
̷ ؼ ũ ϴ. ٿ ڸ, visual basic
α ũϴ visual basic ϴ dll ڵ带
ãƼ ũؾ մϴ. ̷ Ϲȣ ִ 쿡
dll߿ ڿ ''ϴ κ ãƼ ũؾ ϰ.
ȸ Ϳ øڽϴ.
ͳݿ η ִ warez/crackz/serialz ã ٴϸ
ֽϴ. α 'ġ' . Ƶΰ ̷
д ̶ α 'ġ' Ͱ ũϴ
Դϴ. .. Ϸ ƽ ̴ϴ. : )
Page 2
14. Imagine
14. Imagine
+Sync ũĿ Դϴ.
Visual Basic α ũϴ ؼ, ʺ ũĿ ؼ
ª Դϴ. ٷ (something in the way) wide format
ؼ ϰ ֽϴ. , 츮 Ϲȣ
ãƼ ߴ Դϴ.
s(Search) մϴ. Ϲȣ
'1234' ־ٸ,
:s 30:0000 lffffffff '1234'
ؾ ϰ. ̷ 쿣 Ϲȣ 1234ó
ӵǴ ڸ ִ ʴٴ ͵ ˾ μ( ó
1234 µ, ٲٴ ͵ ؼ ֽϴ : ).
ؼ 츮 Ϲȣ ִ ּҸ ˸,
ߴ ϸ ˴ϴ. о̴ κп ߴ
Ѵٴ ϸ ǰ.
(something in the way)̳ ۿ ֵ Visual
Basic α̶ ʿ䰡 .
s ɿ ؼ ϸ, s 30:0000 ã
ִ ſ. ó (ɾ ƴ)
κ Ʈ(segment) 30Դϴ. ϱ Ʈ 30 (0000)0000
ffffffff (l, length) ŭ ߿ '1234' ãƶ ϴ
ǰ.
-------------------------------------------------------------------------------
How to Crack SSS Convertable by Scientific Solutions Software
by +Sync
May 12, 1997
http://members.aol.com/sss5000/ α ִ.
̷ Ǵٴ óϰ . α ݲ ô
α ߿ ġũ α̴(̰ ȸ簡
Ȩ aol ϵ ƴϴ). α ϴ
ٲٴ ۾ 뿡 ٴϴ ״ ־ ٿ Ҵ.
α Ϲȣ ִ ϰ ִ , disassembleؼ
ڵ带 , Ϲȣ ڴٰ ,
ʾƵ α̾. ߴ
ϱ Բ . αӵ ṵ̂,
ٷ Ű ̴.
ó α ġϰ ư α
. Help Register ϸ Ϲȣ ´.
ڿ 'Enter the password to unlock below:' ״
. hex editor convertable.exe ô.
ֿ Ⱦ ٰ ߰ 'VB40032.DLL'̶ ڿ. ̷ . VB
α̱. 츮 ˷ ش.
1. αӴ ûؼ ¥ α ٷ . װ
̴.
2. α ̴.
3. Winice ܰ躰 ϴ (tracing) ̴.
4. ڿ Wide Format Ǿ ִ.
° ǿ ʿ䰡 ִ. VB 4.0 ڿ
16 00 Ѵ. ̰ Ȯϱ ؼ 'Enter the password'
ڿ ã 翬 ƹ ͵ ã . wide format
ã Ҵ.
Hex: 45 00 6E 00 74 00 65 00 72 00 20 00 74 00 68 00 65
text: E . n . t . e . r . . t . h . e
ʿ䵵 , ڿ ִ ã ־. 7DBA
־. ϱ, ٷ wide format
'Garbonzo' ڿ ã ־. װ 7E56 ־. ̷ ̷..
Ϲȣ ȿ ؽƮ ־ Ŵ. α ٽ
Ѽ Ϲȣ Garbonzo ְ dz . ̵
α .
, 츮 ? ʴ.
.
1. 翬 ãƳ. ư .
2. . VB 4 wide format Ѵٴ ־ٸ ƹ ã
ϴ ڿ ã ̴.
3. . ũ ʿ hex editor ϳ ̾.
winice Ϲȣ ߴ ϴ ũ
̴. , α ִ Ϸ ϸ鼭
ã°?
Դ DZ ٶ鼭 . ª ̰, ణ
踸 ִ ̶ ˰ , տ ΰ ã
ϴ ִ. ʺڵ ٴ ؾ
̴. 븦 ̾ Ĺ ũĿ鿡 ϰ ִ. ũ
Ǹ ۾̴. ġְ ٶ.
˸: α ȸ ٸ α . Ƹ Ȱ
û protection scheme ̴.
+Sync
-------------------------------------------------------------------------------
Page 2
15. Heart-Shaped Box
15. Heart-Shaped Box
̹ ũ α Hex WorkShop v2.54Դϴ. α ũϴ
̹ Heres ۿ Ұ ֽϴ. ̹ ϳ ö
Ƹ ũ Ŷ մϴ. ݱ
Ե, ȸ ǰ̰ų α ٸ ̸
ũ ֱ ǵ, Ȯ ʾҽϴ.
ʺ ũĿ Heres ϴ ü , ۿ
Ұ ణ '' Դϴ. ϴٴ ǹ̴, ϱ
call ϴ ʰ ׳ '' ˾
Ҵٴ Դϴ. ̷ ִ
CALL Ϲȣ_ϴ_
TEST EAX, EAX
J(N)Z /
̷ ʹ ̰ ֱ Դϴ. ̹ ũ Hex Workshop
Դϴ. Visual ¼ ϴ '' protection scheme
̷ ۿ ٰ մϴ( ũĿ ̷
¥ α ʰ ־). ¶ư,
Ϲȣ ִ κ ã κ ̸ ũ
̹ ̳ ٸ . ̷ α ũϴ
ְ, ߿ 켱 ִ J(N)Z Ǻб⸦ ٲ
ִ ̰. ִ CALL Ϲȣ_ϴ_
ؼ ҷ ãư eax 츮 ϴ
ֽϴ. , 츮 ϴ eax 1̶ retDZ
xor eax, eax/inc eax(33C0/40) eax 1
ְ. mov eax, 0 ɵ ɿ ڵ
B800000000Դϴ. mov ax, 0 ڵ 66B80000, mov al, 0
ڵ B000Դϴ. ߿ ϸ ǰ. ܿ
ſ. ƹư, ڵ带 α
ֽϴ.
ۿ ̷ ڵ带 ٲ ʿ ϴ. Hex WorkShop
쿡 HEXWORKS.REG մϴ. ϴ ϸ
Ǵϱ, sice ؼ (On the fly) ڵ带 ٲ㼭
ϴ ſ.(Heres ۿ ٷ
Ұ ߾ϴ)
, ϰ ũ .
_Hex WorkShop v2.54 ũϱ _
Hex WorkShop ϰ Help->About Hex Workshop... ϸ Ϲȣ
ִ ڰ ɴϴ. ƯϰԵ Ϲȣ ֽϴ. ݲ
츮 ߴ Ͱ ణ ٸϴ. ̸ Ϲȣ ų, ƴϸ
ǰȣ ˸´ Ϲȣ Դϴٿ. Ƹ Hex Workshop
ũ Ű ʾҴ ڳ. ƹư, ⼭
츮 ִ , ٸ ʹ ٸ Ƹ 'غ' Ϲȣ
Ŷ ̴ϴ. , PicaView ó ̸ Ϲȣ ͵
ƴϴϱ, ̹ غǾ ִ Ϲȣ 츮 Ϲȣ ϴ
Ŷ ְ.
ó 1234 Register߸ ϴ(׳ Help߰
Ǿ ֽϴ). ߴ 1234 Ϲȣ
ƴϿ. Ϲȣ ߸ Ǿٴ ڰ Ÿϴ. , ߴ
ʰ ǰڱ. ߴ ؾ ұ. ̴
GetDlgItemTextA GetWindowTextA ϱ, Ǵ.
GetWindowTextA ߴ ϸ ˴ϴ. , GetWindowTextAԼ
ڿ о ̸ شٰ մϴ. 1234 ϱ 4
ְڱ.
ƹư ߴ ϰ sice ͼ ٽ Register ư
siceȭ ٽ ϴ. F11 Hex Workshop ڵ ãưϴ.
:00454485 FF15541D4900 Call [USER32!GetWindowTextA]
:0045448B 6AFF push FFFFFFFF ;eax=4
:0045448D 8B4D10 mov ecx, [ebp+10]
:00454490 E8EB82FFFF call 0044C780
:00454495 EB0B jmp 004544A2
;ecx->1234
:00454497 8B4510 mov eax, [ebp+10]
:0045449A FF30 push dword ptr [eax]
:0045449C 56 push esi
:0045449D E8C3EAFFFF call 00452F65
:004544A2 5F pop edi
:004544A3 5E pop esi
:004544A4 5D pop ebp
:004544A5 C20C00 ret 000C
GetWindowTextAԼ eax 4 ˴ϴ. ̰ sice ȭ
â Ȯ ֽϴ. call 44C780
ϴ call ˱ ؼ F8 ã ʰڽϴ. ũ ''
ٰ ݾƿ. call , ϱ Ⱑ jmp
4544A2 d ecx . â
Ϲȣ ֽϴ. 쿡 1234 Ÿϴ.
, call 츮 Ϲȣ ϴ Ѵٴ
ְڳ.
ret Ǿ Ʒ Ѿ ϴ.
:00409AC6 E88BA90400 call 00454456
:00409ACB 6A08 push 00000008 ;
. κ Ϲȣ ִ
' ' 谡 ִ ϴ. ƹư F12(P Ret) Ѿ .
:0044B17A C745E801000000 mov [ebp-18], 00000001 ;
̰ڳ. call Դϴٿ. P Ret.
:00409C41 E8E6140400 call 0044B12C
:00409C46 8B8DFCFEFFFF mov ecx, [ebp+FFFFFEFC] ;Ret
:00409C4C 83C15C add ecx, 0000005C
:00409C4F E82C80FFFF call 00401C80
:00409C54 50 push eax
:00409C55 8D45DC lea eax, [ebp-24]
:00409C58 50 push eax
:00409C59 E8E2F30200 call 00439040
:00409C5E 83C408 add esp, 00000008
:00409C61 6874D84700 push 0047D874
:00409C66 8D45DC lea eax, [ebp-24]
:00409C69 50 push eax
:00409C6A E8810B0300 call 0043A7F0
:00409C6F 83C408 add esp, 00000008
:00409C72 85C0 test eax, eax ;call
004373C0 ;je 00409D18 ;No Jump
==
߿ ߰ߴٴ . call ֽϴ.
call 캼 ʿ ϴ. и ΰ ϰ
ְ. 츮 ִ ڵ ù° ȭǥ ִ test eax,
eaxԴϴ. ؼ [ebp-14] [ebp-24]Դϴ. d
ֵ ebp-24 '1234', 츮 Ϲȣ Ű
ֽϴ. ebp-14 0 ƴ ֽϴ.
ôٿ. и call 1234 ۾ ϰ
ֽϴ. 츮 ñ Դϴ. CALL 0043A7F0 ؼ eax
FFFFFFFF ˴ϴ. test eax, eax/je 00409C8E б ʽϴ.
б ߴٸ ebp-14 Ű 0 ̰, cmp [ebp-14],
00/je 00409D18 б ̴ϴ.
CALL 004373C0 ؼ eax 0 ˴ϴ. eax mov [ebp-14],
eaxɿ ؼ ebp-14 Ű 0 Դϴ. ̰ test
eax, eax/je 00409C8E б Ͱ . ڸ
call 004373c0 츮 Ϲȣ Ȯϰ ִ ϴ. 켱
Ϲȣ ̰ 8 ƴϸ eax 0 , 8̶ Ϲȣ
Ȯմϴ.
ƹư, ⼭ ִ ebp-14 Ű 0 Ǹ ȵȴٴ
Ű. 1234 'Ʋ' Ϲȣ ؼ ebp-14 0
Ǿϱ. ebp-14 Ű 0 бϴ je 00409D18 '
' б ֽϴ. r fl z JUMP NO JUMP ٲ
. ϴ ε ȴٴ ̴ϴ.
. ؼ , je 00409d18 NO JUMP شٸ
츮 ϰ ˴ϴ. , α ũϷ ܼ, je
00409d18 r fl z б⸦ ʰ ְų, ƴϸ r
al al ٲ ְ , װ 1(0 ƴ ) ٲ ָ
Ǵ ̴ϴ.
ִ call
Դϴ. picaview ó keygen ƴ϶ call
ʿ䰡 ϴ(ð е ).
ϴ ϸ ' ' HEXWORKS.REG ǰ, װ
ũ ģ ſ.
̷ call ʰ '' '߿' κ ãƼ ũ
ֽϴ. ̱ Դϴٿ.
Hex Workshop ũϴ 3е ɸ ʾҽϴ. Ͽ ħ
Ͼ ұ ϴٰ, '
' ũ߽ϴ. ϱ Hex Workshop ־
ϴµ, Ⱓ ƴٰ ϴ. Hex Workshop ũϴ ̷Դ ,
ũؾ ϰ ߴ , 3е ɸ. ̷
۷ , ǿܷ ̷ ε ũ ִ
û α ϱ.. ... ׳ ϴ.
Page 3
16. Nothing Else Matters
16. Nothing Else Matters
ȳϼ.
̹ Mammon_ ̶ ũĿ Űϴ.
ũ α ٷ (Notepad)Դϴ. ũѴٴ ̻.
ũ̶ Ϲȣ ˾ ߰, ð ִ
ϴ ƴ϶ ݰ ִ Դϴ. Ư Mammon_̶
ũĿ ְ (.. ̳ : ) ũ
Ұ߽ϴ. ߿ Netscape ư ʿ ư ٲٴ
ְ, ٷ ۿ '۲' ٲٴ ־ϴ.
쿡 ִ α̴ϱ Դϴ.
̱. 忡 ̴ ''
۲ ٲٴ ũ Ұϰ ֽϴ.
dz ũ Ǵ ̹Ƿ,
츮 ʺ ũĿԴ о ̶ ؼ Űϴ.
˸:
+ ׳ Notepad Űϴ. ̸ Notepad.exeϱ,
ȥ ʵ ״ notepad ϴ.
+ (?) pen, brush, font ׳ ״ ϴ.
ϴ 츮 .
+ , prototype̶ ͵ ̿ ϴ 츮 ϴ. ִ
Cå Ŷ, ׳ prototype̶ ۿ ( ߾.
б C ۿ ʾҴٱ. : ) ..
¸, ݱ disassemble̶ , ̶
ʱ. ̶ ̻ 츮 Ⱑ Ⱦ
̱ ϱ, ٸ е ε , ̶ ϴ. s
ΰ? װ͵ Ȯ , ׳ disassemble̶ ֽϴ.
-------------------------------------------------------------------------------
_Project One_
*The Target*
Notepad, ٷ ־ ϴ, ۰(34K)
̴. α ִ. , ϳ
ϸ ٷ ְ, ٷ ִ ũⰡ Ǿ ְ,
ý ۲ شٴ ̴. ѻ
ٲ Ѵ.
-------------------------------------------------------------------------------
*The Job*
켱, 32Ʈ disassembler Notepad.exe Ѵ. w32DASM
ִ. w32DASM ְ( demo̴), ϱ
̴. ҽ Ĵ ų, ϳ ϳ
ľϴ ƴϴ. ϴ ʿ ̴. 츮
ִ '۲' ̱ ̴.
Notepad ý ۲ ϴ ý ̴; ۲
ý ڿ Ǿ ̸, Ȯ GDI32.DLL ȿ ִ(GDI
pen, bursh, font, Device Context ü ٷ, USER window, menu,
icon, constrol, timer, task management, messaging, the clipboard,
network ٷ. KERNEL memory management, dynamic linking, task
scheduling, and program loading ٷ). 츮 W32DASM
Functions->Imports ؼ GDI ̴.
GDI32.AbortDoc
GDI32.CreateDCA
GDI32.CreateFontA
GDI32.DeleteDC
GDI32.DeleteObject
GDI32.EndDoc
GDI32.EndPage
GDI32.GetDeviceCaps
GDI32.GetStockObject
GDI32.GetTextCharset
....
CreateFontA κ ִ.
-----ASM Excerpt
1----------------------------------------------------------------------
* Menu: MenuID_0001, Item: "Save"
* String Resource ID=00001: "Cannot open the %% file.
Make sure a disk is in the drive y"
|
:004037B2 6A01 push 00000001
:004037B4 53 push ebx
* GDI32.SetBkMode, Ord:010Dh
|
:004037B5 FF15C0724000 Call dword ptr [004072C0]
:004037BB 8D8558FFFFFF lea eax, dword ptr [ebp FFFFFF58]
* GDI32.GetTextMetricsA, Ord:00CDh
|
:004037C1 8B35BC724000 mov esi, dword ptr [004072BC]
:004037C7 50 push eax
:004037C8 53 push ebx
:004037C9 FFD6 call esi
* Menu: MenuID_0001, Item: "Page Setup..."
* Dialog: DialogID_000E, CONTROL_ID:0020, ":"
* String Resource ID=00032: "%%"
|
:004037CB 6A20 push 00000020
:004037CD 8D4590 lea eax, dword ptr [ebp-70]
:004037D0 50 push eax
* String Resource ID=00057: "Courier New"
|
:004037D1 6A39 push 00000039
:004037D3 FF3570514000 push dword ptr [00405170]
* USER32.LoadStringA, Ord:0168h
|
:004037D9 FF15B0734000 Call dword ptr [004073B0]
:004037DF 8D4D90 lea ecx, dword ptr [ebp-70]
:004037E2 51 push ecx
:004037E3 6A31 push 00000031
:004037E5 6A00 push 00000000
* Menu: MenuID_0001, Item: "Page Setup..."
* Dialog: DialogID_000E, CONTROL_ID:0020, ":"
* String Resource ID=00032: "%%"
|
:004037E7 6A20 push 00000020
:004037E9 6A00 push 00000000
:004037EB FF75F8 push [ebp-08]
:004037EE 6A00 push 00000000
:004037F0 6A00 push 00000000
:004037F2 6A00 push 00000000
:004037F4 FFB574FFFFFF push dword ptr [ebp FFFFFF74]
:004037FA 6A00 push 00000000
:004037FC 6A00 push 00000000
:004037FE 6A00 push 00000000
:00403800 FFB558FFFFFF push dword ptr [ebp FFFFFF58]
* Reference To: GDI32.CreateFontA, Ord:002Bh
CreateFontAԼ /μ(Save/Print) ȭ Ϻκμ ȣǰ
ִٴ ִ. Notepad Ȯ ִ --
ý ۲ ƴ϶, Courier New۲÷ ǰų μȴ. ƹư,
ڵ ȭ (dialog box) ȣ Ǵ , α
ҷ ƴϴ -- 츮 ã ִ, α ⺻
۲(default font) ƴϴ.
ٸ 츮 δ GetStockObject ִ. Win32
API , "GetStockObject Լ pens, brushes, fonts, Ǵ
palettes Ѵ" ִ. ٷ 츮 ã ִ . Լ
ȣϴ κ Ʒ .
-----ASM Excerpt
2---------------------------------------------------------------------
:004027A0 688C614000 push 0040618C
* Data Obj ->"Edit"
|
:004027A5 6890614000 push 00406190
:004027AA 6800020000 push 00000200
:004027AF FFD7 call edi
:004027B1 A304604000 mov dword ptr [00406004], eax
:004027B6 3BC3 cmp eax, ebx
:004027B8 0F8401030000 je 00402ABF
* String Resource ID=00016: "Cannot find "%%""
|
:004027BE 6A10 push 00000010
* GDI32.GetStockObject, Ord:00BCh
|
:004027C0 FF1594724000 Call dword ptr [00407294]
:004027C6 6A00 push 00000000
------------------------------------------------------------End of ASM Excerpt
2------------
API Լ disassemble , Լ ʿ Ķ(parameters)
ÿ (pushed)ȴ. APIԼ ̷ Ķ͵ (pops),
Լ AX(DXͰ ִ) ȴ. ̷
Ķ͵ Լ prototype ȴ. GetStockObject
prototype :
HGDIOBJ GetStockObject(
int fnObject // type of stock object
);
fnObject Ķ ߿ ϳ Ѵ:
BLACK_BRUSH, DKGRAY_BRUSH, GRAY_BRUSH, HOLLOW_BRUSH, LTGRAY_BRUSH, NULL_BRUSH,
WHITE_BRUSH, BLACK_PEN, NULL_PEN, WHITE_PEN, ANSI_FIXED_FONT, ANSI_VAR_FONT,
DEVICE_DEFAULT_FONT, OEM_FIXED_FONT, SYSTEM_FONT, SYSTEM_FIXED_FONT,
DEFAULT_PALETTE.
GetStockObject ϳ Ķ ϱ Լ ȣ DZ
ٷ ÿ (pushed) "00000010" ٷ fnObject
ִ. ٸ 10 Ķ ϴ ϱ? ˾ƺ,
C/C++ Ϸ Include 丮 ִ, WinGDI.h ã Ѵ.
Ͽ SYSTEM_FONT ãƺ κ ִ:
/* Stock Logical Objects */
#define WHITE_BRUSH 0
#define LTGRAY_BRUSH 1
#define GRAY_BRUSH 2
#define DKGRAY_BRUSH 3
#define BLACK_BRUSH 4
#define NULL_BRUSH 5
#define HOLLOW_BRUSH NULL_BRUSH
#define WHITE_PEN 6
#define BLACK_PEN 7
#define NULL_PEN 8
#define OEM_FIXED_FONT 10
#define ANSI_FIXED_FONT 11
#define ANSI_VAR_FONT 12
#define SYSTEM_FONT 13
#define DEVICE_DEFAULT_FONT 14
#define DEFAULT_PALETTE 15
#define SYSTEM_FIXED_FONT 16
#if(WINVER >= 0x0400)
#define DEFAULT_GUI_FONT 17
16 10h, 10δ 16 SYSTEM_FIXED_FONT ִ.
츮 notepad.exe ҽ ִ.
:004027BE 6A10 fnObject = SYSTEM_FIXED_FONT;
:004027C0 FF1594724000 HGDIOBJ GetStockObject( fnObject );
Ǵ
:004027BE 6A10FF1594724000 HGDIOBJ GetStockObject( SYSTEM_FIXED_FONT );
hex editor ϱ, Courier 10۲ ANSI_FIXED_FONT,
16 0B ϸ ȴٴ ־. ̷ ٲٱ ؼ
:004027BE ڵ 6A10 6A0B ٲ Ѵ. , ϴ hex
editor ̿ؼ FF1594724000 ٷ տ 3BC30F84010300006A10
ãƼ, 6A10 6A0B ٲ. ϸ, Notepad ũ ̴.
-------------------------------------------------------------------------------
ϱ, ѱ۵ ڰ Ϸ 6A11(DEFAUT_GUI_FONT) ġ
͵ . 6A11 ļ ֽϴ.
Mammon_ ű ̶ ٽ ϴ.
Page 3
17. Battery
17. Battery
ٷ (Nothing Else Matters) Ұ Mammon_
ϺԴϴ. Ʒ ֵ ' 2' ű Դϴ.
SoftIce Ұ ٷ ֽϴ.
Sice Ҵ , ⼭ ű κ
ٷ ° Դϴ( ʹ ű ߽ϴ. ƯⰡ
ٻ_ô_ϱ . : )
ȭ ȣ ȣ ũϴ Դϴ. Ʒ Ⱑ
Ǿ, ȣ ؾ ȴٸ ٽ ϴ ۿ ״
ϰ. ̷ ʿ ̿(, ٸ 뵵 е Ŷ
մϴ. : )
encrypt/encrypting 'ȣȭ' Űϴ. 'ȣȭ' ؼ
ƴ , (walk!) 'ȣȭ'
Űϴ. ִ е . , о.. ؼ
, ű ߴ ű ڳ.
о ð, Ʋ ּ.
߰ ġ, Բ κ ֽϴ. κ
ణ ǹ̰ Һи κԴϴ. ,
ణ ߽ϴ. , ϱ(Ƹ..
. : ), Բ Ǿϴ. Ǵϼ.
-------------------------------------------------------------------------------
*Excercise 2: Regaining Lost Access*
ý öϰ Ҵٸ, ȣ ؾ ڷῡ յ Ǵ
ó ֱ ؾ ̴. Ƹ κ 쿡
ȣ (Ǵ Ǿ) (dictionary
attack)ϴ ̴. ڸ ̿, ȣ ɸ
ȭ ȣⰡ ߰, ȣ ؾ ȴٸ ٽ ϴ
ۿ ̴. ϸ ڷ ̹ ̰.
, Soft-Ice ̷ Ȳ ó ŭ ϴ.
켱, ( ġ ʾҴٸ) Windows 95 ̿ؼ йȣ Ȯ
ɸ ȭ ȣ⸦ ġѴ. ȭ ȣⰡ ٸ ,
콺 ȣ ִ login ȭ ڰ Ÿ Ѵ.
:
1) ƹ йȣ ִ´. _Ctrl-D_ hmemcpy ߴ
Ѵ(_bpx hmemcpy_)--hmemcpy ȿ ڿ ̸ ű
ϴ, kernel Լ̴. , йȣ ؼ
йȣ ȭ ڿ ִ 쿡 ̴. _Ctrl-D_
ٽ ȭ ȣ ƿͼ, OK ư . Soft-Ice ٽ ̰
KERNEL!LOGERROR 0123̶ 츮 ̴.
2)Kernel.Alloc̶ _F12_ (10 ).
F12 츮 ϴ ڵ ã . 쿡 츮 ϴ
ڵ (Ե) PASSWORD!.text̴.
windows\system 丮 ȿ ִ passwrod.cpl̶ ڵ尡
츮 տ δ. Password.cpl 37,376 bytes ũ (Control Panel
extension)̴. 츮 .scr Passwords Control Panel α
ؼ ۾ Ѵٴ ִ. Password.cpl Ʒ
Լ Ѵ:
0000 00001151 CPlApplet
0001 00003f3b PPChangePassword
0002 00003eb9 PPGetPasswordStatus
0003 00004006 VerifyScreenSavePwd
, (ٸ αó) ִ ٸ Լ鵵 Ѵ.
MPR.dll
0015 PwdSetPasswordStatusA
004e WNetVerifyPasswordA
0011 PwdChangePasswordA
0013 PwdGetPasswordStatusA
003f WNetGetUserA
־ . , Ϳ ' ġ(full reverse)'
° ʿ .
3) κ ڵ带 :
0137:7C45428F CALL [7C4582BC]
0137:7C454295 TEST EDI, EDI
0137:7C454297 JNZ 7C4542B1
0137:7C454299 LEA EAX, [EBP-04]
0137:7C45429C LEA ECX, [EBP-14]
0137:7C45429F PUSH EAX
0137:7C4542A0 PUSH ECX
0137:7C4542A1 CALL 7C454536
0137:7C4542A6 TEST EAX, EAX
0137:7C4542A8 JZ 7C4542DE
0137:7C4542AA MOV EAX,00000001
0137:7C4542AF JMP 7C454322
йȣ ϴ ȿ ȣȭ йȣ(unencrypted copy of
the password) ø ʴ´. Ϲ ڰ
йȣ, йȣ ȣȭ ϴ Ȱ ļ ȣȭ ,
ȣȭ Ǿ ִ ¥ йȣ ȴ(, ξ
ϰ ְ, ⺻ ̷ٴ ̴). ̿ 츮
ִ , *'¥'* йȣ ˾ Ѵٸ Ǯ
̶ ̴; йȣ *''*ϱ⸸
ٶٸ, CMP ɸ ٷ ȴٴ ̴ -- "flag ġ" ̴.
κ ڵ , бⰡ ִٴ
̴: ϳ 7C4542xx κ б ϴ ̰(7C454297 ִ JNZ
7C4542A8 ִ JZ), ٸ ϳ 7C4543xx κ б ϴ
̴(7C4542AF ִ JMP).
If you eyeball the code a little, You'll notice that there are two classes of
jumps: one that dumps you in the 7C4542xx range(the JNZ at 7C454295 and the JZ
at 7C4542A8), and the one that dumps you in the 7C4543xx range (the JMP at
7C454322).
̷ ڵ 鼭
ִ. Ƹ Ȯ κ ̴(ϳ йȣ ̸
Ȯϴ װ, ٸ ϳ йȣ Ȯ ϴ ̴.
̷ Ȯ κ ߿ ʴ).
κ "" ƴٸ EAX 00000001(boolean ""
ϴ ̴)̶ ̰, бⰡ ̴.
, κп ׳ ؼ(, б ʰ)
7C454322 ; Ѵٴ ִ. װ ƴİ ´ٸ,
׳ ̶ ۿ . κ ڵ
ܰ躰 ٸ, йȣ Ʋȴٸ б κп
JumpѴٴ ̴(, ù ° б Jump ʾҴ,
° б Jumpϰ ̴). "йȣ Ʋȴ" ϴ
ڰ ̴.
(4)JNZ 7C4542B1 _F10_ , zero flag ٲ ش(_r fl
z_). _F10_ ٽ JZ 7C542DE ´. ̹ , zero
flag ٲ ش, _CTRL-D_ ȭ ȣ ´...
ȭ ȣ ٷ ȭ ٸ ̴.
hmemcpy ߴ .....
ҽ, Soft-Ice ȭ麸ȣ йȣ-protection
scheme ִٴ ̴. ҽ, ħϷ ϴ ý
Soft-Ice ġ ̶ ̴. , ڼ
ũ ٸ, .scr̳ .cpl ϰ α
̴. α CD-ROM autorn.inf Ͽ
̴. ħϰ ; ϴ ǻͰ "autoplay" Ǵ ̱⸦
ٶ鼭....
-------------------------------------------------------------------------------
Mammon_ ű ̶ ٽ ϴ.
Page 3
18. Walk!
18. Walk!
ȣȭ(encrypt) Jon ¸ Űϴ. ũ о߷
, о߸ ִ ϳ ٷ 'ȣȭ' Դϴ.
ŭ а, ͵ ٴ . ʺ
ũĿ о߿ մϴ.
Jon̶ ũĿ 'ȣȭ' ũĿ Դϴ.
, ƴ ű ڳ. Ʋ __
ãø ̵ ּ.
Ϸα:
brute force attack
+ :
+ , 츦 õϴ .
+ Ϲ, ȣȭ ˾ ٸ key
ȣȭ Ǯ⸦ õϴ ̴.
+ (dictionary attack) ->
cryptanalytic attack
+ : ȣȭм
encrypting
+ : ȣȭ
decrypting
+ : ȣȭ Ǯ
algorithm
+ : ˰
round
+ ڷ ݺϴ Ϸ .
+ , DES 16 round Ѵ.
+ round ŭ Ѵ.
hash
+ :ؽ : )
+ ڷ ũ ,
۾.
+ ̷δ, ԷµǴ ڷḦ ణ ٲپ ٲ
ִ.
+ ڷḦ ̷ hashϸ, Ư hash ´. ڷᰡ
Ǵ DZ ڷ Բ ־ ȴ. ڷḦ о ,
hash ؼ ڷῡ Ե hash ȴ. , ٸٸ
߸ ִٴ ̰, ̷ ڷḦ 䱸ϰ ȴ.
key
+ ڷḦ "ڹ" ٴٴ ǹ̴, "(key)" ߸
ڷῡ ְ ٴ ǹ̴.
+ ȣȭ , 츮 ˾ ִ (plaintext) ȣȭ
ϴ ϴ ְ ش.
+ Ư key ؼ · ȣȭ ִ
̴.
+ 츮 key ˰ ִٸ, ȣȭ ٽ 츮 ˾
ֵ ĥ ִ ̴.
+ ٸ key ִ ϸ ,
ϰ ̴.
crack/reverse engineer
+ :ũ
+ ƴ϶ ű ۿ, ۿ Դϴ. Crack
Reverse Engineer 'ũ' Űϴ. ƴ϶
մϴ. , ȿ 'ũ' ǹ̷ ؼ,
Reverse Engineer Ѵٰ ּ.
-------------------------------------------------------------------------------
Encryption, a short tutorial
How to reverse engineer encrypted files
by Jon
(12 October 1997)
Encryption. Copyright by Jon.
With additions and corrections by Joe Peschel.
[September 28th, 1997.]
:
1. (ȣȭ )
2. ȣȭ ̷
3. ȣǮ
4. ȣȭ ũϱ
+ ( ݰ Ű(key)˾ )
5. ˰(most known algorithms)
6. ȣȭ α Ұ
[1. (ȣȭ ).]
ȣȭ ǻ , ִ йȣ
ؼ, ڼ ̴. Ƹ ȣȭ ' Ű(digital key)'
ϴٰ ϸ ̴. ϴ ǻ 鿡
Ű ؾ ϴ° ݹ ̴. ۽,
빮 ʴ°. ״°? ٸ İ ϵ ϱ
ؼ ̴. ȣȭ ̴. ڷḦ ڼ
Ű Դ ̴.
н ϰ ڷ ִ. ȸ ְ,
, α ҽ ڵ, ִ.
ͳݿ XXX-images ̴( .
c:\download\xxx\pamela.jpg ߰ߴٸ ϰڴ°?).
Ǿ , ȣȭ ̴. ȣȭ
ȣɸ ̵鿡Դ, ̴.
ȣȭ protection scheme Ϻην α ̴.
̰Ϳ ̾߱ ⼭ ʰڴ. ִٸ +HCU л
+ORC о߿ ۵ о ٶ.
[2. ȣȭ ̷.]
ϴ ȣȭ α ˰ ̿ؼ
ȣȭ ̷(˰ ؼ 5 ). ȣȭ α
˰ Ѵ. ڰ
ִ.
ȣȭ ۾ ̷: ȣȭ ϸ, йȣ
´. κ Է ȣ, ؽ(hash)۾ ģ. ȣȭ
α ̷ (hash function) ʴ´ٸ, ȣȭ
̰, йȣ ŭ ̷
̴.
ȣȭ α ̾߱ 6 . ȣȭ
α CBC(Cipher Block Chaining) ¿ ۾Ѵ. ̰ Ȯ
ְ ش. , Blowfish α ߿ CBC
Initialization Vector 64 bit .
̷ ͵ ȣȭ ϵ ٸ ϵ ٸ (
˰ йȣ ؼ ȣȭ ߴٰ ص, ϵ
ٸ). CBC ̿ ڷ, Ǿ ִ
(block) ȣȭ ȴ. ̷ ؼ ȣȭ Ⱑ
. ECB(Electronic Code Book) ϴ ȣȭ α , ̷
͵ ؽƮ (plaintext attack) ֱ
ϴ.
ȣȭ , ȣȭ ڷᰡ Ͽ . ȣȭ
α ̸ Ƿ (̷ ϸ
ƹ ).
ٸ ȣȭ α ׳ Ͽ . '(archive)'
ϴ α ִ. ̷ ϸ ϳ ȣȭ Ϸ
ִ. ϴ α κ '(compress)'ɵ
Ѵ. ϰ δ.
Ͽ, PGP Ű(public key) ̿ ȣȭ α
ϴ.
[3. ȣǮ]
ȣǮ ؼ . ȣȭ ݴ ۾̴. ȣǮ⸦
ϱ , α (signature) ȮѴ(κ ȣȭ
α , ȣ Ǫ α
Ȯϴ ̴). ٸ ˰/α ̿ؼ ȣ
Ǯ Ѵٸ ״ϱ, ̷ ϴ.
[4. ȣȭ ũϱ( ݰ Ű ˾Ƴ)]
ȣȭ ˰ ũ ִ. ũ : MS Word
2-7 , Excel, Word Perfect 7, Windows 3.x and 95 ȭ ȣ
(Fravia Lonely Hawk о ), PKzip(Peter Conrad
Biham/Kocher ؽƮ α), CtypEdit, Crypt-o-Text.
Crypt-o-text α ũϴ Casimir ۵ ִ(Fravia ).
˰ ũǰ ( κ α ),
йȣ ˾ ð ̴. Pkzip ؽƮ ð ణ
ɸ ִ. ̳ ũ
α ƴϴ.
, ȣȭ ˰̶ йȣ ȣȭ Ͽ
ʴ´.
ٸ Ѵ.
1. α Ѵ. ְ,
ͳݿ ϳ ͵ ȴ. ̴.
˰ keysize ʹ Ŀ, ο ǻͿ
ɸ . õ ǻͰ ͳݿ
48-bit RC5 56-bit DES ũǾ.
(RSA Data Security Secret Key Challenge ؼ
http://www.rsa.com/rsalabs/97challenge/ ã ٶ)
ظ ǻͿ ASCII wordlist
̴.
2. ٸ , ȣȭ , ִ
ϴ ̴. (Ųٷ ̰,
ٲ ̴)̳, ֹεϹȣ, ⸣ ̸
̿ؼ ȣȭ Ѵ.
3. ǻ ̳ ȭ ȣ, MS-Word Excel ȣ
ϰ, йȣ ̿ؼ ȣȭ ϴ ̴.
4. Mitnick̶ Ҹ Social engineering.
5. keystrokes Ͽ ϴ Keyboard loggers.
, 56 Ʈ йȣ( Ӹ ƴ϶ Ư ڱ
) Ŭ 忡 ȣȭ ۾ ϴ α
ִ.
ؼ, CTRL+V йȣ ִ.
̷ ǻ ƹ ϴ(
ǻͿ ִٸ ƾ Ѵ.
ħ(attacker) ݹ ˾ ç ̴).
[5. ˰(most known algorithms).]
Blowfish
Blowfish θ ˷ ϳ̴. . P200 ִ
Window$ 95 5,2 mb/s ӵ (WinNT 32Ʈ OS
̴). ϳ̴. key-size 448Ʈ(56
Ʈ) ְ, key-size Ѵٸ
(brute-force) ҿ ȴ.
·δ 16 rounds ȣȭ Ѵ. ø ְ ִ.
32 rounds ϸ ð 谡 ɸ ȣȭ ۾
ش. Blowfish Bruce Schneier , Doctor Dobb's Jornal 94 4
ȣ Ƿȴ.
˷ ʾҴ.
Cobra
Cobra ˰̴. Blowfish ϴ. Cobra 128 Ʈ,
24 rounds , Blowfish ٲ ִ.
Cristian Schneider , 1996 4 sci.crypt.research
ǥ Ǿ.
DES
̰ θ ˷ ˰̴(ٰ ٴ ƴϴ).
DES(Data Encryption Standard) 1974, NSA IBM ڵ ȣȭ
˰ ؼ ϸ鼭 ۵Ǿ. ó
װ NSA Բ װ ʾҴ.
θ ̰ Ǿ. 1976 1997 , - (federal
non-classified documents) ȣȭ ϴ Ǿ. ϵ
̵ , Ʈ ϸ . װ
ΰ ƴϴ. ˰ key-size 7 Ʈ(56 Ʈ) ۿ ʴ´.
key յ, ǻͿ ð
Ʈ ִ. ( 56 Ʈ DES key ũϴ 鰳 ǻ
̿ؼ ̳ ɷ, ̱ ǻͷδ и DES ũ
Ŷ ҹ ־Դ).
DES ణ ˰ ִ. key-size 21 Ʈ (triple)
TDES(Triple DES) ӵ NewDES ʴ.
GOST
̰ ̱ DES ϴ, þƿ ˰̴.
Ǿ, ʾҴ. keysize 32 Ʈ̰, 32 rounds
ȣȭ Ѵ. Blowfish ȣȭ Լ ξ ϴ.
IDEA
̴ ˰̴. 128 Ʈ(16 Ʈ) key Ѵ.
ó ˰̶ ˷ ִ. IDEA Zurich
Xuejia Lai James Massey ؼ .
RC4
RSA , ҽ ʾұ ó
˰ ؼ ˷ . Cypherpunks Ƹ
ҽ sci.crypt̶ 쿡 ߴ. RSADSI BSAFE
Toolkit(ҽ Բ) ִ. Bruce Schneier Applied Cryptography
2ǿ ˰ ڼ ִ.
psuedo-RC4(RSA ǥ) α . Ronald Rivest
.
SAFER
SAFER James Massey(IDEA ϳ) , Secure and Fast
Encryption Routine Ѵ. ٸ key
ִ. ̴ 128 Ʈ key-size SAFER SK-128,
key-size ٸ .
(Blowfish Bruce Schneier , "NSA ") CYLINK û
ؼ SAFER . Bruce Schneier SAFER, ݱ
˷ ȣȭм ݿ ƳҴ.
[6.ȣȭ α Ұ]
̹ 忡 Ǹ ȣȭ α Ұϰڴ.
α:
ϴ ȣȭ α Blowfish Advanced 95 8.2f Kremlin
1.21̴. Blowfish Advanced α̴. 5 ˰
ִ: Blowfish, Blowfish32(Blowfish 32 rounds ؼ
ȣȭ Ѵ), GOST, Triple-DES, Cobra.
Blowfish 448 Ʈ ˰ Ѵ.
http://www-hze.fht-esslingen.de/~tis5maha/software.html ٿ ε
ְ, Ϲȣ http://www.chez.com/jon101514/pc_bfa2f.zip ִ.
Kremlin 1.21 ̴. Ϻ ' (drag-n-drop)'
Ⱑ ϴ.
8 ˰ ִ, ASCII, Blowfish, DES, IDEA, NewDES, SAFER,
Psuedo-RC4(RC4 ), Vigernere. ִ key-size 160 Ʈ̱
Blowfish Advanced 95 ŭ ʴ. EBC ·θ ۾Ѵ(
ϴ).
http://www.mach5.com ٿ ε ִ. оٸ,
˰ ϴ Ϳ ȭ ٸ, 9797708151 (1.1
1.2 1.21 ) ϱ ٶ.
/ ȣȭ α ִ.
http://www.tucows.com/̳ http://www.shareware.com/̳
http://www.mysharewarepage.com/ ѷ . Yahoo ̿ؼ α
ã ̴. ȣȭ α Ǵ ϰ
ִ, ûϰ ѵ ã ĥ
̴. Ƿ ٿ α Ȯϱ
ٶ( α ٿ ִ : þ, ,
״, ĭ, ̴).
:
Ǹ ũ ҰѴ( ۿ ̹ ͵ ؼ):
http://www.counterpane.com/blowfish.html - Blowfish . Blowfish
ҽ ִ.
http://www-hze.fht-esslingen.de/~tis5maha/software.html - Blowfish Advanced
95 ִ.
http://www.mach5.com/ - Kremlin ִ( ȣȭ
ִ)
http://www.chez.com/jon101514/pc_bfa2f.zip - Blowfish Advanced 95 Ϲȣ
http://www.tucows.com/, http://www.shareware.com/,
http://www.mysharewarepage.com/ -
+ / ִ. α Ǿ
ִ(κ ̱
+ α̴).
http://hack.box.sk/ - α(ũ, Ϲȣ, ŷ α
ִ)
http://ourworld.compuserve.com/homepages/c_schneider/ - Cobra
http://www.cs.auckland.ac.nz/~pgut001/links.html - Peter Gutmann Ȩ.
, ȣȭ ִ Ʈ.
http://www.sni.net/~mpj/crypto.htm - ũ ִ, Ǹ ȣȭ
̴.
http://members.aol.com/jpeschel/index.htm - Joe Peschel Ȩ.
α, ȣȭ .
sci.crypt - ̴.
sci.crypt.research -
ũ ȣȭ Ұ. Ұ
Ʈ ãư ҽ ٶ. Joe Peschel ٴ
ϰ ʹ.
״ Ʋ ְ, ٿ ־
. ξ . :-)
(c) Jon 1997. All rights reversed
-------------------------------------------------------------------------------
Page 3
19. In Dreams
19. In Dreams
ȳϼ.
̹ ø Ǿϴ. ־, ǻ
̿.
ִ Դϴ.
Ʈ , ϸ ڹٽũƮ ۻڰ Ƣ
ɴϴ. Ƹ е ̷ ſ. ,
ô ڹٽũƮ ۻڰ ͼ
" Ʈ 뿡 å , θ
ּ.." ־ϴ. Ʈ ŷ/ũŷ
̾ ϴ ̾ϴ.
Ǹ ָ, Ȯ ϰ, Ok(Ȯ) ư
͵ ( Դϴٿ : )
ۿ ̷ ڹٽũƮ ۻڰ ʰ ֵ Netscape
ũϴ ϰ ֽϴ(Ȯϰ ڸ, ڵ
Ok(Ȯ)ư ó ϴ ſ).
, ڼ ϴ.
ܼҸ Ĵٸ, ߿ inc eax inc ax Ʈ ϳ
ٰ ϴ ֽϴ. ̳ ϸ inc eax ڵ
40Դϴ. inc ax ڵ 6640Դϴ. ϱ 66̶
Ʈ ϳ Ѵٴ . ƴ?
⼭ xor eax, eax eax 0 inc ax eax
00000001 ִ ſ. ̷ ϴ. ۻ
Okư Cancelư ֽϴ. ư ߿ ϳ
ۻڰ ̴ϴ. Netscape 츮 ư ƴ
ɱ. 츮 Ok(Ȯ)ư ٸ eax 1, Cancel()ư ٸ
eax 0 ǵ ϴ Լ ֽϴ. װ Netscape, 츮
ư Ȯϴ . Լ θ κ ְ,
eax 1 ִ ڵ带 ִ´ٸ..
⼭ +YOSHi ̷ Դϴ.
(?) ؼ ڹٽũƮ ۻڰ Ƣ
߽ϴ. ⸦ ֽϴ.
-------------------------------------------------------------------------------
Killing those Javascript Messageboxes
by +YOSHi
켱, ü ڹٽũƮ ۻڸ ־ ϴ ɱ? ۽, Ű(cookies)
־ ϴ ̴. , ڲٸ Ƣ´. κ
쿡 Ƶ ʴ ϸ鼭 ̴. Netscape ۻڸ
MessageBoxA Լ Ѵٴ ο ξ Ѵ.
a. Netscape Ѵ(SoftIce ̹ Ǿ ̴). fravia+ Ȩ
ó, ڹٽũƮ MessageBox ϴ .
b. , Bpx messageboxa ߴ Ѵ.
c. Netscape .
d. SoftIce messageboxa ڵ κп ̴. ⼭
ũ ؾ Ѵ.
e. P RET ϰ ڵ带 . ߿ ó ̴
̴. Ʒ κ p ret .
mov ebx, [eax + 4c]
call display
add esp, 08
f. callκ ٷ տ ߴ , Netscape
ReloadѴ.
g. ٽ SoftIceȭ ̴. F10 call ִ κ
ش.
xor eax, eax
xor eax, eax
inc ax
inc eax ſ inc ax ؾ Ѵ. 쿡
, inc ax Ʈ ϳ ϰ ȴ.
F5 SoftIce ͺ... ۻڰ ̻ ̴!
ġ Ok ư ó ׳ ̴.
ƴϴ. ġ ʾϱ, (翬) ۵
̴. ϱ ġؼ ٶ :) ̴.
ڴ! :)
+YOSHi yoshi@ij.net *EoF* Enjoy
(c) +YOSHi, 1997. All rights reversed.
-------------------------------------------------------------------------------
Page 3
20. In My Life
20. In My Life
⺻ ⸦ ϰ ֽϴ. ִ
ٸ ۵ е̶ ̹ ˰ ϴ.
ũ ణ ƽô е鿡 ʿ ϴ. ϱ, и
ũ , Ǿٰ Դµ, α ٽ
ϵǾ ʴٰ ͼ ñϰ ϼ̴ е鿡
' ' ִ Դϴ.
뿡 ܼҸ ʿ ϴ.
-------------------------------------------------------------------------------
Thinking Like a Cracker
A lesson for beginners
Written by The_RudeBoy_[PC]
ʺ ũĿ ̴. ũĿ ó ϵ ִ
̴. ũ ؼ Ǿٰ Դ , ٽ α
ϸ ʾҴٰ ° ϴ ʺ ũĿ
Ҵ. ̿ ش ϴ. "ũĿ ó ϴ"
ʿϴ.
:
W32Dasm 8.9(ƴϸ ϴ ̶ )
Hex Workshop(ƴϸ ϴ hex editor )
PolyView 3.00 beta 9
ٿε ִ
http://www.polybytes.com/betafiles/pvbeta.exe
PolyView 3.00 beta 9 ũ ϱ , ũĿ/α ó ϴ
˾ ʿ䰡 ִ. αӴ, óؾ ۾ ְ
۾ ̻ ؾ , ۾ óϴ Լ , ۾
ؾ Լ ҷִ α 鵵 .
κ αӴ ̸/Ϲȣ ¦ Ȯϴ ۾ ̻
Ѵ. Ϲȣ ־ , α . ̷
αӴ Ϲȣ Ȯϴ ۾ ϴ Լ .
⸦ , ϰ ϴ Ⱑ
̴. Ϲȣ Ȯϴ Լ ũѴٸ, α Ϲȣ Ȯ
̴.
, ̷ ν PolyView 3.00 beta 9 .
α ϸ, "Registration"̶
̴. Ʒ "License Information"̶ κе ̴.
̸ Ϲȣ ִ ִ. ƹ ̳
ְ "OK"ư . Ϲȣ ʾҴٸ, "Please enter a
positive interger( )" ̴.
쿡 "Registration Unsuccessful( )"
̴.
W32Dasm ϰ PolyView.exe . string references ϰ
"Registration Unsuccessful"̶ ڿ ã´. ڿ Ͽ ڿ
ãҴٸ, ٷ "Registration successful"̶ 嵵 ̴.
"Registration Unsuccessful" ũؼ Ʒ ڵ κ ãư:
* Referenced by a Jump at Address:004400C9(C)
|
* Possible Reference to String Resource ID=00141: "Unregistered"
|
:0044016C 688D000000 push 0000008D
:00440171 8BCF mov ecx, edi
:00440173 E8D9070600 call 004A0951
:00440178 53 push ebx
:00440179 53 push ebx
* Possible StringData Ref from Data Obj ->"Registration unsuccessful. please "
->"verify that you have entered the "
->"information exactly as shown on "
->"your registration letter."
|
:0044017A 684C364F00 push 004F364C
:0044017F 899E70010000 mov dword ptr [esi+00000170], ebx
:00440185 E8D88A0600 call 004A8C62
켱 ˾ ִ κ 004400C9 ִ б ؼ
ҷٴ ̴. 004400C9 ִ ãư, Ʒ κ
̴:
:004400B7 50 push eax
:004400B8 51 push ecx
:004400B9 898670010000 mov dword ptr [esi+00000170], eax
:004400BF E8DCF0FEFF call 0042F1A0 ;Ϲȣ_Ȯ_Լ()
:004400C4 83C408 add esp, 00000008
:004400C7 85C0 test eax, eax ; TEST.
:004400C9 0F849D000000 je 0044016C ;je _
̹ . je 004016c ׳ NOP ٸ, α
Ϲȣ ־ Ǿٰ ̴. α ٽ
ϸ "Unregistered" ̴. Ʊ αӵ Լ ϳ
, ʿ װ ҷ Ѵٰ ϴ°?
α αӵ . call 0042F1A0 ٷ
Լ θ ִ ̴. W32dasm 0042F1A0 ãư , Ʒ
ڵ尡 ̴:
* Referenced by a CALL at Addresses:
|:0040423B , :004046B8 , :004055FA , :0042DDBE , :0042DE36
|:004395C4 , :0043CE1A , :0043D6B0 , :0043E35A , :00440025
|:004400BF , :004419BC , :0044234D , :00452FF9 , :004531CB
|:004B9033
|
:0042F1A0 64A100000000 mov eax, dword ptr fs:[00000000]
ִ ּҵ Ǿ Ȯϱ ؼ,
Ϲȣ_Ȯ_Լ() θ ִ ̴. ñ ̴.
ؾ ִ ɱ. call Ϲȣ_Ȯ_Լ() ִ κ ٽ
. Ư _ κ бϴ , eax 0
бѴٴ ̴. , α ũϴ ߿
, call ؼ ҷ mov eax, dword ptr fs:[00000000] ſ
push 00000001
pop eax
ret
ٲ ִ ̴( ڵδ 6A0158C3)
Լ eax 1 ش. α ϵ ̶
̴.
ۿ ̸/Ϲȣ Ȯ κп Ǵ ƴϴ. а
, ٸ protection scheme ִٴ
̴( , κ ¥ Ȯ ̳, ۻڸ
̿ϴ protection scheme Լ Ѵ.)
-------------------------------------------------------------------------------
The_RudeBoy_[PC] ű ̶ ٽ
ϴ.
Page 3
21. Por Una Cabeza
21. Por Una Cabeza
-------------------------------------------------------------------------------
What Time Does the Library Open?
Written by Sojourner
, ftp://ftp.mcneel.com/pub/rhino/rhino32.exe ִ
α Ÿ Ϳ. ftp://ftp.mcneel.com/pub/1.00/demo
ִ. ٶ. Ҵ. "ֽ"
ű ־. model, 3DS Max plug Բ ̴.
츮 鿡Դ ƴ . 3D õ ϱ
α Ǿ, ɿ
ߴ.
, ִ Ÿ 1.00 ٸ ٰ ߴ.
ֳϸ Ⱓ $795 "full" ִٰ
̴. , ϰڴ. Ÿ Ȱ
'full' ŭ ̴.
Ÿ 1998 10 ϴ "ŵ protection"
־µ, װ ̾ PC ð踸 ġ ʿ
α ־... Ƹ û
Ŷ ϰ ִ. , ¶ų () ũĿ̱ , ڵ带
ڴٰ Ծ.
̹ ° õϴ ũ̱ , ؼ ణ
̾. 1997 12 31Ͽ Tristan о. ״ "ʺ ,
" ⸦ ־ , ⸦ Ǿ. , ٸ
+HCUл ۵ 30 ̻ а "" ߴ.
̷ ߴ. " ̰ ũѴٸ, ϴ
Ǹ Ǵ ž. ũ Ѵٰ ص, ڵ忡
ݾ!" ð 帣, α Ϸ ǻ ð踦
ġ ϰ ʾҴ. Ӹ θŰ ũϱ ߴ.
˸: WDASM89 α ũϷ 200 ް Ʈ
־ Ѵ. ð ɸ. rhino_main.exe
츮 disassemble ̰, 80 ް Ʈ ũ ҽ .
20-30 ɸ ״ϱ, WDASM89 ư ٸ
ض. ũ , ߿ϴ ٶ.
ϸ ð ̴.
WinAPI ڷᵵ ߿ϴ. ϴٸ Win95, 98, NT α å
̴. ̷ ͵ ʿϴ.
: WDASM89, UltraEdit, Soft-Ice 3.2
⼭ Rhino ִ!
History : Ÿ ؼ 3 full Դ.
ũ :
α ũϴ Ϸ κп ؼ ؾ Ѵ.
鿡 ΰ ִ. ˸ - α ̹
Ǯ ġߴٰ Ѵ. Ǿ ִ ũϷ
ٶ. ؾ ʰڴ°. :-)
1. ð踦 ߰ Rhino Ѵ( ð̶ 1998 9 ù°
10 ̸ Ѵ). α ̴.
α ̿ؼ ۾ ϰ װ Ϸ Ѵ. ũ ϱ ؼ
̴.
2. ð踦 , 98 12 ߾ . Rhino ٽ
. . "This beta version has expired(Ÿ Ⱓ
ϴ)" ۻڰ ߰ α ̴.
츮 " μ(Exit Process)" ̴.
α ٶ.
3. ˾ WDASM89 ũ .
W32DASM "Import Functions" Kernel32 GetLocaltime ã ƾ
Ѵ. ֳ? α , Rhino Ȯϰ
̹ ִ ڵ ̴. 1998(07CEh) 11(000Bh) Ͱ
̴. Ʒ ڵ带 캸. ٸ, α
, ʴٸ Ǵ ˰ ̴.
δٸ, "This beta version of Rhino has expired" ڿ ã
̴. Ȯ 츮 ϴ κ
ڵ带 ãƳ ִ. ̷ protection ûϱ ̸,
̷ ϴ ƴϴ.
* Reference To: KERNEL32.GetLocalTime, Ord:00F5h
|
:00488AE9 FF15088D8C00 Call dword ptr [008C8D08]
:00488AEF 66817C2404CE07 cmp word ptr [esp+04], 07CE
ֵ, ΰ κ ý ð ""
ð Ѵ. 忡 ð 16 Ǿ ִ.
ù° б 1998 ƴ϶ б ̰, ° б
11 ̶ б ̴. ̷ ͵ WinAPI Լ GetLocalTime
. . Ʒ 00488B00 κ . (
Ǿٸ) κ ret ´. ʴٸ 00488B0E
Ⱓ Ǿٴ ۻڰ Ÿ ̴.
:00488B00 33C0 xor eax, eax
:00488B02 5B pop ebx
:00488B03 83C410 add esp, 00000010
:00488B06 C3 ret
:00488B07 6A00 push 00000000
* Possible StringData Ref from Data Obj ->"Beta copy expired"
|
:00488B09 6810C67F00 push 007FC610
* Possible StringData Ref from Data Obj ->"This beta version of Rhino has "
->"expired."
|
:00488B0E 68E8C47F00 push 007FC4E8
:00488B13 6A00 push 00000000
츮 ٲ Ѵ.
:00488AF6 7508 jne 00488B0E
ð Ǿ α ְ Ǿ. ! .
. . װ ƴϴ!
WDASM89 ٲ ð踦 ٲ㰡鼭 α .
ǰ ִ ó δ. ִ hex editor
α ģ ð踦 . ϱ 2010
̴. ģ WDASM . α
ϰ( ), ̴.
? Ʊ 츮 ߴ ϴ°? .
? . ̹ ణ ģ غ. !
α ٽ ȴ. ü ̰ ΰ? 츮 ģ
˾Ҵµ! , ؼ κп ָ Ծ. "" ư
history ¸ ȴ. ó ̰ GetLocalTimeԼ
ǰ ֱ ̶ ߴ. WDASM ߴ ϰ
κ ߴ. ƹ͵ ã . ٸ
ߴ. ư ư ¸ Ȯϴ Լ ã Ҵ.
̹ ߴ. и ð õ Լ üũ ϰ Ŷ
ߴ. ̹ SoftIce3.2 GetLocalTime ߴ
ߴ(BPX GetLocalTime). Ctrl-D α ƿ ٽ
SoftIceȭ . 츮 Ʊ "ƴ" κ ̴. κ hex
editor ƴ, ʳ? ٽ Ctrl-D α ƿ
ȭ ۾ ְ ȴ. Ʊ
ణ ģ "" ư . ̹ SoftIce GetLocalTime
Լ ߴѴ. F12 F10 Ʒ κ
̴. κ SoftIce ,
WDASM89 ҽ Ͽ ̴. Ʒ ֵ "Free
Library" κ ȣϴ call ִ. װ ϳ? 0041785E F10
dword ptr [ebp+FFFFFF6C], eax ϴ κ ´? װ
ϴ ɱ? SoftIce װ͵ п ش. Ʒ
ƶ. ٷ Ʒ 0041786A ٸ κ ִ.
ϰ ִ ɱ?
* Reference To: KERNEL32.FreeLibrary, Ord:0098h
|
:00417832 FF15A88C8C00 Call dword ptr [008C8CA8]
:00417838 8B857CFFFFFF mov eax, dword ptr [ebp+FFFFFF7C]
:0041783E 25FFFF0000 and eax, 0000FFFF
:00417843 898578FFFFFF mov dword ptr [ebp+FFFFFF78], eax
:00417849 33C0 xor eax, eax
:0041784B 668B857EFFFFFF mov ax, word ptr [ebp+FFFFFF7E]
:00417852 898564FFFFFF mov dword ptr [ebp+FFFFFF64], eax
:00417858 8B8578FFFFFF mov eax, dword ptr [ebp+FFFFFF78]
:0041785E 39856CFFFFFF cmp dword ptr [ebp+FFFFFF6C], eax
[⼭ eax GetLocalTime
]
[ΰ ϴ ̴. ,
[ebp+FFFFFF6C] ̹ ]
[07C(1998) ̹ ִ ̴.
]
:00417864 0F8516000000 jne 00417880
:0041786A 8B8564FFFFFF mov eax, dword ptr [ebp+FFFFFF64
:00417870 3945F8 cmp dword ptr [ebp-08], eax
[⼭ eax GetLocalTime
]
[ΰ ϴ ̴. , [ebp-08]
̹ ]
[000B(11)̶ ִ ̴.
]
:00417873 0F8E07000000 jle 00417880
:00417879 33C0 xor eax, eax
:0041787B E925000000 jmp 004178A5
Ʒ ֵ ¿(00417880) ߿ бⰡ κ
Ű ִ. κ α Ų. 츮 ƹ
ð ְ Ϸ ľ б ̴.
κ ġ , ׳
00417864( ִ) 00417873( ִ) 6 nop
̾. ϸ α eax xor бؼ
004178A5(Ʒ ִ) 츮 ̴. α
Ϻϰ Ǵ ̴. 1980 2095 ð踦 İ
ƹ . Ѵ hex editor ̿ؼ ģ
Rhino !
* Referenced by a Jump at Addresses:
|
:00417880 C70508488C0000000000 mov dword ptr [008C4808], 00000000
:0041788A E8514F0300 call 0044C7E0
:0041788F A1844F8C00 mov eax, dword ptr [008C4F84]
:00417894 50 push eax
* Reference To: USER32.DestroyWindow, Ord:008Ah
|
:00417895 FF1544918C00 Call dword ptr [008C9144]
:0041789B B801000000 mov eax, 00000001
:004178A0 E900000000 jmp 004178A5
* Referenced by a Jump at Addresses:
|:004177FD(U), :0041781F(U), :0041787B(U), :004178A0(U)
|
:004178A5 5F pop edi
:004178A6 5E pop esi
:004178A7 5B pop ebx
:004178A8 C9 leave
:004178A9 C3 ret
ó ٴ ˾ƾ ̴. (ʺ) ״
˾Ƴ ð̳ ɷȴ. +orc "zen"̶ ŭ 赵
츮 ش. δ ƴϴ.
ʴ´ٸ 赵 ҿ ̴. ũ ũĿ鿡
ٰ ؾ ڴ. 츮 ʿϴ.(
, 츮 ̴). ؼ,
ũؼ . ũĿ protector Բ ֵ ̴!
û: ٸ dllϷ call! Լ, â, Ƴ
鿡 . Thanks! :-)
-------------------------------------------------------------------------------
Sojourner ű ̶ ٽ ϴ.
Page 3
22. Love Buzz
22. Love Buzz
̹ ۿ Ÿ̶ α ؼ ̾߱ Ϸ մϴ.
α ̸ ־, ٿ ſ. ƹư,
PC ڷǿ ã ϱ, IMF̶ ִ(?) ִ.
ϱ, IMF̶ ٸ ʹ ణ ٸ (?)
־ϴ. ġ ִ ƴ϶, ִ ¥
ֽϴ. 3 31ϱ 4 30ϱ ó Դϴ. Ⱓ
ġ Ƽ Ⱓ ų ֽϴ.
Ÿ ϸ â Ʒ κп ɴϴ.
ϱ, ְ ϴ ſ ִ ſ. ,
ġ Ƽ ٲ ִ ſ. ?
ۿ (?) 4 30ϱ ִ Դϴ.
ִ ̴ (protection scheme) ״ϱ װ
ſ.
, 4 30 Ǵ ý ð ٲ .
ִ ǻ ð 4 23 7
33Դϴ. 4 30 ʾϱ ˴ϴ.
ð踦 5 23Ϸ ٲ㺸 , ִ ۻڰ
ɴϴ.
Ⱓ
Ⱓ Ǿϴ.
ġ IMF ġ ٿε ġϽ
ÿ. ġ ġ α ۶ 10ʰ
˴ϴ.
ġ ġ ʾҴٰ ؼ ƴϱ. ٸ 10
ٷ ϰ, ڲٸ ġ ڰ Ƣ ɴϴ. ƹư,
Ÿ ð踦 4 ٲٰ ٽ α .
α ƹ ٴ ۻڸ Ÿ ʰ ˴ϴ.
ϱ α '¥' Ȯϰ ִٴ ſ.
̷ ý ¥ Ȯ ̴ Լ GetSystemtime̿. α
ݰ sice bpx GetSystemtime ߴ ٽ
α ŵϴ. siceȭ Ÿϴ. F11 F12
Dmimf ڵ ã ô.
:004160F0 E8EFDC0500 Call 00473DE4
:004160F5 8B08 mov ecx, dword ptr [eax]
:004160F7 890D98134B00 mov dword ptr [004B1398], ecx
:004160FD 8D4C240C lea ecx, dword ptr [esp+0C]
:00416101 E822DB0500 Call 00473C28
:00416106 8D54240C lea edx, dword ptr [esp+0C]
:0041610A C784249000000000000000 mov dword ptr [esp+00000090], 00000000
:00416115 52 push edx
:00416116 E8C5FD0300 call 00455EE0
:0041611B 83C404 add esp, 00000004
:0041611E 8D44240C lea eax, dword ptr [esp+0C]
:00416122 8D4C2410 lea ecx, dword ptr [esp+10]
̷ κ µ, 츮 ִ κ ƴմϴ. ٽ ѹ
F12 P retմϴ.
:0041630F E8BCFDFFFF call 004160D0
;GetSystemtime
:00416314 85C0 test eax, eax ;(ret )
:00416316 740D je 00416325
:00416318 E893FFFFFF call 004162B0 ;
̴ κ 츮 ϴ. ι° ̴ б jne
004163E4 б⸦ ϸ(JUMP) ۻڰ Ÿ ʰ, б⸦
(NO JUMP) call 00473AA8 ؼ ۻڰ Ÿϴ. .
ð踦 5 Ҵٸ jne 004163E4 NO JUMP ̰, ð谡 4
־ٸ JUMP ؼ ۻڴ Ÿ ſ. ⼭ ٷ
ũ ? ϱ, ¥ jne 004163E4 б⸦ ϵ
ڵ带 ٲ ٸ . κ ڵ 0F85BF000000
E9C0000000 90(JMP 004163E4/nop) ٲٴ ſ. ϸ
ۻڴ ſ. ¥ Դϴٿ.
ó ̷ ϱ ũ ˾Ҿ. α
ϱ, ٸ ۻڰ ٽ . ٸ ¥
Ȯϰ ġ ۻڸ ϴ κ ־ ſ.
ϱ, α κи ģ. 'ٺ'
ũ ؾ ϰ? (, ۻڸ Ÿ ٸ ãư
Ǻб⸦ ٲִ ᵵ ſ. ,
κ ã ٴϴ ͵ . : )
츮 ٲ ־ б jne 004163E4, ٷ ִ call
004162B0 (eax) ؼ б ΰ Ǵ ſϴ.
call 004162B0 ãư .
:004162B0 51 push ecx
:004162B1 8B0D90134B00 mov ecx, dword ptr [004B1390]
:004162B7 8BC4 mov eax, esp
:004162B9 8908 mov dword ptr [eax], ecx
:004162BB B998134B00 mov ecx, 004B1398
:004162C0 E89B0B0000 call 00416E60 ;4/30
°?
:004162C5 85C0 test eax, eax
:004162C7 751F jne 004162E8
:004162C9 8B1594134B00 mov edx, dword ptr [004B1394]
:004162CF 51 push ecx
:004162D0 8BC4 mov eax, esp
:004162D2 B998134B00 mov ecx, 004B1398
:004162D7 8910 mov dword ptr [eax], edx
:004162D9 E8720B0000 call 00416E50 ;3/23
°?
:004162DE 85C0 test eax, eax
:004162E0 7506 jne 004162E8
:004162E2 B801000000 mov eax, 00000001 ; flag
:004162E7 C3 ret
:004162E8 33C0 xor eax, eax ; flag
:004162EA C3 ret
call 004162B0 θ ִ κ ϴ. ⸸ ص
ִ ֽϴ. 'flag' ̿ ̿.
call(call 00416E60, call 00416E50) ְ Ǻб(jne
004162E8) ֽϴ. ǺбⰡ бϴ Դϴ. xor eax,
eax. б ʾҴٸ mov eax, 00000001 ؼ eax
1̶ flag մϴ.
ƽð? Ƹ call ¥ Ȯϴ call ſ. ¥
¥ٸ б ̴ϴ. eax 1̶ ְ
ret˴ϴ. ¥ ʴٸ eax 0 ְ ret˴ϴ. Ʊ ô
call 004162B0/test eax, eax/jne 004163E4 eax 1 бմϴ.
ҵ б⸦ ϸ ۻڸ ʰ DZ.
ؾ ƽð? ¥ Ǿ eax
1 ָ Ǵϱ, xor eax, eax ٲ . ٲ ִ ڵ尡 2Ʈ
33C0Դϴ. ϱ B001, mov al, 1 ٲָ ˴ϴ.
̷ Ȯϴ ⱸ, ΰ call 츮
'¥' Ȯϴ κ ȣϰ ִ ϱ? Ƹ ſ. ù
κп ҵ κ GetSystemtimeԼ ٷ
κ̴ϱ.
ãư .
:00416E50 8B09 mov ecx, dword ptr [ecx] ;time(NULL)
:00416E52 8B542404 mov edx, dword ptr [esp+04] ;3/23/0:00
:00416E56 33C0 xor eax, eax
:00416E58 3BCA cmp ecx, edx
:00416E5A 0F9CC0 setl al
:00416E5D C20400 ret 0004
:00416E60 8B09 mov ecx, dword ptr [ecx] ;time(NULL)
:00416E62 8B542404 mov edx, dword ptr [esp+04] ;4/29/23:59
:00416E66 33C0 xor eax, eax
:00416E68 3BCA cmp ecx, edx
:00416E6A 0F9FC0 setg al
:00416E6D C20400 ret 0004
ι° call call 00416E50 θ ִ 00416E50κ .
(.. ۿ ٿ ִ
ϳε, sice IP(instruction pointer) Ű ִ ִ
⸦ մϴ : ) 00416E66 xor eax, eax :? ecx ɰ :?
edx . ý ð 99 4 25 0:54:33
ֽϴ. ecx edx 10 924969724
922114800Դϴ. cmp ecx, edx/setl al ؼ ˴ϴ.
picaview ΰ setzɿ ̾߱⸦ ִ
ɷ մϴ. setl ̶ ? Ƹ SET if
Less ǹ ſ. cmp ecx, edx ecx edx ؼ ecx edx
'۴ٸ' al (1)մϴ. ret˴ϴ.
ü 924969724 922114800 ϴ ɱ?
ΰ ϸ û ̰ŵ. ó µ. C
time()̶ Լ ־. time(NULL) 1970 1 1 ý
ð ʰ ϴ ŵϴ.( 1970 1 1 ͳ
ϸ, UNIX ̶ ٰ ϴ, ? : ) Ȯ
þ. 922114800 3600*24*365 ϱ 19 . 1970 + 19
= 1999 ݾƿ.
ϸ ecx ý ð ð
̱, edx 1999 3 23 0 00 ð
Դϴ.( κ ణ ̻ؿ. sice Ȯ ̷ 3 23
0 00ʱ 922114800̾µ, time(NULL) Ἥ
α ˾ ϱ 3 22 10 00ʱ 922114800̴.
αֿ ؼ ϱ, 쿡 time(NULL)
ϴ Լ ۵ϴ ϴ. ̷ ̰ ƽô
ּ : )
ϱ α, 3 23ϱ ð edx ý ð谡
Ű ð ð ecx ϰ ִ ſ. ٽ ϸ,
ý ð 99 3 23 Ȯϰ ִ . 3
23 ʾҴٸ(ecx