0% found this document useful (0 votes)
34 views33 pages

Diss of Code

The document contains the disassembly of an ELF file formatted for AVR microcontrollers, detailing various sections and functions including interrupt vectors, data handling, and digital input/output operations. It includes assembly instructions for initializing, reading, and manipulating digital pins, as well as handling bad interrupts and global constructors. The disassembly provides a low-level view of the program's execution flow and memory management routines.

Uploaded by

DStavenau
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views33 pages

Diss of Code

The document contains the disassembly of an ELF file formatted for AVR microcontrollers, detailing various sections and functions including interrupt vectors, data handling, and digital input/output operations. It includes assembly instructions for initializing, reading, and manipulating digital pins, as well as handling bad interrupts and global constructors. The disassembly provides a low-level view of the program's execution flow and memory management routines.

Uploaded by

DStavenau
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 33

\\adir.hull.ac.uk\home\352\352500\Desktop\sketch_jun27a.ino.

elf: file format


elf32-avr

Disassembly of section .text:

00000000 <__vectors>:
0: 0c 94 63 00 jmp 0xc6 ; 0xc6 <__dtors_end>
4: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
8: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
c: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
10: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
14: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
18: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
1c: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
20: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
24: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
28: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
2c: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
30: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
34: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
38: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
3c: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
40: 0c 94 a9 02 jmp 0x552 ; 0x552 <__vector_16>
44: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
48: 0c 94 19 03 jmp 0x632 ; 0x632 <__vector_18>
4c: 0c 94 f3 02 jmp 0x5e6 ; 0x5e6 <__vector_19>
50: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
54: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
58: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
5c: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
60: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>
64: 0c 94 8b 00 jmp 0x116 ; 0x116 <__bad_interrupt>

00000068 <__trampolines_end>:
68: 00 00 nop
6a: 00 00 nop
6c: 24 00 .word 0x0024 ; ????
6e: 27 00 .word 0x0027 ; ????
70: 2a 00 .word 0x002a ; ????

00000072 <port_to_output_PGM>:
72: 00 00 00 00 25 00 28 00 2b 00 ....%.(.+.

0000007c <port_to_input_PGM>:
7c: 00 00 00 00 23 00 26 00 29 00 ....#.&.).

00000086 <digital_pin_to_port_PGM>:
86: 04 04 04 04 04 04 04 04 02 02 02 02 02 02 03 03 ................
96: 03 03 03 03 ....

0000009a <digital_pin_to_bit_mask_PGM>:
9a: 01 02 04 08 10 20 40 80 01 02 04 08 10 20 01 02 ..... @...... ..
aa: 04 08 10 20 ...

000000ae <digital_pin_to_timer_PGM>:
ae: 00 00 00 08 00 02 01 00 00 03 04 07 00 00 00 00 ................
be: 00 00 00 00 ....

000000c2 <__ctors_start>:
c2: 4b 03 fmul r20, r19

000000c4 <__ctors_end>:
c4: d7 04 cpc r13, r7

000000c6 <__dtors_end>:
c6: 11 24 eor r1, r1
c8: 1f be out 0x3f, r1 ; 63
ca: cf ef ldi r28, 0xFF ; 255
cc: d8 e0 ldi r29, 0x08 ; 8
ce: de bf out 0x3e, r29 ; 62
d0: cd bf out 0x3d, r28 ; 61

000000d2 <__do_clear_bss>:
d2: 21 e0 ldi r18, 0x01 ; 1
d4: a8 e3 ldi r26, 0x38 ; 56
d6: b1 e0 ldi r27, 0x01 ; 1
d8: 01 c0 rjmp .+2 ; 0xdc <.do_clear_bss_start>

000000da <.do_clear_bss_loop>:
da: 1d 92 st X+, r1

000000dc <.do_clear_bss_start>:
dc: ae 3e cpi r26, 0xEE ; 238
de: b2 07 cpc r27, r18
e0: e1 f7 brne .-8 ; 0xda <.do_clear_bss_loop>

000000e2 <__do_copy_data>:
e2: 11 e0 ldi r17, 0x01 ; 1
e4: a0 e0 ldi r26, 0x00 ; 0
e6: b1 e0 ldi r27, 0x01 ; 1
e8: ec e7 ldi r30, 0x7C ; 124
ea: fe e0 ldi r31, 0x0E ; 14
ec: 02 c0 rjmp .+4 ; 0xf2 <__do_copy_data+0x10>
ee: 05 90 lpm r0, Z+
f0: 0d 92 st X+, r0
f2: a8 33 cpi r26, 0x38 ; 56
f4: b1 07 cpc r27, r17
f6: d9 f7 brne .-10 ; 0xee <__do_copy_data+0xc>

000000f8 <__do_global_ctors>:
f8: 10 e0 ldi r17, 0x00 ; 0
fa: c2 e6 ldi r28, 0x62 ; 98
fc: d0 e0 ldi r29, 0x00 ; 0
fe: 04 c0 rjmp .+8 ; 0x108 <__do_global_ctors+0x10>
100: 21 97 sbiw r28, 0x01 ; 1
102: fe 01 movw r30, r28
104: 0e 94 39 05 call 0xa72 ; 0xa72 <__tablejump2__>
108: c1 36 cpi r28, 0x61 ; 97
10a: d1 07 cpc r29, r17
10c: c9 f7 brne .-14 ; 0x100 <__do_global_ctors+0x8>
10e: 0e 94 85 03 call 0x70a ; 0x70a <main>
112: 0c 94 31 07 jmp 0xe62 ; 0xe62 <__do_global_dtors>

00000116 <__bad_interrupt>:
116: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>

0000011a <turnOffPWM>:
11a: 83 30 cpi r24, 0x03 ; 3
11c: 81 f0 breq .+32 ; 0x13e <turnOffPWM+0x24>
11e: 28 f4 brcc .+10 ; 0x12a <turnOffPWM+0x10>
120: 81 30 cpi r24, 0x01 ; 1
122: 99 f0 breq .+38 ; 0x14a <turnOffPWM+0x30>
124: 82 30 cpi r24, 0x02 ; 2
126: a9 f0 breq .+42 ; 0x152 <turnOffPWM+0x38>
128: 08 95 ret
12a: 87 30 cpi r24, 0x07 ; 7
12c: a9 f0 breq .+42 ; 0x158 <turnOffPWM+0x3e>
12e: 88 30 cpi r24, 0x08 ; 8
130: c9 f0 breq .+50 ; 0x164 <turnOffPWM+0x4a>
132: 84 30 cpi r24, 0x04 ; 4
134: b1 f4 brne .+44 ; 0x162 <turnOffPWM+0x48>
136: 80 91 80 00 lds r24, 0x0080 ; 0x800080
<__DATA_REGION_ORIGIN__+0x20>
13a: 8f 7d andi r24, 0xDF ; 223
13c: 03 c0 rjmp .+6 ; 0x144 <turnOffPWM+0x2a>
13e: 80 91 80 00 lds r24, 0x0080 ; 0x800080
<__DATA_REGION_ORIGIN__+0x20>
142: 8f 77 andi r24, 0x7F ; 127
144: 80 93 80 00 sts 0x0080, r24 ; 0x800080
<__DATA_REGION_ORIGIN__+0x20>
148: 08 95 ret
14a: 84 b5 in r24, 0x24 ; 36
14c: 8f 77 andi r24, 0x7F ; 127
14e: 84 bd out 0x24, r24 ; 36
150: 08 95 ret
152: 84 b5 in r24, 0x24 ; 36
154: 8f 7d andi r24, 0xDF ; 223
156: fb cf rjmp .-10 ; 0x14e <turnOffPWM+0x34>
158: 80 91 b0 00 lds r24, 0x00B0 ; 0x8000b0
<__DATA_REGION_ORIGIN__+0x50>
15c: 8f 77 andi r24, 0x7F ; 127
15e: 80 93 b0 00 sts 0x00B0, r24 ; 0x8000b0
<__DATA_REGION_ORIGIN__+0x50>
162: 08 95 ret
164: 80 91 b0 00 lds r24, 0x00B0 ; 0x8000b0
<__DATA_REGION_ORIGIN__+0x50>
168: 8f 7d andi r24, 0xDF ; 223
16a: f9 cf rjmp .-14 ; 0x15e <turnOffPWM+0x44>

0000016c <digitalRead>:
16c: cf 93 push r28
16e: df 93 push r29
170: 28 2f mov r18, r24
172: 30 e0 ldi r19, 0x00 ;0
174: f9 01 movw r30, r18
176: e2 55 subi r30, 0x52 ; 82
178: ff 4f sbci r31, 0xFF ; 255
17a: 84 91 lpm r24, Z
17c: f9 01 movw r30, r18
17e: e6 56 subi r30, 0x66 ; 102
180: ff 4f sbci r31, 0xFF ; 255
182: d4 91 lpm r29, Z
184: f9 01 movw r30, r18
186: ea 57 subi r30, 0x7A ; 122
188: ff 4f sbci r31, 0xFF ; 255
18a: c4 91 lpm r28, Z
18c: cc 23 and r28, r28
18e: a1 f0 breq .+40 ; 0x1b8 <digitalRead+0x4c>
190: 81 11 cpse r24, r1
192: 0e 94 8d 00 call 0x11a ; 0x11a <turnOffPWM>
196: ec 2f mov r30, r28
198: f0 e0 ldi r31, 0x00 ;0
19a: ee 0f add r30, r30
19c: ff 1f adc r31, r31
19e: e4 58 subi r30, 0x84 ; 132
1a0: ff 4f sbci r31, 0xFF ; 255
1a2: a5 91 lpm r26, Z+
1a4: b4 91 lpm r27, Z
1a6: ec 91 ld r30, X
1a8: ed 23 and r30, r29
1aa: 81 e0 ldi r24, 0x01 ;1
1ac: 90 e0 ldi r25, 0x00 ;0
1ae: 09 f4 brne .+2 ; 0x1b2 <digitalRead+0x46>
1b0: 80 e0 ldi r24, 0x00 ;0
1b2: df 91 pop r29
1b4: cf 91 pop r28
1b6: 08 95 ret
1b8: 80 e0 ldi r24, 0x00 ;0
1ba: 90 e0 ldi r25, 0x00 ;0
1bc: fa cf rjmp .-12 ; 0x1b2 <digitalRead+0x46>

000001be <digitalWrite>:
1be: 1f 93 push r17
1c0: cf 93 push r28
1c2: df 93 push r29
1c4: 28 2f mov r18, r24
1c6: 30 e0 ldi r19, 0x00 ;0
1c8: f9 01 movw r30, r18
1ca: e2 55 subi r30, 0x52 ; 82
1cc: ff 4f sbci r31, 0xFF ; 255
1ce: 84 91 lpm r24, Z
1d0: f9 01 movw r30, r18
1d2: e6 56 subi r30, 0x66 ; 102
1d4: ff 4f sbci r31, 0xFF ; 255
1d6: d4 91 lpm r29, Z
1d8: f9 01 movw r30, r18
1da: ea 57 subi r30, 0x7A ; 122
1dc: ff 4f sbci r31, 0xFF ; 255
1de: c4 91 lpm r28, Z
1e0: cc 23 and r28, r28
1e2: a9 f0 breq .+42 ; 0x20e <digitalWrite+0x50>
1e4: 16 2f mov r17, r22
1e6: 81 11 cpse r24, r1
1e8: 0e 94 8d 00 call 0x11a ; 0x11a <turnOffPWM>
1ec: ec 2f mov r30, r28
1ee: f0 e0 ldi r31, 0x00 ;0
1f0: ee 0f add r30, r30
1f2: ff 1f adc r31, r31
1f4: ee 58 subi r30, 0x8E ; 142
1f6: ff 4f sbci r31, 0xFF ; 255
1f8: a5 91 lpm r26, Z+
1fa: b4 91 lpm r27, Z
1fc: 8f b7 in r24, 0x3f ; 63
1fe: f8 94 cli
200: ec 91 ld r30, X
202: 11 11 cpse r17, r1
204: 08 c0 rjmp .+16 ; 0x216 <digitalWrite+0x58>
206: d0 95 com r29
208: de 23 and r29, r30
20a: dc 93 st X, r29
20c: 8f bf out 0x3f, r24 ; 63
20e: df 91 pop r29
210: cf 91 pop r28
212: 1f 91 pop r17
214: 08 95 ret
216: de 2b or r29, r30
218: f8 cf rjmp .-16 ; 0x20a <digitalWrite+0x4c>

0000021a <pinMode>:
21a: cf 93 push r28
21c: df 93 push r29
21e: 90 e0 ldi r25, 0x00 ;0
220: fc 01 movw r30, r24
222: e6 56 subi r30, 0x66 ; 102
224: ff 4f sbci r31, 0xFF ; 255
226: 24 91 lpm r18, Z
228: 8a 57 subi r24, 0x7A ; 122
22a: 9f 4f sbci r25, 0xFF ; 255
22c: fc 01 movw r30, r24
22e: 84 91 lpm r24, Z
230: 88 23 and r24, r24
232: d1 f0 breq .+52 ; 0x268 <pinMode+0x4e>
234: 90 e0 ldi r25, 0x00 ;0
236: 88 0f add r24, r24
238: 99 1f adc r25, r25
23a: fc 01 movw r30, r24
23c: e8 59 subi r30, 0x98 ; 152
23e: ff 4f sbci r31, 0xFF ; 255
240: a5 91 lpm r26, Z+
242: b4 91 lpm r27, Z
244: fc 01 movw r30, r24
246: ee 58 subi r30, 0x8E ; 142
248: ff 4f sbci r31, 0xFF ; 255
24a: c5 91 lpm r28, Z+
24c: d4 91 lpm r29, Z
24e: 61 11 cpse r22, r1
250: 0e c0 rjmp .+28 ; 0x26e <pinMode+0x54>
252: 9f b7 in r25, 0x3f ; 63
254: f8 94 cli
256: 8c 91 ld r24, X
258: e2 2f mov r30, r18
25a: e0 95 com r30
25c: 8e 23 and r24, r30
25e: 8c 93 st X, r24
260: 28 81 ld r18, Y
262: e2 23 and r30, r18
264: e8 83 st Y, r30
266: 9f bf out 0x3f, r25 ; 63
268: df 91 pop r29
26a: cf 91 pop r28
26c: 08 95 ret
26e: 8f b7 in r24, 0x3f ; 63
270: f8 94 cli
272: ec 91 ld r30, X
274: e2 2b or r30, r18
276: ec 93 st X, r30
278: 8f bf out 0x3f, r24 ; 63
27a: f6 cf rjmp .-20 ; 0x268 <pinMode+0x4e>

0000027c <_ZN5Print5writeEPKhj>:
27c: af 92 push r10
27e: bf 92 push r11
280: cf 92 push r12
282: df 92 push r13
284: ef 92 push r14
286: ff 92 push r15
288: 0f 93 push r16
28a: 1f 93 push r17
28c: cf 93 push r28
28e: df 93 push r29
290: 6c 01 movw r12, r24
292: 7b 01 movw r14, r22
294: 8b 01 movw r16, r22
296: 04 0f add r16, r20
298: 15 1f adc r17, r21
29a: eb 01 movw r28, r22
29c: 5e 01 movw r10, r28
29e: ae 18 sub r10, r14
2a0: bf 08 sbc r11, r15
2a2: c0 17 cp r28, r16
2a4: d1 07 cpc r29, r17
2a6: 59 f0 breq .+22 ; 0x2be <_ZN5Print5writeEPKhj+0x42>
2a8: 69 91 ld r22, Y+
2aa: d6 01 movw r26, r12
2ac: ed 91 ld r30, X+
2ae: fc 91 ld r31, X
2b0: 01 90 ld r0, Z+
2b2: f0 81 ld r31, Z
2b4: e0 2d mov r30, r0
2b6: c6 01 movw r24, r12
2b8: 09 95 icall
2ba: 89 2b or r24, r25
2bc: 79 f7 brne .-34 ; 0x29c <_ZN5Print5writeEPKhj+0x20>
2be: c5 01 movw r24, r10
2c0: df 91 pop r29
2c2: cf 91 pop r28
2c4: 1f 91 pop r17
2c6: 0f 91 pop r16
2c8: ff 90 pop r15
2ca: ef 90 pop r14
2cc: df 90 pop r13
2ce: cf 90 pop r12
2d0: bf 90 pop r11
2d2: af 90 pop r10
2d4: 08 95 ret

000002d6 <_ZN14HardwareSerial17availableForWriteEv>:
2d6: fc 01 movw r30, r24
2d8: 53 8d ldd r21, Z+27 ; 0x1b
2da: 44 8d ldd r20, Z+28 ; 0x1c
2dc: 25 2f mov r18, r21
2de: 30 e0 ldi r19, 0x00 ;0
2e0: 84 2f mov r24, r20
2e2: 90 e0 ldi r25, 0x00 ;0
2e4: 82 1b sub r24, r18
2e6: 93 0b sbc r25, r19
2e8: 54 17 cp r21, r20
2ea: 10 f0 brcs .+4 ; 0x2f0
<_ZN14HardwareSerial17availableForWriteEv+0x1a>
2ec: cf 96 adiw r24, 0x3f ; 63
2ee: 08 95 ret
2f0: 01 97 sbiw r24, 0x01 ;1
2f2: 08 95 ret

000002f4 <_ZN14HardwareSerial4readEv>:
2f4: fc 01 movw r30, r24
2f6: 91 8d ldd r25, Z+25 ; 0x19
2f8: 82 8d ldd r24, Z+26 ; 0x1a
2fa: 98 17 cp r25, r24
2fc: 61 f0 breq .+24 ; 0x316
<_ZN14HardwareSerial4readEv+0x22>
2fe: a2 8d ldd r26, Z+26 ; 0x1a
300: ae 0f add r26, r30
302: bf 2f mov r27, r31
304: b1 1d adc r27, r1
306: 5d 96 adiw r26, 0x1d ; 29
308: 8c 91 ld r24, X
30a: 92 8d ldd r25, Z+26 ; 0x1a
30c: 9f 5f subi r25, 0xFF ; 255
30e: 9f 73 andi r25, 0x3F ; 63
310: 92 8f std Z+26, r25 ; 0x1a
312: 90 e0 ldi r25, 0x00 ; 0
314: 08 95 ret
316: 8f ef ldi r24, 0xFF ; 255
318: 9f ef ldi r25, 0xFF ; 255
31a: 08 95 ret

0000031c <_ZN14HardwareSerial4peekEv>:
31c: fc 01 movw r30, r24
31e: 91 8d ldd r25, Z+25 ; 0x19
320: 82 8d ldd r24, Z+26 ; 0x1a
322: 98 17 cp r25, r24
324: 31 f0 breq .+12 ; 0x332
<_ZN14HardwareSerial4peekEv+0x16>
326: 82 8d ldd r24, Z+26 ; 0x1a
328: e8 0f add r30, r24
32a: f1 1d adc r31, r1
32c: 85 8d ldd r24, Z+29 ; 0x1d
32e: 90 e0 ldi r25, 0x00 ;0
330: 08 95 ret
332: 8f ef ldi r24, 0xFF ; 255
334: 9f ef ldi r25, 0xFF ; 255
336: 08 95 ret

00000338 <_ZN14HardwareSerial9availableEv>:
338: fc 01 movw r30, r24
33a: 91 8d ldd r25, Z+25 ; 0x19
33c: 22 8d ldd r18, Z+26 ; 0x1a
33e: 89 2f mov r24, r25
340: 90 e0 ldi r25, 0x00 ;0
342: 80 5c subi r24, 0xC0 ; 192
344: 9f 4f sbci r25, 0xFF ; 255
346: 82 1b sub r24, r18
348: 91 09 sbc r25, r1
34a: 8f 73 andi r24, 0x3F ; 63
34c: 99 27 eor r25, r25
34e: 08 95 ret

00000350 <_Z17Serial0_availablev>:
350: 87 e4 ldi r24, 0x47 ; 71
352: 91 e0 ldi r25, 0x01 ;1
354: 0e 94 9c 01 call 0x338 ; 0x338 <_ZN14HardwareSerial9availableEv>
358: 21 e0 ldi r18, 0x01 ;1
35a: 89 2b or r24, r25
35c: 09 f4 brne .+2 ; 0x360 <_Z17Serial0_availablev+0x10>
35e: 20 e0 ldi r18, 0x00 ;0
360: 82 2f mov r24, r18
362: 08 95 ret

00000364 <_Z14serialEventRunv>:
364: 80 e0 ldi r24, 0x00 ;0
366: 90 e0 ldi r25, 0x00 ;0
368: 89 2b or r24, r25
36a: 29 f0 breq .+10 ; 0x376 <_Z14serialEventRunv+0x12>
36c: 0e 94 a8 01 call 0x350 ; 0x350 <_Z17Serial0_availablev>
370: 81 11 cpse r24, r1
372: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
376: 08 95 ret

00000378 <_ZN14HardwareSerial17_tx_udr_empty_irqEv>:
378: fc 01 movw r30, r24
37a: a4 8d ldd r26, Z+28 ; 0x1c
37c: a8 0f add r26, r24
37e: b9 2f mov r27, r25
380: b1 1d adc r27, r1
382: a3 5a subi r26, 0xA3 ; 163
384: bf 4f sbci r27, 0xFF ; 255
386: 2c 91 ld r18, X
388: 84 8d ldd r24, Z+28 ; 0x1c
38a: 90 e0 ldi r25, 0x00 ;0
38c: 01 96 adiw r24, 0x01 ;1
38e: 8f 73 andi r24, 0x3F ; 63
390: 99 27 eor r25, r25
392: 84 8f std Z+28, r24 ; 0x1c
394: a6 89 ldd r26, Z+22 ; 0x16
396: b7 89 ldd r27, Z+23 ; 0x17
398: 2c 93 st X, r18
39a: a0 89 ldd r26, Z+16 ; 0x10
39c: b1 89 ldd r27, Z+17 ; 0x11
39e: 8c 91 ld r24, X
3a0: 83 70 andi r24, 0x03 ;3
3a2: 80 64 ori r24, 0x40 ; 64
3a4: 8c 93 st X, r24
3a6: 93 8d ldd r25, Z+27 ; 0x1b
3a8: 84 8d ldd r24, Z+28 ; 0x1c
3aa: 98 13 cpse r25, r24
3ac: 06 c0 rjmp .+12 ; 0x3ba
<_ZN14HardwareSerial17_tx_udr_empty_irqEv+0x42>
3ae: 02 88 ldd r0, Z+18 ; 0x12
3b0: f3 89 ldd r31, Z+19 ; 0x13
3b2: e0 2d mov r30, r0
3b4: 80 81 ld r24, Z
3b6: 8f 7d andi r24, 0xDF ; 223
3b8: 80 83 st Z, r24
3ba: 08 95 ret

000003bc <_ZN14HardwareSerial5writeEh>:
3bc: ef 92 push r14
3be: ff 92 push r15
3c0: 0f 93 push r16
3c2: 1f 93 push r17
3c4: cf 93 push r28
3c6: df 93 push r29
3c8: ec 01 movw r28, r24
3ca: 81 e0 ldi r24, 0x01 ; 1
3cc: 88 8f std Y+24, r24 ; 0x18
3ce: 9b 8d ldd r25, Y+27 ; 0x1b
3d0: 8c 8d ldd r24, Y+28 ; 0x1c
3d2: 98 13 cpse r25, r24
3d4: 1a c0 rjmp .+52 ; 0x40a
<__LOCK_REGION_LENGTH__+0xa>
3d6: e8 89 ldd r30, Y+16 ; 0x10
3d8: f9 89 ldd r31, Y+17 ; 0x11
3da: 80 81 ld r24, Z
3dc: 85 ff sbrs r24, 5
3de: 15 c0 rjmp .+42 ; 0x40a
<__LOCK_REGION_LENGTH__+0xa>
3e0: 9f b7 in r25, 0x3f ; 63
3e2: f8 94 cli
3e4: ee 89 ldd r30, Y+22 ; 0x16
3e6: ff 89 ldd r31, Y+23 ; 0x17
3e8: 60 83 st Z, r22
3ea: e8 89 ldd r30, Y+16 ; 0x10
3ec: f9 89 ldd r31, Y+17 ; 0x11
3ee: 80 81 ld r24, Z
3f0: 83 70 andi r24, 0x03 ;3
3f2: 80 64 ori r24, 0x40 ; 64
3f4: 80 83 st Z, r24
3f6: 9f bf out 0x3f, r25 ; 63
3f8: 81 e0 ldi r24, 0x01 ;1
3fa: 90 e0 ldi r25, 0x00 ;0
3fc: df 91 pop r29
3fe: cf 91 pop r28
400: 1f 91 pop r17
402: 0f 91 pop r16
404: ff 90 pop r15
406: ef 90 pop r14
408: 08 95 ret
40a: f6 2e mov r15, r22
40c: 0b 8d ldd r16, Y+27 ; 0x1b
40e: 10 e0 ldi r17, 0x00 ; 0
410: 0f 5f subi r16, 0xFF ; 255
412: 1f 4f sbci r17, 0xFF ; 255
414: 0f 73 andi r16, 0x3F ; 63
416: 11 27 eor r17, r17
418: e0 2e mov r14, r16
41a: 8c 8d ldd r24, Y+28 ; 0x1c
41c: 8e 11 cpse r24, r14
41e: 0c c0 rjmp .+24 ; 0x438
<__LOCK_REGION_LENGTH__+0x38>
420: 0f b6 in r0, 0x3f ; 63
422: 07 fc sbrc r0, 7
424: fa cf rjmp .-12 ; 0x41a
<__LOCK_REGION_LENGTH__+0x1a>
426: e8 89 ldd r30, Y+16 ; 0x10
428: f9 89 ldd r31, Y+17 ; 0x11
42a: 80 81 ld r24, Z
42c: 85 ff sbrs r24, 5
42e: f5 cf rjmp .-22 ; 0x41a
<__LOCK_REGION_LENGTH__+0x1a>
430: ce 01 movw r24, r28
432: 0e 94 bc 01 call 0x378 ; 0x378
<_ZN14HardwareSerial17_tx_udr_empty_irqEv>
436: f1 cf rjmp .-30 ; 0x41a
<__LOCK_REGION_LENGTH__+0x1a>
438: eb 8d ldd r30, Y+27 ; 0x1b
43a: ec 0f add r30, r28
43c: fd 2f mov r31, r29
43e: f1 1d adc r31, r1
440: e3 5a subi r30, 0xA3 ; 163
442: ff 4f sbci r31, 0xFF ; 255
444: f0 82 st Z, r15
446: 9f b7 in r25, 0x3f ; 63
448: f8 94 cli
44a: 0b 8f std Y+27, r16 ; 0x1b
44c: ea 89 ldd r30, Y+18 ; 0x12
44e: fb 89 ldd r31, Y+19 ; 0x13
450: 80 81 ld r24, Z
452: 80 62 ori r24, 0x20 ; 32
454: cf cf rjmp .-98 ; 0x3f4
<_ZN14HardwareSerial5writeEh+0x38>

00000456 <_ZN14HardwareSerial5flushEv>:
456: cf 93 push r28
458: df 93 push r29
45a: ec 01 movw r28, r24
45c: 88 8d ldd r24, Y+24 ; 0x18
45e: 88 23 and r24, r24
460: b9 f0 breq .+46 ; 0x490
<_ZN14HardwareSerial5flushEv+0x3a>
462: aa 89 ldd r26, Y+18 ; 0x12
464: bb 89 ldd r27, Y+19 ; 0x13
466: e8 89 ldd r30, Y+16 ; 0x10
468: f9 89 ldd r31, Y+17 ; 0x11
46a: 8c 91 ld r24, X
46c: 85 fd sbrc r24, 5
46e: 03 c0 rjmp .+6 ; 0x476
<_ZN14HardwareSerial5flushEv+0x20>
470: 80 81 ld r24, Z
472: 86 fd sbrc r24, 6
474: 0d c0 rjmp .+26 ; 0x490
<_ZN14HardwareSerial5flushEv+0x3a>
476: 0f b6 in r0, 0x3f ; 63
478: 07 fc sbrc r0, 7
47a: f7 cf rjmp .-18 ; 0x46a
<_ZN14HardwareSerial5flushEv+0x14>
47c: 8c 91 ld r24, X
47e: 85 ff sbrs r24, 5
480: f2 cf rjmp .-28 ; 0x466
<_ZN14HardwareSerial5flushEv+0x10>
482: 80 81 ld r24, Z
484: 85 ff sbrs r24, 5
486: ed cf rjmp .-38 ; 0x462
<_ZN14HardwareSerial5flushEv+0xc>
488: ce 01 movw r24, r28
48a: 0e 94 bc 01 call 0x378 ; 0x378
<_ZN14HardwareSerial17_tx_udr_empty_irqEv>
48e: e9 cf rjmp .-46 ; 0x462
<_ZN14HardwareSerial5flushEv+0xc>
490: df 91 pop r29
492: cf 91 pop r28
494: 08 95 ret

00000496 <_ZN5Print5writeEPKc.part.2.constprop.23>:
496: fc 01 movw r30, r24
498: 01 90 ld r0, Z+
49a: 00 20 and r0, r0
49c: e9 f7 brne .-6 ; 0x498
<_ZN5Print5writeEPKc.part.2.constprop.23+0x2>
49e: 31 97 sbiw r30, 0x01 ;1
4a0: af 01 movw r20, r30
4a2: 48 1b sub r20, r24
4a4: 59 0b sbc r21, r25
4a6: bc 01 movw r22, r24
4a8: 87 e4 ldi r24, 0x47 ; 71
4aa: 91 e0 ldi r25, 0x01 ;1
4ac: 0c 94 3e 01 jmp 0x27c ; 0x27c <_ZN5Print5writeEPKhj>

000004b0 <_ZN6String4copyEPKcj.constprop.7>:
4b0: 0f 93 push r16
4b2: 1f 93 push r17
4b4: cf 93 push r28
4b6: df 93 push r29
4b8: 8c 01 movw r16, r24
4ba: eb 01 movw r28, r22
4bc: 80 91 e4 01 lds r24, 0x01E4 ; 0x8001e4 <encdir>
4c0: 90 91 e5 01 lds r25, 0x01E5 ; 0x8001e5 <encdir+0x1>
4c4: 00 97 sbiw r24, 0x00 ;0
4c6: 39 f0 breq .+14 ; 0x4d6
<_ZN6String4copyEPKcj.constprop.7+0x26>
4c8: 20 91 e6 01 lds r18, 0x01E6 ; 0x8001e6 <encdir+0x2>
4cc: 30 91 e7 01 lds r19, 0x01E7 ; 0x8001e7 <encdir+0x3>
4d0: 26 17 cp r18, r22
4d2: 37 07 cpc r19, r23
4d4: b8 f4 brcc .+46 ; 0x504
<_ZN6String4copyEPKcj.constprop.7+0x54>
4d6: be 01 movw r22, r28
4d8: 6f 5f subi r22, 0xFF ; 255
4da: 7f 4f sbci r23, 0xFF ; 255
4dc: 0e 94 64 06 call 0xcc8 ; 0xcc8 <realloc>
4e0: 00 97 sbiw r24, 0x00 ;0
4e2: e1 f0 breq .+56 ; 0x51c
<_ZN6String4copyEPKcj.constprop.7+0x6c>
4e4: 90 93 e5 01 sts 0x01E5, r25 ; 0x8001e5 <encdir+0x1>
4e8: 80 93 e4 01 sts 0x01E4, r24 ; 0x8001e4 <encdir>
4ec: d0 93 e7 01 sts 0x01E7, r29 ; 0x8001e7 <encdir+0x3>
4f0: c0 93 e6 01 sts 0x01E6, r28 ; 0x8001e6 <encdir+0x2>
4f4: 20 91 e8 01 lds r18, 0x01E8 ; 0x8001e8 <encdir+0x4>
4f8: 30 91 e9 01 lds r19, 0x01E9 ; 0x8001e9 <encdir+0x5>
4fc: 23 2b or r18, r19
4fe: 11 f4 brne .+4 ; 0x504
<_ZN6String4copyEPKcj.constprop.7+0x54>
500: fc 01 movw r30, r24
502: 10 82 st Z, r1
504: d0 93 e9 01 sts 0x01E9, r29 ; 0x8001e9 <encdir+0x5>
508: c0 93 e8 01 sts 0x01E8, r28 ; 0x8001e8 <encdir+0x4>
50c: b8 01 movw r22, r16
50e: 80 91 e4 01 lds r24, 0x01E4 ; 0x8001e4 <encdir>
512: 90 91 e5 01 lds r25, 0x01E5 ; 0x8001e5 <encdir+0x1>
516: 0e 94 2a 07 call 0xe54 ; 0xe54 <strcpy>
51a: 14 c0 rjmp .+40 ; 0x544
<_ZN6String4copyEPKcj.constprop.7+0x94>
51c: 80 91 e4 01 lds r24, 0x01E4 ; 0x8001e4 <encdir>
520: 90 91 e5 01 lds r25, 0x01E5 ; 0x8001e5 <encdir+0x1>
524: 00 97 sbiw r24, 0x00 ;0
526: 11 f0 breq .+4 ; 0x52c
<_ZN6String4copyEPKcj.constprop.7+0x7c>
528: 0e 94 db 05 call 0xbb6 ; 0xbb6 <free>
52c: 10 92 e5 01 sts 0x01E5, r1 ; 0x8001e5 <encdir+0x1>
530: 10 92 e4 01 sts 0x01E4, r1 ; 0x8001e4 <encdir>
534: 10 92 e9 01 sts 0x01E9, r1 ; 0x8001e9 <encdir+0x5>
538: 10 92 e8 01 sts 0x01E8, r1 ; 0x8001e8 <encdir+0x4>
53c: 10 92 e7 01 sts 0x01E7, r1 ; 0x8001e7 <encdir+0x3>
540: 10 92 e6 01 sts 0x01E6, r1 ; 0x8001e6 <encdir+0x2>
544: 84 ee ldi r24, 0xE4 ; 228
546: 91 e0 ldi r25, 0x01 ;1
548: df 91 pop r29
54a: cf 91 pop r28
54c: 1f 91 pop r17
54e: 0f 91 pop r16
550: 08 95 ret

00000552 <__vector_16>:
552: 1f 92 push r1
554: 0f 92 push r0
556: 0f b6 in r0, 0x3f ; 63
558: 0f 92 push r0
55a: 11 24 eor r1, r1
55c: 2f 93 push r18
55e: 3f 93 push r19
560: 8f 93 push r24
562: 9f 93 push r25
564: af 93 push r26
566: bf 93 push r27
568: 80 91 43 01 lds r24, 0x0143 ; 0x800143 <timer0_millis>
56c: 90 91 44 01 lds r25, 0x0144 ; 0x800144 <timer0_millis+0x1>
570: a0 91 45 01 lds r26, 0x0145 ; 0x800145 <timer0_millis+0x2>
574: b0 91 46 01 lds r27, 0x0146 ; 0x800146 <timer0_millis+0x3>
578: 30 91 42 01 lds r19, 0x0142 ; 0x800142 <timer0_fract>
57c: 23 e0 ldi r18, 0x03 ; 3
57e: 23 0f add r18, r19
580: 2d 37 cpi r18, 0x7D ; 125
582: 58 f5 brcc .+86 ; 0x5da <__vector_16+0x88>
584: 01 96 adiw r24, 0x01 ;1
586: a1 1d adc r26, r1
588: b1 1d adc r27, r1
58a: 20 93 42 01 sts 0x0142, r18 ; 0x800142 <timer0_fract>
58e: 80 93 43 01 sts 0x0143, r24 ; 0x800143 <timer0_millis>
592: 90 93 44 01 sts 0x0144, r25 ; 0x800144 <timer0_millis+0x1>
596: a0 93 45 01 sts 0x0145, r26 ; 0x800145 <timer0_millis+0x2>
59a: b0 93 46 01 sts 0x0146, r27 ; 0x800146 <timer0_millis+0x3>
59e: 80 91 3e 01 lds r24, 0x013E ; 0x80013e <timer0_overflow_count>
5a2: 90 91 3f 01 lds r25, 0x013F ; 0x80013f
<timer0_overflow_count+0x1>
5a6: a0 91 40 01 lds r26, 0x0140 ; 0x800140
<timer0_overflow_count+0x2>
5aa: b0 91 41 01 lds r27, 0x0141 ; 0x800141
<timer0_overflow_count+0x3>
5ae: 01 96 adiw r24, 0x01 ;1
5b0: a1 1d adc r26, r1
5b2: b1 1d adc r27, r1
5b4: 80 93 3e 01 sts 0x013E, r24 ; 0x80013e <timer0_overflow_count>
5b8: 90 93 3f 01 sts 0x013F, r25 ; 0x80013f
<timer0_overflow_count+0x1>
5bc: a0 93 40 01 sts 0x0140, r26 ; 0x800140
<timer0_overflow_count+0x2>
5c0: b0 93 41 01 sts 0x0141, r27 ; 0x800141
<timer0_overflow_count+0x3>
5c4: bf 91 pop r27
5c6: af 91 pop r26
5c8: 9f 91 pop r25
5ca: 8f 91 pop r24
5cc: 3f 91 pop r19
5ce: 2f 91 pop r18
5d0: 0f 90 pop r0
5d2: 0f be out 0x3f, r0 ; 63
5d4: 0f 90 pop r0
5d6: 1f 90 pop r1
5d8: 18 95 reti
5da: 26 e8 ldi r18, 0x86 ; 134
5dc: 23 0f add r18, r19
5de: 02 96 adiw r24, 0x02 ;2
5e0: a1 1d adc r26, r1
5e2: b1 1d adc r27, r1
5e4: d2 cf rjmp .-92 ; 0x58a <__vector_16+0x38>

000005e6 <__vector_19>:
5e6: 1f 92 push r1
5e8: 0f 92 push r0
5ea: 0f b6 in r0, 0x3f ; 63
5ec: 0f 92 push r0
5ee: 11 24 eor r1, r1
5f0: 2f 93 push r18
5f2: 3f 93 push r19
5f4: 4f 93 push r20
5f6: 5f 93 push r21
5f8: 6f 93 push r22
5fa: 7f 93 push r23
5fc: 8f 93 push r24
5fe: 9f 93 push r25
600: af 93 push r26
602: bf 93 push r27
604: ef 93 push r30
606: ff 93 push r31
608: 87 e4 ldi r24, 0x47 ; 71
60a: 91 e0 ldi r25, 0x01 ;1
60c: 0e 94 bc 01 call 0x378 ; 0x378
<_ZN14HardwareSerial17_tx_udr_empty_irqEv>
610: ff 91 pop r31
612: ef 91 pop r30
614: bf 91 pop r27
616: af 91 pop r26
618: 9f 91 pop r25
61a: 8f 91 pop r24
61c: 7f 91 pop r23
61e: 6f 91 pop r22
620: 5f 91 pop r21
622: 4f 91 pop r20
624: 3f 91 pop r19
626: 2f 91 pop r18
628: 0f 90 pop r0
62a: 0f be out 0x3f, r0 ; 63
62c: 0f 90 pop r0
62e: 1f 90 pop r1
630: 18 95 reti

00000632 <__vector_18>:
632: 1f 92 push r1
634: 0f 92 push r0
636: 0f b6 in r0, 0x3f ; 63
638: 0f 92 push r0
63a: 11 24 eor r1, r1
63c: 2f 93 push r18
63e: 8f 93 push r24
640: 9f 93 push r25
642: ef 93 push r30
644: ff 93 push r31
646: e0 91 57 01 lds r30, 0x0157 ; 0x800157 <Serial+0x10>
64a: f0 91 58 01 lds r31, 0x0158 ; 0x800158 <Serial+0x11>
64e: 80 81 ld r24, Z
650: e0 91 5d 01 lds r30, 0x015D ; 0x80015d <Serial+0x16>
654: f0 91 5e 01 lds r31, 0x015E ; 0x80015e <Serial+0x17>
658: 82 fd sbrc r24, 2
65a: 1b c0 rjmp .+54 ; 0x692 <__vector_18+0x60>
65c: 90 81 ld r25, Z
65e: 80 91 60 01 lds r24, 0x0160 ; 0x800160 <Serial+0x19>
662: 8f 5f subi r24, 0xFF ; 255
664: 8f 73 andi r24, 0x3F ; 63
666: 20 91 61 01 lds r18, 0x0161 ; 0x800161 <Serial+0x1a>
66a: 82 17 cp r24, r18
66c: 41 f0 breq .+16 ; 0x67e <__vector_18+0x4c>
66e: e0 91 60 01 lds r30, 0x0160 ; 0x800160 <Serial+0x19>
672: f0 e0 ldi r31, 0x00 ; 0
674: e9 5b subi r30, 0xB9 ; 185
676: fe 4f sbci r31, 0xFE ; 254
678: 95 8f std Z+29, r25 ; 0x1d
67a: 80 93 60 01 sts 0x0160, r24 ; 0x800160 <Serial+0x19>
67e: ff 91 pop r31
680: ef 91 pop r30
682: 9f 91 pop r25
684: 8f 91 pop r24
686: 2f 91 pop r18
688: 0f 90 pop r0
68a: 0f be out 0x3f, r0 ; 63
68c: 0f 90 pop r0
68e: 1f 90 pop r1
690: 18 95 reti
692: 80 81 ld r24, Z
694: f4 cf rjmp .-24 ; 0x67e <__vector_18+0x4c>

00000696 <_GLOBAL__I_65535_0_sketch_jun27a.ino.cpp.o.1945>:
696: e7 e4 ldi r30, 0x47 ; 71
698: f1 e0 ldi r31, 0x01 ;1
69a: 13 82 std Z+3, r1 ; 0x03
69c: 12 82 std Z+2, r1 ; 0x02
69e: 88 ee ldi r24, 0xE8 ; 232
6a0: 93 e0 ldi r25, 0x03 ;3
6a2: a0 e0 ldi r26, 0x00 ;0
6a4: b0 e0 ldi r27, 0x00 ;0
6a6: 84 83 std Z+4, r24 ; 0x04
6a8: 95 83 std Z+5, r25 ; 0x05
6aa: a6 83 std Z+6, r26 ; 0x06
6ac: b7 83 std Z+7, r27 ; 0x07
6ae: 8a e0 ldi r24, 0x0A ; 10
6b0: 91 e0 ldi r25, 0x01 ;1
6b2: 91 83 std Z+1, r25 ; 0x01
6b4: 80 83 st Z, r24
6b6: 85 ec ldi r24, 0xC5 ; 197
6b8: 90 e0 ldi r25, 0x00 ;0
6ba: 95 87 std Z+13, r25 ; 0x0d
6bc: 84 87 std Z+12, r24 ; 0x0c
6be: 84 ec ldi r24, 0xC4 ; 196
6c0: 90 e0 ldi r25, 0x00 ;0
6c2: 97 87 std Z+15, r25 ; 0x0f
6c4: 86 87 std Z+14, r24 ; 0x0e
6c6: 80 ec ldi r24, 0xC0 ; 192
6c8: 90 e0 ldi r25, 0x00 ;0
6ca: 91 8b std Z+17, r25 ; 0x11
6cc: 80 8b std Z+16, r24 ; 0x10
6ce: 81 ec ldi r24, 0xC1 ; 193
6d0: 90 e0 ldi r25, 0x00 ;0
6d2: 93 8b std Z+19, r25 ; 0x13
6d4: 82 8b std Z+18, r24 ; 0x12
6d6: 82 ec ldi r24, 0xC2 ; 194
6d8: 90 e0 ldi r25, 0x00 ;0
6da: 95 8b std Z+21, r25 ; 0x15
6dc: 84 8b std Z+20, r24 ; 0x14
6de: 86 ec ldi r24, 0xC6 ; 198
6e0: 90 e0 ldi r25, 0x00 ;0
6e2: 97 8b std Z+23, r25 ; 0x17
6e4: 86 8b std Z+22, r24 ; 0x16
6e6: 11 8e std Z+25, r1 ; 0x19
6e8: 12 8e std Z+26, r1 ; 0x1a
6ea: 13 8e std Z+27, r1 ; 0x1b
6ec: 14 8e std Z+28, r1 ; 0x1c
6ee: e4 ee ldi r30, 0xE4 ; 228
6f0: f1 e0 ldi r31, 0x01 ;1
6f2: 11 82 std Z+1, r1 ; 0x01
6f4: 10 82 st Z, r1
6f6: 13 82 std Z+3, r1 ; 0x03
6f8: 12 82 std Z+2, r1 ; 0x02
6fa: 15 82 std Z+5, r1 ; 0x05
6fc: 14 82 std Z+4, r1 ; 0x04
6fe: 70 e0 ldi r23, 0x00 ;0
700: 60 e0 ldi r22, 0x00 ;0
702: 86 e3 ldi r24, 0x36 ; 54
704: 91 e0 ldi r25, 0x01 ;1
706: 0c 94 58 02 jmp 0x4b0 ; 0x4b0 <_ZN6String4copyEPKcj.constprop.7>

0000070a <main>:
70a: cf 93 push r28
70c: df 93 push r29
70e: cd b7 in r28, 0x3d ; 61
710: de b7 in r29, 0x3e ; 62
712: a1 97 sbiw r28, 0x21 ; 33
714: 0f b6 in r0, 0x3f ; 63
716: f8 94 cli
718: de bf out 0x3e, r29 ; 62
71a: 0f be out 0x3f, r0 ; 63
71c: cd bf out 0x3d, r28 ; 61
71e: 78 94 sei
720: 84 b5 in r24, 0x24 ; 36
722: 82 60 ori r24, 0x02 ; 2
724: 84 bd out 0x24, r24 ; 36
726: 84 b5 in r24, 0x24 ; 36
728: 81 60 ori r24, 0x01 ; 1
72a: 84 bd out 0x24, r24 ; 36
72c: 85 b5 in r24, 0x25 ; 37
72e: 82 60 ori r24, 0x02 ; 2
730: 85 bd out 0x25, r24 ; 37
732: 85 b5 in r24, 0x25 ; 37
734: 81 60 ori r24, 0x01 ; 1
736: 85 bd out 0x25, r24 ; 37
738: 80 91 6e 00 lds r24, 0x006E ; 0x80006e
<__DATA_REGION_ORIGIN__+0xe>
73c: 81 60 ori r24, 0x01 ;1
73e: 80 93 6e 00 sts 0x006E, r24 ; 0x80006e
<__DATA_REGION_ORIGIN__+0xe>
742: 10 92 81 00 sts 0x0081, r1 ; 0x800081
<__DATA_REGION_ORIGIN__+0x21>
746: 80 91 81 00 lds r24, 0x0081 ; 0x800081
<__DATA_REGION_ORIGIN__+0x21>
74a: 82 60 ori r24, 0x02 ;2
74c: 80 93 81 00 sts 0x0081, r24 ; 0x800081
<__DATA_REGION_ORIGIN__+0x21>
750: 80 91 81 00 lds r24, 0x0081 ; 0x800081
<__DATA_REGION_ORIGIN__+0x21>
754: 81 60 ori r24, 0x01 ;1
756: 80 93 81 00 sts 0x0081, r24 ; 0x800081
<__DATA_REGION_ORIGIN__+0x21>
75a: 80 91 80 00 lds r24, 0x0080 ; 0x800080
<__DATA_REGION_ORIGIN__+0x20>
75e: 81 60 ori r24, 0x01 ;1
760: 80 93 80 00 sts 0x0080, r24 ; 0x800080
<__DATA_REGION_ORIGIN__+0x20>
764: 80 91 b1 00 lds r24, 0x00B1 ; 0x8000b1
<__DATA_REGION_ORIGIN__+0x51>
768: 84 60 ori r24, 0x04 ;4
76a: 80 93 b1 00 sts 0x00B1, r24 ; 0x8000b1
<__DATA_REGION_ORIGIN__+0x51>
76e: 80 91 b0 00 lds r24, 0x00B0 ; 0x8000b0
<__DATA_REGION_ORIGIN__+0x50>
772: 81 60 ori r24, 0x01 ;1
774: 80 93 b0 00 sts 0x00B0, r24 ; 0x8000b0
<__DATA_REGION_ORIGIN__+0x50>
778: 80 91 7a 00 lds r24, 0x007A ; 0x80007a
<__DATA_REGION_ORIGIN__+0x1a>
77c: 84 60 ori r24, 0x04 ;4
77e: 80 93 7a 00 sts 0x007A, r24 ; 0x80007a
<__DATA_REGION_ORIGIN__+0x1a>
782: 80 91 7a 00 lds r24, 0x007A ; 0x80007a
<__DATA_REGION_ORIGIN__+0x1a>
786: 82 60 ori r24, 0x02 ;2
788: 80 93 7a 00 sts 0x007A, r24 ; 0x80007a
<__DATA_REGION_ORIGIN__+0x1a>
78c: 80 91 7a 00 lds r24, 0x007A ; 0x80007a
<__DATA_REGION_ORIGIN__+0x1a>
790: 81 60 ori r24, 0x01 ;1
792: 80 93 7a 00 sts 0x007A, r24 ; 0x80007a
<__DATA_REGION_ORIGIN__+0x1a>
796: 80 91 7a 00 lds r24, 0x007A ; 0x80007a
<__DATA_REGION_ORIGIN__+0x1a>
79a: 80 68 ori r24, 0x80 ; 128
79c: 80 93 7a 00 sts 0x007A, r24 ; 0x80007a
<__DATA_REGION_ORIGIN__+0x1a>
7a0: 10 92 c1 00 sts 0x00C1, r1 ; 0x8000c1
<__DATA_REGION_ORIGIN__+0x61>
7a4: 60 e0 ldi r22, 0x00 ;0
7a6: 84 e0 ldi r24, 0x04 ;4
7a8: 0e 94 0d 01 call 0x21a ; 0x21a <pinMode>
7ac: 60 e0 ldi r22, 0x00 ;0
7ae: 85 e0 ldi r24, 0x05 ;5
7b0: 0e 94 0d 01 call 0x21a ; 0x21a <pinMode>
7b4: 61 e0 ldi r22, 0x01 ;1
7b6: 88 e0 ldi r24, 0x08 ;8
7b8: 0e 94 0d 01 call 0x21a ; 0x21a <pinMode>
7bc: 61 e0 ldi r22, 0x01 ;1
7be: 89 e0 ldi r24, 0x09 ;9
7c0: 0e 94 0d 01 call 0x21a ; 0x21a <pinMode>
7c4: e0 91 57 01 lds r30, 0x0157 ; 0x800157 <Serial+0x10>
7c8: f0 91 58 01 lds r31, 0x0158 ; 0x800158 <Serial+0x11>
7cc: 82 e0 ldi r24, 0x02 ;2
7ce: 80 83 st Z, r24
7d0: e0 91 53 01 lds r30, 0x0153 ; 0x800153 <Serial+0xc>
7d4: f0 91 54 01 lds r31, 0x0154 ; 0x800154 <Serial+0xd>
7d8: 10 82 st Z, r1
7da: e0 91 55 01 lds r30, 0x0155 ; 0x800155 <Serial+0xe>
7de: f0 91 56 01 lds r31, 0x0156 ; 0x800156 <Serial+0xf>
7e2: 8f ec ldi r24, 0xCF ; 207
7e4: 80 83 st Z, r24
7e6: 10 92 5f 01 sts 0x015F, r1 ; 0x80015f <Serial+0x18>
7ea: e0 91 5b 01 lds r30, 0x015B ; 0x80015b <Serial+0x14>
7ee: f0 91 5c 01 lds r31, 0x015C ; 0x80015c <Serial+0x15>
7f2: 86 e0 ldi r24, 0x06 ;6
7f4: 80 83 st Z, r24
7f6: e0 91 59 01 lds r30, 0x0159 ; 0x800159 <Serial+0x12>
7fa: f0 91 5a 01 lds r31, 0x015A ; 0x80015a <Serial+0x13>
7fe: 80 81 ld r24, Z
800: 80 61 ori r24, 0x10 ; 16
802: 80 83 st Z, r24
804: e0 91 59 01 lds r30, 0x0159 ; 0x800159 <Serial+0x12>
808: f0 91 5a 01 lds r31, 0x015A ; 0x80015a <Serial+0x13>
80c: 80 81 ld r24, Z
80e: 88 60 ori r24, 0x08 ;8
810: 80 83 st Z, r24
812: e0 91 59 01 lds r30, 0x0159 ; 0x800159 <Serial+0x12>
816: f0 91 5a 01 lds r31, 0x015A ; 0x80015a <Serial+0x13>
81a: 80 81 ld r24, Z
81c: 80 68 ori r24, 0x80 ; 128
81e: 80 83 st Z, r24
820: e0 91 59 01 lds r30, 0x0159 ; 0x800159 <Serial+0x12>
824: f0 91 5a 01 lds r31, 0x015A ; 0x80015a <Serial+0x13>
828: 80 81 ld r24, Z
82a: 8f 7d andi r24, 0xDF ; 223
82c: 80 83 st Z, r24
82e: 84 e0 ldi r24, 0x04 ;4
830: 0e 94 b6 00 call 0x16c ; 0x16c <digitalRead>
834: 90 93 3b 01 sts 0x013B, r25 ; 0x80013b <previousStateCLK+0x1>
838: 80 93 3a 01 sts 0x013A, r24 ; 0x80013a <previousStateCLK>
83c: 8a e0 ldi r24, 0x0A ; 10
83e: 88 2e mov r8, r24
840: 91 2c mov r9, r1
842: a1 2c mov r10, r1
844: b1 2c mov r11, r1
846: 00 e0 ldi r16, 0x00 ;0
848: 10 e0 ldi r17, 0x00 ;0
84a: 84 e0 ldi r24, 0x04 ;4
84c: 0e 94 b6 00 call 0x16c ; 0x16c <digitalRead>
850: 7c 01 movw r14, r24
852: 90 93 3d 01 sts 0x013D, r25 ; 0x80013d <currentStateCLK+0x1>
856: 80 93 3c 01 sts 0x013C, r24 ; 0x80013c <currentStateCLK>
85a: 80 91 3a 01 lds r24, 0x013A ; 0x80013a <previousStateCLK>
85e: 90 91 3b 01 lds r25, 0x013B ; 0x80013b <previousStateCLK+0x1>
862: e8 16 cp r14, r24
864: f9 06 cpc r15, r25
866: 09 f4 brne .+2 ; 0x86a <main+0x160>
868: 66 c0 rjmp .+204 ; 0x936 <__stack+0x37>
86a: 85 e0 ldi r24, 0x05 ;5
86c: 0e 94 b6 00 call 0x16c ; 0x16c <digitalRead>
870: 20 91 38 01 lds r18, 0x0138 ; 0x800138 <__data_end>
874: 30 91 39 01 lds r19, 0x0139 ; 0x800139 <__data_end+0x1>
878: e8 16 cp r14, r24
87a: f9 06 cpc r15, r25
87c: 09 f4 brne .+2 ; 0x880 <main+0x176>
87e: 6f c0 rjmp .+222 ; 0x95e <__stack+0x5f>
880: 21 50 subi r18, 0x01 ;1
882: 31 09 sbc r19, r1
884: 30 93 39 01 sts 0x0139, r19 ; 0x800139 <__data_end+0x1>
888: 20 93 38 01 sts 0x0138, r18 ; 0x800138 <__data_end>
88c: 63 e0 ldi r22, 0x03 ;3
88e: 70 e0 ldi r23, 0x00 ;0
890: 88 e1 ldi r24, 0x18 ; 24
892: 91 e0 ldi r25, 0x01 ;1
894: 0e 94 58 02 call 0x4b0 ; 0x4b0 <_ZN6String4copyEPKcj.constprop.7>
898: 60 e0 ldi r22, 0x00 ;0
89a: 88 e0 ldi r24, 0x08 ;8
89c: 0e 94 df 00 call 0x1be ; 0x1be <digitalWrite>
8a0: 61 e0 ldi r22, 0x01 ;1
8a2: 89 e0 ldi r24, 0x09 ;9
8a4: 0e 94 df 00 call 0x1be ; 0x1be <digitalWrite>
8a8: 8c e1 ldi r24, 0x1C ; 28
8aa: 91 e0 ldi r25, 0x01 ;1
8ac: 0e 94 4b 02 call 0x496 ; 0x496
<_ZN5Print5writeEPKc.part.2.constprop.23>
8b0: 40 91 e8 01 lds r20, 0x01E8 ; 0x8001e8 <encdir+0x4>
8b4: 50 91 e9 01 lds r21, 0x01E9 ; 0x8001e9 <encdir+0x5>
8b8: 60 91 e4 01 lds r22, 0x01E4 ; 0x8001e4 <encdir>
8bc: 70 91 e5 01 lds r23, 0x01E5 ; 0x8001e5 <encdir+0x1>
8c0: 87 e4 ldi r24, 0x47 ; 71
8c2: 91 e0 ldi r25, 0x01 ;1
8c4: 0e 94 3e 01 call 0x27c ; 0x27c <_ZN5Print5writeEPKhj>
8c8: 88 e2 ldi r24, 0x28 ; 40
8ca: 91 e0 ldi r25, 0x01 ;1
8cc: 0e 94 4b 02 call 0x496 ; 0x496
<_ZN5Print5writeEPKc.part.2.constprop.23>
8d0: c0 90 38 01 lds r12, 0x0138 ; 0x800138 <__data_end>
8d4: d0 90 39 01 lds r13, 0x0139 ; 0x800139 <__data_end+0x1>
8d8: 0d 2c mov r0, r13
8da: 00 0c add r0, r0
8dc: ee 08 sbc r14, r14
8de: ff 08 sbc r15, r15
8e0: f7 fe sbrs r15, 7
8e2: 4f c0 rjmp .+158 ; 0x982 <__stack+0x83>
8e4: 6d e2 ldi r22, 0x2D ; 45
8e6: 87 e4 ldi r24, 0x47 ; 71
8e8: 91 e0 ldi r25, 0x01 ;1
8ea: 0e 94 de 01 call 0x3bc ; 0x3bc <_ZN14HardwareSerial5writeEh>
8ee: 22 27 eor r18, r18
8f0: 33 27 eor r19, r19
8f2: a9 01 movw r20, r18
8f4: 2c 19 sub r18, r12
8f6: 3d 09 sbc r19, r13
8f8: 4e 09 sbc r20, r14
8fa: 5f 09 sbc r21, r15
8fc: 19 a2 std Y+33, r1 ; 0x21
8fe: ce 01 movw r24, r28
900: 81 96 adiw r24, 0x21 ; 33
902: 7c 01 movw r14, r24
904: ca 01 movw r24, r20
906: b9 01 movw r22, r18
908: a5 01 movw r20, r10
90a: 94 01 movw r18, r8
90c: 0e 94 17 05 call 0xa2e ; 0xa2e <__udivmodsi4>
910: 60 5d subi r22, 0xD0 ; 208
912: f7 01 movw r30, r14
914: 62 93 st -Z, r22
916: 7f 01 movw r14, r30
918: 21 15 cp r18, r1
91a: 31 05 cpc r19, r1
91c: 41 05 cpc r20, r1
91e: 51 05 cpc r21, r1
920: 89 f7 brne .-30 ; 0x904 <__stack+0x5>
922: e1 14 cp r14, r1
924: f1 04 cpc r15, r1
926: 19 f0 breq .+6 ; 0x92e <__stack+0x2f>
928: c7 01 movw r24, r14
92a: 0e 94 4b 02 call 0x496 ; 0x496
<_ZN5Print5writeEPKc.part.2.constprop.23>
92e: 84 e3 ldi r24, 0x34 ; 52
930: 91 e0 ldi r25, 0x01 ;1
932: 0e 94 4b 02 call 0x496 ; 0x496
<_ZN5Print5writeEPKc.part.2.constprop.23>
936: 80 91 3c 01 lds r24, 0x013C ; 0x80013c <currentStateCLK>
93a: 90 91 3d 01 lds r25, 0x013D ; 0x80013d <currentStateCLK+0x1>
93e: 90 93 3b 01 sts 0x013B, r25 ; 0x80013b <previousStateCLK+0x1>
942: 80 93 3a 01 sts 0x013A, r24 ; 0x80013a <previousStateCLK>
946: 01 15 cp r16, r1
948: 11 05 cpc r17, r1
94a: 09 f4 brne .+2 ; 0x94e <__stack+0x4f>
94c: 7e cf rjmp .-260 ; 0x84a <main+0x140>
94e: 0e 94 a8 01 call 0x350 ; 0x350 <_Z17Serial0_availablev>
952: 88 23 and r24, r24
954: 09 f4 brne .+2 ; 0x958 <__stack+0x59>
956: 79 cf rjmp .-270 ; 0x84a <main+0x140>
958: 0e 94 00 00 call 0 ; 0x0 <__vectors>
95c: 76 cf rjmp .-276 ; 0x84a <main+0x140>
95e: 2f 5f subi r18, 0xFF ; 255
960: 3f 4f sbci r19, 0xFF ; 255
962: 30 93 39 01 sts 0x0139, r19 ; 0x800139 <__data_end+0x1>
966: 20 93 38 01 sts 0x0138, r18 ; 0x800138 <__data_end>
96a: 62 e0 ldi r22, 0x02 ;2
96c: 70 e0 ldi r23, 0x00 ;0
96e: 89 e1 ldi r24, 0x19 ; 25
970: 91 e0 ldi r25, 0x01 ;1
972: 0e 94 58 02 call 0x4b0 ; 0x4b0 <_ZN6String4copyEPKcj.constprop.7>
976: 61 e0 ldi r22, 0x01 ;1
978: 88 e0 ldi r24, 0x08 ;8
97a: 0e 94 df 00 call 0x1be ; 0x1be <digitalWrite>
97e: 60 e0 ldi r22, 0x00 ;0
980: 90 cf rjmp .-224 ; 0x8a2 <main+0x198>
982: a7 01 movw r20, r14
984: 96 01 movw r18, r12
986: 19 a2 std Y+33, r1 ; 0x21
988: ce 01 movw r24, r28
98a: 81 96 adiw r24, 0x21 ; 33
98c: 7c 01 movw r14, r24
98e: ca 01 movw r24, r20
990: b9 01 movw r22, r18
992: a5 01 movw r20, r10
994: 94 01 movw r18, r8
996: 0e 94 17 05 call 0xa2e ; 0xa2e <__udivmodsi4>
99a: 60 5d subi r22, 0xD0 ; 208
99c: f7 01 movw r30, r14
99e: 62 93 st -Z, r22
9a0: 7f 01 movw r14, r30
9a2: 21 15 cp r18, r1
9a4: 31 05 cpc r19, r1
9a6: 41 05 cpc r20, r1
9a8: 51 05 cpc r21, r1
9aa: 89 f7 brne .-30 ; 0x98e <__stack+0x8f>
9ac: ba cf rjmp .-140 ; 0x922 <__stack+0x23>

000009ae <_GLOBAL__sub_D_counter>:
9ae: 80 91 e4 01 lds r24, 0x01E4 ; 0x8001e4 <encdir>
9b2: 90 91 e5 01 lds r25, 0x01E5 ; 0x8001e5 <encdir+0x1>
9b6: 00 97 sbiw r24, 0x00 ;0
9b8: 11 f0 breq .+4 ; 0x9be
<_GLOBAL__sub_D_counter+0x10>
9ba: 0c 94 db 05 jmp 0xbb6 ; 0xbb6 <free>
9be: 08 95 ret

000009c0 <__prologue_saves__>:
9c0: 2f 92 push r2
9c2: 3f 92 push r3
9c4: 4f 92 push r4
9c6: 5f 92 push r5
9c8: 6f 92 push r6
9ca: 7f 92 push r7
9cc: 8f 92 push r8
9ce: 9f 92 push r9
9d0: af 92 push r10
9d2: bf 92 push r11
9d4: cf 92 push r12
9d6: df 92 push r13
9d8: ef 92 push r14
9da: ff 92 push r15
9dc: 0f 93 push r16
9de: 1f 93 push r17
9e0: cf 93 push r28
9e2: df 93 push r29
9e4: cd b7 in r28, 0x3d ; 61
9e6: de b7 in r29, 0x3e ; 62
9e8: ca 1b sub r28, r26
9ea: db 0b sbc r29, r27
9ec: 0f b6 in r0, 0x3f ; 63
9ee: f8 94 cli
9f0: de bf out 0x3e, r29 ; 62
9f2: 0f be out 0x3f, r0 ; 63
9f4: cd bf out 0x3d, r28 ; 61
9f6: 09 94 ijmp

000009f8 <__epilogue_restores__>:
9f8: 2a 88 ldd r2, Y+18 ; 0x12
9fa: 39 88 ldd r3, Y+17 ; 0x11
9fc: 48 88 ldd r4, Y+16 ; 0x10
9fe: 5f 84 ldd r5, Y+15 ; 0x0f
a00: 6e 84 ldd r6, Y+14 ; 0x0e
a02: 7d 84 ldd r7, Y+13 ; 0x0d
a04: 8c 84 ldd r8, Y+12 ; 0x0c
a06: 9b 84 ldd r9, Y+11 ; 0x0b
a08: aa 84 ldd r10, Y+10 ; 0x0a
a0a: b9 84 ldd r11, Y+9 ; 0x09
a0c: c8 84 ldd r12, Y+8 ; 0x08
a0e: df 80 ldd r13, Y+7 ; 0x07
a10: ee 80 ldd r14, Y+6 ; 0x06
a12: fd 80 ldd r15, Y+5 ; 0x05
a14: 0c 81 ldd r16, Y+4 ; 0x04
a16: 1b 81 ldd r17, Y+3 ; 0x03
a18: aa 81 ldd r26, Y+2 ; 0x02
a1a: b9 81 ldd r27, Y+1 ; 0x01
a1c: ce 0f add r28, r30
a1e: d1 1d adc r29, r1
a20: 0f b6 in r0, 0x3f ; 63
a22: f8 94 cli
a24: de bf out 0x3e, r29 ; 62
a26: 0f be out 0x3f, r0 ; 63
a28: cd bf out 0x3d, r28 ; 61
a2a: ed 01 movw r28, r26
a2c: 08 95 ret
00000a2e <__udivmodsi4>:
a2e: a1 e2 ldi r26, 0x21 ; 33
a30: 1a 2e mov r1, r26
a32: aa 1b sub r26, r26
a34: bb 1b sub r27, r27
a36: fd 01 movw r30, r26
a38: 0d c0 rjmp .+26 ; 0xa54 <__udivmodsi4_ep>

00000a3a <__udivmodsi4_loop>:
a3a: aa 1f adc r26, r26
a3c: bb 1f adc r27, r27
a3e: ee 1f adc r30, r30
a40: ff 1f adc r31, r31
a42: a2 17 cp r26, r18
a44: b3 07 cpc r27, r19
a46: e4 07 cpc r30, r20
a48: f5 07 cpc r31, r21
a4a: 20 f0 brcs .+8 ; 0xa54 <__udivmodsi4_ep>
a4c: a2 1b sub r26, r18
a4e: b3 0b sbc r27, r19
a50: e4 0b sbc r30, r20
a52: f5 0b sbc r31, r21

00000a54 <__udivmodsi4_ep>:
a54: 66 1f adc r22, r22
a56: 77 1f adc r23, r23
a58: 88 1f adc r24, r24
a5a: 99 1f adc r25, r25
a5c: 1a 94 dec r1
a5e: 69 f7 brne .-38 ; 0xa3a <__udivmodsi4_loop>
a60: 60 95 com r22
a62: 70 95 com r23
a64: 80 95 com r24
a66: 90 95 com r25
a68: 9b 01 movw r18, r22
a6a: ac 01 movw r20, r24
a6c: bd 01 movw r22, r26
a6e: cf 01 movw r24, r30
a70: 08 95 ret

00000a72 <__tablejump2__>:
a72: ee 0f add r30, r30
a74: ff 1f adc r31, r31
a76: 05 90 lpm r0, Z+
a78: f4 91 lpm r31, Z
a7a: e0 2d mov r30, r0
a7c: 09 94 ijmp

00000a7e <malloc>:
a7e: 0f 93 push r16
a80: 1f 93 push r17
a82: cf 93 push r28
a84: df 93 push r29
a86: 82 30 cpi r24, 0x02 ;2
a88: 91 05 cpc r25, r1
a8a: 10 f4 brcc .+4 ; 0xa90 <malloc+0x12>
a8c: 82 e0 ldi r24, 0x02 ; 2
a8e: 90 e0 ldi r25, 0x00 ; 0
a90: e0 91 ec 01 lds r30, 0x01EC ; 0x8001ec <__flp>
a94: f0 91 ed 01 lds r31, 0x01ED ; 0x8001ed <__flp+0x1>
a98: 30 e0 ldi r19, 0x00 ; 0
a9a: 20 e0 ldi r18, 0x00 ; 0
a9c: b0 e0 ldi r27, 0x00 ; 0
a9e: a0 e0 ldi r26, 0x00 ; 0
aa0: 30 97 sbiw r30, 0x00 ; 0
aa2: 99 f4 brne .+38 ; 0xaca <malloc+0x4c>
aa4: 21 15 cp r18, r1
aa6: 31 05 cpc r19, r1
aa8: 09 f4 brne .+2 ; 0xaac <malloc+0x2e>
aaa: 4a c0 rjmp .+148 ; 0xb40 <malloc+0xc2>
aac: 28 1b sub r18, r24
aae: 39 0b sbc r19, r25
ab0: 24 30 cpi r18, 0x04 ;4
ab2: 31 05 cpc r19, r1
ab4: d8 f5 brcc .+118 ; 0xb2c <malloc+0xae>
ab6: 8a 81 ldd r24, Y+2 ; 0x02
ab8: 9b 81 ldd r25, Y+3 ; 0x03
aba: 61 15 cp r22, r1
abc: 71 05 cpc r23, r1
abe: 89 f1 breq .+98 ; 0xb22 <malloc+0xa4>
ac0: fb 01 movw r30, r22
ac2: 93 83 std Z+3, r25 ; 0x03
ac4: 82 83 std Z+2, r24 ; 0x02
ac6: fe 01 movw r30, r28
ac8: 11 c0 rjmp .+34 ; 0xaec <malloc+0x6e>
aca: 40 81 ld r20, Z
acc: 51 81 ldd r21, Z+1 ; 0x01
ace: 02 81 ldd r16, Z+2 ; 0x02
ad0: 13 81 ldd r17, Z+3 ; 0x03
ad2: 48 17 cp r20, r24
ad4: 59 07 cpc r21, r25
ad6: e0 f0 brcs .+56 ; 0xb10 <malloc+0x92>
ad8: 48 17 cp r20, r24
ada: 59 07 cpc r21, r25
adc: 99 f4 brne .+38 ; 0xb04 <malloc+0x86>
ade: 10 97 sbiw r26, 0x00 ; 0
ae0: 61 f0 breq .+24 ; 0xafa <malloc+0x7c>
ae2: 12 96 adiw r26, 0x02 ; 2
ae4: 0c 93 st X, r16
ae6: 12 97 sbiw r26, 0x02 ;2
ae8: 13 96 adiw r26, 0x03 ;3
aea: 1c 93 st X, r17
aec: 32 96 adiw r30, 0x02 ;2
aee: cf 01 movw r24, r30
af0: df 91 pop r29
af2: cf 91 pop r28
af4: 1f 91 pop r17
af6: 0f 91 pop r16
af8: 08 95 ret
afa: 00 93 ec 01 sts 0x01EC, r16 ; 0x8001ec <__flp>
afe: 10 93 ed 01 sts 0x01ED, r17 ; 0x8001ed <__flp+0x1>
b02: f4 cf rjmp .-24 ; 0xaec <malloc+0x6e>
b04: 21 15 cp r18, r1
b06: 31 05 cpc r19, r1
b08: 51 f0 breq .+20 ; 0xb1e <malloc+0xa0>
b0a: 42 17 cp r20, r18
b0c: 53 07 cpc r21, r19
b0e: 38 f0 brcs .+14 ; 0xb1e <malloc+0xa0>
b10: a9 01 movw r20, r18
b12: db 01 movw r26, r22
b14: 9a 01 movw r18, r20
b16: bd 01 movw r22, r26
b18: df 01 movw r26, r30
b1a: f8 01 movw r30, r16
b1c: c1 cf rjmp .-126 ; 0xaa0 <malloc+0x22>
b1e: ef 01 movw r28, r30
b20: f9 cf rjmp .-14 ; 0xb14 <malloc+0x96>
b22: 90 93 ed 01 sts 0x01ED, r25 ; 0x8001ed <__flp+0x1>
b26: 80 93 ec 01 sts 0x01EC, r24 ; 0x8001ec <__flp>
b2a: cd cf rjmp .-102 ; 0xac6 <malloc+0x48>
b2c: fe 01 movw r30, r28
b2e: e2 0f add r30, r18
b30: f3 1f adc r31, r19
b32: 81 93 st Z+, r24
b34: 91 93 st Z+, r25
b36: 22 50 subi r18, 0x02 ;2
b38: 31 09 sbc r19, r1
b3a: 39 83 std Y+1, r19 ; 0x01
b3c: 28 83 st Y, r18
b3e: d7 cf rjmp .-82 ; 0xaee <malloc+0x70>
b40: 20 91 ea 01 lds r18, 0x01EA ; 0x8001ea <__brkval>
b44: 30 91 eb 01 lds r19, 0x01EB ; 0x8001eb <__brkval+0x1>
b48: 23 2b or r18, r19
b4a: 41 f4 brne .+16 ; 0xb5c <malloc+0xde>
b4c: 20 91 02 01 lds r18, 0x0102 ; 0x800102 <__malloc_heap_start>
b50: 30 91 03 01 lds r19, 0x0103 ; 0x800103 <__malloc_heap_start+0x1>
b54: 30 93 eb 01 sts 0x01EB, r19 ; 0x8001eb <__brkval+0x1>
b58: 20 93 ea 01 sts 0x01EA, r18 ; 0x8001ea <__brkval>
b5c: 20 91 00 01 lds r18, 0x0100 ; 0x800100 <__data_start>
b60: 30 91 01 01 lds r19, 0x0101 ; 0x800101 <__data_start+0x1>
b64: 21 15 cp r18, r1
b66: 31 05 cpc r19, r1
b68: 41 f4 brne .+16 ; 0xb7a <malloc+0xfc>
b6a: 2d b7 in r18, 0x3d ; 61
b6c: 3e b7 in r19, 0x3e ; 62
b6e: 40 91 04 01 lds r20, 0x0104 ; 0x800104 <__malloc_margin>
b72: 50 91 05 01 lds r21, 0x0105 ; 0x800105 <__malloc_margin+0x1>
b76: 24 1b sub r18, r20
b78: 35 0b sbc r19, r21
b7a: e0 91 ea 01 lds r30, 0x01EA ; 0x8001ea <__brkval>
b7e: f0 91 eb 01 lds r31, 0x01EB ; 0x8001eb <__brkval+0x1>
b82: e2 17 cp r30, r18
b84: f3 07 cpc r31, r19
b86: a0 f4 brcc .+40 ; 0xbb0 <malloc+0x132>
b88: 2e 1b sub r18, r30
b8a: 3f 0b sbc r19, r31
b8c: 28 17 cp r18, r24
b8e: 39 07 cpc r19, r25
b90: 78 f0 brcs .+30 ; 0xbb0 <malloc+0x132>
b92: ac 01 movw r20, r24
b94: 4e 5f subi r20, 0xFE ; 254
b96: 5f 4f sbci r21, 0xFF ; 255
b98: 24 17 cp r18, r20
b9a: 35 07 cpc r19, r21
b9c: 48 f0 brcs .+18 ; 0xbb0 <malloc+0x132>
b9e: 4e 0f add r20, r30
ba0: 5f 1f adc r21, r31
ba2: 50 93 eb 01 sts 0x01EB, r21 ; 0x8001eb <__brkval+0x1>
ba6: 40 93 ea 01 sts 0x01EA, r20 ; 0x8001ea <__brkval>
baa: 81 93 st Z+, r24
bac: 91 93 st Z+, r25
bae: 9f cf rjmp .-194 ; 0xaee <malloc+0x70>
bb0: f0 e0 ldi r31, 0x00 ; 0
bb2: e0 e0 ldi r30, 0x00 ; 0
bb4: 9c cf rjmp .-200 ; 0xaee <malloc+0x70>

00000bb6 <free>:
bb6: cf 93 push r28
bb8: df 93 push r29
bba: 00 97 sbiw r24, 0x00 ;0
bbc: e9 f0 breq .+58 ; 0xbf8 <free+0x42>
bbe: fc 01 movw r30, r24
bc0: 32 97 sbiw r30, 0x02 ; 2
bc2: 13 82 std Z+3, r1 ; 0x03
bc4: 12 82 std Z+2, r1 ; 0x02
bc6: a0 91 ec 01 lds r26, 0x01EC ; 0x8001ec <__flp>
bca: b0 91 ed 01 lds r27, 0x01ED ; 0x8001ed <__flp+0x1>
bce: ed 01 movw r28, r26
bd0: 30 e0 ldi r19, 0x00 ; 0
bd2: 20 e0 ldi r18, 0x00 ; 0
bd4: 10 97 sbiw r26, 0x00 ; 0
bd6: a1 f4 brne .+40 ; 0xc00 <free+0x4a>
bd8: 20 81 ld r18, Z
bda: 31 81 ldd r19, Z+1 ; 0x01
bdc: 82 0f add r24, r18
bde: 93 1f adc r25, r19
be0: 20 91 ea 01 lds r18, 0x01EA ; 0x8001ea <__brkval>
be4: 30 91 eb 01 lds r19, 0x01EB ; 0x8001eb <__brkval+0x1>
be8: 28 17 cp r18, r24
bea: 39 07 cpc r19, r25
bec: 09 f0 breq .+2 ; 0xbf0 <free+0x3a>
bee: 61 c0 rjmp .+194 ; 0xcb2 <free+0xfc>
bf0: f0 93 eb 01 sts 0x01EB, r31 ; 0x8001eb <__brkval+0x1>
bf4: e0 93 ea 01 sts 0x01EA, r30 ; 0x8001ea <__brkval>
bf8: df 91 pop r29
bfa: cf 91 pop r28
bfc: 08 95 ret
bfe: ea 01 movw r28, r20
c00: ce 17 cp r28, r30
c02: df 07 cpc r29, r31
c04: e8 f5 brcc .+122 ; 0xc80 <free+0xca>
c06: 4a 81 ldd r20, Y+2 ; 0x02
c08: 5b 81 ldd r21, Y+3 ; 0x03
c0a: 9e 01 movw r18, r28
c0c: 41 15 cp r20, r1
c0e: 51 05 cpc r21, r1
c10: b1 f7 brne .-20 ; 0xbfe <free+0x48>
c12: e9 01 movw r28, r18
c14: fb 83 std Y+3, r31 ; 0x03
c16: ea 83 std Y+2, r30 ; 0x02
c18: 49 91 ld r20, Y+
c1a: 59 91 ld r21, Y+
c1c: c4 0f add r28, r20
c1e: d5 1f adc r29, r21
c20: ec 17 cp r30, r28
c22: fd 07 cpc r31, r29
c24: 61 f4 brne .+24 ; 0xc3e <free+0x88>
c26: 80 81 ld r24, Z
c28: 91 81 ldd r25, Z+1 ; 0x01
c2a: 02 96 adiw r24, 0x02 ;2
c2c: 84 0f add r24, r20
c2e: 95 1f adc r25, r21
c30: e9 01 movw r28, r18
c32: 99 83 std Y+1, r25 ; 0x01
c34: 88 83 st Y, r24
c36: 82 81 ldd r24, Z+2 ; 0x02
c38: 93 81 ldd r25, Z+3 ; 0x03
c3a: 9b 83 std Y+3, r25 ; 0x03
c3c: 8a 83 std Y+2, r24 ; 0x02
c3e: f0 e0 ldi r31, 0x00 ; 0
c40: e0 e0 ldi r30, 0x00 ; 0
c42: 12 96 adiw r26, 0x02 ; 2
c44: 8d 91 ld r24, X+
c46: 9c 91 ld r25, X
c48: 13 97 sbiw r26, 0x03 ;3
c4a: 00 97 sbiw r24, 0x00 ;0
c4c: b9 f5 brne .+110 ; 0xcbc <free+0x106>
c4e: 2d 91 ld r18, X+
c50: 3c 91 ld r19, X
c52: 11 97 sbiw r26, 0x01 ;1
c54: cd 01 movw r24, r26
c56: 02 96 adiw r24, 0x02 ;2
c58: 82 0f add r24, r18
c5a: 93 1f adc r25, r19
c5c: 20 91 ea 01 lds r18, 0x01EA ; 0x8001ea <__brkval>
c60: 30 91 eb 01 lds r19, 0x01EB ; 0x8001eb <__brkval+0x1>
c64: 28 17 cp r18, r24
c66: 39 07 cpc r19, r25
c68: 39 f6 brne .-114 ; 0xbf8 <free+0x42>
c6a: 30 97 sbiw r30, 0x00 ;0
c6c: 51 f5 brne .+84 ; 0xcc2 <free+0x10c>
c6e: 10 92 ed 01 sts 0x01ED, r1 ; 0x8001ed <__flp+0x1>
c72: 10 92 ec 01 sts 0x01EC, r1 ; 0x8001ec <__flp>
c76: b0 93 eb 01 sts 0x01EB, r27 ; 0x8001eb <__brkval+0x1>
c7a: a0 93 ea 01 sts 0x01EA, r26 ; 0x8001ea <__brkval>
c7e: bc cf rjmp .-136 ; 0xbf8 <free+0x42>
c80: d3 83 std Z+3, r29 ; 0x03
c82: c2 83 std Z+2, r28 ; 0x02
c84: 40 81 ld r20, Z
c86: 51 81 ldd r21, Z+1 ; 0x01
c88: 84 0f add r24, r20
c8a: 95 1f adc r25, r21
c8c: c8 17 cp r28, r24
c8e: d9 07 cpc r29, r25
c90: 61 f4 brne .+24 ; 0xcaa <free+0xf4>
c92: 4e 5f subi r20, 0xFE ; 254
c94: 5f 4f sbci r21, 0xFF ; 255
c96: 88 81 ld r24, Y
c98: 99 81 ldd r25, Y+1 ; 0x01
c9a: 48 0f add r20, r24
c9c: 59 1f adc r21, r25
c9e: 51 83 std Z+1, r21 ; 0x01
ca0: 40 83 st Z, r20
ca2: 8a 81 ldd r24, Y+2 ; 0x02
ca4: 9b 81 ldd r25, Y+3 ; 0x03
ca6: 93 83 std Z+3, r25 ; 0x03
ca8: 82 83 std Z+2, r24 ; 0x02
caa: 21 15 cp r18, r1
cac: 31 05 cpc r19, r1
cae: 09 f0 breq .+2 ; 0xcb2 <free+0xfc>
cb0: b0 cf rjmp .-160 ; 0xc12 <free+0x5c>
cb2: f0 93 ed 01 sts 0x01ED, r31 ; 0x8001ed <__flp+0x1>
cb6: e0 93 ec 01 sts 0x01EC, r30 ; 0x8001ec <__flp>
cba: 9e cf rjmp .-196 ; 0xbf8 <free+0x42>
cbc: fd 01 movw r30, r26
cbe: dc 01 movw r26, r24
cc0: c0 cf rjmp .-128 ; 0xc42 <free+0x8c>
cc2: 13 82 std Z+3, r1 ; 0x03
cc4: 12 82 std Z+2, r1 ; 0x02
cc6: d7 cf rjmp .-82 ; 0xc76 <free+0xc0>

00000cc8 <realloc>:
cc8: b0 e0 ldi r27, 0x00 ;0
cca: a0 e0 ldi r26, 0x00 ;0
ccc: ea e6 ldi r30, 0x6A ; 106
cce: f6 e0 ldi r31, 0x06 ;6
cd0: 0c 94 e2 04 jmp 0x9c4 ; 0x9c4 <__prologue_saves__+0x4>
cd4: 8c 01 movw r16, r24
cd6: 00 97 sbiw r24, 0x00 ;0
cd8: 51 f4 brne .+20 ; 0xcee <realloc+0x26>
cda: cb 01 movw r24, r22
cdc: 0e 94 3f 05 call 0xa7e ; 0xa7e <malloc>
ce0: 8c 01 movw r16, r24
ce2: c8 01 movw r24, r16
ce4: cd b7 in r28, 0x3d ; 61
ce6: de b7 in r29, 0x3e ; 62
ce8: e0 e1 ldi r30, 0x10 ; 16
cea: 0c 94 fe 04 jmp 0x9fc ; 0x9fc <__epilogue_restores__+0x4>
cee: fc 01 movw r30, r24
cf0: e6 0f add r30, r22
cf2: f7 1f adc r31, r23
cf4: 9c 01 movw r18, r24
cf6: 22 50 subi r18, 0x02 ;2
cf8: 31 09 sbc r19, r1
cfa: e2 17 cp r30, r18
cfc: f3 07 cpc r31, r19
cfe: 08 f4 brcc .+2 ; 0xd02 <realloc+0x3a>
d00: 9d c0 rjmp .+314 ; 0xe3c <realloc+0x174>
d02: d9 01 movw r26, r18
d04: cd 91 ld r28, X+
d06: dc 91 ld r29, X
d08: 11 97 sbiw r26, 0x01 ;1
d0a: c6 17 cp r28, r22
d0c: d7 07 cpc r29, r23
d0e: 98 f0 brcs .+38 ; 0xd36 <realloc+0x6e>
d10: c5 30 cpi r28, 0x05 ;5
d12: d1 05 cpc r29, r1
d14: 30 f3 brcs .-52 ; 0xce2 <realloc+0x1a>
d16: ce 01 movw r24, r28
d18: 04 97 sbiw r24, 0x04 ;4
d1a: 86 17 cp r24, r22
d1c: 97 07 cpc r25, r23
d1e: 08 f3 brcs .-62 ; 0xce2 <realloc+0x1a>
d20: c6 1b sub r28, r22
d22: d7 0b sbc r29, r23
d24: 22 97 sbiw r28, 0x02 ;2
d26: c1 93 st Z+, r28
d28: d1 93 st Z+, r29
d2a: 6d 93 st X+, r22
d2c: 7c 93 st X, r23
d2e: cf 01 movw r24, r30
d30: 0e 94 db 05 call 0xbb6 ; 0xbb6 <free>
d34: d6 cf rjmp .-84 ; 0xce2 <realloc+0x1a>
d36: 5b 01 movw r10, r22
d38: ac 1a sub r10, r28
d3a: bd 0a sbc r11, r29
d3c: 4c 01 movw r8, r24
d3e: 8c 0e add r8, r28
d40: 9d 1e adc r9, r29
d42: a0 91 ec 01 lds r26, 0x01EC ; 0x8001ec <__flp>
d46: b0 91 ed 01 lds r27, 0x01ED ; 0x8001ed <__flp+0x1>
d4a: 51 2c mov r5, r1
d4c: 41 2c mov r4, r1
d4e: f1 2c mov r15, r1
d50: e1 2c mov r14, r1
d52: 10 97 sbiw r26, 0x00 ;0
d54: 31 f5 brne .+76 ; 0xda2 <realloc+0xda>
d56: 80 91 ea 01 lds r24, 0x01EA ; 0x8001ea <__brkval>
d5a: 90 91 eb 01 lds r25, 0x01EB ; 0x8001eb <__brkval+0x1>
d5e: 88 15 cp r24, r8
d60: 99 05 cpc r25, r9
d62: 09 f0 breq .+2 ; 0xd66 <realloc+0x9e>
d64: 5c c0 rjmp .+184 ; 0xe1e <realloc+0x156>
d66: 46 16 cp r4, r22
d68: 57 06 cpc r5, r23
d6a: 08 f0 brcs .+2 ; 0xd6e <realloc+0xa6>
d6c: 58 c0 rjmp .+176 ; 0xe1e <realloc+0x156>
d6e: 80 91 00 01 lds r24, 0x0100 ; 0x800100 <__data_start>
d72: 90 91 01 01 lds r25, 0x0101 ; 0x800101 <__data_start+0x1>
d76: 00 97 sbiw r24, 0x00 ; 0
d78: 41 f4 brne .+16 ; 0xd8a <realloc+0xc2>
d7a: 8d b7 in r24, 0x3d ; 61
d7c: 9e b7 in r25, 0x3e ; 62
d7e: 40 91 04 01 lds r20, 0x0104 ; 0x800104 <__malloc_margin>
d82: 50 91 05 01 lds r21, 0x0105 ; 0x800105 <__malloc_margin+0x1>
d86: 84 1b sub r24, r20
d88: 95 0b sbc r25, r21
d8a: e8 17 cp r30, r24
d8c: f9 07 cpc r31, r25
d8e: 08 f0 brcs .+2 ; 0xd92 <realloc+0xca>
d90: 55 c0 rjmp .+170 ; 0xe3c <realloc+0x174>
d92: f0 93 eb 01 sts 0x01EB, r31 ; 0x8001eb <__brkval+0x1>
d96: e0 93 ea 01 sts 0x01EA, r30 ; 0x8001ea <__brkval>
d9a: f9 01 movw r30, r18
d9c: 71 83 std Z+1, r23 ; 0x01
d9e: 60 83 st Z, r22
da0: a0 cf rjmp .-192 ; 0xce2 <realloc+0x1a>
da2: 8d 91 ld r24, X+
da4: 9c 91 ld r25, X
da6: 11 97 sbiw r26, 0x01 ;1
da8: 12 96 adiw r26, 0x02 ;2
daa: 6c 90 ld r6, X
dac: 12 97 sbiw r26, 0x02 ;2
dae: 13 96 adiw r26, 0x03 ;3
db0: 7c 90 ld r7, X
db2: 13 97 sbiw r26, 0x03 ;3
db4: a8 15 cp r26, r8
db6: b9 05 cpc r27, r9
db8: 59 f5 brne .+86 ; 0xe10 <realloc+0x148>
dba: 6c 01 movw r12, r24
dbc: 42 e0 ldi r20, 0x02 ;2
dbe: c4 0e add r12, r20
dc0: d1 1c adc r13, r1
dc2: ca 14 cp r12, r10
dc4: db 04 cpc r13, r11
dc6: 20 f1 brcs .+72 ; 0xe10 <realloc+0x148>
dc8: ac 01 movw r20, r24
dca: 4a 19 sub r20, r10
dcc: 5b 09 sbc r21, r11
dce: da 01 movw r26, r20
dd0: 12 96 adiw r26, 0x02 ;2
dd2: 15 97 sbiw r26, 0x05 ;5
dd4: 80 f0 brcs .+32 ; 0xdf6 <realloc+0x12e>
dd6: 62 82 std Z+2, r6 ; 0x02
dd8: 73 82 std Z+3, r7 ; 0x03
dda: 51 83 std Z+1, r21 ; 0x01
ddc: 40 83 st Z, r20
dde: d9 01 movw r26, r18
de0: 6d 93 st X+, r22
de2: 7c 93 st X, r23
de4: e1 14 cp r14, r1
de6: f1 04 cpc r15, r1
de8: 71 f0 breq .+28 ; 0xe06 <realloc+0x13e>
dea: d7 01 movw r26, r14
dec: 13 96 adiw r26, 0x03 ;3
dee: fc 93 st X, r31
df0: ee 93 st -X, r30
df2: 12 97 sbiw r26, 0x02 ;2
df4: 76 cf rjmp .-276 ; 0xce2 <realloc+0x1a>
df6: 22 96 adiw r28, 0x02 ;2
df8: 8c 0f add r24, r28
dfa: 9d 1f adc r25, r29
dfc: f9 01 movw r30, r18
dfe: 91 83 std Z+1, r25 ; 0x01
e00: 80 83 st Z, r24
e02: f3 01 movw r30, r6
e04: ef cf rjmp .-34 ; 0xde4 <realloc+0x11c>
e06: f0 93 ed 01 sts 0x01ED, r31 ; 0x8001ed <__flp+0x1>
e0a: e0 93 ec 01 sts 0x01EC, r30 ; 0x8001ec <__flp>
e0e: 69 cf rjmp .-302 ; 0xce2 <realloc+0x1a>
e10: 48 16 cp r4, r24
e12: 59 06 cpc r5, r25
e14: 08 f4 brcc .+2 ; 0xe18 <realloc+0x150>
e16: 2c 01 movw r4, r24
e18: 7d 01 movw r14, r26
e1a: d3 01 movw r26, r6
e1c: 9a cf rjmp .-204 ; 0xd52 <realloc+0x8a>
e1e: cb 01 movw r24, r22
e20: 0e 94 3f 05 call 0xa7e ; 0xa7e <malloc>
e24: 7c 01 movw r14, r24
e26: 00 97 sbiw r24, 0x00 ;0
e28: 49 f0 breq .+18 ; 0xe3c <realloc+0x174>
e2a: ae 01 movw r20, r28
e2c: b8 01 movw r22, r16
e2e: 0e 94 21 07 call 0xe42 ; 0xe42 <memcpy>
e32: c8 01 movw r24, r16
e34: 0e 94 db 05 call 0xbb6 ; 0xbb6 <free>
e38: 87 01 movw r16, r14
e3a: 53 cf rjmp .-346 ; 0xce2 <realloc+0x1a>
e3c: 10 e0 ldi r17, 0x00 ;0
e3e: 00 e0 ldi r16, 0x00 ;0
e40: 50 cf rjmp .-352 ; 0xce2 <realloc+0x1a>

00000e42 <memcpy>:
e42: fb 01 movw r30, r22
e44: dc 01 movw r26, r24
e46: 02 c0 rjmp .+4 ; 0xe4c <memcpy+0xa>
e48: 01 90 ld r0, Z+
e4a: 0d 92 st X+, r0
e4c: 41 50 subi r20, 0x01 ;1
e4e: 50 40 sbci r21, 0x00 ;0
e50: d8 f7 brcc .-10 ; 0xe48 <memcpy+0x6>
e52: 08 95 ret

00000e54 <strcpy>:
e54: fb 01 movw r30, r22
e56: dc 01 movw r26, r24
e58: 01 90 ld r0, Z+
e5a: 0d 92 st X+, r0
e5c: 00 20 and r0, r0
e5e: e1 f7 brne .-8 ; 0xe58 <strcpy+0x4>
e60: 08 95 ret

00000e62 <__do_global_dtors>:
e62: 10 e0 ldi r17, 0x00 ;0
e64: c2 e6 ldi r28, 0x62 ; 98
e66: d0 e0 ldi r29, 0x00 ;0
e68: 04 c0 rjmp .+8 ; 0xe72 <__do_global_dtors+0x10>
e6a: fe 01 movw r30, r28
e6c: 0e 94 39 05 call 0xa72 ; 0xa72 <__tablejump2__>
e70: 21 96 adiw r28, 0x01 ;1
e72: c3 36 cpi r28, 0x63 ; 99
e74: d1 07 cpc r29, r17
e76: c9 f7 brne .-14 ; 0xe6a <__do_global_dtors+0x8>
e78: f8 94 cli

00000e7a <__stop_program>:
e7a: ff cf rjmp .-2 ; 0xe7a <__stop_program>

You might also like