
sha256.elf:     file format elf32-msp430

SYMBOL TABLE:
0000fae0 l    d  .keyfunction	00000000 .keyfunction
0000fffe l    d  __reset_vector	00000000 __reset_vector
0000e000 l    d  .rodata	00000000 .rodata
0000e070 l    d  .text	00000000 .text
00000200 l    d  .data	00000000 .data
0000027c l    d  .bss	00000000 .bss
0000028e l    d  .noinit	00000000 .noinit
00000000 l    d  .MP430.attributes	00000000 .MP430.attributes
00000000 l    d  .comment	00000000 .comment
00000000 l    d  .debug_aranges	00000000 .debug_aranges
00000000 l    d  .debug_info	00000000 .debug_info
00000000 l    d  .debug_abbrev	00000000 .debug_abbrev
00000000 l    d  .debug_line	00000000 .debug_line
00000000 l    d  .debug_frame	00000000 .debug_frame
00000000 l    d  .debug_str	00000000 .debug_str
00000000 l    d  .debug_loc	00000000 .debug_loc
00000000 l    d  .debug_ranges	00000000 .debug_ranges
00000000 l    df *ABS*	00000000 /home/ise/Desktop/tmp/msp430-gcc-7.3.1.24_linux64/bin/../lib/gcc/msp430-elf/7.3.1/../../../../msp430-elf/lib/430/crt0.o
0000fffe l       __reset_vector	00000000 __msp430_resetvec_hook
0000e0d0 l       .text	00000000 _msp430_run_array
0000e0de l       .text	00000000 _msp430_run_done
00000000 l    df *ABS*	00000000 main.c
00000000 l    df *ABS*	00000000 lib_a-impure.o
00000204 l     O .data	00000078 impure_data
00000000 l    df *ABS*	00000000 /home/ise/Desktop/tmp/msp430-gcc-7.3.1.24_linux64/bin/../lib/gcc/msp430-elf/7.3.1/430/crtbegin.o
0000e068 l     O .rodata	00000000 __CTOR_LIST__
0000e06c l     O .rodata	00000000 __DTOR_LIST__
0000e060 l     O .rodata	00000000 __EH_FRAME_BEGIN__
0000e538 l     O .text	00000000 __TMC_LIST__
0000e0e4 l     F .text	00000000 deregister_tm_clones
0000e0fe l     F .text	00000000 register_tm_clones
0000e12c l     F .text	00000000 __do_global_dtors_aux
0000027c l     O .bss	00000000 completed.3056
0000027e l     O .bss	00000000 dtor_idx.3058
0000e17a l     F .text	00000000 call___do_global_dtors_aux
0000e17a l     F .text	00000000 frame_dummy
00000280 l     O .bss	00000000 object.3071
0000e192 l     F .text	00000000 call_frame_dummy
00000000 l    df *ABS*	00000000 /home/ise/Desktop/tmp/msp430-gcc-7.3.1.24_linux64/bin/../lib/gcc/msp430-elf/7.3.1/430/crtend.o
0000e06a l     O .rodata	00000000 __CTOR_END__
0000e060 l     O .rodata	00000000 __FRAME_END__
0000e502 l     F .text	00000000 __do_global_ctors_aux
0000e51c l     F .text	00000000 call___do_global_ctors_aux
00000000 l    df *ABS*	00000000 crt_bss.o
00000000 l    df *ABS*	00000000 crt_movedata.o
00000000 l    df *ABS*	00000000 crt_main.o
00000000 l    df *ABS*	00000000 crt_callexit.o
00000000 l    df *ABS*	00000000 srli.o
00000000 l    df *ABS*	00000000 lib_a-memcpy.o
00000000 l    df *ABS*	00000000 ciosyscalls.o
00000000 l    df *ABS*	00000000 lib_a-errno.o
00000000 l    df *ABS*	00000000 lib_a-memmove.o
00000000 l    df *ABS*	00000000 lib_a-memset.o
00000000 l    df *ABS*	00000000 /home/ise/Desktop/tmp/msp430-gcc-7.3.1.24_linux64/bin/../lib/gcc/msp430-elf/7.3.1/../../../../msp430-elf/lib/430/crtn.o
0000e39a g       .text	00000000 .hidden __mspabi_srli_9
0000e3ea g       .text	00000000 .hidden __mspabi_srll_10
0000e396 g       .text	00000000 .hidden __mspabi_srli_10
0000e382 g       .text	00000000 .hidden __mspabi_srli_15
0000e4b4 g     F .text	00000038 memmove
0000e3ae g       .text	00000000 .hidden __mspabi_srli_4
0000e0a0 g     F .text	00000004 __crt0_call_exit
0000e4ae g     F .text	00000006 __errno
0000e3a2 g       .text	00000000 .hidden __mspabi_srli_7
0000e3fc g       .text	00000000 .hidden __mspabi_srll_7
0000e414 g       .text	00000000 .hidden __mspabi_srll_3
0000e374 g       .text	00000000 .hidden __mspabi_func_epilog_6
0000e454  w    F .text	00000006 getpid
0000e436 g     F .text	00000016 memcpy
0000e538 g     O .text	00000000 .hidden __TMC_END__
0000e3d8 g       .text	00000000 .hidden __mspabi_srll_13
0000e06e g     O .rodata	00000000 .hidden __DTOR_END__
0000e064 g       .rodata	00000000 __fini_array_end
0000e38e g       .text	00000000 .hidden __mspabi_srli_12
0000e450  w    F .text	00000004 isatty
0000e070 g     F .text	00000004 __crt0_start
00000200 g     O .data	00000000 .hidden __dso_handle
0000e074 g     F .text	0000000e __crt0_init_bss
00000012 g       *ABS*	00000000 __bsssize
0000e096 g     F .text	0000000a __crt0_call_init_then_main
0000e37e g       .text	00000000 .hidden __mspabi_func_epilog_1
0000e492  w    F .text	0000000e lseek
0000e450  w    F .text	00000004 _isatty
0000e37a g       .text	00000000 .hidden __mspabi_func_epilog_3
0000e05a g     O .rodata	00000002 _global_impure_ptr
0000e408 g       .text	00000000 .hidden __mspabi_srll_5
0000e1b8 g     F .text	00000028 sha256_flush
0000e3c6 g       .text	00000000 .hidden __mspabi_srli
0000e3e4 g       .text	00000000 .hidden __mspabi_srll_11
0000e3aa g       .text	00000000 .hidden __mspabi_srli_5
0000e484  w    F .text	0000000e fstat
0000e4a0  w    F .text	0000000e kill
00000000  w      *UND*	00000000 __sf_fake_stderr
00000000  w      *UND*	00000000 __deregister_frame_info
0000028e g       .noinit	00000000 end
00000000  w      *UND*	00000000 _ITM_registerTMCloneTable
0000e402 g       .text	00000000 .hidden __mspabi_srll_6
0000e070 g       .text	00000000 _start
0000e476  w    F .text	0000000e read
0000e0c0 g     F .text	00000000 _msp430_run_fini_array
0000e3ba g       .text	00000000 .hidden __mspabi_srli_1
0000e3d2 g       .text	00000000 .hidden __mspabi_srll_14
0000e386 g       .text	00000000 .hidden __mspabi_srli_14
0000007c g       *ABS*	00000000 __romdatacopysize
0000e392 g       .text	00000000 .hidden __mspabi_srli_11
00000000  w      *UND*	00000000 _ITM_deregisterTMCloneTable
0000e064 g       .rodata	00000000 __fini_array_start
00000000  w      *UND*	00000000 __sf_fake_stdin
00000000  w      *ABS*	00000000 __rom_highdatacopysize
0000e51c g       .text	00000000 __msp430_init
0000e4ec g     F .text	00000014 memset
0000e33c g     F .text	00000036 main
0000e40e g       .text	00000000 .hidden __mspabi_srll_4
0000e064 g       .rodata	00000000 __init_array_end
0000e3b6 g       .text	00000000 .hidden __mspabi_srli_2
00000000  w      *ABS*	00000000 __high_bsssize
00000000  w      *ABS*	00000000 __rom_highdatastart
0000e538 g       .text	00000000 __msp430_fini_end
0000e192 g     F .text	00000014 delay
0000e3de g       .text	00000000 .hidden __mspabi_srll_12
0000e538 g       *ABS*	00000000 __romdatastart
0000e0a4 g     F .text	00000000 _msp430_run_init_array
0000e3a6 g       .text	00000000 .hidden __mspabi_srli_6
00000202 g     O .data	00000002 _impure_ptr
0000e064 g       .rodata	00000000 __preinit_array_end
0000e3b2 g       .text	00000000 .hidden __mspabi_srli_3
00000000  w      *ABS*	00000000 __high_datastart
00000000  w      *ABS*	00000000 __upper_data_init
0000027c g       .bss	00000000 __bssstart
0000e376 g       .text	00000000 .hidden __mspabi_func_epilog_5
0000e1e0 g     F .text	0000015c sha256
00000600 g       .noinit	00000000 __stack
0000e3f0 g       .text	00000000 .hidden __mspabi_srll_9
0000027c g       .data	00000000 _edata
0000e52e g       .text	00000000 __msp430_init_end
0000e1a6 g     F .text	00000012 tty_putc
0000e430 g       .text	00000000 .hidden __mspabi_srll
0000e44c  w    F .text	00000004 exit
00000000  w      *ABS*	00000000 __high_bssstart
0000e3cc g       .text	00000000 .hidden __mspabi_srll_15
00000000  w      *UND*	00000000 __sf_fake_stdout
0000e064 g       .rodata	00000000 __init_array_start
0000e44c  w    F .text	00000004 _exit
0000e45a  w    F .text	0000000e open
0000e38a g       .text	00000000 .hidden __mspabi_srli_13
00000200 g       .data	00000000 __datastart
0000e3f6 g       .text	00000000 .hidden __mspabi_srll_8
0000e420 g       .text	00000000 .hidden __mspabi_srll_1
0000e064 g       .rodata	00000000 __preinit_array_start
0000e082 g     F .text	00000014 __crt0_movedata
0000e37c g       .text	00000000 .hidden __mspabi_func_epilog_2
00000000  w      *UND*	00000000 __register_frame_info
0000e0b2 g     F .text	00000000 _msp430_run_preinit_array
0000e468  w    F .text	0000000e close
0000e372 g       .text	00000000 .hidden __mspabi_func_epilog_7
0000e378 g       .text	00000000 .hidden __mspabi_func_epilog_4
0000e41a g       .text	00000000 .hidden __mspabi_srll_2
0000e52e g       .text	00000000 __msp430_fini
0000e39e g       .text	00000000 .hidden __mspabi_srli_8



Disassembly of section .text:

0000e070 <__crt0_start>:
    e070:	31 40 00 06 	mov	#1536,	r1	;#0x0600

0000e074 <__crt0_init_bss>:
    e074:	3c 40 7c 02 	mov	#636,	r12	;#0x027c

0000e078 <.Loc.74.1>:
    e078:	0d 43       	clr	r13		;

0000e07a <.Loc.75.1>:
    e07a:	3e 40 12 00 	mov	#18,	r14	;#0x0012

0000e07e <.Loc.79.1>:
    e07e:	b0 12 ec e4 	call	#58604		;#0xe4ec

0000e082 <__crt0_movedata>:
    e082:	3c 40 00 02 	mov	#512,	r12	;#0x0200

0000e086 <.Loc.116.1>:
    e086:	3d 40 38 e5 	mov	#58680,	r13	;#0xe538

0000e08a <.Loc.119.1>:
    e08a:	0d 9c       	cmp	r12,	r13	;

0000e08c <.Loc.120.1>:
    e08c:	04 24       	jz	$+10     	;abs 0xe096

0000e08e <.Loc.122.1>:
    e08e:	3e 40 7c 00 	mov	#124,	r14	;#0x007c

0000e092 <.Loc.124.1>:
    e092:	b0 12 b4 e4 	call	#58548		;#0xe4b4

0000e096 <__crt0_call_init_then_main>:
    e096:	b0 12 1c e5 	call	#58652		;#0xe51c

0000e09a <.Loc.196.1>:
    e09a:	0c 43       	clr	r12		;

0000e09c <.Loc.197.1>:
    e09c:	b0 12 3c e3 	call	#58172		;#0xe33c

0000e0a0 <__crt0_call_exit>:
    e0a0:	b0 12 4c e4 	call	#58444		;#0xe44c

0000e0a4 <_msp430_run_init_array>:
    e0a4:	34 40 64 e0 	mov	#57444,	r4	;#0xe064

0000e0a8 <.Loc.224.1>:
    e0a8:	35 40 64 e0 	mov	#57444,	r5	;#0xe064

0000e0ac <.Loc.225.1>:
    e0ac:	26 43       	mov	#2,	r6	;r3 As==10

0000e0ae <.Loc.226.1>:
    e0ae:	30 40 d0 e0 	br	#0xe0d0		;

0000e0b2 <_msp430_run_preinit_array>:
    e0b2:	34 40 64 e0 	mov	#57444,	r4	;#0xe064

0000e0b6 <.Loc.232.1>:
    e0b6:	35 40 64 e0 	mov	#57444,	r5	;#0xe064

0000e0ba <.Loc.233.1>:
    e0ba:	26 43       	mov	#2,	r6	;r3 As==10

0000e0bc <.Loc.234.1>:
    e0bc:	30 40 d0 e0 	br	#0xe0d0		;

0000e0c0 <_msp430_run_fini_array>:
    e0c0:	34 40 64 e0 	mov	#57444,	r4	;#0xe064

0000e0c4 <.Loc.240.1>:
    e0c4:	35 40 64 e0 	mov	#57444,	r5	;#0xe064

0000e0c8 <.Loc.241.1>:
    e0c8:	36 40 fe ff 	mov	#65534,	r6	;#0xfffe

0000e0cc <.Loc.242.1>:
    e0cc:	30 40 d0 e0 	br	#0xe0d0		;

0000e0d0 <_msp430_run_array>:
    e0d0:	05 94       	cmp	r4,	r5	;

0000e0d2 <.Loc.246.1>:
    e0d2:	05 24       	jz	$+12     	;abs 0xe0de

0000e0d4 <.Loc.247.1>:
    e0d4:	27 44       	mov	@r4,	r7	;

0000e0d6 <.Loc.248.1>:
    e0d6:	04 56       	add	r6,	r4	;

0000e0d8 <.Loc.249.1>:
    e0d8:	a7 12       	call	@r7		;

0000e0da <.Loc.250.1>:
    e0da:	10 40 f4 ff 	br	0xfff4		;PC rel. 0xe0d0

0000e0de <_msp430_run_done>:
    e0de:	30 41       	ret			

0000e0e0 <L0>:
    e0e0:	30 41       	ret			
    e0e2:	30 41       	ret			

0000e0e4 <deregister_tm_clones>:
    e0e4:	3c 40 38 e5 	mov	#58680,	r12	;#0xe538
    e0e8:	3c 90 38 e5 	cmp	#58680,	r12	;#0xe538
    e0ec:	07 24       	jz	$+16     	;abs 0xe0fc
    e0ee:	3d 40 00 00 	mov	#0,	r13	;
    e0f2:	0d 93       	cmp	#0,	r13	;r3 As==00
    e0f4:	03 24       	jz	$+8      	;abs 0xe0fc
    e0f6:	3c 40 38 e5 	mov	#58680,	r12	;#0xe538
    e0fa:	8d 12       	call	r13		;

0000e0fc <.L1>:
    e0fc:	30 41       	ret			

0000e0fe <register_tm_clones>:
    e0fe:	0a 12       	push	r10		;
    e100:	3a 40 38 e5 	mov	#58680,	r10	;#0xe538
    e104:	3a 80 38 e5 	sub	#58680,	r10	;#0xe538
    e108:	0a 11       	rra	r10		;
    e10a:	0c 4a       	mov	r10,	r12	;
    e10c:	b0 12 82 e3 	call	#58242		;#0xe382
    e110:	0c 5a       	add	r10,	r12	;
    e112:	0d 4c       	mov	r12,	r13	;
    e114:	0d 11       	rra	r13		;
    e116:	0d 93       	cmp	#0,	r13	;r3 As==00
    e118:	07 24       	jz	$+16     	;abs 0xe128
    e11a:	3e 40 00 00 	mov	#0,	r14	;
    e11e:	0e 93       	cmp	#0,	r14	;r3 As==00
    e120:	03 24       	jz	$+8      	;abs 0xe128
    e122:	3c 40 38 e5 	mov	#58680,	r12	;#0xe538
    e126:	8e 12       	call	r14		;

0000e128 <.L9>:
    e128:	3a 41       	pop	r10		;
    e12a:	30 41       	ret			

0000e12c <__do_global_dtors_aux>:
    e12c:	0a 12       	push	r10		;
    e12e:	09 12       	push	r9		;
    e130:	c2 93 7c 02 	cmp.b	#0,	&0x027c	;r3 As==00
    e134:	17 20       	jnz	$+48     	;abs 0xe164
    e136:	3a 40 6e e0 	mov	#57454,	r10	;#0xe06e
    e13a:	3a 80 6c e0 	sub	#57452,	r10	;#0xe06c
    e13e:	0a 11       	rra	r10		;
    e140:	3a 53       	add	#-1,	r10	;r3 As==11
    e142:	39 40 6c e0 	mov	#57452,	r9	;#0xe06c

0000e146 <.L19>:
    e146:	1c 42 7e 02 	mov	&0x027e,r12	;0x027e
    e14a:	0c 9a       	cmp	r10,	r12	;
    e14c:	0d 28       	jnc	$+28     	;abs 0xe168
    e14e:	b0 12 e4 e0 	call	#57572		;#0xe0e4
    e152:	3d 40 00 00 	mov	#0,	r13	;
    e156:	0d 93       	cmp	#0,	r13	;r3 As==00
    e158:	03 24       	jz	$+8      	;abs 0xe160
    e15a:	3c 40 60 e0 	mov	#57440,	r12	;#0xe060
    e15e:	8d 12       	call	r13		;

0000e160 <.L21>:
    e160:	d2 43 7c 02 	mov.b	#1,	&0x027c	;r3 As==01

0000e164 <.L17>:
    e164:	30 40 7c e3 	br	#0xe37c		;

0000e168 <.L20>:
    e168:	1c 53       	inc	r12		;
    e16a:	82 4c 7e 02 	mov	r12,	&0x027e	;
    e16e:	0c 5c       	rla	r12		;
    e170:	0c 59       	add	r9,	r12	;
    e172:	2c 4c       	mov	@r12,	r12	;
    e174:	8c 12       	call	r12		;
    e176:	30 40 46 e1 	br	#0xe146		;

0000e17a <call___do_global_dtors_aux>:
    e17a:	3e 40 00 00 	mov	#0,	r14	;
    e17e:	0e 93       	cmp	#0,	r14	;r3 As==00
    e180:	05 24       	jz	$+12     	;abs 0xe18c
    e182:	3d 40 80 02 	mov	#640,	r13	;#0x0280
    e186:	3c 40 60 e0 	mov	#57440,	r12	;#0xe060
    e18a:	8e 12       	call	r14		;

0000e18c <.L27>:
    e18c:	b0 12 fe e0 	call	#57598		;#0xe0fe
    e190:	30 41       	ret			

0000e192 <delay>:

//--------------------------------------------------//
//                   Delay function                 //
//--------------------------------------------------//
void delay(unsigned int d) {
   while(d--) {
    e192:	0d 4c       	mov	r12,	r13	;
    e194:	3d 53       	add	#-1,	r13	;r3 As==11

0000e196 <.LVL1>:
    e196:	0c 93       	cmp	#0,	r12	;r3 As==00
    e198:	05 24       	jz	$+12     	;abs 0xe1a4

0000e19a <.L3>:
      __nop();
    e19a:	03 43       	nop			

0000e19c <.Loc.43.1>:
      __nop();
    e19c:	03 43       	nop			

0000e19e <.Loc.41.1>:

//--------------------------------------------------//
//                   Delay function                 //
//--------------------------------------------------//
void delay(unsigned int d) {
   while(d--) {
    e19e:	3d 53       	add	#-1,	r13	;r3 As==11
    e1a0:	3d 93       	cmp	#-1,	r13	;r3 As==11
    e1a2:	fb 23       	jnz	$-8      	;abs 0xe19a

0000e1a4 <.L1>:
      __nop();
      __nop();
   }
}
    e1a4:	30 41       	ret			

0000e1a6 <tty_putc>:
//            (Send a byte to the UART)             //
//--------------------------------------------------//
int tty_putc (int txdata) {

  // Wait until the TX buffer is not full
  while (UART_STAT & UART_TX_FULL);
    e1a6:	7d 40 81 00 	mov.b	#129,	r13	;#0x0081

0000e1aa <.L10>:
    e1aa:	fd b2 00 00 	bit.b	#8,	0(r13)	;r2 As==11
    e1ae:	fd 23       	jnz	$-4      	;abs 0xe1aa

0000e1b0 <.Loc.57.1>:

  // Write the output character
  UART_TXD = txdata;
    e1b0:	c2 4c 84 00 	mov.b	r12,	&0x0084	;

0000e1b4 <.Loc.60.1>:

  return 0;
}
    e1b4:	4c 43       	clr.b	r12		;

0000e1b6 <.LVL4>:
    e1b6:	30 41       	ret			

0000e1b8 <sha256_flush>:

char sha256_flush (char init) {
    if (init) {
    e1b8:	4c 93       	cmp.b	#0,	r12	;r3 As==00
    e1ba:	0d 24       	jz	$+28     	;abs 0xe1d6

0000e1bc <.LVL6>:
        init = 0;
        SHA_CONFIG = SHA_MODE | SHA_INIT | SHA_ON;
    e1bc:	f2 40 0b 00 	mov.b	#11,	&0x001f	;#0x000b
    e1c0:	1f 00 

0000e1c2 <.L14>:
    } else {
        SHA_CONFIG = SHA_MODE | SHA_NEXT | SHA_ON;
    }

    SHA_CONFIG = SHA_MODE | SHA_ON;
    e1c2:	f2 40 09 00 	mov.b	#9,	&0x001f	;
    e1c6:	1f 00 

0000e1c8 <.Loc.71.1>:
    while (!(SHA_STATUS & SHA_READY));
    e1c8:	7c 40 1f 00 	mov.b	#31,	r12	;#0x001f

0000e1cc <.L15>:
    e1cc:	dc b3 00 00 	bit.b	#1,	0(r12)	;r3 As==01
    e1d0:	fd 27       	jz	$-4      	;abs 0xe1cc

0000e1d2 <.Loc.74.1>:
    
    return init;
}
    e1d2:	4c 43       	clr.b	r12		;
    e1d4:	30 41       	ret			

0000e1d6 <.L13>:
char sha256_flush (char init) {
    if (init) {
        init = 0;
        SHA_CONFIG = SHA_MODE | SHA_INIT | SHA_ON;
    } else {
        SHA_CONFIG = SHA_MODE | SHA_NEXT | SHA_ON;
    e1d6:	f2 40 0d 00 	mov.b	#13,	&0x001f	;#0x000d
    e1da:	1f 00 
    e1dc:	30 40 c2 e1 	br	#0xe1c2		;

0000e1e0 <sha256>:
    
    return init;
}

// the return value are in the periphel
void sha256 (unsigned char *str, unsigned int length) {
    e1e0:	0a 12       	push	r10		;

0000e1e2 <.LCFI0>:
    e1e2:	09 12       	push	r9		;

0000e1e4 <.LCFI1>:
    e1e4:	08 12       	push	r8		;

0000e1e6 <.LCFI2>:
    e1e6:	07 12       	push	r7		;

0000e1e8 <.LCFI3>:
    e1e8:	06 12       	push	r6		;

0000e1ea <.LCFI4>:
    e1ea:	05 12       	push	r5		;

0000e1ec <.LCFI5>:
    e1ec:	04 12       	push	r4		;

0000e1ee <.LCFI6>:
    e1ee:	31 80 0a 00 	sub	#10,	r1	;#0x000a

0000e1f2 <.LCFI7>:
    e1f2:	06 4c       	mov	r12,	r6	;
    e1f4:	09 4d       	mov	r13,	r9	;

0000e1f6 <.Loc.78.1>:
    unsigned long size = length * 8;
    e1f6:	0c 4d       	mov	r13,	r12	;

0000e1f8 <.LVL10>:
    e1f8:	0c 5d       	add	r13,	r12	;
    e1fa:	0c 5c       	rla	r12		;
    e1fc:	0c 5c       	rla	r12		;
    e1fe:	81 4c 02 00 	mov	r12,	2(r1)	;
    e202:	81 43 04 00 	mov	#0,	4(r1)	;r3 As==00

0000e206 <.LVL11>:
    unsigned int i = 0;
    char init = 1;

    unsigned long in;

    while (i <= length/4) {
    e206:	0c 4d       	mov	r13,	r12	;
    e208:	b0 12 b6 e3 	call	#58294		;#0xe3b6

0000e20c <.LVL12>:
    e20c:	4d 43       	clr.b	r13		;

0000e20e <.Loc.80.1>:

// the return value are in the periphel
void sha256 (unsigned char *str, unsigned int length) {
    unsigned long size = length * 8;
    unsigned int i = 0;
    char init = 1;
    e20e:	55 43       	mov.b	#1,	r5	;r3 As==01

0000e210 <.Loc.79.1>:
}

// the return value are in the periphel
void sha256 (unsigned char *str, unsigned int length) {
    unsigned long size = length * 8;
    unsigned int i = 0;
    e210:	0a 4d       	mov	r13,	r10	;

0000e212 <.LBB8>:
        in = 0;
        for (unsigned int j = 0; j < 4; j++) {
            if (i*4+j < length) {
                ((unsigned char *) &in)[3-j] = str[i*4+j];
            } else if (i*4+j == length) {
                ((unsigned char *) &in)[3-j] = 0x80;
    e212:	0e 41       	mov	r1,	r14	;
    e214:	3e 50 06 00 	add	#6,	r14	;
    e218:	81 4e 00 00 	mov	r14,	0(r1)	;

0000e21c <.LBB9>:
    } else {
        SHA_CONFIG = SHA_MODE | SHA_NEXT | SHA_ON;
    }

    SHA_CONFIG = SHA_MODE | SHA_ON;
    while (!(SHA_STATUS & SHA_READY));
    e21c:	77 40 1f 00 	mov.b	#31,	r7	;#0x001f

0000e220 <.LBE9>:

        (&SHA_INPUT)[15 - i%16] = in;
        i++;

        if (i%16 == 0 && i != 0)
            init = sha256_flush(init);
    e220:	04 4d       	mov	r13,	r4	;

0000e222 <.L27>:
    char init = 1;

    unsigned long in;

    while (i <= length/4) {
        in = 0;
    e222:	81 43 06 00 	mov	#0,	6(r1)	;r3 As==00
    e226:	81 43 08 00 	mov	#0,	8(r1)	;r3 As==00

0000e22a <.LVL14>:
    e22a:	08 41       	mov	r1,	r8	;
    e22c:	38 50 09 00 	add	#9,	r8	;
    e230:	0e 4d       	mov	r13,	r14	;

0000e232 <.LBB13>:
        for (unsigned int j = 0; j < 4; j++) {
    e232:	4f 43       	clr.b	r15		;

0000e234 <.L22>:
            if (i*4+j < length) {
    e234:	0e 99       	cmp	r9,	r14	;
    e236:	24 2c       	jc	$+74     	;abs 0xe280

0000e238 <.Loc.88.1>:
                ((unsigned char *) &in)[3-j] = str[i*4+j];
    e238:	0b 46       	mov	r6,	r11	;
    e23a:	0b 5e       	add	r14,	r11	;
    e23c:	e8 4b 00 00 	mov.b	@r11,	0(r8)	;

0000e240 <.L20>:

    unsigned long in;

    while (i <= length/4) {
        in = 0;
        for (unsigned int j = 0; j < 4; j++) {
    e240:	1f 53       	inc	r15		;
    e242:	1e 53       	inc	r14		;
    e244:	38 53       	add	#-1,	r8	;r3 As==11
    e246:	2f 92       	cmp	#4,	r15	;r2 As==10
    e248:	f5 23       	jnz	$-20     	;abs 0xe234

0000e24a <.L21>:
                ((unsigned char *) &in)[3-j] = 0x80;
                break;
            }
        }

        (&SHA_INPUT)[15 - i%16] = in;
    e24a:	0e 4a       	mov	r10,	r14	;
    e24c:	7e f0 0f 00 	and.b	#15,	r14	;#0x000f
    e250:	0e 5e       	rla	r14		;
    e252:	0e 5e       	rla	r14		;
    e254:	3f 40 5c 00 	mov	#92,	r15	;#0x005c
    e258:	0f 8e       	sub	r14,	r15	;

0000e25a <.LVL17>:
    e25a:	9f 41 06 00 	mov	6(r1),	0(r15)	;
    e25e:	00 00 
    e260:	9f 41 08 00 	mov	8(r1),	2(r15)	;
    e264:	02 00 

0000e266 <.Loc.96.1>:
        i++;
    e266:	0f 4a       	mov	r10,	r15	;
    e268:	1f 53       	inc	r15		;

0000e26a <.LVL18>:

        if (i%16 == 0 && i != 0)
    e26a:	0e 4f       	mov	r15,	r14	;
    e26c:	7e f0 0f 00 	and.b	#15,	r14	;#0x000f
    e270:	0e 93       	cmp	#0,	r14	;r3 As==00
    e272:	0f 24       	jz	$+32     	;abs 0xe292
    e274:	2d 52       	add	#4,	r13	;r2 As==10

0000e276 <.Loc.84.1>:
    unsigned int i = 0;
    char init = 1;

    unsigned long in;

    while (i <= length/4) {
    e276:	0c 9f       	cmp	r15,	r12	;
    e278:	1b 28       	jnc	$+56     	;abs 0xe2b0

0000e27a <.L33>:
    e27a:	0a 4f       	mov	r15,	r10	;
    e27c:	30 40 22 e2 	br	#0xe222		;

0000e280 <.L19>:
        in = 0;
        for (unsigned int j = 0; j < 4; j++) {
            if (i*4+j < length) {
                ((unsigned char *) &in)[3-j] = str[i*4+j];
            } else if (i*4+j == length) {
    e280:	0e 99       	cmp	r9,	r14	;
    e282:	de 23       	jnz	$-66     	;abs 0xe240

0000e284 <.Loc.90.1>:
                ((unsigned char *) &in)[3-j] = 0x80;
    e284:	2e 41       	mov	@r1,	r14	;
    e286:	0e 8f       	sub	r15,	r14	;
    e288:	fe 40 80 ff 	mov.b	#65408,	3(r14)	;#0xff80
    e28c:	03 00 

0000e28e <.Loc.91.1>:
                break;
    e28e:	30 40 4a e2 	br	#0xe24a		;

0000e292 <.L42>:

  return 0;
}

char sha256_flush (char init) {
    if (init) {
    e292:	05 93       	cmp	#0,	r5	;r3 As==00
    e294:	42 24       	jz	$+134    	;abs 0xe31a

0000e296 <.LVL22>:
        init = 0;
        SHA_CONFIG = SHA_MODE | SHA_INIT | SHA_ON;
    e296:	f2 40 0b 00 	mov.b	#11,	&0x001f	;#0x000b
    e29a:	1f 00 

0000e29c <.Loc.70.1>:
    } else {
        SHA_CONFIG = SHA_MODE | SHA_NEXT | SHA_ON;
    }

    SHA_CONFIG = SHA_MODE | SHA_ON;
    e29c:	f2 40 09 00 	mov.b	#9,	&0x001f	;
    e2a0:	1f 00 

0000e2a2 <.L26>:
    while (!(SHA_STATUS & SHA_READY));
    e2a2:	d7 b3 00 00 	bit.b	#1,	0(r7)	;r3 As==01
    e2a6:	fd 27       	jz	$-4      	;abs 0xe2a2

0000e2a8 <.LBE15>:

        (&SHA_INPUT)[15 - i%16] = in;
        i++;

        if (i%16 == 0 && i != 0)
            init = sha256_flush(init);
    e2a8:	05 44       	mov	r4,	r5	;
    e2aa:	2d 52       	add	#4,	r13	;r2 As==10

0000e2ac <.Loc.84.1>:
    unsigned int i = 0;
    char init = 1;

    unsigned long in;

    while (i <= length/4) {
    e2ac:	0c 9f       	cmp	r15,	r12	;
    e2ae:	e5 2f       	jc	$-52     	;abs 0xe27a

0000e2b0 <.L43>:
        if (i%16 == 0 && i != 0)
            init = sha256_flush(init);
    }

    // set zeros
    for (unsigned int j = i%16; j < 15; j++) {
    e2b0:	3e 90 0f 00 	cmp	#15,	r14	;#0x000f
    e2b4:	3f 24       	jz	$+128    	;abs 0xe334
    e2b6:	3a 50 10 00 	add	#16,	r10	;#0x0010
    e2ba:	0a 8e       	sub	r14,	r10	;
    e2bc:	30 40 c6 e2 	br	#0xe2c6		;

0000e2c0 <.L44>:
    e2c0:	0e 4f       	mov	r15,	r14	;
    e2c2:	7e f0 0f 00 	and.b	#15,	r14	;#0x000f

0000e2c6 <.L29>:
        (&SHA_INPUT)[15 - i%16] = 0;
    e2c6:	0e 5e       	rla	r14		;
    e2c8:	0e 5e       	rla	r14		;
    e2ca:	3c 40 5c 00 	mov	#92,	r12	;#0x005c
    e2ce:	0c 8e       	sub	r14,	r12	;
    e2d0:	8c 43 00 00 	mov	#0,	0(r12)	;r3 As==00
    e2d4:	8c 43 02 00 	mov	#0,	2(r12)	;r3 As==00

0000e2d8 <.Loc.105.1>:
        i++;
    e2d8:	1f 53       	inc	r15		;

0000e2da <.Loc.103.1>:
        if (i%16 == 0 && i != 0)
            init = sha256_flush(init);
    }

    // set zeros
    for (unsigned int j = i%16; j < 15; j++) {
    e2da:	0a 9f       	cmp	r15,	r10	;
    e2dc:	f1 23       	jnz	$-28     	;abs 0xe2c0
    e2de:	7a f0 0f 00 	and.b	#15,	r10	;#0x000f
    e2e2:	0a 5a       	rla	r10		;
    e2e4:	0a 5a       	rla	r10		;
    e2e6:	3c 40 5c 00 	mov	#92,	r12	;#0x005c
    e2ea:	0c 8a       	sub	r10,	r12	;

0000e2ec <.L28>:
        (&SHA_INPUT)[15 - i%16] = 0;
        i++;
    }
    (&SHA_INPUT)[15 - i%16] = size;
    e2ec:	9c 41 02 00 	mov	2(r1),	0(r12)	;
    e2f0:	00 00 
    e2f2:	9c 41 04 00 	mov	4(r1),	2(r12)	;
    e2f6:	02 00 

0000e2f8 <.LBB17>:

  return 0;
}

char sha256_flush (char init) {
    if (init) {
    e2f8:	05 93       	cmp	#0,	r5	;r3 As==00
    e2fa:	17 24       	jz	$+48     	;abs 0xe32a

0000e2fc <.LVL28>:
        init = 0;
        SHA_CONFIG = SHA_MODE | SHA_INIT | SHA_ON;
    e2fc:	f2 40 0b 00 	mov.b	#11,	&0x001f	;#0x000b
    e300:	1f 00 

0000e302 <.L31>:
    } else {
        SHA_CONFIG = SHA_MODE | SHA_NEXT | SHA_ON;
    }

    SHA_CONFIG = SHA_MODE | SHA_ON;
    e302:	f2 40 09 00 	mov.b	#9,	&0x001f	;
    e306:	1f 00 

0000e308 <.Loc.71.1>:
    while (!(SHA_STATUS & SHA_READY));
    e308:	7c 40 1f 00 	mov.b	#31,	r12	;#0x001f

0000e30c <.L32>:
    e30c:	dc b3 00 00 	bit.b	#1,	0(r12)	;r3 As==01
    e310:	fd 27       	jz	$-4      	;abs 0xe30c

0000e312 <.LBE17>:
        i++;
    }
    (&SHA_INPUT)[15 - i%16] = size;

    sha256_flush(init);
}
    e312:	31 50 0a 00 	add	#10,	r1	;#0x000a
    e316:	30 40 72 e3 	br	#0xe372		;

0000e31a <.L24>:
char sha256_flush (char init) {
    if (init) {
        init = 0;
        SHA_CONFIG = SHA_MODE | SHA_INIT | SHA_ON;
    } else {
        SHA_CONFIG = SHA_MODE | SHA_NEXT | SHA_ON;
    e31a:	f2 40 0d 00 	mov.b	#13,	&0x001f	;#0x000d
    e31e:	1f 00 

0000e320 <.LVL31>:
    }

    SHA_CONFIG = SHA_MODE | SHA_ON;
    e320:	f2 40 09 00 	mov.b	#9,	&0x001f	;
    e324:	1f 00 
    e326:	30 40 a2 e2 	br	#0xe2a2		;

0000e32a <.L30>:
char sha256_flush (char init) {
    if (init) {
        init = 0;
        SHA_CONFIG = SHA_MODE | SHA_INIT | SHA_ON;
    } else {
        SHA_CONFIG = SHA_MODE | SHA_NEXT | SHA_ON;
    e32a:	f2 40 0d 00 	mov.b	#13,	&0x001f	;#0x000d
    e32e:	1f 00 
    e330:	30 40 02 e3 	br	#0xe302		;

0000e334 <.L34>:
        if (i%16 == 0 && i != 0)
            init = sha256_flush(init);
    }

    // set zeros
    for (unsigned int j = i%16; j < 15; j++) {
    e334:	7c 40 20 00 	mov.b	#32,	r12	;#0x0020
    e338:	30 40 ec e2 	br	#0xe2ec		;

0000e33c <main>:
//--------------------------------------------------//
// Main function with init an an endless loop that  //
// is synced with the interrupts trough the         //
// lowpower mode.                                   //
//--------------------------------------------------//
int main(void) {
    e33c:	31 80 5a 00 	sub	#90,	r1	;#0x005a

0000e340 <.LCFI8>:

    unsigned char string[] = "The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.";
    e340:	7e 40 5a 00 	mov.b	#90,	r14	;#0x005a
    e344:	3d 40 00 e0 	mov	#57344,	r13	;#0xe000
    e348:	0c 41       	mov	r1,	r12	;
    e34a:	b0 12 36 e4 	call	#58422		;#0xe436

0000e34e <.LVL34>:

    WDTCTL = WDTPW | WDTHOLD;           // Init watchdog timer
    e34e:	b2 40 80 5a 	mov	#23168,	&0x0120	;#0x5a80
    e352:	20 01 

0000e354 <.Loc.123.1>:

    UART_BAUD = BAUD;                   // Init UART
    e354:	b2 40 11 04 	mov	#1041,	&0x0082	;#0x0411
    e358:	82 00 

0000e35a <.Loc.124.1>:
    UART_CTL  = UART_EN | UART_IEN_RX;
    e35a:	f2 40 11 00 	mov.b	#17,	&0x0080	;#0x0011
    e35e:	80 00 

0000e360 <.Loc.126.1>:

    sha256(string, 89);
    e360:	7d 40 59 00 	mov.b	#89,	r13	;#0x0059
    e364:	0c 41       	mov	r1,	r12	;
    e366:	b0 12 e0 e1 	call	#57824		;#0xe1e0

0000e36a <.LVL35>:

}
    e36a:	4c 43       	clr.b	r12		;
    e36c:	31 50 5a 00 	add	#90,	r1	;#0x005a
    e370:	30 41       	ret			

0000e372 <__mspabi_func_epilog_7>:
    e372:	34 41       	pop	r4		;

0000e374 <__mspabi_func_epilog_6>:
    e374:	35 41       	pop	r5		;

0000e376 <__mspabi_func_epilog_5>:
    e376:	36 41       	pop	r6		;

0000e378 <__mspabi_func_epilog_4>:
    e378:	37 41       	pop	r7		;

0000e37a <__mspabi_func_epilog_3>:
    e37a:	38 41       	pop	r8		;

0000e37c <__mspabi_func_epilog_2>:
    e37c:	39 41       	pop	r9		;

0000e37e <__mspabi_func_epilog_1>:
    e37e:	3a 41       	pop	r10		;
    e380:	30 41       	ret			

0000e382 <__mspabi_srli_15>:
    e382:	12 c3       	clrc			
    e384:	0c 10       	rrc	r12		;

0000e386 <__mspabi_srli_14>:
    e386:	12 c3       	clrc			
    e388:	0c 10       	rrc	r12		;

0000e38a <__mspabi_srli_13>:
    e38a:	12 c3       	clrc			
    e38c:	0c 10       	rrc	r12		;

0000e38e <__mspabi_srli_12>:
    e38e:	12 c3       	clrc			
    e390:	0c 10       	rrc	r12		;

0000e392 <__mspabi_srli_11>:
    e392:	12 c3       	clrc			
    e394:	0c 10       	rrc	r12		;

0000e396 <__mspabi_srli_10>:
    e396:	12 c3       	clrc			
    e398:	0c 10       	rrc	r12		;

0000e39a <__mspabi_srli_9>:
    e39a:	12 c3       	clrc			
    e39c:	0c 10       	rrc	r12		;

0000e39e <__mspabi_srli_8>:
    e39e:	12 c3       	clrc			
    e3a0:	0c 10       	rrc	r12		;

0000e3a2 <__mspabi_srli_7>:
    e3a2:	12 c3       	clrc			
    e3a4:	0c 10       	rrc	r12		;

0000e3a6 <__mspabi_srli_6>:
    e3a6:	12 c3       	clrc			
    e3a8:	0c 10       	rrc	r12		;

0000e3aa <__mspabi_srli_5>:
    e3aa:	12 c3       	clrc			
    e3ac:	0c 10       	rrc	r12		;

0000e3ae <__mspabi_srli_4>:
    e3ae:	12 c3       	clrc			
    e3b0:	0c 10       	rrc	r12		;

0000e3b2 <__mspabi_srli_3>:
    e3b2:	12 c3       	clrc			
    e3b4:	0c 10       	rrc	r12		;

0000e3b6 <__mspabi_srli_2>:
    e3b6:	12 c3       	clrc			
    e3b8:	0c 10       	rrc	r12		;

0000e3ba <__mspabi_srli_1>:
    e3ba:	12 c3       	clrc			
    e3bc:	0c 10       	rrc	r12		;
    e3be:	30 41       	ret			

0000e3c0 <.L11>:
    e3c0:	3d 53       	add	#-1,	r13	;r3 As==11
    e3c2:	12 c3       	clrc			
    e3c4:	0c 10       	rrc	r12		;

0000e3c6 <__mspabi_srli>:
    e3c6:	0d 93       	cmp	#0,	r13	;r3 As==00
    e3c8:	fb 23       	jnz	$-8      	;abs 0xe3c0
    e3ca:	30 41       	ret			

0000e3cc <__mspabi_srll_15>:
    e3cc:	12 c3       	clrc			
    e3ce:	0d 10       	rrc	r13		;
    e3d0:	0c 10       	rrc	r12		;

0000e3d2 <__mspabi_srll_14>:
    e3d2:	12 c3       	clrc			
    e3d4:	0d 10       	rrc	r13		;
    e3d6:	0c 10       	rrc	r12		;

0000e3d8 <__mspabi_srll_13>:
    e3d8:	12 c3       	clrc			
    e3da:	0d 10       	rrc	r13		;
    e3dc:	0c 10       	rrc	r12		;

0000e3de <__mspabi_srll_12>:
    e3de:	12 c3       	clrc			
    e3e0:	0d 10       	rrc	r13		;
    e3e2:	0c 10       	rrc	r12		;

0000e3e4 <__mspabi_srll_11>:
    e3e4:	12 c3       	clrc			
    e3e6:	0d 10       	rrc	r13		;
    e3e8:	0c 10       	rrc	r12		;

0000e3ea <__mspabi_srll_10>:
    e3ea:	12 c3       	clrc			
    e3ec:	0d 10       	rrc	r13		;
    e3ee:	0c 10       	rrc	r12		;

0000e3f0 <__mspabi_srll_9>:
    e3f0:	12 c3       	clrc			
    e3f2:	0d 10       	rrc	r13		;
    e3f4:	0c 10       	rrc	r12		;

0000e3f6 <__mspabi_srll_8>:
    e3f6:	12 c3       	clrc			
    e3f8:	0d 10       	rrc	r13		;
    e3fa:	0c 10       	rrc	r12		;

0000e3fc <__mspabi_srll_7>:
    e3fc:	12 c3       	clrc			
    e3fe:	0d 10       	rrc	r13		;
    e400:	0c 10       	rrc	r12		;

0000e402 <__mspabi_srll_6>:
    e402:	12 c3       	clrc			
    e404:	0d 10       	rrc	r13		;
    e406:	0c 10       	rrc	r12		;

0000e408 <__mspabi_srll_5>:
    e408:	12 c3       	clrc			
    e40a:	0d 10       	rrc	r13		;
    e40c:	0c 10       	rrc	r12		;

0000e40e <__mspabi_srll_4>:
    e40e:	12 c3       	clrc			
    e410:	0d 10       	rrc	r13		;
    e412:	0c 10       	rrc	r12		;

0000e414 <__mspabi_srll_3>:
    e414:	12 c3       	clrc			
    e416:	0d 10       	rrc	r13		;
    e418:	0c 10       	rrc	r12		;

0000e41a <__mspabi_srll_2>:
    e41a:	12 c3       	clrc			
    e41c:	0d 10       	rrc	r13		;
    e41e:	0c 10       	rrc	r12		;

0000e420 <__mspabi_srll_1>:
    e420:	12 c3       	clrc			
    e422:	0d 10       	rrc	r13		;
    e424:	0c 10       	rrc	r12		;
    e426:	30 41       	ret			

0000e428 <.L12>:
    e428:	3e 53       	add	#-1,	r14	;r3 As==11
    e42a:	12 c3       	clrc			
    e42c:	0d 10       	rrc	r13		;
    e42e:	0c 10       	rrc	r12		;

0000e430 <__mspabi_srll>:
    e430:	0e 93       	cmp	#0,	r14	;r3 As==00
    e432:	fa 23       	jnz	$-10     	;abs 0xe428
    e434:	30 41       	ret			

0000e436 <memcpy>:
    e436:	0f 4c       	mov	r12,	r15	;
    e438:	0e 5c       	add	r12,	r14	;

0000e43a <.L2>:
    e43a:	0f 9e       	cmp	r14,	r15	;
    e43c:	01 20       	jnz	$+4      	;abs 0xe440

0000e43e <.Loc.111.1>:
    e43e:	30 41       	ret			

0000e440 <.L3>:
    e440:	ef 4d 00 00 	mov.b	@r13,	0(r15)	;
    e444:	1f 53       	inc	r15		;

0000e446 <.LVL4>:
    e446:	1d 53       	inc	r13		;
    e448:	30 40 3a e4 	br	#0xe43a		;

0000e44c <_exit>:
    e44c:	30 40 4c e4 	br	#0xe44c		;

0000e450 <_isatty>:
    e450:	1c 43       	mov	#1,	r12	;r3 As==01

0000e452 <.Loc.59.1>:
    e452:	30 41       	ret			

0000e454 <getpid>:
    e454:	3c 40 2a 00 	mov	#42,	r12	;#0x002a

0000e458 <.Loc.65.1>:
    e458:	30 41       	ret			

0000e45a <open>:
    e45a:	b0 12 ae e4 	call	#58542		;#0xe4ae
    e45e:	bc 40 58 00 	mov	#88,	0(r12)	;#0x0058
    e462:	00 00 
    e464:	3c 43       	mov	#-1,	r12	;r3 As==11
    e466:	30 41       	ret			

0000e468 <close>:
    e468:	b0 12 ae e4 	call	#58542		;#0xe4ae
    e46c:	bc 40 58 00 	mov	#88,	0(r12)	;#0x0058
    e470:	00 00 
    e472:	3c 43       	mov	#-1,	r12	;r3 As==11
    e474:	30 41       	ret			

0000e476 <read>:
    e476:	b0 12 ae e4 	call	#58542		;#0xe4ae
    e47a:	bc 40 58 00 	mov	#88,	0(r12)	;#0x0058
    e47e:	00 00 
    e480:	3c 43       	mov	#-1,	r12	;r3 As==11
    e482:	30 41       	ret			

0000e484 <fstat>:
    e484:	b0 12 ae e4 	call	#58542		;#0xe4ae
    e488:	bc 40 58 00 	mov	#88,	0(r12)	;#0x0058
    e48c:	00 00 
    e48e:	3c 43       	mov	#-1,	r12	;r3 As==11
    e490:	30 41       	ret			

0000e492 <lseek>:
    e492:	b0 12 ae e4 	call	#58542		;#0xe4ae
    e496:	bc 40 58 00 	mov	#88,	0(r12)	;#0x0058
    e49a:	00 00 
    e49c:	3c 43       	mov	#-1,	r12	;r3 As==11
    e49e:	30 41       	ret			

0000e4a0 <kill>:
    e4a0:	b0 12 ae e4 	call	#58542		;#0xe4ae
    e4a4:	bc 40 58 00 	mov	#88,	0(r12)	;#0x0058
    e4a8:	00 00 
    e4aa:	3c 43       	mov	#-1,	r12	;r3 As==11
    e4ac:	30 41       	ret			

0000e4ae <__errno>:
    e4ae:	1c 42 02 02 	mov	&0x0202,r12	;0x0202
    e4b2:	30 41       	ret			

0000e4b4 <memmove>:
    e4b4:	0d 9c       	cmp	r12,	r13	;
    e4b6:	0a 28       	jnc	$+22     	;abs 0xe4cc

0000e4b8 <.L5>:
    e4b8:	0f 4c       	mov	r12,	r15	;
    e4ba:	0e 5c       	add	r12,	r14	;

0000e4bc <.L3>:
    e4bc:	0e 9f       	cmp	r15,	r14	;
    e4be:	0d 24       	jz	$+28     	;abs 0xe4da

0000e4c0 <.LVL3>:
    e4c0:	ef 4d 00 00 	mov.b	@r13,	0(r15)	;
    e4c4:	1f 53       	inc	r15		;

0000e4c6 <.LVL4>:
    e4c6:	1d 53       	inc	r13		;
    e4c8:	30 40 bc e4 	br	#0xe4bc		;

0000e4cc <.L2>:
    e4cc:	0f 4d       	mov	r13,	r15	;
    e4ce:	0f 5e       	add	r14,	r15	;
    e4d0:	0c 9f       	cmp	r15,	r12	;
    e4d2:	f2 2f       	jc	$-26     	;abs 0xe4b8

0000e4d4 <.L4>:
    e4d4:	3e 53       	add	#-1,	r14	;r3 As==11

0000e4d6 <.LVL7>:
    e4d6:	3e 93       	cmp	#-1,	r14	;r3 As==11
    e4d8:	01 20       	jnz	$+4      	;abs 0xe4dc

0000e4da <.L10>:
    e4da:	30 41       	ret			

0000e4dc <.L6>:
    e4dc:	0b 4c       	mov	r12,	r11	;
    e4de:	0b 5e       	add	r14,	r11	;
    e4e0:	0f 4d       	mov	r13,	r15	;
    e4e2:	0f 5e       	add	r14,	r15	;
    e4e4:	eb 4f 00 00 	mov.b	@r15,	0(r11)	;
    e4e8:	30 40 d4 e4 	br	#0xe4d4		;

0000e4ec <memset>:
    e4ec:	0f 4c       	mov	r12,	r15	;
    e4ee:	0e 5c       	add	r12,	r14	;

0000e4f0 <.L2>:
    e4f0:	0f 9e       	cmp	r14,	r15	;
    e4f2:	01 20       	jnz	$+4      	;abs 0xe4f6

0000e4f4 <.Loc.104.1>:
    e4f4:	30 41       	ret			

0000e4f6 <.L3>:
    e4f6:	cf 4d 00 00 	mov.b	r13,	0(r15)	;
    e4fa:	1f 53       	inc	r15		;

0000e4fc <.LVL4>:
    e4fc:	30 40 f0 e4 	br	#0xe4f0		;

0000e500 <L0>:
    e500:	30 41       	ret			

0000e502 <__do_global_ctors_aux>:
    e502:	0a 12       	push	r10		;
    e504:	3a 40 68 e0 	mov	#57448,	r10	;#0xe068

0000e508 <.L2>:
    e508:	2c 4a       	mov	@r10,	r12	;
    e50a:	3c 93       	cmp	#-1,	r12	;r3 As==11
    e50c:	02 20       	jnz	$+6      	;abs 0xe512
    e50e:	3a 41       	pop	r10		;
    e510:	30 41       	ret			

0000e512 <.L3>:
    e512:	8c 12       	call	r12		;
    e514:	3a 50 fe ff 	add	#65534,	r10	;#0xfffe
    e518:	30 40 08 e5 	br	#0xe508		;

0000e51c <call___do_global_ctors_aux>:
    e51c:	b0 12 7a e1 	call	#57722		;#0xe17a
    e520:	b0 12 02 e5 	call	#58626		;#0xe502

0000e524 <L0>:
    e524:	b0 12 b2 e0 	call	#57522		;#0xe0b2

0000e528 <.Loc.19.1>:
    e528:	b0 12 a4 e0 	call	#57508		;#0xe0a4

0000e52c <.Loc.20.1>:
    e52c:	30 41       	ret			

0000e52e <__msp430_fini>:
    e52e:	b0 12 c0 e0 	call	#57536		;#0xe0c0

0000e532 <L0>:
    e532:	b0 12 2c e1 	call	#57644		;#0xe12c

0000e536 <L0>:
    e536:	30 41       	ret			
