#if defined(__AVR__) #include /* Automatically generated - do not edit */ .text .global pyjamask_96_setup_key .type pyjamask_96_setup_key, @function pyjamask_96_setup_key: push r2 push r3 push r4 push r5 push r6 push r7 push r8 push r9 push r10 push r11 push r12 push r13 push r14 push r15 push r16 push r17 movw r30,r24 movw r26,r22 .L__stack_usage = 18 ld r21,X+ ld r20,X+ ld r19,X+ ld r18,X+ ld r3,X+ ld r2,X+ ld r23,X+ ld r22,X+ ld r7,X+ ld r6,X+ ld r5,X+ ld r4,X+ ld r11,X+ ld r10,X+ ld r9,X+ ld r8,X+ st Z+,r18 st Z+,r19 st Z+,r20 st Z+,r21 st Z+,r22 st Z+,r23 st Z+,r2 st Z+,r3 st Z+,r4 st Z+,r5 st Z+,r6 st Z+,r7 mov r26,r1 29: movw r12,r18 movw r14,r20 eor r12,r22 eor r13,r23 eor r14,r2 eor r15,r3 eor r12,r4 eor r13,r5 eor r14,r6 eor r15,r7 eor r12,r8 eor r13,r9 eor r14,r10 eor r15,r11 eor r18,r12 eor r19,r13 eor r20,r14 eor r21,r15 eor r22,r12 eor r23,r13 eor r2,r14 eor r3,r15 eor r4,r12 eor r5,r13 eor r6,r14 eor r7,r15 eor r8,r12 eor r9,r13 eor r10,r14 eor r11,r15 mov r0,r1 lsl r21 sbc r0,r1 ldi r27,202 mov r12,r27 ldi r27,185 mov r13,r27 ldi r27,129 mov r14,r27 ldi r27,184 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,229 ldi r25,220 ldi r16,64 ldi r17,92 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,114 ldi r25,110 ldi r16,32 ldi r17,174 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,57 ldi r25,55 ldi r16,16 ldi r17,87 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,156 ldi r25,27 ldi r16,136 ldi r17,171 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,206 ldi r25,13 ldi r16,196 ldi r17,85 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,231 ldi r25,6 ldi r16,226 ldi r17,42 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,115 ldi r25,3 ldi r16,113 ldi r17,149 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,185 ldi r25,129 ldi r16,184 ldi r17,202 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,220 ldi r25,64 ldi r16,92 ldi r17,229 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,110 ldi r25,32 ldi r16,174 ldi r17,114 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,55 ldi r25,16 ldi r16,87 ldi r17,57 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,27 ldi r25,136 ldi r16,171 ldi r17,156 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,13 ldi r25,196 ldi r16,85 ldi r17,206 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,6 ldi r25,226 ldi r16,42 ldi r17,231 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,3 ldi r25,113 ldi r16,149 ldi r17,115 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,129 ldi r25,184 ldi r16,202 ldi r17,185 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,64 ldi r25,92 ldi r16,229 ldi r17,220 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,32 ldi r25,174 ldi r16,114 ldi r17,110 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,16 ldi r25,87 ldi r16,57 ldi r17,55 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,136 ldi r25,171 ldi r16,156 ldi r17,27 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,196 ldi r25,85 ldi r16,206 ldi r17,13 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,226 ldi r25,42 ldi r16,231 ldi r17,6 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,113 ldi r25,149 ldi r16,115 ldi r17,3 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,184 ldi r25,202 ldi r16,185 ldi r17,129 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,92 ldi r25,229 ldi r16,220 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,174 ldi r25,114 ldi r16,110 ldi r17,32 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,87 ldi r25,57 ldi r16,55 ldi r17,16 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,171 ldi r25,156 ldi r16,27 ldi r17,136 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,85 ldi r25,206 ldi r16,13 ldi r17,196 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,42 ldi r25,231 ldi r16,6 ldi r17,226 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,149 ldi r25,115 ldi r16,3 ldi r17,113 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r18,r12 movw r20,r14 ldi r25,128 eor r18,r25 eor r18,r26 mov r0,r22 mov r22,r23 mov r23,r2 mov r2,r3 mov r3,r0 ldi r24,106 eor r23,r24 mov r0,r4 mov r4,r6 mov r6,r0 mov r0,r5 mov r5,r7 mov r7,r0 lsl r4 rol r5 rol r6 rol r7 adc r4,r1 ldi r17,63 eor r6,r17 mov r0,r8 mov r8,r10 mov r10,r0 mov r0,r9 mov r9,r11 mov r11,r0 mov r0,r1 lsr r11 ror r10 ror r9 ror r8 ror r0 lsr r11 ror r10 ror r9 ror r8 ror r0 or r11,r0 ldi r16,36 eor r11,r16 st Z+,r18 st Z+,r19 st Z+,r20 st Z+,r21 st Z+,r22 st Z+,r23 st Z+,r2 st Z+,r3 st Z+,r4 st Z+,r5 st Z+,r6 st Z+,r7 inc r26 ldi r27,14 cpse r26,r27 rjmp 29b pop r17 pop r16 pop r15 pop r14 pop r13 pop r12 pop r11 pop r10 pop r9 pop r8 pop r7 pop r6 pop r5 pop r4 pop r3 pop r2 ret .size pyjamask_96_setup_key, .-pyjamask_96_setup_key .text .global pyjamask_96_encrypt .type pyjamask_96_encrypt, @function pyjamask_96_encrypt: push r28 push r29 push r2 push r3 push r4 push r5 push r6 push r7 push r8 push r9 push r10 push r11 push r16 push r17 push r23 push r22 movw r30,r24 movw r26,r20 in r28,0x3d in r29,0x3e .L__stack_usage = 16 ld r21,X+ ld r20,X+ ld r19,X+ ld r18,X+ ld r3,X+ ld r2,X+ ld r23,X+ ld r22,X+ ld r7,X+ ld r6,X+ ld r5,X+ ld r4,X+ ldi r26,14 13: ld r8,Z+ ld r9,Z+ ld r10,Z+ ld r11,Z+ eor r18,r8 eor r19,r9 eor r20,r10 eor r21,r11 ld r8,Z+ ld r9,Z+ ld r10,Z+ ld r11,Z+ eor r22,r8 eor r23,r9 eor r2,r10 eor r3,r11 ld r8,Z+ ld r9,Z+ ld r10,Z+ ld r11,Z+ eor r4,r8 eor r5,r9 eor r6,r10 eor r7,r11 eor r18,r22 eor r19,r23 eor r20,r2 eor r21,r3 eor r22,r4 eor r23,r5 eor r2,r6 eor r3,r7 mov r0,r18 and r0,r22 eor r4,r0 mov r0,r19 and r0,r23 eor r5,r0 mov r0,r20 and r0,r2 eor r6,r0 mov r0,r21 and r0,r3 eor r7,r0 mov r0,r22 and r0,r4 eor r18,r0 mov r0,r23 and r0,r5 eor r19,r0 mov r0,r2 and r0,r6 eor r20,r0 mov r0,r3 and r0,r7 eor r21,r0 mov r0,r18 and r0,r4 eor r22,r0 mov r0,r19 and r0,r5 eor r23,r0 mov r0,r20 and r0,r6 eor r2,r0 mov r0,r21 and r0,r7 eor r3,r0 eor r4,r18 eor r5,r19 eor r6,r20 eor r7,r21 com r4 com r5 com r6 com r7 eor r22,r18 eor r23,r19 eor r2,r20 eor r3,r21 eor r18,r22 eor r19,r23 eor r20,r2 eor r21,r3 mov r0,r1 lsl r21 sbc r0,r1 ldi r27,133 mov r8,r27 ldi r27,16 mov r9,r27 ldi r27,134 mov r10,r27 ldi r27,163 mov r11,r27 and r8,r0 and r9,r0 and r10,r0 and r11,r0 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,66 ldi r25,8 ldi r16,195 ldi r17,209 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,33 ldi r25,132 ldi r16,225 ldi r17,104 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,16 ldi r25,194 ldi r16,112 ldi r17,180 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,8 ldi r25,97 ldi r16,56 ldi r17,90 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,132 ldi r25,48 ldi r16,28 ldi r17,45 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,66 ldi r25,24 ldi r16,142 ldi r17,22 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,33 ldi r25,12 ldi r16,71 ldi r17,11 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,16 ldi r25,134 ldi r16,163 ldi r17,133 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,8 ldi r25,195 ldi r16,209 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,132 ldi r25,225 ldi r16,104 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,194 ldi r25,112 ldi r16,180 ldi r17,16 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,97 ldi r25,56 ldi r16,90 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,48 ldi r25,28 ldi r16,45 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,24 ldi r25,142 ldi r16,22 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,12 ldi r25,71 ldi r16,11 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,134 ldi r25,163 ldi r16,133 ldi r17,16 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,195 ldi r25,209 ldi r16,66 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,225 ldi r25,104 ldi r16,33 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,112 ldi r25,180 ldi r16,16 ldi r17,194 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,56 ldi r25,90 ldi r16,8 ldi r17,97 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,28 ldi r25,45 ldi r16,132 ldi r17,48 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,142 ldi r25,22 ldi r16,66 ldi r17,24 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,71 ldi r25,11 ldi r16,33 ldi r17,12 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,163 ldi r25,133 ldi r16,16 ldi r17,134 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,209 ldi r25,66 ldi r16,8 ldi r17,195 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,104 ldi r25,33 ldi r16,132 ldi r17,225 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,180 ldi r25,16 ldi r16,194 ldi r17,112 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,90 ldi r25,8 ldi r16,97 ldi r17,56 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,45 ldi r25,132 ldi r16,48 ldi r17,28 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,22 ldi r25,66 ldi r16,24 ldi r17,142 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,11 ldi r25,33 ldi r16,12 ldi r17,71 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 movw r18,r8 movw r20,r10 mov r0,r1 lsl r3 sbc r0,r1 ldi r27,33 mov r8,r27 ldi r27,112 mov r9,r27 ldi r27,65 mov r10,r27 ldi r27,99 mov r11,r27 and r8,r0 and r9,r0 and r10,r0 and r11,r0 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,16 ldi r25,184 ldi r16,160 ldi r17,177 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,8 ldi r25,92 ldi r16,208 ldi r17,88 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,4 ldi r25,46 ldi r16,104 ldi r17,44 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,2 ldi r25,23 ldi r16,52 ldi r17,22 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,129 ldi r25,11 ldi r16,26 ldi r17,11 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,192 ldi r25,5 ldi r16,141 ldi r17,133 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,224 ldi r25,130 ldi r16,198 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,112 ldi r25,65 ldi r16,99 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,184 ldi r25,160 ldi r16,177 ldi r17,16 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,92 ldi r25,208 ldi r16,88 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,46 ldi r25,104 ldi r16,44 ldi r17,4 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,23 ldi r25,52 ldi r16,22 ldi r17,2 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,11 ldi r25,26 ldi r16,11 ldi r17,129 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,5 ldi r25,141 ldi r16,133 ldi r17,192 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,130 ldi r25,198 ldi r16,66 ldi r17,224 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,65 ldi r25,99 ldi r16,33 ldi r17,112 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,160 ldi r25,177 ldi r16,16 ldi r17,184 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,208 ldi r25,88 ldi r16,8 ldi r17,92 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,104 ldi r25,44 ldi r16,4 ldi r17,46 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,52 ldi r25,22 ldi r16,2 ldi r17,23 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,26 ldi r25,11 ldi r16,129 ldi r17,11 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,141 ldi r25,133 ldi r16,192 ldi r17,5 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,198 ldi r25,66 ldi r16,224 ldi r17,130 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,99 ldi r25,33 ldi r16,112 ldi r17,65 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,177 ldi r25,16 ldi r16,184 ldi r17,160 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,88 ldi r25,8 ldi r16,92 ldi r17,208 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,44 ldi r25,4 ldi r16,46 ldi r17,104 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,22 ldi r25,2 ldi r16,23 ldi r17,52 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,11 ldi r25,129 ldi r16,11 ldi r17,26 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,133 ldi r25,192 ldi r16,5 ldi r17,141 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,66 ldi r25,224 ldi r16,130 ldi r17,198 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 movw r22,r8 movw r2,r10 mov r0,r1 lsl r7 sbc r0,r1 ldi r27,128 mov r8,r27 ldi r27,242 mov r9,r27 ldi r27,44 mov r10,r27 ldi r27,105 mov r11,r27 and r8,r0 and r9,r0 and r10,r0 and r11,r0 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,64 ldi r25,121 ldi r16,150 ldi r17,52 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,160 ldi r25,60 ldi r16,75 ldi r17,26 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,80 ldi r25,158 ldi r16,37 ldi r17,13 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,40 ldi r25,207 ldi r16,146 ldi r17,6 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,148 ldi r25,103 ldi r16,73 ldi r17,3 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,202 ldi r25,179 ldi r16,164 ldi r17,1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,229 ldi r25,89 ldi r16,210 mov r17,r1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,242 ldi r25,44 ldi r16,105 ldi r17,128 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,121 ldi r25,150 ldi r16,52 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,60 ldi r25,75 ldi r16,26 ldi r17,160 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,158 ldi r25,37 ldi r16,13 ldi r17,80 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,207 ldi r25,146 ldi r16,6 ldi r17,40 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,103 ldi r25,73 ldi r16,3 ldi r17,148 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,179 ldi r25,164 ldi r16,1 ldi r17,202 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,89 ldi r25,210 mov r16,r1 ldi r17,229 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,44 ldi r25,105 ldi r16,128 ldi r17,242 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,150 ldi r25,52 ldi r16,64 ldi r17,121 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,75 ldi r25,26 ldi r16,160 ldi r17,60 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,37 ldi r25,13 ldi r16,80 ldi r17,158 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,146 ldi r25,6 ldi r16,40 ldi r17,207 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,73 ldi r25,3 ldi r16,148 ldi r17,103 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,164 ldi r25,1 ldi r16,202 ldi r17,179 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,210 mov r25,r1 ldi r16,229 ldi r17,89 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,105 ldi r25,128 ldi r16,242 ldi r17,44 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,52 ldi r25,64 ldi r16,121 ldi r17,150 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,26 ldi r25,160 ldi r16,60 ldi r17,75 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,13 ldi r25,80 ldi r16,158 ldi r17,37 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,6 ldi r25,40 ldi r16,207 ldi r17,146 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,3 ldi r25,148 ldi r16,103 ldi r17,73 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,1 ldi r25,202 ldi r16,179 ldi r17,164 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 mov r24,r1 ldi r25,229 ldi r16,89 ldi r17,210 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 movw r4,r8 movw r6,r10 dec r26 breq 6545f rjmp 13b 6545: ld r8,Z+ ld r9,Z+ ld r10,Z+ ld r11,Z+ eor r18,r8 eor r19,r9 eor r20,r10 eor r21,r11 ld r8,Z+ ld r9,Z+ ld r10,Z+ ld r11,Z+ eor r22,r8 eor r23,r9 eor r2,r10 eor r3,r11 ld r8,Z+ ld r9,Z+ ld r10,Z+ ld r11,Z+ eor r4,r8 eor r5,r9 eor r6,r10 eor r7,r11 ldd r26,Y+1 ldd r27,Y+2 st X+,r21 st X+,r20 st X+,r19 st X+,r18 st X+,r3 st X+,r2 st X+,r23 st X+,r22 st X+,r7 st X+,r6 st X+,r5 st X+,r4 pop r0 pop r0 pop r17 pop r16 pop r11 pop r10 pop r9 pop r8 pop r7 pop r6 pop r5 pop r4 pop r3 pop r2 pop r29 pop r28 ret .size pyjamask_96_encrypt, .-pyjamask_96_encrypt .text .global pyjamask_96_decrypt .type pyjamask_96_decrypt, @function pyjamask_96_decrypt: push r28 push r29 push r2 push r3 push r4 push r5 push r6 push r7 push r8 push r9 push r10 push r11 push r16 push r17 push r23 push r22 movw r30,r24 movw r26,r20 in r28,0x3d in r29,0x3e .L__stack_usage = 16 ld r21,X+ ld r20,X+ ld r19,X+ ld r18,X+ ld r3,X+ ld r2,X+ ld r23,X+ ld r22,X+ ld r7,X+ ld r6,X+ ld r5,X+ ld r4,X+ subi r30,76 sbci r31,255 ld r9,-Z ld r8,-Z ld r27,-Z ld r26,-Z eor r4,r26 eor r5,r27 eor r6,r8 eor r7,r9 ld r9,-Z ld r8,-Z ld r27,-Z ld r26,-Z eor r22,r26 eor r23,r27 eor r2,r8 eor r3,r9 ld r9,-Z ld r8,-Z ld r27,-Z ld r26,-Z eor r18,r26 eor r19,r27 eor r20,r8 eor r21,r9 ldi r26,14 39: mov r0,r1 lsl r21 sbc r0,r1 ldi r27,33 mov r8,r27 ldi r27,161 mov r9,r27 ldi r27,55 mov r10,r27 ldi r27,32 mov r11,r27 and r8,r0 and r9,r0 and r10,r0 and r11,r0 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,144 ldi r25,208 ldi r16,27 ldi r17,144 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,72 ldi r25,232 ldi r16,13 ldi r17,72 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,36 ldi r25,244 ldi r16,6 ldi r17,36 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,18 ldi r25,122 ldi r16,3 ldi r17,18 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,9 ldi r25,189 ldi r16,1 ldi r17,9 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,132 ldi r25,222 ldi r16,128 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,66 ldi r25,111 ldi r16,64 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,161 ldi r25,55 ldi r16,32 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,208 ldi r25,27 ldi r16,144 ldi r17,144 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,232 ldi r25,13 ldi r16,72 ldi r17,72 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,244 ldi r25,6 ldi r16,36 ldi r17,36 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,122 ldi r25,3 ldi r16,18 ldi r17,18 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,189 ldi r25,1 ldi r16,9 ldi r17,9 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,222 ldi r25,128 ldi r16,132 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,111 ldi r25,64 ldi r16,66 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,55 ldi r25,32 ldi r16,33 ldi r17,161 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,27 ldi r25,144 ldi r16,144 ldi r17,208 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,13 ldi r25,72 ldi r16,72 ldi r17,232 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,6 ldi r25,36 ldi r16,36 ldi r17,244 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,3 ldi r25,18 ldi r16,18 ldi r17,122 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,1 ldi r25,9 ldi r16,9 ldi r17,189 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,128 ldi r25,132 ldi r16,132 ldi r17,222 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,64 ldi r25,66 ldi r16,66 ldi r17,111 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,32 ldi r25,33 ldi r16,161 ldi r17,55 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,144 ldi r25,144 ldi r16,208 ldi r17,27 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,72 ldi r25,72 ldi r16,232 ldi r17,13 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,36 ldi r25,36 ldi r16,244 ldi r17,6 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,18 ldi r25,18 ldi r16,122 ldi r17,3 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,9 ldi r25,9 ldi r16,189 ldi r17,1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,132 ldi r25,132 ldi r16,222 ldi r17,128 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,66 ldi r25,66 ldi r16,111 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 movw r18,r8 movw r20,r10 mov r0,r1 lsl r3 sbc r0,r1 ldi r27,160 mov r8,r27 ldi r27,242 mov r9,r27 ldi r27,143 mov r10,r27 ldi r27,16 mov r11,r27 and r8,r0 and r9,r0 and r10,r0 and r11,r0 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,80 ldi r25,249 ldi r16,71 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,168 ldi r25,252 ldi r16,35 ldi r17,4 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,84 ldi r25,254 ldi r16,17 ldi r17,2 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,42 ldi r25,255 ldi r16,8 ldi r17,1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,149 ldi r25,127 ldi r16,132 mov r17,r1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,202 ldi r25,63 ldi r16,66 ldi r17,128 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,229 ldi r25,31 ldi r16,33 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,242 ldi r25,143 ldi r16,16 ldi r17,160 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,249 ldi r25,71 ldi r16,8 ldi r17,80 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,252 ldi r25,35 ldi r16,4 ldi r17,168 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,254 ldi r25,17 ldi r16,2 ldi r17,84 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,255 ldi r25,8 ldi r16,1 ldi r17,42 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,127 ldi r25,132 mov r16,r1 ldi r17,149 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,63 ldi r25,66 ldi r16,128 ldi r17,202 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,31 ldi r25,33 ldi r16,64 ldi r17,229 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,143 ldi r25,16 ldi r16,160 ldi r17,242 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,71 ldi r25,8 ldi r16,80 ldi r17,249 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,35 ldi r25,4 ldi r16,168 ldi r17,252 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,17 ldi r25,2 ldi r16,84 ldi r17,254 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,8 ldi r25,1 ldi r16,42 ldi r17,255 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,132 mov r25,r1 ldi r16,149 ldi r17,127 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,66 ldi r25,128 ldi r16,202 ldi r17,63 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,33 ldi r25,64 ldi r16,229 ldi r17,31 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,16 ldi r25,160 ldi r16,242 ldi r17,143 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,8 ldi r25,80 ldi r16,249 ldi r17,71 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,4 ldi r25,168 ldi r16,252 ldi r17,35 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,2 ldi r25,84 ldi r16,254 ldi r17,17 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,1 ldi r25,42 ldi r16,255 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 mov r24,r1 ldi r25,149 ldi r16,127 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,128 ldi r25,202 ldi r16,63 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,64 ldi r25,229 ldi r16,31 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 movw r22,r8 movw r2,r10 mov r0,r1 lsl r7 sbc r0,r1 ldi r27,192 mov r8,r27 ldi r27,216 mov r9,r27 ldi r27,84 mov r10,r27 ldi r27,144 mov r11,r27 and r8,r0 and r9,r0 and r10,r0 and r11,r0 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,96 ldi r25,108 ldi r16,42 ldi r17,72 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,48 ldi r25,54 ldi r16,21 ldi r17,36 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,24 ldi r25,155 ldi r16,10 ldi r17,18 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,140 ldi r25,77 ldi r16,5 ldi r17,9 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,198 ldi r25,166 ldi r16,130 ldi r17,4 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,99 ldi r25,83 ldi r16,65 ldi r17,2 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,177 ldi r25,169 ldi r16,32 ldi r17,129 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,216 ldi r25,84 ldi r16,144 ldi r17,192 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,108 ldi r25,42 ldi r16,72 ldi r17,96 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,54 ldi r25,21 ldi r16,36 ldi r17,48 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,155 ldi r25,10 ldi r16,18 ldi r17,24 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,77 ldi r25,5 ldi r16,9 ldi r17,140 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,166 ldi r25,130 ldi r16,4 ldi r17,198 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,83 ldi r25,65 ldi r16,2 ldi r17,99 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,169 ldi r25,32 ldi r16,129 ldi r17,177 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,84 ldi r25,144 ldi r16,192 ldi r17,216 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,42 ldi r25,72 ldi r16,96 ldi r17,108 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,21 ldi r25,36 ldi r16,48 ldi r17,54 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,10 ldi r25,18 ldi r16,24 ldi r17,155 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,5 ldi r25,9 ldi r16,140 ldi r17,77 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,130 ldi r25,4 ldi r16,198 ldi r17,166 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,65 ldi r25,2 ldi r16,99 ldi r17,83 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,32 ldi r25,129 ldi r16,177 ldi r17,169 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,144 ldi r25,192 ldi r16,216 ldi r17,84 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,72 ldi r25,96 ldi r16,108 ldi r17,42 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,36 ldi r25,48 ldi r16,54 ldi r17,21 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,18 ldi r25,24 ldi r16,155 ldi r17,10 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,9 ldi r25,140 ldi r16,77 ldi r17,5 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,4 ldi r25,198 ldi r16,166 ldi r17,130 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,2 ldi r25,99 ldi r16,83 ldi r17,65 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,129 ldi r25,177 ldi r16,169 ldi r17,32 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r8,r24 eor r9,r25 eor r10,r16 eor r11,r17 movw r4,r8 movw r6,r10 eor r18,r22 eor r19,r23 eor r20,r2 eor r21,r3 eor r22,r18 eor r23,r19 eor r2,r20 eor r3,r21 com r4 com r5 com r6 com r7 eor r4,r18 eor r5,r19 eor r6,r20 eor r7,r21 mov r0,r18 and r0,r4 eor r22,r0 mov r0,r19 and r0,r5 eor r23,r0 mov r0,r20 and r0,r6 eor r2,r0 mov r0,r21 and r0,r7 eor r3,r0 mov r0,r22 and r0,r4 eor r18,r0 mov r0,r23 and r0,r5 eor r19,r0 mov r0,r2 and r0,r6 eor r20,r0 mov r0,r3 and r0,r7 eor r21,r0 mov r0,r18 and r0,r22 eor r4,r0 mov r0,r19 and r0,r23 eor r5,r0 mov r0,r20 and r0,r2 eor r6,r0 mov r0,r21 and r0,r3 eor r7,r0 eor r22,r4 eor r23,r5 eor r2,r6 eor r3,r7 eor r18,r22 eor r19,r23 eor r20,r2 eor r21,r3 ld r11,-Z ld r10,-Z ld r9,-Z ld r8,-Z eor r4,r8 eor r5,r9 eor r6,r10 eor r7,r11 ld r11,-Z ld r10,-Z ld r9,-Z ld r8,-Z eor r22,r8 eor r23,r9 eor r2,r10 eor r3,r11 ld r11,-Z ld r10,-Z ld r9,-Z ld r8,-Z eor r18,r8 eor r19,r9 eor r20,r10 eor r21,r11 dec r26 breq 6571f rjmp 39b 6571: ldd r26,Y+1 ldd r27,Y+2 st X+,r21 st X+,r20 st X+,r19 st X+,r18 st X+,r3 st X+,r2 st X+,r23 st X+,r22 st X+,r7 st X+,r6 st X+,r5 st X+,r4 pop r0 pop r0 pop r17 pop r16 pop r11 pop r10 pop r9 pop r8 pop r7 pop r6 pop r5 pop r4 pop r3 pop r2 pop r29 pop r28 ret .size pyjamask_96_decrypt, .-pyjamask_96_decrypt .text .global pyjamask_128_setup_key .type pyjamask_128_setup_key, @function pyjamask_128_setup_key: push r2 push r3 push r4 push r5 push r6 push r7 push r8 push r9 push r10 push r11 push r12 push r13 push r14 push r15 push r16 push r17 movw r30,r24 movw r26,r22 .L__stack_usage = 18 ld r21,X+ ld r20,X+ ld r19,X+ ld r18,X+ ld r3,X+ ld r2,X+ ld r23,X+ ld r22,X+ ld r7,X+ ld r6,X+ ld r5,X+ ld r4,X+ ld r11,X+ ld r10,X+ ld r9,X+ ld r8,X+ st Z+,r18 st Z+,r19 st Z+,r20 st Z+,r21 st Z+,r22 st Z+,r23 st Z+,r2 st Z+,r3 st Z+,r4 st Z+,r5 st Z+,r6 st Z+,r7 st Z+,r8 st Z+,r9 st Z+,r10 st Z+,r11 mov r26,r1 33: movw r12,r18 movw r14,r20 eor r12,r22 eor r13,r23 eor r14,r2 eor r15,r3 eor r12,r4 eor r13,r5 eor r14,r6 eor r15,r7 eor r12,r8 eor r13,r9 eor r14,r10 eor r15,r11 eor r18,r12 eor r19,r13 eor r20,r14 eor r21,r15 eor r22,r12 eor r23,r13 eor r2,r14 eor r3,r15 eor r4,r12 eor r5,r13 eor r6,r14 eor r7,r15 eor r8,r12 eor r9,r13 eor r10,r14 eor r11,r15 mov r0,r1 lsl r21 sbc r0,r1 ldi r27,202 mov r12,r27 ldi r27,185 mov r13,r27 ldi r27,129 mov r14,r27 ldi r27,184 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,229 ldi r25,220 ldi r16,64 ldi r17,92 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,114 ldi r25,110 ldi r16,32 ldi r17,174 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,57 ldi r25,55 ldi r16,16 ldi r17,87 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,156 ldi r25,27 ldi r16,136 ldi r17,171 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,206 ldi r25,13 ldi r16,196 ldi r17,85 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,231 ldi r25,6 ldi r16,226 ldi r17,42 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,115 ldi r25,3 ldi r16,113 ldi r17,149 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,185 ldi r25,129 ldi r16,184 ldi r17,202 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,220 ldi r25,64 ldi r16,92 ldi r17,229 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,110 ldi r25,32 ldi r16,174 ldi r17,114 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,55 ldi r25,16 ldi r16,87 ldi r17,57 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,27 ldi r25,136 ldi r16,171 ldi r17,156 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,13 ldi r25,196 ldi r16,85 ldi r17,206 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,6 ldi r25,226 ldi r16,42 ldi r17,231 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,3 ldi r25,113 ldi r16,149 ldi r17,115 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,129 ldi r25,184 ldi r16,202 ldi r17,185 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,64 ldi r25,92 ldi r16,229 ldi r17,220 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,32 ldi r25,174 ldi r16,114 ldi r17,110 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,16 ldi r25,87 ldi r16,57 ldi r17,55 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,136 ldi r25,171 ldi r16,156 ldi r17,27 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,196 ldi r25,85 ldi r16,206 ldi r17,13 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,226 ldi r25,42 ldi r16,231 ldi r17,6 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,113 ldi r25,149 ldi r16,115 ldi r17,3 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,184 ldi r25,202 ldi r16,185 ldi r17,129 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,92 ldi r25,229 ldi r16,220 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,174 ldi r25,114 ldi r16,110 ldi r17,32 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,87 ldi r25,57 ldi r16,55 ldi r17,16 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,171 ldi r25,156 ldi r16,27 ldi r17,136 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,85 ldi r25,206 ldi r16,13 ldi r17,196 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,42 ldi r25,231 ldi r16,6 ldi r17,226 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,149 ldi r25,115 ldi r16,3 ldi r17,113 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r18,r12 movw r20,r14 ldi r25,128 eor r18,r25 eor r18,r26 mov r0,r22 mov r22,r23 mov r23,r2 mov r2,r3 mov r3,r0 ldi r24,106 eor r23,r24 mov r0,r4 mov r4,r6 mov r6,r0 mov r0,r5 mov r5,r7 mov r7,r0 lsl r4 rol r5 rol r6 rol r7 adc r4,r1 ldi r17,63 eor r6,r17 mov r0,r8 mov r8,r10 mov r10,r0 mov r0,r9 mov r9,r11 mov r11,r0 mov r0,r1 lsr r11 ror r10 ror r9 ror r8 ror r0 lsr r11 ror r10 ror r9 ror r8 ror r0 or r11,r0 ldi r16,36 eor r11,r16 st Z+,r18 st Z+,r19 st Z+,r20 st Z+,r21 st Z+,r22 st Z+,r23 st Z+,r2 st Z+,r3 st Z+,r4 st Z+,r5 st Z+,r6 st Z+,r7 st Z+,r8 st Z+,r9 st Z+,r10 st Z+,r11 inc r26 ldi r27,14 cpse r26,r27 rjmp 33b pop r17 pop r16 pop r15 pop r14 pop r13 pop r12 pop r11 pop r10 pop r9 pop r8 pop r7 pop r6 pop r5 pop r4 pop r3 pop r2 ret .size pyjamask_128_setup_key, .-pyjamask_128_setup_key .text .global pyjamask_128_encrypt .type pyjamask_128_encrypt, @function pyjamask_128_encrypt: push r28 push r29 push r2 push r3 push r4 push r5 push r6 push r7 push r8 push r9 push r10 push r11 push r12 push r13 push r14 push r15 push r16 push r17 push r23 push r22 movw r30,r24 movw r26,r20 in r28,0x3d in r29,0x3e .L__stack_usage = 20 ld r21,X+ ld r20,X+ ld r19,X+ ld r18,X+ ld r3,X+ ld r2,X+ ld r23,X+ ld r22,X+ ld r7,X+ ld r6,X+ ld r5,X+ ld r4,X+ ld r11,X+ ld r10,X+ ld r9,X+ ld r8,X+ ldi r26,14 17: ld r12,Z+ ld r13,Z+ ld r14,Z+ ld r15,Z+ eor r18,r12 eor r19,r13 eor r20,r14 eor r21,r15 ld r12,Z+ ld r13,Z+ ld r14,Z+ ld r15,Z+ eor r22,r12 eor r23,r13 eor r2,r14 eor r3,r15 ld r12,Z+ ld r13,Z+ ld r14,Z+ ld r15,Z+ eor r4,r12 eor r5,r13 eor r6,r14 eor r7,r15 ld r12,Z+ ld r13,Z+ ld r14,Z+ ld r15,Z+ eor r8,r12 eor r9,r13 eor r10,r14 eor r11,r15 eor r18,r8 eor r19,r9 eor r20,r10 eor r21,r11 mov r0,r18 and r0,r22 eor r8,r0 mov r0,r19 and r0,r23 eor r9,r0 mov r0,r20 and r0,r2 eor r10,r0 mov r0,r21 and r0,r3 eor r11,r0 mov r0,r22 and r0,r4 eor r18,r0 mov r0,r23 and r0,r5 eor r19,r0 mov r0,r2 and r0,r6 eor r20,r0 mov r0,r3 and r0,r7 eor r21,r0 mov r0,r4 and r0,r8 eor r22,r0 mov r0,r5 and r0,r9 eor r23,r0 mov r0,r6 and r0,r10 eor r2,r0 mov r0,r7 and r0,r11 eor r3,r0 mov r0,r18 and r0,r8 eor r4,r0 mov r0,r19 and r0,r9 eor r5,r0 mov r0,r20 and r0,r10 eor r6,r0 mov r0,r21 and r0,r11 eor r7,r0 eor r4,r22 eor r5,r23 eor r6,r2 eor r7,r3 eor r22,r18 eor r23,r19 eor r2,r20 eor r3,r21 com r8 com r9 com r10 com r11 eor r4,r8 eor r5,r9 eor r6,r10 eor r7,r11 eor r8,r4 eor r9,r5 eor r10,r6 eor r11,r7 eor r4,r8 eor r5,r9 eor r6,r10 eor r7,r11 mov r0,r1 lsl r21 sbc r0,r1 ldi r27,133 mov r12,r27 ldi r27,16 mov r13,r27 ldi r27,134 mov r14,r27 ldi r27,163 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,66 ldi r25,8 ldi r16,195 ldi r17,209 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,33 ldi r25,132 ldi r16,225 ldi r17,104 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,16 ldi r25,194 ldi r16,112 ldi r17,180 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,8 ldi r25,97 ldi r16,56 ldi r17,90 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,132 ldi r25,48 ldi r16,28 ldi r17,45 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,66 ldi r25,24 ldi r16,142 ldi r17,22 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,33 ldi r25,12 ldi r16,71 ldi r17,11 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,16 ldi r25,134 ldi r16,163 ldi r17,133 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,8 ldi r25,195 ldi r16,209 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,132 ldi r25,225 ldi r16,104 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,194 ldi r25,112 ldi r16,180 ldi r17,16 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,97 ldi r25,56 ldi r16,90 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,48 ldi r25,28 ldi r16,45 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,24 ldi r25,142 ldi r16,22 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,12 ldi r25,71 ldi r16,11 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,134 ldi r25,163 ldi r16,133 ldi r17,16 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,195 ldi r25,209 ldi r16,66 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,225 ldi r25,104 ldi r16,33 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,112 ldi r25,180 ldi r16,16 ldi r17,194 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,56 ldi r25,90 ldi r16,8 ldi r17,97 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,28 ldi r25,45 ldi r16,132 ldi r17,48 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,142 ldi r25,22 ldi r16,66 ldi r17,24 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,71 ldi r25,11 ldi r16,33 ldi r17,12 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,163 ldi r25,133 ldi r16,16 ldi r17,134 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,209 ldi r25,66 ldi r16,8 ldi r17,195 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,104 ldi r25,33 ldi r16,132 ldi r17,225 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,180 ldi r25,16 ldi r16,194 ldi r17,112 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,90 ldi r25,8 ldi r16,97 ldi r17,56 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,45 ldi r25,132 ldi r16,48 ldi r17,28 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,22 ldi r25,66 ldi r16,24 ldi r17,142 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,11 ldi r25,33 ldi r16,12 ldi r17,71 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r18,r12 movw r20,r14 mov r0,r1 lsl r3 sbc r0,r1 ldi r27,33 mov r12,r27 ldi r27,112 mov r13,r27 ldi r27,65 mov r14,r27 ldi r27,99 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,16 ldi r25,184 ldi r16,160 ldi r17,177 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,8 ldi r25,92 ldi r16,208 ldi r17,88 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,4 ldi r25,46 ldi r16,104 ldi r17,44 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,2 ldi r25,23 ldi r16,52 ldi r17,22 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,129 ldi r25,11 ldi r16,26 ldi r17,11 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,192 ldi r25,5 ldi r16,141 ldi r17,133 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,224 ldi r25,130 ldi r16,198 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,112 ldi r25,65 ldi r16,99 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,184 ldi r25,160 ldi r16,177 ldi r17,16 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,92 ldi r25,208 ldi r16,88 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,46 ldi r25,104 ldi r16,44 ldi r17,4 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,23 ldi r25,52 ldi r16,22 ldi r17,2 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,11 ldi r25,26 ldi r16,11 ldi r17,129 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,5 ldi r25,141 ldi r16,133 ldi r17,192 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,130 ldi r25,198 ldi r16,66 ldi r17,224 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,65 ldi r25,99 ldi r16,33 ldi r17,112 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,160 ldi r25,177 ldi r16,16 ldi r17,184 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,208 ldi r25,88 ldi r16,8 ldi r17,92 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,104 ldi r25,44 ldi r16,4 ldi r17,46 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,52 ldi r25,22 ldi r16,2 ldi r17,23 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,26 ldi r25,11 ldi r16,129 ldi r17,11 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,141 ldi r25,133 ldi r16,192 ldi r17,5 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,198 ldi r25,66 ldi r16,224 ldi r17,130 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,99 ldi r25,33 ldi r16,112 ldi r17,65 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,177 ldi r25,16 ldi r16,184 ldi r17,160 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,88 ldi r25,8 ldi r16,92 ldi r17,208 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,44 ldi r25,4 ldi r16,46 ldi r17,104 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,22 ldi r25,2 ldi r16,23 ldi r17,52 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,11 ldi r25,129 ldi r16,11 ldi r17,26 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,133 ldi r25,192 ldi r16,5 ldi r17,141 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,66 ldi r25,224 ldi r16,130 ldi r17,198 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r22,r12 movw r2,r14 mov r0,r1 lsl r7 sbc r0,r1 ldi r27,128 mov r12,r27 ldi r27,242 mov r13,r27 ldi r27,44 mov r14,r27 ldi r27,105 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,64 ldi r25,121 ldi r16,150 ldi r17,52 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,160 ldi r25,60 ldi r16,75 ldi r17,26 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,80 ldi r25,158 ldi r16,37 ldi r17,13 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,40 ldi r25,207 ldi r16,146 ldi r17,6 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,148 ldi r25,103 ldi r16,73 ldi r17,3 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,202 ldi r25,179 ldi r16,164 ldi r17,1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,229 ldi r25,89 ldi r16,210 mov r17,r1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,242 ldi r25,44 ldi r16,105 ldi r17,128 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,121 ldi r25,150 ldi r16,52 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,60 ldi r25,75 ldi r16,26 ldi r17,160 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,158 ldi r25,37 ldi r16,13 ldi r17,80 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,207 ldi r25,146 ldi r16,6 ldi r17,40 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,103 ldi r25,73 ldi r16,3 ldi r17,148 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,179 ldi r25,164 ldi r16,1 ldi r17,202 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,89 ldi r25,210 mov r16,r1 ldi r17,229 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,44 ldi r25,105 ldi r16,128 ldi r17,242 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,150 ldi r25,52 ldi r16,64 ldi r17,121 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,75 ldi r25,26 ldi r16,160 ldi r17,60 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,37 ldi r25,13 ldi r16,80 ldi r17,158 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,146 ldi r25,6 ldi r16,40 ldi r17,207 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,73 ldi r25,3 ldi r16,148 ldi r17,103 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,164 ldi r25,1 ldi r16,202 ldi r17,179 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,210 mov r25,r1 ldi r16,229 ldi r17,89 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,105 ldi r25,128 ldi r16,242 ldi r17,44 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,52 ldi r25,64 ldi r16,121 ldi r17,150 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,26 ldi r25,160 ldi r16,60 ldi r17,75 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,13 ldi r25,80 ldi r16,158 ldi r17,37 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,6 ldi r25,40 ldi r16,207 ldi r17,146 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,3 ldi r25,148 ldi r16,103 ldi r17,73 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,1 ldi r25,202 ldi r16,179 ldi r17,164 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 mov r24,r1 ldi r25,229 ldi r16,89 ldi r17,210 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r4,r12 movw r6,r14 mov r0,r1 lsl r11 sbc r0,r1 ldi r27,19 mov r12,r27 ldi r27,72 mov r13,r27 ldi r27,165 mov r14,r27 ldi r27,72 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,9 ldi r25,164 ldi r16,82 ldi r17,164 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,4 ldi r25,82 ldi r16,41 ldi r17,210 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,2 ldi r25,169 ldi r16,20 ldi r17,105 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,129 ldi r25,84 ldi r16,138 ldi r17,52 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,64 ldi r25,42 ldi r16,69 ldi r17,154 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,32 ldi r25,149 ldi r16,34 ldi r17,77 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,144 ldi r25,74 ldi r16,145 ldi r17,38 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,72 ldi r25,165 ldi r16,72 ldi r17,19 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,164 ldi r25,82 ldi r16,164 ldi r17,9 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,82 ldi r25,41 ldi r16,210 ldi r17,4 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,169 ldi r25,20 ldi r16,105 ldi r17,2 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,84 ldi r25,138 ldi r16,52 ldi r17,129 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,42 ldi r25,69 ldi r16,154 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,149 ldi r25,34 ldi r16,77 ldi r17,32 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,74 ldi r25,145 ldi r16,38 ldi r17,144 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,165 ldi r25,72 ldi r16,19 ldi r17,72 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,82 ldi r25,164 ldi r16,9 ldi r17,164 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,41 ldi r25,210 ldi r16,4 ldi r17,82 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,20 ldi r25,105 ldi r16,2 ldi r17,169 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,138 ldi r25,52 ldi r16,129 ldi r17,84 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,69 ldi r25,154 ldi r16,64 ldi r17,42 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,34 ldi r25,77 ldi r16,32 ldi r17,149 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,145 ldi r25,38 ldi r16,144 ldi r17,74 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,72 ldi r25,19 ldi r16,72 ldi r17,165 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,164 ldi r25,9 ldi r16,164 ldi r17,82 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,210 ldi r25,4 ldi r16,82 ldi r17,41 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,105 ldi r25,2 ldi r16,169 ldi r17,20 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,52 ldi r25,129 ldi r16,84 ldi r17,138 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,154 ldi r25,64 ldi r16,42 ldi r17,69 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,77 ldi r25,32 ldi r16,149 ldi r17,34 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,38 ldi r25,144 ldi r16,74 ldi r17,145 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r8,r12 movw r10,r14 dec r26 breq 7055f rjmp 17b 7055: ld r12,Z+ ld r13,Z+ ld r14,Z+ ld r15,Z+ eor r18,r12 eor r19,r13 eor r20,r14 eor r21,r15 ld r12,Z+ ld r13,Z+ ld r14,Z+ ld r15,Z+ eor r22,r12 eor r23,r13 eor r2,r14 eor r3,r15 ld r12,Z+ ld r13,Z+ ld r14,Z+ ld r15,Z+ eor r4,r12 eor r5,r13 eor r6,r14 eor r7,r15 ld r12,Z+ ld r13,Z+ ld r14,Z+ ld r15,Z+ eor r8,r12 eor r9,r13 eor r10,r14 eor r11,r15 ldd r26,Y+1 ldd r27,Y+2 st X+,r21 st X+,r20 st X+,r19 st X+,r18 st X+,r3 st X+,r2 st X+,r23 st X+,r22 st X+,r7 st X+,r6 st X+,r5 st X+,r4 st X+,r11 st X+,r10 st X+,r9 st X+,r8 pop r0 pop r0 pop r17 pop r16 pop r15 pop r14 pop r13 pop r12 pop r11 pop r10 pop r9 pop r8 pop r7 pop r6 pop r5 pop r4 pop r3 pop r2 pop r29 pop r28 ret .size pyjamask_128_encrypt, .-pyjamask_128_encrypt .text .global pyjamask_128_decrypt .type pyjamask_128_decrypt, @function pyjamask_128_decrypt: push r28 push r29 push r2 push r3 push r4 push r5 push r6 push r7 push r8 push r9 push r10 push r11 push r12 push r13 push r14 push r15 push r16 push r17 push r23 push r22 movw r30,r24 movw r26,r20 in r28,0x3d in r29,0x3e .L__stack_usage = 20 ld r21,X+ ld r20,X+ ld r19,X+ ld r18,X+ ld r3,X+ ld r2,X+ ld r23,X+ ld r22,X+ ld r7,X+ ld r6,X+ ld r5,X+ ld r4,X+ ld r11,X+ ld r10,X+ ld r9,X+ ld r8,X+ subi r30,16 sbci r31,255 ld r13,-Z ld r12,-Z ld r27,-Z ld r26,-Z eor r8,r26 eor r9,r27 eor r10,r12 eor r11,r13 ld r13,-Z ld r12,-Z ld r27,-Z ld r26,-Z eor r4,r26 eor r5,r27 eor r6,r12 eor r7,r13 ld r13,-Z ld r12,-Z ld r27,-Z ld r26,-Z eor r22,r26 eor r23,r27 eor r2,r12 eor r3,r13 ld r13,-Z ld r12,-Z ld r27,-Z ld r26,-Z eor r18,r26 eor r19,r27 eor r20,r12 eor r21,r13 ldi r26,14 51: mov r0,r1 lsl r21 sbc r0,r1 ldi r27,33 mov r12,r27 ldi r27,161 mov r13,r27 ldi r27,55 mov r14,r27 ldi r27,32 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,144 ldi r25,208 ldi r16,27 ldi r17,144 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,72 ldi r25,232 ldi r16,13 ldi r17,72 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,36 ldi r25,244 ldi r16,6 ldi r17,36 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,18 ldi r25,122 ldi r16,3 ldi r17,18 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,9 ldi r25,189 ldi r16,1 ldi r17,9 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,132 ldi r25,222 ldi r16,128 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r21 sbc r0,r1 ldi r24,66 ldi r25,111 ldi r16,64 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,161 ldi r25,55 ldi r16,32 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,208 ldi r25,27 ldi r16,144 ldi r17,144 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,232 ldi r25,13 ldi r16,72 ldi r17,72 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,244 ldi r25,6 ldi r16,36 ldi r17,36 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,122 ldi r25,3 ldi r16,18 ldi r17,18 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,189 ldi r25,1 ldi r16,9 ldi r17,9 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,222 ldi r25,128 ldi r16,132 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r20 sbc r0,r1 ldi r24,111 ldi r25,64 ldi r16,66 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,55 ldi r25,32 ldi r16,33 ldi r17,161 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,27 ldi r25,144 ldi r16,144 ldi r17,208 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,13 ldi r25,72 ldi r16,72 ldi r17,232 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,6 ldi r25,36 ldi r16,36 ldi r17,244 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,3 ldi r25,18 ldi r16,18 ldi r17,122 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,1 ldi r25,9 ldi r16,9 ldi r17,189 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,128 ldi r25,132 ldi r16,132 ldi r17,222 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r19 sbc r0,r1 ldi r24,64 ldi r25,66 ldi r16,66 ldi r17,111 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,32 ldi r25,33 ldi r16,161 ldi r17,55 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,144 ldi r25,144 ldi r16,208 ldi r17,27 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,72 ldi r25,72 ldi r16,232 ldi r17,13 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,36 ldi r25,36 ldi r16,244 ldi r17,6 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,18 ldi r25,18 ldi r16,122 ldi r17,3 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,9 ldi r25,9 ldi r16,189 ldi r17,1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,132 ldi r25,132 ldi r16,222 ldi r17,128 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r18 sbc r0,r1 ldi r24,66 ldi r25,66 ldi r16,111 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r18,r12 movw r20,r14 mov r0,r1 lsl r3 sbc r0,r1 ldi r27,160 mov r12,r27 ldi r27,242 mov r13,r27 ldi r27,143 mov r14,r27 ldi r27,16 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,80 ldi r25,249 ldi r16,71 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,168 ldi r25,252 ldi r16,35 ldi r17,4 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,84 ldi r25,254 ldi r16,17 ldi r17,2 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,42 ldi r25,255 ldi r16,8 ldi r17,1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,149 ldi r25,127 ldi r16,132 mov r17,r1 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,202 ldi r25,63 ldi r16,66 ldi r17,128 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r3 sbc r0,r1 ldi r24,229 ldi r25,31 ldi r16,33 ldi r17,64 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,242 ldi r25,143 ldi r16,16 ldi r17,160 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,249 ldi r25,71 ldi r16,8 ldi r17,80 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,252 ldi r25,35 ldi r16,4 ldi r17,168 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,254 ldi r25,17 ldi r16,2 ldi r17,84 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,255 ldi r25,8 ldi r16,1 ldi r17,42 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,127 ldi r25,132 mov r16,r1 ldi r17,149 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,63 ldi r25,66 ldi r16,128 ldi r17,202 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r2 sbc r0,r1 ldi r24,31 ldi r25,33 ldi r16,64 ldi r17,229 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,143 ldi r25,16 ldi r16,160 ldi r17,242 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,71 ldi r25,8 ldi r16,80 ldi r17,249 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,35 ldi r25,4 ldi r16,168 ldi r17,252 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,17 ldi r25,2 ldi r16,84 ldi r17,254 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,8 ldi r25,1 ldi r16,42 ldi r17,255 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,132 mov r25,r1 ldi r16,149 ldi r17,127 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,66 ldi r25,128 ldi r16,202 ldi r17,63 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r23 sbc r0,r1 ldi r24,33 ldi r25,64 ldi r16,229 ldi r17,31 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,16 ldi r25,160 ldi r16,242 ldi r17,143 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,8 ldi r25,80 ldi r16,249 ldi r17,71 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,4 ldi r25,168 ldi r16,252 ldi r17,35 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,2 ldi r25,84 ldi r16,254 ldi r17,17 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,1 ldi r25,42 ldi r16,255 ldi r17,8 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 mov r24,r1 ldi r25,149 ldi r16,127 ldi r17,132 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,128 ldi r25,202 ldi r16,63 ldi r17,66 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r22 sbc r0,r1 ldi r24,64 ldi r25,229 ldi r16,31 ldi r17,33 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r22,r12 movw r2,r14 mov r0,r1 lsl r7 sbc r0,r1 ldi r27,192 mov r12,r27 ldi r27,216 mov r13,r27 ldi r27,84 mov r14,r27 ldi r27,144 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,96 ldi r25,108 ldi r16,42 ldi r17,72 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,48 ldi r25,54 ldi r16,21 ldi r17,36 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,24 ldi r25,155 ldi r16,10 ldi r17,18 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,140 ldi r25,77 ldi r16,5 ldi r17,9 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,198 ldi r25,166 ldi r16,130 ldi r17,4 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,99 ldi r25,83 ldi r16,65 ldi r17,2 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r7 sbc r0,r1 ldi r24,177 ldi r25,169 ldi r16,32 ldi r17,129 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,216 ldi r25,84 ldi r16,144 ldi r17,192 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,108 ldi r25,42 ldi r16,72 ldi r17,96 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,54 ldi r25,21 ldi r16,36 ldi r17,48 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,155 ldi r25,10 ldi r16,18 ldi r17,24 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,77 ldi r25,5 ldi r16,9 ldi r17,140 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,166 ldi r25,130 ldi r16,4 ldi r17,198 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,83 ldi r25,65 ldi r16,2 ldi r17,99 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r6 sbc r0,r1 ldi r24,169 ldi r25,32 ldi r16,129 ldi r17,177 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,84 ldi r25,144 ldi r16,192 ldi r17,216 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,42 ldi r25,72 ldi r16,96 ldi r17,108 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,21 ldi r25,36 ldi r16,48 ldi r17,54 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,10 ldi r25,18 ldi r16,24 ldi r17,155 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,5 ldi r25,9 ldi r16,140 ldi r17,77 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,130 ldi r25,4 ldi r16,198 ldi r17,166 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,65 ldi r25,2 ldi r16,99 ldi r17,83 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r5 sbc r0,r1 ldi r24,32 ldi r25,129 ldi r16,177 ldi r17,169 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,144 ldi r25,192 ldi r16,216 ldi r17,84 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,72 ldi r25,96 ldi r16,108 ldi r17,42 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,36 ldi r25,48 ldi r16,54 ldi r17,21 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,18 ldi r25,24 ldi r16,155 ldi r17,10 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,9 ldi r25,140 ldi r16,77 ldi r17,5 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,4 ldi r25,198 ldi r16,166 ldi r17,130 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,2 ldi r25,99 ldi r16,83 ldi r17,65 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r4 sbc r0,r1 ldi r24,129 ldi r25,177 ldi r16,169 ldi r17,32 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r4,r12 movw r6,r14 mov r0,r1 lsl r11 sbc r0,r1 ldi r27,23 mov r12,r27 ldi r27,177 mov r13,r27 ldi r27,84 mov r14,r27 ldi r27,51 mov r15,r27 and r12,r0 and r13,r0 and r14,r0 and r15,r0 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,139 ldi r25,88 ldi r16,170 ldi r17,153 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,69 ldi r25,44 ldi r16,213 ldi r17,204 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,34 ldi r25,150 ldi r16,106 ldi r17,230 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,17 ldi r25,75 ldi r16,53 ldi r17,115 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,136 ldi r25,165 ldi r16,154 ldi r17,185 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,196 ldi r25,82 ldi r16,205 ldi r17,92 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r11 sbc r0,r1 ldi r24,98 ldi r25,169 ldi r16,102 ldi r17,46 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,177 ldi r25,84 ldi r16,51 ldi r17,23 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,88 ldi r25,170 ldi r16,153 ldi r17,139 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,44 ldi r25,213 ldi r16,204 ldi r17,69 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,150 ldi r25,106 ldi r16,230 ldi r17,34 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,75 ldi r25,53 ldi r16,115 ldi r17,17 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,165 ldi r25,154 ldi r16,185 ldi r17,136 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,82 ldi r25,205 ldi r16,92 ldi r17,196 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r10 sbc r0,r1 ldi r24,169 ldi r25,102 ldi r16,46 ldi r17,98 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,84 ldi r25,51 ldi r16,23 ldi r17,177 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,170 ldi r25,153 ldi r16,139 ldi r17,88 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,213 ldi r25,204 ldi r16,69 ldi r17,44 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,106 ldi r25,230 ldi r16,34 ldi r17,150 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,53 ldi r25,115 ldi r16,17 ldi r17,75 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,154 ldi r25,185 ldi r16,136 ldi r17,165 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,205 ldi r25,92 ldi r16,196 ldi r17,82 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r9 sbc r0,r1 ldi r24,102 ldi r25,46 ldi r16,98 ldi r17,169 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,51 ldi r25,23 ldi r16,177 ldi r17,84 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,153 ldi r25,139 ldi r16,88 ldi r17,170 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,204 ldi r25,69 ldi r16,44 ldi r17,213 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,230 ldi r25,34 ldi r16,150 ldi r17,106 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,115 ldi r25,17 ldi r16,75 ldi r17,53 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,185 ldi r25,136 ldi r16,165 ldi r17,154 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,92 ldi r25,196 ldi r16,82 ldi r17,205 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 mov r0,r1 lsl r8 sbc r0,r1 ldi r24,46 ldi r25,98 ldi r16,169 ldi r17,102 and r24,r0 and r25,r0 and r16,r0 and r17,r0 eor r12,r24 eor r13,r25 eor r14,r16 eor r15,r17 movw r8,r12 movw r10,r14 eor r4,r8 eor r5,r9 eor r6,r10 eor r7,r11 eor r8,r4 eor r9,r5 eor r10,r6 eor r11,r7 eor r4,r8 eor r5,r9 eor r6,r10 eor r7,r11 com r8 com r9 com r10 com r11 eor r22,r18 eor r23,r19 eor r2,r20 eor r3,r21 eor r4,r22 eor r5,r23 eor r6,r2 eor r7,r3 mov r0,r18 and r0,r8 eor r4,r0 mov r0,r19 and r0,r9 eor r5,r0 mov r0,r20 and r0,r10 eor r6,r0 mov r0,r21 and r0,r11 eor r7,r0 mov r0,r4 and r0,r8 eor r22,r0 mov r0,r5 and r0,r9 eor r23,r0 mov r0,r6 and r0,r10 eor r2,r0 mov r0,r7 and r0,r11 eor r3,r0 mov r0,r22 and r0,r4 eor r18,r0 mov r0,r23 and r0,r5 eor r19,r0 mov r0,r2 and r0,r6 eor r20,r0 mov r0,r3 and r0,r7 eor r21,r0 mov r0,r18 and r0,r22 eor r8,r0 mov r0,r19 and r0,r23 eor r9,r0 mov r0,r20 and r0,r2 eor r10,r0 mov r0,r21 and r0,r3 eor r11,r0 eor r18,r8 eor r19,r9 eor r20,r10 eor r21,r11 ld r15,-Z ld r14,-Z ld r13,-Z ld r12,-Z eor r8,r12 eor r9,r13 eor r10,r14 eor r11,r15 ld r15,-Z ld r14,-Z ld r13,-Z ld r12,-Z eor r4,r12 eor r5,r13 eor r6,r14 eor r7,r15 ld r15,-Z ld r14,-Z ld r13,-Z ld r12,-Z eor r22,r12 eor r23,r13 eor r2,r14 eor r3,r15 ld r15,-Z ld r14,-Z ld r13,-Z ld r12,-Z eor r18,r12 eor r19,r13 eor r20,r14 eor r21,r15 dec r26 breq 7089f rjmp 51b 7089: ldd r26,Y+1 ldd r27,Y+2 st X+,r21 st X+,r20 st X+,r19 st X+,r18 st X+,r3 st X+,r2 st X+,r23 st X+,r22 st X+,r7 st X+,r6 st X+,r5 st X+,r4 st X+,r11 st X+,r10 st X+,r9 st X+,r8 pop r0 pop r0 pop r17 pop r16 pop r15 pop r14 pop r13 pop r12 pop r11 pop r10 pop r9 pop r8 pop r7 pop r6 pop r5 pop r4 pop r3 pop r2 pop r29 pop r28 ret .size pyjamask_128_decrypt, .-pyjamask_128_decrypt #endif