最初由 我要破解 发布
Baby2008,谁否能跟我注释说明一下,如果有人提示一下,我就好理解了,求求高手们了
这个循环如下:
0046BE3C 8B4D EC mov ecx,dword ptr ss:[ebp-14]
0046BE3F BA 99010000 mov edx,199
........
0046BDD9 |. /0F82 4A020000 JB 3D图表分.0046C029
0046BDDF |. |C745 F0 0A000>MOV [LOCAL.4],0A ; 常数A
0046BDE6 |. |837D F0 08 CMP [LOCAL.4],8
0046BDEA |. |7D 0B JGE SHORT 3D图表分.0046BDF7
0046BDEC |. |8B45 F8 MOV EAX,[LOCAL.2]
0046BDEF |. |C600 00 MOV BYTE PTR DS:[EAX],0
0046BDF2 |. |E9 32020000 JMP 3D图表分.0046C029
0046BDF7 |> |33C0 XOR EAX,EAX
0046BDF9 |. |8A45 CB MOV AL,BYTE PTR SS:[EBP-35]
0046BDFC |. |8945 F4 MOV [LOCAL.3],EAX ; 机器码长度
0046BDFF |. |8D8D C4FEFFFF LEA ECX,[LOCAL.79]
0046BE05 |. |BA 10000000 MOV EDX,10
0046BE0A |. |B0 30 MOV AL,30
0046BE0C |. |E8 B781F9FF CALL <3D图表分.@System@@LStrOfChar$qqrv (0007: C3)>
0046BE11 |. |8B95 C4FEFFFF MOV EDX,[LOCAL.79]
0046BE17 |. |8D85 C8FEFFFF LEA EAX,[LOCAL.78]
0046BE1D |. |B9 FF000000 MOV ECX,0FF
0046BE22 |. |E8 2D7EF9FF CALL <3D图表分.@System@@LStrToString$qqrv>
0046BE27 |. |8D95 C8FEFFFF LEA EDX,[LOCAL.78]
0046BE2D |. |8B45 F8 MOV EAX,[LOCAL.2]
0046BE30 |. |B1 10 MOV CL,10
0046BE32 |. |E8 096BF9FF CALL <3D图表分.@System@@PStrNCpy$qqrv>
0046BE37 |. |33C0 XOR EAX,EAX ; 循环变量i=0
0046BE39 |. |8945 EC MOV [LOCAL.5],EAX
0046BE3C |> |8B4D EC /MOV ECX,[LOCAL.5] ; Local5为循环变量
0046BE3F |. |BA 99010000 |MOV EDX,199 ; 199
0046BE44 |. |8B45 F4 |MOV EAX,[LOCAL.3] ; 机器码长度
0046BE47 |. |E8 0CF4FFFF |CALL 3D图表分.0046B258 ; (199+循环变量) MOD 机器码长度,记为J
0046BE4C |. |8A4405 CB |MOV AL,BYTE PTR SS:[EBP+EAX-35] ; 取机器码[J]字符
0046BE50 |. |8845 E7 |MOV BYTE PTR SS:[EBP-19],AL ; 保存机器码[J]->M1
0046BE53 |. |8B4D EC |MOV ECX,[LOCAL.5]
0046BE56 |. |BA E1000000 |MOV EDX,0E1
0046BE5B |. |8B45 F4 |MOV EAX,[LOCAL.3]
0046BE5E |. |E8 F5F3FFFF |CALL 3D图表分.0046B258 ; (E1+循环变量) MOD 机器码长度,记为J
0046BE63 |. |8A4405 CB |MOV AL,BYTE PTR SS:[EBP+EAX-35]
0046BE67 |. |8845 E6 |MOV BYTE PTR SS:[EBP-1A],AL ; 保存机器码[J]->M2
0046BE6A |. |8B4D EC |MOV ECX,[LOCAL.5]
0046BE6D |. |BA 1B000000 |MOV EDX,1B
0046BE72 |. |8B45 F4 |MOV EAX,[LOCAL.3]
0046BE75 |. |E8 DEF3FFFF |CALL 3D图表分.0046B258 ; (1B+循环变量) MOD 机器码长度,记为J
0046BE7A |. |8A4405 CB |MOV AL,BYTE PTR SS:[EBP+EAX-35]
0046BE7E |. |8845 E5 |MOV BYTE PTR SS:[EBP-1B],AL ; 保存机器码[J]->M3
0046BE81 |. |33C0 |XOR EAX,EAX
0046BE83 |. |8A45 E7 |MOV AL,BYTE PTR SS:[EBP-19] ; 取M1
0046BE86 |. |8B55 FC |MOV EDX,[LOCAL.1]
0046BE89 |. |8A4402 2F |MOV AL,BYTE PTR DS:[EDX+EAX+2F] ; 查表 “x老夫聊发.....”,表记为Table1
0046BE8D |. |8845 E4 |MOV BYTE PTR SS:[EBP-1C],AL ; 保存Table1[M1]
0046BE90 |. |33C0 |XOR EAX,EAX
0046BE92 |. |8A45 E6 |MOV AL,BYTE PTR SS:[EBP-1A] ; 取M2
0046BE95 |. |8B55 FC |MOV EDX,[LOCAL.1]
0046BE98 |. |8A4402 2F |MOV AL,BYTE PTR DS:[EDX+EAX+2F] ; 查表Table1
0046BE9C |. |8845 E3 |MOV BYTE PTR SS:[EBP-1D],AL ; 保存Table[M2]
0046BE9F |. |33C0 |XOR EAX,EAX
0046BEA1 |. |8A45 E5 |MOV AL,BYTE PTR SS:[EBP-1B] ; 取M3
0046BEA4 |. |8B55 FC |MOV EDX,[LOCAL.1]
0046BEA7 |. |8A4402 2F |MOV AL,BYTE PTR DS:[EDX+EAX+2F] ; 查表Table1
0046BEAB |. |8845 E2 |MOV BYTE PTR SS:[EBP-1E],AL ; 保存Table1[M3]
0046BEAE |. |8B4D EC |MOV ECX,[LOCAL.5]
0046BEB1 |. |BA BB000000 |MOV EDX,0BB
0046BEB6 |. |8B45 F0 |MOV EAX,[LOCAL.4] ; LOCAL5为常数0xA,在地址0046BDDF赋值
0046BEB9 |. |E8 9AF3FFFF |CALL 3D图表分.0046B258 ; (BB+循环变量) MOD 0xA,记为K
0046BEBE |. |BA 60C04600 |MOV EDX,3D图表分.0046C060 ; 表2,“3d图表分析”,记为Table2
0046BEC3 |. |8A4402 FF |MOV AL,BYTE PTR DS:[EDX+EAX-1] ; 查表Table2
0046BEC7 |. |8845 E1 |MOV BYTE PTR SS:[EBP-1F],AL ; 保存Table2[K]
0046BECA |. |8B4D EC |MOV ECX,[LOCAL.5]
0046BECD |. |BA 15000000 |MOV EDX,15
0046BED2 |. |8B45 F0 |MOV EAX,[LOCAL.4]
0046BED5 |. |E8 7EF3FFFF |CALL 3D图表分.0046B258 ; (15+循环变量) MOD 0xA,记为K
0046BEDA |. |BA 60C04600 |MOV EDX,3D图表分.0046C060 ; 表Table2
0046BEDF |. |8A4402 FF |MOV AL,BYTE PTR DS:[EDX+EAX-1] ; 查表Table2
0046BEE3 |. |8845 E0 |MOV BYTE PTR SS:[EBP-20],AL ; 保存Table2[K]
0046BEE6 |. |8B4D EC |MOV ECX,[LOCAL.5] ; 循环变量
0046BEE9 |. |BA 86080000 |MOV EDX,886
0046BEEE |. |8B45 F4 |MOV EAX,[LOCAL.3] ; 机器码长度
0046BEF1 |. |E8 62F3FFFF |CALL 3D图表分.0046B258 ; (886+循环变量) MOD 机器码长度,记为J
0046BEF6 |. |8A4405 CB |MOV AL,BYTE PTR SS:[EBP+EAX-35] ; 查机器码[J]
0046BEFA |. |8845 DF |MOV BYTE PTR SS:[EBP-21],AL ; 保存机器码[J],记为M
0046BEFD |. |8B4D EC |MOV ECX,[LOCAL.5] ; 循环变量
0046BF00 |. |BA C0000000 |MOV EDX,0C0
0046BF05 |. |8B45 F0 |MOV EAX,[LOCAL.4] ; 常数0xA
0046BF08 |. |E8 4BF3FFFF |CALL 3D图表分.0046B258 ; (C0+循环变量) MOD 0xA,记为K
0046BF0D |. |BA 60C04600 |MOV EDX,3D图表分.0046C060 ; 表Table2
0046BF12 |. |8A4402 FF |MOV AL,BYTE PTR DS:[EDX+EAX-1] ; 查表Table2
0046BF16 |. |8845 DE |MOV BYTE PTR SS:[EBP-22],AL ; 保存Table2[K],记为T1
0046BF19 |. |8B4D EC |MOV ECX,[LOCAL.5] ; 循环变量
0046BF1C |. |BA 44010000 |MOV EDX,144
0046BF21 |. |8B45 F0 |MOV EAX,[LOCAL.4] ; 常数0xA
0046BF24 |. |E8 2FF3FFFF |CALL 3D图表分.0046B258 ; (144+循环变量) MOD 0xA,记为K
0046BF29 |. |BA 60C04600 |MOV EDX,3D图表分.0046C060 ; 表Table2
0046BF2E |. |8A4402 FF |MOV AL,BYTE PTR DS:[EDX+EAX-1] ; 查表Table2
0046BF32 |. |8845 DD |MOV BYTE PTR SS:[EBP-23],AL ; 保存Table2[K],记为T2
0046BF35 |. |33C0 |XOR EAX,EAX
0046BF37 |. |8A45 DF |MOV AL,BYTE PTR SS:[EBP-21] ; 取出M
0046BF3A |. |33D2 |XOR EDX,EDX
0046BF3C |. |8A55 DE |MOV DL,BYTE PTR SS:[EBP-22] ; 取出T1
0046BF3F |. |03C2 |ADD EAX,EDX ; M+T1
0046BF41 |. |25 FF000000 |AND EAX,0FF ; (M+T1) And FF
0046BF46 |. |8B55 FC |MOV EDX,[LOCAL.1]
0046BF49 |. |8A4402 2F |MOV AL,BYTE PTR DS:[EDX+EAX+2F] ; 查表Table1
0046BF4D |. |8845 DC |MOV BYTE PTR SS:[EBP-24],AL ; 保存Table1[(M+T1) And FF]
0046BF50 |. |33C0 |XOR EAX,EAX
0046BF52 |. |8A45 E1 |MOV AL,BYTE PTR SS:[EBP-1F]
0046BF55 |. |33D2 |XOR EDX,EDX
0046BF57 |. |8A55 E1 |MOV DL,BYTE PTR SS:[EBP-1F]
0046BF5A |. |F7EA |IMUL EDX
0046BF5C |. |33D2 |XOR EDX,EDX
0046BF5E |. |8A55 E4 |MOV DL,BYTE PTR SS:[EBP-1C]
0046BF61 |. |F7EA |IMUL EDX
0046BF63 |. |33D2 |XOR EDX,EDX
0046BF65 |. |8A55 E3 |MOV DL,BYTE PTR SS:[EBP-1D]
0046BF68 |. |33C9 |XOR ECX,ECX
0046BF6A |. |8A4D E0 |MOV CL,BYTE PTR SS:[EBP-20]
0046BF6D |. |0FAFD1 |IMUL EDX,ECX
0046BF70 |. |03C2 |ADD EAX,EDX
0046BF72 |. |33D2 |XOR EDX,EDX
0046BF74 |. |8A55 E2 |MOV DL,BYTE PTR SS:[EBP-1E]
0046BF77 |. |03C2 |ADD EAX,EDX
0046BF79 |. |25 FF000000 |AND EAX,0FF
0046BF7E |. |8945 E8 |MOV [LOCAL.6],EAX
0046BF81 |. |33C0 |XOR EAX,EAX
0046BF83 |. |8A45 DD |MOV AL,BYTE PTR SS:[EBP-23]
0046BF86 |. |F76D E8 |IMUL [LOCAL.6]
0046BF89 |. |33D2 |XOR EDX,EDX
0046BF8B |. |8A55 DC |MOV DL,BYTE PTR SS:[EBP-24]
0046BF8E |. |03C2 |ADD EAX,EDX
0046BF90 |. |B9 0A000000 |MOV ECX,0A
0046BF95 |. |99 |CDQ
0046BF96 |. |F7F9 |IDIV ECX
0046BF98 |. |8955 E8 |MOV [LOCAL.6],EDX
0046BF9B |. |8D95 C0FEFFFF |LEA EDX,[LOCAL.80]
0046BFA1 |. |8B45 E8 |MOV EAX,[LOCAL.6]
0046BFA4 |. |E8 DFBDF9FF |CALL <3D图表分.@Sysutils@IntToStr$qqri>
0046BFA9 |. |8B85 C0FEFFFF |MOV EAX,[LOCAL.80]
0046BFAF |. |8A00 |MOV AL,BYTE PTR DS:[EAX]
0046BFB1 |. |8B55 F8 |MOV EDX,[LOCAL.2]
0046BFB4 |. |8B4D EC |MOV ECX,[LOCAL.5]
0046BFB7 |. |88440A 01 |MOV BYTE PTR DS:[EDX+ECX+1],AL
0046BFBB |. |FF45 EC |INC [LOCAL.5]
0046BFBE |. |837D EC 10 |CMP [LOCAL.5],10
0046BFC2 |.^|0F85 74FEFFFF \JNZ 3D图表分.0046BE3C
变量太多,下面几行懒得打字了,将就着参考
BTW:老兄别指名道姓啊,否则很多兄弟想帮你都懒得帮了