- 积分
- 50
- 实力分
- 点
- 金钱数
- 两
- 技术分
- 分
- 贡献分
- 分
|
发表于 2006-6-30 21:19:45
|
显示全部楼层
原帖由 Xinshou 于 2006-6-30 21:07 发表
你反汇编它,研究一下吧
试过了,但看不懂所以上来提问。
000000: FA 08 F2 03 : jmps 8, loc_0803F2
;------------------------------------------------------------
000004: 00 00 : add r0, r0
000006: DB 00 : rets
;------------------------------------------------------------
000008: E6 F1 68 00 : mov r1, #68h
00000C: 0B D1 : mul r13, r1
00000E: F2 FD 0E FE : mov r13, mem_FE0E
000012: 00 CD : add r12, r13
000014: F0 2C : mov r2, r12
000016: 7C 32 : shr r2, #3
000018: F0 3E : mov r3, r14
00001A: F0 4F : mov r4, r15
00001C: 00 32 : add r3, r2
00001E: DC 44 : extp r4, #1
000020: A9 43 : movb rl2, [r3]
000022: F0 5C : mov r5, r12
000024: BC 25 : ashr r5, #2
000026: 7C D5 : shr r5, #0Dh
000028: 00 5C : add r5, r12
00002A: 66 F5 F8 FF : and r5, #0FFF8h
00002E: 81 50 : neg r5
000030: 00 5C : add r5, r12
000032: E0 7A : mov r10, #7
000034: 20 A5 : sub r10, r5
000036: E0 15 : mov r5, #1
000038: 4C 5A : shl r5, r10
00003A: 71 4A : orb rl2, rl5
00003C: DC 44 : extp r4, #1
00003E: B9 43 : movb [r3], rl2
000040: A8 D0 : mov r13, [r0]
000042: 48 D1 : cmp r13, #1
000044: EA 30 D8 00 : jmpa cc_NZ, loc_0000D8
000048: F0 DC : mov r13, r12
00004A: 28 D1 : sub r13, #1
00004C: F0 2D : mov r2, r13
00004E: 7C 32 : shr r2, #3
000050: F0 3E : mov r3, r14
000052: F0 4F : mov r4, r15
000054: 00 32 : add r3, r2
000056: DC 44 : extp r4, #1
000058: A9 43 : movb rl2, [r3]
00005A: F0 5D : mov r5, r13
00005C: BC 25 : ashr r5, #2
00005E: 7C D5 : shr r5, #0Dh
000060: 00 5D : add r5, r13
000062: 66 F5 F8 FF : and r5, #0FFF8h
000066: 81 50 : neg r5
000068: 00 5D : add r5, r13
00006A: E0 7D : mov r13, #7
00006C: 20 D5 : sub r13, r5
00006E: E0 15 : mov r5, #1
000070: 4C 5D : shl r5, r13
000072: 71 4A : orb rl2, rl5
000074: DC 44 : extp r4, #1
000076: B9 43 : movb [r3], rl2
000078: F0 DC : mov r13, r12
00007A: 06 FD 68 00 : add r13, #68h
00007E: F0 2D : mov r2, r13
000080: 7C 32 : shr r2, #3
000082: F0 3E : mov r3, r14
000084: F0 4F : mov r4, r15
000086: 00 32 : add r3, r2
000088: DC 44 : extp r4, #1
00008A: A9 43 : movb rl2, [r3]
00008C: F0 5D : mov r5, r13
00008E: BC 25 : ashr r5, #2
000090: 7C D5 : shr r5, #0Dh
000092: 00 5D : add r5, r13
000094: 66 F5 F8 FF : and r5, #0FFF8h
000098: 81 50 : neg r5
00009A: 00 5D : add r5, r13
00009C: E0 7D : mov r13, #7
00009E: 20 D5 : sub r13, r5
0000A0: E0 15 : mov r5, #1
0000A2: 4C 5D : shl r5, r13
0000A4: 71 4A : orb rl2, rl5
0000A6: DC 44 : extp r4, #1
0000A8: B9 43 : movb [r3], rl2
0000AA: F0 DC : mov r13, r12
0000AC: 06 FD 67 00 : add r13, #67h
0000B0: F0 CD : mov r12, r13
0000B2: 7C 3C : shr r12, #3
0000B4: 00 EC : add r14, r12
0000B6: DC 4F : extp r15, #1
0000B8: A9 4E : movb rl2, [r14]
0000BA: F0 CD : mov r12, r13
0000BC: BC 2C : ashr r12, #2
0000BE: 7C DC : shr r12, #0Dh
0000C0: 00 CD : add r12, r13
0000C2: 66 FC F8 FF : and r12, #0FFF8h
0000C6: 81 C0 : neg r12
0000C8: 00 CD : add r12, r13
0000CA: E0 7D : mov r13, #7
0000CC: 20 DC : sub r13, r12
0000CE: E0 13 : mov r3, #1
0000D0: 4C 3D : shl r3, r13
0000D2: 71 46 : orb rl2, rl3
0000D4: DC 4F : extp r15, #1
0000D6: B9 4E : movb [r14], rl2
0000D8: DB 00 : loc_0000D8:
0000D8: DB 00 : rets
;------------------------------------------------------------
0000DA: 88 90 : mov [-r0], r9
0000DC: 88 80 : mov [-r0], r8
0000DE: 88 70 : mov [-r0], r7
0000E0: 88 60 : mov [-r0], r6
0000E2: E0 08 : mov r8, #0
0000E4: F0 1E : mov r1, r14
0000E6: 20 1C : sub r1, r12
0000E8: 48 10 : cmp r1, #0
0000EA: DD 04 : jmpr cc_SGE, loc_0000F4
0000EC: 81 10 : neg r1
0000EE: E6 F8 FF FF : mov r8, #0FFFFh
0000F2: 0D 03 : jmpr cc_UC, loc_0000FA
;------------------------------------------------------------
0000F4: 48 10 : loc_0000F4:
0000F4: 48 10 : cmp r1, #0
0000F6: BD 01 : jmpr cc_SLE, loc_0000FA
0000F8: E0 18 : mov r8, #1
0000FA: E0 06 : loc_0000FA:
0000FA: E0 06 : mov r6, #0
0000FC: 20 FD : sub r15, r13
0000FE: F0 9F : mov r9, r15
000100: 48 F0 : cmp r15, #0
000102: DD 04 : jmpr cc_SGE, loc_00010C
000104: 81 F0 : neg r15
000106: E6 F6 FF FF : mov r6, #0FFFFh
00010A: 0D 03 : jmpr cc_UC, loc_000112
;------------------------------------------------------------
00010C: 48 F0 : loc_00010C:
00010C: 48 F0 : cmp r15, #0
00010E: BD 01 : jmpr cc_SLE, loc_000112
000110: E0 16 : mov r6, #1
000112: E0 07 : loc_000112:
000112: E0 07 : mov r7, #0
000114: F0 91 : mov r9, r1
000116: F0 EF : mov r14, r15
000118: 40 9E : cmp r9, r14
00011A: DD 04 : jmpr cc_SGE, loc_000124
00011C: F0 1E : mov r1, r14
00011E: F0 F9 : mov r15, r9
000120: F0 9E : mov r9, r14
000122: E0 17 : mov r7, #1
000124: 5C 1F : loc_000124:
000124: 5C 1F : shl r15, #1
000126: F0 2F : mov r2, r15
000128: F0 EF : mov r14, r15
00012A: 20 E1 : sub r14, r1
00012C: 5C 11 : shl r1, #1
00012E: F0 21 : mov r2, r1
000130: 0D 0E : jmpr cc_UC, loc_00014E
;------------------------------------------------------------
000132: 48 E0 : loc_000132:
000132: 48 E0 : cmp r14, #0
000134: CD 06 : jmpr cc_SLT, loc_000142
000136: 48 70 : cmp r7, #0
000138: 2D 02 : jmpr cc_Z, loc_00013E
00013A: 00 C8 : add r12, r8
00013C: 0D 01 : jmpr cc_UC, loc_000140
;------------------------------------------------------------
00013E: 00 D6 : loc_00013E:
00013E: 00 D6 : add r13, r6
000140: 20 E1 : loc_000140:
000140: 20 E1 : sub r14, r1
000142: 48 70 : loc_000142:
000142: 48 70 : cmp r7, #0
000144: 2D 02 : jmpr cc_Z, loc_00014A
000146: 00 D6 : add r13, r6
000148: 0D 01 : jmpr cc_UC, loc_00014C
;------------------------------------------------------------
00014A: 00 C8 : loc_00014A:
00014A: 00 C8 : add r12, r8
00014C: 00 EF : loc_00014C:
00014C: 00 EF : add r14, r15
00014E: 88 10 : loc_00014E:
00014E: 88 10 : mov [-r0], r1
000150: 88 D0 : mov [-r0], r13
000152: 88 C0 : mov [-r0], r12
000154: 88 F0 : mov [-r0], r15
000156: 88 E0 : mov [-r0], r14
000158: D4 20 16 00 : mov r2, [r0+#16h]
00015C: 88 20 : mov [-r0], r2
00015E: D4 E0 14 00 : mov r14, [r0+#14h]
000162: D4 F0 16 00 : mov r15, [r0+#16h]
000166: DA 08 08 00 : calls 8, loc_080008
00016A: 08 02 : add r0, #2
00016C: 98 E0 : mov r14, [r0+]
00016E: 98 F0 : mov r15, [r0+]
000170: 98 C0 : mov r12, [r0+]
000172: 98 D0 : mov r13, [r0+]
000174: 98 10 : mov r1, [r0+]
000176: A0 19 : cmpd1 r9, #1
000178: DD DC : jmpr cc_SGE, loc_000132
00017A: 98 60 : mov r6, [r0+]
00017C: 98 70 : mov r7, [r0+]
00017E: 98 80 : mov r8, [r0+]
000180: 98 90 : mov r9, [r0+]
000182: DB 00 : rets
;------------------------------------------------------------
000184: 0D 02 : jmpr cc_UC, loc_00018A
;------------------------------------------------------------
000186: 26 FC 3C 00 : loc_000186:
000186: 26 FC 3C 00 : sub r12, #3Ch
00018A: 46 FC 3C 00 : loc_00018A:
00018A: 46 FC 3C 00 : cmp r12, #3Ch
00018E: AD FB : jmpr cc_SGT, loc_000186
000190: 0D 02 : jmpr cc_UC, loc_000196
;------------------------------------------------------------
000192: 06 FC 3C 00 : loc_000192:
000192: 06 FC 3C 00 : add r12, #3Ch
000196: 48 C0 : loc_000196:
000196: 48 C0 : cmp r12, #0
000198: CD FC : jmpr cc_SLT, loc_000192
00019A: 46 FC 0F 00 : cmp r12, #0Fh
00019E: AD 06 : jmpr cc_SGT, loc_0001AC
0001A0: 5C 1C : shl r12, #1
0001A2: D7 40 20 00 : extp #20h, #1
0001A6: D4 4C 22 08 : mov r4, [r12+#822h]
0001AA: DB 00 : rets
;------------------------------------------------------------
0001AC: 46 FC 0F 00 : loc_0001AC:
0001AC: 46 FC 0F 00 : cmp r12, #0Fh
0001B0: BD 09 : jmpr cc_SLE, loc_0001C4
0001B2: 46 FC 1E 00 : cmp r12, #1Eh
0001B6: AD 06 : jmpr cc_SGT, loc_0001C4
0001B8: F0 DC : mov r13, r12
0001BA: E6 FC 1E 00 : mov r12, #1Eh
0001BE: 20 CD : sub r12, r13
0001C0: FA 08 84 01 : jmps 8, loc_080184
;------------------------------------------------------------
0001C4: 26 FC 1E 00 : loc_0001C4:
0001C4: 26 FC 1E 00 : sub r12, #1Eh
0001C8: DA 08 84 01 : calls 8, loc_080184
0001CC: 81 40 : neg r4
0001CE: DB 00 : rets
;------------------------------------------------------------
0001D0: 06 FC 0F 00 : add r12, #0Fh
0001D4: FA 08 84 01 : jmps 8, loc_080184
;------------------------------------------------------------
0001D8: 88 90 : mov [-r0], r9
0001DA: 88 80 : mov [-r0], r8
0001DC: 28 06 : sub r0, #6
0001DE: E6 FC 10 04 : mov r12, #410h
0001E2: 88 C0 : mov [-r0], r12
0001E4: E6 FC 0C 16 : mov r12, #160Ch
0001E8: E0 2D : mov r13, #2
0001EA: E6 FE 12 04 : mov r14, #412h
0001EE: E6 FF 20 00 : mov r15, #20h
0001F2: DA C7 DC 83 : calls 0C7h, loc_C783DC
0001F6: 08 02 : add r0, #2
0001F8: F0 C0 : mov r12, r0
0001FA: 66 FC FF 3F : and r12, #3FFFh
0001FE: F2 FD 02 FE : mov r13, DPP1
000202: DA A4 F8 F6 : calls 0A4h, loc_A4F6F8
000206: D4 90 04 00 : mov r9, [r0+#4]
00020A: E0 F8 : mov r8, #0Fh
00020C: 20 89 : sub r8, r9
00020E: F0 C8 : mov r12, r8
000210: DA 08 D0 01 : calls 8, loc_0801D0
000214: E6 FC 1D 00 : mov r12, #1Dh
000218: 0B 4C : mul r4, r12
00021A: F2 F9 0E FE : mov r9, mem_FE0E
00021E: F0 D9 : mov r13, r9
000220: BC 99 : ashr r9, #9
000222: 7C 69 : shr r9, #6
000224: 00 9D : add r9, r13
000226: BC A9 : ashr r9, #0Ah
000228: 06 F9 32 00 : add r9, #32h
00022C: F0 C8 : mov r12, r8
00022E: DA 08 84 01 : calls 8, loc_080184
000232: E6 FC E3 FF : mov r12, #0FFE3h
000236: 0B 4C : mul r4, r12
000238: F2 FD 0E FE : mov r13, mem_FE0E
00023C: F0 ED : mov r14, r13
00023E: BC 9E : ashr r14, #9
000240: 7C 6E : shr r14, #6
000242: 00 ED : add r14, r13
000244: BC AE : ashr r14, #0Ah
000246: 06 FE 27 00 : add r14, #27h
00024A: F0 8E : mov r8, r14
00024C: E0 0E : mov r14, #0
00024E: 88 E0 : mov [-r0], r14
000250: E6 FF 0C 16 : mov r15, #160Ch
000254: E0 21 : mov r1, #2
000256: 88 10 : mov [-r0], r1
000258: 88 F0 : mov [-r0], r15
00025A: E6 FC 32 00 : mov r12, #32h
00025E: E6 FD 27 00 : mov r13, #27h
000262: F0 E9 : mov r14, r9
000264: F0 F8 : mov r15, r8
000266: DA 08 DA 00 : calls 8, loc_0800DA
00026A: 08 06 : add r0, #6
00026C: D4 90 02 00 : mov r9, [r0+#2]
000270: E0 F8 : mov r8, #0Fh
000272: 20 89 : sub r8, r9
000274: F0 C8 : mov r12, r8
000276: DA 08 D0 01 : calls 8, loc_0801D0
00027A: E6 FC 1D 00 : mov r12, #1Dh
00027E: 0B 4C : mul r4, r12
000280: F2 F9 0E FE : mov r9, mem_FE0E
000284: F0 D9 : mov r13, r9
000286: BC 99 : ashr r9, #9
000288: 7C 69 : shr r9, #6
00028A: 00 9D : add r9, r13
00028C: BC A9 : ashr r9, #0Ah
00028E: 06 F9 32 00 : add r9, #32h
000292: F0 C8 : mov r12, r8
000294: DA 08 84 01 : calls 8, loc_080184
000298: E6 FC E3 FF : mov r12, #0FFE3h
00029C: 0B 4C : mul r4, r12
00029E: F2 FD 0E FE : mov r13, mem_FE0E
0002A2: F0 ED : mov r14, r13
0002A4: BC 9E : ashr r14, #9
0002A6: 7C 6E : shr r14, #6
0002A8: 00 ED : add r14, r13
0002AA: BC AE : ashr r14, #0Ah
0002AC: 06 FE 27 00 : add r14, #27h
0002B0: F0 8E : mov r8, r14
0002B2: E0 0E : mov r14, #0
0002B4: 88 E0 : mov [-r0], r14
0002B6: E6 FF 0C 16 : mov r15, #160Ch
0002BA: E0 21 : mov r1, #2
0002BC: 88 10 : mov [-r0], r1
0002BE: 88 F0 : mov [-r0], r15
0002C0: E6 FC 32 00 : mov r12, #32h
0002C4: E6 FD 27 00 : mov r13, #27h
0002C8: F0 E9 : mov r14, r9
0002CA: F0 F8 : mov r15, r8
0002CC: DA 08 DA 00 : calls 8, loc_0800DA
0002D0: 08 06 : add r0, #6
0002D2: A8 90 : mov r9, [r0]
0002D4: E0 CC : mov r12, #0Ch
0002D6: F6 F9 0E FE : mov mem_FE0E, r9
0002DA: 5B CC : divu r12
0002DC: F2 F9 0C FE : mov r9, mem_FE0C
0002E0: 81 90 : neg r9
0002E2: F0 89 : mov r8, r9
0002E4: 5C 48 : shl r8, #4
0002E6: 20 89 : sub r8, r9
0002E8: 5C 28 : shl r8, #2
0002EA: F6 F8 0E FE : mov mem_FE0E, r8
0002EE: 5B CC : divu r12
0002F0: F2 F8 0E FE : mov r8, mem_FE0E
0002F4: 06 F8 0F 00 : add r8, #0Fh
0002F8: D4 90 02 00 : mov r9, [r0+#2]
0002FC: F0 D9 : mov r13, r9
0002FE: 5C 2D : shl r13, #2
000300: 00 D9 : add r13, r9
000302: E6 FE 3C 00 : mov r14, #3Ch
000306: F6 FD 0E FE : mov mem_FE0E, r13
00030A: 5B EE : divu r14
00030C: F2 FD 0E FE : mov r13, mem_FE0E
000310: 20 8D : sub r8, r13
000312: F0 C8 : mov r12, r8
000314: DA 08 D0 01 : calls 8, loc_0801D0
000318: E6 FC 1D 00 : mov r12, #1Dh
00031C: 0B 4C : mul r4, r12
00031E: E6 FD 00 06 : mov r13, #600h
000322: 4B DD : div r13
000324: F2 F9 0E FE : mov r9, mem_FE0E
000328: 06 F9 32 00 : add r9, #32h
00032C: F0 C8 : mov r12, r8
00032E: DA 08 84 01 : calls 8, loc_080184
000332: E6 FC E3 FF : mov r12, #0FFE3h
000336: 0B 4C : mul r4, r12
000338: E6 FE 00 06 : mov r14, #600h
00033C: 4B EE : div r14
00033E: F2 FD 0E FE : mov r13, mem_FE0E
000342: 06 FD 27 00 : add r13, #27h
000346: F0 8D : mov r8, r13
000348: E0 1D : mov r13, #1
00034A: 88 D0 : mov [-r0], r13
00034C: E6 FF 0C 16 : mov r15, #160Ch
000350: E0 21 : mov r1, #2
000352: 88 10 : mov [-r0], r1
000354: 88 F0 : mov [-r0], r15
000356: E6 FC 32 00 : mov r12, #32h
00035A: E6 FD 27 00 : mov r13, #27h
00035E: F0 E9 : mov r14, r9
000360: F0 F8 : mov r15, r8
000362: DA 08 DA 00 : calls 8, loc_0800DA
000366: 08 06 : add r0, #6
000368: E0 0C : mov r12, #0
00036A: E0 0D : mov r13, #0
00036C: E6 FE 65 00 : mov r14, #65h
000370: E6 FF 50 00 : mov r15, #50h
000374: DA B3 EA 77 : calls 0B3h, loc_B377EA
000378: D7 40 20 00 : extp #20h, #1
00037C: F2 F8 04 00 : mov r8, mem_80004 ; (0020:0004)
000380: 2D 02 : jmpr cc_Z, loc_000386
000382: DA B4 1E D8 : calls 0B4h, loc_B4D81E
000386: 08 06 : loc_000386:
000386: 08 06 : add r0, #6
000388: 98 80 : mov r8, [r0+]
00038A: 98 90 : mov r9, [r0+]
00038C: DB 00 : rets
;------------------------------------------------------------
00038E: DA 08 D8 01 : calls 8, loc_0801D8
000392: E6 FC 64 00 : mov r12, #64h
000396: E0 0D : mov r13, #0
000398: E6 FE D8 01 : mov r14, #1D8h
00039C: E6 FF 08 00 : mov r15, #8
0003A0: DA D0 84 A1 : calls 0D0h, loc_D0A184
0003A4: DA F3 90 E9 : calls 0F3h, loc_F3E990
0003A8: FA F3 A4 E8 : jmps 0F3h, loc_F3E8A4
;------------------------------------------------------------
0003AC: F0 CE : mov r12, r14
0003AE: F0 DF : mov r13, r15
0003B0: 08 C4 : add r12, #4
0003B2: DC 4D : extp r13, #1
0003B4: A8 1C : mov r1, [r12]
0003B6: 46 F1 EB 00 : cmp r1, #0EBh
0003BA: 3D 0B : jmpr cc_NZ, loc_0003D2
0003BC: DC 4F : extp r15, #1
0003BE: D4 1E 06 00 : mov r1, [r14+#6]
0003C2: 46 F1 23 00 : cmp r1, #23h
0003C6: 3D 05 : jmpr cc_NZ, loc_0003D2
0003C8: DA D0 78 A1 : calls 0D0h, loc_D0A178
0003CC: E0 AC : mov r12, #0Ah
0003CE: FA D0 7A A4 : jmps 0D0h, loc_D0A47A
;------------------------------------------------------------
0003D2: DC 4D : loc_0003D2:
0003D2: DC 4D : extp r13, #1
0003D4: A8 CC : mov r12, [r12]
0003D6: 46 FC E9 00 : cmp r12, #0E9h
0003DA: 3D 0A : jmpr cc_NZ, loc_0003F0
0003DC: DC 4F : extp r15, #1
0003DE: D4 CE 06 00 : mov r12, [r14+#6]
0003E2: 2D 06 : jmpr cc_Z, loc_0003F0
0003E4: E6 FC FF FF : mov r12, #0FFFFh
0003E8: D7 40 20 00 : extp #20h, #1
0003EC: 54 FC 04 00 : xor mem_80004, r12 ; (0020:0004)
0003F0: DB 00 : loc_0003F0:
0003F0: DB 00 : rets
;------------------------------------------------------------
0003F2: 26 F0 1E 00 : sub r0, #1Eh
0003F6: E6 FC 42 08 : mov r12, #842h
0003FA: E6 FD 20 00 : loc_0003FA:
0003FA: E6 FD 20 00 : mov r13, #20h
0003FE: F0 E0 : mov r14, r0
000400: 66 FE FF 3F : and r14, #3FFFh
000404: F2 FF 02 FE : mov r15, DPP1
000408: DA D0 58 A2 : calls 0D0h, loc_D0A258
00040C: 06 F0 1E 00 : add r0, #1Eh
000410: DB 00 : rets
;------------------------------------------------------------ |
评分
-
查看全部评分
|