飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 7008|回复: 15

[原创] 超级字符串批量替换工具 3.68简单分析

[复制链接]
  • TA的每日心情
    开心
    3 天前
  • 签到天数: 1613 天

    [LV.Master]伴坛终老

    发表于 2016-2-2 20:28:15 | 显示全部楼层 |阅读模式
    本帖最后由 PYG官方论坛 于 2016-2-3 11:11 编辑

    超级字符串批量替换工具是一个文档内容批量替换工具:
    • 支持多种办公常用文档格式内容替换:文本/超文本文件(*.html;*.txt;*.htm),office文档:Word文件(*.doc)、Excel文件(*.xls)、PowerPoint幻灯片文件(*.ppt)的批量内容替换。
    • 不仅一次批量处理多个文件,更可一次批量处理多组内容替换 。例如:可以添加多个字符,然后依次处理
    下载地址:http://www.yuneach.com/soft/XReplace.asp

    第一串在启动软件时验证
    读取注册表里的  VB and VBA Program Settings\XReplace\RegCode 注册码


    1. 004423EE   .  C745 BC B4E94>mov     dword ptr [ebp-44], XReplace.004>;  -  分割符号
    2. 004423F5   .  C745 B4 08000>mov     dword ptr [ebp-4C], 8
    3. 004423FC   .  FF15 08124000 call    dword ptr [<&MSVBVM60.__vbaVarDu>;  msvbvm60.__vbaVarDup
    4. 00442402   .  8B17          mov     edx, dword ptr [edi]
    5. 00442404   .  56            push    esi
    6. 00442405   .  8D4D D4       lea     ecx, dword ptr [ebp-2C]
    7. 00442408   .  6A FF         push    -1
    8. 0044240A   .  51            push    ecx
    9. 0044240B   .  8D45 C4       lea     eax, dword ptr [ebp-3C]
    10. 0044240E   .  52            push    edx
    11. 0044240F   .  50            push    eax
    12. 00442410   .  FF15 4C114000 call    dword ptr [<&MSVBVM60.#711>]     ;  msvbvm60.rtcSplit
    13. 00442416   .  8D4D C4       lea     ecx, dword ptr [ebp-3C]
    14. 00442419   .  51            push    ecx
    15. 0044241A   .  68 08200000   push    2008
    16. 0044241F   .  FF15 7C104000 call    dword ptr [<&MSVBVM60.__vbaAryVa>;  msvbvm60.__vbaAryVar
    17. 00442425   .  8945 B0       mov     dword ptr [ebp-50], eax
    18. 00442428   .  8D55 B0       lea     edx, dword ptr [ebp-50]
    19. 0044242B   .  8D45 E8       lea     eax, dword ptr [ebp-18]
    20. 0044242E   .  52            push    edx
    21. 004398A6   .  B9 54504500   mov     ecx, XReplace.00455054           ;  ASCII "-"
    22. 004398AB   .  FF15 30124000 call    dword ptr [<&MSVBVM60.__vbaStrMo>;  msvbvm60.__vbaStrMove
    23. 004398B1   .  8D45 C8       lea     eax, dword ptr [ebp-38]
    24. 004398B4   .  50            push    eax
    25. 004398B5   .  8D4D CC       lea     ecx, dword ptr [ebp-34]
    26. 004398B8   .  51            push    ecx
    27. 004398B9   .  6A 02         push    2
    28. 004398BB   .  FF15 D8114000 call    dword ptr [<&MSVBVM60.__vbaFreeS>;  msvbvm60.__vbaFreeStrList
    29. 004398C1   .  83C4 0C       add     esp, 0C
    30. 004398C4   >  C745 FC 42000>mov     dword ptr [ebp-4], 42
    31. 004398CB   .  8B15 54504500 mov     edx, dword ptr [455054]
    32. 004398D1   .  52            push    edx                              ; /String => "5712074898-871-QXdmmYAaX1"
    33. 004398D2   .  FF15 30104000 call    dword ptr [<&MSVBVM60.__vbaLenBs>; \__vbaLenBstr
    34. 004398D8   .  83F8 0D       cmp     eax, 0D
    35. 004398DB   .  7E 19         jle     short XReplace.004398F6         
    36. 004398DD   .  C745 FC 43000>mov     dword ptr [ebp-4], 43
    37. 004398E4   .  68 54504500   push    XReplace.00455054                ;  ASCII "-"
    38. 004398E9   .  E8 A28A0000   call    XReplace.00442390                   ;关键计算CALL
    39. 004398EE   .  66:A3 5050450>mov     word ptr [455050], ax
    40. 004398F4   .  EB 10         jmp     short XReplace.00439906
    41. 004398F6   > \C745 FC 45000>mov     dword ptr [ebp-4], 45
    42. 004398FD   .  66:C705 50504>mov     word ptr [455050], 0
    43. 00439906   >  C745 FC 47000>mov     dword ptr [ebp-4], 47
    44. 0043990D   .  0FBF05 505045>movsx   eax, word ptr [455050]            ;  FFFF
    45. 00439914   .  85C0          test    eax, eax                          ;  测试,上面CALL返回值比较是否正确
    46. 00439916   .  75 26         jnz     short XReplace.0043993E
    复制代码


    004398E9 地址处读取注册表注册码,并分割并算出第一串
    ......中间省略


    1. 004423EE   .  C745 BC B4E94>mov     dword ptr [ebp-44], XReplace.004>;  -  分割符号
    2. 004423F5   .  C745 B4 08000>mov     dword ptr [ebp-4C], 8
    3. 004423FC   .  FF15 08124000 call    dword ptr [<&MSVBVM60.__vbaVarDu>;  msvbvm60.__vbaVarDup
    4. 00442402   .  8B17          mov     edx, dword ptr [edi]
    5. 00442404   .  56            push    esi
    6. 00442405   .  8D4D D4       lea     ecx, dword ptr [ebp-2C]
    7. 00442408   .  6A FF         push    -1
    8. 0044240A   .  51            push    ecx
    9. 0044240B   .  8D45 C4       lea     eax, dword ptr [ebp-3C]
    10. 0044240E   .  52            push    edx
    11. 0044240F   .  50            push    eax
    12. 00442410   .  FF15 4C114000 call    dword ptr [<&MSVBVM60.#711>]     ;  msvbvm60.rtcSplit
    13. 00442416   .  8D4D C4       lea     ecx, dword ptr [ebp-3C]
    14. 00442419   .  51            push    ecx
    15. 0044241A   .  68 08200000   push    2008
    16. 0044241F   .  FF15 7C104000 call    dword ptr [<&MSVBVM60.__vbaAryVa>;  msvbvm60.__vbaAryVar
    17. 00442425   .  8945 B0       mov     dword ptr [ebp-50], eax
    18. 00442428   .  8D55 B0       lea     edx, dword ptr [ebp-50]
    19. 0044242B   .  8D45 E8       lea     eax, dword ptr [ebp-18]
    20. 0044242E   .  52            push    edx
    21. 0044242F   .  50            push    eax
    22. 00442430   .  FF15 2C124000 call    dword ptr [<&MSVBVM60.__vbaAryCo>;  msvbvm60.__vbaAryCopy
    23. 00442436   .  8D4D C4       lea     ecx, dword ptr [ebp-3C]
    24. 00442439   .  8D55 D4       lea     edx, dword ptr [ebp-2C]
    25. 0044243C   .  51            push    ecx
    26. 0044243D   .  52            push    edx
    27. 0044243E   .  6A 02         push    2
    28. 00442440   .  FF15 38104000 call    dword ptr [<&MSVBVM60.__vbaFreeV>;  msvbvm60.__vbaFreeVarList
    29. 00442446   .  8B4D E8       mov     ecx, dword ptr [ebp-18]
    30. 00442449   .  83C4 0C       add     esp, 0C
    31. 0044244C   .  3BCE          cmp     ecx, esi
    32. 0044244E   .  74 24         je      short XReplace.00442474
    33. 00442450   .  66:8339 01    cmp     word ptr [ecx], 1
    34. 00442454   .  75 1E         jnz     short XReplace.00442474
    35. 00442456   .  8B71 14       mov     esi, dword ptr [ecx+14]
    36. 00442459   .  8B41 10       mov     eax, dword ptr [ecx+10]
    37. 0044245C   .  F7DE          neg     esi
    38. 0044245E   .  3BF0          cmp     esi, eax
    39. 00442460   .  72 09         jb      short XReplace.0044246B
    40. 00442462   .  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGener>;  msvbvm60.__vbaGenerateBoundsError
    41. 00442468   .  8B4D E8       mov     ecx, dword ptr [ebp-18]
    42. 0044246B   >  8D04B5 000000>lea     eax, dword ptr [esi*4]
    43. 00442472   .  EB 09         jmp     short XReplace.0044247D
    44. 00442474   >  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGener>;  msvbvm60.__vbaGenerateBoundsError
    45. 0044247A   .  8B4D E8       mov     ecx, dword ptr [ebp-18]
    46. 0044247D   >  8B49 0C       mov     ecx, dword ptr [ecx+C]
    47. 00442480   .  8B1401        mov     edx, dword ptr [ecx+eax]
    48. 00442483   .  52            push    edx                              ;  用 “-” 号分割注册码得到的第一串 UNICODE "5712074898"
    49. 00442484   .  68 4C504500   push    XReplace.0045504C
    50. 00442489   .  E8 92FCFFFF   call    XReplace.00442120                ;  第一串关键算法,只是密码表字符替换计算
    51. 0044248E   .  8BD0          mov     edx, eax
    复制代码


    00442489   .  E8 92FCFFFF   call    XReplace.00442120                ;  第一串关键算法
    .....中间省略,机器码为8则替换为1,为1替换为6,为2替换为4.....


    1. 0044220B   .  68 48DE4000   push    XReplace.0040DE48                ;  0
    2. 00442210   .  FFD7          call    edi
    3. 00442212   .  85C0          test    eax, eax
    4. 00442214   .  75 0E         jnz     short XReplace.00442224
    5. 00442216   .  8B45 E0       mov     eax, dword ptr [ebp-20]
    6. 00442219   .  50            push    eax
    7. 0044221A   .  68 B4ED4000   push    XReplace.0040EDB4                ;  8
    8. 0044221F   .  E9 F4000000   jmp     XReplace.00442318
    9. 00442224   >  8B4D 9C       mov     ecx, dword ptr [ebp-64]
    10. 00442227   .  51            push    ecx
    11. 00442228   .  68 40DE4000   push    XReplace.0040DE40                ;  1
    12. 0044222D   .  FFD7          call    edi
    13. 0044222F   .  85C0          test    eax, eax
    14. 00442231   .  75 0E         jnz     short XReplace.00442241
    15. 00442233   .  8B55 E0       mov     edx, dword ptr [ebp-20]
    16. 00442236   .  52            push    edx
    17. 00442237   .  68 BCED4000   push    XReplace.0040EDBC                ;  6
    18. 0044223C   .  E9 D7000000   jmp     XReplace.00442318
    19. 00442241   >  8B45 9C       mov     eax, dword ptr [ebp-64]
    20. 00442244   .  50            push    eax
    21. 00442245   .  68 C4ED4000   push    XReplace.0040EDC4                ;  2
    22. 0044224A   .  FFD7          call    edi
    23. 0044224C   .  85C0          test    eax, eax
    24. 0044224E   .  75 0E         jnz     short XReplace.0044225E
    25. 00442250   .  8B4D E0       mov     ecx, dword ptr [ebp-20]
    26. 00442253   .  51            push    ecx
    27. 00442254   .  68 CCED4000   push    XReplace.0040EDCC                ;  4
    28. 00442259   .  E9 BA000000   jmp     XReplace.00442318
    29. 0044225E   >  8B55 9C       mov     edx, dword ptr [ebp-64]
    30. 00442261   .  52            push    edx
    31. 00442262   .  68 44EC4000   push    XReplace.0040EC44                ;  3
    32. 00442267   .  FFD7          call    edi
    33. 00442269   .  85C0          test    eax, eax
    34. 0044226B   .  75 0E         jnz     short XReplace.0044227B
    35. 0044226D   .  8B45 E0       mov     eax, dword ptr [ebp-20]
    36. 00442270   .  50            push    eax
    37. 00442271   .  68 48DE4000   push    XReplace.0040DE48                ;  0
    38. 00442276   .  E9 9D000000   jmp     XReplace.00442318
    39. 0044227B   >  8B4D 9C       mov     ecx, dword ptr [ebp-64]
    40. 0044227E   .  51            push    ecx
    41. 0044227F   .  68 CCED4000   push    XReplace.0040EDCC                ;  4
    42. 00442284   .  FFD7          call    edi
    43. 00442286   .  85C0          test    eax, eax
    44. 00442288   .  75 0E         jnz     short XReplace.00442298
    45. 0044228A   .  8B55 E0       mov     edx, dword ptr [ebp-20]
    46. 0044228D   .  52            push    edx
    47. 0044228E   .  68 4CEC4000   push    XReplace.0040EC4C                ;  5
    48. 00442293   .  E9 80000000   jmp     XReplace.00442318
    49. 00442298   >  8B45 9C       mov     eax, dword ptr [ebp-64]
    50. 0044229B   .  50            push    eax
    51. 0044229C   .  68 4CEC4000   push    XReplace.0040EC4C                ;  5
    52. 004422A1   .  FFD7          call    edi
    53. 004422A3   .  85C0          test    eax, eax
    54. 004422A5   .  75 0B         jnz     short XReplace.004422B2
    55. 004422A7   .  8B4D E0       mov     ecx, dword ptr [ebp-20]
    56. 004422AA   .  51            push    ecx
    57. 004422AB   .  68 C4ED4000   push    XReplace.0040EDC4                ;  2
    58. 004422B0   .  EB 66         jmp     short XReplace.00442318
    59. 004422B2   >  8B55 9C       mov     edx, dword ptr [ebp-64]
    60. 004422B5   .  52            push    edx
    61. 004422B6   .  68 BCED4000   push    XReplace.0040EDBC                ;  6
    62. 004422BB   .  FFD7          call    edi
    63. 004422BD   .  85C0          test    eax, eax
    64. 004422BF   .  75 0B         jnz     short XReplace.004422CC
    65. 004422C1   .  8B45 E0       mov     eax, dword ptr [ebp-20]
    66. 004422C4   .  50            push    eax
    67. 004422C5   .  68 54EB4000   push    XReplace.0040EB54                ;  9
    68. 004422CA   .  EB 4C         jmp     short XReplace.00442318
    69. 004422CC   >  8B4D 9C       mov     ecx, dword ptr [ebp-64]
    70. 004422CF   .  51            push    ecx
    71. 004422D0   .  68 5CEB4000   push    XReplace.0040EB5C                ;  7
    72. 004422D5   .  FFD7          call    edi
    73. 004422D7   .  85C0          test    eax, eax
    74. 004422D9   .  75 0B         jnz     short XReplace.004422E6
    75. 004422DB   .  8B55 E0       mov     edx, dword ptr [ebp-20]
    76. 004422DE   .  52            push    edx
    77. 004422DF   .  68 40DE4000   push    XReplace.0040DE40                ;  1
    78. 004422E4   .  EB 32         jmp     short XReplace.00442318
    79. 004422E6   >  8B45 9C       mov     eax, dword ptr [ebp-64]
    80. 004422E9   .  50            push    eax
    81. 004422EA   .  68 B4ED4000   push    XReplace.0040EDB4                ;  8
    82. 004422EF   .  FFD7          call    edi
    83. 004422F1   .  85C0          test    eax, eax
    84. 004422F3   .  75 0B         jnz     short XReplace.00442300
    85. 004422F5   .  8B4D E0       mov     ecx, dword ptr [ebp-20]
    86. 004422F8   .  51            push    ecx
    87. 004422F9   .  68 44EC4000   push    XReplace.0040EC44                ;  3
    88. 004422FE   .  EB 18         jmp     short XReplace.00442318
    89. 00442300   >  8B55 9C       mov     edx, dword ptr [ebp-64]
    90. 00442303   .  52            push    edx
    91. 00442304   .  68 54EB4000   push    XReplace.0040EB54                ;  9
    92. 00442309   .  FFD7          call    edi
    93. 0044230B   .  85C0          test    eax, eax
    94. 0044230D   .  75 12         jnz     short XReplace.00442321
    95. 0044230F   .  8B45 E0       mov     eax, dword ptr [ebp-20]
    96. 00442312   .  50            push    eax
    97. 00442313   .  68 5CEB4000   push    XReplace.0040EB5C                ;  7
    98. 00442318   >  FFD3          call    ebx
    99. 0044231A   .  8BD0          mov     edx, eax
    100. 0044231C   .  8D4D E0       lea     ecx, dword ptr [ebp-20]

    101. 第二串计算最简单,在主界面最上面  功能  选择 Word文档全角/半角替换  ,点击添加按钮触发验证,验证的是一串常量 “781”    这写错了应是“871” 感谢wgz001提醒
    102. 004428A6   .  C745 B8 B4E94>mov     dword ptr [ebp-48], XReplace.004>;  -
    103. 004428AD   .  C745 B0 08000>mov     dword ptr [ebp-50], 8
    104. 004428B4   .  FF15 08124000 call    dword ptr [<&MSVBVM60.__vbaVarDu>;  msvbvm60.__vbaVarDup
    105. 004428BA   .  8B4D 08       mov     ecx, dword ptr [ebp+8]
    106. 004428BD   .  56            push    esi
    107. 004428BE   .  8D45 D0       lea     eax, dword ptr [ebp-30]
    108. 004428C1   .  6A FF         push    -1
    109. 004428C3   .  8B11          mov     edx, dword ptr [ecx]             ;  UNICODE "5712074898-872-QXdmmYAaXA"
    110. 004428C5   .  50            push    eax
    111. 004428C6   .  8D45 C0       lea     eax, dword ptr [ebp-40]
    112. 004428C9   .  52            push    edx
    113. 004428CA   .  50            push    eax
    114. 004428CB   .  FF15 4C114000 call    dword ptr [<&MSVBVM60.#711>]     ;  msvbvm60.rtcSplit
    115. 004428D1   .  8D4D C0       lea     ecx, dword ptr [ebp-40]
    116. 004428D4   .  51            push    ecx
    117. 004428D5   .  68 08200000   push    2008
    118. 004428DA   .  FF15 7C104000 call    dword ptr [<&MSVBVM60.__vbaAryVa>;  msvbvm60.__vbaAryVar
    119. 004428E0   .  8945 9C       mov     dword ptr [ebp-64], eax
    120. 004428E3   .  8D55 9C       lea     edx, dword ptr [ebp-64]
    121. 004428E6   .  8D45 E8       lea     eax, dword ptr [ebp-18]
    122. 004428E9   .  52            push    edx
    123. 004428EA   .  50            push    eax
    124. 004428EB   .  FF15 2C124000 call    dword ptr [<&MSVBVM60.__vbaAryCo>;  msvbvm60.__vbaAryCopy
    125. 004428F1   .  8D4D C0       lea     ecx, dword ptr [ebp-40]
    126. 004428F4   .  8D55 D0       lea     edx, dword ptr [ebp-30]
    127. 004428F7   .  51            push    ecx
    128. 004428F8   .  52            push    edx
    129. 004428F9   .  6A 02         push    2
    130. 004428FB   .  FF15 38104000 call    dword ptr [<&MSVBVM60.__vbaFreeV>;  msvbvm60.__vbaFreeVarList
    131. 00442901   .  83C4 0C       add     esp, 0C
    132. 00442904   .  BA F8CB4000   mov     edx, XReplace.0040CBF8
    133. 00442909   .  8D4D EC       lea     ecx, dword ptr [ebp-14]
    134. 0044290C   .  FF15 D0114000 call    dword ptr [<&MSVBVM60.__vbaStrCo>;  msvbvm60.__vbaStrCopy
    135. 00442912   .  8B45 E8       mov     eax, dword ptr [ebp-18]
    136. 00442915   .  50            push    eax
    137. 00442916   .  6A 01         push    1
    138. 00442918   .  FF15 84114000 call    dword ptr [<&MSVBVM60.__vbaUboun>;  msvbvm60.__vbaUbound
    139. 0044291E   .  83F8 02       cmp     eax, 2                           ;  判断数组最大值是否小于2
    140. 00442921   .  0F8C 9C000000 jl      XReplace.004429C3
    141. 00442927   .  8B4D E8       mov     ecx, dword ptr [ebp-18]
    142. 0044292A   .  8D55 E0       lea     edx, dword ptr [ebp-20]
    143. 0044292D   .  51            push    ecx
    144. 0044292E   .  52            push    edx
    145. 0044292F   .  FF15 00124000 call    dword ptr [<&MSVBVM60.__vbaAryLo>;  msvbvm60.__vbaAryLock
    146. 00442935   .  8B4D E0       mov     ecx, dword ptr [ebp-20]
    147. 00442938   .  3BCE          cmp     ecx, esi
    148. 0044293A   .  74 29         je      short XReplace.00442965
    149. 0044293C   .  66:8339 01    cmp     word ptr [ecx], 1
    150. 00442940   .  75 23         jnz     short XReplace.00442965
    151. 00442942   .  8B51 14       mov     edx, dword ptr [ecx+14]
    152. 00442945   .  8B41 10       mov     eax, dword ptr [ecx+10]
    153. 00442948   .  BE 01000000   mov     esi, 1
    154. 0044294D   .  2BF2          sub     esi, edx
    155. 0044294F   .  3BF0          cmp     esi, eax
    156. 00442951   .  72 09         jb      short XReplace.0044295C
    157. 00442953   .  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGener>;  msvbvm60.__vbaGenerateBoundsError
    158. 00442959   .  8B4D E0       mov     ecx, dword ptr [ebp-20]
    159. 0044295C   >  8D04B5 000000>lea     eax, dword ptr [esi*4]
    160. 00442963   .  EB 09         jmp     short XReplace.0044296E
    161. 00442965   >  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGener>;  msvbvm60.__vbaGenerateBoundsError
    162. 0044296B   .  8B4D E0       mov     ecx, dword ptr [ebp-20]
    163. 0044296E   >  8B49 0C       mov     ecx, dword ptr [ecx+C]
    164. 00442971   .  8D55 B0       lea     edx, dword ptr [ebp-50]
    165. 00442974   .  03C8          add     ecx, eax
    166. 00442976   .  6A 03         push    3
    167. 00442978   .  8D45 D0       lea     eax, dword ptr [ebp-30]
    168. 0044297B   .  52            push    edx
    169. 0044297C   .  50            push    eax
    170. 0044297D   .  894D B8       mov     dword ptr [ebp-48], ecx
    171. 00442980   .  C745 B0 08400>mov     dword ptr [ebp-50], 4008
    172. 00442987   .  FF15 24124000 call    dword ptr [<&MSVBVM60.#617>]     ;  msvbvm60.rtcLeftCharVar
    173. 0044298D   .  8D4D E0       lea     ecx, dword ptr [ebp-20]
    174. 00442990   .  51            push    ecx
    175. 00442991   .  FF15 5C124000 call    dword ptr [<&MSVBVM60.__vbaAryUn>;  msvbvm60.__vbaAryUnlock
    176. 00442997   .  8D55 D0       lea     edx, dword ptr [ebp-30]
    177. 0044299A   .  8D45 A0       lea     eax, dword ptr [ebp-60]
    178. 0044299D   .  52            push    edx                              ; /var18
    179. 0044299E   .  50            push    eax                              ; |var28
    180. 0044299F   .  C745 A8 BCE94>mov     dword ptr [ebp-58], XReplace.004>; |871   常量值
    181. 004429A6   .  C745 A0 08800>mov     dword ptr [ebp-60], 8008         ; |
    182. 004429AD   .  FF15 E0104000 call    dword ptr [<&MSVBVM60.__vbaVarTs>; \__vbaVarTstEq     关键比较
    183. 004429B3   .  8D4D D0       lea     ecx, dword ptr [ebp-30]
    184. 004429B6   .  8BF0          mov     esi, eax
    185. 004429B8   .  FF15 20104000 call    dword ptr [<&MSVBVM60.__vbaFreeV>;  msvbvm60.__vbaFreeVar
    186. 004429BE   .  66:F7DE       neg     si
    复制代码





    第三串计算,在主界面  替换内容 页签,按添加按钮时触发验证

    1. 00442656   .  C745 B0 B4E94>mov     dword ptr [ebp-50], XReplace.0040>;  -
    2. 0044265D   .  C745 A8 08000>mov     dword ptr [ebp-58], 8
    3. 00442664   .  FF15 08124000 call    dword ptr [<&MSVBVM60.__vbaVarDup>;  msvbvm60.__vbaVarDup
    4. 0044266A   .  8B4D 08       mov     ecx, dword ptr [ebp+8]
    5. 0044266D   .  57            push    edi
    6. 0044266E   .  8D45 C8       lea     eax, dword ptr [ebp-38]
    7. 00442671   .  6A FF         push    -1
    8. 00442673   .  8B11          mov     edx, dword ptr [ecx]
    9. 00442675   .  50            push    eax
    10. 00442676   .  8D45 B8       lea     eax, dword ptr [ebp-48]
    11. 00442679   .  52            push    edx
    12. 0044267A   .  50            push    eax
    13. 0044267B   .  FF15 4C114000 call    dword ptr [<&MSVBVM60.#711>]      ;  msvbvm60.rtcSplit
    14. 00442681   .  8D4D B8       lea     ecx, dword ptr [ebp-48]
    15. 00442684   .  51            push    ecx
    16. 00442685   .  68 08200000   push    2008
    17. 0044268A   .  FF15 7C104000 call    dword ptr [<&MSVBVM60.__vbaAryVar>;  msvbvm60.__vbaAryVar
    18. 00442690   .  8945 A4       mov     dword ptr [ebp-5C], eax
    19. 00442693   .  8D55 A4       lea     edx, dword ptr [ebp-5C]
    20. 00442696   .  8D45 E4       lea     eax, dword ptr [ebp-1C]
    21. 00442699   .  52            push    edx
    22. 0044269A   .  50            push    eax
    23. 0044269B   .  FF15 2C124000 call    dword ptr [<&MSVBVM60.__vbaAryCop>;  msvbvm60.__vbaAryCopy
    24. 004426A1   .  8D4D B8       lea     ecx, dword ptr [ebp-48]
    25. 004426A4   .  8D55 C8       lea     edx, dword ptr [ebp-38]
    26. 004426A7   .  51            push    ecx
    27. 004426A8   .  52            push    edx
    28. 004426A9   .  6A 02         push    2
    29. 004426AB   .  FF15 38104000 call    dword ptr [<&MSVBVM60.__vbaFreeVa>;  msvbvm60.__vbaFreeVarList
    30. 004426B1   .  83C4 0C       add     esp, 0C
    31. 004426B4   .  BA F8CB4000   mov     edx, XReplace.0040CBF8
    32. 004426B9   .  8D4D E8       lea     ecx, dword ptr [ebp-18]
    33. 004426BC   .  FF15 D0114000 call    dword ptr [<&MSVBVM60.__vbaStrCop>;  msvbvm60.__vbaStrCopy
    34. 004426C2   .  8B45 E4       mov     eax, dword ptr [ebp-1C]
    35. 004426C5   .  8B35 84114000 mov     esi, dword ptr [<&MSVBVM60.__vbaU>;  msvbvm60.__vbaUbound
    36. 004426CB   .  50            push    eax
    37. 004426CC   .  6A 01         push    1
    38. 004426CE   .  FFD6          call    esi                               ;  返回分割后数组维度的最大值; <&MSVBVM60.__vbaUbound>
    39. 004426D0   .  83F8 02       cmp     eax, 2                            ;  最大值是否小于2个,小于则跳走,不进行第三串比较
    40. 004426D3   .  0F8C 16010000 jl      XReplace.004427EF
    41. 004426D9   .  8B4D E4       mov     ecx, dword ptr [ebp-1C]
    42. 004426DC   .  51            push    ecx
    43. 004426DD   .  6A 01         push    1
    44. 004426DF   .  FFD6          call    esi
    45. 004426E1   .  8BC8          mov     ecx, eax
    46. 004426E3   .  FF15 EC104000 call    dword ptr [<&MSVBVM60.__vbaI2I4>] ;  msvbvm60.__vbaI2I4
    47. 004426E9   .  8945 94       mov     dword ptr [ebp-6C], eax
    48. 004426EC   .  BB 01000000   mov     ebx, 1
    49. 004426F1   .  BE 02000000   mov     esi, 2
    50. 004426F6   >  66:3B75 94    cmp     si, word ptr [ebp-6C]
    51. 004426FA   .  8B4D E4       mov     ecx, dword ptr [ebp-1C]
    52. 004426FD   .  7F 62         jg      short XReplace.00442761
    53. 004426FF   .  3BCF          cmp     ecx, edi
    54. 00442701   .  74 29         je      short XReplace.0044272C
    55. 00442703   .  66:8339 01    cmp     word ptr [ecx], 1
    56. 00442707   .  75 23         jnz     short XReplace.0044272C
    57. 00442709   .  8B51 14       mov     edx, dword ptr [ecx+14]
    58. 0044270C   .  8B41 10       mov     eax, dword ptr [ecx+10]
    59. 0044270F   .  0FBFFE        movsx   edi, si
    60. 00442712   .  2BFA          sub     edi, edx
    61. 00442714   .  3BF8          cmp     edi, eax
    62. 00442716   .  72 09         jb      short XReplace.00442721
    63. 00442718   .  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGenera>;  msvbvm60.__vbaGenerateBoundsError
    64. 0044271E   .  8B4D E4       mov     ecx, dword ptr [ebp-1C]
    65. 00442721   >  8D04BD 000000>lea     eax, dword ptr [edi*4]
    66. 00442728   .  33FF          xor     edi, edi
    67. 0044272A   .  EB 09         jmp     short XReplace.00442735
    68. 0044272C   >  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGenera>;  msvbvm60.__vbaGenerateBoundsError
    69. 00442732   .  8B4D E4       mov     ecx, dword ptr [ebp-1C]
    70. 00442735   >  8B55 E8       mov     edx, dword ptr [ebp-18]
    71. 00442738   .  8B49 0C       mov     ecx, dword ptr [ecx+C]
    72. 0044273B   .  52            push    edx
    73. 0044273C   .  8B1401        mov     edx, dword ptr [ecx+eax]
    74. 0044273F   .  52            push    edx                              ; /String
    75. 00442740   .  FF15 5C104000 call    dword ptr [<&MSVBVM60.__vbaStrCa>; \__vbaStrCat
    76. 00442746   .  8BD0          mov     edx, eax
    77. 00442748   .  8D4D E8       lea     ecx, dword ptr [ebp-18]
    78. 0044274B   .  FF15 30124000 call    dword ptr [<&MSVBVM60.__vbaStrMo>;  msvbvm60.__vbaStrMove
    79. 00442751   .  66:8BC3       mov     ax, bx
    80. 00442754   .  66:03C6       add     ax, si
    81. 00442757   .  0F80 F0000000 jo      XReplace.0044284D
    82. 0044275D   .  8BF0          mov     esi, eax
    83. 0044275F   .^ EB 95         jmp     short XReplace.004426F6
    84. 00442761   >  8D55 DC       lea     edx, dword ptr [ebp-24]
    85. 00442764   .  51            push    ecx
    86. 00442765   .  52            push    edx
    87. 00442766   .  FF15 00124000 call    dword ptr [<&MSVBVM60.__vbaAryLo>;  msvbvm60.__vbaAryLock
    88. 0044276C   .  8B4D DC       mov     ecx, dword ptr [ebp-24]
    89. 0044276F   .  3BCF          cmp     ecx, edi
    90. 00442771   .  74 24         je      short XReplace.00442797
    91. 00442773   .  66:8339 01    cmp     word ptr [ecx], 1
    92. 00442777   .  75 1E         jnz     short XReplace.00442797
    93. 00442779   .  8B71 14       mov     esi, dword ptr [ecx+14]
    94. 0044277C   .  8B41 10       mov     eax, dword ptr [ecx+10]
    95. 0044277F   .  F7DE          neg     esi
    96. 00442781   .  3BF0          cmp     esi, eax
    97. 00442783   .  72 09         jb      short XReplace.0044278E
    98. 00442785   .  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGener>;  msvbvm60.__vbaGenerateBoundsError
    99. 0044278B   .  8B4D DC       mov     ecx, dword ptr [ebp-24]
    100. 0044278E   >  8D04B5 000000>lea     eax, dword ptr [esi*4]
    101. 00442795   .  EB 09         jmp     short XReplace.004427A0
    102. 00442797   >  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGener>;  msvbvm60.__vbaGenerateBoundsError
    103. 0044279D   .  8B4D DC       mov     ecx, dword ptr [ebp-24]
    104. 004427A0   >  8B49 0C       mov     ecx, dword ptr [ecx+C]
    105. 004427A3   .  03C8          add     ecx, eax
    106. 004427A5   .  51            push    ecx
    107. 004427A6   .  E8 95F5FFFF   call    XReplace.00441D40                ;  第三串计算CALL
    108. 004427AB   .  8BD0          mov     edx, eax
    109. 004427AD   .  8D4D D8       lea     ecx, dword ptr [ebp-28]
    110. 004427B0   .  FF15 30124000 call    dword ptr [<&MSVBVM60.__vbaStrMo>;  msvbvm60.__vbaStrMove
    111. 004427B6   .  8D55 DC       lea     edx, dword ptr [ebp-24]
    112. 004427B9   .  52            push    edx
    113. 004427BA   .  FF15 5C124000 call    dword ptr [<&MSVBVM60.__vbaAryUn>;  msvbvm60.__vbaAryUnlock
    114. 004427C0   .  8B45 E8       mov     eax, dword ptr [ebp-18]
    115. 004427C3   .  8B4D D8       mov     ecx, dword ptr [ebp-28]
    116. 004427C6   .  50            push    eax                              ;  假码  UNICODE "QXdmmYAaX1"
    117. 004427C7   .  51            push    ecx                              ;  真码  UNICODE "QXdmmYAaXA")
    118. 004427C8   .  FF15 D8104000 call    dword ptr [<&MSVBVM60.__vbaStrCm>;  关键比较
    复制代码


    004427A6   关键地址CALL 计算第三串


    1. 00441EA3   > \8B51 0C       mov     edx, dword ptr [ecx+C]            ;  "5712074898"
    2. 00441EA6   .  33C0          xor     eax, eax
    3. 00441EA8   .  83FB 01       cmp     ebx, 1
    4. 00441EAB   .  8A0432        mov     al, byte ptr [edx+esi]            ;  取最后一位
    5. 00441EAE   .  8945 D0       mov     dword ptr [ebp-30], eax           ;  38
    6. 00441EB1   .  75 28         jnz     short XReplace.00441EDB
    7. 00441EB3   .  85C9          test    ecx, ecx
    8. 00441EB5   .  74 56         je      short XReplace.00441F0D
    9. 00441EB7   .  66:3919       cmp     word ptr [ecx], bx
    10. 00441EBA   .  75 51         jnz     short XReplace.00441F0D
    11. 00441EBC   .  8B71 14       mov     esi, dword ptr [ecx+14]
    12. 00441EBF   .  8B41 10       mov     eax, dword ptr [ecx+10]
    13. 00441EC2   .  F7DE          neg     esi
    14. 00441EC4   .  3BF0          cmp     esi, eax
    15. 00441EC6   .  72 05         jb      short XReplace.00441ECD
    16. 00441EC8   .  FFD7          call    edi
    17. 00441ECA   .  8B4D D8       mov     ecx, dword ptr [ebp-28]
    18. 00441ECD   >  8B51 0C       mov     edx, dword ptr [ecx+C]
    19. 00441ED0   .  8BC6          mov     eax, esi
    20. 00441ED2   .  33DB          xor     ebx, ebx
    21. 00441ED4   .  8A1C02        mov     bl, byte ptr [edx+eax]
    22. 00441ED7   .  8BF3          mov     esi, ebx
    23. 00441ED9   .  EB 49         jmp     short XReplace.00441F24
    24. 00441EDB   >  85C9          test    ecx, ecx
    25. 00441EDD   .  74 2E         je      short XReplace.00441F0D
    26. 00441EDF   .  66:8339 01    cmp     word ptr [ecx], 1
    27. 00441EE3   .  75 28         jnz     short XReplace.00441F0D
    28. 00441EE5   .  8B51 14       mov     edx, dword ptr [ecx+14]
    29. 00441EE8   .  8B41 10       mov     eax, dword ptr [ecx+10]
    30. 00441EEB   .  83EB 02       sub     ebx, 2
    31. 00441EEE   .  0F80 25020000 jo      XReplace.00442119
    32. 00441EF4   .  2BDA          sub     ebx, edx
    33. 00441EF6   .  3BD8          cmp     ebx, eax
    34. 00441EF8   .  72 05         jb      short XReplace.00441EFF
    35. 00441EFA   .  FFD7          call    edi
    36. 00441EFC   .  8B4D D8       mov     ecx, dword ptr [ebp-28]
    37. 00441EFF   >  8B51 0C       mov     edx, dword ptr [ecx+C]
    38. 00441F02   .  8BC3          mov     eax, ebx
    39. 00441F04   .  33DB          xor     ebx, ebx
    40. 00441F06   .  8A1C02        mov     bl, byte ptr [edx+eax]            ;  取倒数第二位
    41. 00441F09   .  8BF3          mov     esi, ebx                          ;  39
    42. 00441F0B   .  EB 17         jmp     short XReplace.00441F24
    43. 00441F0D   >  FFD7          call    edi
    44. 00441F0F   .  8B4D D8       mov     ecx, dword ptr [ebp-28]
    45. 00441F12   .  33DB          xor     ebx, ebx
    46. 00441F14   .  8B51 0C       mov     edx, dword ptr [ecx+C]
    47. 00441F17   .  8A1C02        mov     bl, byte ptr [edx+eax]
    48. 00441F1A   .  8BF3          mov     esi, ebx
    49. 00441F1C   .  EB 06         jmp     short XReplace.00441F24
    50. 00441F1E   >  8B3D D0104000 mov     edi, dword ptr [<&MSVBVM60.__vbaG>;  msvbvm60.__vbaGenerateBoundsError
    51. 00441F24   >  85C9          test    ecx, ecx
    52. 00441F26   .  74 1E         je      short XReplace.00441F46
    53. 00441F28   .  66:8339 01    cmp     word ptr [ecx], 1
    54. 00441F2C   .  75 18         jnz     short XReplace.00441F46
    55. 00441F2E   .  8B5D 84       mov     ebx, dword ptr [ebp-7C]
    56. 00441F31   .  8B51 14       mov     edx, dword ptr [ecx+14]
    57. 00441F34   .  8B41 10       mov     eax, dword ptr [ecx+10]
    58. 00441F37   .  2BDA          sub     ebx, edx
    59. 00441F39   .  3BD8          cmp     ebx, eax
    60. 00441F3B   .  72 05         jb      short XReplace.00441F42
    61. 00441F3D   .  FFD7          call    edi
    62. 00441F3F   .  8B4D D8       mov     ecx, dword ptr [ebp-28]
    63. 00441F42   >  8BC3          mov     eax, ebx
    64. 00441F44   .  EB 05         jmp     short XReplace.00441F4B
    65. 00441F46   >  FFD7          call    edi
    66. 00441F48   .  8B4D D8       mov     ecx, dword ptr [ebp-28]
    67. 00441F4B   >  8B51 0C       mov     edx, dword ptr [ecx+C]
    68. 00441F4E   .  33DB          xor     ebx, ebx
    69. 00441F50   .  8A1C02        mov     bl, byte ptr [edx+eax]
    70. 00441F53   .  8B55 D0       mov     edx, dword ptr [ebp-30]
    71. 00441F56   .  23DA          and     ebx, edx                         ;第一位与最后一位位与操作
    72. 00441F58   .  85C9          test    ecx, ecx
    73. 00441F5A   .  74 22         je      short XReplace.00441F7E
    74. 00441F5C   .  66:8339 01    cmp     word ptr [ecx], 1
    75. 00441F60   .  75 1C         jnz     short XReplace.00441F7E
    76. 00441F62   .  8B7D 84       mov     edi, dword ptr [ebp-7C]
    77. 00441F65   .  8B51 14       mov     edx, dword ptr [ecx+14]
    78. 00441F68   .  8B41 10       mov     eax, dword ptr [ecx+10]
    79. 00441F6B   .  2BFA          sub     edi, edx
    80. 00441F6D   .  3BF8          cmp     edi, eax
    81. 00441F6F   .  72 09         jb      short XReplace.00441F7A
    82. 00441F71   .  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGenera>;  msvbvm60.__vbaGenerateBoundsError
    83. 00441F77   .  8B4D D8       mov     ecx, dword ptr [ebp-28]
    84. 00441F7A   >  8BC7          mov     eax, edi
    85. 00441F7C   .  EB 05         jmp     short XReplace.00441F83
    86. 00441F7E   >  FFD7          call    edi
    87. 00441F80   .  8B4D D8       mov     ecx, dword ptr [ebp-28]
    88. 00441F83   >  8B49 0C       mov     ecx, dword ptr [ecx+C]
    89. 00441F86   .  33D2          xor     edx, edx
    90. 00441F88   .  8A1401        mov     dl, byte ptr [ecx+eax]
    91. 00441F8B   .  8BFA          mov     edi, edx
    92. 00441F8D   .  0BFE          or      edi, esi                         ;第一位与倒数第二位位或操作
    93. 00441F8F   .  81FB 80000000 cmp     ebx, 80                          ;
    94. 00441F95   .  7E 0F         jle     short XReplace.00441FA6          ;大于80
    95. 00441F97   .  B8 00010000   mov     eax, 100                         ;
    96. 00441F9C   .  2BC3          sub     eax, ebx                         ;100减去ebx
    97. 00441F9E   .  0F80 75010000 jo      XReplace.00442119
    98. 00441FA4   .  8BD8          mov     ebx, eax
    99. 00441FA6   >  81FF 80000000 cmp     edi, 80
    100. 00441FAC   .  7E 0F         jle     short XReplace.00441FBD          ;大于80
    101. 00441FAE   .  B9 00010000   mov     ecx, 100
    102. 00441FB3   .  2BCF          sub     ecx, edi                         ;100减去edi
    103. 00441FB5   .  0F80 5E010000 jo      XReplace.00442119
    104. 00441FBB   .  8BF9          mov     edi, ecx
    105. 00441FBD   >  8B45 C4       mov     eax, dword ptr [ebp-3C]
    106. 00441FC0   .  85C0          test    eax, eax
    107. 00441FC2   .  74 22         je      short XReplace.00441FE6
    108. 00441FC4   .  66:8338 01    cmp     word ptr [eax], 1
    109. 00441FC8   .  75 1C         jnz     short XReplace.00441FE6
    110. 00441FCA   .  8B4D 84       mov     ecx, dword ptr [ebp-7C]
    111. 00441FCD   .  8B50 14       mov     edx, dword ptr [eax+14]
    112. 00441FD0   .  2BCA          sub     ecx, edx
    113. 00441FD2   .  8BF1          mov     esi, ecx
    114. 00441FD4   .  8B48 10       mov     ecx, dword ptr [eax+10]
    115. 00441FD7   .  3BF1          cmp     esi, ecx
    116. 00441FD9   .  72 06         jb      short XReplace.00441FE1
    117. 00441FDB   .  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGenera>;  msvbvm60.__vbaGenerateBoundsError
    118. 00441FE1   >  8975 80       mov     dword ptr [ebp-80], esi
    119. 00441FE4   .  EB 09         jmp     short XReplace.00441FEF
    120. 00441FE6   >  FF15 D0104000 call    dword ptr [<&MSVBVM60.__vbaGenera>;  msvbvm60.__vbaGenerateBoundsError
    121. 00441FEC   .  8945 80       mov     dword ptr [ebp-80], eax
    122. 00441FEF   >  68 ACED4000   push    XReplace.0040EDAC                 ; /A
    123. 00441FF4   .  FF15 48104000 call    dword ptr [<&MSVBVM60.#516>]      ; \rtcAnsiValueBstr
    124. 00441FFA   .  0FBFC8        movsx   ecx, ax
    125. 00441FFD   .  8BC7          mov     eax, edi
    126. 00441FFF   .  BE 34000000   mov     esi, 34
    127. 00442004   .  0FAFC3        imul    eax, ebx                          ;相乘
    128. 00442007   .  0F80 0C010000 jo      XReplace.00442119
    129. 0044200D   .  99            cdq
    130. 0044200E   .  F7FE          idiv    esi                               ;求余
    131. 00442010   .  03CA          add     ecx, edx                          ;相加
    132. 00442012   .  0F80 01010000 jo      XReplace.00442119
    133. 00442018   .  FF15 40114000 call    dword ptr [<&MSVBVM60.__vbaUI1I4>>;  msvbvm60.__vbaUI1I4
    134. 0044201E   .  8B55 C4       mov     edx, dword ptr [ebp-3C]
    135. 00442021   .  8BF7          mov     esi, edi
    136. 00442023   .  03F3          add     esi, ebx
    137. 00442025   .  8B5D C8       mov     ebx, dword ptr [ebp-38]
    138. 00442028   .  8B4A 0C       mov     ecx, dword ptr [edx+C]            ;取字符
    139. 0044202B   .  8B55 80       mov     edx, dword ptr [ebp-80]
    140. 0044202E   .  0F80 E5000000 jo      XReplace.00442119
    141. 00442034   .  880411        mov     byte ptr [ecx+edx], al
    142. 00442037   .  B8 01000000   mov     eax, 1
    143. 0044203C   .  81E6 FF000000 and     esi, 0FF
    144. 00442042   .  66:0345 E8    add     ax, word ptr [ebp-18]
    145. 00442046   .  897D D0       mov     dword ptr [ebp-30], edi
    146. 00442049   .  8B7D DC       mov     edi, dword ptr [ebp-24]
    147. 0044204C   .  0F80 C7000000 jo      XReplace.00442119
    148. 00442052   .  8945 E8       mov     dword ptr [ebp-18], eax
    149. 00442055   .^ E9 EFFDFFFF   jmp     XReplace.00441E49                 ;循环计算,字符串相加得到第三串。
    150. 0044205A   >  8B45 C4       mov     eax, dword ptr [ebp-3C]
    151. 0044205D   .  8D4D 9C       lea     ecx, dword ptr [ebp-64]
    152. 00442060   .  51            push    ecx
    153. 00442061   .  8945 A4       mov     dword ptr [ebp-5C], eax
    154. 00442064   .  C745 9C 11200>mov     dword ptr [ebp-64], 2011
    155. 0044206B   .  FF15 38124000 call    dword ptr [<&MSVBVM60.__vbaStrVar>;  msvbvm60.__vbaStrVarCopy
    156. 00442071   .  8B35 30124000 mov     esi, dword ptr [<&MSVBVM60.__vbaS>;  上面计算生成的正确第三段 "QXdmmYAaXA"
    157. 00442077   .  8BD0          mov     edx, eax                          ;  "QXdmmYAaXA"
    158. 00442079   .  8D4D D4       lea     ecx, dword ptr [ebp-2C]
    159. 0044207C   .  FFD6          call    esi                               ;  <&MSVBVM60.__vbaStrMove>
    复制代码

    第一次发破文,分析不完整请勿怪哈。

    评分

    参与人数 6威望 +124 飘云币 +144 收起 理由
    pentium450 + 20 + 20 很给力!
    PYG官方论坛 + 40 + 40 PYG有你更精彩!
    small-q + 20 + 20 赞一个!
    GeekCat + 20 + 40 很给力! 大家跟着一起学习、一起玩~~
    wgz001 + 4 + 4 PYG有你更精彩!
    Dxer + 20 + 20 PYG有你更精彩!

    查看全部评分

    PYG19周年生日快乐!
  • TA的每日心情
    开心
    3 天前
  • 签到天数: 1613 天

    [LV.Master]伴坛终老

     楼主| 发表于 2016-2-2 20:32:50 | 显示全部楼层
    总结忘了,这里补上
    软件共分三串,中间用 “-” 号分隔
    第一串通过机器码按密码表替换相应位置的字符,得到第一串
    第二串固定串“871”
    第三串通过第一串计算得到

    一三串在内存中都可以找到,做内存注册机分段取出也可以得到
    PYG19周年生日快乐!
  • TA的每日心情
    难过
    2024-3-10 19:49
  • 签到天数: 473 天

    [LV.9]以坛为家II

    发表于 2016-2-2 20:38:21 | 显示全部楼层
    支持楼主,我下午也玩晕了。只是靠蒙
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    前天 09:10
  • 签到天数: 959 天

    [LV.10]以坛为家III

    发表于 2016-2-2 20:58:19 | 显示全部楼层

    啥也不说了,楼主就是给力!
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    3 天前
  • 签到天数: 288 天

    [LV.8]以坛为家I

    发表于 2016-2-2 20:59:53 | 显示全部楼层
    支持楼主,哈哈哈哈
    PYG19周年生日快乐!
  • TA的每日心情

    2024-2-16 10:48
  • 签到天数: 1171 天

    [LV.10]以坛为家III

    发表于 2016-2-2 21:22:36 | 显示全部楼层
    学习一个了 支持楼主了
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2022-6-12 16:27
  • 签到天数: 149 天

    [LV.7]常住居民III

    发表于 2016-2-2 21:47:23 | 显示全部楼层
    小白一枚,支持楼主
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2016-1-13 12:25
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2016-2-3 09:33:29 | 显示全部楼层
    不负有心人,问题是早晚被解决掉了
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-3-25 14:18
  • 签到天数: 881 天

    [LV.10]以坛为家III

    发表于 2016-2-3 09:50:22 | 显示全部楼层
    很好帖子
    技术讨论帖
    希望大家一起交流、提高~~~
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2016-11-3 14:57
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2016-2-3 11:11:48 | 显示全部楼层
    这种将注册码分段验证的程序大家可以玩一下 ~
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表