虽然只是一段简短的控制台下输出字符,但是却是我花了一下午的时间
艰难地找到的关键算法的位置,真的很艰难。
新人自学真痛苦。。。
00401000 /$ 51 PUSH ECX
00401001 |. 56 PUSH ESI
00401002 |. 68 40804000 PUSH 1.00408040
00401007 |. E8 AB000000 CALL 1.004010B7
0040100C |. 8D4424 08 LEA EAX,DWORD PTR SS:[ESP+8]
00401010 |. 50 PUSH EAX
00401011 |. 68 3C804000 PUSH 1.0040803C ; ASCII "%d"
00401016 |. E8 85000000 CALL 1.004010A0
0040101B |. 8B4424 10 MOV EAX,DWORD PTR SS:[ESP+10]
0040101F |. BE 01000000 MOV ESI,1
00401024 |. 83C4 0C ADD ESP,0C
00401027 |. 3BC6 CMP EAX,ESI
00401029 |. 7C 5C JL SHORT 1.00401087
0040102B |. 53 PUSH EBX
0040102C |. 57 PUSH EDI
0040102D |. BB 04000000 MOV EBX,4
00401032 |> BF 01000000 /MOV EDI,1
00401037 |. 2BC6 |SUB EAX,ESI
00401039 |. 3BC7 |CMP EAX,EDI
0040103B |. 7C 18 |JL SHORT 1.00401055
0040103D |> 68 38804000 |/PUSH 1.00408038
00401042 |. E8 70000000 ||CALL 1.004010B7
00401047 |. 8B4C24 10 ||MOV ECX,DWORD PTR SS:[ESP+10]
0040104B |. 83C4 04 ||ADD ESP,4
0040104E |. 47 ||INC EDI
0040104F |. 2BCE ||SUB ECX,ESI
00401051 |. 3BF9 ||CMP EDI,ECX
00401053 |.^ 7E E8 |JLE SHORT 1.0040103D
00401055 |> 83FB 01 |CMP EBX,1
00401058 |. 7C 12 |JL SHORT 1.0040106C
0040105A |. 8BFB |MOV EDI,EBX
0040105C |> 68 34804000 |/PUSH 1.00408034
00401061 |. E8 51000000 ||CALL 1.004010B7
00401066 |. 83C4 04 ||ADD ESP,4
00401069 |. 4F ||DEC EDI
0040106A |.^ 75 F0 |JNZ SHORT 1.0040105C
0040106C |> 68 30804000 |PUSH 1.00408030
00401071 |. E8 41000000 |CALL 1.004010B7
00401076 |. 8B4424 10 |MOV EAX,DWORD PTR SS:[ESP+10]
0040107A |. 83C4 04 |ADD ESP,4
0040107D |. 46 |INC ESI
0040107E |. 83C3 02 |ADD EBX,2
00401081 |. 3BF0 |CMP ESI,EAX
00401083 |.^ 7E AD JLE SHORT 1.00401032
00401085 |. 5F POP EDI
00401086 |. 5B POP EBX
00401087 |> E8 6A580000 CALL 1.004068F6
0040108C |. 33C0 XOR EAX,EAX
0040108E |. 5E POP ESI
0040108F |. 59 POP ECX
00401090 . C3 RETN