这是OD反汇编一个VB6程序得来一段,是从Access数据库查询数据做计算的过程,我看不懂,哪位能帮我写点注释。谢谢!!
00562952 > \8D7D D4 LEA EDI,DWORD PTR SS:[EBP-2C]
00562955 . 8B45 D8 MOV EAX,DWORD PTR SS:[EBP-28]
00562958 . 57 PUSH EDI
00562959 . B9 08000000 MOV ECX,8
0056295E . 83EC 10 SUB ESP,10
00562961 . 8B10 MOV EDX,DWORD PTR DS:[EAX]
00562963 . 8BFC MOV EDI,ESP
00562965 . 8985 7CFFFFFF MOV DWORD PTR SS:[EBP-84],EAX
0056296B . 50 PUSH EAX
0056296C . 890F MOV DWORD PTR DS:[EDI],ECX
0056296E . B9 044F4100 MOV ECX,MainAppP.00414F04 ; MeasValue13
00562973 . 895F 04 MOV DWORD PTR DS:[EDI+4],EBX
00562976 . 894F 08 MOV DWORD PTR DS:[EDI+8],ECX
00562979 . 8B4D B0 MOV ECX,DWORD PTR SS:[EBP-50]
0056297C . 894F 0C MOV DWORD PTR DS:[EDI+C],ECX
0056297F . FF52 30 CALL DWORD PTR DS:[EDX+30]
00562982 . 85C0 TEST EAX,EAX
00562984 . DBE2 FCLEX
00562986 . 7D 15 JGE SHORT MainAppP.0056299D
00562988 . 8B95 7CFFFFFF MOV EDX,DWORD PTR SS:[EBP-84]
0056298E . 6A 30 PUSH 30
00562990 . 68 08354100 PUSH MainAppP.00413508 ; s
00562995 . 52 PUSH EDX
00562996 . 50 PUSH EAX
00562997 . FF15 7C104000 CALL DWORD PTR DS:[<&MSVBVM60.__vbaHresultCheckObj>] ; MSVBVM60.__vbaHresultCheckObj
0056299D > 8B45 D4 MOV EAX,DWORD PTR SS:[EBP-2C]
005629A0 . 8B3D 2C124000 MOV EDI,DWORD PTR DS:[<&MSVBVM60.__vbaVarDup>] ; MSVBVM60.__vbaVarDup
005629A6 . 8D55 94 LEA EDX,DWORD PTR SS:[EBP-6C]
005629A9 . 8D4D C4 LEA ECX,DWORD PTR SS:[EBP-3C]
005629AC . C745 D4 00000000 MOV DWORD PTR SS:[EBP-2C],0
005629B3 . 8945 BC MOV DWORD PTR SS:[EBP-44],EAX
005629B6 . C745 B4 09000000 MOV DWORD PTR SS:[EBP-4C],9
005629BD . C745 9C 20494100 MOV DWORD PTR SS:[EBP-64],MainAppP.00414920 ; 0
005629C4 . C745 94 08000000 MOV DWORD PTR SS:[EBP-6C],8
005629CB . FFD7 CALL EDI ; <&MSVBVM60.__vbaVarDup>
005629CD . 8D45 B4 LEA EAX,DWORD PTR SS:[EBP-4C]
005629D0 . 8D4D C4 LEA ECX,DWORD PTR SS:[EBP-3C]
005629D3 . 50 PUSH EAX
005629D4 . 51 PUSH ECX
005629D5 . E8 A66D0000 CALL MainAppP.00569780 ; (initial cpu selection)
005629DA . 8BD0 MOV EDX,EAX
005629DC . 8D4D E0 LEA ECX,DWORD PTR SS:[EBP-20]
005629DF . FF15 58124000 CALL DWORD PTR DS:[<&MSVBVM60.__vbaStrMove>] ; MSVBVM60.__vbaStrMove
005629E5 . 50 PUSH EAX
005629E6 . FF15 D8114000 CALL DWORD PTR DS:[<&MSVBVM60.__vbaR8Str>] ; MSVBVM60.__vbaR8Str
005629EC . 833D 00205D00 00 CMP DWORD PTR DS:[5D2000],0
005629F3 . 75 08 JNZ SHORT MainAppP.005629FD
005629F5 . DC35 081C4000 FDIV QWORD PTR DS:[401C08]
005629FB . EB 11 JMP SHORT MainAppP.00562A0E
005629FD > FF35 0C1C4000 PUSH DWORD PTR DS:[401C0C] ; msi.3FF29AD4
00562A03 . FF35 081C4000 PUSH DWORD PTR DS:[401C08]
00562A09 . E8 B601EAFF CALL <MainAppP._adj_fdiv_m64> ; JMP 到 MSVBVM60._adj_fdiv_m64
00562A0E > 8D4D E0 LEA ECX,DWORD PTR SS:[EBP-20]
00562A11 . DD1D 70205D00 FSTP QWORD PTR DS:[5D2070]
00562A17 . DFE0 FSTSW AX
00562A19 . A8 0D TEST AL,0D
00562A1B . 0F85 5E240000 JNZ MainAppP.00564E7F
00562A21 . FF15 90124000 CALL DWORD PTR DS:[<&MSVBVM60.__vbaFreeStr>] ; MSVBVM60.__vbaFreeStr
00562A27 . 8D4D D8 LEA ECX,DWORD PTR SS:[EBP-28]
00562A2A . FF15 8C124000 CALL DWORD PTR DS:[<&MSVBVM60.__vbaFreeObj>] ; MSVBVM60.__vbaFreeObj
00562A30 . 8B1D 44104000 MOV EBX,DWORD PTR DS:[<&MSVBVM60.__vbaFreeVarList>] ; MSVBVM60.__vbaFreeVarList
00562A36 . 8D55 B4 LEA EDX,DWORD PTR SS:[EBP-4C]
00562A39 . 8D45 C4 LEA EAX,DWORD PTR SS:[EBP-3C]
00562A3C . 52 PUSH EDX
00562A3D . 50 PUSH EAX
00562A3E . 6A 02 PUSH 2
00562A40 . FFD3 CALL EBX ; <&MSVBVM60.__vbaFreeVarList>
00562A42 . 8B06 MOV EAX,DWORD PTR DS:[ESI]
00562A44 . 83C4 0C ADD ESP,0C
00562A47 . 8D55 D8 LEA EDX,DWORD PTR SS:[EBP-28]
00562A4A . 8B08 MOV ECX,DWORD PTR DS:[EAX]
00562A4C . 52 PUSH EDX
00562A4D . 50 PUSH EAX
00562A4E . FF91 B4000000 CALL DWORD PTR DS:[ECX+B4]
00562A54 . 85C0 TEST EAX,EAX
00562A56 . DBE2 FCLEX
00562A58 . 7D 14 JGE SHORT MainAppP.00562A6E
00562A5A . 8B0E MOV ECX,DWORD PTR DS:[ESI]
00562A5C . 68 B4000000 PUSH 0B4
00562A61 . 68 D4344100 PUSH MainAppP.004134D4 ; 1
00562A66 . 51 PUSH ECX
00562A67 . 50 PUSH EAX
00562A68 . FF15 7C104000 CALL DWORD PTR DS:[<&MSVBVM60.__vbaHresultCheckObj>] ; MSVBVM60.__vbaHresultCheckObj
00562A6E > 8B4D D8 MOV ECX,DWORD PTR SS:[EBP-28]
00562A71 . B8 08000000 MOV EAX,8
00562A76 . 898D 7CFFFFFF MOV DWORD PTR SS:[EBP-84],ECX
00562A7C . 8B11 MOV EDX,DWORD PTR DS:[ECX]
00562A7E . 8D4D D4 LEA ECX,DWORD PTR SS:[EBP-2C]
00562A81 . 51 PUSH ECX
00562A82 . 83EC 10 SUB ESP,10
00562A85 . 8BCC MOV ECX,ESP
00562A87 . 8901 MOV DWORD PTR DS:[ECX],EAX
00562A89 . 8B45 A8 MOV EAX,DWORD PTR SS:[EBP-58]
00562A8C . 8941 04 MOV DWORD PTR DS:[ECX+4],EAX
00562A8F . B8 9C4F4100 MOV EAX,MainAppP.00414F9C ; MeasValue18
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)