
 adda.w #5000,a1
 adda.w #10000,a2
 move.l a1,a4
 lea protspace(pc),a5
 moveq.w #123,d0
 move.w #399,d1
decode2:
 move.w (a4)+,d2
 add.w d0,d2
 addq #5,d0
 move.w d2,(a5)+
 dbra d1,decode2
 moveq #0,d0
 move.w RVAL1(pc),d1
 move.w RVAL2(pc),d2
 jsr protspace(pc)
 eor.w #$5643,d0
 lea storeval(pc),a1
 move.w d0,(a1)
 moveq #0,d0
 move.w RVAL1(pc),d1
 move.w RVAL2(pc),d2
 jsr (a2)
 MOVE.L #78935450,d1
 eor.w #$5643,d0
 cmp.w storeval(pc),d0
 bne.s notsetup
 adda.w #2000,a3
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 not.w d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 ror.w #4,d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 sub.w #200,d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 not.w d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 neg.w d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 add.w #200,d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 eor.w #$f050,d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 not.w d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
 sub.w #252,d0
 move.l (a3)+,a1
 add.l d1,a1
 move.w d0,(a1)
notsetup:
 rts
 dc.l 0