ÆÐÄ¡°ÁÂ No 7
»õ·Ò µ¥ÀÌÅÍ¸Ç 98 KeyGen ¸¸µé±â
( Windows InstallShield Decompiler Version 1.00 Beta , Visual Basic 5.0 )
¾È³Ä¼¼¿ä.. ÀÌ °Á¿¡¼´Â InstallShield¸¦ »ç¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ. Àá½Ã¸¸ ¼³¸í µå¸³´Ï´Ù. ±×¸®°í »õ·Ò µ¥ÀÌÅÍ¸Ç 98ÀÇ µî·Ï¹øÈ£ ¿¬»ê ºÎºÐÀ» ºÐ¼®ÇØ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. ³Ñ °£´ÜÇϴϱî.. Àß ÁöÄѺÁ ÁÖ¼¼¿ä. Áß¿äÇÑ °ÍÀº Á÷Á¢ ÇØº¸´Â °Í À̰ÚÁö¿ä??
½ÃÀÛÇÕ´Ï´Ù..
¸ÕÀú Windows InstallShield Decompiler¸¦ ÀνºÅçÇÏ½Ã°í ¶Ç »õ·Ò µ¥ÀÌÅ͸Ç98À» ÁغñÇϼž߰ÚÁÒ?? ¾øÀ¸½Ã¸é ÀÎÅͳݿ¡ ÀÖÀ¸´Ï.. ã¾Æ º¸½Ã±â ¹Ù¶ø´Ï´Ù. Decompiler ÀÇ Open Script¸¦ ¼±ÅÃÇØ¼ setup.ins ÆÄÀÏÀ» ºÒ·¯ ¿É´Ï´Ù.. ±×¸®°í F2 ۸¦ ´·¯ DecompileÀ» ÇØ¾ß°ÚÁÒ!!
±×·±´ÙÀ½ Á¶±Ý¸¸ ³»·Á°¡ º¸½Ã¸é ¾Æ·¡ÀÇ ºÎºÐÀ» ¸¸³ª½Ç ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù... ÁÖ¼®À» Á¹¶ó°Ô ´Þ¾Æ ³õ¾ÒÀ¸´Ï Âü°í ÇÏ½Ã¸é¼ ÀÐ¾î ºÁ ÁֽʽÿÀ!
00001B99: 0092 CtrlGetText (StrVar[002B],0000012F,StrVar[0025])
<= ù¹øÂ° ¹®ÀÚ¿
00001BA6: 0092 CtrlGetText (StrVar[002B],00000130,StrVar[0026])
<= µÎ¹øÂ° ¹®ÀÚ¿
00001BB3: 0092 CtrlGetText (StrVar[002B],00000131,StrVar[0027])
<= ¼¼¹øÂ° ¹®ÀÚ¿
00001BC0: 0092 CtrlGetText (StrVar[002B],00000402,StrVar[0028])
<= ³×¹øÂ° ¹®ÀÚ¿
00001BCD: 0124 StrVar[0064] = StrVar[0025] + "-"
00001BD9: 0124 StrVar[0065] = StrVar[0064] + StrVar[0026]
00001BE4: 0124 StrVar[0066] = StrVar[0065] + "-"
00001BF0: 0124 StrVar[0067] = StrVar[0066] + StrVar[0027]
00001BFB: 0124 StrVar[0068] = StrVar[0067] + "-"
00001C07: 0124 StrVar[0023] = StrVar[0068] + StrVar[0028]
<= 1,2,3,4ÀÇ ¹®ÀÚ¿À» '-' ¹®ÀÚ¿°ú ´õÇØ¼ [0023] ¿¡ ÀúÀå
<= ( 12-12-12-12 ÀÌ·±½ÄÀ¸·Î )
00001C37: 0128 IF (StrCompare (StrVar[0023],"³»ÀÏ-²À-»ì²²¿ä-¸Í¼¼ÇÔ") = 00000000) THEN
<= [0023] ÀÌ "³»ÀÏ-²À-»ì²²¿ä-¸Í¼¼ÇÔ" Àΰ¡¸¦ ºñ±³
<= Áö±Ý Àå³Çϳª???
00001C57: 0021 NumVar[002A] = 00000001
<= [002A]°¡ 1 À̶ó¸é ½Ã¸®¾ó ¹øÈ£´Â Á¤È®ÇÑ °Í..
00001C58: 0000 ENDIF
00001C69: 006D StrToNum (NumVar[002F],StrVar[0025])
00001C71: 006D StrToNum (NumVar[0030],StrVar[0026])
00001C79: 006D StrToNum (NumVar[0031],StrVar[0027])
00001C81: 006D StrToNum (NumVar[0032],StrVar[0028])
<= ´Ù½Ã ÀúÀåÇϰí..
00001C89: 0128 NumVar[004A] = NumVar[002F] != 00012FEA
<= ÇÙ»ç 12FEA = 77802
<= óÀ½ ¹øÈ£´Â 77802 À̰í -> [004A] = 0
00001C9B: 0128 NumVar[004B] = NumVar[0030] < 00000064
<= ÇÙ»ç 64 = 100
<= µÎ¹øÂ° ¹øÈ£´Â 100 º¸´Ù Ä¿¾ßµÇ°í -> [004B] = 0
00001CAD: 0126 NumVar[004C] = NumVar[004A] || NumVar[004B] <===== || -> XOR
<= À§ÀÇ µÎ °¡ÁöÀÇ Á¶°ÇÀÌ ¸¸Á·ÇÑ´Ù¸é
<= [004C] 0 = 0 || 0
00001CB8: 0128 NumVar[004A] = NumVar[0030] > 000003E7
<= ÇÙ»ç 3E7 = 999
<= µÎ¹øÂ° ¹øÈ£´Â 999 º¸´Ù ÀÛ¾Æ¾ß Çϰí -> [004A] = 0
00001CCA: 0126 NumVar[004B] = NumVar[004C] || NumVar[004A]
<= [004B] 0 = 0 || 0
00001CD5: 0128 NumVar[004A] = NumVar[0031] < 000F4240
<= ÇÙ»ç F4240 = 1000000
<= 3¹øÂ° ¹øÈ£´Â 1000000 º¸´Ù Ä¿¾ßÇϰí -> [004A] = 0
00001CE7: 0126 NumVar[004C] = NumVar[004B] || NumVar[004A]
<= [004C] 0 = 0 || 0
00001CF2: 0128 NumVar[004A] = NumVar[0031] > 0098967F
<= ÇÙ»ç 98967F = 9999999
<= 3¹øÂ° ¹øÈ£´Â 9999999 º¸´Ù ÀÛ¾Æ¾ß Çϸç <- [004A] = 0
00001D04: 0126 NumVar[004B] = NumVar[004C] || NumVar[004A]
<= [004B] 0 = 0 || 0
00001D0F: 0128 NumVar[004A] = NumVar[0032] < 00002710
<= ÇÙ»ç 2710 = 10000
<= 4¹øÂ° ¹øÈ£´Â 10000 º¸´Ù Ä¿¾ßÇϰí <- [004A] = 0
00001D21: 0126 NumVar[004C] = NumVar[004B] || NumVar[004A]
<= [004C] 0 = 0 || 0
00001D2C: 0128 NumVar[004A] = NumVar[0032] > 0001869F
<= ÇÙ»ç 1869F = 99999
<= 4¹øÂ° ¼ýÀÚ´Â 99999 º¸´Ù ÀÛ¾Æ¾ß ÇÑ´Ù. <- [004A] = 0
00001D49: 0022 IF (NumVar[004C] || NumVar[004A] != 00000000) THEN
<= [004C] = 0 , [004A] = 0 -> 0 = 0 || 0
<= 0 != 0 <- °ÅÁþÀ̹ǷΠ¾Æ·¡¸¦ ½ÇÇàÇÏÁö ¾Ê´Â´Ù.
00001D57: 0128 IF (NumVar[002A] = 00000000) THEN
<= [002A]°¡ 0 À϶§
00001D77: 002A MessageBox ("Á¦Ç° ID¸¦ À߸ø ÀÔ·ÂÇϼ̽À´Ï´Ù.",SEVERE)
00001D9F: 002C Goto (LABEL_0020)
00001DA0: 0000 ENDIF
00001DA0: 0000 ENDIF
00001DE5: 0128 IF (SdConfirmRegistration_[LABEL_019E] = 00000000) THEN
00001E05: 002C Goto (LABEL_0020)
00001E06: 0000 ENDIF
00001E12: 011C NumVar[004A] = NumVar[0030] / 00000007
00001E1F: 011B NumVar[004B] = NumVar[004A] * 00000007
00001E2C: 011A NumVar[0030] = NumVar[0030] - NumVar[004B]
<= À§ÀÇ µî½ÄÀº µÎ¹øÂ° ¼ýÀÚ¸¦ °¡Áö°í..
<= A = µÎ¹øÂ° ¼ýÀÚ / 7
<= B = A * 7
<= µÎ¹øÂ° ¼ýÀÚ = A - B
00001E3F: 011C NumVar[004A] = NumVar[0031] / 00000007
00001E4C: 011B NumVar[004B] = NumVar[004A] * 00000007
00001E59: 011A NumVar[0031] = NumVar[0031] - NumVar[004B]
<= 3¹øÂ° ¼ýÀÚµµ ¸¶Âú°¡Áö..
00001E6C: 011C NumVar[004A] = NumVar[0032] / 00000007
00001E79: 011B NumVar[004B] = NumVar[004A] * 00000007
00001E86: 011A NumVar[0032] = NumVar[0032] - NumVar[004B]
<= 4¹øÂ° ¼ýÀÚµµ ¸¶Âú°¡Áö..
00001E99: 0128 NumVar[004A] = NumVar[0030] != 00000003
<= µÎ¹øÂ° ¼ýÀÚ¸¦ ¿¬»êÇÑ °ªÀÌ 3 À̾î¾ßÇÔ
<= ¸¸¾à 3 À̶ó¸é [004A] = 0
00001EAB: 0128 NumVar[004B] = NumVar[0031] != 00000003
<= 3¹øÂ° ¼ýÀÚ¸¦ ¿¬»êÇÑ °ÍÀÌ 3 À̾î¾ßÇÔ
<= ¸¸¾à 3 À̶ó¸é [004B] = 0
00001EBD: 0126 NumVar[004C] = NumVar[004A] || NumVar[004B]
<= [004C] 0 = 0 || 0
00001EC8: 0128 NumVar[004A] = NumVar[0032] != 00000003
<= 4¹øÂ° ¼ýÀÚ¸¦ ¿¬»êÇÑ °ÍÀÌ 3 À̾î¾ßÇÔ
<= ¸¸¾à 3 ÀÌÀ̶ó¸é [004A] = 0
00001EE5: 0022 IF (NumVar[004C] || NumVar[004A] != 00000000) THEN
<= [004C] = 0 , [004A] = 0 , 0 = 0 || 0
<= 0 != 0 -> °ÅÁþÀ̹ǷΠ¾Æ·¡¸¦ ½ÇÇàÇÏÁö ¾ÊÀ½
00001EF3: 0128 IF (NumVar[002A] = 00000000) THEN
00001F13: 002A MessageBox ("Á¦Ç° ID¸¦ À߸ø ÀÔ·ÂÇϼ̽À´Ï´Ù.",SEVERE)
00001F3B: 002C Goto (LABEL_0020)
00001F3C: 0000 ENDIF
00001F3C: 0000 ENDIF
00001F50: 0021 NumVar[0027] = 00000001
<= ÀÌ °÷±îÁö ¹«»çÈ÷ ¿À¸é ½Ã¸®¾ó ¹øÈ£´Â Á¤È®ÇѰÍ.!!
<= ÃÖÁ¾ÀûÀ¸·Î [0027]¿¡ 1À» Áý¾î³Ö¾î.. ½Ã¸®¾ó ¹øÈ£¸¦ ·¹Áö½ºÆ®¸®¿¡
<= ÀúÀåµÈ ½Ã¸®¾óÀÌ ÀÌ»óÀÌ ¾ø´Ù´Â°ÍÀ» È®ÀÎ..
µî·Ï¹øÈ£ ¿¬»ê°úÁ¤ÀÌ ÀǿܷΠ°£´ÜÇÏÁö¿ä?? À¸À½.. ³Ê¹« °£´ÜÇØ¼.. Â¥Áõ³²..
Á¦°¡ Visual Basic ÇÁ·Î±×·¡¸Ó À̴ϱî.. KeyGenÀ» Visual Basic À¸·Î ¸¸µé¾î º¸¾Ò½À´Ï´Ù. À̹ø °Á¿¡¼± KeyGenÀ» ¸¸µé¾î º¸¾ÒÁö¸¸.. ´Ù¸¥ Á¾·ùµµ ¸¹ÀÌ ÀÖ½À´Ï´Ù. ½Ã¸®¾ó ¹øÈ£¸¦ ¾Æ¹«°Å³ª ÀÔ·ÂÇÏ¿©µµ ±×³É ÀνºÅçÀÌ µÇµµ·Ï ¶Ç´Â CD¸¦ °Ë»çÇÏ´Â ÇÁ·Î±×·¥À» ÆÐÄ¡ ÇÏ´Â ¹æ¹ý µîµî ¿©·¯ °¡Áö°¡ ÀÖÁö¸¸ À̹ø °Á¿¡¼´Â ÀÌ Á¤µµ·Î ÇÏ°í ´ÙÀ½¹ø¿¡ ÇÒ ¶§¿¡´Â ´Ù¸¥ ¹æ¹ýÀ» °ÁÂ ÇØº¸µµ·Ï ÇϰڽÀ´Ï´Ù.
ÁË¼Û ÇÕ´Ï´Ù.. VisualBasicÀ» Àß ¸ð¸£½Ã´Â ºÐÀº.. À½.. ¾ö.. Äڵ尡 ½¬¿ì´Ï±î ÀÌÇØ°¡ °¡¸®¶ó º¾´Ï´Ù.