Cleric-K

Untitled

Oct 12th, 2019
2,377
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. code:00001000
  2. code:00001000 ; =============== S U B R O U T I N E =======================================
  3. code:00001000
  4. code:00001000
  5. code:00001000 decrypt:                              ; CODE XREF: code_1035+1D↓p
  6. code:00001000                                         ; code_1035+3A↓p
  7. code:00001000                 mov     R3, #0x20 ; ' '
  8. code:00001002
  9. code:00001002 code_1002:                              ; CODE XREF: decrypt+28↓j
  10. code:00001002                 mov     R2, #0x10
  11. code:00001004                 mov     R0, #decrypt_buffer
  12. code:00001006                 mov     A, #0x68 ; 'h'
  13. code:00001008                 add     A, counter
  14. code:0000100A                 clr     ACC4            ; Accumulator
  15. code:0000100C                 mov     R1, A
  16. code:0000100D
  17. code:0000100D code_100D:                              ; CODE XREF: decrypt+26↓j
  18. code:0000100D                 mov     A, R0
  19. code:0000100E                 cpl     ACC3            ; Accumulator
  20. code:00001010                 mov     R0, A
  21. code:00001011                 mov     A, @R0
  22. code:00001012                 add     A, @R1
  23. code:00001013                 clr     ACC7            ; Accumulator
  24. code:00001015                 movc    A, @A+DPTR
  25. code:00001016                 add     A, @R0
  26. code:00001017                 rl      A
  27. code:00001018                 mov     R4, A
  28. code:00001019                 mov     A, R0
  29. code:0000101A                 cpl     ACC3            ; Accumulator
  30. code:0000101C                 mov     R0, A
  31. code:0000101D                 mov     A, @R0
  32. code:0000101E                 xrl     A, R4
  33. code:0000101F                 mov     @R0, A
  34. code:00001020                 inc     R0
  35. code:00001021                 mov     A, R1
  36. code:00001022                 inc     A
  37. code:00001023                 clr     ACC4            ; Accumulator
  38. code:00001025                 mov     R1, A
  39. code:00001026                 djnz    R2, code_100D
  40. code:00001028                 djnz    R3, code_1002
  41. code:0000102A                 ret
  42. code:0000102A ; End of function decrypt
  43. code:0000102A
  44. code:0000102B
  45. code:0000102B ; =============== S U B R O U T I N E =======================================
  46. code:0000102B
  47. code:0000102B
  48. code:0000102B copy16bytes:                            ; CODE XREF: code_1035+11↓p
  49. code:0000102B                                         ; code_1035+18↓p ...
  50. code:0000102B                 mov     R2, #16
  51. code:0000102D
  52. code:0000102D code_102D:                              ; CODE XREF: copy16bytes+7↓j
  53. code:0000102D                 clr     A
  54. code:0000102E                 movc    A, @A+DPTR
  55. code:0000102F                 mov     @R0, A
  56. code:00001030                 inc     DPTR
  57. code:00001031                 inc     R0
  58. code:00001032                 djnz    R2, code_102D
  59. code:00001034                 ret
  60. code:00001034 ; End of function copy16bytes
  61. code:00001034
  62. code:00001035
  63. code:00001035 ; =============== S U B R O U T I N E =======================================
  64. code:00001035
  65. code:00001035
  66. code:00001035 code_1035:                              ; CODE XREF: code:00001306↓p
  67. code:00001035                 mov     WDTCN, #0xDE    ; RESERVED
  68. code:00001038                 mov     WDTCN, #0xAD    ; RESERVED
  69. code:0000103B                 orl     RESERVED00EF, #2 ; RESERVED
  70. code:0000103E                 mov     counter, #0
  71. code:00001041                 mov     DPTR, #0xFFC0
  72. code:00001044                 mov     R0, #decrypt_buffer
  73. code:00001046                 acall   copy16bytes
  74. code:00001048                 mov     DPTR, #0x1010
  75. code:0000104B                 mov     R0, #decrypt_key ; '`'
  76. code:0000104D                 acall   copy16bytes
  77. code:0000104F                 mov     DPTR, #0x1000
  78. code:00001052                 acall   decrypt
  79. code:00001054                 mov     R2, #0x10
  80. code:00001056                 mov     R0, #decrypt_buffer ; '@'
  81. code:00001058                 mov     R1, #decrypt_key ; '`'
  82. code:0000105A
  83. code:0000105A code_105A:                              ; CODE XREF: code_1035+29↓j
  84. code:0000105A                 mov     A, @R0
  85. code:0000105B                 mov     @R1, A
  86. code:0000105C                 inc     R0
  87. code:0000105D                 inc     R1
  88. code:0000105E                 djnz    R2, code_105A
  89. code:00001060                 mov     R5, #3
  90. code:00001062                 mov     R6, #0x14
  91. code:00001064
  92. code:00001064 code_1064:                              ; CODE XREF: code_1035+65↓j
  93. code:00001064                                         ; code_1035+71↓j ...
  94. code:00001064                 mov     DPL, R5         ; Data Pointer, Low Byte
  95. code:00001066                 mov     DPH, R6         ; Data Pointer, High Byte
  96. code:00001068                 mov     R0, #decrypt_buffer ; '@'
  97. code:0000106A                 acall   copy16bytes
  98. code:0000106C                 mov     DPTR, #0x1000
  99. code:0000106F                 acall   decrypt
  100. code:00001071                 mov     A, counter
  101. code:00001073                 inc     A
  102. code:00001074                 clr     ACC4            ; Accumulator
  103. code:00001076                 mov     counter, A
  104. code:00001078                 mov     A, R5
  105. code:00001079                 add     A, #0x10
  106. code:0000107B                 mov     R5, A
  107. code:0000107C                 jnc     code_107F
  108. code:0000107E                 inc     R6
  109. code:0000107F
  110. code:0000107F code_107F:                              ; CODE XREF: code_1035+47↑j
  111. code:0000107F                 mov     R0, #decrypt_buffer ; '@'
  112. code:00001081                 clr     A
  113. code:00001082                 mov     R7, #0xF
  114. code:00001084
  115. code:00001084 code_1084:                              ; CODE XREF: code_1035+51↓j
  116. code:00001084                 add     A, @R0
  117. code:00001085                 inc     R0
  118. code:00001086                 djnz    R7, code_1084
  119. code:00001088                 clr     C
  120. code:00001089                 subb    A, @R0
  121. code:0000108A                 jz      code_108D
  122. code:0000108C                 ret
  123. code:0000108D ; ---------------------------------------------------------------------------
  124. code:0000108D
  125. code:0000108D code_108D:                              ; CODE XREF: code_1035+55↑j
  126. code:0000108D                 mov     R2, decrypt_buffer
  127. code:0000108F                 djnz    R2, code_1092
  128. code:00001091                 ret
  129. code:00001092 ; ---------------------------------------------------------------------------
  130. code:00001092
  131. code:00001092 code_1092:                              ; CODE XREF: code_1035+5A↑j
  132. code:00001092                 djnz    R2, code_109C
  133. code:00001094                 mov     RAM_71, RAM_41
  134. code:00001097                 mov     RAM_72, RAM_42
  135. code:0000109A                 ajmp    code_1064
  136. code:0000109C ; ---------------------------------------------------------------------------
  137. code:0000109C
  138. code:0000109C code_109C:                              ; CODE XREF: code_1035:code_1092↑j
  139. code:0000109C                 djnz    R2, code_10A8
  140. code:0000109E                 mov     DPL, RAM_71     ; Data Pointer, Low Byte
  141. code:000010A1                 mov     DPH, RAM_72     ; Data Pointer, High Byte
  142. code:000010A4                 acall   write_a_to_flash
  143. code:000010A6                 ajmp    code_1064
  144. code:000010A8 ; ---------------------------------------------------------------------------
  145. code:000010A8
  146. code:000010A8 code_10A8:                              ; CODE XREF: code_1035:code_109C↑j
  147. code:000010A8                 djnz    R2, code_10AA
  148. code:000010AA
  149. code:000010AA code_10AA:                              ; CODE XREF: code_1035:code_10A8↑j
  150. code:000010AA                 mov     DPL, RAM_71     ; Data Pointer, Low Byte
  151. code:000010AD                 mov     DPH, RAM_72     ; Data Pointer, High Byte
  152. code:000010B0                 mov     R0, #0x41 ; 'A'
  153. code:000010B2
  154. code:000010B2 code_10B2:                              ; CODE XREF: code_1035+90↓j
  155. code:000010B2                 mov     FLKEY, RAM_73   ; RESERVED
  156. code:000010B5                 mov     FLKEY, RAM_74   ; RESERVED
  157. code:000010B8                 orl     PSCTL, #1       ; RESERVED
  158. code:000010BB                 anl     PSCTL, #0xFD    ; RESERVED
  159. code:000010BE                 mov     A, @R0
  160. code:000010BF                 movx    @DPTR, A
  161. code:000010C0                 inc     R0
  162. code:000010C1                 inc     DPTR
  163. code:000010C2                 anl     PSCTL, #0xFC    ; RESERVED
  164. code:000010C5                 djnz    R2, code_10B2
  165. code:000010C7                 mov     RAM_71, DPL     ; Data Pointer, Low Byte
  166. code:000010CA                 mov     RAM_72, DPH     ; Data Pointer, High Byte
  167. code:000010CD                 ajmp    code_1064
  168. code:000010CD ; End of function code_1035
  169. code:000010CD
  170. code:000010CF
  171. code:000010CF ; =============== S U B R O U T I N E =======================================
  172. code:000010CF
  173. code:000010CF
  174. code:000010CF write_a_to_flash:                       ; CODE XREF: code_1035+6F↑p
  175. code:000010CF                 mov     FLKEY, RAM_73   ; RESERVED
  176. code:000010D2                 mov     FLKEY, RAM_74   ; RESERVED
  177. code:000010D5                 orl     PSCTL, #3       ; RESERVED
  178. code:000010D8                 movx    @DPTR, A
  179. code:000010D9                 anl     PSCTL, #0xFC    ; RESERVED
  180. code:000010DC                 ret
  181. code:000010DC ; End of function write_a_to_flash
  182. code:000010DC
  183. code:000010DC ; ---------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment