Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- code:00001000
- code:00001000 ; =============== S U B R O U T I N E =======================================
- code:00001000
- code:00001000
- code:00001000 decrypt: ; CODE XREF: code_1035+1D↓p
- code:00001000 ; code_1035+3A↓p
- code:00001000 mov R3, #0x20 ; ' '
- code:00001002
- code:00001002 code_1002: ; CODE XREF: decrypt+28↓j
- code:00001002 mov R2, #0x10
- code:00001004 mov R0, #decrypt_buffer
- code:00001006 mov A, #0x68 ; 'h'
- code:00001008 add A, counter
- code:0000100A clr ACC4 ; Accumulator
- code:0000100C mov R1, A
- code:0000100D
- code:0000100D code_100D: ; CODE XREF: decrypt+26↓j
- code:0000100D mov A, R0
- code:0000100E cpl ACC3 ; Accumulator
- code:00001010 mov R0, A
- code:00001011 mov A, @R0
- code:00001012 add A, @R1
- code:00001013 clr ACC7 ; Accumulator
- code:00001015 movc A, @A+DPTR
- code:00001016 add A, @R0
- code:00001017 rl A
- code:00001018 mov R4, A
- code:00001019 mov A, R0
- code:0000101A cpl ACC3 ; Accumulator
- code:0000101C mov R0, A
- code:0000101D mov A, @R0
- code:0000101E xrl A, R4
- code:0000101F mov @R0, A
- code:00001020 inc R0
- code:00001021 mov A, R1
- code:00001022 inc A
- code:00001023 clr ACC4 ; Accumulator
- code:00001025 mov R1, A
- code:00001026 djnz R2, code_100D
- code:00001028 djnz R3, code_1002
- code:0000102A ret
- code:0000102A ; End of function decrypt
- code:0000102A
- code:0000102B
- code:0000102B ; =============== S U B R O U T I N E =======================================
- code:0000102B
- code:0000102B
- code:0000102B copy16bytes: ; CODE XREF: code_1035+11↓p
- code:0000102B ; code_1035+18↓p ...
- code:0000102B mov R2, #16
- code:0000102D
- code:0000102D code_102D: ; CODE XREF: copy16bytes+7↓j
- code:0000102D clr A
- code:0000102E movc A, @A+DPTR
- code:0000102F mov @R0, A
- code:00001030 inc DPTR
- code:00001031 inc R0
- code:00001032 djnz R2, code_102D
- code:00001034 ret
- code:00001034 ; End of function copy16bytes
- code:00001034
- code:00001035
- code:00001035 ; =============== S U B R O U T I N E =======================================
- code:00001035
- code:00001035
- code:00001035 code_1035: ; CODE XREF: code:00001306↓p
- code:00001035 mov WDTCN, #0xDE ; RESERVED
- code:00001038 mov WDTCN, #0xAD ; RESERVED
- code:0000103B orl RESERVED00EF, #2 ; RESERVED
- code:0000103E mov counter, #0
- code:00001041 mov DPTR, #0xFFC0
- code:00001044 mov R0, #decrypt_buffer
- code:00001046 acall copy16bytes
- code:00001048 mov DPTR, #0x1010
- code:0000104B mov R0, #decrypt_key ; '`'
- code:0000104D acall copy16bytes
- code:0000104F mov DPTR, #0x1000
- code:00001052 acall decrypt
- code:00001054 mov R2, #0x10
- code:00001056 mov R0, #decrypt_buffer ; '@'
- code:00001058 mov R1, #decrypt_key ; '`'
- code:0000105A
- code:0000105A code_105A: ; CODE XREF: code_1035+29↓j
- code:0000105A mov A, @R0
- code:0000105B mov @R1, A
- code:0000105C inc R0
- code:0000105D inc R1
- code:0000105E djnz R2, code_105A
- code:00001060 mov R5, #3
- code:00001062 mov R6, #0x14
- code:00001064
- code:00001064 code_1064: ; CODE XREF: code_1035+65↓j
- code:00001064 ; code_1035+71↓j ...
- code:00001064 mov DPL, R5 ; Data Pointer, Low Byte
- code:00001066 mov DPH, R6 ; Data Pointer, High Byte
- code:00001068 mov R0, #decrypt_buffer ; '@'
- code:0000106A acall copy16bytes
- code:0000106C mov DPTR, #0x1000
- code:0000106F acall decrypt
- code:00001071 mov A, counter
- code:00001073 inc A
- code:00001074 clr ACC4 ; Accumulator
- code:00001076 mov counter, A
- code:00001078 mov A, R5
- code:00001079 add A, #0x10
- code:0000107B mov R5, A
- code:0000107C jnc code_107F
- code:0000107E inc R6
- code:0000107F
- code:0000107F code_107F: ; CODE XREF: code_1035+47↑j
- code:0000107F mov R0, #decrypt_buffer ; '@'
- code:00001081 clr A
- code:00001082 mov R7, #0xF
- code:00001084
- code:00001084 code_1084: ; CODE XREF: code_1035+51↓j
- code:00001084 add A, @R0
- code:00001085 inc R0
- code:00001086 djnz R7, code_1084
- code:00001088 clr C
- code:00001089 subb A, @R0
- code:0000108A jz code_108D
- code:0000108C ret
- code:0000108D ; ---------------------------------------------------------------------------
- code:0000108D
- code:0000108D code_108D: ; CODE XREF: code_1035+55↑j
- code:0000108D mov R2, decrypt_buffer
- code:0000108F djnz R2, code_1092
- code:00001091 ret
- code:00001092 ; ---------------------------------------------------------------------------
- code:00001092
- code:00001092 code_1092: ; CODE XREF: code_1035+5A↑j
- code:00001092 djnz R2, code_109C
- code:00001094 mov RAM_71, RAM_41
- code:00001097 mov RAM_72, RAM_42
- code:0000109A ajmp code_1064
- code:0000109C ; ---------------------------------------------------------------------------
- code:0000109C
- code:0000109C code_109C: ; CODE XREF: code_1035:code_1092↑j
- code:0000109C djnz R2, code_10A8
- code:0000109E mov DPL, RAM_71 ; Data Pointer, Low Byte
- code:000010A1 mov DPH, RAM_72 ; Data Pointer, High Byte
- code:000010A4 acall write_a_to_flash
- code:000010A6 ajmp code_1064
- code:000010A8 ; ---------------------------------------------------------------------------
- code:000010A8
- code:000010A8 code_10A8: ; CODE XREF: code_1035:code_109C↑j
- code:000010A8 djnz R2, code_10AA
- code:000010AA
- code:000010AA code_10AA: ; CODE XREF: code_1035:code_10A8↑j
- code:000010AA mov DPL, RAM_71 ; Data Pointer, Low Byte
- code:000010AD mov DPH, RAM_72 ; Data Pointer, High Byte
- code:000010B0 mov R0, #0x41 ; 'A'
- code:000010B2
- code:000010B2 code_10B2: ; CODE XREF: code_1035+90↓j
- code:000010B2 mov FLKEY, RAM_73 ; RESERVED
- code:000010B5 mov FLKEY, RAM_74 ; RESERVED
- code:000010B8 orl PSCTL, #1 ; RESERVED
- code:000010BB anl PSCTL, #0xFD ; RESERVED
- code:000010BE mov A, @R0
- code:000010BF movx @DPTR, A
- code:000010C0 inc R0
- code:000010C1 inc DPTR
- code:000010C2 anl PSCTL, #0xFC ; RESERVED
- code:000010C5 djnz R2, code_10B2
- code:000010C7 mov RAM_71, DPL ; Data Pointer, Low Byte
- code:000010CA mov RAM_72, DPH ; Data Pointer, High Byte
- code:000010CD ajmp code_1064
- code:000010CD ; End of function code_1035
- code:000010CD
- code:000010CF
- code:000010CF ; =============== S U B R O U T I N E =======================================
- code:000010CF
- code:000010CF
- code:000010CF write_a_to_flash: ; CODE XREF: code_1035+6F↑p
- code:000010CF mov FLKEY, RAM_73 ; RESERVED
- code:000010D2 mov FLKEY, RAM_74 ; RESERVED
- code:000010D5 orl PSCTL, #3 ; RESERVED
- code:000010D8 movx @DPTR, A
- code:000010D9 anl PSCTL, #0xFC ; RESERVED
- code:000010DC ret
- code:000010DC ; End of function write_a_to_flash
- code:000010DC
- code:000010DC ; ---------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment