返回列表 发帖

【原创】恐龙危机压缩反编译源码(dc)

没什么好说的,普通的lzss压缩
0压缩,1不压缩
压缩符2字节,
回退量=(byte2&f)<<8+byte1;
复制数=(byte2>>4)+2;
  1. ROM:8C0282DC E6 2F                       mov.l   r14, @-r15
  2. ROM:8C0282DE D6 2F                       mov.l   r13, @-r15
  3. ROM:8C0282E0 C6 2F                       mov.l   r12, @-r15
  4. ROM:8C0282E2 B6 2F                       mov.l   r11, @-r15
  5. ROM:8C0282E4 A6 2F                       mov.l   r10, @-r15
  6. ROM:8C0282E6 96 2F                       mov.l   r9, @-r15
  7. ROM:8C0282E8 86 2F                       mov.l   r8, @-r15
  8. ROM:8C0282EA F8 7F                       add     #-8, r15
  9. ROM:8C0282EC 3F D5                       mov.l   @(h'FC,pc), r5 ; [8C0283EC] = unk_8C2C5F80
  10. ROM:8C0282EE 77 96                       mov.w   @(h'EE,pc), r6 ; [8C0283E0] = h'800
  11. ROM:8C0282F0 55 53                       mov.l   @(h'14,r5), r3
  12. ROM:8C0282F2 31 52                       mov.l   @(4,r3), r2
  13. ROM:8C0282F4 67 32                       cmp/gt  r6, r2
  14. ROM:8C0282F6 01 8B                       bf      loc_8C0282FC
  15. ROM:8C0282F8 02 A0                       bra     loc_8C028300
  16. ROM:8C0282FA 63 64                       mov     r6, r4
  17. ROM:8C0282FC             ; ---------------------------------------------------------------------------
  18. ROM:8C0282FC
  19. ROM:8C0282FC             loc_8C0282FC:                           ; CODE XREF: ROM:8C0282F6j
  20. ROM:8C0282FC 55 54                       mov.l   @(h'14,r5), r4
  21. ROM:8C0282FE 41 54                       mov.l   @(4,r4), r4
  22. ROM:8C028300
  23. ROM:8C028300             loc_8C028300:                           ; CODE XREF: ROM:8C0282F8j
  24. ROM:8C028300 53 69                       mov     r5, r9
  25. ROM:8C028302 3B DE                       mov.l   @(h'EC,pc), r14 ; [8C0283F0] = unk_8C2C61FC
  26. ROM:8C028304 01 EC                       mov     #1, r12
  27. ROM:8C028306 E1 5E                       mov.l   @(4,r14), r14   ; r14压缩地址
  28. ROM:8C028308 92 2F                       mov.l   r9, @r15
  29. ROM:8C02830A 95 59                       mov.l   @(h'14,r9), r9
  30. ROM:8C02830C 9C 84                       mov.b   @(h'C,r9), r0
  31. ROM:8C02830E 92 57                       mov.l   @(8,r9), r7
  32. ROM:8C028310 0C 6B                       extu.b  r0, r11
  33. ROM:8C028312 9D 84                       mov.b   @(h'D,r9), r0
  34. ROM:8C028314 0C 66                       extu.b  r0, r6
  35. ROM:8C028316 9F 84                       mov.b   @(h'F,r9), r0
  36. ROM:8C028318 0C 6A                       extu.b  r0, r10
  37. ROM:8C02831A 9E 84                       mov.b   @(h'E,r9), r0
  38. ROM:8C02831C 0C 60                       extu.b  r0, r0
  39. ROM:8C02831E 01 88                       cmp/eq  #1, r0
  40. ROM:8C028320 0F 8D                       bt/s    loc_8C028342
  41. ROM:8C028322 00 ED                       mov     #0, r13
  42. ROM:8C028324 55 50                       mov.l   @(h'14,r5), r0
  43. ROM:8C028326 0E 84                       mov.b   @(h'E,r0), r0
  44. ROM:8C028328 0C 60                       extu.b  r0, r0
  45. ROM:8C02832A 02 88                       cmp/eq  #2, r0
  46. ROM:8C02832C 1D 89                       bt      loc_8C02836A
  47. ROM:8C02832E
  48. ROM:8C02832E             loc_8C02832E:                           ; CODE XREF: ROM:8C028356j
  49. ROM:8C02832E                                                     ; ROM:8C0283A6j
  50. ROM:8C02832E B8 2B                       tst     r11, r11
  51. ROM:8C028330 07 8B                       bf      loc_8C028342
  52. ROM:8C028332 E4 66                       mov.b   @r14+, r6
  53. ROM:8C028334 10 44                       dt      r4
  54. ROM:8C028336 6C 66                       extu.b  r6, r6
  55. ROM:8C028338 03 8F                       bf/s    loc_8C028342
  56. ROM:8C02833A 08 EB                       mov     #8, r11
  57. ROM:8C02833C 55 52                       mov.l   @(h'14,r5), r2
  58. ROM:8C02833E 35 A0                       bra     loc_8C0283AC
  59. ROM:8C028340 C3 60                       mov     r12, r0
  60. ROM:8C028342             ; ---------------------------------------------------------------------------
  61. ROM:8C028342
  62. ROM:8C028342             loc_8C028342:                           ; CODE XREF: ROM:8C028320j
  63. ROM:8C028342                                                     ; ROM:8C028330j ...
  64. ROM:8C028342 63 62                       mov     r6, r2
  65. ROM:8C028344 C8 22                       tst     r12, r2
  66. ROM:8C028346 08 8D                       bt/s    loc_8C02835A
  67. ROM:8C028348 FF 7B                       add     #-1, r11
  68. ROM:8C02834A E4 63                       mov.b   @r14+, r3
  69. ROM:8C02834C 01 46                       shlr    r6
  70. ROM:8C02834E 10 44                       dt      r4
  71. ROM:8C028350 30 27                       mov.b   r3, @r7
  72. ROM:8C028352 29 8D                       bt/s    loc_8C0283A8
  73. ROM:8C028354 01 77                       add     #1, r7
  74. ROM:8C028356 EA AF                       bra     loc_8C02832E
  75. ROM:8C028358 09 00                       nop
  76. ROM:8C02835A             ; ---------------------------------------------------------------------------
  77. ROM:8C02835A
  78. ROM:8C02835A             loc_8C02835A:                           ; CODE XREF: ROM:8C028346j
  79. ROM:8C02835A E4 6A                       mov.b   @r14+, r10
  80. ROM:8C02835C 10 44                       dt      r4
  81. ROM:8C02835E 04 8F                       bf/s    loc_8C02836A
  82. ROM:8C028360 AC 6A                       extu.b  r10, r10
  83. ROM:8C028362 55 52                       mov.l   @(h'14,r5), r2
  84. ROM:8C028364 02 E4                       mov     #2, r4
  85. ROM:8C028366 21 A0                       bra     loc_8C0283AC
  86. ROM:8C028368 43 60                       mov     r4, r0
  87. ROM:8C02836A             ; ---------------------------------------------------------------------------
  88. ROM:8C02836A
  89. ROM:8C02836A             loc_8C02836A:                           ; CODE XREF: ROM:8C02832Cj
  90. ROM:8C02836A                                                     ; ROM:8C02835Ej
  91. ROM:8C02836A E4 69                       mov.b   @r14+, r9
  92. ROM:8C02836C 73 62                       mov     r7, r2
  93. ROM:8C02836E 38 98                       mov.w   @(h'70,pc), r8 ; [8C0283E2] = h'F0 ; 压缩
  94. ROM:8C028370 9C 69                       extu.b  r9, r9
  95. ROM:8C028372 93 63                       mov     r9, r3
  96. ROM:8C028374 89 23                       and     r8, r3
  97. ROM:8C028376 09 43                       shlr2   r3
  98. ROM:8C028378 09 43                       shlr2   r3
  99. ROM:8C02837A 33 68                       mov     r3, r8
  100. ROM:8C02837C 0F E3                       mov     #h'F, r3
  101. ROM:8C02837E 39 29                       and     r3, r9
  102. ROM:8C028380 18 49                       shll8   r9
  103. ROM:8C028382 AB 29                       or      r10, r9
  104. ROM:8C028384 98 32                       sub     r9, r2
  105. ROM:8C028386 21 1F                       mov.l   r2, @(4,r15)
  106. ROM:8C028388 02 78                       add     #2, r8
  107. ROM:8C02838A 08 A0                       bra     loc_8C02839E
  108. ROM:8C02838C D3 69                       mov     r13, r9
  109. ROM:8C02838E             ; ---------------------------------------------------------------------------
  110. ROM:8C02838E
  111. ROM:8C02838E             loc_8C02838E:                           ; CODE XREF: ROM:8C0283A0j
  112. ROM:8C02838E F1 52                       mov.l   @(4,r15), r2
  113. ROM:8C028390 01 79                       add     #1, r9
  114. ROM:8C028392 01 72                       add     #1, r2
  115. ROM:8C028394 21 1F                       mov.l   r2, @(4,r15)
  116. ROM:8C028396 FF 72                       add     #-1, r2
  117. ROM:8C028398 20 61                       mov.b   @r2, r1
  118. ROM:8C02839A 10 27                       mov.b   r1, @r7
  119. ROM:8C02839C 01 77                       add     #1, r7
  120. ROM:8C02839E
  121. ROM:8C02839E             loc_8C02839E:                           ; CODE XREF: ROM:8C02838Aj
  122. ROM:8C02839E 82 39                       cmp/hs  r8, r9
  123. ROM:8C0283A0 F5 8B                       bf      loc_8C02838E
  124. ROM:8C0283A2 01 46                       shlr    r6
  125. ROM:8C0283A4 10 44                       dt      r4
  126. ROM:8C0283A6 C2 8B                       bf      loc_8C02832E
复制代码

只是学习用的,对sh4还是不熟啊

TOP

YZB,就是高产量的破解人。
我就是我

TOP

返回列表