diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.adt b/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.adt index fc7fff40f..6be3f033b 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.adt @@ -1,1183 +1,775 @@ Project(Attrs([Attr("filename","\"a.out\""), -Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch x86_64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 4668 9 4668)\n(code-region 4256 410 4256)\n(code-region 4240 8 4240)\n(code-region 4128 112 4128)\n(code-region 4096 23 4096)\n(code-start 4256)\n(code-start 4496)\n(entry-point 4256)\n(external-reference 16320 __libc_start_main)\n(external-reference 16328 _ITM_deregisterTMCloneTable)\n(external-reference 16336 __gmon_start__)\n(external-reference 16344 _ITM_registerTMCloneTable)\n(external-reference 16352 __cxa_finalize)\n(external-reference 16384 free)\n(external-reference 16392 puts)\n(external-reference 16400 strlen)\n(external-reference 16408 memset)\n(external-reference 16416 memcpy)\n(external-reference 16424 malloc)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry _init 4096 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.2.5 0 0)\n(llvm:code-entry main 4496 170)\n(llvm:code-entry _start 4256 34)\n(llvm:code-entry malloc@GLIBC_2.2.5 0 0)\n(llvm:code-entry memcpy@GLIBC_2.14 0 0)\n(llvm:code-entry memset@GLIBC_2.2.5 0 0)\n(llvm:code-entry strlen@GLIBC_2.2.5 0 0)\n(llvm:code-entry _fini 4668 0)\n(llvm:code-entry puts@GLIBC_2.2.5 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry free@GLIBC_2.2.5 0 0)\n(llvm:code-entry frame_dummy 4480 0)\n(llvm:code-entry __do_global_dtors_aux 4416 0)\n(llvm:code-entry register_tm_clones 4352 0)\n(llvm:code-entry deregister_tm_clones 4304 0)\n(llvm:code-entry .fini 4668 9)\n(llvm:code-entry .text 4256 410)\n(llvm:code-entry .plt.got 4240 8)\n(llvm:code-entry .plt 4128 112)\n(llvm:code-entry .init 4096 23)\n(llvm:elf-program-header 12 11728 560)\n(llvm:elf-program-header 11 0 0)\n(llvm:elf-program-header 10 8196 44)\n(llvm:elf-program-header 09 824 32)\n(llvm:elf-program-header 08 856 68)\n(llvm:elf-program-header 07 824 32)\n(llvm:elf-program-header 06 11744 480)\n(llvm:elf-program-header 05 11728 636)\n(llvm:elf-program-header 04 8192 220)\n(llvm:elf-program-header 03 4096 581)\n(llvm:elf-program-header 02 0 1872)\n(llvm:elf-program-header 01 792 28)\n(llvm:elf-program-header 00 64 728)\n(llvm:elf-program-header-flags 12 false true false false)\n(llvm:elf-program-header-flags 11 false true true false)\n(llvm:elf-program-header-flags 10 false true false false)\n(llvm:elf-program-header-flags 09 false true false false)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true false false)\n(llvm:elf-program-header-flags 06 false true true false)\n(llvm:elf-program-header-flags 05 true true true false)\n(llvm:elf-program-header-flags 04 true true false false)\n(llvm:elf-program-header-flags 03 true true false true)\n(llvm:elf-program-header-flags 02 true true false false)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 12 15824 560)\n(llvm:elf-virtual-program-header 11 0 0)\n(llvm:elf-virtual-program-header 10 8196 44)\n(llvm:elf-virtual-program-header 09 824 32)\n(llvm:elf-virtual-program-header 08 856 68)\n(llvm:elf-virtual-program-header 07 824 32)\n(llvm:elf-virtual-program-header 06 15840 480)\n(llvm:elf-virtual-program-header 05 15824 656)\n(llvm:elf-virtual-program-header 04 8192 220)\n(llvm:elf-virtual-program-header 03 4096 581)\n(llvm:elf-virtual-program-header 02 0 1872)\n(llvm:elf-virtual-program-header 01 792 28)\n(llvm:elf-virtual-program-header 00 64 728)\n(llvm:entry-point 4256)\n(llvm:name-reference 16424 malloc)\n(llvm:name-reference 16416 memcpy)\n(llvm:name-reference 16408 memset)\n(llvm:name-reference 16400 strlen)\n(llvm:name-reference 16392 puts)\n(llvm:name-reference 16384 free)\n(llvm:name-reference 16352 __cxa_finalize)\n(llvm:name-reference 16344 _ITM_registerTMCloneTable)\n(llvm:name-reference 16336 __gmon_start__)\n(llvm:name-reference 16328 _ITM_deregisterTMCloneTable)\n(llvm:name-reference 16320 __libc_start_main)\n(llvm:section-entry .shstrtab 0 282 14101)\n(llvm:section-entry .strtab 0 613 13488)\n(llvm:section-entry .symtab 0 1056 12432)\n(llvm:section-entry .comment 0 63 12364)\n(llvm:section-entry .bss 16464 16 12364)\n(llvm:section-entry .data 16432 28 12336)\n(llvm:section-entry .got.plt 16360 72 12264)\n(llvm:section-entry .got 16320 40 12224)\n(llvm:section-entry .dynamic 15840 480 11744)\n(llvm:section-entry .fini_array 15832 8 11736)\n(llvm:section-entry .init_array 15824 8 11728)\n(llvm:section-entry .eh_frame 8240 172 8240)\n(llvm:section-entry .eh_frame_hdr 8196 44 8196)\n(llvm:section-entry .rodata 8192 4 8192)\n(llvm:section-entry .fini 4668 9 4668)\n(llvm:section-entry .text 4256 410 4256)\n(llvm:section-entry .plt.got 4240 8 4240)\n(llvm:section-entry .plt 4128 112 4128)\n(llvm:section-entry .init 4096 23 4096)\n(llvm:section-entry .rela.plt 1728 144 1728)\n(llvm:section-entry .rela.dyn 1536 192 1536)\n(llvm:section-entry .gnu.version_r 1472 64 1472)\n(llvm:section-entry .gnu.version 1442 24 1442)\n(llvm:section-entry .dynstr 1256 185 1256)\n(llvm:section-entry .dynsym 968 288 968)\n(llvm:section-entry .gnu.hash 928 36 928)\n(llvm:section-entry .note.ABI-tag 892 32 892)\n(llvm:section-entry .note.gnu.build-id 856 36 856)\n(llvm:section-entry .note.gnu.property 824 32 824)\n(llvm:section-entry .interp 792 28 792)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt.got true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .note.gnu.property true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry _init 4096 0 4096 4096)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry main 4496 170 4496 4496)\n(llvm:symbol-entry _start 4256 34 4256 4256)\n(llvm:symbol-entry malloc@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.14 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry _fini 4668 0 4668 4668)\n(llvm:symbol-entry puts@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry free@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry frame_dummy 4480 0 4480 4480)\n(llvm:symbol-entry __do_global_dtors_aux 4416 0 4416 4416)\n(llvm:symbol-entry register_tm_clones 4352 0 4352 4352)\n(llvm:symbol-entry deregister_tm_clones 4304 0 4304 4304)\n(mapped 0 1872 0)\n(mapped 4096 581 4096)\n(mapped 8192 220 8192)\n(mapped 15824 636 11728)\n(named-region 0 1872 02)\n(named-region 4096 581 03)\n(named-region 8192 220 04)\n(named-region 15824 656 05)\n(named-region 792 28 .interp)\n(named-region 824 32 .note.gnu.property)\n(named-region 856 36 .note.gnu.build-id)\n(named-region 892 32 .note.ABI-tag)\n(named-region 928 36 .gnu.hash)\n(named-region 968 288 .dynsym)\n(named-region 1256 185 .dynstr)\n(named-region 1442 24 .gnu.version)\n(named-region 1472 64 .gnu.version_r)\n(named-region 1536 192 .rela.dyn)\n(named-region 1728 144 .rela.plt)\n(named-region 4096 23 .init)\n(named-region 4128 112 .plt)\n(named-region 4240 8 .plt.got)\n(named-region 4256 410 .text)\n(named-region 4668 9 .fini)\n(named-region 8192 4 .rodata)\n(named-region 8196 44 .eh_frame_hdr)\n(named-region 8240 172 .eh_frame)\n(named-region 15824 8 .init_array)\n(named-region 15832 8 .fini_array)\n(named-region 15840 480 .dynamic)\n(named-region 16320 40 .got)\n(named-region 16360 72 .got.plt)\n(named-region 16432 28 .data)\n(named-region 16464 16 .bss)\n(named-region 0 63 .comment)\n(named-region 0 1056 .symtab)\n(named-region 0 613 .strtab)\n(named-region 0 282 .shstrtab)\n(named-symbol 4304 deregister_tm_clones)\n(named-symbol 4352 register_tm_clones)\n(named-symbol 4416 __do_global_dtors_aux)\n(named-symbol 4480 frame_dummy)\n(named-symbol 0 free@GLIBC_2.2.5)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 puts@GLIBC_2.2.5)\n(named-symbol 4668 _fini)\n(named-symbol 0 strlen@GLIBC_2.2.5)\n(named-symbol 0 memset@GLIBC_2.2.5)\n(named-symbol 0 memcpy@GLIBC_2.14)\n(named-symbol 0 malloc@GLIBC_2.2.5)\n(named-symbol 4256 _start)\n(named-symbol 4496 main)\n(named-symbol 0 __cxa_finalize@GLIBC_2.2.5)\n(named-symbol 4096 _init)\n(named-symbol 0 free)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 puts)\n(named-symbol 0 strlen)\n(named-symbol 0 memset)\n(named-symbol 0 memcpy)\n(named-symbol 0 malloc)\n(named-symbol 0 __cxa_finalize)\n(require libc.so.6)\n(section 792 28)\n(section 824 32)\n(section 856 36)\n(section 892 32)\n(section 928 36)\n(section 968 288)\n(section 1256 185)\n(section 1442 24)\n(section 1472 64)\n(section 1536 192)\n(section 1728 144)\n(section 4096 23)\n(section 4128 112)\n(section 4240 8)\n(section 4256 410)\n(section 4668 9)\n(section 8192 4)\n(section 8196 44)\n(section 8240 172)\n(section 15824 8)\n(section 15832 8)\n(section 15840 480)\n(section 16320 40)\n(section 16360 72)\n(section 16432 28)\n(section 16464 16)\n(section 0 63)\n(section 0 1056)\n(section 0 613)\n(section 0 282)\n(segment 0 1872 true false false)\n(segment 4096 581 true false true)\n(segment 8192 220 true false false)\n(segment 15824 656 true true false)\n(subarch \"\")\n(symbol-chunk 4256 34 4256)\n(symbol-chunk 4496 170 4496)\n(symbol-value 4304 4304)\n(symbol-value 4352 4352)\n(symbol-value 4416 4416)\n(symbol-value 4480 4480)\n(symbol-value 4668 4668)\n(symbol-value 4256 4256)\n(symbol-value 4496 4496)\n(symbol-value 4096 4096)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), -Attr("abi-name","\"x86_64-gnu-elf\"")]), -Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x3e\x00\x01\x00\x00\x00\xa0\x10\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x30\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x0d\x00\x40\x00\x1f\x00\x1e\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x45\x02\x00\x00\x00\x00\x00\x00\x45\x02\x00\x00\x00\x00\x00\x00\x00\x10"), -Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x3e\x00\x01\x00\x00\x00\xa0\x10\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x30\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x0d\x00\x40\x00\x1f\x00\x1e\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x45\x02\x00\x00\x00\x00\x00\x00\x45\x02\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\xdc\x00\x00\x00\x00\x00\x00\x00\xdc\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xd0\x2d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\x7c\x02\x00\x00\x00\x00\x00\x00\x90\x02\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xe0\x2d\x00\x00\x00\x00\x00\x00\xe0\x3d\x00\x00\x00\x00\x00\x00\xe0\x3d\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x53\xe5\x74\x64\x04\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00"), -Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x3e\x00\x01\x00\x00\x00\xa0\x10\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x30\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x0d\x00\x40\x00\x1f\x00\x1e\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x45\x02\x00\x00\x00\x00\x00\x00\x45\x02\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\xdc\x00\x00\x00\x00\x00\x00\x00\xdc\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xd0\x2d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\x7c\x02\x00\x00\x00\x00\x00\x00\x90\x02\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xe0\x2d\x00\x00\x00\x00\x00\x00\xe0\x3d\x00\x00\x00\x00\x00\x00\xe0\x3d\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x53\xe5\x74\x64\x04\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x04\x20\x00\x00\x00\x00\x00\x00\x04\x20\x00\x00\x00\x00\x00\x00\x04\x20\x00\x00\x00\x00\x00\x00\x2c\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xd0\x2d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\x30\x02\x00\x00\x00\x00\x00\x00\x30\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x36\x34\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x78\x38\x36\x2d\x36\x34\x2e\x73\x6f\x2e\x32\x00\x00\x00\x00\x00\x04\x00\x00\x00\x10\x00\x00\x00\x05\x00\x00\x00\x47\x4e\x55\x00\x02\x80\x00\xc0\x04\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x48\x00\xe0\xd5\xf2\x7e\x44\x0d\x91\xf5\xa6\xab\xd0\x4c\x33\x43\x84\xdb\xc8\xbc\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0b\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\x00\x00\x81\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\xd1\x65\xce\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x74\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x3e\x00\x01\x00\x00\x00\xa0\x10\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x30\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x0d\x00\x40\x00\x1f\x00\x1e"), -Section(".interp", 0x318, "\x2f\x6c\x69\x62\x36\x34\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x78\x38\x36\x2d\x36\x34\x2e\x73\x6f\x2e\x32\x00"), -Section(".note.gnu.property", 0x338, "\x04\x00\x00\x00\x10\x00\x00\x00\x05\x00\x00\x00\x47\x4e\x55\x00\x02\x80\x00\xc0\x04\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00"), -Section(".note.gnu.build-id", 0x358, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x48\x00\xe0\xd5\xf2\x7e\x44\x0d\x91\xf5\xa6\xab\xd0\x4c\x33\x43\x84\xdb\xc8\xbc"), -Section(".note.ABI-tag", 0x37C, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00"), -Section(".gnu.hash", 0x3A0, "\x02\x00\x00\x00\x0b\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\x00\x00\x81\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\xd1\x65\xce\x6d"), -Section(".dynsym", 0x3C8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x74\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynstr", 0x4E8, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x32\x2e\x35\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), -Section(".gnu.version", 0x5A2, "\x00\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x04\x00\x02\x00\x01\x00\x02\x00"), -Section(".gnu.version_r", 0x5C0, "\x01\x00\x03\x00\x48\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x94\x91\x96\x06\x00\x00\x04\x00\x52\x00\x00\x00\x10\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x5d\x00\x00\x00\x10\x00\x00\x00\x75\x1a\x69\x09\x00\x00\x02\x00\x68\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.dyn", 0x600, "\xd0\x3d\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x80\x11\x00\x00\x00\x00\x00\x00\xd8\x3d\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x40\x11\x00\x00\x00\x00\x00\x00\x38\x40\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x38\x40\x00\x00\x00\x00\x00\x00\xc0\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.plt", 0x6C0, "\x00\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".plt", 0x1020, "\xff\x35\xca\x2f\x00\x00\xff\x25\xcc\x2f\x00\x00\x0f\x1f\x40\x00\xff\x25\xca\x2f\x00\x00\x68\x00\x00\x00\x00\xe9\xe0\xff\xff\xff\xff\x25\xc2\x2f\x00\x00\x68\x01\x00\x00\x00\xe9\xd0\xff\xff\xff\xff\x25\xba\x2f\x00\x00\x68\x02\x00\x00\x00\xe9\xc0\xff\xff\xff\xff\x25\xb2\x2f\x00\x00\x68\x03\x00\x00\x00\xe9\xb0\xff\xff\xff\xff\x25\xaa\x2f\x00\x00\x68\x04\x00\x00\x00\xe9\xa0\xff\xff\xff\xff\x25\xa2\x2f\x00\x00\x68\x05\x00\x00\x00\xe9\x90\xff\xff\xff"), -Section(".plt.got", 0x1090, "\xff\x25\x4a\x2f\x00\x00\x66\x90"), -Section(".text", 0x10A0, "\x31\xed\x49\x89\xd1\x5e\x48\x89\xe2\x48\x83\xe4\xf0\x50\x54\x45\x31\xc0\x31\xc9\x48\x8d\x3d\xd5\x00\x00\x00\xff\x15\xff\x2e\x00\x00\xf4\x66\x2e\x0f\x1f\x84\x00\x00\x00\x00\x00\x0f\x1f\x40\x00\x48\x8d\x3d\x79\x2f\x00\x00\x48\x8d\x05\x72\x2f\x00\x00\x48\x39\xf8\x74\x15\x48\x8b\x05\xde\x2e\x00\x00\x48\x85\xc0\x74\x09\xff\xe0\x0f\x1f\x80\x00\x00\x00\x00\xc3\x0f\x1f\x80\x00\x00\x00\x00\x48\x8d\x3d\x49\x2f\x00\x00\x48\x8d\x35\x42\x2f\x00\x00\x48\x29\xfe\x48\x89\xf0\x48\xc1\xee\x3f\x48\xc1\xf8\x03\x48\x01\xc6\x48\xd1\xfe\x74\x14\x48\x8b\x05\xad\x2e\x00\x00\x48\x85\xc0\x74\x08\xff\xe0\x66\x0f\x1f\x44\x00\x00\xc3\x0f\x1f\x80\x00\x00\x00\x00\xf3\x0f\x1e\xfa\x80\x3d\x05\x2f\x00\x00\x00\x75\x2b\x55\x48\x83\x3d\x8a\x2e\x00\x00\x00\x48\x89\xe5\x74\x0c\x48\x8b\x3d\xd6\x2e\x00\x00\xe8\x29\xff\xff\xff\xe8\x64\xff\xff\xff\xc6\x05\xdd\x2e\x00\x00\x01\x5d\xc3\x0f\x1f\x00\xc3\x0f\x1f\x80\x00\x00\x00\x00\xf3\x0f\x1e\xfa\xe9\x77\xff\xff\xff\x0f\x1f\x80\x00\x00\x00\x00\x55\x48\x89\xe5\x48\x83\xec\x20\x48\xc7\x45\xf8\x00\x00\x00\x00\x48\xc7\x45\xf0\x00\x00\x00\x00\xbf\x0b\x00\x00\x00\xe8\xce\xfe\xff\xff\x48\x89\x05\x9f\x2e\x00\x00\x48\x8b\x05\x98\x2e\x00\x00\x48\x89\x45\xe0\x48\x8d\x3d\x76\x2e\x00\x00\xe8\x80\xfe\xff\xff\x48\x8b\x7d\xe0\x48\x89\xc2\x48\x8d\x35\x63\x2e\x00\x00\xe8\x8d\xfe\xff\xff\x48\x8b\x3d\x6e\x2e\x00\x00\xe8\x51\xfe\xff\xff\x48\x8b\x05\x62\x2e\x00\x00\x48\x83\xc0\x04\x48\x89\x45\xf8\x48\x8b\x05\x53\x2e\x00\x00\x48\x89\x45\xe8\x48\x8b\x3d\x48\x2e\x00\x00\xe8\x3b\xfe\xff\xff\x48\x8b\x7d\xe8\x48\x89\xc2\xbe\x01\x00\x00\x00\xe8\x3a\xfe\xff\xff\x48\x8b\x3d\x2b\x2e\x00\x00\xe8\xfe\xfd\xff\xff\x31\xc0\x48\x83\xc4\x20\x5d\xc3"), -Section(".init", 0x1000, "\x48\x83\xec\x08\x48\x8b\x05\xc5\x2f\x00\x00\x48\x85\xc0\x74\x02\xff\xd0\x48\x83\xc4\x08\xc3"), -Section(".fini", 0x123C, "\x48\x83\xec\x08\x48\x83\xc4\x08\xc3"), -Section(".eh_frame_hdr", 0x2004, "\x01\x1b\x03\x3b\x28\x00\x00\x00\x04\x00\x00\x00\x1c\xf0\xff\xff\x74\x00\x00\x00\x8c\xf0\xff\xff\x9c\x00\x00\x00\x9c\xf0\xff\xff\x44\x00\x00\x00\x8c\xf1\xff\xff\xb4\x00\x00\x00"), -Section(".eh_frame", 0x2030, "\x14\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x78\x10\x01\x1b\x0c\x07\x08\x90\x01\x07\x10\x14\x00\x00\x00\x1c\x00\x00\x00\x50\xf0\xff\xff\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x78\x10\x01\x1b\x0c\x07\x08\x90\x01\x00\x00\x24\x00\x00\x00\x1c\x00\x00\x00\xa0\xef\xff\xff\x70\x00\x00\x00\x00\x0e\x10\x46\x0e\x18\x4a\x0f\x0b\x77\x08\x80\x00\x3f\x1a\x3b\x2a\x33\x24\x22\x00\x00\x00\x00\x14\x00\x00\x00\x44\x00\x00\x00\xe8\xef\xff\xff\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x5c\x00\x00\x00\xd0\xf0\xff\xff\xaa\x00\x00\x00\x00\x41\x0e\x10\x86\x02\x43\x0d\x06\x02\xa5\x0c\x07\x08\x00\x00\x00\x00\x00\x00"), -Section(".rodata", 0x2000, "\x01\x00\x02\x00"), -Section(".fini_array", 0x3DD8, "\x40\x11\x00\x00\x00\x00\x00\x00"), -Section(".dynamic", 0x3DE0, "\x01\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x3c\x12\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xd8\x3d\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xa0\x03\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\xe8\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xc8\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb9\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\x3f\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\xc0\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xc0\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xa2\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init_array", 0x3DD0, "\x80\x11\x00\x00\x00\x00\x00\x00"), -Section(".got", 0x3FC0, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".got.plt", 0x3FE8, "\xe0\x3d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x36\x10\x00\x00\x00\x00\x00\x00\x46\x10\x00\x00\x00\x00\x00\x00\x56\x10\x00\x00\x00\x00\x00\x00\x66\x10\x00\x00\x00\x00\x00\x00\x76\x10\x00\x00\x00\x00\x00\x00\x86\x10\x00\x00\x00\x00\x00\x00"), -Section(".data", 0x4030, "\x00\x00\x00\x00\x00\x00\x00\x00\x38\x40\x00\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00")]), -Memmap([Annotation(Region(0x0,0x74F), Attr("segment","02 0 1872")), -Annotation(Region(0x0,0x119), Attr("section","\".shstrtab\"")), -Annotation(Region(0x0,0x264), Attr("section","\".strtab\"")), -Annotation(Region(0x0,0x41F), Attr("section","\".symtab\"")), -Annotation(Region(0x0,0x3E), Attr("section","\".comment\"")), -Annotation(Region(0x318,0x333), Attr("section","\".interp\"")), -Annotation(Region(0x338,0x357), Attr("section","\".note.gnu.property\"")), -Annotation(Region(0x358,0x37B), Attr("section","\".note.gnu.build-id\"")), -Annotation(Region(0x37C,0x39B), Attr("section","\".note.ABI-tag\"")), -Annotation(Region(0x3A0,0x3C3), Attr("section","\".gnu.hash\"")), -Annotation(Region(0x3C8,0x4E7), Attr("section","\".dynsym\"")), -Annotation(Region(0x4E8,0x5A0), Attr("section","\".dynstr\"")), -Annotation(Region(0x5A2,0x5B9), Attr("section","\".gnu.version\"")), -Annotation(Region(0x5C0,0x5FF), Attr("section","\".gnu.version_r\"")), -Annotation(Region(0x600,0x6BF), Attr("section","\".rela.dyn\"")), -Annotation(Region(0x6C0,0x74F), Attr("section","\".rela.plt\"")), -Annotation(Region(0x1000,0x1244), Attr("segment","03 0x1000 581")), -Annotation(Region(0x1020,0x108F), Attr("section","\".plt\"")), -Annotation(Region(0x1090,0x1097), Attr("section","\".plt.got\"")), -Annotation(Region(0x1090,0x1097), Attr("code-region","()")), -Annotation(Region(0x10A0,0x10C1), Attr("symbol","\"_start\"")), -Annotation(Region(0x10A0,0x10C1), Attr("symbol-info","_start 0x10A0 34")), -Annotation(Region(0x10A0,0x1239), Attr("section","\".text\"")), -Annotation(Region(0x1190,0x1239), Attr("symbol","\"main\"")), -Annotation(Region(0x1000,0x1016), Attr("section","\".init\"")), -Annotation(Region(0x1000,0x1016), Attr("code-region","()")), -Annotation(Region(0x1020,0x108F), Attr("code-region","()")), -Annotation(Region(0x10A0,0x1239), Attr("code-region","()")), -Annotation(Region(0x1190,0x1239), Attr("symbol-info","main 0x1190 170")), -Annotation(Region(0x123C,0x1244), Attr("section","\".fini\"")), -Annotation(Region(0x123C,0x1244), Attr("code-region","()")), -Annotation(Region(0x2000,0x20DB), Attr("segment","04 0x2000 220")), -Annotation(Region(0x2004,0x202F), Attr("section","\".eh_frame_hdr\"")), -Annotation(Region(0x2030,0x20DB), Attr("section","\".eh_frame\"")), -Annotation(Region(0x2000,0x2003), Attr("section","\".rodata\"")), -Annotation(Region(0x3DD0,0x404B), Attr("segment","05 0x3DD0 656")), -Annotation(Region(0x3DD8,0x3DDF), Attr("section","\".fini_array\"")), -Annotation(Region(0x3DE0,0x3FBF), Attr("section","\".dynamic\"")), -Annotation(Region(0x3DD0,0x3DD7), Attr("section","\".init_array\"")), -Annotation(Region(0x3FC0,0x3FE7), Attr("section","\".got\"")), -Annotation(Region(0x3FE8,0x402F), Attr("section","\".got.plt\"")), -Annotation(Region(0x4030,0x404B), Attr("section","\".data\""))]), -Program(Tid(3_025, "%00000bd1"), Attrs([]), - Subs([Sub(Tid(2_865, "@__cxa_finalize"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1090"), -Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(3_026, "%00000bd2"), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2492 20 2492)\n(code-region 2048 444 2048)\n(code-region 1856 192 1856)\n(code-region 1832 24 1832)\n(code-start 2100)\n(code-start 2048)\n(code-start 2324)\n(entry-point 2048)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1832 0)\n(llvm:code-entry main 2324 168)\n(llvm:code-entry _start 2048 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2492 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2320 0)\n(llvm:code-entry __do_global_dtors_aux 2240 0)\n(llvm:code-entry register_tm_clones 2176 0)\n(llvm:code-entry deregister_tm_clones 2128 0)\n(llvm:code-entry call_weak_fn 2100 20)\n(llvm:code-entry .fini 2492 20)\n(llvm:code-entry .text 2048 444)\n(llvm:code-entry .plt 1856 192)\n(llvm:code-entry .init 1832 24)\n(llvm:elf-program-header 08 64952 584)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2516 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64968 496)\n(llvm:elf-program-header 03 64952 692)\n(llvm:elf-program-header 02 0 2776)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130488 584)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2516 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130504 496)\n(llvm:elf-virtual-program-header 03 130488 712)\n(llvm:elf-virtual-program-header 02 0 2776)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2048)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68820)\n(llvm:section-entry .strtab 0 716 68104)\n(llvm:section-entry .symtab 0 2400 65704)\n(llvm:section-entry .comment 0 58 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130504 496 64968)\n(llvm:section-entry .fini_array 130496 8 64960)\n(llvm:section-entry .init_array 130488 8 64952)\n(llvm:section-entry .eh_frame 2576 200 2576)\n(llvm:section-entry .eh_frame_hdr 2516 60 2516)\n(llvm:section-entry .rodata 2512 4 2512)\n(llvm:section-entry .fini 2492 20 2492)\n(llvm:section-entry .text 2048 444 2048)\n(llvm:section-entry .plt 1856 192 1856)\n(llvm:section-entry .init 1832 24 1832)\n(llvm:section-entry .rela.plt 1592 240 1592)\n(llvm:section-entry .rela.dyn 1400 192 1400)\n(llvm:section-entry .gnu.version_r 1352 48 1352)\n(llvm:section-entry .gnu.version 1316 30 1316)\n(llvm:section-entry .dynstr 1136 179 1136)\n(llvm:section-entry .dynsym 776 360 776)\n(llvm:section-entry .gnu.hash 744 28 744)\n(llvm:section-entry .hash 664 80 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1832 0 1832 1832)\n(llvm:symbol-entry main 2324 168 2324 2324)\n(llvm:symbol-entry _start 2048 52 2048 2048)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2492 0 2492 2492)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2320 0 2320 2320)\n(llvm:symbol-entry __do_global_dtors_aux 2240 0 2240 2240)\n(llvm:symbol-entry register_tm_clones 2176 0 2176 2176)\n(llvm:symbol-entry deregister_tm_clones 2128 0 2128 2128)\n(llvm:symbol-entry call_weak_fn 2100 20 2100 2100)\n(mapped 0 2776 0)\n(mapped 130488 692 64952)\n(named-region 0 2776 02)\n(named-region 130488 712 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 80 .hash)\n(named-region 744 28 .gnu.hash)\n(named-region 776 360 .dynsym)\n(named-region 1136 179 .dynstr)\n(named-region 1316 30 .gnu.version)\n(named-region 1352 48 .gnu.version_r)\n(named-region 1400 192 .rela.dyn)\n(named-region 1592 240 .rela.plt)\n(named-region 1832 24 .init)\n(named-region 1856 192 .plt)\n(named-region 2048 444 .text)\n(named-region 2492 20 .fini)\n(named-region 2512 4 .rodata)\n(named-region 2516 60 .eh_frame_hdr)\n(named-region 2576 200 .eh_frame)\n(named-region 130488 8 .init_array)\n(named-region 130496 8 .fini_array)\n(named-region 130504 496 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 58 .comment)\n(named-region 0 2400 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2100 call_weak_fn)\n(named-symbol 2128 deregister_tm_clones)\n(named-symbol 2176 register_tm_clones)\n(named-symbol 2240 __do_global_dtors_aux)\n(named-symbol 2320 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2492 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2048 _start)\n(named-symbol 2324 main)\n(named-symbol 1832 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 80)\n(section 744 28)\n(section 776 360)\n(section 1136 179)\n(section 1316 30)\n(section 1352 48)\n(section 1400 192)\n(section 1592 240)\n(section 1832 24)\n(section 1856 192)\n(section 2048 444)\n(section 2492 20)\n(section 2512 4)\n(section 2516 60)\n(section 2576 200)\n(section 130488 8)\n(section 130496 8)\n(section 130504 496)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 58)\n(section 0 2400)\n(section 0 716)\n(section 0 259)\n(segment 0 2776 true false true)\n(segment 130488 712 true true false)\n(subarch v8)\n(symbol-chunk 2100 20 2100)\n(symbol-chunk 2048 52 2048)\n(symbol-chunk 2324 168 2324)\n(symbol-value 2100 2100)\n(symbol-value 2128 2128)\n(symbol-value 2176 2176)\n(symbol-value 2240 2240)\n(symbol-value 2320 2320)\n(symbol-value 2492 2492)\n(symbol-value 2048 2048)\n(symbol-value 2324 2324)\n(symbol-value 1832 1832)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xf8\x2b\x75\x79\x61\xb5\xdb\xca\xf1\x1a\x80\xe2\x19\xfe\xd4\x6b\x7e\x87\xbf\x2e\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xf8\x2b\x75\x79\x61\xb5\xdb\xca\xf1\x1a\x80\xe2\x19\xfe\xd4\x6b\x7e\x87\xbf\x2e\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x9d\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x88\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00"), +Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xf8\x2b\x75\x79\x61\xb5\xdb\xca\xf1\x1a\x80\xe2\x19\xfe\xd4\x6b\x7e\x87\xbf\x2e"), +Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), +Section(".hash", 0x298, "\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00"), +Section(".gnu.hash", 0x2E8, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x308, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x470, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x524, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x548, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x578, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x638, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x728, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x740, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0x9BC, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0x9D0, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0x9D4, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x2c\xfe\xff\xff\x50\x00\x00\x00\x7c\xfe\xff\xff\x64\x00\x00\x00\xac\xfe\xff\xff\x78\x00\x00\x00\xec\xfe\xff\xff\x8c\x00\x00\x00\x3c\xff\xff\xff\xb0\x00\x00\x00\x40\xff\xff\xff\xd8\x00\x00\x00"), +Section(".eh_frame", 0xA10, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xd4\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x10\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x2c\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x58\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x84\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x60\xfe\xff\xff\xa8\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\x90\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDC0, "\xc0\x08\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDC8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x28\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xbc\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x70\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x38\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x78\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\x48\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\x24\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDB8, "\x10\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFB8, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00"), +Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), +Section(".text", 0x800, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x9d\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x88\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x80\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x9d\xff\xff\x97\xe8\x0f\x40\xf9\x09\x3d\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\x09\x3d\x40\xf9\xe9\x0b\x00\xf9\x00\x3d\x40\xf9\x79\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x85\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x92\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xAD7), Attr("segment","02 0 2776")), +Annotation(Region(0x800,0x833), Attr("symbol","\"_start\"")), +Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), +Annotation(Region(0x0,0x2CB), Attr("section","\".strtab\"")), +Annotation(Region(0x0,0x95F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x39), Attr("section","\".comment\"")), +Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), +Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), +Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), +Annotation(Region(0x298,0x2E7), Attr("section","\".hash\"")), +Annotation(Region(0x2E8,0x303), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x308,0x46F), Attr("section","\".dynsym\"")), +Annotation(Region(0x470,0x522), Attr("section","\".dynstr\"")), +Annotation(Region(0x524,0x541), Attr("section","\".gnu.version\"")), +Annotation(Region(0x548,0x577), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x578,0x637), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x638,0x727), Attr("section","\".rela.plt\"")), +Annotation(Region(0x728,0x73F), Attr("section","\".init\"")), +Annotation(Region(0x740,0x7FF), Attr("section","\".plt\"")), +Annotation(Region(0x728,0x73F), Attr("code-region","()")), +Annotation(Region(0x740,0x7FF), Attr("code-region","()")), +Annotation(Region(0x800,0x833), Attr("symbol-info","_start 0x800 52")), +Annotation(Region(0x834,0x847), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x834,0x847), Attr("symbol-info","call_weak_fn 0x834 20")), +Annotation(Region(0x914,0x9BB), Attr("symbol","\"main\"")), +Annotation(Region(0x914,0x9BB), Attr("symbol-info","main 0x914 168")), +Annotation(Region(0x9BC,0x9CF), Attr("section","\".fini\"")), +Annotation(Region(0x9D0,0x9D3), Attr("section","\".rodata\"")), +Annotation(Region(0x9D4,0xA0F), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0xA10,0xAD7), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDB8,0x2006B), Attr("segment","03 0x1FDB8 712")), +Annotation(Region(0x1FDC0,0x1FDC7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDC8,0x1FFB7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDB8,0x1FDBF), Attr("section","\".init_array\"")), +Annotation(Region(0x1FFB8,0x1FFE7), Attr("section","\".got\"")), +Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), +Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), +Annotation(Region(0x800,0x9BB), Attr("section","\".text\"")), +Annotation(Region(0x800,0x9BB), Attr("code-region","()")), +Annotation(Region(0x9BC,0x9CF), Attr("code-region","()"))]), +Program(Tid(2_333, "%0000091d"), Attrs([]), + Subs([Sub(Tid(2_262, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x790"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_334, "%0000091e"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(2_154, "@__cxa_finalize"), Attrs([Attr("address","0x1090")]), - Phis([]), Defs([]), Jmps([Call(Tid(2_862, "%00000b2e"), - Attrs([Attr("address","0x1090"), Attr("insn","jmpq *0x2f4a(%rip)")]), - Int(1,1), (Direct(Tid(2_860, "@__cxa_finalize:external")),))]))])), -Sub(Tid(2_866, "@__do_global_dtors_aux"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1140")]), - "__do_global_dtors_aux", Args([Arg(Tid(3_027, "%00000bd3"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_299, "@__cxa_finalize"), + Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_719, "%000006b7"), Attrs([Attr("address","0x790"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_727, "%000006bf"), Attrs([Attr("address","0x794"), +Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_734, "%000006c6"), Attrs([Attr("address","0x798"), +Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_739, "%000006cb"), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_263, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_335, "%0000091f"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(1_293, "@__do_global_dtors_aux"), - Attrs([Attr("address","0x1140")]), Phis([]), -Defs([Def(Tid(1_317, "%00000525"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("#12582884",Imm(8)), -Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8)), -Def(Tid(1_321, "%00000529"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("CF",Imm(1)), -LT(Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8),Int(0,8))), -Def(Tid(1_327, "%0000052f"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("OF",Imm(1)), -HIGH(1,AND(Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8),XOR(Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8),Var("#12582884",Imm(8)))))), -Def(Tid(1_332, "%00000534"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("AF",Imm(1)), -EQ(Int(16,8),AND(Int(16,8),XOR(Var("#12582884",Imm(8)),Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8))))), -Def(Tid(1_337, "%00000539"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(8)),XOR(RSHIFT(Var("#12582884",Imm(8)),Int(4,8)),Var("#12582884",Imm(8))),Let(Var("$1",Imm(8)),XOR(RSHIFT(Var("$0",Imm(8)),Int(2,8)),Var("$0",Imm(8))),XOR(RSHIFT(Var("$1",Imm(8)),Int(1,8)),Var("$1",Imm(8)))))))), -Def(Tid(1_341, "%0000053d"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582884",Imm(8)))), Def(Tid(1_345, "%00000541"), - Attrs([Attr("address","0x1144"), Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), - Var("ZF",Imm(1)), EQ(Int(0,8),Var("#12582884",Imm(8))))]), -Jmps([Goto(Tid(1_352, "%00000548"), Attrs([Attr("address","0x114B"), -Attr("insn","jne 0x2b")]), NOT(Var("ZF",Imm(1))), -Direct(Tid(1_349, "%00000545"))), Goto(Tid(3_017, "%00000bc9"), Attrs([]), - Int(1,1), Direct(Tid(1_981, "%000007bd")))])), Blk(Tid(1_349, "%00000545"), - Attrs([Attr("address","0x1178")]), Phis([]), -Defs([Def(Tid(1_366, "%00000556"), Attrs([Attr("address","0x1178"), -Attr("insn","retq")]), Var("#12582882",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(1_370, "%0000055a"), Attrs([Attr("address","0x1178"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_373, "%0000055d"), - Attrs([Attr("address","0x1178"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582882",Imm(64))),))])), Blk(Tid(1_981, "%000007bd"), - Attrs([Attr("address","0x114D")]), Phis([]), -Defs([Def(Tid(1_993, "%000007c9"), Attrs([Attr("address","0x114D"), -Attr("insn","pushq %rbp")]), Var("#12582870",Imm(64)), Var("RBP",Imm(64))), -Def(Tid(1_997, "%000007cd"), Attrs([Attr("address","0x114D"), -Attr("insn","pushq %rbp")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_003, "%000007d3"), - Attrs([Attr("address","0x114D"), Attr("insn","pushq %rbp")]), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(794, "@__do_global_dtors_aux"), + Attrs([Attr("address","0x8C0")]), Phis([]), Defs([Def(Tid(801, "%00000321"), + Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), +Def(Tid(806, "%00000326"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(811, "%0000032b"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(815, "%0000032f"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), +Var("#34",Imm(64))), Def(Tid(822, "%00000336"), + Attrs([Attr("address","0x8C4"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(830, "%0000033e"), + Attrs([Attr("address","0x8C8"), Attr("insn","str x19, [sp, #0x10]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582870",Imm(64)),LittleEndian(),64)), -Def(Tid(2_027, "%000007eb"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("#12582869",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64)), -Def(Tid(2_031, "%000007ef"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("CF",Imm(1)), -LT(Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64),Int(0,64))), -Def(Tid(2_037, "%000007f5"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("OF",Imm(1)), -HIGH(1,AND(Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64),XOR(Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64),Var("#12582869",Imm(64)))))), -Def(Tid(2_042, "%000007fa"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(Var("#12582869",Imm(64)),Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64))))), -Def(Tid(2_047, "%000007ff"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582869",Imm(64)),Int(4,64)),Var("#12582869",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_051, "%00000803"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582869",Imm(64)))), Def(Tid(2_055, "%00000807"), - Attrs([Attr("address","0x114E"), Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582869",Imm(64)))), -Def(Tid(2_063, "%0000080f"), Attrs([Attr("address","0x1156"), -Attr("insn","movq %rsp, %rbp")]), Var("RBP",Imm(64)), Var("RSP",Imm(64)))]), -Jmps([Goto(Tid(2_070, "%00000816"), Attrs([Attr("address","0x1159"), -Attr("insn","je 0xc")]), Var("ZF",Imm(1)), Direct(Tid(2_067, "%00000813"))), -Goto(Tid(3_018, "%00000bca"), Attrs([]), Int(1,1), -Direct(Tid(2_140, "%0000085c")))])), Blk(Tid(2_140, "%0000085c"), - Attrs([Attr("address","0x115B")]), Phis([]), -Defs([Def(Tid(2_146, "%00000862"), Attrs([Attr("address","0x115B"), -Attr("insn","movq 0x2ed6(%rip), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16440,64),LittleEndian(),64)), -Def(Tid(2_158, "%0000086e"), Attrs([Attr("address","0x1162"), -Attr("insn","callq -0xd7")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_163, "%00000873"), - Attrs([Attr("address","0x1162"), Attr("insn","callq -0xd7")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4455,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_165, "%00000875"), Attrs([Attr("address","0x1162"), -Attr("insn","callq -0xd7")]), Int(1,1), -(Direct(Tid(2_865, "@__cxa_finalize")),Direct(Tid(2_067, "%00000813"))))])), -Blk(Tid(2_067, "%00000813"), Attrs([Attr("address","0x1167")]), Phis([]), -Defs([Def(Tid(2_082, "%00000822"), Attrs([Attr("address","0x1167"), -Attr("insn","callq -0x9c")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_087, "%00000827"), - Attrs([Attr("address","0x1167"), Attr("insn","callq -0x9c")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4460,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_089, "%00000829"), Attrs([Attr("address","0x1167"), -Attr("insn","callq -0x9c")]), Int(1,1), -(Direct(Tid(2_874, "@deregister_tm_clones")),Direct(Tid(2_091, "%0000082b"))))])), -Blk(Tid(2_091, "%0000082b"), Attrs([Attr("address","0x116C")]), Phis([]), -Defs([Def(Tid(2_097, "%00000831"), Attrs([Attr("address","0x116C"), -Attr("insn","movb $0x1, 0x2edd(%rip)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Int(16464,64),Int(1,8),LittleEndian(),8)), -Def(Tid(2_109, "%0000083d"), Attrs([Attr("address","0x1173"), -Attr("insn","popq %rbp")]), Var("RBP",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(2_113, "%00000841"), Attrs([Attr("address","0x1173"), -Attr("insn","popq %rbp")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_126, "%0000084e"), - Attrs([Attr("address","0x1174"), Attr("insn","retq")]), - Var("#12582867",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(2_130, "%00000852"), Attrs([Attr("address","0x1174"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(2_133, "%00000855"), - Attrs([Attr("address","0x1174"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582867",Imm(64))),))]))])), Sub(Tid(2_869, "@_fini"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x123C")]), - "_fini", Args([Arg(Tid(3_028, "%00000bd4"), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), +Def(Tid(836, "%00000344"), Attrs([Attr("address","0x8CC"), +Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), +Def(Tid(845, "%0000034d"), Attrs([Attr("address","0x8D0"), +Attr("insn","ldrb w0, [x19, #0x70]")]), Var("R0",Imm(64)), +UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),BigEndian(),8))), +Def(Tid(857, "%00000359"), Attrs([Attr("address","0x8D4"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), +Jmps([Goto(Tid(851, "%00000353"), Attrs([Attr("address","0x8D4"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +Direct(Tid(849, "%00000351"))), Goto(Tid(2_323, "%00000913"), Attrs([]), + Int(1,1), Direct(Tid(1_233, "%000004d1")))])), Blk(Tid(1_233, "%000004d1"), + Attrs([Attr("address","0x8D8")]), Phis([]), +Defs([Def(Tid(1_237, "%000004d5"), Attrs([Attr("address","0x8D8"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_245, "%000004dd"), Attrs([Attr("address","0x8DC"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_257, "%000004e9"), Attrs([Attr("address","0x8E0"), +Attr("insn","cbz x0, #0x10")]), Var("#67",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_251, "%000004e3"), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), + Var("#67",Imm(1)), Direct(Tid(1_249, "%000004e1"))), +Goto(Tid(2_324, "%00000914"), Attrs([]), Int(1,1), +Direct(Tid(1_281, "%00000501")))])), Blk(Tid(1_281, "%00000501"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_285, "%00000505"), Attrs([Attr("address","0x8E4"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_293, "%0000050d"), Attrs([Attr("address","0x8E8"), +Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), +Def(Tid(1_298, "%00000512"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Var("R30",Imm(64)), Int(2288,64))]), +Jmps([Call(Tid(1_301, "%00000515"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Int(1,1), +(Direct(Tid(2_262, "@__cxa_finalize")),Direct(Tid(1_249, "%000004e1"))))])), +Blk(Tid(1_249, "%000004e1"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_262, "%000004ee"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2292,64))]), +Jmps([Call(Tid(1_264, "%000004f0"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Int(1,1), +(Direct(Tid(2_276, "@deregister_tm_clones")),Direct(Tid(1_266, "%000004f2"))))])), +Blk(Tid(1_266, "%000004f2"), Attrs([Attr("address","0x8F4")]), Phis([]), +Defs([Def(Tid(1_271, "%000004f7"), Attrs([Attr("address","0x8F4"), +Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), +Def(Tid(1_279, "%000004ff"), Attrs([Attr("address","0x8F8"), +Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), +Jmps([Goto(Tid(2_325, "%00000915"), Attrs([]), Int(1,1), +Direct(Tid(849, "%00000351")))])), Blk(Tid(849, "%00000351"), + Attrs([Attr("address","0x8FC")]), Phis([]), Defs([Def(Tid(865, "%00000361"), + Attrs([Attr("address","0x8FC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(875, "%0000036b"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(879, "%0000036f"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(882, "%00000372"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(887, "%00000377"), + Attrs([Attr("address","0x904"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_267, "@__libc_start_main"), + Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), +Attr("address","0x780"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_336, "%00000920"), + Attrs([Attr("c.layout","**[ : 64]"), +Attr("c.data","Top:u64 ptr ptr"), +Attr("c.type","signed (*)(signed , char** , char** );*")]), + Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_337, "%00000921"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), +Arg(Tid(2_338, "%00000922"), Attrs([Attr("c.layout","**[char : 8]"), +Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), + Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), +Arg(Tid(2_339, "%00000923"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), +Arg(Tid(2_340, "%00000924"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), +Out())]), Blks([Blk(Tid(606, "@__libc_start_main"), + Attrs([Attr("address","0x780")]), Phis([]), +Defs([Def(Tid(1_694, "%0000069e"), Attrs([Attr("address","0x780"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_702, "%000006a6"), Attrs([Attr("address","0x784"), +Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_709, "%000006ad"), Attrs([Attr("address","0x788"), +Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_714, "%000006b2"), + Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_268, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9BC")]), + "_fini", Args([Arg(Tid(2_341, "%00000925"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(21, "@_fini"), - Attrs([Attr("address","0x123C")]), Phis([]), Defs([Def(Tid(56, "%00000038"), - Attrs([Attr("address","0x123C"), Attr("insn","subq $0x8, %rsp")]), - Var("#12582911",Imm(64)), Var("RSP",Imm(64))), Def(Tid(60, "%0000003c"), - Attrs([Attr("address","0x123C"), Attr("insn","subq $0x8, %rsp")]), - Var("RSP",Imm(64)), MINUS(Var("RSP",Imm(64)),Int(8,64))), -Def(Tid(64, "%00000040"), Attrs([Attr("address","0x123C"), -Attr("insn","subq $0x8, %rsp")]), Var("CF",Imm(1)), -LT(Var("#12582911",Imm(64)),Int(8,64))), Def(Tid(70, "%00000046"), - Attrs([Attr("address","0x123C"), Attr("insn","subq $0x8, %rsp")]), - Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("#12582911",Imm(64)),Int(8,64)),XOR(Var("#12582911",Imm(64)),Var("RSP",Imm(64)))))), -Def(Tid(75, "%0000004b"), Attrs([Attr("address","0x123C"), -Attr("insn","subq $0x8, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582911",Imm(64))),Int(8,64))))), -Def(Tid(80, "%00000050"), Attrs([Attr("address","0x123C"), -Attr("insn","subq $0x8, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(84, "%00000054"), Attrs([Attr("address","0x123C"), -Attr("insn","subq $0x8, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(88, "%00000058"), - Attrs([Attr("address","0x123C"), Attr("insn","subq $0x8, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(117, "%00000075"), Attrs([Attr("address","0x1240"), -Attr("insn","addq $0x8, %rsp")]), Var("#12582908",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(121, "%00000079"), - Attrs([Attr("address","0x1240"), Attr("insn","addq $0x8, %rsp")]), - Var("RSP",Imm(64)), PLUS(Var("RSP",Imm(64)),Int(8,64))), -Def(Tid(126, "%0000007e"), Attrs([Attr("address","0x1240"), -Attr("insn","addq $0x8, %rsp")]), Var("CF",Imm(1)), -LT(Var("RSP",Imm(64)),Var("#12582908",Imm(64)))), Def(Tid(134, "%00000086"), - Attrs([Attr("address","0x1240"), Attr("insn","addq $0x8, %rsp")]), - Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582908",Imm(64))),Int(0,1)),AND(OR(HIGH(1,Var("#12582908",Imm(64))),HIGH(1,Var("RSP",Imm(64)))),NOT(AND(HIGH(1,Var("#12582908",Imm(64))),HIGH(1,Var("RSP",Imm(64)))))))), -Def(Tid(139, "%0000008b"), Attrs([Attr("address","0x1240"), -Attr("insn","addq $0x8, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582908",Imm(64))),Int(8,64))))), -Def(Tid(144, "%00000090"), Attrs([Attr("address","0x1240"), -Attr("insn","addq $0x8, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(148, "%00000094"), Attrs([Attr("address","0x1240"), -Attr("insn","addq $0x8, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(152, "%00000098"), - Attrs([Attr("address","0x1240"), Attr("insn","addq $0x8, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(165, "%000000a5"), Attrs([Attr("address","0x1244"), -Attr("insn","retq")]), Var("#12582905",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(169, "%000000a9"), Attrs([Attr("address","0x1244"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(172, "%000000ac"), - Attrs([Attr("address","0x1244"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582905",Imm(64))),))]))])), Sub(Tid(2_870, "@_init"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1000")]), - "_init", Args([Arg(Tid(3_029, "%00000bd5"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), + Attrs([Attr("address","0x9BC")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0x9C0"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x9C0"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0x9C0"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0x9C0"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9C4"), +Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9C8"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9C8"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9C8"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), + Attrs([Attr("address","0x9CC"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_269, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x728")]), + "_init", Args([Arg(Tid(2_342, "%00000926"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(2_625, "@_init"), - Attrs([Attr("address","0x1000")]), Phis([]), -Defs([Def(Tid(2_649, "%00000a59"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("#12582855",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(2_653, "%00000a5d"), - Attrs([Attr("address","0x1000"), Attr("insn","subq $0x8, %rsp")]), - Var("RSP",Imm(64)), MINUS(Var("RSP",Imm(64)),Int(8,64))), -Def(Tid(2_657, "%00000a61"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("CF",Imm(1)), -LT(Var("#12582855",Imm(64)),Int(8,64))), Def(Tid(2_663, "%00000a67"), - Attrs([Attr("address","0x1000"), Attr("insn","subq $0x8, %rsp")]), - Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("#12582855",Imm(64)),Int(8,64)),XOR(Var("#12582855",Imm(64)),Var("RSP",Imm(64)))))), -Def(Tid(2_668, "%00000a6c"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582855",Imm(64))),Int(8,64))))), -Def(Tid(2_673, "%00000a71"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_677, "%00000a75"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(2_681, "%00000a79"), - Attrs([Attr("address","0x1000"), Attr("insn","subq $0x8, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(2_689, "%00000a81"), Attrs([Attr("address","0x1004"), -Attr("insn","movq 0x2fc5(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16336,64),LittleEndian(),64)), -Def(Tid(2_707, "%00000a93"), Attrs([Attr("address","0x100B"), -Attr("insn","testq %rax, %rax")]), Var("#12582852",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(2_710, "%00000a96"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("OF",Imm(1)), Int(0,1)), Def(Tid(2_713, "%00000a99"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("CF",Imm(1)), Int(0,1)), Def(Tid(2_716, "%00000a9c"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("AF",Imm(1)), Unknown("bits",Imm(1))), Def(Tid(2_721, "%00000aa1"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582852",Imm(64)),Int(4,64)),Var("#12582852",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_725, "%00000aa5"), Attrs([Attr("address","0x100B"), -Attr("insn","testq %rax, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582852",Imm(64)))), Def(Tid(2_729, "%00000aa9"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582852",Imm(64))))]), -Jmps([Goto(Tid(2_736, "%00000ab0"), Attrs([Attr("address","0x100E"), -Attr("insn","je 0x2")]), Var("ZF",Imm(1)), Direct(Tid(2_733, "%00000aad"))), -Goto(Tid(3_019, "%00000bcb"), Attrs([]), Int(1,1), -Direct(Tid(2_823, "%00000b07")))])), Blk(Tid(2_823, "%00000b07"), - Attrs([Attr("address","0x1010")]), Phis([]), -Defs([Def(Tid(2_835, "%00000b13"), Attrs([Attr("address","0x1010"), -Attr("insn","callq *%rax")]), Var("#12582846",Imm(64)), Var("RAX",Imm(64))), -Def(Tid(2_839, "%00000b17"), Attrs([Attr("address","0x1010"), -Attr("insn","callq *%rax")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_844, "%00000b1c"), - Attrs([Attr("address","0x1010"), Attr("insn","callq *%rax")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4114,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_847, "%00000b1f"), Attrs([Attr("address","0x1010"), -Attr("insn","callq *%rax")]), Int(1,1), -(Indirect(Var("#12582846",Imm(64))),Direct(Tid(2_733, "%00000aad"))))])), -Blk(Tid(2_733, "%00000aad"), Attrs([Attr("address","0x1012")]), Phis([]), -Defs([Def(Tid(2_766, "%00000ace"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("#12582850",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(2_770, "%00000ad2"), - Attrs([Attr("address","0x1012"), Attr("insn","addq $0x8, %rsp")]), - Var("RSP",Imm(64)), PLUS(Var("RSP",Imm(64)),Int(8,64))), -Def(Tid(2_775, "%00000ad7"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("CF",Imm(1)), -LT(Var("RSP",Imm(64)),Var("#12582850",Imm(64)))), -Def(Tid(2_783, "%00000adf"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582850",Imm(64))),Int(0,1)),AND(OR(HIGH(1,Var("#12582850",Imm(64))),HIGH(1,Var("RSP",Imm(64)))),NOT(AND(HIGH(1,Var("#12582850",Imm(64))),HIGH(1,Var("RSP",Imm(64)))))))), -Def(Tid(2_788, "%00000ae4"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582850",Imm(64))),Int(8,64))))), -Def(Tid(2_793, "%00000ae9"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_797, "%00000aed"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(2_801, "%00000af1"), - Attrs([Attr("address","0x1012"), Attr("insn","addq $0x8, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(2_814, "%00000afe"), Attrs([Attr("address","0x1016"), -Attr("insn","retq")]), Var("#12582847",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(2_818, "%00000b02"), Attrs([Attr("address","0x1016"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(2_821, "%00000b05"), - Attrs([Attr("address","0x1016"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582847",Imm(64))),))]))])), Sub(Tid(2_872, "@_start"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x10A0"), -Attr("entry-point","()")]), "_start", Args([Arg(Tid(3_030, "%00000bd6"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(2_035, "@_init"), + Attrs([Attr("address","0x728")]), Phis([]), +Defs([Def(Tid(2_044, "%000007fc"), Attrs([Attr("address","0x72C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#98",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(2_049, "%00000801"), Attrs([Attr("address","0x72C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#98",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(2_054, "%00000806"), Attrs([Attr("address","0x72C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#98",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(2_058, "%0000080a"), Attrs([Attr("address","0x72C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#98",Imm(64))), Def(Tid(2_065, "%00000811"), + Attrs([Attr("address","0x730"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(2_070, "%00000816"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), + Var("R30",Imm(64)), Int(1848,64))]), Jmps([Call(Tid(2_072, "%00000818"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), Int(1,1), +(Direct(Tid(2_274, "@call_weak_fn")),Direct(Tid(2_074, "%0000081a"))))])), +Blk(Tid(2_074, "%0000081a"), Attrs([Attr("address","0x738")]), Phis([]), +Defs([Def(Tid(2_082, "%00000822"), Attrs([Attr("address","0x738"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(2_086, "%00000826"), Attrs([Attr("address","0x738"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(2_089, "%00000829"), Attrs([Attr("address","0x738"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_094, "%0000082e"), + Attrs([Attr("address","0x73C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_270, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x800"), +Attr("stub","()"), Attr("entry-point","()")]), "_start", + Args([Arg(Tid(2_343, "%00000927"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(532, "@_start"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([Def(Tid(538, "%0000021a"), Attrs([Attr("address","0x804"), +Attr("insn","mov x29, #0x0")]), Var("R29",Imm(64)), Int(0,64)), +Def(Tid(544, "%00000220"), Attrs([Attr("address","0x808"), +Attr("insn","mov x30, #0x0")]), Var("R30",Imm(64)), Int(0,64)), +Def(Tid(552, "%00000228"), Attrs([Attr("address","0x80C"), +Attr("insn","mov x5, x0")]), Var("R5",Imm(64)), Var("R0",Imm(64))), +Def(Tid(560, "%00000230"), Attrs([Attr("address","0x810"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(567, "%00000237"), Attrs([Attr("address","0x814"), +Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(574, "%0000023e"), + Attrs([Attr("address","0x818"), Attr("insn","mov x6, sp")]), + Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(580, "%00000244"), + Attrs([Attr("address","0x81C"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(588, "%0000024c"), + Attrs([Attr("address","0x820"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), +Def(Tid(594, "%00000252"), Attrs([Attr("address","0x824"), +Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), +Def(Tid(600, "%00000258"), Attrs([Attr("address","0x828"), +Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), +Def(Tid(605, "%0000025d"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Var("R30",Imm(64)), Int(2096,64))]), +Jmps([Call(Tid(608, "%00000260"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Int(1,1), +(Direct(Tid(2_267, "@__libc_start_main")),Direct(Tid(610, "%00000262"))))])), +Blk(Tid(610, "%00000262"), Attrs([Attr("address","0x830")]), Phis([]), +Defs([Def(Tid(613, "%00000265"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Var("R30",Imm(64)), Int(2100,64))]), +Jmps([Call(Tid(616, "%00000268"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Int(1,1), +(Direct(Tid(2_273, "@abort")),Direct(Tid(2_326, "%00000916"))))])), +Blk(Tid(2_326, "%00000916"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_327, "%00000917"), Attrs([]), Int(1,1), +(Direct(Tid(2_274, "@call_weak_fn")),))]))])), Sub(Tid(2_273, "@abort"), + Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), +Attr("address","0x7D0"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(614, "@abort"), Attrs([Attr("address","0x7D0")]), Phis([]), +Defs([Def(Tid(1_819, "%0000071b"), Attrs([Attr("address","0x7D0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_827, "%00000723"), Attrs([Attr("address","0x7D4"), +Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), +Def(Tid(1_834, "%0000072a"), Attrs([Attr("address","0x7D8"), +Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_839, "%0000072f"), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_274, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x834")]), + "call_weak_fn", Args([Arg(Tid(2_344, "%00000928"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("_start_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(586, "@_start"), - Attrs([Attr("address","0x10A0")]), Phis([]), -Defs([Def(Tid(596, "%00000254"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("RBP",Imm(64)), Int(0,64)), -Def(Tid(599, "%00000257"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(602, "%0000025a"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("ZF",Imm(1)), Int(1,1)), -Def(Tid(605, "%0000025d"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("PF",Imm(1)), Int(1,1)), -Def(Tid(608, "%00000260"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(611, "%00000263"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(614, "%00000266"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("SF",Imm(1)), Int(0,1)), -Def(Tid(622, "%0000026e"), Attrs([Attr("address","0x10A2"), -Attr("insn","movq %rdx, %r9")]), Var("R9",Imm(64)), Var("RDX",Imm(64))), -Def(Tid(634, "%0000027a"), Attrs([Attr("address","0x10A5"), -Attr("insn","popq %rsi")]), Var("RSI",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(638, "%0000027e"), Attrs([Attr("address","0x10A5"), -Attr("insn","popq %rsi")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(646, "%00000286"), - Attrs([Attr("address","0x10A6"), Attr("insn","movq %rsp, %rdx")]), - Var("RDX",Imm(64)), Var("RSP",Imm(64))), Def(Tid(664, "%00000298"), - Attrs([Attr("address","0x10A9"), Attr("insn","andq $-0x10, %rsp")]), - Var("RSP",Imm(64)), AND(Var("RSP",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(667, "%0000029b"), Attrs([Attr("address","0x10A9"), -Attr("insn","andq $-0x10, %rsp")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(670, "%0000029e"), Attrs([Attr("address","0x10A9"), -Attr("insn","andq $-0x10, %rsp")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(673, "%000002a1"), Attrs([Attr("address","0x10A9"), -Attr("insn","andq $-0x10, %rsp")]), Var("AF",Imm(1)), -Unknown("bits",Imm(1))), Def(Tid(678, "%000002a6"), - Attrs([Attr("address","0x10A9"), Attr("insn","andq $-0x10, %rsp")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(682, "%000002aa"), Attrs([Attr("address","0x10A9"), -Attr("insn","andq $-0x10, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(686, "%000002ae"), - Attrs([Attr("address","0x10A9"), Attr("insn","andq $-0x10, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(700, "%000002bc"), Attrs([Attr("address","0x10AD"), -Attr("insn","pushq %rax")]), Var("#12582903",Imm(64)), Var("RAX",Imm(64))), -Def(Tid(704, "%000002c0"), Attrs([Attr("address","0x10AD"), -Attr("insn","pushq %rax")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(710, "%000002c6"), - Attrs([Attr("address","0x10AD"), Attr("insn","pushq %rax")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582903",Imm(64)),LittleEndian(),64)), -Def(Tid(724, "%000002d4"), Attrs([Attr("address","0x10AE"), -Attr("insn","pushq %rsp")]), Var("#12582902",Imm(64)), Var("RSP",Imm(64))), -Def(Tid(728, "%000002d8"), Attrs([Attr("address","0x10AE"), -Attr("insn","pushq %rsp")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(734, "%000002de"), - Attrs([Attr("address","0x10AE"), Attr("insn","pushq %rsp")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582902",Imm(64)),LittleEndian(),64)), -Def(Tid(746, "%000002ea"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("R8",Imm(64)), Int(0,64)), -Def(Tid(749, "%000002ed"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(752, "%000002f0"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("ZF",Imm(1)), Int(1,1)), -Def(Tid(755, "%000002f3"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("PF",Imm(1)), Int(1,1)), -Def(Tid(758, "%000002f6"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(761, "%000002f9"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(764, "%000002fc"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("SF",Imm(1)), Int(0,1)), -Def(Tid(776, "%00000308"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("RCX",Imm(64)), Int(0,64)), -Def(Tid(779, "%0000030b"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(782, "%0000030e"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("ZF",Imm(1)), Int(1,1)), -Def(Tid(785, "%00000311"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("PF",Imm(1)), Int(1,1)), -Def(Tid(788, "%00000314"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(791, "%00000317"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(794, "%0000031a"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("SF",Imm(1)), Int(0,1)), -Def(Tid(800, "%00000320"), Attrs([Attr("address","0x10B4"), -Attr("insn","leaq 0xd5(%rip), %rdi")]), Var("RDI",Imm(64)), Int(4496,64)), -Def(Tid(814, "%0000032e"), Attrs([Attr("address","0x10BB"), -Attr("insn","callq *0x2eff(%rip)")]), Var("#12582901",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16320,64),LittleEndian(),64)), -Def(Tid(818, "%00000332"), Attrs([Attr("address","0x10BB"), -Attr("insn","callq *0x2eff(%rip)")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(823, "%00000337"), - Attrs([Attr("address","0x10BB"), Attr("insn","callq *0x2eff(%rip)")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4289,64),LittleEndian(),64))]), -Jmps([Call(Tid(826, "%0000033a"), Attrs([Attr("address","0x10BB"), -Attr("insn","callq *0x2eff(%rip)")]), Int(1,1), -(Direct(Tid(824, "@__libc_start_main")),Direct(Tid(828, "%0000033c"))))])), -Blk(Tid(828, "%0000033c"), Attrs([Attr("address","0x10C1")]), Phis([]), -Defs([]), Jmps([Call(Tid(831, "%0000033f"), Attrs([Attr("address","0x10C1"), -Attr("insn","hlt")]), Int(1,1), -(Direct(Tid(829, "@intrinsic:hlt")),Direct(Tid(833, "%00000341"))))])), -Blk(Tid(833, "%00000341"), Attrs([Attr("address","0x10C2")]), Phis([]), -Defs([]), Jmps([Call(Tid(3_020, "%00000bcc"), Attrs([]), Int(1,1), -(Direct(Tid(2_874, "@deregister_tm_clones")),))]))])), -Sub(Tid(2_874, "@deregister_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x10D0")]), - "deregister_tm_clones", Args([Arg(Tid(3_031, "%00000bd7"), +Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(618, "@call_weak_fn"), + Attrs([Attr("address","0x834")]), Phis([]), Defs([Def(Tid(622, "%0000026e"), + Attrs([Attr("address","0x834"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(630, "%00000276"), + Attrs([Attr("address","0x838"), Attr("insn","ldr x0, [x0, #0xfd0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), +Def(Tid(642, "%00000282"), Attrs([Attr("address","0x83C"), +Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(636, "%0000027c"), + Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), + Var("#12",Imm(1)), Direct(Tid(634, "%0000027a"))), +Goto(Tid(2_328, "%00000918"), Attrs([]), Int(1,1), +Direct(Tid(1_381, "%00000565")))])), Blk(Tid(634, "%0000027a"), + Attrs([Attr("address","0x844")]), Phis([]), Defs([]), +Jmps([Call(Tid(647, "%00000287"), Attrs([Attr("address","0x844"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_381, "%00000565"), Attrs([Attr("address","0x840")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_384, "%00000568"), Attrs([Attr("address","0x840"), +Attr("insn","b #-0x80")]), Int(1,1), +Direct(Tid(1_382, "@__gmon_start__")))])), Blk(Tid(1_382, "@__gmon_start__"), + Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_794, "%00000702"), Attrs([Attr("address","0x7C0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_802, "%0000070a"), Attrs([Attr("address","0x7C4"), +Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), +Def(Tid(1_809, "%00000711"), Attrs([Attr("address","0x7C8"), +Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_814, "%00000716"), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_276, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x850")]), + "deregister_tm_clones", Args([Arg(Tid(2_345, "%00000929"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(843, "@deregister_tm_clones"), - Attrs([Attr("address","0x10D0")]), Phis([]), -Defs([Def(Tid(847, "%0000034f"), Attrs([Attr("address","0x10D0"), -Attr("insn","leaq 0x2f79(%rip), %rdi")]), Var("RDI",Imm(64)), Int(16464,64)), -Def(Tid(853, "%00000355"), Attrs([Attr("address","0x10D7"), -Attr("insn","leaq 0x2f72(%rip), %rax")]), Var("RAX",Imm(64)), Int(16464,64)), -Def(Tid(882, "%00000372"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("#12582900",Imm(64)), -MINUS(Var("RAX",Imm(64)),Var("RDI",Imm(64)))), Def(Tid(887, "%00000377"), - Attrs([Attr("address","0x10DE"), Attr("insn","cmpq %rdi, %rax")]), - Var("CF",Imm(1)), LT(Var("RAX",Imm(64)),Var("RDI",Imm(64)))), -Def(Tid(894, "%0000037e"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("RAX",Imm(64)),Var("RDI",Imm(64))),XOR(Var("RAX",Imm(64)),Var("#12582900",Imm(64)))))), -Def(Tid(900, "%00000384"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("#12582900",Imm(64)),Var("RAX",Imm(64))),Var("RDI",Imm(64)))))), -Def(Tid(905, "%00000389"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582900",Imm(64)),Int(4,64)),Var("#12582900",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(909, "%0000038d"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582900",Imm(64)))), Def(Tid(913, "%00000391"), - Attrs([Attr("address","0x10DE"), Attr("insn","cmpq %rdi, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582900",Imm(64))))]), -Jmps([Goto(Tid(920, "%00000398"), Attrs([Attr("address","0x10E1"), -Attr("insn","je 0x15")]), Var("ZF",Imm(1)), Direct(Tid(917, "%00000395"))), -Goto(Tid(3_021, "%00000bcd"), Attrs([]), Int(1,1), -Direct(Tid(2_234, "%000008ba")))])), Blk(Tid(2_234, "%000008ba"), - Attrs([Attr("address","0x10E3")]), Phis([]), -Defs([Def(Tid(2_240, "%000008c0"), Attrs([Attr("address","0x10E3"), -Attr("insn","movq 0x2ede(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16328,64),LittleEndian(),64)), -Def(Tid(2_258, "%000008d2"), Attrs([Attr("address","0x10EA"), -Attr("insn","testq %rax, %rax")]), Var("#12582864",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(2_261, "%000008d5"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("OF",Imm(1)), Int(0,1)), Def(Tid(2_264, "%000008d8"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("CF",Imm(1)), Int(0,1)), Def(Tid(2_267, "%000008db"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("AF",Imm(1)), Unknown("bits",Imm(1))), Def(Tid(2_272, "%000008e0"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582864",Imm(64)),Int(4,64)),Var("#12582864",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_276, "%000008e4"), Attrs([Attr("address","0x10EA"), -Attr("insn","testq %rax, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582864",Imm(64)))), Def(Tid(2_280, "%000008e8"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582864",Imm(64))))]), -Jmps([Goto(Tid(2_286, "%000008ee"), Attrs([Attr("address","0x10ED"), -Attr("insn","je 0x9")]), Var("ZF",Imm(1)), Direct(Tid(917, "%00000395"))), -Goto(Tid(3_022, "%00000bce"), Attrs([]), Int(1,1), -Direct(Tid(2_290, "%000008f2")))])), Blk(Tid(917, "%00000395"), - Attrs([Attr("address","0x10F8")]), Phis([]), -Defs([Def(Tid(934, "%000003a6"), Attrs([Attr("address","0x10F8"), -Attr("insn","retq")]), Var("#12582898",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(938, "%000003aa"), Attrs([Attr("address","0x10F8"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(941, "%000003ad"), - Attrs([Attr("address","0x10F8"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582898",Imm(64))),))])), Blk(Tid(2_290, "%000008f2"), - Attrs([Attr("address","0x10EF")]), Phis([]), Defs([]), -Jmps([Call(Tid(2_294, "%000008f6"), Attrs([Attr("address","0x10EF"), -Attr("insn","jmpq *%rax")]), Int(1,1), -(Indirect(Var("RAX",Imm(64))),))]))])), Sub(Tid(2_877, "@frame_dummy"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1180")]), - "frame_dummy", Args([Arg(Tid(3_032, "%00000bd8"), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(653, "@deregister_tm_clones"), + Attrs([Attr("address","0x850")]), Phis([]), Defs([Def(Tid(657, "%00000291"), + Attrs([Attr("address","0x850"), Attr("insn","adrp x0, #0x20000")]), + Var("R0",Imm(64)), Int(131072,64)), Def(Tid(664, "%00000298"), + Attrs([Attr("address","0x854"), Attr("insn","add x0, x0, #0x70")]), + Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), +Def(Tid(670, "%0000029e"), Attrs([Attr("address","0x858"), +Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), +Def(Tid(677, "%000002a5"), Attrs([Attr("address","0x85C"), +Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), +PLUS(Var("R1",Imm(64)),Int(112,64))), Def(Tid(685, "%000002ad"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("#16",Imm(64)), +PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), +Def(Tid(689, "%000002b1"), Attrs([Attr("address","0x860"), +Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), +Extract(63,63,Var("#16",Imm(64)))), Def(Tid(692, "%000002b4"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("VF",Imm(1)), +OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), +Def(Tid(695, "%000002b7"), Attrs([Attr("address","0x860"), +Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), +EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(698, "%000002ba"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("CF",Imm(1)), +OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), +Def(Tid(712, "%000002c8"), Attrs([Attr("address","0x864"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), +Jmps([Goto(Tid(706, "%000002c2"), Attrs([Attr("address","0x864"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), +Direct(Tid(704, "%000002c0"))), Goto(Tid(2_329, "%00000919"), Attrs([]), + Int(1,1), Direct(Tid(1_342, "%0000053e")))])), Blk(Tid(1_342, "%0000053e"), + Attrs([Attr("address","0x868")]), Phis([]), +Defs([Def(Tid(1_346, "%00000542"), Attrs([Attr("address","0x868"), +Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), +Def(Tid(1_354, "%0000054a"), Attrs([Attr("address","0x86C"), +Attr("insn","ldr x1, [x1, #0xfc0]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4032,64)),LittleEndian(),64)), +Def(Tid(1_365, "%00000555"), Attrs([Attr("address","0x870"), +Attr("insn","cbz x1, #0xc")]), Var("#75",Imm(1)), +EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_359, "%0000054f"), + Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), + Var("#75",Imm(1)), Direct(Tid(704, "%000002c0"))), +Goto(Tid(2_330, "%0000091a"), Attrs([]), Int(1,1), +Direct(Tid(1_368, "%00000558")))])), Blk(Tid(704, "%000002c0"), + Attrs([Attr("address","0x87C")]), Phis([]), Defs([]), +Jmps([Call(Tid(717, "%000002cd"), Attrs([Attr("address","0x87C"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_368, "%00000558"), Attrs([Attr("address","0x874")]), Phis([]), +Defs([Def(Tid(1_374, "%0000055e"), Attrs([Attr("address","0x874"), +Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), +Jmps([Call(Tid(1_379, "%00000563"), Attrs([Attr("address","0x878"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_279, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x910")]), "frame_dummy", Args([Arg(Tid(2_346, "%0000092a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(1_380, "@frame_dummy"), - Attrs([Attr("address","0x1180")]), Phis([]), Defs([]), -Jmps([Call(Tid(1_384, "%00000568"), Attrs([Attr("address","0x1184"), -Attr("insn","jmp -0x89")]), Int(1,1), -(Direct(Tid(2_885, "@register_tm_clones")),))]))])), Sub(Tid(2_878, "@free"), - Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x1030"), -Attr("stub","()")]), "free", Args([Arg(Tid(3_033, "%00000bd9"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(893, "@frame_dummy"), + Attrs([Attr("address","0x910")]), Phis([]), Defs([]), +Jmps([Call(Tid(895, "%0000037f"), Attrs([Attr("address","0x910"), +Attr("insn","b #-0x90")]), Int(1,1), +(Direct(Tid(2_286, "@register_tm_clones")),))]))])), Sub(Tid(2_280, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7F0"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_347, "%0000092b"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), -Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("RDI",Imm(64)), -Both())]), Blks([Blk(Tid(1_838, "@free"), Attrs([Attr("address","0x1030")]), - Phis([]), Defs([]), Jmps([Call(Tid(2_453, "%00000995"), - Attrs([Attr("address","0x1030"), Attr("insn","jmpq *0x2fca(%rip)")]), - Int(1,1), -(Direct(Tid(2_451, "@free:external")),Direct(Tid(2_455, "%00000997"))))])), -Blk(Tid(2_455, "%00000997"), Attrs([Attr("address","0x1036")]), Phis([]), -Defs([Def(Tid(2_464, "%000009a0"), Attrs([Attr("address","0x1036"), -Attr("insn","pushq $0x0")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_469, "%000009a5"), - Attrs([Attr("address","0x1036"), Attr("insn","pushq $0x0")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(0,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_473, "%000009a9"), Attrs([Attr("address","0x103B"), -Attr("insn","jmp -0x20")]), Int(1,1), -(Direct(Tid(2_879, "@free@plt-0x10")),))]))])), -Sub(Tid(2_879, "@free@plt-0x10"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x1020"), Attr("stub","()")]), "free@plt-0x10", - Args([Arg(Tid(3_034, "%00000bda"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("free@plt-0x10_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(2_415, "@free@plt-0x10"), Attrs([Attr("address","0x1020")]), - Phis([]), Defs([Def(Tid(2_427, "%0000097b"), - Attrs([Attr("address","0x1020"), Attr("insn","pushq 0x2fca(%rip)")]), - Var("#12582862",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16368,64),LittleEndian(),64)), -Def(Tid(2_431, "%0000097f"), Attrs([Attr("address","0x1020"), -Attr("insn","pushq 0x2fca(%rip)")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_437, "%00000985"), - Attrs([Attr("address","0x1020"), Attr("insn","pushq 0x2fca(%rip)")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582862",Imm(64)),LittleEndian(),64))]), -Jmps([Call(Tid(2_443, "%0000098b"), Attrs([Attr("address","0x1026"), -Attr("insn","jmpq *0x2fcc(%rip)")]), Int(1,1), -(Indirect(Load(Var("mem",Mem(64,8)),Int(16376,64),LittleEndian(),64)),))]))])), -Sub(Tid(2_880, "@main"), +Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), +Both())]), Blks([Blk(Tid(1_195, "@free"), Attrs([Attr("address","0x7F0")]), + Phis([]), Defs([Def(Tid(1_869, "%0000074d"), Attrs([Attr("address","0x7F0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_877, "%00000755"), Attrs([Attr("address","0x7F4"), +Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), +Def(Tid(1_884, "%0000075c"), Attrs([Attr("address","0x7F8"), +Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_889, "%00000761"), + Attrs([Attr("address","0x7FC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_281, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x1190")]), "main", Args([Arg(Tid(3_035, "%00000bdb"), +Attr("address","0x914")]), "main", Args([Arg(Tid(2_348, "%0000092c"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), -LOW(32,Var("RDI",Imm(64))), In()), Arg(Tid(3_036, "%00000bdc"), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_349, "%0000092d"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), -Var("RSI",Imm(64)), Both()), Arg(Tid(3_037, "%00000bdd"), +Var("R1",Imm(64)), Both()), Arg(Tid(2_350, "%0000092e"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(1_391, "@main"), - Attrs([Attr("address","0x1190")]), Phis([]), -Defs([Def(Tid(1_403, "%0000057b"), Attrs([Attr("address","0x1190"), -Attr("insn","pushq %rbp")]), Var("#12582881",Imm(64)), Var("RBP",Imm(64))), -Def(Tid(1_407, "%0000057f"), Attrs([Attr("address","0x1190"), -Attr("insn","pushq %rbp")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_413, "%00000585"), - Attrs([Attr("address","0x1190"), Attr("insn","pushq %rbp")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582881",Imm(64)),LittleEndian(),64)), -Def(Tid(1_421, "%0000058d"), Attrs([Attr("address","0x1191"), -Attr("insn","movq %rsp, %rbp")]), Var("RBP",Imm(64)), Var("RSP",Imm(64))), -Def(Tid(1_447, "%000005a7"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("#12582880",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(1_451, "%000005ab"), - Attrs([Attr("address","0x1194"), Attr("insn","subq $0x20, %rsp")]), - Var("RSP",Imm(64)), MINUS(Var("RSP",Imm(64)),Int(32,64))), -Def(Tid(1_455, "%000005af"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("CF",Imm(1)), -LT(Var("#12582880",Imm(64)),Int(32,64))), Def(Tid(1_461, "%000005b5"), - Attrs([Attr("address","0x1194"), Attr("insn","subq $0x20, %rsp")]), - Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("#12582880",Imm(64)),Int(32,64)),XOR(Var("#12582880",Imm(64)),Var("RSP",Imm(64)))))), -Def(Tid(1_466, "%000005ba"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582880",Imm(64))),Int(32,64))))), -Def(Tid(1_471, "%000005bf"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_475, "%000005c3"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(1_479, "%000005c7"), - Attrs([Attr("address","0x1194"), Attr("insn","subq $0x20, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(1_489, "%000005d1"), Attrs([Attr("address","0x1198"), -Attr("insn","movq $0x0, -0x8(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551608,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(1_499, "%000005db"), Attrs([Attr("address","0x11A0"), -Attr("insn","movq $0x0, -0x10(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551600,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(1_505, "%000005e1"), Attrs([Attr("address","0x11A8"), -Attr("insn","movl $0xb, %edi")]), Var("RDI",Imm(64)), Int(11,64)), -Def(Tid(1_517, "%000005ed"), Attrs([Attr("address","0x11AD"), -Attr("insn","callq -0x132")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_522, "%000005f2"), - Attrs([Attr("address","0x11AD"), Attr("insn","callq -0x132")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4530,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_524, "%000005f4"), Attrs([Attr("address","0x11AD"), -Attr("insn","callq -0x132")]), Int(1,1), -(Direct(Tid(2_881, "@malloc")),Direct(Tid(1_526, "%000005f6"))))])), -Blk(Tid(1_526, "%000005f6"), Attrs([Attr("address","0x11B2")]), Phis([]), -Defs([Def(Tid(1_534, "%000005fe"), Attrs([Attr("address","0x11B2"), -Attr("insn","movq %rax, 0x2e9f(%rip)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Int(16472,64),Var("RAX",Imm(64)),LittleEndian(),64)), -Def(Tid(1_542, "%00000606"), Attrs([Attr("address","0x11B9"), -Attr("insn","movq 0x2e98(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_554, "%00000612"), Attrs([Attr("address","0x11C0"), -Attr("insn","movq %rax, -0x20(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551584,64)),Var("RAX",Imm(64)),LittleEndian(),64)), -Def(Tid(1_560, "%00000618"), Attrs([Attr("address","0x11C4"), -Attr("insn","leaq 0x2e76(%rip), %rdi")]), Var("RDI",Imm(64)), Int(16449,64)), -Def(Tid(1_572, "%00000624"), Attrs([Attr("address","0x11CB"), -Attr("insn","callq -0x180")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_577, "%00000629"), - Attrs([Attr("address","0x11CB"), Attr("insn","callq -0x180")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4560,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_579, "%0000062b"), Attrs([Attr("address","0x11CB"), -Attr("insn","callq -0x180")]), Int(1,1), -(Direct(Tid(2_888, "@strlen")),Direct(Tid(1_581, "%0000062d"))))])), -Blk(Tid(1_581, "%0000062d"), Attrs([Attr("address","0x11D0")]), Phis([]), -Defs([Def(Tid(1_589, "%00000635"), Attrs([Attr("address","0x11D0"), -Attr("insn","movq -0x20(%rbp), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551584,64)),LittleEndian(),64)), -Def(Tid(1_597, "%0000063d"), Attrs([Attr("address","0x11D4"), -Attr("insn","movq %rax, %rdx")]), Var("RDX",Imm(64)), Var("RAX",Imm(64))), -Def(Tid(1_603, "%00000643"), Attrs([Attr("address","0x11D7"), -Attr("insn","leaq 0x2e63(%rip), %rsi")]), Var("RSI",Imm(64)), Int(16449,64)), -Def(Tid(1_615, "%0000064f"), Attrs([Attr("address","0x11DE"), -Attr("insn","callq -0x173")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_620, "%00000654"), - Attrs([Attr("address","0x11DE"), Attr("insn","callq -0x173")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4579,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_622, "%00000656"), Attrs([Attr("address","0x11DE"), -Attr("insn","callq -0x173")]), Int(1,1), -(Direct(Tid(2_882, "@memcpy")),Direct(Tid(1_624, "%00000658"))))])), -Blk(Tid(1_624, "%00000658"), Attrs([Attr("address","0x11E3")]), Phis([]), -Defs([Def(Tid(1_630, "%0000065e"), Attrs([Attr("address","0x11E3"), -Attr("insn","movq 0x2e6e(%rip), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_642, "%0000066a"), Attrs([Attr("address","0x11EA"), -Attr("insn","callq -0x1af")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_647, "%0000066f"), - Attrs([Attr("address","0x11EA"), Attr("insn","callq -0x1af")]), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(897, "@main"), + Attrs([Attr("address","0x914")]), Phis([]), Defs([Def(Tid(902, "%00000386"), + Attrs([Attr("address","0x914"), Attr("insn","sub sp, sp, #0x40")]), + Var("R31",Imm(64)), MINUS(Var("R31",Imm(64)),Int(64,64))), +Def(Tid(910, "%0000038e"), Attrs([Attr("address","0x918"), +Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("#42",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(915, "%00000393"), + Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4591,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_649, "%00000671"), Attrs([Attr("address","0x11EA"), -Attr("insn","callq -0x1af")]), Int(1,1), -(Direct(Tid(2_884, "@puts")),Direct(Tid(1_651, "%00000673"))))])), -Blk(Tid(1_651, "%00000673"), Attrs([Attr("address","0x11EF")]), Phis([]), -Defs([Def(Tid(1_657, "%00000679"), Attrs([Attr("address","0x11EF"), -Attr("insn","movq 0x2e62(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_686, "%00000696"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("#12582877",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(1_690, "%0000069a"), - Attrs([Attr("address","0x11F6"), Attr("insn","addq $0x4, %rax")]), - Var("RAX",Imm(64)), PLUS(Var("RAX",Imm(64)),Int(4,64))), -Def(Tid(1_695, "%0000069f"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("CF",Imm(1)), -LT(Var("RAX",Imm(64)),Var("#12582877",Imm(64)))), -Def(Tid(1_703, "%000006a7"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582877",Imm(64))),Int(0,1)),AND(OR(HIGH(1,Var("#12582877",Imm(64))),HIGH(1,Var("RAX",Imm(64)))),NOT(AND(HIGH(1,Var("#12582877",Imm(64))),HIGH(1,Var("RAX",Imm(64)))))))), -Def(Tid(1_708, "%000006ac"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RAX",Imm(64)),Var("#12582877",Imm(64))),Int(4,64))))), -Def(Tid(1_713, "%000006b1"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RAX",Imm(64)),Int(4,64)),Var("RAX",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_717, "%000006b5"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("RAX",Imm(64)))), Def(Tid(1_721, "%000006b9"), - Attrs([Attr("address","0x11F6"), Attr("insn","addq $0x4, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RAX",Imm(64)))), -Def(Tid(1_733, "%000006c5"), Attrs([Attr("address","0x11FA"), -Attr("insn","movq %rax, -0x8(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551608,64)),Var("RAX",Imm(64)),LittleEndian(),64)), -Def(Tid(1_741, "%000006cd"), Attrs([Attr("address","0x11FE"), -Attr("insn","movq 0x2e53(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_753, "%000006d9"), Attrs([Attr("address","0x1205"), -Attr("insn","movq %rax, -0x18(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551592,64)),Var("RAX",Imm(64)),LittleEndian(),64)), -Def(Tid(1_761, "%000006e1"), Attrs([Attr("address","0x1209"), -Attr("insn","movq 0x2e48(%rip), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_772, "%000006ec"), Attrs([Attr("address","0x1210"), -Attr("insn","callq -0x1c5")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_777, "%000006f1"), - Attrs([Attr("address","0x1210"), Attr("insn","callq -0x1c5")]), +Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(920, "%00000398"), Attrs([Attr("address","0x918"), +Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(927, "%0000039f"), Attrs([Attr("address","0x91C"), +Attr("insn","add x29, sp, #0x30")]), Var("R29",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(935, "%000003a7"), + Attrs([Attr("address","0x920"), Attr("insn","stur xzr, [x29, #-0x8]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4629,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_779, "%000006f3"), Attrs([Attr("address","0x1210"), -Attr("insn","callq -0x1c5")]), Int(1,1), -(Direct(Tid(2_888, "@strlen")),Direct(Tid(1_781, "%000006f5"))))])), -Blk(Tid(1_781, "%000006f5"), Attrs([Attr("address","0x1215")]), Phis([]), -Defs([Def(Tid(1_789, "%000006fd"), Attrs([Attr("address","0x1215"), -Attr("insn","movq -0x18(%rbp), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551592,64)),LittleEndian(),64)), -Def(Tid(1_797, "%00000705"), Attrs([Attr("address","0x1219"), -Attr("insn","movq %rax, %rdx")]), Var("RDX",Imm(64)), Var("RAX",Imm(64))), -Def(Tid(1_803, "%0000070b"), Attrs([Attr("address","0x121C"), -Attr("insn","movl $0x1, %esi")]), Var("RSI",Imm(64)), Int(1,64)), -Def(Tid(1_815, "%00000717"), Attrs([Attr("address","0x1221"), -Attr("insn","callq -0x1c6")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_820, "%0000071c"), - Attrs([Attr("address","0x1221"), Attr("insn","callq -0x1c6")]), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(943, "%000003af"), Attrs([Attr("address","0x924"), +Attr("insn","stur xzr, [x29, #-0x10]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551600,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(949, "%000003b5"), Attrs([Attr("address","0x928"), +Attr("insn","mov x0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), +Def(Tid(954, "%000003ba"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2352,64))]), +Jmps([Call(Tid(957, "%000003bd"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x18c")]), Int(1,1), +(Direct(Tid(2_282, "@malloc")),Direct(Tid(959, "%000003bf"))))])), +Blk(Tid(959, "%000003bf"), Attrs([Attr("address","0x930")]), Phis([]), +Defs([Def(Tid(963, "%000003c3"), Attrs([Attr("address","0x930"), +Attr("insn","adrp x8, #0x20000")]), Var("R8",Imm(64)), Int(131072,64)), +Def(Tid(971, "%000003cb"), Attrs([Attr("address","0x934"), +Attr("insn","str x8, [sp, #0x18]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(979, "%000003d3"), Attrs([Attr("address","0x938"), +Attr("insn","str x0, [x8, #0x78]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(987, "%000003db"), Attrs([Attr("address","0x93C"), +Attr("insn","ldr x8, [x8, #0x78]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x940"), +Attr("insn","str x8, [sp, #0x8]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_001, "%000003e9"), Attrs([Attr("address","0x944"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_008, "%000003f0"), Attrs([Attr("address","0x948"), +Attr("insn","add x0, x0, #0x61")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(97,64))), Def(Tid(1_016, "%000003f8"), + Attrs([Attr("address","0x94C"), Attr("insn","str x0, [sp]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4646,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_822, "%0000071e"), Attrs([Attr("address","0x1221"), -Attr("insn","callq -0x1c6")]), Int(1,1), -(Direct(Tid(2_883, "@memset")),Direct(Tid(1_824, "%00000720"))))])), -Blk(Tid(1_824, "%00000720"), Attrs([Attr("address","0x1226")]), Phis([]), -Defs([Def(Tid(1_830, "%00000726"), Attrs([Attr("address","0x1226"), -Attr("insn","movq 0x2e2b(%rip), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_842, "%00000732"), Attrs([Attr("address","0x122D"), -Attr("insn","callq -0x202")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_847, "%00000737"), - Attrs([Attr("address","0x122D"), Attr("insn","callq -0x202")]), +Store(Var("mem",Mem(64,8)),Var("R31",Imm(64)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_021, "%000003fd"), Attrs([Attr("address","0x950"), +Attr("insn","bl #-0x1e0")]), Var("R30",Imm(64)), Int(2388,64))]), +Jmps([Call(Tid(1_024, "%00000400"), Attrs([Attr("address","0x950"), +Attr("insn","bl #-0x1e0")]), Int(1,1), +(Direct(Tid(2_289, "@strlen")),Direct(Tid(1_026, "%00000402"))))])), +Blk(Tid(1_026, "%00000402"), Attrs([Attr("address","0x954")]), Phis([]), +Defs([Def(Tid(1_032, "%00000408"), Attrs([Attr("address","0x954"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(1_040, "%00000410"), Attrs([Attr("address","0x958"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_048, "%00000418"), Attrs([Attr("address","0x95C"), +Attr("insn","ldr x0, [sp, #0x8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_053, "%0000041d"), Attrs([Attr("address","0x960"), +Attr("insn","bl #-0x200")]), Var("R30",Imm(64)), Int(2404,64))]), +Jmps([Call(Tid(1_056, "%00000420"), Attrs([Attr("address","0x960"), +Attr("insn","bl #-0x200")]), Int(1,1), +(Direct(Tid(2_283, "@memcpy")),Direct(Tid(1_058, "%00000422"))))])), +Blk(Tid(1_058, "%00000422"), Attrs([Attr("address","0x964")]), Phis([]), +Defs([Def(Tid(1_064, "%00000428"), Attrs([Attr("address","0x964"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_072, "%00000430"), Attrs([Attr("address","0x968"), +Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_077, "%00000435"), Attrs([Attr("address","0x96C"), +Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2416,64))]), +Jmps([Call(Tid(1_080, "%00000438"), Attrs([Attr("address","0x96C"), +Attr("insn","bl #-0x18c")]), Int(1,1), +(Direct(Tid(2_285, "@puts")),Direct(Tid(1_082, "%0000043a"))))])), +Blk(Tid(1_082, "%0000043a"), Attrs([Attr("address","0x970")]), Phis([]), +Defs([Def(Tid(1_088, "%00000440"), Attrs([Attr("address","0x970"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_096, "%00000448"), Attrs([Attr("address","0x974"), +Attr("insn","ldr x9, [x8, #0x78]")]), Var("R9",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_103, "%0000044f"), Attrs([Attr("address","0x978"), +Attr("insn","add x9, x9, #0x4")]), Var("R9",Imm(64)), +PLUS(Var("R9",Imm(64)),Int(4,64))), Def(Tid(1_111, "%00000457"), + Attrs([Attr("address","0x97C"), Attr("insn","stur x9, [x29, #-0x8]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4658,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_849, "%00000739"), Attrs([Attr("address","0x122D"), -Attr("insn","callq -0x202")]), Int(1,1), -(Direct(Tid(2_878, "@free")),Direct(Tid(1_851, "%0000073b"))))])), -Blk(Tid(1_851, "%0000073b"), Attrs([Attr("address","0x1232")]), Phis([]), -Defs([Def(Tid(1_861, "%00000745"), Attrs([Attr("address","0x1232"), -Attr("insn","xorl %eax, %eax")]), Var("RAX",Imm(64)), Int(0,64)), -Def(Tid(1_864, "%00000748"), Attrs([Attr("address","0x1232"), -Attr("insn","xorl %eax, %eax")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_867, "%0000074b"), Attrs([Attr("address","0x1232"), -Attr("insn","xorl %eax, %eax")]), Var("ZF",Imm(1)), Int(1,1)), -Def(Tid(1_870, "%0000074e"), Attrs([Attr("address","0x1232"), -Attr("insn","xorl %eax, %eax")]), Var("PF",Imm(1)), Int(1,1)), -Def(Tid(1_873, "%00000751"), Attrs([Attr("address","0x1232"), -Attr("insn","xorl %eax, %eax")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(1_876, "%00000754"), Attrs([Attr("address","0x1232"), -Attr("insn","xorl %eax, %eax")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(1_879, "%00000757"), Attrs([Attr("address","0x1232"), -Attr("insn","xorl %eax, %eax")]), Var("SF",Imm(1)), Int(0,1)), -Def(Tid(1_908, "%00000774"), Attrs([Attr("address","0x1234"), -Attr("insn","addq $0x20, %rsp")]), Var("#12582874",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(1_912, "%00000778"), - Attrs([Attr("address","0x1234"), Attr("insn","addq $0x20, %rsp")]), - Var("RSP",Imm(64)), PLUS(Var("RSP",Imm(64)),Int(32,64))), -Def(Tid(1_917, "%0000077d"), Attrs([Attr("address","0x1234"), -Attr("insn","addq $0x20, %rsp")]), Var("CF",Imm(1)), -LT(Var("RSP",Imm(64)),Var("#12582874",Imm(64)))), -Def(Tid(1_925, "%00000785"), Attrs([Attr("address","0x1234"), -Attr("insn","addq $0x20, %rsp")]), Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582874",Imm(64))),Int(0,1)),AND(OR(HIGH(1,Var("#12582874",Imm(64))),HIGH(1,Var("RSP",Imm(64)))),NOT(AND(HIGH(1,Var("#12582874",Imm(64))),HIGH(1,Var("RSP",Imm(64)))))))), -Def(Tid(1_930, "%0000078a"), Attrs([Attr("address","0x1234"), -Attr("insn","addq $0x20, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582874",Imm(64))),Int(32,64))))), -Def(Tid(1_935, "%0000078f"), Attrs([Attr("address","0x1234"), -Attr("insn","addq $0x20, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_939, "%00000793"), Attrs([Attr("address","0x1234"), -Attr("insn","addq $0x20, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(1_943, "%00000797"), - Attrs([Attr("address","0x1234"), Attr("insn","addq $0x20, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(1_955, "%000007a3"), Attrs([Attr("address","0x1238"), -Attr("insn","popq %rbp")]), Var("RBP",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(1_959, "%000007a7"), Attrs([Attr("address","0x1238"), -Attr("insn","popq %rbp")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_972, "%000007b4"), - Attrs([Attr("address","0x1239"), Attr("insn","retq")]), - Var("#12582871",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(1_976, "%000007b8"), Attrs([Attr("address","0x1239"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_979, "%000007bb"), - Attrs([Attr("address","0x1239"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582871",Imm(64))),))]))])), Sub(Tid(2_881, "@malloc"), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Var("R9",Imm(64)),LittleEndian(),64)), +Def(Tid(1_119, "%0000045f"), Attrs([Attr("address","0x980"), +Attr("insn","ldr x9, [x8, #0x78]")]), Var("R9",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_127, "%00000467"), Attrs([Attr("address","0x984"), +Attr("insn","str x9, [sp, #0x10]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R9",Imm(64)),LittleEndian(),64)), +Def(Tid(1_135, "%0000046f"), Attrs([Attr("address","0x988"), +Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_140, "%00000474"), Attrs([Attr("address","0x98C"), +Attr("insn","bl #-0x21c")]), Var("R30",Imm(64)), Int(2448,64))]), +Jmps([Call(Tid(1_142, "%00000476"), Attrs([Attr("address","0x98C"), +Attr("insn","bl #-0x21c")]), Int(1,1), +(Direct(Tid(2_289, "@strlen")),Direct(Tid(1_144, "%00000478"))))])), +Blk(Tid(1_144, "%00000478"), Attrs([Attr("address","0x990")]), Phis([]), +Defs([Def(Tid(1_150, "%0000047e"), Attrs([Attr("address","0x990"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_158, "%00000486"), Attrs([Attr("address","0x994"), +Attr("insn","ldr x0, [sp, #0x10]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_165, "%0000048d"), Attrs([Attr("address","0x998"), +Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), +Def(Tid(1_170, "%00000492"), Attrs([Attr("address","0x99C"), +Attr("insn","bl #-0x1ec")]), Var("R30",Imm(64)), Int(2464,64))]), +Jmps([Call(Tid(1_173, "%00000495"), Attrs([Attr("address","0x99C"), +Attr("insn","bl #-0x1ec")]), Int(1,1), +(Direct(Tid(2_284, "@memset")),Direct(Tid(1_175, "%00000497"))))])), +Blk(Tid(1_175, "%00000497"), Attrs([Attr("address","0x9A0")]), Phis([]), +Defs([Def(Tid(1_181, "%0000049d"), Attrs([Attr("address","0x9A0"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x9A4"), +Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_194, "%000004aa"), Attrs([Attr("address","0x9A8"), +Attr("insn","bl #-0x1b8")]), Var("R30",Imm(64)), Int(2476,64))]), +Jmps([Call(Tid(1_197, "%000004ad"), Attrs([Attr("address","0x9A8"), +Attr("insn","bl #-0x1b8")]), Int(1,1), +(Direct(Tid(2_280, "@free")),Direct(Tid(1_199, "%000004af"))))])), +Blk(Tid(1_199, "%000004af"), Attrs([Attr("address","0x9AC")]), Phis([]), +Defs([Def(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x9AC"), +Attr("insn","mov w0, wzr")]), Var("R0",Imm(64)), Int(0,32)), +Def(Tid(1_215, "%000004bf"), Attrs([Attr("address","0x9B0"), +Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(48,64)),LittleEndian(),64)), +Def(Tid(1_219, "%000004c3"), Attrs([Attr("address","0x9B0"), +Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(56,64)),LittleEndian(),64)), +Def(Tid(1_226, "%000004ca"), Attrs([Attr("address","0x9B4"), +Attr("insn","add sp, sp, #0x40")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_231, "%000004cf"), + Attrs([Attr("address","0x9B8"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_282, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), -Attr("address","0x1080"), Attr("malloc","()"), Attr("stub","()")]), "malloc", - Args([Arg(Tid(3_038, "%00000bde"), Attrs([Attr("alloc-size","()"), +Attr("address","0x7A0"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_351, "%0000092f"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), -Var("RDI",Imm(64)), In()), Arg(Tid(3_039, "%00000bdf"), +Var("R0",Imm(64)), In()), Arg(Tid(2_352, "%00000930"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), - Var("malloc_result",Imm(64)), Var("RAX",Imm(64)), Out())]), -Blks([Blk(Tid(1_513, "@malloc"), Attrs([Attr("address","0x1080")]), Phis([]), -Defs([]), Jmps([Call(Tid(2_578, "%00000a12"), - Attrs([Attr("address","0x1080"), Attr("insn","jmpq *0x2fa2(%rip)")]), - Int(1,1), -(Direct(Tid(2_576, "@malloc:external")),Direct(Tid(2_580, "%00000a14"))))])), -Blk(Tid(2_580, "%00000a14"), Attrs([Attr("address","0x1086")]), Phis([]), -Defs([Def(Tid(2_589, "%00000a1d"), Attrs([Attr("address","0x1086"), -Attr("insn","pushq $0x5")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_594, "%00000a22"), - Attrs([Attr("address","0x1086"), Attr("insn","pushq $0x5")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(5,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_598, "%00000a26"), Attrs([Attr("address","0x108B"), -Attr("insn","jmp -0x70")]), Int(1,1), -(Direct(Tid(2_879, "@free@plt-0x10")),))]))])), Sub(Tid(2_882, "@memcpy"), + Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(955, "@malloc"), Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_744, "%000006d0"), Attrs([Attr("address","0x7A0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_752, "%000006d8"), Attrs([Attr("address","0x7A4"), +Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), +Def(Tid(1_759, "%000006df"), Attrs([Attr("address","0x7A8"), +Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_764, "%000006e4"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_283, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), -Attr("address","0x1070"), Attr("stub","()")]), "memcpy", - Args([Arg(Tid(3_040, "%00000be0"), Attrs([Attr("nonnull","()"), +Attr("address","0x760"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_353, "%00000931"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), -Var("RDI",Imm(64)), Both()), Arg(Tid(3_041, "%00000be1"), +Var("R0",Imm(64)), Both()), Arg(Tid(2_354, "%00000932"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), - Var("memcpy_src",Imm(64)), Var("RSI",Imm(64)), Both()), -Arg(Tid(3_042, "%00000be2"), Attrs([Attr("c.layout","[unsigned long : 64]"), + Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), +Arg(Tid(2_355, "%00000933"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), - Var("memcpy_n",Imm(64)), Var("RDX",Imm(64)), In()), -Arg(Tid(3_043, "%00000be3"), Attrs([Attr("c.layout","*[ : 8]"), + Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), +Arg(Tid(2_356, "%00000934"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), - Var("memcpy_result",Imm(64)), Var("RAX",Imm(64)), Out())]), -Blks([Blk(Tid(1_611, "@memcpy"), Attrs([Attr("address","0x1070")]), Phis([]), -Defs([]), Jmps([Call(Tid(2_553, "%000009f9"), - Attrs([Attr("address","0x1070"), Attr("insn","jmpq *0x2faa(%rip)")]), - Int(1,1), -(Direct(Tid(2_551, "@memcpy:external")),Direct(Tid(2_555, "%000009fb"))))])), -Blk(Tid(2_555, "%000009fb"), Attrs([Attr("address","0x1076")]), Phis([]), -Defs([Def(Tid(2_564, "%00000a04"), Attrs([Attr("address","0x1076"), -Attr("insn","pushq $0x4")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_569, "%00000a09"), - Attrs([Attr("address","0x1076"), Attr("insn","pushq $0x4")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_573, "%00000a0d"), Attrs([Attr("address","0x107B"), -Attr("insn","jmp -0x60")]), Int(1,1), -(Direct(Tid(2_879, "@free@plt-0x10")),))]))])), Sub(Tid(2_883, "@memset"), + Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_054, "@memcpy"), Attrs([Attr("address","0x760")]), Phis([]), +Defs([Def(Tid(1_644, "%0000066c"), Attrs([Attr("address","0x760"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_652, "%00000674"), Attrs([Attr("address","0x764"), +Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), +Def(Tid(1_659, "%0000067b"), Attrs([Attr("address","0x768"), +Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), +Var("R16",Imm(64)))]), Jmps([Call(Tid(1_664, "%00000680"), + Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_284, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), -Attr("address","0x1060"), Attr("stub","()")]), "memset", - Args([Arg(Tid(3_044, "%00000be4"), Attrs([Attr("nonnull","()"), +Attr("address","0x7B0"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_357, "%00000935"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), -Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("RDI",Imm(64)), -Both()), Arg(Tid(3_045, "%00000be5"), +Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), +Both()), Arg(Tid(2_358, "%00000936"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("memset_c",Imm(32)), -LOW(32,Var("RSI",Imm(64))), In()), Arg(Tid(3_046, "%00000be6"), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_359, "%00000937"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), -Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), -Var("RDX",Imm(64)), In()), Arg(Tid(3_047, "%00000be7"), - Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), -Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("RAX",Imm(64)), -Out())]), Blks([Blk(Tid(1_811, "@memset"), Attrs([Attr("address","0x1060")]), - Phis([]), Defs([]), Jmps([Call(Tid(2_528, "%000009e0"), - Attrs([Attr("address","0x1060"), Attr("insn","jmpq *0x2fb2(%rip)")]), - Int(1,1), -(Direct(Tid(2_526, "@memset:external")),Direct(Tid(2_530, "%000009e2"))))])), -Blk(Tid(2_530, "%000009e2"), Attrs([Attr("address","0x1066")]), Phis([]), -Defs([Def(Tid(2_539, "%000009eb"), Attrs([Attr("address","0x1066"), -Attr("insn","pushq $0x3")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_544, "%000009f0"), - Attrs([Attr("address","0x1066"), Attr("insn","pushq $0x3")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(3,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_548, "%000009f4"), Attrs([Attr("address","0x106B"), -Attr("insn","jmp -0x50")]), Int(1,1), -(Direct(Tid(2_879, "@free@plt-0x10")),))]))])), Sub(Tid(2_884, "@puts"), +Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), +In()), Arg(Tid(2_360, "%00000938"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_171, "@memset"), Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_769, "%000006e9"), Attrs([Attr("address","0x7B0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_777, "%000006f1"), Attrs([Attr("address","0x7B4"), +Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), +Def(Tid(1_784, "%000006f8"), Attrs([Attr("address","0x7B8"), +Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_789, "%000006fd"), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_285, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), -Attr("address","0x1040"), Attr("stub","()")]), "puts", - Args([Arg(Tid(3_048, "%00000be8"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("address","0x7E0"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_361, "%00000939"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), - Var("puts_s",Imm(64)), Var("RDI",Imm(64)), In()), -Arg(Tid(3_049, "%00000be9"), Attrs([Attr("c.layout","[signed : 32]"), + Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_362, "%0000093a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("puts_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(1_638, "@puts"), Attrs([Attr("address","0x1040")]), Phis([]), -Defs([]), Jmps([Call(Tid(2_478, "%000009ae"), - Attrs([Attr("address","0x1040"), Attr("insn","jmpq *0x2fc2(%rip)")]), - Int(1,1), -(Direct(Tid(2_476, "@puts:external")),Direct(Tid(2_480, "%000009b0"))))])), -Blk(Tid(2_480, "%000009b0"), Attrs([Attr("address","0x1046")]), Phis([]), -Defs([Def(Tid(2_489, "%000009b9"), Attrs([Attr("address","0x1046"), -Attr("insn","pushq $0x1")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_494, "%000009be"), - Attrs([Attr("address","0x1046"), Attr("insn","pushq $0x1")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(1,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_498, "%000009c2"), Attrs([Attr("address","0x104B"), -Attr("insn","jmp -0x30")]), Int(1,1), -(Direct(Tid(2_879, "@free@plt-0x10")),))]))])), -Sub(Tid(2_885, "@register_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1100")]), - "register_tm_clones", Args([Arg(Tid(3_050, "%00000bea"), + Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(1_078, "@puts"), Attrs([Attr("address","0x7E0")]), Phis([]), +Defs([Def(Tid(1_844, "%00000734"), Attrs([Attr("address","0x7E0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_852, "%0000073c"), Attrs([Attr("address","0x7E4"), +Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), +Def(Tid(1_859, "%00000743"), Attrs([Attr("address","0x7E8"), +Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_864, "%00000748"), + Attrs([Attr("address","0x7EC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_286, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + "register_tm_clones", Args([Arg(Tid(2_363, "%0000093b"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(948, "@register_tm_clones"), Attrs([Attr("address","0x1100")]), - Phis([]), Defs([Def(Tid(952, "%000003b8"), Attrs([Attr("address","0x1100"), -Attr("insn","leaq 0x2f49(%rip), %rdi")]), Var("RDI",Imm(64)), Int(16464,64)), -Def(Tid(958, "%000003be"), Attrs([Attr("address","0x1107"), -Attr("insn","leaq 0x2f42(%rip), %rsi")]), Var("RSI",Imm(64)), Int(16464,64)), -Def(Tid(990, "%000003de"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("#12582897",Imm(64)), -Var("RSI",Imm(64))), Def(Tid(994, "%000003e2"), - Attrs([Attr("address","0x110E"), Attr("insn","subq %rdi, %rsi")]), - Var("#12582896",Imm(64)), Var("RDI",Imm(64))), Def(Tid(999, "%000003e7"), - Attrs([Attr("address","0x110E"), Attr("insn","subq %rdi, %rsi")]), - Var("RSI",Imm(64)), MINUS(Var("RSI",Imm(64)),Var("RDI",Imm(64)))), -Def(Tid(1_004, "%000003ec"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("CF",Imm(1)), -LT(Var("#12582897",Imm(64)),Var("#12582896",Imm(64)))), -Def(Tid(1_011, "%000003f3"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("#12582897",Imm(64)),Var("#12582896",Imm(64))),XOR(Var("#12582897",Imm(64)),Var("RSI",Imm(64)))))), -Def(Tid(1_017, "%000003f9"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSI",Imm(64)),Var("#12582897",Imm(64))),Var("#12582896",Imm(64)))))), -Def(Tid(1_022, "%000003fe"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSI",Imm(64)),Int(4,64)),Var("RSI",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_026, "%00000402"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("SF",Imm(1)), -HIGH(1,Var("RSI",Imm(64)))), Def(Tid(1_030, "%00000406"), - Attrs([Attr("address","0x110E"), Attr("insn","subq %rdi, %rsi")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSI",Imm(64)))), -Def(Tid(1_038, "%0000040e"), Attrs([Attr("address","0x1111"), -Attr("insn","movq %rsi, %rax")]), Var("RAX",Imm(64)), Var("RSI",Imm(64))), -Def(Tid(1_059, "%00000423"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("#12582894",Imm(64)), -Var("RSI",Imm(64))), Def(Tid(1_063, "%00000427"), - Attrs([Attr("address","0x1114"), Attr("insn","shrq $0x3f, %rsi")]), - Var("RSI",Imm(64)), RSHIFT(Var("RSI",Imm(64)),Int(63,64))), -Def(Tid(1_067, "%0000042b"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("CF",Imm(1)), -HIGH(1,LSHIFT(Var("#12582894",Imm(64)),Int(1,64)))), -Def(Tid(1_071, "%0000042f"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("SF",Imm(1)), -HIGH(1,Var("RSI",Imm(64)))), Def(Tid(1_075, "%00000433"), - Attrs([Attr("address","0x1114"), Attr("insn","shrq $0x3f, %rsi")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSI",Imm(64)))), -Def(Tid(1_080, "%00000438"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSI",Imm(64)),Int(4,64)),Var("RSI",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_083, "%0000043b"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_086, "%0000043e"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("OF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_107, "%00000453"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("#12582892",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(1_111, "%00000457"), - Attrs([Attr("address","0x1118"), Attr("insn","sarq $0x3, %rax")]), - Var("RAX",Imm(64)), ARSHIFT(Var("RAX",Imm(64)),Int(3,64))), -Def(Tid(1_115, "%0000045b"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("CF",Imm(1)), -HIGH(1,LSHIFT(Var("#12582892",Imm(64)),Int(61,64)))), -Def(Tid(1_119, "%0000045f"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("RAX",Imm(64)))), Def(Tid(1_123, "%00000463"), - Attrs([Attr("address","0x1118"), Attr("insn","sarq $0x3, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RAX",Imm(64)))), -Def(Tid(1_128, "%00000468"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RAX",Imm(64)),Int(4,64)),Var("RAX",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_131, "%0000046b"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_134, "%0000046e"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("OF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_168, "%00000490"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("#12582890",Imm(64)), -Var("RSI",Imm(64))), Def(Tid(1_172, "%00000494"), - Attrs([Attr("address","0x111C"), Attr("insn","addq %rax, %rsi")]), - Var("#12582889",Imm(64)), Var("RAX",Imm(64))), Def(Tid(1_177, "%00000499"), - Attrs([Attr("address","0x111C"), Attr("insn","addq %rax, %rsi")]), - Var("RSI",Imm(64)), PLUS(Var("RSI",Imm(64)),Var("#12582889",Imm(64)))), -Def(Tid(1_182, "%0000049e"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("CF",Imm(1)), -LT(Var("RSI",Imm(64)),Var("#12582890",Imm(64)))), -Def(Tid(1_191, "%000004a7"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582890",Imm(64))),HIGH(1,Var("#12582889",Imm(64)))),AND(OR(HIGH(1,Var("#12582890",Imm(64))),HIGH(1,Var("RSI",Imm(64)))),NOT(AND(HIGH(1,Var("#12582890",Imm(64))),HIGH(1,Var("RSI",Imm(64)))))))), -Def(Tid(1_197, "%000004ad"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSI",Imm(64)),Var("#12582890",Imm(64))),Var("#12582889",Imm(64)))))), -Def(Tid(1_202, "%000004b2"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSI",Imm(64)),Int(4,64)),Var("RSI",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("SF",Imm(1)), -HIGH(1,Var("RSI",Imm(64)))), Def(Tid(1_210, "%000004ba"), - Attrs([Attr("address","0x111C"), Attr("insn","addq %rax, %rsi")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSI",Imm(64)))), -Def(Tid(1_231, "%000004cf"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("#12582887",Imm(64)), Var("RSI",Imm(64))), -Def(Tid(1_235, "%000004d3"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("RSI",Imm(64)), -ARSHIFT(Var("RSI",Imm(64)),Int(1,64))), Def(Tid(1_239, "%000004d7"), - Attrs([Attr("address","0x111F"), Attr("insn","sarq %rsi")]), - Var("CF",Imm(1)), HIGH(1,LSHIFT(Var("#12582887",Imm(64)),Int(63,64)))), -Def(Tid(1_243, "%000004db"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("SF",Imm(1)), HIGH(1,Var("RSI",Imm(64)))), -Def(Tid(1_247, "%000004df"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("ZF",Imm(1)), -EQ(Int(0,64),Var("RSI",Imm(64)))), Def(Tid(1_252, "%000004e4"), - Attrs([Attr("address","0x111F"), Attr("insn","sarq %rsi")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSI",Imm(64)),Int(4,64)),Var("RSI",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_255, "%000004e7"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_258, "%000004ea"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("OF",Imm(1)), Int(0,1))]), -Jmps([Goto(Tid(1_265, "%000004f1"), Attrs([Attr("address","0x1122"), -Attr("insn","je 0x14")]), Var("ZF",Imm(1)), Direct(Tid(1_262, "%000004ee"))), -Goto(Tid(3_023, "%00000bcf"), Attrs([]), Int(1,1), -Direct(Tid(2_167, "%00000877")))])), Blk(Tid(2_167, "%00000877"), - Attrs([Attr("address","0x1124")]), Phis([]), -Defs([Def(Tid(2_173, "%0000087d"), Attrs([Attr("address","0x1124"), -Attr("insn","movq 0x2ead(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16344,64),LittleEndian(),64)), -Def(Tid(2_191, "%0000088f"), Attrs([Attr("address","0x112B"), -Attr("insn","testq %rax, %rax")]), Var("#12582866",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(2_194, "%00000892"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("OF",Imm(1)), Int(0,1)), Def(Tid(2_197, "%00000895"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("CF",Imm(1)), Int(0,1)), Def(Tid(2_200, "%00000898"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("AF",Imm(1)), Unknown("bits",Imm(1))), Def(Tid(2_205, "%0000089d"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582866",Imm(64)),Int(4,64)),Var("#12582866",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_209, "%000008a1"), Attrs([Attr("address","0x112B"), -Attr("insn","testq %rax, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582866",Imm(64)))), Def(Tid(2_213, "%000008a5"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582866",Imm(64))))]), -Jmps([Goto(Tid(2_219, "%000008ab"), Attrs([Attr("address","0x112E"), -Attr("insn","je 0x8")]), Var("ZF",Imm(1)), Direct(Tid(1_262, "%000004ee"))), -Goto(Tid(3_024, "%00000bd0"), Attrs([]), Int(1,1), -Direct(Tid(2_223, "%000008af")))])), Blk(Tid(1_262, "%000004ee"), - Attrs([Attr("address","0x1138")]), Phis([]), -Defs([Def(Tid(1_279, "%000004ff"), Attrs([Attr("address","0x1138"), -Attr("insn","retq")]), Var("#12582885",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(1_283, "%00000503"), Attrs([Attr("address","0x1138"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_286, "%00000506"), - Attrs([Attr("address","0x1138"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582885",Imm(64))),))])), Blk(Tid(2_223, "%000008af"), - Attrs([Attr("address","0x1130")]), Phis([]), Defs([]), -Jmps([Call(Tid(2_227, "%000008b3"), Attrs([Attr("address","0x1130"), -Attr("insn","jmpq *%rax")]), Int(1,1), -(Indirect(Var("RAX",Imm(64))),))]))])), Sub(Tid(2_888, "@strlen"), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(719, "@register_tm_clones"), Attrs([Attr("address","0x880")]), + Phis([]), Defs([Def(Tid(723, "%000002d3"), Attrs([Attr("address","0x880"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(730, "%000002da"), Attrs([Attr("address","0x884"), +Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(112,64))), Def(Tid(736, "%000002e0"), + Attrs([Attr("address","0x888"), Attr("insn","adrp x1, #0x20000")]), + Var("R1",Imm(64)), Int(131072,64)), Def(Tid(743, "%000002e7"), + Attrs([Attr("address","0x88C"), Attr("insn","add x1, x1, #0x70")]), + Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), +Def(Tid(751, "%000002ef"), Attrs([Attr("address","0x890"), +Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), +MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(758, "%000002f6"), + Attrs([Attr("address","0x894"), Attr("insn","lsr x2, x1, #63")]), + Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), +Def(Tid(766, "%000002fe"), Attrs([Attr("address","0x898"), +Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), +PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), +Def(Tid(773, "%00000305"), Attrs([Attr("address","0x89C"), +Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), +RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(785, "%00000311"), + Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), + Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), +Jmps([Goto(Tid(779, "%0000030b"), Attrs([Attr("address","0x8A0"), +Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), +Direct(Tid(777, "%00000309"))), Goto(Tid(2_331, "%0000091b"), Attrs([]), + Int(1,1), Direct(Tid(1_303, "%00000517")))])), Blk(Tid(1_303, "%00000517"), + Attrs([Attr("address","0x8A4")]), Phis([]), +Defs([Def(Tid(1_307, "%0000051b"), Attrs([Attr("address","0x8A4"), +Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), +Def(Tid(1_315, "%00000523"), Attrs([Attr("address","0x8A8"), +Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), +Def(Tid(1_326, "%0000052e"), Attrs([Attr("address","0x8AC"), +Attr("insn","cbz x2, #0xc")]), Var("#70",Imm(1)), +EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_320, "%00000528"), + Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), + Var("#70",Imm(1)), Direct(Tid(777, "%00000309"))), +Goto(Tid(2_332, "%0000091c"), Attrs([]), Int(1,1), +Direct(Tid(1_329, "%00000531")))])), Blk(Tid(777, "%00000309"), + Attrs([Attr("address","0x8B8")]), Phis([]), Defs([]), +Jmps([Call(Tid(790, "%00000316"), Attrs([Attr("address","0x8B8"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_329, "%00000531"), Attrs([Attr("address","0x8B0")]), Phis([]), +Defs([Def(Tid(1_335, "%00000537"), Attrs([Attr("address","0x8B0"), +Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), +Jmps([Call(Tid(1_340, "%0000053c"), Attrs([Attr("address","0x8B4"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_289, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), -Attr("pure","()"), Attr("address","0x1050"), Attr("stub","()")]), "strlen", - Args([Arg(Tid(3_051, "%00000beb"), Attrs([Attr("nonnull","()"), +Attr("pure","()"), Attr("address","0x770"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_364, "%0000093c"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), -Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("RDI",Imm(64)), -In()), Arg(Tid(3_052, "%00000bec"), +Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), +In()), Arg(Tid(2_365, "%0000093d"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), -Var("RAX",Imm(64)), Out())]), Blks([Blk(Tid(1_568, "@strlen"), - Attrs([Attr("address","0x1050")]), Phis([]), Defs([]), -Jmps([Call(Tid(2_503, "%000009c7"), Attrs([Attr("address","0x1050"), -Attr("insn","jmpq *0x2fba(%rip)")]), Int(1,1), -(Direct(Tid(2_501, "@strlen:external")),Direct(Tid(2_505, "%000009c9"))))])), -Blk(Tid(2_505, "%000009c9"), Attrs([Attr("address","0x1056")]), Phis([]), -Defs([Def(Tid(2_514, "%000009d2"), Attrs([Attr("address","0x1056"), -Attr("insn","pushq $0x2")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_519, "%000009d7"), - Attrs([Attr("address","0x1056"), Attr("insn","pushq $0x2")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(2,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_523, "%000009db"), Attrs([Attr("address","0x105B"), -Attr("insn","jmp -0x40")]), Int(1,1), -(Direct(Tid(2_879, "@free@plt-0x10")),))]))])), -Sub(Tid(824, "@__libc_start_main"), - Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), -Attr("synthetic","()"), Attr("stub","()")]), "__libc_start_main", - Args([Arg(Tid(3_053, "%00000bed"), - Attrs([Attr("c.layout","**[ : 64]"), -Attr("c.data","Top:u64 ptr ptr"), -Attr("c.type","signed (*)(signed , char** , char** );*")]), - Var("__libc_start_main_main",Imm(64)), Var("RDI",Imm(64)), In()), -Arg(Tid(3_054, "%00000bee"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("RSI",Imm(64))), In()), -Arg(Tid(3_055, "%00000bef"), Attrs([Attr("c.layout","**[char : 8]"), -Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), - Var("__libc_start_main_arg3",Imm(64)), Var("RDX",Imm(64)), Both()), -Arg(Tid(3_056, "%00000bf0"), Attrs([Attr("c.layout","*[ : 8]"), -Attr("c.data","{} ptr"), Attr("c.type","void*")]), - Var("__libc_start_main_auxv",Imm(64)), Var("RCX",Imm(64)), Both()), -Arg(Tid(3_057, "%00000bf1"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("__libc_start_main_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), -Out())]), Blks([])), Sub(Tid(829, "@intrinsic:hlt"), - Attrs([Attr("intrinsic","()"), Attr("synthetic","()"), Attr("stub","()")]), - "intrinsic:hlt", Args([]), Blks([])), Sub(Tid(2_451, "@free:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "free:external", Args([Arg(Tid(3_058, "%00000bf2"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("free:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_476, "@puts:external"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("synthetic","()"), Attr("stub","()")]), "puts:external", - Args([Arg(Tid(3_059, "%00000bf3"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("puts:external_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([])), Sub(Tid(2_501, "@strlen:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "strlen:external", Args([Arg(Tid(3_060, "%00000bf4"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("strlen:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_526, "@memset:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "memset:external", Args([Arg(Tid(3_061, "%00000bf5"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("memset:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_551, "@memcpy:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "memcpy:external", Args([Arg(Tid(3_062, "%00000bf6"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("memcpy:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_576, "@malloc:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "malloc:external", Args([Arg(Tid(3_063, "%00000bf7"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("malloc:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_860, "@__cxa_finalize:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "__cxa_finalize:external", - Args([Arg(Tid(3_064, "%00000bf8"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("__cxa_finalize:external_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), -Out())]), -Blks([]))]))) \ No newline at end of file +Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_022, "@strlen"), + Attrs([Attr("address","0x770")]), Phis([]), +Defs([Def(Tid(1_669, "%00000685"), Attrs([Attr("address","0x770"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_677, "%0000068d"), Attrs([Attr("address","0x774"), +Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_684, "%00000694"), Attrs([Attr("address","0x778"), +Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_689, "%00000699"), + Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.bir b/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.bir index 831e29427..e1fe07e4d 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.bir @@ -1,555 +1,359 @@ -00000bd1: program -00000b31: sub __cxa_finalize(__cxa_finalize_result) -00000bd2: __cxa_finalize_result :: out u32 = low:32[RAX] - -0000086a: -00000b2e: call @__cxa_finalize:external with noreturn - -00000b32: sub __do_global_dtors_aux(__do_global_dtors_aux_result) -00000bd3: __do_global_dtors_aux_result :: out u32 = low:32[RAX] - -0000050d: -00000525: #12582884 := mem[0x4050] -00000529: CF := mem[0x4050] < 0 -0000052f: OF := high:1[mem[0x4050] & (mem[0x4050] ^ #12582884)] -00000534: AF := 0x10 = (0x10 & (#12582884 ^ mem[0x4050])) -00000539: PF := - ~low:1[let $0 = #12582884 >> 4 ^ #12582884 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -0000053d: SF := high:1[#12582884] -00000541: ZF := 0 = #12582884 -00000548: when ~ZF goto %00000545 -00000bc9: goto %000007bd - -00000545: -00000556: #12582882 := mem[RSP, el]:u64 -0000055a: RSP := RSP + 8 -0000055d: call #12582882 with noreturn - -000007bd: -000007c9: #12582870 := RBP -000007cd: RSP := RSP - 8 -000007d3: mem := mem with [RSP, el]:u64 <- #12582870 -000007eb: #12582869 := mem[0x3FE0, el]:u64 -000007ef: CF := mem[0x3FE0, el]:u64 < 0 -000007f5: OF := high:1[mem[0x3FE0, el]:u64 & - (mem[0x3FE0, el]:u64 ^ #12582869)] -000007fa: AF := 0x10 = (0x10 & (#12582869 ^ mem[0x3FE0, el]:u64)) -000007ff: PF := - ~low:1[let $0 = #12582869 >> 4 ^ #12582869 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000803: SF := high:1[#12582869] -00000807: ZF := 0 = #12582869 -0000080f: RBP := RSP -00000816: when ZF goto %00000813 -00000bca: goto %0000085c - -0000085c: -00000862: RDI := mem[0x4038, el]:u64 -0000086e: RSP := RSP - 8 -00000873: mem := mem with [RSP, el]:u64 <- 0x1167 -00000875: call @__cxa_finalize with return %00000813 - -00000813: -00000822: RSP := RSP - 8 -00000827: mem := mem with [RSP, el]:u64 <- 0x116C -00000829: call @deregister_tm_clones with return %0000082b - -0000082b: -00000831: mem := mem with [0x4050] <- 1 -0000083d: RBP := mem[RSP, el]:u64 -00000841: RSP := RSP + 8 -0000084e: #12582867 := mem[RSP, el]:u64 -00000852: RSP := RSP + 8 -00000855: call #12582867 with noreturn - -00000b35: sub _fini(_fini_result) -00000bd4: _fini_result :: out u32 = low:32[RAX] - -00000015: -00000038: #12582911 := RSP -0000003c: RSP := RSP - 8 -00000040: CF := #12582911 < 8 -00000046: OF := high:1[(#12582911 ^ 8) & (#12582911 ^ RSP)] -0000004b: AF := 0x10 = (0x10 & (RSP ^ #12582911 ^ 8)) -00000050: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000054: SF := high:1[RSP] -00000058: ZF := 0 = RSP -00000075: #12582908 := RSP -00000079: RSP := RSP + 8 -0000007e: CF := RSP < #12582908 -00000086: OF := ~high:1[#12582908] & (high:1[#12582908] | high:1[RSP]) & - ~(high:1[#12582908] & high:1[RSP]) -0000008b: AF := 0x10 = (0x10 & (RSP ^ #12582908 ^ 8)) -00000090: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000094: SF := high:1[RSP] -00000098: ZF := 0 = RSP -000000a5: #12582905 := mem[RSP, el]:u64 -000000a9: RSP := RSP + 8 -000000ac: call #12582905 with noreturn - -00000b36: sub _init(_init_result) -00000bd5: _init_result :: out u32 = low:32[RAX] - -00000a41: -00000a59: #12582855 := RSP -00000a5d: RSP := RSP - 8 -00000a61: CF := #12582855 < 8 -00000a67: OF := high:1[(#12582855 ^ 8) & (#12582855 ^ RSP)] -00000a6c: AF := 0x10 = (0x10 & (RSP ^ #12582855 ^ 8)) -00000a71: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000a75: SF := high:1[RSP] -00000a79: ZF := 0 = RSP -00000a81: RAX := mem[0x3FD0, el]:u64 -00000a93: #12582852 := RAX -00000a96: OF := 0 -00000a99: CF := 0 -00000a9c: AF := unknown[bits]:u1 -00000aa1: PF := - ~low:1[let $0 = #12582852 >> 4 ^ #12582852 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000aa5: SF := high:1[#12582852] -00000aa9: ZF := 0 = #12582852 -00000ab0: when ZF goto %00000aad -00000bcb: goto %00000b07 - -00000b07: -00000b13: #12582846 := RAX -00000b17: RSP := RSP - 8 -00000b1c: mem := mem with [RSP, el]:u64 <- 0x1012 -00000b1f: call #12582846 with return %00000aad - -00000aad: -00000ace: #12582850 := RSP -00000ad2: RSP := RSP + 8 -00000ad7: CF := RSP < #12582850 -00000adf: OF := ~high:1[#12582850] & (high:1[#12582850] | high:1[RSP]) & - ~(high:1[#12582850] & high:1[RSP]) -00000ae4: AF := 0x10 = (0x10 & (RSP ^ #12582850 ^ 8)) -00000ae9: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000aed: SF := high:1[RSP] -00000af1: ZF := 0 = RSP -00000afe: #12582847 := mem[RSP, el]:u64 -00000b02: RSP := RSP + 8 -00000b05: call #12582847 with noreturn - -00000b38: sub _start(_start_result) -00000bd6: _start_result :: out u32 = low:32[RAX] - -0000024a: -00000254: RBP := 0 -00000257: AF := unknown[bits]:u1 -0000025a: ZF := 1 -0000025d: PF := 1 -00000260: OF := 0 -00000263: CF := 0 -00000266: SF := 0 -0000026e: R9 := RDX -0000027a: RSI := mem[RSP, el]:u64 -0000027e: RSP := RSP + 8 -00000286: RDX := RSP -00000298: RSP := RSP & 0xFFFFFFFFFFFFFFF0 -0000029b: OF := 0 -0000029e: CF := 0 -000002a1: AF := unknown[bits]:u1 -000002a6: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000002aa: SF := high:1[RSP] -000002ae: ZF := 0 = RSP -000002bc: #12582903 := RAX -000002c0: RSP := RSP - 8 -000002c6: mem := mem with [RSP, el]:u64 <- #12582903 -000002d4: #12582902 := RSP -000002d8: RSP := RSP - 8 -000002de: mem := mem with [RSP, el]:u64 <- #12582902 -000002ea: R8 := 0 -000002ed: AF := unknown[bits]:u1 -000002f0: ZF := 1 -000002f3: PF := 1 -000002f6: OF := 0 -000002f9: CF := 0 -000002fc: SF := 0 -00000308: RCX := 0 -0000030b: AF := unknown[bits]:u1 -0000030e: ZF := 1 -00000311: PF := 1 -00000314: OF := 0 -00000317: CF := 0 -0000031a: SF := 0 -00000320: RDI := 0x1190 -0000032e: #12582901 := mem[0x3FC0, el]:u64 -00000332: RSP := RSP - 8 -00000337: mem := mem with [RSP, el]:u64 <- 0x10C1 -0000033a: call @__libc_start_main with return %0000033c - -0000033c: -0000033f: call @intrinsic:hlt with return %00000341 - -00000341: -00000bcc: call @deregister_tm_clones with noreturn - -00000b3a: sub deregister_tm_clones(deregister_tm_clones_result) -00000bd7: deregister_tm_clones_result :: out u32 = low:32[RAX] - -0000034b: -0000034f: RDI := 0x4050 -00000355: RAX := 0x4050 -00000372: #12582900 := RAX - RDI -00000377: CF := RAX < RDI -0000037e: OF := high:1[(RAX ^ RDI) & (RAX ^ #12582900)] -00000384: AF := 0x10 = (0x10 & (#12582900 ^ RAX ^ RDI)) -00000389: PF := - ~low:1[let $0 = #12582900 >> 4 ^ #12582900 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -0000038d: SF := high:1[#12582900] -00000391: ZF := 0 = #12582900 -00000398: when ZF goto %00000395 -00000bcd: goto %000008ba - -000008ba: -000008c0: RAX := mem[0x3FC8, el]:u64 -000008d2: #12582864 := RAX -000008d5: OF := 0 -000008d8: CF := 0 -000008db: AF := unknown[bits]:u1 -000008e0: PF := - ~low:1[let $0 = #12582864 >> 4 ^ #12582864 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000008e4: SF := high:1[#12582864] -000008e8: ZF := 0 = #12582864 -000008ee: when ZF goto %00000395 -00000bce: goto %000008f2 - -00000395: -000003a6: #12582898 := mem[RSP, el]:u64 -000003aa: RSP := RSP + 8 -000003ad: call #12582898 with noreturn - -000008f2: -000008f6: call RAX with noreturn - -00000b3d: sub frame_dummy(frame_dummy_result) -00000bd8: frame_dummy_result :: out u32 = low:32[RAX] - -00000564: -00000568: call @register_tm_clones with noreturn - -00000b3e: sub free(free_ptr) -00000bd9: free_ptr :: in out u64 = RDI - -0000072e: -00000995: call @free:external with return %00000997 - -00000997: -000009a0: RSP := RSP - 8 -000009a5: mem := mem with [RSP, el]:u64 <- 0 -000009a9: call @free@plt-0x10 with noreturn - -00000b3f: sub free@plt-0x10(free@plt-0x10_result) -00000bda: free@plt-0x10_result :: out u32 = low:32[RAX] - -0000096f: -0000097b: #12582862 := mem[0x3FF0, el]:u64 -0000097f: RSP := RSP - 8 -00000985: mem := mem with [RSP, el]:u64 <- #12582862 -0000098b: call mem[0x3FF8, el]:u64 with noreturn - -00000b40: sub main(main_argc, main_argv, main_result) -00000bdb: main_argc :: in u32 = low:32[RDI] -00000bdc: main_argv :: in out u64 = RSI -00000bdd: main_result :: out u32 = low:32[RAX] - -0000056f: -0000057b: #12582881 := RBP -0000057f: RSP := RSP - 8 -00000585: mem := mem with [RSP, el]:u64 <- #12582881 -0000058d: RBP := RSP -000005a7: #12582880 := RSP -000005ab: RSP := RSP - 0x20 -000005af: CF := #12582880 < 0x20 -000005b5: OF := high:1[(#12582880 ^ 0x20) & (#12582880 ^ RSP)] -000005ba: AF := 0x10 = (0x10 & (RSP ^ #12582880 ^ 0x20)) -000005bf: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000005c3: SF := high:1[RSP] -000005c7: ZF := 0 = RSP -000005d1: mem := mem with [RBP - 8, el]:u64 <- 0 -000005db: mem := mem with [RBP - 0x10, el]:u64 <- 0 -000005e1: RDI := 0xB -000005ed: RSP := RSP - 8 -000005f2: mem := mem with [RSP, el]:u64 <- 0x11B2 -000005f4: call @malloc with return %000005f6 - -000005f6: -000005fe: mem := mem with [0x4058, el]:u64 <- RAX -00000606: RAX := mem[0x4058, el]:u64 -00000612: mem := mem with [RBP - 0x20, el]:u64 <- RAX -00000618: RDI := 0x4041 -00000624: RSP := RSP - 8 -00000629: mem := mem with [RSP, el]:u64 <- 0x11D0 -0000062b: call @strlen with return %0000062d - -0000062d: -00000635: RDI := mem[RBP - 0x20, el]:u64 -0000063d: RDX := RAX -00000643: RSI := 0x4041 -0000064f: RSP := RSP - 8 -00000654: mem := mem with [RSP, el]:u64 <- 0x11E3 -00000656: call @memcpy with return %00000658 - -00000658: -0000065e: RDI := mem[0x4058, el]:u64 -0000066a: RSP := RSP - 8 -0000066f: mem := mem with [RSP, el]:u64 <- 0x11EF -00000671: call @puts with return %00000673 - -00000673: -00000679: RAX := mem[0x4058, el]:u64 -00000696: #12582877 := RAX -0000069a: RAX := RAX + 4 -0000069f: CF := RAX < #12582877 -000006a7: OF := ~high:1[#12582877] & (high:1[#12582877] | high:1[RAX]) & - ~(high:1[#12582877] & high:1[RAX]) -000006ac: AF := 0x10 = (0x10 & (RAX ^ #12582877 ^ 4)) -000006b1: PF := - ~low:1[let $0 = RAX >> 4 ^ RAX in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000006b5: SF := high:1[RAX] -000006b9: ZF := 0 = RAX -000006c5: mem := mem with [RBP - 8, el]:u64 <- RAX -000006cd: RAX := mem[0x4058, el]:u64 -000006d9: mem := mem with [RBP - 0x18, el]:u64 <- RAX -000006e1: RDI := mem[0x4058, el]:u64 -000006ec: RSP := RSP - 8 -000006f1: mem := mem with [RSP, el]:u64 <- 0x1215 -000006f3: call @strlen with return %000006f5 - -000006f5: -000006fd: RDI := mem[RBP - 0x18, el]:u64 -00000705: RDX := RAX -0000070b: RSI := 1 -00000717: RSP := RSP - 8 -0000071c: mem := mem with [RSP, el]:u64 <- 0x1226 -0000071e: call @memset with return %00000720 - -00000720: -00000726: RDI := mem[0x4058, el]:u64 -00000732: RSP := RSP - 8 -00000737: mem := mem with [RSP, el]:u64 <- 0x1232 -00000739: call @free with return %0000073b - -0000073b: -00000745: RAX := 0 -00000748: AF := unknown[bits]:u1 -0000074b: ZF := 1 -0000074e: PF := 1 -00000751: OF := 0 -00000754: CF := 0 -00000757: SF := 0 -00000774: #12582874 := RSP -00000778: RSP := RSP + 0x20 -0000077d: CF := RSP < #12582874 -00000785: OF := ~high:1[#12582874] & (high:1[#12582874] | high:1[RSP]) & - ~(high:1[#12582874] & high:1[RSP]) -0000078a: AF := 0x10 = (0x10 & (RSP ^ #12582874 ^ 0x20)) -0000078f: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000793: SF := high:1[RSP] -00000797: ZF := 0 = RSP -000007a3: RBP := mem[RSP, el]:u64 -000007a7: RSP := RSP + 8 -000007b4: #12582871 := mem[RSP, el]:u64 -000007b8: RSP := RSP + 8 -000007bb: call #12582871 with noreturn - -00000b41: sub malloc(malloc_size, malloc_result) -00000bde: malloc_size :: in u64 = RDI -00000bdf: malloc_result :: out u64 = RAX - -000005e9: -00000a12: call @malloc:external with return %00000a14 - -00000a14: -00000a1d: RSP := RSP - 8 -00000a22: mem := mem with [RSP, el]:u64 <- 5 -00000a26: call @free@plt-0x10 with noreturn - -00000b42: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) -00000be0: memcpy_dst :: in out u64 = RDI -00000be1: memcpy_src :: in out u64 = RSI -00000be2: memcpy_n :: in u64 = RDX -00000be3: memcpy_result :: out u64 = RAX - -0000064b: -000009f9: call @memcpy:external with return %000009fb - -000009fb: -00000a04: RSP := RSP - 8 -00000a09: mem := mem with [RSP, el]:u64 <- 4 -00000a0d: call @free@plt-0x10 with noreturn - -00000b43: sub memset(memset_buf, memset_c, memset_n, memset_result) -00000be4: memset_buf :: in out u64 = RDI -00000be5: memset_c :: in u32 = low:32[RSI] -00000be6: memset_n :: in u64 = RDX -00000be7: memset_result :: out u64 = RAX - -00000713: -000009e0: call @memset:external with return %000009e2 - -000009e2: -000009eb: RSP := RSP - 8 -000009f0: mem := mem with [RSP, el]:u64 <- 3 -000009f4: call @free@plt-0x10 with noreturn - -00000b44: sub puts(puts_s, puts_result) -00000be8: puts_s :: in u64 = RDI -00000be9: puts_result :: out u32 = low:32[RAX] - -00000666: -000009ae: call @puts:external with return %000009b0 - -000009b0: -000009b9: RSP := RSP - 8 -000009be: mem := mem with [RSP, el]:u64 <- 1 -000009c2: call @free@plt-0x10 with noreturn - -00000b45: sub register_tm_clones(register_tm_clones_result) -00000bea: register_tm_clones_result :: out u32 = low:32[RAX] - -000003b4: -000003b8: RDI := 0x4050 -000003be: RSI := 0x4050 -000003de: #12582897 := RSI -000003e2: #12582896 := RDI -000003e7: RSI := RSI - RDI -000003ec: CF := #12582897 < #12582896 -000003f3: OF := high:1[(#12582897 ^ #12582896) & (#12582897 ^ RSI)] -000003f9: AF := 0x10 = (0x10 & (RSI ^ #12582897 ^ #12582896)) -000003fe: PF := - ~low:1[let $0 = RSI >> 4 ^ RSI in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000402: SF := high:1[RSI] -00000406: ZF := 0 = RSI -0000040e: RAX := RSI -00000423: #12582894 := RSI -00000427: RSI := RSI >> 0x3F -0000042b: CF := high:1[#12582894 << 1] -0000042f: SF := high:1[RSI] -00000433: ZF := 0 = RSI -00000438: PF := - ~low:1[let $0 = RSI >> 4 ^ RSI in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -0000043b: AF := unknown[bits]:u1 -0000043e: OF := unknown[bits]:u1 -00000453: #12582892 := RAX -00000457: RAX := RAX ~>> 3 -0000045b: CF := high:1[#12582892 << 0x3D] -0000045f: SF := high:1[RAX] -00000463: ZF := 0 = RAX -00000468: PF := - ~low:1[let $0 = RAX >> 4 ^ RAX in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -0000046b: AF := unknown[bits]:u1 -0000046e: OF := unknown[bits]:u1 -00000490: #12582890 := RSI -00000494: #12582889 := RAX -00000499: RSI := RSI + #12582889 -0000049e: CF := RSI < #12582890 -000004a7: OF := high:1[#12582890] = high:1[#12582889] & - (high:1[#12582890] | high:1[RSI]) & - ~(high:1[#12582890] & high:1[RSI]) -000004ad: AF := 0x10 = (0x10 & (RSI ^ #12582890 ^ #12582889)) -000004b2: PF := - ~low:1[let $0 = RSI >> 4 ^ RSI in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000004b6: SF := high:1[RSI] -000004ba: ZF := 0 = RSI -000004cf: #12582887 := RSI -000004d3: RSI := RSI ~>> 1 -000004d7: CF := high:1[#12582887 << 0x3F] -000004db: SF := high:1[RSI] -000004df: ZF := 0 = RSI -000004e4: PF := - ~low:1[let $0 = RSI >> 4 ^ RSI in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000004e7: AF := unknown[bits]:u1 -000004ea: OF := 0 -000004f1: when ZF goto %000004ee -00000bcf: goto %00000877 - -00000877: -0000087d: RAX := mem[0x3FD8, el]:u64 -0000088f: #12582866 := RAX -00000892: OF := 0 -00000895: CF := 0 -00000898: AF := unknown[bits]:u1 -0000089d: PF := - ~low:1[let $0 = #12582866 >> 4 ^ #12582866 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000008a1: SF := high:1[#12582866] -000008a5: ZF := 0 = #12582866 -000008ab: when ZF goto %000004ee -00000bd0: goto %000008af - -000004ee: -000004ff: #12582885 := mem[RSP, el]:u64 -00000503: RSP := RSP + 8 -00000506: call #12582885 with noreturn - -000008af: -000008b3: call RAX with noreturn - -00000b48: sub strlen(strlen_s, strlen_result) -00000beb: strlen_s :: in u64 = RDI -00000bec: strlen_result :: out u64 = RAX - -00000620: -000009c7: call @strlen:external with return %000009c9 - -000009c9: -000009d2: RSP := RSP - 8 -000009d7: mem := mem with [RSP, el]:u64 <- 2 -000009db: call @free@plt-0x10 with noreturn - -00000338: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) -00000bed: __libc_start_main_main :: in u64 = RDI -00000bee: __libc_start_main_arg2 :: in u32 = low:32[RSI] -00000bef: __libc_start_main_arg3 :: in out u64 = RDX -00000bf0: __libc_start_main_auxv :: in out u64 = RCX -00000bf1: __libc_start_main_result :: out u32 = low:32[RAX] - -0000033d: sub intrinsic:hlt() - - -00000993: sub free:external(free:external_result) -00000bf2: free:external_result :: out u32 = low:32[RAX] - -000009ac: sub puts:external(puts:external_result) -00000bf3: puts:external_result :: out u32 = low:32[RAX] - -000009c5: sub strlen:external(strlen:external_result) -00000bf4: strlen:external_result :: out u32 = low:32[RAX] - -000009de: sub memset:external(memset:external_result) -00000bf5: memset:external_result :: out u32 = low:32[RAX] - -000009f7: sub memcpy:external(memcpy:external_result) -00000bf6: memcpy:external_result :: out u32 = low:32[RAX] - -00000a10: sub malloc:external(malloc:external_result) -00000bf7: malloc:external_result :: out u32 = low:32[RAX] - -00000b2c: sub __cxa_finalize:external(__cxa_finalize:external_result) -00000bf8: __cxa_finalize:external_result :: out u32 = low:32[RAX] +0000091d: program +000008d6: sub __cxa_finalize(__cxa_finalize_result) +0000091e: __cxa_finalize_result :: out u32 = low:32[R0] + +00000513: +000006b7: R16 := 0x20000 +000006bf: R17 := mem[R16 + 0x18, el]:u64 +000006c6: R16 := R16 + 0x18 +000006cb: call R17 with noreturn + +000008d7: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +0000091f: __do_global_dtors_aux_result :: out u32 = low:32[R0] + +0000031a: +00000321: #34 := R31 - 0x20 +00000326: mem := mem with [#34, el]:u64 <- R29 +0000032b: mem := mem with [#34 + 8, el]:u64 <- R30 +0000032f: R31 := #34 +00000336: R29 := R31 +0000033e: mem := mem with [R31 + 0x10, el]:u64 <- R19 +00000344: R19 := 0x20000 +0000034d: R0 := pad:32[mem[R19 + 0x70]] +00000359: #36 := ~~0:0[R0] +00000353: when #36 goto %00000351 +00000913: goto %000004d1 + +000004d1: +000004d5: R0 := 0x1F000 +000004dd: R0 := mem[R0 + 0xFC8, el]:u64 +000004e9: #67 := R0 = 0 +000004e3: when #67 goto %000004e1 +00000914: goto %00000501 + +00000501: +00000505: R0 := 0x20000 +0000050d: R0 := mem[R0 + 0x58, el]:u64 +00000512: R30 := 0x8F0 +00000515: call @__cxa_finalize with return %000004e1 + +000004e1: +000004ee: R30 := 0x8F4 +000004f0: call @deregister_tm_clones with return %000004f2 + +000004f2: +000004f7: R0 := 1 +000004ff: mem := mem with [R19 + 0x70] <- low:8[31:0[R0]] +00000915: goto %00000351 + +00000351: +00000361: R19 := mem[R31 + 0x10, el]:u64 +0000036b: R29 := mem[R31, el]:u64 +0000036f: R30 := mem[R31 + 8, el]:u64 +00000372: R31 := R31 + 0x20 +00000377: call R30 with noreturn + +000008db: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +00000920: __libc_start_main_main :: in u64 = R0 +00000921: __libc_start_main_arg2 :: in u32 = low:32[R1] +00000922: __libc_start_main_arg3 :: in out u64 = R2 +00000923: __libc_start_main_auxv :: in out u64 = R3 +00000924: __libc_start_main_result :: out u32 = low:32[R0] + +0000025e: +0000069e: R16 := 0x20000 +000006a6: R17 := mem[R16 + 0x10, el]:u64 +000006ad: R16 := R16 + 0x10 +000006b2: call R17 with noreturn + +000008dc: sub _fini(_fini_result) +00000925: _fini_result :: out u32 = low:32[R0] + +00000020: +00000029: #3 := R31 - 0x10 +0000002e: mem := mem with [#3, el]:u64 <- R29 +00000033: mem := mem with [#3 + 8, el]:u64 <- R30 +00000037: R31 := #3 +0000003e: R29 := R31 +00000048: R29 := mem[R31, el]:u64 +0000004c: R30 := mem[R31 + 8, el]:u64 +0000004f: R31 := R31 + 0x10 +00000054: call R30 with noreturn + +000008dd: sub _init(_init_result) +00000926: _init_result :: out u32 = low:32[R0] + +000007f3: +000007fc: #98 := R31 - 0x10 +00000801: mem := mem with [#98, el]:u64 <- R29 +00000806: mem := mem with [#98 + 8, el]:u64 <- R30 +0000080a: R31 := #98 +00000811: R29 := R31 +00000816: R30 := 0x738 +00000818: call @call_weak_fn with return %0000081a + +0000081a: +00000822: R29 := mem[R31, el]:u64 +00000826: R30 := mem[R31 + 8, el]:u64 +00000829: R31 := R31 + 0x10 +0000082e: call R30 with noreturn + +000008de: sub _start(_start_result) +00000927: _start_result :: out u32 = low:32[R0] + +00000214: +0000021a: R29 := 0 +00000220: R30 := 0 +00000228: R5 := R0 +00000230: R1 := mem[R31, el]:u64 +00000237: R2 := R31 + 8 +0000023e: R6 := R31 +00000244: R0 := 0x1F000 +0000024c: R0 := mem[R0 + 0xFD8, el]:u64 +00000252: R3 := 0 +00000258: R4 := 0 +0000025d: R30 := 0x830 +00000260: call @__libc_start_main with return %00000262 + +00000262: +00000265: R30 := 0x834 +00000268: call @abort with return %00000916 + +00000916: +00000917: call @call_weak_fn with noreturn + +000008e1: sub abort() + + +00000266: +0000071b: R16 := 0x20000 +00000723: R17 := mem[R16 + 0x38, el]:u64 +0000072a: R16 := R16 + 0x38 +0000072f: call R17 with noreturn + +000008e2: sub call_weak_fn(call_weak_fn_result) +00000928: call_weak_fn_result :: out u32 = low:32[R0] + +0000026a: +0000026e: R0 := 0x1F000 +00000276: R0 := mem[R0 + 0xFD0, el]:u64 +00000282: #12 := R0 = 0 +0000027c: when #12 goto %0000027a +00000918: goto %00000565 + +0000027a: +00000287: call R30 with noreturn + +00000565: +00000568: goto @__gmon_start__ + +00000566: +00000702: R16 := 0x20000 +0000070a: R17 := mem[R16 + 0x30, el]:u64 +00000711: R16 := R16 + 0x30 +00000716: call R17 with noreturn + +000008e4: sub deregister_tm_clones(deregister_tm_clones_result) +00000929: deregister_tm_clones_result :: out u32 = low:32[R0] + +0000028d: +00000291: R0 := 0x20000 +00000298: R0 := R0 + 0x70 +0000029e: R1 := 0x20000 +000002a5: R1 := R1 + 0x70 +000002ad: #16 := 1 + ~R0 + R1 +000002b1: NF := 63:63[#16] +000002b4: VF := 63:63[R1] & 63:63[~R0] & ~63:63[#16] | ~63:63[R1] & + ~63:63[~R0] & 63:63[#16] +000002b7: ZF := #16 = 0 +000002ba: CF := 63:63[R1] & 63:63[~R0] | 63:63[~R0] & ~63:63[#16] | 63:63[R1] + & ~63:63[#16] +000002c8: #21 := ZF +000002c2: when #21 goto %000002c0 +00000919: goto %0000053e + +0000053e: +00000542: R1 := 0x1F000 +0000054a: R1 := mem[R1 + 0xFC0, el]:u64 +00000555: #75 := R1 = 0 +0000054f: when #75 goto %000002c0 +0000091a: goto %00000558 + +000002c0: +000002cd: call R30 with noreturn + +00000558: +0000055e: R16 := R1 +00000563: call R16 with noreturn + +000008e7: sub frame_dummy(frame_dummy_result) +0000092a: frame_dummy_result :: out u32 = low:32[R0] + +0000037d: +0000037f: call @register_tm_clones with noreturn + +000008e8: sub free(free_ptr) +0000092b: free_ptr :: in out u64 = R0 + +000004ab: +0000074d: R16 := 0x20000 +00000755: R17 := mem[R16 + 0x48, el]:u64 +0000075c: R16 := R16 + 0x48 +00000761: call R17 with noreturn + +000008e9: sub main(main_argc, main_argv, main_result) +0000092c: main_argc :: in u32 = low:32[R0] +0000092d: main_argv :: in out u64 = R1 +0000092e: main_result :: out u32 = low:32[R0] + +00000381: +00000386: R31 := R31 - 0x40 +0000038e: #42 := R31 + 0x30 +00000393: mem := mem with [#42, el]:u64 <- R29 +00000398: mem := mem with [#42 + 8, el]:u64 <- R30 +0000039f: R29 := R31 + 0x30 +000003a7: mem := mem with [R29 - 8, el]:u64 <- 0 +000003af: mem := mem with [R29 - 0x10, el]:u64 <- 0 +000003b5: R0 := 0xB +000003ba: R30 := 0x930 +000003bd: call @malloc with return %000003bf + +000003bf: +000003c3: R8 := 0x20000 +000003cb: mem := mem with [R31 + 0x18, el]:u64 <- R8 +000003d3: mem := mem with [R8 + 0x78, el]:u64 <- R0 +000003db: R8 := mem[R8 + 0x78, el]:u64 +000003e3: mem := mem with [R31 + 8, el]:u64 <- R8 +000003e9: R0 := 0x20000 +000003f0: R0 := R0 + 0x61 +000003f8: mem := mem with [R31, el]:u64 <- R0 +000003fd: R30 := 0x954 +00000400: call @strlen with return %00000402 + +00000402: +00000408: R1 := mem[R31, el]:u64 +00000410: R2 := R0 +00000418: R0 := mem[R31 + 8, el]:u64 +0000041d: R30 := 0x964 +00000420: call @memcpy with return %00000422 + +00000422: +00000428: R8 := mem[R31 + 0x18, el]:u64 +00000430: R0 := mem[R8 + 0x78, el]:u64 +00000435: R30 := 0x970 +00000438: call @puts with return %0000043a + +0000043a: +00000440: R8 := mem[R31 + 0x18, el]:u64 +00000448: R9 := mem[R8 + 0x78, el]:u64 +0000044f: R9 := R9 + 4 +00000457: mem := mem with [R29 - 8, el]:u64 <- R9 +0000045f: R9 := mem[R8 + 0x78, el]:u64 +00000467: mem := mem with [R31 + 0x10, el]:u64 <- R9 +0000046f: R0 := mem[R8 + 0x78, el]:u64 +00000474: R30 := 0x990 +00000476: call @strlen with return %00000478 + +00000478: +0000047e: R2 := R0 +00000486: R0 := mem[R31 + 0x10, el]:u64 +0000048d: R1 := 1 +00000492: R30 := 0x9A0 +00000495: call @memset with return %00000497 + +00000497: +0000049d: R8 := mem[R31 + 0x18, el]:u64 +000004a5: R0 := mem[R8 + 0x78, el]:u64 +000004aa: R30 := 0x9AC +000004ad: call @free with return %000004af + +000004af: +000004b6: R0 := 0 +000004bf: R29 := mem[R31 + 0x30, el]:u64 +000004c3: R30 := mem[R31 + 0x38, el]:u64 +000004ca: R31 := R31 + 0x40 +000004cf: call R30 with noreturn + +000008ea: sub malloc(malloc_size, malloc_result) +0000092f: malloc_size :: in u64 = R0 +00000930: malloc_result :: out u64 = R0 + +000003bb: +000006d0: R16 := 0x20000 +000006d8: R17 := mem[R16 + 0x20, el]:u64 +000006df: R16 := R16 + 0x20 +000006e4: call R17 with noreturn + +000008eb: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +00000931: memcpy_dst :: in out u64 = R0 +00000932: memcpy_src :: in out u64 = R1 +00000933: memcpy_n :: in u64 = R2 +00000934: memcpy_result :: out u64 = R0 + +0000041e: +0000066c: R16 := 0x20000 +00000674: R17 := mem[R16, el]:u64 +0000067b: R16 := R16 +00000680: call R17 with noreturn + +000008ec: sub memset(memset_buf, memset_c, memset_n, memset_result) +00000935: memset_buf :: in out u64 = R0 +00000936: memset_c :: in u32 = low:32[R1] +00000937: memset_n :: in u64 = R2 +00000938: memset_result :: out u64 = R0 + +00000493: +000006e9: R16 := 0x20000 +000006f1: R17 := mem[R16 + 0x28, el]:u64 +000006f8: R16 := R16 + 0x28 +000006fd: call R17 with noreturn + +000008ed: sub puts(puts_s, puts_result) +00000939: puts_s :: in u64 = R0 +0000093a: puts_result :: out u32 = low:32[R0] + +00000436: +00000734: R16 := 0x20000 +0000073c: R17 := mem[R16 + 0x40, el]:u64 +00000743: R16 := R16 + 0x40 +00000748: call R17 with noreturn + +000008ee: sub register_tm_clones(register_tm_clones_result) +0000093b: register_tm_clones_result :: out u32 = low:32[R0] + +000002cf: +000002d3: R0 := 0x20000 +000002da: R0 := R0 + 0x70 +000002e0: R1 := 0x20000 +000002e7: R1 := R1 + 0x70 +000002ef: R1 := R1 - R0 +000002f6: R2 := R1 >> 0x3F +000002fe: R1 := R2 + (R1 ~>> 3) +00000305: R1 := R1 >> 1 +00000311: #30 := R1 = 0 +0000030b: when #30 goto %00000309 +0000091b: goto %00000517 + +00000517: +0000051b: R2 := 0x1F000 +00000523: R2 := mem[R2 + 0xFE0, el]:u64 +0000052e: #70 := R2 = 0 +00000528: when #70 goto %00000309 +0000091c: goto %00000531 + +00000309: +00000316: call R30 with noreturn + +00000531: +00000537: R16 := R2 +0000053c: call R16 with noreturn + +000008f1: sub strlen(strlen_s, strlen_result) +0000093c: strlen_s :: in u64 = R0 +0000093d: strlen_result :: out u64 = R0 + +000003fe: +00000685: R16 := 0x20000 +0000068d: R17 := mem[R16 + 8, el]:u64 +00000694: R16 := R16 + 8 +00000699: call R17 with noreturn diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.relf b/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.relf index 9e6a9a178..ff00bf9d2 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.relf +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.relf @@ -1,82 +1,145 @@ -Relocation section '.rela.dyn' at offset 0x600 contains 8 entries: +Relocation section '.rela.dyn' at offset 0x578 contains 8 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -0000000000003dd0 0000000000000008 R_X86_64_RELATIVE 1180 -0000000000003dd8 0000000000000008 R_X86_64_RELATIVE 1140 -0000000000004038 0000000000000008 R_X86_64_RELATIVE 4038 -0000000000003fc0 0000000200000006 R_X86_64_GLOB_DAT 0000000000000000 __libc_start_main@GLIBC_2.34 + 0 -0000000000003fc8 0000000300000006 R_X86_64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 -0000000000003fd0 0000000700000006 R_X86_64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 -0000000000003fd8 0000000a00000006 R_X86_64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -0000000000003fe0 0000000b00000006 R_X86_64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.2.5 + 0 +000000000001fdb8 0000000000000403 R_AARCH64_RELATIVE 910 +000000000001fdc0 0000000000000403 R_AARCH64_RELATIVE 8c0 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 914 +0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 +000000000001ffc0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 +000000000001ffc8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +000000000001ffd0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 +000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -Relocation section '.rela.plt' at offset 0x6c0 contains 6 entries: +Relocation section '.rela.plt' at offset 0x638 contains 10 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -0000000000004000 0000000100000007 R_X86_64_JUMP_SLOT 0000000000000000 free@GLIBC_2.2.5 + 0 -0000000000004008 0000000400000007 R_X86_64_JUMP_SLOT 0000000000000000 puts@GLIBC_2.2.5 + 0 -0000000000004010 0000000500000007 R_X86_64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.2.5 + 0 -0000000000004018 0000000600000007 R_X86_64_JUMP_SLOT 0000000000000000 memset@GLIBC_2.2.5 + 0 -0000000000004020 0000000800000007 R_X86_64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.14 + 0 -0000000000004028 0000000900000007 R_X86_64_JUMP_SLOT 0000000000000000 malloc@GLIBC_2.2.5 + 0 +0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 +0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 +0000000000020010 0000000500000402 R_AARCH64_JUMP_SLOT 0000000000000000 __libc_start_main@GLIBC_2.34 + 0 +0000000000020018 0000000700000402 R_AARCH64_JUMP_SLOT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +0000000000020020 0000000800000402 R_AARCH64_JUMP_SLOT 0000000000000000 malloc@GLIBC_2.17 + 0 +0000000000020028 0000000900000402 R_AARCH64_JUMP_SLOT 0000000000000000 memset@GLIBC_2.17 + 0 +0000000000020030 0000000a00000402 R_AARCH64_JUMP_SLOT 0000000000000000 __gmon_start__ + 0 +0000000000020038 0000000b00000402 R_AARCH64_JUMP_SLOT 0000000000000000 abort@GLIBC_2.17 + 0 +0000000000020040 0000000c00000402 R_AARCH64_JUMP_SLOT 0000000000000000 puts@GLIBC_2.17 + 0 +0000000000020048 0000000d00000402 R_AARCH64_JUMP_SLOT 0000000000000000 free@GLIBC_2.17 + 0 -Symbol table '.dynsym' contains 12 entries: +Symbol table '.dynsym' contains 15 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.2.5 (2) - 2: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) - 3: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.2.5 (2) - 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.2.5 (2) - 6: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.2.5 (2) - 7: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.14 (4) - 9: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.2.5 (2) - 10: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 11: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.2.5 (2) + 1: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) + 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) + 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) + 6: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 7: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 (2) + 8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 (2) + 9: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 (2) + 10: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 11: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 (2) + 12: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 (2) + 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) + 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable -Symbol table '.symtab' contains 44 entries: +Symbol table '.symtab' contains 100 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o - 2: 000000000000037c 32 OBJECT LOCAL DEFAULT 4 __abi_tag - 3: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 4: 00000000000010d0 0 FUNC LOCAL DEFAULT 15 deregister_tm_clones - 5: 0000000000001100 0 FUNC LOCAL DEFAULT 15 register_tm_clones - 6: 0000000000001140 0 FUNC LOCAL DEFAULT 15 __do_global_dtors_aux - 7: 0000000000004050 1 OBJECT LOCAL DEFAULT 26 completed.0 - 8: 0000000000003dd8 0 OBJECT LOCAL DEFAULT 21 __do_global_dtors_aux_fini_array_entry - 9: 0000000000001180 0 FUNC LOCAL DEFAULT 15 frame_dummy - 10: 0000000000003dd0 0 OBJECT LOCAL DEFAULT 20 __frame_dummy_init_array_entry - 11: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c - 12: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 13: 00000000000020d8 0 OBJECT LOCAL DEFAULT 19 __FRAME_END__ - 14: 0000000000000000 0 FILE LOCAL DEFAULT ABS - 15: 0000000000003de0 0 OBJECT LOCAL DEFAULT 22 _DYNAMIC - 16: 0000000000002004 0 NOTYPE LOCAL DEFAULT 18 __GNU_EH_FRAME_HDR - 17: 0000000000003fe8 0 OBJECT LOCAL DEFAULT 24 _GLOBAL_OFFSET_TABLE_ - 18: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.2.5 - 19: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 - 20: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 21: 0000000000004030 0 NOTYPE WEAK DEFAULT 25 data_start - 22: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.2.5 - 23: 000000000000404c 0 NOTYPE GLOBAL DEFAULT 25 _edata - 24: 000000000000123c 0 FUNC GLOBAL HIDDEN 16 _fini - 25: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.2.5 - 26: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.2.5 - 27: 0000000000004040 1 OBJECT GLOBAL DEFAULT 25 password - 28: 0000000000004030 0 NOTYPE GLOBAL DEFAULT 25 __data_start - 29: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 30: 0000000000004038 0 OBJECT GLOBAL HIDDEN 25 __dso_handle - 31: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.14 - 32: 0000000000002000 4 OBJECT GLOBAL DEFAULT 17 _IO_stdin_used - 33: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.2.5 - 34: 0000000000004060 0 NOTYPE GLOBAL DEFAULT 26 _end - 35: 00000000000010a0 34 FUNC GLOBAL DEFAULT 15 _start - 36: 0000000000004058 8 OBJECT GLOBAL DEFAULT 26 buf - 37: 0000000000004041 11 OBJECT GLOBAL DEFAULT 25 stext - 38: 000000000000404c 0 NOTYPE GLOBAL DEFAULT 26 __bss_start - 39: 0000000000001190 170 FUNC GLOBAL DEFAULT 15 main - 40: 0000000000004050 0 OBJECT GLOBAL HIDDEN 25 __TMC_END__ - 41: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 42: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.2.5 - 43: 0000000000001000 0 FUNC GLOBAL HIDDEN 12 _init + 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp + 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id + 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .hash + 5: 00000000000002e8 0 SECTION LOCAL DEFAULT 5 .gnu.hash + 6: 0000000000000308 0 SECTION LOCAL DEFAULT 6 .dynsym + 7: 0000000000000470 0 SECTION LOCAL DEFAULT 7 .dynstr + 8: 0000000000000524 0 SECTION LOCAL DEFAULT 8 .gnu.version + 9: 0000000000000548 0 SECTION LOCAL DEFAULT 9 .gnu.version_r + 10: 0000000000000578 0 SECTION LOCAL DEFAULT 10 .rela.dyn + 11: 0000000000000638 0 SECTION LOCAL DEFAULT 11 .rela.plt + 12: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 13: 0000000000000740 0 SECTION LOCAL DEFAULT 13 .plt + 14: 0000000000000800 0 SECTION LOCAL DEFAULT 14 .text + 15: 00000000000009bc 0 SECTION LOCAL DEFAULT 15 .fini + 16: 00000000000009d0 0 SECTION LOCAL DEFAULT 16 .rodata + 17: 00000000000009d4 0 SECTION LOCAL DEFAULT 17 .eh_frame_hdr + 18: 0000000000000a10 0 SECTION LOCAL DEFAULT 18 .eh_frame + 19: 000000000001fdb8 0 SECTION LOCAL DEFAULT 19 .init_array + 20: 000000000001fdc0 0 SECTION LOCAL DEFAULT 20 .fini_array + 21: 000000000001fdc8 0 SECTION LOCAL DEFAULT 21 .dynamic + 22: 000000000001ffb8 0 SECTION LOCAL DEFAULT 22 .got + 23: 000000000001ffe8 0 SECTION LOCAL DEFAULT 23 .got.plt + 24: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 25: 0000000000020070 0 SECTION LOCAL DEFAULT 25 .bss + 26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment + 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 28: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 29: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 30: 0000000000000800 0 NOTYPE LOCAL DEFAULT 14 $x + 31: 0000000000000a24 0 NOTYPE LOCAL DEFAULT 18 $d + 32: 00000000000009d0 0 NOTYPE LOCAL DEFAULT 16 $d + 33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 34: 0000000000000834 0 NOTYPE LOCAL DEFAULT 14 $x + 35: 0000000000000834 20 FUNC LOCAL DEFAULT 14 call_weak_fn + 36: 0000000000000728 0 NOTYPE LOCAL DEFAULT 12 $x + 37: 00000000000009bc 0 NOTYPE LOCAL DEFAULT 15 $x + 38: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 39: 0000000000000738 0 NOTYPE LOCAL DEFAULT 12 $x + 40: 00000000000009c8 0 NOTYPE LOCAL DEFAULT 15 $x + 41: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 42: 0000000000000850 0 NOTYPE LOCAL DEFAULT 14 $x + 43: 0000000000000850 0 FUNC LOCAL DEFAULT 14 deregister_tm_clones + 44: 0000000000000880 0 FUNC LOCAL DEFAULT 14 register_tm_clones + 45: 0000000000020058 0 NOTYPE LOCAL DEFAULT 24 $d + 46: 00000000000008c0 0 FUNC LOCAL DEFAULT 14 __do_global_dtors_aux + 47: 0000000000020070 1 OBJECT LOCAL DEFAULT 25 completed.0 + 48: 000000000001fdc0 0 NOTYPE LOCAL DEFAULT 20 $d + 49: 000000000001fdc0 0 OBJECT LOCAL DEFAULT 20 __do_global_dtors_aux_fini_array_entry + 50: 0000000000000910 0 FUNC LOCAL DEFAULT 14 frame_dummy + 51: 000000000001fdb8 0 NOTYPE LOCAL DEFAULT 19 $d + 52: 000000000001fdb8 0 OBJECT LOCAL DEFAULT 19 __frame_dummy_init_array_entry + 53: 0000000000000a38 0 NOTYPE LOCAL DEFAULT 18 $d + 54: 0000000000020070 0 NOTYPE LOCAL DEFAULT 25 $d + 55: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 56: 0000000000000914 0 NOTYPE LOCAL DEFAULT 14 $x.0 + 57: 0000000000020060 0 NOTYPE LOCAL DEFAULT 24 $d.1 + 58: 0000000000020078 0 NOTYPE LOCAL DEFAULT 25 $d.2 + 59: 000000000000001d 0 NOTYPE LOCAL DEFAULT 26 $d.3 + 60: 0000000000000a98 0 NOTYPE LOCAL DEFAULT 18 $d.4 + 61: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 62: 0000000000000ad4 0 NOTYPE LOCAL DEFAULT 18 $d + 63: 0000000000000ad4 0 OBJECT LOCAL DEFAULT 18 __FRAME_END__ + 64: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 65: 000000000001fdc8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 66: 00000000000009d4 0 NOTYPE LOCAL DEFAULT 17 __GNU_EH_FRAME_HDR + 67: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 68: 0000000000000740 0 NOTYPE LOCAL DEFAULT 13 $x + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 71: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 72: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 73: 0000000000020050 0 NOTYPE WEAK DEFAULT 24 data_start + 74: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start__ + 75: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 76: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _bss_end__ + 77: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 _edata + 78: 00000000000009bc 0 FUNC GLOBAL HIDDEN 15 _fini + 79: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __bss_end__ + 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 81: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 82: 0000000000020060 1 OBJECT GLOBAL DEFAULT 24 password + 83: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 24 __data_start + 84: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 85: 0000000000020058 0 OBJECT GLOBAL HIDDEN 24 __dso_handle + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 87: 00000000000009d0 4 OBJECT GLOBAL DEFAULT 16 _IO_stdin_used + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 89: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _end + 90: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 91: 0000000000000800 52 FUNC GLOBAL DEFAULT 14 _start + 92: 0000000000020078 8 OBJECT GLOBAL DEFAULT 25 buf + 93: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __end__ + 94: 0000000000020061 11 OBJECT GLOBAL DEFAULT 24 stext + 95: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start + 96: 0000000000000914 168 FUNC GLOBAL DEFAULT 14 main + 97: 0000000000020070 0 OBJECT GLOBAL HIDDEN 24 __TMC_END__ + 98: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 99: 0000000000000728 0 FUNC GLOBAL HIDDEN 12 _init diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.adt b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.adt index fc9650154..72b8cc4de 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.adt @@ -1,754 +1,756 @@ Project(Attrs([Attr("filename","\"a.out\""), -Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2392 20 2392)\n(code-region 1984 408 1984)\n(code-region 1776 192 1776)\n(code-region 1752 24 1752)\n(code-start 2036)\n(code-start 1984)\n(code-start 2260)\n(entry-point 1984)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1752 0)\n(llvm:code-entry main 2260 132)\n(llvm:code-entry _start 1984 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2392 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2256 0)\n(llvm:code-entry __do_global_dtors_aux 2176 0)\n(llvm:code-entry register_tm_clones 2112 0)\n(llvm:code-entry deregister_tm_clones 2064 0)\n(llvm:code-entry call_weak_fn 2036 20)\n(llvm:code-entry .fini 2392 20)\n(llvm:code-entry .text 1984 408)\n(llvm:code-entry .plt 1776 192)\n(llvm:code-entry .init 1752 24)\n(llvm:elf-program-header 08 64968 568)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2416 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64984 480)\n(llvm:elf-program-header 03 64968 676)\n(llvm:elf-program-header 02 0 2688)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130504 568)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2416 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130520 480)\n(llvm:elf-virtual-program-header 03 130504 696)\n(llvm:elf-virtual-program-header 02 0 2688)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 1984)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68804)\n(llvm:section-entry .strtab 0 716 68088)\n(llvm:section-entry .symtab 0 2376 65712)\n(llvm:section-entry .comment 0 63 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130520 480 64984)\n(llvm:section-entry .fini_array 130512 8 64976)\n(llvm:section-entry .init_array 130504 8 64968)\n(llvm:section-entry .eh_frame 2480 208 2480)\n(llvm:section-entry .eh_frame_hdr 2416 60 2416)\n(llvm:section-entry .rodata 2412 4 2412)\n(llvm:section-entry .fini 2392 20 2392)\n(llvm:section-entry .text 1984 408 1984)\n(llvm:section-entry .plt 1776 192 1776)\n(llvm:section-entry .init 1752 24 1752)\n(llvm:section-entry .rela.plt 1512 240 1512)\n(llvm:section-entry .rela.dyn 1320 192 1320)\n(llvm:section-entry .gnu.version_r 1272 48 1272)\n(llvm:section-entry .gnu.version 1236 30 1236)\n(llvm:section-entry .dynstr 1056 179 1056)\n(llvm:section-entry .dynsym 696 360 696)\n(llvm:section-entry .gnu.hash 664 28 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1752 0 1752 1752)\n(llvm:symbol-entry main 2260 132 2260 2260)\n(llvm:symbol-entry _start 1984 52 1984 1984)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2392 0 2392 2392)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2256 0 2256 2256)\n(llvm:symbol-entry __do_global_dtors_aux 2176 0 2176 2176)\n(llvm:symbol-entry register_tm_clones 2112 0 2112 2112)\n(llvm:symbol-entry deregister_tm_clones 2064 0 2064 2064)\n(llvm:symbol-entry call_weak_fn 2036 20 2036 2036)\n(mapped 0 2688 0)\n(mapped 130504 676 64968)\n(named-region 0 2688 02)\n(named-region 130504 696 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 28 .gnu.hash)\n(named-region 696 360 .dynsym)\n(named-region 1056 179 .dynstr)\n(named-region 1236 30 .gnu.version)\n(named-region 1272 48 .gnu.version_r)\n(named-region 1320 192 .rela.dyn)\n(named-region 1512 240 .rela.plt)\n(named-region 1752 24 .init)\n(named-region 1776 192 .plt)\n(named-region 1984 408 .text)\n(named-region 2392 20 .fini)\n(named-region 2412 4 .rodata)\n(named-region 2416 60 .eh_frame_hdr)\n(named-region 2480 208 .eh_frame)\n(named-region 130504 8 .init_array)\n(named-region 130512 8 .fini_array)\n(named-region 130520 480 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 63 .comment)\n(named-region 0 2376 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2036 call_weak_fn)\n(named-symbol 2064 deregister_tm_clones)\n(named-symbol 2112 register_tm_clones)\n(named-symbol 2176 __do_global_dtors_aux)\n(named-symbol 2256 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2392 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 1984 _start)\n(named-symbol 2260 main)\n(named-symbol 1752 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 28)\n(section 696 360)\n(section 1056 179)\n(section 1236 30)\n(section 1272 48)\n(section 1320 192)\n(section 1512 240)\n(section 1752 24)\n(section 1776 192)\n(section 1984 408)\n(section 2392 20)\n(section 2412 4)\n(section 2416 60)\n(section 2480 208)\n(section 130504 8)\n(section 130512 8)\n(section 130520 480)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 63)\n(section 0 2376)\n(section 0 716)\n(section 0 259)\n(segment 0 2688 true false true)\n(segment 130504 696 true true false)\n(subarch v8)\n(symbol-chunk 2036 20 2036)\n(symbol-chunk 1984 52 1984)\n(symbol-chunk 2260 132 2260)\n(symbol-value 2036 2036)\n(symbol-value 2064 2064)\n(symbol-value 2112 2112)\n(symbol-value 2176 2176)\n(symbol-value 2256 2256)\n(symbol-value 2392 2392)\n(symbol-value 1984 1984)\n(symbol-value 2260 2260)\n(symbol-value 1752 1752)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2456 20 2456)\n(code-region 2048 408 2048)\n(code-region 1856 192 1856)\n(code-region 1832 24 1832)\n(code-start 2100)\n(code-start 2048)\n(code-start 2324)\n(entry-point 2048)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1832 0)\n(llvm:code-entry main 2324 132)\n(llvm:code-entry _start 2048 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2456 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2320 0)\n(llvm:code-entry __do_global_dtors_aux 2240 0)\n(llvm:code-entry register_tm_clones 2176 0)\n(llvm:code-entry deregister_tm_clones 2128 0)\n(llvm:code-entry call_weak_fn 2100 20)\n(llvm:code-entry .fini 2456 20)\n(llvm:code-entry .text 2048 408)\n(llvm:code-entry .plt 1856 192)\n(llvm:code-entry .init 1832 24)\n(llvm:elf-program-header 08 64952 584)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2480 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64968 496)\n(llvm:elf-program-header 03 64952 692)\n(llvm:elf-program-header 02 0 2752)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130488 584)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2480 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130504 496)\n(llvm:elf-virtual-program-header 03 130488 712)\n(llvm:elf-virtual-program-header 02 0 2752)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2048)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68820)\n(llvm:section-entry .strtab 0 716 68104)\n(llvm:section-entry .symtab 0 2400 65704)\n(llvm:section-entry .comment 0 58 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130504 496 64968)\n(llvm:section-entry .fini_array 130496 8 64960)\n(llvm:section-entry .init_array 130488 8 64952)\n(llvm:section-entry .eh_frame 2544 208 2544)\n(llvm:section-entry .eh_frame_hdr 2480 60 2480)\n(llvm:section-entry .rodata 2476 4 2476)\n(llvm:section-entry .fini 2456 20 2456)\n(llvm:section-entry .text 2048 408 2048)\n(llvm:section-entry .plt 1856 192 1856)\n(llvm:section-entry .init 1832 24 1832)\n(llvm:section-entry .rela.plt 1592 240 1592)\n(llvm:section-entry .rela.dyn 1400 192 1400)\n(llvm:section-entry .gnu.version_r 1352 48 1352)\n(llvm:section-entry .gnu.version 1316 30 1316)\n(llvm:section-entry .dynstr 1136 179 1136)\n(llvm:section-entry .dynsym 776 360 776)\n(llvm:section-entry .gnu.hash 744 28 744)\n(llvm:section-entry .hash 664 80 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1832 0 1832 1832)\n(llvm:symbol-entry main 2324 132 2324 2324)\n(llvm:symbol-entry _start 2048 52 2048 2048)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2456 0 2456 2456)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2320 0 2320 2320)\n(llvm:symbol-entry __do_global_dtors_aux 2240 0 2240 2240)\n(llvm:symbol-entry register_tm_clones 2176 0 2176 2176)\n(llvm:symbol-entry deregister_tm_clones 2128 0 2128 2128)\n(llvm:symbol-entry call_weak_fn 2100 20 2100 2100)\n(mapped 0 2752 0)\n(mapped 130488 692 64952)\n(named-region 0 2752 02)\n(named-region 130488 712 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 80 .hash)\n(named-region 744 28 .gnu.hash)\n(named-region 776 360 .dynsym)\n(named-region 1136 179 .dynstr)\n(named-region 1316 30 .gnu.version)\n(named-region 1352 48 .gnu.version_r)\n(named-region 1400 192 .rela.dyn)\n(named-region 1592 240 .rela.plt)\n(named-region 1832 24 .init)\n(named-region 1856 192 .plt)\n(named-region 2048 408 .text)\n(named-region 2456 20 .fini)\n(named-region 2476 4 .rodata)\n(named-region 2480 60 .eh_frame_hdr)\n(named-region 2544 208 .eh_frame)\n(named-region 130488 8 .init_array)\n(named-region 130496 8 .fini_array)\n(named-region 130504 496 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 58 .comment)\n(named-region 0 2400 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2100 call_weak_fn)\n(named-symbol 2128 deregister_tm_clones)\n(named-symbol 2176 register_tm_clones)\n(named-symbol 2240 __do_global_dtors_aux)\n(named-symbol 2320 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2456 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2048 _start)\n(named-symbol 2324 main)\n(named-symbol 1832 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 80)\n(section 744 28)\n(section 776 360)\n(section 1136 179)\n(section 1316 30)\n(section 1352 48)\n(section 1400 192)\n(section 1592 240)\n(section 1832 24)\n(section 1856 192)\n(section 2048 408)\n(section 2456 20)\n(section 2476 4)\n(section 2480 60)\n(section 2544 208)\n(section 130488 8)\n(section 130496 8)\n(section 130504 496)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 58)\n(section 0 2400)\n(section 0 716)\n(section 0 259)\n(segment 0 2752 true false true)\n(segment 130488 712 true true false)\n(subarch v8)\n(symbol-chunk 2100 20 2100)\n(symbol-chunk 2048 52 2048)\n(symbol-chunk 2324 132 2324)\n(symbol-value 2100 2100)\n(symbol-value 2128 2128)\n(symbol-value 2176 2176)\n(symbol-value 2240 2240)\n(symbol-value 2320 2320)\n(symbol-value 2456 2456)\n(symbol-value 2048 2048)\n(symbol-value 2324 2324)\n(symbol-value 1832 1832)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), -Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x0a\x00\x00\x00\x00\x00\x00\x80\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01"), -Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x0a\x00\x00\x00\x00\x00\x00\x80\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xa4\x02\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x70\x09\x00\x00\x00\x00\x00\x00\x70\x09\x00\x00\x00\x00\x00\x00\x70\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xad\xa4\x13\x05\x37\xf4\x89\x19\x7a\x0b\xac\x58\xc5\x5f\x88\xa1\xd1\x70\x21\x9e\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x0a\x00\x00\x00\x00\x00\x00\x80\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xa4\x02\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x70\x09\x00\x00\x00\x00\x00\x00\x70\x09\x00\x00\x00\x00\x00\x00\x70\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xad\xa4\x13\x05\x37\xf4\x89\x19\x7a\x0b\xac\x58\xc5\x5f\x88\xa1\xd1\x70\x21\x9e\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xf5\x0b\x00\xf9\xf4\x4f\x02\xa9\xfd\x03\x00\x91\x60\x01\x80\x52\x9a\xff\xff\x97\x15\x01\x00\x90\x14\x01\x00\x90\x94\x86\x01\x91\xf3\x03\x00\xaa\xa0\x3e\x00\xf9\xe0\x03\x14\xaa\x87\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\xe1\x03\x14\xaa\x7f\xff\xff\x97\xe0\x03\x13\xaa\x9d\xff\xff\x97\xb3\x3e\x40\xf9\xe0\x03\x13\xaa\x7e\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\x21\x00\x80\x52\x8a\xff\xff\x97\xa0\x3e\x40\xf9\x98\xff\xff\x97\xe0\x03\x1f\x2a"), -Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c"), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x0a\x00\x00\x00\x00\x00\x00\xc0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x0a\x00\x00\x00\x00\x00\x00\xc0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xb0\x09\x00\x00\x00\x00\x00\x00\xb0\x09\x00\x00\x00\x00\x00\x00\xb0\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x04\x0b\xe4\xbb\x89\x3b\x0a\xd5\xd2\xae\xa0\x3d\x1e\x08\x67\x4c\x52\x3d\x90\xcc\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x0a\x00\x00\x00\x00\x00\x00\xc0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xb0\x09\x00\x00\x00\x00\x00\x00\xb0\x09\x00\x00\x00\x00\x00\x00\xb0\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x04\x0b\xe4\xbb\x89\x3b\x0a\xd5\xd2\xae\xa0\x3d\x1e\x08\x67\x4c\x52\x3d\x90\xcc\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xf5\x0b\x00\xf9\xf4\x4f\x02\xa9\xfd\x03\x00\x91\x60\x01\x80\x52\x9e\xff\xff\x97\x15\x01\x00\x90\x14\x01\x00\x90\x94\x86\x01\x91\xf3\x03\x00\xaa\xa0\x3e\x00\xf9\xe0\x03\x14\xaa\x8b\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\xe1\x03\x14\xaa\x83\xff\xff\x97\xe0\x03\x13\xaa\xa1\xff\xff\x97"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00"), Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), -Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xad\xa4\x13\x05\x37\xf4\x89\x19\x7a\x0b\xac\x58\xc5\x5f\x88\xa1\xd1\x70\x21\x9e"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x04\x0b\xe4\xbb\x89\x3b\x0a\xd5\xd2\xae\xa0\x3d\x1e\x08\x67\x4c\x52\x3d\x90\xcc"), Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), -Section(".gnu.hash", 0x298, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynsym", 0x2B8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynstr", 0x420, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), -Section(".gnu.version", 0x4D4, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), -Section(".gnu.version_r", 0x4F8, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.dyn", 0x528, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.plt", 0x5E8, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init", 0x6D8, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".plt", 0x6F0, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), -Section(".fini", 0x958, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".rodata", 0x96C, "\x01\x00\x02\x00"), -Section(".eh_frame_hdr", 0x970, "\x01\x1b\x03\x3b\x3c\x00\x00\x00\x06\x00\x00\x00\x50\xfe\xff\xff\x54\x00\x00\x00\xa0\xfe\xff\xff\x68\x00\x00\x00\xd0\xfe\xff\xff\x7c\x00\x00\x00\x10\xff\xff\xff\x90\x00\x00\x00\x60\xff\xff\xff\xb4\x00\x00\x00\x64\xff\xff\xff\xdc\x00\x00\x00"), -Section(".eh_frame", 0x9B0, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xf4\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x30\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x4c\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x78\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\xa4\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x2c\x00\x00\x00\x18\x00\x00\x00\x80\xfe\xff\xff\x84\x00\x00\x00\x00\x44\x0e\x30\x4c\x0c\x1d\x30\x93\x02\x94\x04\x95\x08\x9e\x0a\x9d\x0c\x02\x64\x0c\x1f\x30\x4c\x0e\x00\xd3\xd4\xd5\xde\xdd\x00\x00\x00\x00\x00"), -Section(".fini_array", 0x1FDD0, "\x80\x08\x00\x00\x00\x00\x00\x00"), -Section(".dynamic", 0x1FDD8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x58\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x20\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\xe8\x05\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x28\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xf8\x04\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xd4\x04\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init_array", 0x1FDC8, "\xd0\x08\x00\x00\x00\x00\x00\x00"), -Section(".got", 0x1FFB8, "\xd8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00"), +Section(".hash", 0x298, "\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00"), +Section(".gnu.hash", 0x2E8, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x308, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x470, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x524, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x548, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x578, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x638, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x728, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x740, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0x998, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0x9AC, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0x9B0, "\x01\x1b\x03\x3b\x3c\x00\x00\x00\x06\x00\x00\x00\x50\xfe\xff\xff\x54\x00\x00\x00\xa0\xfe\xff\xff\x68\x00\x00\x00\xd0\xfe\xff\xff\x7c\x00\x00\x00\x10\xff\xff\xff\x90\x00\x00\x00\x60\xff\xff\xff\xb4\x00\x00\x00\x64\xff\xff\xff\xdc\x00\x00\x00"), +Section(".eh_frame", 0x9F0, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xf4\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x30\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x4c\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x78\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\xa4\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x2c\x00\x00\x00\x18\x00\x00\x00\x80\xfe\xff\xff\x84\x00\x00\x00\x00\x44\x0e\x30\x4c\x0c\x1d\x30\x93\x02\x94\x04\x95\x08\x9e\x0a\x9d\x0c\x02\x64\x0c\x1f\x30\x4c\x0e\x00\xd3\xd4\xd5\xde\xdd\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDC0, "\xc0\x08\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDC8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x28\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x98\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x70\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x38\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x78\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\x48\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\x24\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDB8, "\x10\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFB8, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00"), Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), -Section(".text", 0x7C0, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xf5\x0b\x00\xf9\xf4\x4f\x02\xa9\xfd\x03\x00\x91\x60\x01\x80\x52\x9a\xff\xff\x97\x15\x01\x00\x90\x14\x01\x00\x90\x94\x86\x01\x91\xf3\x03\x00\xaa\xa0\x3e\x00\xf9\xe0\x03\x14\xaa\x87\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\xe1\x03\x14\xaa\x7f\xff\xff\x97\xe0\x03\x13\xaa\x9d\xff\xff\x97\xb3\x3e\x40\xf9\xe0\x03\x13\xaa\x7e\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\x21\x00\x80\x52\x8a\xff\xff\x97\xa0\x3e\x40\xf9\x98\xff\xff\x97\xe0\x03\x1f\x2a\xf4\x4f\x42\xa9\xf5\x0b\x40\xf9\xfd\x7b\xc3\xa8\xc0\x03\x5f\xd6")]), -Memmap([Annotation(Region(0x0,0xA7F), Attr("segment","02 0 2688")), -Annotation(Region(0x7C0,0x7F3), Attr("symbol","\"_start\"")), +Section(".text", 0x800, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xf5\x0b\x00\xf9\xf4\x4f\x02\xa9\xfd\x03\x00\x91\x60\x01\x80\x52\x9e\xff\xff\x97\x15\x01\x00\x90\x14\x01\x00\x90\x94\x86\x01\x91\xf3\x03\x00\xaa\xa0\x3e\x00\xf9\xe0\x03\x14\xaa\x8b\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\xe1\x03\x14\xaa\x83\xff\xff\x97\xe0\x03\x13\xaa\xa1\xff\xff\x97\xb3\x3e\x40\xf9\xe0\x03\x13\xaa\x82\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\x21\x00\x80\x52\x8e\xff\xff\x97\xa0\x3e\x40\xf9\x9c\xff\xff\x97\xe0\x03\x1f\x2a\xf4\x4f\x42\xa9\xf5\x0b\x40\xf9\xfd\x7b\xc3\xa8\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xABF), Attr("segment","02 0 2752")), +Annotation(Region(0x800,0x833), Attr("symbol","\"_start\"")), Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), Annotation(Region(0x0,0x2CB), Attr("section","\".strtab\"")), -Annotation(Region(0x0,0x947), Attr("section","\".symtab\"")), -Annotation(Region(0x0,0x3E), Attr("section","\".comment\"")), +Annotation(Region(0x0,0x95F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x39), Attr("section","\".comment\"")), Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), -Annotation(Region(0x298,0x2B3), Attr("section","\".gnu.hash\"")), -Annotation(Region(0x2B8,0x41F), Attr("section","\".dynsym\"")), -Annotation(Region(0x420,0x4D2), Attr("section","\".dynstr\"")), -Annotation(Region(0x4D4,0x4F1), Attr("section","\".gnu.version\"")), -Annotation(Region(0x4F8,0x527), Attr("section","\".gnu.version_r\"")), -Annotation(Region(0x528,0x5E7), Attr("section","\".rela.dyn\"")), -Annotation(Region(0x5E8,0x6D7), Attr("section","\".rela.plt\"")), -Annotation(Region(0x6D8,0x6EF), Attr("section","\".init\"")), -Annotation(Region(0x6F0,0x7AF), Attr("section","\".plt\"")), -Annotation(Region(0x6D8,0x6EF), Attr("code-region","()")), -Annotation(Region(0x6F0,0x7AF), Attr("code-region","()")), -Annotation(Region(0x7C0,0x7F3), Attr("symbol-info","_start 0x7C0 52")), -Annotation(Region(0x7F4,0x807), Attr("symbol","\"call_weak_fn\"")), -Annotation(Region(0x7F4,0x807), Attr("symbol-info","call_weak_fn 0x7F4 20")), -Annotation(Region(0x8D4,0x957), Attr("symbol","\"main\"")), -Annotation(Region(0x8D4,0x957), Attr("symbol-info","main 0x8D4 132")), -Annotation(Region(0x958,0x96B), Attr("section","\".fini\"")), -Annotation(Region(0x96C,0x96F), Attr("section","\".rodata\"")), -Annotation(Region(0x970,0x9AB), Attr("section","\".eh_frame_hdr\"")), -Annotation(Region(0x9B0,0xA7F), Attr("section","\".eh_frame\"")), -Annotation(Region(0x1FDC8,0x2006B), Attr("segment","03 0x1FDC8 696")), -Annotation(Region(0x1FDD0,0x1FDD7), Attr("section","\".fini_array\"")), -Annotation(Region(0x1FDD8,0x1FFB7), Attr("section","\".dynamic\"")), -Annotation(Region(0x1FDC8,0x1FDCF), Attr("section","\".init_array\"")), +Annotation(Region(0x298,0x2E7), Attr("section","\".hash\"")), +Annotation(Region(0x2E8,0x303), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x308,0x46F), Attr("section","\".dynsym\"")), +Annotation(Region(0x470,0x522), Attr("section","\".dynstr\"")), +Annotation(Region(0x524,0x541), Attr("section","\".gnu.version\"")), +Annotation(Region(0x548,0x577), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x578,0x637), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x638,0x727), Attr("section","\".rela.plt\"")), +Annotation(Region(0x728,0x73F), Attr("section","\".init\"")), +Annotation(Region(0x740,0x7FF), Attr("section","\".plt\"")), +Annotation(Region(0x728,0x73F), Attr("code-region","()")), +Annotation(Region(0x740,0x7FF), Attr("code-region","()")), +Annotation(Region(0x800,0x833), Attr("symbol-info","_start 0x800 52")), +Annotation(Region(0x834,0x847), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x834,0x847), Attr("symbol-info","call_weak_fn 0x834 20")), +Annotation(Region(0x914,0x997), Attr("symbol","\"main\"")), +Annotation(Region(0x914,0x997), Attr("symbol-info","main 0x914 132")), +Annotation(Region(0x998,0x9AB), Attr("section","\".fini\"")), +Annotation(Region(0x9AC,0x9AF), Attr("section","\".rodata\"")), +Annotation(Region(0x9B0,0x9EB), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0x9F0,0xABF), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDB8,0x2006B), Attr("segment","03 0x1FDB8 712")), +Annotation(Region(0x1FDC0,0x1FDC7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDC8,0x1FFB7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDB8,0x1FDBF), Attr("section","\".init_array\"")), Annotation(Region(0x1FFB8,0x1FFE7), Attr("section","\".got\"")), Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), -Annotation(Region(0x7C0,0x957), Attr("section","\".text\"")), -Annotation(Region(0x7C0,0x957), Attr("code-region","()")), -Annotation(Region(0x958,0x96B), Attr("code-region","()"))]), -Program(Tid(2_126, "%0000084e"), Attrs([]), - Subs([Sub(Tid(2_055, "@__cxa_finalize"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x740"), -Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_127, "%0000084f"), +Annotation(Region(0x800,0x997), Attr("section","\".text\"")), +Annotation(Region(0x800,0x997), Attr("code-region","()")), +Annotation(Region(0x998,0x9AB), Attr("code-region","()"))]), +Program(Tid(2_235, "%000008bb"), Attrs([]), + Subs([Sub(Tid(2_164, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x790"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_236, "%000008bc"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_219, "@__cxa_finalize"), - Attrs([Attr("address","0x740")]), Phis([]), -Defs([Def(Tid(1_639, "%00000667"), Attrs([Attr("address","0x740"), + Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_639, "%00000667"), Attrs([Attr("address","0x790"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_647, "%0000066f"), Attrs([Attr("address","0x744"), +Def(Tid(1_647, "%0000066f"), Attrs([Attr("address","0x794"), Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_654, "%00000676"), Attrs([Attr("address","0x748"), +Def(Tid(1_654, "%00000676"), Attrs([Attr("address","0x798"), Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_659, "%0000067b"), - Attrs([Attr("address","0x74C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_056, "@__do_global_dtors_aux"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), - "__do_global_dtors_aux", Args([Arg(Tid(2_128, "%00000850"), +Sub(Tid(2_165, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_237, "%000008bd"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(758, "@__do_global_dtors_aux"), - Attrs([Attr("address","0x880")]), Phis([]), Defs([Def(Tid(765, "%000002fd"), - Attrs([Attr("address","0x880"), + Attrs([Attr("address","0x8C0")]), Phis([]), Defs([Def(Tid(765, "%000002fd"), + Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), -Def(Tid(770, "%00000302"), Attrs([Attr("address","0x880"), +Def(Tid(770, "%00000302"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(775, "%00000307"), Attrs([Attr("address","0x880"), +Def(Tid(775, "%00000307"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(779, "%0000030b"), Attrs([Attr("address","0x880"), +Def(Tid(779, "%0000030b"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), Var("#34",Imm(64))), Def(Tid(786, "%00000312"), - Attrs([Attr("address","0x884"), Attr("insn","mov x29, sp")]), + Attrs([Attr("address","0x8C4"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(794, "%0000031a"), - Attrs([Attr("address","0x888"), Attr("insn","str x19, [sp, #0x10]")]), + Attrs([Attr("address","0x8C8"), Attr("insn","str x19, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), -Def(Tid(800, "%00000320"), Attrs([Attr("address","0x88C"), +Def(Tid(800, "%00000320"), Attrs([Attr("address","0x8CC"), Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), -Def(Tid(809, "%00000329"), Attrs([Attr("address","0x890"), +Def(Tid(809, "%00000329"), Attrs([Attr("address","0x8D0"), Attr("insn","ldrb w0, [x19, #0x70]")]), Var("R0",Imm(64)), UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),BigEndian(),8))), -Def(Tid(821, "%00000335"), Attrs([Attr("address","0x894"), +Def(Tid(821, "%00000335"), Attrs([Attr("address","0x8D4"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), -Jmps([Goto(Tid(815, "%0000032f"), Attrs([Attr("address","0x894"), +Jmps([Goto(Tid(815, "%0000032f"), Attrs([Attr("address","0x8D4"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), -Direct(Tid(813, "%0000032d"))), Goto(Tid(2_116, "%00000844"), Attrs([]), +Direct(Tid(813, "%0000032d"))), Goto(Tid(2_225, "%000008b1"), Attrs([]), Int(1,1), Direct(Tid(1_153, "%00000481")))])), Blk(Tid(1_153, "%00000481"), - Attrs([Attr("address","0x898")]), Phis([]), -Defs([Def(Tid(1_157, "%00000485"), Attrs([Attr("address","0x898"), + Attrs([Attr("address","0x8D8")]), Phis([]), +Defs([Def(Tid(1_157, "%00000485"), Attrs([Attr("address","0x8D8"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), -Def(Tid(1_165, "%0000048d"), Attrs([Attr("address","0x89C"), +Def(Tid(1_165, "%0000048d"), Attrs([Attr("address","0x8DC"), Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), -Def(Tid(1_177, "%00000499"), Attrs([Attr("address","0x8A0"), +Def(Tid(1_177, "%00000499"), Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), Var("#85",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_171, "%00000493"), - Attrs([Attr("address","0x8A0"), Attr("insn","cbz x0, #0x10")]), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), Var("#85",Imm(1)), Direct(Tid(1_169, "%00000491"))), -Goto(Tid(2_117, "%00000845"), Attrs([]), Int(1,1), +Goto(Tid(2_226, "%000008b2"), Attrs([]), Int(1,1), Direct(Tid(1_201, "%000004b1")))])), Blk(Tid(1_201, "%000004b1"), - Attrs([Attr("address","0x8A4")]), Phis([]), -Defs([Def(Tid(1_205, "%000004b5"), Attrs([Attr("address","0x8A4"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_205, "%000004b5"), Attrs([Attr("address","0x8E4"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(1_213, "%000004bd"), Attrs([Attr("address","0x8A8"), +Def(Tid(1_213, "%000004bd"), Attrs([Attr("address","0x8E8"), Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), -Def(Tid(1_218, "%000004c2"), Attrs([Attr("address","0x8AC"), -Attr("insn","bl #-0x16c")]), Var("R30",Imm(64)), Int(2224,64))]), -Jmps([Call(Tid(1_221, "%000004c5"), Attrs([Attr("address","0x8AC"), -Attr("insn","bl #-0x16c")]), Int(1,1), -(Direct(Tid(2_055, "@__cxa_finalize")),Direct(Tid(1_169, "%00000491"))))])), -Blk(Tid(1_169, "%00000491"), Attrs([Attr("address","0x8B0")]), Phis([]), -Defs([Def(Tid(1_182, "%0000049e"), Attrs([Attr("address","0x8B0"), -Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2228,64))]), -Jmps([Call(Tid(1_184, "%000004a0"), Attrs([Attr("address","0x8B0"), +Def(Tid(1_218, "%000004c2"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Var("R30",Imm(64)), Int(2288,64))]), +Jmps([Call(Tid(1_221, "%000004c5"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Int(1,1), +(Direct(Tid(2_164, "@__cxa_finalize")),Direct(Tid(1_169, "%00000491"))))])), +Blk(Tid(1_169, "%00000491"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_182, "%0000049e"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2292,64))]), +Jmps([Call(Tid(1_184, "%000004a0"), Attrs([Attr("address","0x8F0"), Attr("insn","bl #-0xa0")]), Int(1,1), -(Direct(Tid(2_069, "@deregister_tm_clones")),Direct(Tid(1_186, "%000004a2"))))])), -Blk(Tid(1_186, "%000004a2"), Attrs([Attr("address","0x8B4")]), Phis([]), -Defs([Def(Tid(1_191, "%000004a7"), Attrs([Attr("address","0x8B4"), +(Direct(Tid(2_178, "@deregister_tm_clones")),Direct(Tid(1_186, "%000004a2"))))])), +Blk(Tid(1_186, "%000004a2"), Attrs([Attr("address","0x8F4")]), Phis([]), +Defs([Def(Tid(1_191, "%000004a7"), Attrs([Attr("address","0x8F4"), Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), -Def(Tid(1_199, "%000004af"), Attrs([Attr("address","0x8B8"), +Def(Tid(1_199, "%000004af"), Attrs([Attr("address","0x8F8"), Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), -Jmps([Goto(Tid(2_118, "%00000846"), Attrs([]), Int(1,1), +Jmps([Goto(Tid(2_227, "%000008b3"), Attrs([]), Int(1,1), Direct(Tid(813, "%0000032d")))])), Blk(Tid(813, "%0000032d"), - Attrs([Attr("address","0x8BC")]), Phis([]), Defs([Def(Tid(829, "%0000033d"), - Attrs([Attr("address","0x8BC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Attrs([Attr("address","0x8FC")]), Phis([]), Defs([Def(Tid(829, "%0000033d"), + Attrs([Attr("address","0x8FC"), Attr("insn","ldr x19, [sp, #0x10]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(839, "%00000347"), Attrs([Attr("address","0x8C0"), +Def(Tid(839, "%00000347"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(843, "%0000034b"), Attrs([Attr("address","0x8C0"), +Def(Tid(843, "%0000034b"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(846, "%0000034e"), Attrs([Attr("address","0x8C0"), +Def(Tid(846, "%0000034e"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(851, "%00000353"), - Attrs([Attr("address","0x8C4"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_060, "@__libc_start_main"), + Attrs([Attr("address","0x904"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_169, "@__libc_start_main"), Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), -Attr("address","0x730"), Attr("stub","()")]), "__libc_start_main", - Args([Arg(Tid(2_129, "%00000851"), +Attr("address","0x780"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_238, "%000008be"), Attrs([Attr("c.layout","**[ : 64]"), Attr("c.data","Top:u64 ptr ptr"), Attr("c.type","signed (*)(signed , char** , char** );*")]), Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_130, "%00000852"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_239, "%000008bf"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), -Arg(Tid(2_131, "%00000853"), Attrs([Attr("c.layout","**[char : 8]"), +Arg(Tid(2_240, "%000008c0"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), -Arg(Tid(2_132, "%00000854"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_241, "%000008c1"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), -Arg(Tid(2_133, "%00000855"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_242, "%000008c2"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(570, "@__libc_start_main"), - Attrs([Attr("address","0x730")]), Phis([]), -Defs([Def(Tid(1_614, "%0000064e"), Attrs([Attr("address","0x730"), + Attrs([Attr("address","0x780")]), Phis([]), +Defs([Def(Tid(1_614, "%0000064e"), Attrs([Attr("address","0x780"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_622, "%00000656"), Attrs([Attr("address","0x734"), +Def(Tid(1_622, "%00000656"), Attrs([Attr("address","0x784"), Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_629, "%0000065d"), Attrs([Attr("address","0x738"), +Def(Tid(1_629, "%0000065d"), Attrs([Attr("address","0x788"), Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_634, "%00000662"), - Attrs([Attr("address","0x73C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_061, "@_fini"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x958")]), - "_fini", Args([Arg(Tid(2_134, "%00000856"), + Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_170, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x998")]), + "_fini", Args([Arg(Tid(2_243, "%000008c3"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), - Attrs([Attr("address","0x958")]), Phis([]), Defs([Def(Tid(41, "%00000029"), - Attrs([Attr("address","0x95C"), + Attrs([Attr("address","0x998")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0x99C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x95C"), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x99C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(51, "%00000033"), Attrs([Attr("address","0x95C"), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0x99C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(55, "%00000037"), Attrs([Attr("address","0x95C"), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0x99C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x960"), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9A0"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), -Def(Tid(72, "%00000048"), Attrs([Attr("address","0x964"), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9A4"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x964"), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9A4"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x964"), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9A4"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), - Attrs([Attr("address","0x968"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_062, "@_init"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x6D8")]), - "_init", Args([Arg(Tid(2_135, "%00000857"), + Attrs([Attr("address","0x9A8"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_171, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x728")]), + "_init", Args([Arg(Tid(2_244, "%000008c4"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), -LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_837, "@_init"), - Attrs([Attr("address","0x6D8")]), Phis([]), -Defs([Def(Tid(1_846, "%00000736"), Attrs([Attr("address","0x6DC"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_946, "@_init"), + Attrs([Attr("address","0x728")]), Phis([]), +Defs([Def(Tid(1_955, "%000007a3"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#116",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(1_851, "%0000073b"), Attrs([Attr("address","0x6DC"), +Def(Tid(1_960, "%000007a8"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#116",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(1_856, "%00000740"), Attrs([Attr("address","0x6DC"), +Def(Tid(1_965, "%000007ad"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#116",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(1_860, "%00000744"), Attrs([Attr("address","0x6DC"), +Def(Tid(1_969, "%000007b1"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#116",Imm(64))), Def(Tid(1_867, "%0000074b"), - Attrs([Attr("address","0x6E0"), Attr("insn","mov x29, sp")]), - Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(1_872, "%00000750"), - Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), - Var("R30",Imm(64)), Int(1768,64))]), Jmps([Call(Tid(1_874, "%00000752"), - Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), Int(1,1), -(Direct(Tid(2_067, "@call_weak_fn")),Direct(Tid(1_876, "%00000754"))))])), -Blk(Tid(1_876, "%00000754"), Attrs([Attr("address","0x6E8")]), Phis([]), -Defs([Def(Tid(1_884, "%0000075c"), Attrs([Attr("address","0x6E8"), +Var("#116",Imm(64))), Def(Tid(1_976, "%000007b8"), + Attrs([Attr("address","0x730"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(1_981, "%000007bd"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), + Var("R30",Imm(64)), Int(1848,64))]), Jmps([Call(Tid(1_983, "%000007bf"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), Int(1,1), +(Direct(Tid(2_176, "@call_weak_fn")),Direct(Tid(1_985, "%000007c1"))))])), +Blk(Tid(1_985, "%000007c1"), Attrs([Attr("address","0x738")]), Phis([]), +Defs([Def(Tid(1_993, "%000007c9"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_888, "%00000760"), Attrs([Attr("address","0x6E8"), +Def(Tid(1_997, "%000007cd"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_891, "%00000763"), Attrs([Attr("address","0x6E8"), +Def(Tid(2_000, "%000007d0"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), -PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_896, "%00000768"), - Attrs([Attr("address","0x6EC"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_063, "@_start"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7C0"), -Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_136, "%00000858"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("_start_result",Imm(32)), -LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(496, "@_start"), - Attrs([Attr("address","0x7C0")]), Phis([]), Defs([Def(Tid(502, "%000001f6"), - Attrs([Attr("address","0x7C4"), Attr("insn","mov x29, #0x0")]), - Var("R29",Imm(64)), Int(0,64)), Def(Tid(508, "%000001fc"), - Attrs([Attr("address","0x7C8"), Attr("insn","mov x30, #0x0")]), - Var("R30",Imm(64)), Int(0,64)), Def(Tid(516, "%00000204"), - Attrs([Attr("address","0x7CC"), Attr("insn","mov x5, x0")]), - Var("R5",Imm(64)), Var("R0",Imm(64))), Def(Tid(524, "%0000020c"), - Attrs([Attr("address","0x7D0"), Attr("insn","ldr x1, [sp]")]), - Var("R1",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_005, "%000007d5"), + Attrs([Attr("address","0x73C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_172, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x800"), +Attr("stub","()"), Attr("entry-point","()")]), "_start", + Args([Arg(Tid(2_245, "%000008c5"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(496, "@_start"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([Def(Tid(502, "%000001f6"), Attrs([Attr("address","0x804"), +Attr("insn","mov x29, #0x0")]), Var("R29",Imm(64)), Int(0,64)), +Def(Tid(508, "%000001fc"), Attrs([Attr("address","0x808"), +Attr("insn","mov x30, #0x0")]), Var("R30",Imm(64)), Int(0,64)), +Def(Tid(516, "%00000204"), Attrs([Attr("address","0x80C"), +Attr("insn","mov x5, x0")]), Var("R5",Imm(64)), Var("R0",Imm(64))), +Def(Tid(524, "%0000020c"), Attrs([Attr("address","0x810"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(531, "%00000213"), Attrs([Attr("address","0x7D4"), +Def(Tid(531, "%00000213"), Attrs([Attr("address","0x814"), Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(538, "%0000021a"), - Attrs([Attr("address","0x7D8"), Attr("insn","mov x6, sp")]), + Attrs([Attr("address","0x818"), Attr("insn","mov x6, sp")]), Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(544, "%00000220"), - Attrs([Attr("address","0x7DC"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x81C"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(552, "%00000228"), - Attrs([Attr("address","0x7E0"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Attrs([Attr("address","0x820"), Attr("insn","ldr x0, [x0, #0xfd8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), -Def(Tid(558, "%0000022e"), Attrs([Attr("address","0x7E4"), +Def(Tid(558, "%0000022e"), Attrs([Attr("address","0x824"), Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), -Def(Tid(564, "%00000234"), Attrs([Attr("address","0x7E8"), +Def(Tid(564, "%00000234"), Attrs([Attr("address","0x828"), Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), -Def(Tid(569, "%00000239"), Attrs([Attr("address","0x7EC"), -Attr("insn","bl #-0xbc")]), Var("R30",Imm(64)), Int(2032,64))]), -Jmps([Call(Tid(572, "%0000023c"), Attrs([Attr("address","0x7EC"), -Attr("insn","bl #-0xbc")]), Int(1,1), -(Direct(Tid(2_060, "@__libc_start_main")),Direct(Tid(574, "%0000023e"))))])), -Blk(Tid(574, "%0000023e"), Attrs([Attr("address","0x7F0")]), Phis([]), -Defs([Def(Tid(577, "%00000241"), Attrs([Attr("address","0x7F0"), -Attr("insn","bl #-0x70")]), Var("R30",Imm(64)), Int(2036,64))]), -Jmps([Call(Tid(580, "%00000244"), Attrs([Attr("address","0x7F0"), -Attr("insn","bl #-0x70")]), Int(1,1), -(Direct(Tid(2_066, "@abort")),Direct(Tid(2_119, "%00000847"))))])), -Blk(Tid(2_119, "%00000847"), Attrs([]), Phis([]), Defs([]), -Jmps([Call(Tid(2_120, "%00000848"), Attrs([]), Int(1,1), -(Direct(Tid(2_067, "@call_weak_fn")),))]))])), Sub(Tid(2_066, "@abort"), +Def(Tid(569, "%00000239"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Var("R30",Imm(64)), Int(2096,64))]), +Jmps([Call(Tid(572, "%0000023c"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Int(1,1), +(Direct(Tid(2_169, "@__libc_start_main")),Direct(Tid(574, "%0000023e"))))])), +Blk(Tid(574, "%0000023e"), Attrs([Attr("address","0x830")]), Phis([]), +Defs([Def(Tid(577, "%00000241"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Var("R30",Imm(64)), Int(2100,64))]), +Jmps([Call(Tid(580, "%00000244"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Int(1,1), +(Direct(Tid(2_175, "@abort")),Direct(Tid(2_228, "%000008b4"))))])), +Blk(Tid(2_228, "%000008b4"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_229, "%000008b5"), Attrs([]), Int(1,1), +(Direct(Tid(2_176, "@call_weak_fn")),))]))])), Sub(Tid(2_175, "@abort"), Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), -Attr("address","0x780"), Attr("stub","()")]), "abort", Args([]), -Blks([Blk(Tid(578, "@abort"), Attrs([Attr("address","0x780")]), Phis([]), -Defs([Def(Tid(1_739, "%000006cb"), Attrs([Attr("address","0x780"), +Attr("address","0x7D0"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(578, "@abort"), Attrs([Attr("address","0x7D0")]), Phis([]), +Defs([Def(Tid(1_739, "%000006cb"), Attrs([Attr("address","0x7D0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_747, "%000006d3"), Attrs([Attr("address","0x784"), +Def(Tid(1_747, "%000006d3"), Attrs([Attr("address","0x7D4"), Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), -Def(Tid(1_754, "%000006da"), Attrs([Attr("address","0x788"), +Def(Tid(1_754, "%000006da"), Attrs([Attr("address","0x7D8"), Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_759, "%000006df"), - Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_067, "@call_weak_fn"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7F4")]), - "call_weak_fn", Args([Arg(Tid(2_137, "%00000859"), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_176, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x834")]), + "call_weak_fn", Args([Arg(Tid(2_246, "%000008c6"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(582, "@call_weak_fn"), - Attrs([Attr("address","0x7F4")]), Phis([]), Defs([Def(Tid(586, "%0000024a"), - Attrs([Attr("address","0x7F4"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x834")]), Phis([]), Defs([Def(Tid(586, "%0000024a"), + Attrs([Attr("address","0x834"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(594, "%00000252"), - Attrs([Attr("address","0x7F8"), Attr("insn","ldr x0, [x0, #0xfd0]")]), + Attrs([Attr("address","0x838"), Attr("insn","ldr x0, [x0, #0xfd0]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), -Def(Tid(606, "%0000025e"), Attrs([Attr("address","0x7FC"), +Def(Tid(606, "%0000025e"), Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(600, "%00000258"), - Attrs([Attr("address","0x7FC"), Attr("insn","cbz x0, #0x8")]), + Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), Direct(Tid(598, "%00000256"))), -Goto(Tid(2_121, "%00000849"), Attrs([]), Int(1,1), +Goto(Tid(2_230, "%000008b6"), Attrs([]), Int(1,1), Direct(Tid(1_301, "%00000515")))])), Blk(Tid(598, "%00000256"), - Attrs([Attr("address","0x804")]), Phis([]), Defs([]), -Jmps([Call(Tid(611, "%00000263"), Attrs([Attr("address","0x804"), + Attrs([Attr("address","0x844")]), Phis([]), Defs([]), +Jmps([Call(Tid(611, "%00000263"), Attrs([Attr("address","0x844"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_301, "%00000515"), Attrs([Attr("address","0x800")]), Phis([]), -Defs([]), Jmps([Goto(Tid(1_304, "%00000518"), Attrs([Attr("address","0x800"), -Attr("insn","b #-0x90")]), Int(1,1), +Blk(Tid(1_301, "%00000515"), Attrs([Attr("address","0x840")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_304, "%00000518"), Attrs([Attr("address","0x840"), +Attr("insn","b #-0x80")]), Int(1,1), Direct(Tid(1_302, "@__gmon_start__")))])), Blk(Tid(1_302, "@__gmon_start__"), - Attrs([Attr("address","0x770")]), Phis([]), -Defs([Def(Tid(1_714, "%000006b2"), Attrs([Attr("address","0x770"), + Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_714, "%000006b2"), Attrs([Attr("address","0x7C0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_722, "%000006ba"), Attrs([Attr("address","0x774"), +Def(Tid(1_722, "%000006ba"), Attrs([Attr("address","0x7C4"), Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), -Def(Tid(1_729, "%000006c1"), Attrs([Attr("address","0x778"), +Def(Tid(1_729, "%000006c1"), Attrs([Attr("address","0x7C8"), Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_734, "%000006c6"), - Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_069, "@deregister_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x810")]), - "deregister_tm_clones", Args([Arg(Tid(2_138, "%0000085a"), +Sub(Tid(2_178, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x850")]), + "deregister_tm_clones", Args([Arg(Tid(2_247, "%000008c7"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(617, "@deregister_tm_clones"), - Attrs([Attr("address","0x810")]), Phis([]), Defs([Def(Tid(621, "%0000026d"), - Attrs([Attr("address","0x810"), Attr("insn","adrp x0, #0x20000")]), + Attrs([Attr("address","0x850")]), Phis([]), Defs([Def(Tid(621, "%0000026d"), + Attrs([Attr("address","0x850"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), Def(Tid(628, "%00000274"), - Attrs([Attr("address","0x814"), Attr("insn","add x0, x0, #0x70")]), + Attrs([Attr("address","0x854"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), -Def(Tid(634, "%0000027a"), Attrs([Attr("address","0x818"), +Def(Tid(634, "%0000027a"), Attrs([Attr("address","0x858"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), -Def(Tid(641, "%00000281"), Attrs([Attr("address","0x81C"), +Def(Tid(641, "%00000281"), Attrs([Attr("address","0x85C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), Def(Tid(649, "%00000289"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("#16",Imm(64)), PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), -Def(Tid(653, "%0000028d"), Attrs([Attr("address","0x820"), +Def(Tid(653, "%0000028d"), Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), Extract(63,63,Var("#16",Imm(64)))), Def(Tid(656, "%00000290"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("VF",Imm(1)), OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), -Def(Tid(659, "%00000293"), Attrs([Attr("address","0x820"), +Def(Tid(659, "%00000293"), Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(662, "%00000296"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("CF",Imm(1)), OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), -Def(Tid(676, "%000002a4"), Attrs([Attr("address","0x824"), +Def(Tid(676, "%000002a4"), Attrs([Attr("address","0x864"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), -Jmps([Goto(Tid(670, "%0000029e"), Attrs([Attr("address","0x824"), +Jmps([Goto(Tid(670, "%0000029e"), Attrs([Attr("address","0x864"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), -Direct(Tid(668, "%0000029c"))), Goto(Tid(2_122, "%0000084a"), Attrs([]), +Direct(Tid(668, "%0000029c"))), Goto(Tid(2_231, "%000008b7"), Attrs([]), Int(1,1), Direct(Tid(1_262, "%000004ee")))])), Blk(Tid(1_262, "%000004ee"), - Attrs([Attr("address","0x828")]), Phis([]), -Defs([Def(Tid(1_266, "%000004f2"), Attrs([Attr("address","0x828"), + Attrs([Attr("address","0x868")]), Phis([]), +Defs([Def(Tid(1_266, "%000004f2"), Attrs([Attr("address","0x868"), Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), -Def(Tid(1_274, "%000004fa"), Attrs([Attr("address","0x82C"), +Def(Tid(1_274, "%000004fa"), Attrs([Attr("address","0x86C"), Attr("insn","ldr x1, [x1, #0xfc0]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4032,64)),LittleEndian(),64)), -Def(Tid(1_285, "%00000505"), Attrs([Attr("address","0x830"), +Def(Tid(1_285, "%00000505"), Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), Var("#93",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_279, "%000004ff"), - Attrs([Attr("address","0x830"), Attr("insn","cbz x1, #0xc")]), + Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), Var("#93",Imm(1)), Direct(Tid(668, "%0000029c"))), -Goto(Tid(2_123, "%0000084b"), Attrs([]), Int(1,1), +Goto(Tid(2_232, "%000008b8"), Attrs([]), Int(1,1), Direct(Tid(1_288, "%00000508")))])), Blk(Tid(668, "%0000029c"), - Attrs([Attr("address","0x83C")]), Phis([]), Defs([]), -Jmps([Call(Tid(681, "%000002a9"), Attrs([Attr("address","0x83C"), + Attrs([Attr("address","0x87C")]), Phis([]), Defs([]), +Jmps([Call(Tid(681, "%000002a9"), Attrs([Attr("address","0x87C"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_288, "%00000508"), Attrs([Attr("address","0x834")]), Phis([]), -Defs([Def(Tid(1_294, "%0000050e"), Attrs([Attr("address","0x834"), +Blk(Tid(1_288, "%00000508"), Attrs([Attr("address","0x874")]), Phis([]), +Defs([Def(Tid(1_294, "%0000050e"), Attrs([Attr("address","0x874"), Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), -Jmps([Call(Tid(1_299, "%00000513"), Attrs([Attr("address","0x838"), +Jmps([Call(Tid(1_299, "%00000513"), Attrs([Attr("address","0x878"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), -Sub(Tid(2_072, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x8D0")]), "frame_dummy", Args([Arg(Tid(2_139, "%0000085b"), +Sub(Tid(2_181, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x910")]), "frame_dummy", Args([Arg(Tid(2_248, "%000008c8"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(857, "@frame_dummy"), - Attrs([Attr("address","0x8D0")]), Phis([]), Defs([]), -Jmps([Call(Tid(859, "%0000035b"), Attrs([Attr("address","0x8D0"), + Attrs([Attr("address","0x910")]), Phis([]), Defs([]), +Jmps([Call(Tid(859, "%0000035b"), Attrs([Attr("address","0x910"), Attr("insn","b #-0x90")]), Int(1,1), -(Direct(Tid(2_079, "@register_tm_clones")),))]))])), Sub(Tid(2_073, "@free"), - Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7A0"), -Attr("stub","()")]), "free", Args([Arg(Tid(2_140, "%0000085c"), +(Direct(Tid(2_188, "@register_tm_clones")),))]))])), Sub(Tid(2_182, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7F0"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_249, "%000008c9"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), -Both())]), Blks([Blk(Tid(1_097, "@free"), Attrs([Attr("address","0x7A0")]), - Phis([]), Defs([Def(Tid(1_789, "%000006fd"), Attrs([Attr("address","0x7A0"), +Both())]), Blks([Blk(Tid(1_097, "@free"), Attrs([Attr("address","0x7F0")]), + Phis([]), Defs([Def(Tid(1_789, "%000006fd"), Attrs([Attr("address","0x7F0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_797, "%00000705"), Attrs([Attr("address","0x7A4"), +Def(Tid(1_797, "%00000705"), Attrs([Attr("address","0x7F4"), Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), -Def(Tid(1_804, "%0000070c"), Attrs([Attr("address","0x7A8"), +Def(Tid(1_804, "%0000070c"), Attrs([Attr("address","0x7F8"), Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_809, "%00000711"), - Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_074, "@main"), + Attrs([Attr("address","0x7FC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_183, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x8D4")]), "main", Args([Arg(Tid(2_141, "%0000085d"), +Attr("address","0x914")]), "main", Args([Arg(Tid(2_250, "%000008ca"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), -LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_142, "%0000085e"), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_251, "%000008cb"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), -Var("R1",Imm(64)), Both()), Arg(Tid(2_143, "%0000085f"), +Var("R1",Imm(64)), Both()), Arg(Tid(2_252, "%000008cc"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(861, "@main"), - Attrs([Attr("address","0x8D4")]), Phis([]), Defs([Def(Tid(868, "%00000364"), - Attrs([Attr("address","0x8D4"), + Attrs([Attr("address","0x914")]), Phis([]), Defs([Def(Tid(868, "%00000364"), + Attrs([Attr("address","0x914"), Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("#42",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551568,64))), -Def(Tid(873, "%00000369"), Attrs([Attr("address","0x8D4"), +Def(Tid(873, "%00000369"), Attrs([Attr("address","0x914"), Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(878, "%0000036e"), Attrs([Attr("address","0x8D4"), +Def(Tid(878, "%0000036e"), Attrs([Attr("address","0x914"), Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(882, "%00000372"), Attrs([Attr("address","0x8D4"), +Def(Tid(882, "%00000372"), Attrs([Attr("address","0x914"), Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("R31",Imm(64)), Var("#42",Imm(64))), Def(Tid(890, "%0000037a"), - Attrs([Attr("address","0x8D8"), Attr("insn","str x21, [sp, #0x10]")]), + Attrs([Attr("address","0x918"), Attr("insn","str x21, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R21",Imm(64)),LittleEndian(),64)), -Def(Tid(898, "%00000382"), Attrs([Attr("address","0x8DC"), +Def(Tid(898, "%00000382"), Attrs([Attr("address","0x91C"), Attr("insn","stp x20, x19, [sp, #0x20]")]), Var("#47",Imm(64)), PLUS(Var("R31",Imm(64)),Int(32,64))), Def(Tid(903, "%00000387"), - Attrs([Attr("address","0x8DC"), Attr("insn","stp x20, x19, [sp, #0x20]")]), + Attrs([Attr("address","0x91C"), Attr("insn","stp x20, x19, [sp, #0x20]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#47",Imm(64)),Var("R20",Imm(64)),LittleEndian(),64)), -Def(Tid(908, "%0000038c"), Attrs([Attr("address","0x8DC"), +Def(Tid(908, "%0000038c"), Attrs([Attr("address","0x91C"), Attr("insn","stp x20, x19, [sp, #0x20]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#47",Imm(64)),Int(8,64)),Var("R19",Imm(64)),LittleEndian(),64)), -Def(Tid(915, "%00000393"), Attrs([Attr("address","0x8E0"), +Def(Tid(915, "%00000393"), Attrs([Attr("address","0x920"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), -Def(Tid(922, "%0000039a"), Attrs([Attr("address","0x8E4"), +Def(Tid(922, "%0000039a"), Attrs([Attr("address","0x924"), Attr("insn","mov w0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), -Def(Tid(927, "%0000039f"), Attrs([Attr("address","0x8E8"), -Attr("insn","bl #-0x198")]), Var("R30",Imm(64)), Int(2284,64))]), -Jmps([Call(Tid(930, "%000003a2"), Attrs([Attr("address","0x8E8"), -Attr("insn","bl #-0x198")]), Int(1,1), -(Direct(Tid(2_075, "@malloc")),Direct(Tid(932, "%000003a4"))))])), -Blk(Tid(932, "%000003a4"), Attrs([Attr("address","0x8EC")]), Phis([]), -Defs([Def(Tid(936, "%000003a8"), Attrs([Attr("address","0x8EC"), +Def(Tid(927, "%0000039f"), Attrs([Attr("address","0x928"), +Attr("insn","bl #-0x188")]), Var("R30",Imm(64)), Int(2348,64))]), +Jmps([Call(Tid(930, "%000003a2"), Attrs([Attr("address","0x928"), +Attr("insn","bl #-0x188")]), Int(1,1), +(Direct(Tid(2_184, "@malloc")),Direct(Tid(932, "%000003a4"))))])), +Blk(Tid(932, "%000003a4"), Attrs([Attr("address","0x92C")]), Phis([]), +Defs([Def(Tid(936, "%000003a8"), Attrs([Attr("address","0x92C"), Attr("insn","adrp x21, #0x20000")]), Var("R21",Imm(64)), Int(131072,64)), -Def(Tid(942, "%000003ae"), Attrs([Attr("address","0x8F0"), +Def(Tid(942, "%000003ae"), Attrs([Attr("address","0x930"), Attr("insn","adrp x20, #0x20000")]), Var("R20",Imm(64)), Int(131072,64)), -Def(Tid(949, "%000003b5"), Attrs([Attr("address","0x8F4"), +Def(Tid(949, "%000003b5"), Attrs([Attr("address","0x934"), Attr("insn","add x20, x20, #0x61")]), Var("R20",Imm(64)), PLUS(Var("R20",Imm(64)),Int(97,64))), Def(Tid(957, "%000003bd"), - Attrs([Attr("address","0x8F8"), Attr("insn","mov x19, x0")]), + Attrs([Attr("address","0x938"), Attr("insn","mov x19, x0")]), Var("R19",Imm(64)), Var("R0",Imm(64))), Def(Tid(965, "%000003c5"), - Attrs([Attr("address","0x8FC"), Attr("insn","str x0, [x21, #0x78]")]), + Attrs([Attr("address","0x93C"), Attr("insn","str x0, [x21, #0x78]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R21",Imm(64)),Int(120,64)),Var("R0",Imm(64)),LittleEndian(),64)), -Def(Tid(973, "%000003cd"), Attrs([Attr("address","0x900"), +Def(Tid(973, "%000003cd"), Attrs([Attr("address","0x940"), Attr("insn","mov x0, x20")]), Var("R0",Imm(64)), Var("R20",Imm(64))), -Def(Tid(978, "%000003d2"), Attrs([Attr("address","0x904"), -Attr("insn","bl #-0x1e4")]), Var("R30",Imm(64)), Int(2312,64))]), -Jmps([Call(Tid(981, "%000003d5"), Attrs([Attr("address","0x904"), -Attr("insn","bl #-0x1e4")]), Int(1,1), -(Direct(Tid(2_082, "@strlen")),Direct(Tid(983, "%000003d7"))))])), -Blk(Tid(983, "%000003d7"), Attrs([Attr("address","0x908")]), Phis([]), -Defs([Def(Tid(989, "%000003dd"), Attrs([Attr("address","0x908"), +Def(Tid(978, "%000003d2"), Attrs([Attr("address","0x944"), +Attr("insn","bl #-0x1d4")]), Var("R30",Imm(64)), Int(2376,64))]), +Jmps([Call(Tid(981, "%000003d5"), Attrs([Attr("address","0x944"), +Attr("insn","bl #-0x1d4")]), Int(1,1), +(Direct(Tid(2_191, "@strlen")),Direct(Tid(983, "%000003d7"))))])), +Blk(Tid(983, "%000003d7"), Attrs([Attr("address","0x948")]), Phis([]), +Defs([Def(Tid(989, "%000003dd"), Attrs([Attr("address","0x948"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(997, "%000003e5"), Attrs([Attr("address","0x90C"), +Def(Tid(997, "%000003e5"), Attrs([Attr("address","0x94C"), Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), -Def(Tid(1_005, "%000003ed"), Attrs([Attr("address","0x910"), +Def(Tid(1_005, "%000003ed"), Attrs([Attr("address","0x950"), Attr("insn","mov x1, x20")]), Var("R1",Imm(64)), Var("R20",Imm(64))), -Def(Tid(1_010, "%000003f2"), Attrs([Attr("address","0x914"), -Attr("insn","bl #-0x204")]), Var("R30",Imm(64)), Int(2328,64))]), -Jmps([Call(Tid(1_013, "%000003f5"), Attrs([Attr("address","0x914"), -Attr("insn","bl #-0x204")]), Int(1,1), -(Direct(Tid(2_076, "@memcpy")),Direct(Tid(1_015, "%000003f7"))))])), -Blk(Tid(1_015, "%000003f7"), Attrs([Attr("address","0x918")]), Phis([]), -Defs([Def(Tid(1_021, "%000003fd"), Attrs([Attr("address","0x918"), +Def(Tid(1_010, "%000003f2"), Attrs([Attr("address","0x954"), +Attr("insn","bl #-0x1f4")]), Var("R30",Imm(64)), Int(2392,64))]), +Jmps([Call(Tid(1_013, "%000003f5"), Attrs([Attr("address","0x954"), +Attr("insn","bl #-0x1f4")]), Int(1,1), +(Direct(Tid(2_185, "@memcpy")),Direct(Tid(1_015, "%000003f7"))))])), +Blk(Tid(1_015, "%000003f7"), Attrs([Attr("address","0x958")]), Phis([]), +Defs([Def(Tid(1_021, "%000003fd"), Attrs([Attr("address","0x958"), Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), -Def(Tid(1_026, "%00000402"), Attrs([Attr("address","0x91C"), -Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2336,64))]), -Jmps([Call(Tid(1_029, "%00000405"), Attrs([Attr("address","0x91C"), -Attr("insn","bl #-0x18c")]), Int(1,1), -(Direct(Tid(2_078, "@puts")),Direct(Tid(1_031, "%00000407"))))])), -Blk(Tid(1_031, "%00000407"), Attrs([Attr("address","0x920")]), Phis([]), -Defs([Def(Tid(1_037, "%0000040d"), Attrs([Attr("address","0x920"), +Def(Tid(1_026, "%00000402"), Attrs([Attr("address","0x95C"), +Attr("insn","bl #-0x17c")]), Var("R30",Imm(64)), Int(2400,64))]), +Jmps([Call(Tid(1_029, "%00000405"), Attrs([Attr("address","0x95C"), +Attr("insn","bl #-0x17c")]), Int(1,1), +(Direct(Tid(2_187, "@puts")),Direct(Tid(1_031, "%00000407"))))])), +Blk(Tid(1_031, "%00000407"), Attrs([Attr("address","0x960")]), Phis([]), +Defs([Def(Tid(1_037, "%0000040d"), Attrs([Attr("address","0x960"), Attr("insn","ldr x19, [x21, #0x78]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R21",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_045, "%00000415"), Attrs([Attr("address","0x924"), +Def(Tid(1_045, "%00000415"), Attrs([Attr("address","0x964"), Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), -Def(Tid(1_050, "%0000041a"), Attrs([Attr("address","0x928"), -Attr("insn","bl #-0x208")]), Var("R30",Imm(64)), Int(2348,64))]), -Jmps([Call(Tid(1_052, "%0000041c"), Attrs([Attr("address","0x928"), -Attr("insn","bl #-0x208")]), Int(1,1), -(Direct(Tid(2_082, "@strlen")),Direct(Tid(1_054, "%0000041e"))))])), -Blk(Tid(1_054, "%0000041e"), Attrs([Attr("address","0x92C")]), Phis([]), -Defs([Def(Tid(1_060, "%00000424"), Attrs([Attr("address","0x92C"), +Def(Tid(1_050, "%0000041a"), Attrs([Attr("address","0x968"), +Attr("insn","bl #-0x1f8")]), Var("R30",Imm(64)), Int(2412,64))]), +Jmps([Call(Tid(1_052, "%0000041c"), Attrs([Attr("address","0x968"), +Attr("insn","bl #-0x1f8")]), Int(1,1), +(Direct(Tid(2_191, "@strlen")),Direct(Tid(1_054, "%0000041e"))))])), +Blk(Tid(1_054, "%0000041e"), Attrs([Attr("address","0x96C")]), Phis([]), +Defs([Def(Tid(1_060, "%00000424"), Attrs([Attr("address","0x96C"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_068, "%0000042c"), Attrs([Attr("address","0x930"), +Def(Tid(1_068, "%0000042c"), Attrs([Attr("address","0x970"), Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), -Def(Tid(1_075, "%00000433"), Attrs([Attr("address","0x934"), +Def(Tid(1_075, "%00000433"), Attrs([Attr("address","0x974"), Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), -Def(Tid(1_080, "%00000438"), Attrs([Attr("address","0x938"), -Attr("insn","bl #-0x1d8")]), Var("R30",Imm(64)), Int(2364,64))]), -Jmps([Call(Tid(1_083, "%0000043b"), Attrs([Attr("address","0x938"), -Attr("insn","bl #-0x1d8")]), Int(1,1), -(Direct(Tid(2_077, "@memset")),Direct(Tid(1_085, "%0000043d"))))])), -Blk(Tid(1_085, "%0000043d"), Attrs([Attr("address","0x93C")]), Phis([]), -Defs([Def(Tid(1_091, "%00000443"), Attrs([Attr("address","0x93C"), +Def(Tid(1_080, "%00000438"), Attrs([Attr("address","0x978"), +Attr("insn","bl #-0x1c8")]), Var("R30",Imm(64)), Int(2428,64))]), +Jmps([Call(Tid(1_083, "%0000043b"), Attrs([Attr("address","0x978"), +Attr("insn","bl #-0x1c8")]), Int(1,1), +(Direct(Tid(2_186, "@memset")),Direct(Tid(1_085, "%0000043d"))))])), +Blk(Tid(1_085, "%0000043d"), Attrs([Attr("address","0x97C")]), Phis([]), +Defs([Def(Tid(1_091, "%00000443"), Attrs([Attr("address","0x97C"), Attr("insn","ldr x0, [x21, #0x78]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R21",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_096, "%00000448"), Attrs([Attr("address","0x940"), -Attr("insn","bl #-0x1a0")]), Var("R30",Imm(64)), Int(2372,64))]), -Jmps([Call(Tid(1_099, "%0000044b"), Attrs([Attr("address","0x940"), -Attr("insn","bl #-0x1a0")]), Int(1,1), -(Direct(Tid(2_073, "@free")),Direct(Tid(1_101, "%0000044d"))))])), -Blk(Tid(1_101, "%0000044d"), Attrs([Attr("address","0x944")]), Phis([]), -Defs([Def(Tid(1_108, "%00000454"), Attrs([Attr("address","0x944"), +Def(Tid(1_096, "%00000448"), Attrs([Attr("address","0x980"), +Attr("insn","bl #-0x190")]), Var("R30",Imm(64)), Int(2436,64))]), +Jmps([Call(Tid(1_099, "%0000044b"), Attrs([Attr("address","0x980"), +Attr("insn","bl #-0x190")]), Int(1,1), +(Direct(Tid(2_182, "@free")),Direct(Tid(1_101, "%0000044d"))))])), +Blk(Tid(1_101, "%0000044d"), Attrs([Attr("address","0x984")]), Phis([]), +Defs([Def(Tid(1_108, "%00000454"), Attrs([Attr("address","0x984"), Attr("insn","mov w0, wzr")]), Var("R0",Imm(64)), Int(0,32)), -Def(Tid(1_117, "%0000045d"), Attrs([Attr("address","0x948"), +Def(Tid(1_117, "%0000045d"), Attrs([Attr("address","0x988"), Attr("insn","ldp x20, x19, [sp, #0x20]")]), Var("R20",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(32,64)),LittleEndian(),64)), -Def(Tid(1_121, "%00000461"), Attrs([Attr("address","0x948"), +Def(Tid(1_121, "%00000461"), Attrs([Attr("address","0x988"), Attr("insn","ldp x20, x19, [sp, #0x20]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(40,64)),LittleEndian(),64)), -Def(Tid(1_129, "%00000469"), Attrs([Attr("address","0x94C"), +Def(Tid(1_129, "%00000469"), Attrs([Attr("address","0x98C"), Attr("insn","ldr x21, [sp, #0x10]")]), Var("R21",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_139, "%00000473"), Attrs([Attr("address","0x950"), +Def(Tid(1_139, "%00000473"), Attrs([Attr("address","0x990"), Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_143, "%00000477"), Attrs([Attr("address","0x950"), +Def(Tid(1_143, "%00000477"), Attrs([Attr("address","0x990"), Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_146, "%0000047a"), Attrs([Attr("address","0x950"), +Def(Tid(1_146, "%0000047a"), Attrs([Attr("address","0x990"), Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_151, "%0000047f"), - Attrs([Attr("address","0x954"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_075, "@malloc"), + Attrs([Attr("address","0x994"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_184, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), -Attr("address","0x750"), Attr("malloc","()"), Attr("stub","()")]), "malloc", - Args([Arg(Tid(2_144, "%00000860"), Attrs([Attr("alloc-size","()"), +Attr("address","0x7A0"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_253, "%000008cd"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), -Var("R0",Imm(64)), In()), Arg(Tid(2_145, "%00000861"), +Var("R0",Imm(64)), In()), Arg(Tid(2_254, "%000008ce"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(928, "@malloc"), Attrs([Attr("address","0x750")]), Phis([]), -Defs([Def(Tid(1_664, "%00000680"), Attrs([Attr("address","0x750"), +Blks([Blk(Tid(928, "@malloc"), Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_664, "%00000680"), Attrs([Attr("address","0x7A0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_672, "%00000688"), Attrs([Attr("address","0x754"), +Def(Tid(1_672, "%00000688"), Attrs([Attr("address","0x7A4"), Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), -Def(Tid(1_679, "%0000068f"), Attrs([Attr("address","0x758"), +Def(Tid(1_679, "%0000068f"), Attrs([Attr("address","0x7A8"), Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_684, "%00000694"), - Attrs([Attr("address","0x75C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_076, "@memcpy"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_185, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), -Attr("address","0x710"), Attr("stub","()")]), "memcpy", - Args([Arg(Tid(2_146, "%00000862"), Attrs([Attr("nonnull","()"), +Attr("address","0x760"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_255, "%000008cf"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), -Var("R0",Imm(64)), Both()), Arg(Tid(2_147, "%00000863"), +Var("R0",Imm(64)), Both()), Arg(Tid(2_256, "%000008d0"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), -Arg(Tid(2_148, "%00000864"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Arg(Tid(2_257, "%000008d1"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), -Arg(Tid(2_149, "%00000865"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_258, "%000008d2"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_011, "@memcpy"), Attrs([Attr("address","0x710")]), Phis([]), -Defs([Def(Tid(1_564, "%0000061c"), Attrs([Attr("address","0x710"), +Blks([Blk(Tid(1_011, "@memcpy"), Attrs([Attr("address","0x760")]), Phis([]), +Defs([Def(Tid(1_564, "%0000061c"), Attrs([Attr("address","0x760"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_572, "%00000624"), Attrs([Attr("address","0x714"), +Def(Tid(1_572, "%00000624"), Attrs([Attr("address","0x764"), Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), -Def(Tid(1_579, "%0000062b"), Attrs([Attr("address","0x718"), +Def(Tid(1_579, "%0000062b"), Attrs([Attr("address","0x768"), Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), Var("R16",Imm(64)))]), Jmps([Call(Tid(1_584, "%00000630"), - Attrs([Attr("address","0x71C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_077, "@memset"), + Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_186, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), -Attr("address","0x760"), Attr("stub","()")]), "memset", - Args([Arg(Tid(2_150, "%00000866"), Attrs([Attr("nonnull","()"), +Attr("address","0x7B0"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_259, "%000008d3"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), -Both()), Arg(Tid(2_151, "%00000867"), +Both()), Arg(Tid(2_260, "%000008d4"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("memset_c",Imm(32)), -LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_152, "%00000868"), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_261, "%000008d5"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), -In()), Arg(Tid(2_153, "%00000869"), Attrs([Attr("c.layout","*[ : 8]"), +In()), Arg(Tid(2_262, "%000008d6"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_081, "@memset"), Attrs([Attr("address","0x760")]), Phis([]), -Defs([Def(Tid(1_689, "%00000699"), Attrs([Attr("address","0x760"), +Blks([Blk(Tid(1_081, "@memset"), Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_689, "%00000699"), Attrs([Attr("address","0x7B0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_697, "%000006a1"), Attrs([Attr("address","0x764"), +Def(Tid(1_697, "%000006a1"), Attrs([Attr("address","0x7B4"), Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), -Def(Tid(1_704, "%000006a8"), Attrs([Attr("address","0x768"), +Def(Tid(1_704, "%000006a8"), Attrs([Attr("address","0x7B8"), Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_709, "%000006ad"), - Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_078, "@puts"), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_187, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), -Attr("address","0x790"), Attr("stub","()")]), "puts", - Args([Arg(Tid(2_154, "%0000086a"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("address","0x7E0"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_263, "%000008d7"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_155, "%0000086b"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_264, "%000008d8"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(1_027, "@puts"), Attrs([Attr("address","0x790")]), Phis([]), -Defs([Def(Tid(1_764, "%000006e4"), Attrs([Attr("address","0x790"), +Blks([Blk(Tid(1_027, "@puts"), Attrs([Attr("address","0x7E0")]), Phis([]), +Defs([Def(Tid(1_764, "%000006e4"), Attrs([Attr("address","0x7E0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_772, "%000006ec"), Attrs([Attr("address","0x794"), +Def(Tid(1_772, "%000006ec"), Attrs([Attr("address","0x7E4"), Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), -Def(Tid(1_779, "%000006f3"), Attrs([Attr("address","0x798"), +Def(Tid(1_779, "%000006f3"), Attrs([Attr("address","0x7E8"), Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_784, "%000006f8"), - Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7EC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_079, "@register_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x840")]), - "register_tm_clones", Args([Arg(Tid(2_156, "%0000086c"), +Sub(Tid(2_188, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + "register_tm_clones", Args([Arg(Tid(2_265, "%000008d9"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(683, "@register_tm_clones"), Attrs([Attr("address","0x840")]), - Phis([]), Defs([Def(Tid(687, "%000002af"), Attrs([Attr("address","0x840"), +Blks([Blk(Tid(683, "@register_tm_clones"), Attrs([Attr("address","0x880")]), + Phis([]), Defs([Def(Tid(687, "%000002af"), Attrs([Attr("address","0x880"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(694, "%000002b6"), Attrs([Attr("address","0x844"), +Def(Tid(694, "%000002b6"), Attrs([Attr("address","0x884"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), Def(Tid(700, "%000002bc"), - Attrs([Attr("address","0x848"), Attr("insn","adrp x1, #0x20000")]), + Attrs([Attr("address","0x888"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), Def(Tid(707, "%000002c3"), - Attrs([Attr("address","0x84C"), Attr("insn","add x1, x1, #0x70")]), + Attrs([Attr("address","0x88C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), -Def(Tid(715, "%000002cb"), Attrs([Attr("address","0x850"), +Def(Tid(715, "%000002cb"), Attrs([Attr("address","0x890"), Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(722, "%000002d2"), - Attrs([Attr("address","0x854"), Attr("insn","lsr x2, x1, #63")]), + Attrs([Attr("address","0x894"), Attr("insn","lsr x2, x1, #63")]), Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), -Def(Tid(730, "%000002da"), Attrs([Attr("address","0x858"), +Def(Tid(730, "%000002da"), Attrs([Attr("address","0x898"), Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), -Def(Tid(737, "%000002e1"), Attrs([Attr("address","0x85C"), +Def(Tid(737, "%000002e1"), Attrs([Attr("address","0x89C"), Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(749, "%000002ed"), - Attrs([Attr("address","0x860"), Attr("insn","cbz x1, #0x18")]), + Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), -Jmps([Goto(Tid(743, "%000002e7"), Attrs([Attr("address","0x860"), +Jmps([Goto(Tid(743, "%000002e7"), Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), -Direct(Tid(741, "%000002e5"))), Goto(Tid(2_124, "%0000084c"), Attrs([]), +Direct(Tid(741, "%000002e5"))), Goto(Tid(2_233, "%000008b9"), Attrs([]), Int(1,1), Direct(Tid(1_223, "%000004c7")))])), Blk(Tid(1_223, "%000004c7"), - Attrs([Attr("address","0x864")]), Phis([]), -Defs([Def(Tid(1_227, "%000004cb"), Attrs([Attr("address","0x864"), + Attrs([Attr("address","0x8A4")]), Phis([]), +Defs([Def(Tid(1_227, "%000004cb"), Attrs([Attr("address","0x8A4"), Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), -Def(Tid(1_235, "%000004d3"), Attrs([Attr("address","0x868"), +Def(Tid(1_235, "%000004d3"), Attrs([Attr("address","0x8A8"), Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), -Def(Tid(1_246, "%000004de"), Attrs([Attr("address","0x86C"), +Def(Tid(1_246, "%000004de"), Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), Var("#88",Imm(1)), EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_240, "%000004d8"), - Attrs([Attr("address","0x86C"), Attr("insn","cbz x2, #0xc")]), + Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), Var("#88",Imm(1)), Direct(Tid(741, "%000002e5"))), -Goto(Tid(2_125, "%0000084d"), Attrs([]), Int(1,1), +Goto(Tid(2_234, "%000008ba"), Attrs([]), Int(1,1), Direct(Tid(1_249, "%000004e1")))])), Blk(Tid(741, "%000002e5"), - Attrs([Attr("address","0x878")]), Phis([]), Defs([]), -Jmps([Call(Tid(754, "%000002f2"), Attrs([Attr("address","0x878"), + Attrs([Attr("address","0x8B8")]), Phis([]), Defs([]), +Jmps([Call(Tid(754, "%000002f2"), Attrs([Attr("address","0x8B8"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_249, "%000004e1"), Attrs([Attr("address","0x870")]), Phis([]), -Defs([Def(Tid(1_255, "%000004e7"), Attrs([Attr("address","0x870"), +Blk(Tid(1_249, "%000004e1"), Attrs([Attr("address","0x8B0")]), Phis([]), +Defs([Def(Tid(1_255, "%000004e7"), Attrs([Attr("address","0x8B0"), Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), -Jmps([Call(Tid(1_260, "%000004ec"), Attrs([Attr("address","0x874"), +Jmps([Call(Tid(1_260, "%000004ec"), Attrs([Attr("address","0x8B4"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), -Sub(Tid(2_082, "@strlen"), +Sub(Tid(2_191, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), -Attr("pure","()"), Attr("address","0x720"), Attr("stub","()")]), "strlen", - Args([Arg(Tid(2_157, "%0000086d"), Attrs([Attr("nonnull","()"), +Attr("pure","()"), Attr("address","0x770"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_266, "%000008da"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), -In()), Arg(Tid(2_158, "%0000086e"), +In()), Arg(Tid(2_267, "%000008db"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(979, "@strlen"), - Attrs([Attr("address","0x720")]), Phis([]), -Defs([Def(Tid(1_589, "%00000635"), Attrs([Attr("address","0x720"), + Attrs([Attr("address","0x770")]), Phis([]), +Defs([Def(Tid(1_589, "%00000635"), Attrs([Attr("address","0x770"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_597, "%0000063d"), Attrs([Attr("address","0x724"), +Def(Tid(1_597, "%0000063d"), Attrs([Attr("address","0x774"), Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_604, "%00000644"), Attrs([Attr("address","0x728"), +Def(Tid(1_604, "%00000644"), Attrs([Attr("address","0x778"), Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_609, "%00000649"), - Attrs([Attr("address","0x72C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.bir b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.bir index 9148a7ae9..e490b7ad3 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.bir @@ -1,6 +1,6 @@ -0000084e: program -00000807: sub __cxa_finalize(__cxa_finalize_result) -0000084f: __cxa_finalize_result :: out u32 = low:32[R0] +000008bb: program +00000874: sub __cxa_finalize(__cxa_finalize_result) +000008bc: __cxa_finalize_result :: out u32 = low:32[R0] 000004c3: 00000667: R16 := 0x20000 @@ -8,8 +8,8 @@ 00000676: R16 := R16 + 0x18 0000067b: call R17 with noreturn -00000808: sub __do_global_dtors_aux(__do_global_dtors_aux_result) -00000850: __do_global_dtors_aux_result :: out u32 = low:32[R0] +00000875: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +000008bd: __do_global_dtors_aux_result :: out u32 = low:32[R0] 000002f6: 000002fd: #34 := R31 - 0x20 @@ -22,29 +22,29 @@ 00000329: R0 := pad:32[mem[R19 + 0x70]] 00000335: #36 := ~~0:0[R0] 0000032f: when #36 goto %0000032d -00000844: goto %00000481 +000008b1: goto %00000481 00000481: 00000485: R0 := 0x1F000 0000048d: R0 := mem[R0 + 0xFC8, el]:u64 00000499: #85 := R0 = 0 00000493: when #85 goto %00000491 -00000845: goto %000004b1 +000008b2: goto %000004b1 000004b1: 000004b5: R0 := 0x20000 000004bd: R0 := mem[R0 + 0x58, el]:u64 -000004c2: R30 := 0x8B0 +000004c2: R30 := 0x8F0 000004c5: call @__cxa_finalize with return %00000491 00000491: -0000049e: R30 := 0x8B4 +0000049e: R30 := 0x8F4 000004a0: call @deregister_tm_clones with return %000004a2 000004a2: 000004a7: R0 := 1 000004af: mem := mem with [R19 + 0x70] <- low:8[31:0[R0]] -00000846: goto %0000032d +000008b3: goto %0000032d 0000032d: 0000033d: R19 := mem[R31 + 0x10, el]:u64 @@ -53,12 +53,12 @@ 0000034e: R31 := R31 + 0x20 00000353: call R30 with noreturn -0000080c: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) -00000851: __libc_start_main_main :: in u64 = R0 -00000852: __libc_start_main_arg2 :: in u32 = low:32[R1] -00000853: __libc_start_main_arg3 :: in out u64 = R2 -00000854: __libc_start_main_auxv :: in out u64 = R3 -00000855: __libc_start_main_result :: out u32 = low:32[R0] +00000879: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +000008be: __libc_start_main_main :: in u64 = R0 +000008bf: __libc_start_main_arg2 :: in u32 = low:32[R1] +000008c0: __libc_start_main_arg3 :: in out u64 = R2 +000008c1: __libc_start_main_auxv :: in out u64 = R3 +000008c2: __libc_start_main_result :: out u32 = low:32[R0] 0000023a: 0000064e: R16 := 0x20000 @@ -66,8 +66,8 @@ 0000065d: R16 := R16 + 0x10 00000662: call R17 with noreturn -0000080d: sub _fini(_fini_result) -00000856: _fini_result :: out u32 = low:32[R0] +0000087a: sub _fini(_fini_result) +000008c3: _fini_result :: out u32 = low:32[R0] 00000020: 00000029: #3 := R31 - 0x10 @@ -80,26 +80,26 @@ 0000004f: R31 := R31 + 0x10 00000054: call R30 with noreturn -0000080e: sub _init(_init_result) -00000857: _init_result :: out u32 = low:32[R0] +0000087b: sub _init(_init_result) +000008c4: _init_result :: out u32 = low:32[R0] -0000072d: -00000736: #116 := R31 - 0x10 -0000073b: mem := mem with [#116, el]:u64 <- R29 -00000740: mem := mem with [#116 + 8, el]:u64 <- R30 -00000744: R31 := #116 -0000074b: R29 := R31 -00000750: R30 := 0x6E8 -00000752: call @call_weak_fn with return %00000754 +0000079a: +000007a3: #116 := R31 - 0x10 +000007a8: mem := mem with [#116, el]:u64 <- R29 +000007ad: mem := mem with [#116 + 8, el]:u64 <- R30 +000007b1: R31 := #116 +000007b8: R29 := R31 +000007bd: R30 := 0x738 +000007bf: call @call_weak_fn with return %000007c1 -00000754: -0000075c: R29 := mem[R31, el]:u64 -00000760: R30 := mem[R31 + 8, el]:u64 -00000763: R31 := R31 + 0x10 -00000768: call R30 with noreturn +000007c1: +000007c9: R29 := mem[R31, el]:u64 +000007cd: R30 := mem[R31 + 8, el]:u64 +000007d0: R31 := R31 + 0x10 +000007d5: call R30 with noreturn -0000080f: sub _start(_start_result) -00000858: _start_result :: out u32 = low:32[R0] +0000087c: sub _start(_start_result) +000008c5: _start_result :: out u32 = low:32[R0] 000001f0: 000001f6: R29 := 0 @@ -112,17 +112,17 @@ 00000228: R0 := mem[R0 + 0xFD8, el]:u64 0000022e: R3 := 0 00000234: R4 := 0 -00000239: R30 := 0x7F0 +00000239: R30 := 0x830 0000023c: call @__libc_start_main with return %0000023e 0000023e: -00000241: R30 := 0x7F4 -00000244: call @abort with return %00000847 +00000241: R30 := 0x834 +00000244: call @abort with return %000008b4 -00000847: -00000848: call @call_weak_fn with noreturn +000008b4: +000008b5: call @call_weak_fn with noreturn -00000812: sub abort() +0000087f: sub abort() 00000242: @@ -131,15 +131,15 @@ 000006da: R16 := R16 + 0x38 000006df: call R17 with noreturn -00000813: sub call_weak_fn(call_weak_fn_result) -00000859: call_weak_fn_result :: out u32 = low:32[R0] +00000880: sub call_weak_fn(call_weak_fn_result) +000008c6: call_weak_fn_result :: out u32 = low:32[R0] 00000246: 0000024a: R0 := 0x1F000 00000252: R0 := mem[R0 + 0xFD0, el]:u64 0000025e: #12 := R0 = 0 00000258: when #12 goto %00000256 -00000849: goto %00000515 +000008b6: goto %00000515 00000256: 00000263: call R30 with noreturn @@ -153,8 +153,8 @@ 000006c1: R16 := R16 + 0x30 000006c6: call R17 with noreturn -00000815: sub deregister_tm_clones(deregister_tm_clones_result) -0000085a: deregister_tm_clones_result :: out u32 = low:32[R0] +00000882: sub deregister_tm_clones(deregister_tm_clones_result) +000008c7: deregister_tm_clones_result :: out u32 = low:32[R0] 00000269: 0000026d: R0 := 0x20000 @@ -170,14 +170,14 @@ & ~63:63[#16] 000002a4: #21 := ZF 0000029e: when #21 goto %0000029c -0000084a: goto %000004ee +000008b7: goto %000004ee 000004ee: 000004f2: R1 := 0x1F000 000004fa: R1 := mem[R1 + 0xFC0, el]:u64 00000505: #93 := R1 = 0 000004ff: when #93 goto %0000029c -0000084b: goto %00000508 +000008b8: goto %00000508 0000029c: 000002a9: call R30 with noreturn @@ -186,14 +186,14 @@ 0000050e: R16 := R1 00000513: call R16 with noreturn -00000818: sub frame_dummy(frame_dummy_result) -0000085b: frame_dummy_result :: out u32 = low:32[R0] +00000885: sub frame_dummy(frame_dummy_result) +000008c8: frame_dummy_result :: out u32 = low:32[R0] 00000359: 0000035b: call @register_tm_clones with noreturn -00000819: sub free(free_ptr) -0000085c: free_ptr :: in out u64 = R0 +00000886: sub free(free_ptr) +000008c9: free_ptr :: in out u64 = R0 00000449: 000006fd: R16 := 0x20000 @@ -201,10 +201,10 @@ 0000070c: R16 := R16 + 0x48 00000711: call R17 with noreturn -0000081a: sub main(main_argc, main_argv, main_result) -0000085d: main_argc :: in u32 = low:32[R0] -0000085e: main_argv :: in out u64 = R1 -0000085f: main_result :: out u32 = low:32[R0] +00000887: sub main(main_argc, main_argv, main_result) +000008ca: main_argc :: in u32 = low:32[R0] +000008cb: main_argv :: in out u64 = R1 +000008cc: main_result :: out u32 = low:32[R0] 0000035d: 00000364: #42 := R31 - 0x30 @@ -217,7 +217,7 @@ 0000038c: mem := mem with [#47 + 8, el]:u64 <- R19 00000393: R29 := R31 0000039a: R0 := 0xB -0000039f: R30 := 0x8EC +0000039f: R30 := 0x92C 000003a2: call @malloc with return %000003a4 000003a4: @@ -227,37 +227,37 @@ 000003bd: R19 := R0 000003c5: mem := mem with [R21 + 0x78, el]:u64 <- R0 000003cd: R0 := R20 -000003d2: R30 := 0x908 +000003d2: R30 := 0x948 000003d5: call @strlen with return %000003d7 000003d7: 000003dd: R2 := R0 000003e5: R0 := R19 000003ed: R1 := R20 -000003f2: R30 := 0x918 +000003f2: R30 := 0x958 000003f5: call @memcpy with return %000003f7 000003f7: 000003fd: R0 := R19 -00000402: R30 := 0x920 +00000402: R30 := 0x960 00000405: call @puts with return %00000407 00000407: 0000040d: R19 := mem[R21 + 0x78, el]:u64 00000415: R0 := R19 -0000041a: R30 := 0x92C +0000041a: R30 := 0x96C 0000041c: call @strlen with return %0000041e 0000041e: 00000424: R2 := R0 0000042c: R0 := R19 00000433: R1 := 1 -00000438: R30 := 0x93C +00000438: R30 := 0x97C 0000043b: call @memset with return %0000043d 0000043d: 00000443: R0 := mem[R21 + 0x78, el]:u64 -00000448: R30 := 0x944 +00000448: R30 := 0x984 0000044b: call @free with return %0000044d 0000044d: @@ -270,9 +270,9 @@ 0000047a: R31 := R31 + 0x30 0000047f: call R30 with noreturn -0000081b: sub malloc(malloc_size, malloc_result) -00000860: malloc_size :: in u64 = R0 -00000861: malloc_result :: out u64 = R0 +00000888: sub malloc(malloc_size, malloc_result) +000008cd: malloc_size :: in u64 = R0 +000008ce: malloc_result :: out u64 = R0 000003a0: 00000680: R16 := 0x20000 @@ -280,11 +280,11 @@ 0000068f: R16 := R16 + 0x20 00000694: call R17 with noreturn -0000081c: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) -00000862: memcpy_dst :: in out u64 = R0 -00000863: memcpy_src :: in out u64 = R1 -00000864: memcpy_n :: in u64 = R2 -00000865: memcpy_result :: out u64 = R0 +00000889: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +000008cf: memcpy_dst :: in out u64 = R0 +000008d0: memcpy_src :: in out u64 = R1 +000008d1: memcpy_n :: in u64 = R2 +000008d2: memcpy_result :: out u64 = R0 000003f3: 0000061c: R16 := 0x20000 @@ -292,11 +292,11 @@ 0000062b: R16 := R16 00000630: call R17 with noreturn -0000081d: sub memset(memset_buf, memset_c, memset_n, memset_result) -00000866: memset_buf :: in out u64 = R0 -00000867: memset_c :: in u32 = low:32[R1] -00000868: memset_n :: in u64 = R2 -00000869: memset_result :: out u64 = R0 +0000088a: sub memset(memset_buf, memset_c, memset_n, memset_result) +000008d3: memset_buf :: in out u64 = R0 +000008d4: memset_c :: in u32 = low:32[R1] +000008d5: memset_n :: in u64 = R2 +000008d6: memset_result :: out u64 = R0 00000439: 00000699: R16 := 0x20000 @@ -304,9 +304,9 @@ 000006a8: R16 := R16 + 0x28 000006ad: call R17 with noreturn -0000081e: sub puts(puts_s, puts_result) -0000086a: puts_s :: in u64 = R0 -0000086b: puts_result :: out u32 = low:32[R0] +0000088b: sub puts(puts_s, puts_result) +000008d7: puts_s :: in u64 = R0 +000008d8: puts_result :: out u32 = low:32[R0] 00000403: 000006e4: R16 := 0x20000 @@ -314,8 +314,8 @@ 000006f3: R16 := R16 + 0x40 000006f8: call R17 with noreturn -0000081f: sub register_tm_clones(register_tm_clones_result) -0000086c: register_tm_clones_result :: out u32 = low:32[R0] +0000088c: sub register_tm_clones(register_tm_clones_result) +000008d9: register_tm_clones_result :: out u32 = low:32[R0] 000002ab: 000002af: R0 := 0x20000 @@ -328,14 +328,14 @@ 000002e1: R1 := R1 >> 1 000002ed: #30 := R1 = 0 000002e7: when #30 goto %000002e5 -0000084c: goto %000004c7 +000008b9: goto %000004c7 000004c7: 000004cb: R2 := 0x1F000 000004d3: R2 := mem[R2 + 0xFE0, el]:u64 000004de: #88 := R2 = 0 000004d8: when #88 goto %000002e5 -0000084d: goto %000004e1 +000008ba: goto %000004e1 000002e5: 000002f2: call R30 with noreturn @@ -344,9 +344,9 @@ 000004e7: R16 := R2 000004ec: call R16 with noreturn -00000822: sub strlen(strlen_s, strlen_result) -0000086d: strlen_s :: in u64 = R0 -0000086e: strlen_result :: out u64 = R0 +0000088f: sub strlen(strlen_s, strlen_result) +000008da: strlen_s :: in u64 = R0 +000008db: strlen_result :: out u64 = R0 000003d3: 00000635: R16 := 0x20000 diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.relf b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.relf index e70b5eeec..cc545d703 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.relf +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.relf @@ -1,16 +1,16 @@ -Relocation section '.rela.dyn' at offset 0x528 contains 8 entries: +Relocation section '.rela.dyn' at offset 0x578 contains 8 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -000000000001fdc8 0000000000000403 R_AARCH64_RELATIVE 8d0 -000000000001fdd0 0000000000000403 R_AARCH64_RELATIVE 880 -000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 8d4 +000000000001fdb8 0000000000000403 R_AARCH64_RELATIVE 910 +000000000001fdc0 0000000000000403 R_AARCH64_RELATIVE 8c0 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 914 0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 000000000001ffc0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 000000000001ffc8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 000000000001ffd0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: +Relocation section '.rela.plt' at offset 0x638 contains 10 entries: Offset Info Type Symbol's Value Symbol's Name + Addend 0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 @@ -26,8 +26,8 @@ Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: Symbol table '.dynsym' contains 15 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init - 2: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 1: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) @@ -41,104 +41,105 @@ Symbol table '.dynsym' contains 15 entries: 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable -Symbol table '.symtab' contains 99 entries: +Symbol table '.symtab' contains 100 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag - 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .gnu.hash - 5: 00000000000002b8 0 SECTION LOCAL DEFAULT 5 .dynsym - 6: 0000000000000420 0 SECTION LOCAL DEFAULT 6 .dynstr - 7: 00000000000004d4 0 SECTION LOCAL DEFAULT 7 .gnu.version - 8: 00000000000004f8 0 SECTION LOCAL DEFAULT 8 .gnu.version_r - 9: 0000000000000528 0 SECTION LOCAL DEFAULT 9 .rela.dyn - 10: 00000000000005e8 0 SECTION LOCAL DEFAULT 10 .rela.plt - 11: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init - 12: 00000000000006f0 0 SECTION LOCAL DEFAULT 12 .plt - 13: 00000000000007c0 0 SECTION LOCAL DEFAULT 13 .text - 14: 0000000000000958 0 SECTION LOCAL DEFAULT 14 .fini - 15: 000000000000096c 0 SECTION LOCAL DEFAULT 15 .rodata - 16: 0000000000000970 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr - 17: 00000000000009b0 0 SECTION LOCAL DEFAULT 17 .eh_frame - 18: 000000000001fdc8 0 SECTION LOCAL DEFAULT 18 .init_array - 19: 000000000001fdd0 0 SECTION LOCAL DEFAULT 19 .fini_array - 20: 000000000001fdd8 0 SECTION LOCAL DEFAULT 20 .dynamic - 21: 000000000001ffb8 0 SECTION LOCAL DEFAULT 21 .got - 22: 000000000001ffe8 0 SECTION LOCAL DEFAULT 22 .got.plt - 23: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data - 24: 0000000000020070 0 SECTION LOCAL DEFAULT 24 .bss - 25: 0000000000000000 0 SECTION LOCAL DEFAULT 25 .comment - 26: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o - 27: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d - 28: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag - 29: 00000000000007c0 0 NOTYPE LOCAL DEFAULT 13 $x - 30: 00000000000009c4 0 NOTYPE LOCAL DEFAULT 17 $d - 31: 000000000000096c 0 NOTYPE LOCAL DEFAULT 15 $d - 32: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o - 33: 00000000000007f4 0 NOTYPE LOCAL DEFAULT 13 $x - 34: 00000000000007f4 20 FUNC LOCAL DEFAULT 13 call_weak_fn - 35: 00000000000006d8 0 NOTYPE LOCAL DEFAULT 11 $x - 36: 0000000000000958 0 NOTYPE LOCAL DEFAULT 14 $x - 37: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o - 38: 00000000000006e8 0 NOTYPE LOCAL DEFAULT 11 $x - 39: 0000000000000964 0 NOTYPE LOCAL DEFAULT 14 $x - 40: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 41: 0000000000000810 0 NOTYPE LOCAL DEFAULT 13 $x - 42: 0000000000000810 0 FUNC LOCAL DEFAULT 13 deregister_tm_clones - 43: 0000000000000840 0 FUNC LOCAL DEFAULT 13 register_tm_clones - 44: 0000000000020058 0 NOTYPE LOCAL DEFAULT 23 $d - 45: 0000000000000880 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux - 46: 0000000000020070 1 OBJECT LOCAL DEFAULT 24 completed.0 - 47: 000000000001fdd0 0 NOTYPE LOCAL DEFAULT 19 $d - 48: 000000000001fdd0 0 OBJECT LOCAL DEFAULT 19 __do_global_dtors_aux_fini_array_entry - 49: 00000000000008d0 0 FUNC LOCAL DEFAULT 13 frame_dummy - 50: 000000000001fdc8 0 NOTYPE LOCAL DEFAULT 18 $d - 51: 000000000001fdc8 0 OBJECT LOCAL DEFAULT 18 __frame_dummy_init_array_entry - 52: 00000000000009d8 0 NOTYPE LOCAL DEFAULT 17 $d - 53: 0000000000020070 0 NOTYPE LOCAL DEFAULT 24 $d - 54: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c - 55: 00000000000008d4 0 NOTYPE LOCAL DEFAULT 13 $x.0 - 56: 0000000000020060 0 NOTYPE LOCAL DEFAULT 23 $d.1 - 57: 0000000000020078 0 NOTYPE LOCAL DEFAULT 24 $d.2 - 58: 000000000000003e 0 NOTYPE LOCAL DEFAULT 25 $d.3 - 59: 0000000000000a38 0 NOTYPE LOCAL DEFAULT 17 $d.4 - 60: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 61: 0000000000000a7c 0 NOTYPE LOCAL DEFAULT 17 $d - 62: 0000000000000a7c 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__ - 63: 0000000000000000 0 FILE LOCAL DEFAULT ABS - 64: 000000000001fdd8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC - 65: 0000000000000970 0 NOTYPE LOCAL DEFAULT 16 __GNU_EH_FRAME_HDR - 66: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - 67: 00000000000006f0 0 NOTYPE LOCAL DEFAULT 12 $x - 68: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 - 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 - 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 - 71: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 72: 0000000000020050 0 NOTYPE WEAK DEFAULT 23 data_start - 73: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start__ - 74: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 - 75: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _bss_end__ - 76: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 23 _edata - 77: 0000000000000958 0 FUNC GLOBAL HIDDEN 14 _fini - 78: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __bss_end__ - 79: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 - 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 - 81: 0000000000020060 1 OBJECT GLOBAL DEFAULT 23 password - 82: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 23 __data_start - 83: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 84: 0000000000020058 0 OBJECT GLOBAL HIDDEN 23 __dso_handle - 85: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 - 86: 000000000000096c 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used - 87: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 - 88: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _end - 89: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 - 90: 00000000000007c0 52 FUNC GLOBAL DEFAULT 13 _start - 91: 0000000000020078 8 OBJECT GLOBAL DEFAULT 24 buf - 92: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __end__ - 93: 0000000000020061 11 OBJECT GLOBAL DEFAULT 23 stext - 94: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start - 95: 00000000000008d4 132 FUNC GLOBAL DEFAULT 13 main - 96: 0000000000020070 0 OBJECT GLOBAL HIDDEN 23 __TMC_END__ - 97: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 98: 00000000000006d8 0 FUNC GLOBAL HIDDEN 11 _init + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .hash + 5: 00000000000002e8 0 SECTION LOCAL DEFAULT 5 .gnu.hash + 6: 0000000000000308 0 SECTION LOCAL DEFAULT 6 .dynsym + 7: 0000000000000470 0 SECTION LOCAL DEFAULT 7 .dynstr + 8: 0000000000000524 0 SECTION LOCAL DEFAULT 8 .gnu.version + 9: 0000000000000548 0 SECTION LOCAL DEFAULT 9 .gnu.version_r + 10: 0000000000000578 0 SECTION LOCAL DEFAULT 10 .rela.dyn + 11: 0000000000000638 0 SECTION LOCAL DEFAULT 11 .rela.plt + 12: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 13: 0000000000000740 0 SECTION LOCAL DEFAULT 13 .plt + 14: 0000000000000800 0 SECTION LOCAL DEFAULT 14 .text + 15: 0000000000000998 0 SECTION LOCAL DEFAULT 15 .fini + 16: 00000000000009ac 0 SECTION LOCAL DEFAULT 16 .rodata + 17: 00000000000009b0 0 SECTION LOCAL DEFAULT 17 .eh_frame_hdr + 18: 00000000000009f0 0 SECTION LOCAL DEFAULT 18 .eh_frame + 19: 000000000001fdb8 0 SECTION LOCAL DEFAULT 19 .init_array + 20: 000000000001fdc0 0 SECTION LOCAL DEFAULT 20 .fini_array + 21: 000000000001fdc8 0 SECTION LOCAL DEFAULT 21 .dynamic + 22: 000000000001ffb8 0 SECTION LOCAL DEFAULT 22 .got + 23: 000000000001ffe8 0 SECTION LOCAL DEFAULT 23 .got.plt + 24: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 25: 0000000000020070 0 SECTION LOCAL DEFAULT 25 .bss + 26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment + 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 28: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 29: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 30: 0000000000000800 0 NOTYPE LOCAL DEFAULT 14 $x + 31: 0000000000000a04 0 NOTYPE LOCAL DEFAULT 18 $d + 32: 00000000000009ac 0 NOTYPE LOCAL DEFAULT 16 $d + 33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 34: 0000000000000834 0 NOTYPE LOCAL DEFAULT 14 $x + 35: 0000000000000834 20 FUNC LOCAL DEFAULT 14 call_weak_fn + 36: 0000000000000728 0 NOTYPE LOCAL DEFAULT 12 $x + 37: 0000000000000998 0 NOTYPE LOCAL DEFAULT 15 $x + 38: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 39: 0000000000000738 0 NOTYPE LOCAL DEFAULT 12 $x + 40: 00000000000009a4 0 NOTYPE LOCAL DEFAULT 15 $x + 41: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 42: 0000000000000850 0 NOTYPE LOCAL DEFAULT 14 $x + 43: 0000000000000850 0 FUNC LOCAL DEFAULT 14 deregister_tm_clones + 44: 0000000000000880 0 FUNC LOCAL DEFAULT 14 register_tm_clones + 45: 0000000000020058 0 NOTYPE LOCAL DEFAULT 24 $d + 46: 00000000000008c0 0 FUNC LOCAL DEFAULT 14 __do_global_dtors_aux + 47: 0000000000020070 1 OBJECT LOCAL DEFAULT 25 completed.0 + 48: 000000000001fdc0 0 NOTYPE LOCAL DEFAULT 20 $d + 49: 000000000001fdc0 0 OBJECT LOCAL DEFAULT 20 __do_global_dtors_aux_fini_array_entry + 50: 0000000000000910 0 FUNC LOCAL DEFAULT 14 frame_dummy + 51: 000000000001fdb8 0 NOTYPE LOCAL DEFAULT 19 $d + 52: 000000000001fdb8 0 OBJECT LOCAL DEFAULT 19 __frame_dummy_init_array_entry + 53: 0000000000000a18 0 NOTYPE LOCAL DEFAULT 18 $d + 54: 0000000000020070 0 NOTYPE LOCAL DEFAULT 25 $d + 55: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 56: 0000000000000914 0 NOTYPE LOCAL DEFAULT 14 $x.0 + 57: 0000000000020060 0 NOTYPE LOCAL DEFAULT 24 $d.1 + 58: 0000000000020078 0 NOTYPE LOCAL DEFAULT 25 $d.2 + 59: 000000000000001d 0 NOTYPE LOCAL DEFAULT 26 $d.3 + 60: 0000000000000a78 0 NOTYPE LOCAL DEFAULT 18 $d.4 + 61: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 62: 0000000000000abc 0 NOTYPE LOCAL DEFAULT 18 $d + 63: 0000000000000abc 0 OBJECT LOCAL DEFAULT 18 __FRAME_END__ + 64: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 65: 000000000001fdc8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 66: 00000000000009b0 0 NOTYPE LOCAL DEFAULT 17 __GNU_EH_FRAME_HDR + 67: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 68: 0000000000000740 0 NOTYPE LOCAL DEFAULT 13 $x + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 71: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 72: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 73: 0000000000020050 0 NOTYPE WEAK DEFAULT 24 data_start + 74: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start__ + 75: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 76: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _bss_end__ + 77: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 _edata + 78: 0000000000000998 0 FUNC GLOBAL HIDDEN 15 _fini + 79: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __bss_end__ + 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 81: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 82: 0000000000020060 1 OBJECT GLOBAL DEFAULT 24 password + 83: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 24 __data_start + 84: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 85: 0000000000020058 0 OBJECT GLOBAL HIDDEN 24 __dso_handle + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 87: 00000000000009ac 4 OBJECT GLOBAL DEFAULT 16 _IO_stdin_used + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 89: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _end + 90: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 91: 0000000000000800 52 FUNC GLOBAL DEFAULT 14 _start + 92: 0000000000020078 8 OBJECT GLOBAL DEFAULT 25 buf + 93: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __end__ + 94: 0000000000020061 11 OBJECT GLOBAL DEFAULT 24 stext + 95: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start + 96: 0000000000000914 132 FUNC GLOBAL DEFAULT 14 main + 97: 0000000000020070 0 OBJECT GLOBAL HIDDEN 24 __TMC_END__ + 98: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 99: 0000000000000728 0 FUNC GLOBAL HIDDEN 12 _init diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt index a5fe0545d..6be3f033b 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt @@ -1,773 +1,775 @@ Project(Attrs([Attr("filename","\"a.out\""), -Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2428 20 2428)\n(code-region 1984 444 1984)\n(code-region 1776 192 1776)\n(code-region 1752 24 1752)\n(code-start 2036)\n(code-start 1984)\n(code-start 2260)\n(entry-point 1984)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1752 0)\n(llvm:code-entry main 2260 168)\n(llvm:code-entry _start 1984 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2428 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2256 0)\n(llvm:code-entry __do_global_dtors_aux 2176 0)\n(llvm:code-entry register_tm_clones 2112 0)\n(llvm:code-entry deregister_tm_clones 2064 0)\n(llvm:code-entry call_weak_fn 2036 20)\n(llvm:code-entry .fini 2428 20)\n(llvm:code-entry .text 1984 444)\n(llvm:code-entry .plt 1776 192)\n(llvm:code-entry .init 1752 24)\n(llvm:elf-program-header 08 64968 568)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2452 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64984 480)\n(llvm:elf-program-header 03 64968 676)\n(llvm:elf-program-header 02 0 2712)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130504 568)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2452 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130520 480)\n(llvm:elf-virtual-program-header 03 130504 696)\n(llvm:elf-virtual-program-header 02 0 2712)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 1984)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68804)\n(llvm:section-entry .strtab 0 716 68088)\n(llvm:section-entry .symtab 0 2376 65712)\n(llvm:section-entry .comment 0 63 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130520 480 64984)\n(llvm:section-entry .fini_array 130512 8 64976)\n(llvm:section-entry .init_array 130504 8 64968)\n(llvm:section-entry .eh_frame 2512 200 2512)\n(llvm:section-entry .eh_frame_hdr 2452 60 2452)\n(llvm:section-entry .rodata 2448 4 2448)\n(llvm:section-entry .fini 2428 20 2428)\n(llvm:section-entry .text 1984 444 1984)\n(llvm:section-entry .plt 1776 192 1776)\n(llvm:section-entry .init 1752 24 1752)\n(llvm:section-entry .rela.plt 1512 240 1512)\n(llvm:section-entry .rela.dyn 1320 192 1320)\n(llvm:section-entry .gnu.version_r 1272 48 1272)\n(llvm:section-entry .gnu.version 1236 30 1236)\n(llvm:section-entry .dynstr 1056 179 1056)\n(llvm:section-entry .dynsym 696 360 696)\n(llvm:section-entry .gnu.hash 664 28 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1752 0 1752 1752)\n(llvm:symbol-entry main 2260 168 2260 2260)\n(llvm:symbol-entry _start 1984 52 1984 1984)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2428 0 2428 2428)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2256 0 2256 2256)\n(llvm:symbol-entry __do_global_dtors_aux 2176 0 2176 2176)\n(llvm:symbol-entry register_tm_clones 2112 0 2112 2112)\n(llvm:symbol-entry deregister_tm_clones 2064 0 2064 2064)\n(llvm:symbol-entry call_weak_fn 2036 20 2036 2036)\n(mapped 0 2712 0)\n(mapped 130504 676 64968)\n(named-region 0 2712 02)\n(named-region 130504 696 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 28 .gnu.hash)\n(named-region 696 360 .dynsym)\n(named-region 1056 179 .dynstr)\n(named-region 1236 30 .gnu.version)\n(named-region 1272 48 .gnu.version_r)\n(named-region 1320 192 .rela.dyn)\n(named-region 1512 240 .rela.plt)\n(named-region 1752 24 .init)\n(named-region 1776 192 .plt)\n(named-region 1984 444 .text)\n(named-region 2428 20 .fini)\n(named-region 2448 4 .rodata)\n(named-region 2452 60 .eh_frame_hdr)\n(named-region 2512 200 .eh_frame)\n(named-region 130504 8 .init_array)\n(named-region 130512 8 .fini_array)\n(named-region 130520 480 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 63 .comment)\n(named-region 0 2376 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2036 call_weak_fn)\n(named-symbol 2064 deregister_tm_clones)\n(named-symbol 2112 register_tm_clones)\n(named-symbol 2176 __do_global_dtors_aux)\n(named-symbol 2256 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2428 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 1984 _start)\n(named-symbol 2260 main)\n(named-symbol 1752 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 28)\n(section 696 360)\n(section 1056 179)\n(section 1236 30)\n(section 1272 48)\n(section 1320 192)\n(section 1512 240)\n(section 1752 24)\n(section 1776 192)\n(section 1984 444)\n(section 2428 20)\n(section 2448 4)\n(section 2452 60)\n(section 2512 200)\n(section 130504 8)\n(section 130512 8)\n(section 130520 480)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 63)\n(section 0 2376)\n(section 0 716)\n(section 0 259)\n(segment 0 2712 true false true)\n(segment 130504 696 true true false)\n(subarch v8)\n(symbol-chunk 2036 20 2036)\n(symbol-chunk 1984 52 1984)\n(symbol-chunk 2260 168 2260)\n(symbol-value 2036 2036)\n(symbol-value 2064 2064)\n(symbol-value 2112 2112)\n(symbol-value 2176 2176)\n(symbol-value 2256 2256)\n(symbol-value 2428 2428)\n(symbol-value 1984 1984)\n(symbol-value 2260 2260)\n(symbol-value 1752 1752)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2492 20 2492)\n(code-region 2048 444 2048)\n(code-region 1856 192 1856)\n(code-region 1832 24 1832)\n(code-start 2100)\n(code-start 2048)\n(code-start 2324)\n(entry-point 2048)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1832 0)\n(llvm:code-entry main 2324 168)\n(llvm:code-entry _start 2048 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2492 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2320 0)\n(llvm:code-entry __do_global_dtors_aux 2240 0)\n(llvm:code-entry register_tm_clones 2176 0)\n(llvm:code-entry deregister_tm_clones 2128 0)\n(llvm:code-entry call_weak_fn 2100 20)\n(llvm:code-entry .fini 2492 20)\n(llvm:code-entry .text 2048 444)\n(llvm:code-entry .plt 1856 192)\n(llvm:code-entry .init 1832 24)\n(llvm:elf-program-header 08 64952 584)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2516 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64968 496)\n(llvm:elf-program-header 03 64952 692)\n(llvm:elf-program-header 02 0 2776)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130488 584)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2516 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130504 496)\n(llvm:elf-virtual-program-header 03 130488 712)\n(llvm:elf-virtual-program-header 02 0 2776)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2048)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68820)\n(llvm:section-entry .strtab 0 716 68104)\n(llvm:section-entry .symtab 0 2400 65704)\n(llvm:section-entry .comment 0 58 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130504 496 64968)\n(llvm:section-entry .fini_array 130496 8 64960)\n(llvm:section-entry .init_array 130488 8 64952)\n(llvm:section-entry .eh_frame 2576 200 2576)\n(llvm:section-entry .eh_frame_hdr 2516 60 2516)\n(llvm:section-entry .rodata 2512 4 2512)\n(llvm:section-entry .fini 2492 20 2492)\n(llvm:section-entry .text 2048 444 2048)\n(llvm:section-entry .plt 1856 192 1856)\n(llvm:section-entry .init 1832 24 1832)\n(llvm:section-entry .rela.plt 1592 240 1592)\n(llvm:section-entry .rela.dyn 1400 192 1400)\n(llvm:section-entry .gnu.version_r 1352 48 1352)\n(llvm:section-entry .gnu.version 1316 30 1316)\n(llvm:section-entry .dynstr 1136 179 1136)\n(llvm:section-entry .dynsym 776 360 776)\n(llvm:section-entry .gnu.hash 744 28 744)\n(llvm:section-entry .hash 664 80 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1832 0 1832 1832)\n(llvm:symbol-entry main 2324 168 2324 2324)\n(llvm:symbol-entry _start 2048 52 2048 2048)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2492 0 2492 2492)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2320 0 2320 2320)\n(llvm:symbol-entry __do_global_dtors_aux 2240 0 2240 2240)\n(llvm:symbol-entry register_tm_clones 2176 0 2176 2176)\n(llvm:symbol-entry deregister_tm_clones 2128 0 2128 2128)\n(llvm:symbol-entry call_weak_fn 2100 20 2100 2100)\n(mapped 0 2776 0)\n(mapped 130488 692 64952)\n(named-region 0 2776 02)\n(named-region 130488 712 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 80 .hash)\n(named-region 744 28 .gnu.hash)\n(named-region 776 360 .dynsym)\n(named-region 1136 179 .dynstr)\n(named-region 1316 30 .gnu.version)\n(named-region 1352 48 .gnu.version_r)\n(named-region 1400 192 .rela.dyn)\n(named-region 1592 240 .rela.plt)\n(named-region 1832 24 .init)\n(named-region 1856 192 .plt)\n(named-region 2048 444 .text)\n(named-region 2492 20 .fini)\n(named-region 2512 4 .rodata)\n(named-region 2516 60 .eh_frame_hdr)\n(named-region 2576 200 .eh_frame)\n(named-region 130488 8 .init_array)\n(named-region 130496 8 .fini_array)\n(named-region 130504 496 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 58 .comment)\n(named-region 0 2400 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2100 call_weak_fn)\n(named-symbol 2128 deregister_tm_clones)\n(named-symbol 2176 register_tm_clones)\n(named-symbol 2240 __do_global_dtors_aux)\n(named-symbol 2320 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2492 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2048 _start)\n(named-symbol 2324 main)\n(named-symbol 1832 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 80)\n(section 744 28)\n(section 776 360)\n(section 1136 179)\n(section 1316 30)\n(section 1352 48)\n(section 1400 192)\n(section 1592 240)\n(section 1832 24)\n(section 1856 192)\n(section 2048 444)\n(section 2492 20)\n(section 2512 4)\n(section 2516 60)\n(section 2576 200)\n(section 130488 8)\n(section 130496 8)\n(section 130504 496)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 58)\n(section 0 2400)\n(section 0 716)\n(section 0 259)\n(segment 0 2776 true false true)\n(segment 130488 712 true true false)\n(subarch v8)\n(symbol-chunk 2100 20 2100)\n(symbol-chunk 2048 52 2048)\n(symbol-chunk 2324 168 2324)\n(symbol-value 2100 2100)\n(symbol-value 2128 2128)\n(symbol-value 2176 2176)\n(symbol-value 2240 2240)\n(symbol-value 2320 2320)\n(symbol-value 2492 2492)\n(symbol-value 2048 2048)\n(symbol-value 2324 2324)\n(symbol-value 1832 1832)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), -Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x98\x0a\x00\x00\x00\x00\x00\x00\x98\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01"), -Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x98\x0a\x00\x00\x00\x00\x00\x00\x98\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xa4\x02\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x94\x09\x00\x00\x00\x00\x00\x00\x94\x09\x00\x00\x00\x00\x00\x00\x94\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x46\x84\x58\x64\x9f\x3f\xff\xb6\x98\x89\x18\x7e\x6a\xea\xdc\x90\x77\x82\x77\x9b\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x98\x0a\x00\x00\x00\x00\x00\x00\x98\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xa4\x02\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x94\x09\x00\x00\x00\x00\x00\x00\x94\x09\x00\x00\x00\x00\x00\x00\x94\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x46\x84\x58\x64\x9f\x3f\xff\xb6\x98\x89\x18\x7e\x6a\xea\xdc\x90\x77\x82\x77\x9b\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x99\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x84\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x7c\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x99\xff\xff\x97\xe8\x0f\x40\xf9\x09\x3d\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\x09\x3d\x40\xf9\xe9\x0b\x00\xf9"), -Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c"), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xf8\x2b\x75\x79\x61\xb5\xdb\xca\xf1\x1a\x80\xe2\x19\xfe\xd4\x6b\x7e\x87\xbf\x2e\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\xd8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\xd4\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xf8\x2b\x75\x79\x61\xb5\xdb\xca\xf1\x1a\x80\xe2\x19\xfe\xd4\x6b\x7e\x87\xbf\x2e\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x9d\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x88\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00"), Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), -Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x46\x84\x58\x64\x9f\x3f\xff\xb6\x98\x89\x18\x7e\x6a\xea\xdc\x90\x77\x82\x77\x9b"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xf8\x2b\x75\x79\x61\xb5\xdb\xca\xf1\x1a\x80\xe2\x19\xfe\xd4\x6b\x7e\x87\xbf\x2e"), Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), -Section(".gnu.hash", 0x298, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynsym", 0x2B8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynstr", 0x420, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), -Section(".gnu.version", 0x4D4, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), -Section(".gnu.version_r", 0x4F8, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.dyn", 0x528, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.plt", 0x5E8, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init", 0x6D8, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".plt", 0x6F0, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), -Section(".fini", 0x97C, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".rodata", 0x990, "\x01\x00\x02\x00"), -Section(".eh_frame_hdr", 0x994, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x2c\xfe\xff\xff\x50\x00\x00\x00\x7c\xfe\xff\xff\x64\x00\x00\x00\xac\xfe\xff\xff\x78\x00\x00\x00\xec\xfe\xff\xff\x8c\x00\x00\x00\x3c\xff\xff\xff\xb0\x00\x00\x00\x40\xff\xff\xff\xd8\x00\x00\x00"), -Section(".eh_frame", 0x9D0, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xd4\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x10\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x2c\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x58\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x84\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x60\xfe\xff\xff\xa8\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\x90\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), -Section(".fini_array", 0x1FDD0, "\x80\x08\x00\x00\x00\x00\x00\x00"), -Section(".dynamic", 0x1FDD8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x7c\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x20\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\xe8\x05\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x28\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xf8\x04\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xd4\x04\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init_array", 0x1FDC8, "\xd0\x08\x00\x00\x00\x00\x00\x00"), -Section(".got", 0x1FFB8, "\xd8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00"), +Section(".hash", 0x298, "\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00"), +Section(".gnu.hash", 0x2E8, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x308, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x470, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x524, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x548, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x578, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x638, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x728, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x740, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0x9BC, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0x9D0, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0x9D4, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x2c\xfe\xff\xff\x50\x00\x00\x00\x7c\xfe\xff\xff\x64\x00\x00\x00\xac\xfe\xff\xff\x78\x00\x00\x00\xec\xfe\xff\xff\x8c\x00\x00\x00\x3c\xff\xff\xff\xb0\x00\x00\x00\x40\xff\xff\xff\xd8\x00\x00\x00"), +Section(".eh_frame", 0xA10, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xd4\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x10\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x2c\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x58\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x84\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x60\xfe\xff\xff\xa8\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\x90\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDC0, "\xc0\x08\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDC8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x28\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xbc\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x70\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x38\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x78\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\x48\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\x24\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDB8, "\x10\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFB8, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00"), Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), -Section(".text", 0x7C0, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x99\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x84\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x7c\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x99\xff\xff\x97\xe8\x0f\x40\xf9\x09\x3d\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\x09\x3d\x40\xf9\xe9\x0b\x00\xf9\x00\x3d\x40\xf9\x75\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x81\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x8e\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), -Memmap([Annotation(Region(0x0,0xA97), Attr("segment","02 0 2712")), -Annotation(Region(0x7C0,0x7F3), Attr("symbol","\"_start\"")), +Section(".text", 0x800, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x9d\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x88\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x80\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x9d\xff\xff\x97\xe8\x0f\x40\xf9\x09\x3d\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\x09\x3d\x40\xf9\xe9\x0b\x00\xf9\x00\x3d\x40\xf9\x79\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x85\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x92\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xAD7), Attr("segment","02 0 2776")), +Annotation(Region(0x800,0x833), Attr("symbol","\"_start\"")), Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), Annotation(Region(0x0,0x2CB), Attr("section","\".strtab\"")), -Annotation(Region(0x0,0x947), Attr("section","\".symtab\"")), -Annotation(Region(0x0,0x3E), Attr("section","\".comment\"")), +Annotation(Region(0x0,0x95F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x39), Attr("section","\".comment\"")), Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), -Annotation(Region(0x298,0x2B3), Attr("section","\".gnu.hash\"")), -Annotation(Region(0x2B8,0x41F), Attr("section","\".dynsym\"")), -Annotation(Region(0x420,0x4D2), Attr("section","\".dynstr\"")), -Annotation(Region(0x4D4,0x4F1), Attr("section","\".gnu.version\"")), -Annotation(Region(0x4F8,0x527), Attr("section","\".gnu.version_r\"")), -Annotation(Region(0x528,0x5E7), Attr("section","\".rela.dyn\"")), -Annotation(Region(0x5E8,0x6D7), Attr("section","\".rela.plt\"")), -Annotation(Region(0x6D8,0x6EF), Attr("section","\".init\"")), -Annotation(Region(0x6F0,0x7AF), Attr("section","\".plt\"")), -Annotation(Region(0x6D8,0x6EF), Attr("code-region","()")), -Annotation(Region(0x6F0,0x7AF), Attr("code-region","()")), -Annotation(Region(0x7C0,0x7F3), Attr("symbol-info","_start 0x7C0 52")), -Annotation(Region(0x7F4,0x807), Attr("symbol","\"call_weak_fn\"")), -Annotation(Region(0x7F4,0x807), Attr("symbol-info","call_weak_fn 0x7F4 20")), -Annotation(Region(0x8D4,0x97B), Attr("symbol","\"main\"")), -Annotation(Region(0x8D4,0x97B), Attr("symbol-info","main 0x8D4 168")), -Annotation(Region(0x97C,0x98F), Attr("section","\".fini\"")), -Annotation(Region(0x990,0x993), Attr("section","\".rodata\"")), -Annotation(Region(0x994,0x9CF), Attr("section","\".eh_frame_hdr\"")), -Annotation(Region(0x9D0,0xA97), Attr("section","\".eh_frame\"")), -Annotation(Region(0x1FDC8,0x2006B), Attr("segment","03 0x1FDC8 696")), -Annotation(Region(0x1FDD0,0x1FDD7), Attr("section","\".fini_array\"")), -Annotation(Region(0x1FDD8,0x1FFB7), Attr("section","\".dynamic\"")), -Annotation(Region(0x1FDC8,0x1FDCF), Attr("section","\".init_array\"")), +Annotation(Region(0x298,0x2E7), Attr("section","\".hash\"")), +Annotation(Region(0x2E8,0x303), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x308,0x46F), Attr("section","\".dynsym\"")), +Annotation(Region(0x470,0x522), Attr("section","\".dynstr\"")), +Annotation(Region(0x524,0x541), Attr("section","\".gnu.version\"")), +Annotation(Region(0x548,0x577), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x578,0x637), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x638,0x727), Attr("section","\".rela.plt\"")), +Annotation(Region(0x728,0x73F), Attr("section","\".init\"")), +Annotation(Region(0x740,0x7FF), Attr("section","\".plt\"")), +Annotation(Region(0x728,0x73F), Attr("code-region","()")), +Annotation(Region(0x740,0x7FF), Attr("code-region","()")), +Annotation(Region(0x800,0x833), Attr("symbol-info","_start 0x800 52")), +Annotation(Region(0x834,0x847), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x834,0x847), Attr("symbol-info","call_weak_fn 0x834 20")), +Annotation(Region(0x914,0x9BB), Attr("symbol","\"main\"")), +Annotation(Region(0x914,0x9BB), Attr("symbol-info","main 0x914 168")), +Annotation(Region(0x9BC,0x9CF), Attr("section","\".fini\"")), +Annotation(Region(0x9D0,0x9D3), Attr("section","\".rodata\"")), +Annotation(Region(0x9D4,0xA0F), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0xA10,0xAD7), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDB8,0x2006B), Attr("segment","03 0x1FDB8 712")), +Annotation(Region(0x1FDC0,0x1FDC7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDC8,0x1FFB7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDB8,0x1FDBF), Attr("section","\".init_array\"")), Annotation(Region(0x1FFB8,0x1FFE7), Attr("section","\".got\"")), Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), -Annotation(Region(0x7C0,0x97B), Attr("section","\".text\"")), -Annotation(Region(0x7C0,0x97B), Attr("code-region","()")), -Annotation(Region(0x97C,0x98F), Attr("code-region","()"))]), -Program(Tid(2_215, "%000008a7"), Attrs([]), - Subs([Sub(Tid(2_144, "@__cxa_finalize"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x740"), -Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_216, "%000008a8"), +Annotation(Region(0x800,0x9BB), Attr("section","\".text\"")), +Annotation(Region(0x800,0x9BB), Attr("code-region","()")), +Annotation(Region(0x9BC,0x9CF), Attr("code-region","()"))]), +Program(Tid(2_333, "%0000091d"), Attrs([]), + Subs([Sub(Tid(2_262, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x790"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_334, "%0000091e"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_299, "@__cxa_finalize"), - Attrs([Attr("address","0x740")]), Phis([]), -Defs([Def(Tid(1_719, "%000006b7"), Attrs([Attr("address","0x740"), + Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_719, "%000006b7"), Attrs([Attr("address","0x790"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_727, "%000006bf"), Attrs([Attr("address","0x744"), +Def(Tid(1_727, "%000006bf"), Attrs([Attr("address","0x794"), Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_734, "%000006c6"), Attrs([Attr("address","0x748"), +Def(Tid(1_734, "%000006c6"), Attrs([Attr("address","0x798"), Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_739, "%000006cb"), - Attrs([Attr("address","0x74C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_145, "@__do_global_dtors_aux"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), - "__do_global_dtors_aux", Args([Arg(Tid(2_217, "%000008a9"), +Sub(Tid(2_263, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_335, "%0000091f"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(794, "@__do_global_dtors_aux"), - Attrs([Attr("address","0x880")]), Phis([]), Defs([Def(Tid(801, "%00000321"), - Attrs([Attr("address","0x880"), + Attrs([Attr("address","0x8C0")]), Phis([]), Defs([Def(Tid(801, "%00000321"), + Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), -Def(Tid(806, "%00000326"), Attrs([Attr("address","0x880"), +Def(Tid(806, "%00000326"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(811, "%0000032b"), Attrs([Attr("address","0x880"), +Def(Tid(811, "%0000032b"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(815, "%0000032f"), Attrs([Attr("address","0x880"), +Def(Tid(815, "%0000032f"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), Var("#34",Imm(64))), Def(Tid(822, "%00000336"), - Attrs([Attr("address","0x884"), Attr("insn","mov x29, sp")]), + Attrs([Attr("address","0x8C4"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(830, "%0000033e"), - Attrs([Attr("address","0x888"), Attr("insn","str x19, [sp, #0x10]")]), + Attrs([Attr("address","0x8C8"), Attr("insn","str x19, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), -Def(Tid(836, "%00000344"), Attrs([Attr("address","0x88C"), +Def(Tid(836, "%00000344"), Attrs([Attr("address","0x8CC"), Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), -Def(Tid(845, "%0000034d"), Attrs([Attr("address","0x890"), +Def(Tid(845, "%0000034d"), Attrs([Attr("address","0x8D0"), Attr("insn","ldrb w0, [x19, #0x70]")]), Var("R0",Imm(64)), UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),BigEndian(),8))), -Def(Tid(857, "%00000359"), Attrs([Attr("address","0x894"), +Def(Tid(857, "%00000359"), Attrs([Attr("address","0x8D4"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), -Jmps([Goto(Tid(851, "%00000353"), Attrs([Attr("address","0x894"), +Jmps([Goto(Tid(851, "%00000353"), Attrs([Attr("address","0x8D4"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), -Direct(Tid(849, "%00000351"))), Goto(Tid(2_205, "%0000089d"), Attrs([]), +Direct(Tid(849, "%00000351"))), Goto(Tid(2_323, "%00000913"), Attrs([]), Int(1,1), Direct(Tid(1_233, "%000004d1")))])), Blk(Tid(1_233, "%000004d1"), - Attrs([Attr("address","0x898")]), Phis([]), -Defs([Def(Tid(1_237, "%000004d5"), Attrs([Attr("address","0x898"), + Attrs([Attr("address","0x8D8")]), Phis([]), +Defs([Def(Tid(1_237, "%000004d5"), Attrs([Attr("address","0x8D8"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), -Def(Tid(1_245, "%000004dd"), Attrs([Attr("address","0x89C"), +Def(Tid(1_245, "%000004dd"), Attrs([Attr("address","0x8DC"), Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), -Def(Tid(1_257, "%000004e9"), Attrs([Attr("address","0x8A0"), +Def(Tid(1_257, "%000004e9"), Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), Var("#67",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_251, "%000004e3"), - Attrs([Attr("address","0x8A0"), Attr("insn","cbz x0, #0x10")]), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), Var("#67",Imm(1)), Direct(Tid(1_249, "%000004e1"))), -Goto(Tid(2_206, "%0000089e"), Attrs([]), Int(1,1), +Goto(Tid(2_324, "%00000914"), Attrs([]), Int(1,1), Direct(Tid(1_281, "%00000501")))])), Blk(Tid(1_281, "%00000501"), - Attrs([Attr("address","0x8A4")]), Phis([]), -Defs([Def(Tid(1_285, "%00000505"), Attrs([Attr("address","0x8A4"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_285, "%00000505"), Attrs([Attr("address","0x8E4"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(1_293, "%0000050d"), Attrs([Attr("address","0x8A8"), +Def(Tid(1_293, "%0000050d"), Attrs([Attr("address","0x8E8"), Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), -Def(Tid(1_298, "%00000512"), Attrs([Attr("address","0x8AC"), -Attr("insn","bl #-0x16c")]), Var("R30",Imm(64)), Int(2224,64))]), -Jmps([Call(Tid(1_301, "%00000515"), Attrs([Attr("address","0x8AC"), -Attr("insn","bl #-0x16c")]), Int(1,1), -(Direct(Tid(2_144, "@__cxa_finalize")),Direct(Tid(1_249, "%000004e1"))))])), -Blk(Tid(1_249, "%000004e1"), Attrs([Attr("address","0x8B0")]), Phis([]), -Defs([Def(Tid(1_262, "%000004ee"), Attrs([Attr("address","0x8B0"), -Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2228,64))]), -Jmps([Call(Tid(1_264, "%000004f0"), Attrs([Attr("address","0x8B0"), +Def(Tid(1_298, "%00000512"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Var("R30",Imm(64)), Int(2288,64))]), +Jmps([Call(Tid(1_301, "%00000515"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Int(1,1), +(Direct(Tid(2_262, "@__cxa_finalize")),Direct(Tid(1_249, "%000004e1"))))])), +Blk(Tid(1_249, "%000004e1"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_262, "%000004ee"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2292,64))]), +Jmps([Call(Tid(1_264, "%000004f0"), Attrs([Attr("address","0x8F0"), Attr("insn","bl #-0xa0")]), Int(1,1), -(Direct(Tid(2_158, "@deregister_tm_clones")),Direct(Tid(1_266, "%000004f2"))))])), -Blk(Tid(1_266, "%000004f2"), Attrs([Attr("address","0x8B4")]), Phis([]), -Defs([Def(Tid(1_271, "%000004f7"), Attrs([Attr("address","0x8B4"), +(Direct(Tid(2_276, "@deregister_tm_clones")),Direct(Tid(1_266, "%000004f2"))))])), +Blk(Tid(1_266, "%000004f2"), Attrs([Attr("address","0x8F4")]), Phis([]), +Defs([Def(Tid(1_271, "%000004f7"), Attrs([Attr("address","0x8F4"), Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), -Def(Tid(1_279, "%000004ff"), Attrs([Attr("address","0x8B8"), +Def(Tid(1_279, "%000004ff"), Attrs([Attr("address","0x8F8"), Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), -Jmps([Goto(Tid(2_207, "%0000089f"), Attrs([]), Int(1,1), +Jmps([Goto(Tid(2_325, "%00000915"), Attrs([]), Int(1,1), Direct(Tid(849, "%00000351")))])), Blk(Tid(849, "%00000351"), - Attrs([Attr("address","0x8BC")]), Phis([]), Defs([Def(Tid(865, "%00000361"), - Attrs([Attr("address","0x8BC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Attrs([Attr("address","0x8FC")]), Phis([]), Defs([Def(Tid(865, "%00000361"), + Attrs([Attr("address","0x8FC"), Attr("insn","ldr x19, [sp, #0x10]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(875, "%0000036b"), Attrs([Attr("address","0x8C0"), +Def(Tid(875, "%0000036b"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(879, "%0000036f"), Attrs([Attr("address","0x8C0"), +Def(Tid(879, "%0000036f"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(882, "%00000372"), Attrs([Attr("address","0x8C0"), +Def(Tid(882, "%00000372"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(887, "%00000377"), - Attrs([Attr("address","0x8C4"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_149, "@__libc_start_main"), + Attrs([Attr("address","0x904"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_267, "@__libc_start_main"), Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), -Attr("address","0x730"), Attr("stub","()")]), "__libc_start_main", - Args([Arg(Tid(2_218, "%000008aa"), +Attr("address","0x780"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_336, "%00000920"), Attrs([Attr("c.layout","**[ : 64]"), Attr("c.data","Top:u64 ptr ptr"), Attr("c.type","signed (*)(signed , char** , char** );*")]), Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_219, "%000008ab"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_337, "%00000921"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), -Arg(Tid(2_220, "%000008ac"), Attrs([Attr("c.layout","**[char : 8]"), +Arg(Tid(2_338, "%00000922"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), -Arg(Tid(2_221, "%000008ad"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_339, "%00000923"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), -Arg(Tid(2_222, "%000008ae"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_340, "%00000924"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(606, "@__libc_start_main"), - Attrs([Attr("address","0x730")]), Phis([]), -Defs([Def(Tid(1_694, "%0000069e"), Attrs([Attr("address","0x730"), + Attrs([Attr("address","0x780")]), Phis([]), +Defs([Def(Tid(1_694, "%0000069e"), Attrs([Attr("address","0x780"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_702, "%000006a6"), Attrs([Attr("address","0x734"), +Def(Tid(1_702, "%000006a6"), Attrs([Attr("address","0x784"), Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_709, "%000006ad"), Attrs([Attr("address","0x738"), +Def(Tid(1_709, "%000006ad"), Attrs([Attr("address","0x788"), Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_714, "%000006b2"), - Attrs([Attr("address","0x73C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_150, "@_fini"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x97C")]), - "_fini", Args([Arg(Tid(2_223, "%000008af"), + Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_268, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9BC")]), + "_fini", Args([Arg(Tid(2_341, "%00000925"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), - Attrs([Attr("address","0x97C")]), Phis([]), Defs([Def(Tid(41, "%00000029"), - Attrs([Attr("address","0x980"), + Attrs([Attr("address","0x9BC")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0x9C0"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x980"), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x9C0"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(51, "%00000033"), Attrs([Attr("address","0x980"), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0x9C0"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(55, "%00000037"), Attrs([Attr("address","0x980"), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0x9C0"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x984"), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9C4"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), -Def(Tid(72, "%00000048"), Attrs([Attr("address","0x988"), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9C8"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x988"), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9C8"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x988"), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9C8"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), - Attrs([Attr("address","0x98C"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_151, "@_init"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x6D8")]), - "_init", Args([Arg(Tid(2_224, "%000008b0"), + Attrs([Attr("address","0x9CC"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_269, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x728")]), + "_init", Args([Arg(Tid(2_342, "%00000926"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), -LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_917, "@_init"), - Attrs([Attr("address","0x6D8")]), Phis([]), -Defs([Def(Tid(1_926, "%00000786"), Attrs([Attr("address","0x6DC"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(2_035, "@_init"), + Attrs([Attr("address","0x728")]), Phis([]), +Defs([Def(Tid(2_044, "%000007fc"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#98",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(1_931, "%0000078b"), Attrs([Attr("address","0x6DC"), +Def(Tid(2_049, "%00000801"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#98",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(1_936, "%00000790"), Attrs([Attr("address","0x6DC"), +Def(Tid(2_054, "%00000806"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#98",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(1_940, "%00000794"), Attrs([Attr("address","0x6DC"), +Def(Tid(2_058, "%0000080a"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#98",Imm(64))), Def(Tid(1_947, "%0000079b"), - Attrs([Attr("address","0x6E0"), Attr("insn","mov x29, sp")]), - Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(1_952, "%000007a0"), - Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), - Var("R30",Imm(64)), Int(1768,64))]), Jmps([Call(Tid(1_954, "%000007a2"), - Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), Int(1,1), -(Direct(Tid(2_156, "@call_weak_fn")),Direct(Tid(1_956, "%000007a4"))))])), -Blk(Tid(1_956, "%000007a4"), Attrs([Attr("address","0x6E8")]), Phis([]), -Defs([Def(Tid(1_964, "%000007ac"), Attrs([Attr("address","0x6E8"), +Var("#98",Imm(64))), Def(Tid(2_065, "%00000811"), + Attrs([Attr("address","0x730"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(2_070, "%00000816"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), + Var("R30",Imm(64)), Int(1848,64))]), Jmps([Call(Tid(2_072, "%00000818"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), Int(1,1), +(Direct(Tid(2_274, "@call_weak_fn")),Direct(Tid(2_074, "%0000081a"))))])), +Blk(Tid(2_074, "%0000081a"), Attrs([Attr("address","0x738")]), Phis([]), +Defs([Def(Tid(2_082, "%00000822"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_968, "%000007b0"), Attrs([Attr("address","0x6E8"), +Def(Tid(2_086, "%00000826"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_971, "%000007b3"), Attrs([Attr("address","0x6E8"), +Def(Tid(2_089, "%00000829"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), -PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_976, "%000007b8"), - Attrs([Attr("address","0x6EC"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_152, "@_start"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7C0"), -Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_225, "%000008b1"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("_start_result",Imm(32)), -LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(532, "@_start"), - Attrs([Attr("address","0x7C0")]), Phis([]), Defs([Def(Tid(538, "%0000021a"), - Attrs([Attr("address","0x7C4"), Attr("insn","mov x29, #0x0")]), - Var("R29",Imm(64)), Int(0,64)), Def(Tid(544, "%00000220"), - Attrs([Attr("address","0x7C8"), Attr("insn","mov x30, #0x0")]), - Var("R30",Imm(64)), Int(0,64)), Def(Tid(552, "%00000228"), - Attrs([Attr("address","0x7CC"), Attr("insn","mov x5, x0")]), - Var("R5",Imm(64)), Var("R0",Imm(64))), Def(Tid(560, "%00000230"), - Attrs([Attr("address","0x7D0"), Attr("insn","ldr x1, [sp]")]), - Var("R1",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_094, "%0000082e"), + Attrs([Attr("address","0x73C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_270, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x800"), +Attr("stub","()"), Attr("entry-point","()")]), "_start", + Args([Arg(Tid(2_343, "%00000927"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(532, "@_start"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([Def(Tid(538, "%0000021a"), Attrs([Attr("address","0x804"), +Attr("insn","mov x29, #0x0")]), Var("R29",Imm(64)), Int(0,64)), +Def(Tid(544, "%00000220"), Attrs([Attr("address","0x808"), +Attr("insn","mov x30, #0x0")]), Var("R30",Imm(64)), Int(0,64)), +Def(Tid(552, "%00000228"), Attrs([Attr("address","0x80C"), +Attr("insn","mov x5, x0")]), Var("R5",Imm(64)), Var("R0",Imm(64))), +Def(Tid(560, "%00000230"), Attrs([Attr("address","0x810"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(567, "%00000237"), Attrs([Attr("address","0x7D4"), +Def(Tid(567, "%00000237"), Attrs([Attr("address","0x814"), Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(574, "%0000023e"), - Attrs([Attr("address","0x7D8"), Attr("insn","mov x6, sp")]), + Attrs([Attr("address","0x818"), Attr("insn","mov x6, sp")]), Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(580, "%00000244"), - Attrs([Attr("address","0x7DC"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x81C"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(588, "%0000024c"), - Attrs([Attr("address","0x7E0"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Attrs([Attr("address","0x820"), Attr("insn","ldr x0, [x0, #0xfd8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), -Def(Tid(594, "%00000252"), Attrs([Attr("address","0x7E4"), +Def(Tid(594, "%00000252"), Attrs([Attr("address","0x824"), Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), -Def(Tid(600, "%00000258"), Attrs([Attr("address","0x7E8"), +Def(Tid(600, "%00000258"), Attrs([Attr("address","0x828"), Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), -Def(Tid(605, "%0000025d"), Attrs([Attr("address","0x7EC"), -Attr("insn","bl #-0xbc")]), Var("R30",Imm(64)), Int(2032,64))]), -Jmps([Call(Tid(608, "%00000260"), Attrs([Attr("address","0x7EC"), -Attr("insn","bl #-0xbc")]), Int(1,1), -(Direct(Tid(2_149, "@__libc_start_main")),Direct(Tid(610, "%00000262"))))])), -Blk(Tid(610, "%00000262"), Attrs([Attr("address","0x7F0")]), Phis([]), -Defs([Def(Tid(613, "%00000265"), Attrs([Attr("address","0x7F0"), -Attr("insn","bl #-0x70")]), Var("R30",Imm(64)), Int(2036,64))]), -Jmps([Call(Tid(616, "%00000268"), Attrs([Attr("address","0x7F0"), -Attr("insn","bl #-0x70")]), Int(1,1), -(Direct(Tid(2_155, "@abort")),Direct(Tid(2_208, "%000008a0"))))])), -Blk(Tid(2_208, "%000008a0"), Attrs([]), Phis([]), Defs([]), -Jmps([Call(Tid(2_209, "%000008a1"), Attrs([]), Int(1,1), -(Direct(Tid(2_156, "@call_weak_fn")),))]))])), Sub(Tid(2_155, "@abort"), +Def(Tid(605, "%0000025d"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Var("R30",Imm(64)), Int(2096,64))]), +Jmps([Call(Tid(608, "%00000260"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Int(1,1), +(Direct(Tid(2_267, "@__libc_start_main")),Direct(Tid(610, "%00000262"))))])), +Blk(Tid(610, "%00000262"), Attrs([Attr("address","0x830")]), Phis([]), +Defs([Def(Tid(613, "%00000265"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Var("R30",Imm(64)), Int(2100,64))]), +Jmps([Call(Tid(616, "%00000268"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Int(1,1), +(Direct(Tid(2_273, "@abort")),Direct(Tid(2_326, "%00000916"))))])), +Blk(Tid(2_326, "%00000916"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_327, "%00000917"), Attrs([]), Int(1,1), +(Direct(Tid(2_274, "@call_weak_fn")),))]))])), Sub(Tid(2_273, "@abort"), Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), -Attr("address","0x780"), Attr("stub","()")]), "abort", Args([]), -Blks([Blk(Tid(614, "@abort"), Attrs([Attr("address","0x780")]), Phis([]), -Defs([Def(Tid(1_819, "%0000071b"), Attrs([Attr("address","0x780"), +Attr("address","0x7D0"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(614, "@abort"), Attrs([Attr("address","0x7D0")]), Phis([]), +Defs([Def(Tid(1_819, "%0000071b"), Attrs([Attr("address","0x7D0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_827, "%00000723"), Attrs([Attr("address","0x784"), +Def(Tid(1_827, "%00000723"), Attrs([Attr("address","0x7D4"), Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), -Def(Tid(1_834, "%0000072a"), Attrs([Attr("address","0x788"), +Def(Tid(1_834, "%0000072a"), Attrs([Attr("address","0x7D8"), Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_839, "%0000072f"), - Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_156, "@call_weak_fn"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7F4")]), - "call_weak_fn", Args([Arg(Tid(2_226, "%000008b2"), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_274, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x834")]), + "call_weak_fn", Args([Arg(Tid(2_344, "%00000928"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(618, "@call_weak_fn"), - Attrs([Attr("address","0x7F4")]), Phis([]), Defs([Def(Tid(622, "%0000026e"), - Attrs([Attr("address","0x7F4"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x834")]), Phis([]), Defs([Def(Tid(622, "%0000026e"), + Attrs([Attr("address","0x834"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(630, "%00000276"), - Attrs([Attr("address","0x7F8"), Attr("insn","ldr x0, [x0, #0xfd0]")]), + Attrs([Attr("address","0x838"), Attr("insn","ldr x0, [x0, #0xfd0]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), -Def(Tid(642, "%00000282"), Attrs([Attr("address","0x7FC"), +Def(Tid(642, "%00000282"), Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(636, "%0000027c"), - Attrs([Attr("address","0x7FC"), Attr("insn","cbz x0, #0x8")]), + Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), Direct(Tid(634, "%0000027a"))), -Goto(Tid(2_210, "%000008a2"), Attrs([]), Int(1,1), +Goto(Tid(2_328, "%00000918"), Attrs([]), Int(1,1), Direct(Tid(1_381, "%00000565")))])), Blk(Tid(634, "%0000027a"), - Attrs([Attr("address","0x804")]), Phis([]), Defs([]), -Jmps([Call(Tid(647, "%00000287"), Attrs([Attr("address","0x804"), + Attrs([Attr("address","0x844")]), Phis([]), Defs([]), +Jmps([Call(Tid(647, "%00000287"), Attrs([Attr("address","0x844"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_381, "%00000565"), Attrs([Attr("address","0x800")]), Phis([]), -Defs([]), Jmps([Goto(Tid(1_384, "%00000568"), Attrs([Attr("address","0x800"), -Attr("insn","b #-0x90")]), Int(1,1), +Blk(Tid(1_381, "%00000565"), Attrs([Attr("address","0x840")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_384, "%00000568"), Attrs([Attr("address","0x840"), +Attr("insn","b #-0x80")]), Int(1,1), Direct(Tid(1_382, "@__gmon_start__")))])), Blk(Tid(1_382, "@__gmon_start__"), - Attrs([Attr("address","0x770")]), Phis([]), -Defs([Def(Tid(1_794, "%00000702"), Attrs([Attr("address","0x770"), + Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_794, "%00000702"), Attrs([Attr("address","0x7C0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_802, "%0000070a"), Attrs([Attr("address","0x774"), +Def(Tid(1_802, "%0000070a"), Attrs([Attr("address","0x7C4"), Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), -Def(Tid(1_809, "%00000711"), Attrs([Attr("address","0x778"), +Def(Tid(1_809, "%00000711"), Attrs([Attr("address","0x7C8"), Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_814, "%00000716"), - Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_158, "@deregister_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x810")]), - "deregister_tm_clones", Args([Arg(Tid(2_227, "%000008b3"), +Sub(Tid(2_276, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x850")]), + "deregister_tm_clones", Args([Arg(Tid(2_345, "%00000929"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(653, "@deregister_tm_clones"), - Attrs([Attr("address","0x810")]), Phis([]), Defs([Def(Tid(657, "%00000291"), - Attrs([Attr("address","0x810"), Attr("insn","adrp x0, #0x20000")]), + Attrs([Attr("address","0x850")]), Phis([]), Defs([Def(Tid(657, "%00000291"), + Attrs([Attr("address","0x850"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), Def(Tid(664, "%00000298"), - Attrs([Attr("address","0x814"), Attr("insn","add x0, x0, #0x70")]), + Attrs([Attr("address","0x854"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), -Def(Tid(670, "%0000029e"), Attrs([Attr("address","0x818"), +Def(Tid(670, "%0000029e"), Attrs([Attr("address","0x858"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), -Def(Tid(677, "%000002a5"), Attrs([Attr("address","0x81C"), +Def(Tid(677, "%000002a5"), Attrs([Attr("address","0x85C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), Def(Tid(685, "%000002ad"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("#16",Imm(64)), PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), -Def(Tid(689, "%000002b1"), Attrs([Attr("address","0x820"), +Def(Tid(689, "%000002b1"), Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), Extract(63,63,Var("#16",Imm(64)))), Def(Tid(692, "%000002b4"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("VF",Imm(1)), OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), -Def(Tid(695, "%000002b7"), Attrs([Attr("address","0x820"), +Def(Tid(695, "%000002b7"), Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(698, "%000002ba"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("CF",Imm(1)), OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), -Def(Tid(712, "%000002c8"), Attrs([Attr("address","0x824"), +Def(Tid(712, "%000002c8"), Attrs([Attr("address","0x864"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), -Jmps([Goto(Tid(706, "%000002c2"), Attrs([Attr("address","0x824"), +Jmps([Goto(Tid(706, "%000002c2"), Attrs([Attr("address","0x864"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), -Direct(Tid(704, "%000002c0"))), Goto(Tid(2_211, "%000008a3"), Attrs([]), +Direct(Tid(704, "%000002c0"))), Goto(Tid(2_329, "%00000919"), Attrs([]), Int(1,1), Direct(Tid(1_342, "%0000053e")))])), Blk(Tid(1_342, "%0000053e"), - Attrs([Attr("address","0x828")]), Phis([]), -Defs([Def(Tid(1_346, "%00000542"), Attrs([Attr("address","0x828"), + Attrs([Attr("address","0x868")]), Phis([]), +Defs([Def(Tid(1_346, "%00000542"), Attrs([Attr("address","0x868"), Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), -Def(Tid(1_354, "%0000054a"), Attrs([Attr("address","0x82C"), +Def(Tid(1_354, "%0000054a"), Attrs([Attr("address","0x86C"), Attr("insn","ldr x1, [x1, #0xfc0]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4032,64)),LittleEndian(),64)), -Def(Tid(1_365, "%00000555"), Attrs([Attr("address","0x830"), +Def(Tid(1_365, "%00000555"), Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), Var("#75",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_359, "%0000054f"), - Attrs([Attr("address","0x830"), Attr("insn","cbz x1, #0xc")]), + Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), Var("#75",Imm(1)), Direct(Tid(704, "%000002c0"))), -Goto(Tid(2_212, "%000008a4"), Attrs([]), Int(1,1), +Goto(Tid(2_330, "%0000091a"), Attrs([]), Int(1,1), Direct(Tid(1_368, "%00000558")))])), Blk(Tid(704, "%000002c0"), - Attrs([Attr("address","0x83C")]), Phis([]), Defs([]), -Jmps([Call(Tid(717, "%000002cd"), Attrs([Attr("address","0x83C"), + Attrs([Attr("address","0x87C")]), Phis([]), Defs([]), +Jmps([Call(Tid(717, "%000002cd"), Attrs([Attr("address","0x87C"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_368, "%00000558"), Attrs([Attr("address","0x834")]), Phis([]), -Defs([Def(Tid(1_374, "%0000055e"), Attrs([Attr("address","0x834"), +Blk(Tid(1_368, "%00000558"), Attrs([Attr("address","0x874")]), Phis([]), +Defs([Def(Tid(1_374, "%0000055e"), Attrs([Attr("address","0x874"), Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), -Jmps([Call(Tid(1_379, "%00000563"), Attrs([Attr("address","0x838"), +Jmps([Call(Tid(1_379, "%00000563"), Attrs([Attr("address","0x878"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), -Sub(Tid(2_161, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x8D0")]), "frame_dummy", Args([Arg(Tid(2_228, "%000008b4"), +Sub(Tid(2_279, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x910")]), "frame_dummy", Args([Arg(Tid(2_346, "%0000092a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(893, "@frame_dummy"), - Attrs([Attr("address","0x8D0")]), Phis([]), Defs([]), -Jmps([Call(Tid(895, "%0000037f"), Attrs([Attr("address","0x8D0"), + Attrs([Attr("address","0x910")]), Phis([]), Defs([]), +Jmps([Call(Tid(895, "%0000037f"), Attrs([Attr("address","0x910"), Attr("insn","b #-0x90")]), Int(1,1), -(Direct(Tid(2_168, "@register_tm_clones")),))]))])), Sub(Tid(2_162, "@free"), - Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7A0"), -Attr("stub","()")]), "free", Args([Arg(Tid(2_229, "%000008b5"), +(Direct(Tid(2_286, "@register_tm_clones")),))]))])), Sub(Tid(2_280, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7F0"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_347, "%0000092b"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), -Both())]), Blks([Blk(Tid(1_195, "@free"), Attrs([Attr("address","0x7A0")]), - Phis([]), Defs([Def(Tid(1_869, "%0000074d"), Attrs([Attr("address","0x7A0"), +Both())]), Blks([Blk(Tid(1_195, "@free"), Attrs([Attr("address","0x7F0")]), + Phis([]), Defs([Def(Tid(1_869, "%0000074d"), Attrs([Attr("address","0x7F0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_877, "%00000755"), Attrs([Attr("address","0x7A4"), +Def(Tid(1_877, "%00000755"), Attrs([Attr("address","0x7F4"), Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), -Def(Tid(1_884, "%0000075c"), Attrs([Attr("address","0x7A8"), +Def(Tid(1_884, "%0000075c"), Attrs([Attr("address","0x7F8"), Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_889, "%00000761"), - Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_163, "@main"), + Attrs([Attr("address","0x7FC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_281, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x8D4")]), "main", Args([Arg(Tid(2_230, "%000008b6"), +Attr("address","0x914")]), "main", Args([Arg(Tid(2_348, "%0000092c"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), -LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_231, "%000008b7"), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_349, "%0000092d"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), -Var("R1",Imm(64)), Both()), Arg(Tid(2_232, "%000008b8"), +Var("R1",Imm(64)), Both()), Arg(Tid(2_350, "%0000092e"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(897, "@main"), - Attrs([Attr("address","0x8D4")]), Phis([]), Defs([Def(Tid(902, "%00000386"), - Attrs([Attr("address","0x8D4"), Attr("insn","sub sp, sp, #0x40")]), + Attrs([Attr("address","0x914")]), Phis([]), Defs([Def(Tid(902, "%00000386"), + Attrs([Attr("address","0x914"), Attr("insn","sub sp, sp, #0x40")]), Var("R31",Imm(64)), MINUS(Var("R31",Imm(64)),Int(64,64))), -Def(Tid(910, "%0000038e"), Attrs([Attr("address","0x8D8"), +Def(Tid(910, "%0000038e"), Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("#42",Imm(64)), PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(915, "%00000393"), - Attrs([Attr("address","0x8D8"), Attr("insn","stp x29, x30, [sp, #0x30]")]), + Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(920, "%00000398"), Attrs([Attr("address","0x8D8"), +Def(Tid(920, "%00000398"), Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(927, "%0000039f"), Attrs([Attr("address","0x8DC"), +Def(Tid(927, "%0000039f"), Attrs([Attr("address","0x91C"), Attr("insn","add x29, sp, #0x30")]), Var("R29",Imm(64)), PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(935, "%000003a7"), - Attrs([Attr("address","0x8E0"), Attr("insn","stur xzr, [x29, #-0x8]")]), + Attrs([Attr("address","0x920"), Attr("insn","stur xzr, [x29, #-0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(943, "%000003af"), Attrs([Attr("address","0x8E4"), +Def(Tid(943, "%000003af"), Attrs([Attr("address","0x924"), Attr("insn","stur xzr, [x29, #-0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551600,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(949, "%000003b5"), Attrs([Attr("address","0x8E8"), +Def(Tid(949, "%000003b5"), Attrs([Attr("address","0x928"), Attr("insn","mov x0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), -Def(Tid(954, "%000003ba"), Attrs([Attr("address","0x8EC"), -Attr("insn","bl #-0x19c")]), Var("R30",Imm(64)), Int(2288,64))]), -Jmps([Call(Tid(957, "%000003bd"), Attrs([Attr("address","0x8EC"), -Attr("insn","bl #-0x19c")]), Int(1,1), -(Direct(Tid(2_164, "@malloc")),Direct(Tid(959, "%000003bf"))))])), -Blk(Tid(959, "%000003bf"), Attrs([Attr("address","0x8F0")]), Phis([]), -Defs([Def(Tid(963, "%000003c3"), Attrs([Attr("address","0x8F0"), +Def(Tid(954, "%000003ba"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2352,64))]), +Jmps([Call(Tid(957, "%000003bd"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x18c")]), Int(1,1), +(Direct(Tid(2_282, "@malloc")),Direct(Tid(959, "%000003bf"))))])), +Blk(Tid(959, "%000003bf"), Attrs([Attr("address","0x930")]), Phis([]), +Defs([Def(Tid(963, "%000003c3"), Attrs([Attr("address","0x930"), Attr("insn","adrp x8, #0x20000")]), Var("R8",Imm(64)), Int(131072,64)), -Def(Tid(971, "%000003cb"), Attrs([Attr("address","0x8F4"), +Def(Tid(971, "%000003cb"), Attrs([Attr("address","0x934"), Attr("insn","str x8, [sp, #0x18]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(979, "%000003d3"), Attrs([Attr("address","0x8F8"), +Def(Tid(979, "%000003d3"), Attrs([Attr("address","0x938"), Attr("insn","str x0, [x8, #0x78]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),Var("R0",Imm(64)),LittleEndian(),64)), -Def(Tid(987, "%000003db"), Attrs([Attr("address","0x8FC"), +Def(Tid(987, "%000003db"), Attrs([Attr("address","0x93C"), Attr("insn","ldr x8, [x8, #0x78]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x900"), +Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x940"), Attr("insn","str x8, [sp, #0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_001, "%000003e9"), Attrs([Attr("address","0x904"), +Def(Tid(1_001, "%000003e9"), Attrs([Attr("address","0x944"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(1_008, "%000003f0"), Attrs([Attr("address","0x908"), +Def(Tid(1_008, "%000003f0"), Attrs([Attr("address","0x948"), Attr("insn","add x0, x0, #0x61")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(97,64))), Def(Tid(1_016, "%000003f8"), - Attrs([Attr("address","0x90C"), Attr("insn","str x0, [sp]")]), + Attrs([Attr("address","0x94C"), Attr("insn","str x0, [sp]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("R31",Imm(64)),Var("R0",Imm(64)),LittleEndian(),64)), -Def(Tid(1_021, "%000003fd"), Attrs([Attr("address","0x910"), -Attr("insn","bl #-0x1f0")]), Var("R30",Imm(64)), Int(2324,64))]), -Jmps([Call(Tid(1_024, "%00000400"), Attrs([Attr("address","0x910"), -Attr("insn","bl #-0x1f0")]), Int(1,1), -(Direct(Tid(2_171, "@strlen")),Direct(Tid(1_026, "%00000402"))))])), -Blk(Tid(1_026, "%00000402"), Attrs([Attr("address","0x914")]), Phis([]), -Defs([Def(Tid(1_032, "%00000408"), Attrs([Attr("address","0x914"), +Def(Tid(1_021, "%000003fd"), Attrs([Attr("address","0x950"), +Attr("insn","bl #-0x1e0")]), Var("R30",Imm(64)), Int(2388,64))]), +Jmps([Call(Tid(1_024, "%00000400"), Attrs([Attr("address","0x950"), +Attr("insn","bl #-0x1e0")]), Int(1,1), +(Direct(Tid(2_289, "@strlen")),Direct(Tid(1_026, "%00000402"))))])), +Blk(Tid(1_026, "%00000402"), Attrs([Attr("address","0x954")]), Phis([]), +Defs([Def(Tid(1_032, "%00000408"), Attrs([Attr("address","0x954"), Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_040, "%00000410"), Attrs([Attr("address","0x918"), +Def(Tid(1_040, "%00000410"), Attrs([Attr("address","0x958"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_048, "%00000418"), Attrs([Attr("address","0x91C"), +Def(Tid(1_048, "%00000418"), Attrs([Attr("address","0x95C"), Attr("insn","ldr x0, [sp, #0x8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_053, "%0000041d"), Attrs([Attr("address","0x920"), -Attr("insn","bl #-0x210")]), Var("R30",Imm(64)), Int(2340,64))]), -Jmps([Call(Tid(1_056, "%00000420"), Attrs([Attr("address","0x920"), -Attr("insn","bl #-0x210")]), Int(1,1), -(Direct(Tid(2_165, "@memcpy")),Direct(Tid(1_058, "%00000422"))))])), -Blk(Tid(1_058, "%00000422"), Attrs([Attr("address","0x924")]), Phis([]), -Defs([Def(Tid(1_064, "%00000428"), Attrs([Attr("address","0x924"), +Def(Tid(1_053, "%0000041d"), Attrs([Attr("address","0x960"), +Attr("insn","bl #-0x200")]), Var("R30",Imm(64)), Int(2404,64))]), +Jmps([Call(Tid(1_056, "%00000420"), Attrs([Attr("address","0x960"), +Attr("insn","bl #-0x200")]), Int(1,1), +(Direct(Tid(2_283, "@memcpy")),Direct(Tid(1_058, "%00000422"))))])), +Blk(Tid(1_058, "%00000422"), Attrs([Attr("address","0x964")]), Phis([]), +Defs([Def(Tid(1_064, "%00000428"), Attrs([Attr("address","0x964"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_072, "%00000430"), Attrs([Attr("address","0x928"), +Def(Tid(1_072, "%00000430"), Attrs([Attr("address","0x968"), Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_077, "%00000435"), Attrs([Attr("address","0x92C"), -Attr("insn","bl #-0x19c")]), Var("R30",Imm(64)), Int(2352,64))]), -Jmps([Call(Tid(1_080, "%00000438"), Attrs([Attr("address","0x92C"), -Attr("insn","bl #-0x19c")]), Int(1,1), -(Direct(Tid(2_167, "@puts")),Direct(Tid(1_082, "%0000043a"))))])), -Blk(Tid(1_082, "%0000043a"), Attrs([Attr("address","0x930")]), Phis([]), -Defs([Def(Tid(1_088, "%00000440"), Attrs([Attr("address","0x930"), +Def(Tid(1_077, "%00000435"), Attrs([Attr("address","0x96C"), +Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2416,64))]), +Jmps([Call(Tid(1_080, "%00000438"), Attrs([Attr("address","0x96C"), +Attr("insn","bl #-0x18c")]), Int(1,1), +(Direct(Tid(2_285, "@puts")),Direct(Tid(1_082, "%0000043a"))))])), +Blk(Tid(1_082, "%0000043a"), Attrs([Attr("address","0x970")]), Phis([]), +Defs([Def(Tid(1_088, "%00000440"), Attrs([Attr("address","0x970"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_096, "%00000448"), Attrs([Attr("address","0x934"), +Def(Tid(1_096, "%00000448"), Attrs([Attr("address","0x974"), Attr("insn","ldr x9, [x8, #0x78]")]), Var("R9",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_103, "%0000044f"), Attrs([Attr("address","0x938"), +Def(Tid(1_103, "%0000044f"), Attrs([Attr("address","0x978"), Attr("insn","add x9, x9, #0x4")]), Var("R9",Imm(64)), PLUS(Var("R9",Imm(64)),Int(4,64))), Def(Tid(1_111, "%00000457"), - Attrs([Attr("address","0x93C"), Attr("insn","stur x9, [x29, #-0x8]")]), + Attrs([Attr("address","0x97C"), Attr("insn","stur x9, [x29, #-0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Var("R9",Imm(64)),LittleEndian(),64)), -Def(Tid(1_119, "%0000045f"), Attrs([Attr("address","0x940"), +Def(Tid(1_119, "%0000045f"), Attrs([Attr("address","0x980"), Attr("insn","ldr x9, [x8, #0x78]")]), Var("R9",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_127, "%00000467"), Attrs([Attr("address","0x944"), +Def(Tid(1_127, "%00000467"), Attrs([Attr("address","0x984"), Attr("insn","str x9, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R9",Imm(64)),LittleEndian(),64)), -Def(Tid(1_135, "%0000046f"), Attrs([Attr("address","0x948"), +Def(Tid(1_135, "%0000046f"), Attrs([Attr("address","0x988"), Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_140, "%00000474"), Attrs([Attr("address","0x94C"), -Attr("insn","bl #-0x22c")]), Var("R30",Imm(64)), Int(2384,64))]), -Jmps([Call(Tid(1_142, "%00000476"), Attrs([Attr("address","0x94C"), -Attr("insn","bl #-0x22c")]), Int(1,1), -(Direct(Tid(2_171, "@strlen")),Direct(Tid(1_144, "%00000478"))))])), -Blk(Tid(1_144, "%00000478"), Attrs([Attr("address","0x950")]), Phis([]), -Defs([Def(Tid(1_150, "%0000047e"), Attrs([Attr("address","0x950"), +Def(Tid(1_140, "%00000474"), Attrs([Attr("address","0x98C"), +Attr("insn","bl #-0x21c")]), Var("R30",Imm(64)), Int(2448,64))]), +Jmps([Call(Tid(1_142, "%00000476"), Attrs([Attr("address","0x98C"), +Attr("insn","bl #-0x21c")]), Int(1,1), +(Direct(Tid(2_289, "@strlen")),Direct(Tid(1_144, "%00000478"))))])), +Blk(Tid(1_144, "%00000478"), Attrs([Attr("address","0x990")]), Phis([]), +Defs([Def(Tid(1_150, "%0000047e"), Attrs([Attr("address","0x990"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_158, "%00000486"), Attrs([Attr("address","0x954"), +Def(Tid(1_158, "%00000486"), Attrs([Attr("address","0x994"), Attr("insn","ldr x0, [sp, #0x10]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_165, "%0000048d"), Attrs([Attr("address","0x958"), +Def(Tid(1_165, "%0000048d"), Attrs([Attr("address","0x998"), Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), -Def(Tid(1_170, "%00000492"), Attrs([Attr("address","0x95C"), -Attr("insn","bl #-0x1fc")]), Var("R30",Imm(64)), Int(2400,64))]), -Jmps([Call(Tid(1_173, "%00000495"), Attrs([Attr("address","0x95C"), -Attr("insn","bl #-0x1fc")]), Int(1,1), -(Direct(Tid(2_166, "@memset")),Direct(Tid(1_175, "%00000497"))))])), -Blk(Tid(1_175, "%00000497"), Attrs([Attr("address","0x960")]), Phis([]), -Defs([Def(Tid(1_181, "%0000049d"), Attrs([Attr("address","0x960"), +Def(Tid(1_170, "%00000492"), Attrs([Attr("address","0x99C"), +Attr("insn","bl #-0x1ec")]), Var("R30",Imm(64)), Int(2464,64))]), +Jmps([Call(Tid(1_173, "%00000495"), Attrs([Attr("address","0x99C"), +Attr("insn","bl #-0x1ec")]), Int(1,1), +(Direct(Tid(2_284, "@memset")),Direct(Tid(1_175, "%00000497"))))])), +Blk(Tid(1_175, "%00000497"), Attrs([Attr("address","0x9A0")]), Phis([]), +Defs([Def(Tid(1_181, "%0000049d"), Attrs([Attr("address","0x9A0"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x964"), +Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x9A4"), Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_194, "%000004aa"), Attrs([Attr("address","0x968"), -Attr("insn","bl #-0x1c8")]), Var("R30",Imm(64)), Int(2412,64))]), -Jmps([Call(Tid(1_197, "%000004ad"), Attrs([Attr("address","0x968"), -Attr("insn","bl #-0x1c8")]), Int(1,1), -(Direct(Tid(2_162, "@free")),Direct(Tid(1_199, "%000004af"))))])), -Blk(Tid(1_199, "%000004af"), Attrs([Attr("address","0x96C")]), Phis([]), -Defs([Def(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x96C"), +Def(Tid(1_194, "%000004aa"), Attrs([Attr("address","0x9A8"), +Attr("insn","bl #-0x1b8")]), Var("R30",Imm(64)), Int(2476,64))]), +Jmps([Call(Tid(1_197, "%000004ad"), Attrs([Attr("address","0x9A8"), +Attr("insn","bl #-0x1b8")]), Int(1,1), +(Direct(Tid(2_280, "@free")),Direct(Tid(1_199, "%000004af"))))])), +Blk(Tid(1_199, "%000004af"), Attrs([Attr("address","0x9AC")]), Phis([]), +Defs([Def(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x9AC"), Attr("insn","mov w0, wzr")]), Var("R0",Imm(64)), Int(0,32)), -Def(Tid(1_215, "%000004bf"), Attrs([Attr("address","0x970"), +Def(Tid(1_215, "%000004bf"), Attrs([Attr("address","0x9B0"), Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(48,64)),LittleEndian(),64)), -Def(Tid(1_219, "%000004c3"), Attrs([Attr("address","0x970"), +Def(Tid(1_219, "%000004c3"), Attrs([Attr("address","0x9B0"), Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(56,64)),LittleEndian(),64)), -Def(Tid(1_226, "%000004ca"), Attrs([Attr("address","0x974"), +Def(Tid(1_226, "%000004ca"), Attrs([Attr("address","0x9B4"), Attr("insn","add sp, sp, #0x40")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_231, "%000004cf"), - Attrs([Attr("address","0x978"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_164, "@malloc"), + Attrs([Attr("address","0x9B8"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_282, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), -Attr("address","0x750"), Attr("malloc","()"), Attr("stub","()")]), "malloc", - Args([Arg(Tid(2_233, "%000008b9"), Attrs([Attr("alloc-size","()"), +Attr("address","0x7A0"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_351, "%0000092f"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), -Var("R0",Imm(64)), In()), Arg(Tid(2_234, "%000008ba"), +Var("R0",Imm(64)), In()), Arg(Tid(2_352, "%00000930"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(955, "@malloc"), Attrs([Attr("address","0x750")]), Phis([]), -Defs([Def(Tid(1_744, "%000006d0"), Attrs([Attr("address","0x750"), +Blks([Blk(Tid(955, "@malloc"), Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_744, "%000006d0"), Attrs([Attr("address","0x7A0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_752, "%000006d8"), Attrs([Attr("address","0x754"), +Def(Tid(1_752, "%000006d8"), Attrs([Attr("address","0x7A4"), Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), -Def(Tid(1_759, "%000006df"), Attrs([Attr("address","0x758"), +Def(Tid(1_759, "%000006df"), Attrs([Attr("address","0x7A8"), Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_764, "%000006e4"), - Attrs([Attr("address","0x75C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_165, "@memcpy"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_283, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), -Attr("address","0x710"), Attr("stub","()")]), "memcpy", - Args([Arg(Tid(2_235, "%000008bb"), Attrs([Attr("nonnull","()"), +Attr("address","0x760"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_353, "%00000931"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), -Var("R0",Imm(64)), Both()), Arg(Tid(2_236, "%000008bc"), +Var("R0",Imm(64)), Both()), Arg(Tid(2_354, "%00000932"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), -Arg(Tid(2_237, "%000008bd"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Arg(Tid(2_355, "%00000933"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), -Arg(Tid(2_238, "%000008be"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_356, "%00000934"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_054, "@memcpy"), Attrs([Attr("address","0x710")]), Phis([]), -Defs([Def(Tid(1_644, "%0000066c"), Attrs([Attr("address","0x710"), +Blks([Blk(Tid(1_054, "@memcpy"), Attrs([Attr("address","0x760")]), Phis([]), +Defs([Def(Tid(1_644, "%0000066c"), Attrs([Attr("address","0x760"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_652, "%00000674"), Attrs([Attr("address","0x714"), +Def(Tid(1_652, "%00000674"), Attrs([Attr("address","0x764"), Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), -Def(Tid(1_659, "%0000067b"), Attrs([Attr("address","0x718"), +Def(Tid(1_659, "%0000067b"), Attrs([Attr("address","0x768"), Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), Var("R16",Imm(64)))]), Jmps([Call(Tid(1_664, "%00000680"), - Attrs([Attr("address","0x71C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_166, "@memset"), + Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_284, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), -Attr("address","0x760"), Attr("stub","()")]), "memset", - Args([Arg(Tid(2_239, "%000008bf"), Attrs([Attr("nonnull","()"), +Attr("address","0x7B0"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_357, "%00000935"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), -Both()), Arg(Tid(2_240, "%000008c0"), +Both()), Arg(Tid(2_358, "%00000936"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("memset_c",Imm(32)), -LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_241, "%000008c1"), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_359, "%00000937"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), -In()), Arg(Tid(2_242, "%000008c2"), Attrs([Attr("c.layout","*[ : 8]"), +In()), Arg(Tid(2_360, "%00000938"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_171, "@memset"), Attrs([Attr("address","0x760")]), Phis([]), -Defs([Def(Tid(1_769, "%000006e9"), Attrs([Attr("address","0x760"), +Blks([Blk(Tid(1_171, "@memset"), Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_769, "%000006e9"), Attrs([Attr("address","0x7B0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_777, "%000006f1"), Attrs([Attr("address","0x764"), +Def(Tid(1_777, "%000006f1"), Attrs([Attr("address","0x7B4"), Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), -Def(Tid(1_784, "%000006f8"), Attrs([Attr("address","0x768"), +Def(Tid(1_784, "%000006f8"), Attrs([Attr("address","0x7B8"), Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_789, "%000006fd"), - Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_167, "@puts"), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_285, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), -Attr("address","0x790"), Attr("stub","()")]), "puts", - Args([Arg(Tid(2_243, "%000008c3"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("address","0x7E0"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_361, "%00000939"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_244, "%000008c4"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_362, "%0000093a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(1_078, "@puts"), Attrs([Attr("address","0x790")]), Phis([]), -Defs([Def(Tid(1_844, "%00000734"), Attrs([Attr("address","0x790"), +Blks([Blk(Tid(1_078, "@puts"), Attrs([Attr("address","0x7E0")]), Phis([]), +Defs([Def(Tid(1_844, "%00000734"), Attrs([Attr("address","0x7E0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_852, "%0000073c"), Attrs([Attr("address","0x794"), +Def(Tid(1_852, "%0000073c"), Attrs([Attr("address","0x7E4"), Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), -Def(Tid(1_859, "%00000743"), Attrs([Attr("address","0x798"), +Def(Tid(1_859, "%00000743"), Attrs([Attr("address","0x7E8"), Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_864, "%00000748"), - Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7EC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_168, "@register_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x840")]), - "register_tm_clones", Args([Arg(Tid(2_245, "%000008c5"), +Sub(Tid(2_286, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + "register_tm_clones", Args([Arg(Tid(2_363, "%0000093b"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(719, "@register_tm_clones"), Attrs([Attr("address","0x840")]), - Phis([]), Defs([Def(Tid(723, "%000002d3"), Attrs([Attr("address","0x840"), +Blks([Blk(Tid(719, "@register_tm_clones"), Attrs([Attr("address","0x880")]), + Phis([]), Defs([Def(Tid(723, "%000002d3"), Attrs([Attr("address","0x880"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(730, "%000002da"), Attrs([Attr("address","0x844"), +Def(Tid(730, "%000002da"), Attrs([Attr("address","0x884"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), Def(Tid(736, "%000002e0"), - Attrs([Attr("address","0x848"), Attr("insn","adrp x1, #0x20000")]), + Attrs([Attr("address","0x888"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), Def(Tid(743, "%000002e7"), - Attrs([Attr("address","0x84C"), Attr("insn","add x1, x1, #0x70")]), + Attrs([Attr("address","0x88C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), -Def(Tid(751, "%000002ef"), Attrs([Attr("address","0x850"), +Def(Tid(751, "%000002ef"), Attrs([Attr("address","0x890"), Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(758, "%000002f6"), - Attrs([Attr("address","0x854"), Attr("insn","lsr x2, x1, #63")]), + Attrs([Attr("address","0x894"), Attr("insn","lsr x2, x1, #63")]), Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), -Def(Tid(766, "%000002fe"), Attrs([Attr("address","0x858"), +Def(Tid(766, "%000002fe"), Attrs([Attr("address","0x898"), Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), -Def(Tid(773, "%00000305"), Attrs([Attr("address","0x85C"), +Def(Tid(773, "%00000305"), Attrs([Attr("address","0x89C"), Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(785, "%00000311"), - Attrs([Attr("address","0x860"), Attr("insn","cbz x1, #0x18")]), + Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), -Jmps([Goto(Tid(779, "%0000030b"), Attrs([Attr("address","0x860"), +Jmps([Goto(Tid(779, "%0000030b"), Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), -Direct(Tid(777, "%00000309"))), Goto(Tid(2_213, "%000008a5"), Attrs([]), +Direct(Tid(777, "%00000309"))), Goto(Tid(2_331, "%0000091b"), Attrs([]), Int(1,1), Direct(Tid(1_303, "%00000517")))])), Blk(Tid(1_303, "%00000517"), - Attrs([Attr("address","0x864")]), Phis([]), -Defs([Def(Tid(1_307, "%0000051b"), Attrs([Attr("address","0x864"), + Attrs([Attr("address","0x8A4")]), Phis([]), +Defs([Def(Tid(1_307, "%0000051b"), Attrs([Attr("address","0x8A4"), Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), -Def(Tid(1_315, "%00000523"), Attrs([Attr("address","0x868"), +Def(Tid(1_315, "%00000523"), Attrs([Attr("address","0x8A8"), Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), -Def(Tid(1_326, "%0000052e"), Attrs([Attr("address","0x86C"), +Def(Tid(1_326, "%0000052e"), Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), Var("#70",Imm(1)), EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_320, "%00000528"), - Attrs([Attr("address","0x86C"), Attr("insn","cbz x2, #0xc")]), + Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), Var("#70",Imm(1)), Direct(Tid(777, "%00000309"))), -Goto(Tid(2_214, "%000008a6"), Attrs([]), Int(1,1), +Goto(Tid(2_332, "%0000091c"), Attrs([]), Int(1,1), Direct(Tid(1_329, "%00000531")))])), Blk(Tid(777, "%00000309"), - Attrs([Attr("address","0x878")]), Phis([]), Defs([]), -Jmps([Call(Tid(790, "%00000316"), Attrs([Attr("address","0x878"), + Attrs([Attr("address","0x8B8")]), Phis([]), Defs([]), +Jmps([Call(Tid(790, "%00000316"), Attrs([Attr("address","0x8B8"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_329, "%00000531"), Attrs([Attr("address","0x870")]), Phis([]), -Defs([Def(Tid(1_335, "%00000537"), Attrs([Attr("address","0x870"), +Blk(Tid(1_329, "%00000531"), Attrs([Attr("address","0x8B0")]), Phis([]), +Defs([Def(Tid(1_335, "%00000537"), Attrs([Attr("address","0x8B0"), Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), -Jmps([Call(Tid(1_340, "%0000053c"), Attrs([Attr("address","0x874"), +Jmps([Call(Tid(1_340, "%0000053c"), Attrs([Attr("address","0x8B4"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), -Sub(Tid(2_171, "@strlen"), +Sub(Tid(2_289, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), -Attr("pure","()"), Attr("address","0x720"), Attr("stub","()")]), "strlen", - Args([Arg(Tid(2_246, "%000008c6"), Attrs([Attr("nonnull","()"), +Attr("pure","()"), Attr("address","0x770"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_364, "%0000093c"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), -In()), Arg(Tid(2_247, "%000008c7"), +In()), Arg(Tid(2_365, "%0000093d"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_022, "@strlen"), - Attrs([Attr("address","0x720")]), Phis([]), -Defs([Def(Tid(1_669, "%00000685"), Attrs([Attr("address","0x720"), + Attrs([Attr("address","0x770")]), Phis([]), +Defs([Def(Tid(1_669, "%00000685"), Attrs([Attr("address","0x770"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_677, "%0000068d"), Attrs([Attr("address","0x724"), +Def(Tid(1_677, "%0000068d"), Attrs([Attr("address","0x774"), Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_684, "%00000694"), Attrs([Attr("address","0x728"), +Def(Tid(1_684, "%00000694"), Attrs([Attr("address","0x778"), Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_689, "%00000699"), - Attrs([Attr("address","0x72C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir index 3d28f222f..e1fe07e4d 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir @@ -1,6 +1,6 @@ -000008a7: program -00000860: sub __cxa_finalize(__cxa_finalize_result) -000008a8: __cxa_finalize_result :: out u32 = low:32[R0] +0000091d: program +000008d6: sub __cxa_finalize(__cxa_finalize_result) +0000091e: __cxa_finalize_result :: out u32 = low:32[R0] 00000513: 000006b7: R16 := 0x20000 @@ -8,8 +8,8 @@ 000006c6: R16 := R16 + 0x18 000006cb: call R17 with noreturn -00000861: sub __do_global_dtors_aux(__do_global_dtors_aux_result) -000008a9: __do_global_dtors_aux_result :: out u32 = low:32[R0] +000008d7: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +0000091f: __do_global_dtors_aux_result :: out u32 = low:32[R0] 0000031a: 00000321: #34 := R31 - 0x20 @@ -22,29 +22,29 @@ 0000034d: R0 := pad:32[mem[R19 + 0x70]] 00000359: #36 := ~~0:0[R0] 00000353: when #36 goto %00000351 -0000089d: goto %000004d1 +00000913: goto %000004d1 000004d1: 000004d5: R0 := 0x1F000 000004dd: R0 := mem[R0 + 0xFC8, el]:u64 000004e9: #67 := R0 = 0 000004e3: when #67 goto %000004e1 -0000089e: goto %00000501 +00000914: goto %00000501 00000501: 00000505: R0 := 0x20000 0000050d: R0 := mem[R0 + 0x58, el]:u64 -00000512: R30 := 0x8B0 +00000512: R30 := 0x8F0 00000515: call @__cxa_finalize with return %000004e1 000004e1: -000004ee: R30 := 0x8B4 +000004ee: R30 := 0x8F4 000004f0: call @deregister_tm_clones with return %000004f2 000004f2: 000004f7: R0 := 1 000004ff: mem := mem with [R19 + 0x70] <- low:8[31:0[R0]] -0000089f: goto %00000351 +00000915: goto %00000351 00000351: 00000361: R19 := mem[R31 + 0x10, el]:u64 @@ -53,12 +53,12 @@ 00000372: R31 := R31 + 0x20 00000377: call R30 with noreturn -00000865: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) -000008aa: __libc_start_main_main :: in u64 = R0 -000008ab: __libc_start_main_arg2 :: in u32 = low:32[R1] -000008ac: __libc_start_main_arg3 :: in out u64 = R2 -000008ad: __libc_start_main_auxv :: in out u64 = R3 -000008ae: __libc_start_main_result :: out u32 = low:32[R0] +000008db: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +00000920: __libc_start_main_main :: in u64 = R0 +00000921: __libc_start_main_arg2 :: in u32 = low:32[R1] +00000922: __libc_start_main_arg3 :: in out u64 = R2 +00000923: __libc_start_main_auxv :: in out u64 = R3 +00000924: __libc_start_main_result :: out u32 = low:32[R0] 0000025e: 0000069e: R16 := 0x20000 @@ -66,8 +66,8 @@ 000006ad: R16 := R16 + 0x10 000006b2: call R17 with noreturn -00000866: sub _fini(_fini_result) -000008af: _fini_result :: out u32 = low:32[R0] +000008dc: sub _fini(_fini_result) +00000925: _fini_result :: out u32 = low:32[R0] 00000020: 00000029: #3 := R31 - 0x10 @@ -80,26 +80,26 @@ 0000004f: R31 := R31 + 0x10 00000054: call R30 with noreturn -00000867: sub _init(_init_result) -000008b0: _init_result :: out u32 = low:32[R0] +000008dd: sub _init(_init_result) +00000926: _init_result :: out u32 = low:32[R0] -0000077d: -00000786: #98 := R31 - 0x10 -0000078b: mem := mem with [#98, el]:u64 <- R29 -00000790: mem := mem with [#98 + 8, el]:u64 <- R30 -00000794: R31 := #98 -0000079b: R29 := R31 -000007a0: R30 := 0x6E8 -000007a2: call @call_weak_fn with return %000007a4 +000007f3: +000007fc: #98 := R31 - 0x10 +00000801: mem := mem with [#98, el]:u64 <- R29 +00000806: mem := mem with [#98 + 8, el]:u64 <- R30 +0000080a: R31 := #98 +00000811: R29 := R31 +00000816: R30 := 0x738 +00000818: call @call_weak_fn with return %0000081a -000007a4: -000007ac: R29 := mem[R31, el]:u64 -000007b0: R30 := mem[R31 + 8, el]:u64 -000007b3: R31 := R31 + 0x10 -000007b8: call R30 with noreturn +0000081a: +00000822: R29 := mem[R31, el]:u64 +00000826: R30 := mem[R31 + 8, el]:u64 +00000829: R31 := R31 + 0x10 +0000082e: call R30 with noreturn -00000868: sub _start(_start_result) -000008b1: _start_result :: out u32 = low:32[R0] +000008de: sub _start(_start_result) +00000927: _start_result :: out u32 = low:32[R0] 00000214: 0000021a: R29 := 0 @@ -112,17 +112,17 @@ 0000024c: R0 := mem[R0 + 0xFD8, el]:u64 00000252: R3 := 0 00000258: R4 := 0 -0000025d: R30 := 0x7F0 +0000025d: R30 := 0x830 00000260: call @__libc_start_main with return %00000262 00000262: -00000265: R30 := 0x7F4 -00000268: call @abort with return %000008a0 +00000265: R30 := 0x834 +00000268: call @abort with return %00000916 -000008a0: -000008a1: call @call_weak_fn with noreturn +00000916: +00000917: call @call_weak_fn with noreturn -0000086b: sub abort() +000008e1: sub abort() 00000266: @@ -131,15 +131,15 @@ 0000072a: R16 := R16 + 0x38 0000072f: call R17 with noreturn -0000086c: sub call_weak_fn(call_weak_fn_result) -000008b2: call_weak_fn_result :: out u32 = low:32[R0] +000008e2: sub call_weak_fn(call_weak_fn_result) +00000928: call_weak_fn_result :: out u32 = low:32[R0] 0000026a: 0000026e: R0 := 0x1F000 00000276: R0 := mem[R0 + 0xFD0, el]:u64 00000282: #12 := R0 = 0 0000027c: when #12 goto %0000027a -000008a2: goto %00000565 +00000918: goto %00000565 0000027a: 00000287: call R30 with noreturn @@ -153,8 +153,8 @@ 00000711: R16 := R16 + 0x30 00000716: call R17 with noreturn -0000086e: sub deregister_tm_clones(deregister_tm_clones_result) -000008b3: deregister_tm_clones_result :: out u32 = low:32[R0] +000008e4: sub deregister_tm_clones(deregister_tm_clones_result) +00000929: deregister_tm_clones_result :: out u32 = low:32[R0] 0000028d: 00000291: R0 := 0x20000 @@ -170,14 +170,14 @@ & ~63:63[#16] 000002c8: #21 := ZF 000002c2: when #21 goto %000002c0 -000008a3: goto %0000053e +00000919: goto %0000053e 0000053e: 00000542: R1 := 0x1F000 0000054a: R1 := mem[R1 + 0xFC0, el]:u64 00000555: #75 := R1 = 0 0000054f: when #75 goto %000002c0 -000008a4: goto %00000558 +0000091a: goto %00000558 000002c0: 000002cd: call R30 with noreturn @@ -186,14 +186,14 @@ 0000055e: R16 := R1 00000563: call R16 with noreturn -00000871: sub frame_dummy(frame_dummy_result) -000008b4: frame_dummy_result :: out u32 = low:32[R0] +000008e7: sub frame_dummy(frame_dummy_result) +0000092a: frame_dummy_result :: out u32 = low:32[R0] 0000037d: 0000037f: call @register_tm_clones with noreturn -00000872: sub free(free_ptr) -000008b5: free_ptr :: in out u64 = R0 +000008e8: sub free(free_ptr) +0000092b: free_ptr :: in out u64 = R0 000004ab: 0000074d: R16 := 0x20000 @@ -201,10 +201,10 @@ 0000075c: R16 := R16 + 0x48 00000761: call R17 with noreturn -00000873: sub main(main_argc, main_argv, main_result) -000008b6: main_argc :: in u32 = low:32[R0] -000008b7: main_argv :: in out u64 = R1 -000008b8: main_result :: out u32 = low:32[R0] +000008e9: sub main(main_argc, main_argv, main_result) +0000092c: main_argc :: in u32 = low:32[R0] +0000092d: main_argv :: in out u64 = R1 +0000092e: main_result :: out u32 = low:32[R0] 00000381: 00000386: R31 := R31 - 0x40 @@ -215,7 +215,7 @@ 000003a7: mem := mem with [R29 - 8, el]:u64 <- 0 000003af: mem := mem with [R29 - 0x10, el]:u64 <- 0 000003b5: R0 := 0xB -000003ba: R30 := 0x8F0 +000003ba: R30 := 0x930 000003bd: call @malloc with return %000003bf 000003bf: @@ -227,20 +227,20 @@ 000003e9: R0 := 0x20000 000003f0: R0 := R0 + 0x61 000003f8: mem := mem with [R31, el]:u64 <- R0 -000003fd: R30 := 0x914 +000003fd: R30 := 0x954 00000400: call @strlen with return %00000402 00000402: 00000408: R1 := mem[R31, el]:u64 00000410: R2 := R0 00000418: R0 := mem[R31 + 8, el]:u64 -0000041d: R30 := 0x924 +0000041d: R30 := 0x964 00000420: call @memcpy with return %00000422 00000422: 00000428: R8 := mem[R31 + 0x18, el]:u64 00000430: R0 := mem[R8 + 0x78, el]:u64 -00000435: R30 := 0x930 +00000435: R30 := 0x970 00000438: call @puts with return %0000043a 0000043a: @@ -251,20 +251,20 @@ 0000045f: R9 := mem[R8 + 0x78, el]:u64 00000467: mem := mem with [R31 + 0x10, el]:u64 <- R9 0000046f: R0 := mem[R8 + 0x78, el]:u64 -00000474: R30 := 0x950 +00000474: R30 := 0x990 00000476: call @strlen with return %00000478 00000478: 0000047e: R2 := R0 00000486: R0 := mem[R31 + 0x10, el]:u64 0000048d: R1 := 1 -00000492: R30 := 0x960 +00000492: R30 := 0x9A0 00000495: call @memset with return %00000497 00000497: 0000049d: R8 := mem[R31 + 0x18, el]:u64 000004a5: R0 := mem[R8 + 0x78, el]:u64 -000004aa: R30 := 0x96C +000004aa: R30 := 0x9AC 000004ad: call @free with return %000004af 000004af: @@ -274,9 +274,9 @@ 000004ca: R31 := R31 + 0x40 000004cf: call R30 with noreturn -00000874: sub malloc(malloc_size, malloc_result) -000008b9: malloc_size :: in u64 = R0 -000008ba: malloc_result :: out u64 = R0 +000008ea: sub malloc(malloc_size, malloc_result) +0000092f: malloc_size :: in u64 = R0 +00000930: malloc_result :: out u64 = R0 000003bb: 000006d0: R16 := 0x20000 @@ -284,11 +284,11 @@ 000006df: R16 := R16 + 0x20 000006e4: call R17 with noreturn -00000875: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) -000008bb: memcpy_dst :: in out u64 = R0 -000008bc: memcpy_src :: in out u64 = R1 -000008bd: memcpy_n :: in u64 = R2 -000008be: memcpy_result :: out u64 = R0 +000008eb: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +00000931: memcpy_dst :: in out u64 = R0 +00000932: memcpy_src :: in out u64 = R1 +00000933: memcpy_n :: in u64 = R2 +00000934: memcpy_result :: out u64 = R0 0000041e: 0000066c: R16 := 0x20000 @@ -296,11 +296,11 @@ 0000067b: R16 := R16 00000680: call R17 with noreturn -00000876: sub memset(memset_buf, memset_c, memset_n, memset_result) -000008bf: memset_buf :: in out u64 = R0 -000008c0: memset_c :: in u32 = low:32[R1] -000008c1: memset_n :: in u64 = R2 -000008c2: memset_result :: out u64 = R0 +000008ec: sub memset(memset_buf, memset_c, memset_n, memset_result) +00000935: memset_buf :: in out u64 = R0 +00000936: memset_c :: in u32 = low:32[R1] +00000937: memset_n :: in u64 = R2 +00000938: memset_result :: out u64 = R0 00000493: 000006e9: R16 := 0x20000 @@ -308,9 +308,9 @@ 000006f8: R16 := R16 + 0x28 000006fd: call R17 with noreturn -00000877: sub puts(puts_s, puts_result) -000008c3: puts_s :: in u64 = R0 -000008c4: puts_result :: out u32 = low:32[R0] +000008ed: sub puts(puts_s, puts_result) +00000939: puts_s :: in u64 = R0 +0000093a: puts_result :: out u32 = low:32[R0] 00000436: 00000734: R16 := 0x20000 @@ -318,8 +318,8 @@ 00000743: R16 := R16 + 0x40 00000748: call R17 with noreturn -00000878: sub register_tm_clones(register_tm_clones_result) -000008c5: register_tm_clones_result :: out u32 = low:32[R0] +000008ee: sub register_tm_clones(register_tm_clones_result) +0000093b: register_tm_clones_result :: out u32 = low:32[R0] 000002cf: 000002d3: R0 := 0x20000 @@ -332,14 +332,14 @@ 00000305: R1 := R1 >> 1 00000311: #30 := R1 = 0 0000030b: when #30 goto %00000309 -000008a5: goto %00000517 +0000091b: goto %00000517 00000517: 0000051b: R2 := 0x1F000 00000523: R2 := mem[R2 + 0xFE0, el]:u64 0000052e: #70 := R2 = 0 00000528: when #70 goto %00000309 -000008a6: goto %00000531 +0000091c: goto %00000531 00000309: 00000316: call R30 with noreturn @@ -348,9 +348,9 @@ 00000537: R16 := R2 0000053c: call R16 with noreturn -0000087b: sub strlen(strlen_s, strlen_result) -000008c6: strlen_s :: in u64 = R0 -000008c7: strlen_result :: out u64 = R0 +000008f1: sub strlen(strlen_s, strlen_result) +0000093c: strlen_s :: in u64 = R0 +0000093d: strlen_result :: out u64 = R0 000003fe: 00000685: R16 := 0x20000 diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf index b8d9040b4..ff00bf9d2 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf @@ -1,16 +1,16 @@ -Relocation section '.rela.dyn' at offset 0x528 contains 8 entries: +Relocation section '.rela.dyn' at offset 0x578 contains 8 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -000000000001fdc8 0000000000000403 R_AARCH64_RELATIVE 8d0 -000000000001fdd0 0000000000000403 R_AARCH64_RELATIVE 880 -000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 8d4 +000000000001fdb8 0000000000000403 R_AARCH64_RELATIVE 910 +000000000001fdc0 0000000000000403 R_AARCH64_RELATIVE 8c0 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 914 0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 000000000001ffc0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 000000000001ffc8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 000000000001ffd0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: +Relocation section '.rela.plt' at offset 0x638 contains 10 entries: Offset Info Type Symbol's Value Symbol's Name + Addend 0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 @@ -26,8 +26,8 @@ Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: Symbol table '.dynsym' contains 15 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init - 2: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 1: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) @@ -41,104 +41,105 @@ Symbol table '.dynsym' contains 15 entries: 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable -Symbol table '.symtab' contains 99 entries: +Symbol table '.symtab' contains 100 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag - 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .gnu.hash - 5: 00000000000002b8 0 SECTION LOCAL DEFAULT 5 .dynsym - 6: 0000000000000420 0 SECTION LOCAL DEFAULT 6 .dynstr - 7: 00000000000004d4 0 SECTION LOCAL DEFAULT 7 .gnu.version - 8: 00000000000004f8 0 SECTION LOCAL DEFAULT 8 .gnu.version_r - 9: 0000000000000528 0 SECTION LOCAL DEFAULT 9 .rela.dyn - 10: 00000000000005e8 0 SECTION LOCAL DEFAULT 10 .rela.plt - 11: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init - 12: 00000000000006f0 0 SECTION LOCAL DEFAULT 12 .plt - 13: 00000000000007c0 0 SECTION LOCAL DEFAULT 13 .text - 14: 000000000000097c 0 SECTION LOCAL DEFAULT 14 .fini - 15: 0000000000000990 0 SECTION LOCAL DEFAULT 15 .rodata - 16: 0000000000000994 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr - 17: 00000000000009d0 0 SECTION LOCAL DEFAULT 17 .eh_frame - 18: 000000000001fdc8 0 SECTION LOCAL DEFAULT 18 .init_array - 19: 000000000001fdd0 0 SECTION LOCAL DEFAULT 19 .fini_array - 20: 000000000001fdd8 0 SECTION LOCAL DEFAULT 20 .dynamic - 21: 000000000001ffb8 0 SECTION LOCAL DEFAULT 21 .got - 22: 000000000001ffe8 0 SECTION LOCAL DEFAULT 22 .got.plt - 23: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data - 24: 0000000000020070 0 SECTION LOCAL DEFAULT 24 .bss - 25: 0000000000000000 0 SECTION LOCAL DEFAULT 25 .comment - 26: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o - 27: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d - 28: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag - 29: 00000000000007c0 0 NOTYPE LOCAL DEFAULT 13 $x - 30: 00000000000009e4 0 NOTYPE LOCAL DEFAULT 17 $d - 31: 0000000000000990 0 NOTYPE LOCAL DEFAULT 15 $d - 32: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o - 33: 00000000000007f4 0 NOTYPE LOCAL DEFAULT 13 $x - 34: 00000000000007f4 20 FUNC LOCAL DEFAULT 13 call_weak_fn - 35: 00000000000006d8 0 NOTYPE LOCAL DEFAULT 11 $x - 36: 000000000000097c 0 NOTYPE LOCAL DEFAULT 14 $x - 37: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o - 38: 00000000000006e8 0 NOTYPE LOCAL DEFAULT 11 $x - 39: 0000000000000988 0 NOTYPE LOCAL DEFAULT 14 $x - 40: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 41: 0000000000000810 0 NOTYPE LOCAL DEFAULT 13 $x - 42: 0000000000000810 0 FUNC LOCAL DEFAULT 13 deregister_tm_clones - 43: 0000000000000840 0 FUNC LOCAL DEFAULT 13 register_tm_clones - 44: 0000000000020058 0 NOTYPE LOCAL DEFAULT 23 $d - 45: 0000000000000880 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux - 46: 0000000000020070 1 OBJECT LOCAL DEFAULT 24 completed.0 - 47: 000000000001fdd0 0 NOTYPE LOCAL DEFAULT 19 $d - 48: 000000000001fdd0 0 OBJECT LOCAL DEFAULT 19 __do_global_dtors_aux_fini_array_entry - 49: 00000000000008d0 0 FUNC LOCAL DEFAULT 13 frame_dummy - 50: 000000000001fdc8 0 NOTYPE LOCAL DEFAULT 18 $d - 51: 000000000001fdc8 0 OBJECT LOCAL DEFAULT 18 __frame_dummy_init_array_entry - 52: 00000000000009f8 0 NOTYPE LOCAL DEFAULT 17 $d - 53: 0000000000020070 0 NOTYPE LOCAL DEFAULT 24 $d - 54: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c - 55: 00000000000008d4 0 NOTYPE LOCAL DEFAULT 13 $x.0 - 56: 0000000000020060 0 NOTYPE LOCAL DEFAULT 23 $d.1 - 57: 0000000000020078 0 NOTYPE LOCAL DEFAULT 24 $d.2 - 58: 000000000000003e 0 NOTYPE LOCAL DEFAULT 25 $d.3 - 59: 0000000000000a58 0 NOTYPE LOCAL DEFAULT 17 $d.4 - 60: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 61: 0000000000000a94 0 NOTYPE LOCAL DEFAULT 17 $d - 62: 0000000000000a94 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__ - 63: 0000000000000000 0 FILE LOCAL DEFAULT ABS - 64: 000000000001fdd8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC - 65: 0000000000000994 0 NOTYPE LOCAL DEFAULT 16 __GNU_EH_FRAME_HDR - 66: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - 67: 00000000000006f0 0 NOTYPE LOCAL DEFAULT 12 $x - 68: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 - 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 - 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 - 71: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 72: 0000000000020050 0 NOTYPE WEAK DEFAULT 23 data_start - 73: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start__ - 74: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 - 75: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _bss_end__ - 76: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 23 _edata - 77: 000000000000097c 0 FUNC GLOBAL HIDDEN 14 _fini - 78: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __bss_end__ - 79: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 - 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 - 81: 0000000000020060 1 OBJECT GLOBAL DEFAULT 23 password - 82: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 23 __data_start - 83: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 84: 0000000000020058 0 OBJECT GLOBAL HIDDEN 23 __dso_handle - 85: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 - 86: 0000000000000990 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used - 87: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 - 88: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _end - 89: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 - 90: 00000000000007c0 52 FUNC GLOBAL DEFAULT 13 _start - 91: 0000000000020078 8 OBJECT GLOBAL DEFAULT 24 buf - 92: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __end__ - 93: 0000000000020061 11 OBJECT GLOBAL DEFAULT 23 stext - 94: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start - 95: 00000000000008d4 168 FUNC GLOBAL DEFAULT 13 main - 96: 0000000000020070 0 OBJECT GLOBAL HIDDEN 23 __TMC_END__ - 97: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 98: 00000000000006d8 0 FUNC GLOBAL HIDDEN 11 _init + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .hash + 5: 00000000000002e8 0 SECTION LOCAL DEFAULT 5 .gnu.hash + 6: 0000000000000308 0 SECTION LOCAL DEFAULT 6 .dynsym + 7: 0000000000000470 0 SECTION LOCAL DEFAULT 7 .dynstr + 8: 0000000000000524 0 SECTION LOCAL DEFAULT 8 .gnu.version + 9: 0000000000000548 0 SECTION LOCAL DEFAULT 9 .gnu.version_r + 10: 0000000000000578 0 SECTION LOCAL DEFAULT 10 .rela.dyn + 11: 0000000000000638 0 SECTION LOCAL DEFAULT 11 .rela.plt + 12: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 13: 0000000000000740 0 SECTION LOCAL DEFAULT 13 .plt + 14: 0000000000000800 0 SECTION LOCAL DEFAULT 14 .text + 15: 00000000000009bc 0 SECTION LOCAL DEFAULT 15 .fini + 16: 00000000000009d0 0 SECTION LOCAL DEFAULT 16 .rodata + 17: 00000000000009d4 0 SECTION LOCAL DEFAULT 17 .eh_frame_hdr + 18: 0000000000000a10 0 SECTION LOCAL DEFAULT 18 .eh_frame + 19: 000000000001fdb8 0 SECTION LOCAL DEFAULT 19 .init_array + 20: 000000000001fdc0 0 SECTION LOCAL DEFAULT 20 .fini_array + 21: 000000000001fdc8 0 SECTION LOCAL DEFAULT 21 .dynamic + 22: 000000000001ffb8 0 SECTION LOCAL DEFAULT 22 .got + 23: 000000000001ffe8 0 SECTION LOCAL DEFAULT 23 .got.plt + 24: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 25: 0000000000020070 0 SECTION LOCAL DEFAULT 25 .bss + 26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment + 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 28: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 29: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 30: 0000000000000800 0 NOTYPE LOCAL DEFAULT 14 $x + 31: 0000000000000a24 0 NOTYPE LOCAL DEFAULT 18 $d + 32: 00000000000009d0 0 NOTYPE LOCAL DEFAULT 16 $d + 33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 34: 0000000000000834 0 NOTYPE LOCAL DEFAULT 14 $x + 35: 0000000000000834 20 FUNC LOCAL DEFAULT 14 call_weak_fn + 36: 0000000000000728 0 NOTYPE LOCAL DEFAULT 12 $x + 37: 00000000000009bc 0 NOTYPE LOCAL DEFAULT 15 $x + 38: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 39: 0000000000000738 0 NOTYPE LOCAL DEFAULT 12 $x + 40: 00000000000009c8 0 NOTYPE LOCAL DEFAULT 15 $x + 41: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 42: 0000000000000850 0 NOTYPE LOCAL DEFAULT 14 $x + 43: 0000000000000850 0 FUNC LOCAL DEFAULT 14 deregister_tm_clones + 44: 0000000000000880 0 FUNC LOCAL DEFAULT 14 register_tm_clones + 45: 0000000000020058 0 NOTYPE LOCAL DEFAULT 24 $d + 46: 00000000000008c0 0 FUNC LOCAL DEFAULT 14 __do_global_dtors_aux + 47: 0000000000020070 1 OBJECT LOCAL DEFAULT 25 completed.0 + 48: 000000000001fdc0 0 NOTYPE LOCAL DEFAULT 20 $d + 49: 000000000001fdc0 0 OBJECT LOCAL DEFAULT 20 __do_global_dtors_aux_fini_array_entry + 50: 0000000000000910 0 FUNC LOCAL DEFAULT 14 frame_dummy + 51: 000000000001fdb8 0 NOTYPE LOCAL DEFAULT 19 $d + 52: 000000000001fdb8 0 OBJECT LOCAL DEFAULT 19 __frame_dummy_init_array_entry + 53: 0000000000000a38 0 NOTYPE LOCAL DEFAULT 18 $d + 54: 0000000000020070 0 NOTYPE LOCAL DEFAULT 25 $d + 55: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 56: 0000000000000914 0 NOTYPE LOCAL DEFAULT 14 $x.0 + 57: 0000000000020060 0 NOTYPE LOCAL DEFAULT 24 $d.1 + 58: 0000000000020078 0 NOTYPE LOCAL DEFAULT 25 $d.2 + 59: 000000000000001d 0 NOTYPE LOCAL DEFAULT 26 $d.3 + 60: 0000000000000a98 0 NOTYPE LOCAL DEFAULT 18 $d.4 + 61: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 62: 0000000000000ad4 0 NOTYPE LOCAL DEFAULT 18 $d + 63: 0000000000000ad4 0 OBJECT LOCAL DEFAULT 18 __FRAME_END__ + 64: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 65: 000000000001fdc8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 66: 00000000000009d4 0 NOTYPE LOCAL DEFAULT 17 __GNU_EH_FRAME_HDR + 67: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 68: 0000000000000740 0 NOTYPE LOCAL DEFAULT 13 $x + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 71: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 72: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 73: 0000000000020050 0 NOTYPE WEAK DEFAULT 24 data_start + 74: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start__ + 75: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 76: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _bss_end__ + 77: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 _edata + 78: 00000000000009bc 0 FUNC GLOBAL HIDDEN 15 _fini + 79: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __bss_end__ + 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 81: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 82: 0000000000020060 1 OBJECT GLOBAL DEFAULT 24 password + 83: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 24 __data_start + 84: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 85: 0000000000020058 0 OBJECT GLOBAL HIDDEN 24 __dso_handle + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 87: 00000000000009d0 4 OBJECT GLOBAL DEFAULT 16 _IO_stdin_used + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 89: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _end + 90: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 91: 0000000000000800 52 FUNC GLOBAL DEFAULT 14 _start + 92: 0000000000020078 8 OBJECT GLOBAL DEFAULT 25 buf + 93: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __end__ + 94: 0000000000020061 11 OBJECT GLOBAL DEFAULT 24 stext + 95: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start + 96: 0000000000000914 168 FUNC GLOBAL DEFAULT 14 main + 97: 0000000000020070 0 OBJECT GLOBAL HIDDEN 24 __TMC_END__ + 98: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 99: 0000000000000728 0 FUNC GLOBAL HIDDEN 12 _init diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.adt b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.adt index df285eb3e..79ad8ab17 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.adt @@ -1,182 +1,184 @@ Project(Attrs([Attr("filename","\"a.out\""), -Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2500 20 2500)\n(code-region 2048 452 2048)\n(code-region 1824 192 1824)\n(code-region 1800 24 1800)\n(code-start 2100)\n(code-start 2048)\n(code-start 2324)\n(entry-point 2048)\n(external-reference 130992 _ITM_deregisterTMCloneTable)\n(external-reference 131000 __cxa_finalize)\n(external-reference 131008 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1800 0)\n(llvm:code-entry main 2324 176)\n(llvm:code-entry _start 2048 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2500 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2320 0)\n(llvm:code-entry __do_global_dtors_aux 2240 0)\n(llvm:code-entry register_tm_clones 2176 0)\n(llvm:code-entry deregister_tm_clones 2128 0)\n(llvm:code-entry call_weak_fn 2100 20)\n(llvm:code-entry .fini 2500 20)\n(llvm:code-entry .text 2048 452)\n(llvm:code-entry .plt 1824 192)\n(llvm:code-entry .init 1800 24)\n(llvm:elf-program-header 08 64952 584)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2524 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64968 480)\n(llvm:elf-program-header 03 64952 692)\n(llvm:elf-program-header 02 0 2784)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130488 584)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2524 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130504 480)\n(llvm:elf-virtual-program-header 03 130488 712)\n(llvm:elf-virtual-program-header 02 0 2784)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2048)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131008 __gmon_start__)\n(llvm:name-reference 131000 __cxa_finalize)\n(llvm:name-reference 130992 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68804)\n(llvm:section-entry .strtab 0 716 68088)\n(llvm:section-entry .symtab 0 2376 65712)\n(llvm:section-entry .comment 0 63 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 130984 64 65448)\n(llvm:section-entry .dynamic 130504 480 64968)\n(llvm:section-entry .fini_array 130496 8 64960)\n(llvm:section-entry .init_array 130488 8 64952)\n(llvm:section-entry .eh_frame 2584 200 2584)\n(llvm:section-entry .eh_frame_hdr 2524 60 2524)\n(llvm:section-entry .rodata 2520 4 2520)\n(llvm:section-entry .fini 2500 20 2500)\n(llvm:section-entry .text 2048 452 2048)\n(llvm:section-entry .plt 1824 192 1824)\n(llvm:section-entry .init 1800 24 1800)\n(llvm:section-entry .rela.plt 1560 240 1560)\n(llvm:section-entry .rela.dyn 1320 240 1320)\n(llvm:section-entry .gnu.version_r 1272 48 1272)\n(llvm:section-entry .gnu.version 1236 30 1236)\n(llvm:section-entry .dynstr 1056 179 1056)\n(llvm:section-entry .dynsym 696 360 696)\n(llvm:section-entry .gnu.hash 664 28 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1800 0 1800 1800)\n(llvm:symbol-entry main 2324 176 2324 2324)\n(llvm:symbol-entry _start 2048 52 2048 2048)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2500 0 2500 2500)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2320 0 2320 2320)\n(llvm:symbol-entry __do_global_dtors_aux 2240 0 2240 2240)\n(llvm:symbol-entry register_tm_clones 2176 0 2176 2176)\n(llvm:symbol-entry deregister_tm_clones 2128 0 2128 2128)\n(llvm:symbol-entry call_weak_fn 2100 20 2100 2100)\n(mapped 0 2784 0)\n(mapped 130488 692 64952)\n(named-region 0 2784 02)\n(named-region 130488 712 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 28 .gnu.hash)\n(named-region 696 360 .dynsym)\n(named-region 1056 179 .dynstr)\n(named-region 1236 30 .gnu.version)\n(named-region 1272 48 .gnu.version_r)\n(named-region 1320 240 .rela.dyn)\n(named-region 1560 240 .rela.plt)\n(named-region 1800 24 .init)\n(named-region 1824 192 .plt)\n(named-region 2048 452 .text)\n(named-region 2500 20 .fini)\n(named-region 2520 4 .rodata)\n(named-region 2524 60 .eh_frame_hdr)\n(named-region 2584 200 .eh_frame)\n(named-region 130488 8 .init_array)\n(named-region 130496 8 .fini_array)\n(named-region 130504 480 .dynamic)\n(named-region 130984 64 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 63 .comment)\n(named-region 0 2376 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2100 call_weak_fn)\n(named-symbol 2128 deregister_tm_clones)\n(named-symbol 2176 register_tm_clones)\n(named-symbol 2240 __do_global_dtors_aux)\n(named-symbol 2320 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2500 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2048 _start)\n(named-symbol 2324 main)\n(named-symbol 1800 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 28)\n(section 696 360)\n(section 1056 179)\n(section 1236 30)\n(section 1272 48)\n(section 1320 240)\n(section 1560 240)\n(section 1800 24)\n(section 1824 192)\n(section 2048 452)\n(section 2500 20)\n(section 2520 4)\n(section 2524 60)\n(section 2584 200)\n(section 130488 8)\n(section 130496 8)\n(section 130504 480)\n(section 130984 64)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 63)\n(section 0 2376)\n(section 0 716)\n(section 0 259)\n(segment 0 2784 true false true)\n(segment 130488 712 true true false)\n(subarch v8)\n(symbol-chunk 2100 20 2100)\n(symbol-chunk 2048 52 2048)\n(symbol-chunk 2324 176 2324)\n(symbol-value 2100 2100)\n(symbol-value 2128 2128)\n(symbol-value 2176 2176)\n(symbol-value 2240 2240)\n(symbol-value 2320 2320)\n(symbol-value 2500 2500)\n(symbol-value 2048 2048)\n(symbol-value 2324 2324)\n(symbol-value 1800 1800)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2564 20 2564)\n(code-region 2112 452 2112)\n(code-region 1904 192 1904)\n(code-region 1880 24 1880)\n(code-start 2164)\n(code-start 2112)\n(code-start 2388)\n(entry-point 2112)\n(external-reference 130992 _ITM_deregisterTMCloneTable)\n(external-reference 131000 __cxa_finalize)\n(external-reference 131008 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1880 0)\n(llvm:code-entry main 2388 176)\n(llvm:code-entry _start 2112 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2564 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2384 0)\n(llvm:code-entry __do_global_dtors_aux 2304 0)\n(llvm:code-entry register_tm_clones 2240 0)\n(llvm:code-entry deregister_tm_clones 2192 0)\n(llvm:code-entry call_weak_fn 2164 20)\n(llvm:code-entry .fini 2564 20)\n(llvm:code-entry .text 2112 452)\n(llvm:code-entry .plt 1904 192)\n(llvm:code-entry .init 1880 24)\n(llvm:elf-program-header 08 64936 600)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2588 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64952 496)\n(llvm:elf-program-header 03 64936 708)\n(llvm:elf-program-header 02 0 2848)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130472 600)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2588 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130488 496)\n(llvm:elf-virtual-program-header 03 130472 728)\n(llvm:elf-virtual-program-header 02 0 2848)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2112)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131008 __gmon_start__)\n(llvm:name-reference 131000 __cxa_finalize)\n(llvm:name-reference 130992 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68820)\n(llvm:section-entry .strtab 0 716 68104)\n(llvm:section-entry .symtab 0 2400 65704)\n(llvm:section-entry .comment 0 58 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 130984 64 65448)\n(llvm:section-entry .dynamic 130488 496 64952)\n(llvm:section-entry .fini_array 130480 8 64944)\n(llvm:section-entry .init_array 130472 8 64936)\n(llvm:section-entry .eh_frame 2648 200 2648)\n(llvm:section-entry .eh_frame_hdr 2588 60 2588)\n(llvm:section-entry .rodata 2584 4 2584)\n(llvm:section-entry .fini 2564 20 2564)\n(llvm:section-entry .text 2112 452 2112)\n(llvm:section-entry .plt 1904 192 1904)\n(llvm:section-entry .init 1880 24 1880)\n(llvm:section-entry .rela.plt 1640 240 1640)\n(llvm:section-entry .rela.dyn 1400 240 1400)\n(llvm:section-entry .gnu.version_r 1352 48 1352)\n(llvm:section-entry .gnu.version 1316 30 1316)\n(llvm:section-entry .dynstr 1136 179 1136)\n(llvm:section-entry .dynsym 776 360 776)\n(llvm:section-entry .gnu.hash 744 28 744)\n(llvm:section-entry .hash 664 80 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1880 0 1880 1880)\n(llvm:symbol-entry main 2388 176 2388 2388)\n(llvm:symbol-entry _start 2112 52 2112 2112)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2564 0 2564 2564)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2384 0 2384 2384)\n(llvm:symbol-entry __do_global_dtors_aux 2304 0 2304 2304)\n(llvm:symbol-entry register_tm_clones 2240 0 2240 2240)\n(llvm:symbol-entry deregister_tm_clones 2192 0 2192 2192)\n(llvm:symbol-entry call_weak_fn 2164 20 2164 2164)\n(mapped 0 2848 0)\n(mapped 130472 708 64936)\n(named-region 0 2848 02)\n(named-region 130472 728 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 80 .hash)\n(named-region 744 28 .gnu.hash)\n(named-region 776 360 .dynsym)\n(named-region 1136 179 .dynstr)\n(named-region 1316 30 .gnu.version)\n(named-region 1352 48 .gnu.version_r)\n(named-region 1400 240 .rela.dyn)\n(named-region 1640 240 .rela.plt)\n(named-region 1880 24 .init)\n(named-region 1904 192 .plt)\n(named-region 2112 452 .text)\n(named-region 2564 20 .fini)\n(named-region 2584 4 .rodata)\n(named-region 2588 60 .eh_frame_hdr)\n(named-region 2648 200 .eh_frame)\n(named-region 130472 8 .init_array)\n(named-region 130480 8 .fini_array)\n(named-region 130488 496 .dynamic)\n(named-region 130984 64 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 58 .comment)\n(named-region 0 2400 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2164 call_weak_fn)\n(named-symbol 2192 deregister_tm_clones)\n(named-symbol 2240 register_tm_clones)\n(named-symbol 2304 __do_global_dtors_aux)\n(named-symbol 2384 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2564 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2112 _start)\n(named-symbol 2388 main)\n(named-symbol 1880 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 80)\n(section 744 28)\n(section 776 360)\n(section 1136 179)\n(section 1316 30)\n(section 1352 48)\n(section 1400 240)\n(section 1640 240)\n(section 1880 24)\n(section 1904 192)\n(section 2112 452)\n(section 2564 20)\n(section 2584 4)\n(section 2588 60)\n(section 2648 200)\n(section 130472 8)\n(section 130480 8)\n(section 130488 496)\n(section 130984 64)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 58)\n(section 0 2400)\n(section 0 716)\n(section 0 259)\n(segment 0 2848 true false true)\n(segment 130472 728 true true false)\n(subarch v8)\n(symbol-chunk 2164 20 2164)\n(symbol-chunk 2112 52 2112)\n(symbol-chunk 2388 176 2388)\n(symbol-value 2164 2164)\n(symbol-value 2192 2192)\n(symbol-value 2240 2240)\n(symbol-value 2304 2304)\n(symbol-value 2384 2384)\n(symbol-value 2564 2564)\n(symbol-value 2112 2112)\n(symbol-value 2388 2388)\n(symbol-value 1880 1880)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), -Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01"), -Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x8b\x6d\x5f\x3c\x12\xd3\x18\x02\x5c\xee\xe8\x90\xc3\x4b\x9a\x38\xce\x17\x9d\x68\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x8b\x6d\x5f\x3c\x12\xd3\x18\x02\x5c\xee\xe8\x90\xc3\x4b\x9a\x38\xce\x17\x9d\x68\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\x08\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xb0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x48\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xcd\xff\xff\x97\xe0\xff\xff\x97\xe0\x00\x00\xf0\x00\xe0\x47\xf9\x40\x00\x00\xb4\xd8\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xd8\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xdc\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa1\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xe8\x00\x00\xf0\x08\xe5\x47\xf9\xe8\x0f\x00\xf9\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x92\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x00\xf9\x08\x01\x40\xf9"), -Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c"), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x40\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x0b\x00\x00\x00\x00\x00\x00\x20\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x40\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x0b\x00\x00\x00\x00\x00\x00\x20\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xc4\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x1c\x0a\x00\x00\x00\x00\x00\x00\x1c\x0a\x00\x00\x00\x00\x00\x00\x1c\x0a\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\x58\x02\x00\x00\x00\x00\x00\x00\x58\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x1f\xc2\x4d\xc4\x01\x0e\x07\x9b\x94\x0e\xcf\xf6\x4e\xe1\x2b\x70\xe7\xdf\xe6\x36\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x40\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x0b\x00\x00\x00\x00\x00\x00\x20\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xc4\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x1c\x0a\x00\x00\x00\x00\x00\x00\x1c\x0a\x00\x00\x00\x00\x00\x00\x1c\x0a\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\x58\x02\x00\x00\x00\x00\x00\x00\x58\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x1f\xc2\x4d\xc4\x01\x0e\x07\x9b\x94\x0e\xcf\xf6\x4e\xe1\x2b\x70\xe7\xdf\xe6\x36\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x58\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x50\x09\x00\x00\x00\x00\x00\x00\xb0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x54\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xb0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe0\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xd8\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xdc\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x40\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00"), Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), -Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x8b\x6d\x5f\x3c\x12\xd3\x18\x02\x5c\xee\xe8\x90\xc3\x4b\x9a\x38\xce\x17\x9d\x68"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x1f\xc2\x4d\xc4\x01\x0e\x07\x9b\x94\x0e\xcf\xf6\x4e\xe1\x2b\x70\xe7\xdf\xe6\x36"), Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), -Section(".gnu.hash", 0x298, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynsym", 0x2B8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\x08\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynstr", 0x420, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), -Section(".gnu.version", 0x4D4, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), -Section(".gnu.version_r", 0x4F8, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.dyn", 0x528, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xb0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.plt", 0x618, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init", 0x708, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x48\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".plt", 0x720, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), -Section(".fini", 0x9C4, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".rodata", 0x9D8, "\x01\x00\x02\x00"), -Section(".eh_frame_hdr", 0x9DC, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x24\xfe\xff\xff\x50\x00\x00\x00\x74\xfe\xff\xff\x64\x00\x00\x00\xa4\xfe\xff\xff\x78\x00\x00\x00\xe4\xfe\xff\xff\x8c\x00\x00\x00\x34\xff\xff\xff\xb0\x00\x00\x00\x38\xff\xff\xff\xd8\x00\x00\x00"), -Section(".eh_frame", 0xA18, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xcc\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x08\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x24\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x50\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x7c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x58\xfe\xff\xff\xb0\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\x98\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), -Section(".fini_array", 0x1FDC0, "\xc0\x08\x00\x00\x00\x00\x00\x00"), -Section(".dynamic", 0x1FDC8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x08\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xc4\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x20\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x18\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x28\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xf8\x04\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xd4\x04\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init_array", 0x1FDB8, "\x10\x09\x00\x00\x00\x00\x00\x00"), -Section(".got", 0x1FFA8, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00"), +Section(".hash", 0x298, "\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00"), +Section(".gnu.hash", 0x2E8, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x308, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x58\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x470, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x524, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x548, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x578, "\xa8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x50\x09\x00\x00\x00\x00\x00\x00\xb0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x54\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xb0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x668, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x758, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x770, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0xA04, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0xA18, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0xA1C, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x24\xfe\xff\xff\x50\x00\x00\x00\x74\xfe\xff\xff\x64\x00\x00\x00\xa4\xfe\xff\xff\x78\x00\x00\x00\xe4\xfe\xff\xff\x8c\x00\x00\x00\x34\xff\xff\xff\xb0\x00\x00\x00\x38\xff\xff\xff\xd8\x00\x00\x00"), +Section(".eh_frame", 0xA58, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xcc\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x08\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x24\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x50\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x7c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x58\xfe\xff\xff\xb0\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\x98\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDB0, "\x00\x09\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDB8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x58\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x04\x0a\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xb0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x70\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x68\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x78\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\x48\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\x24\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDA8, "\x50\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFA8, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\x54\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00"), Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), -Section(".text", 0x800, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xcd\xff\xff\x97\xe0\xff\xff\x97\xe0\x00\x00\xf0\x00\xe0\x47\xf9\x40\x00\x00\xb4\xd8\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xd8\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xdc\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa1\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xe8\x00\x00\xf0\x08\xe5\x47\xf9\xe8\x0f\x00\xf9\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x92\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x00\xf9\x08\x01\x40\xf9\xe8\x07\x00\xf9\xe0\x00\x00\xf0\x00\xe8\x47\xf9\xe0\x03\x00\xf9\x7e\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x76\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x40\xf9\x93\xff\xff\x97\xe8\x0f\x40\xf9\x09\x01\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\x09\x01\x40\xf9\xe9\x0b\x00\xf9\x00\x01\x40\xf9\x6f\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x7b\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x40\xf9\x88\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), -Memmap([Annotation(Region(0x0,0xADF), Attr("segment","02 0 2784")), -Annotation(Region(0x800,0x833), Attr("symbol","\"_start\"")), +Section(".text", 0x840, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe0\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xd8\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xdc\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xe8\x00\x00\xf0\x08\xe5\x47\xf9\xe8\x0f\x00\xf9\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x96\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x00\xf9\x08\x01\x40\xf9\xe8\x07\x00\xf9\xe0\x00\x00\xf0\x00\xe8\x47\xf9\xe0\x03\x00\xf9\x82\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x7a\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x40\xf9\x97\xff\xff\x97\xe8\x0f\x40\xf9\x09\x01\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\x09\x01\x40\xf9\xe9\x0b\x00\xf9\x00\x01\x40\xf9\x73\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x7f\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x40\xf9\x8c\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xB1F), Attr("segment","02 0 2848")), +Annotation(Region(0x840,0x873), Attr("symbol","\"_start\"")), Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), Annotation(Region(0x0,0x2CB), Attr("section","\".strtab\"")), -Annotation(Region(0x0,0x947), Attr("section","\".symtab\"")), -Annotation(Region(0x0,0x3E), Attr("section","\".comment\"")), +Annotation(Region(0x0,0x95F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x39), Attr("section","\".comment\"")), Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), -Annotation(Region(0x298,0x2B3), Attr("section","\".gnu.hash\"")), -Annotation(Region(0x2B8,0x41F), Attr("section","\".dynsym\"")), -Annotation(Region(0x420,0x4D2), Attr("section","\".dynstr\"")), -Annotation(Region(0x4D4,0x4F1), Attr("section","\".gnu.version\"")), -Annotation(Region(0x4F8,0x527), Attr("section","\".gnu.version_r\"")), -Annotation(Region(0x528,0x617), Attr("section","\".rela.dyn\"")), -Annotation(Region(0x618,0x707), Attr("section","\".rela.plt\"")), -Annotation(Region(0x708,0x71F), Attr("section","\".init\"")), -Annotation(Region(0x720,0x7DF), Attr("section","\".plt\"")), -Annotation(Region(0x708,0x71F), Attr("code-region","()")), -Annotation(Region(0x720,0x7DF), Attr("code-region","()")), -Annotation(Region(0x800,0x833), Attr("symbol-info","_start 0x800 52")), -Annotation(Region(0x834,0x847), Attr("symbol","\"call_weak_fn\"")), -Annotation(Region(0x834,0x847), Attr("symbol-info","call_weak_fn 0x834 20")), -Annotation(Region(0x914,0x9C3), Attr("symbol","\"main\"")), -Annotation(Region(0x914,0x9C3), Attr("symbol-info","main 0x914 176")), -Annotation(Region(0x9C4,0x9D7), Attr("section","\".fini\"")), -Annotation(Region(0x9D8,0x9DB), Attr("section","\".rodata\"")), -Annotation(Region(0x9DC,0xA17), Attr("section","\".eh_frame_hdr\"")), -Annotation(Region(0xA18,0xADF), Attr("section","\".eh_frame\"")), -Annotation(Region(0x1FDB8,0x2006B), Attr("segment","03 0x1FDB8 712")), -Annotation(Region(0x1FDC0,0x1FDC7), Attr("section","\".fini_array\"")), -Annotation(Region(0x1FDC8,0x1FFA7), Attr("section","\".dynamic\"")), -Annotation(Region(0x1FDB8,0x1FDBF), Attr("section","\".init_array\"")), +Annotation(Region(0x298,0x2E7), Attr("section","\".hash\"")), +Annotation(Region(0x2E8,0x303), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x308,0x46F), Attr("section","\".dynsym\"")), +Annotation(Region(0x470,0x522), Attr("section","\".dynstr\"")), +Annotation(Region(0x524,0x541), Attr("section","\".gnu.version\"")), +Annotation(Region(0x548,0x577), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x578,0x667), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x668,0x757), Attr("section","\".rela.plt\"")), +Annotation(Region(0x758,0x76F), Attr("section","\".init\"")), +Annotation(Region(0x770,0x82F), Attr("section","\".plt\"")), +Annotation(Region(0x758,0x76F), Attr("code-region","()")), +Annotation(Region(0x770,0x82F), Attr("code-region","()")), +Annotation(Region(0x840,0x873), Attr("symbol-info","_start 0x840 52")), +Annotation(Region(0x874,0x887), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x874,0x887), Attr("symbol-info","call_weak_fn 0x874 20")), +Annotation(Region(0x954,0xA03), Attr("symbol","\"main\"")), +Annotation(Region(0x954,0xA03), Attr("symbol-info","main 0x954 176")), +Annotation(Region(0xA04,0xA17), Attr("section","\".fini\"")), +Annotation(Region(0xA18,0xA1B), Attr("section","\".rodata\"")), +Annotation(Region(0xA1C,0xA57), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0xA58,0xB1F), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDA8,0x2006B), Attr("segment","03 0x1FDA8 728")), +Annotation(Region(0x1FDB0,0x1FDB7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDB8,0x1FFA7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDA8,0x1FDAF), Attr("section","\".init_array\"")), Annotation(Region(0x1FFA8,0x1FFE7), Attr("section","\".got\"")), Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), -Annotation(Region(0x800,0x9C3), Attr("section","\".text\"")), -Annotation(Region(0x800,0x9C3), Attr("code-region","()")), -Annotation(Region(0x9C4,0x9D7), Attr("code-region","()"))]), +Annotation(Region(0x840,0xA03), Attr("section","\".text\"")), +Annotation(Region(0x840,0xA03), Attr("code-region","()")), +Annotation(Region(0xA04,0xA17), Attr("code-region","()"))]), Program(Tid(2_242, "%000008c2"), Attrs([]), Subs([Sub(Tid(2_171, "@__cxa_finalize"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x770"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7C0"), Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_243, "%000008c3"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_324, "@__cxa_finalize"), - Attrs([Attr("address","0x770")]), Phis([]), -Defs([Def(Tid(1_744, "%000006d0"), Attrs([Attr("address","0x770"), + Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_744, "%000006d0"), Attrs([Attr("address","0x7C0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_752, "%000006d8"), Attrs([Attr("address","0x774"), +Def(Tid(1_752, "%000006d8"), Attrs([Attr("address","0x7C4"), Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_759, "%000006df"), Attrs([Attr("address","0x778"), +Def(Tid(1_759, "%000006df"), Attrs([Attr("address","0x7C8"), Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_764, "%000006e4"), - Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_172, "@__do_global_dtors_aux"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x900")]), "__do_global_dtors_aux", Args([Arg(Tid(2_244, "%000008c4"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(802, "@__do_global_dtors_aux"), - Attrs([Attr("address","0x8C0")]), Phis([]), Defs([Def(Tid(809, "%00000329"), - Attrs([Attr("address","0x8C0"), + Attrs([Attr("address","0x900")]), Phis([]), Defs([Def(Tid(809, "%00000329"), + Attrs([Attr("address","0x900"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), -Def(Tid(814, "%0000032e"), Attrs([Attr("address","0x8C0"), +Def(Tid(814, "%0000032e"), Attrs([Attr("address","0x900"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(819, "%00000333"), Attrs([Attr("address","0x8C0"), +Def(Tid(819, "%00000333"), Attrs([Attr("address","0x900"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(823, "%00000337"), Attrs([Attr("address","0x8C0"), +Def(Tid(823, "%00000337"), Attrs([Attr("address","0x900"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), Var("#34",Imm(64))), Def(Tid(830, "%0000033e"), - Attrs([Attr("address","0x8C4"), Attr("insn","mov x29, sp")]), + Attrs([Attr("address","0x904"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(838, "%00000346"), - Attrs([Attr("address","0x8C8"), Attr("insn","str x19, [sp, #0x10]")]), + Attrs([Attr("address","0x908"), Attr("insn","str x19, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), -Def(Tid(844, "%0000034c"), Attrs([Attr("address","0x8CC"), +Def(Tid(844, "%0000034c"), Attrs([Attr("address","0x90C"), Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), -Def(Tid(853, "%00000355"), Attrs([Attr("address","0x8D0"), +Def(Tid(853, "%00000355"), Attrs([Attr("address","0x910"), Attr("insn","ldrb w0, [x19, #0x70]")]), Var("R0",Imm(64)), UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),BigEndian(),8))), -Def(Tid(865, "%00000361"), Attrs([Attr("address","0x8D4"), +Def(Tid(865, "%00000361"), Attrs([Attr("address","0x914"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), -Jmps([Goto(Tid(859, "%0000035b"), Attrs([Attr("address","0x8D4"), +Jmps([Goto(Tid(859, "%0000035b"), Attrs([Attr("address","0x914"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), Direct(Tid(857, "%00000359"))), Goto(Tid(2_232, "%000008b8"), Attrs([]), Int(1,1), Direct(Tid(1_258, "%000004ea")))])), Blk(Tid(1_258, "%000004ea"), - Attrs([Attr("address","0x8D8")]), Phis([]), -Defs([Def(Tid(1_262, "%000004ee"), Attrs([Attr("address","0x8D8"), + Attrs([Attr("address","0x918")]), Phis([]), +Defs([Def(Tid(1_262, "%000004ee"), Attrs([Attr("address","0x918"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), -Def(Tid(1_270, "%000004f6"), Attrs([Attr("address","0x8DC"), +Def(Tid(1_270, "%000004f6"), Attrs([Attr("address","0x91C"), Attr("insn","ldr x0, [x0, #0xfb8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4024,64)),LittleEndian(),64)), -Def(Tid(1_282, "%00000502"), Attrs([Attr("address","0x8E0"), +Def(Tid(1_282, "%00000502"), Attrs([Attr("address","0x920"), Attr("insn","cbz x0, #0x10")]), Var("#70",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_276, "%000004fc"), - Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), + Attrs([Attr("address","0x920"), Attr("insn","cbz x0, #0x10")]), Var("#70",Imm(1)), Direct(Tid(1_274, "%000004fa"))), Goto(Tid(2_233, "%000008b9"), Attrs([]), Int(1,1), Direct(Tid(1_306, "%0000051a")))])), Blk(Tid(1_306, "%0000051a"), - Attrs([Attr("address","0x8E4")]), Phis([]), -Defs([Def(Tid(1_310, "%0000051e"), Attrs([Attr("address","0x8E4"), + Attrs([Attr("address","0x924")]), Phis([]), +Defs([Def(Tid(1_310, "%0000051e"), Attrs([Attr("address","0x924"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(1_318, "%00000526"), Attrs([Attr("address","0x8E8"), +Def(Tid(1_318, "%00000526"), Attrs([Attr("address","0x928"), Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), -Def(Tid(1_323, "%0000052b"), Attrs([Attr("address","0x8EC"), -Attr("insn","bl #-0x17c")]), Var("R30",Imm(64)), Int(2288,64))]), -Jmps([Call(Tid(1_326, "%0000052e"), Attrs([Attr("address","0x8EC"), -Attr("insn","bl #-0x17c")]), Int(1,1), +Def(Tid(1_323, "%0000052b"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x16c")]), Var("R30",Imm(64)), Int(2352,64))]), +Jmps([Call(Tid(1_326, "%0000052e"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x16c")]), Int(1,1), (Direct(Tid(2_171, "@__cxa_finalize")),Direct(Tid(1_274, "%000004fa"))))])), -Blk(Tid(1_274, "%000004fa"), Attrs([Attr("address","0x8F0")]), Phis([]), -Defs([Def(Tid(1_287, "%00000507"), Attrs([Attr("address","0x8F0"), -Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2292,64))]), -Jmps([Call(Tid(1_289, "%00000509"), Attrs([Attr("address","0x8F0"), +Blk(Tid(1_274, "%000004fa"), Attrs([Attr("address","0x930")]), Phis([]), +Defs([Def(Tid(1_287, "%00000507"), Attrs([Attr("address","0x930"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2356,64))]), +Jmps([Call(Tid(1_289, "%00000509"), Attrs([Attr("address","0x930"), Attr("insn","bl #-0xa0")]), Int(1,1), (Direct(Tid(2_185, "@deregister_tm_clones")),Direct(Tid(1_291, "%0000050b"))))])), -Blk(Tid(1_291, "%0000050b"), Attrs([Attr("address","0x8F4")]), Phis([]), -Defs([Def(Tid(1_296, "%00000510"), Attrs([Attr("address","0x8F4"), +Blk(Tid(1_291, "%0000050b"), Attrs([Attr("address","0x934")]), Phis([]), +Defs([Def(Tid(1_296, "%00000510"), Attrs([Attr("address","0x934"), Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), -Def(Tid(1_304, "%00000518"), Attrs([Attr("address","0x8F8"), +Def(Tid(1_304, "%00000518"), Attrs([Attr("address","0x938"), Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), Jmps([Goto(Tid(2_234, "%000008ba"), Attrs([]), Int(1,1), Direct(Tid(857, "%00000359")))])), Blk(Tid(857, "%00000359"), - Attrs([Attr("address","0x8FC")]), Phis([]), Defs([Def(Tid(873, "%00000369"), - Attrs([Attr("address","0x8FC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Attrs([Attr("address","0x93C")]), Phis([]), Defs([Def(Tid(873, "%00000369"), + Attrs([Attr("address","0x93C"), Attr("insn","ldr x19, [sp, #0x10]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(883, "%00000373"), Attrs([Attr("address","0x900"), +Def(Tid(883, "%00000373"), Attrs([Attr("address","0x940"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(887, "%00000377"), Attrs([Attr("address","0x900"), +Def(Tid(887, "%00000377"), Attrs([Attr("address","0x940"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(890, "%0000037a"), Attrs([Attr("address","0x900"), +Def(Tid(890, "%0000037a"), Attrs([Attr("address","0x940"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(895, "%0000037f"), - Attrs([Attr("address","0x904"), Attr("insn","ret")]), Int(1,1), + Attrs([Attr("address","0x944"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_176, "@__libc_start_main"), Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), -Attr("address","0x760"), Attr("stub","()")]), "__libc_start_main", +Attr("address","0x7B0"), Attr("stub","()")]), "__libc_start_main", Args([Arg(Tid(2_245, "%000008c5"), Attrs([Attr("c.layout","**[ : 64]"), Attr("c.data","Top:u64 ptr ptr"), @@ -195,260 +197,260 @@ Arg(Tid(2_249, "%000008c9"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(614, "@__libc_start_main"), - Attrs([Attr("address","0x760")]), Phis([]), -Defs([Def(Tid(1_719, "%000006b7"), Attrs([Attr("address","0x760"), + Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_719, "%000006b7"), Attrs([Attr("address","0x7B0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_727, "%000006bf"), Attrs([Attr("address","0x764"), +Def(Tid(1_727, "%000006bf"), Attrs([Attr("address","0x7B4"), Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_734, "%000006c6"), Attrs([Attr("address","0x768"), +Def(Tid(1_734, "%000006c6"), Attrs([Attr("address","0x7B8"), Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_739, "%000006cb"), - Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_177, "@_fini"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9C4")]), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0xA04")]), "_fini", Args([Arg(Tid(2_250, "%000008ca"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), - Attrs([Attr("address","0x9C4")]), Phis([]), Defs([Def(Tid(41, "%00000029"), - Attrs([Attr("address","0x9C8"), + Attrs([Attr("address","0xA04")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0xA08"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x9C8"), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0xA08"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(51, "%00000033"), Attrs([Attr("address","0x9C8"), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0xA08"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(55, "%00000037"), Attrs([Attr("address","0x9C8"), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0xA08"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9CC"), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0xA0C"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), -Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9D0"), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0xA10"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9D0"), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0xA10"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9D0"), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0xA10"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), - Attrs([Attr("address","0x9D4"), Attr("insn","ret")]), Int(1,1), + Attrs([Attr("address","0xA14"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_178, "@_init"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x708")]), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x758")]), "_init", Args([Arg(Tid(2_251, "%000008cb"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_942, "@_init"), - Attrs([Attr("address","0x708")]), Phis([]), -Defs([Def(Tid(1_951, "%0000079f"), Attrs([Attr("address","0x70C"), + Attrs([Attr("address","0x758")]), Phis([]), +Defs([Def(Tid(1_951, "%0000079f"), Attrs([Attr("address","0x75C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#101",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(1_956, "%000007a4"), Attrs([Attr("address","0x70C"), +Def(Tid(1_956, "%000007a4"), Attrs([Attr("address","0x75C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#101",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(1_961, "%000007a9"), Attrs([Attr("address","0x70C"), +Def(Tid(1_961, "%000007a9"), Attrs([Attr("address","0x75C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#101",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(1_965, "%000007ad"), Attrs([Attr("address","0x70C"), +Def(Tid(1_965, "%000007ad"), Attrs([Attr("address","0x75C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), Var("#101",Imm(64))), Def(Tid(1_972, "%000007b4"), - Attrs([Attr("address","0x710"), Attr("insn","mov x29, sp")]), + Attrs([Attr("address","0x760"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(1_977, "%000007b9"), - Attrs([Attr("address","0x714"), Attr("insn","bl #0x120")]), - Var("R30",Imm(64)), Int(1816,64))]), Jmps([Call(Tid(1_979, "%000007bb"), - Attrs([Attr("address","0x714"), Attr("insn","bl #0x120")]), Int(1,1), + Attrs([Attr("address","0x764"), Attr("insn","bl #0x110")]), + Var("R30",Imm(64)), Int(1896,64))]), Jmps([Call(Tid(1_979, "%000007bb"), + Attrs([Attr("address","0x764"), Attr("insn","bl #0x110")]), Int(1,1), (Direct(Tid(2_183, "@call_weak_fn")),Direct(Tid(1_981, "%000007bd"))))])), -Blk(Tid(1_981, "%000007bd"), Attrs([Attr("address","0x718")]), Phis([]), -Defs([Def(Tid(1_989, "%000007c5"), Attrs([Attr("address","0x718"), +Blk(Tid(1_981, "%000007bd"), Attrs([Attr("address","0x768")]), Phis([]), +Defs([Def(Tid(1_989, "%000007c5"), Attrs([Attr("address","0x768"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_993, "%000007c9"), Attrs([Attr("address","0x718"), +Def(Tid(1_993, "%000007c9"), Attrs([Attr("address","0x768"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_996, "%000007cc"), Attrs([Attr("address","0x718"), +Def(Tid(1_996, "%000007cc"), Attrs([Attr("address","0x768"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_001, "%000007d1"), - Attrs([Attr("address","0x71C"), Attr("insn","ret")]), Int(1,1), + Attrs([Attr("address","0x76C"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_179, "@_start"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x800"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x840"), Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_252, "%000008cc"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(540, "@_start"), - Attrs([Attr("address","0x800")]), Phis([]), Defs([Def(Tid(546, "%00000222"), - Attrs([Attr("address","0x804"), Attr("insn","mov x29, #0x0")]), + Attrs([Attr("address","0x840")]), Phis([]), Defs([Def(Tid(546, "%00000222"), + Attrs([Attr("address","0x844"), Attr("insn","mov x29, #0x0")]), Var("R29",Imm(64)), Int(0,64)), Def(Tid(552, "%00000228"), - Attrs([Attr("address","0x808"), Attr("insn","mov x30, #0x0")]), + Attrs([Attr("address","0x848"), Attr("insn","mov x30, #0x0")]), Var("R30",Imm(64)), Int(0,64)), Def(Tid(560, "%00000230"), - Attrs([Attr("address","0x80C"), Attr("insn","mov x5, x0")]), + Attrs([Attr("address","0x84C"), Attr("insn","mov x5, x0")]), Var("R5",Imm(64)), Var("R0",Imm(64))), Def(Tid(568, "%00000238"), - Attrs([Attr("address","0x810"), Attr("insn","ldr x1, [sp]")]), + Attrs([Attr("address","0x850"), Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(575, "%0000023f"), Attrs([Attr("address","0x814"), +Def(Tid(575, "%0000023f"), Attrs([Attr("address","0x854"), Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(582, "%00000246"), - Attrs([Attr("address","0x818"), Attr("insn","mov x6, sp")]), + Attrs([Attr("address","0x858"), Attr("insn","mov x6, sp")]), Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(588, "%0000024c"), - Attrs([Attr("address","0x81C"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x85C"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(596, "%00000254"), - Attrs([Attr("address","0x820"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Attrs([Attr("address","0x860"), Attr("insn","ldr x0, [x0, #0xfd8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), -Def(Tid(602, "%0000025a"), Attrs([Attr("address","0x824"), +Def(Tid(602, "%0000025a"), Attrs([Attr("address","0x864"), Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), -Def(Tid(608, "%00000260"), Attrs([Attr("address","0x828"), +Def(Tid(608, "%00000260"), Attrs([Attr("address","0x868"), Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), -Def(Tid(613, "%00000265"), Attrs([Attr("address","0x82C"), -Attr("insn","bl #-0xcc")]), Var("R30",Imm(64)), Int(2096,64))]), -Jmps([Call(Tid(616, "%00000268"), Attrs([Attr("address","0x82C"), -Attr("insn","bl #-0xcc")]), Int(1,1), +Def(Tid(613, "%00000265"), Attrs([Attr("address","0x86C"), +Attr("insn","bl #-0xbc")]), Var("R30",Imm(64)), Int(2160,64))]), +Jmps([Call(Tid(616, "%00000268"), Attrs([Attr("address","0x86C"), +Attr("insn","bl #-0xbc")]), Int(1,1), (Direct(Tid(2_176, "@__libc_start_main")),Direct(Tid(618, "%0000026a"))))])), -Blk(Tid(618, "%0000026a"), Attrs([Attr("address","0x830")]), Phis([]), -Defs([Def(Tid(621, "%0000026d"), Attrs([Attr("address","0x830"), -Attr("insn","bl #-0x80")]), Var("R30",Imm(64)), Int(2100,64))]), -Jmps([Call(Tid(624, "%00000270"), Attrs([Attr("address","0x830"), -Attr("insn","bl #-0x80")]), Int(1,1), +Blk(Tid(618, "%0000026a"), Attrs([Attr("address","0x870")]), Phis([]), +Defs([Def(Tid(621, "%0000026d"), Attrs([Attr("address","0x870"), +Attr("insn","bl #-0x70")]), Var("R30",Imm(64)), Int(2164,64))]), +Jmps([Call(Tid(624, "%00000270"), Attrs([Attr("address","0x870"), +Attr("insn","bl #-0x70")]), Int(1,1), (Direct(Tid(2_182, "@abort")),Direct(Tid(2_235, "%000008bb"))))])), Blk(Tid(2_235, "%000008bb"), Attrs([]), Phis([]), Defs([]), Jmps([Call(Tid(2_236, "%000008bc"), Attrs([]), Int(1,1), (Direct(Tid(2_183, "@call_weak_fn")),))]))])), Sub(Tid(2_182, "@abort"), Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), -Attr("address","0x7B0"), Attr("stub","()")]), "abort", Args([]), -Blks([Blk(Tid(622, "@abort"), Attrs([Attr("address","0x7B0")]), Phis([]), -Defs([Def(Tid(1_844, "%00000734"), Attrs([Attr("address","0x7B0"), +Attr("address","0x800"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(622, "@abort"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([Def(Tid(1_844, "%00000734"), Attrs([Attr("address","0x800"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_852, "%0000073c"), Attrs([Attr("address","0x7B4"), +Def(Tid(1_852, "%0000073c"), Attrs([Attr("address","0x804"), Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), -Def(Tid(1_859, "%00000743"), Attrs([Attr("address","0x7B8"), +Def(Tid(1_859, "%00000743"), Attrs([Attr("address","0x808"), Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_864, "%00000748"), - Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x80C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_183, "@call_weak_fn"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x834")]), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x874")]), "call_weak_fn", Args([Arg(Tid(2_253, "%000008cd"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(626, "@call_weak_fn"), - Attrs([Attr("address","0x834")]), Phis([]), Defs([Def(Tid(630, "%00000276"), - Attrs([Attr("address","0x834"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x874")]), Phis([]), Defs([Def(Tid(630, "%00000276"), + Attrs([Attr("address","0x874"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(638, "%0000027e"), - Attrs([Attr("address","0x838"), Attr("insn","ldr x0, [x0, #0xfc0]")]), + Attrs([Attr("address","0x878"), Attr("insn","ldr x0, [x0, #0xfc0]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4032,64)),LittleEndian(),64)), -Def(Tid(650, "%0000028a"), Attrs([Attr("address","0x83C"), +Def(Tid(650, "%0000028a"), Attrs([Attr("address","0x87C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(644, "%00000284"), - Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), + Attrs([Attr("address","0x87C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), Direct(Tid(642, "%00000282"))), Goto(Tid(2_237, "%000008bd"), Attrs([]), Int(1,1), Direct(Tid(1_406, "%0000057e")))])), Blk(Tid(642, "%00000282"), - Attrs([Attr("address","0x844")]), Phis([]), Defs([]), -Jmps([Call(Tid(655, "%0000028f"), Attrs([Attr("address","0x844"), + Attrs([Attr("address","0x884")]), Phis([]), Defs([]), +Jmps([Call(Tid(655, "%0000028f"), Attrs([Attr("address","0x884"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_406, "%0000057e"), Attrs([Attr("address","0x840")]), Phis([]), -Defs([]), Jmps([Goto(Tid(1_409, "%00000581"), Attrs([Attr("address","0x840"), -Attr("insn","b #-0xa0")]), Int(1,1), +Blk(Tid(1_406, "%0000057e"), Attrs([Attr("address","0x880")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_409, "%00000581"), Attrs([Attr("address","0x880"), +Attr("insn","b #-0x90")]), Int(1,1), Direct(Tid(1_407, "@__gmon_start__")))])), Blk(Tid(1_407, "@__gmon_start__"), - Attrs([Attr("address","0x7A0")]), Phis([]), -Defs([Def(Tid(1_819, "%0000071b"), Attrs([Attr("address","0x7A0"), + Attrs([Attr("address","0x7F0")]), Phis([]), +Defs([Def(Tid(1_819, "%0000071b"), Attrs([Attr("address","0x7F0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_827, "%00000723"), Attrs([Attr("address","0x7A4"), +Def(Tid(1_827, "%00000723"), Attrs([Attr("address","0x7F4"), Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), -Def(Tid(1_834, "%0000072a"), Attrs([Attr("address","0x7A8"), +Def(Tid(1_834, "%0000072a"), Attrs([Attr("address","0x7F8"), Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_839, "%0000072f"), - Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7FC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_185, "@deregister_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x850")]), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x890")]), "deregister_tm_clones", Args([Arg(Tid(2_254, "%000008ce"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(661, "@deregister_tm_clones"), - Attrs([Attr("address","0x850")]), Phis([]), Defs([Def(Tid(665, "%00000299"), - Attrs([Attr("address","0x850"), Attr("insn","adrp x0, #0x20000")]), + Attrs([Attr("address","0x890")]), Phis([]), Defs([Def(Tid(665, "%00000299"), + Attrs([Attr("address","0x890"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), Def(Tid(672, "%000002a0"), - Attrs([Attr("address","0x854"), Attr("insn","add x0, x0, #0x70")]), + Attrs([Attr("address","0x894"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), -Def(Tid(678, "%000002a6"), Attrs([Attr("address","0x858"), +Def(Tid(678, "%000002a6"), Attrs([Attr("address","0x898"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), -Def(Tid(685, "%000002ad"), Attrs([Attr("address","0x85C"), +Def(Tid(685, "%000002ad"), Attrs([Attr("address","0x89C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), Def(Tid(693, "%000002b5"), - Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x8A0"), Attr("insn","cmp x1, x0")]), Var("#16",Imm(64)), PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), -Def(Tid(697, "%000002b9"), Attrs([Attr("address","0x860"), +Def(Tid(697, "%000002b9"), Attrs([Attr("address","0x8A0"), Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), Extract(63,63,Var("#16",Imm(64)))), Def(Tid(700, "%000002bc"), - Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x8A0"), Attr("insn","cmp x1, x0")]), Var("VF",Imm(1)), OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), -Def(Tid(703, "%000002bf"), Attrs([Attr("address","0x860"), +Def(Tid(703, "%000002bf"), Attrs([Attr("address","0x8A0"), Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(706, "%000002c2"), - Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x8A0"), Attr("insn","cmp x1, x0")]), Var("CF",Imm(1)), OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), -Def(Tid(720, "%000002d0"), Attrs([Attr("address","0x864"), +Def(Tid(720, "%000002d0"), Attrs([Attr("address","0x8A4"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), -Jmps([Goto(Tid(714, "%000002ca"), Attrs([Attr("address","0x864"), +Jmps([Goto(Tid(714, "%000002ca"), Attrs([Attr("address","0x8A4"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Direct(Tid(712, "%000002c8"))), Goto(Tid(2_238, "%000008be"), Attrs([]), Int(1,1), Direct(Tid(1_367, "%00000557")))])), Blk(Tid(1_367, "%00000557"), - Attrs([Attr("address","0x868")]), Phis([]), -Defs([Def(Tid(1_371, "%0000055b"), Attrs([Attr("address","0x868"), + Attrs([Attr("address","0x8A8")]), Phis([]), +Defs([Def(Tid(1_371, "%0000055b"), Attrs([Attr("address","0x8A8"), Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), -Def(Tid(1_379, "%00000563"), Attrs([Attr("address","0x86C"), +Def(Tid(1_379, "%00000563"), Attrs([Attr("address","0x8AC"), Attr("insn","ldr x1, [x1, #0xfb0]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4016,64)),LittleEndian(),64)), -Def(Tid(1_390, "%0000056e"), Attrs([Attr("address","0x870"), +Def(Tid(1_390, "%0000056e"), Attrs([Attr("address","0x8B0"), Attr("insn","cbz x1, #0xc")]), Var("#78",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_384, "%00000568"), - Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), + Attrs([Attr("address","0x8B0"), Attr("insn","cbz x1, #0xc")]), Var("#78",Imm(1)), Direct(Tid(712, "%000002c8"))), Goto(Tid(2_239, "%000008bf"), Attrs([]), Int(1,1), Direct(Tid(1_393, "%00000571")))])), Blk(Tid(712, "%000002c8"), - Attrs([Attr("address","0x87C")]), Phis([]), Defs([]), -Jmps([Call(Tid(725, "%000002d5"), Attrs([Attr("address","0x87C"), + Attrs([Attr("address","0x8BC")]), Phis([]), Defs([]), +Jmps([Call(Tid(725, "%000002d5"), Attrs([Attr("address","0x8BC"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_393, "%00000571"), Attrs([Attr("address","0x874")]), Phis([]), -Defs([Def(Tid(1_399, "%00000577"), Attrs([Attr("address","0x874"), +Blk(Tid(1_393, "%00000571"), Attrs([Attr("address","0x8B4")]), Phis([]), +Defs([Def(Tid(1_399, "%00000577"), Attrs([Attr("address","0x8B4"), Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), -Jmps([Call(Tid(1_404, "%0000057c"), Attrs([Attr("address","0x878"), +Jmps([Call(Tid(1_404, "%0000057c"), Attrs([Attr("address","0x8B8"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), Sub(Tid(2_188, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x910")]), "frame_dummy", Args([Arg(Tid(2_255, "%000008cf"), +Attr("address","0x950")]), "frame_dummy", Args([Arg(Tid(2_255, "%000008cf"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(901, "@frame_dummy"), - Attrs([Attr("address","0x910")]), Phis([]), Defs([]), -Jmps([Call(Tid(903, "%00000387"), Attrs([Attr("address","0x910"), + Attrs([Attr("address","0x950")]), Phis([]), Defs([]), +Jmps([Call(Tid(903, "%00000387"), Attrs([Attr("address","0x950"), Attr("insn","b #-0x90")]), Int(1,1), (Direct(Tid(2_195, "@register_tm_clones")),))]))])), Sub(Tid(2_189, "@free"), - Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7D0"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x820"), Attr("stub","()")]), "free", Args([Arg(Tid(2_256, "%000008d0"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), -Both())]), Blks([Blk(Tid(1_220, "@free"), Attrs([Attr("address","0x7D0")]), - Phis([]), Defs([Def(Tid(1_894, "%00000766"), Attrs([Attr("address","0x7D0"), +Both())]), Blks([Blk(Tid(1_220, "@free"), Attrs([Attr("address","0x820")]), + Phis([]), Defs([Def(Tid(1_894, "%00000766"), Attrs([Attr("address","0x820"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_902, "%0000076e"), Attrs([Attr("address","0x7D4"), +Def(Tid(1_902, "%0000076e"), Attrs([Attr("address","0x824"), Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), -Def(Tid(1_909, "%00000775"), Attrs([Attr("address","0x7D8"), +Def(Tid(1_909, "%00000775"), Attrs([Attr("address","0x828"), Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_914, "%0000077a"), - Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x82C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_190, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x914")]), "main", Args([Arg(Tid(2_257, "%000008d1"), +Attr("address","0x954")]), "main", Args([Arg(Tid(2_257, "%000008d1"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_258, "%000008d2"), @@ -458,162 +460,162 @@ Var("R1",Imm(64)), Both()), Arg(Tid(2_259, "%000008d3"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(905, "@main"), - Attrs([Attr("address","0x914")]), Phis([]), Defs([Def(Tid(910, "%0000038e"), - Attrs([Attr("address","0x914"), Attr("insn","sub sp, sp, #0x40")]), + Attrs([Attr("address","0x954")]), Phis([]), Defs([Def(Tid(910, "%0000038e"), + Attrs([Attr("address","0x954"), Attr("insn","sub sp, sp, #0x40")]), Var("R31",Imm(64)), MINUS(Var("R31",Imm(64)),Int(64,64))), -Def(Tid(918, "%00000396"), Attrs([Attr("address","0x918"), +Def(Tid(918, "%00000396"), Attrs([Attr("address","0x958"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("#42",Imm(64)), PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(923, "%0000039b"), - Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), + Attrs([Attr("address","0x958"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(928, "%000003a0"), Attrs([Attr("address","0x918"), +Def(Tid(928, "%000003a0"), Attrs([Attr("address","0x958"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(935, "%000003a7"), Attrs([Attr("address","0x91C"), +Def(Tid(935, "%000003a7"), Attrs([Attr("address","0x95C"), Attr("insn","add x29, sp, #0x30")]), Var("R29",Imm(64)), PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(941, "%000003ad"), - Attrs([Attr("address","0x920"), Attr("insn","adrp x8, #0x1f000")]), + Attrs([Attr("address","0x960"), Attr("insn","adrp x8, #0x1f000")]), Var("R8",Imm(64)), Int(126976,64)), Def(Tid(949, "%000003b5"), - Attrs([Attr("address","0x924"), Attr("insn","ldr x8, [x8, #0xfc8]")]), + Attrs([Attr("address","0x964"), Attr("insn","ldr x8, [x8, #0xfc8]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(4040,64)),LittleEndian(),64)), -Def(Tid(957, "%000003bd"), Attrs([Attr("address","0x928"), +Def(Tid(957, "%000003bd"), Attrs([Attr("address","0x968"), Attr("insn","str x8, [sp, #0x18]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(965, "%000003c5"), Attrs([Attr("address","0x92C"), +Def(Tid(965, "%000003c5"), Attrs([Attr("address","0x96C"), Attr("insn","stur xzr, [x29, #-0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(973, "%000003cd"), Attrs([Attr("address","0x930"), +Def(Tid(973, "%000003cd"), Attrs([Attr("address","0x970"), Attr("insn","stur xzr, [x29, #-0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551600,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(979, "%000003d3"), Attrs([Attr("address","0x934"), +Def(Tid(979, "%000003d3"), Attrs([Attr("address","0x974"), Attr("insn","mov x0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), -Def(Tid(984, "%000003d8"), Attrs([Attr("address","0x938"), -Attr("insn","bl #-0x1b8")]), Var("R30",Imm(64)), Int(2364,64))]), -Jmps([Call(Tid(987, "%000003db"), Attrs([Attr("address","0x938"), -Attr("insn","bl #-0x1b8")]), Int(1,1), +Def(Tid(984, "%000003d8"), Attrs([Attr("address","0x978"), +Attr("insn","bl #-0x1a8")]), Var("R30",Imm(64)), Int(2428,64))]), +Jmps([Call(Tid(987, "%000003db"), Attrs([Attr("address","0x978"), +Attr("insn","bl #-0x1a8")]), Int(1,1), (Direct(Tid(2_191, "@malloc")),Direct(Tid(989, "%000003dd"))))])), -Blk(Tid(989, "%000003dd"), Attrs([Attr("address","0x93C")]), Phis([]), -Defs([Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x93C"), +Blk(Tid(989, "%000003dd"), Attrs([Attr("address","0x97C")]), Phis([]), +Defs([Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x97C"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_003, "%000003eb"), Attrs([Attr("address","0x940"), +Def(Tid(1_003, "%000003eb"), Attrs([Attr("address","0x980"), Attr("insn","str x0, [x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("R8",Imm(64)),Var("R0",Imm(64)),LittleEndian(),64)), -Def(Tid(1_011, "%000003f3"), Attrs([Attr("address","0x944"), +Def(Tid(1_011, "%000003f3"), Attrs([Attr("address","0x984"), Attr("insn","ldr x8, [x8]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_019, "%000003fb"), Attrs([Attr("address","0x948"), +Def(Tid(1_019, "%000003fb"), Attrs([Attr("address","0x988"), Attr("insn","str x8, [sp, #0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_025, "%00000401"), Attrs([Attr("address","0x94C"), +Def(Tid(1_025, "%00000401"), Attrs([Attr("address","0x98C"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), -Def(Tid(1_033, "%00000409"), Attrs([Attr("address","0x950"), +Def(Tid(1_033, "%00000409"), Attrs([Attr("address","0x990"), Attr("insn","ldr x0, [x0, #0xfd0]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), -Def(Tid(1_041, "%00000411"), Attrs([Attr("address","0x954"), +Def(Tid(1_041, "%00000411"), Attrs([Attr("address","0x994"), Attr("insn","str x0, [sp]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("R31",Imm(64)),Var("R0",Imm(64)),LittleEndian(),64)), -Def(Tid(1_046, "%00000416"), Attrs([Attr("address","0x958"), -Attr("insn","bl #-0x208")]), Var("R30",Imm(64)), Int(2396,64))]), -Jmps([Call(Tid(1_049, "%00000419"), Attrs([Attr("address","0x958"), -Attr("insn","bl #-0x208")]), Int(1,1), +Def(Tid(1_046, "%00000416"), Attrs([Attr("address","0x998"), +Attr("insn","bl #-0x1f8")]), Var("R30",Imm(64)), Int(2460,64))]), +Jmps([Call(Tid(1_049, "%00000419"), Attrs([Attr("address","0x998"), +Attr("insn","bl #-0x1f8")]), Int(1,1), (Direct(Tid(2_198, "@strlen")),Direct(Tid(1_051, "%0000041b"))))])), -Blk(Tid(1_051, "%0000041b"), Attrs([Attr("address","0x95C")]), Phis([]), -Defs([Def(Tid(1_057, "%00000421"), Attrs([Attr("address","0x95C"), +Blk(Tid(1_051, "%0000041b"), Attrs([Attr("address","0x99C")]), Phis([]), +Defs([Def(Tid(1_057, "%00000421"), Attrs([Attr("address","0x99C"), Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_065, "%00000429"), Attrs([Attr("address","0x960"), +Def(Tid(1_065, "%00000429"), Attrs([Attr("address","0x9A0"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_073, "%00000431"), Attrs([Attr("address","0x964"), +Def(Tid(1_073, "%00000431"), Attrs([Attr("address","0x9A4"), Attr("insn","ldr x0, [sp, #0x8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_078, "%00000436"), Attrs([Attr("address","0x968"), -Attr("insn","bl #-0x228")]), Var("R30",Imm(64)), Int(2412,64))]), -Jmps([Call(Tid(1_081, "%00000439"), Attrs([Attr("address","0x968"), -Attr("insn","bl #-0x228")]), Int(1,1), +Def(Tid(1_078, "%00000436"), Attrs([Attr("address","0x9A8"), +Attr("insn","bl #-0x218")]), Var("R30",Imm(64)), Int(2476,64))]), +Jmps([Call(Tid(1_081, "%00000439"), Attrs([Attr("address","0x9A8"), +Attr("insn","bl #-0x218")]), Int(1,1), (Direct(Tid(2_192, "@memcpy")),Direct(Tid(1_083, "%0000043b"))))])), -Blk(Tid(1_083, "%0000043b"), Attrs([Attr("address","0x96C")]), Phis([]), -Defs([Def(Tid(1_089, "%00000441"), Attrs([Attr("address","0x96C"), +Blk(Tid(1_083, "%0000043b"), Attrs([Attr("address","0x9AC")]), Phis([]), +Defs([Def(Tid(1_089, "%00000441"), Attrs([Attr("address","0x9AC"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_097, "%00000449"), Attrs([Attr("address","0x970"), +Def(Tid(1_097, "%00000449"), Attrs([Attr("address","0x9B0"), Attr("insn","ldr x0, [x8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_102, "%0000044e"), Attrs([Attr("address","0x974"), -Attr("insn","bl #-0x1b4")]), Var("R30",Imm(64)), Int(2424,64))]), -Jmps([Call(Tid(1_105, "%00000451"), Attrs([Attr("address","0x974"), -Attr("insn","bl #-0x1b4")]), Int(1,1), +Def(Tid(1_102, "%0000044e"), Attrs([Attr("address","0x9B4"), +Attr("insn","bl #-0x1a4")]), Var("R30",Imm(64)), Int(2488,64))]), +Jmps([Call(Tid(1_105, "%00000451"), Attrs([Attr("address","0x9B4"), +Attr("insn","bl #-0x1a4")]), Int(1,1), (Direct(Tid(2_194, "@puts")),Direct(Tid(1_107, "%00000453"))))])), -Blk(Tid(1_107, "%00000453"), Attrs([Attr("address","0x978")]), Phis([]), -Defs([Def(Tid(1_113, "%00000459"), Attrs([Attr("address","0x978"), +Blk(Tid(1_107, "%00000453"), Attrs([Attr("address","0x9B8")]), Phis([]), +Defs([Def(Tid(1_113, "%00000459"), Attrs([Attr("address","0x9B8"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_121, "%00000461"), Attrs([Attr("address","0x97C"), +Def(Tid(1_121, "%00000461"), Attrs([Attr("address","0x9BC"), Attr("insn","ldr x9, [x8]")]), Var("R9",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_128, "%00000468"), Attrs([Attr("address","0x980"), +Def(Tid(1_128, "%00000468"), Attrs([Attr("address","0x9C0"), Attr("insn","add x9, x9, #0x4")]), Var("R9",Imm(64)), PLUS(Var("R9",Imm(64)),Int(4,64))), Def(Tid(1_136, "%00000470"), - Attrs([Attr("address","0x984"), Attr("insn","stur x9, [x29, #-0x8]")]), + Attrs([Attr("address","0x9C4"), Attr("insn","stur x9, [x29, #-0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Var("R9",Imm(64)),LittleEndian(),64)), -Def(Tid(1_144, "%00000478"), Attrs([Attr("address","0x988"), +Def(Tid(1_144, "%00000478"), Attrs([Attr("address","0x9C8"), Attr("insn","ldr x9, [x8]")]), Var("R9",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_152, "%00000480"), Attrs([Attr("address","0x98C"), +Def(Tid(1_152, "%00000480"), Attrs([Attr("address","0x9CC"), Attr("insn","str x9, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R9",Imm(64)),LittleEndian(),64)), -Def(Tid(1_160, "%00000488"), Attrs([Attr("address","0x990"), +Def(Tid(1_160, "%00000488"), Attrs([Attr("address","0x9D0"), Attr("insn","ldr x0, [x8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_165, "%0000048d"), Attrs([Attr("address","0x994"), -Attr("insn","bl #-0x244")]), Var("R30",Imm(64)), Int(2456,64))]), -Jmps([Call(Tid(1_167, "%0000048f"), Attrs([Attr("address","0x994"), -Attr("insn","bl #-0x244")]), Int(1,1), +Def(Tid(1_165, "%0000048d"), Attrs([Attr("address","0x9D4"), +Attr("insn","bl #-0x234")]), Var("R30",Imm(64)), Int(2520,64))]), +Jmps([Call(Tid(1_167, "%0000048f"), Attrs([Attr("address","0x9D4"), +Attr("insn","bl #-0x234")]), Int(1,1), (Direct(Tid(2_198, "@strlen")),Direct(Tid(1_169, "%00000491"))))])), -Blk(Tid(1_169, "%00000491"), Attrs([Attr("address","0x998")]), Phis([]), -Defs([Def(Tid(1_175, "%00000497"), Attrs([Attr("address","0x998"), +Blk(Tid(1_169, "%00000491"), Attrs([Attr("address","0x9D8")]), Phis([]), +Defs([Def(Tid(1_175, "%00000497"), Attrs([Attr("address","0x9D8"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_183, "%0000049f"), Attrs([Attr("address","0x99C"), +Def(Tid(1_183, "%0000049f"), Attrs([Attr("address","0x9DC"), Attr("insn","ldr x0, [sp, #0x10]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_190, "%000004a6"), Attrs([Attr("address","0x9A0"), +Def(Tid(1_190, "%000004a6"), Attrs([Attr("address","0x9E0"), Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), -Def(Tid(1_195, "%000004ab"), Attrs([Attr("address","0x9A4"), -Attr("insn","bl #-0x214")]), Var("R30",Imm(64)), Int(2472,64))]), -Jmps([Call(Tid(1_198, "%000004ae"), Attrs([Attr("address","0x9A4"), -Attr("insn","bl #-0x214")]), Int(1,1), +Def(Tid(1_195, "%000004ab"), Attrs([Attr("address","0x9E4"), +Attr("insn","bl #-0x204")]), Var("R30",Imm(64)), Int(2536,64))]), +Jmps([Call(Tid(1_198, "%000004ae"), Attrs([Attr("address","0x9E4"), +Attr("insn","bl #-0x204")]), Int(1,1), (Direct(Tid(2_193, "@memset")),Direct(Tid(1_200, "%000004b0"))))])), -Blk(Tid(1_200, "%000004b0"), Attrs([Attr("address","0x9A8")]), Phis([]), -Defs([Def(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x9A8"), +Blk(Tid(1_200, "%000004b0"), Attrs([Attr("address","0x9E8")]), Phis([]), +Defs([Def(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x9E8"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_214, "%000004be"), Attrs([Attr("address","0x9AC"), +Def(Tid(1_214, "%000004be"), Attrs([Attr("address","0x9EC"), Attr("insn","ldr x0, [x8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_219, "%000004c3"), Attrs([Attr("address","0x9B0"), -Attr("insn","bl #-0x1e0")]), Var("R30",Imm(64)), Int(2484,64))]), -Jmps([Call(Tid(1_222, "%000004c6"), Attrs([Attr("address","0x9B0"), -Attr("insn","bl #-0x1e0")]), Int(1,1), +Def(Tid(1_219, "%000004c3"), Attrs([Attr("address","0x9F0"), +Attr("insn","bl #-0x1d0")]), Var("R30",Imm(64)), Int(2548,64))]), +Jmps([Call(Tid(1_222, "%000004c6"), Attrs([Attr("address","0x9F0"), +Attr("insn","bl #-0x1d0")]), Int(1,1), (Direct(Tid(2_189, "@free")),Direct(Tid(1_224, "%000004c8"))))])), -Blk(Tid(1_224, "%000004c8"), Attrs([Attr("address","0x9B4")]), Phis([]), -Defs([Def(Tid(1_231, "%000004cf"), Attrs([Attr("address","0x9B4"), +Blk(Tid(1_224, "%000004c8"), Attrs([Attr("address","0x9F4")]), Phis([]), +Defs([Def(Tid(1_231, "%000004cf"), Attrs([Attr("address","0x9F4"), Attr("insn","mov w0, wzr")]), Var("R0",Imm(64)), Int(0,32)), -Def(Tid(1_240, "%000004d8"), Attrs([Attr("address","0x9B8"), +Def(Tid(1_240, "%000004d8"), Attrs([Attr("address","0x9F8"), Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(48,64)),LittleEndian(),64)), -Def(Tid(1_244, "%000004dc"), Attrs([Attr("address","0x9B8"), +Def(Tid(1_244, "%000004dc"), Attrs([Attr("address","0x9F8"), Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(56,64)),LittleEndian(),64)), -Def(Tid(1_251, "%000004e3"), Attrs([Attr("address","0x9BC"), +Def(Tid(1_251, "%000004e3"), Attrs([Attr("address","0x9FC"), Attr("insn","add sp, sp, #0x40")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_256, "%000004e8"), - Attrs([Attr("address","0x9C0"), Attr("insn","ret")]), Int(1,1), + Attrs([Attr("address","0xA00"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_191, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), -Attr("address","0x780"), Attr("malloc","()"), Attr("stub","()")]), "malloc", +Attr("address","0x7D0"), Attr("malloc","()"), Attr("stub","()")]), "malloc", Args([Arg(Tid(2_260, "%000008d4"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), @@ -621,19 +623,19 @@ Var("R0",Imm(64)), In()), Arg(Tid(2_261, "%000008d5"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(985, "@malloc"), Attrs([Attr("address","0x780")]), Phis([]), -Defs([Def(Tid(1_769, "%000006e9"), Attrs([Attr("address","0x780"), +Blks([Blk(Tid(985, "@malloc"), Attrs([Attr("address","0x7D0")]), Phis([]), +Defs([Def(Tid(1_769, "%000006e9"), Attrs([Attr("address","0x7D0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_777, "%000006f1"), Attrs([Attr("address","0x784"), +Def(Tid(1_777, "%000006f1"), Attrs([Attr("address","0x7D4"), Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), -Def(Tid(1_784, "%000006f8"), Attrs([Attr("address","0x788"), +Def(Tid(1_784, "%000006f8"), Attrs([Attr("address","0x7D8"), Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_789, "%000006fd"), - Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_192, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), -Attr("address","0x740"), Attr("stub","()")]), "memcpy", +Attr("address","0x790"), Attr("stub","()")]), "memcpy", Args([Arg(Tid(2_262, "%000008d6"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), @@ -647,19 +649,19 @@ Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Arg(Tid(2_265, "%000008d9"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_079, "@memcpy"), Attrs([Attr("address","0x740")]), Phis([]), -Defs([Def(Tid(1_669, "%00000685"), Attrs([Attr("address","0x740"), +Blks([Blk(Tid(1_079, "@memcpy"), Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_669, "%00000685"), Attrs([Attr("address","0x790"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_677, "%0000068d"), Attrs([Attr("address","0x744"), +Def(Tid(1_677, "%0000068d"), Attrs([Attr("address","0x794"), Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), -Def(Tid(1_684, "%00000694"), Attrs([Attr("address","0x748"), +Def(Tid(1_684, "%00000694"), Attrs([Attr("address","0x798"), Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), Var("R16",Imm(64)))]), Jmps([Call(Tid(1_689, "%00000699"), - Attrs([Attr("address","0x74C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_193, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), -Attr("address","0x790"), Attr("stub","()")]), "memset", +Attr("address","0x7E0"), Attr("stub","()")]), "memset", Args([Arg(Tid(2_266, "%000008da"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), @@ -672,93 +674,93 @@ Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), In()), Arg(Tid(2_269, "%000008dd"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_196, "@memset"), Attrs([Attr("address","0x790")]), Phis([]), -Defs([Def(Tid(1_794, "%00000702"), Attrs([Attr("address","0x790"), +Blks([Blk(Tid(1_196, "@memset"), Attrs([Attr("address","0x7E0")]), Phis([]), +Defs([Def(Tid(1_794, "%00000702"), Attrs([Attr("address","0x7E0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_802, "%0000070a"), Attrs([Attr("address","0x794"), +Def(Tid(1_802, "%0000070a"), Attrs([Attr("address","0x7E4"), Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), -Def(Tid(1_809, "%00000711"), Attrs([Attr("address","0x798"), +Def(Tid(1_809, "%00000711"), Attrs([Attr("address","0x7E8"), Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_814, "%00000716"), - Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7EC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_194, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), -Attr("address","0x7C0"), Attr("stub","()")]), "puts", +Attr("address","0x810"), Attr("stub","()")]), "puts", Args([Arg(Tid(2_270, "%000008de"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), Arg(Tid(2_271, "%000008df"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(1_103, "@puts"), Attrs([Attr("address","0x7C0")]), Phis([]), -Defs([Def(Tid(1_869, "%0000074d"), Attrs([Attr("address","0x7C0"), +Blks([Blk(Tid(1_103, "@puts"), Attrs([Attr("address","0x810")]), Phis([]), +Defs([Def(Tid(1_869, "%0000074d"), Attrs([Attr("address","0x810"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_877, "%00000755"), Attrs([Attr("address","0x7C4"), +Def(Tid(1_877, "%00000755"), Attrs([Attr("address","0x814"), Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), -Def(Tid(1_884, "%0000075c"), Attrs([Attr("address","0x7C8"), +Def(Tid(1_884, "%0000075c"), Attrs([Attr("address","0x818"), Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_889, "%00000761"), - Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x81C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_195, "@register_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), "register_tm_clones", Args([Arg(Tid(2_272, "%000008e0"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(727, "@register_tm_clones"), Attrs([Attr("address","0x880")]), - Phis([]), Defs([Def(Tid(731, "%000002db"), Attrs([Attr("address","0x880"), +Blks([Blk(Tid(727, "@register_tm_clones"), Attrs([Attr("address","0x8C0")]), + Phis([]), Defs([Def(Tid(731, "%000002db"), Attrs([Attr("address","0x8C0"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(738, "%000002e2"), Attrs([Attr("address","0x884"), +Def(Tid(738, "%000002e2"), Attrs([Attr("address","0x8C4"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), Def(Tid(744, "%000002e8"), - Attrs([Attr("address","0x888"), Attr("insn","adrp x1, #0x20000")]), + Attrs([Attr("address","0x8C8"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), Def(Tid(751, "%000002ef"), - Attrs([Attr("address","0x88C"), Attr("insn","add x1, x1, #0x70")]), + Attrs([Attr("address","0x8CC"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), -Def(Tid(759, "%000002f7"), Attrs([Attr("address","0x890"), +Def(Tid(759, "%000002f7"), Attrs([Attr("address","0x8D0"), Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(766, "%000002fe"), - Attrs([Attr("address","0x894"), Attr("insn","lsr x2, x1, #63")]), + Attrs([Attr("address","0x8D4"), Attr("insn","lsr x2, x1, #63")]), Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), -Def(Tid(774, "%00000306"), Attrs([Attr("address","0x898"), +Def(Tid(774, "%00000306"), Attrs([Attr("address","0x8D8"), Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), -Def(Tid(781, "%0000030d"), Attrs([Attr("address","0x89C"), +Def(Tid(781, "%0000030d"), Attrs([Attr("address","0x8DC"), Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(793, "%00000319"), - Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), -Jmps([Goto(Tid(787, "%00000313"), Attrs([Attr("address","0x8A0"), +Jmps([Goto(Tid(787, "%00000313"), Attrs([Attr("address","0x8E0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), Direct(Tid(785, "%00000311"))), Goto(Tid(2_240, "%000008c0"), Attrs([]), Int(1,1), Direct(Tid(1_328, "%00000530")))])), Blk(Tid(1_328, "%00000530"), - Attrs([Attr("address","0x8A4")]), Phis([]), -Defs([Def(Tid(1_332, "%00000534"), Attrs([Attr("address","0x8A4"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_332, "%00000534"), Attrs([Attr("address","0x8E4"), Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), -Def(Tid(1_340, "%0000053c"), Attrs([Attr("address","0x8A8"), +Def(Tid(1_340, "%0000053c"), Attrs([Attr("address","0x8E8"), Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), -Def(Tid(1_351, "%00000547"), Attrs([Attr("address","0x8AC"), +Def(Tid(1_351, "%00000547"), Attrs([Attr("address","0x8EC"), Attr("insn","cbz x2, #0xc")]), Var("#73",Imm(1)), EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_345, "%00000541"), - Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), + Attrs([Attr("address","0x8EC"), Attr("insn","cbz x2, #0xc")]), Var("#73",Imm(1)), Direct(Tid(785, "%00000311"))), Goto(Tid(2_241, "%000008c1"), Attrs([]), Int(1,1), Direct(Tid(1_354, "%0000054a")))])), Blk(Tid(785, "%00000311"), - Attrs([Attr("address","0x8B8")]), Phis([]), Defs([]), -Jmps([Call(Tid(798, "%0000031e"), Attrs([Attr("address","0x8B8"), + Attrs([Attr("address","0x8F8")]), Phis([]), Defs([]), +Jmps([Call(Tid(798, "%0000031e"), Attrs([Attr("address","0x8F8"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_354, "%0000054a"), Attrs([Attr("address","0x8B0")]), Phis([]), -Defs([Def(Tid(1_360, "%00000550"), Attrs([Attr("address","0x8B0"), +Blk(Tid(1_354, "%0000054a"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_360, "%00000550"), Attrs([Attr("address","0x8F0"), Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), -Jmps([Call(Tid(1_365, "%00000555"), Attrs([Attr("address","0x8B4"), +Jmps([Call(Tid(1_365, "%00000555"), Attrs([Attr("address","0x8F4"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), Sub(Tid(2_198, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), -Attr("pure","()"), Attr("address","0x750"), Attr("stub","()")]), "strlen", +Attr("pure","()"), Attr("address","0x7A0"), Attr("stub","()")]), "strlen", Args([Arg(Tid(2_273, "%000008e1"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), @@ -766,14 +768,14 @@ In()), Arg(Tid(2_274, "%000008e2"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_047, "@strlen"), - Attrs([Attr("address","0x750")]), Phis([]), -Defs([Def(Tid(1_694, "%0000069e"), Attrs([Attr("address","0x750"), + Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_694, "%0000069e"), Attrs([Attr("address","0x7A0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_702, "%000006a6"), Attrs([Attr("address","0x754"), +Def(Tid(1_702, "%000006a6"), Attrs([Attr("address","0x7A4"), Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_709, "%000006ad"), Attrs([Attr("address","0x758"), +Def(Tid(1_709, "%000006ad"), Attrs([Attr("address","0x7A8"), Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_714, "%000006b2"), - Attrs([Attr("address","0x75C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.bir b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.bir index 9101af90e..24db96439 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.bir @@ -34,11 +34,11 @@ 0000051a: 0000051e: R0 := 0x20000 00000526: R0 := mem[R0 + 0x58, el]:u64 -0000052b: R30 := 0x8F0 +0000052b: R30 := 0x930 0000052e: call @__cxa_finalize with return %000004fa 000004fa: -00000507: R30 := 0x8F4 +00000507: R30 := 0x934 00000509: call @deregister_tm_clones with return %0000050b 0000050b: @@ -89,7 +89,7 @@ 000007a9: mem := mem with [#101 + 8, el]:u64 <- R30 000007ad: R31 := #101 000007b4: R29 := R31 -000007b9: R30 := 0x718 +000007b9: R30 := 0x768 000007bb: call @call_weak_fn with return %000007bd 000007bd: @@ -112,11 +112,11 @@ 00000254: R0 := mem[R0 + 0xFD8, el]:u64 0000025a: R3 := 0 00000260: R4 := 0 -00000265: R30 := 0x830 +00000265: R30 := 0x870 00000268: call @__libc_start_main with return %0000026a 0000026a: -0000026d: R30 := 0x834 +0000026d: R30 := 0x874 00000270: call @abort with return %000008bb 000008bb: @@ -218,7 +218,7 @@ 000003c5: mem := mem with [R29 - 8, el]:u64 <- 0 000003cd: mem := mem with [R29 - 0x10, el]:u64 <- 0 000003d3: R0 := 0xB -000003d8: R30 := 0x93C +000003d8: R30 := 0x97C 000003db: call @malloc with return %000003dd 000003dd: @@ -229,20 +229,20 @@ 00000401: R0 := 0x1F000 00000409: R0 := mem[R0 + 0xFD0, el]:u64 00000411: mem := mem with [R31, el]:u64 <- R0 -00000416: R30 := 0x95C +00000416: R30 := 0x99C 00000419: call @strlen with return %0000041b 0000041b: 00000421: R1 := mem[R31, el]:u64 00000429: R2 := R0 00000431: R0 := mem[R31 + 8, el]:u64 -00000436: R30 := 0x96C +00000436: R30 := 0x9AC 00000439: call @memcpy with return %0000043b 0000043b: 00000441: R8 := mem[R31 + 0x18, el]:u64 00000449: R0 := mem[R8, el]:u64 -0000044e: R30 := 0x978 +0000044e: R30 := 0x9B8 00000451: call @puts with return %00000453 00000453: @@ -253,20 +253,20 @@ 00000478: R9 := mem[R8, el]:u64 00000480: mem := mem with [R31 + 0x10, el]:u64 <- R9 00000488: R0 := mem[R8, el]:u64 -0000048d: R30 := 0x998 +0000048d: R30 := 0x9D8 0000048f: call @strlen with return %00000491 00000491: 00000497: R2 := R0 0000049f: R0 := mem[R31 + 0x10, el]:u64 000004a6: R1 := 1 -000004ab: R30 := 0x9A8 +000004ab: R30 := 0x9E8 000004ae: call @memset with return %000004b0 000004b0: 000004b6: R8 := mem[R31 + 0x18, el]:u64 000004be: R0 := mem[R8, el]:u64 -000004c3: R30 := 0x9B4 +000004c3: R30 := 0x9F4 000004c6: call @free with return %000004c8 000004c8: diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.relf b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.relf index 0e1254ec5..f837a2922 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.relf +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.relf @@ -1,18 +1,18 @@ -Relocation section '.rela.dyn' at offset 0x528 contains 10 entries: +Relocation section '.rela.dyn' at offset 0x578 contains 10 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -000000000001fdb8 0000000000000403 R_AARCH64_RELATIVE 910 -000000000001fdc0 0000000000000403 R_AARCH64_RELATIVE 8c0 +000000000001fda8 0000000000000403 R_AARCH64_RELATIVE 950 +000000000001fdb0 0000000000000403 R_AARCH64_RELATIVE 900 000000000001ffc8 0000000000000403 R_AARCH64_RELATIVE 20078 000000000001ffd0 0000000000000403 R_AARCH64_RELATIVE 20061 -000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 914 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 954 0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 000000000001ffb0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 000000000001ffb8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 000000000001ffc0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -Relocation section '.rela.plt' at offset 0x618 contains 10 entries: +Relocation section '.rela.plt' at offset 0x668 contains 10 entries: Offset Info Type Symbol's Value Symbol's Name + Addend 0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 @@ -28,8 +28,8 @@ Relocation section '.rela.plt' at offset 0x618 contains 10 entries: Symbol table '.dynsym' contains 15 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 0000000000000708 0 SECTION LOCAL DEFAULT 11 .init - 2: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 1: 0000000000000758 0 SECTION LOCAL DEFAULT 12 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) @@ -43,104 +43,105 @@ Symbol table '.dynsym' contains 15 entries: 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable -Symbol table '.symtab' contains 99 entries: +Symbol table '.symtab' contains 100 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag - 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .gnu.hash - 5: 00000000000002b8 0 SECTION LOCAL DEFAULT 5 .dynsym - 6: 0000000000000420 0 SECTION LOCAL DEFAULT 6 .dynstr - 7: 00000000000004d4 0 SECTION LOCAL DEFAULT 7 .gnu.version - 8: 00000000000004f8 0 SECTION LOCAL DEFAULT 8 .gnu.version_r - 9: 0000000000000528 0 SECTION LOCAL DEFAULT 9 .rela.dyn - 10: 0000000000000618 0 SECTION LOCAL DEFAULT 10 .rela.plt - 11: 0000000000000708 0 SECTION LOCAL DEFAULT 11 .init - 12: 0000000000000720 0 SECTION LOCAL DEFAULT 12 .plt - 13: 0000000000000800 0 SECTION LOCAL DEFAULT 13 .text - 14: 00000000000009c4 0 SECTION LOCAL DEFAULT 14 .fini - 15: 00000000000009d8 0 SECTION LOCAL DEFAULT 15 .rodata - 16: 00000000000009dc 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr - 17: 0000000000000a18 0 SECTION LOCAL DEFAULT 17 .eh_frame - 18: 000000000001fdb8 0 SECTION LOCAL DEFAULT 18 .init_array - 19: 000000000001fdc0 0 SECTION LOCAL DEFAULT 19 .fini_array - 20: 000000000001fdc8 0 SECTION LOCAL DEFAULT 20 .dynamic - 21: 000000000001ffa8 0 SECTION LOCAL DEFAULT 21 .got - 22: 000000000001ffe8 0 SECTION LOCAL DEFAULT 22 .got.plt - 23: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data - 24: 0000000000020070 0 SECTION LOCAL DEFAULT 24 .bss - 25: 0000000000000000 0 SECTION LOCAL DEFAULT 25 .comment - 26: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o - 27: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d - 28: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag - 29: 0000000000000800 0 NOTYPE LOCAL DEFAULT 13 $x - 30: 0000000000000a2c 0 NOTYPE LOCAL DEFAULT 17 $d - 31: 00000000000009d8 0 NOTYPE LOCAL DEFAULT 15 $d - 32: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o - 33: 0000000000000834 0 NOTYPE LOCAL DEFAULT 13 $x - 34: 0000000000000834 20 FUNC LOCAL DEFAULT 13 call_weak_fn - 35: 0000000000000708 0 NOTYPE LOCAL DEFAULT 11 $x - 36: 00000000000009c4 0 NOTYPE LOCAL DEFAULT 14 $x - 37: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o - 38: 0000000000000718 0 NOTYPE LOCAL DEFAULT 11 $x - 39: 00000000000009d0 0 NOTYPE LOCAL DEFAULT 14 $x - 40: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 41: 0000000000000850 0 NOTYPE LOCAL DEFAULT 13 $x - 42: 0000000000000850 0 FUNC LOCAL DEFAULT 13 deregister_tm_clones - 43: 0000000000000880 0 FUNC LOCAL DEFAULT 13 register_tm_clones - 44: 0000000000020058 0 NOTYPE LOCAL DEFAULT 23 $d - 45: 00000000000008c0 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux - 46: 0000000000020070 1 OBJECT LOCAL DEFAULT 24 completed.0 - 47: 000000000001fdc0 0 NOTYPE LOCAL DEFAULT 19 $d - 48: 000000000001fdc0 0 OBJECT LOCAL DEFAULT 19 __do_global_dtors_aux_fini_array_entry - 49: 0000000000000910 0 FUNC LOCAL DEFAULT 13 frame_dummy - 50: 000000000001fdb8 0 NOTYPE LOCAL DEFAULT 18 $d - 51: 000000000001fdb8 0 OBJECT LOCAL DEFAULT 18 __frame_dummy_init_array_entry - 52: 0000000000000a40 0 NOTYPE LOCAL DEFAULT 17 $d - 53: 0000000000020070 0 NOTYPE LOCAL DEFAULT 24 $d - 54: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c - 55: 0000000000000914 0 NOTYPE LOCAL DEFAULT 13 $x.0 - 56: 0000000000020060 0 NOTYPE LOCAL DEFAULT 23 $d.1 - 57: 0000000000020078 0 NOTYPE LOCAL DEFAULT 24 $d.2 - 58: 000000000000003e 0 NOTYPE LOCAL DEFAULT 25 $d.3 - 59: 0000000000000aa0 0 NOTYPE LOCAL DEFAULT 17 $d.4 - 60: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 61: 0000000000000adc 0 NOTYPE LOCAL DEFAULT 17 $d - 62: 0000000000000adc 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__ - 63: 0000000000000000 0 FILE LOCAL DEFAULT ABS - 64: 000000000001fdc8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC - 65: 00000000000009dc 0 NOTYPE LOCAL DEFAULT 16 __GNU_EH_FRAME_HDR - 66: 000000000001ffa8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - 67: 0000000000000720 0 NOTYPE LOCAL DEFAULT 12 $x - 68: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 - 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 - 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 - 71: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 72: 0000000000020050 0 NOTYPE WEAK DEFAULT 23 data_start - 73: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start__ - 74: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 - 75: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _bss_end__ - 76: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 23 _edata - 77: 00000000000009c4 0 FUNC GLOBAL HIDDEN 14 _fini - 78: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __bss_end__ - 79: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 - 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 - 81: 0000000000020060 1 OBJECT GLOBAL DEFAULT 23 password - 82: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 23 __data_start - 83: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 84: 0000000000020058 0 OBJECT GLOBAL HIDDEN 23 __dso_handle - 85: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 - 86: 00000000000009d8 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used - 87: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 - 88: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _end - 89: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 - 90: 0000000000000800 52 FUNC GLOBAL DEFAULT 13 _start - 91: 0000000000020078 8 OBJECT GLOBAL DEFAULT 24 buf - 92: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __end__ - 93: 0000000000020061 11 OBJECT GLOBAL DEFAULT 23 stext - 94: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start - 95: 0000000000000914 176 FUNC GLOBAL DEFAULT 13 main - 96: 0000000000020070 0 OBJECT GLOBAL HIDDEN 23 __TMC_END__ - 97: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 98: 0000000000000708 0 FUNC GLOBAL HIDDEN 11 _init + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .hash + 5: 00000000000002e8 0 SECTION LOCAL DEFAULT 5 .gnu.hash + 6: 0000000000000308 0 SECTION LOCAL DEFAULT 6 .dynsym + 7: 0000000000000470 0 SECTION LOCAL DEFAULT 7 .dynstr + 8: 0000000000000524 0 SECTION LOCAL DEFAULT 8 .gnu.version + 9: 0000000000000548 0 SECTION LOCAL DEFAULT 9 .gnu.version_r + 10: 0000000000000578 0 SECTION LOCAL DEFAULT 10 .rela.dyn + 11: 0000000000000668 0 SECTION LOCAL DEFAULT 11 .rela.plt + 12: 0000000000000758 0 SECTION LOCAL DEFAULT 12 .init + 13: 0000000000000770 0 SECTION LOCAL DEFAULT 13 .plt + 14: 0000000000000840 0 SECTION LOCAL DEFAULT 14 .text + 15: 0000000000000a04 0 SECTION LOCAL DEFAULT 15 .fini + 16: 0000000000000a18 0 SECTION LOCAL DEFAULT 16 .rodata + 17: 0000000000000a1c 0 SECTION LOCAL DEFAULT 17 .eh_frame_hdr + 18: 0000000000000a58 0 SECTION LOCAL DEFAULT 18 .eh_frame + 19: 000000000001fda8 0 SECTION LOCAL DEFAULT 19 .init_array + 20: 000000000001fdb0 0 SECTION LOCAL DEFAULT 20 .fini_array + 21: 000000000001fdb8 0 SECTION LOCAL DEFAULT 21 .dynamic + 22: 000000000001ffa8 0 SECTION LOCAL DEFAULT 22 .got + 23: 000000000001ffe8 0 SECTION LOCAL DEFAULT 23 .got.plt + 24: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 25: 0000000000020070 0 SECTION LOCAL DEFAULT 25 .bss + 26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment + 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 28: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 29: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 30: 0000000000000840 0 NOTYPE LOCAL DEFAULT 14 $x + 31: 0000000000000a6c 0 NOTYPE LOCAL DEFAULT 18 $d + 32: 0000000000000a18 0 NOTYPE LOCAL DEFAULT 16 $d + 33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 34: 0000000000000874 0 NOTYPE LOCAL DEFAULT 14 $x + 35: 0000000000000874 20 FUNC LOCAL DEFAULT 14 call_weak_fn + 36: 0000000000000758 0 NOTYPE LOCAL DEFAULT 12 $x + 37: 0000000000000a04 0 NOTYPE LOCAL DEFAULT 15 $x + 38: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 39: 0000000000000768 0 NOTYPE LOCAL DEFAULT 12 $x + 40: 0000000000000a10 0 NOTYPE LOCAL DEFAULT 15 $x + 41: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 42: 0000000000000890 0 NOTYPE LOCAL DEFAULT 14 $x + 43: 0000000000000890 0 FUNC LOCAL DEFAULT 14 deregister_tm_clones + 44: 00000000000008c0 0 FUNC LOCAL DEFAULT 14 register_tm_clones + 45: 0000000000020058 0 NOTYPE LOCAL DEFAULT 24 $d + 46: 0000000000000900 0 FUNC LOCAL DEFAULT 14 __do_global_dtors_aux + 47: 0000000000020070 1 OBJECT LOCAL DEFAULT 25 completed.0 + 48: 000000000001fdb0 0 NOTYPE LOCAL DEFAULT 20 $d + 49: 000000000001fdb0 0 OBJECT LOCAL DEFAULT 20 __do_global_dtors_aux_fini_array_entry + 50: 0000000000000950 0 FUNC LOCAL DEFAULT 14 frame_dummy + 51: 000000000001fda8 0 NOTYPE LOCAL DEFAULT 19 $d + 52: 000000000001fda8 0 OBJECT LOCAL DEFAULT 19 __frame_dummy_init_array_entry + 53: 0000000000000a80 0 NOTYPE LOCAL DEFAULT 18 $d + 54: 0000000000020070 0 NOTYPE LOCAL DEFAULT 25 $d + 55: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 56: 0000000000000954 0 NOTYPE LOCAL DEFAULT 14 $x.0 + 57: 0000000000020060 0 NOTYPE LOCAL DEFAULT 24 $d.1 + 58: 0000000000020078 0 NOTYPE LOCAL DEFAULT 25 $d.2 + 59: 000000000000001d 0 NOTYPE LOCAL DEFAULT 26 $d.3 + 60: 0000000000000ae0 0 NOTYPE LOCAL DEFAULT 18 $d.4 + 61: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 62: 0000000000000b1c 0 NOTYPE LOCAL DEFAULT 18 $d + 63: 0000000000000b1c 0 OBJECT LOCAL DEFAULT 18 __FRAME_END__ + 64: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 65: 000000000001fdb8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 66: 0000000000000a1c 0 NOTYPE LOCAL DEFAULT 17 __GNU_EH_FRAME_HDR + 67: 000000000001ffa8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 68: 0000000000000770 0 NOTYPE LOCAL DEFAULT 13 $x + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 71: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 72: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 73: 0000000000020050 0 NOTYPE WEAK DEFAULT 24 data_start + 74: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start__ + 75: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 76: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _bss_end__ + 77: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 _edata + 78: 0000000000000a04 0 FUNC GLOBAL HIDDEN 15 _fini + 79: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __bss_end__ + 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 81: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 82: 0000000000020060 1 OBJECT GLOBAL DEFAULT 24 password + 83: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 24 __data_start + 84: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 85: 0000000000020058 0 OBJECT GLOBAL HIDDEN 24 __dso_handle + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 87: 0000000000000a18 4 OBJECT GLOBAL DEFAULT 16 _IO_stdin_used + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 89: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _end + 90: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 91: 0000000000000840 52 FUNC GLOBAL DEFAULT 14 _start + 92: 0000000000020078 8 OBJECT GLOBAL DEFAULT 25 buf + 93: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __end__ + 94: 0000000000020061 11 OBJECT GLOBAL DEFAULT 24 stext + 95: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start + 96: 0000000000000954 176 FUNC GLOBAL DEFAULT 14 main + 97: 0000000000020070 0 OBJECT GLOBAL HIDDEN 24 __TMC_END__ + 98: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 99: 0000000000000758 0 FUNC GLOBAL HIDDEN 12 _init diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.expected b/src/test/correct/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.expected index 05c767d15..8952ee7a6 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.expected +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.expected @@ -321,36 +321,36 @@ procedure main() free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); { - var #4: bv64; - var Gamma_#4: bool; + var #42: bv64; + var Gamma_#42: bool; lmain: assume {:captureState "lmain"} true; - #4, Gamma_#4 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; - stack, Gamma_stack := memory_store64_le(stack, #4, R29), gamma_store64(Gamma_stack, #4, Gamma_R29); - assume {:captureState "%0000037c"} true; - stack, Gamma_stack := memory_store64_le(stack, bvadd64(#4, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#4, 8bv64), Gamma_R30); - assume {:captureState "%00000382"} true; - R31, Gamma_R31 := #4, Gamma_#4; + #42, Gamma_#42 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #42, R29), gamma_store64(Gamma_stack, #42, Gamma_R29); + assume {:captureState "%000003ad"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#42, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#42, 8bv64), Gamma_R30); + assume {:captureState "%000003b2"} true; + R31, Gamma_R31 := #42, Gamma_#42; R29, Gamma_R29 := R31, Gamma_R31; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 16bv64), R19), gamma_store64(Gamma_stack, bvadd64(R31, 16bv64), Gamma_R19); - assume {:captureState "%00000394"} true; + assume {:captureState "%000003c5"} true; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 40bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R31, 40bv64), true); - assume {:captureState "%0000039b"} true; + assume {:captureState "%000003cd"} true; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 32bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R31, 32bv64), true); - assume {:captureState "%000003a2"} true; + assume {:captureState "%000003d5"} true; R0, Gamma_R0 := 11bv64, true; R30, Gamma_R30 := 2288bv64, true; call malloc(); - goto l000003b1; - l000003b1: - assume {:captureState "l000003b1"} true; + goto l000003e5; + l000003e5: + assume {:captureState "l000003e5"} true; R1, Gamma_R1 := R0, Gamma_R0; R0, Gamma_R0 := 131072bv64, true; R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; call rely(); assert (L(mem, R0) ==> Gamma_R1); mem, Gamma_mem := memory_store64_le(mem, R0, R1), gamma_store64(Gamma_mem, R0, Gamma_R1); - assume {:captureState "%000003c8"} true; + assume {:captureState "%00000400"} true; R0, Gamma_R0 := 131072bv64, true; R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; call rely(); @@ -359,34 +359,34 @@ procedure main() R0, Gamma_R0 := bvadd64(R0, 104bv64), Gamma_R0; R30, Gamma_R30 := 2328bv64, true; call strlen(); - goto l000003ef; - l000003ef: - assume {:captureState "l000003ef"} true; + goto l0000042c; + l0000042c: + assume {:captureState "l0000042c"} true; R2, Gamma_R2 := R0, Gamma_R0; R0, Gamma_R0 := 131072bv64, true; R1, Gamma_R1 := bvadd64(R0, 104bv64), Gamma_R0; R0, Gamma_R0 := R19, Gamma_R19; R30, Gamma_R30 := 2348bv64, true; call memcpy(); - goto l0000040e; - l0000040e: - assume {:captureState "l0000040e"} true; + goto l00000451; + l00000451: + assume {:captureState "l00000451"} true; R0, Gamma_R0 := 131072bv64, true; R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; call rely(); R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); R30, Gamma_R30 := 2364bv64, true; call puts(); - goto l00000428; - l00000428: - assume {:captureState "l00000428"} true; + goto l0000046e; + l0000046e: + assume {:captureState "l0000046e"} true; R0, Gamma_R0 := 131072bv64, true; R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; call rely(); R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); R0, Gamma_R0 := bvadd64(R0, 4bv64), Gamma_R0; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 40bv64), R0), gamma_store64(Gamma_stack, bvadd64(R31, 40bv64), Gamma_R0); - assume {:captureState "%00000446"} true; + assume {:captureState "%00000490"} true; R0, Gamma_R0 := 131072bv64, true; R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; call rely(); @@ -397,26 +397,26 @@ procedure main() R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); R30, Gamma_R30 := 2412bv64, true; call strlen(); - goto l00000473; - l00000473: - assume {:captureState "l00000473"} true; + goto l000004c3; + l000004c3: + assume {:captureState "l000004c3"} true; R2, Gamma_R2 := R0, Gamma_R0; R1, Gamma_R1 := 1bv64, true; R0, Gamma_R0 := R19, Gamma_R19; R30, Gamma_R30 := 2428bv64, true; call memset(); - goto l0000048c; - l0000048c: - assume {:captureState "l0000048c"} true; + goto l000004e2; + l000004e2: + assume {:captureState "l000004e2"} true; R0, Gamma_R0 := 131072bv64, true; R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; call rely(); R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); R30, Gamma_R30 := 2444bv64, true; call #free(); - goto l000004a6; - l000004a6: - assume {:captureState "l000004a6"} true; + goto l000004ff; + l000004ff: + assume {:captureState "l000004ff"} true; R0, Gamma_R0 := 0bv64, true; R19, Gamma_R19 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); R29, Gamma_R29 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); @@ -465,7 +465,6 @@ procedure malloc(); free requires (memory_load8_le(mem, 131165bv64) == 0bv8); free requires (memory_load8_le(mem, 131166bv64) == 0bv8); free requires (memory_load8_le(mem, 131167bv64) == 0bv8); - ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); ensures Gamma_R0 == true; ensures malloc_count == old(malloc_count) + 1; ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); @@ -550,7 +549,6 @@ procedure memcpy(); free requires (memory_load8_le(mem, 131165bv64) == 0bv8); free requires (memory_load8_le(mem, 131166bv64) == 0bv8); free requires (memory_load8_le(mem, 131167bv64) == 0bv8); - ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); free ensures (memory_load8_le(mem, 2480bv64) == 1bv8); @@ -782,7 +780,6 @@ procedure strlen(); free requires (memory_load8_le(mem, 131165bv64) == 0bv8); free requires (memory_load8_le(mem, 131166bv64) == 0bv8); free requires (memory_load8_le(mem, 131167bv64) == 0bv8); - ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); ensures Gamma_R0 == true; ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); diff --git a/src/test/correct/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.expected b/src/test/correct/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.expected index 3579f04f2..a1729ce76 100644 --- a/src/test/correct/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.expected +++ b/src/test/correct/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.expected @@ -322,35 +322,33 @@ procedure main() free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); { - var #1: bv64; - var #2: bv64; - var #3: bv64; - var Gamma_#1: bool; - var Gamma_#2: bool; - var Gamma_#3: bool; + var #14: bv64; + var #9: bv64; + var Gamma_#14: bool; + var Gamma_#9: bool; lmain: assume {:captureState "lmain"} true; - #1, Gamma_#1 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; - stack, Gamma_stack := memory_store64_le(stack, #1, R29), gamma_store64(Gamma_stack, #1, Gamma_R29); - assume {:captureState "%00000233"} true; - stack, Gamma_stack := memory_store64_le(stack, bvadd64(#1, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#1, 8bv64), Gamma_R30); - assume {:captureState "%00000239"} true; - R31, Gamma_R31 := #1, Gamma_#1; + #9, Gamma_#9 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #9, R29), gamma_store64(Gamma_stack, #9, Gamma_R29); + assume {:captureState "%00000238"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#9, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#9, 8bv64), Gamma_R30); + assume {:captureState "%0000023d"} true; + R31, Gamma_R31 := #9, Gamma_#9; R0, Gamma_R0 := 11bv64, true; R29, Gamma_R29 := R31, Gamma_R31; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 32bv64), R21), gamma_store64(Gamma_stack, bvadd64(R31, 32bv64), Gamma_R21); - assume {:captureState "%00000250"} true; + assume {:captureState "%00000256"} true; R21, Gamma_R21 := 131072bv64, true; - #2, Gamma_#2 := bvadd64(R31, 16bv64), Gamma_R31; - stack, Gamma_stack := memory_store64_le(stack, #2, R19), gamma_store64(Gamma_stack, #2, Gamma_R19); - assume {:captureState "%00000261"} true; - stack, Gamma_stack := memory_store64_le(stack, bvadd64(#2, 8bv64), R20), gamma_store64(Gamma_stack, bvadd64(#2, 8bv64), Gamma_R20); - assume {:captureState "%00000267"} true; + #14, Gamma_#14 := bvadd64(R31, 16bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #14, R19), gamma_store64(Gamma_stack, #14, Gamma_R19); + assume {:captureState "%00000269"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#14, 8bv64), R20), gamma_store64(Gamma_stack, bvadd64(#14, 8bv64), Gamma_R20); + assume {:captureState "%0000026e"} true; R30, Gamma_R30 := 2012bv64, true; call malloc(); - goto l00000271; - l00000271: - assume {:captureState "l00000271"} true; + goto l00000278; + l00000278: + assume {:captureState "l00000278"} true; R20, Gamma_R20 := 131072bv64, true; R20, Gamma_R20 := bvadd64(R20, 96bv64), Gamma_R20; R19, Gamma_R19 := R0, Gamma_R0; @@ -358,52 +356,51 @@ procedure main() call rely(); assert (L(mem, bvadd64(R21, 120bv64)) ==> Gamma_R19); mem, Gamma_mem := memory_store64_le(mem, bvadd64(R21, 120bv64), R19), gamma_store64(Gamma_mem, bvadd64(R21, 120bv64), Gamma_R19); - assume {:captureState "%0000028e"} true; + assume {:captureState "%0000029b"} true; R30, Gamma_R30 := 2036bv64, true; call strlen(); - goto l00000298; - l00000298: - assume {:captureState "l00000298"} true; + goto l000002a5; + l000002a5: + assume {:captureState "l000002a5"} true; R2, Gamma_R2 := R0, Gamma_R0; R1, Gamma_R1 := R20, Gamma_R20; R0, Gamma_R0 := R19, Gamma_R19; R30, Gamma_R30 := 2052bv64, true; call memcpy(); - goto l000002b2; - l000002b2: - assume {:captureState "l000002b2"} true; + goto l000002c5; + l000002c5: + assume {:captureState "l000002c5"} true; R0, Gamma_R0 := R19, Gamma_R19; R30, Gamma_R30 := 2060bv64, true; call puts(); - goto l000002c0; - l000002c0: - assume {:captureState "l000002c0"} true; + goto l000002d5; + l000002d5: + assume {:captureState "l000002d5"} true; call rely(); R19, Gamma_R19 := memory_load64_le(mem, bvadd64(R21, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R21, 120bv64)) || L(mem, bvadd64(R21, 120bv64))); R0, Gamma_R0 := R19, Gamma_R19; R30, Gamma_R30 := 2072bv64, true; call strlen(); - goto l000002d4; - l000002d4: - assume {:captureState "l000002d4"} true; + goto l000002ec; + l000002ec: + assume {:captureState "l000002ec"} true; R1, Gamma_R1 := 1bv64, true; R2, Gamma_R2 := R0, Gamma_R0; R0, Gamma_R0 := R19, Gamma_R19; R30, Gamma_R30 := 2088bv64, true; call memset(); - goto l000002ed; - l000002ed: - assume {:captureState "l000002ed"} true; + goto l0000030b; + l0000030b: + assume {:captureState "l0000030b"} true; call rely(); R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R21, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R21, 120bv64)) || L(mem, bvadd64(R21, 120bv64))); R30, Gamma_R30 := 2096bv64, true; call #free(); - goto l000002fc; - l000002fc: - assume {:captureState "l000002fc"} true; - #3, Gamma_#3 := bvadd64(R31, 16bv64), Gamma_R31; - R19, Gamma_R19 := memory_load64_le(stack, #3), gamma_load64(Gamma_stack, #3); - R20, Gamma_R20 := memory_load64_le(stack, bvadd64(#3, 8bv64)), gamma_load64(Gamma_stack, bvadd64(#3, 8bv64)); + goto l0000031b; + l0000031b: + assume {:captureState "l0000031b"} true; + R19, Gamma_R19 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); + R20, Gamma_R20 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); R0, Gamma_R0 := 0bv64, true; R21, Gamma_R21 := memory_load64_le(stack, bvadd64(R31, 32bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 32bv64)); R29, Gamma_R29 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); @@ -452,7 +449,6 @@ procedure malloc(); free requires (memory_load8_le(mem, 131165bv64) == 0bv8); free requires (memory_load8_le(mem, 131166bv64) == 0bv8); free requires (memory_load8_le(mem, 131167bv64) == 0bv8); - ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); ensures Gamma_R0 == true; ensures malloc_count == old(malloc_count) + 1; ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); @@ -537,7 +533,6 @@ procedure memcpy(); free requires (memory_load8_le(mem, 131165bv64) == 0bv8); free requires (memory_load8_le(mem, 131166bv64) == 0bv8); free requires (memory_load8_le(mem, 131167bv64) == 0bv8); - ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); @@ -769,7 +764,6 @@ procedure strlen(); free requires (memory_load8_le(mem, 131165bv64) == 0bv8); free requires (memory_load8_le(mem, 131166bv64) == 0bv8); free requires (memory_load8_le(mem, 131167bv64) == 0bv8); - ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); ensures Gamma_R0 == true; ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.adt b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.adt index 1e0aa4fea..4ce6993bd 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.adt @@ -1,1189 +1,781 @@ Project(Attrs([Attr("filename","\"a.out\""), -Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch x86_64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 4676 9 4676)\n(code-region 4256 417 4256)\n(code-region 4240 8 4240)\n(code-region 4128 112 4128)\n(code-region 4096 23 4096)\n(code-start 4256)\n(code-start 4496)\n(entry-point 4256)\n(external-reference 16320 __libc_start_main)\n(external-reference 16328 _ITM_deregisterTMCloneTable)\n(external-reference 16336 __gmon_start__)\n(external-reference 16344 _ITM_registerTMCloneTable)\n(external-reference 16352 __cxa_finalize)\n(external-reference 16384 free)\n(external-reference 16392 puts)\n(external-reference 16400 strlen)\n(external-reference 16408 memset)\n(external-reference 16416 memcpy)\n(external-reference 16424 malloc)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry _init 4096 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.2.5 0 0)\n(llvm:code-entry main 4496 177)\n(llvm:code-entry _start 4256 34)\n(llvm:code-entry malloc@GLIBC_2.2.5 0 0)\n(llvm:code-entry memcpy@GLIBC_2.14 0 0)\n(llvm:code-entry memset@GLIBC_2.2.5 0 0)\n(llvm:code-entry strlen@GLIBC_2.2.5 0 0)\n(llvm:code-entry _fini 4676 0)\n(llvm:code-entry puts@GLIBC_2.2.5 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry free@GLIBC_2.2.5 0 0)\n(llvm:code-entry frame_dummy 4480 0)\n(llvm:code-entry __do_global_dtors_aux 4416 0)\n(llvm:code-entry register_tm_clones 4352 0)\n(llvm:code-entry deregister_tm_clones 4304 0)\n(llvm:code-entry .fini 4676 9)\n(llvm:code-entry .text 4256 417)\n(llvm:code-entry .plt.got 4240 8)\n(llvm:code-entry .plt 4128 112)\n(llvm:code-entry .init 4096 23)\n(llvm:elf-program-header 12 11728 560)\n(llvm:elf-program-header 11 0 0)\n(llvm:elf-program-header 10 8196 44)\n(llvm:elf-program-header 09 824 32)\n(llvm:elf-program-header 08 856 68)\n(llvm:elf-program-header 07 824 32)\n(llvm:elf-program-header 06 11744 480)\n(llvm:elf-program-header 05 11728 636)\n(llvm:elf-program-header 04 8192 220)\n(llvm:elf-program-header 03 4096 589)\n(llvm:elf-program-header 02 0 1872)\n(llvm:elf-program-header 01 792 28)\n(llvm:elf-program-header 00 64 728)\n(llvm:elf-program-header-flags 12 false true false false)\n(llvm:elf-program-header-flags 11 false true true false)\n(llvm:elf-program-header-flags 10 false true false false)\n(llvm:elf-program-header-flags 09 false true false false)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true false false)\n(llvm:elf-program-header-flags 06 false true true false)\n(llvm:elf-program-header-flags 05 true true true false)\n(llvm:elf-program-header-flags 04 true true false false)\n(llvm:elf-program-header-flags 03 true true false true)\n(llvm:elf-program-header-flags 02 true true false false)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 12 15824 560)\n(llvm:elf-virtual-program-header 11 0 0)\n(llvm:elf-virtual-program-header 10 8196 44)\n(llvm:elf-virtual-program-header 09 824 32)\n(llvm:elf-virtual-program-header 08 856 68)\n(llvm:elf-virtual-program-header 07 824 32)\n(llvm:elf-virtual-program-header 06 15840 480)\n(llvm:elf-virtual-program-header 05 15824 656)\n(llvm:elf-virtual-program-header 04 8192 220)\n(llvm:elf-virtual-program-header 03 4096 589)\n(llvm:elf-virtual-program-header 02 0 1872)\n(llvm:elf-virtual-program-header 01 792 28)\n(llvm:elf-virtual-program-header 00 64 728)\n(llvm:entry-point 4256)\n(llvm:name-reference 16424 malloc)\n(llvm:name-reference 16416 memcpy)\n(llvm:name-reference 16408 memset)\n(llvm:name-reference 16400 strlen)\n(llvm:name-reference 16392 puts)\n(llvm:name-reference 16384 free)\n(llvm:name-reference 16352 __cxa_finalize)\n(llvm:name-reference 16344 _ITM_registerTMCloneTable)\n(llvm:name-reference 16336 __gmon_start__)\n(llvm:name-reference 16328 _ITM_deregisterTMCloneTable)\n(llvm:name-reference 16320 __libc_start_main)\n(llvm:section-entry .shstrtab 0 282 14101)\n(llvm:section-entry .strtab 0 613 13488)\n(llvm:section-entry .symtab 0 1056 12432)\n(llvm:section-entry .comment 0 63 12364)\n(llvm:section-entry .bss 16464 16 12364)\n(llvm:section-entry .data 16432 28 12336)\n(llvm:section-entry .got.plt 16360 72 12264)\n(llvm:section-entry .got 16320 40 12224)\n(llvm:section-entry .dynamic 15840 480 11744)\n(llvm:section-entry .fini_array 15832 8 11736)\n(llvm:section-entry .init_array 15824 8 11728)\n(llvm:section-entry .eh_frame 8240 172 8240)\n(llvm:section-entry .eh_frame_hdr 8196 44 8196)\n(llvm:section-entry .rodata 8192 4 8192)\n(llvm:section-entry .fini 4676 9 4676)\n(llvm:section-entry .text 4256 417 4256)\n(llvm:section-entry .plt.got 4240 8 4240)\n(llvm:section-entry .plt 4128 112 4128)\n(llvm:section-entry .init 4096 23 4096)\n(llvm:section-entry .rela.plt 1728 144 1728)\n(llvm:section-entry .rela.dyn 1536 192 1536)\n(llvm:section-entry .gnu.version_r 1472 64 1472)\n(llvm:section-entry .gnu.version 1442 24 1442)\n(llvm:section-entry .dynstr 1256 185 1256)\n(llvm:section-entry .dynsym 968 288 968)\n(llvm:section-entry .gnu.hash 928 36 928)\n(llvm:section-entry .note.ABI-tag 892 32 892)\n(llvm:section-entry .note.gnu.build-id 856 36 856)\n(llvm:section-entry .note.gnu.property 824 32 824)\n(llvm:section-entry .interp 792 28 792)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt.got true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .note.gnu.property true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry _init 4096 0 4096 4096)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry main 4496 177 4496 4496)\n(llvm:symbol-entry _start 4256 34 4256 4256)\n(llvm:symbol-entry malloc@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.14 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry _fini 4676 0 4676 4676)\n(llvm:symbol-entry puts@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry free@GLIBC_2.2.5 0 0 0 0)\n(llvm:symbol-entry frame_dummy 4480 0 4480 4480)\n(llvm:symbol-entry __do_global_dtors_aux 4416 0 4416 4416)\n(llvm:symbol-entry register_tm_clones 4352 0 4352 4352)\n(llvm:symbol-entry deregister_tm_clones 4304 0 4304 4304)\n(mapped 0 1872 0)\n(mapped 4096 589 4096)\n(mapped 8192 220 8192)\n(mapped 15824 636 11728)\n(named-region 0 1872 02)\n(named-region 4096 589 03)\n(named-region 8192 220 04)\n(named-region 15824 656 05)\n(named-region 792 28 .interp)\n(named-region 824 32 .note.gnu.property)\n(named-region 856 36 .note.gnu.build-id)\n(named-region 892 32 .note.ABI-tag)\n(named-region 928 36 .gnu.hash)\n(named-region 968 288 .dynsym)\n(named-region 1256 185 .dynstr)\n(named-region 1442 24 .gnu.version)\n(named-region 1472 64 .gnu.version_r)\n(named-region 1536 192 .rela.dyn)\n(named-region 1728 144 .rela.plt)\n(named-region 4096 23 .init)\n(named-region 4128 112 .plt)\n(named-region 4240 8 .plt.got)\n(named-region 4256 417 .text)\n(named-region 4676 9 .fini)\n(named-region 8192 4 .rodata)\n(named-region 8196 44 .eh_frame_hdr)\n(named-region 8240 172 .eh_frame)\n(named-region 15824 8 .init_array)\n(named-region 15832 8 .fini_array)\n(named-region 15840 480 .dynamic)\n(named-region 16320 40 .got)\n(named-region 16360 72 .got.plt)\n(named-region 16432 28 .data)\n(named-region 16464 16 .bss)\n(named-region 0 63 .comment)\n(named-region 0 1056 .symtab)\n(named-region 0 613 .strtab)\n(named-region 0 282 .shstrtab)\n(named-symbol 4304 deregister_tm_clones)\n(named-symbol 4352 register_tm_clones)\n(named-symbol 4416 __do_global_dtors_aux)\n(named-symbol 4480 frame_dummy)\n(named-symbol 0 free@GLIBC_2.2.5)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 puts@GLIBC_2.2.5)\n(named-symbol 4676 _fini)\n(named-symbol 0 strlen@GLIBC_2.2.5)\n(named-symbol 0 memset@GLIBC_2.2.5)\n(named-symbol 0 memcpy@GLIBC_2.14)\n(named-symbol 0 malloc@GLIBC_2.2.5)\n(named-symbol 4256 _start)\n(named-symbol 4496 main)\n(named-symbol 0 __cxa_finalize@GLIBC_2.2.5)\n(named-symbol 4096 _init)\n(named-symbol 0 free)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 puts)\n(named-symbol 0 strlen)\n(named-symbol 0 memset)\n(named-symbol 0 memcpy)\n(named-symbol 0 malloc)\n(named-symbol 0 __cxa_finalize)\n(require libc.so.6)\n(section 792 28)\n(section 824 32)\n(section 856 36)\n(section 892 32)\n(section 928 36)\n(section 968 288)\n(section 1256 185)\n(section 1442 24)\n(section 1472 64)\n(section 1536 192)\n(section 1728 144)\n(section 4096 23)\n(section 4128 112)\n(section 4240 8)\n(section 4256 417)\n(section 4676 9)\n(section 8192 4)\n(section 8196 44)\n(section 8240 172)\n(section 15824 8)\n(section 15832 8)\n(section 15840 480)\n(section 16320 40)\n(section 16360 72)\n(section 16432 28)\n(section 16464 16)\n(section 0 63)\n(section 0 1056)\n(section 0 613)\n(section 0 282)\n(segment 0 1872 true false false)\n(segment 4096 589 true false true)\n(segment 8192 220 true false false)\n(segment 15824 656 true true false)\n(subarch \"\")\n(symbol-chunk 4256 34 4256)\n(symbol-chunk 4496 177 4496)\n(symbol-value 4304 4304)\n(symbol-value 4352 4352)\n(symbol-value 4416 4416)\n(symbol-value 4480 4480)\n(symbol-value 4676 4676)\n(symbol-value 4256 4256)\n(symbol-value 4496 4496)\n(symbol-value 4096 4096)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), -Attr("abi-name","\"x86_64-gnu-elf\"")]), -Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x3e\x00\x01\x00\x00\x00\xa0\x10\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x30\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x0d\x00\x40\x00\x1f\x00\x1e\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x4d\x02\x00\x00\x00\x00\x00\x00\x4d\x02\x00\x00\x00\x00\x00\x00\x00\x10"), -Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x3e\x00\x01\x00\x00\x00\xa0\x10\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x30\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x0d\x00\x40\x00\x1f\x00\x1e\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x4d\x02\x00\x00\x00\x00\x00\x00\x4d\x02\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\xdc\x00\x00\x00\x00\x00\x00\x00\xdc\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xd0\x2d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\x7c\x02\x00\x00\x00\x00\x00\x00\x90\x02\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xe0\x2d\x00\x00\x00\x00\x00\x00\xe0\x3d\x00\x00\x00\x00\x00\x00\xe0\x3d\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x53\xe5\x74\x64\x04\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00"), -Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x3e\x00\x01\x00\x00\x00\xa0\x10\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x30\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x0d\x00\x40\x00\x1f\x00\x1e\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x50\x07\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x4d\x02\x00\x00\x00\x00\x00\x00\x4d\x02\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\xdc\x00\x00\x00\x00\x00\x00\x00\xdc\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xd0\x2d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\x7c\x02\x00\x00\x00\x00\x00\x00\x90\x02\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xe0\x2d\x00\x00\x00\x00\x00\x00\xe0\x3d\x00\x00\x00\x00\x00\x00\xe0\x3d\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x58\x03\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x53\xe5\x74\x64\x04\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x38\x03\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x04\x20\x00\x00\x00\x00\x00\x00\x04\x20\x00\x00\x00\x00\x00\x00\x04\x20\x00\x00\x00\x00\x00\x00\x2c\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xd0\x2d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\x30\x02\x00\x00\x00\x00\x00\x00\x30\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x36\x34\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x78\x38\x36\x2d\x36\x34\x2e\x73\x6f\x2e\x32\x00\x00\x00\x00\x00\x04\x00\x00\x00\x10\x00\x00\x00\x05\x00\x00\x00\x47\x4e\x55\x00\x02\x80\x00\xc0\x04\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x4f\x89\xd4\x0c\x15\x5f\x13\xa2\x95\x91\x94\x1e\x8c\x18\x3b\x1e\xa5\xbd\xe9\x57\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0b\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\x00\x00\x81\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\xd1\x65\xce\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x74\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x3e\x00\x01\x00\x00\x00\xa0\x10\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x30\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x0d\x00\x40\x00\x1f\x00\x1e"), -Section(".interp", 0x318, "\x2f\x6c\x69\x62\x36\x34\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x78\x38\x36\x2d\x36\x34\x2e\x73\x6f\x2e\x32\x00"), -Section(".note.gnu.property", 0x338, "\x04\x00\x00\x00\x10\x00\x00\x00\x05\x00\x00\x00\x47\x4e\x55\x00\x02\x80\x00\xc0\x04\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00"), -Section(".note.gnu.build-id", 0x358, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x4f\x89\xd4\x0c\x15\x5f\x13\xa2\x95\x91\x94\x1e\x8c\x18\x3b\x1e\xa5\xbd\xe9\x57"), -Section(".note.ABI-tag", 0x37C, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00"), -Section(".gnu.hash", 0x3A0, "\x02\x00\x00\x00\x0b\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\x00\x00\x81\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\xd1\x65\xce\x6d"), -Section(".dynsym", 0x3C8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x74\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9f\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynstr", 0x4E8, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x32\x2e\x35\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), -Section(".gnu.version", 0x5A2, "\x00\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x04\x00\x02\x00\x01\x00\x02\x00"), -Section(".gnu.version_r", 0x5C0, "\x01\x00\x03\x00\x48\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x94\x91\x96\x06\x00\x00\x04\x00\x52\x00\x00\x00\x10\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x5d\x00\x00\x00\x10\x00\x00\x00\x75\x1a\x69\x09\x00\x00\x02\x00\x68\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.dyn", 0x600, "\xd0\x3d\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x80\x11\x00\x00\x00\x00\x00\x00\xd8\x3d\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x40\x11\x00\x00\x00\x00\x00\x00\x38\x40\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x38\x40\x00\x00\x00\x00\x00\x00\xc0\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x3f\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.plt", 0x6C0, "\x00\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x40\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".plt", 0x1020, "\xff\x35\xca\x2f\x00\x00\xff\x25\xcc\x2f\x00\x00\x0f\x1f\x40\x00\xff\x25\xca\x2f\x00\x00\x68\x00\x00\x00\x00\xe9\xe0\xff\xff\xff\xff\x25\xc2\x2f\x00\x00\x68\x01\x00\x00\x00\xe9\xd0\xff\xff\xff\xff\x25\xba\x2f\x00\x00\x68\x02\x00\x00\x00\xe9\xc0\xff\xff\xff\xff\x25\xb2\x2f\x00\x00\x68\x03\x00\x00\x00\xe9\xb0\xff\xff\xff\xff\x25\xaa\x2f\x00\x00\x68\x04\x00\x00\x00\xe9\xa0\xff\xff\xff\xff\x25\xa2\x2f\x00\x00\x68\x05\x00\x00\x00\xe9\x90\xff\xff\xff"), -Section(".plt.got", 0x1090, "\xff\x25\x4a\x2f\x00\x00\x66\x90"), -Section(".text", 0x10A0, "\x31\xed\x49\x89\xd1\x5e\x48\x89\xe2\x48\x83\xe4\xf0\x50\x54\x45\x31\xc0\x31\xc9\x48\x8d\x3d\xd5\x00\x00\x00\xff\x15\xff\x2e\x00\x00\xf4\x66\x2e\x0f\x1f\x84\x00\x00\x00\x00\x00\x0f\x1f\x40\x00\x48\x8d\x3d\x79\x2f\x00\x00\x48\x8d\x05\x72\x2f\x00\x00\x48\x39\xf8\x74\x15\x48\x8b\x05\xde\x2e\x00\x00\x48\x85\xc0\x74\x09\xff\xe0\x0f\x1f\x80\x00\x00\x00\x00\xc3\x0f\x1f\x80\x00\x00\x00\x00\x48\x8d\x3d\x49\x2f\x00\x00\x48\x8d\x35\x42\x2f\x00\x00\x48\x29\xfe\x48\x89\xf0\x48\xc1\xee\x3f\x48\xc1\xf8\x03\x48\x01\xc6\x48\xd1\xfe\x74\x14\x48\x8b\x05\xad\x2e\x00\x00\x48\x85\xc0\x74\x08\xff\xe0\x66\x0f\x1f\x44\x00\x00\xc3\x0f\x1f\x80\x00\x00\x00\x00\xf3\x0f\x1e\xfa\x80\x3d\x05\x2f\x00\x00\x00\x75\x2b\x55\x48\x83\x3d\x8a\x2e\x00\x00\x00\x48\x89\xe5\x74\x0c\x48\x8b\x3d\xd6\x2e\x00\x00\xe8\x29\xff\xff\xff\xe8\x64\xff\xff\xff\xc6\x05\xdd\x2e\x00\x00\x01\x5d\xc3\x0f\x1f\x00\xc3\x0f\x1f\x80\x00\x00\x00\x00\xf3\x0f\x1e\xfa\xe9\x77\xff\xff\xff\x0f\x1f\x80\x00\x00\x00\x00\x55\x48\x89\xe5\x48\x83\xec\x20\x48\xc7\x45\xf8\x00\x00\x00\x00\x48\xc7\x45\xf0\x00\x00\x00\x00\xbf\x0b\x00\x00\x00\xe8\xce\xfe\xff\xff\x48\x89\x05\x9f\x2e\x00\x00\x48\x8b\x05\x98\x2e\x00\x00\x48\x89\x45\xe0\x48\x8d\x3d\x76\x2e\x00\x00\xe8\x80\xfe\xff\xff\x48\x8b\x7d\xe0\x48\x89\xc2\x48\x8d\x35\x63\x2e\x00\x00\xe8\x8d\xfe\xff\xff\x48\x8b\x3d\x6e\x2e\x00\x00\xe8\x51\xfe\xff\xff\x48\x8b\x05\x62\x2e\x00\x00\x48\x83\xc0\x04\x48\x89\x45\xf8\x48\x8b\x45\xf8\xc6\x00\x00\x48\x8b\x05\x4c\x2e\x00\x00\x48\x89\x45\xe8\x48\x8b\x3d\x41\x2e\x00\x00\xe8\x34\xfe\xff\xff\x48\x8b\x7d\xe8\x48\x89\xc2\xbe\x01\x00\x00\x00\xe8\x33\xfe\xff\xff\x48\x8b\x3d\x24\x2e\x00\x00\xe8\xf7\xfd\xff\xff\x31\xc0\x48\x83\xc4\x20\x5d\xc3"), -Section(".init", 0x1000, "\x48\x83\xec\x08\x48\x8b\x05\xc5\x2f\x00\x00\x48\x85\xc0\x74\x02\xff\xd0\x48\x83\xc4\x08\xc3"), -Section(".fini", 0x1244, "\x48\x83\xec\x08\x48\x83\xc4\x08\xc3"), -Section(".eh_frame_hdr", 0x2004, "\x01\x1b\x03\x3b\x28\x00\x00\x00\x04\x00\x00\x00\x1c\xf0\xff\xff\x74\x00\x00\x00\x8c\xf0\xff\xff\x9c\x00\x00\x00\x9c\xf0\xff\xff\x44\x00\x00\x00\x8c\xf1\xff\xff\xb4\x00\x00\x00"), -Section(".eh_frame", 0x2030, "\x14\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x78\x10\x01\x1b\x0c\x07\x08\x90\x01\x07\x10\x14\x00\x00\x00\x1c\x00\x00\x00\x50\xf0\xff\xff\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x78\x10\x01\x1b\x0c\x07\x08\x90\x01\x00\x00\x24\x00\x00\x00\x1c\x00\x00\x00\xa0\xef\xff\xff\x70\x00\x00\x00\x00\x0e\x10\x46\x0e\x18\x4a\x0f\x0b\x77\x08\x80\x00\x3f\x1a\x3b\x2a\x33\x24\x22\x00\x00\x00\x00\x14\x00\x00\x00\x44\x00\x00\x00\xe8\xef\xff\xff\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x5c\x00\x00\x00\xd0\xf0\xff\xff\xb1\x00\x00\x00\x00\x41\x0e\x10\x86\x02\x43\x0d\x06\x02\xac\x0c\x07\x08\x00\x00\x00\x00\x00\x00"), -Section(".rodata", 0x2000, "\x01\x00\x02\x00"), -Section(".fini_array", 0x3DD8, "\x40\x11\x00\x00\x00\x00\x00\x00"), -Section(".dynamic", 0x3DE0, "\x01\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x44\x12\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xd0\x3d\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xd8\x3d\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xa0\x03\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\xe8\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xc8\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb9\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\x3f\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\xc0\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xc0\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xa2\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init_array", 0x3DD0, "\x80\x11\x00\x00\x00\x00\x00\x00"), -Section(".got", 0x3FC0, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".got.plt", 0x3FE8, "\xe0\x3d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x36\x10\x00\x00\x00\x00\x00\x00\x46\x10\x00\x00\x00\x00\x00\x00\x56\x10\x00\x00\x00\x00\x00\x00\x66\x10\x00\x00\x00\x00\x00\x00\x76\x10\x00\x00\x00\x00\x00\x00\x86\x10\x00\x00\x00\x00\x00\x00"), -Section(".data", 0x4030, "\x00\x00\x00\x00\x00\x00\x00\x00\x38\x40\x00\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00")]), -Memmap([Annotation(Region(0x0,0x74F), Attr("segment","02 0 1872")), -Annotation(Region(0x0,0x119), Attr("section","\".shstrtab\"")), -Annotation(Region(0x0,0x264), Attr("section","\".strtab\"")), -Annotation(Region(0x0,0x41F), Attr("section","\".symtab\"")), -Annotation(Region(0x0,0x3E), Attr("section","\".comment\"")), -Annotation(Region(0x318,0x333), Attr("section","\".interp\"")), -Annotation(Region(0x338,0x357), Attr("section","\".note.gnu.property\"")), -Annotation(Region(0x358,0x37B), Attr("section","\".note.gnu.build-id\"")), -Annotation(Region(0x37C,0x39B), Attr("section","\".note.ABI-tag\"")), -Annotation(Region(0x3A0,0x3C3), Attr("section","\".gnu.hash\"")), -Annotation(Region(0x3C8,0x4E7), Attr("section","\".dynsym\"")), -Annotation(Region(0x4E8,0x5A0), Attr("section","\".dynstr\"")), -Annotation(Region(0x5A2,0x5B9), Attr("section","\".gnu.version\"")), -Annotation(Region(0x5C0,0x5FF), Attr("section","\".gnu.version_r\"")), -Annotation(Region(0x600,0x6BF), Attr("section","\".rela.dyn\"")), -Annotation(Region(0x6C0,0x74F), Attr("section","\".rela.plt\"")), -Annotation(Region(0x1000,0x124C), Attr("segment","03 0x1000 589")), -Annotation(Region(0x1020,0x108F), Attr("section","\".plt\"")), -Annotation(Region(0x1090,0x1097), Attr("section","\".plt.got\"")), -Annotation(Region(0x1090,0x1097), Attr("code-region","()")), -Annotation(Region(0x10A0,0x10C1), Attr("symbol","\"_start\"")), -Annotation(Region(0x10A0,0x10C1), Attr("symbol-info","_start 0x10A0 34")), -Annotation(Region(0x10A0,0x1240), Attr("section","\".text\"")), -Annotation(Region(0x1190,0x1240), Attr("symbol","\"main\"")), -Annotation(Region(0x1000,0x1016), Attr("section","\".init\"")), -Annotation(Region(0x1000,0x1016), Attr("code-region","()")), -Annotation(Region(0x1020,0x108F), Attr("code-region","()")), -Annotation(Region(0x10A0,0x1240), Attr("code-region","()")), -Annotation(Region(0x1190,0x1240), Attr("symbol-info","main 0x1190 177")), -Annotation(Region(0x1244,0x124C), Attr("section","\".fini\"")), -Annotation(Region(0x1244,0x124C), Attr("code-region","()")), -Annotation(Region(0x2000,0x20DB), Attr("segment","04 0x2000 220")), -Annotation(Region(0x2004,0x202F), Attr("section","\".eh_frame_hdr\"")), -Annotation(Region(0x2030,0x20DB), Attr("section","\".eh_frame\"")), -Annotation(Region(0x2000,0x2003), Attr("section","\".rodata\"")), -Annotation(Region(0x3DD0,0x404B), Attr("segment","05 0x3DD0 656")), -Annotation(Region(0x3DD8,0x3DDF), Attr("section","\".fini_array\"")), -Annotation(Region(0x3DE0,0x3FBF), Attr("section","\".dynamic\"")), -Annotation(Region(0x3DD0,0x3DD7), Attr("section","\".init_array\"")), -Annotation(Region(0x3FC0,0x3FE7), Attr("section","\".got\"")), -Annotation(Region(0x3FE8,0x402F), Attr("section","\".got.plt\"")), -Annotation(Region(0x4030,0x404B), Attr("section","\".data\""))]), -Program(Tid(2_916, "%00000b64"), Attrs([]), - Subs([Sub(Tid(2_892, "@__cxa_finalize"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1090"), -Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_917, "%00000b65"), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2500 20 2500)\n(code-region 2048 452 2048)\n(code-region 1856 192 1856)\n(code-region 1832 24 1832)\n(code-start 2100)\n(code-start 2048)\n(code-start 2324)\n(entry-point 2048)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1832 0)\n(llvm:code-entry main 2324 176)\n(llvm:code-entry _start 2048 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2500 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2320 0)\n(llvm:code-entry __do_global_dtors_aux 2240 0)\n(llvm:code-entry register_tm_clones 2176 0)\n(llvm:code-entry deregister_tm_clones 2128 0)\n(llvm:code-entry call_weak_fn 2100 20)\n(llvm:code-entry .fini 2500 20)\n(llvm:code-entry .text 2048 452)\n(llvm:code-entry .plt 1856 192)\n(llvm:code-entry .init 1832 24)\n(llvm:elf-program-header 08 64952 584)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2524 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64968 496)\n(llvm:elf-program-header 03 64952 692)\n(llvm:elf-program-header 02 0 2784)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130488 584)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2524 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130504 496)\n(llvm:elf-virtual-program-header 03 130488 712)\n(llvm:elf-virtual-program-header 02 0 2784)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2048)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68820)\n(llvm:section-entry .strtab 0 716 68104)\n(llvm:section-entry .symtab 0 2400 65704)\n(llvm:section-entry .comment 0 58 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130504 496 64968)\n(llvm:section-entry .fini_array 130496 8 64960)\n(llvm:section-entry .init_array 130488 8 64952)\n(llvm:section-entry .eh_frame 2584 200 2584)\n(llvm:section-entry .eh_frame_hdr 2524 60 2524)\n(llvm:section-entry .rodata 2520 4 2520)\n(llvm:section-entry .fini 2500 20 2500)\n(llvm:section-entry .text 2048 452 2048)\n(llvm:section-entry .plt 1856 192 1856)\n(llvm:section-entry .init 1832 24 1832)\n(llvm:section-entry .rela.plt 1592 240 1592)\n(llvm:section-entry .rela.dyn 1400 192 1400)\n(llvm:section-entry .gnu.version_r 1352 48 1352)\n(llvm:section-entry .gnu.version 1316 30 1316)\n(llvm:section-entry .dynstr 1136 179 1136)\n(llvm:section-entry .dynsym 776 360 776)\n(llvm:section-entry .gnu.hash 744 28 744)\n(llvm:section-entry .hash 664 80 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1832 0 1832 1832)\n(llvm:symbol-entry main 2324 176 2324 2324)\n(llvm:symbol-entry _start 2048 52 2048 2048)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2500 0 2500 2500)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2320 0 2320 2320)\n(llvm:symbol-entry __do_global_dtors_aux 2240 0 2240 2240)\n(llvm:symbol-entry register_tm_clones 2176 0 2176 2176)\n(llvm:symbol-entry deregister_tm_clones 2128 0 2128 2128)\n(llvm:symbol-entry call_weak_fn 2100 20 2100 2100)\n(mapped 0 2784 0)\n(mapped 130488 692 64952)\n(named-region 0 2784 02)\n(named-region 130488 712 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 80 .hash)\n(named-region 744 28 .gnu.hash)\n(named-region 776 360 .dynsym)\n(named-region 1136 179 .dynstr)\n(named-region 1316 30 .gnu.version)\n(named-region 1352 48 .gnu.version_r)\n(named-region 1400 192 .rela.dyn)\n(named-region 1592 240 .rela.plt)\n(named-region 1832 24 .init)\n(named-region 1856 192 .plt)\n(named-region 2048 452 .text)\n(named-region 2500 20 .fini)\n(named-region 2520 4 .rodata)\n(named-region 2524 60 .eh_frame_hdr)\n(named-region 2584 200 .eh_frame)\n(named-region 130488 8 .init_array)\n(named-region 130496 8 .fini_array)\n(named-region 130504 496 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 58 .comment)\n(named-region 0 2400 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2100 call_weak_fn)\n(named-symbol 2128 deregister_tm_clones)\n(named-symbol 2176 register_tm_clones)\n(named-symbol 2240 __do_global_dtors_aux)\n(named-symbol 2320 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2500 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2048 _start)\n(named-symbol 2324 main)\n(named-symbol 1832 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 80)\n(section 744 28)\n(section 776 360)\n(section 1136 179)\n(section 1316 30)\n(section 1352 48)\n(section 1400 192)\n(section 1592 240)\n(section 1832 24)\n(section 1856 192)\n(section 2048 452)\n(section 2500 20)\n(section 2520 4)\n(section 2524 60)\n(section 2584 200)\n(section 130488 8)\n(section 130496 8)\n(section 130504 496)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 58)\n(section 0 2400)\n(section 0 716)\n(section 0 259)\n(segment 0 2784 true false true)\n(segment 130488 712 true true false)\n(subarch v8)\n(symbol-chunk 2100 20 2100)\n(symbol-chunk 2048 52 2048)\n(symbol-chunk 2324 176 2324)\n(symbol-value 2100 2100)\n(symbol-value 2128 2128)\n(symbol-value 2176 2176)\n(symbol-value 2240 2240)\n(symbol-value 2320 2320)\n(symbol-value 2500 2500)\n(symbol-value 2048 2048)\n(symbol-value 2324 2324)\n(symbol-value 1832 1832)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x77\x62\xd4\x19\x46\x52\xb8\x44\xad\xf7\xd2\x88\x8a\x63\x49\x80\x74\x2d\x71\xad\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x77\x62\xd4\x19\x46\x52\xb8\x44\xad\xf7\xd2\x88\x8a\x63\x49\x80\x74\x2d\x71\xad\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x9d\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x88\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00"), +Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x77\x62\xd4\x19\x46\x52\xb8\x44\xad\xf7\xd2\x88\x8a\x63\x49\x80\x74\x2d\x71\xad"), +Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), +Section(".hash", 0x298, "\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00"), +Section(".gnu.hash", 0x2E8, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x308, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x470, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x524, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x548, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x578, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x638, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x728, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x740, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0x9C4, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0x9D8, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0x9DC, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x24\xfe\xff\xff\x50\x00\x00\x00\x74\xfe\xff\xff\x64\x00\x00\x00\xa4\xfe\xff\xff\x78\x00\x00\x00\xe4\xfe\xff\xff\x8c\x00\x00\x00\x34\xff\xff\xff\xb0\x00\x00\x00\x38\xff\xff\xff\xd8\x00\x00\x00"), +Section(".eh_frame", 0xA18, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xcc\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x08\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x24\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x50\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x7c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x58\xfe\xff\xff\xb0\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\x98\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDC0, "\xc0\x08\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDC8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x28\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xc4\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x70\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x38\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x78\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\x48\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\x24\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDB8, "\x10\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFB8, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00"), +Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), +Section(".text", 0x800, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x9d\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x88\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x80\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x9d\xff\xff\x97\xe8\x0f\x40\xf9\x09\x3d\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\xa9\x83\x5f\xf8\x3f\x01\x00\x39\x09\x3d\x40\xf9\xe9\x0b\x00\xf9\x00\x3d\x40\xf9\x77\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x83\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x90\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xADF), Attr("segment","02 0 2784")), +Annotation(Region(0x800,0x833), Attr("symbol","\"_start\"")), +Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), +Annotation(Region(0x0,0x2CB), Attr("section","\".strtab\"")), +Annotation(Region(0x0,0x95F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x39), Attr("section","\".comment\"")), +Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), +Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), +Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), +Annotation(Region(0x298,0x2E7), Attr("section","\".hash\"")), +Annotation(Region(0x2E8,0x303), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x308,0x46F), Attr("section","\".dynsym\"")), +Annotation(Region(0x470,0x522), Attr("section","\".dynstr\"")), +Annotation(Region(0x524,0x541), Attr("section","\".gnu.version\"")), +Annotation(Region(0x548,0x577), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x578,0x637), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x638,0x727), Attr("section","\".rela.plt\"")), +Annotation(Region(0x728,0x73F), Attr("section","\".init\"")), +Annotation(Region(0x740,0x7FF), Attr("section","\".plt\"")), +Annotation(Region(0x728,0x73F), Attr("code-region","()")), +Annotation(Region(0x740,0x7FF), Attr("code-region","()")), +Annotation(Region(0x800,0x833), Attr("symbol-info","_start 0x800 52")), +Annotation(Region(0x834,0x847), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x834,0x847), Attr("symbol-info","call_weak_fn 0x834 20")), +Annotation(Region(0x914,0x9C3), Attr("symbol","\"main\"")), +Annotation(Region(0x914,0x9C3), Attr("symbol-info","main 0x914 176")), +Annotation(Region(0x9C4,0x9D7), Attr("section","\".fini\"")), +Annotation(Region(0x9D8,0x9DB), Attr("section","\".rodata\"")), +Annotation(Region(0x9DC,0xA17), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0xA18,0xADF), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDB8,0x2006B), Attr("segment","03 0x1FDB8 712")), +Annotation(Region(0x1FDC0,0x1FDC7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDC8,0x1FFB7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDB8,0x1FDBF), Attr("section","\".init_array\"")), +Annotation(Region(0x1FFB8,0x1FFE7), Attr("section","\".got\"")), +Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), +Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), +Annotation(Region(0x800,0x9C3), Attr("section","\".text\"")), +Annotation(Region(0x800,0x9C3), Attr("code-region","()")), +Annotation(Region(0x9C4,0x9D7), Attr("code-region","()"))]), +Program(Tid(2_361, "%00000939"), Attrs([]), + Subs([Sub(Tid(2_290, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x790"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_362, "%0000093a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(2_181, "@__cxa_finalize"), Attrs([Attr("address","0x1090")]), - Phis([]), Defs([]), Jmps([Call(Tid(2_889, "%00000b49"), - Attrs([Attr("address","0x1090"), Attr("insn","jmpq *0x2f4a(%rip)")]), - Int(1,1), (Direct(Tid(2_887, "@__cxa_finalize:external")),))]))])), -Sub(Tid(2_893, "@__do_global_dtors_aux"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1140")]), - "__do_global_dtors_aux", Args([Arg(Tid(2_918, "%00000b66"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_323, "@__cxa_finalize"), + Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_743, "%000006cf"), Attrs([Attr("address","0x790"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_751, "%000006d7"), Attrs([Attr("address","0x794"), +Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_758, "%000006de"), Attrs([Attr("address","0x798"), +Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_763, "%000006e3"), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_291, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_363, "%0000093b"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(1_300, "@__do_global_dtors_aux"), - Attrs([Attr("address","0x1140")]), Phis([]), -Defs([Def(Tid(1_324, "%0000052c"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("#12582884",Imm(8)), -Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8)), -Def(Tid(1_328, "%00000530"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("CF",Imm(1)), -LT(Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8),Int(0,8))), -Def(Tid(1_334, "%00000536"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("OF",Imm(1)), -HIGH(1,AND(Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8),XOR(Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8),Var("#12582884",Imm(8)))))), -Def(Tid(1_339, "%0000053b"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("AF",Imm(1)), -EQ(Int(16,8),AND(Int(16,8),XOR(Var("#12582884",Imm(8)),Load(Var("mem",Mem(64,8)),Int(16464,64),LittleEndian(),8))))), -Def(Tid(1_344, "%00000540"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(8)),XOR(RSHIFT(Var("#12582884",Imm(8)),Int(4,8)),Var("#12582884",Imm(8))),Let(Var("$1",Imm(8)),XOR(RSHIFT(Var("$0",Imm(8)),Int(2,8)),Var("$0",Imm(8))),XOR(RSHIFT(Var("$1",Imm(8)),Int(1,8)),Var("$1",Imm(8)))))))), -Def(Tid(1_348, "%00000544"), Attrs([Attr("address","0x1144"), -Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582884",Imm(8)))), Def(Tid(1_352, "%00000548"), - Attrs([Attr("address","0x1144"), Attr("insn","cmpb $0x0, 0x2f05(%rip)")]), - Var("ZF",Imm(1)), EQ(Int(0,8),Var("#12582884",Imm(8))))]), -Jmps([Goto(Tid(1_359, "%0000054f"), Attrs([Attr("address","0x114B"), -Attr("insn","jne 0x2b")]), NOT(Var("ZF",Imm(1))), -Direct(Tid(1_356, "%0000054c"))), Goto(Tid(2_894, "%00000b4e"), Attrs([]), - Int(1,1), Direct(Tid(2_008, "%000007d8")))])), Blk(Tid(1_356, "%0000054c"), - Attrs([Attr("address","0x1178")]), Phis([]), -Defs([Def(Tid(1_373, "%0000055d"), Attrs([Attr("address","0x1178"), -Attr("insn","retq")]), Var("#12582882",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(1_377, "%00000561"), Attrs([Attr("address","0x1178"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_380, "%00000564"), - Attrs([Attr("address","0x1178"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582882",Imm(64))),))])), Blk(Tid(2_008, "%000007d8"), - Attrs([Attr("address","0x114D")]), Phis([]), -Defs([Def(Tid(2_020, "%000007e4"), Attrs([Attr("address","0x114D"), -Attr("insn","pushq %rbp")]), Var("#12582870",Imm(64)), Var("RBP",Imm(64))), -Def(Tid(2_024, "%000007e8"), Attrs([Attr("address","0x114D"), -Attr("insn","pushq %rbp")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_030, "%000007ee"), - Attrs([Attr("address","0x114D"), Attr("insn","pushq %rbp")]), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(802, "@__do_global_dtors_aux"), + Attrs([Attr("address","0x8C0")]), Phis([]), Defs([Def(Tid(809, "%00000329"), + Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), +Def(Tid(814, "%0000032e"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(819, "%00000333"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(823, "%00000337"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), +Var("#34",Imm(64))), Def(Tid(830, "%0000033e"), + Attrs([Attr("address","0x8C4"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(838, "%00000346"), + Attrs([Attr("address","0x8C8"), Attr("insn","str x19, [sp, #0x10]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582870",Imm(64)),LittleEndian(),64)), -Def(Tid(2_054, "%00000806"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("#12582869",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64)), -Def(Tid(2_058, "%0000080a"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("CF",Imm(1)), -LT(Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64),Int(0,64))), -Def(Tid(2_064, "%00000810"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("OF",Imm(1)), -HIGH(1,AND(Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64),XOR(Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64),Var("#12582869",Imm(64)))))), -Def(Tid(2_069, "%00000815"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(Var("#12582869",Imm(64)),Load(Var("mem",Mem(64,8)),Int(16352,64),LittleEndian(),64))))), -Def(Tid(2_074, "%0000081a"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582869",Imm(64)),Int(4,64)),Var("#12582869",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_078, "%0000081e"), Attrs([Attr("address","0x114E"), -Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582869",Imm(64)))), Def(Tid(2_082, "%00000822"), - Attrs([Attr("address","0x114E"), Attr("insn","cmpq $0x0, 0x2e8a(%rip)")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582869",Imm(64)))), -Def(Tid(2_090, "%0000082a"), Attrs([Attr("address","0x1156"), -Attr("insn","movq %rsp, %rbp")]), Var("RBP",Imm(64)), Var("RSP",Imm(64)))]), -Jmps([Goto(Tid(2_097, "%00000831"), Attrs([Attr("address","0x1159"), -Attr("insn","je 0xc")]), Var("ZF",Imm(1)), Direct(Tid(2_094, "%0000082e"))), -Goto(Tid(2_895, "%00000b4f"), Attrs([]), Int(1,1), -Direct(Tid(2_167, "%00000877")))])), Blk(Tid(2_167, "%00000877"), - Attrs([Attr("address","0x115B")]), Phis([]), -Defs([Def(Tid(2_173, "%0000087d"), Attrs([Attr("address","0x115B"), -Attr("insn","movq 0x2ed6(%rip), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16440,64),LittleEndian(),64)), -Def(Tid(2_185, "%00000889"), Attrs([Attr("address","0x1162"), -Attr("insn","callq -0xd7")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_190, "%0000088e"), - Attrs([Attr("address","0x1162"), Attr("insn","callq -0xd7")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4455,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_192, "%00000890"), Attrs([Attr("address","0x1162"), -Attr("insn","callq -0xd7")]), Int(1,1), -(Direct(Tid(2_892, "@__cxa_finalize")),Direct(Tid(2_094, "%0000082e"))))])), -Blk(Tid(2_094, "%0000082e"), Attrs([Attr("address","0x1167")]), Phis([]), -Defs([Def(Tid(2_109, "%0000083d"), Attrs([Attr("address","0x1167"), -Attr("insn","callq -0x9c")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_114, "%00000842"), - Attrs([Attr("address","0x1167"), Attr("insn","callq -0x9c")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4460,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_116, "%00000844"), Attrs([Attr("address","0x1167"), -Attr("insn","callq -0x9c")]), Int(1,1), -(Direct(Tid(2_901, "@deregister_tm_clones")),Direct(Tid(2_118, "%00000846"))))])), -Blk(Tid(2_118, "%00000846"), Attrs([Attr("address","0x116C")]), Phis([]), -Defs([Def(Tid(2_124, "%0000084c"), Attrs([Attr("address","0x116C"), -Attr("insn","movb $0x1, 0x2edd(%rip)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Int(16464,64),Int(1,8),LittleEndian(),8)), -Def(Tid(2_136, "%00000858"), Attrs([Attr("address","0x1173"), -Attr("insn","popq %rbp")]), Var("RBP",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(2_140, "%0000085c"), Attrs([Attr("address","0x1173"), -Attr("insn","popq %rbp")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_153, "%00000869"), - Attrs([Attr("address","0x1174"), Attr("insn","retq")]), - Var("#12582867",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(2_157, "%0000086d"), Attrs([Attr("address","0x1174"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(2_160, "%00000870"), - Attrs([Attr("address","0x1174"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582867",Imm(64))),))]))])), Sub(Tid(2_896, "@_fini"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1244")]), - "_fini", Args([Arg(Tid(2_919, "%00000b67"), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), +Def(Tid(844, "%0000034c"), Attrs([Attr("address","0x8CC"), +Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), +Def(Tid(853, "%00000355"), Attrs([Attr("address","0x8D0"), +Attr("insn","ldrb w0, [x19, #0x70]")]), Var("R0",Imm(64)), +UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),BigEndian(),8))), +Def(Tid(865, "%00000361"), Attrs([Attr("address","0x8D4"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), +Jmps([Goto(Tid(859, "%0000035b"), Attrs([Attr("address","0x8D4"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +Direct(Tid(857, "%00000359"))), Goto(Tid(2_351, "%0000092f"), Attrs([]), + Int(1,1), Direct(Tid(1_257, "%000004e9")))])), Blk(Tid(1_257, "%000004e9"), + Attrs([Attr("address","0x8D8")]), Phis([]), +Defs([Def(Tid(1_261, "%000004ed"), Attrs([Attr("address","0x8D8"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_269, "%000004f5"), Attrs([Attr("address","0x8DC"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_281, "%00000501"), Attrs([Attr("address","0x8E0"), +Attr("insn","cbz x0, #0x10")]), Var("#67",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_275, "%000004fb"), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), + Var("#67",Imm(1)), Direct(Tid(1_273, "%000004f9"))), +Goto(Tid(2_352, "%00000930"), Attrs([]), Int(1,1), +Direct(Tid(1_305, "%00000519")))])), Blk(Tid(1_305, "%00000519"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_309, "%0000051d"), Attrs([Attr("address","0x8E4"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_317, "%00000525"), Attrs([Attr("address","0x8E8"), +Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), +Def(Tid(1_322, "%0000052a"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Var("R30",Imm(64)), Int(2288,64))]), +Jmps([Call(Tid(1_325, "%0000052d"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Int(1,1), +(Direct(Tid(2_290, "@__cxa_finalize")),Direct(Tid(1_273, "%000004f9"))))])), +Blk(Tid(1_273, "%000004f9"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_286, "%00000506"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2292,64))]), +Jmps([Call(Tid(1_288, "%00000508"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Int(1,1), +(Direct(Tid(2_304, "@deregister_tm_clones")),Direct(Tid(1_290, "%0000050a"))))])), +Blk(Tid(1_290, "%0000050a"), Attrs([Attr("address","0x8F4")]), Phis([]), +Defs([Def(Tid(1_295, "%0000050f"), Attrs([Attr("address","0x8F4"), +Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), +Def(Tid(1_303, "%00000517"), Attrs([Attr("address","0x8F8"), +Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), +Jmps([Goto(Tid(2_353, "%00000931"), Attrs([]), Int(1,1), +Direct(Tid(857, "%00000359")))])), Blk(Tid(857, "%00000359"), + Attrs([Attr("address","0x8FC")]), Phis([]), Defs([Def(Tid(873, "%00000369"), + Attrs([Attr("address","0x8FC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(883, "%00000373"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(887, "%00000377"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(890, "%0000037a"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(895, "%0000037f"), + Attrs([Attr("address","0x904"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_295, "@__libc_start_main"), + Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), +Attr("address","0x780"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_364, "%0000093c"), + Attrs([Attr("c.layout","**[ : 64]"), +Attr("c.data","Top:u64 ptr ptr"), +Attr("c.type","signed (*)(signed , char** , char** );*")]), + Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_365, "%0000093d"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), +Arg(Tid(2_366, "%0000093e"), Attrs([Attr("c.layout","**[char : 8]"), +Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), + Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), +Arg(Tid(2_367, "%0000093f"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), +Arg(Tid(2_368, "%00000940"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), +Out())]), Blks([Blk(Tid(614, "@__libc_start_main"), + Attrs([Attr("address","0x780")]), Phis([]), +Defs([Def(Tid(1_718, "%000006b6"), Attrs([Attr("address","0x780"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_726, "%000006be"), Attrs([Attr("address","0x784"), +Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_733, "%000006c5"), Attrs([Attr("address","0x788"), +Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_738, "%000006ca"), + Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_296, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9C4")]), + "_fini", Args([Arg(Tid(2_369, "%00000941"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(21, "@_fini"), - Attrs([Attr("address","0x1244")]), Phis([]), Defs([Def(Tid(56, "%00000038"), - Attrs([Attr("address","0x1244"), Attr("insn","subq $0x8, %rsp")]), - Var("#12582911",Imm(64)), Var("RSP",Imm(64))), Def(Tid(60, "%0000003c"), - Attrs([Attr("address","0x1244"), Attr("insn","subq $0x8, %rsp")]), - Var("RSP",Imm(64)), MINUS(Var("RSP",Imm(64)),Int(8,64))), -Def(Tid(64, "%00000040"), Attrs([Attr("address","0x1244"), -Attr("insn","subq $0x8, %rsp")]), Var("CF",Imm(1)), -LT(Var("#12582911",Imm(64)),Int(8,64))), Def(Tid(70, "%00000046"), - Attrs([Attr("address","0x1244"), Attr("insn","subq $0x8, %rsp")]), - Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("#12582911",Imm(64)),Int(8,64)),XOR(Var("#12582911",Imm(64)),Var("RSP",Imm(64)))))), -Def(Tid(75, "%0000004b"), Attrs([Attr("address","0x1244"), -Attr("insn","subq $0x8, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582911",Imm(64))),Int(8,64))))), -Def(Tid(80, "%00000050"), Attrs([Attr("address","0x1244"), -Attr("insn","subq $0x8, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(84, "%00000054"), Attrs([Attr("address","0x1244"), -Attr("insn","subq $0x8, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(88, "%00000058"), - Attrs([Attr("address","0x1244"), Attr("insn","subq $0x8, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(117, "%00000075"), Attrs([Attr("address","0x1248"), -Attr("insn","addq $0x8, %rsp")]), Var("#12582908",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(121, "%00000079"), - Attrs([Attr("address","0x1248"), Attr("insn","addq $0x8, %rsp")]), - Var("RSP",Imm(64)), PLUS(Var("RSP",Imm(64)),Int(8,64))), -Def(Tid(126, "%0000007e"), Attrs([Attr("address","0x1248"), -Attr("insn","addq $0x8, %rsp")]), Var("CF",Imm(1)), -LT(Var("RSP",Imm(64)),Var("#12582908",Imm(64)))), Def(Tid(134, "%00000086"), - Attrs([Attr("address","0x1248"), Attr("insn","addq $0x8, %rsp")]), - Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582908",Imm(64))),Int(0,1)),AND(OR(HIGH(1,Var("#12582908",Imm(64))),HIGH(1,Var("RSP",Imm(64)))),NOT(AND(HIGH(1,Var("#12582908",Imm(64))),HIGH(1,Var("RSP",Imm(64)))))))), -Def(Tid(139, "%0000008b"), Attrs([Attr("address","0x1248"), -Attr("insn","addq $0x8, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582908",Imm(64))),Int(8,64))))), -Def(Tid(144, "%00000090"), Attrs([Attr("address","0x1248"), -Attr("insn","addq $0x8, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(148, "%00000094"), Attrs([Attr("address","0x1248"), -Attr("insn","addq $0x8, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(152, "%00000098"), - Attrs([Attr("address","0x1248"), Attr("insn","addq $0x8, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(165, "%000000a5"), Attrs([Attr("address","0x124C"), -Attr("insn","retq")]), Var("#12582905",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(169, "%000000a9"), Attrs([Attr("address","0x124C"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(172, "%000000ac"), - Attrs([Attr("address","0x124C"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582905",Imm(64))),))]))])), Sub(Tid(2_897, "@_init"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1000")]), - "_init", Args([Arg(Tid(2_920, "%00000b68"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), + Attrs([Attr("address","0x9C4")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0x9C8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x9C8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0x9C8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0x9C8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9CC"), +Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9D0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9D0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9D0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), + Attrs([Attr("address","0x9D4"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_297, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x728")]), + "_init", Args([Arg(Tid(2_370, "%00000942"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(2_652, "@_init"), - Attrs([Attr("address","0x1000")]), Phis([]), -Defs([Def(Tid(2_676, "%00000a74"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("#12582855",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(2_680, "%00000a78"), - Attrs([Attr("address","0x1000"), Attr("insn","subq $0x8, %rsp")]), - Var("RSP",Imm(64)), MINUS(Var("RSP",Imm(64)),Int(8,64))), -Def(Tid(2_684, "%00000a7c"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("CF",Imm(1)), -LT(Var("#12582855",Imm(64)),Int(8,64))), Def(Tid(2_690, "%00000a82"), - Attrs([Attr("address","0x1000"), Attr("insn","subq $0x8, %rsp")]), - Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("#12582855",Imm(64)),Int(8,64)),XOR(Var("#12582855",Imm(64)),Var("RSP",Imm(64)))))), -Def(Tid(2_695, "%00000a87"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582855",Imm(64))),Int(8,64))))), -Def(Tid(2_700, "%00000a8c"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_704, "%00000a90"), Attrs([Attr("address","0x1000"), -Attr("insn","subq $0x8, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(2_708, "%00000a94"), - Attrs([Attr("address","0x1000"), Attr("insn","subq $0x8, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(2_716, "%00000a9c"), Attrs([Attr("address","0x1004"), -Attr("insn","movq 0x2fc5(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16336,64),LittleEndian(),64)), -Def(Tid(2_734, "%00000aae"), Attrs([Attr("address","0x100B"), -Attr("insn","testq %rax, %rax")]), Var("#12582852",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(2_737, "%00000ab1"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("OF",Imm(1)), Int(0,1)), Def(Tid(2_740, "%00000ab4"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("CF",Imm(1)), Int(0,1)), Def(Tid(2_743, "%00000ab7"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("AF",Imm(1)), Unknown("bits",Imm(1))), Def(Tid(2_748, "%00000abc"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582852",Imm(64)),Int(4,64)),Var("#12582852",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_752, "%00000ac0"), Attrs([Attr("address","0x100B"), -Attr("insn","testq %rax, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582852",Imm(64)))), Def(Tid(2_756, "%00000ac4"), - Attrs([Attr("address","0x100B"), Attr("insn","testq %rax, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582852",Imm(64))))]), -Jmps([Goto(Tid(2_763, "%00000acb"), Attrs([Attr("address","0x100E"), -Attr("insn","je 0x2")]), Var("ZF",Imm(1)), Direct(Tid(2_760, "%00000ac8"))), -Goto(Tid(2_898, "%00000b52"), Attrs([]), Int(1,1), -Direct(Tid(2_850, "%00000b22")))])), Blk(Tid(2_850, "%00000b22"), - Attrs([Attr("address","0x1010")]), Phis([]), -Defs([Def(Tid(2_862, "%00000b2e"), Attrs([Attr("address","0x1010"), -Attr("insn","callq *%rax")]), Var("#12582846",Imm(64)), Var("RAX",Imm(64))), -Def(Tid(2_866, "%00000b32"), Attrs([Attr("address","0x1010"), -Attr("insn","callq *%rax")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_871, "%00000b37"), - Attrs([Attr("address","0x1010"), Attr("insn","callq *%rax")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4114,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_874, "%00000b3a"), Attrs([Attr("address","0x1010"), -Attr("insn","callq *%rax")]), Int(1,1), -(Indirect(Var("#12582846",Imm(64))),Direct(Tid(2_760, "%00000ac8"))))])), -Blk(Tid(2_760, "%00000ac8"), Attrs([Attr("address","0x1012")]), Phis([]), -Defs([Def(Tid(2_793, "%00000ae9"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("#12582850",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(2_797, "%00000aed"), - Attrs([Attr("address","0x1012"), Attr("insn","addq $0x8, %rsp")]), - Var("RSP",Imm(64)), PLUS(Var("RSP",Imm(64)),Int(8,64))), -Def(Tid(2_802, "%00000af2"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("CF",Imm(1)), -LT(Var("RSP",Imm(64)),Var("#12582850",Imm(64)))), -Def(Tid(2_810, "%00000afa"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582850",Imm(64))),Int(0,1)),AND(OR(HIGH(1,Var("#12582850",Imm(64))),HIGH(1,Var("RSP",Imm(64)))),NOT(AND(HIGH(1,Var("#12582850",Imm(64))),HIGH(1,Var("RSP",Imm(64)))))))), -Def(Tid(2_815, "%00000aff"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582850",Imm(64))),Int(8,64))))), -Def(Tid(2_820, "%00000b04"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_824, "%00000b08"), Attrs([Attr("address","0x1012"), -Attr("insn","addq $0x8, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(2_828, "%00000b0c"), - Attrs([Attr("address","0x1012"), Attr("insn","addq $0x8, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(2_841, "%00000b19"), Attrs([Attr("address","0x1016"), -Attr("insn","retq")]), Var("#12582847",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(2_845, "%00000b1d"), Attrs([Attr("address","0x1016"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(2_848, "%00000b20"), - Attrs([Attr("address","0x1016"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582847",Imm(64))),))]))])), Sub(Tid(2_899, "@_start"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x10A0"), -Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_921, "%00000b69"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(2_061, "@_init"), + Attrs([Attr("address","0x728")]), Phis([]), +Defs([Def(Tid(2_070, "%00000816"), Attrs([Attr("address","0x72C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#98",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(2_075, "%0000081b"), Attrs([Attr("address","0x72C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#98",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(2_080, "%00000820"), Attrs([Attr("address","0x72C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#98",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(2_084, "%00000824"), Attrs([Attr("address","0x72C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#98",Imm(64))), Def(Tid(2_091, "%0000082b"), + Attrs([Attr("address","0x730"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(2_096, "%00000830"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), + Var("R30",Imm(64)), Int(1848,64))]), Jmps([Call(Tid(2_098, "%00000832"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), Int(1,1), +(Direct(Tid(2_302, "@call_weak_fn")),Direct(Tid(2_100, "%00000834"))))])), +Blk(Tid(2_100, "%00000834"), Attrs([Attr("address","0x738")]), Phis([]), +Defs([Def(Tid(2_108, "%0000083c"), Attrs([Attr("address","0x738"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(2_112, "%00000840"), Attrs([Attr("address","0x738"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(2_115, "%00000843"), Attrs([Attr("address","0x738"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_120, "%00000848"), + Attrs([Attr("address","0x73C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_298, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x800"), +Attr("stub","()"), Attr("entry-point","()")]), "_start", + Args([Arg(Tid(2_371, "%00000943"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(540, "@_start"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([Def(Tid(546, "%00000222"), Attrs([Attr("address","0x804"), +Attr("insn","mov x29, #0x0")]), Var("R29",Imm(64)), Int(0,64)), +Def(Tid(552, "%00000228"), Attrs([Attr("address","0x808"), +Attr("insn","mov x30, #0x0")]), Var("R30",Imm(64)), Int(0,64)), +Def(Tid(560, "%00000230"), Attrs([Attr("address","0x80C"), +Attr("insn","mov x5, x0")]), Var("R5",Imm(64)), Var("R0",Imm(64))), +Def(Tid(568, "%00000238"), Attrs([Attr("address","0x810"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(575, "%0000023f"), Attrs([Attr("address","0x814"), +Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(582, "%00000246"), + Attrs([Attr("address","0x818"), Attr("insn","mov x6, sp")]), + Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(588, "%0000024c"), + Attrs([Attr("address","0x81C"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(596, "%00000254"), + Attrs([Attr("address","0x820"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), +Def(Tid(602, "%0000025a"), Attrs([Attr("address","0x824"), +Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), +Def(Tid(608, "%00000260"), Attrs([Attr("address","0x828"), +Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), +Def(Tid(613, "%00000265"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Var("R30",Imm(64)), Int(2096,64))]), +Jmps([Call(Tid(616, "%00000268"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Int(1,1), +(Direct(Tid(2_295, "@__libc_start_main")),Direct(Tid(618, "%0000026a"))))])), +Blk(Tid(618, "%0000026a"), Attrs([Attr("address","0x830")]), Phis([]), +Defs([Def(Tid(621, "%0000026d"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Var("R30",Imm(64)), Int(2100,64))]), +Jmps([Call(Tid(624, "%00000270"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Int(1,1), +(Direct(Tid(2_301, "@abort")),Direct(Tid(2_354, "%00000932"))))])), +Blk(Tid(2_354, "%00000932"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_355, "%00000933"), Attrs([]), Int(1,1), +(Direct(Tid(2_302, "@call_weak_fn")),))]))])), Sub(Tid(2_301, "@abort"), + Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), +Attr("address","0x7D0"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(622, "@abort"), Attrs([Attr("address","0x7D0")]), Phis([]), +Defs([Def(Tid(1_843, "%00000733"), Attrs([Attr("address","0x7D0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_851, "%0000073b"), Attrs([Attr("address","0x7D4"), +Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), +Def(Tid(1_858, "%00000742"), Attrs([Attr("address","0x7D8"), +Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_863, "%00000747"), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_302, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x834")]), + "call_weak_fn", Args([Arg(Tid(2_372, "%00000944"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("_start_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(593, "@_start"), - Attrs([Attr("address","0x10A0")]), Phis([]), -Defs([Def(Tid(603, "%0000025b"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("RBP",Imm(64)), Int(0,64)), -Def(Tid(606, "%0000025e"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(609, "%00000261"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("ZF",Imm(1)), Int(1,1)), -Def(Tid(612, "%00000264"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("PF",Imm(1)), Int(1,1)), -Def(Tid(615, "%00000267"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(618, "%0000026a"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(621, "%0000026d"), Attrs([Attr("address","0x10A0"), -Attr("insn","xorl %ebp, %ebp")]), Var("SF",Imm(1)), Int(0,1)), -Def(Tid(629, "%00000275"), Attrs([Attr("address","0x10A2"), -Attr("insn","movq %rdx, %r9")]), Var("R9",Imm(64)), Var("RDX",Imm(64))), -Def(Tid(641, "%00000281"), Attrs([Attr("address","0x10A5"), -Attr("insn","popq %rsi")]), Var("RSI",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(645, "%00000285"), Attrs([Attr("address","0x10A5"), -Attr("insn","popq %rsi")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(653, "%0000028d"), - Attrs([Attr("address","0x10A6"), Attr("insn","movq %rsp, %rdx")]), - Var("RDX",Imm(64)), Var("RSP",Imm(64))), Def(Tid(671, "%0000029f"), - Attrs([Attr("address","0x10A9"), Attr("insn","andq $-0x10, %rsp")]), - Var("RSP",Imm(64)), AND(Var("RSP",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(674, "%000002a2"), Attrs([Attr("address","0x10A9"), -Attr("insn","andq $-0x10, %rsp")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(677, "%000002a5"), Attrs([Attr("address","0x10A9"), -Attr("insn","andq $-0x10, %rsp")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(680, "%000002a8"), Attrs([Attr("address","0x10A9"), -Attr("insn","andq $-0x10, %rsp")]), Var("AF",Imm(1)), -Unknown("bits",Imm(1))), Def(Tid(685, "%000002ad"), - Attrs([Attr("address","0x10A9"), Attr("insn","andq $-0x10, %rsp")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(689, "%000002b1"), Attrs([Attr("address","0x10A9"), -Attr("insn","andq $-0x10, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(693, "%000002b5"), - Attrs([Attr("address","0x10A9"), Attr("insn","andq $-0x10, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(707, "%000002c3"), Attrs([Attr("address","0x10AD"), -Attr("insn","pushq %rax")]), Var("#12582903",Imm(64)), Var("RAX",Imm(64))), -Def(Tid(711, "%000002c7"), Attrs([Attr("address","0x10AD"), -Attr("insn","pushq %rax")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(717, "%000002cd"), - Attrs([Attr("address","0x10AD"), Attr("insn","pushq %rax")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582903",Imm(64)),LittleEndian(),64)), -Def(Tid(731, "%000002db"), Attrs([Attr("address","0x10AE"), -Attr("insn","pushq %rsp")]), Var("#12582902",Imm(64)), Var("RSP",Imm(64))), -Def(Tid(735, "%000002df"), Attrs([Attr("address","0x10AE"), -Attr("insn","pushq %rsp")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(741, "%000002e5"), - Attrs([Attr("address","0x10AE"), Attr("insn","pushq %rsp")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582902",Imm(64)),LittleEndian(),64)), -Def(Tid(753, "%000002f1"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("R8",Imm(64)), Int(0,64)), -Def(Tid(756, "%000002f4"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(759, "%000002f7"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("ZF",Imm(1)), Int(1,1)), -Def(Tid(762, "%000002fa"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("PF",Imm(1)), Int(1,1)), -Def(Tid(765, "%000002fd"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(768, "%00000300"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(771, "%00000303"), Attrs([Attr("address","0x10AF"), -Attr("insn","xorl %r8d, %r8d")]), Var("SF",Imm(1)), Int(0,1)), -Def(Tid(783, "%0000030f"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("RCX",Imm(64)), Int(0,64)), -Def(Tid(786, "%00000312"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(789, "%00000315"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("ZF",Imm(1)), Int(1,1)), -Def(Tid(792, "%00000318"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("PF",Imm(1)), Int(1,1)), -Def(Tid(795, "%0000031b"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(798, "%0000031e"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(801, "%00000321"), Attrs([Attr("address","0x10B2"), -Attr("insn","xorl %ecx, %ecx")]), Var("SF",Imm(1)), Int(0,1)), -Def(Tid(807, "%00000327"), Attrs([Attr("address","0x10B4"), -Attr("insn","leaq 0xd5(%rip), %rdi")]), Var("RDI",Imm(64)), Int(4496,64)), -Def(Tid(821, "%00000335"), Attrs([Attr("address","0x10BB"), -Attr("insn","callq *0x2eff(%rip)")]), Var("#12582901",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16320,64),LittleEndian(),64)), -Def(Tid(825, "%00000339"), Attrs([Attr("address","0x10BB"), -Attr("insn","callq *0x2eff(%rip)")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(830, "%0000033e"), - Attrs([Attr("address","0x10BB"), Attr("insn","callq *0x2eff(%rip)")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4289,64),LittleEndian(),64))]), -Jmps([Call(Tid(833, "%00000341"), Attrs([Attr("address","0x10BB"), -Attr("insn","callq *0x2eff(%rip)")]), Int(1,1), -(Direct(Tid(831, "@__libc_start_main")),Direct(Tid(835, "%00000343"))))])), -Blk(Tid(835, "%00000343"), Attrs([Attr("address","0x10C1")]), Phis([]), -Defs([]), Jmps([Call(Tid(838, "%00000346"), Attrs([Attr("address","0x10C1"), -Attr("insn","hlt")]), Int(1,1), -(Direct(Tid(836, "@intrinsic:hlt")),Direct(Tid(840, "%00000348"))))])), -Blk(Tid(840, "%00000348"), Attrs([Attr("address","0x10C2")]), Phis([]), -Defs([]), Jmps([Call(Tid(2_900, "%00000b54"), Attrs([]), Int(1,1), -(Direct(Tid(2_901, "@deregister_tm_clones")),))]))])), -Sub(Tid(2_901, "@deregister_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x10D0")]), - "deregister_tm_clones", Args([Arg(Tid(2_922, "%00000b6a"), +Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(626, "@call_weak_fn"), + Attrs([Attr("address","0x834")]), Phis([]), Defs([Def(Tid(630, "%00000276"), + Attrs([Attr("address","0x834"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(638, "%0000027e"), + Attrs([Attr("address","0x838"), Attr("insn","ldr x0, [x0, #0xfd0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), +Def(Tid(650, "%0000028a"), Attrs([Attr("address","0x83C"), +Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(644, "%00000284"), + Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), + Var("#12",Imm(1)), Direct(Tid(642, "%00000282"))), +Goto(Tid(2_356, "%00000934"), Attrs([]), Int(1,1), +Direct(Tid(1_405, "%0000057d")))])), Blk(Tid(642, "%00000282"), + Attrs([Attr("address","0x844")]), Phis([]), Defs([]), +Jmps([Call(Tid(655, "%0000028f"), Attrs([Attr("address","0x844"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_405, "%0000057d"), Attrs([Attr("address","0x840")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_408, "%00000580"), Attrs([Attr("address","0x840"), +Attr("insn","b #-0x80")]), Int(1,1), +Direct(Tid(1_406, "@__gmon_start__")))])), Blk(Tid(1_406, "@__gmon_start__"), + Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_818, "%0000071a"), Attrs([Attr("address","0x7C0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_826, "%00000722"), Attrs([Attr("address","0x7C4"), +Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), +Def(Tid(1_833, "%00000729"), Attrs([Attr("address","0x7C8"), +Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_838, "%0000072e"), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_304, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x850")]), + "deregister_tm_clones", Args([Arg(Tid(2_373, "%00000945"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(850, "@deregister_tm_clones"), - Attrs([Attr("address","0x10D0")]), Phis([]), -Defs([Def(Tid(854, "%00000356"), Attrs([Attr("address","0x10D0"), -Attr("insn","leaq 0x2f79(%rip), %rdi")]), Var("RDI",Imm(64)), Int(16464,64)), -Def(Tid(860, "%0000035c"), Attrs([Attr("address","0x10D7"), -Attr("insn","leaq 0x2f72(%rip), %rax")]), Var("RAX",Imm(64)), Int(16464,64)), -Def(Tid(889, "%00000379"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("#12582900",Imm(64)), -MINUS(Var("RAX",Imm(64)),Var("RDI",Imm(64)))), Def(Tid(894, "%0000037e"), - Attrs([Attr("address","0x10DE"), Attr("insn","cmpq %rdi, %rax")]), - Var("CF",Imm(1)), LT(Var("RAX",Imm(64)),Var("RDI",Imm(64)))), -Def(Tid(901, "%00000385"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("RAX",Imm(64)),Var("RDI",Imm(64))),XOR(Var("RAX",Imm(64)),Var("#12582900",Imm(64)))))), -Def(Tid(907, "%0000038b"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("#12582900",Imm(64)),Var("RAX",Imm(64))),Var("RDI",Imm(64)))))), -Def(Tid(912, "%00000390"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582900",Imm(64)),Int(4,64)),Var("#12582900",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(916, "%00000394"), Attrs([Attr("address","0x10DE"), -Attr("insn","cmpq %rdi, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582900",Imm(64)))), Def(Tid(920, "%00000398"), - Attrs([Attr("address","0x10DE"), Attr("insn","cmpq %rdi, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582900",Imm(64))))]), -Jmps([Goto(Tid(927, "%0000039f"), Attrs([Attr("address","0x10E1"), -Attr("insn","je 0x15")]), Var("ZF",Imm(1)), Direct(Tid(924, "%0000039c"))), -Goto(Tid(2_902, "%00000b56"), Attrs([]), Int(1,1), -Direct(Tid(2_261, "%000008d5")))])), Blk(Tid(2_261, "%000008d5"), - Attrs([Attr("address","0x10E3")]), Phis([]), -Defs([Def(Tid(2_267, "%000008db"), Attrs([Attr("address","0x10E3"), -Attr("insn","movq 0x2ede(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16328,64),LittleEndian(),64)), -Def(Tid(2_285, "%000008ed"), Attrs([Attr("address","0x10EA"), -Attr("insn","testq %rax, %rax")]), Var("#12582864",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(2_288, "%000008f0"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("OF",Imm(1)), Int(0,1)), Def(Tid(2_291, "%000008f3"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("CF",Imm(1)), Int(0,1)), Def(Tid(2_294, "%000008f6"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("AF",Imm(1)), Unknown("bits",Imm(1))), Def(Tid(2_299, "%000008fb"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582864",Imm(64)),Int(4,64)),Var("#12582864",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_303, "%000008ff"), Attrs([Attr("address","0x10EA"), -Attr("insn","testq %rax, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582864",Imm(64)))), Def(Tid(2_307, "%00000903"), - Attrs([Attr("address","0x10EA"), Attr("insn","testq %rax, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582864",Imm(64))))]), -Jmps([Goto(Tid(2_313, "%00000909"), Attrs([Attr("address","0x10ED"), -Attr("insn","je 0x9")]), Var("ZF",Imm(1)), Direct(Tid(924, "%0000039c"))), -Goto(Tid(2_903, "%00000b57"), Attrs([]), Int(1,1), -Direct(Tid(2_317, "%0000090d")))])), Blk(Tid(924, "%0000039c"), - Attrs([Attr("address","0x10F8")]), Phis([]), -Defs([Def(Tid(941, "%000003ad"), Attrs([Attr("address","0x10F8"), -Attr("insn","retq")]), Var("#12582898",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(945, "%000003b1"), Attrs([Attr("address","0x10F8"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(948, "%000003b4"), - Attrs([Attr("address","0x10F8"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582898",Imm(64))),))])), Blk(Tid(2_317, "%0000090d"), - Attrs([Attr("address","0x10EF")]), Phis([]), Defs([]), -Jmps([Call(Tid(2_321, "%00000911"), Attrs([Attr("address","0x10EF"), -Attr("insn","jmpq *%rax")]), Int(1,1), -(Indirect(Var("RAX",Imm(64))),))]))])), Sub(Tid(2_904, "@frame_dummy"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1180")]), - "frame_dummy", Args([Arg(Tid(2_923, "%00000b6b"), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(661, "@deregister_tm_clones"), + Attrs([Attr("address","0x850")]), Phis([]), Defs([Def(Tid(665, "%00000299"), + Attrs([Attr("address","0x850"), Attr("insn","adrp x0, #0x20000")]), + Var("R0",Imm(64)), Int(131072,64)), Def(Tid(672, "%000002a0"), + Attrs([Attr("address","0x854"), Attr("insn","add x0, x0, #0x70")]), + Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), +Def(Tid(678, "%000002a6"), Attrs([Attr("address","0x858"), +Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), +Def(Tid(685, "%000002ad"), Attrs([Attr("address","0x85C"), +Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), +PLUS(Var("R1",Imm(64)),Int(112,64))), Def(Tid(693, "%000002b5"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("#16",Imm(64)), +PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), +Def(Tid(697, "%000002b9"), Attrs([Attr("address","0x860"), +Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), +Extract(63,63,Var("#16",Imm(64)))), Def(Tid(700, "%000002bc"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("VF",Imm(1)), +OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), +Def(Tid(703, "%000002bf"), Attrs([Attr("address","0x860"), +Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), +EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(706, "%000002c2"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("CF",Imm(1)), +OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), +Def(Tid(720, "%000002d0"), Attrs([Attr("address","0x864"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), +Jmps([Goto(Tid(714, "%000002ca"), Attrs([Attr("address","0x864"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), +Direct(Tid(712, "%000002c8"))), Goto(Tid(2_357, "%00000935"), Attrs([]), + Int(1,1), Direct(Tid(1_366, "%00000556")))])), Blk(Tid(1_366, "%00000556"), + Attrs([Attr("address","0x868")]), Phis([]), +Defs([Def(Tid(1_370, "%0000055a"), Attrs([Attr("address","0x868"), +Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), +Def(Tid(1_378, "%00000562"), Attrs([Attr("address","0x86C"), +Attr("insn","ldr x1, [x1, #0xfc0]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4032,64)),LittleEndian(),64)), +Def(Tid(1_389, "%0000056d"), Attrs([Attr("address","0x870"), +Attr("insn","cbz x1, #0xc")]), Var("#75",Imm(1)), +EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_383, "%00000567"), + Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), + Var("#75",Imm(1)), Direct(Tid(712, "%000002c8"))), +Goto(Tid(2_358, "%00000936"), Attrs([]), Int(1,1), +Direct(Tid(1_392, "%00000570")))])), Blk(Tid(712, "%000002c8"), + Attrs([Attr("address","0x87C")]), Phis([]), Defs([]), +Jmps([Call(Tid(725, "%000002d5"), Attrs([Attr("address","0x87C"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_392, "%00000570"), Attrs([Attr("address","0x874")]), Phis([]), +Defs([Def(Tid(1_398, "%00000576"), Attrs([Attr("address","0x874"), +Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), +Jmps([Call(Tid(1_403, "%0000057b"), Attrs([Attr("address","0x878"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_307, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x910")]), "frame_dummy", Args([Arg(Tid(2_374, "%00000946"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(1_387, "@frame_dummy"), - Attrs([Attr("address","0x1180")]), Phis([]), Defs([]), -Jmps([Call(Tid(1_391, "%0000056f"), Attrs([Attr("address","0x1184"), -Attr("insn","jmp -0x89")]), Int(1,1), -(Direct(Tid(2_912, "@register_tm_clones")),))]))])), Sub(Tid(2_905, "@free"), - Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x1030"), -Attr("stub","()")]), "free", Args([Arg(Tid(2_924, "%00000b6c"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(901, "@frame_dummy"), + Attrs([Attr("address","0x910")]), Phis([]), Defs([]), +Jmps([Call(Tid(903, "%00000387"), Attrs([Attr("address","0x910"), +Attr("insn","b #-0x90")]), Int(1,1), +(Direct(Tid(2_314, "@register_tm_clones")),))]))])), Sub(Tid(2_308, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7F0"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_375, "%00000947"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), -Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("RDI",Imm(64)), -Both())]), Blks([Blk(Tid(1_865, "@free"), Attrs([Attr("address","0x1030")]), - Phis([]), Defs([]), Jmps([Call(Tid(2_480, "%000009b0"), - Attrs([Attr("address","0x1030"), Attr("insn","jmpq *0x2fca(%rip)")]), - Int(1,1), -(Direct(Tid(2_478, "@free:external")),Direct(Tid(2_482, "%000009b2"))))])), -Blk(Tid(2_482, "%000009b2"), Attrs([Attr("address","0x1036")]), Phis([]), -Defs([Def(Tid(2_491, "%000009bb"), Attrs([Attr("address","0x1036"), -Attr("insn","pushq $0x0")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_496, "%000009c0"), - Attrs([Attr("address","0x1036"), Attr("insn","pushq $0x0")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(0,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_500, "%000009c4"), Attrs([Attr("address","0x103B"), -Attr("insn","jmp -0x20")]), Int(1,1), -(Direct(Tid(2_906, "@free@plt-0x10")),))]))])), -Sub(Tid(2_906, "@free@plt-0x10"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x1020"), Attr("stub","()")]), "free@plt-0x10", - Args([Arg(Tid(2_925, "%00000b6d"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("free@plt-0x10_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(2_442, "@free@plt-0x10"), Attrs([Attr("address","0x1020")]), - Phis([]), Defs([Def(Tid(2_454, "%00000996"), - Attrs([Attr("address","0x1020"), Attr("insn","pushq 0x2fca(%rip)")]), - Var("#12582862",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16368,64),LittleEndian(),64)), -Def(Tid(2_458, "%0000099a"), Attrs([Attr("address","0x1020"), -Attr("insn","pushq 0x2fca(%rip)")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_464, "%000009a0"), - Attrs([Attr("address","0x1020"), Attr("insn","pushq 0x2fca(%rip)")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582862",Imm(64)),LittleEndian(),64))]), -Jmps([Call(Tid(2_470, "%000009a6"), Attrs([Attr("address","0x1026"), -Attr("insn","jmpq *0x2fcc(%rip)")]), Int(1,1), -(Indirect(Load(Var("mem",Mem(64,8)),Int(16376,64),LittleEndian(),64)),))]))])), -Sub(Tid(2_907, "@main"), +Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), +Both())]), Blks([Blk(Tid(1_219, "@free"), Attrs([Attr("address","0x7F0")]), + Phis([]), Defs([Def(Tid(1_893, "%00000765"), Attrs([Attr("address","0x7F0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_901, "%0000076d"), Attrs([Attr("address","0x7F4"), +Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), +Def(Tid(1_908, "%00000774"), Attrs([Attr("address","0x7F8"), +Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_913, "%00000779"), + Attrs([Attr("address","0x7FC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_309, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x1190")]), "main", Args([Arg(Tid(2_926, "%00000b6e"), +Attr("address","0x914")]), "main", Args([Arg(Tid(2_376, "%00000948"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), -LOW(32,Var("RDI",Imm(64))), In()), Arg(Tid(2_927, "%00000b6f"), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_377, "%00000949"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), -Var("RSI",Imm(64)), Both()), Arg(Tid(2_928, "%00000b70"), +Var("R1",Imm(64)), Both()), Arg(Tid(2_378, "%0000094a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([Blk(Tid(1_398, "@main"), - Attrs([Attr("address","0x1190")]), Phis([]), -Defs([Def(Tid(1_410, "%00000582"), Attrs([Attr("address","0x1190"), -Attr("insn","pushq %rbp")]), Var("#12582881",Imm(64)), Var("RBP",Imm(64))), -Def(Tid(1_414, "%00000586"), Attrs([Attr("address","0x1190"), -Attr("insn","pushq %rbp")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_420, "%0000058c"), - Attrs([Attr("address","0x1190"), Attr("insn","pushq %rbp")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Var("#12582881",Imm(64)),LittleEndian(),64)), -Def(Tid(1_428, "%00000594"), Attrs([Attr("address","0x1191"), -Attr("insn","movq %rsp, %rbp")]), Var("RBP",Imm(64)), Var("RSP",Imm(64))), -Def(Tid(1_454, "%000005ae"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("#12582880",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(1_458, "%000005b2"), - Attrs([Attr("address","0x1194"), Attr("insn","subq $0x20, %rsp")]), - Var("RSP",Imm(64)), MINUS(Var("RSP",Imm(64)),Int(32,64))), -Def(Tid(1_462, "%000005b6"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("CF",Imm(1)), -LT(Var("#12582880",Imm(64)),Int(32,64))), Def(Tid(1_468, "%000005bc"), - Attrs([Attr("address","0x1194"), Attr("insn","subq $0x20, %rsp")]), - Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("#12582880",Imm(64)),Int(32,64)),XOR(Var("#12582880",Imm(64)),Var("RSP",Imm(64)))))), -Def(Tid(1_473, "%000005c1"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582880",Imm(64))),Int(32,64))))), -Def(Tid(1_478, "%000005c6"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_482, "%000005ca"), Attrs([Attr("address","0x1194"), -Attr("insn","subq $0x20, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(1_486, "%000005ce"), - Attrs([Attr("address","0x1194"), Attr("insn","subq $0x20, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(1_496, "%000005d8"), Attrs([Attr("address","0x1198"), -Attr("insn","movq $0x0, -0x8(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551608,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(1_506, "%000005e2"), Attrs([Attr("address","0x11A0"), -Attr("insn","movq $0x0, -0x10(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551600,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(1_512, "%000005e8"), Attrs([Attr("address","0x11A8"), -Attr("insn","movl $0xb, %edi")]), Var("RDI",Imm(64)), Int(11,64)), -Def(Tid(1_524, "%000005f4"), Attrs([Attr("address","0x11AD"), -Attr("insn","callq -0x132")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_529, "%000005f9"), - Attrs([Attr("address","0x11AD"), Attr("insn","callq -0x132")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4530,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_531, "%000005fb"), Attrs([Attr("address","0x11AD"), -Attr("insn","callq -0x132")]), Int(1,1), -(Direct(Tid(2_908, "@malloc")),Direct(Tid(1_533, "%000005fd"))))])), -Blk(Tid(1_533, "%000005fd"), Attrs([Attr("address","0x11B2")]), Phis([]), -Defs([Def(Tid(1_541, "%00000605"), Attrs([Attr("address","0x11B2"), -Attr("insn","movq %rax, 0x2e9f(%rip)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Int(16472,64),Var("RAX",Imm(64)),LittleEndian(),64)), -Def(Tid(1_549, "%0000060d"), Attrs([Attr("address","0x11B9"), -Attr("insn","movq 0x2e98(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_561, "%00000619"), Attrs([Attr("address","0x11C0"), -Attr("insn","movq %rax, -0x20(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551584,64)),Var("RAX",Imm(64)),LittleEndian(),64)), -Def(Tid(1_567, "%0000061f"), Attrs([Attr("address","0x11C4"), -Attr("insn","leaq 0x2e76(%rip), %rdi")]), Var("RDI",Imm(64)), Int(16449,64)), -Def(Tid(1_579, "%0000062b"), Attrs([Attr("address","0x11CB"), -Attr("insn","callq -0x180")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_584, "%00000630"), - Attrs([Attr("address","0x11CB"), Attr("insn","callq -0x180")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4560,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_586, "%00000632"), Attrs([Attr("address","0x11CB"), -Attr("insn","callq -0x180")]), Int(1,1), -(Direct(Tid(2_915, "@strlen")),Direct(Tid(1_588, "%00000634"))))])), -Blk(Tid(1_588, "%00000634"), Attrs([Attr("address","0x11D0")]), Phis([]), -Defs([Def(Tid(1_596, "%0000063c"), Attrs([Attr("address","0x11D0"), -Attr("insn","movq -0x20(%rbp), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551584,64)),LittleEndian(),64)), -Def(Tid(1_604, "%00000644"), Attrs([Attr("address","0x11D4"), -Attr("insn","movq %rax, %rdx")]), Var("RDX",Imm(64)), Var("RAX",Imm(64))), -Def(Tid(1_610, "%0000064a"), Attrs([Attr("address","0x11D7"), -Attr("insn","leaq 0x2e63(%rip), %rsi")]), Var("RSI",Imm(64)), Int(16449,64)), -Def(Tid(1_622, "%00000656"), Attrs([Attr("address","0x11DE"), -Attr("insn","callq -0x173")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_627, "%0000065b"), - Attrs([Attr("address","0x11DE"), Attr("insn","callq -0x173")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4579,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_629, "%0000065d"), Attrs([Attr("address","0x11DE"), -Attr("insn","callq -0x173")]), Int(1,1), -(Direct(Tid(2_909, "@memcpy")),Direct(Tid(1_631, "%0000065f"))))])), -Blk(Tid(1_631, "%0000065f"), Attrs([Attr("address","0x11E3")]), Phis([]), -Defs([Def(Tid(1_637, "%00000665"), Attrs([Attr("address","0x11E3"), -Attr("insn","movq 0x2e6e(%rip), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_649, "%00000671"), Attrs([Attr("address","0x11EA"), -Attr("insn","callq -0x1af")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_654, "%00000676"), - Attrs([Attr("address","0x11EA"), Attr("insn","callq -0x1af")]), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(905, "@main"), + Attrs([Attr("address","0x914")]), Phis([]), Defs([Def(Tid(910, "%0000038e"), + Attrs([Attr("address","0x914"), Attr("insn","sub sp, sp, #0x40")]), + Var("R31",Imm(64)), MINUS(Var("R31",Imm(64)),Int(64,64))), +Def(Tid(918, "%00000396"), Attrs([Attr("address","0x918"), +Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("#42",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(923, "%0000039b"), + Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4591,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_656, "%00000678"), Attrs([Attr("address","0x11EA"), -Attr("insn","callq -0x1af")]), Int(1,1), -(Direct(Tid(2_911, "@puts")),Direct(Tid(1_658, "%0000067a"))))])), -Blk(Tid(1_658, "%0000067a"), Attrs([Attr("address","0x11EF")]), Phis([]), -Defs([Def(Tid(1_664, "%00000680"), Attrs([Attr("address","0x11EF"), -Attr("insn","movq 0x2e62(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_693, "%0000069d"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("#12582877",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(1_697, "%000006a1"), - Attrs([Attr("address","0x11F6"), Attr("insn","addq $0x4, %rax")]), - Var("RAX",Imm(64)), PLUS(Var("RAX",Imm(64)),Int(4,64))), -Def(Tid(1_702, "%000006a6"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("CF",Imm(1)), -LT(Var("RAX",Imm(64)),Var("#12582877",Imm(64)))), -Def(Tid(1_710, "%000006ae"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582877",Imm(64))),Int(0,1)),AND(OR(HIGH(1,Var("#12582877",Imm(64))),HIGH(1,Var("RAX",Imm(64)))),NOT(AND(HIGH(1,Var("#12582877",Imm(64))),HIGH(1,Var("RAX",Imm(64)))))))), -Def(Tid(1_715, "%000006b3"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RAX",Imm(64)),Var("#12582877",Imm(64))),Int(4,64))))), -Def(Tid(1_720, "%000006b8"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RAX",Imm(64)),Int(4,64)),Var("RAX",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_724, "%000006bc"), Attrs([Attr("address","0x11F6"), -Attr("insn","addq $0x4, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("RAX",Imm(64)))), Def(Tid(1_728, "%000006c0"), - Attrs([Attr("address","0x11F6"), Attr("insn","addq $0x4, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RAX",Imm(64)))), -Def(Tid(1_740, "%000006cc"), Attrs([Attr("address","0x11FA"), -Attr("insn","movq %rax, -0x8(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551608,64)),Var("RAX",Imm(64)),LittleEndian(),64)), -Def(Tid(1_750, "%000006d6"), Attrs([Attr("address","0x11FE"), -Attr("insn","movq -0x8(%rbp), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551608,64)),LittleEndian(),64)), -Def(Tid(1_760, "%000006e0"), Attrs([Attr("address","0x1202"), -Attr("insn","movb $0x0, (%rax)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RAX",Imm(64)),Int(0,8),LittleEndian(),8)), -Def(Tid(1_768, "%000006e8"), Attrs([Attr("address","0x1205"), -Attr("insn","movq 0x2e4c(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_780, "%000006f4"), Attrs([Attr("address","0x120C"), -Attr("insn","movq %rax, -0x18(%rbp)")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551592,64)),Var("RAX",Imm(64)),LittleEndian(),64)), -Def(Tid(1_788, "%000006fc"), Attrs([Attr("address","0x1210"), -Attr("insn","movq 0x2e41(%rip), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_799, "%00000707"), Attrs([Attr("address","0x1217"), -Attr("insn","callq -0x1cc")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_804, "%0000070c"), - Attrs([Attr("address","0x1217"), Attr("insn","callq -0x1cc")]), +Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(928, "%000003a0"), Attrs([Attr("address","0x918"), +Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(935, "%000003a7"), Attrs([Attr("address","0x91C"), +Attr("insn","add x29, sp, #0x30")]), Var("R29",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(943, "%000003af"), + Attrs([Attr("address","0x920"), Attr("insn","stur xzr, [x29, #-0x8]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4636,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_806, "%0000070e"), Attrs([Attr("address","0x1217"), -Attr("insn","callq -0x1cc")]), Int(1,1), -(Direct(Tid(2_915, "@strlen")),Direct(Tid(1_808, "%00000710"))))])), -Blk(Tid(1_808, "%00000710"), Attrs([Attr("address","0x121C")]), Phis([]), -Defs([Def(Tid(1_816, "%00000718"), Attrs([Attr("address","0x121C"), -Attr("insn","movq -0x18(%rbp), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),PLUS(Var("RBP",Imm(64)),Int(18446744073709551592,64)),LittleEndian(),64)), -Def(Tid(1_824, "%00000720"), Attrs([Attr("address","0x1220"), -Attr("insn","movq %rax, %rdx")]), Var("RDX",Imm(64)), Var("RAX",Imm(64))), -Def(Tid(1_830, "%00000726"), Attrs([Attr("address","0x1223"), -Attr("insn","movl $0x1, %esi")]), Var("RSI",Imm(64)), Int(1,64)), -Def(Tid(1_842, "%00000732"), Attrs([Attr("address","0x1228"), -Attr("insn","callq -0x1cd")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_847, "%00000737"), - Attrs([Attr("address","0x1228"), Attr("insn","callq -0x1cd")]), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(951, "%000003b7"), Attrs([Attr("address","0x924"), +Attr("insn","stur xzr, [x29, #-0x10]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551600,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(957, "%000003bd"), Attrs([Attr("address","0x928"), +Attr("insn","mov x0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), +Def(Tid(962, "%000003c2"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2352,64))]), +Jmps([Call(Tid(965, "%000003c5"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x18c")]), Int(1,1), +(Direct(Tid(2_310, "@malloc")),Direct(Tid(967, "%000003c7"))))])), +Blk(Tid(967, "%000003c7"), Attrs([Attr("address","0x930")]), Phis([]), +Defs([Def(Tid(971, "%000003cb"), Attrs([Attr("address","0x930"), +Attr("insn","adrp x8, #0x20000")]), Var("R8",Imm(64)), Int(131072,64)), +Def(Tid(979, "%000003d3"), Attrs([Attr("address","0x934"), +Attr("insn","str x8, [sp, #0x18]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(987, "%000003db"), Attrs([Attr("address","0x938"), +Attr("insn","str x0, [x8, #0x78]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x93C"), +Attr("insn","ldr x8, [x8, #0x78]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_003, "%000003eb"), Attrs([Attr("address","0x940"), +Attr("insn","str x8, [sp, #0x8]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_009, "%000003f1"), Attrs([Attr("address","0x944"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_016, "%000003f8"), Attrs([Attr("address","0x948"), +Attr("insn","add x0, x0, #0x61")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(97,64))), Def(Tid(1_024, "%00000400"), + Attrs([Attr("address","0x94C"), Attr("insn","str x0, [sp]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4653,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_849, "%00000739"), Attrs([Attr("address","0x1228"), -Attr("insn","callq -0x1cd")]), Int(1,1), -(Direct(Tid(2_910, "@memset")),Direct(Tid(1_851, "%0000073b"))))])), -Blk(Tid(1_851, "%0000073b"), Attrs([Attr("address","0x122D")]), Phis([]), -Defs([Def(Tid(1_857, "%00000741"), Attrs([Attr("address","0x122D"), -Attr("insn","movq 0x2e24(%rip), %rdi")]), Var("RDI",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16472,64),LittleEndian(),64)), -Def(Tid(1_869, "%0000074d"), Attrs([Attr("address","0x1234"), -Attr("insn","callq -0x209")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_874, "%00000752"), - Attrs([Attr("address","0x1234"), Attr("insn","callq -0x209")]), +Store(Var("mem",Mem(64,8)),Var("R31",Imm(64)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_029, "%00000405"), Attrs([Attr("address","0x950"), +Attr("insn","bl #-0x1e0")]), Var("R30",Imm(64)), Int(2388,64))]), +Jmps([Call(Tid(1_032, "%00000408"), Attrs([Attr("address","0x950"), +Attr("insn","bl #-0x1e0")]), Int(1,1), +(Direct(Tid(2_317, "@strlen")),Direct(Tid(1_034, "%0000040a"))))])), +Blk(Tid(1_034, "%0000040a"), Attrs([Attr("address","0x954")]), Phis([]), +Defs([Def(Tid(1_040, "%00000410"), Attrs([Attr("address","0x954"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(1_048, "%00000418"), Attrs([Attr("address","0x958"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_056, "%00000420"), Attrs([Attr("address","0x95C"), +Attr("insn","ldr x0, [sp, #0x8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_061, "%00000425"), Attrs([Attr("address","0x960"), +Attr("insn","bl #-0x200")]), Var("R30",Imm(64)), Int(2404,64))]), +Jmps([Call(Tid(1_064, "%00000428"), Attrs([Attr("address","0x960"), +Attr("insn","bl #-0x200")]), Int(1,1), +(Direct(Tid(2_311, "@memcpy")),Direct(Tid(1_066, "%0000042a"))))])), +Blk(Tid(1_066, "%0000042a"), Attrs([Attr("address","0x964")]), Phis([]), +Defs([Def(Tid(1_072, "%00000430"), Attrs([Attr("address","0x964"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_080, "%00000438"), Attrs([Attr("address","0x968"), +Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_085, "%0000043d"), Attrs([Attr("address","0x96C"), +Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2416,64))]), +Jmps([Call(Tid(1_088, "%00000440"), Attrs([Attr("address","0x96C"), +Attr("insn","bl #-0x18c")]), Int(1,1), +(Direct(Tid(2_313, "@puts")),Direct(Tid(1_090, "%00000442"))))])), +Blk(Tid(1_090, "%00000442"), Attrs([Attr("address","0x970")]), Phis([]), +Defs([Def(Tid(1_096, "%00000448"), Attrs([Attr("address","0x970"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_104, "%00000450"), Attrs([Attr("address","0x974"), +Attr("insn","ldr x9, [x8, #0x78]")]), Var("R9",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_111, "%00000457"), Attrs([Attr("address","0x978"), +Attr("insn","add x9, x9, #0x4")]), Var("R9",Imm(64)), +PLUS(Var("R9",Imm(64)),Int(4,64))), Def(Tid(1_119, "%0000045f"), + Attrs([Attr("address","0x97C"), Attr("insn","stur x9, [x29, #-0x8]")]), Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4665,64),LittleEndian(),64))]), -Jmps([Call(Tid(1_876, "%00000754"), Attrs([Attr("address","0x1234"), -Attr("insn","callq -0x209")]), Int(1,1), -(Direct(Tid(2_905, "@free")),Direct(Tid(1_878, "%00000756"))))])), -Blk(Tid(1_878, "%00000756"), Attrs([Attr("address","0x1239")]), Phis([]), -Defs([Def(Tid(1_888, "%00000760"), Attrs([Attr("address","0x1239"), -Attr("insn","xorl %eax, %eax")]), Var("RAX",Imm(64)), Int(0,64)), -Def(Tid(1_891, "%00000763"), Attrs([Attr("address","0x1239"), -Attr("insn","xorl %eax, %eax")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_894, "%00000766"), Attrs([Attr("address","0x1239"), -Attr("insn","xorl %eax, %eax")]), Var("ZF",Imm(1)), Int(1,1)), -Def(Tid(1_897, "%00000769"), Attrs([Attr("address","0x1239"), -Attr("insn","xorl %eax, %eax")]), Var("PF",Imm(1)), Int(1,1)), -Def(Tid(1_900, "%0000076c"), Attrs([Attr("address","0x1239"), -Attr("insn","xorl %eax, %eax")]), Var("OF",Imm(1)), Int(0,1)), -Def(Tid(1_903, "%0000076f"), Attrs([Attr("address","0x1239"), -Attr("insn","xorl %eax, %eax")]), Var("CF",Imm(1)), Int(0,1)), -Def(Tid(1_906, "%00000772"), Attrs([Attr("address","0x1239"), -Attr("insn","xorl %eax, %eax")]), Var("SF",Imm(1)), Int(0,1)), -Def(Tid(1_935, "%0000078f"), Attrs([Attr("address","0x123B"), -Attr("insn","addq $0x20, %rsp")]), Var("#12582874",Imm(64)), -Var("RSP",Imm(64))), Def(Tid(1_939, "%00000793"), - Attrs([Attr("address","0x123B"), Attr("insn","addq $0x20, %rsp")]), - Var("RSP",Imm(64)), PLUS(Var("RSP",Imm(64)),Int(32,64))), -Def(Tid(1_944, "%00000798"), Attrs([Attr("address","0x123B"), -Attr("insn","addq $0x20, %rsp")]), Var("CF",Imm(1)), -LT(Var("RSP",Imm(64)),Var("#12582874",Imm(64)))), -Def(Tid(1_952, "%000007a0"), Attrs([Attr("address","0x123B"), -Attr("insn","addq $0x20, %rsp")]), Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582874",Imm(64))),Int(0,1)),AND(OR(HIGH(1,Var("#12582874",Imm(64))),HIGH(1,Var("RSP",Imm(64)))),NOT(AND(HIGH(1,Var("#12582874",Imm(64))),HIGH(1,Var("RSP",Imm(64)))))))), -Def(Tid(1_957, "%000007a5"), Attrs([Attr("address","0x123B"), -Attr("insn","addq $0x20, %rsp")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSP",Imm(64)),Var("#12582874",Imm(64))),Int(32,64))))), -Def(Tid(1_962, "%000007aa"), Attrs([Attr("address","0x123B"), -Attr("insn","addq $0x20, %rsp")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSP",Imm(64)),Int(4,64)),Var("RSP",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_966, "%000007ae"), Attrs([Attr("address","0x123B"), -Attr("insn","addq $0x20, %rsp")]), Var("SF",Imm(1)), -HIGH(1,Var("RSP",Imm(64)))), Def(Tid(1_970, "%000007b2"), - Attrs([Attr("address","0x123B"), Attr("insn","addq $0x20, %rsp")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSP",Imm(64)))), -Def(Tid(1_982, "%000007be"), Attrs([Attr("address","0x123F"), -Attr("insn","popq %rbp")]), Var("RBP",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(1_986, "%000007c2"), Attrs([Attr("address","0x123F"), -Attr("insn","popq %rbp")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(1_999, "%000007cf"), - Attrs([Attr("address","0x1240"), Attr("insn","retq")]), - Var("#12582871",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(2_003, "%000007d3"), Attrs([Attr("address","0x1240"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(2_006, "%000007d6"), - Attrs([Attr("address","0x1240"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582871",Imm(64))),))]))])), Sub(Tid(2_908, "@malloc"), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Var("R9",Imm(64)),LittleEndian(),64)), +Def(Tid(1_127, "%00000467"), Attrs([Attr("address","0x980"), +Attr("insn","ldur x9, [x29, #-0x8]")]), Var("R9",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),LittleEndian(),64)), +Def(Tid(1_135, "%0000046f"), Attrs([Attr("address","0x984"), +Attr("insn","strb wzr, [x9]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("R9",Imm(64)),Int(0,8),BigEndian(),8)), +Def(Tid(1_143, "%00000477"), Attrs([Attr("address","0x988"), +Attr("insn","ldr x9, [x8, #0x78]")]), Var("R9",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_151, "%0000047f"), Attrs([Attr("address","0x98C"), +Attr("insn","str x9, [sp, #0x10]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R9",Imm(64)),LittleEndian(),64)), +Def(Tid(1_159, "%00000487"), Attrs([Attr("address","0x990"), +Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_164, "%0000048c"), Attrs([Attr("address","0x994"), +Attr("insn","bl #-0x224")]), Var("R30",Imm(64)), Int(2456,64))]), +Jmps([Call(Tid(1_166, "%0000048e"), Attrs([Attr("address","0x994"), +Attr("insn","bl #-0x224")]), Int(1,1), +(Direct(Tid(2_317, "@strlen")),Direct(Tid(1_168, "%00000490"))))])), +Blk(Tid(1_168, "%00000490"), Attrs([Attr("address","0x998")]), Phis([]), +Defs([Def(Tid(1_174, "%00000496"), Attrs([Attr("address","0x998"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_182, "%0000049e"), Attrs([Attr("address","0x99C"), +Attr("insn","ldr x0, [sp, #0x10]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x9A0"), +Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), +Def(Tid(1_194, "%000004aa"), Attrs([Attr("address","0x9A4"), +Attr("insn","bl #-0x1f4")]), Var("R30",Imm(64)), Int(2472,64))]), +Jmps([Call(Tid(1_197, "%000004ad"), Attrs([Attr("address","0x9A4"), +Attr("insn","bl #-0x1f4")]), Int(1,1), +(Direct(Tid(2_312, "@memset")),Direct(Tid(1_199, "%000004af"))))])), +Blk(Tid(1_199, "%000004af"), Attrs([Attr("address","0x9A8")]), Phis([]), +Defs([Def(Tid(1_205, "%000004b5"), Attrs([Attr("address","0x9A8"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_213, "%000004bd"), Attrs([Attr("address","0x9AC"), +Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), +Def(Tid(1_218, "%000004c2"), Attrs([Attr("address","0x9B0"), +Attr("insn","bl #-0x1c0")]), Var("R30",Imm(64)), Int(2484,64))]), +Jmps([Call(Tid(1_221, "%000004c5"), Attrs([Attr("address","0x9B0"), +Attr("insn","bl #-0x1c0")]), Int(1,1), +(Direct(Tid(2_308, "@free")),Direct(Tid(1_223, "%000004c7"))))])), +Blk(Tid(1_223, "%000004c7"), Attrs([Attr("address","0x9B4")]), Phis([]), +Defs([Def(Tid(1_230, "%000004ce"), Attrs([Attr("address","0x9B4"), +Attr("insn","mov w0, wzr")]), Var("R0",Imm(64)), Int(0,32)), +Def(Tid(1_239, "%000004d7"), Attrs([Attr("address","0x9B8"), +Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(48,64)),LittleEndian(),64)), +Def(Tid(1_243, "%000004db"), Attrs([Attr("address","0x9B8"), +Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(56,64)),LittleEndian(),64)), +Def(Tid(1_250, "%000004e2"), Attrs([Attr("address","0x9BC"), +Attr("insn","add sp, sp, #0x40")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_255, "%000004e7"), + Attrs([Attr("address","0x9C0"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_310, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), -Attr("address","0x1080"), Attr("malloc","()"), Attr("stub","()")]), "malloc", - Args([Arg(Tid(2_929, "%00000b71"), Attrs([Attr("alloc-size","()"), +Attr("address","0x7A0"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_379, "%0000094b"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), -Var("RDI",Imm(64)), In()), Arg(Tid(2_930, "%00000b72"), +Var("R0",Imm(64)), In()), Arg(Tid(2_380, "%0000094c"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), - Var("malloc_result",Imm(64)), Var("RAX",Imm(64)), Out())]), -Blks([Blk(Tid(1_520, "@malloc"), Attrs([Attr("address","0x1080")]), Phis([]), -Defs([]), Jmps([Call(Tid(2_605, "%00000a2d"), - Attrs([Attr("address","0x1080"), Attr("insn","jmpq *0x2fa2(%rip)")]), - Int(1,1), -(Direct(Tid(2_603, "@malloc:external")),Direct(Tid(2_607, "%00000a2f"))))])), -Blk(Tid(2_607, "%00000a2f"), Attrs([Attr("address","0x1086")]), Phis([]), -Defs([Def(Tid(2_616, "%00000a38"), Attrs([Attr("address","0x1086"), -Attr("insn","pushq $0x5")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_621, "%00000a3d"), - Attrs([Attr("address","0x1086"), Attr("insn","pushq $0x5")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(5,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_625, "%00000a41"), Attrs([Attr("address","0x108B"), -Attr("insn","jmp -0x70")]), Int(1,1), -(Direct(Tid(2_906, "@free@plt-0x10")),))]))])), Sub(Tid(2_909, "@memcpy"), + Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(963, "@malloc"), Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_768, "%000006e8"), Attrs([Attr("address","0x7A0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_776, "%000006f0"), Attrs([Attr("address","0x7A4"), +Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), +Def(Tid(1_783, "%000006f7"), Attrs([Attr("address","0x7A8"), +Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_788, "%000006fc"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_311, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), -Attr("address","0x1070"), Attr("stub","()")]), "memcpy", - Args([Arg(Tid(2_931, "%00000b73"), Attrs([Attr("nonnull","()"), +Attr("address","0x760"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_381, "%0000094d"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), -Var("RDI",Imm(64)), Both()), Arg(Tid(2_932, "%00000b74"), +Var("R0",Imm(64)), Both()), Arg(Tid(2_382, "%0000094e"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), - Var("memcpy_src",Imm(64)), Var("RSI",Imm(64)), Both()), -Arg(Tid(2_933, "%00000b75"), Attrs([Attr("c.layout","[unsigned long : 64]"), + Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), +Arg(Tid(2_383, "%0000094f"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), - Var("memcpy_n",Imm(64)), Var("RDX",Imm(64)), In()), -Arg(Tid(2_934, "%00000b76"), Attrs([Attr("c.layout","*[ : 8]"), + Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), +Arg(Tid(2_384, "%00000950"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), - Var("memcpy_result",Imm(64)), Var("RAX",Imm(64)), Out())]), -Blks([Blk(Tid(1_618, "@memcpy"), Attrs([Attr("address","0x1070")]), Phis([]), -Defs([]), Jmps([Call(Tid(2_580, "%00000a14"), - Attrs([Attr("address","0x1070"), Attr("insn","jmpq *0x2faa(%rip)")]), - Int(1,1), -(Direct(Tid(2_578, "@memcpy:external")),Direct(Tid(2_582, "%00000a16"))))])), -Blk(Tid(2_582, "%00000a16"), Attrs([Attr("address","0x1076")]), Phis([]), -Defs([Def(Tid(2_591, "%00000a1f"), Attrs([Attr("address","0x1076"), -Attr("insn","pushq $0x4")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_596, "%00000a24"), - Attrs([Attr("address","0x1076"), Attr("insn","pushq $0x4")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(4,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_600, "%00000a28"), Attrs([Attr("address","0x107B"), -Attr("insn","jmp -0x60")]), Int(1,1), -(Direct(Tid(2_906, "@free@plt-0x10")),))]))])), Sub(Tid(2_910, "@memset"), + Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_062, "@memcpy"), Attrs([Attr("address","0x760")]), Phis([]), +Defs([Def(Tid(1_668, "%00000684"), Attrs([Attr("address","0x760"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_676, "%0000068c"), Attrs([Attr("address","0x764"), +Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), +Def(Tid(1_683, "%00000693"), Attrs([Attr("address","0x768"), +Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), +Var("R16",Imm(64)))]), Jmps([Call(Tid(1_688, "%00000698"), + Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_312, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), -Attr("address","0x1060"), Attr("stub","()")]), "memset", - Args([Arg(Tid(2_935, "%00000b77"), Attrs([Attr("nonnull","()"), +Attr("address","0x7B0"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_385, "%00000951"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), -Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("RDI",Imm(64)), -Both()), Arg(Tid(2_936, "%00000b78"), +Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), +Both()), Arg(Tid(2_386, "%00000952"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("memset_c",Imm(32)), -LOW(32,Var("RSI",Imm(64))), In()), Arg(Tid(2_937, "%00000b79"), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_387, "%00000953"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), -Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), -Var("RDX",Imm(64)), In()), Arg(Tid(2_938, "%00000b7a"), - Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), -Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("RAX",Imm(64)), -Out())]), Blks([Blk(Tid(1_838, "@memset"), Attrs([Attr("address","0x1060")]), - Phis([]), Defs([]), Jmps([Call(Tid(2_555, "%000009fb"), - Attrs([Attr("address","0x1060"), Attr("insn","jmpq *0x2fb2(%rip)")]), - Int(1,1), -(Direct(Tid(2_553, "@memset:external")),Direct(Tid(2_557, "%000009fd"))))])), -Blk(Tid(2_557, "%000009fd"), Attrs([Attr("address","0x1066")]), Phis([]), -Defs([Def(Tid(2_566, "%00000a06"), Attrs([Attr("address","0x1066"), -Attr("insn","pushq $0x3")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_571, "%00000a0b"), - Attrs([Attr("address","0x1066"), Attr("insn","pushq $0x3")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(3,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_575, "%00000a0f"), Attrs([Attr("address","0x106B"), -Attr("insn","jmp -0x50")]), Int(1,1), -(Direct(Tid(2_906, "@free@plt-0x10")),))]))])), Sub(Tid(2_911, "@puts"), +Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), +In()), Arg(Tid(2_388, "%00000954"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_195, "@memset"), Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_793, "%00000701"), Attrs([Attr("address","0x7B0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_801, "%00000709"), Attrs([Attr("address","0x7B4"), +Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), +Def(Tid(1_808, "%00000710"), Attrs([Attr("address","0x7B8"), +Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_813, "%00000715"), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_313, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), -Attr("address","0x1040"), Attr("stub","()")]), "puts", - Args([Arg(Tid(2_939, "%00000b7b"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("address","0x7E0"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_389, "%00000955"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), - Var("puts_s",Imm(64)), Var("RDI",Imm(64)), In()), -Arg(Tid(2_940, "%00000b7c"), Attrs([Attr("c.layout","[signed : 32]"), + Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_390, "%00000956"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("puts_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(1_645, "@puts"), Attrs([Attr("address","0x1040")]), Phis([]), -Defs([]), Jmps([Call(Tid(2_505, "%000009c9"), - Attrs([Attr("address","0x1040"), Attr("insn","jmpq *0x2fc2(%rip)")]), - Int(1,1), -(Direct(Tid(2_503, "@puts:external")),Direct(Tid(2_507, "%000009cb"))))])), -Blk(Tid(2_507, "%000009cb"), Attrs([Attr("address","0x1046")]), Phis([]), -Defs([Def(Tid(2_516, "%000009d4"), Attrs([Attr("address","0x1046"), -Attr("insn","pushq $0x1")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_521, "%000009d9"), - Attrs([Attr("address","0x1046"), Attr("insn","pushq $0x1")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(1,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_525, "%000009dd"), Attrs([Attr("address","0x104B"), -Attr("insn","jmp -0x30")]), Int(1,1), -(Direct(Tid(2_906, "@free@plt-0x10")),))]))])), -Sub(Tid(2_912, "@register_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x1100")]), - "register_tm_clones", Args([Arg(Tid(2_941, "%00000b7d"), + Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(1_086, "@puts"), Attrs([Attr("address","0x7E0")]), Phis([]), +Defs([Def(Tid(1_868, "%0000074c"), Attrs([Attr("address","0x7E0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_876, "%00000754"), Attrs([Attr("address","0x7E4"), +Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), +Def(Tid(1_883, "%0000075b"), Attrs([Attr("address","0x7E8"), +Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_888, "%00000760"), + Attrs([Attr("address","0x7EC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_314, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + "register_tm_clones", Args([Arg(Tid(2_391, "%00000957"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([Blk(Tid(955, "@register_tm_clones"), Attrs([Attr("address","0x1100")]), - Phis([]), Defs([Def(Tid(959, "%000003bf"), Attrs([Attr("address","0x1100"), -Attr("insn","leaq 0x2f49(%rip), %rdi")]), Var("RDI",Imm(64)), Int(16464,64)), -Def(Tid(965, "%000003c5"), Attrs([Attr("address","0x1107"), -Attr("insn","leaq 0x2f42(%rip), %rsi")]), Var("RSI",Imm(64)), Int(16464,64)), -Def(Tid(997, "%000003e5"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("#12582897",Imm(64)), -Var("RSI",Imm(64))), Def(Tid(1_001, "%000003e9"), - Attrs([Attr("address","0x110E"), Attr("insn","subq %rdi, %rsi")]), - Var("#12582896",Imm(64)), Var("RDI",Imm(64))), Def(Tid(1_006, "%000003ee"), - Attrs([Attr("address","0x110E"), Attr("insn","subq %rdi, %rsi")]), - Var("RSI",Imm(64)), MINUS(Var("RSI",Imm(64)),Var("RDI",Imm(64)))), -Def(Tid(1_011, "%000003f3"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("CF",Imm(1)), -LT(Var("#12582897",Imm(64)),Var("#12582896",Imm(64)))), -Def(Tid(1_018, "%000003fa"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("OF",Imm(1)), -HIGH(1,AND(XOR(Var("#12582897",Imm(64)),Var("#12582896",Imm(64))),XOR(Var("#12582897",Imm(64)),Var("RSI",Imm(64)))))), -Def(Tid(1_024, "%00000400"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSI",Imm(64)),Var("#12582897",Imm(64))),Var("#12582896",Imm(64)))))), -Def(Tid(1_029, "%00000405"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSI",Imm(64)),Int(4,64)),Var("RSI",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_033, "%00000409"), Attrs([Attr("address","0x110E"), -Attr("insn","subq %rdi, %rsi")]), Var("SF",Imm(1)), -HIGH(1,Var("RSI",Imm(64)))), Def(Tid(1_037, "%0000040d"), - Attrs([Attr("address","0x110E"), Attr("insn","subq %rdi, %rsi")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSI",Imm(64)))), -Def(Tid(1_045, "%00000415"), Attrs([Attr("address","0x1111"), -Attr("insn","movq %rsi, %rax")]), Var("RAX",Imm(64)), Var("RSI",Imm(64))), -Def(Tid(1_066, "%0000042a"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("#12582894",Imm(64)), -Var("RSI",Imm(64))), Def(Tid(1_070, "%0000042e"), - Attrs([Attr("address","0x1114"), Attr("insn","shrq $0x3f, %rsi")]), - Var("RSI",Imm(64)), RSHIFT(Var("RSI",Imm(64)),Int(63,64))), -Def(Tid(1_074, "%00000432"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("CF",Imm(1)), -HIGH(1,LSHIFT(Var("#12582894",Imm(64)),Int(1,64)))), -Def(Tid(1_078, "%00000436"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("SF",Imm(1)), -HIGH(1,Var("RSI",Imm(64)))), Def(Tid(1_082, "%0000043a"), - Attrs([Attr("address","0x1114"), Attr("insn","shrq $0x3f, %rsi")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSI",Imm(64)))), -Def(Tid(1_087, "%0000043f"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSI",Imm(64)),Int(4,64)),Var("RSI",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_090, "%00000442"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_093, "%00000445"), Attrs([Attr("address","0x1114"), -Attr("insn","shrq $0x3f, %rsi")]), Var("OF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_114, "%0000045a"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("#12582892",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(1_118, "%0000045e"), - Attrs([Attr("address","0x1118"), Attr("insn","sarq $0x3, %rax")]), - Var("RAX",Imm(64)), ARSHIFT(Var("RAX",Imm(64)),Int(3,64))), -Def(Tid(1_122, "%00000462"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("CF",Imm(1)), -HIGH(1,LSHIFT(Var("#12582892",Imm(64)),Int(61,64)))), -Def(Tid(1_126, "%00000466"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("RAX",Imm(64)))), Def(Tid(1_130, "%0000046a"), - Attrs([Attr("address","0x1118"), Attr("insn","sarq $0x3, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RAX",Imm(64)))), -Def(Tid(1_135, "%0000046f"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RAX",Imm(64)),Int(4,64)),Var("RAX",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_138, "%00000472"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_141, "%00000475"), Attrs([Attr("address","0x1118"), -Attr("insn","sarq $0x3, %rax")]), Var("OF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_175, "%00000497"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("#12582890",Imm(64)), -Var("RSI",Imm(64))), Def(Tid(1_179, "%0000049b"), - Attrs([Attr("address","0x111C"), Attr("insn","addq %rax, %rsi")]), - Var("#12582889",Imm(64)), Var("RAX",Imm(64))), Def(Tid(1_184, "%000004a0"), - Attrs([Attr("address","0x111C"), Attr("insn","addq %rax, %rsi")]), - Var("RSI",Imm(64)), PLUS(Var("RSI",Imm(64)),Var("#12582889",Imm(64)))), -Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("CF",Imm(1)), -LT(Var("RSI",Imm(64)),Var("#12582890",Imm(64)))), -Def(Tid(1_198, "%000004ae"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("OF",Imm(1)), -AND(EQ(HIGH(1,Var("#12582890",Imm(64))),HIGH(1,Var("#12582889",Imm(64)))),AND(OR(HIGH(1,Var("#12582890",Imm(64))),HIGH(1,Var("RSI",Imm(64)))),NOT(AND(HIGH(1,Var("#12582890",Imm(64))),HIGH(1,Var("RSI",Imm(64)))))))), -Def(Tid(1_204, "%000004b4"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("AF",Imm(1)), -EQ(Int(16,64),AND(Int(16,64),XOR(XOR(Var("RSI",Imm(64)),Var("#12582890",Imm(64))),Var("#12582889",Imm(64)))))), -Def(Tid(1_209, "%000004b9"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSI",Imm(64)),Int(4,64)),Var("RSI",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_213, "%000004bd"), Attrs([Attr("address","0x111C"), -Attr("insn","addq %rax, %rsi")]), Var("SF",Imm(1)), -HIGH(1,Var("RSI",Imm(64)))), Def(Tid(1_217, "%000004c1"), - Attrs([Attr("address","0x111C"), Attr("insn","addq %rax, %rsi")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("RSI",Imm(64)))), -Def(Tid(1_238, "%000004d6"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("#12582887",Imm(64)), Var("RSI",Imm(64))), -Def(Tid(1_242, "%000004da"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("RSI",Imm(64)), -ARSHIFT(Var("RSI",Imm(64)),Int(1,64))), Def(Tid(1_246, "%000004de"), - Attrs([Attr("address","0x111F"), Attr("insn","sarq %rsi")]), - Var("CF",Imm(1)), HIGH(1,LSHIFT(Var("#12582887",Imm(64)),Int(63,64)))), -Def(Tid(1_250, "%000004e2"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("SF",Imm(1)), HIGH(1,Var("RSI",Imm(64)))), -Def(Tid(1_254, "%000004e6"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("ZF",Imm(1)), -EQ(Int(0,64),Var("RSI",Imm(64)))), Def(Tid(1_259, "%000004eb"), - Attrs([Attr("address","0x111F"), Attr("insn","sarq %rsi")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("RSI",Imm(64)),Int(4,64)),Var("RSI",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(1_262, "%000004ee"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("AF",Imm(1)), Unknown("bits",Imm(1))), -Def(Tid(1_265, "%000004f1"), Attrs([Attr("address","0x111F"), -Attr("insn","sarq %rsi")]), Var("OF",Imm(1)), Int(0,1))]), -Jmps([Goto(Tid(1_272, "%000004f8"), Attrs([Attr("address","0x1122"), -Attr("insn","je 0x14")]), Var("ZF",Imm(1)), Direct(Tid(1_269, "%000004f5"))), -Goto(Tid(2_913, "%00000b61"), Attrs([]), Int(1,1), -Direct(Tid(2_194, "%00000892")))])), Blk(Tid(2_194, "%00000892"), - Attrs([Attr("address","0x1124")]), Phis([]), -Defs([Def(Tid(2_200, "%00000898"), Attrs([Attr("address","0x1124"), -Attr("insn","movq 0x2ead(%rip), %rax")]), Var("RAX",Imm(64)), -Load(Var("mem",Mem(64,8)),Int(16344,64),LittleEndian(),64)), -Def(Tid(2_218, "%000008aa"), Attrs([Attr("address","0x112B"), -Attr("insn","testq %rax, %rax")]), Var("#12582866",Imm(64)), -Var("RAX",Imm(64))), Def(Tid(2_221, "%000008ad"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("OF",Imm(1)), Int(0,1)), Def(Tid(2_224, "%000008b0"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("CF",Imm(1)), Int(0,1)), Def(Tid(2_227, "%000008b3"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("AF",Imm(1)), Unknown("bits",Imm(1))), Def(Tid(2_232, "%000008b8"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("PF",Imm(1)), -NOT(LOW(1,Let(Var("$0",Imm(64)),XOR(RSHIFT(Var("#12582866",Imm(64)),Int(4,64)),Var("#12582866",Imm(64))),Let(Var("$1",Imm(64)),XOR(RSHIFT(Var("$0",Imm(64)),Int(2,64)),Var("$0",Imm(64))),XOR(RSHIFT(Var("$1",Imm(64)),Int(1,64)),Var("$1",Imm(64)))))))), -Def(Tid(2_236, "%000008bc"), Attrs([Attr("address","0x112B"), -Attr("insn","testq %rax, %rax")]), Var("SF",Imm(1)), -HIGH(1,Var("#12582866",Imm(64)))), Def(Tid(2_240, "%000008c0"), - Attrs([Attr("address","0x112B"), Attr("insn","testq %rax, %rax")]), - Var("ZF",Imm(1)), EQ(Int(0,64),Var("#12582866",Imm(64))))]), -Jmps([Goto(Tid(2_246, "%000008c6"), Attrs([Attr("address","0x112E"), -Attr("insn","je 0x8")]), Var("ZF",Imm(1)), Direct(Tid(1_269, "%000004f5"))), -Goto(Tid(2_914, "%00000b62"), Attrs([]), Int(1,1), -Direct(Tid(2_250, "%000008ca")))])), Blk(Tid(1_269, "%000004f5"), - Attrs([Attr("address","0x1138")]), Phis([]), -Defs([Def(Tid(1_286, "%00000506"), Attrs([Attr("address","0x1138"), -Attr("insn","retq")]), Var("#12582885",Imm(64)), -Load(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),LittleEndian(),64)), -Def(Tid(1_290, "%0000050a"), Attrs([Attr("address","0x1138"), -Attr("insn","retq")]), Var("RSP",Imm(64)), -PLUS(Var("RSP",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_293, "%0000050d"), - Attrs([Attr("address","0x1138"), Attr("insn","retq")]), Int(1,1), -(Indirect(Var("#12582885",Imm(64))),))])), Blk(Tid(2_250, "%000008ca"), - Attrs([Attr("address","0x1130")]), Phis([]), Defs([]), -Jmps([Call(Tid(2_254, "%000008ce"), Attrs([Attr("address","0x1130"), -Attr("insn","jmpq *%rax")]), Int(1,1), -(Indirect(Var("RAX",Imm(64))),))]))])), Sub(Tid(2_915, "@strlen"), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(727, "@register_tm_clones"), Attrs([Attr("address","0x880")]), + Phis([]), Defs([Def(Tid(731, "%000002db"), Attrs([Attr("address","0x880"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(738, "%000002e2"), Attrs([Attr("address","0x884"), +Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(112,64))), Def(Tid(744, "%000002e8"), + Attrs([Attr("address","0x888"), Attr("insn","adrp x1, #0x20000")]), + Var("R1",Imm(64)), Int(131072,64)), Def(Tid(751, "%000002ef"), + Attrs([Attr("address","0x88C"), Attr("insn","add x1, x1, #0x70")]), + Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), +Def(Tid(759, "%000002f7"), Attrs([Attr("address","0x890"), +Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), +MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(766, "%000002fe"), + Attrs([Attr("address","0x894"), Attr("insn","lsr x2, x1, #63")]), + Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), +Def(Tid(774, "%00000306"), Attrs([Attr("address","0x898"), +Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), +PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), +Def(Tid(781, "%0000030d"), Attrs([Attr("address","0x89C"), +Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), +RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(793, "%00000319"), + Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), + Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), +Jmps([Goto(Tid(787, "%00000313"), Attrs([Attr("address","0x8A0"), +Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), +Direct(Tid(785, "%00000311"))), Goto(Tid(2_359, "%00000937"), Attrs([]), + Int(1,1), Direct(Tid(1_327, "%0000052f")))])), Blk(Tid(1_327, "%0000052f"), + Attrs([Attr("address","0x8A4")]), Phis([]), +Defs([Def(Tid(1_331, "%00000533"), Attrs([Attr("address","0x8A4"), +Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), +Def(Tid(1_339, "%0000053b"), Attrs([Attr("address","0x8A8"), +Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), +Def(Tid(1_350, "%00000546"), Attrs([Attr("address","0x8AC"), +Attr("insn","cbz x2, #0xc")]), Var("#70",Imm(1)), +EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_344, "%00000540"), + Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), + Var("#70",Imm(1)), Direct(Tid(785, "%00000311"))), +Goto(Tid(2_360, "%00000938"), Attrs([]), Int(1,1), +Direct(Tid(1_353, "%00000549")))])), Blk(Tid(785, "%00000311"), + Attrs([Attr("address","0x8B8")]), Phis([]), Defs([]), +Jmps([Call(Tid(798, "%0000031e"), Attrs([Attr("address","0x8B8"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_353, "%00000549"), Attrs([Attr("address","0x8B0")]), Phis([]), +Defs([Def(Tid(1_359, "%0000054f"), Attrs([Attr("address","0x8B0"), +Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), +Jmps([Call(Tid(1_364, "%00000554"), Attrs([Attr("address","0x8B4"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_317, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), -Attr("pure","()"), Attr("address","0x1050"), Attr("stub","()")]), "strlen", - Args([Arg(Tid(2_942, "%00000b7e"), Attrs([Attr("nonnull","()"), +Attr("pure","()"), Attr("address","0x770"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_392, "%00000958"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), -Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("RDI",Imm(64)), -In()), Arg(Tid(2_943, "%00000b7f"), +Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), +In()), Arg(Tid(2_393, "%00000959"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), -Var("RAX",Imm(64)), Out())]), Blks([Blk(Tid(1_575, "@strlen"), - Attrs([Attr("address","0x1050")]), Phis([]), Defs([]), -Jmps([Call(Tid(2_530, "%000009e2"), Attrs([Attr("address","0x1050"), -Attr("insn","jmpq *0x2fba(%rip)")]), Int(1,1), -(Direct(Tid(2_528, "@strlen:external")),Direct(Tid(2_532, "%000009e4"))))])), -Blk(Tid(2_532, "%000009e4"), Attrs([Attr("address","0x1056")]), Phis([]), -Defs([Def(Tid(2_541, "%000009ed"), Attrs([Attr("address","0x1056"), -Attr("insn","pushq $0x2")]), Var("RSP",Imm(64)), -MINUS(Var("RSP",Imm(64)),Int(8,64))), Def(Tid(2_546, "%000009f2"), - Attrs([Attr("address","0x1056"), Attr("insn","pushq $0x2")]), - Var("mem",Mem(64,8)), -Store(Var("mem",Mem(64,8)),Var("RSP",Imm(64)),Int(2,64),LittleEndian(),64))]), -Jmps([Call(Tid(2_550, "%000009f6"), Attrs([Attr("address","0x105B"), -Attr("insn","jmp -0x40")]), Int(1,1), -(Direct(Tid(2_906, "@free@plt-0x10")),))]))])), -Sub(Tid(831, "@__libc_start_main"), - Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), -Attr("synthetic","()"), Attr("stub","()")]), "__libc_start_main", - Args([Arg(Tid(2_944, "%00000b80"), - Attrs([Attr("c.layout","**[ : 64]"), -Attr("c.data","Top:u64 ptr ptr"), -Attr("c.type","signed (*)(signed , char** , char** );*")]), - Var("__libc_start_main_main",Imm(64)), Var("RDI",Imm(64)), In()), -Arg(Tid(2_945, "%00000b81"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("RSI",Imm(64))), In()), -Arg(Tid(2_946, "%00000b82"), Attrs([Attr("c.layout","**[char : 8]"), -Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), - Var("__libc_start_main_arg3",Imm(64)), Var("RDX",Imm(64)), Both()), -Arg(Tid(2_947, "%00000b83"), Attrs([Attr("c.layout","*[ : 8]"), -Attr("c.data","{} ptr"), Attr("c.type","void*")]), - Var("__libc_start_main_auxv",Imm(64)), Var("RCX",Imm(64)), Both()), -Arg(Tid(2_948, "%00000b84"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("__libc_start_main_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), -Out())]), Blks([])), Sub(Tid(836, "@intrinsic:hlt"), - Attrs([Attr("intrinsic","()"), Attr("synthetic","()"), Attr("stub","()")]), - "intrinsic:hlt", Args([]), Blks([])), Sub(Tid(2_478, "@free:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "free:external", Args([Arg(Tid(2_949, "%00000b85"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("free:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_503, "@puts:external"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("synthetic","()"), Attr("stub","()")]), "puts:external", - Args([Arg(Tid(2_950, "%00000b86"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("puts:external_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), Out())]), -Blks([])), Sub(Tid(2_528, "@strlen:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "strlen:external", Args([Arg(Tid(2_951, "%00000b87"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("strlen:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_553, "@memset:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "memset:external", Args([Arg(Tid(2_952, "%00000b88"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("memset:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_578, "@memcpy:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "memcpy:external", Args([Arg(Tid(2_953, "%00000b89"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("memcpy:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_603, "@malloc:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "malloc:external", Args([Arg(Tid(2_954, "%00000b8a"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("malloc:external_result",Imm(32)), -LOW(32,Var("RAX",Imm(64))), Out())]), Blks([])), -Sub(Tid(2_887, "@__cxa_finalize:external"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("synthetic","()"), -Attr("stub","()")]), "__cxa_finalize:external", - Args([Arg(Tid(2_955, "%00000b8b"), Attrs([Attr("c.layout","[signed : 32]"), -Attr("c.data","Top:u32"), Attr("c.type","signed")]), - Var("__cxa_finalize:external_result",Imm(32)), LOW(32,Var("RAX",Imm(64))), -Out())]), -Blks([]))]))) \ No newline at end of file +Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_030, "@strlen"), + Attrs([Attr("address","0x770")]), Phis([]), +Defs([Def(Tid(1_693, "%0000069d"), Attrs([Attr("address","0x770"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_701, "%000006a5"), Attrs([Attr("address","0x774"), +Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_708, "%000006ac"), Attrs([Attr("address","0x778"), +Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_713, "%000006b1"), + Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.bir b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.bir index 851be613c..ed93b38a3 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.bir @@ -1,557 +1,361 @@ -00000b64: program -00000b4c: sub __cxa_finalize(__cxa_finalize_result) -00000b65: __cxa_finalize_result :: out u32 = low:32[RAX] - -00000885: -00000b49: call @__cxa_finalize:external with noreturn - -00000b4d: sub __do_global_dtors_aux(__do_global_dtors_aux_result) -00000b66: __do_global_dtors_aux_result :: out u32 = low:32[RAX] - -00000514: -0000052c: #12582884 := mem[0x4050] -00000530: CF := mem[0x4050] < 0 -00000536: OF := high:1[mem[0x4050] & (mem[0x4050] ^ #12582884)] -0000053b: AF := 0x10 = (0x10 & (#12582884 ^ mem[0x4050])) -00000540: PF := - ~low:1[let $0 = #12582884 >> 4 ^ #12582884 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000544: SF := high:1[#12582884] -00000548: ZF := 0 = #12582884 -0000054f: when ~ZF goto %0000054c -00000b4e: goto %000007d8 - -0000054c: -0000055d: #12582882 := mem[RSP, el]:u64 -00000561: RSP := RSP + 8 -00000564: call #12582882 with noreturn - -000007d8: -000007e4: #12582870 := RBP -000007e8: RSP := RSP - 8 -000007ee: mem := mem with [RSP, el]:u64 <- #12582870 -00000806: #12582869 := mem[0x3FE0, el]:u64 -0000080a: CF := mem[0x3FE0, el]:u64 < 0 -00000810: OF := high:1[mem[0x3FE0, el]:u64 & - (mem[0x3FE0, el]:u64 ^ #12582869)] -00000815: AF := 0x10 = (0x10 & (#12582869 ^ mem[0x3FE0, el]:u64)) -0000081a: PF := - ~low:1[let $0 = #12582869 >> 4 ^ #12582869 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -0000081e: SF := high:1[#12582869] -00000822: ZF := 0 = #12582869 -0000082a: RBP := RSP -00000831: when ZF goto %0000082e -00000b4f: goto %00000877 - -00000877: -0000087d: RDI := mem[0x4038, el]:u64 -00000889: RSP := RSP - 8 -0000088e: mem := mem with [RSP, el]:u64 <- 0x1167 -00000890: call @__cxa_finalize with return %0000082e - -0000082e: -0000083d: RSP := RSP - 8 -00000842: mem := mem with [RSP, el]:u64 <- 0x116C -00000844: call @deregister_tm_clones with return %00000846 - -00000846: -0000084c: mem := mem with [0x4050] <- 1 -00000858: RBP := mem[RSP, el]:u64 -0000085c: RSP := RSP + 8 -00000869: #12582867 := mem[RSP, el]:u64 -0000086d: RSP := RSP + 8 -00000870: call #12582867 with noreturn - -00000b50: sub _fini(_fini_result) -00000b67: _fini_result :: out u32 = low:32[RAX] - -00000015: -00000038: #12582911 := RSP -0000003c: RSP := RSP - 8 -00000040: CF := #12582911 < 8 -00000046: OF := high:1[(#12582911 ^ 8) & (#12582911 ^ RSP)] -0000004b: AF := 0x10 = (0x10 & (RSP ^ #12582911 ^ 8)) -00000050: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000054: SF := high:1[RSP] -00000058: ZF := 0 = RSP -00000075: #12582908 := RSP -00000079: RSP := RSP + 8 -0000007e: CF := RSP < #12582908 -00000086: OF := ~high:1[#12582908] & (high:1[#12582908] | high:1[RSP]) & - ~(high:1[#12582908] & high:1[RSP]) -0000008b: AF := 0x10 = (0x10 & (RSP ^ #12582908 ^ 8)) -00000090: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000094: SF := high:1[RSP] -00000098: ZF := 0 = RSP -000000a5: #12582905 := mem[RSP, el]:u64 -000000a9: RSP := RSP + 8 -000000ac: call #12582905 with noreturn - -00000b51: sub _init(_init_result) -00000b68: _init_result :: out u32 = low:32[RAX] - -00000a5c: -00000a74: #12582855 := RSP -00000a78: RSP := RSP - 8 -00000a7c: CF := #12582855 < 8 -00000a82: OF := high:1[(#12582855 ^ 8) & (#12582855 ^ RSP)] -00000a87: AF := 0x10 = (0x10 & (RSP ^ #12582855 ^ 8)) -00000a8c: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000a90: SF := high:1[RSP] -00000a94: ZF := 0 = RSP -00000a9c: RAX := mem[0x3FD0, el]:u64 -00000aae: #12582852 := RAX -00000ab1: OF := 0 -00000ab4: CF := 0 -00000ab7: AF := unknown[bits]:u1 -00000abc: PF := - ~low:1[let $0 = #12582852 >> 4 ^ #12582852 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000ac0: SF := high:1[#12582852] -00000ac4: ZF := 0 = #12582852 -00000acb: when ZF goto %00000ac8 -00000b52: goto %00000b22 - -00000b22: -00000b2e: #12582846 := RAX -00000b32: RSP := RSP - 8 -00000b37: mem := mem with [RSP, el]:u64 <- 0x1012 -00000b3a: call #12582846 with return %00000ac8 - -00000ac8: -00000ae9: #12582850 := RSP -00000aed: RSP := RSP + 8 -00000af2: CF := RSP < #12582850 -00000afa: OF := ~high:1[#12582850] & (high:1[#12582850] | high:1[RSP]) & - ~(high:1[#12582850] & high:1[RSP]) -00000aff: AF := 0x10 = (0x10 & (RSP ^ #12582850 ^ 8)) -00000b04: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000b08: SF := high:1[RSP] -00000b0c: ZF := 0 = RSP -00000b19: #12582847 := mem[RSP, el]:u64 -00000b1d: RSP := RSP + 8 -00000b20: call #12582847 with noreturn - -00000b53: sub _start(_start_result) -00000b69: _start_result :: out u32 = low:32[RAX] - -00000251: -0000025b: RBP := 0 -0000025e: AF := unknown[bits]:u1 -00000261: ZF := 1 -00000264: PF := 1 -00000267: OF := 0 -0000026a: CF := 0 -0000026d: SF := 0 -00000275: R9 := RDX -00000281: RSI := mem[RSP, el]:u64 -00000285: RSP := RSP + 8 -0000028d: RDX := RSP -0000029f: RSP := RSP & 0xFFFFFFFFFFFFFFF0 -000002a2: OF := 0 -000002a5: CF := 0 -000002a8: AF := unknown[bits]:u1 -000002ad: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000002b1: SF := high:1[RSP] -000002b5: ZF := 0 = RSP -000002c3: #12582903 := RAX -000002c7: RSP := RSP - 8 -000002cd: mem := mem with [RSP, el]:u64 <- #12582903 -000002db: #12582902 := RSP -000002df: RSP := RSP - 8 -000002e5: mem := mem with [RSP, el]:u64 <- #12582902 -000002f1: R8 := 0 -000002f4: AF := unknown[bits]:u1 -000002f7: ZF := 1 -000002fa: PF := 1 -000002fd: OF := 0 -00000300: CF := 0 -00000303: SF := 0 -0000030f: RCX := 0 -00000312: AF := unknown[bits]:u1 -00000315: ZF := 1 -00000318: PF := 1 -0000031b: OF := 0 -0000031e: CF := 0 -00000321: SF := 0 -00000327: RDI := 0x1190 -00000335: #12582901 := mem[0x3FC0, el]:u64 -00000339: RSP := RSP - 8 -0000033e: mem := mem with [RSP, el]:u64 <- 0x10C1 -00000341: call @__libc_start_main with return %00000343 - -00000343: -00000346: call @intrinsic:hlt with return %00000348 - -00000348: -00000b54: call @deregister_tm_clones with noreturn - -00000b55: sub deregister_tm_clones(deregister_tm_clones_result) -00000b6a: deregister_tm_clones_result :: out u32 = low:32[RAX] - -00000352: -00000356: RDI := 0x4050 -0000035c: RAX := 0x4050 -00000379: #12582900 := RAX - RDI -0000037e: CF := RAX < RDI -00000385: OF := high:1[(RAX ^ RDI) & (RAX ^ #12582900)] -0000038b: AF := 0x10 = (0x10 & (#12582900 ^ RAX ^ RDI)) -00000390: PF := - ~low:1[let $0 = #12582900 >> 4 ^ #12582900 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000394: SF := high:1[#12582900] -00000398: ZF := 0 = #12582900 -0000039f: when ZF goto %0000039c -00000b56: goto %000008d5 - -000008d5: -000008db: RAX := mem[0x3FC8, el]:u64 -000008ed: #12582864 := RAX -000008f0: OF := 0 -000008f3: CF := 0 -000008f6: AF := unknown[bits]:u1 -000008fb: PF := - ~low:1[let $0 = #12582864 >> 4 ^ #12582864 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000008ff: SF := high:1[#12582864] -00000903: ZF := 0 = #12582864 -00000909: when ZF goto %0000039c -00000b57: goto %0000090d - -0000039c: -000003ad: #12582898 := mem[RSP, el]:u64 -000003b1: RSP := RSP + 8 -000003b4: call #12582898 with noreturn - -0000090d: -00000911: call RAX with noreturn - -00000b58: sub frame_dummy(frame_dummy_result) -00000b6b: frame_dummy_result :: out u32 = low:32[RAX] - -0000056b: -0000056f: call @register_tm_clones with noreturn - -00000b59: sub free(free_ptr) -00000b6c: free_ptr :: in out u64 = RDI - -00000749: -000009b0: call @free:external with return %000009b2 - -000009b2: -000009bb: RSP := RSP - 8 -000009c0: mem := mem with [RSP, el]:u64 <- 0 -000009c4: call @free@plt-0x10 with noreturn - -00000b5a: sub free@plt-0x10(free@plt-0x10_result) -00000b6d: free@plt-0x10_result :: out u32 = low:32[RAX] - -0000098a: -00000996: #12582862 := mem[0x3FF0, el]:u64 -0000099a: RSP := RSP - 8 -000009a0: mem := mem with [RSP, el]:u64 <- #12582862 -000009a6: call mem[0x3FF8, el]:u64 with noreturn - -00000b5b: sub main(main_argc, main_argv, main_result) -00000b6e: main_argc :: in u32 = low:32[RDI] -00000b6f: main_argv :: in out u64 = RSI -00000b70: main_result :: out u32 = low:32[RAX] - -00000576: -00000582: #12582881 := RBP -00000586: RSP := RSP - 8 -0000058c: mem := mem with [RSP, el]:u64 <- #12582881 -00000594: RBP := RSP -000005ae: #12582880 := RSP -000005b2: RSP := RSP - 0x20 -000005b6: CF := #12582880 < 0x20 -000005bc: OF := high:1[(#12582880 ^ 0x20) & (#12582880 ^ RSP)] -000005c1: AF := 0x10 = (0x10 & (RSP ^ #12582880 ^ 0x20)) -000005c6: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000005ca: SF := high:1[RSP] -000005ce: ZF := 0 = RSP -000005d8: mem := mem with [RBP - 8, el]:u64 <- 0 -000005e2: mem := mem with [RBP - 0x10, el]:u64 <- 0 -000005e8: RDI := 0xB -000005f4: RSP := RSP - 8 -000005f9: mem := mem with [RSP, el]:u64 <- 0x11B2 -000005fb: call @malloc with return %000005fd - -000005fd: -00000605: mem := mem with [0x4058, el]:u64 <- RAX -0000060d: RAX := mem[0x4058, el]:u64 -00000619: mem := mem with [RBP - 0x20, el]:u64 <- RAX -0000061f: RDI := 0x4041 -0000062b: RSP := RSP - 8 -00000630: mem := mem with [RSP, el]:u64 <- 0x11D0 -00000632: call @strlen with return %00000634 - -00000634: -0000063c: RDI := mem[RBP - 0x20, el]:u64 -00000644: RDX := RAX -0000064a: RSI := 0x4041 -00000656: RSP := RSP - 8 -0000065b: mem := mem with [RSP, el]:u64 <- 0x11E3 -0000065d: call @memcpy with return %0000065f - -0000065f: -00000665: RDI := mem[0x4058, el]:u64 -00000671: RSP := RSP - 8 -00000676: mem := mem with [RSP, el]:u64 <- 0x11EF -00000678: call @puts with return %0000067a - -0000067a: -00000680: RAX := mem[0x4058, el]:u64 -0000069d: #12582877 := RAX -000006a1: RAX := RAX + 4 -000006a6: CF := RAX < #12582877 -000006ae: OF := ~high:1[#12582877] & (high:1[#12582877] | high:1[RAX]) & - ~(high:1[#12582877] & high:1[RAX]) -000006b3: AF := 0x10 = (0x10 & (RAX ^ #12582877 ^ 4)) -000006b8: PF := - ~low:1[let $0 = RAX >> 4 ^ RAX in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000006bc: SF := high:1[RAX] -000006c0: ZF := 0 = RAX -000006cc: mem := mem with [RBP - 8, el]:u64 <- RAX -000006d6: RAX := mem[RBP - 8, el]:u64 -000006e0: mem := mem with [RAX] <- 0 -000006e8: RAX := mem[0x4058, el]:u64 -000006f4: mem := mem with [RBP - 0x18, el]:u64 <- RAX -000006fc: RDI := mem[0x4058, el]:u64 -00000707: RSP := RSP - 8 -0000070c: mem := mem with [RSP, el]:u64 <- 0x121C -0000070e: call @strlen with return %00000710 - -00000710: -00000718: RDI := mem[RBP - 0x18, el]:u64 -00000720: RDX := RAX -00000726: RSI := 1 -00000732: RSP := RSP - 8 -00000737: mem := mem with [RSP, el]:u64 <- 0x122D -00000739: call @memset with return %0000073b - -0000073b: -00000741: RDI := mem[0x4058, el]:u64 -0000074d: RSP := RSP - 8 -00000752: mem := mem with [RSP, el]:u64 <- 0x1239 -00000754: call @free with return %00000756 - -00000756: -00000760: RAX := 0 -00000763: AF := unknown[bits]:u1 -00000766: ZF := 1 -00000769: PF := 1 -0000076c: OF := 0 -0000076f: CF := 0 -00000772: SF := 0 -0000078f: #12582874 := RSP -00000793: RSP := RSP + 0x20 -00000798: CF := RSP < #12582874 -000007a0: OF := ~high:1[#12582874] & (high:1[#12582874] | high:1[RSP]) & - ~(high:1[#12582874] & high:1[RSP]) -000007a5: AF := 0x10 = (0x10 & (RSP ^ #12582874 ^ 0x20)) -000007aa: PF := - ~low:1[let $0 = RSP >> 4 ^ RSP in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000007ae: SF := high:1[RSP] -000007b2: ZF := 0 = RSP -000007be: RBP := mem[RSP, el]:u64 -000007c2: RSP := RSP + 8 -000007cf: #12582871 := mem[RSP, el]:u64 -000007d3: RSP := RSP + 8 -000007d6: call #12582871 with noreturn - -00000b5c: sub malloc(malloc_size, malloc_result) -00000b71: malloc_size :: in u64 = RDI -00000b72: malloc_result :: out u64 = RAX - -000005f0: -00000a2d: call @malloc:external with return %00000a2f - -00000a2f: -00000a38: RSP := RSP - 8 -00000a3d: mem := mem with [RSP, el]:u64 <- 5 -00000a41: call @free@plt-0x10 with noreturn - -00000b5d: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) -00000b73: memcpy_dst :: in out u64 = RDI -00000b74: memcpy_src :: in out u64 = RSI -00000b75: memcpy_n :: in u64 = RDX -00000b76: memcpy_result :: out u64 = RAX - -00000652: -00000a14: call @memcpy:external with return %00000a16 - -00000a16: -00000a1f: RSP := RSP - 8 -00000a24: mem := mem with [RSP, el]:u64 <- 4 -00000a28: call @free@plt-0x10 with noreturn - -00000b5e: sub memset(memset_buf, memset_c, memset_n, memset_result) -00000b77: memset_buf :: in out u64 = RDI -00000b78: memset_c :: in u32 = low:32[RSI] -00000b79: memset_n :: in u64 = RDX -00000b7a: memset_result :: out u64 = RAX - -0000072e: -000009fb: call @memset:external with return %000009fd - -000009fd: -00000a06: RSP := RSP - 8 -00000a0b: mem := mem with [RSP, el]:u64 <- 3 -00000a0f: call @free@plt-0x10 with noreturn - -00000b5f: sub puts(puts_s, puts_result) -00000b7b: puts_s :: in u64 = RDI -00000b7c: puts_result :: out u32 = low:32[RAX] - -0000066d: -000009c9: call @puts:external with return %000009cb - -000009cb: -000009d4: RSP := RSP - 8 -000009d9: mem := mem with [RSP, el]:u64 <- 1 -000009dd: call @free@plt-0x10 with noreturn - -00000b60: sub register_tm_clones(register_tm_clones_result) -00000b7d: register_tm_clones_result :: out u32 = low:32[RAX] - -000003bb: -000003bf: RDI := 0x4050 -000003c5: RSI := 0x4050 -000003e5: #12582897 := RSI -000003e9: #12582896 := RDI -000003ee: RSI := RSI - RDI -000003f3: CF := #12582897 < #12582896 -000003fa: OF := high:1[(#12582897 ^ #12582896) & (#12582897 ^ RSI)] -00000400: AF := 0x10 = (0x10 & (RSI ^ #12582897 ^ #12582896)) -00000405: PF := - ~low:1[let $0 = RSI >> 4 ^ RSI in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000409: SF := high:1[RSI] -0000040d: ZF := 0 = RSI -00000415: RAX := RSI -0000042a: #12582894 := RSI -0000042e: RSI := RSI >> 0x3F -00000432: CF := high:1[#12582894 << 1] -00000436: SF := high:1[RSI] -0000043a: ZF := 0 = RSI -0000043f: PF := - ~low:1[let $0 = RSI >> 4 ^ RSI in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000442: AF := unknown[bits]:u1 -00000445: OF := unknown[bits]:u1 -0000045a: #12582892 := RAX -0000045e: RAX := RAX ~>> 3 -00000462: CF := high:1[#12582892 << 0x3D] -00000466: SF := high:1[RAX] -0000046a: ZF := 0 = RAX -0000046f: PF := - ~low:1[let $0 = RAX >> 4 ^ RAX in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -00000472: AF := unknown[bits]:u1 -00000475: OF := unknown[bits]:u1 -00000497: #12582890 := RSI -0000049b: #12582889 := RAX -000004a0: RSI := RSI + #12582889 -000004a5: CF := RSI < #12582890 -000004ae: OF := high:1[#12582890] = high:1[#12582889] & - (high:1[#12582890] | high:1[RSI]) & - ~(high:1[#12582890] & high:1[RSI]) -000004b4: AF := 0x10 = (0x10 & (RSI ^ #12582890 ^ #12582889)) -000004b9: PF := - ~low:1[let $0 = RSI >> 4 ^ RSI in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000004bd: SF := high:1[RSI] -000004c1: ZF := 0 = RSI -000004d6: #12582887 := RSI -000004da: RSI := RSI ~>> 1 -000004de: CF := high:1[#12582887 << 0x3F] -000004e2: SF := high:1[RSI] -000004e6: ZF := 0 = RSI -000004eb: PF := - ~low:1[let $0 = RSI >> 4 ^ RSI in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000004ee: AF := unknown[bits]:u1 -000004f1: OF := 0 -000004f8: when ZF goto %000004f5 -00000b61: goto %00000892 - -00000892: -00000898: RAX := mem[0x3FD8, el]:u64 -000008aa: #12582866 := RAX -000008ad: OF := 0 -000008b0: CF := 0 -000008b3: AF := unknown[bits]:u1 -000008b8: PF := - ~low:1[let $0 = #12582866 >> 4 ^ #12582866 in - let $1 = $0 >> 2 ^ $0 in $1 >> 1 ^ $1] -000008bc: SF := high:1[#12582866] -000008c0: ZF := 0 = #12582866 -000008c6: when ZF goto %000004f5 -00000b62: goto %000008ca - -000004f5: -00000506: #12582885 := mem[RSP, el]:u64 -0000050a: RSP := RSP + 8 -0000050d: call #12582885 with noreturn - -000008ca: -000008ce: call RAX with noreturn - -00000b63: sub strlen(strlen_s, strlen_result) -00000b7e: strlen_s :: in u64 = RDI -00000b7f: strlen_result :: out u64 = RAX - -00000627: -000009e2: call @strlen:external with return %000009e4 - -000009e4: -000009ed: RSP := RSP - 8 -000009f2: mem := mem with [RSP, el]:u64 <- 2 -000009f6: call @free@plt-0x10 with noreturn - -0000033f: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) -00000b80: __libc_start_main_main :: in u64 = RDI -00000b81: __libc_start_main_arg2 :: in u32 = low:32[RSI] -00000b82: __libc_start_main_arg3 :: in out u64 = RDX -00000b83: __libc_start_main_auxv :: in out u64 = RCX -00000b84: __libc_start_main_result :: out u32 = low:32[RAX] - -00000344: sub intrinsic:hlt() - - -000009ae: sub free:external(free:external_result) -00000b85: free:external_result :: out u32 = low:32[RAX] - -000009c7: sub puts:external(puts:external_result) -00000b86: puts:external_result :: out u32 = low:32[RAX] - -000009e0: sub strlen:external(strlen:external_result) -00000b87: strlen:external_result :: out u32 = low:32[RAX] - -000009f9: sub memset:external(memset:external_result) -00000b88: memset:external_result :: out u32 = low:32[RAX] - -00000a12: sub memcpy:external(memcpy:external_result) -00000b89: memcpy:external_result :: out u32 = low:32[RAX] - -00000a2b: sub malloc:external(malloc:external_result) -00000b8a: malloc:external_result :: out u32 = low:32[RAX] - -00000b47: sub __cxa_finalize:external(__cxa_finalize:external_result) -00000b8b: __cxa_finalize:external_result :: out u32 = low:32[RAX] +00000939: program +000008f2: sub __cxa_finalize(__cxa_finalize_result) +0000093a: __cxa_finalize_result :: out u32 = low:32[R0] + +0000052b: +000006cf: R16 := 0x20000 +000006d7: R17 := mem[R16 + 0x18, el]:u64 +000006de: R16 := R16 + 0x18 +000006e3: call R17 with noreturn + +000008f3: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +0000093b: __do_global_dtors_aux_result :: out u32 = low:32[R0] + +00000322: +00000329: #34 := R31 - 0x20 +0000032e: mem := mem with [#34, el]:u64 <- R29 +00000333: mem := mem with [#34 + 8, el]:u64 <- R30 +00000337: R31 := #34 +0000033e: R29 := R31 +00000346: mem := mem with [R31 + 0x10, el]:u64 <- R19 +0000034c: R19 := 0x20000 +00000355: R0 := pad:32[mem[R19 + 0x70]] +00000361: #36 := ~~0:0[R0] +0000035b: when #36 goto %00000359 +0000092f: goto %000004e9 + +000004e9: +000004ed: R0 := 0x1F000 +000004f5: R0 := mem[R0 + 0xFC8, el]:u64 +00000501: #67 := R0 = 0 +000004fb: when #67 goto %000004f9 +00000930: goto %00000519 + +00000519: +0000051d: R0 := 0x20000 +00000525: R0 := mem[R0 + 0x58, el]:u64 +0000052a: R30 := 0x8F0 +0000052d: call @__cxa_finalize with return %000004f9 + +000004f9: +00000506: R30 := 0x8F4 +00000508: call @deregister_tm_clones with return %0000050a + +0000050a: +0000050f: R0 := 1 +00000517: mem := mem with [R19 + 0x70] <- low:8[31:0[R0]] +00000931: goto %00000359 + +00000359: +00000369: R19 := mem[R31 + 0x10, el]:u64 +00000373: R29 := mem[R31, el]:u64 +00000377: R30 := mem[R31 + 8, el]:u64 +0000037a: R31 := R31 + 0x20 +0000037f: call R30 with noreturn + +000008f7: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +0000093c: __libc_start_main_main :: in u64 = R0 +0000093d: __libc_start_main_arg2 :: in u32 = low:32[R1] +0000093e: __libc_start_main_arg3 :: in out u64 = R2 +0000093f: __libc_start_main_auxv :: in out u64 = R3 +00000940: __libc_start_main_result :: out u32 = low:32[R0] + +00000266: +000006b6: R16 := 0x20000 +000006be: R17 := mem[R16 + 0x10, el]:u64 +000006c5: R16 := R16 + 0x10 +000006ca: call R17 with noreturn + +000008f8: sub _fini(_fini_result) +00000941: _fini_result :: out u32 = low:32[R0] + +00000020: +00000029: #3 := R31 - 0x10 +0000002e: mem := mem with [#3, el]:u64 <- R29 +00000033: mem := mem with [#3 + 8, el]:u64 <- R30 +00000037: R31 := #3 +0000003e: R29 := R31 +00000048: R29 := mem[R31, el]:u64 +0000004c: R30 := mem[R31 + 8, el]:u64 +0000004f: R31 := R31 + 0x10 +00000054: call R30 with noreturn + +000008f9: sub _init(_init_result) +00000942: _init_result :: out u32 = low:32[R0] + +0000080d: +00000816: #98 := R31 - 0x10 +0000081b: mem := mem with [#98, el]:u64 <- R29 +00000820: mem := mem with [#98 + 8, el]:u64 <- R30 +00000824: R31 := #98 +0000082b: R29 := R31 +00000830: R30 := 0x738 +00000832: call @call_weak_fn with return %00000834 + +00000834: +0000083c: R29 := mem[R31, el]:u64 +00000840: R30 := mem[R31 + 8, el]:u64 +00000843: R31 := R31 + 0x10 +00000848: call R30 with noreturn + +000008fa: sub _start(_start_result) +00000943: _start_result :: out u32 = low:32[R0] + +0000021c: +00000222: R29 := 0 +00000228: R30 := 0 +00000230: R5 := R0 +00000238: R1 := mem[R31, el]:u64 +0000023f: R2 := R31 + 8 +00000246: R6 := R31 +0000024c: R0 := 0x1F000 +00000254: R0 := mem[R0 + 0xFD8, el]:u64 +0000025a: R3 := 0 +00000260: R4 := 0 +00000265: R30 := 0x830 +00000268: call @__libc_start_main with return %0000026a + +0000026a: +0000026d: R30 := 0x834 +00000270: call @abort with return %00000932 + +00000932: +00000933: call @call_weak_fn with noreturn + +000008fd: sub abort() + + +0000026e: +00000733: R16 := 0x20000 +0000073b: R17 := mem[R16 + 0x38, el]:u64 +00000742: R16 := R16 + 0x38 +00000747: call R17 with noreturn + +000008fe: sub call_weak_fn(call_weak_fn_result) +00000944: call_weak_fn_result :: out u32 = low:32[R0] + +00000272: +00000276: R0 := 0x1F000 +0000027e: R0 := mem[R0 + 0xFD0, el]:u64 +0000028a: #12 := R0 = 0 +00000284: when #12 goto %00000282 +00000934: goto %0000057d + +00000282: +0000028f: call R30 with noreturn + +0000057d: +00000580: goto @__gmon_start__ + +0000057e: +0000071a: R16 := 0x20000 +00000722: R17 := mem[R16 + 0x30, el]:u64 +00000729: R16 := R16 + 0x30 +0000072e: call R17 with noreturn + +00000900: sub deregister_tm_clones(deregister_tm_clones_result) +00000945: deregister_tm_clones_result :: out u32 = low:32[R0] + +00000295: +00000299: R0 := 0x20000 +000002a0: R0 := R0 + 0x70 +000002a6: R1 := 0x20000 +000002ad: R1 := R1 + 0x70 +000002b5: #16 := 1 + ~R0 + R1 +000002b9: NF := 63:63[#16] +000002bc: VF := 63:63[R1] & 63:63[~R0] & ~63:63[#16] | ~63:63[R1] & + ~63:63[~R0] & 63:63[#16] +000002bf: ZF := #16 = 0 +000002c2: CF := 63:63[R1] & 63:63[~R0] | 63:63[~R0] & ~63:63[#16] | 63:63[R1] + & ~63:63[#16] +000002d0: #21 := ZF +000002ca: when #21 goto %000002c8 +00000935: goto %00000556 + +00000556: +0000055a: R1 := 0x1F000 +00000562: R1 := mem[R1 + 0xFC0, el]:u64 +0000056d: #75 := R1 = 0 +00000567: when #75 goto %000002c8 +00000936: goto %00000570 + +000002c8: +000002d5: call R30 with noreturn + +00000570: +00000576: R16 := R1 +0000057b: call R16 with noreturn + +00000903: sub frame_dummy(frame_dummy_result) +00000946: frame_dummy_result :: out u32 = low:32[R0] + +00000385: +00000387: call @register_tm_clones with noreturn + +00000904: sub free(free_ptr) +00000947: free_ptr :: in out u64 = R0 + +000004c3: +00000765: R16 := 0x20000 +0000076d: R17 := mem[R16 + 0x48, el]:u64 +00000774: R16 := R16 + 0x48 +00000779: call R17 with noreturn + +00000905: sub main(main_argc, main_argv, main_result) +00000948: main_argc :: in u32 = low:32[R0] +00000949: main_argv :: in out u64 = R1 +0000094a: main_result :: out u32 = low:32[R0] + +00000389: +0000038e: R31 := R31 - 0x40 +00000396: #42 := R31 + 0x30 +0000039b: mem := mem with [#42, el]:u64 <- R29 +000003a0: mem := mem with [#42 + 8, el]:u64 <- R30 +000003a7: R29 := R31 + 0x30 +000003af: mem := mem with [R29 - 8, el]:u64 <- 0 +000003b7: mem := mem with [R29 - 0x10, el]:u64 <- 0 +000003bd: R0 := 0xB +000003c2: R30 := 0x930 +000003c5: call @malloc with return %000003c7 + +000003c7: +000003cb: R8 := 0x20000 +000003d3: mem := mem with [R31 + 0x18, el]:u64 <- R8 +000003db: mem := mem with [R8 + 0x78, el]:u64 <- R0 +000003e3: R8 := mem[R8 + 0x78, el]:u64 +000003eb: mem := mem with [R31 + 8, el]:u64 <- R8 +000003f1: R0 := 0x20000 +000003f8: R0 := R0 + 0x61 +00000400: mem := mem with [R31, el]:u64 <- R0 +00000405: R30 := 0x954 +00000408: call @strlen with return %0000040a + +0000040a: +00000410: R1 := mem[R31, el]:u64 +00000418: R2 := R0 +00000420: R0 := mem[R31 + 8, el]:u64 +00000425: R30 := 0x964 +00000428: call @memcpy with return %0000042a + +0000042a: +00000430: R8 := mem[R31 + 0x18, el]:u64 +00000438: R0 := mem[R8 + 0x78, el]:u64 +0000043d: R30 := 0x970 +00000440: call @puts with return %00000442 + +00000442: +00000448: R8 := mem[R31 + 0x18, el]:u64 +00000450: R9 := mem[R8 + 0x78, el]:u64 +00000457: R9 := R9 + 4 +0000045f: mem := mem with [R29 - 8, el]:u64 <- R9 +00000467: R9 := mem[R29 - 8, el]:u64 +0000046f: mem := mem with [R9] <- 0 +00000477: R9 := mem[R8 + 0x78, el]:u64 +0000047f: mem := mem with [R31 + 0x10, el]:u64 <- R9 +00000487: R0 := mem[R8 + 0x78, el]:u64 +0000048c: R30 := 0x998 +0000048e: call @strlen with return %00000490 + +00000490: +00000496: R2 := R0 +0000049e: R0 := mem[R31 + 0x10, el]:u64 +000004a5: R1 := 1 +000004aa: R30 := 0x9A8 +000004ad: call @memset with return %000004af + +000004af: +000004b5: R8 := mem[R31 + 0x18, el]:u64 +000004bd: R0 := mem[R8 + 0x78, el]:u64 +000004c2: R30 := 0x9B4 +000004c5: call @free with return %000004c7 + +000004c7: +000004ce: R0 := 0 +000004d7: R29 := mem[R31 + 0x30, el]:u64 +000004db: R30 := mem[R31 + 0x38, el]:u64 +000004e2: R31 := R31 + 0x40 +000004e7: call R30 with noreturn + +00000906: sub malloc(malloc_size, malloc_result) +0000094b: malloc_size :: in u64 = R0 +0000094c: malloc_result :: out u64 = R0 + +000003c3: +000006e8: R16 := 0x20000 +000006f0: R17 := mem[R16 + 0x20, el]:u64 +000006f7: R16 := R16 + 0x20 +000006fc: call R17 with noreturn + +00000907: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +0000094d: memcpy_dst :: in out u64 = R0 +0000094e: memcpy_src :: in out u64 = R1 +0000094f: memcpy_n :: in u64 = R2 +00000950: memcpy_result :: out u64 = R0 + +00000426: +00000684: R16 := 0x20000 +0000068c: R17 := mem[R16, el]:u64 +00000693: R16 := R16 +00000698: call R17 with noreturn + +00000908: sub memset(memset_buf, memset_c, memset_n, memset_result) +00000951: memset_buf :: in out u64 = R0 +00000952: memset_c :: in u32 = low:32[R1] +00000953: memset_n :: in u64 = R2 +00000954: memset_result :: out u64 = R0 + +000004ab: +00000701: R16 := 0x20000 +00000709: R17 := mem[R16 + 0x28, el]:u64 +00000710: R16 := R16 + 0x28 +00000715: call R17 with noreturn + +00000909: sub puts(puts_s, puts_result) +00000955: puts_s :: in u64 = R0 +00000956: puts_result :: out u32 = low:32[R0] + +0000043e: +0000074c: R16 := 0x20000 +00000754: R17 := mem[R16 + 0x40, el]:u64 +0000075b: R16 := R16 + 0x40 +00000760: call R17 with noreturn + +0000090a: sub register_tm_clones(register_tm_clones_result) +00000957: register_tm_clones_result :: out u32 = low:32[R0] + +000002d7: +000002db: R0 := 0x20000 +000002e2: R0 := R0 + 0x70 +000002e8: R1 := 0x20000 +000002ef: R1 := R1 + 0x70 +000002f7: R1 := R1 - R0 +000002fe: R2 := R1 >> 0x3F +00000306: R1 := R2 + (R1 ~>> 3) +0000030d: R1 := R1 >> 1 +00000319: #30 := R1 = 0 +00000313: when #30 goto %00000311 +00000937: goto %0000052f + +0000052f: +00000533: R2 := 0x1F000 +0000053b: R2 := mem[R2 + 0xFE0, el]:u64 +00000546: #70 := R2 = 0 +00000540: when #70 goto %00000311 +00000938: goto %00000549 + +00000311: +0000031e: call R30 with noreturn + +00000549: +0000054f: R16 := R2 +00000554: call R16 with noreturn + +0000090d: sub strlen(strlen_s, strlen_result) +00000958: strlen_s :: in u64 = R0 +00000959: strlen_result :: out u64 = R0 + +00000406: +0000069d: R16 := 0x20000 +000006a5: R17 := mem[R16 + 8, el]:u64 +000006ac: R16 := R16 + 8 +000006b1: call R17 with noreturn diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.expected b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.expected index 56b362747..8d4ba53d6 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.expected +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.expected @@ -60,6 +60,10 @@ function {:extern} gamma_store64(gammaMap: [bv64]bool, index: bv64, value: bool) gammaMap[index := value][bvadd64(index, 1bv64) := value][bvadd64(index, 2bv64) := value][bvadd64(index, 3bv64) := value][bvadd64(index, 4bv64) := value][bvadd64(index, 5bv64) := value][bvadd64(index, 6bv64) := value][bvadd64(index, 7bv64) := value] } +function {:extern} gamma_store8(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value] +} + function {:extern} memory_load64_le(memory: [bv64]bv8, index: bv64) returns (bv64) { (memory[bvadd64(index, 7bv64)] ++ (memory[bvadd64(index, 6bv64)] ++ (memory[bvadd64(index, 5bv64)] ++ (memory[bvadd64(index, 4bv64)] ++ (memory[bvadd64(index, 3bv64)] ++ (memory[bvadd64(index, 2bv64)] ++ (memory[bvadd64(index, 1bv64)] ++ memory[index]))))))) } @@ -72,32 +76,36 @@ function {:extern} memory_store64_le(memory: [bv64]bv8, index: bv64, value: bv64 memory[index := value[8:0]][bvadd64(index, 1bv64) := value[16:8]][bvadd64(index, 2bv64) := value[24:16]][bvadd64(index, 3bv64) := value[32:24]][bvadd64(index, 4bv64) := value[40:32]][bvadd64(index, 5bv64) := value[48:40]][bvadd64(index, 6bv64) := value[56:48]][bvadd64(index, 7bv64) := value[64:56]] } +function {:extern} memory_store8_be(memory: [bv64]bv8, index: bv64, value: bv8) returns ([bv64]bv8) { + memory[index := value[8:0]] +} + procedure {:extern} rely(); modifies Gamma_mem, mem; ensures (mem == old(mem)); ensures (Gamma_mem == old(Gamma_mem)); - free ensures (memory_load8_le(mem, 2448bv64) == 1bv8); - free ensures (memory_load8_le(mem, 2449bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2450bv64) == 2bv8); - free ensures (memory_load8_le(mem, 2451bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); - free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); - free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); - free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); - free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -130,28 +138,28 @@ procedure {:extern} guarantee_reflexive(); procedure #free(); modifies Gamma_R16, Gamma_R17, R16, R17; requires (forall i : int, j: bv64 :: (malloc_base[i] == R0 && bvuge64(j, R0) && bvult64(j, malloc_end[i])) ==> Gamma_mem[j]); - free requires (memory_load8_le(mem, 2448bv64) == 1bv8); - free requires (memory_load8_le(mem, 2449bv64) == 0bv8); - free requires (memory_load8_le(mem, 2450bv64) == 2bv8); - free requires (memory_load8_le(mem, 2451bv64) == 0bv8); - free requires (memory_load8_le(mem, 130504bv64) == 208bv8); - free requires (memory_load8_le(mem, 130505bv64) == 8bv8); - free requires (memory_load8_le(mem, 130506bv64) == 0bv8); - free requires (memory_load8_le(mem, 130507bv64) == 0bv8); - free requires (memory_load8_le(mem, 130508bv64) == 0bv8); - free requires (memory_load8_le(mem, 130509bv64) == 0bv8); - free requires (memory_load8_le(mem, 130510bv64) == 0bv8); - free requires (memory_load8_le(mem, 130511bv64) == 0bv8); - free requires (memory_load8_le(mem, 130512bv64) == 128bv8); - free requires (memory_load8_le(mem, 130513bv64) == 8bv8); - free requires (memory_load8_le(mem, 130514bv64) == 0bv8); - free requires (memory_load8_le(mem, 130515bv64) == 0bv8); - free requires (memory_load8_le(mem, 130516bv64) == 0bv8); - free requires (memory_load8_le(mem, 130517bv64) == 0bv8); - free requires (memory_load8_le(mem, 130518bv64) == 0bv8); - free requires (memory_load8_le(mem, 130519bv64) == 0bv8); - free requires (memory_load8_le(mem, 131032bv64) == 212bv8); - free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); free requires (memory_load8_le(mem, 131034bv64) == 0bv8); free requires (memory_load8_le(mem, 131035bv64) == 0bv8); free requires (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -166,28 +174,28 @@ procedure #free(); free requires (memory_load8_le(mem, 131165bv64) == 0bv8); free requires (memory_load8_le(mem, 131166bv64) == 0bv8); free requires (memory_load8_le(mem, 131167bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2448bv64) == 1bv8); - free ensures (memory_load8_le(mem, 2449bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2450bv64) == 2bv8); - free ensures (memory_load8_le(mem, 2451bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); - free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); - free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); - free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); - free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -237,28 +245,28 @@ procedure main() free requires (memory_load8_le(mem, 131177bv64) == 115bv8); free requires (memory_load8_le(mem, 131178bv64) == 0bv8); free requires (memory_load8_le(mem, 131179bv64) == 0bv8); - free requires (memory_load8_le(mem, 2448bv64) == 1bv8); - free requires (memory_load8_le(mem, 2449bv64) == 0bv8); - free requires (memory_load8_le(mem, 2450bv64) == 2bv8); - free requires (memory_load8_le(mem, 2451bv64) == 0bv8); - free requires (memory_load8_le(mem, 130504bv64) == 208bv8); - free requires (memory_load8_le(mem, 130505bv64) == 8bv8); - free requires (memory_load8_le(mem, 130506bv64) == 0bv8); - free requires (memory_load8_le(mem, 130507bv64) == 0bv8); - free requires (memory_load8_le(mem, 130508bv64) == 0bv8); - free requires (memory_load8_le(mem, 130509bv64) == 0bv8); - free requires (memory_load8_le(mem, 130510bv64) == 0bv8); - free requires (memory_load8_le(mem, 130511bv64) == 0bv8); - free requires (memory_load8_le(mem, 130512bv64) == 128bv8); - free requires (memory_load8_le(mem, 130513bv64) == 8bv8); - free requires (memory_load8_le(mem, 130514bv64) == 0bv8); - free requires (memory_load8_le(mem, 130515bv64) == 0bv8); - free requires (memory_load8_le(mem, 130516bv64) == 0bv8); - free requires (memory_load8_le(mem, 130517bv64) == 0bv8); - free requires (memory_load8_le(mem, 130518bv64) == 0bv8); - free requires (memory_load8_le(mem, 130519bv64) == 0bv8); - free requires (memory_load8_le(mem, 131032bv64) == 212bv8); - free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); free requires (memory_load8_le(mem, 131034bv64) == 0bv8); free requires (memory_load8_le(mem, 131035bv64) == 0bv8); free requires (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -277,28 +285,28 @@ procedure main() free ensures (Gamma_R31 == old(Gamma_R31)); free ensures (R29 == old(R29)); free ensures (R31 == old(R31)); - free ensures (memory_load8_le(mem, 2448bv64) == 1bv8); - free ensures (memory_load8_le(mem, 2449bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2450bv64) == 2bv8); - free ensures (memory_load8_le(mem, 2451bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); - free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); - free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); - free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); - free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -314,102 +322,104 @@ procedure main() free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); { - var #4: bv64; - var #5: bv64; - var Gamma_#4: bool; - var Gamma_#5: bool; + var #42: bv64; + var Gamma_#42: bool; lmain: assume {:captureState "lmain"} true; - R31, Gamma_R31 := bvadd64(R31, 18446744073709551552bv64), Gamma_R31; - #4, Gamma_#4 := bvadd64(R31, 48bv64), Gamma_R31; - stack, Gamma_stack := memory_store64_le(stack, #4, R29), gamma_store64(Gamma_stack, #4, Gamma_R29); - assume {:captureState "%00000362"} true; - stack, Gamma_stack := memory_store64_le(stack, bvadd64(#4, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#4, 8bv64), Gamma_R30); - assume {:captureState "%00000368"} true; + R31, Gamma_R31 := bvsub64(R31, 64bv64), Gamma_R31; + #42, Gamma_#42 := bvadd64(R31, 48bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #42, R29), gamma_store64(Gamma_stack, #42, Gamma_R29); + assume {:captureState "%0000039b"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#42, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#42, 8bv64), Gamma_R30); + assume {:captureState "%000003a0"} true; R29, Gamma_R29 := bvadd64(R31, 48bv64), Gamma_R31; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551608bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64), true); - assume {:captureState "%00000375"} true; + assume {:captureState "%000003af"} true; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551600bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551600bv64), true); - assume {:captureState "%0000037c"} true; + assume {:captureState "%000003b7"} true; R0, Gamma_R0 := 11bv64, true; - R30, Gamma_R30 := 2288bv64, true; + R30, Gamma_R30 := 2352bv64, true; call malloc(); - goto l0000038b; - l0000038b: - assume {:captureState "l0000038b"} true; + goto l000003c7; + l000003c7: + assume {:captureState "l000003c7"} true; R8, Gamma_R8 := 131072bv64, true; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 24bv64), R8), gamma_store64(Gamma_stack, bvadd64(R31, 24bv64), Gamma_R8); - assume {:captureState "%00000396"} true; + assume {:captureState "%000003d3"} true; call rely(); assert (L(mem, bvadd64(R8, 120bv64)) ==> Gamma_R0); mem, Gamma_mem := memory_store64_le(mem, bvadd64(R8, 120bv64), R0), gamma_store64(Gamma_mem, bvadd64(R8, 120bv64), Gamma_R0); - assume {:captureState "%0000039e"} true; + assume {:captureState "%000003db"} true; call rely(); R8, Gamma_R8 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 8bv64), R8), gamma_store64(Gamma_stack, bvadd64(R31, 8bv64), Gamma_R8); - assume {:captureState "%000003ad"} true; + assume {:captureState "%000003eb"} true; R0, Gamma_R0 := 131072bv64, true; R0, Gamma_R0 := bvadd64(R0, 97bv64), Gamma_R0; stack, Gamma_stack := memory_store64_le(stack, R31, R0), gamma_store64(Gamma_stack, R31, Gamma_R0); - assume {:captureState "%000003c0"} true; - R30, Gamma_R30 := 2324bv64, true; + assume {:captureState "%00000400"} true; + R30, Gamma_R30 := 2388bv64, true; call strlen(); - goto l000003ca; - l000003ca: - assume {:captureState "l000003ca"} true; + goto l0000040a; + l0000040a: + assume {:captureState "l0000040a"} true; R1, Gamma_R1 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); R2, Gamma_R2 := R0, Gamma_R0; R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 8bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 8bv64)); - R30, Gamma_R30 := 2340bv64, true; + R30, Gamma_R30 := 2404bv64, true; call memcpy(); - goto l000003e6; - l000003e6: - assume {:captureState "l000003e6"} true; + goto l0000042a; + l0000042a: + assume {:captureState "l0000042a"} true; R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); call rely(); R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); - R30, Gamma_R30 := 2352bv64, true; + R30, Gamma_R30 := 2416bv64, true; call puts(); - goto l000003fc; - l000003fc: - assume {:captureState "l000003fc"} true; + goto l00000442; + l00000442: + assume {:captureState "l00000442"} true; R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); call rely(); R9, Gamma_R9 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); R9, Gamma_R9 := bvadd64(R9, 4bv64), Gamma_R9; stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551608bv64), R9), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64), Gamma_R9); - assume {:captureState "%00000416"} true; + assume {:captureState "%0000045f"} true; + R9, Gamma_R9 := memory_load64_le(stack, bvadd64(R29, 18446744073709551608bv64)), gamma_load64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64)); + call rely(); + assert (L(mem, R9) ==> true); + mem, Gamma_mem := memory_store8_be(mem, R9, 0bv8), gamma_store8(Gamma_mem, R9, true); + assume {:captureState "%0000046f"} true; call rely(); R9, Gamma_R9 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 16bv64), R9), gamma_store64(Gamma_stack, bvadd64(R31, 16bv64), Gamma_R9); - assume {:captureState "%00000425"} true; + assume {:captureState "%0000047f"} true; call rely(); R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); - R30, Gamma_R30 := 2384bv64, true; + R30, Gamma_R30 := 2456bv64, true; call strlen(); - goto l00000435; - l00000435: - assume {:captureState "l00000435"} true; + goto l00000490; + l00000490: + assume {:captureState "l00000490"} true; R2, Gamma_R2 := R0, Gamma_R0; R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); R1, Gamma_R1 := 1bv64, true; - R30, Gamma_R30 := 2400bv64, true; + R30, Gamma_R30 := 2472bv64, true; call memset(); - goto l0000044f; - l0000044f: - assume {:captureState "l0000044f"} true; + goto l000004af; + l000004af: + assume {:captureState "l000004af"} true; R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); call rely(); R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); - R30, Gamma_R30 := 2412bv64, true; + R30, Gamma_R30 := 2484bv64, true; call #free(); - goto l00000465; - l00000465: - assume {:captureState "l00000465"} true; - R0, Gamma_R0 := 0bv64, true; - #5, Gamma_#5 := bvadd64(R31, 48bv64), Gamma_R31; - R29, Gamma_R29 := memory_load64_le(stack, #5), gamma_load64(Gamma_stack, #5); - R30, Gamma_R30 := memory_load64_le(stack, bvadd64(#5, 8bv64)), gamma_load64(Gamma_stack, bvadd64(#5, 8bv64)); + goto l000004c7; + l000004c7: + assume {:captureState "l000004c7"} true; + R0, Gamma_R0 := 0bv32, true; + R29, Gamma_R29 := memory_load64_le(stack, bvadd64(R31, 48bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 48bv64)); + R30, Gamma_R30 := memory_load64_le(stack, bvadd64(R31, 56bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 56bv64)); R31, Gamma_R31 := bvadd64(R31, 64bv64), Gamma_R31; return; } @@ -418,28 +428,28 @@ procedure malloc(); modifies Gamma_R0, Gamma_R16, Gamma_R17, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, R0, R16, R17, malloc_base, malloc_count, malloc_end; requires bvugt64(R0, 0bv64); requires Gamma_R0 == true; - free requires (memory_load8_le(mem, 2448bv64) == 1bv8); - free requires (memory_load8_le(mem, 2449bv64) == 0bv8); - free requires (memory_load8_le(mem, 2450bv64) == 2bv8); - free requires (memory_load8_le(mem, 2451bv64) == 0bv8); - free requires (memory_load8_le(mem, 130504bv64) == 208bv8); - free requires (memory_load8_le(mem, 130505bv64) == 8bv8); - free requires (memory_load8_le(mem, 130506bv64) == 0bv8); - free requires (memory_load8_le(mem, 130507bv64) == 0bv8); - free requires (memory_load8_le(mem, 130508bv64) == 0bv8); - free requires (memory_load8_le(mem, 130509bv64) == 0bv8); - free requires (memory_load8_le(mem, 130510bv64) == 0bv8); - free requires (memory_load8_le(mem, 130511bv64) == 0bv8); - free requires (memory_load8_le(mem, 130512bv64) == 128bv8); - free requires (memory_load8_le(mem, 130513bv64) == 8bv8); - free requires (memory_load8_le(mem, 130514bv64) == 0bv8); - free requires (memory_load8_le(mem, 130515bv64) == 0bv8); - free requires (memory_load8_le(mem, 130516bv64) == 0bv8); - free requires (memory_load8_le(mem, 130517bv64) == 0bv8); - free requires (memory_load8_le(mem, 130518bv64) == 0bv8); - free requires (memory_load8_le(mem, 130519bv64) == 0bv8); - free requires (memory_load8_le(mem, 131032bv64) == 212bv8); - free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); free requires (memory_load8_le(mem, 131034bv64) == 0bv8); free requires (memory_load8_le(mem, 131035bv64) == 0bv8); free requires (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -464,28 +474,28 @@ procedure malloc(); ensures (forall i: int :: i != malloc_count ==> malloc_base[i] == old(malloc_base[i]) && malloc_end[i] == old(malloc_end[i])); ensures bvuge64(R0, 100000000bv64); ensures (forall i : bv64 :: (bvuge64(i, R0) && bvult64(i, bvadd64(R0, old(R0)))) ==> (Gamma_mem[i] && gamma_load8(Gamma_mem, i))); - free ensures (memory_load8_le(mem, 2448bv64) == 1bv8); - free ensures (memory_load8_le(mem, 2449bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2450bv64) == 2bv8); - free ensures (memory_load8_le(mem, 2451bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); - free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); - free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); - free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); - free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -503,28 +513,28 @@ procedure malloc(); procedure memcpy(); modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; - free requires (memory_load8_le(mem, 2448bv64) == 1bv8); - free requires (memory_load8_le(mem, 2449bv64) == 0bv8); - free requires (memory_load8_le(mem, 2450bv64) == 2bv8); - free requires (memory_load8_le(mem, 2451bv64) == 0bv8); - free requires (memory_load8_le(mem, 130504bv64) == 208bv8); - free requires (memory_load8_le(mem, 130505bv64) == 8bv8); - free requires (memory_load8_le(mem, 130506bv64) == 0bv8); - free requires (memory_load8_le(mem, 130507bv64) == 0bv8); - free requires (memory_load8_le(mem, 130508bv64) == 0bv8); - free requires (memory_load8_le(mem, 130509bv64) == 0bv8); - free requires (memory_load8_le(mem, 130510bv64) == 0bv8); - free requires (memory_load8_le(mem, 130511bv64) == 0bv8); - free requires (memory_load8_le(mem, 130512bv64) == 128bv8); - free requires (memory_load8_le(mem, 130513bv64) == 8bv8); - free requires (memory_load8_le(mem, 130514bv64) == 0bv8); - free requires (memory_load8_le(mem, 130515bv64) == 0bv8); - free requires (memory_load8_le(mem, 130516bv64) == 0bv8); - free requires (memory_load8_le(mem, 130517bv64) == 0bv8); - free requires (memory_load8_le(mem, 130518bv64) == 0bv8); - free requires (memory_load8_le(mem, 130519bv64) == 0bv8); - free requires (memory_load8_le(mem, 131032bv64) == 212bv8); - free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); free requires (memory_load8_le(mem, 131034bv64) == 0bv8); free requires (memory_load8_le(mem, 131035bv64) == 0bv8); free requires (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -542,28 +552,28 @@ procedure memcpy(); ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); - free ensures (memory_load8_le(mem, 2448bv64) == 1bv8); - free ensures (memory_load8_le(mem, 2449bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2450bv64) == 2bv8); - free ensures (memory_load8_le(mem, 2451bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); - free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); - free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); - free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); - free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -582,28 +592,28 @@ procedure memcpy(); procedure memset(); modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; requires Gamma_R1; - free requires (memory_load8_le(mem, 2448bv64) == 1bv8); - free requires (memory_load8_le(mem, 2449bv64) == 0bv8); - free requires (memory_load8_le(mem, 2450bv64) == 2bv8); - free requires (memory_load8_le(mem, 2451bv64) == 0bv8); - free requires (memory_load8_le(mem, 130504bv64) == 208bv8); - free requires (memory_load8_le(mem, 130505bv64) == 8bv8); - free requires (memory_load8_le(mem, 130506bv64) == 0bv8); - free requires (memory_load8_le(mem, 130507bv64) == 0bv8); - free requires (memory_load8_le(mem, 130508bv64) == 0bv8); - free requires (memory_load8_le(mem, 130509bv64) == 0bv8); - free requires (memory_load8_le(mem, 130510bv64) == 0bv8); - free requires (memory_load8_le(mem, 130511bv64) == 0bv8); - free requires (memory_load8_le(mem, 130512bv64) == 128bv8); - free requires (memory_load8_le(mem, 130513bv64) == 8bv8); - free requires (memory_load8_le(mem, 130514bv64) == 0bv8); - free requires (memory_load8_le(mem, 130515bv64) == 0bv8); - free requires (memory_load8_le(mem, 130516bv64) == 0bv8); - free requires (memory_load8_le(mem, 130517bv64) == 0bv8); - free requires (memory_load8_le(mem, 130518bv64) == 0bv8); - free requires (memory_load8_le(mem, 130519bv64) == 0bv8); - free requires (memory_load8_le(mem, 131032bv64) == 212bv8); - free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); free requires (memory_load8_le(mem, 131034bv64) == 0bv8); free requires (memory_load8_le(mem, 131035bv64) == 0bv8); free requires (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -621,28 +631,28 @@ procedure memset(); ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then Gamma_R1 else old(gamma_load8(Gamma_mem, i)))); ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then R1[8:0] else old(memory_load8_le(mem, i)))); - free ensures (memory_load8_le(mem, 2448bv64) == 1bv8); - free ensures (memory_load8_le(mem, 2449bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2450bv64) == 2bv8); - free ensures (memory_load8_le(mem, 2451bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); - free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); - free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); - free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); - free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -660,28 +670,28 @@ procedure memset(); procedure puts(); modifies Gamma_R16, Gamma_R17, R16, R17; - free requires (memory_load8_le(mem, 2448bv64) == 1bv8); - free requires (memory_load8_le(mem, 2449bv64) == 0bv8); - free requires (memory_load8_le(mem, 2450bv64) == 2bv8); - free requires (memory_load8_le(mem, 2451bv64) == 0bv8); - free requires (memory_load8_le(mem, 130504bv64) == 208bv8); - free requires (memory_load8_le(mem, 130505bv64) == 8bv8); - free requires (memory_load8_le(mem, 130506bv64) == 0bv8); - free requires (memory_load8_le(mem, 130507bv64) == 0bv8); - free requires (memory_load8_le(mem, 130508bv64) == 0bv8); - free requires (memory_load8_le(mem, 130509bv64) == 0bv8); - free requires (memory_load8_le(mem, 130510bv64) == 0bv8); - free requires (memory_load8_le(mem, 130511bv64) == 0bv8); - free requires (memory_load8_le(mem, 130512bv64) == 128bv8); - free requires (memory_load8_le(mem, 130513bv64) == 8bv8); - free requires (memory_load8_le(mem, 130514bv64) == 0bv8); - free requires (memory_load8_le(mem, 130515bv64) == 0bv8); - free requires (memory_load8_le(mem, 130516bv64) == 0bv8); - free requires (memory_load8_le(mem, 130517bv64) == 0bv8); - free requires (memory_load8_le(mem, 130518bv64) == 0bv8); - free requires (memory_load8_le(mem, 130519bv64) == 0bv8); - free requires (memory_load8_le(mem, 131032bv64) == 212bv8); - free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); free requires (memory_load8_le(mem, 131034bv64) == 0bv8); free requires (memory_load8_le(mem, 131035bv64) == 0bv8); free requires (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -696,28 +706,28 @@ procedure puts(); free requires (memory_load8_le(mem, 131165bv64) == 0bv8); free requires (memory_load8_le(mem, 131166bv64) == 0bv8); free requires (memory_load8_le(mem, 131167bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2448bv64) == 1bv8); - free ensures (memory_load8_le(mem, 2449bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2450bv64) == 2bv8); - free ensures (memory_load8_le(mem, 2451bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); - free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); - free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); - free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); - free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -735,28 +745,28 @@ procedure puts(); procedure strlen(); modifies Gamma_R0, Gamma_R16, Gamma_R17, R0, R16, R17; - free requires (memory_load8_le(mem, 2448bv64) == 1bv8); - free requires (memory_load8_le(mem, 2449bv64) == 0bv8); - free requires (memory_load8_le(mem, 2450bv64) == 2bv8); - free requires (memory_load8_le(mem, 2451bv64) == 0bv8); - free requires (memory_load8_le(mem, 130504bv64) == 208bv8); - free requires (memory_load8_le(mem, 130505bv64) == 8bv8); - free requires (memory_load8_le(mem, 130506bv64) == 0bv8); - free requires (memory_load8_le(mem, 130507bv64) == 0bv8); - free requires (memory_load8_le(mem, 130508bv64) == 0bv8); - free requires (memory_load8_le(mem, 130509bv64) == 0bv8); - free requires (memory_load8_le(mem, 130510bv64) == 0bv8); - free requires (memory_load8_le(mem, 130511bv64) == 0bv8); - free requires (memory_load8_le(mem, 130512bv64) == 128bv8); - free requires (memory_load8_le(mem, 130513bv64) == 8bv8); - free requires (memory_load8_le(mem, 130514bv64) == 0bv8); - free requires (memory_load8_le(mem, 130515bv64) == 0bv8); - free requires (memory_load8_le(mem, 130516bv64) == 0bv8); - free requires (memory_load8_le(mem, 130517bv64) == 0bv8); - free requires (memory_load8_le(mem, 130518bv64) == 0bv8); - free requires (memory_load8_le(mem, 130519bv64) == 0bv8); - free requires (memory_load8_le(mem, 131032bv64) == 212bv8); - free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); free requires (memory_load8_le(mem, 131034bv64) == 0bv8); free requires (memory_load8_le(mem, 131035bv64) == 0bv8); free requires (memory_load8_le(mem, 131036bv64) == 0bv8); @@ -776,28 +786,28 @@ procedure strlen(); ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); ensures (bvult64(old(R0), bvadd64(bvadd64(old(R0), R0), 1bv64))); - free ensures (memory_load8_le(mem, 2448bv64) == 1bv8); - free ensures (memory_load8_le(mem, 2449bv64) == 0bv8); - free ensures (memory_load8_le(mem, 2450bv64) == 2bv8); - free ensures (memory_load8_le(mem, 2451bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); - free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); - free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); - free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); - free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); - free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); - free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.relf b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.relf index 20ae7e5a2..c187b6cd1 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.relf +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang/malloc_memcpy_strlen_memset_free.relf @@ -1,82 +1,145 @@ -Relocation section '.rela.dyn' at offset 0x600 contains 8 entries: +Relocation section '.rela.dyn' at offset 0x578 contains 8 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -0000000000003dd0 0000000000000008 R_X86_64_RELATIVE 1180 -0000000000003dd8 0000000000000008 R_X86_64_RELATIVE 1140 -0000000000004038 0000000000000008 R_X86_64_RELATIVE 4038 -0000000000003fc0 0000000200000006 R_X86_64_GLOB_DAT 0000000000000000 __libc_start_main@GLIBC_2.34 + 0 -0000000000003fc8 0000000300000006 R_X86_64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 -0000000000003fd0 0000000700000006 R_X86_64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 -0000000000003fd8 0000000a00000006 R_X86_64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -0000000000003fe0 0000000b00000006 R_X86_64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.2.5 + 0 +000000000001fdb8 0000000000000403 R_AARCH64_RELATIVE 910 +000000000001fdc0 0000000000000403 R_AARCH64_RELATIVE 8c0 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 914 +0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 +000000000001ffc0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 +000000000001ffc8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +000000000001ffd0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 +000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -Relocation section '.rela.plt' at offset 0x6c0 contains 6 entries: +Relocation section '.rela.plt' at offset 0x638 contains 10 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -0000000000004000 0000000100000007 R_X86_64_JUMP_SLOT 0000000000000000 free@GLIBC_2.2.5 + 0 -0000000000004008 0000000400000007 R_X86_64_JUMP_SLOT 0000000000000000 puts@GLIBC_2.2.5 + 0 -0000000000004010 0000000500000007 R_X86_64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.2.5 + 0 -0000000000004018 0000000600000007 R_X86_64_JUMP_SLOT 0000000000000000 memset@GLIBC_2.2.5 + 0 -0000000000004020 0000000800000007 R_X86_64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.14 + 0 -0000000000004028 0000000900000007 R_X86_64_JUMP_SLOT 0000000000000000 malloc@GLIBC_2.2.5 + 0 +0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 +0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 +0000000000020010 0000000500000402 R_AARCH64_JUMP_SLOT 0000000000000000 __libc_start_main@GLIBC_2.34 + 0 +0000000000020018 0000000700000402 R_AARCH64_JUMP_SLOT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +0000000000020020 0000000800000402 R_AARCH64_JUMP_SLOT 0000000000000000 malloc@GLIBC_2.17 + 0 +0000000000020028 0000000900000402 R_AARCH64_JUMP_SLOT 0000000000000000 memset@GLIBC_2.17 + 0 +0000000000020030 0000000a00000402 R_AARCH64_JUMP_SLOT 0000000000000000 __gmon_start__ + 0 +0000000000020038 0000000b00000402 R_AARCH64_JUMP_SLOT 0000000000000000 abort@GLIBC_2.17 + 0 +0000000000020040 0000000c00000402 R_AARCH64_JUMP_SLOT 0000000000000000 puts@GLIBC_2.17 + 0 +0000000000020048 0000000d00000402 R_AARCH64_JUMP_SLOT 0000000000000000 free@GLIBC_2.17 + 0 -Symbol table '.dynsym' contains 12 entries: +Symbol table '.dynsym' contains 15 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.2.5 (2) - 2: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) - 3: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.2.5 (2) - 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.2.5 (2) - 6: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.2.5 (2) - 7: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.14 (4) - 9: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.2.5 (2) - 10: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 11: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.2.5 (2) + 1: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) + 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) + 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) + 6: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 7: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 (2) + 8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 (2) + 9: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 (2) + 10: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 11: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 (2) + 12: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 (2) + 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) + 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable -Symbol table '.symtab' contains 44 entries: +Symbol table '.symtab' contains 100 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o - 2: 000000000000037c 32 OBJECT LOCAL DEFAULT 4 __abi_tag - 3: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 4: 00000000000010d0 0 FUNC LOCAL DEFAULT 15 deregister_tm_clones - 5: 0000000000001100 0 FUNC LOCAL DEFAULT 15 register_tm_clones - 6: 0000000000001140 0 FUNC LOCAL DEFAULT 15 __do_global_dtors_aux - 7: 0000000000004050 1 OBJECT LOCAL DEFAULT 26 completed.0 - 8: 0000000000003dd8 0 OBJECT LOCAL DEFAULT 21 __do_global_dtors_aux_fini_array_entry - 9: 0000000000001180 0 FUNC LOCAL DEFAULT 15 frame_dummy - 10: 0000000000003dd0 0 OBJECT LOCAL DEFAULT 20 __frame_dummy_init_array_entry - 11: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c - 12: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 13: 00000000000020d8 0 OBJECT LOCAL DEFAULT 19 __FRAME_END__ - 14: 0000000000000000 0 FILE LOCAL DEFAULT ABS - 15: 0000000000003de0 0 OBJECT LOCAL DEFAULT 22 _DYNAMIC - 16: 0000000000002004 0 NOTYPE LOCAL DEFAULT 18 __GNU_EH_FRAME_HDR - 17: 0000000000003fe8 0 OBJECT LOCAL DEFAULT 24 _GLOBAL_OFFSET_TABLE_ - 18: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.2.5 - 19: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 - 20: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 21: 0000000000004030 0 NOTYPE WEAK DEFAULT 25 data_start - 22: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.2.5 - 23: 000000000000404c 0 NOTYPE GLOBAL DEFAULT 25 _edata - 24: 0000000000001244 0 FUNC GLOBAL HIDDEN 16 _fini - 25: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.2.5 - 26: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.2.5 - 27: 0000000000004040 1 OBJECT GLOBAL DEFAULT 25 password - 28: 0000000000004030 0 NOTYPE GLOBAL DEFAULT 25 __data_start - 29: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 30: 0000000000004038 0 OBJECT GLOBAL HIDDEN 25 __dso_handle - 31: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.14 - 32: 0000000000002000 4 OBJECT GLOBAL DEFAULT 17 _IO_stdin_used - 33: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.2.5 - 34: 0000000000004060 0 NOTYPE GLOBAL DEFAULT 26 _end - 35: 00000000000010a0 34 FUNC GLOBAL DEFAULT 15 _start - 36: 0000000000004058 8 OBJECT GLOBAL DEFAULT 26 buf - 37: 0000000000004041 11 OBJECT GLOBAL DEFAULT 25 stext - 38: 000000000000404c 0 NOTYPE GLOBAL DEFAULT 26 __bss_start - 39: 0000000000001190 177 FUNC GLOBAL DEFAULT 15 main - 40: 0000000000004050 0 OBJECT GLOBAL HIDDEN 25 __TMC_END__ - 41: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 42: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.2.5 - 43: 0000000000001000 0 FUNC GLOBAL HIDDEN 12 _init + 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp + 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id + 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .hash + 5: 00000000000002e8 0 SECTION LOCAL DEFAULT 5 .gnu.hash + 6: 0000000000000308 0 SECTION LOCAL DEFAULT 6 .dynsym + 7: 0000000000000470 0 SECTION LOCAL DEFAULT 7 .dynstr + 8: 0000000000000524 0 SECTION LOCAL DEFAULT 8 .gnu.version + 9: 0000000000000548 0 SECTION LOCAL DEFAULT 9 .gnu.version_r + 10: 0000000000000578 0 SECTION LOCAL DEFAULT 10 .rela.dyn + 11: 0000000000000638 0 SECTION LOCAL DEFAULT 11 .rela.plt + 12: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 13: 0000000000000740 0 SECTION LOCAL DEFAULT 13 .plt + 14: 0000000000000800 0 SECTION LOCAL DEFAULT 14 .text + 15: 00000000000009c4 0 SECTION LOCAL DEFAULT 15 .fini + 16: 00000000000009d8 0 SECTION LOCAL DEFAULT 16 .rodata + 17: 00000000000009dc 0 SECTION LOCAL DEFAULT 17 .eh_frame_hdr + 18: 0000000000000a18 0 SECTION LOCAL DEFAULT 18 .eh_frame + 19: 000000000001fdb8 0 SECTION LOCAL DEFAULT 19 .init_array + 20: 000000000001fdc0 0 SECTION LOCAL DEFAULT 20 .fini_array + 21: 000000000001fdc8 0 SECTION LOCAL DEFAULT 21 .dynamic + 22: 000000000001ffb8 0 SECTION LOCAL DEFAULT 22 .got + 23: 000000000001ffe8 0 SECTION LOCAL DEFAULT 23 .got.plt + 24: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 25: 0000000000020070 0 SECTION LOCAL DEFAULT 25 .bss + 26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment + 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 28: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 29: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 30: 0000000000000800 0 NOTYPE LOCAL DEFAULT 14 $x + 31: 0000000000000a2c 0 NOTYPE LOCAL DEFAULT 18 $d + 32: 00000000000009d8 0 NOTYPE LOCAL DEFAULT 16 $d + 33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 34: 0000000000000834 0 NOTYPE LOCAL DEFAULT 14 $x + 35: 0000000000000834 20 FUNC LOCAL DEFAULT 14 call_weak_fn + 36: 0000000000000728 0 NOTYPE LOCAL DEFAULT 12 $x + 37: 00000000000009c4 0 NOTYPE LOCAL DEFAULT 15 $x + 38: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 39: 0000000000000738 0 NOTYPE LOCAL DEFAULT 12 $x + 40: 00000000000009d0 0 NOTYPE LOCAL DEFAULT 15 $x + 41: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 42: 0000000000000850 0 NOTYPE LOCAL DEFAULT 14 $x + 43: 0000000000000850 0 FUNC LOCAL DEFAULT 14 deregister_tm_clones + 44: 0000000000000880 0 FUNC LOCAL DEFAULT 14 register_tm_clones + 45: 0000000000020058 0 NOTYPE LOCAL DEFAULT 24 $d + 46: 00000000000008c0 0 FUNC LOCAL DEFAULT 14 __do_global_dtors_aux + 47: 0000000000020070 1 OBJECT LOCAL DEFAULT 25 completed.0 + 48: 000000000001fdc0 0 NOTYPE LOCAL DEFAULT 20 $d + 49: 000000000001fdc0 0 OBJECT LOCAL DEFAULT 20 __do_global_dtors_aux_fini_array_entry + 50: 0000000000000910 0 FUNC LOCAL DEFAULT 14 frame_dummy + 51: 000000000001fdb8 0 NOTYPE LOCAL DEFAULT 19 $d + 52: 000000000001fdb8 0 OBJECT LOCAL DEFAULT 19 __frame_dummy_init_array_entry + 53: 0000000000000a40 0 NOTYPE LOCAL DEFAULT 18 $d + 54: 0000000000020070 0 NOTYPE LOCAL DEFAULT 25 $d + 55: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 56: 0000000000000914 0 NOTYPE LOCAL DEFAULT 14 $x.0 + 57: 0000000000020060 0 NOTYPE LOCAL DEFAULT 24 $d.1 + 58: 0000000000020078 0 NOTYPE LOCAL DEFAULT 25 $d.2 + 59: 000000000000001d 0 NOTYPE LOCAL DEFAULT 26 $d.3 + 60: 0000000000000aa0 0 NOTYPE LOCAL DEFAULT 18 $d.4 + 61: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 62: 0000000000000adc 0 NOTYPE LOCAL DEFAULT 18 $d + 63: 0000000000000adc 0 OBJECT LOCAL DEFAULT 18 __FRAME_END__ + 64: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 65: 000000000001fdc8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 66: 00000000000009dc 0 NOTYPE LOCAL DEFAULT 17 __GNU_EH_FRAME_HDR + 67: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 68: 0000000000000740 0 NOTYPE LOCAL DEFAULT 13 $x + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 71: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 72: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 73: 0000000000020050 0 NOTYPE WEAK DEFAULT 24 data_start + 74: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start__ + 75: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 76: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _bss_end__ + 77: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 _edata + 78: 00000000000009c4 0 FUNC GLOBAL HIDDEN 15 _fini + 79: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __bss_end__ + 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 81: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 82: 0000000000020060 1 OBJECT GLOBAL DEFAULT 24 password + 83: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 24 __data_start + 84: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 85: 0000000000020058 0 OBJECT GLOBAL HIDDEN 24 __dso_handle + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 87: 00000000000009d8 4 OBJECT GLOBAL DEFAULT 16 _IO_stdin_used + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 89: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _end + 90: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 91: 0000000000000800 52 FUNC GLOBAL DEFAULT 14 _start + 92: 0000000000020078 8 OBJECT GLOBAL DEFAULT 25 buf + 93: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __end__ + 94: 0000000000020061 11 OBJECT GLOBAL DEFAULT 24 stext + 95: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start + 96: 0000000000000914 176 FUNC GLOBAL DEFAULT 14 main + 97: 0000000000020070 0 OBJECT GLOBAL HIDDEN 24 __TMC_END__ + 98: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 99: 0000000000000728 0 FUNC GLOBAL HIDDEN 12 _init diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.adt b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.adt index b503d2aa0..beec69be2 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.adt @@ -1,760 +1,762 @@ Project(Attrs([Attr("filename","\"a.out\""), -Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2400 20 2400)\n(code-region 1984 416 1984)\n(code-region 1776 192 1776)\n(code-region 1752 24 1752)\n(code-start 2036)\n(code-start 1984)\n(code-start 2260)\n(entry-point 1984)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1752 0)\n(llvm:code-entry main 2260 140)\n(llvm:code-entry _start 1984 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2400 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2256 0)\n(llvm:code-entry __do_global_dtors_aux 2176 0)\n(llvm:code-entry register_tm_clones 2112 0)\n(llvm:code-entry deregister_tm_clones 2064 0)\n(llvm:code-entry call_weak_fn 2036 20)\n(llvm:code-entry .fini 2400 20)\n(llvm:code-entry .text 1984 416)\n(llvm:code-entry .plt 1776 192)\n(llvm:code-entry .init 1752 24)\n(llvm:elf-program-header 08 64968 568)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2424 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64984 480)\n(llvm:elf-program-header 03 64968 676)\n(llvm:elf-program-header 02 0 2696)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130504 568)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2424 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130520 480)\n(llvm:elf-virtual-program-header 03 130504 696)\n(llvm:elf-virtual-program-header 02 0 2696)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 1984)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68804)\n(llvm:section-entry .strtab 0 716 68088)\n(llvm:section-entry .symtab 0 2376 65712)\n(llvm:section-entry .comment 0 63 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130520 480 64984)\n(llvm:section-entry .fini_array 130512 8 64976)\n(llvm:section-entry .init_array 130504 8 64968)\n(llvm:section-entry .eh_frame 2488 208 2488)\n(llvm:section-entry .eh_frame_hdr 2424 60 2424)\n(llvm:section-entry .rodata 2420 4 2420)\n(llvm:section-entry .fini 2400 20 2400)\n(llvm:section-entry .text 1984 416 1984)\n(llvm:section-entry .plt 1776 192 1776)\n(llvm:section-entry .init 1752 24 1752)\n(llvm:section-entry .rela.plt 1512 240 1512)\n(llvm:section-entry .rela.dyn 1320 192 1320)\n(llvm:section-entry .gnu.version_r 1272 48 1272)\n(llvm:section-entry .gnu.version 1236 30 1236)\n(llvm:section-entry .dynstr 1056 179 1056)\n(llvm:section-entry .dynsym 696 360 696)\n(llvm:section-entry .gnu.hash 664 28 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1752 0 1752 1752)\n(llvm:symbol-entry main 2260 140 2260 2260)\n(llvm:symbol-entry _start 1984 52 1984 1984)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2400 0 2400 2400)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2256 0 2256 2256)\n(llvm:symbol-entry __do_global_dtors_aux 2176 0 2176 2176)\n(llvm:symbol-entry register_tm_clones 2112 0 2112 2112)\n(llvm:symbol-entry deregister_tm_clones 2064 0 2064 2064)\n(llvm:symbol-entry call_weak_fn 2036 20 2036 2036)\n(mapped 0 2696 0)\n(mapped 130504 676 64968)\n(named-region 0 2696 02)\n(named-region 130504 696 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 28 .gnu.hash)\n(named-region 696 360 .dynsym)\n(named-region 1056 179 .dynstr)\n(named-region 1236 30 .gnu.version)\n(named-region 1272 48 .gnu.version_r)\n(named-region 1320 192 .rela.dyn)\n(named-region 1512 240 .rela.plt)\n(named-region 1752 24 .init)\n(named-region 1776 192 .plt)\n(named-region 1984 416 .text)\n(named-region 2400 20 .fini)\n(named-region 2420 4 .rodata)\n(named-region 2424 60 .eh_frame_hdr)\n(named-region 2488 208 .eh_frame)\n(named-region 130504 8 .init_array)\n(named-region 130512 8 .fini_array)\n(named-region 130520 480 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 63 .comment)\n(named-region 0 2376 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2036 call_weak_fn)\n(named-symbol 2064 deregister_tm_clones)\n(named-symbol 2112 register_tm_clones)\n(named-symbol 2176 __do_global_dtors_aux)\n(named-symbol 2256 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2400 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 1984 _start)\n(named-symbol 2260 main)\n(named-symbol 1752 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 28)\n(section 696 360)\n(section 1056 179)\n(section 1236 30)\n(section 1272 48)\n(section 1320 192)\n(section 1512 240)\n(section 1752 24)\n(section 1776 192)\n(section 1984 416)\n(section 2400 20)\n(section 2420 4)\n(section 2424 60)\n(section 2488 208)\n(section 130504 8)\n(section 130512 8)\n(section 130520 480)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 63)\n(section 0 2376)\n(section 0 716)\n(section 0 259)\n(segment 0 2696 true false true)\n(segment 130504 696 true true false)\n(subarch v8)\n(symbol-chunk 2036 20 2036)\n(symbol-chunk 1984 52 1984)\n(symbol-chunk 2260 140 2260)\n(symbol-value 2036 2036)\n(symbol-value 2064 2064)\n(symbol-value 2112 2112)\n(symbol-value 2176 2176)\n(symbol-value 2256 2256)\n(symbol-value 2400 2400)\n(symbol-value 1984 1984)\n(symbol-value 2260 2260)\n(symbol-value 1752 1752)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2464 20 2464)\n(code-region 2048 416 2048)\n(code-region 1856 192 1856)\n(code-region 1832 24 1832)\n(code-start 2100)\n(code-start 2048)\n(code-start 2324)\n(entry-point 2048)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1832 0)\n(llvm:code-entry main 2324 140)\n(llvm:code-entry _start 2048 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2464 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2320 0)\n(llvm:code-entry __do_global_dtors_aux 2240 0)\n(llvm:code-entry register_tm_clones 2176 0)\n(llvm:code-entry deregister_tm_clones 2128 0)\n(llvm:code-entry call_weak_fn 2100 20)\n(llvm:code-entry .fini 2464 20)\n(llvm:code-entry .text 2048 416)\n(llvm:code-entry .plt 1856 192)\n(llvm:code-entry .init 1832 24)\n(llvm:elf-program-header 08 64952 584)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2488 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64968 496)\n(llvm:elf-program-header 03 64952 692)\n(llvm:elf-program-header 02 0 2760)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130488 584)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2488 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130504 496)\n(llvm:elf-virtual-program-header 03 130488 712)\n(llvm:elf-virtual-program-header 02 0 2760)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2048)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68820)\n(llvm:section-entry .strtab 0 716 68104)\n(llvm:section-entry .symtab 0 2400 65704)\n(llvm:section-entry .comment 0 58 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130504 496 64968)\n(llvm:section-entry .fini_array 130496 8 64960)\n(llvm:section-entry .init_array 130488 8 64952)\n(llvm:section-entry .eh_frame 2552 208 2552)\n(llvm:section-entry .eh_frame_hdr 2488 60 2488)\n(llvm:section-entry .rodata 2484 4 2484)\n(llvm:section-entry .fini 2464 20 2464)\n(llvm:section-entry .text 2048 416 2048)\n(llvm:section-entry .plt 1856 192 1856)\n(llvm:section-entry .init 1832 24 1832)\n(llvm:section-entry .rela.plt 1592 240 1592)\n(llvm:section-entry .rela.dyn 1400 192 1400)\n(llvm:section-entry .gnu.version_r 1352 48 1352)\n(llvm:section-entry .gnu.version 1316 30 1316)\n(llvm:section-entry .dynstr 1136 179 1136)\n(llvm:section-entry .dynsym 776 360 776)\n(llvm:section-entry .gnu.hash 744 28 744)\n(llvm:section-entry .hash 664 80 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1832 0 1832 1832)\n(llvm:symbol-entry main 2324 140 2324 2324)\n(llvm:symbol-entry _start 2048 52 2048 2048)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2464 0 2464 2464)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2320 0 2320 2320)\n(llvm:symbol-entry __do_global_dtors_aux 2240 0 2240 2240)\n(llvm:symbol-entry register_tm_clones 2176 0 2176 2176)\n(llvm:symbol-entry deregister_tm_clones 2128 0 2128 2128)\n(llvm:symbol-entry call_weak_fn 2100 20 2100 2100)\n(mapped 0 2760 0)\n(mapped 130488 692 64952)\n(named-region 0 2760 02)\n(named-region 130488 712 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 80 .hash)\n(named-region 744 28 .gnu.hash)\n(named-region 776 360 .dynsym)\n(named-region 1136 179 .dynstr)\n(named-region 1316 30 .gnu.version)\n(named-region 1352 48 .gnu.version_r)\n(named-region 1400 192 .rela.dyn)\n(named-region 1592 240 .rela.plt)\n(named-region 1832 24 .init)\n(named-region 1856 192 .plt)\n(named-region 2048 416 .text)\n(named-region 2464 20 .fini)\n(named-region 2484 4 .rodata)\n(named-region 2488 60 .eh_frame_hdr)\n(named-region 2552 208 .eh_frame)\n(named-region 130488 8 .init_array)\n(named-region 130496 8 .fini_array)\n(named-region 130504 496 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 58 .comment)\n(named-region 0 2400 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2100 call_weak_fn)\n(named-symbol 2128 deregister_tm_clones)\n(named-symbol 2176 register_tm_clones)\n(named-symbol 2240 __do_global_dtors_aux)\n(named-symbol 2320 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2464 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2048 _start)\n(named-symbol 2324 main)\n(named-symbol 1832 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 80)\n(section 744 28)\n(section 776 360)\n(section 1136 179)\n(section 1316 30)\n(section 1352 48)\n(section 1400 192)\n(section 1592 240)\n(section 1832 24)\n(section 1856 192)\n(section 2048 416)\n(section 2464 20)\n(section 2484 4)\n(section 2488 60)\n(section 2552 208)\n(section 130488 8)\n(section 130496 8)\n(section 130504 496)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 58)\n(section 0 2400)\n(section 0 716)\n(section 0 259)\n(segment 0 2760 true false true)\n(segment 130488 712 true true false)\n(subarch v8)\n(symbol-chunk 2100 20 2100)\n(symbol-chunk 2048 52 2048)\n(symbol-chunk 2324 140 2324)\n(symbol-value 2100 2100)\n(symbol-value 2128 2128)\n(symbol-value 2176 2176)\n(symbol-value 2240 2240)\n(symbol-value 2320 2320)\n(symbol-value 2464 2464)\n(symbol-value 2048 2048)\n(symbol-value 2324 2324)\n(symbol-value 1832 1832)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), -Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x0a\x00\x00\x00\x00\x00\x00\x88\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01"), -Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x0a\x00\x00\x00\x00\x00\x00\x88\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xa4\x02\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x78\x09\x00\x00\x00\x00\x00\x00\x78\x09\x00\x00\x00\x00\x00\x00\x78\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x5b\x10\x8b\xba\x47\xb7\xda\x9b\xd0\xcb\x03\x1e\x2f\x08\xb4\x7c\x89\x28\xe0\x38\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x0a\x00\x00\x00\x00\x00\x00\x88\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xa4\x02\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x78\x09\x00\x00\x00\x00\x00\x00\x78\x09\x00\x00\x00\x00\x00\x00\x78\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x5b\x10\x8b\xba\x47\xb7\xda\x9b\xd0\xcb\x03\x1e\x2f\x08\xb4\x7c\x89\x28\xe0\x38\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xf5\x0b\x00\xf9\xf4\x4f\x02\xa9\xfd\x03\x00\x91\x60\x01\x80\x52\x9a\xff\xff\x97\x15\x01\x00\x90\x14\x01\x00\x90\x94\x86\x01\x91\xf3\x03\x00\xaa\xa0\x3e\x00\xf9\xe0\x03\x14\xaa\x87\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\xe1\x03\x14\xaa\x7f\xff\xff\x97\xe0\x03\x13\xaa\x9d\xff\xff\x97\xa8\x3e\x40\xf9\x1f\x11\x00\x39\xb3\x3e\x40\xf9\xe0\x03\x13\xaa\x7c\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\x21\x00\x80\x52\x88\xff\xff\x97\xa0\x3e\x40\xf9"), -Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c"), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x0a\x00\x00\x00\x00\x00\x00\xc8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x0a\x00\x00\x00\x00\x00\x00\xc8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xb8\x09\x00\x00\x00\x00\x00\x00\xb8\x09\x00\x00\x00\x00\x00\x00\xb8\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x15\xf3\x7a\xcd\x66\xb4\xb5\xc0\xdd\x26\xd5\x87\xd5\x89\xec\xc4\x7f\x24\x9b\xdd\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x0a\x00\x00\x00\x00\x00\x00\xc8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xb8\x09\x00\x00\x00\x00\x00\x00\xb8\x09\x00\x00\x00\x00\x00\x00\xb8\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x15\xf3\x7a\xcd\x66\xb4\xb5\xc0\xdd\x26\xd5\x87\xd5\x89\xec\xc4\x7f\x24\x9b\xdd\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xf5\x0b\x00\xf9\xf4\x4f\x02\xa9\xfd\x03\x00\x91\x60\x01\x80\x52\x9e\xff\xff\x97\x15\x01\x00\x90\x14\x01\x00\x90\x94\x86\x01\x91\xf3\x03\x00\xaa\xa0\x3e\x00\xf9\xe0\x03\x14\xaa\x8b\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\xe1\x03\x14\xaa\x83\xff\xff\x97\xe0\x03\x13\xaa\xa1\xff\xff\x97"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00"), Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), -Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x5b\x10\x8b\xba\x47\xb7\xda\x9b\xd0\xcb\x03\x1e\x2f\x08\xb4\x7c\x89\x28\xe0\x38"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x15\xf3\x7a\xcd\x66\xb4\xb5\xc0\xdd\x26\xd5\x87\xd5\x89\xec\xc4\x7f\x24\x9b\xdd"), Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), -Section(".gnu.hash", 0x298, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynsym", 0x2B8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynstr", 0x420, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), -Section(".gnu.version", 0x4D4, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), -Section(".gnu.version_r", 0x4F8, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.dyn", 0x528, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.plt", 0x5E8, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init", 0x6D8, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".plt", 0x6F0, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), -Section(".fini", 0x960, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".rodata", 0x974, "\x01\x00\x02\x00"), -Section(".eh_frame_hdr", 0x978, "\x01\x1b\x03\x3b\x3c\x00\x00\x00\x06\x00\x00\x00\x48\xfe\xff\xff\x54\x00\x00\x00\x98\xfe\xff\xff\x68\x00\x00\x00\xc8\xfe\xff\xff\x7c\x00\x00\x00\x08\xff\xff\xff\x90\x00\x00\x00\x58\xff\xff\xff\xb4\x00\x00\x00\x5c\xff\xff\xff\xdc\x00\x00\x00"), -Section(".eh_frame", 0x9B8, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xec\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x28\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x44\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x70\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x9c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x2c\x00\x00\x00\x18\x00\x00\x00\x78\xfe\xff\xff\x8c\x00\x00\x00\x00\x44\x0e\x30\x4c\x0c\x1d\x30\x93\x02\x94\x04\x95\x08\x9e\x0a\x9d\x0c\x02\x6c\x0c\x1f\x30\x4c\x0e\x00\xd3\xd4\xd5\xde\xdd\x00\x00\x00\x00\x00"), -Section(".fini_array", 0x1FDD0, "\x80\x08\x00\x00\x00\x00\x00\x00"), -Section(".dynamic", 0x1FDD8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x60\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x20\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\xe8\x05\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x28\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xf8\x04\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xd4\x04\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init_array", 0x1FDC8, "\xd0\x08\x00\x00\x00\x00\x00\x00"), -Section(".got", 0x1FFB8, "\xd8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00"), +Section(".hash", 0x298, "\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00"), +Section(".gnu.hash", 0x2E8, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x308, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x470, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x524, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x548, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x578, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x638, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x728, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x740, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0x9A0, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0x9B4, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0x9B8, "\x01\x1b\x03\x3b\x3c\x00\x00\x00\x06\x00\x00\x00\x48\xfe\xff\xff\x54\x00\x00\x00\x98\xfe\xff\xff\x68\x00\x00\x00\xc8\xfe\xff\xff\x7c\x00\x00\x00\x08\xff\xff\xff\x90\x00\x00\x00\x58\xff\xff\xff\xb4\x00\x00\x00\x5c\xff\xff\xff\xdc\x00\x00\x00"), +Section(".eh_frame", 0x9F8, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xec\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x28\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x44\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x70\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x9c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x2c\x00\x00\x00\x18\x00\x00\x00\x78\xfe\xff\xff\x8c\x00\x00\x00\x00\x44\x0e\x30\x4c\x0c\x1d\x30\x93\x02\x94\x04\x95\x08\x9e\x0a\x9d\x0c\x02\x6c\x0c\x1f\x30\x4c\x0e\x00\xd3\xd4\xd5\xde\xdd\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDC0, "\xc0\x08\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDC8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x28\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xa0\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x70\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x38\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x78\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\x48\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\x24\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDB8, "\x10\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFB8, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00"), Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), -Section(".text", 0x7C0, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xf5\x0b\x00\xf9\xf4\x4f\x02\xa9\xfd\x03\x00\x91\x60\x01\x80\x52\x9a\xff\xff\x97\x15\x01\x00\x90\x14\x01\x00\x90\x94\x86\x01\x91\xf3\x03\x00\xaa\xa0\x3e\x00\xf9\xe0\x03\x14\xaa\x87\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\xe1\x03\x14\xaa\x7f\xff\xff\x97\xe0\x03\x13\xaa\x9d\xff\xff\x97\xa8\x3e\x40\xf9\x1f\x11\x00\x39\xb3\x3e\x40\xf9\xe0\x03\x13\xaa\x7c\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\x21\x00\x80\x52\x88\xff\xff\x97\xa0\x3e\x40\xf9\x96\xff\xff\x97\xe0\x03\x1f\x2a\xf4\x4f\x42\xa9\xf5\x0b\x40\xf9\xfd\x7b\xc3\xa8\xc0\x03\x5f\xd6")]), -Memmap([Annotation(Region(0x0,0xA87), Attr("segment","02 0 2696")), -Annotation(Region(0x7C0,0x7F3), Attr("symbol","\"_start\"")), +Section(".text", 0x800, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xf5\x0b\x00\xf9\xf4\x4f\x02\xa9\xfd\x03\x00\x91\x60\x01\x80\x52\x9e\xff\xff\x97\x15\x01\x00\x90\x14\x01\x00\x90\x94\x86\x01\x91\xf3\x03\x00\xaa\xa0\x3e\x00\xf9\xe0\x03\x14\xaa\x8b\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\xe1\x03\x14\xaa\x83\xff\xff\x97\xe0\x03\x13\xaa\xa1\xff\xff\x97\xa8\x3e\x40\xf9\x1f\x11\x00\x39\xb3\x3e\x40\xf9\xe0\x03\x13\xaa\x80\xff\xff\x97\xe2\x03\x00\xaa\xe0\x03\x13\xaa\x21\x00\x80\x52\x8c\xff\xff\x97\xa0\x3e\x40\xf9\x9a\xff\xff\x97\xe0\x03\x1f\x2a\xf4\x4f\x42\xa9\xf5\x0b\x40\xf9\xfd\x7b\xc3\xa8\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xAC7), Attr("segment","02 0 2760")), +Annotation(Region(0x800,0x833), Attr("symbol","\"_start\"")), Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), Annotation(Region(0x0,0x2CB), Attr("section","\".strtab\"")), -Annotation(Region(0x0,0x947), Attr("section","\".symtab\"")), -Annotation(Region(0x0,0x3E), Attr("section","\".comment\"")), +Annotation(Region(0x0,0x95F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x39), Attr("section","\".comment\"")), Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), -Annotation(Region(0x298,0x2B3), Attr("section","\".gnu.hash\"")), -Annotation(Region(0x2B8,0x41F), Attr("section","\".dynsym\"")), -Annotation(Region(0x420,0x4D2), Attr("section","\".dynstr\"")), -Annotation(Region(0x4D4,0x4F1), Attr("section","\".gnu.version\"")), -Annotation(Region(0x4F8,0x527), Attr("section","\".gnu.version_r\"")), -Annotation(Region(0x528,0x5E7), Attr("section","\".rela.dyn\"")), -Annotation(Region(0x5E8,0x6D7), Attr("section","\".rela.plt\"")), -Annotation(Region(0x6D8,0x6EF), Attr("section","\".init\"")), -Annotation(Region(0x6F0,0x7AF), Attr("section","\".plt\"")), -Annotation(Region(0x6D8,0x6EF), Attr("code-region","()")), -Annotation(Region(0x6F0,0x7AF), Attr("code-region","()")), -Annotation(Region(0x7C0,0x7F3), Attr("symbol-info","_start 0x7C0 52")), -Annotation(Region(0x7F4,0x807), Attr("symbol","\"call_weak_fn\"")), -Annotation(Region(0x7F4,0x807), Attr("symbol-info","call_weak_fn 0x7F4 20")), -Annotation(Region(0x8D4,0x95F), Attr("symbol","\"main\"")), -Annotation(Region(0x8D4,0x95F), Attr("symbol-info","main 0x8D4 140")), -Annotation(Region(0x960,0x973), Attr("section","\".fini\"")), -Annotation(Region(0x974,0x977), Attr("section","\".rodata\"")), -Annotation(Region(0x978,0x9B3), Attr("section","\".eh_frame_hdr\"")), -Annotation(Region(0x9B8,0xA87), Attr("section","\".eh_frame\"")), -Annotation(Region(0x1FDC8,0x2006B), Attr("segment","03 0x1FDC8 696")), -Annotation(Region(0x1FDD0,0x1FDD7), Attr("section","\".fini_array\"")), -Annotation(Region(0x1FDD8,0x1FFB7), Attr("section","\".dynamic\"")), -Annotation(Region(0x1FDC8,0x1FDCF), Attr("section","\".init_array\"")), +Annotation(Region(0x298,0x2E7), Attr("section","\".hash\"")), +Annotation(Region(0x2E8,0x303), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x308,0x46F), Attr("section","\".dynsym\"")), +Annotation(Region(0x470,0x522), Attr("section","\".dynstr\"")), +Annotation(Region(0x524,0x541), Attr("section","\".gnu.version\"")), +Annotation(Region(0x548,0x577), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x578,0x637), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x638,0x727), Attr("section","\".rela.plt\"")), +Annotation(Region(0x728,0x73F), Attr("section","\".init\"")), +Annotation(Region(0x740,0x7FF), Attr("section","\".plt\"")), +Annotation(Region(0x728,0x73F), Attr("code-region","()")), +Annotation(Region(0x740,0x7FF), Attr("code-region","()")), +Annotation(Region(0x800,0x833), Attr("symbol-info","_start 0x800 52")), +Annotation(Region(0x834,0x847), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x834,0x847), Attr("symbol-info","call_weak_fn 0x834 20")), +Annotation(Region(0x914,0x99F), Attr("symbol","\"main\"")), +Annotation(Region(0x914,0x99F), Attr("symbol-info","main 0x914 140")), +Annotation(Region(0x9A0,0x9B3), Attr("section","\".fini\"")), +Annotation(Region(0x9B4,0x9B7), Attr("section","\".rodata\"")), +Annotation(Region(0x9B8,0x9F3), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0x9F8,0xAC7), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDB8,0x2006B), Attr("segment","03 0x1FDB8 712")), +Annotation(Region(0x1FDC0,0x1FDC7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDC8,0x1FFB7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDB8,0x1FDBF), Attr("section","\".init_array\"")), Annotation(Region(0x1FFB8,0x1FFE7), Attr("section","\".got\"")), Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), -Annotation(Region(0x7C0,0x95F), Attr("section","\".text\"")), -Annotation(Region(0x7C0,0x95F), Attr("code-region","()")), -Annotation(Region(0x960,0x973), Attr("code-region","()"))]), -Program(Tid(2_109, "%0000083d"), Attrs([]), - Subs([Sub(Tid(2_081, "@__cxa_finalize"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x740"), -Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_110, "%0000083e"), +Annotation(Region(0x800,0x99F), Attr("section","\".text\"")), +Annotation(Region(0x800,0x99F), Attr("code-region","()")), +Annotation(Region(0x9A0,0x9B3), Attr("code-region","()"))]), +Program(Tid(2_263, "%000008d7"), Attrs([]), + Subs([Sub(Tid(2_192, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x790"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_264, "%000008d8"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_243, "@__cxa_finalize"), - Attrs([Attr("address","0x740")]), Phis([]), -Defs([Def(Tid(1_663, "%0000067f"), Attrs([Attr("address","0x740"), + Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_663, "%0000067f"), Attrs([Attr("address","0x790"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_671, "%00000687"), Attrs([Attr("address","0x744"), +Def(Tid(1_671, "%00000687"), Attrs([Attr("address","0x794"), Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_678, "%0000068e"), Attrs([Attr("address","0x748"), +Def(Tid(1_678, "%0000068e"), Attrs([Attr("address","0x798"), Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_683, "%00000693"), - Attrs([Attr("address","0x74C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_082, "@__do_global_dtors_aux"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), - "__do_global_dtors_aux", Args([Arg(Tid(2_111, "%0000083f"), +Sub(Tid(2_193, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_265, "%000008d9"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(766, "@__do_global_dtors_aux"), - Attrs([Attr("address","0x880")]), Phis([]), Defs([Def(Tid(773, "%00000305"), - Attrs([Attr("address","0x880"), + Attrs([Attr("address","0x8C0")]), Phis([]), Defs([Def(Tid(773, "%00000305"), + Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), -Def(Tid(778, "%0000030a"), Attrs([Attr("address","0x880"), +Def(Tid(778, "%0000030a"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(783, "%0000030f"), Attrs([Attr("address","0x880"), +Def(Tid(783, "%0000030f"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(787, "%00000313"), Attrs([Attr("address","0x880"), +Def(Tid(787, "%00000313"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), Var("#34",Imm(64))), Def(Tid(794, "%0000031a"), - Attrs([Attr("address","0x884"), Attr("insn","mov x29, sp")]), + Attrs([Attr("address","0x8C4"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(802, "%00000322"), - Attrs([Attr("address","0x888"), Attr("insn","str x19, [sp, #0x10]")]), + Attrs([Attr("address","0x8C8"), Attr("insn","str x19, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), -Def(Tid(808, "%00000328"), Attrs([Attr("address","0x88C"), +Def(Tid(808, "%00000328"), Attrs([Attr("address","0x8CC"), Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), -Def(Tid(817, "%00000331"), Attrs([Attr("address","0x890"), +Def(Tid(817, "%00000331"), Attrs([Attr("address","0x8D0"), Attr("insn","ldrb w0, [x19, #0x70]")]), Var("R0",Imm(64)), UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),BigEndian(),8))), -Def(Tid(829, "%0000033d"), Attrs([Attr("address","0x894"), +Def(Tid(829, "%0000033d"), Attrs([Attr("address","0x8D4"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), -Jmps([Goto(Tid(823, "%00000337"), Attrs([Attr("address","0x894"), +Jmps([Goto(Tid(823, "%00000337"), Attrs([Attr("address","0x8D4"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), -Direct(Tid(821, "%00000335"))), Goto(Tid(2_083, "%00000823"), Attrs([]), +Direct(Tid(821, "%00000335"))), Goto(Tid(2_253, "%000008cd"), Attrs([]), Int(1,1), Direct(Tid(1_177, "%00000499")))])), Blk(Tid(1_177, "%00000499"), - Attrs([Attr("address","0x898")]), Phis([]), -Defs([Def(Tid(1_181, "%0000049d"), Attrs([Attr("address","0x898"), + Attrs([Attr("address","0x8D8")]), Phis([]), +Defs([Def(Tid(1_181, "%0000049d"), Attrs([Attr("address","0x8D8"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), -Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x89C"), +Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x8DC"), Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), -Def(Tid(1_201, "%000004b1"), Attrs([Attr("address","0x8A0"), +Def(Tid(1_201, "%000004b1"), Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), Var("#86",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_195, "%000004ab"), - Attrs([Attr("address","0x8A0"), Attr("insn","cbz x0, #0x10")]), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), Var("#86",Imm(1)), Direct(Tid(1_193, "%000004a9"))), -Goto(Tid(2_084, "%00000824"), Attrs([]), Int(1,1), +Goto(Tid(2_254, "%000008ce"), Attrs([]), Int(1,1), Direct(Tid(1_225, "%000004c9")))])), Blk(Tid(1_225, "%000004c9"), - Attrs([Attr("address","0x8A4")]), Phis([]), -Defs([Def(Tid(1_229, "%000004cd"), Attrs([Attr("address","0x8A4"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_229, "%000004cd"), Attrs([Attr("address","0x8E4"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(1_237, "%000004d5"), Attrs([Attr("address","0x8A8"), +Def(Tid(1_237, "%000004d5"), Attrs([Attr("address","0x8E8"), Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), -Def(Tid(1_242, "%000004da"), Attrs([Attr("address","0x8AC"), -Attr("insn","bl #-0x16c")]), Var("R30",Imm(64)), Int(2224,64))]), -Jmps([Call(Tid(1_245, "%000004dd"), Attrs([Attr("address","0x8AC"), -Attr("insn","bl #-0x16c")]), Int(1,1), -(Direct(Tid(2_081, "@__cxa_finalize")),Direct(Tid(1_193, "%000004a9"))))])), -Blk(Tid(1_193, "%000004a9"), Attrs([Attr("address","0x8B0")]), Phis([]), -Defs([Def(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x8B0"), -Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2228,64))]), -Jmps([Call(Tid(1_208, "%000004b8"), Attrs([Attr("address","0x8B0"), +Def(Tid(1_242, "%000004da"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Var("R30",Imm(64)), Int(2288,64))]), +Jmps([Call(Tid(1_245, "%000004dd"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Int(1,1), +(Direct(Tid(2_192, "@__cxa_finalize")),Direct(Tid(1_193, "%000004a9"))))])), +Blk(Tid(1_193, "%000004a9"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2292,64))]), +Jmps([Call(Tid(1_208, "%000004b8"), Attrs([Attr("address","0x8F0"), Attr("insn","bl #-0xa0")]), Int(1,1), -(Direct(Tid(2_095, "@deregister_tm_clones")),Direct(Tid(1_210, "%000004ba"))))])), -Blk(Tid(1_210, "%000004ba"), Attrs([Attr("address","0x8B4")]), Phis([]), -Defs([Def(Tid(1_215, "%000004bf"), Attrs([Attr("address","0x8B4"), +(Direct(Tid(2_206, "@deregister_tm_clones")),Direct(Tid(1_210, "%000004ba"))))])), +Blk(Tid(1_210, "%000004ba"), Attrs([Attr("address","0x8F4")]), Phis([]), +Defs([Def(Tid(1_215, "%000004bf"), Attrs([Attr("address","0x8F4"), Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), -Def(Tid(1_223, "%000004c7"), Attrs([Attr("address","0x8B8"), +Def(Tid(1_223, "%000004c7"), Attrs([Attr("address","0x8F8"), Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), -Jmps([Goto(Tid(2_085, "%00000825"), Attrs([]), Int(1,1), +Jmps([Goto(Tid(2_255, "%000008cf"), Attrs([]), Int(1,1), Direct(Tid(821, "%00000335")))])), Blk(Tid(821, "%00000335"), - Attrs([Attr("address","0x8BC")]), Phis([]), Defs([Def(Tid(837, "%00000345"), - Attrs([Attr("address","0x8BC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Attrs([Attr("address","0x8FC")]), Phis([]), Defs([Def(Tid(837, "%00000345"), + Attrs([Attr("address","0x8FC"), Attr("insn","ldr x19, [sp, #0x10]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(847, "%0000034f"), Attrs([Attr("address","0x8C0"), +Def(Tid(847, "%0000034f"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(851, "%00000353"), Attrs([Attr("address","0x8C0"), +Def(Tid(851, "%00000353"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(854, "%00000356"), Attrs([Attr("address","0x8C0"), +Def(Tid(854, "%00000356"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(859, "%0000035b"), - Attrs([Attr("address","0x8C4"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_086, "@__libc_start_main"), + Attrs([Attr("address","0x904"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_197, "@__libc_start_main"), Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), -Attr("address","0x730"), Attr("stub","()")]), "__libc_start_main", - Args([Arg(Tid(2_112, "%00000840"), +Attr("address","0x780"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_266, "%000008da"), Attrs([Attr("c.layout","**[ : 64]"), Attr("c.data","Top:u64 ptr ptr"), Attr("c.type","signed (*)(signed , char** , char** );*")]), Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_113, "%00000841"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_267, "%000008db"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), -Arg(Tid(2_114, "%00000842"), Attrs([Attr("c.layout","**[char : 8]"), +Arg(Tid(2_268, "%000008dc"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), -Arg(Tid(2_115, "%00000843"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_269, "%000008dd"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), -Arg(Tid(2_116, "%00000844"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_270, "%000008de"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(578, "@__libc_start_main"), - Attrs([Attr("address","0x730")]), Phis([]), -Defs([Def(Tid(1_638, "%00000666"), Attrs([Attr("address","0x730"), + Attrs([Attr("address","0x780")]), Phis([]), +Defs([Def(Tid(1_638, "%00000666"), Attrs([Attr("address","0x780"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_646, "%0000066e"), Attrs([Attr("address","0x734"), +Def(Tid(1_646, "%0000066e"), Attrs([Attr("address","0x784"), Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_653, "%00000675"), Attrs([Attr("address","0x738"), +Def(Tid(1_653, "%00000675"), Attrs([Attr("address","0x788"), Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_658, "%0000067a"), - Attrs([Attr("address","0x73C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_087, "@_fini"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x960")]), - "_fini", Args([Arg(Tid(2_117, "%00000845"), + Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_198, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9A0")]), + "_fini", Args([Arg(Tid(2_271, "%000008df"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), - Attrs([Attr("address","0x960")]), Phis([]), Defs([Def(Tid(41, "%00000029"), - Attrs([Attr("address","0x964"), + Attrs([Attr("address","0x9A0")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0x9A4"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x964"), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x9A4"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(51, "%00000033"), Attrs([Attr("address","0x964"), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0x9A4"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(55, "%00000037"), Attrs([Attr("address","0x964"), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0x9A4"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x968"), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9A8"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), -Def(Tid(72, "%00000048"), Attrs([Attr("address","0x96C"), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9AC"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x96C"), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9AC"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x96C"), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9AC"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), - Attrs([Attr("address","0x970"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_088, "@_init"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x6D8")]), - "_init", Args([Arg(Tid(2_118, "%00000846"), + Attrs([Attr("address","0x9B0"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_199, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x728")]), + "_init", Args([Arg(Tid(2_272, "%000008e0"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), -LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_861, "@_init"), - Attrs([Attr("address","0x6D8")]), Phis([]), -Defs([Def(Tid(1_870, "%0000074e"), Attrs([Attr("address","0x6DC"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_972, "@_init"), + Attrs([Attr("address","0x728")]), Phis([]), +Defs([Def(Tid(1_981, "%000007bd"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#117",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(1_875, "%00000753"), Attrs([Attr("address","0x6DC"), +Def(Tid(1_986, "%000007c2"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#117",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(1_880, "%00000758"), Attrs([Attr("address","0x6DC"), +Def(Tid(1_991, "%000007c7"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#117",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(1_884, "%0000075c"), Attrs([Attr("address","0x6DC"), +Def(Tid(1_995, "%000007cb"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#117",Imm(64))), Def(Tid(1_891, "%00000763"), - Attrs([Attr("address","0x6E0"), Attr("insn","mov x29, sp")]), - Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(1_896, "%00000768"), - Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), - Var("R30",Imm(64)), Int(1768,64))]), Jmps([Call(Tid(1_898, "%0000076a"), - Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), Int(1,1), -(Direct(Tid(2_093, "@call_weak_fn")),Direct(Tid(1_900, "%0000076c"))))])), -Blk(Tid(1_900, "%0000076c"), Attrs([Attr("address","0x6E8")]), Phis([]), -Defs([Def(Tid(1_908, "%00000774"), Attrs([Attr("address","0x6E8"), +Var("#117",Imm(64))), Def(Tid(2_002, "%000007d2"), + Attrs([Attr("address","0x730"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(2_007, "%000007d7"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), + Var("R30",Imm(64)), Int(1848,64))]), Jmps([Call(Tid(2_009, "%000007d9"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), Int(1,1), +(Direct(Tid(2_204, "@call_weak_fn")),Direct(Tid(2_011, "%000007db"))))])), +Blk(Tid(2_011, "%000007db"), Attrs([Attr("address","0x738")]), Phis([]), +Defs([Def(Tid(2_019, "%000007e3"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_912, "%00000778"), Attrs([Attr("address","0x6E8"), +Def(Tid(2_023, "%000007e7"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_915, "%0000077b"), Attrs([Attr("address","0x6E8"), +Def(Tid(2_026, "%000007ea"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), -PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_920, "%00000780"), - Attrs([Attr("address","0x6EC"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_089, "@_start"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7C0"), -Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_119, "%00000847"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("_start_result",Imm(32)), -LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(504, "@_start"), - Attrs([Attr("address","0x7C0")]), Phis([]), Defs([Def(Tid(510, "%000001fe"), - Attrs([Attr("address","0x7C4"), Attr("insn","mov x29, #0x0")]), - Var("R29",Imm(64)), Int(0,64)), Def(Tid(516, "%00000204"), - Attrs([Attr("address","0x7C8"), Attr("insn","mov x30, #0x0")]), - Var("R30",Imm(64)), Int(0,64)), Def(Tid(524, "%0000020c"), - Attrs([Attr("address","0x7CC"), Attr("insn","mov x5, x0")]), - Var("R5",Imm(64)), Var("R0",Imm(64))), Def(Tid(532, "%00000214"), - Attrs([Attr("address","0x7D0"), Attr("insn","ldr x1, [sp]")]), - Var("R1",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_031, "%000007ef"), + Attrs([Attr("address","0x73C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_200, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x800"), +Attr("stub","()"), Attr("entry-point","()")]), "_start", + Args([Arg(Tid(2_273, "%000008e1"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(504, "@_start"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([Def(Tid(510, "%000001fe"), Attrs([Attr("address","0x804"), +Attr("insn","mov x29, #0x0")]), Var("R29",Imm(64)), Int(0,64)), +Def(Tid(516, "%00000204"), Attrs([Attr("address","0x808"), +Attr("insn","mov x30, #0x0")]), Var("R30",Imm(64)), Int(0,64)), +Def(Tid(524, "%0000020c"), Attrs([Attr("address","0x80C"), +Attr("insn","mov x5, x0")]), Var("R5",Imm(64)), Var("R0",Imm(64))), +Def(Tid(532, "%00000214"), Attrs([Attr("address","0x810"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(539, "%0000021b"), Attrs([Attr("address","0x7D4"), +Def(Tid(539, "%0000021b"), Attrs([Attr("address","0x814"), Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(546, "%00000222"), - Attrs([Attr("address","0x7D8"), Attr("insn","mov x6, sp")]), + Attrs([Attr("address","0x818"), Attr("insn","mov x6, sp")]), Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(552, "%00000228"), - Attrs([Attr("address","0x7DC"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x81C"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(560, "%00000230"), - Attrs([Attr("address","0x7E0"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Attrs([Attr("address","0x820"), Attr("insn","ldr x0, [x0, #0xfd8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), -Def(Tid(566, "%00000236"), Attrs([Attr("address","0x7E4"), +Def(Tid(566, "%00000236"), Attrs([Attr("address","0x824"), Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), -Def(Tid(572, "%0000023c"), Attrs([Attr("address","0x7E8"), +Def(Tid(572, "%0000023c"), Attrs([Attr("address","0x828"), Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), -Def(Tid(577, "%00000241"), Attrs([Attr("address","0x7EC"), -Attr("insn","bl #-0xbc")]), Var("R30",Imm(64)), Int(2032,64))]), -Jmps([Call(Tid(580, "%00000244"), Attrs([Attr("address","0x7EC"), -Attr("insn","bl #-0xbc")]), Int(1,1), -(Direct(Tid(2_086, "@__libc_start_main")),Direct(Tid(582, "%00000246"))))])), -Blk(Tid(582, "%00000246"), Attrs([Attr("address","0x7F0")]), Phis([]), -Defs([Def(Tid(585, "%00000249"), Attrs([Attr("address","0x7F0"), -Attr("insn","bl #-0x70")]), Var("R30",Imm(64)), Int(2036,64))]), -Jmps([Call(Tid(588, "%0000024c"), Attrs([Attr("address","0x7F0"), -Attr("insn","bl #-0x70")]), Int(1,1), -(Direct(Tid(2_092, "@abort")),Direct(Tid(2_090, "%0000082a"))))])), -Blk(Tid(2_090, "%0000082a"), Attrs([]), Phis([]), Defs([]), -Jmps([Call(Tid(2_091, "%0000082b"), Attrs([]), Int(1,1), -(Direct(Tid(2_093, "@call_weak_fn")),))]))])), Sub(Tid(2_092, "@abort"), +Def(Tid(577, "%00000241"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Var("R30",Imm(64)), Int(2096,64))]), +Jmps([Call(Tid(580, "%00000244"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Int(1,1), +(Direct(Tid(2_197, "@__libc_start_main")),Direct(Tid(582, "%00000246"))))])), +Blk(Tid(582, "%00000246"), Attrs([Attr("address","0x830")]), Phis([]), +Defs([Def(Tid(585, "%00000249"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Var("R30",Imm(64)), Int(2100,64))]), +Jmps([Call(Tid(588, "%0000024c"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Int(1,1), +(Direct(Tid(2_203, "@abort")),Direct(Tid(2_256, "%000008d0"))))])), +Blk(Tid(2_256, "%000008d0"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_257, "%000008d1"), Attrs([]), Int(1,1), +(Direct(Tid(2_204, "@call_weak_fn")),))]))])), Sub(Tid(2_203, "@abort"), Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), -Attr("address","0x780"), Attr("stub","()")]), "abort", Args([]), -Blks([Blk(Tid(586, "@abort"), Attrs([Attr("address","0x780")]), Phis([]), -Defs([Def(Tid(1_763, "%000006e3"), Attrs([Attr("address","0x780"), +Attr("address","0x7D0"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(586, "@abort"), Attrs([Attr("address","0x7D0")]), Phis([]), +Defs([Def(Tid(1_763, "%000006e3"), Attrs([Attr("address","0x7D0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_771, "%000006eb"), Attrs([Attr("address","0x784"), +Def(Tid(1_771, "%000006eb"), Attrs([Attr("address","0x7D4"), Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), -Def(Tid(1_778, "%000006f2"), Attrs([Attr("address","0x788"), +Def(Tid(1_778, "%000006f2"), Attrs([Attr("address","0x7D8"), Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_783, "%000006f7"), - Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_093, "@call_weak_fn"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7F4")]), - "call_weak_fn", Args([Arg(Tid(2_120, "%00000848"), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_204, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x834")]), + "call_weak_fn", Args([Arg(Tid(2_274, "%000008e2"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(590, "@call_weak_fn"), - Attrs([Attr("address","0x7F4")]), Phis([]), Defs([Def(Tid(594, "%00000252"), - Attrs([Attr("address","0x7F4"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x834")]), Phis([]), Defs([Def(Tid(594, "%00000252"), + Attrs([Attr("address","0x834"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(602, "%0000025a"), - Attrs([Attr("address","0x7F8"), Attr("insn","ldr x0, [x0, #0xfd0]")]), + Attrs([Attr("address","0x838"), Attr("insn","ldr x0, [x0, #0xfd0]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), -Def(Tid(614, "%00000266"), Attrs([Attr("address","0x7FC"), +Def(Tid(614, "%00000266"), Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(608, "%00000260"), - Attrs([Attr("address","0x7FC"), Attr("insn","cbz x0, #0x8")]), + Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), Direct(Tid(606, "%0000025e"))), -Goto(Tid(2_094, "%0000082e"), Attrs([]), Int(1,1), +Goto(Tid(2_258, "%000008d2"), Attrs([]), Int(1,1), Direct(Tid(1_325, "%0000052d")))])), Blk(Tid(606, "%0000025e"), - Attrs([Attr("address","0x804")]), Phis([]), Defs([]), -Jmps([Call(Tid(619, "%0000026b"), Attrs([Attr("address","0x804"), + Attrs([Attr("address","0x844")]), Phis([]), Defs([]), +Jmps([Call(Tid(619, "%0000026b"), Attrs([Attr("address","0x844"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_325, "%0000052d"), Attrs([Attr("address","0x800")]), Phis([]), -Defs([]), Jmps([Goto(Tid(1_328, "%00000530"), Attrs([Attr("address","0x800"), -Attr("insn","b #-0x90")]), Int(1,1), +Blk(Tid(1_325, "%0000052d"), Attrs([Attr("address","0x840")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_328, "%00000530"), Attrs([Attr("address","0x840"), +Attr("insn","b #-0x80")]), Int(1,1), Direct(Tid(1_326, "@__gmon_start__")))])), Blk(Tid(1_326, "@__gmon_start__"), - Attrs([Attr("address","0x770")]), Phis([]), -Defs([Def(Tid(1_738, "%000006ca"), Attrs([Attr("address","0x770"), + Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_738, "%000006ca"), Attrs([Attr("address","0x7C0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_746, "%000006d2"), Attrs([Attr("address","0x774"), +Def(Tid(1_746, "%000006d2"), Attrs([Attr("address","0x7C4"), Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), -Def(Tid(1_753, "%000006d9"), Attrs([Attr("address","0x778"), +Def(Tid(1_753, "%000006d9"), Attrs([Attr("address","0x7C8"), Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_758, "%000006de"), - Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_095, "@deregister_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x810")]), - "deregister_tm_clones", Args([Arg(Tid(2_121, "%00000849"), +Sub(Tid(2_206, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x850")]), + "deregister_tm_clones", Args([Arg(Tid(2_275, "%000008e3"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(625, "@deregister_tm_clones"), - Attrs([Attr("address","0x810")]), Phis([]), Defs([Def(Tid(629, "%00000275"), - Attrs([Attr("address","0x810"), Attr("insn","adrp x0, #0x20000")]), + Attrs([Attr("address","0x850")]), Phis([]), Defs([Def(Tid(629, "%00000275"), + Attrs([Attr("address","0x850"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), Def(Tid(636, "%0000027c"), - Attrs([Attr("address","0x814"), Attr("insn","add x0, x0, #0x70")]), + Attrs([Attr("address","0x854"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), -Def(Tid(642, "%00000282"), Attrs([Attr("address","0x818"), +Def(Tid(642, "%00000282"), Attrs([Attr("address","0x858"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), -Def(Tid(649, "%00000289"), Attrs([Attr("address","0x81C"), +Def(Tid(649, "%00000289"), Attrs([Attr("address","0x85C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), Def(Tid(657, "%00000291"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("#16",Imm(64)), PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), -Def(Tid(661, "%00000295"), Attrs([Attr("address","0x820"), +Def(Tid(661, "%00000295"), Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), Extract(63,63,Var("#16",Imm(64)))), Def(Tid(664, "%00000298"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("VF",Imm(1)), OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), -Def(Tid(667, "%0000029b"), Attrs([Attr("address","0x820"), +Def(Tid(667, "%0000029b"), Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(670, "%0000029e"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("CF",Imm(1)), OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), -Def(Tid(684, "%000002ac"), Attrs([Attr("address","0x824"), +Def(Tid(684, "%000002ac"), Attrs([Attr("address","0x864"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), -Jmps([Goto(Tid(678, "%000002a6"), Attrs([Attr("address","0x824"), +Jmps([Goto(Tid(678, "%000002a6"), Attrs([Attr("address","0x864"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), -Direct(Tid(676, "%000002a4"))), Goto(Tid(2_096, "%00000830"), Attrs([]), +Direct(Tid(676, "%000002a4"))), Goto(Tid(2_259, "%000008d3"), Attrs([]), Int(1,1), Direct(Tid(1_286, "%00000506")))])), Blk(Tid(1_286, "%00000506"), - Attrs([Attr("address","0x828")]), Phis([]), -Defs([Def(Tid(1_290, "%0000050a"), Attrs([Attr("address","0x828"), + Attrs([Attr("address","0x868")]), Phis([]), +Defs([Def(Tid(1_290, "%0000050a"), Attrs([Attr("address","0x868"), Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), -Def(Tid(1_298, "%00000512"), Attrs([Attr("address","0x82C"), +Def(Tid(1_298, "%00000512"), Attrs([Attr("address","0x86C"), Attr("insn","ldr x1, [x1, #0xfc0]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4032,64)),LittleEndian(),64)), -Def(Tid(1_309, "%0000051d"), Attrs([Attr("address","0x830"), +Def(Tid(1_309, "%0000051d"), Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), Var("#94",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_303, "%00000517"), - Attrs([Attr("address","0x830"), Attr("insn","cbz x1, #0xc")]), + Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), Var("#94",Imm(1)), Direct(Tid(676, "%000002a4"))), -Goto(Tid(2_097, "%00000831"), Attrs([]), Int(1,1), +Goto(Tid(2_260, "%000008d4"), Attrs([]), Int(1,1), Direct(Tid(1_312, "%00000520")))])), Blk(Tid(676, "%000002a4"), - Attrs([Attr("address","0x83C")]), Phis([]), Defs([]), -Jmps([Call(Tid(689, "%000002b1"), Attrs([Attr("address","0x83C"), + Attrs([Attr("address","0x87C")]), Phis([]), Defs([]), +Jmps([Call(Tid(689, "%000002b1"), Attrs([Attr("address","0x87C"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_312, "%00000520"), Attrs([Attr("address","0x834")]), Phis([]), -Defs([Def(Tid(1_318, "%00000526"), Attrs([Attr("address","0x834"), +Blk(Tid(1_312, "%00000520"), Attrs([Attr("address","0x874")]), Phis([]), +Defs([Def(Tid(1_318, "%00000526"), Attrs([Attr("address","0x874"), Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), -Jmps([Call(Tid(1_323, "%0000052b"), Attrs([Attr("address","0x838"), +Jmps([Call(Tid(1_323, "%0000052b"), Attrs([Attr("address","0x878"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), -Sub(Tid(2_098, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x8D0")]), "frame_dummy", Args([Arg(Tid(2_122, "%0000084a"), +Sub(Tid(2_209, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x910")]), "frame_dummy", Args([Arg(Tid(2_276, "%000008e4"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(865, "@frame_dummy"), - Attrs([Attr("address","0x8D0")]), Phis([]), Defs([]), -Jmps([Call(Tid(867, "%00000363"), Attrs([Attr("address","0x8D0"), + Attrs([Attr("address","0x910")]), Phis([]), Defs([]), +Jmps([Call(Tid(867, "%00000363"), Attrs([Attr("address","0x910"), Attr("insn","b #-0x90")]), Int(1,1), -(Direct(Tid(2_105, "@register_tm_clones")),))]))])), Sub(Tid(2_099, "@free"), - Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7A0"), -Attr("stub","()")]), "free", Args([Arg(Tid(2_123, "%0000084b"), +(Direct(Tid(2_216, "@register_tm_clones")),))]))])), Sub(Tid(2_210, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7F0"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_277, "%000008e5"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), -Both())]), Blks([Blk(Tid(1_121, "@free"), Attrs([Attr("address","0x7A0")]), - Phis([]), Defs([Def(Tid(1_813, "%00000715"), Attrs([Attr("address","0x7A0"), +Both())]), Blks([Blk(Tid(1_121, "@free"), Attrs([Attr("address","0x7F0")]), + Phis([]), Defs([Def(Tid(1_813, "%00000715"), Attrs([Attr("address","0x7F0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_821, "%0000071d"), Attrs([Attr("address","0x7A4"), +Def(Tid(1_821, "%0000071d"), Attrs([Attr("address","0x7F4"), Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), -Def(Tid(1_828, "%00000724"), Attrs([Attr("address","0x7A8"), +Def(Tid(1_828, "%00000724"), Attrs([Attr("address","0x7F8"), Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_833, "%00000729"), - Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_100, "@main"), + Attrs([Attr("address","0x7FC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_211, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x8D4")]), "main", Args([Arg(Tid(2_124, "%0000084c"), +Attr("address","0x914")]), "main", Args([Arg(Tid(2_278, "%000008e6"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), -LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_125, "%0000084d"), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_279, "%000008e7"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), -Var("R1",Imm(64)), Both()), Arg(Tid(2_126, "%0000084e"), +Var("R1",Imm(64)), Both()), Arg(Tid(2_280, "%000008e8"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(869, "@main"), - Attrs([Attr("address","0x8D4")]), Phis([]), Defs([Def(Tid(876, "%0000036c"), - Attrs([Attr("address","0x8D4"), + Attrs([Attr("address","0x914")]), Phis([]), Defs([Def(Tid(876, "%0000036c"), + Attrs([Attr("address","0x914"), Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("#42",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551568,64))), -Def(Tid(881, "%00000371"), Attrs([Attr("address","0x8D4"), +Def(Tid(881, "%00000371"), Attrs([Attr("address","0x914"), Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(886, "%00000376"), Attrs([Attr("address","0x8D4"), +Def(Tid(886, "%00000376"), Attrs([Attr("address","0x914"), Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(890, "%0000037a"), Attrs([Attr("address","0x8D4"), +Def(Tid(890, "%0000037a"), Attrs([Attr("address","0x914"), Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("R31",Imm(64)), Var("#42",Imm(64))), Def(Tid(898, "%00000382"), - Attrs([Attr("address","0x8D8"), Attr("insn","str x21, [sp, #0x10]")]), + Attrs([Attr("address","0x918"), Attr("insn","str x21, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R21",Imm(64)),LittleEndian(),64)), -Def(Tid(906, "%0000038a"), Attrs([Attr("address","0x8DC"), +Def(Tid(906, "%0000038a"), Attrs([Attr("address","0x91C"), Attr("insn","stp x20, x19, [sp, #0x20]")]), Var("#47",Imm(64)), PLUS(Var("R31",Imm(64)),Int(32,64))), Def(Tid(911, "%0000038f"), - Attrs([Attr("address","0x8DC"), Attr("insn","stp x20, x19, [sp, #0x20]")]), + Attrs([Attr("address","0x91C"), Attr("insn","stp x20, x19, [sp, #0x20]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#47",Imm(64)),Var("R20",Imm(64)),LittleEndian(),64)), -Def(Tid(916, "%00000394"), Attrs([Attr("address","0x8DC"), +Def(Tid(916, "%00000394"), Attrs([Attr("address","0x91C"), Attr("insn","stp x20, x19, [sp, #0x20]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#47",Imm(64)),Int(8,64)),Var("R19",Imm(64)),LittleEndian(),64)), -Def(Tid(923, "%0000039b"), Attrs([Attr("address","0x8E0"), +Def(Tid(923, "%0000039b"), Attrs([Attr("address","0x920"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), -Def(Tid(930, "%000003a2"), Attrs([Attr("address","0x8E4"), +Def(Tid(930, "%000003a2"), Attrs([Attr("address","0x924"), Attr("insn","mov w0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), -Def(Tid(935, "%000003a7"), Attrs([Attr("address","0x8E8"), -Attr("insn","bl #-0x198")]), Var("R30",Imm(64)), Int(2284,64))]), -Jmps([Call(Tid(938, "%000003aa"), Attrs([Attr("address","0x8E8"), -Attr("insn","bl #-0x198")]), Int(1,1), -(Direct(Tid(2_101, "@malloc")),Direct(Tid(940, "%000003ac"))))])), -Blk(Tid(940, "%000003ac"), Attrs([Attr("address","0x8EC")]), Phis([]), -Defs([Def(Tid(944, "%000003b0"), Attrs([Attr("address","0x8EC"), +Def(Tid(935, "%000003a7"), Attrs([Attr("address","0x928"), +Attr("insn","bl #-0x188")]), Var("R30",Imm(64)), Int(2348,64))]), +Jmps([Call(Tid(938, "%000003aa"), Attrs([Attr("address","0x928"), +Attr("insn","bl #-0x188")]), Int(1,1), +(Direct(Tid(2_212, "@malloc")),Direct(Tid(940, "%000003ac"))))])), +Blk(Tid(940, "%000003ac"), Attrs([Attr("address","0x92C")]), Phis([]), +Defs([Def(Tid(944, "%000003b0"), Attrs([Attr("address","0x92C"), Attr("insn","adrp x21, #0x20000")]), Var("R21",Imm(64)), Int(131072,64)), -Def(Tid(950, "%000003b6"), Attrs([Attr("address","0x8F0"), +Def(Tid(950, "%000003b6"), Attrs([Attr("address","0x930"), Attr("insn","adrp x20, #0x20000")]), Var("R20",Imm(64)), Int(131072,64)), -Def(Tid(957, "%000003bd"), Attrs([Attr("address","0x8F4"), +Def(Tid(957, "%000003bd"), Attrs([Attr("address","0x934"), Attr("insn","add x20, x20, #0x61")]), Var("R20",Imm(64)), PLUS(Var("R20",Imm(64)),Int(97,64))), Def(Tid(965, "%000003c5"), - Attrs([Attr("address","0x8F8"), Attr("insn","mov x19, x0")]), + Attrs([Attr("address","0x938"), Attr("insn","mov x19, x0")]), Var("R19",Imm(64)), Var("R0",Imm(64))), Def(Tid(973, "%000003cd"), - Attrs([Attr("address","0x8FC"), Attr("insn","str x0, [x21, #0x78]")]), + Attrs([Attr("address","0x93C"), Attr("insn","str x0, [x21, #0x78]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R21",Imm(64)),Int(120,64)),Var("R0",Imm(64)),LittleEndian(),64)), -Def(Tid(981, "%000003d5"), Attrs([Attr("address","0x900"), +Def(Tid(981, "%000003d5"), Attrs([Attr("address","0x940"), Attr("insn","mov x0, x20")]), Var("R0",Imm(64)), Var("R20",Imm(64))), -Def(Tid(986, "%000003da"), Attrs([Attr("address","0x904"), -Attr("insn","bl #-0x1e4")]), Var("R30",Imm(64)), Int(2312,64))]), -Jmps([Call(Tid(989, "%000003dd"), Attrs([Attr("address","0x904"), -Attr("insn","bl #-0x1e4")]), Int(1,1), -(Direct(Tid(2_108, "@strlen")),Direct(Tid(991, "%000003df"))))])), -Blk(Tid(991, "%000003df"), Attrs([Attr("address","0x908")]), Phis([]), -Defs([Def(Tid(997, "%000003e5"), Attrs([Attr("address","0x908"), +Def(Tid(986, "%000003da"), Attrs([Attr("address","0x944"), +Attr("insn","bl #-0x1d4")]), Var("R30",Imm(64)), Int(2376,64))]), +Jmps([Call(Tid(989, "%000003dd"), Attrs([Attr("address","0x944"), +Attr("insn","bl #-0x1d4")]), Int(1,1), +(Direct(Tid(2_219, "@strlen")),Direct(Tid(991, "%000003df"))))])), +Blk(Tid(991, "%000003df"), Attrs([Attr("address","0x948")]), Phis([]), +Defs([Def(Tid(997, "%000003e5"), Attrs([Attr("address","0x948"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_005, "%000003ed"), Attrs([Attr("address","0x90C"), +Def(Tid(1_005, "%000003ed"), Attrs([Attr("address","0x94C"), Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), -Def(Tid(1_013, "%000003f5"), Attrs([Attr("address","0x910"), +Def(Tid(1_013, "%000003f5"), Attrs([Attr("address","0x950"), Attr("insn","mov x1, x20")]), Var("R1",Imm(64)), Var("R20",Imm(64))), -Def(Tid(1_018, "%000003fa"), Attrs([Attr("address","0x914"), -Attr("insn","bl #-0x204")]), Var("R30",Imm(64)), Int(2328,64))]), -Jmps([Call(Tid(1_021, "%000003fd"), Attrs([Attr("address","0x914"), -Attr("insn","bl #-0x204")]), Int(1,1), -(Direct(Tid(2_102, "@memcpy")),Direct(Tid(1_023, "%000003ff"))))])), -Blk(Tid(1_023, "%000003ff"), Attrs([Attr("address","0x918")]), Phis([]), -Defs([Def(Tid(1_029, "%00000405"), Attrs([Attr("address","0x918"), +Def(Tid(1_018, "%000003fa"), Attrs([Attr("address","0x954"), +Attr("insn","bl #-0x1f4")]), Var("R30",Imm(64)), Int(2392,64))]), +Jmps([Call(Tid(1_021, "%000003fd"), Attrs([Attr("address","0x954"), +Attr("insn","bl #-0x1f4")]), Int(1,1), +(Direct(Tid(2_213, "@memcpy")),Direct(Tid(1_023, "%000003ff"))))])), +Blk(Tid(1_023, "%000003ff"), Attrs([Attr("address","0x958")]), Phis([]), +Defs([Def(Tid(1_029, "%00000405"), Attrs([Attr("address","0x958"), Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), -Def(Tid(1_034, "%0000040a"), Attrs([Attr("address","0x91C"), -Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2336,64))]), -Jmps([Call(Tid(1_037, "%0000040d"), Attrs([Attr("address","0x91C"), -Attr("insn","bl #-0x18c")]), Int(1,1), -(Direct(Tid(2_104, "@puts")),Direct(Tid(1_039, "%0000040f"))))])), -Blk(Tid(1_039, "%0000040f"), Attrs([Attr("address","0x920")]), Phis([]), -Defs([Def(Tid(1_045, "%00000415"), Attrs([Attr("address","0x920"), +Def(Tid(1_034, "%0000040a"), Attrs([Attr("address","0x95C"), +Attr("insn","bl #-0x17c")]), Var("R30",Imm(64)), Int(2400,64))]), +Jmps([Call(Tid(1_037, "%0000040d"), Attrs([Attr("address","0x95C"), +Attr("insn","bl #-0x17c")]), Int(1,1), +(Direct(Tid(2_215, "@puts")),Direct(Tid(1_039, "%0000040f"))))])), +Blk(Tid(1_039, "%0000040f"), Attrs([Attr("address","0x960")]), Phis([]), +Defs([Def(Tid(1_045, "%00000415"), Attrs([Attr("address","0x960"), Attr("insn","ldr x8, [x21, #0x78]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R21",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_053, "%0000041d"), Attrs([Attr("address","0x924"), +Def(Tid(1_053, "%0000041d"), Attrs([Attr("address","0x964"), Attr("insn","strb wzr, [x8, #0x4]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(4,64)),Int(0,8),BigEndian(),8)), -Def(Tid(1_061, "%00000425"), Attrs([Attr("address","0x928"), +Def(Tid(1_061, "%00000425"), Attrs([Attr("address","0x968"), Attr("insn","ldr x19, [x21, #0x78]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R21",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_069, "%0000042d"), Attrs([Attr("address","0x92C"), +Def(Tid(1_069, "%0000042d"), Attrs([Attr("address","0x96C"), Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), -Def(Tid(1_074, "%00000432"), Attrs([Attr("address","0x930"), -Attr("insn","bl #-0x210")]), Var("R30",Imm(64)), Int(2356,64))]), -Jmps([Call(Tid(1_076, "%00000434"), Attrs([Attr("address","0x930"), -Attr("insn","bl #-0x210")]), Int(1,1), -(Direct(Tid(2_108, "@strlen")),Direct(Tid(1_078, "%00000436"))))])), -Blk(Tid(1_078, "%00000436"), Attrs([Attr("address","0x934")]), Phis([]), -Defs([Def(Tid(1_084, "%0000043c"), Attrs([Attr("address","0x934"), +Def(Tid(1_074, "%00000432"), Attrs([Attr("address","0x970"), +Attr("insn","bl #-0x200")]), Var("R30",Imm(64)), Int(2420,64))]), +Jmps([Call(Tid(1_076, "%00000434"), Attrs([Attr("address","0x970"), +Attr("insn","bl #-0x200")]), Int(1,1), +(Direct(Tid(2_219, "@strlen")),Direct(Tid(1_078, "%00000436"))))])), +Blk(Tid(1_078, "%00000436"), Attrs([Attr("address","0x974")]), Phis([]), +Defs([Def(Tid(1_084, "%0000043c"), Attrs([Attr("address","0x974"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_092, "%00000444"), Attrs([Attr("address","0x938"), +Def(Tid(1_092, "%00000444"), Attrs([Attr("address","0x978"), Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), -Def(Tid(1_099, "%0000044b"), Attrs([Attr("address","0x93C"), +Def(Tid(1_099, "%0000044b"), Attrs([Attr("address","0x97C"), Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), -Def(Tid(1_104, "%00000450"), Attrs([Attr("address","0x940"), -Attr("insn","bl #-0x1e0")]), Var("R30",Imm(64)), Int(2372,64))]), -Jmps([Call(Tid(1_107, "%00000453"), Attrs([Attr("address","0x940"), -Attr("insn","bl #-0x1e0")]), Int(1,1), -(Direct(Tid(2_103, "@memset")),Direct(Tid(1_109, "%00000455"))))])), -Blk(Tid(1_109, "%00000455"), Attrs([Attr("address","0x944")]), Phis([]), -Defs([Def(Tid(1_115, "%0000045b"), Attrs([Attr("address","0x944"), +Def(Tid(1_104, "%00000450"), Attrs([Attr("address","0x980"), +Attr("insn","bl #-0x1d0")]), Var("R30",Imm(64)), Int(2436,64))]), +Jmps([Call(Tid(1_107, "%00000453"), Attrs([Attr("address","0x980"), +Attr("insn","bl #-0x1d0")]), Int(1,1), +(Direct(Tid(2_214, "@memset")),Direct(Tid(1_109, "%00000455"))))])), +Blk(Tid(1_109, "%00000455"), Attrs([Attr("address","0x984")]), Phis([]), +Defs([Def(Tid(1_115, "%0000045b"), Attrs([Attr("address","0x984"), Attr("insn","ldr x0, [x21, #0x78]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R21",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_120, "%00000460"), Attrs([Attr("address","0x948"), -Attr("insn","bl #-0x1a8")]), Var("R30",Imm(64)), Int(2380,64))]), -Jmps([Call(Tid(1_123, "%00000463"), Attrs([Attr("address","0x948"), -Attr("insn","bl #-0x1a8")]), Int(1,1), -(Direct(Tid(2_099, "@free")),Direct(Tid(1_125, "%00000465"))))])), -Blk(Tid(1_125, "%00000465"), Attrs([Attr("address","0x94C")]), Phis([]), -Defs([Def(Tid(1_132, "%0000046c"), Attrs([Attr("address","0x94C"), +Def(Tid(1_120, "%00000460"), Attrs([Attr("address","0x988"), +Attr("insn","bl #-0x198")]), Var("R30",Imm(64)), Int(2444,64))]), +Jmps([Call(Tid(1_123, "%00000463"), Attrs([Attr("address","0x988"), +Attr("insn","bl #-0x198")]), Int(1,1), +(Direct(Tid(2_210, "@free")),Direct(Tid(1_125, "%00000465"))))])), +Blk(Tid(1_125, "%00000465"), Attrs([Attr("address","0x98C")]), Phis([]), +Defs([Def(Tid(1_132, "%0000046c"), Attrs([Attr("address","0x98C"), Attr("insn","mov w0, wzr")]), Var("R0",Imm(64)), Int(0,32)), -Def(Tid(1_141, "%00000475"), Attrs([Attr("address","0x950"), +Def(Tid(1_141, "%00000475"), Attrs([Attr("address","0x990"), Attr("insn","ldp x20, x19, [sp, #0x20]")]), Var("R20",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(32,64)),LittleEndian(),64)), -Def(Tid(1_145, "%00000479"), Attrs([Attr("address","0x950"), +Def(Tid(1_145, "%00000479"), Attrs([Attr("address","0x990"), Attr("insn","ldp x20, x19, [sp, #0x20]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(40,64)),LittleEndian(),64)), -Def(Tid(1_153, "%00000481"), Attrs([Attr("address","0x954"), +Def(Tid(1_153, "%00000481"), Attrs([Attr("address","0x994"), Attr("insn","ldr x21, [sp, #0x10]")]), Var("R21",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_163, "%0000048b"), Attrs([Attr("address","0x958"), +Def(Tid(1_163, "%0000048b"), Attrs([Attr("address","0x998"), Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_167, "%0000048f"), Attrs([Attr("address","0x958"), +Def(Tid(1_167, "%0000048f"), Attrs([Attr("address","0x998"), Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_170, "%00000492"), Attrs([Attr("address","0x958"), +Def(Tid(1_170, "%00000492"), Attrs([Attr("address","0x998"), Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_175, "%00000497"), - Attrs([Attr("address","0x95C"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_101, "@malloc"), + Attrs([Attr("address","0x99C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_212, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), -Attr("address","0x750"), Attr("malloc","()"), Attr("stub","()")]), "malloc", - Args([Arg(Tid(2_127, "%0000084f"), Attrs([Attr("alloc-size","()"), +Attr("address","0x7A0"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_281, "%000008e9"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), -Var("R0",Imm(64)), In()), Arg(Tid(2_128, "%00000850"), +Var("R0",Imm(64)), In()), Arg(Tid(2_282, "%000008ea"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(936, "@malloc"), Attrs([Attr("address","0x750")]), Phis([]), -Defs([Def(Tid(1_688, "%00000698"), Attrs([Attr("address","0x750"), +Blks([Blk(Tid(936, "@malloc"), Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_688, "%00000698"), Attrs([Attr("address","0x7A0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_696, "%000006a0"), Attrs([Attr("address","0x754"), +Def(Tid(1_696, "%000006a0"), Attrs([Attr("address","0x7A4"), Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), -Def(Tid(1_703, "%000006a7"), Attrs([Attr("address","0x758"), +Def(Tid(1_703, "%000006a7"), Attrs([Attr("address","0x7A8"), Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_708, "%000006ac"), - Attrs([Attr("address","0x75C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_102, "@memcpy"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_213, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), -Attr("address","0x710"), Attr("stub","()")]), "memcpy", - Args([Arg(Tid(2_129, "%00000851"), Attrs([Attr("nonnull","()"), +Attr("address","0x760"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_283, "%000008eb"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), -Var("R0",Imm(64)), Both()), Arg(Tid(2_130, "%00000852"), +Var("R0",Imm(64)), Both()), Arg(Tid(2_284, "%000008ec"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), -Arg(Tid(2_131, "%00000853"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Arg(Tid(2_285, "%000008ed"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), -Arg(Tid(2_132, "%00000854"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_286, "%000008ee"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_019, "@memcpy"), Attrs([Attr("address","0x710")]), Phis([]), -Defs([Def(Tid(1_588, "%00000634"), Attrs([Attr("address","0x710"), +Blks([Blk(Tid(1_019, "@memcpy"), Attrs([Attr("address","0x760")]), Phis([]), +Defs([Def(Tid(1_588, "%00000634"), Attrs([Attr("address","0x760"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_596, "%0000063c"), Attrs([Attr("address","0x714"), +Def(Tid(1_596, "%0000063c"), Attrs([Attr("address","0x764"), Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), -Def(Tid(1_603, "%00000643"), Attrs([Attr("address","0x718"), +Def(Tid(1_603, "%00000643"), Attrs([Attr("address","0x768"), Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), Var("R16",Imm(64)))]), Jmps([Call(Tid(1_608, "%00000648"), - Attrs([Attr("address","0x71C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_103, "@memset"), + Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_214, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), -Attr("address","0x760"), Attr("stub","()")]), "memset", - Args([Arg(Tid(2_133, "%00000855"), Attrs([Attr("nonnull","()"), +Attr("address","0x7B0"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_287, "%000008ef"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), -Both()), Arg(Tid(2_134, "%00000856"), +Both()), Arg(Tid(2_288, "%000008f0"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("memset_c",Imm(32)), -LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_135, "%00000857"), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_289, "%000008f1"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), -In()), Arg(Tid(2_136, "%00000858"), Attrs([Attr("c.layout","*[ : 8]"), +In()), Arg(Tid(2_290, "%000008f2"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_105, "@memset"), Attrs([Attr("address","0x760")]), Phis([]), -Defs([Def(Tid(1_713, "%000006b1"), Attrs([Attr("address","0x760"), +Blks([Blk(Tid(1_105, "@memset"), Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_713, "%000006b1"), Attrs([Attr("address","0x7B0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_721, "%000006b9"), Attrs([Attr("address","0x764"), +Def(Tid(1_721, "%000006b9"), Attrs([Attr("address","0x7B4"), Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), -Def(Tid(1_728, "%000006c0"), Attrs([Attr("address","0x768"), +Def(Tid(1_728, "%000006c0"), Attrs([Attr("address","0x7B8"), Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_733, "%000006c5"), - Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_104, "@puts"), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_215, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), -Attr("address","0x790"), Attr("stub","()")]), "puts", - Args([Arg(Tid(2_137, "%00000859"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("address","0x7E0"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_291, "%000008f3"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_138, "%0000085a"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_292, "%000008f4"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(1_035, "@puts"), Attrs([Attr("address","0x790")]), Phis([]), -Defs([Def(Tid(1_788, "%000006fc"), Attrs([Attr("address","0x790"), +Blks([Blk(Tid(1_035, "@puts"), Attrs([Attr("address","0x7E0")]), Phis([]), +Defs([Def(Tid(1_788, "%000006fc"), Attrs([Attr("address","0x7E0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_796, "%00000704"), Attrs([Attr("address","0x794"), +Def(Tid(1_796, "%00000704"), Attrs([Attr("address","0x7E4"), Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), -Def(Tid(1_803, "%0000070b"), Attrs([Attr("address","0x798"), +Def(Tid(1_803, "%0000070b"), Attrs([Attr("address","0x7E8"), Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_808, "%00000710"), - Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7EC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_105, "@register_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x840")]), - "register_tm_clones", Args([Arg(Tid(2_139, "%0000085b"), +Sub(Tid(2_216, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + "register_tm_clones", Args([Arg(Tid(2_293, "%000008f5"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(691, "@register_tm_clones"), Attrs([Attr("address","0x840")]), - Phis([]), Defs([Def(Tid(695, "%000002b7"), Attrs([Attr("address","0x840"), +Blks([Blk(Tid(691, "@register_tm_clones"), Attrs([Attr("address","0x880")]), + Phis([]), Defs([Def(Tid(695, "%000002b7"), Attrs([Attr("address","0x880"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(702, "%000002be"), Attrs([Attr("address","0x844"), +Def(Tid(702, "%000002be"), Attrs([Attr("address","0x884"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), Def(Tid(708, "%000002c4"), - Attrs([Attr("address","0x848"), Attr("insn","adrp x1, #0x20000")]), + Attrs([Attr("address","0x888"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), Def(Tid(715, "%000002cb"), - Attrs([Attr("address","0x84C"), Attr("insn","add x1, x1, #0x70")]), + Attrs([Attr("address","0x88C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), -Def(Tid(723, "%000002d3"), Attrs([Attr("address","0x850"), +Def(Tid(723, "%000002d3"), Attrs([Attr("address","0x890"), Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(730, "%000002da"), - Attrs([Attr("address","0x854"), Attr("insn","lsr x2, x1, #63")]), + Attrs([Attr("address","0x894"), Attr("insn","lsr x2, x1, #63")]), Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), -Def(Tid(738, "%000002e2"), Attrs([Attr("address","0x858"), +Def(Tid(738, "%000002e2"), Attrs([Attr("address","0x898"), Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), -Def(Tid(745, "%000002e9"), Attrs([Attr("address","0x85C"), +Def(Tid(745, "%000002e9"), Attrs([Attr("address","0x89C"), Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(757, "%000002f5"), - Attrs([Attr("address","0x860"), Attr("insn","cbz x1, #0x18")]), + Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), -Jmps([Goto(Tid(751, "%000002ef"), Attrs([Attr("address","0x860"), +Jmps([Goto(Tid(751, "%000002ef"), Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), -Direct(Tid(749, "%000002ed"))), Goto(Tid(2_106, "%0000083a"), Attrs([]), +Direct(Tid(749, "%000002ed"))), Goto(Tid(2_261, "%000008d5"), Attrs([]), Int(1,1), Direct(Tid(1_247, "%000004df")))])), Blk(Tid(1_247, "%000004df"), - Attrs([Attr("address","0x864")]), Phis([]), -Defs([Def(Tid(1_251, "%000004e3"), Attrs([Attr("address","0x864"), + Attrs([Attr("address","0x8A4")]), Phis([]), +Defs([Def(Tid(1_251, "%000004e3"), Attrs([Attr("address","0x8A4"), Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), -Def(Tid(1_259, "%000004eb"), Attrs([Attr("address","0x868"), +Def(Tid(1_259, "%000004eb"), Attrs([Attr("address","0x8A8"), Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), -Def(Tid(1_270, "%000004f6"), Attrs([Attr("address","0x86C"), +Def(Tid(1_270, "%000004f6"), Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), Var("#89",Imm(1)), EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_264, "%000004f0"), - Attrs([Attr("address","0x86C"), Attr("insn","cbz x2, #0xc")]), + Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), Var("#89",Imm(1)), Direct(Tid(749, "%000002ed"))), -Goto(Tid(2_107, "%0000083b"), Attrs([]), Int(1,1), +Goto(Tid(2_262, "%000008d6"), Attrs([]), Int(1,1), Direct(Tid(1_273, "%000004f9")))])), Blk(Tid(749, "%000002ed"), - Attrs([Attr("address","0x878")]), Phis([]), Defs([]), -Jmps([Call(Tid(762, "%000002fa"), Attrs([Attr("address","0x878"), + Attrs([Attr("address","0x8B8")]), Phis([]), Defs([]), +Jmps([Call(Tid(762, "%000002fa"), Attrs([Attr("address","0x8B8"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_273, "%000004f9"), Attrs([Attr("address","0x870")]), Phis([]), -Defs([Def(Tid(1_279, "%000004ff"), Attrs([Attr("address","0x870"), +Blk(Tid(1_273, "%000004f9"), Attrs([Attr("address","0x8B0")]), Phis([]), +Defs([Def(Tid(1_279, "%000004ff"), Attrs([Attr("address","0x8B0"), Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), -Jmps([Call(Tid(1_284, "%00000504"), Attrs([Attr("address","0x874"), +Jmps([Call(Tid(1_284, "%00000504"), Attrs([Attr("address","0x8B4"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), -Sub(Tid(2_108, "@strlen"), +Sub(Tid(2_219, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), -Attr("pure","()"), Attr("address","0x720"), Attr("stub","()")]), "strlen", - Args([Arg(Tid(2_140, "%0000085c"), Attrs([Attr("nonnull","()"), +Attr("pure","()"), Attr("address","0x770"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_294, "%000008f6"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), -In()), Arg(Tid(2_141, "%0000085d"), +In()), Arg(Tid(2_295, "%000008f7"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(987, "@strlen"), - Attrs([Attr("address","0x720")]), Phis([]), -Defs([Def(Tid(1_613, "%0000064d"), Attrs([Attr("address","0x720"), + Attrs([Attr("address","0x770")]), Phis([]), +Defs([Def(Tid(1_613, "%0000064d"), Attrs([Attr("address","0x770"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_621, "%00000655"), Attrs([Attr("address","0x724"), +Def(Tid(1_621, "%00000655"), Attrs([Attr("address","0x774"), Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_628, "%0000065c"), Attrs([Attr("address","0x728"), +Def(Tid(1_628, "%0000065c"), Attrs([Attr("address","0x778"), Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_633, "%00000661"), - Attrs([Attr("address","0x72C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.bir b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.bir index 50ab96027..86a3d38de 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.bir @@ -1,6 +1,6 @@ -0000083d: program -00000821: sub __cxa_finalize(__cxa_finalize_result) -0000083e: __cxa_finalize_result :: out u32 = low:32[R0] +000008d7: program +00000890: sub __cxa_finalize(__cxa_finalize_result) +000008d8: __cxa_finalize_result :: out u32 = low:32[R0] 000004db: 0000067f: R16 := 0x20000 @@ -8,8 +8,8 @@ 0000068e: R16 := R16 + 0x18 00000693: call R17 with noreturn -00000822: sub __do_global_dtors_aux(__do_global_dtors_aux_result) -0000083f: __do_global_dtors_aux_result :: out u32 = low:32[R0] +00000891: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +000008d9: __do_global_dtors_aux_result :: out u32 = low:32[R0] 000002fe: 00000305: #34 := R31 - 0x20 @@ -22,29 +22,29 @@ 00000331: R0 := pad:32[mem[R19 + 0x70]] 0000033d: #36 := ~~0:0[R0] 00000337: when #36 goto %00000335 -00000823: goto %00000499 +000008cd: goto %00000499 00000499: 0000049d: R0 := 0x1F000 000004a5: R0 := mem[R0 + 0xFC8, el]:u64 000004b1: #86 := R0 = 0 000004ab: when #86 goto %000004a9 -00000824: goto %000004c9 +000008ce: goto %000004c9 000004c9: 000004cd: R0 := 0x20000 000004d5: R0 := mem[R0 + 0x58, el]:u64 -000004da: R30 := 0x8B0 +000004da: R30 := 0x8F0 000004dd: call @__cxa_finalize with return %000004a9 000004a9: -000004b6: R30 := 0x8B4 +000004b6: R30 := 0x8F4 000004b8: call @deregister_tm_clones with return %000004ba 000004ba: 000004bf: R0 := 1 000004c7: mem := mem with [R19 + 0x70] <- low:8[31:0[R0]] -00000825: goto %00000335 +000008cf: goto %00000335 00000335: 00000345: R19 := mem[R31 + 0x10, el]:u64 @@ -53,12 +53,12 @@ 00000356: R31 := R31 + 0x20 0000035b: call R30 with noreturn -00000826: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) -00000840: __libc_start_main_main :: in u64 = R0 -00000841: __libc_start_main_arg2 :: in u32 = low:32[R1] -00000842: __libc_start_main_arg3 :: in out u64 = R2 -00000843: __libc_start_main_auxv :: in out u64 = R3 -00000844: __libc_start_main_result :: out u32 = low:32[R0] +00000895: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +000008da: __libc_start_main_main :: in u64 = R0 +000008db: __libc_start_main_arg2 :: in u32 = low:32[R1] +000008dc: __libc_start_main_arg3 :: in out u64 = R2 +000008dd: __libc_start_main_auxv :: in out u64 = R3 +000008de: __libc_start_main_result :: out u32 = low:32[R0] 00000242: 00000666: R16 := 0x20000 @@ -66,8 +66,8 @@ 00000675: R16 := R16 + 0x10 0000067a: call R17 with noreturn -00000827: sub _fini(_fini_result) -00000845: _fini_result :: out u32 = low:32[R0] +00000896: sub _fini(_fini_result) +000008df: _fini_result :: out u32 = low:32[R0] 00000020: 00000029: #3 := R31 - 0x10 @@ -80,26 +80,26 @@ 0000004f: R31 := R31 + 0x10 00000054: call R30 with noreturn -00000828: sub _init(_init_result) -00000846: _init_result :: out u32 = low:32[R0] +00000897: sub _init(_init_result) +000008e0: _init_result :: out u32 = low:32[R0] -00000745: -0000074e: #117 := R31 - 0x10 -00000753: mem := mem with [#117, el]:u64 <- R29 -00000758: mem := mem with [#117 + 8, el]:u64 <- R30 -0000075c: R31 := #117 -00000763: R29 := R31 -00000768: R30 := 0x6E8 -0000076a: call @call_weak_fn with return %0000076c +000007b4: +000007bd: #117 := R31 - 0x10 +000007c2: mem := mem with [#117, el]:u64 <- R29 +000007c7: mem := mem with [#117 + 8, el]:u64 <- R30 +000007cb: R31 := #117 +000007d2: R29 := R31 +000007d7: R30 := 0x738 +000007d9: call @call_weak_fn with return %000007db -0000076c: -00000774: R29 := mem[R31, el]:u64 -00000778: R30 := mem[R31 + 8, el]:u64 -0000077b: R31 := R31 + 0x10 -00000780: call R30 with noreturn +000007db: +000007e3: R29 := mem[R31, el]:u64 +000007e7: R30 := mem[R31 + 8, el]:u64 +000007ea: R31 := R31 + 0x10 +000007ef: call R30 with noreturn -00000829: sub _start(_start_result) -00000847: _start_result :: out u32 = low:32[R0] +00000898: sub _start(_start_result) +000008e1: _start_result :: out u32 = low:32[R0] 000001f8: 000001fe: R29 := 0 @@ -112,17 +112,17 @@ 00000230: R0 := mem[R0 + 0xFD8, el]:u64 00000236: R3 := 0 0000023c: R4 := 0 -00000241: R30 := 0x7F0 +00000241: R30 := 0x830 00000244: call @__libc_start_main with return %00000246 00000246: -00000249: R30 := 0x7F4 -0000024c: call @abort with return %0000082a +00000249: R30 := 0x834 +0000024c: call @abort with return %000008d0 -0000082a: -0000082b: call @call_weak_fn with noreturn +000008d0: +000008d1: call @call_weak_fn with noreturn -0000082c: sub abort() +0000089b: sub abort() 0000024a: @@ -131,15 +131,15 @@ 000006f2: R16 := R16 + 0x38 000006f7: call R17 with noreturn -0000082d: sub call_weak_fn(call_weak_fn_result) -00000848: call_weak_fn_result :: out u32 = low:32[R0] +0000089c: sub call_weak_fn(call_weak_fn_result) +000008e2: call_weak_fn_result :: out u32 = low:32[R0] 0000024e: 00000252: R0 := 0x1F000 0000025a: R0 := mem[R0 + 0xFD0, el]:u64 00000266: #12 := R0 = 0 00000260: when #12 goto %0000025e -0000082e: goto %0000052d +000008d2: goto %0000052d 0000025e: 0000026b: call R30 with noreturn @@ -153,8 +153,8 @@ 000006d9: R16 := R16 + 0x30 000006de: call R17 with noreturn -0000082f: sub deregister_tm_clones(deregister_tm_clones_result) -00000849: deregister_tm_clones_result :: out u32 = low:32[R0] +0000089e: sub deregister_tm_clones(deregister_tm_clones_result) +000008e3: deregister_tm_clones_result :: out u32 = low:32[R0] 00000271: 00000275: R0 := 0x20000 @@ -170,14 +170,14 @@ & ~63:63[#16] 000002ac: #21 := ZF 000002a6: when #21 goto %000002a4 -00000830: goto %00000506 +000008d3: goto %00000506 00000506: 0000050a: R1 := 0x1F000 00000512: R1 := mem[R1 + 0xFC0, el]:u64 0000051d: #94 := R1 = 0 00000517: when #94 goto %000002a4 -00000831: goto %00000520 +000008d4: goto %00000520 000002a4: 000002b1: call R30 with noreturn @@ -186,14 +186,14 @@ 00000526: R16 := R1 0000052b: call R16 with noreturn -00000832: sub frame_dummy(frame_dummy_result) -0000084a: frame_dummy_result :: out u32 = low:32[R0] +000008a1: sub frame_dummy(frame_dummy_result) +000008e4: frame_dummy_result :: out u32 = low:32[R0] 00000361: 00000363: call @register_tm_clones with noreturn -00000833: sub free(free_ptr) -0000084b: free_ptr :: in out u64 = R0 +000008a2: sub free(free_ptr) +000008e5: free_ptr :: in out u64 = R0 00000461: 00000715: R16 := 0x20000 @@ -201,10 +201,10 @@ 00000724: R16 := R16 + 0x48 00000729: call R17 with noreturn -00000834: sub main(main_argc, main_argv, main_result) -0000084c: main_argc :: in u32 = low:32[R0] -0000084d: main_argv :: in out u64 = R1 -0000084e: main_result :: out u32 = low:32[R0] +000008a3: sub main(main_argc, main_argv, main_result) +000008e6: main_argc :: in u32 = low:32[R0] +000008e7: main_argv :: in out u64 = R1 +000008e8: main_result :: out u32 = low:32[R0] 00000365: 0000036c: #42 := R31 - 0x30 @@ -217,7 +217,7 @@ 00000394: mem := mem with [#47 + 8, el]:u64 <- R19 0000039b: R29 := R31 000003a2: R0 := 0xB -000003a7: R30 := 0x8EC +000003a7: R30 := 0x92C 000003aa: call @malloc with return %000003ac 000003ac: @@ -227,19 +227,19 @@ 000003c5: R19 := R0 000003cd: mem := mem with [R21 + 0x78, el]:u64 <- R0 000003d5: R0 := R20 -000003da: R30 := 0x908 +000003da: R30 := 0x948 000003dd: call @strlen with return %000003df 000003df: 000003e5: R2 := R0 000003ed: R0 := R19 000003f5: R1 := R20 -000003fa: R30 := 0x918 +000003fa: R30 := 0x958 000003fd: call @memcpy with return %000003ff 000003ff: 00000405: R0 := R19 -0000040a: R30 := 0x920 +0000040a: R30 := 0x960 0000040d: call @puts with return %0000040f 0000040f: @@ -247,19 +247,19 @@ 0000041d: mem := mem with [R8 + 4] <- 0 00000425: R19 := mem[R21 + 0x78, el]:u64 0000042d: R0 := R19 -00000432: R30 := 0x934 +00000432: R30 := 0x974 00000434: call @strlen with return %00000436 00000436: 0000043c: R2 := R0 00000444: R0 := R19 0000044b: R1 := 1 -00000450: R30 := 0x944 +00000450: R30 := 0x984 00000453: call @memset with return %00000455 00000455: 0000045b: R0 := mem[R21 + 0x78, el]:u64 -00000460: R30 := 0x94C +00000460: R30 := 0x98C 00000463: call @free with return %00000465 00000465: @@ -272,9 +272,9 @@ 00000492: R31 := R31 + 0x30 00000497: call R30 with noreturn -00000835: sub malloc(malloc_size, malloc_result) -0000084f: malloc_size :: in u64 = R0 -00000850: malloc_result :: out u64 = R0 +000008a4: sub malloc(malloc_size, malloc_result) +000008e9: malloc_size :: in u64 = R0 +000008ea: malloc_result :: out u64 = R0 000003a8: 00000698: R16 := 0x20000 @@ -282,11 +282,11 @@ 000006a7: R16 := R16 + 0x20 000006ac: call R17 with noreturn -00000836: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) -00000851: memcpy_dst :: in out u64 = R0 -00000852: memcpy_src :: in out u64 = R1 -00000853: memcpy_n :: in u64 = R2 -00000854: memcpy_result :: out u64 = R0 +000008a5: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +000008eb: memcpy_dst :: in out u64 = R0 +000008ec: memcpy_src :: in out u64 = R1 +000008ed: memcpy_n :: in u64 = R2 +000008ee: memcpy_result :: out u64 = R0 000003fb: 00000634: R16 := 0x20000 @@ -294,11 +294,11 @@ 00000643: R16 := R16 00000648: call R17 with noreturn -00000837: sub memset(memset_buf, memset_c, memset_n, memset_result) -00000855: memset_buf :: in out u64 = R0 -00000856: memset_c :: in u32 = low:32[R1] -00000857: memset_n :: in u64 = R2 -00000858: memset_result :: out u64 = R0 +000008a6: sub memset(memset_buf, memset_c, memset_n, memset_result) +000008ef: memset_buf :: in out u64 = R0 +000008f0: memset_c :: in u32 = low:32[R1] +000008f1: memset_n :: in u64 = R2 +000008f2: memset_result :: out u64 = R0 00000451: 000006b1: R16 := 0x20000 @@ -306,9 +306,9 @@ 000006c0: R16 := R16 + 0x28 000006c5: call R17 with noreturn -00000838: sub puts(puts_s, puts_result) -00000859: puts_s :: in u64 = R0 -0000085a: puts_result :: out u32 = low:32[R0] +000008a7: sub puts(puts_s, puts_result) +000008f3: puts_s :: in u64 = R0 +000008f4: puts_result :: out u32 = low:32[R0] 0000040b: 000006fc: R16 := 0x20000 @@ -316,8 +316,8 @@ 0000070b: R16 := R16 + 0x40 00000710: call R17 with noreturn -00000839: sub register_tm_clones(register_tm_clones_result) -0000085b: register_tm_clones_result :: out u32 = low:32[R0] +000008a8: sub register_tm_clones(register_tm_clones_result) +000008f5: register_tm_clones_result :: out u32 = low:32[R0] 000002b3: 000002b7: R0 := 0x20000 @@ -330,14 +330,14 @@ 000002e9: R1 := R1 >> 1 000002f5: #30 := R1 = 0 000002ef: when #30 goto %000002ed -0000083a: goto %000004df +000008d5: goto %000004df 000004df: 000004e3: R2 := 0x1F000 000004eb: R2 := mem[R2 + 0xFE0, el]:u64 000004f6: #89 := R2 = 0 000004f0: when #89 goto %000002ed -0000083b: goto %000004f9 +000008d6: goto %000004f9 000002ed: 000002fa: call R30 with noreturn @@ -346,9 +346,9 @@ 000004ff: R16 := R2 00000504: call R16 with noreturn -0000083c: sub strlen(strlen_s, strlen_result) -0000085c: strlen_s :: in u64 = R0 -0000085d: strlen_result :: out u64 = R0 +000008ab: sub strlen(strlen_s, strlen_result) +000008f6: strlen_s :: in u64 = R0 +000008f7: strlen_result :: out u64 = R0 000003db: 0000064d: R16 := 0x20000 diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.expected b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.expected new file mode 100644 index 000000000..332b58eaf --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.expected @@ -0,0 +1,825 @@ +var {:extern} Gamma_R0: bool; +var {:extern} Gamma_R1: bool; +var {:extern} Gamma_R16: bool; +var {:extern} Gamma_R17: bool; +var {:extern} Gamma_R19: bool; +var {:extern} Gamma_R2: bool; +var {:extern} Gamma_R20: bool; +var {:extern} Gamma_R21: bool; +var {:extern} Gamma_R29: bool; +var {:extern} Gamma_R30: bool; +var {:extern} Gamma_R31: bool; +var {:extern} Gamma_R8: bool; +var {:extern} Gamma_malloc_base: [bv64]bool; +var {:extern} Gamma_malloc_count: [bv64]bool; +var {:extern} Gamma_malloc_end: [bv64]bool; +var {:extern} Gamma_mem: [bv64]bool; +var {:extern} Gamma_stack: [bv64]bool; +var {:extern} R0: bv64; +var {:extern} R1: bv64; +var {:extern} R16: bv64; +var {:extern} R17: bv64; +var {:extern} R19: bv64; +var {:extern} R2: bv64; +var {:extern} R20: bv64; +var {:extern} R21: bv64; +var {:extern} R29: bv64; +var {:extern} R30: bv64; +var {:extern} R31: bv64; +var {:extern} R8: bv64; +var {:extern} malloc_base: [bv64]bv8; +var {:extern} malloc_count: [bv64]bv8; +var {:extern} malloc_end: [bv64]bv8; +var {:extern} mem: [bv64]bv8; +var {:extern} stack: [bv64]bv8; +const {:extern} $buf_addr: bv64; +axiom ($buf_addr == 131192bv64); +const {:extern} $password_addr: bv64; +axiom ($password_addr == 131168bv64); +const {:extern} $stext_addr: bv64; +axiom ($stext_addr == 131169bv64); +function {:extern} L(memory: [bv64]bv8, index: bv64) returns (bool) { + false +} + +function {:extern} {:bvbuiltin "bvadd"} bvadd64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvsub"} bvsub64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvuge"} bvuge64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvugt"} bvugt64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvule"} bvule64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvult"} bvult64(bv64, bv64) returns (bool); +function {:extern} gamma_load32(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))) +} + +function {:extern} gamma_load64(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 7bv64)] && (gammaMap[bvadd64(index, 6bv64)] && (gammaMap[bvadd64(index, 5bv64)] && (gammaMap[bvadd64(index, 4bv64)] && (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))))))) +} + +function {:extern} gamma_load8(gammaMap: [bv64]bool, index: bv64) returns (bool) { + gammaMap[index] +} + +function {:extern} gamma_store64(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value][bvadd64(index, 1bv64) := value][bvadd64(index, 2bv64) := value][bvadd64(index, 3bv64) := value][bvadd64(index, 4bv64) := value][bvadd64(index, 5bv64) := value][bvadd64(index, 6bv64) := value][bvadd64(index, 7bv64) := value] +} + +function {:extern} gamma_store8(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value] +} + +function {:extern} memory_load64_le(memory: [bv64]bv8, index: bv64) returns (bv64) { + (memory[bvadd64(index, 7bv64)] ++ (memory[bvadd64(index, 6bv64)] ++ (memory[bvadd64(index, 5bv64)] ++ (memory[bvadd64(index, 4bv64)] ++ (memory[bvadd64(index, 3bv64)] ++ (memory[bvadd64(index, 2bv64)] ++ (memory[bvadd64(index, 1bv64)] ++ memory[index]))))))) +} + +function {:extern} memory_load8_le(memory: [bv64]bv8, index: bv64) returns (bv8) { + memory[index] +} + +function {:extern} memory_store64_le(memory: [bv64]bv8, index: bv64, value: bv64) returns ([bv64]bv8) { + memory[index := value[8:0]][bvadd64(index, 1bv64) := value[16:8]][bvadd64(index, 2bv64) := value[24:16]][bvadd64(index, 3bv64) := value[32:24]][bvadd64(index, 4bv64) := value[40:32]][bvadd64(index, 5bv64) := value[48:40]][bvadd64(index, 6bv64) := value[56:48]][bvadd64(index, 7bv64) := value[64:56]] +} + +function {:extern} memory_store8_be(memory: [bv64]bv8, index: bv64, value: bv8) returns ([bv64]bv8) { + memory[index := value[8:0]] +} + +procedure {:extern} rely(); + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); + free ensures (memory_load8_le(mem, 2484bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2486bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure {:extern} rely_transitive() + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); +{ + call rely(); + call rely(); +} + +procedure {:extern} rely_reflexive(); + +procedure {:extern} guarantee_reflexive(); + modifies Gamma_mem, mem; + +procedure #free(); + modifies Gamma_R16, Gamma_R17, R16, R17; + requires (forall i : int, j: bv64 :: (malloc_base[i] == R0 && bvuge64(j, R0) && bvult64(j, malloc_end[i])) ==> Gamma_mem[j]); + free requires (memory_load8_le(mem, 2484bv64) == 1bv8); + free requires (memory_load8_le(mem, 2485bv64) == 0bv8); + free requires (memory_load8_le(mem, 2486bv64) == 2bv8); + free requires (memory_load8_le(mem, 2487bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2484bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2486bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure main() + modifies Gamma_R0, Gamma_R1, Gamma_R16, Gamma_R17, Gamma_R19, Gamma_R2, Gamma_R20, Gamma_R21, Gamma_R29, Gamma_R30, Gamma_R31, Gamma_R8, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, Gamma_mem, Gamma_stack, R0, R1, R16, R17, R19, R2, R20, R21, R29, R30, R31, R8, malloc_base, malloc_count, malloc_end, mem, stack; + requires (gamma_load8(Gamma_mem, $password_addr) == false); + requires malloc_count == 0; + requires gamma_load32(Gamma_mem, memory_load64_le(mem, $stext_addr)); + requires R31 == 100bv64; + free requires (memory_load8_le(mem, 131152bv64) == 0bv8); + free requires (memory_load8_le(mem, 131153bv64) == 0bv8); + free requires (memory_load8_le(mem, 131154bv64) == 0bv8); + free requires (memory_load8_le(mem, 131155bv64) == 0bv8); + free requires (memory_load8_le(mem, 131156bv64) == 0bv8); + free requires (memory_load8_le(mem, 131157bv64) == 0bv8); + free requires (memory_load8_le(mem, 131158bv64) == 0bv8); + free requires (memory_load8_le(mem, 131159bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 131168bv64) == 7bv8); + free requires (memory_load8_le(mem, 131169bv64) == 117bv8); + free requires (memory_load8_le(mem, 131170bv64) == 115bv8); + free requires (memory_load8_le(mem, 131171bv64) == 101bv8); + free requires (memory_load8_le(mem, 131172bv64) == 114bv8); + free requires (memory_load8_le(mem, 131173bv64) == 58bv8); + free requires (memory_load8_le(mem, 131174bv64) == 112bv8); + free requires (memory_load8_le(mem, 131175bv64) == 97bv8); + free requires (memory_load8_le(mem, 131176bv64) == 115bv8); + free requires (memory_load8_le(mem, 131177bv64) == 115bv8); + free requires (memory_load8_le(mem, 131178bv64) == 0bv8); + free requires (memory_load8_le(mem, 131179bv64) == 0bv8); + free requires (memory_load8_le(mem, 2484bv64) == 1bv8); + free requires (memory_load8_le(mem, 2485bv64) == 0bv8); + free requires (memory_load8_le(mem, 2486bv64) == 2bv8); + free requires (memory_load8_le(mem, 2487bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (Gamma_R19 == old(Gamma_R19)); + free ensures (Gamma_R20 == old(Gamma_R20)); + free ensures (Gamma_R21 == old(Gamma_R21)); + free ensures (Gamma_R29 == old(Gamma_R29)); + free ensures (Gamma_R31 == old(Gamma_R31)); + free ensures (R19 == old(R19)); + free ensures (R20 == old(R20)); + free ensures (R21 == old(R21)); + free ensures (R29 == old(R29)); + free ensures (R31 == old(R31)); + free ensures (memory_load8_le(mem, 2484bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2486bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); +{ + var #42: bv64; + var #47: bv64; + var Gamma_#42: bool; + var Gamma_#47: bool; + lmain: + assume {:captureState "lmain"} true; + #42, Gamma_#42 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #42, R29), gamma_store64(Gamma_stack, #42, Gamma_R29); + assume {:captureState "%00000371"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#42, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#42, 8bv64), Gamma_R30); + assume {:captureState "%00000376"} true; + R31, Gamma_R31 := #42, Gamma_#42; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 16bv64), R21), gamma_store64(Gamma_stack, bvadd64(R31, 16bv64), Gamma_R21); + assume {:captureState "%00000382"} true; + #47, Gamma_#47 := bvadd64(R31, 32bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #47, R20), gamma_store64(Gamma_stack, #47, Gamma_R20); + assume {:captureState "%0000038f"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#47, 8bv64), R19), gamma_store64(Gamma_stack, bvadd64(#47, 8bv64), Gamma_R19); + assume {:captureState "%00000394"} true; + R29, Gamma_R29 := R31, Gamma_R31; + R0, Gamma_R0 := 11bv64, true; + R30, Gamma_R30 := 2348bv64, true; + call malloc(); + goto l000003ac; + l000003ac: + assume {:captureState "l000003ac"} true; + R21, Gamma_R21 := 131072bv64, true; + R20, Gamma_R20 := 131072bv64, true; + R20, Gamma_R20 := bvadd64(R20, 97bv64), Gamma_R20; + R19, Gamma_R19 := R0, Gamma_R0; + call rely(); + assert (L(mem, bvadd64(R21, 120bv64)) ==> Gamma_R0); + mem, Gamma_mem := memory_store64_le(mem, bvadd64(R21, 120bv64), R0), gamma_store64(Gamma_mem, bvadd64(R21, 120bv64), Gamma_R0); + assume {:captureState "%000003cd"} true; + R0, Gamma_R0 := R20, Gamma_R20; + R30, Gamma_R30 := 2376bv64, true; + call strlen(); + goto l000003df; + l000003df: + assume {:captureState "l000003df"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := R19, Gamma_R19; + R1, Gamma_R1 := R20, Gamma_R20; + R30, Gamma_R30 := 2392bv64, true; + call memcpy(); + goto l000003ff; + l000003ff: + assume {:captureState "l000003ff"} true; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2400bv64, true; + call puts(); + goto l0000040f; + l0000040f: + assume {:captureState "l0000040f"} true; + call rely(); + R8, Gamma_R8 := memory_load64_le(mem, bvadd64(R21, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R21, 120bv64)) || L(mem, bvadd64(R21, 120bv64))); + call rely(); + assert (L(mem, bvadd64(R8, 4bv64)) ==> true); + mem, Gamma_mem := memory_store8_be(mem, bvadd64(R8, 4bv64), 0bv8), gamma_store8(Gamma_mem, bvadd64(R8, 4bv64), true); + assume {:captureState "%0000041d"} true; + call rely(); + R19, Gamma_R19 := memory_load64_le(mem, bvadd64(R21, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R21, 120bv64)) || L(mem, bvadd64(R21, 120bv64))); + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2420bv64, true; + call strlen(); + goto l00000436; + l00000436: + assume {:captureState "l00000436"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := R19, Gamma_R19; + R1, Gamma_R1 := 1bv64, true; + R30, Gamma_R30 := 2436bv64, true; + call memset(); + goto l00000455; + l00000455: + assume {:captureState "l00000455"} true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R21, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R21, 120bv64)) || L(mem, bvadd64(R21, 120bv64))); + R30, Gamma_R30 := 2444bv64, true; + call #free(); + goto l00000465; + l00000465: + assume {:captureState "l00000465"} true; + R0, Gamma_R0 := 0bv32, true; + R20, Gamma_R20 := memory_load64_le(stack, bvadd64(R31, 32bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 32bv64)); + R19, Gamma_R19 := memory_load64_le(stack, bvadd64(R31, 40bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 40bv64)); + R21, Gamma_R21 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); + R29, Gamma_R29 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); + R30, Gamma_R30 := memory_load64_le(stack, bvadd64(R31, 8bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 8bv64)); + R31, Gamma_R31 := bvadd64(R31, 48bv64), Gamma_R31; + return; +} + +procedure malloc(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, R0, R16, R17, malloc_base, malloc_count, malloc_end; + requires bvugt64(R0, 0bv64); + requires Gamma_R0 == true; + free requires (memory_load8_le(mem, 2484bv64) == 1bv8); + free requires (memory_load8_le(mem, 2485bv64) == 0bv8); + free requires (memory_load8_le(mem, 2486bv64) == 2bv8); + free requires (memory_load8_le(mem, 2487bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures Gamma_R0 == true; + ensures malloc_count == old(malloc_count) + 1; + ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); + ensures R0 == malloc_base[malloc_count]; + ensures malloc_end[malloc_count] == bvadd64(R0, old(R0)); + ensures (forall i: int :: i != malloc_count ==> bvugt64(malloc_base[malloc_count], malloc_end[i]) || bvult64(malloc_end[malloc_count], malloc_base[i])); + ensures (forall i: int :: i != malloc_count ==> malloc_base[i] == old(malloc_base[i]) && malloc_end[i] == old(malloc_end[i])); + ensures bvuge64(R0, 100000000bv64); + ensures (forall i : bv64 :: (bvuge64(i, R0) && bvult64(i, bvadd64(R0, old(R0)))) ==> (Gamma_mem[i] && gamma_load8(Gamma_mem, i))); + free ensures (memory_load8_le(mem, 2484bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2486bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memcpy(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + free requires (memory_load8_le(mem, 2484bv64) == 1bv8); + free requires (memory_load8_le(mem, 2485bv64) == 0bv8); + free requires (memory_load8_le(mem, 2486bv64) == 2bv8); + free requires (memory_load8_le(mem, 2487bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2484bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2486bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memset(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + requires Gamma_R1; + free requires (memory_load8_le(mem, 2484bv64) == 1bv8); + free requires (memory_load8_le(mem, 2485bv64) == 0bv8); + free requires (memory_load8_le(mem, 2486bv64) == 2bv8); + free requires (memory_load8_le(mem, 2487bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then Gamma_R1 else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then R1[8:0] else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2484bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2486bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure puts(); + modifies Gamma_R16, Gamma_R17, R16, R17; + free requires (memory_load8_le(mem, 2484bv64) == 1bv8); + free requires (memory_load8_le(mem, 2485bv64) == 0bv8); + free requires (memory_load8_le(mem, 2486bv64) == 2bv8); + free requires (memory_load8_le(mem, 2487bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2484bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2486bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure strlen(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, R0, R16, R17; + free requires (memory_load8_le(mem, 2484bv64) == 1bv8); + free requires (memory_load8_le(mem, 2485bv64) == 0bv8); + free requires (memory_load8_le(mem, 2486bv64) == 2bv8); + free requires (memory_load8_le(mem, 2487bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); + ensures Gamma_R0 == true; + ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); + ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); + ensures (bvult64(old(R0), bvadd64(bvadd64(old(R0), R0), 1bv64))); + free ensures (memory_load8_le(mem, 2484bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2486bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.relf b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.relf index 3382b0fb3..a3d3583af 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.relf +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_O2/malloc_memcpy_strlen_memset_free.relf @@ -1,16 +1,16 @@ -Relocation section '.rela.dyn' at offset 0x528 contains 8 entries: +Relocation section '.rela.dyn' at offset 0x578 contains 8 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -000000000001fdc8 0000000000000403 R_AARCH64_RELATIVE 8d0 -000000000001fdd0 0000000000000403 R_AARCH64_RELATIVE 880 -000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 8d4 +000000000001fdb8 0000000000000403 R_AARCH64_RELATIVE 910 +000000000001fdc0 0000000000000403 R_AARCH64_RELATIVE 8c0 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 914 0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 000000000001ffc0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 000000000001ffc8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 000000000001ffd0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: +Relocation section '.rela.plt' at offset 0x638 contains 10 entries: Offset Info Type Symbol's Value Symbol's Name + Addend 0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 @@ -26,8 +26,8 @@ Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: Symbol table '.dynsym' contains 15 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init - 2: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 1: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) @@ -41,104 +41,105 @@ Symbol table '.dynsym' contains 15 entries: 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable -Symbol table '.symtab' contains 99 entries: +Symbol table '.symtab' contains 100 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag - 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .gnu.hash - 5: 00000000000002b8 0 SECTION LOCAL DEFAULT 5 .dynsym - 6: 0000000000000420 0 SECTION LOCAL DEFAULT 6 .dynstr - 7: 00000000000004d4 0 SECTION LOCAL DEFAULT 7 .gnu.version - 8: 00000000000004f8 0 SECTION LOCAL DEFAULT 8 .gnu.version_r - 9: 0000000000000528 0 SECTION LOCAL DEFAULT 9 .rela.dyn - 10: 00000000000005e8 0 SECTION LOCAL DEFAULT 10 .rela.plt - 11: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init - 12: 00000000000006f0 0 SECTION LOCAL DEFAULT 12 .plt - 13: 00000000000007c0 0 SECTION LOCAL DEFAULT 13 .text - 14: 0000000000000960 0 SECTION LOCAL DEFAULT 14 .fini - 15: 0000000000000974 0 SECTION LOCAL DEFAULT 15 .rodata - 16: 0000000000000978 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr - 17: 00000000000009b8 0 SECTION LOCAL DEFAULT 17 .eh_frame - 18: 000000000001fdc8 0 SECTION LOCAL DEFAULT 18 .init_array - 19: 000000000001fdd0 0 SECTION LOCAL DEFAULT 19 .fini_array - 20: 000000000001fdd8 0 SECTION LOCAL DEFAULT 20 .dynamic - 21: 000000000001ffb8 0 SECTION LOCAL DEFAULT 21 .got - 22: 000000000001ffe8 0 SECTION LOCAL DEFAULT 22 .got.plt - 23: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data - 24: 0000000000020070 0 SECTION LOCAL DEFAULT 24 .bss - 25: 0000000000000000 0 SECTION LOCAL DEFAULT 25 .comment - 26: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o - 27: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d - 28: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag - 29: 00000000000007c0 0 NOTYPE LOCAL DEFAULT 13 $x - 30: 00000000000009cc 0 NOTYPE LOCAL DEFAULT 17 $d - 31: 0000000000000974 0 NOTYPE LOCAL DEFAULT 15 $d - 32: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o - 33: 00000000000007f4 0 NOTYPE LOCAL DEFAULT 13 $x - 34: 00000000000007f4 20 FUNC LOCAL DEFAULT 13 call_weak_fn - 35: 00000000000006d8 0 NOTYPE LOCAL DEFAULT 11 $x - 36: 0000000000000960 0 NOTYPE LOCAL DEFAULT 14 $x - 37: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o - 38: 00000000000006e8 0 NOTYPE LOCAL DEFAULT 11 $x - 39: 000000000000096c 0 NOTYPE LOCAL DEFAULT 14 $x - 40: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 41: 0000000000000810 0 NOTYPE LOCAL DEFAULT 13 $x - 42: 0000000000000810 0 FUNC LOCAL DEFAULT 13 deregister_tm_clones - 43: 0000000000000840 0 FUNC LOCAL DEFAULT 13 register_tm_clones - 44: 0000000000020058 0 NOTYPE LOCAL DEFAULT 23 $d - 45: 0000000000000880 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux - 46: 0000000000020070 1 OBJECT LOCAL DEFAULT 24 completed.0 - 47: 000000000001fdd0 0 NOTYPE LOCAL DEFAULT 19 $d - 48: 000000000001fdd0 0 OBJECT LOCAL DEFAULT 19 __do_global_dtors_aux_fini_array_entry - 49: 00000000000008d0 0 FUNC LOCAL DEFAULT 13 frame_dummy - 50: 000000000001fdc8 0 NOTYPE LOCAL DEFAULT 18 $d - 51: 000000000001fdc8 0 OBJECT LOCAL DEFAULT 18 __frame_dummy_init_array_entry - 52: 00000000000009e0 0 NOTYPE LOCAL DEFAULT 17 $d - 53: 0000000000020070 0 NOTYPE LOCAL DEFAULT 24 $d - 54: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c - 55: 00000000000008d4 0 NOTYPE LOCAL DEFAULT 13 $x.0 - 56: 0000000000020060 0 NOTYPE LOCAL DEFAULT 23 $d.1 - 57: 0000000000020078 0 NOTYPE LOCAL DEFAULT 24 $d.2 - 58: 000000000000003e 0 NOTYPE LOCAL DEFAULT 25 $d.3 - 59: 0000000000000a40 0 NOTYPE LOCAL DEFAULT 17 $d.4 - 60: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 61: 0000000000000a84 0 NOTYPE LOCAL DEFAULT 17 $d - 62: 0000000000000a84 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__ - 63: 0000000000000000 0 FILE LOCAL DEFAULT ABS - 64: 000000000001fdd8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC - 65: 0000000000000978 0 NOTYPE LOCAL DEFAULT 16 __GNU_EH_FRAME_HDR - 66: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - 67: 00000000000006f0 0 NOTYPE LOCAL DEFAULT 12 $x - 68: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 - 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 - 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 - 71: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 72: 0000000000020050 0 NOTYPE WEAK DEFAULT 23 data_start - 73: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start__ - 74: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 - 75: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _bss_end__ - 76: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 23 _edata - 77: 0000000000000960 0 FUNC GLOBAL HIDDEN 14 _fini - 78: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __bss_end__ - 79: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 - 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 - 81: 0000000000020060 1 OBJECT GLOBAL DEFAULT 23 password - 82: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 23 __data_start - 83: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 84: 0000000000020058 0 OBJECT GLOBAL HIDDEN 23 __dso_handle - 85: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 - 86: 0000000000000974 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used - 87: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 - 88: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _end - 89: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 - 90: 00000000000007c0 52 FUNC GLOBAL DEFAULT 13 _start - 91: 0000000000020078 8 OBJECT GLOBAL DEFAULT 24 buf - 92: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __end__ - 93: 0000000000020061 11 OBJECT GLOBAL DEFAULT 23 stext - 94: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start - 95: 00000000000008d4 140 FUNC GLOBAL DEFAULT 13 main - 96: 0000000000020070 0 OBJECT GLOBAL HIDDEN 23 __TMC_END__ - 97: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 98: 00000000000006d8 0 FUNC GLOBAL HIDDEN 11 _init + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .hash + 5: 00000000000002e8 0 SECTION LOCAL DEFAULT 5 .gnu.hash + 6: 0000000000000308 0 SECTION LOCAL DEFAULT 6 .dynsym + 7: 0000000000000470 0 SECTION LOCAL DEFAULT 7 .dynstr + 8: 0000000000000524 0 SECTION LOCAL DEFAULT 8 .gnu.version + 9: 0000000000000548 0 SECTION LOCAL DEFAULT 9 .gnu.version_r + 10: 0000000000000578 0 SECTION LOCAL DEFAULT 10 .rela.dyn + 11: 0000000000000638 0 SECTION LOCAL DEFAULT 11 .rela.plt + 12: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 13: 0000000000000740 0 SECTION LOCAL DEFAULT 13 .plt + 14: 0000000000000800 0 SECTION LOCAL DEFAULT 14 .text + 15: 00000000000009a0 0 SECTION LOCAL DEFAULT 15 .fini + 16: 00000000000009b4 0 SECTION LOCAL DEFAULT 16 .rodata + 17: 00000000000009b8 0 SECTION LOCAL DEFAULT 17 .eh_frame_hdr + 18: 00000000000009f8 0 SECTION LOCAL DEFAULT 18 .eh_frame + 19: 000000000001fdb8 0 SECTION LOCAL DEFAULT 19 .init_array + 20: 000000000001fdc0 0 SECTION LOCAL DEFAULT 20 .fini_array + 21: 000000000001fdc8 0 SECTION LOCAL DEFAULT 21 .dynamic + 22: 000000000001ffb8 0 SECTION LOCAL DEFAULT 22 .got + 23: 000000000001ffe8 0 SECTION LOCAL DEFAULT 23 .got.plt + 24: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 25: 0000000000020070 0 SECTION LOCAL DEFAULT 25 .bss + 26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment + 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 28: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 29: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 30: 0000000000000800 0 NOTYPE LOCAL DEFAULT 14 $x + 31: 0000000000000a0c 0 NOTYPE LOCAL DEFAULT 18 $d + 32: 00000000000009b4 0 NOTYPE LOCAL DEFAULT 16 $d + 33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 34: 0000000000000834 0 NOTYPE LOCAL DEFAULT 14 $x + 35: 0000000000000834 20 FUNC LOCAL DEFAULT 14 call_weak_fn + 36: 0000000000000728 0 NOTYPE LOCAL DEFAULT 12 $x + 37: 00000000000009a0 0 NOTYPE LOCAL DEFAULT 15 $x + 38: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 39: 0000000000000738 0 NOTYPE LOCAL DEFAULT 12 $x + 40: 00000000000009ac 0 NOTYPE LOCAL DEFAULT 15 $x + 41: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 42: 0000000000000850 0 NOTYPE LOCAL DEFAULT 14 $x + 43: 0000000000000850 0 FUNC LOCAL DEFAULT 14 deregister_tm_clones + 44: 0000000000000880 0 FUNC LOCAL DEFAULT 14 register_tm_clones + 45: 0000000000020058 0 NOTYPE LOCAL DEFAULT 24 $d + 46: 00000000000008c0 0 FUNC LOCAL DEFAULT 14 __do_global_dtors_aux + 47: 0000000000020070 1 OBJECT LOCAL DEFAULT 25 completed.0 + 48: 000000000001fdc0 0 NOTYPE LOCAL DEFAULT 20 $d + 49: 000000000001fdc0 0 OBJECT LOCAL DEFAULT 20 __do_global_dtors_aux_fini_array_entry + 50: 0000000000000910 0 FUNC LOCAL DEFAULT 14 frame_dummy + 51: 000000000001fdb8 0 NOTYPE LOCAL DEFAULT 19 $d + 52: 000000000001fdb8 0 OBJECT LOCAL DEFAULT 19 __frame_dummy_init_array_entry + 53: 0000000000000a20 0 NOTYPE LOCAL DEFAULT 18 $d + 54: 0000000000020070 0 NOTYPE LOCAL DEFAULT 25 $d + 55: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 56: 0000000000000914 0 NOTYPE LOCAL DEFAULT 14 $x.0 + 57: 0000000000020060 0 NOTYPE LOCAL DEFAULT 24 $d.1 + 58: 0000000000020078 0 NOTYPE LOCAL DEFAULT 25 $d.2 + 59: 000000000000001d 0 NOTYPE LOCAL DEFAULT 26 $d.3 + 60: 0000000000000a80 0 NOTYPE LOCAL DEFAULT 18 $d.4 + 61: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 62: 0000000000000ac4 0 NOTYPE LOCAL DEFAULT 18 $d + 63: 0000000000000ac4 0 OBJECT LOCAL DEFAULT 18 __FRAME_END__ + 64: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 65: 000000000001fdc8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 66: 00000000000009b8 0 NOTYPE LOCAL DEFAULT 17 __GNU_EH_FRAME_HDR + 67: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 68: 0000000000000740 0 NOTYPE LOCAL DEFAULT 13 $x + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 71: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 72: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 73: 0000000000020050 0 NOTYPE WEAK DEFAULT 24 data_start + 74: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start__ + 75: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 76: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _bss_end__ + 77: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 _edata + 78: 00000000000009a0 0 FUNC GLOBAL HIDDEN 15 _fini + 79: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __bss_end__ + 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 81: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 82: 0000000000020060 1 OBJECT GLOBAL DEFAULT 24 password + 83: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 24 __data_start + 84: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 85: 0000000000020058 0 OBJECT GLOBAL HIDDEN 24 __dso_handle + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 87: 00000000000009b4 4 OBJECT GLOBAL DEFAULT 16 _IO_stdin_used + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 89: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _end + 90: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 91: 0000000000000800 52 FUNC GLOBAL DEFAULT 14 _start + 92: 0000000000020078 8 OBJECT GLOBAL DEFAULT 25 buf + 93: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __end__ + 94: 0000000000020061 11 OBJECT GLOBAL DEFAULT 24 stext + 95: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start + 96: 0000000000000914 140 FUNC GLOBAL DEFAULT 14 main + 97: 0000000000020070 0 OBJECT GLOBAL HIDDEN 24 __TMC_END__ + 98: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 99: 0000000000000728 0 FUNC GLOBAL HIDDEN 12 _init diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt index 32718d866..4ce6993bd 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt @@ -1,779 +1,781 @@ Project(Attrs([Attr("filename","\"a.out\""), -Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2436 20 2436)\n(code-region 1984 452 1984)\n(code-region 1776 192 1776)\n(code-region 1752 24 1752)\n(code-start 2036)\n(code-start 1984)\n(code-start 2260)\n(entry-point 1984)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1752 0)\n(llvm:code-entry main 2260 176)\n(llvm:code-entry _start 1984 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2436 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2256 0)\n(llvm:code-entry __do_global_dtors_aux 2176 0)\n(llvm:code-entry register_tm_clones 2112 0)\n(llvm:code-entry deregister_tm_clones 2064 0)\n(llvm:code-entry call_weak_fn 2036 20)\n(llvm:code-entry .fini 2436 20)\n(llvm:code-entry .text 1984 452)\n(llvm:code-entry .plt 1776 192)\n(llvm:code-entry .init 1752 24)\n(llvm:elf-program-header 08 64968 568)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2460 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64984 480)\n(llvm:elf-program-header 03 64968 676)\n(llvm:elf-program-header 02 0 2720)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130504 568)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2460 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130520 480)\n(llvm:elf-virtual-program-header 03 130504 696)\n(llvm:elf-virtual-program-header 02 0 2720)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 1984)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68804)\n(llvm:section-entry .strtab 0 716 68088)\n(llvm:section-entry .symtab 0 2376 65712)\n(llvm:section-entry .comment 0 63 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130520 480 64984)\n(llvm:section-entry .fini_array 130512 8 64976)\n(llvm:section-entry .init_array 130504 8 64968)\n(llvm:section-entry .eh_frame 2520 200 2520)\n(llvm:section-entry .eh_frame_hdr 2460 60 2460)\n(llvm:section-entry .rodata 2456 4 2456)\n(llvm:section-entry .fini 2436 20 2436)\n(llvm:section-entry .text 1984 452 1984)\n(llvm:section-entry .plt 1776 192 1776)\n(llvm:section-entry .init 1752 24 1752)\n(llvm:section-entry .rela.plt 1512 240 1512)\n(llvm:section-entry .rela.dyn 1320 192 1320)\n(llvm:section-entry .gnu.version_r 1272 48 1272)\n(llvm:section-entry .gnu.version 1236 30 1236)\n(llvm:section-entry .dynstr 1056 179 1056)\n(llvm:section-entry .dynsym 696 360 696)\n(llvm:section-entry .gnu.hash 664 28 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1752 0 1752 1752)\n(llvm:symbol-entry main 2260 176 2260 2260)\n(llvm:symbol-entry _start 1984 52 1984 1984)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2436 0 2436 2436)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2256 0 2256 2256)\n(llvm:symbol-entry __do_global_dtors_aux 2176 0 2176 2176)\n(llvm:symbol-entry register_tm_clones 2112 0 2112 2112)\n(llvm:symbol-entry deregister_tm_clones 2064 0 2064 2064)\n(llvm:symbol-entry call_weak_fn 2036 20 2036 2036)\n(mapped 0 2720 0)\n(mapped 130504 676 64968)\n(named-region 0 2720 02)\n(named-region 130504 696 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 28 .gnu.hash)\n(named-region 696 360 .dynsym)\n(named-region 1056 179 .dynstr)\n(named-region 1236 30 .gnu.version)\n(named-region 1272 48 .gnu.version_r)\n(named-region 1320 192 .rela.dyn)\n(named-region 1512 240 .rela.plt)\n(named-region 1752 24 .init)\n(named-region 1776 192 .plt)\n(named-region 1984 452 .text)\n(named-region 2436 20 .fini)\n(named-region 2456 4 .rodata)\n(named-region 2460 60 .eh_frame_hdr)\n(named-region 2520 200 .eh_frame)\n(named-region 130504 8 .init_array)\n(named-region 130512 8 .fini_array)\n(named-region 130520 480 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 63 .comment)\n(named-region 0 2376 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2036 call_weak_fn)\n(named-symbol 2064 deregister_tm_clones)\n(named-symbol 2112 register_tm_clones)\n(named-symbol 2176 __do_global_dtors_aux)\n(named-symbol 2256 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2436 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 1984 _start)\n(named-symbol 2260 main)\n(named-symbol 1752 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 28)\n(section 696 360)\n(section 1056 179)\n(section 1236 30)\n(section 1272 48)\n(section 1320 192)\n(section 1512 240)\n(section 1752 24)\n(section 1776 192)\n(section 1984 452)\n(section 2436 20)\n(section 2456 4)\n(section 2460 60)\n(section 2520 200)\n(section 130504 8)\n(section 130512 8)\n(section 130520 480)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 63)\n(section 0 2376)\n(section 0 716)\n(section 0 259)\n(segment 0 2720 true false true)\n(segment 130504 696 true true false)\n(subarch v8)\n(symbol-chunk 2036 20 2036)\n(symbol-chunk 1984 52 1984)\n(symbol-chunk 2260 176 2260)\n(symbol-value 2036 2036)\n(symbol-value 2064 2064)\n(symbol-value 2112 2112)\n(symbol-value 2176 2176)\n(symbol-value 2256 2256)\n(symbol-value 2436 2436)\n(symbol-value 1984 1984)\n(symbol-value 2260 2260)\n(symbol-value 1752 1752)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2500 20 2500)\n(code-region 2048 452 2048)\n(code-region 1856 192 1856)\n(code-region 1832 24 1832)\n(code-start 2100)\n(code-start 2048)\n(code-start 2324)\n(entry-point 2048)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1832 0)\n(llvm:code-entry main 2324 176)\n(llvm:code-entry _start 2048 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2500 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2320 0)\n(llvm:code-entry __do_global_dtors_aux 2240 0)\n(llvm:code-entry register_tm_clones 2176 0)\n(llvm:code-entry deregister_tm_clones 2128 0)\n(llvm:code-entry call_weak_fn 2100 20)\n(llvm:code-entry .fini 2500 20)\n(llvm:code-entry .text 2048 452)\n(llvm:code-entry .plt 1856 192)\n(llvm:code-entry .init 1832 24)\n(llvm:elf-program-header 08 64952 584)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2524 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64968 496)\n(llvm:elf-program-header 03 64952 692)\n(llvm:elf-program-header 02 0 2784)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130488 584)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2524 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130504 496)\n(llvm:elf-virtual-program-header 03 130488 712)\n(llvm:elf-virtual-program-header 02 0 2784)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2048)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68820)\n(llvm:section-entry .strtab 0 716 68104)\n(llvm:section-entry .symtab 0 2400 65704)\n(llvm:section-entry .comment 0 58 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130504 496 64968)\n(llvm:section-entry .fini_array 130496 8 64960)\n(llvm:section-entry .init_array 130488 8 64952)\n(llvm:section-entry .eh_frame 2584 200 2584)\n(llvm:section-entry .eh_frame_hdr 2524 60 2524)\n(llvm:section-entry .rodata 2520 4 2520)\n(llvm:section-entry .fini 2500 20 2500)\n(llvm:section-entry .text 2048 452 2048)\n(llvm:section-entry .plt 1856 192 1856)\n(llvm:section-entry .init 1832 24 1832)\n(llvm:section-entry .rela.plt 1592 240 1592)\n(llvm:section-entry .rela.dyn 1400 192 1400)\n(llvm:section-entry .gnu.version_r 1352 48 1352)\n(llvm:section-entry .gnu.version 1316 30 1316)\n(llvm:section-entry .dynstr 1136 179 1136)\n(llvm:section-entry .dynsym 776 360 776)\n(llvm:section-entry .gnu.hash 744 28 744)\n(llvm:section-entry .hash 664 80 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1832 0 1832 1832)\n(llvm:symbol-entry main 2324 176 2324 2324)\n(llvm:symbol-entry _start 2048 52 2048 2048)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2500 0 2500 2500)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2320 0 2320 2320)\n(llvm:symbol-entry __do_global_dtors_aux 2240 0 2240 2240)\n(llvm:symbol-entry register_tm_clones 2176 0 2176 2176)\n(llvm:symbol-entry deregister_tm_clones 2128 0 2128 2128)\n(llvm:symbol-entry call_weak_fn 2100 20 2100 2100)\n(mapped 0 2784 0)\n(mapped 130488 692 64952)\n(named-region 0 2784 02)\n(named-region 130488 712 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 80 .hash)\n(named-region 744 28 .gnu.hash)\n(named-region 776 360 .dynsym)\n(named-region 1136 179 .dynstr)\n(named-region 1316 30 .gnu.version)\n(named-region 1352 48 .gnu.version_r)\n(named-region 1400 192 .rela.dyn)\n(named-region 1592 240 .rela.plt)\n(named-region 1832 24 .init)\n(named-region 1856 192 .plt)\n(named-region 2048 452 .text)\n(named-region 2500 20 .fini)\n(named-region 2520 4 .rodata)\n(named-region 2524 60 .eh_frame_hdr)\n(named-region 2584 200 .eh_frame)\n(named-region 130488 8 .init_array)\n(named-region 130496 8 .fini_array)\n(named-region 130504 496 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 58 .comment)\n(named-region 0 2400 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2100 call_weak_fn)\n(named-symbol 2128 deregister_tm_clones)\n(named-symbol 2176 register_tm_clones)\n(named-symbol 2240 __do_global_dtors_aux)\n(named-symbol 2320 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2500 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2048 _start)\n(named-symbol 2324 main)\n(named-symbol 1832 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 80)\n(section 744 28)\n(section 776 360)\n(section 1136 179)\n(section 1316 30)\n(section 1352 48)\n(section 1400 192)\n(section 1592 240)\n(section 1832 24)\n(section 1856 192)\n(section 2048 452)\n(section 2500 20)\n(section 2520 4)\n(section 2524 60)\n(section 2584 200)\n(section 130488 8)\n(section 130496 8)\n(section 130504 496)\n(section 131000 48)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 58)\n(section 0 2400)\n(section 0 716)\n(section 0 259)\n(segment 0 2784 true false true)\n(segment 130488 712 true true false)\n(subarch v8)\n(symbol-chunk 2100 20 2100)\n(symbol-chunk 2048 52 2048)\n(symbol-chunk 2324 176 2324)\n(symbol-value 2100 2100)\n(symbol-value 2128 2128)\n(symbol-value 2176 2176)\n(symbol-value 2240 2240)\n(symbol-value 2320 2320)\n(symbol-value 2500 2500)\n(symbol-value 2048 2048)\n(symbol-value 2324 2324)\n(symbol-value 1832 1832)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), -Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x0a\x00\x00\x00\x00\x00\x00\xa0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01"), -Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x0a\x00\x00\x00\x00\x00\x00\xa0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xa4\x02\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x9c\x09\x00\x00\x00\x00\x00\x00\x9c\x09\x00\x00\x00\x00\x00\x00\x9c\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x70\xc6\x6a\x89\xe9\x7c\x20\xe5\xd8\x2d\x59\xd2\x32\xff\xf0\x9f\xfb\x53\x96\x2f\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x0a\x00\x00\x00\x00\x00\x00\xa0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xa4\x02\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x9c\x09\x00\x00\x00\x00\x00\x00\x9c\x09\x00\x00\x00\x00\x00\x00\x9c\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x70\xc6\x6a\x89\xe9\x7c\x20\xe5\xd8\x2d\x59\xd2\x32\xff\xf0\x9f\xfb\x53\x96\x2f\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x99\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x84\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x7c\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x99\xff\xff\x97\xe8\x0f\x40\xf9\x09\x3d\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\xa9\x83\x5f\xf8\x3f\x01\x00\x39"), -Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xc8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c"), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x77\x62\xd4\x19\x46\x52\xb8\x44\xad\xf7\xd2\x88\x8a\x63\x49\x80\x74\x2d\x71\xad\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\xe0\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb4\x02\x00\x00\x00\x00\x00\x00\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\xdc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x77\x62\xd4\x19\x46\x52\xb8\x44\xad\xf7\xd2\x88\x8a\x63\x49\x80\x74\x2d\x71\xad\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x9d\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x88\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00"), Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), -Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x70\xc6\x6a\x89\xe9\x7c\x20\xe5\xd8\x2d\x59\xd2\x32\xff\xf0\x9f\xfb\x53\x96\x2f"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\x77\x62\xd4\x19\x46\x52\xb8\x44\xad\xf7\xd2\x88\x8a\x63\x49\x80\x74\x2d\x71\xad"), Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), -Section(".gnu.hash", 0x298, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynsym", 0x2B8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".dynstr", 0x420, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), -Section(".gnu.version", 0x4D4, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), -Section(".gnu.version_r", 0x4F8, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.dyn", 0x528, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".rela.plt", 0x5E8, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init", 0x6D8, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".plt", 0x6F0, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), -Section(".fini", 0x984, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), -Section(".rodata", 0x998, "\x01\x00\x02\x00"), -Section(".eh_frame_hdr", 0x99C, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x24\xfe\xff\xff\x50\x00\x00\x00\x74\xfe\xff\xff\x64\x00\x00\x00\xa4\xfe\xff\xff\x78\x00\x00\x00\xe4\xfe\xff\xff\x8c\x00\x00\x00\x34\xff\xff\xff\xb0\x00\x00\x00\x38\xff\xff\xff\xd8\x00\x00\x00"), -Section(".eh_frame", 0x9D8, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xcc\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x08\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x24\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x50\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x7c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x58\xfe\xff\xff\xb0\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\x98\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), -Section(".fini_array", 0x1FDD0, "\x80\x08\x00\x00\x00\x00\x00\x00"), -Section(".dynamic", 0x1FDD8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x84\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x20\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\xe8\x05\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x28\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xf8\x04\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xd4\x04\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".init_array", 0x1FDC8, "\xd0\x08\x00\x00\x00\x00\x00\x00"), -Section(".got", 0x1FFB8, "\xd8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), -Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00"), +Section(".hash", 0x298, "\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00"), +Section(".gnu.hash", 0x2E8, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x308, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x28\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x470, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x524, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x548, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x578, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x638, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x728, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x40\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x740, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0x9C4, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0x9D8, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0x9DC, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x24\xfe\xff\xff\x50\x00\x00\x00\x74\xfe\xff\xff\x64\x00\x00\x00\xa4\xfe\xff\xff\x78\x00\x00\x00\xe4\xfe\xff\xff\x8c\x00\x00\x00\x34\xff\xff\xff\xb0\x00\x00\x00\x38\xff\xff\xff\xd8\x00\x00\x00"), +Section(".eh_frame", 0xA18, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xcc\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x08\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x24\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x50\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x7c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x58\xfe\xff\xff\xb0\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\x98\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDC0, "\xc0\x08\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDC8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x28\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xc4\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x70\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x38\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x78\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\x48\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\x24\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDB8, "\x10\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFB8, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00\x40\x07\x00\x00\x00\x00\x00\x00"), Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), -Section(".text", 0x7C0, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x99\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x84\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x7c\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x99\xff\xff\x97\xe8\x0f\x40\xf9\x09\x3d\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\xa9\x83\x5f\xf8\x3f\x01\x00\x39\x09\x3d\x40\xf9\xe9\x0b\x00\xf9\x00\x3d\x40\xf9\x73\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x7f\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x8c\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), -Memmap([Annotation(Region(0x0,0xA9F), Attr("segment","02 0 2720")), -Annotation(Region(0x7C0,0x7F3), Attr("symbol","\"_start\"")), +Section(".text", 0x800, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd5\xff\xff\x97\xe8\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xe0\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa9\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x9d\xff\xff\x97\x08\x01\x00\x90\xe8\x0f\x00\xf9\x00\x3d\x00\xf9\x08\x3d\x40\xf9\xe8\x07\x00\xf9\x00\x01\x00\x90\x00\x84\x01\x91\xe0\x03\x00\xf9\x88\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x80\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x9d\xff\xff\x97\xe8\x0f\x40\xf9\x09\x3d\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\xa9\x83\x5f\xf8\x3f\x01\x00\x39\x09\x3d\x40\xf9\xe9\x0b\x00\xf9\x00\x3d\x40\xf9\x77\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x83\xff\xff\x97\xe8\x0f\x40\xf9\x00\x3d\x40\xf9\x90\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xADF), Attr("segment","02 0 2784")), +Annotation(Region(0x800,0x833), Attr("symbol","\"_start\"")), Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), Annotation(Region(0x0,0x2CB), Attr("section","\".strtab\"")), -Annotation(Region(0x0,0x947), Attr("section","\".symtab\"")), -Annotation(Region(0x0,0x3E), Attr("section","\".comment\"")), +Annotation(Region(0x0,0x95F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x39), Attr("section","\".comment\"")), Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), -Annotation(Region(0x298,0x2B3), Attr("section","\".gnu.hash\"")), -Annotation(Region(0x2B8,0x41F), Attr("section","\".dynsym\"")), -Annotation(Region(0x420,0x4D2), Attr("section","\".dynstr\"")), -Annotation(Region(0x4D4,0x4F1), Attr("section","\".gnu.version\"")), -Annotation(Region(0x4F8,0x527), Attr("section","\".gnu.version_r\"")), -Annotation(Region(0x528,0x5E7), Attr("section","\".rela.dyn\"")), -Annotation(Region(0x5E8,0x6D7), Attr("section","\".rela.plt\"")), -Annotation(Region(0x6D8,0x6EF), Attr("section","\".init\"")), -Annotation(Region(0x6F0,0x7AF), Attr("section","\".plt\"")), -Annotation(Region(0x6D8,0x6EF), Attr("code-region","()")), -Annotation(Region(0x6F0,0x7AF), Attr("code-region","()")), -Annotation(Region(0x7C0,0x7F3), Attr("symbol-info","_start 0x7C0 52")), -Annotation(Region(0x7F4,0x807), Attr("symbol","\"call_weak_fn\"")), -Annotation(Region(0x7F4,0x807), Attr("symbol-info","call_weak_fn 0x7F4 20")), -Annotation(Region(0x8D4,0x983), Attr("symbol","\"main\"")), -Annotation(Region(0x8D4,0x983), Attr("symbol-info","main 0x8D4 176")), -Annotation(Region(0x984,0x997), Attr("section","\".fini\"")), -Annotation(Region(0x998,0x99B), Attr("section","\".rodata\"")), -Annotation(Region(0x99C,0x9D7), Attr("section","\".eh_frame_hdr\"")), -Annotation(Region(0x9D8,0xA9F), Attr("section","\".eh_frame\"")), -Annotation(Region(0x1FDC8,0x2006B), Attr("segment","03 0x1FDC8 696")), -Annotation(Region(0x1FDD0,0x1FDD7), Attr("section","\".fini_array\"")), -Annotation(Region(0x1FDD8,0x1FFB7), Attr("section","\".dynamic\"")), -Annotation(Region(0x1FDC8,0x1FDCF), Attr("section","\".init_array\"")), +Annotation(Region(0x298,0x2E7), Attr("section","\".hash\"")), +Annotation(Region(0x2E8,0x303), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x308,0x46F), Attr("section","\".dynsym\"")), +Annotation(Region(0x470,0x522), Attr("section","\".dynstr\"")), +Annotation(Region(0x524,0x541), Attr("section","\".gnu.version\"")), +Annotation(Region(0x548,0x577), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x578,0x637), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x638,0x727), Attr("section","\".rela.plt\"")), +Annotation(Region(0x728,0x73F), Attr("section","\".init\"")), +Annotation(Region(0x740,0x7FF), Attr("section","\".plt\"")), +Annotation(Region(0x728,0x73F), Attr("code-region","()")), +Annotation(Region(0x740,0x7FF), Attr("code-region","()")), +Annotation(Region(0x800,0x833), Attr("symbol-info","_start 0x800 52")), +Annotation(Region(0x834,0x847), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x834,0x847), Attr("symbol-info","call_weak_fn 0x834 20")), +Annotation(Region(0x914,0x9C3), Attr("symbol","\"main\"")), +Annotation(Region(0x914,0x9C3), Attr("symbol-info","main 0x914 176")), +Annotation(Region(0x9C4,0x9D7), Attr("section","\".fini\"")), +Annotation(Region(0x9D8,0x9DB), Attr("section","\".rodata\"")), +Annotation(Region(0x9DC,0xA17), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0xA18,0xADF), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDB8,0x2006B), Attr("segment","03 0x1FDB8 712")), +Annotation(Region(0x1FDC0,0x1FDC7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDC8,0x1FFB7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDB8,0x1FDBF), Attr("section","\".init_array\"")), Annotation(Region(0x1FFB8,0x1FFE7), Attr("section","\".got\"")), Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), -Annotation(Region(0x7C0,0x983), Attr("section","\".text\"")), -Annotation(Region(0x7C0,0x983), Attr("code-region","()")), -Annotation(Region(0x984,0x997), Attr("code-region","()"))]), -Program(Tid(2_198, "%00000896"), Attrs([]), - Subs([Sub(Tid(2_170, "@__cxa_finalize"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x740"), -Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_199, "%00000897"), +Annotation(Region(0x800,0x9C3), Attr("section","\".text\"")), +Annotation(Region(0x800,0x9C3), Attr("code-region","()")), +Annotation(Region(0x9C4,0x9D7), Attr("code-region","()"))]), +Program(Tid(2_361, "%00000939"), Attrs([]), + Subs([Sub(Tid(2_290, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x790"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_362, "%0000093a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_323, "@__cxa_finalize"), - Attrs([Attr("address","0x740")]), Phis([]), -Defs([Def(Tid(1_743, "%000006cf"), Attrs([Attr("address","0x740"), + Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_743, "%000006cf"), Attrs([Attr("address","0x790"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_751, "%000006d7"), Attrs([Attr("address","0x744"), +Def(Tid(1_751, "%000006d7"), Attrs([Attr("address","0x794"), Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_758, "%000006de"), Attrs([Attr("address","0x748"), +Def(Tid(1_758, "%000006de"), Attrs([Attr("address","0x798"), Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_763, "%000006e3"), - Attrs([Attr("address","0x74C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_171, "@__do_global_dtors_aux"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), - "__do_global_dtors_aux", Args([Arg(Tid(2_200, "%00000898"), +Sub(Tid(2_291, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_363, "%0000093b"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(802, "@__do_global_dtors_aux"), - Attrs([Attr("address","0x880")]), Phis([]), Defs([Def(Tid(809, "%00000329"), - Attrs([Attr("address","0x880"), + Attrs([Attr("address","0x8C0")]), Phis([]), Defs([Def(Tid(809, "%00000329"), + Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), -Def(Tid(814, "%0000032e"), Attrs([Attr("address","0x880"), +Def(Tid(814, "%0000032e"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(819, "%00000333"), Attrs([Attr("address","0x880"), +Def(Tid(819, "%00000333"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(823, "%00000337"), Attrs([Attr("address","0x880"), +Def(Tid(823, "%00000337"), Attrs([Attr("address","0x8C0"), Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), Var("#34",Imm(64))), Def(Tid(830, "%0000033e"), - Attrs([Attr("address","0x884"), Attr("insn","mov x29, sp")]), + Attrs([Attr("address","0x8C4"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(838, "%00000346"), - Attrs([Attr("address","0x888"), Attr("insn","str x19, [sp, #0x10]")]), + Attrs([Attr("address","0x8C8"), Attr("insn","str x19, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), -Def(Tid(844, "%0000034c"), Attrs([Attr("address","0x88C"), +Def(Tid(844, "%0000034c"), Attrs([Attr("address","0x8CC"), Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), -Def(Tid(853, "%00000355"), Attrs([Attr("address","0x890"), +Def(Tid(853, "%00000355"), Attrs([Attr("address","0x8D0"), Attr("insn","ldrb w0, [x19, #0x70]")]), Var("R0",Imm(64)), UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),BigEndian(),8))), -Def(Tid(865, "%00000361"), Attrs([Attr("address","0x894"), +Def(Tid(865, "%00000361"), Attrs([Attr("address","0x8D4"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), -Jmps([Goto(Tid(859, "%0000035b"), Attrs([Attr("address","0x894"), +Jmps([Goto(Tid(859, "%0000035b"), Attrs([Attr("address","0x8D4"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), -Direct(Tid(857, "%00000359"))), Goto(Tid(2_172, "%0000087c"), Attrs([]), +Direct(Tid(857, "%00000359"))), Goto(Tid(2_351, "%0000092f"), Attrs([]), Int(1,1), Direct(Tid(1_257, "%000004e9")))])), Blk(Tid(1_257, "%000004e9"), - Attrs([Attr("address","0x898")]), Phis([]), -Defs([Def(Tid(1_261, "%000004ed"), Attrs([Attr("address","0x898"), + Attrs([Attr("address","0x8D8")]), Phis([]), +Defs([Def(Tid(1_261, "%000004ed"), Attrs([Attr("address","0x8D8"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), -Def(Tid(1_269, "%000004f5"), Attrs([Attr("address","0x89C"), +Def(Tid(1_269, "%000004f5"), Attrs([Attr("address","0x8DC"), Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), -Def(Tid(1_281, "%00000501"), Attrs([Attr("address","0x8A0"), +Def(Tid(1_281, "%00000501"), Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), Var("#67",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_275, "%000004fb"), - Attrs([Attr("address","0x8A0"), Attr("insn","cbz x0, #0x10")]), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), Var("#67",Imm(1)), Direct(Tid(1_273, "%000004f9"))), -Goto(Tid(2_173, "%0000087d"), Attrs([]), Int(1,1), +Goto(Tid(2_352, "%00000930"), Attrs([]), Int(1,1), Direct(Tid(1_305, "%00000519")))])), Blk(Tid(1_305, "%00000519"), - Attrs([Attr("address","0x8A4")]), Phis([]), -Defs([Def(Tid(1_309, "%0000051d"), Attrs([Attr("address","0x8A4"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_309, "%0000051d"), Attrs([Attr("address","0x8E4"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(1_317, "%00000525"), Attrs([Attr("address","0x8A8"), +Def(Tid(1_317, "%00000525"), Attrs([Attr("address","0x8E8"), Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), -Def(Tid(1_322, "%0000052a"), Attrs([Attr("address","0x8AC"), -Attr("insn","bl #-0x16c")]), Var("R30",Imm(64)), Int(2224,64))]), -Jmps([Call(Tid(1_325, "%0000052d"), Attrs([Attr("address","0x8AC"), -Attr("insn","bl #-0x16c")]), Int(1,1), -(Direct(Tid(2_170, "@__cxa_finalize")),Direct(Tid(1_273, "%000004f9"))))])), -Blk(Tid(1_273, "%000004f9"), Attrs([Attr("address","0x8B0")]), Phis([]), -Defs([Def(Tid(1_286, "%00000506"), Attrs([Attr("address","0x8B0"), -Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2228,64))]), -Jmps([Call(Tid(1_288, "%00000508"), Attrs([Attr("address","0x8B0"), +Def(Tid(1_322, "%0000052a"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Var("R30",Imm(64)), Int(2288,64))]), +Jmps([Call(Tid(1_325, "%0000052d"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x15c")]), Int(1,1), +(Direct(Tid(2_290, "@__cxa_finalize")),Direct(Tid(1_273, "%000004f9"))))])), +Blk(Tid(1_273, "%000004f9"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_286, "%00000506"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2292,64))]), +Jmps([Call(Tid(1_288, "%00000508"), Attrs([Attr("address","0x8F0"), Attr("insn","bl #-0xa0")]), Int(1,1), -(Direct(Tid(2_184, "@deregister_tm_clones")),Direct(Tid(1_290, "%0000050a"))))])), -Blk(Tid(1_290, "%0000050a"), Attrs([Attr("address","0x8B4")]), Phis([]), -Defs([Def(Tid(1_295, "%0000050f"), Attrs([Attr("address","0x8B4"), +(Direct(Tid(2_304, "@deregister_tm_clones")),Direct(Tid(1_290, "%0000050a"))))])), +Blk(Tid(1_290, "%0000050a"), Attrs([Attr("address","0x8F4")]), Phis([]), +Defs([Def(Tid(1_295, "%0000050f"), Attrs([Attr("address","0x8F4"), Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), -Def(Tid(1_303, "%00000517"), Attrs([Attr("address","0x8B8"), +Def(Tid(1_303, "%00000517"), Attrs([Attr("address","0x8F8"), Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), -Jmps([Goto(Tid(2_174, "%0000087e"), Attrs([]), Int(1,1), +Jmps([Goto(Tid(2_353, "%00000931"), Attrs([]), Int(1,1), Direct(Tid(857, "%00000359")))])), Blk(Tid(857, "%00000359"), - Attrs([Attr("address","0x8BC")]), Phis([]), Defs([Def(Tid(873, "%00000369"), - Attrs([Attr("address","0x8BC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Attrs([Attr("address","0x8FC")]), Phis([]), Defs([Def(Tid(873, "%00000369"), + Attrs([Attr("address","0x8FC"), Attr("insn","ldr x19, [sp, #0x10]")]), Var("R19",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(883, "%00000373"), Attrs([Attr("address","0x8C0"), +Def(Tid(883, "%00000373"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(887, "%00000377"), Attrs([Attr("address","0x8C0"), +Def(Tid(887, "%00000377"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(890, "%0000037a"), Attrs([Attr("address","0x8C0"), +Def(Tid(890, "%0000037a"), Attrs([Attr("address","0x900"), Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(895, "%0000037f"), - Attrs([Attr("address","0x8C4"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_175, "@__libc_start_main"), + Attrs([Attr("address","0x904"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_295, "@__libc_start_main"), Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), -Attr("address","0x730"), Attr("stub","()")]), "__libc_start_main", - Args([Arg(Tid(2_201, "%00000899"), +Attr("address","0x780"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_364, "%0000093c"), Attrs([Attr("c.layout","**[ : 64]"), Attr("c.data","Top:u64 ptr ptr"), Attr("c.type","signed (*)(signed , char** , char** );*")]), Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_202, "%0000089a"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_365, "%0000093d"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), -Arg(Tid(2_203, "%0000089b"), Attrs([Attr("c.layout","**[char : 8]"), +Arg(Tid(2_366, "%0000093e"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), -Arg(Tid(2_204, "%0000089c"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_367, "%0000093f"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), -Arg(Tid(2_205, "%0000089d"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_368, "%00000940"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(614, "@__libc_start_main"), - Attrs([Attr("address","0x730")]), Phis([]), -Defs([Def(Tid(1_718, "%000006b6"), Attrs([Attr("address","0x730"), + Attrs([Attr("address","0x780")]), Phis([]), +Defs([Def(Tid(1_718, "%000006b6"), Attrs([Attr("address","0x780"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_726, "%000006be"), Attrs([Attr("address","0x734"), +Def(Tid(1_726, "%000006be"), Attrs([Attr("address","0x784"), Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_733, "%000006c5"), Attrs([Attr("address","0x738"), +Def(Tid(1_733, "%000006c5"), Attrs([Attr("address","0x788"), Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_738, "%000006ca"), - Attrs([Attr("address","0x73C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_176, "@_fini"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x984")]), - "_fini", Args([Arg(Tid(2_206, "%0000089e"), + Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_296, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9C4")]), + "_fini", Args([Arg(Tid(2_369, "%00000941"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), - Attrs([Attr("address","0x984")]), Phis([]), Defs([Def(Tid(41, "%00000029"), - Attrs([Attr("address","0x988"), + Attrs([Attr("address","0x9C4")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0x9C8"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x988"), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x9C8"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(51, "%00000033"), Attrs([Attr("address","0x988"), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0x9C8"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(55, "%00000037"), Attrs([Attr("address","0x988"), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0x9C8"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x98C"), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9CC"), Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), -Def(Tid(72, "%00000048"), Attrs([Attr("address","0x990"), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9D0"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x990"), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9D0"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x990"), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9D0"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), - Attrs([Attr("address","0x994"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_177, "@_init"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x6D8")]), - "_init", Args([Arg(Tid(2_207, "%0000089f"), + Attrs([Attr("address","0x9D4"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_297, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x728")]), + "_init", Args([Arg(Tid(2_370, "%00000942"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), -LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_941, "@_init"), - Attrs([Attr("address","0x6D8")]), Phis([]), -Defs([Def(Tid(1_950, "%0000079e"), Attrs([Attr("address","0x6DC"), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(2_061, "@_init"), + Attrs([Attr("address","0x728")]), Phis([]), +Defs([Def(Tid(2_070, "%00000816"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#98",Imm(64)), PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), -Def(Tid(1_955, "%000007a3"), Attrs([Attr("address","0x6DC"), +Def(Tid(2_075, "%0000081b"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#98",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(1_960, "%000007a8"), Attrs([Attr("address","0x6DC"), +Def(Tid(2_080, "%00000820"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#98",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(1_964, "%000007ac"), Attrs([Attr("address","0x6DC"), +Def(Tid(2_084, "%00000824"), Attrs([Attr("address","0x72C"), Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), -Var("#98",Imm(64))), Def(Tid(1_971, "%000007b3"), - Attrs([Attr("address","0x6E0"), Attr("insn","mov x29, sp")]), - Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(1_976, "%000007b8"), - Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), - Var("R30",Imm(64)), Int(1768,64))]), Jmps([Call(Tid(1_978, "%000007ba"), - Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), Int(1,1), -(Direct(Tid(2_182, "@call_weak_fn")),Direct(Tid(1_980, "%000007bc"))))])), -Blk(Tid(1_980, "%000007bc"), Attrs([Attr("address","0x6E8")]), Phis([]), -Defs([Def(Tid(1_988, "%000007c4"), Attrs([Attr("address","0x6E8"), +Var("#98",Imm(64))), Def(Tid(2_091, "%0000082b"), + Attrs([Attr("address","0x730"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(2_096, "%00000830"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), + Var("R30",Imm(64)), Int(1848,64))]), Jmps([Call(Tid(2_098, "%00000832"), + Attrs([Attr("address","0x734"), Attr("insn","bl #0x100")]), Int(1,1), +(Direct(Tid(2_302, "@call_weak_fn")),Direct(Tid(2_100, "%00000834"))))])), +Blk(Tid(2_100, "%00000834"), Attrs([Attr("address","0x738")]), Phis([]), +Defs([Def(Tid(2_108, "%0000083c"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_992, "%000007c8"), Attrs([Attr("address","0x6E8"), +Def(Tid(2_112, "%00000840"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_995, "%000007cb"), Attrs([Attr("address","0x6E8"), +Def(Tid(2_115, "%00000843"), Attrs([Attr("address","0x738"), Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), -PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_000, "%000007d0"), - Attrs([Attr("address","0x6EC"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_178, "@_start"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7C0"), -Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_208, "%000008a0"), - Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), -Attr("c.type","signed")]), Var("_start_result",Imm(32)), -LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(540, "@_start"), - Attrs([Attr("address","0x7C0")]), Phis([]), Defs([Def(Tid(546, "%00000222"), - Attrs([Attr("address","0x7C4"), Attr("insn","mov x29, #0x0")]), - Var("R29",Imm(64)), Int(0,64)), Def(Tid(552, "%00000228"), - Attrs([Attr("address","0x7C8"), Attr("insn","mov x30, #0x0")]), - Var("R30",Imm(64)), Int(0,64)), Def(Tid(560, "%00000230"), - Attrs([Attr("address","0x7CC"), Attr("insn","mov x5, x0")]), - Var("R5",Imm(64)), Var("R0",Imm(64))), Def(Tid(568, "%00000238"), - Attrs([Attr("address","0x7D0"), Attr("insn","ldr x1, [sp]")]), - Var("R1",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_120, "%00000848"), + Attrs([Attr("address","0x73C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_298, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x800"), +Attr("stub","()"), Attr("entry-point","()")]), "_start", + Args([Arg(Tid(2_371, "%00000943"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(540, "@_start"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([Def(Tid(546, "%00000222"), Attrs([Attr("address","0x804"), +Attr("insn","mov x29, #0x0")]), Var("R29",Imm(64)), Int(0,64)), +Def(Tid(552, "%00000228"), Attrs([Attr("address","0x808"), +Attr("insn","mov x30, #0x0")]), Var("R30",Imm(64)), Int(0,64)), +Def(Tid(560, "%00000230"), Attrs([Attr("address","0x80C"), +Attr("insn","mov x5, x0")]), Var("R5",Imm(64)), Var("R0",Imm(64))), +Def(Tid(568, "%00000238"), Attrs([Attr("address","0x810"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(575, "%0000023f"), Attrs([Attr("address","0x7D4"), +Def(Tid(575, "%0000023f"), Attrs([Attr("address","0x814"), Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(582, "%00000246"), - Attrs([Attr("address","0x7D8"), Attr("insn","mov x6, sp")]), + Attrs([Attr("address","0x818"), Attr("insn","mov x6, sp")]), Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(588, "%0000024c"), - Attrs([Attr("address","0x7DC"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x81C"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(596, "%00000254"), - Attrs([Attr("address","0x7E0"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Attrs([Attr("address","0x820"), Attr("insn","ldr x0, [x0, #0xfd8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), -Def(Tid(602, "%0000025a"), Attrs([Attr("address","0x7E4"), +Def(Tid(602, "%0000025a"), Attrs([Attr("address","0x824"), Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), -Def(Tid(608, "%00000260"), Attrs([Attr("address","0x7E8"), +Def(Tid(608, "%00000260"), Attrs([Attr("address","0x828"), Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), -Def(Tid(613, "%00000265"), Attrs([Attr("address","0x7EC"), -Attr("insn","bl #-0xbc")]), Var("R30",Imm(64)), Int(2032,64))]), -Jmps([Call(Tid(616, "%00000268"), Attrs([Attr("address","0x7EC"), -Attr("insn","bl #-0xbc")]), Int(1,1), -(Direct(Tid(2_175, "@__libc_start_main")),Direct(Tid(618, "%0000026a"))))])), -Blk(Tid(618, "%0000026a"), Attrs([Attr("address","0x7F0")]), Phis([]), -Defs([Def(Tid(621, "%0000026d"), Attrs([Attr("address","0x7F0"), -Attr("insn","bl #-0x70")]), Var("R30",Imm(64)), Int(2036,64))]), -Jmps([Call(Tid(624, "%00000270"), Attrs([Attr("address","0x7F0"), -Attr("insn","bl #-0x70")]), Int(1,1), -(Direct(Tid(2_181, "@abort")),Direct(Tid(2_179, "%00000883"))))])), -Blk(Tid(2_179, "%00000883"), Attrs([]), Phis([]), Defs([]), -Jmps([Call(Tid(2_180, "%00000884"), Attrs([]), Int(1,1), -(Direct(Tid(2_182, "@call_weak_fn")),))]))])), Sub(Tid(2_181, "@abort"), +Def(Tid(613, "%00000265"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Var("R30",Imm(64)), Int(2096,64))]), +Jmps([Call(Tid(616, "%00000268"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xac")]), Int(1,1), +(Direct(Tid(2_295, "@__libc_start_main")),Direct(Tid(618, "%0000026a"))))])), +Blk(Tid(618, "%0000026a"), Attrs([Attr("address","0x830")]), Phis([]), +Defs([Def(Tid(621, "%0000026d"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Var("R30",Imm(64)), Int(2100,64))]), +Jmps([Call(Tid(624, "%00000270"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x60")]), Int(1,1), +(Direct(Tid(2_301, "@abort")),Direct(Tid(2_354, "%00000932"))))])), +Blk(Tid(2_354, "%00000932"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_355, "%00000933"), Attrs([]), Int(1,1), +(Direct(Tid(2_302, "@call_weak_fn")),))]))])), Sub(Tid(2_301, "@abort"), Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), -Attr("address","0x780"), Attr("stub","()")]), "abort", Args([]), -Blks([Blk(Tid(622, "@abort"), Attrs([Attr("address","0x780")]), Phis([]), -Defs([Def(Tid(1_843, "%00000733"), Attrs([Attr("address","0x780"), +Attr("address","0x7D0"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(622, "@abort"), Attrs([Attr("address","0x7D0")]), Phis([]), +Defs([Def(Tid(1_843, "%00000733"), Attrs([Attr("address","0x7D0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_851, "%0000073b"), Attrs([Attr("address","0x784"), +Def(Tid(1_851, "%0000073b"), Attrs([Attr("address","0x7D4"), Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), -Def(Tid(1_858, "%00000742"), Attrs([Attr("address","0x788"), +Def(Tid(1_858, "%00000742"), Attrs([Attr("address","0x7D8"), Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_863, "%00000747"), - Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_182, "@call_weak_fn"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7F4")]), - "call_weak_fn", Args([Arg(Tid(2_209, "%000008a1"), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_302, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x834")]), + "call_weak_fn", Args([Arg(Tid(2_372, "%00000944"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(626, "@call_weak_fn"), - Attrs([Attr("address","0x7F4")]), Phis([]), Defs([Def(Tid(630, "%00000276"), - Attrs([Attr("address","0x7F4"), Attr("insn","adrp x0, #0x1f000")]), + Attrs([Attr("address","0x834")]), Phis([]), Defs([Def(Tid(630, "%00000276"), + Attrs([Attr("address","0x834"), Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), Def(Tid(638, "%0000027e"), - Attrs([Attr("address","0x7F8"), Attr("insn","ldr x0, [x0, #0xfd0]")]), + Attrs([Attr("address","0x838"), Attr("insn","ldr x0, [x0, #0xfd0]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), -Def(Tid(650, "%0000028a"), Attrs([Attr("address","0x7FC"), +Def(Tid(650, "%0000028a"), Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(644, "%00000284"), - Attrs([Attr("address","0x7FC"), Attr("insn","cbz x0, #0x8")]), + Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), Direct(Tid(642, "%00000282"))), -Goto(Tid(2_183, "%00000887"), Attrs([]), Int(1,1), +Goto(Tid(2_356, "%00000934"), Attrs([]), Int(1,1), Direct(Tid(1_405, "%0000057d")))])), Blk(Tid(642, "%00000282"), - Attrs([Attr("address","0x804")]), Phis([]), Defs([]), -Jmps([Call(Tid(655, "%0000028f"), Attrs([Attr("address","0x804"), + Attrs([Attr("address","0x844")]), Phis([]), Defs([]), +Jmps([Call(Tid(655, "%0000028f"), Attrs([Attr("address","0x844"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_405, "%0000057d"), Attrs([Attr("address","0x800")]), Phis([]), -Defs([]), Jmps([Goto(Tid(1_408, "%00000580"), Attrs([Attr("address","0x800"), -Attr("insn","b #-0x90")]), Int(1,1), +Blk(Tid(1_405, "%0000057d"), Attrs([Attr("address","0x840")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_408, "%00000580"), Attrs([Attr("address","0x840"), +Attr("insn","b #-0x80")]), Int(1,1), Direct(Tid(1_406, "@__gmon_start__")))])), Blk(Tid(1_406, "@__gmon_start__"), - Attrs([Attr("address","0x770")]), Phis([]), -Defs([Def(Tid(1_818, "%0000071a"), Attrs([Attr("address","0x770"), + Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_818, "%0000071a"), Attrs([Attr("address","0x7C0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_826, "%00000722"), Attrs([Attr("address","0x774"), +Def(Tid(1_826, "%00000722"), Attrs([Attr("address","0x7C4"), Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), -Def(Tid(1_833, "%00000729"), Attrs([Attr("address","0x778"), +Def(Tid(1_833, "%00000729"), Attrs([Attr("address","0x7C8"), Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_838, "%0000072e"), - Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_184, "@deregister_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x810")]), - "deregister_tm_clones", Args([Arg(Tid(2_210, "%000008a2"), +Sub(Tid(2_304, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x850")]), + "deregister_tm_clones", Args([Arg(Tid(2_373, "%00000945"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(661, "@deregister_tm_clones"), - Attrs([Attr("address","0x810")]), Phis([]), Defs([Def(Tid(665, "%00000299"), - Attrs([Attr("address","0x810"), Attr("insn","adrp x0, #0x20000")]), + Attrs([Attr("address","0x850")]), Phis([]), Defs([Def(Tid(665, "%00000299"), + Attrs([Attr("address","0x850"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), Def(Tid(672, "%000002a0"), - Attrs([Attr("address","0x814"), Attr("insn","add x0, x0, #0x70")]), + Attrs([Attr("address","0x854"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), -Def(Tid(678, "%000002a6"), Attrs([Attr("address","0x818"), +Def(Tid(678, "%000002a6"), Attrs([Attr("address","0x858"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), -Def(Tid(685, "%000002ad"), Attrs([Attr("address","0x81C"), +Def(Tid(685, "%000002ad"), Attrs([Attr("address","0x85C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), Def(Tid(693, "%000002b5"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("#16",Imm(64)), PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), -Def(Tid(697, "%000002b9"), Attrs([Attr("address","0x820"), +Def(Tid(697, "%000002b9"), Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), Extract(63,63,Var("#16",Imm(64)))), Def(Tid(700, "%000002bc"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("VF",Imm(1)), OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), -Def(Tid(703, "%000002bf"), Attrs([Attr("address","0x820"), +Def(Tid(703, "%000002bf"), Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(706, "%000002c2"), - Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), Var("CF",Imm(1)), OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), -Def(Tid(720, "%000002d0"), Attrs([Attr("address","0x824"), +Def(Tid(720, "%000002d0"), Attrs([Attr("address","0x864"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), -Jmps([Goto(Tid(714, "%000002ca"), Attrs([Attr("address","0x824"), +Jmps([Goto(Tid(714, "%000002ca"), Attrs([Attr("address","0x864"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), -Direct(Tid(712, "%000002c8"))), Goto(Tid(2_185, "%00000889"), Attrs([]), +Direct(Tid(712, "%000002c8"))), Goto(Tid(2_357, "%00000935"), Attrs([]), Int(1,1), Direct(Tid(1_366, "%00000556")))])), Blk(Tid(1_366, "%00000556"), - Attrs([Attr("address","0x828")]), Phis([]), -Defs([Def(Tid(1_370, "%0000055a"), Attrs([Attr("address","0x828"), + Attrs([Attr("address","0x868")]), Phis([]), +Defs([Def(Tid(1_370, "%0000055a"), Attrs([Attr("address","0x868"), Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), -Def(Tid(1_378, "%00000562"), Attrs([Attr("address","0x82C"), +Def(Tid(1_378, "%00000562"), Attrs([Attr("address","0x86C"), Attr("insn","ldr x1, [x1, #0xfc0]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4032,64)),LittleEndian(),64)), -Def(Tid(1_389, "%0000056d"), Attrs([Attr("address","0x830"), +Def(Tid(1_389, "%0000056d"), Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), Var("#75",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_383, "%00000567"), - Attrs([Attr("address","0x830"), Attr("insn","cbz x1, #0xc")]), + Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), Var("#75",Imm(1)), Direct(Tid(712, "%000002c8"))), -Goto(Tid(2_186, "%0000088a"), Attrs([]), Int(1,1), +Goto(Tid(2_358, "%00000936"), Attrs([]), Int(1,1), Direct(Tid(1_392, "%00000570")))])), Blk(Tid(712, "%000002c8"), - Attrs([Attr("address","0x83C")]), Phis([]), Defs([]), -Jmps([Call(Tid(725, "%000002d5"), Attrs([Attr("address","0x83C"), + Attrs([Attr("address","0x87C")]), Phis([]), Defs([]), +Jmps([Call(Tid(725, "%000002d5"), Attrs([Attr("address","0x87C"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_392, "%00000570"), Attrs([Attr("address","0x834")]), Phis([]), -Defs([Def(Tid(1_398, "%00000576"), Attrs([Attr("address","0x834"), +Blk(Tid(1_392, "%00000570"), Attrs([Attr("address","0x874")]), Phis([]), +Defs([Def(Tid(1_398, "%00000576"), Attrs([Attr("address","0x874"), Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), -Jmps([Call(Tid(1_403, "%0000057b"), Attrs([Attr("address","0x838"), +Jmps([Call(Tid(1_403, "%0000057b"), Attrs([Attr("address","0x878"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), -Sub(Tid(2_187, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x8D0")]), "frame_dummy", Args([Arg(Tid(2_211, "%000008a3"), +Sub(Tid(2_307, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x910")]), "frame_dummy", Args([Arg(Tid(2_374, "%00000946"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(901, "@frame_dummy"), - Attrs([Attr("address","0x8D0")]), Phis([]), Defs([]), -Jmps([Call(Tid(903, "%00000387"), Attrs([Attr("address","0x8D0"), + Attrs([Attr("address","0x910")]), Phis([]), Defs([]), +Jmps([Call(Tid(903, "%00000387"), Attrs([Attr("address","0x910"), Attr("insn","b #-0x90")]), Int(1,1), -(Direct(Tid(2_194, "@register_tm_clones")),))]))])), Sub(Tid(2_188, "@free"), - Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7A0"), -Attr("stub","()")]), "free", Args([Arg(Tid(2_212, "%000008a4"), +(Direct(Tid(2_314, "@register_tm_clones")),))]))])), Sub(Tid(2_308, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7F0"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_375, "%00000947"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), -Both())]), Blks([Blk(Tid(1_219, "@free"), Attrs([Attr("address","0x7A0")]), - Phis([]), Defs([Def(Tid(1_893, "%00000765"), Attrs([Attr("address","0x7A0"), +Both())]), Blks([Blk(Tid(1_219, "@free"), Attrs([Attr("address","0x7F0")]), + Phis([]), Defs([Def(Tid(1_893, "%00000765"), Attrs([Attr("address","0x7F0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_901, "%0000076d"), Attrs([Attr("address","0x7A4"), +Def(Tid(1_901, "%0000076d"), Attrs([Attr("address","0x7F4"), Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), -Def(Tid(1_908, "%00000774"), Attrs([Attr("address","0x7A8"), +Def(Tid(1_908, "%00000774"), Attrs([Attr("address","0x7F8"), Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_913, "%00000779"), - Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_189, "@main"), + Attrs([Attr("address","0x7FC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_309, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x8D4")]), "main", Args([Arg(Tid(2_213, "%000008a5"), +Attr("address","0x914")]), "main", Args([Arg(Tid(2_376, "%00000948"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), -LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_214, "%000008a6"), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_377, "%00000949"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), -Var("R1",Imm(64)), Both()), Arg(Tid(2_215, "%000008a7"), +Var("R1",Imm(64)), Both()), Arg(Tid(2_378, "%0000094a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(905, "@main"), - Attrs([Attr("address","0x8D4")]), Phis([]), Defs([Def(Tid(910, "%0000038e"), - Attrs([Attr("address","0x8D4"), Attr("insn","sub sp, sp, #0x40")]), + Attrs([Attr("address","0x914")]), Phis([]), Defs([Def(Tid(910, "%0000038e"), + Attrs([Attr("address","0x914"), Attr("insn","sub sp, sp, #0x40")]), Var("R31",Imm(64)), MINUS(Var("R31",Imm(64)),Int(64,64))), -Def(Tid(918, "%00000396"), Attrs([Attr("address","0x8D8"), +Def(Tid(918, "%00000396"), Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("#42",Imm(64)), PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(923, "%0000039b"), - Attrs([Attr("address","0x8D8"), Attr("insn","stp x29, x30, [sp, #0x30]")]), + Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), -Def(Tid(928, "%000003a0"), Attrs([Attr("address","0x8D8"), +Def(Tid(928, "%000003a0"), Attrs([Attr("address","0x918"), Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), -Def(Tid(935, "%000003a7"), Attrs([Attr("address","0x8DC"), +Def(Tid(935, "%000003a7"), Attrs([Attr("address","0x91C"), Attr("insn","add x29, sp, #0x30")]), Var("R29",Imm(64)), PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(943, "%000003af"), - Attrs([Attr("address","0x8E0"), Attr("insn","stur xzr, [x29, #-0x8]")]), + Attrs([Attr("address","0x920"), Attr("insn","stur xzr, [x29, #-0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(951, "%000003b7"), Attrs([Attr("address","0x8E4"), +Def(Tid(951, "%000003b7"), Attrs([Attr("address","0x924"), Attr("insn","stur xzr, [x29, #-0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551600,64)),Int(0,64),LittleEndian(),64)), -Def(Tid(957, "%000003bd"), Attrs([Attr("address","0x8E8"), +Def(Tid(957, "%000003bd"), Attrs([Attr("address","0x928"), Attr("insn","mov x0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), -Def(Tid(962, "%000003c2"), Attrs([Attr("address","0x8EC"), -Attr("insn","bl #-0x19c")]), Var("R30",Imm(64)), Int(2288,64))]), -Jmps([Call(Tid(965, "%000003c5"), Attrs([Attr("address","0x8EC"), -Attr("insn","bl #-0x19c")]), Int(1,1), -(Direct(Tid(2_190, "@malloc")),Direct(Tid(967, "%000003c7"))))])), -Blk(Tid(967, "%000003c7"), Attrs([Attr("address","0x8F0")]), Phis([]), -Defs([Def(Tid(971, "%000003cb"), Attrs([Attr("address","0x8F0"), +Def(Tid(962, "%000003c2"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2352,64))]), +Jmps([Call(Tid(965, "%000003c5"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x18c")]), Int(1,1), +(Direct(Tid(2_310, "@malloc")),Direct(Tid(967, "%000003c7"))))])), +Blk(Tid(967, "%000003c7"), Attrs([Attr("address","0x930")]), Phis([]), +Defs([Def(Tid(971, "%000003cb"), Attrs([Attr("address","0x930"), Attr("insn","adrp x8, #0x20000")]), Var("R8",Imm(64)), Int(131072,64)), -Def(Tid(979, "%000003d3"), Attrs([Attr("address","0x8F4"), +Def(Tid(979, "%000003d3"), Attrs([Attr("address","0x934"), Attr("insn","str x8, [sp, #0x18]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(987, "%000003db"), Attrs([Attr("address","0x8F8"), +Def(Tid(987, "%000003db"), Attrs([Attr("address","0x938"), Attr("insn","str x0, [x8, #0x78]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),Var("R0",Imm(64)),LittleEndian(),64)), -Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x8FC"), +Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x93C"), Attr("insn","ldr x8, [x8, #0x78]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_003, "%000003eb"), Attrs([Attr("address","0x900"), +Def(Tid(1_003, "%000003eb"), Attrs([Attr("address","0x940"), Attr("insn","str x8, [sp, #0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),Var("R8",Imm(64)),LittleEndian(),64)), -Def(Tid(1_009, "%000003f1"), Attrs([Attr("address","0x904"), +Def(Tid(1_009, "%000003f1"), Attrs([Attr("address","0x944"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(1_016, "%000003f8"), Attrs([Attr("address","0x908"), +Def(Tid(1_016, "%000003f8"), Attrs([Attr("address","0x948"), Attr("insn","add x0, x0, #0x61")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(97,64))), Def(Tid(1_024, "%00000400"), - Attrs([Attr("address","0x90C"), Attr("insn","str x0, [sp]")]), + Attrs([Attr("address","0x94C"), Attr("insn","str x0, [sp]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("R31",Imm(64)),Var("R0",Imm(64)),LittleEndian(),64)), -Def(Tid(1_029, "%00000405"), Attrs([Attr("address","0x910"), -Attr("insn","bl #-0x1f0")]), Var("R30",Imm(64)), Int(2324,64))]), -Jmps([Call(Tid(1_032, "%00000408"), Attrs([Attr("address","0x910"), -Attr("insn","bl #-0x1f0")]), Int(1,1), -(Direct(Tid(2_197, "@strlen")),Direct(Tid(1_034, "%0000040a"))))])), -Blk(Tid(1_034, "%0000040a"), Attrs([Attr("address","0x914")]), Phis([]), -Defs([Def(Tid(1_040, "%00000410"), Attrs([Attr("address","0x914"), +Def(Tid(1_029, "%00000405"), Attrs([Attr("address","0x950"), +Attr("insn","bl #-0x1e0")]), Var("R30",Imm(64)), Int(2388,64))]), +Jmps([Call(Tid(1_032, "%00000408"), Attrs([Attr("address","0x950"), +Attr("insn","bl #-0x1e0")]), Int(1,1), +(Direct(Tid(2_317, "@strlen")),Direct(Tid(1_034, "%0000040a"))))])), +Blk(Tid(1_034, "%0000040a"), Attrs([Attr("address","0x954")]), Phis([]), +Defs([Def(Tid(1_040, "%00000410"), Attrs([Attr("address","0x954"), Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), -Def(Tid(1_048, "%00000418"), Attrs([Attr("address","0x918"), +Def(Tid(1_048, "%00000418"), Attrs([Attr("address","0x958"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_056, "%00000420"), Attrs([Attr("address","0x91C"), +Def(Tid(1_056, "%00000420"), Attrs([Attr("address","0x95C"), Attr("insn","ldr x0, [sp, #0x8]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_061, "%00000425"), Attrs([Attr("address","0x920"), -Attr("insn","bl #-0x210")]), Var("R30",Imm(64)), Int(2340,64))]), -Jmps([Call(Tid(1_064, "%00000428"), Attrs([Attr("address","0x920"), -Attr("insn","bl #-0x210")]), Int(1,1), -(Direct(Tid(2_191, "@memcpy")),Direct(Tid(1_066, "%0000042a"))))])), -Blk(Tid(1_066, "%0000042a"), Attrs([Attr("address","0x924")]), Phis([]), -Defs([Def(Tid(1_072, "%00000430"), Attrs([Attr("address","0x924"), +Def(Tid(1_061, "%00000425"), Attrs([Attr("address","0x960"), +Attr("insn","bl #-0x200")]), Var("R30",Imm(64)), Int(2404,64))]), +Jmps([Call(Tid(1_064, "%00000428"), Attrs([Attr("address","0x960"), +Attr("insn","bl #-0x200")]), Int(1,1), +(Direct(Tid(2_311, "@memcpy")),Direct(Tid(1_066, "%0000042a"))))])), +Blk(Tid(1_066, "%0000042a"), Attrs([Attr("address","0x964")]), Phis([]), +Defs([Def(Tid(1_072, "%00000430"), Attrs([Attr("address","0x964"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_080, "%00000438"), Attrs([Attr("address","0x928"), +Def(Tid(1_080, "%00000438"), Attrs([Attr("address","0x968"), Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_085, "%0000043d"), Attrs([Attr("address","0x92C"), -Attr("insn","bl #-0x19c")]), Var("R30",Imm(64)), Int(2352,64))]), -Jmps([Call(Tid(1_088, "%00000440"), Attrs([Attr("address","0x92C"), -Attr("insn","bl #-0x19c")]), Int(1,1), -(Direct(Tid(2_193, "@puts")),Direct(Tid(1_090, "%00000442"))))])), -Blk(Tid(1_090, "%00000442"), Attrs([Attr("address","0x930")]), Phis([]), -Defs([Def(Tid(1_096, "%00000448"), Attrs([Attr("address","0x930"), +Def(Tid(1_085, "%0000043d"), Attrs([Attr("address","0x96C"), +Attr("insn","bl #-0x18c")]), Var("R30",Imm(64)), Int(2416,64))]), +Jmps([Call(Tid(1_088, "%00000440"), Attrs([Attr("address","0x96C"), +Attr("insn","bl #-0x18c")]), Int(1,1), +(Direct(Tid(2_313, "@puts")),Direct(Tid(1_090, "%00000442"))))])), +Blk(Tid(1_090, "%00000442"), Attrs([Attr("address","0x970")]), Phis([]), +Defs([Def(Tid(1_096, "%00000448"), Attrs([Attr("address","0x970"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_104, "%00000450"), Attrs([Attr("address","0x934"), +Def(Tid(1_104, "%00000450"), Attrs([Attr("address","0x974"), Attr("insn","ldr x9, [x8, #0x78]")]), Var("R9",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_111, "%00000457"), Attrs([Attr("address","0x938"), +Def(Tid(1_111, "%00000457"), Attrs([Attr("address","0x978"), Attr("insn","add x9, x9, #0x4")]), Var("R9",Imm(64)), PLUS(Var("R9",Imm(64)),Int(4,64))), Def(Tid(1_119, "%0000045f"), - Attrs([Attr("address","0x93C"), Attr("insn","stur x9, [x29, #-0x8]")]), + Attrs([Attr("address","0x97C"), Attr("insn","stur x9, [x29, #-0x8]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Var("R9",Imm(64)),LittleEndian(),64)), -Def(Tid(1_127, "%00000467"), Attrs([Attr("address","0x940"), +Def(Tid(1_127, "%00000467"), Attrs([Attr("address","0x980"), Attr("insn","ldur x9, [x29, #-0x8]")]), Var("R9",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),LittleEndian(),64)), -Def(Tid(1_135, "%0000046f"), Attrs([Attr("address","0x944"), +Def(Tid(1_135, "%0000046f"), Attrs([Attr("address","0x984"), Attr("insn","strb wzr, [x9]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),Var("R9",Imm(64)),Int(0,8),BigEndian(),8)), -Def(Tid(1_143, "%00000477"), Attrs([Attr("address","0x948"), +Def(Tid(1_143, "%00000477"), Attrs([Attr("address","0x988"), Attr("insn","ldr x9, [x8, #0x78]")]), Var("R9",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_151, "%0000047f"), Attrs([Attr("address","0x94C"), +Def(Tid(1_151, "%0000047f"), Attrs([Attr("address","0x98C"), Attr("insn","str x9, [sp, #0x10]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R9",Imm(64)),LittleEndian(),64)), -Def(Tid(1_159, "%00000487"), Attrs([Attr("address","0x950"), +Def(Tid(1_159, "%00000487"), Attrs([Attr("address","0x990"), Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_164, "%0000048c"), Attrs([Attr("address","0x954"), -Attr("insn","bl #-0x234")]), Var("R30",Imm(64)), Int(2392,64))]), -Jmps([Call(Tid(1_166, "%0000048e"), Attrs([Attr("address","0x954"), -Attr("insn","bl #-0x234")]), Int(1,1), -(Direct(Tid(2_197, "@strlen")),Direct(Tid(1_168, "%00000490"))))])), -Blk(Tid(1_168, "%00000490"), Attrs([Attr("address","0x958")]), Phis([]), -Defs([Def(Tid(1_174, "%00000496"), Attrs([Attr("address","0x958"), +Def(Tid(1_164, "%0000048c"), Attrs([Attr("address","0x994"), +Attr("insn","bl #-0x224")]), Var("R30",Imm(64)), Int(2456,64))]), +Jmps([Call(Tid(1_166, "%0000048e"), Attrs([Attr("address","0x994"), +Attr("insn","bl #-0x224")]), Int(1,1), +(Direct(Tid(2_317, "@strlen")),Direct(Tid(1_168, "%00000490"))))])), +Blk(Tid(1_168, "%00000490"), Attrs([Attr("address","0x998")]), Phis([]), +Defs([Def(Tid(1_174, "%00000496"), Attrs([Attr("address","0x998"), Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), -Def(Tid(1_182, "%0000049e"), Attrs([Attr("address","0x95C"), +Def(Tid(1_182, "%0000049e"), Attrs([Attr("address","0x99C"), Attr("insn","ldr x0, [sp, #0x10]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), -Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x960"), +Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x9A0"), Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), -Def(Tid(1_194, "%000004aa"), Attrs([Attr("address","0x964"), -Attr("insn","bl #-0x204")]), Var("R30",Imm(64)), Int(2408,64))]), -Jmps([Call(Tid(1_197, "%000004ad"), Attrs([Attr("address","0x964"), -Attr("insn","bl #-0x204")]), Int(1,1), -(Direct(Tid(2_192, "@memset")),Direct(Tid(1_199, "%000004af"))))])), -Blk(Tid(1_199, "%000004af"), Attrs([Attr("address","0x968")]), Phis([]), -Defs([Def(Tid(1_205, "%000004b5"), Attrs([Attr("address","0x968"), +Def(Tid(1_194, "%000004aa"), Attrs([Attr("address","0x9A4"), +Attr("insn","bl #-0x1f4")]), Var("R30",Imm(64)), Int(2472,64))]), +Jmps([Call(Tid(1_197, "%000004ad"), Attrs([Attr("address","0x9A4"), +Attr("insn","bl #-0x1f4")]), Int(1,1), +(Direct(Tid(2_312, "@memset")),Direct(Tid(1_199, "%000004af"))))])), +Blk(Tid(1_199, "%000004af"), Attrs([Attr("address","0x9A8")]), Phis([]), +Defs([Def(Tid(1_205, "%000004b5"), Attrs([Attr("address","0x9A8"), Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), -Def(Tid(1_213, "%000004bd"), Attrs([Attr("address","0x96C"), +Def(Tid(1_213, "%000004bd"), Attrs([Attr("address","0x9AC"), Attr("insn","ldr x0, [x8, #0x78]")]), Var("R0",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(120,64)),LittleEndian(),64)), -Def(Tid(1_218, "%000004c2"), Attrs([Attr("address","0x970"), -Attr("insn","bl #-0x1d0")]), Var("R30",Imm(64)), Int(2420,64))]), -Jmps([Call(Tid(1_221, "%000004c5"), Attrs([Attr("address","0x970"), -Attr("insn","bl #-0x1d0")]), Int(1,1), -(Direct(Tid(2_188, "@free")),Direct(Tid(1_223, "%000004c7"))))])), -Blk(Tid(1_223, "%000004c7"), Attrs([Attr("address","0x974")]), Phis([]), -Defs([Def(Tid(1_230, "%000004ce"), Attrs([Attr("address","0x974"), +Def(Tid(1_218, "%000004c2"), Attrs([Attr("address","0x9B0"), +Attr("insn","bl #-0x1c0")]), Var("R30",Imm(64)), Int(2484,64))]), +Jmps([Call(Tid(1_221, "%000004c5"), Attrs([Attr("address","0x9B0"), +Attr("insn","bl #-0x1c0")]), Int(1,1), +(Direct(Tid(2_308, "@free")),Direct(Tid(1_223, "%000004c7"))))])), +Blk(Tid(1_223, "%000004c7"), Attrs([Attr("address","0x9B4")]), Phis([]), +Defs([Def(Tid(1_230, "%000004ce"), Attrs([Attr("address","0x9B4"), Attr("insn","mov w0, wzr")]), Var("R0",Imm(64)), Int(0,32)), -Def(Tid(1_239, "%000004d7"), Attrs([Attr("address","0x978"), +Def(Tid(1_239, "%000004d7"), Attrs([Attr("address","0x9B8"), Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R29",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(48,64)),LittleEndian(),64)), -Def(Tid(1_243, "%000004db"), Attrs([Attr("address","0x978"), +Def(Tid(1_243, "%000004db"), Attrs([Attr("address","0x9B8"), Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R30",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(56,64)),LittleEndian(),64)), -Def(Tid(1_250, "%000004e2"), Attrs([Attr("address","0x97C"), +Def(Tid(1_250, "%000004e2"), Attrs([Attr("address","0x9BC"), Attr("insn","add sp, sp, #0x40")]), Var("R31",Imm(64)), PLUS(Var("R31",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_255, "%000004e7"), - Attrs([Attr("address","0x980"), Attr("insn","ret")]), Int(1,1), -(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_190, "@malloc"), + Attrs([Attr("address","0x9C0"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_310, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), -Attr("address","0x750"), Attr("malloc","()"), Attr("stub","()")]), "malloc", - Args([Arg(Tid(2_216, "%000008a8"), Attrs([Attr("alloc-size","()"), +Attr("address","0x7A0"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_379, "%0000094b"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), -Var("R0",Imm(64)), In()), Arg(Tid(2_217, "%000008a9"), +Var("R0",Imm(64)), In()), Arg(Tid(2_380, "%0000094c"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(963, "@malloc"), Attrs([Attr("address","0x750")]), Phis([]), -Defs([Def(Tid(1_768, "%000006e8"), Attrs([Attr("address","0x750"), +Blks([Blk(Tid(963, "@malloc"), Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_768, "%000006e8"), Attrs([Attr("address","0x7A0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_776, "%000006f0"), Attrs([Attr("address","0x754"), +Def(Tid(1_776, "%000006f0"), Attrs([Attr("address","0x7A4"), Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), -Def(Tid(1_783, "%000006f7"), Attrs([Attr("address","0x758"), +Def(Tid(1_783, "%000006f7"), Attrs([Attr("address","0x7A8"), Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_788, "%000006fc"), - Attrs([Attr("address","0x75C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_191, "@memcpy"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_311, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), -Attr("address","0x710"), Attr("stub","()")]), "memcpy", - Args([Arg(Tid(2_218, "%000008aa"), Attrs([Attr("nonnull","()"), +Attr("address","0x760"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_381, "%0000094d"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), -Var("R0",Imm(64)), Both()), Arg(Tid(2_219, "%000008ab"), +Var("R0",Imm(64)), Both()), Arg(Tid(2_382, "%0000094e"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), -Arg(Tid(2_220, "%000008ac"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Arg(Tid(2_383, "%0000094f"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), -Arg(Tid(2_221, "%000008ad"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_384, "%00000950"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_062, "@memcpy"), Attrs([Attr("address","0x710")]), Phis([]), -Defs([Def(Tid(1_668, "%00000684"), Attrs([Attr("address","0x710"), +Blks([Blk(Tid(1_062, "@memcpy"), Attrs([Attr("address","0x760")]), Phis([]), +Defs([Def(Tid(1_668, "%00000684"), Attrs([Attr("address","0x760"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_676, "%0000068c"), Attrs([Attr("address","0x714"), +Def(Tid(1_676, "%0000068c"), Attrs([Attr("address","0x764"), Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), -Def(Tid(1_683, "%00000693"), Attrs([Attr("address","0x718"), +Def(Tid(1_683, "%00000693"), Attrs([Attr("address","0x768"), Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), Var("R16",Imm(64)))]), Jmps([Call(Tid(1_688, "%00000698"), - Attrs([Attr("address","0x71C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_192, "@memset"), + Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_312, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), -Attr("address","0x760"), Attr("stub","()")]), "memset", - Args([Arg(Tid(2_222, "%000008ae"), Attrs([Attr("nonnull","()"), +Attr("address","0x7B0"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_385, "%00000951"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), -Both()), Arg(Tid(2_223, "%000008af"), +Both()), Arg(Tid(2_386, "%00000952"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("memset_c",Imm(32)), -LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_224, "%000008b0"), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_387, "%00000953"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), -In()), Arg(Tid(2_225, "%000008b1"), Attrs([Attr("c.layout","*[ : 8]"), +In()), Arg(Tid(2_388, "%00000954"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), -Blks([Blk(Tid(1_195, "@memset"), Attrs([Attr("address","0x760")]), Phis([]), -Defs([Def(Tid(1_793, "%00000701"), Attrs([Attr("address","0x760"), +Blks([Blk(Tid(1_195, "@memset"), Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_793, "%00000701"), Attrs([Attr("address","0x7B0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_801, "%00000709"), Attrs([Attr("address","0x764"), +Def(Tid(1_801, "%00000709"), Attrs([Attr("address","0x7B4"), Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), -Def(Tid(1_808, "%00000710"), Attrs([Attr("address","0x768"), +Def(Tid(1_808, "%00000710"), Attrs([Attr("address","0x7B8"), Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_813, "%00000715"), - Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), -(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_193, "@puts"), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_313, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), -Attr("address","0x790"), Attr("stub","()")]), "puts", - Args([Arg(Tid(2_226, "%000008b2"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("address","0x7E0"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_389, "%00000955"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_227, "%000008b3"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_390, "%00000956"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(1_086, "@puts"), Attrs([Attr("address","0x790")]), Phis([]), -Defs([Def(Tid(1_868, "%0000074c"), Attrs([Attr("address","0x790"), +Blks([Blk(Tid(1_086, "@puts"), Attrs([Attr("address","0x7E0")]), Phis([]), +Defs([Def(Tid(1_868, "%0000074c"), Attrs([Attr("address","0x7E0"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_876, "%00000754"), Attrs([Attr("address","0x794"), +Def(Tid(1_876, "%00000754"), Attrs([Attr("address","0x7E4"), Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), -Def(Tid(1_883, "%0000075b"), Attrs([Attr("address","0x798"), +Def(Tid(1_883, "%0000075b"), Attrs([Attr("address","0x7E8"), Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_888, "%00000760"), - Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x7EC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), -Sub(Tid(2_194, "@register_tm_clones"), - Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x840")]), - "register_tm_clones", Args([Arg(Tid(2_228, "%000008b4"), +Sub(Tid(2_314, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + "register_tm_clones", Args([Arg(Tid(2_391, "%00000957"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), -Blks([Blk(Tid(727, "@register_tm_clones"), Attrs([Attr("address","0x840")]), - Phis([]), Defs([Def(Tid(731, "%000002db"), Attrs([Attr("address","0x840"), +Blks([Blk(Tid(727, "@register_tm_clones"), Attrs([Attr("address","0x880")]), + Phis([]), Defs([Def(Tid(731, "%000002db"), Attrs([Attr("address","0x880"), Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), -Def(Tid(738, "%000002e2"), Attrs([Attr("address","0x844"), +Def(Tid(738, "%000002e2"), Attrs([Attr("address","0x884"), Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), Def(Tid(744, "%000002e8"), - Attrs([Attr("address","0x848"), Attr("insn","adrp x1, #0x20000")]), + Attrs([Attr("address","0x888"), Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), Def(Tid(751, "%000002ef"), - Attrs([Attr("address","0x84C"), Attr("insn","add x1, x1, #0x70")]), + Attrs([Attr("address","0x88C"), Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), -Def(Tid(759, "%000002f7"), Attrs([Attr("address","0x850"), +Def(Tid(759, "%000002f7"), Attrs([Attr("address","0x890"), Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(766, "%000002fe"), - Attrs([Attr("address","0x854"), Attr("insn","lsr x2, x1, #63")]), + Attrs([Attr("address","0x894"), Attr("insn","lsr x2, x1, #63")]), Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), -Def(Tid(774, "%00000306"), Attrs([Attr("address","0x858"), +Def(Tid(774, "%00000306"), Attrs([Attr("address","0x898"), Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), -Def(Tid(781, "%0000030d"), Attrs([Attr("address","0x85C"), +Def(Tid(781, "%0000030d"), Attrs([Attr("address","0x89C"), Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(793, "%00000319"), - Attrs([Attr("address","0x860"), Attr("insn","cbz x1, #0x18")]), + Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), -Jmps([Goto(Tid(787, "%00000313"), Attrs([Attr("address","0x860"), +Jmps([Goto(Tid(787, "%00000313"), Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), -Direct(Tid(785, "%00000311"))), Goto(Tid(2_195, "%00000893"), Attrs([]), +Direct(Tid(785, "%00000311"))), Goto(Tid(2_359, "%00000937"), Attrs([]), Int(1,1), Direct(Tid(1_327, "%0000052f")))])), Blk(Tid(1_327, "%0000052f"), - Attrs([Attr("address","0x864")]), Phis([]), -Defs([Def(Tid(1_331, "%00000533"), Attrs([Attr("address","0x864"), + Attrs([Attr("address","0x8A4")]), Phis([]), +Defs([Def(Tid(1_331, "%00000533"), Attrs([Attr("address","0x8A4"), Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), -Def(Tid(1_339, "%0000053b"), Attrs([Attr("address","0x868"), +Def(Tid(1_339, "%0000053b"), Attrs([Attr("address","0x8A8"), Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), -Def(Tid(1_350, "%00000546"), Attrs([Attr("address","0x86C"), +Def(Tid(1_350, "%00000546"), Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), Var("#70",Imm(1)), EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_344, "%00000540"), - Attrs([Attr("address","0x86C"), Attr("insn","cbz x2, #0xc")]), + Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), Var("#70",Imm(1)), Direct(Tid(785, "%00000311"))), -Goto(Tid(2_196, "%00000894"), Attrs([]), Int(1,1), +Goto(Tid(2_360, "%00000938"), Attrs([]), Int(1,1), Direct(Tid(1_353, "%00000549")))])), Blk(Tid(785, "%00000311"), - Attrs([Attr("address","0x878")]), Phis([]), Defs([]), -Jmps([Call(Tid(798, "%0000031e"), Attrs([Attr("address","0x878"), + Attrs([Attr("address","0x8B8")]), Phis([]), Defs([]), +Jmps([Call(Tid(798, "%0000031e"), Attrs([Attr("address","0x8B8"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), -Blk(Tid(1_353, "%00000549"), Attrs([Attr("address","0x870")]), Phis([]), -Defs([Def(Tid(1_359, "%0000054f"), Attrs([Attr("address","0x870"), +Blk(Tid(1_353, "%00000549"), Attrs([Attr("address","0x8B0")]), Phis([]), +Defs([Def(Tid(1_359, "%0000054f"), Attrs([Attr("address","0x8B0"), Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), -Jmps([Call(Tid(1_364, "%00000554"), Attrs([Attr("address","0x874"), +Jmps([Call(Tid(1_364, "%00000554"), Attrs([Attr("address","0x8B4"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), -Sub(Tid(2_197, "@strlen"), +Sub(Tid(2_317, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), -Attr("pure","()"), Attr("address","0x720"), Attr("stub","()")]), "strlen", - Args([Arg(Tid(2_229, "%000008b5"), Attrs([Attr("nonnull","()"), +Attr("pure","()"), Attr("address","0x770"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_392, "%00000958"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), -In()), Arg(Tid(2_230, "%000008b6"), +In()), Arg(Tid(2_393, "%00000959"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_030, "@strlen"), - Attrs([Attr("address","0x720")]), Phis([]), -Defs([Def(Tid(1_693, "%0000069d"), Attrs([Attr("address","0x720"), + Attrs([Attr("address","0x770")]), Phis([]), +Defs([Def(Tid(1_693, "%0000069d"), Attrs([Attr("address","0x770"), Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), -Def(Tid(1_701, "%000006a5"), Attrs([Attr("address","0x724"), +Def(Tid(1_701, "%000006a5"), Attrs([Attr("address","0x774"), Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), -Def(Tid(1_708, "%000006ac"), Attrs([Attr("address","0x728"), +Def(Tid(1_708, "%000006ac"), Attrs([Attr("address","0x778"), Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_713, "%000006b1"), - Attrs([Attr("address","0x72C"), Attr("insn","br x17")]), Int(1,1), + Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir index 6395d0f72..ed93b38a3 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir @@ -1,6 +1,6 @@ -00000896: program -0000087a: sub __cxa_finalize(__cxa_finalize_result) -00000897: __cxa_finalize_result :: out u32 = low:32[R0] +00000939: program +000008f2: sub __cxa_finalize(__cxa_finalize_result) +0000093a: __cxa_finalize_result :: out u32 = low:32[R0] 0000052b: 000006cf: R16 := 0x20000 @@ -8,8 +8,8 @@ 000006de: R16 := R16 + 0x18 000006e3: call R17 with noreturn -0000087b: sub __do_global_dtors_aux(__do_global_dtors_aux_result) -00000898: __do_global_dtors_aux_result :: out u32 = low:32[R0] +000008f3: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +0000093b: __do_global_dtors_aux_result :: out u32 = low:32[R0] 00000322: 00000329: #34 := R31 - 0x20 @@ -22,29 +22,29 @@ 00000355: R0 := pad:32[mem[R19 + 0x70]] 00000361: #36 := ~~0:0[R0] 0000035b: when #36 goto %00000359 -0000087c: goto %000004e9 +0000092f: goto %000004e9 000004e9: 000004ed: R0 := 0x1F000 000004f5: R0 := mem[R0 + 0xFC8, el]:u64 00000501: #67 := R0 = 0 000004fb: when #67 goto %000004f9 -0000087d: goto %00000519 +00000930: goto %00000519 00000519: 0000051d: R0 := 0x20000 00000525: R0 := mem[R0 + 0x58, el]:u64 -0000052a: R30 := 0x8B0 +0000052a: R30 := 0x8F0 0000052d: call @__cxa_finalize with return %000004f9 000004f9: -00000506: R30 := 0x8B4 +00000506: R30 := 0x8F4 00000508: call @deregister_tm_clones with return %0000050a 0000050a: 0000050f: R0 := 1 00000517: mem := mem with [R19 + 0x70] <- low:8[31:0[R0]] -0000087e: goto %00000359 +00000931: goto %00000359 00000359: 00000369: R19 := mem[R31 + 0x10, el]:u64 @@ -53,12 +53,12 @@ 0000037a: R31 := R31 + 0x20 0000037f: call R30 with noreturn -0000087f: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) -00000899: __libc_start_main_main :: in u64 = R0 -0000089a: __libc_start_main_arg2 :: in u32 = low:32[R1] -0000089b: __libc_start_main_arg3 :: in out u64 = R2 -0000089c: __libc_start_main_auxv :: in out u64 = R3 -0000089d: __libc_start_main_result :: out u32 = low:32[R0] +000008f7: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +0000093c: __libc_start_main_main :: in u64 = R0 +0000093d: __libc_start_main_arg2 :: in u32 = low:32[R1] +0000093e: __libc_start_main_arg3 :: in out u64 = R2 +0000093f: __libc_start_main_auxv :: in out u64 = R3 +00000940: __libc_start_main_result :: out u32 = low:32[R0] 00000266: 000006b6: R16 := 0x20000 @@ -66,8 +66,8 @@ 000006c5: R16 := R16 + 0x10 000006ca: call R17 with noreturn -00000880: sub _fini(_fini_result) -0000089e: _fini_result :: out u32 = low:32[R0] +000008f8: sub _fini(_fini_result) +00000941: _fini_result :: out u32 = low:32[R0] 00000020: 00000029: #3 := R31 - 0x10 @@ -80,26 +80,26 @@ 0000004f: R31 := R31 + 0x10 00000054: call R30 with noreturn -00000881: sub _init(_init_result) -0000089f: _init_result :: out u32 = low:32[R0] +000008f9: sub _init(_init_result) +00000942: _init_result :: out u32 = low:32[R0] -00000795: -0000079e: #98 := R31 - 0x10 -000007a3: mem := mem with [#98, el]:u64 <- R29 -000007a8: mem := mem with [#98 + 8, el]:u64 <- R30 -000007ac: R31 := #98 -000007b3: R29 := R31 -000007b8: R30 := 0x6E8 -000007ba: call @call_weak_fn with return %000007bc +0000080d: +00000816: #98 := R31 - 0x10 +0000081b: mem := mem with [#98, el]:u64 <- R29 +00000820: mem := mem with [#98 + 8, el]:u64 <- R30 +00000824: R31 := #98 +0000082b: R29 := R31 +00000830: R30 := 0x738 +00000832: call @call_weak_fn with return %00000834 -000007bc: -000007c4: R29 := mem[R31, el]:u64 -000007c8: R30 := mem[R31 + 8, el]:u64 -000007cb: R31 := R31 + 0x10 -000007d0: call R30 with noreturn +00000834: +0000083c: R29 := mem[R31, el]:u64 +00000840: R30 := mem[R31 + 8, el]:u64 +00000843: R31 := R31 + 0x10 +00000848: call R30 with noreturn -00000882: sub _start(_start_result) -000008a0: _start_result :: out u32 = low:32[R0] +000008fa: sub _start(_start_result) +00000943: _start_result :: out u32 = low:32[R0] 0000021c: 00000222: R29 := 0 @@ -112,17 +112,17 @@ 00000254: R0 := mem[R0 + 0xFD8, el]:u64 0000025a: R3 := 0 00000260: R4 := 0 -00000265: R30 := 0x7F0 +00000265: R30 := 0x830 00000268: call @__libc_start_main with return %0000026a 0000026a: -0000026d: R30 := 0x7F4 -00000270: call @abort with return %00000883 +0000026d: R30 := 0x834 +00000270: call @abort with return %00000932 -00000883: -00000884: call @call_weak_fn with noreturn +00000932: +00000933: call @call_weak_fn with noreturn -00000885: sub abort() +000008fd: sub abort() 0000026e: @@ -131,15 +131,15 @@ 00000742: R16 := R16 + 0x38 00000747: call R17 with noreturn -00000886: sub call_weak_fn(call_weak_fn_result) -000008a1: call_weak_fn_result :: out u32 = low:32[R0] +000008fe: sub call_weak_fn(call_weak_fn_result) +00000944: call_weak_fn_result :: out u32 = low:32[R0] 00000272: 00000276: R0 := 0x1F000 0000027e: R0 := mem[R0 + 0xFD0, el]:u64 0000028a: #12 := R0 = 0 00000284: when #12 goto %00000282 -00000887: goto %0000057d +00000934: goto %0000057d 00000282: 0000028f: call R30 with noreturn @@ -153,8 +153,8 @@ 00000729: R16 := R16 + 0x30 0000072e: call R17 with noreturn -00000888: sub deregister_tm_clones(deregister_tm_clones_result) -000008a2: deregister_tm_clones_result :: out u32 = low:32[R0] +00000900: sub deregister_tm_clones(deregister_tm_clones_result) +00000945: deregister_tm_clones_result :: out u32 = low:32[R0] 00000295: 00000299: R0 := 0x20000 @@ -170,14 +170,14 @@ & ~63:63[#16] 000002d0: #21 := ZF 000002ca: when #21 goto %000002c8 -00000889: goto %00000556 +00000935: goto %00000556 00000556: 0000055a: R1 := 0x1F000 00000562: R1 := mem[R1 + 0xFC0, el]:u64 0000056d: #75 := R1 = 0 00000567: when #75 goto %000002c8 -0000088a: goto %00000570 +00000936: goto %00000570 000002c8: 000002d5: call R30 with noreturn @@ -186,14 +186,14 @@ 00000576: R16 := R1 0000057b: call R16 with noreturn -0000088b: sub frame_dummy(frame_dummy_result) -000008a3: frame_dummy_result :: out u32 = low:32[R0] +00000903: sub frame_dummy(frame_dummy_result) +00000946: frame_dummy_result :: out u32 = low:32[R0] 00000385: 00000387: call @register_tm_clones with noreturn -0000088c: sub free(free_ptr) -000008a4: free_ptr :: in out u64 = R0 +00000904: sub free(free_ptr) +00000947: free_ptr :: in out u64 = R0 000004c3: 00000765: R16 := 0x20000 @@ -201,10 +201,10 @@ 00000774: R16 := R16 + 0x48 00000779: call R17 with noreturn -0000088d: sub main(main_argc, main_argv, main_result) -000008a5: main_argc :: in u32 = low:32[R0] -000008a6: main_argv :: in out u64 = R1 -000008a7: main_result :: out u32 = low:32[R0] +00000905: sub main(main_argc, main_argv, main_result) +00000948: main_argc :: in u32 = low:32[R0] +00000949: main_argv :: in out u64 = R1 +0000094a: main_result :: out u32 = low:32[R0] 00000389: 0000038e: R31 := R31 - 0x40 @@ -215,7 +215,7 @@ 000003af: mem := mem with [R29 - 8, el]:u64 <- 0 000003b7: mem := mem with [R29 - 0x10, el]:u64 <- 0 000003bd: R0 := 0xB -000003c2: R30 := 0x8F0 +000003c2: R30 := 0x930 000003c5: call @malloc with return %000003c7 000003c7: @@ -227,20 +227,20 @@ 000003f1: R0 := 0x20000 000003f8: R0 := R0 + 0x61 00000400: mem := mem with [R31, el]:u64 <- R0 -00000405: R30 := 0x914 +00000405: R30 := 0x954 00000408: call @strlen with return %0000040a 0000040a: 00000410: R1 := mem[R31, el]:u64 00000418: R2 := R0 00000420: R0 := mem[R31 + 8, el]:u64 -00000425: R30 := 0x924 +00000425: R30 := 0x964 00000428: call @memcpy with return %0000042a 0000042a: 00000430: R8 := mem[R31 + 0x18, el]:u64 00000438: R0 := mem[R8 + 0x78, el]:u64 -0000043d: R30 := 0x930 +0000043d: R30 := 0x970 00000440: call @puts with return %00000442 00000442: @@ -253,20 +253,20 @@ 00000477: R9 := mem[R8 + 0x78, el]:u64 0000047f: mem := mem with [R31 + 0x10, el]:u64 <- R9 00000487: R0 := mem[R8 + 0x78, el]:u64 -0000048c: R30 := 0x958 +0000048c: R30 := 0x998 0000048e: call @strlen with return %00000490 00000490: 00000496: R2 := R0 0000049e: R0 := mem[R31 + 0x10, el]:u64 000004a5: R1 := 1 -000004aa: R30 := 0x968 +000004aa: R30 := 0x9A8 000004ad: call @memset with return %000004af 000004af: 000004b5: R8 := mem[R31 + 0x18, el]:u64 000004bd: R0 := mem[R8 + 0x78, el]:u64 -000004c2: R30 := 0x974 +000004c2: R30 := 0x9B4 000004c5: call @free with return %000004c7 000004c7: @@ -276,9 +276,9 @@ 000004e2: R31 := R31 + 0x40 000004e7: call R30 with noreturn -0000088e: sub malloc(malloc_size, malloc_result) -000008a8: malloc_size :: in u64 = R0 -000008a9: malloc_result :: out u64 = R0 +00000906: sub malloc(malloc_size, malloc_result) +0000094b: malloc_size :: in u64 = R0 +0000094c: malloc_result :: out u64 = R0 000003c3: 000006e8: R16 := 0x20000 @@ -286,11 +286,11 @@ 000006f7: R16 := R16 + 0x20 000006fc: call R17 with noreturn -0000088f: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) -000008aa: memcpy_dst :: in out u64 = R0 -000008ab: memcpy_src :: in out u64 = R1 -000008ac: memcpy_n :: in u64 = R2 -000008ad: memcpy_result :: out u64 = R0 +00000907: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +0000094d: memcpy_dst :: in out u64 = R0 +0000094e: memcpy_src :: in out u64 = R1 +0000094f: memcpy_n :: in u64 = R2 +00000950: memcpy_result :: out u64 = R0 00000426: 00000684: R16 := 0x20000 @@ -298,11 +298,11 @@ 00000693: R16 := R16 00000698: call R17 with noreturn -00000890: sub memset(memset_buf, memset_c, memset_n, memset_result) -000008ae: memset_buf :: in out u64 = R0 -000008af: memset_c :: in u32 = low:32[R1] -000008b0: memset_n :: in u64 = R2 -000008b1: memset_result :: out u64 = R0 +00000908: sub memset(memset_buf, memset_c, memset_n, memset_result) +00000951: memset_buf :: in out u64 = R0 +00000952: memset_c :: in u32 = low:32[R1] +00000953: memset_n :: in u64 = R2 +00000954: memset_result :: out u64 = R0 000004ab: 00000701: R16 := 0x20000 @@ -310,9 +310,9 @@ 00000710: R16 := R16 + 0x28 00000715: call R17 with noreturn -00000891: sub puts(puts_s, puts_result) -000008b2: puts_s :: in u64 = R0 -000008b3: puts_result :: out u32 = low:32[R0] +00000909: sub puts(puts_s, puts_result) +00000955: puts_s :: in u64 = R0 +00000956: puts_result :: out u32 = low:32[R0] 0000043e: 0000074c: R16 := 0x20000 @@ -320,8 +320,8 @@ 0000075b: R16 := R16 + 0x40 00000760: call R17 with noreturn -00000892: sub register_tm_clones(register_tm_clones_result) -000008b4: register_tm_clones_result :: out u32 = low:32[R0] +0000090a: sub register_tm_clones(register_tm_clones_result) +00000957: register_tm_clones_result :: out u32 = low:32[R0] 000002d7: 000002db: R0 := 0x20000 @@ -334,14 +334,14 @@ 0000030d: R1 := R1 >> 1 00000319: #30 := R1 = 0 00000313: when #30 goto %00000311 -00000893: goto %0000052f +00000937: goto %0000052f 0000052f: 00000533: R2 := 0x1F000 0000053b: R2 := mem[R2 + 0xFE0, el]:u64 00000546: #70 := R2 = 0 00000540: when #70 goto %00000311 -00000894: goto %00000549 +00000938: goto %00000549 00000311: 0000031e: call R30 with noreturn @@ -350,9 +350,9 @@ 0000054f: R16 := R2 00000554: call R16 with noreturn -00000895: sub strlen(strlen_s, strlen_result) -000008b5: strlen_s :: in u64 = R0 -000008b6: strlen_result :: out u64 = R0 +0000090d: sub strlen(strlen_s, strlen_result) +00000958: strlen_s :: in u64 = R0 +00000959: strlen_result :: out u64 = R0 00000406: 0000069d: R16 := 0x20000 diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.expected b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.expected new file mode 100644 index 000000000..8d4ba53d6 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.expected @@ -0,0 +1,824 @@ +var {:extern} Gamma_R0: bool; +var {:extern} Gamma_R1: bool; +var {:extern} Gamma_R16: bool; +var {:extern} Gamma_R17: bool; +var {:extern} Gamma_R2: bool; +var {:extern} Gamma_R29: bool; +var {:extern} Gamma_R30: bool; +var {:extern} Gamma_R31: bool; +var {:extern} Gamma_R8: bool; +var {:extern} Gamma_R9: bool; +var {:extern} Gamma_malloc_base: [bv64]bool; +var {:extern} Gamma_malloc_count: [bv64]bool; +var {:extern} Gamma_malloc_end: [bv64]bool; +var {:extern} Gamma_mem: [bv64]bool; +var {:extern} Gamma_stack: [bv64]bool; +var {:extern} R0: bv64; +var {:extern} R1: bv64; +var {:extern} R16: bv64; +var {:extern} R17: bv64; +var {:extern} R2: bv64; +var {:extern} R29: bv64; +var {:extern} R30: bv64; +var {:extern} R31: bv64; +var {:extern} R8: bv64; +var {:extern} R9: bv64; +var {:extern} malloc_base: [bv64]bv8; +var {:extern} malloc_count: [bv64]bv8; +var {:extern} malloc_end: [bv64]bv8; +var {:extern} mem: [bv64]bv8; +var {:extern} stack: [bv64]bv8; +const {:extern} $buf_addr: bv64; +axiom ($buf_addr == 131192bv64); +const {:extern} $password_addr: bv64; +axiom ($password_addr == 131168bv64); +const {:extern} $stext_addr: bv64; +axiom ($stext_addr == 131169bv64); +function {:extern} L(memory: [bv64]bv8, index: bv64) returns (bool) { + false +} + +function {:extern} {:bvbuiltin "bvadd"} bvadd64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvsub"} bvsub64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvuge"} bvuge64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvugt"} bvugt64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvule"} bvule64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvult"} bvult64(bv64, bv64) returns (bool); +function {:extern} gamma_load32(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))) +} + +function {:extern} gamma_load64(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 7bv64)] && (gammaMap[bvadd64(index, 6bv64)] && (gammaMap[bvadd64(index, 5bv64)] && (gammaMap[bvadd64(index, 4bv64)] && (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))))))) +} + +function {:extern} gamma_load8(gammaMap: [bv64]bool, index: bv64) returns (bool) { + gammaMap[index] +} + +function {:extern} gamma_store64(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value][bvadd64(index, 1bv64) := value][bvadd64(index, 2bv64) := value][bvadd64(index, 3bv64) := value][bvadd64(index, 4bv64) := value][bvadd64(index, 5bv64) := value][bvadd64(index, 6bv64) := value][bvadd64(index, 7bv64) := value] +} + +function {:extern} gamma_store8(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value] +} + +function {:extern} memory_load64_le(memory: [bv64]bv8, index: bv64) returns (bv64) { + (memory[bvadd64(index, 7bv64)] ++ (memory[bvadd64(index, 6bv64)] ++ (memory[bvadd64(index, 5bv64)] ++ (memory[bvadd64(index, 4bv64)] ++ (memory[bvadd64(index, 3bv64)] ++ (memory[bvadd64(index, 2bv64)] ++ (memory[bvadd64(index, 1bv64)] ++ memory[index]))))))) +} + +function {:extern} memory_load8_le(memory: [bv64]bv8, index: bv64) returns (bv8) { + memory[index] +} + +function {:extern} memory_store64_le(memory: [bv64]bv8, index: bv64, value: bv64) returns ([bv64]bv8) { + memory[index := value[8:0]][bvadd64(index, 1bv64) := value[16:8]][bvadd64(index, 2bv64) := value[24:16]][bvadd64(index, 3bv64) := value[32:24]][bvadd64(index, 4bv64) := value[40:32]][bvadd64(index, 5bv64) := value[48:40]][bvadd64(index, 6bv64) := value[56:48]][bvadd64(index, 7bv64) := value[64:56]] +} + +function {:extern} memory_store8_be(memory: [bv64]bv8, index: bv64, value: bv8) returns ([bv64]bv8) { + memory[index := value[8:0]] +} + +procedure {:extern} rely(); + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure {:extern} rely_transitive() + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); +{ + call rely(); + call rely(); +} + +procedure {:extern} rely_reflexive(); + +procedure {:extern} guarantee_reflexive(); + modifies Gamma_mem, mem; + +procedure #free(); + modifies Gamma_R16, Gamma_R17, R16, R17; + requires (forall i : int, j: bv64 :: (malloc_base[i] == R0 && bvuge64(j, R0) && bvult64(j, malloc_end[i])) ==> Gamma_mem[j]); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure main() + modifies Gamma_R0, Gamma_R1, Gamma_R16, Gamma_R17, Gamma_R2, Gamma_R29, Gamma_R30, Gamma_R31, Gamma_R8, Gamma_R9, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, Gamma_mem, Gamma_stack, R0, R1, R16, R17, R2, R29, R30, R31, R8, R9, malloc_base, malloc_count, malloc_end, mem, stack; + requires (gamma_load8(Gamma_mem, $password_addr) == false); + requires malloc_count == 0; + requires gamma_load32(Gamma_mem, memory_load64_le(mem, $stext_addr)); + requires R31 == 100bv64; + free requires (memory_load8_le(mem, 131152bv64) == 0bv8); + free requires (memory_load8_le(mem, 131153bv64) == 0bv8); + free requires (memory_load8_le(mem, 131154bv64) == 0bv8); + free requires (memory_load8_le(mem, 131155bv64) == 0bv8); + free requires (memory_load8_le(mem, 131156bv64) == 0bv8); + free requires (memory_load8_le(mem, 131157bv64) == 0bv8); + free requires (memory_load8_le(mem, 131158bv64) == 0bv8); + free requires (memory_load8_le(mem, 131159bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 131168bv64) == 7bv8); + free requires (memory_load8_le(mem, 131169bv64) == 117bv8); + free requires (memory_load8_le(mem, 131170bv64) == 115bv8); + free requires (memory_load8_le(mem, 131171bv64) == 101bv8); + free requires (memory_load8_le(mem, 131172bv64) == 114bv8); + free requires (memory_load8_le(mem, 131173bv64) == 58bv8); + free requires (memory_load8_le(mem, 131174bv64) == 112bv8); + free requires (memory_load8_le(mem, 131175bv64) == 97bv8); + free requires (memory_load8_le(mem, 131176bv64) == 115bv8); + free requires (memory_load8_le(mem, 131177bv64) == 115bv8); + free requires (memory_load8_le(mem, 131178bv64) == 0bv8); + free requires (memory_load8_le(mem, 131179bv64) == 0bv8); + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (Gamma_R29 == old(Gamma_R29)); + free ensures (Gamma_R31 == old(Gamma_R31)); + free ensures (R29 == old(R29)); + free ensures (R31 == old(R31)); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); +{ + var #42: bv64; + var Gamma_#42: bool; + lmain: + assume {:captureState "lmain"} true; + R31, Gamma_R31 := bvsub64(R31, 64bv64), Gamma_R31; + #42, Gamma_#42 := bvadd64(R31, 48bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #42, R29), gamma_store64(Gamma_stack, #42, Gamma_R29); + assume {:captureState "%0000039b"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#42, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#42, 8bv64), Gamma_R30); + assume {:captureState "%000003a0"} true; + R29, Gamma_R29 := bvadd64(R31, 48bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551608bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64), true); + assume {:captureState "%000003af"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551600bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551600bv64), true); + assume {:captureState "%000003b7"} true; + R0, Gamma_R0 := 11bv64, true; + R30, Gamma_R30 := 2352bv64, true; + call malloc(); + goto l000003c7; + l000003c7: + assume {:captureState "l000003c7"} true; + R8, Gamma_R8 := 131072bv64, true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 24bv64), R8), gamma_store64(Gamma_stack, bvadd64(R31, 24bv64), Gamma_R8); + assume {:captureState "%000003d3"} true; + call rely(); + assert (L(mem, bvadd64(R8, 120bv64)) ==> Gamma_R0); + mem, Gamma_mem := memory_store64_le(mem, bvadd64(R8, 120bv64), R0), gamma_store64(Gamma_mem, bvadd64(R8, 120bv64), Gamma_R0); + assume {:captureState "%000003db"} true; + call rely(); + R8, Gamma_R8 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 8bv64), R8), gamma_store64(Gamma_stack, bvadd64(R31, 8bv64), Gamma_R8); + assume {:captureState "%000003eb"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 97bv64), Gamma_R0; + stack, Gamma_stack := memory_store64_le(stack, R31, R0), gamma_store64(Gamma_stack, R31, Gamma_R0); + assume {:captureState "%00000400"} true; + R30, Gamma_R30 := 2388bv64, true; + call strlen(); + goto l0000040a; + l0000040a: + assume {:captureState "l0000040a"} true; + R1, Gamma_R1 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 8bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 8bv64)); + R30, Gamma_R30 := 2404bv64, true; + call memcpy(); + goto l0000042a; + l0000042a: + assume {:captureState "l0000042a"} true; + R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); + R30, Gamma_R30 := 2416bv64, true; + call puts(); + goto l00000442; + l00000442: + assume {:captureState "l00000442"} true; + R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); + call rely(); + R9, Gamma_R9 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); + R9, Gamma_R9 := bvadd64(R9, 4bv64), Gamma_R9; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551608bv64), R9), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64), Gamma_R9); + assume {:captureState "%0000045f"} true; + R9, Gamma_R9 := memory_load64_le(stack, bvadd64(R29, 18446744073709551608bv64)), gamma_load64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64)); + call rely(); + assert (L(mem, R9) ==> true); + mem, Gamma_mem := memory_store8_be(mem, R9, 0bv8), gamma_store8(Gamma_mem, R9, true); + assume {:captureState "%0000046f"} true; + call rely(); + R9, Gamma_R9 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 16bv64), R9), gamma_store64(Gamma_stack, bvadd64(R31, 16bv64), Gamma_R9); + assume {:captureState "%0000047f"} true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); + R30, Gamma_R30 := 2456bv64, true; + call strlen(); + goto l00000490; + l00000490: + assume {:captureState "l00000490"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); + R1, Gamma_R1 := 1bv64, true; + R30, Gamma_R30 := 2472bv64, true; + call memset(); + goto l000004af; + l000004af: + assume {:captureState "l000004af"} true; + R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R8, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 120bv64)) || L(mem, bvadd64(R8, 120bv64))); + R30, Gamma_R30 := 2484bv64, true; + call #free(); + goto l000004c7; + l000004c7: + assume {:captureState "l000004c7"} true; + R0, Gamma_R0 := 0bv32, true; + R29, Gamma_R29 := memory_load64_le(stack, bvadd64(R31, 48bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 48bv64)); + R30, Gamma_R30 := memory_load64_le(stack, bvadd64(R31, 56bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 56bv64)); + R31, Gamma_R31 := bvadd64(R31, 64bv64), Gamma_R31; + return; +} + +procedure malloc(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, R0, R16, R17, malloc_base, malloc_count, malloc_end; + requires bvugt64(R0, 0bv64); + requires Gamma_R0 == true; + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures Gamma_R0 == true; + ensures malloc_count == old(malloc_count) + 1; + ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); + ensures R0 == malloc_base[malloc_count]; + ensures malloc_end[malloc_count] == bvadd64(R0, old(R0)); + ensures (forall i: int :: i != malloc_count ==> bvugt64(malloc_base[malloc_count], malloc_end[i]) || bvult64(malloc_end[malloc_count], malloc_base[i])); + ensures (forall i: int :: i != malloc_count ==> malloc_base[i] == old(malloc_base[i]) && malloc_end[i] == old(malloc_end[i])); + ensures bvuge64(R0, 100000000bv64); + ensures (forall i : bv64 :: (bvuge64(i, R0) && bvult64(i, bvadd64(R0, old(R0)))) ==> (Gamma_mem[i] && gamma_load8(Gamma_mem, i))); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memcpy(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memset(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + requires Gamma_R1; + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then Gamma_R1 else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then R1[8:0] else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure puts(); + modifies Gamma_R16, Gamma_R17, R16, R17; + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure strlen(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, R0, R16, R17; + free requires (memory_load8_le(mem, 2520bv64) == 1bv8); + free requires (memory_load8_le(mem, 2521bv64) == 0bv8); + free requires (memory_load8_le(mem, 2522bv64) == 2bv8); + free requires (memory_load8_le(mem, 2523bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); + ensures Gamma_R0 == true; + ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); + ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); + ensures (bvult64(old(R0), bvadd64(bvadd64(old(R0), R0), 1bv64))); + free ensures (memory_load8_le(mem, 2520bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2521bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2522bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2523bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf index 8b595940b..c187b6cd1 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf @@ -1,16 +1,16 @@ -Relocation section '.rela.dyn' at offset 0x528 contains 8 entries: +Relocation section '.rela.dyn' at offset 0x578 contains 8 entries: Offset Info Type Symbol's Value Symbol's Name + Addend -000000000001fdc8 0000000000000403 R_AARCH64_RELATIVE 8d0 -000000000001fdd0 0000000000000403 R_AARCH64_RELATIVE 880 -000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 8d4 +000000000001fdb8 0000000000000403 R_AARCH64_RELATIVE 910 +000000000001fdc0 0000000000000403 R_AARCH64_RELATIVE 8c0 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 914 0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 000000000001ffc0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 000000000001ffc8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 000000000001ffd0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 -Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: +Relocation section '.rela.plt' at offset 0x638 contains 10 entries: Offset Info Type Symbol's Value Symbol's Name + Addend 0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 @@ -26,8 +26,8 @@ Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: Symbol table '.dynsym' contains 15 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND - 1: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init - 2: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 1: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) @@ -41,104 +41,105 @@ Symbol table '.dynsym' contains 15 entries: 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable -Symbol table '.symtab' contains 99 entries: +Symbol table '.symtab' contains 100 entries: Num: Value Size Type Bind Vis Ndx Name 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag - 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .gnu.hash - 5: 00000000000002b8 0 SECTION LOCAL DEFAULT 5 .dynsym - 6: 0000000000000420 0 SECTION LOCAL DEFAULT 6 .dynstr - 7: 00000000000004d4 0 SECTION LOCAL DEFAULT 7 .gnu.version - 8: 00000000000004f8 0 SECTION LOCAL DEFAULT 8 .gnu.version_r - 9: 0000000000000528 0 SECTION LOCAL DEFAULT 9 .rela.dyn - 10: 00000000000005e8 0 SECTION LOCAL DEFAULT 10 .rela.plt - 11: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init - 12: 00000000000006f0 0 SECTION LOCAL DEFAULT 12 .plt - 13: 00000000000007c0 0 SECTION LOCAL DEFAULT 13 .text - 14: 0000000000000984 0 SECTION LOCAL DEFAULT 14 .fini - 15: 0000000000000998 0 SECTION LOCAL DEFAULT 15 .rodata - 16: 000000000000099c 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr - 17: 00000000000009d8 0 SECTION LOCAL DEFAULT 17 .eh_frame - 18: 000000000001fdc8 0 SECTION LOCAL DEFAULT 18 .init_array - 19: 000000000001fdd0 0 SECTION LOCAL DEFAULT 19 .fini_array - 20: 000000000001fdd8 0 SECTION LOCAL DEFAULT 20 .dynamic - 21: 000000000001ffb8 0 SECTION LOCAL DEFAULT 21 .got - 22: 000000000001ffe8 0 SECTION LOCAL DEFAULT 22 .got.plt - 23: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data - 24: 0000000000020070 0 SECTION LOCAL DEFAULT 24 .bss - 25: 0000000000000000 0 SECTION LOCAL DEFAULT 25 .comment - 26: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o - 27: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d - 28: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag - 29: 00000000000007c0 0 NOTYPE LOCAL DEFAULT 13 $x - 30: 00000000000009ec 0 NOTYPE LOCAL DEFAULT 17 $d - 31: 0000000000000998 0 NOTYPE LOCAL DEFAULT 15 $d - 32: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o - 33: 00000000000007f4 0 NOTYPE LOCAL DEFAULT 13 $x - 34: 00000000000007f4 20 FUNC LOCAL DEFAULT 13 call_weak_fn - 35: 00000000000006d8 0 NOTYPE LOCAL DEFAULT 11 $x - 36: 0000000000000984 0 NOTYPE LOCAL DEFAULT 14 $x - 37: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o - 38: 00000000000006e8 0 NOTYPE LOCAL DEFAULT 11 $x - 39: 0000000000000990 0 NOTYPE LOCAL DEFAULT 14 $x - 40: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 41: 0000000000000810 0 NOTYPE LOCAL DEFAULT 13 $x - 42: 0000000000000810 0 FUNC LOCAL DEFAULT 13 deregister_tm_clones - 43: 0000000000000840 0 FUNC LOCAL DEFAULT 13 register_tm_clones - 44: 0000000000020058 0 NOTYPE LOCAL DEFAULT 23 $d - 45: 0000000000000880 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux - 46: 0000000000020070 1 OBJECT LOCAL DEFAULT 24 completed.0 - 47: 000000000001fdd0 0 NOTYPE LOCAL DEFAULT 19 $d - 48: 000000000001fdd0 0 OBJECT LOCAL DEFAULT 19 __do_global_dtors_aux_fini_array_entry - 49: 00000000000008d0 0 FUNC LOCAL DEFAULT 13 frame_dummy - 50: 000000000001fdc8 0 NOTYPE LOCAL DEFAULT 18 $d - 51: 000000000001fdc8 0 OBJECT LOCAL DEFAULT 18 __frame_dummy_init_array_entry - 52: 0000000000000a00 0 NOTYPE LOCAL DEFAULT 17 $d - 53: 0000000000020070 0 NOTYPE LOCAL DEFAULT 24 $d - 54: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c - 55: 00000000000008d4 0 NOTYPE LOCAL DEFAULT 13 $x.0 - 56: 0000000000020060 0 NOTYPE LOCAL DEFAULT 23 $d.1 - 57: 0000000000020078 0 NOTYPE LOCAL DEFAULT 24 $d.2 - 58: 000000000000003e 0 NOTYPE LOCAL DEFAULT 25 $d.3 - 59: 0000000000000a60 0 NOTYPE LOCAL DEFAULT 17 $d.4 - 60: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c - 61: 0000000000000a9c 0 NOTYPE LOCAL DEFAULT 17 $d - 62: 0000000000000a9c 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__ - 63: 0000000000000000 0 FILE LOCAL DEFAULT ABS - 64: 000000000001fdd8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC - 65: 000000000000099c 0 NOTYPE LOCAL DEFAULT 16 __GNU_EH_FRAME_HDR - 66: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - 67: 00000000000006f0 0 NOTYPE LOCAL DEFAULT 12 $x - 68: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 - 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 - 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 - 71: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable - 72: 0000000000020050 0 NOTYPE WEAK DEFAULT 23 data_start - 73: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start__ - 74: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 - 75: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _bss_end__ - 76: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 23 _edata - 77: 0000000000000984 0 FUNC GLOBAL HIDDEN 14 _fini - 78: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __bss_end__ - 79: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 - 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 - 81: 0000000000020060 1 OBJECT GLOBAL DEFAULT 23 password - 82: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 23 __data_start - 83: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ - 84: 0000000000020058 0 OBJECT GLOBAL HIDDEN 23 __dso_handle - 85: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 - 86: 0000000000000998 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used - 87: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 - 88: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 _end - 89: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 - 90: 00000000000007c0 52 FUNC GLOBAL DEFAULT 13 _start - 91: 0000000000020078 8 OBJECT GLOBAL DEFAULT 24 buf - 92: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 24 __end__ - 93: 0000000000020061 11 OBJECT GLOBAL DEFAULT 23 stext - 94: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 __bss_start - 95: 00000000000008d4 176 FUNC GLOBAL DEFAULT 13 main - 96: 0000000000020070 0 OBJECT GLOBAL HIDDEN 23 __TMC_END__ - 97: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable - 98: 00000000000006d8 0 FUNC GLOBAL HIDDEN 11 _init + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .hash + 5: 00000000000002e8 0 SECTION LOCAL DEFAULT 5 .gnu.hash + 6: 0000000000000308 0 SECTION LOCAL DEFAULT 6 .dynsym + 7: 0000000000000470 0 SECTION LOCAL DEFAULT 7 .dynstr + 8: 0000000000000524 0 SECTION LOCAL DEFAULT 8 .gnu.version + 9: 0000000000000548 0 SECTION LOCAL DEFAULT 9 .gnu.version_r + 10: 0000000000000578 0 SECTION LOCAL DEFAULT 10 .rela.dyn + 11: 0000000000000638 0 SECTION LOCAL DEFAULT 11 .rela.plt + 12: 0000000000000728 0 SECTION LOCAL DEFAULT 12 .init + 13: 0000000000000740 0 SECTION LOCAL DEFAULT 13 .plt + 14: 0000000000000800 0 SECTION LOCAL DEFAULT 14 .text + 15: 00000000000009c4 0 SECTION LOCAL DEFAULT 15 .fini + 16: 00000000000009d8 0 SECTION LOCAL DEFAULT 16 .rodata + 17: 00000000000009dc 0 SECTION LOCAL DEFAULT 17 .eh_frame_hdr + 18: 0000000000000a18 0 SECTION LOCAL DEFAULT 18 .eh_frame + 19: 000000000001fdb8 0 SECTION LOCAL DEFAULT 19 .init_array + 20: 000000000001fdc0 0 SECTION LOCAL DEFAULT 20 .fini_array + 21: 000000000001fdc8 0 SECTION LOCAL DEFAULT 21 .dynamic + 22: 000000000001ffb8 0 SECTION LOCAL DEFAULT 22 .got + 23: 000000000001ffe8 0 SECTION LOCAL DEFAULT 23 .got.plt + 24: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 25: 0000000000020070 0 SECTION LOCAL DEFAULT 25 .bss + 26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment + 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 28: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 29: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 30: 0000000000000800 0 NOTYPE LOCAL DEFAULT 14 $x + 31: 0000000000000a2c 0 NOTYPE LOCAL DEFAULT 18 $d + 32: 00000000000009d8 0 NOTYPE LOCAL DEFAULT 16 $d + 33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 34: 0000000000000834 0 NOTYPE LOCAL DEFAULT 14 $x + 35: 0000000000000834 20 FUNC LOCAL DEFAULT 14 call_weak_fn + 36: 0000000000000728 0 NOTYPE LOCAL DEFAULT 12 $x + 37: 00000000000009c4 0 NOTYPE LOCAL DEFAULT 15 $x + 38: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 39: 0000000000000738 0 NOTYPE LOCAL DEFAULT 12 $x + 40: 00000000000009d0 0 NOTYPE LOCAL DEFAULT 15 $x + 41: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 42: 0000000000000850 0 NOTYPE LOCAL DEFAULT 14 $x + 43: 0000000000000850 0 FUNC LOCAL DEFAULT 14 deregister_tm_clones + 44: 0000000000000880 0 FUNC LOCAL DEFAULT 14 register_tm_clones + 45: 0000000000020058 0 NOTYPE LOCAL DEFAULT 24 $d + 46: 00000000000008c0 0 FUNC LOCAL DEFAULT 14 __do_global_dtors_aux + 47: 0000000000020070 1 OBJECT LOCAL DEFAULT 25 completed.0 + 48: 000000000001fdc0 0 NOTYPE LOCAL DEFAULT 20 $d + 49: 000000000001fdc0 0 OBJECT LOCAL DEFAULT 20 __do_global_dtors_aux_fini_array_entry + 50: 0000000000000910 0 FUNC LOCAL DEFAULT 14 frame_dummy + 51: 000000000001fdb8 0 NOTYPE LOCAL DEFAULT 19 $d + 52: 000000000001fdb8 0 OBJECT LOCAL DEFAULT 19 __frame_dummy_init_array_entry + 53: 0000000000000a40 0 NOTYPE LOCAL DEFAULT 18 $d + 54: 0000000000020070 0 NOTYPE LOCAL DEFAULT 25 $d + 55: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 56: 0000000000000914 0 NOTYPE LOCAL DEFAULT 14 $x.0 + 57: 0000000000020060 0 NOTYPE LOCAL DEFAULT 24 $d.1 + 58: 0000000000020078 0 NOTYPE LOCAL DEFAULT 25 $d.2 + 59: 000000000000001d 0 NOTYPE LOCAL DEFAULT 26 $d.3 + 60: 0000000000000aa0 0 NOTYPE LOCAL DEFAULT 18 $d.4 + 61: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 62: 0000000000000adc 0 NOTYPE LOCAL DEFAULT 18 $d + 63: 0000000000000adc 0 OBJECT LOCAL DEFAULT 18 __FRAME_END__ + 64: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 65: 000000000001fdc8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 66: 00000000000009dc 0 NOTYPE LOCAL DEFAULT 17 __GNU_EH_FRAME_HDR + 67: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 68: 0000000000000740 0 NOTYPE LOCAL DEFAULT 13 $x + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 71: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 72: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 73: 0000000000020050 0 NOTYPE WEAK DEFAULT 24 data_start + 74: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start__ + 75: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 76: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _bss_end__ + 77: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 _edata + 78: 00000000000009c4 0 FUNC GLOBAL HIDDEN 15 _fini + 79: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __bss_end__ + 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 81: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 82: 0000000000020060 1 OBJECT GLOBAL DEFAULT 24 password + 83: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 24 __data_start + 84: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 85: 0000000000020058 0 OBJECT GLOBAL HIDDEN 24 __dso_handle + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 87: 00000000000009d8 4 OBJECT GLOBAL DEFAULT 16 _IO_stdin_used + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 89: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _end + 90: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 91: 0000000000000800 52 FUNC GLOBAL DEFAULT 14 _start + 92: 0000000000020078 8 OBJECT GLOBAL DEFAULT 25 buf + 93: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __end__ + 94: 0000000000020061 11 OBJECT GLOBAL DEFAULT 24 stext + 95: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start + 96: 0000000000000914 176 FUNC GLOBAL DEFAULT 14 main + 97: 0000000000020070 0 OBJECT GLOBAL HIDDEN 24 __TMC_END__ + 98: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 99: 0000000000000728 0 FUNC GLOBAL HIDDEN 12 _init diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.adt b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.adt new file mode 100644 index 000000000..ecd840932 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.adt @@ -0,0 +1,787 @@ +Project(Attrs([Attr("filename","\"a.out\""), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2572 20 2572)\n(code-region 2112 460 2112)\n(code-region 1904 192 1904)\n(code-region 1880 24 1880)\n(code-start 2164)\n(code-start 2112)\n(code-start 2388)\n(entry-point 2112)\n(external-reference 130992 _ITM_deregisterTMCloneTable)\n(external-reference 131000 __cxa_finalize)\n(external-reference 131008 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1880 0)\n(llvm:code-entry main 2388 184)\n(llvm:code-entry _start 2112 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2572 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2384 0)\n(llvm:code-entry __do_global_dtors_aux 2304 0)\n(llvm:code-entry register_tm_clones 2240 0)\n(llvm:code-entry deregister_tm_clones 2192 0)\n(llvm:code-entry call_weak_fn 2164 20)\n(llvm:code-entry .fini 2572 20)\n(llvm:code-entry .text 2112 460)\n(llvm:code-entry .plt 1904 192)\n(llvm:code-entry .init 1880 24)\n(llvm:elf-program-header 08 64936 600)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2596 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64952 496)\n(llvm:elf-program-header 03 64936 708)\n(llvm:elf-program-header 02 0 2856)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130472 600)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2596 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130488 496)\n(llvm:elf-virtual-program-header 03 130472 728)\n(llvm:elf-virtual-program-header 02 0 2856)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2112)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131008 __gmon_start__)\n(llvm:name-reference 131000 __cxa_finalize)\n(llvm:name-reference 130992 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68820)\n(llvm:section-entry .strtab 0 716 68104)\n(llvm:section-entry .symtab 0 2400 65704)\n(llvm:section-entry .comment 0 58 65644)\n(llvm:section-entry .bss 131184 16 65644)\n(llvm:section-entry .data 131152 28 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 130984 64 65448)\n(llvm:section-entry .dynamic 130488 496 64952)\n(llvm:section-entry .fini_array 130480 8 64944)\n(llvm:section-entry .init_array 130472 8 64936)\n(llvm:section-entry .eh_frame 2656 200 2656)\n(llvm:section-entry .eh_frame_hdr 2596 60 2596)\n(llvm:section-entry .rodata 2592 4 2592)\n(llvm:section-entry .fini 2572 20 2572)\n(llvm:section-entry .text 2112 460 2112)\n(llvm:section-entry .plt 1904 192 1904)\n(llvm:section-entry .init 1880 24 1880)\n(llvm:section-entry .rela.plt 1640 240 1640)\n(llvm:section-entry .rela.dyn 1400 240 1400)\n(llvm:section-entry .gnu.version_r 1352 48 1352)\n(llvm:section-entry .gnu.version 1316 30 1316)\n(llvm:section-entry .dynstr 1136 179 1136)\n(llvm:section-entry .dynsym 776 360 776)\n(llvm:section-entry .gnu.hash 744 28 744)\n(llvm:section-entry .hash 664 80 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1880 0 1880 1880)\n(llvm:symbol-entry main 2388 184 2388 2388)\n(llvm:symbol-entry _start 2112 52 2112 2112)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2572 0 2572 2572)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2384 0 2384 2384)\n(llvm:symbol-entry __do_global_dtors_aux 2304 0 2304 2304)\n(llvm:symbol-entry register_tm_clones 2240 0 2240 2240)\n(llvm:symbol-entry deregister_tm_clones 2192 0 2192 2192)\n(llvm:symbol-entry call_weak_fn 2164 20 2164 2164)\n(mapped 0 2856 0)\n(mapped 130472 708 64936)\n(named-region 0 2856 02)\n(named-region 130472 728 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 80 .hash)\n(named-region 744 28 .gnu.hash)\n(named-region 776 360 .dynsym)\n(named-region 1136 179 .dynstr)\n(named-region 1316 30 .gnu.version)\n(named-region 1352 48 .gnu.version_r)\n(named-region 1400 240 .rela.dyn)\n(named-region 1640 240 .rela.plt)\n(named-region 1880 24 .init)\n(named-region 1904 192 .plt)\n(named-region 2112 460 .text)\n(named-region 2572 20 .fini)\n(named-region 2592 4 .rodata)\n(named-region 2596 60 .eh_frame_hdr)\n(named-region 2656 200 .eh_frame)\n(named-region 130472 8 .init_array)\n(named-region 130480 8 .fini_array)\n(named-region 130488 496 .dynamic)\n(named-region 130984 64 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 28 .data)\n(named-region 131184 16 .bss)\n(named-region 0 58 .comment)\n(named-region 0 2400 .symtab)\n(named-region 0 716 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2164 call_weak_fn)\n(named-symbol 2192 deregister_tm_clones)\n(named-symbol 2240 register_tm_clones)\n(named-symbol 2304 __do_global_dtors_aux)\n(named-symbol 2384 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2572 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2112 _start)\n(named-symbol 2388 main)\n(named-symbol 1880 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 80)\n(section 744 28)\n(section 776 360)\n(section 1136 179)\n(section 1316 30)\n(section 1352 48)\n(section 1400 240)\n(section 1640 240)\n(section 1880 24)\n(section 1904 192)\n(section 2112 460)\n(section 2572 20)\n(section 2592 4)\n(section 2596 60)\n(section 2656 200)\n(section 130472 8)\n(section 130480 8)\n(section 130488 496)\n(section 130984 64)\n(section 131048 104)\n(section 131152 28)\n(section 131184 16)\n(section 0 58)\n(section 0 2400)\n(section 0 716)\n(section 0 259)\n(segment 0 2856 true false true)\n(segment 130472 728 true true false)\n(subarch v8)\n(symbol-chunk 2164 20 2164)\n(symbol-chunk 2112 52 2112)\n(symbol-chunk 2388 184 2388)\n(symbol-value 2164 2164)\n(symbol-value 2192 2192)\n(symbol-value 2240 2240)\n(symbol-value 2304 2304)\n(symbol-value 2384 2384)\n(symbol-value 2572 2572)\n(symbol-value 2112 2112)\n(symbol-value 2388 2388)\n(symbol-value 1880 1880)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x40\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x0b\x00\x00\x00\x00\x00\x00\x28\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x40\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x0b\x00\x00\x00\x00\x00\x00\x28\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xc4\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x24\x0a\x00\x00\x00\x00\x00\x00\x24\x0a\x00\x00\x00\x00\x00\x00\x24\x0a\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\x58\x02\x00\x00\x00\x00\x00\x00\x58\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xcc\xa8\x08\x16\x6f\x54\x78\x09\xc7\x6a\x9c\x3a\xb0\x99\x7c\xd8\x5a\xcf\xf1\x87\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x40\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1e\x00\x1d\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x0b\x00\x00\x00\x00\x00\x00\x28\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xc4\x02\x00\x00\x00\x00\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\xf0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\x24\x0a\x00\x00\x00\x00\x00\x00\x24\x0a\x00\x00\x00\x00\x00\x00\x24\x0a\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xa8\xfd\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\x58\x02\x00\x00\x00\x00\x00\x00\x58\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xcc\xa8\x08\x16\x6f\x54\x78\x09\xc7\x6a\x9c\x3a\xb0\x99\x7c\xd8\x5a\xcf\xf1\x87\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x58\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x50\x09\x00\x00\x00\x00\x00\x00\xb0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x54\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xb0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe0\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xd8\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xdc\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x40\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xd8\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00"), +Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xcc\xa8\x08\x16\x6f\x54\x78\x09\xc7\x6a\x9c\x3a\xb0\x99\x7c\xd8\x5a\xcf\xf1\x87"), +Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), +Section(".hash", 0x298, "\x03\x00\x00\x00\x0f\x00\x00\x00\x0a\x00\x00\x00\x0e\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x03\x00\x00\x00\x09\x00\x00\x00\x08\x00\x00\x00\x06\x00\x00\x00\x0c\x00\x00\x00\x0d\x00\x00\x00"), +Section(".gnu.hash", 0x2E8, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x308, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0c\x00\x58\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x18\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x470, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x524, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x548, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x578, "\xa8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x50\x09\x00\x00\x00\x00\x00\x00\xb0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x54\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xb0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x668, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x758, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x770, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0xA0C, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0xA20, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0xA24, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x1c\xfe\xff\xff\x50\x00\x00\x00\x6c\xfe\xff\xff\x64\x00\x00\x00\x9c\xfe\xff\xff\x78\x00\x00\x00\xdc\xfe\xff\xff\x8c\x00\x00\x00\x2c\xff\xff\xff\xb0\x00\x00\x00\x30\xff\xff\xff\xd8\x00\x00\x00"), +Section(".eh_frame", 0xA60, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xc4\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\x00\xfe\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x1c\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x48\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x74\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x01\x7c\x1e\x01\x1b\x0c\x1f\x00\x24\x00\x00\x00\x18\x00\x00\x00\x50\xfe\xff\xff\xb8\x00\x00\x00\x00\x44\x0e\x40\x48\x0c\x1d\x10\x9e\x02\x9d\x04\x02\xa0\x0c\x1f\x40\x48\x0e\x00\xde\xdd\x00\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDB0, "\x00\x09\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDB8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x58\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x0c\x0a\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xa8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xb0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x70\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x08\x03\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x68\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x78\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\x48\x05\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\x24\x05\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDA8, "\x50\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFA8, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x78\x00\x02\x00\x00\x00\x00\x00\x61\x00\x02\x00\x00\x00\x00\x00\x54\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00\x70\x07\x00\x00\x00\x00\x00\x00"), +Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), +Section(".text", 0x840, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe0\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xd8\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xc0\x01\x91\x01\x01\x00\x90\x21\xc0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xc2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xdc\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xc2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xff\x03\x01\xd1\xfd\x7b\x03\xa9\xfd\xc3\x00\x91\xe8\x00\x00\xf0\x08\xe5\x47\xf9\xe8\x0f\x00\xf9\xbf\x83\x1f\xf8\xbf\x03\x1f\xf8\x60\x01\x80\xd2\x96\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x00\xf9\x08\x01\x40\xf9\xe8\x07\x00\xf9\xe0\x00\x00\xf0\x00\xe8\x47\xf9\xe0\x03\x00\xf9\x82\xff\xff\x97\xe1\x03\x40\xf9\xe2\x03\x00\xaa\xe0\x07\x40\xf9\x7a\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x40\xf9\x97\xff\xff\x97\xe8\x0f\x40\xf9\x09\x01\x40\xf9\x29\x11\x00\x91\xa9\x83\x1f\xf8\xa9\x83\x5f\xf8\x3f\x01\x00\x39\x09\x01\x40\xf9\xe9\x0b\x00\xf9\x00\x01\x40\xf9\x71\xff\xff\x97\xe2\x03\x00\xaa\xe0\x0b\x40\xf9\x21\x00\x80\x52\x7d\xff\xff\x97\xe8\x0f\x40\xf9\x00\x01\x40\xf9\x8a\xff\xff\x97\xe0\x03\x1f\x2a\xfd\x7b\x43\xa9\xff\x03\x01\x91\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xB27), Attr("segment","02 0 2856")), +Annotation(Region(0x840,0x873), Attr("symbol","\"_start\"")), +Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), +Annotation(Region(0x0,0x2CB), Attr("section","\".strtab\"")), +Annotation(Region(0x0,0x95F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x39), Attr("section","\".comment\"")), +Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), +Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), +Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), +Annotation(Region(0x298,0x2E7), Attr("section","\".hash\"")), +Annotation(Region(0x2E8,0x303), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x308,0x46F), Attr("section","\".dynsym\"")), +Annotation(Region(0x470,0x522), Attr("section","\".dynstr\"")), +Annotation(Region(0x524,0x541), Attr("section","\".gnu.version\"")), +Annotation(Region(0x548,0x577), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x578,0x667), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x668,0x757), Attr("section","\".rela.plt\"")), +Annotation(Region(0x758,0x76F), Attr("section","\".init\"")), +Annotation(Region(0x770,0x82F), Attr("section","\".plt\"")), +Annotation(Region(0x758,0x76F), Attr("code-region","()")), +Annotation(Region(0x770,0x82F), Attr("code-region","()")), +Annotation(Region(0x840,0x873), Attr("symbol-info","_start 0x840 52")), +Annotation(Region(0x874,0x887), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x874,0x887), Attr("symbol-info","call_weak_fn 0x874 20")), +Annotation(Region(0x954,0xA0B), Attr("symbol","\"main\"")), +Annotation(Region(0x954,0xA0B), Attr("symbol-info","main 0x954 184")), +Annotation(Region(0xA0C,0xA1F), Attr("section","\".fini\"")), +Annotation(Region(0xA20,0xA23), Attr("section","\".rodata\"")), +Annotation(Region(0xA24,0xA5F), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0xA60,0xB27), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDA8,0x2006B), Attr("segment","03 0x1FDA8 728")), +Annotation(Region(0x1FDB0,0x1FDB7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDB8,0x1FFA7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDA8,0x1FDAF), Attr("section","\".init_array\"")), +Annotation(Region(0x1FFA8,0x1FFE7), Attr("section","\".got\"")), +Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), +Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), +Annotation(Region(0x840,0xA0B), Attr("section","\".text\"")), +Annotation(Region(0x840,0xA0B), Attr("code-region","()")), +Annotation(Region(0xA0C,0xA1F), Attr("code-region","()"))]), +Program(Tid(2_268, "%000008dc"), Attrs([]), + Subs([Sub(Tid(2_197, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7C0"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_269, "%000008dd"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_348, "@__cxa_finalize"), + Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_768, "%000006e8"), Attrs([Attr("address","0x7C0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_776, "%000006f0"), Attrs([Attr("address","0x7C4"), +Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_783, "%000006f7"), Attrs([Attr("address","0x7C8"), +Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_788, "%000006fc"), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_198, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x900")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_270, "%000008de"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(810, "@__do_global_dtors_aux"), + Attrs([Attr("address","0x900")]), Phis([]), Defs([Def(Tid(817, "%00000331"), + Attrs([Attr("address","0x900"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), +Def(Tid(822, "%00000336"), Attrs([Attr("address","0x900"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(827, "%0000033b"), Attrs([Attr("address","0x900"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(831, "%0000033f"), Attrs([Attr("address","0x900"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), +Var("#34",Imm(64))), Def(Tid(838, "%00000346"), + Attrs([Attr("address","0x904"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(846, "%0000034e"), + Attrs([Attr("address","0x908"), Attr("insn","str x19, [sp, #0x10]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), +Def(Tid(852, "%00000354"), Attrs([Attr("address","0x90C"), +Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), +Def(Tid(861, "%0000035d"), Attrs([Attr("address","0x910"), +Attr("insn","ldrb w0, [x19, #0x70]")]), Var("R0",Imm(64)), +UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),BigEndian(),8))), +Def(Tid(873, "%00000369"), Attrs([Attr("address","0x914"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), +Jmps([Goto(Tid(867, "%00000363"), Attrs([Attr("address","0x914"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +Direct(Tid(865, "%00000361"))), Goto(Tid(2_258, "%000008d2"), Attrs([]), + Int(1,1), Direct(Tid(1_282, "%00000502")))])), Blk(Tid(1_282, "%00000502"), + Attrs([Attr("address","0x918")]), Phis([]), +Defs([Def(Tid(1_286, "%00000506"), Attrs([Attr("address","0x918"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_294, "%0000050e"), Attrs([Attr("address","0x91C"), +Attr("insn","ldr x0, [x0, #0xfb8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4024,64)),LittleEndian(),64)), +Def(Tid(1_306, "%0000051a"), Attrs([Attr("address","0x920"), +Attr("insn","cbz x0, #0x10")]), Var("#70",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_300, "%00000514"), + Attrs([Attr("address","0x920"), Attr("insn","cbz x0, #0x10")]), + Var("#70",Imm(1)), Direct(Tid(1_298, "%00000512"))), +Goto(Tid(2_259, "%000008d3"), Attrs([]), Int(1,1), +Direct(Tid(1_330, "%00000532")))])), Blk(Tid(1_330, "%00000532"), + Attrs([Attr("address","0x924")]), Phis([]), +Defs([Def(Tid(1_334, "%00000536"), Attrs([Attr("address","0x924"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_342, "%0000053e"), Attrs([Attr("address","0x928"), +Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), +Def(Tid(1_347, "%00000543"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x16c")]), Var("R30",Imm(64)), Int(2352,64))]), +Jmps([Call(Tid(1_350, "%00000546"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x16c")]), Int(1,1), +(Direct(Tid(2_197, "@__cxa_finalize")),Direct(Tid(1_298, "%00000512"))))])), +Blk(Tid(1_298, "%00000512"), Attrs([Attr("address","0x930")]), Phis([]), +Defs([Def(Tid(1_311, "%0000051f"), Attrs([Attr("address","0x930"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2356,64))]), +Jmps([Call(Tid(1_313, "%00000521"), Attrs([Attr("address","0x930"), +Attr("insn","bl #-0xa0")]), Int(1,1), +(Direct(Tid(2_211, "@deregister_tm_clones")),Direct(Tid(1_315, "%00000523"))))])), +Blk(Tid(1_315, "%00000523"), Attrs([Attr("address","0x934")]), Phis([]), +Defs([Def(Tid(1_320, "%00000528"), Attrs([Attr("address","0x934"), +Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), +Def(Tid(1_328, "%00000530"), Attrs([Attr("address","0x938"), +Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), +Jmps([Goto(Tid(2_260, "%000008d4"), Attrs([]), Int(1,1), +Direct(Tid(865, "%00000361")))])), Blk(Tid(865, "%00000361"), + Attrs([Attr("address","0x93C")]), Phis([]), Defs([Def(Tid(881, "%00000371"), + Attrs([Attr("address","0x93C"), Attr("insn","ldr x19, [sp, #0x10]")]), + Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(891, "%0000037b"), Attrs([Attr("address","0x940"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(895, "%0000037f"), Attrs([Attr("address","0x940"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(898, "%00000382"), Attrs([Attr("address","0x940"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(903, "%00000387"), + Attrs([Attr("address","0x944"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_202, "@__libc_start_main"), + Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), +Attr("address","0x7B0"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_271, "%000008df"), + Attrs([Attr("c.layout","**[ : 64]"), +Attr("c.data","Top:u64 ptr ptr"), +Attr("c.type","signed (*)(signed , char** , char** );*")]), + Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_272, "%000008e0"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), +Arg(Tid(2_273, "%000008e1"), Attrs([Attr("c.layout","**[char : 8]"), +Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), + Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), +Arg(Tid(2_274, "%000008e2"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), +Arg(Tid(2_275, "%000008e3"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), +Out())]), Blks([Blk(Tid(622, "@__libc_start_main"), + Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_743, "%000006cf"), Attrs([Attr("address","0x7B0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_751, "%000006d7"), Attrs([Attr("address","0x7B4"), +Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_758, "%000006de"), Attrs([Attr("address","0x7B8"), +Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_763, "%000006e3"), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_203, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0xA0C")]), + "_fini", Args([Arg(Tid(2_276, "%000008e4"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_fini_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), + Attrs([Attr("address","0xA0C")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0xA10"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0xA10"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0xA10"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0xA10"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0xA14"), +Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0xA18"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0xA18"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0xA18"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), + Attrs([Attr("address","0xA1C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_204, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x758")]), + "_init", Args([Arg(Tid(2_277, "%000008e5"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_init_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_966, "@_init"), + Attrs([Attr("address","0x758")]), Phis([]), +Defs([Def(Tid(1_975, "%000007b7"), Attrs([Attr("address","0x75C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#101",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(1_980, "%000007bc"), Attrs([Attr("address","0x75C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#101",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(1_985, "%000007c1"), Attrs([Attr("address","0x75C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#101",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(1_989, "%000007c5"), Attrs([Attr("address","0x75C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#101",Imm(64))), Def(Tid(1_996, "%000007cc"), + Attrs([Attr("address","0x760"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(2_001, "%000007d1"), + Attrs([Attr("address","0x764"), Attr("insn","bl #0x110")]), + Var("R30",Imm(64)), Int(1896,64))]), Jmps([Call(Tid(2_003, "%000007d3"), + Attrs([Attr("address","0x764"), Attr("insn","bl #0x110")]), Int(1,1), +(Direct(Tid(2_209, "@call_weak_fn")),Direct(Tid(2_005, "%000007d5"))))])), +Blk(Tid(2_005, "%000007d5"), Attrs([Attr("address","0x768")]), Phis([]), +Defs([Def(Tid(2_013, "%000007dd"), Attrs([Attr("address","0x768"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(2_017, "%000007e1"), Attrs([Attr("address","0x768"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(2_020, "%000007e4"), Attrs([Attr("address","0x768"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_025, "%000007e9"), + Attrs([Attr("address","0x76C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_205, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x840"), +Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_278, "%000008e6"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_start_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(548, "@_start"), + Attrs([Attr("address","0x840")]), Phis([]), Defs([Def(Tid(554, "%0000022a"), + Attrs([Attr("address","0x844"), Attr("insn","mov x29, #0x0")]), + Var("R29",Imm(64)), Int(0,64)), Def(Tid(560, "%00000230"), + Attrs([Attr("address","0x848"), Attr("insn","mov x30, #0x0")]), + Var("R30",Imm(64)), Int(0,64)), Def(Tid(568, "%00000238"), + Attrs([Attr("address","0x84C"), Attr("insn","mov x5, x0")]), + Var("R5",Imm(64)), Var("R0",Imm(64))), Def(Tid(576, "%00000240"), + Attrs([Attr("address","0x850"), Attr("insn","ldr x1, [sp]")]), + Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(583, "%00000247"), Attrs([Attr("address","0x854"), +Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(590, "%0000024e"), + Attrs([Attr("address","0x858"), Attr("insn","mov x6, sp")]), + Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(596, "%00000254"), + Attrs([Attr("address","0x85C"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(604, "%0000025c"), + Attrs([Attr("address","0x860"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), +Def(Tid(610, "%00000262"), Attrs([Attr("address","0x864"), +Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), +Def(Tid(616, "%00000268"), Attrs([Attr("address","0x868"), +Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), +Def(Tid(621, "%0000026d"), Attrs([Attr("address","0x86C"), +Attr("insn","bl #-0xbc")]), Var("R30",Imm(64)), Int(2160,64))]), +Jmps([Call(Tid(624, "%00000270"), Attrs([Attr("address","0x86C"), +Attr("insn","bl #-0xbc")]), Int(1,1), +(Direct(Tid(2_202, "@__libc_start_main")),Direct(Tid(626, "%00000272"))))])), +Blk(Tid(626, "%00000272"), Attrs([Attr("address","0x870")]), Phis([]), +Defs([Def(Tid(629, "%00000275"), Attrs([Attr("address","0x870"), +Attr("insn","bl #-0x70")]), Var("R30",Imm(64)), Int(2164,64))]), +Jmps([Call(Tid(632, "%00000278"), Attrs([Attr("address","0x870"), +Attr("insn","bl #-0x70")]), Int(1,1), +(Direct(Tid(2_208, "@abort")),Direct(Tid(2_261, "%000008d5"))))])), +Blk(Tid(2_261, "%000008d5"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_262, "%000008d6"), Attrs([]), Int(1,1), +(Direct(Tid(2_209, "@call_weak_fn")),))]))])), Sub(Tid(2_208, "@abort"), + Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), +Attr("address","0x800"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(630, "@abort"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([Def(Tid(1_868, "%0000074c"), Attrs([Attr("address","0x800"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_876, "%00000754"), Attrs([Attr("address","0x804"), +Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), +Def(Tid(1_883, "%0000075b"), Attrs([Attr("address","0x808"), +Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_888, "%00000760"), + Attrs([Attr("address","0x80C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_209, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x874")]), + "call_weak_fn", Args([Arg(Tid(2_279, "%000008e7"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(634, "@call_weak_fn"), + Attrs([Attr("address","0x874")]), Phis([]), Defs([Def(Tid(638, "%0000027e"), + Attrs([Attr("address","0x874"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(646, "%00000286"), + Attrs([Attr("address","0x878"), Attr("insn","ldr x0, [x0, #0xfc0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4032,64)),LittleEndian(),64)), +Def(Tid(658, "%00000292"), Attrs([Attr("address","0x87C"), +Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(652, "%0000028c"), + Attrs([Attr("address","0x87C"), Attr("insn","cbz x0, #0x8")]), + Var("#12",Imm(1)), Direct(Tid(650, "%0000028a"))), +Goto(Tid(2_263, "%000008d7"), Attrs([]), Int(1,1), +Direct(Tid(1_430, "%00000596")))])), Blk(Tid(650, "%0000028a"), + Attrs([Attr("address","0x884")]), Phis([]), Defs([]), +Jmps([Call(Tid(663, "%00000297"), Attrs([Attr("address","0x884"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_430, "%00000596"), Attrs([Attr("address","0x880")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_433, "%00000599"), Attrs([Attr("address","0x880"), +Attr("insn","b #-0x90")]), Int(1,1), +Direct(Tid(1_431, "@__gmon_start__")))])), Blk(Tid(1_431, "@__gmon_start__"), + Attrs([Attr("address","0x7F0")]), Phis([]), +Defs([Def(Tid(1_843, "%00000733"), Attrs([Attr("address","0x7F0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_851, "%0000073b"), Attrs([Attr("address","0x7F4"), +Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), +Def(Tid(1_858, "%00000742"), Attrs([Attr("address","0x7F8"), +Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_863, "%00000747"), + Attrs([Attr("address","0x7FC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_211, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x890")]), + "deregister_tm_clones", Args([Arg(Tid(2_280, "%000008e8"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(669, "@deregister_tm_clones"), + Attrs([Attr("address","0x890")]), Phis([]), Defs([Def(Tid(673, "%000002a1"), + Attrs([Attr("address","0x890"), Attr("insn","adrp x0, #0x20000")]), + Var("R0",Imm(64)), Int(131072,64)), Def(Tid(680, "%000002a8"), + Attrs([Attr("address","0x894"), Attr("insn","add x0, x0, #0x70")]), + Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(112,64))), +Def(Tid(686, "%000002ae"), Attrs([Attr("address","0x898"), +Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), +Def(Tid(693, "%000002b5"), Attrs([Attr("address","0x89C"), +Attr("insn","add x1, x1, #0x70")]), Var("R1",Imm(64)), +PLUS(Var("R1",Imm(64)),Int(112,64))), Def(Tid(701, "%000002bd"), + Attrs([Attr("address","0x8A0"), Attr("insn","cmp x1, x0")]), + Var("#16",Imm(64)), +PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), +Def(Tid(705, "%000002c1"), Attrs([Attr("address","0x8A0"), +Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), +Extract(63,63,Var("#16",Imm(64)))), Def(Tid(708, "%000002c4"), + Attrs([Attr("address","0x8A0"), Attr("insn","cmp x1, x0")]), + Var("VF",Imm(1)), +OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), +Def(Tid(711, "%000002c7"), Attrs([Attr("address","0x8A0"), +Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), +EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(714, "%000002ca"), + Attrs([Attr("address","0x8A0"), Attr("insn","cmp x1, x0")]), + Var("CF",Imm(1)), +OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), +Def(Tid(728, "%000002d8"), Attrs([Attr("address","0x8A4"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), +Jmps([Goto(Tid(722, "%000002d2"), Attrs([Attr("address","0x8A4"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), +Direct(Tid(720, "%000002d0"))), Goto(Tid(2_264, "%000008d8"), Attrs([]), + Int(1,1), Direct(Tid(1_391, "%0000056f")))])), Blk(Tid(1_391, "%0000056f"), + Attrs([Attr("address","0x8A8")]), Phis([]), +Defs([Def(Tid(1_395, "%00000573"), Attrs([Attr("address","0x8A8"), +Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), +Def(Tid(1_403, "%0000057b"), Attrs([Attr("address","0x8AC"), +Attr("insn","ldr x1, [x1, #0xfb0]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4016,64)),LittleEndian(),64)), +Def(Tid(1_414, "%00000586"), Attrs([Attr("address","0x8B0"), +Attr("insn","cbz x1, #0xc")]), Var("#78",Imm(1)), +EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_408, "%00000580"), + Attrs([Attr("address","0x8B0"), Attr("insn","cbz x1, #0xc")]), + Var("#78",Imm(1)), Direct(Tid(720, "%000002d0"))), +Goto(Tid(2_265, "%000008d9"), Attrs([]), Int(1,1), +Direct(Tid(1_417, "%00000589")))])), Blk(Tid(720, "%000002d0"), + Attrs([Attr("address","0x8BC")]), Phis([]), Defs([]), +Jmps([Call(Tid(733, "%000002dd"), Attrs([Attr("address","0x8BC"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_417, "%00000589"), Attrs([Attr("address","0x8B4")]), Phis([]), +Defs([Def(Tid(1_423, "%0000058f"), Attrs([Attr("address","0x8B4"), +Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), +Jmps([Call(Tid(1_428, "%00000594"), Attrs([Attr("address","0x8B8"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_214, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x950")]), "frame_dummy", Args([Arg(Tid(2_281, "%000008e9"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(909, "@frame_dummy"), + Attrs([Attr("address","0x950")]), Phis([]), Defs([]), +Jmps([Call(Tid(911, "%0000038f"), Attrs([Attr("address","0x950"), +Attr("insn","b #-0x90")]), Int(1,1), +(Direct(Tid(2_221, "@register_tm_clones")),))]))])), Sub(Tid(2_215, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x820"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_282, "%000008ea"), + Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), +Both())]), Blks([Blk(Tid(1_244, "@free"), Attrs([Attr("address","0x820")]), + Phis([]), Defs([Def(Tid(1_918, "%0000077e"), Attrs([Attr("address","0x820"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_926, "%00000786"), Attrs([Attr("address","0x824"), +Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), +Def(Tid(1_933, "%0000078d"), Attrs([Attr("address","0x828"), +Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_938, "%00000792"), + Attrs([Attr("address","0x82C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_216, "@main"), + Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), +Attr("address","0x954")]), "main", Args([Arg(Tid(2_283, "%000008eb"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("main_argc",Imm(32)), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_284, "%000008ec"), + Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), +Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), +Var("R1",Imm(64)), Both()), Arg(Tid(2_285, "%000008ed"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("main_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(913, "@main"), + Attrs([Attr("address","0x954")]), Phis([]), Defs([Def(Tid(918, "%00000396"), + Attrs([Attr("address","0x954"), Attr("insn","sub sp, sp, #0x40")]), + Var("R31",Imm(64)), MINUS(Var("R31",Imm(64)),Int(64,64))), +Def(Tid(926, "%0000039e"), Attrs([Attr("address","0x958"), +Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("#42",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(931, "%000003a3"), + Attrs([Attr("address","0x958"), Attr("insn","stp x29, x30, [sp, #0x30]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(936, "%000003a8"), Attrs([Attr("address","0x958"), +Attr("insn","stp x29, x30, [sp, #0x30]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(943, "%000003af"), Attrs([Attr("address","0x95C"), +Attr("insn","add x29, sp, #0x30")]), Var("R29",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(48,64))), Def(Tid(949, "%000003b5"), + Attrs([Attr("address","0x960"), Attr("insn","adrp x8, #0x1f000")]), + Var("R8",Imm(64)), Int(126976,64)), Def(Tid(957, "%000003bd"), + Attrs([Attr("address","0x964"), Attr("insn","ldr x8, [x8, #0xfc8]")]), + Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R8",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(965, "%000003c5"), Attrs([Attr("address","0x968"), +Attr("insn","str x8, [sp, #0x18]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(973, "%000003cd"), Attrs([Attr("address","0x96C"), +Attr("insn","stur xzr, [x29, #-0x8]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(981, "%000003d5"), Attrs([Attr("address","0x970"), +Attr("insn","stur xzr, [x29, #-0x10]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551600,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(987, "%000003db"), Attrs([Attr("address","0x974"), +Attr("insn","mov x0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), +Def(Tid(992, "%000003e0"), Attrs([Attr("address","0x978"), +Attr("insn","bl #-0x1a8")]), Var("R30",Imm(64)), Int(2428,64))]), +Jmps([Call(Tid(995, "%000003e3"), Attrs([Attr("address","0x978"), +Attr("insn","bl #-0x1a8")]), Int(1,1), +(Direct(Tid(2_217, "@malloc")),Direct(Tid(997, "%000003e5"))))])), +Blk(Tid(997, "%000003e5"), Attrs([Attr("address","0x97C")]), Phis([]), +Defs([Def(Tid(1_003, "%000003eb"), Attrs([Attr("address","0x97C"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_011, "%000003f3"), Attrs([Attr("address","0x980"), +Attr("insn","str x0, [x8]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("R8",Imm(64)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_019, "%000003fb"), Attrs([Attr("address","0x984"), +Attr("insn","ldr x8, [x8]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_027, "%00000403"), Attrs([Attr("address","0x988"), +Attr("insn","str x8, [sp, #0x8]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_033, "%00000409"), Attrs([Attr("address","0x98C"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_041, "%00000411"), Attrs([Attr("address","0x990"), +Attr("insn","ldr x0, [x0, #0xfd0]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), +Def(Tid(1_049, "%00000419"), Attrs([Attr("address","0x994"), +Attr("insn","str x0, [sp]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("R31",Imm(64)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_054, "%0000041e"), Attrs([Attr("address","0x998"), +Attr("insn","bl #-0x1f8")]), Var("R30",Imm(64)), Int(2460,64))]), +Jmps([Call(Tid(1_057, "%00000421"), Attrs([Attr("address","0x998"), +Attr("insn","bl #-0x1f8")]), Int(1,1), +(Direct(Tid(2_224, "@strlen")),Direct(Tid(1_059, "%00000423"))))])), +Blk(Tid(1_059, "%00000423"), Attrs([Attr("address","0x99C")]), Phis([]), +Defs([Def(Tid(1_065, "%00000429"), Attrs([Attr("address","0x99C"), +Attr("insn","ldr x1, [sp]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(1_073, "%00000431"), Attrs([Attr("address","0x9A0"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_081, "%00000439"), Attrs([Attr("address","0x9A4"), +Attr("insn","ldr x0, [sp, #0x8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_086, "%0000043e"), Attrs([Attr("address","0x9A8"), +Attr("insn","bl #-0x218")]), Var("R30",Imm(64)), Int(2476,64))]), +Jmps([Call(Tid(1_089, "%00000441"), Attrs([Attr("address","0x9A8"), +Attr("insn","bl #-0x218")]), Int(1,1), +(Direct(Tid(2_218, "@memcpy")),Direct(Tid(1_091, "%00000443"))))])), +Blk(Tid(1_091, "%00000443"), Attrs([Attr("address","0x9AC")]), Phis([]), +Defs([Def(Tid(1_097, "%00000449"), Attrs([Attr("address","0x9AC"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_105, "%00000451"), Attrs([Attr("address","0x9B0"), +Attr("insn","ldr x0, [x8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_110, "%00000456"), Attrs([Attr("address","0x9B4"), +Attr("insn","bl #-0x1a4")]), Var("R30",Imm(64)), Int(2488,64))]), +Jmps([Call(Tid(1_113, "%00000459"), Attrs([Attr("address","0x9B4"), +Attr("insn","bl #-0x1a4")]), Int(1,1), +(Direct(Tid(2_220, "@puts")),Direct(Tid(1_115, "%0000045b"))))])), +Blk(Tid(1_115, "%0000045b"), Attrs([Attr("address","0x9B8")]), Phis([]), +Defs([Def(Tid(1_121, "%00000461"), Attrs([Attr("address","0x9B8"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_129, "%00000469"), Attrs([Attr("address","0x9BC"), +Attr("insn","ldr x9, [x8]")]), Var("R9",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_136, "%00000470"), Attrs([Attr("address","0x9C0"), +Attr("insn","add x9, x9, #0x4")]), Var("R9",Imm(64)), +PLUS(Var("R9",Imm(64)),Int(4,64))), Def(Tid(1_144, "%00000478"), + Attrs([Attr("address","0x9C4"), Attr("insn","stur x9, [x29, #-0x8]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),Var("R9",Imm(64)),LittleEndian(),64)), +Def(Tid(1_152, "%00000480"), Attrs([Attr("address","0x9C8"), +Attr("insn","ldur x9, [x29, #-0x8]")]), Var("R9",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R29",Imm(64)),Int(18446744073709551608,64)),LittleEndian(),64)), +Def(Tid(1_160, "%00000488"), Attrs([Attr("address","0x9CC"), +Attr("insn","strb wzr, [x9]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("R9",Imm(64)),Int(0,8),BigEndian(),8)), +Def(Tid(1_168, "%00000490"), Attrs([Attr("address","0x9D0"), +Attr("insn","ldr x9, [x8]")]), Var("R9",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_176, "%00000498"), Attrs([Attr("address","0x9D4"), +Attr("insn","str x9, [sp, #0x10]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R9",Imm(64)),LittleEndian(),64)), +Def(Tid(1_184, "%000004a0"), Attrs([Attr("address","0x9D8"), +Attr("insn","ldr x0, [x8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_189, "%000004a5"), Attrs([Attr("address","0x9DC"), +Attr("insn","bl #-0x23c")]), Var("R30",Imm(64)), Int(2528,64))]), +Jmps([Call(Tid(1_191, "%000004a7"), Attrs([Attr("address","0x9DC"), +Attr("insn","bl #-0x23c")]), Int(1,1), +(Direct(Tid(2_224, "@strlen")),Direct(Tid(1_193, "%000004a9"))))])), +Blk(Tid(1_193, "%000004a9"), Attrs([Attr("address","0x9E0")]), Phis([]), +Defs([Def(Tid(1_199, "%000004af"), Attrs([Attr("address","0x9E0"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_207, "%000004b7"), Attrs([Attr("address","0x9E4"), +Attr("insn","ldr x0, [sp, #0x10]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_214, "%000004be"), Attrs([Attr("address","0x9E8"), +Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), +Def(Tid(1_219, "%000004c3"), Attrs([Attr("address","0x9EC"), +Attr("insn","bl #-0x20c")]), Var("R30",Imm(64)), Int(2544,64))]), +Jmps([Call(Tid(1_222, "%000004c6"), Attrs([Attr("address","0x9EC"), +Attr("insn","bl #-0x20c")]), Int(1,1), +(Direct(Tid(2_219, "@memset")),Direct(Tid(1_224, "%000004c8"))))])), +Blk(Tid(1_224, "%000004c8"), Attrs([Attr("address","0x9F0")]), Phis([]), +Defs([Def(Tid(1_230, "%000004ce"), Attrs([Attr("address","0x9F0"), +Attr("insn","ldr x8, [sp, #0x18]")]), Var("R8",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_238, "%000004d6"), Attrs([Attr("address","0x9F4"), +Attr("insn","ldr x0, [x8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R8",Imm(64)),LittleEndian(),64)), +Def(Tid(1_243, "%000004db"), Attrs([Attr("address","0x9F8"), +Attr("insn","bl #-0x1d8")]), Var("R30",Imm(64)), Int(2556,64))]), +Jmps([Call(Tid(1_246, "%000004de"), Attrs([Attr("address","0x9F8"), +Attr("insn","bl #-0x1d8")]), Int(1,1), +(Direct(Tid(2_215, "@free")),Direct(Tid(1_248, "%000004e0"))))])), +Blk(Tid(1_248, "%000004e0"), Attrs([Attr("address","0x9FC")]), Phis([]), +Defs([Def(Tid(1_255, "%000004e7"), Attrs([Attr("address","0x9FC"), +Attr("insn","mov w0, wzr")]), Var("R0",Imm(64)), Int(0,32)), +Def(Tid(1_264, "%000004f0"), Attrs([Attr("address","0xA00"), +Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(48,64)),LittleEndian(),64)), +Def(Tid(1_268, "%000004f4"), Attrs([Attr("address","0xA00"), +Attr("insn","ldp x29, x30, [sp, #0x30]")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(56,64)),LittleEndian(),64)), +Def(Tid(1_275, "%000004fb"), Attrs([Attr("address","0xA04"), +Attr("insn","add sp, sp, #0x40")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_280, "%00000500"), + Attrs([Attr("address","0xA08"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_217, "@malloc"), + Attrs([Attr("c.proto","void* (*)(unsigned long size)"), +Attr("address","0x7D0"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_286, "%000008ee"), Attrs([Attr("alloc-size","()"), +Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), +Var("R0",Imm(64)), In()), Arg(Tid(2_287, "%000008ef"), + Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(993, "@malloc"), Attrs([Attr("address","0x7D0")]), Phis([]), +Defs([Def(Tid(1_793, "%00000701"), Attrs([Attr("address","0x7D0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_801, "%00000709"), Attrs([Attr("address","0x7D4"), +Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), +Def(Tid(1_808, "%00000710"), Attrs([Attr("address","0x7D8"), +Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_813, "%00000715"), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_218, "@memcpy"), + Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), +Attr("address","0x790"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_288, "%000008f0"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), +Var("R0",Imm(64)), Both()), Arg(Tid(2_289, "%000008f1"), + Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), + Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), +Arg(Tid(2_290, "%000008f2"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), + Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), +Arg(Tid(2_291, "%000008f3"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_087, "@memcpy"), Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_693, "%0000069d"), Attrs([Attr("address","0x790"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_701, "%000006a5"), Attrs([Attr("address","0x794"), +Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), +Def(Tid(1_708, "%000006ac"), Attrs([Attr("address","0x798"), +Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), +Var("R16",Imm(64)))]), Jmps([Call(Tid(1_713, "%000006b1"), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_219, "@memset"), + Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), +Attr("address","0x7E0"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_292, "%000008f4"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), +Both()), Arg(Tid(2_293, "%000008f5"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("memset_c",Imm(32)), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_294, "%000008f6"), + Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), +In()), Arg(Tid(2_295, "%000008f7"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_220, "@memset"), Attrs([Attr("address","0x7E0")]), Phis([]), +Defs([Def(Tid(1_818, "%0000071a"), Attrs([Attr("address","0x7E0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_826, "%00000722"), Attrs([Attr("address","0x7E4"), +Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), +Def(Tid(1_833, "%00000729"), Attrs([Attr("address","0x7E8"), +Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_838, "%0000072e"), + Attrs([Attr("address","0x7EC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_220, "@puts"), + Attrs([Attr("c.proto","signed (*)( const char* s)"), +Attr("address","0x810"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_296, "%000008f8"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), + Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_297, "%000008f9"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(1_111, "@puts"), Attrs([Attr("address","0x810")]), Phis([]), +Defs([Def(Tid(1_893, "%00000765"), Attrs([Attr("address","0x810"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_901, "%0000076d"), Attrs([Attr("address","0x814"), +Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), +Def(Tid(1_908, "%00000774"), Attrs([Attr("address","0x818"), +Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_913, "%00000779"), + Attrs([Attr("address","0x81C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_221, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + "register_tm_clones", Args([Arg(Tid(2_298, "%000008fa"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(735, "@register_tm_clones"), Attrs([Attr("address","0x8C0")]), + Phis([]), Defs([Def(Tid(739, "%000002e3"), Attrs([Attr("address","0x8C0"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(746, "%000002ea"), Attrs([Attr("address","0x8C4"), +Attr("insn","add x0, x0, #0x70")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(112,64))), Def(Tid(752, "%000002f0"), + Attrs([Attr("address","0x8C8"), Attr("insn","adrp x1, #0x20000")]), + Var("R1",Imm(64)), Int(131072,64)), Def(Tid(759, "%000002f7"), + Attrs([Attr("address","0x8CC"), Attr("insn","add x1, x1, #0x70")]), + Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(112,64))), +Def(Tid(767, "%000002ff"), Attrs([Attr("address","0x8D0"), +Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), +MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(774, "%00000306"), + Attrs([Attr("address","0x8D4"), Attr("insn","lsr x2, x1, #63")]), + Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), +Def(Tid(782, "%0000030e"), Attrs([Attr("address","0x8D8"), +Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), +PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), +Def(Tid(789, "%00000315"), Attrs([Attr("address","0x8DC"), +Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), +RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(801, "%00000321"), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x1, #0x18")]), + Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), +Jmps([Goto(Tid(795, "%0000031b"), Attrs([Attr("address","0x8E0"), +Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), +Direct(Tid(793, "%00000319"))), Goto(Tid(2_266, "%000008da"), Attrs([]), + Int(1,1), Direct(Tid(1_352, "%00000548")))])), Blk(Tid(1_352, "%00000548"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_356, "%0000054c"), Attrs([Attr("address","0x8E4"), +Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), +Def(Tid(1_364, "%00000554"), Attrs([Attr("address","0x8E8"), +Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), +Def(Tid(1_375, "%0000055f"), Attrs([Attr("address","0x8EC"), +Attr("insn","cbz x2, #0xc")]), Var("#73",Imm(1)), +EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_369, "%00000559"), + Attrs([Attr("address","0x8EC"), Attr("insn","cbz x2, #0xc")]), + Var("#73",Imm(1)), Direct(Tid(793, "%00000319"))), +Goto(Tid(2_267, "%000008db"), Attrs([]), Int(1,1), +Direct(Tid(1_378, "%00000562")))])), Blk(Tid(793, "%00000319"), + Attrs([Attr("address","0x8F8")]), Phis([]), Defs([]), +Jmps([Call(Tid(806, "%00000326"), Attrs([Attr("address","0x8F8"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_378, "%00000562"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_384, "%00000568"), Attrs([Attr("address","0x8F0"), +Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), +Jmps([Call(Tid(1_389, "%0000056d"), Attrs([Attr("address","0x8F4"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_224, "@strlen"), + Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), +Attr("pure","()"), Attr("address","0x7A0"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_299, "%000008fb"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), +Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), +In()), Arg(Tid(2_300, "%000008fc"), + Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), +Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_055, "@strlen"), + Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_718, "%000006b6"), Attrs([Attr("address","0x7A0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_726, "%000006be"), Attrs([Attr("address","0x7A4"), +Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_733, "%000006c5"), Attrs([Attr("address","0x7A8"), +Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_738, "%000006ca"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.bir b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.bir new file mode 100644 index 000000000..eedb3fa69 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.bir @@ -0,0 +1,363 @@ +000008dc: program +00000895: sub __cxa_finalize(__cxa_finalize_result) +000008dd: __cxa_finalize_result :: out u32 = low:32[R0] + +00000544: +000006e8: R16 := 0x20000 +000006f0: R17 := mem[R16 + 0x18, el]:u64 +000006f7: R16 := R16 + 0x18 +000006fc: call R17 with noreturn + +00000896: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +000008de: __do_global_dtors_aux_result :: out u32 = low:32[R0] + +0000032a: +00000331: #34 := R31 - 0x20 +00000336: mem := mem with [#34, el]:u64 <- R29 +0000033b: mem := mem with [#34 + 8, el]:u64 <- R30 +0000033f: R31 := #34 +00000346: R29 := R31 +0000034e: mem := mem with [R31 + 0x10, el]:u64 <- R19 +00000354: R19 := 0x20000 +0000035d: R0 := pad:32[mem[R19 + 0x70]] +00000369: #36 := ~~0:0[R0] +00000363: when #36 goto %00000361 +000008d2: goto %00000502 + +00000502: +00000506: R0 := 0x1F000 +0000050e: R0 := mem[R0 + 0xFB8, el]:u64 +0000051a: #70 := R0 = 0 +00000514: when #70 goto %00000512 +000008d3: goto %00000532 + +00000532: +00000536: R0 := 0x20000 +0000053e: R0 := mem[R0 + 0x58, el]:u64 +00000543: R30 := 0x930 +00000546: call @__cxa_finalize with return %00000512 + +00000512: +0000051f: R30 := 0x934 +00000521: call @deregister_tm_clones with return %00000523 + +00000523: +00000528: R0 := 1 +00000530: mem := mem with [R19 + 0x70] <- low:8[31:0[R0]] +000008d4: goto %00000361 + +00000361: +00000371: R19 := mem[R31 + 0x10, el]:u64 +0000037b: R29 := mem[R31, el]:u64 +0000037f: R30 := mem[R31 + 8, el]:u64 +00000382: R31 := R31 + 0x20 +00000387: call R30 with noreturn + +0000089a: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +000008df: __libc_start_main_main :: in u64 = R0 +000008e0: __libc_start_main_arg2 :: in u32 = low:32[R1] +000008e1: __libc_start_main_arg3 :: in out u64 = R2 +000008e2: __libc_start_main_auxv :: in out u64 = R3 +000008e3: __libc_start_main_result :: out u32 = low:32[R0] + +0000026e: +000006cf: R16 := 0x20000 +000006d7: R17 := mem[R16 + 0x10, el]:u64 +000006de: R16 := R16 + 0x10 +000006e3: call R17 with noreturn + +0000089b: sub _fini(_fini_result) +000008e4: _fini_result :: out u32 = low:32[R0] + +00000020: +00000029: #3 := R31 - 0x10 +0000002e: mem := mem with [#3, el]:u64 <- R29 +00000033: mem := mem with [#3 + 8, el]:u64 <- R30 +00000037: R31 := #3 +0000003e: R29 := R31 +00000048: R29 := mem[R31, el]:u64 +0000004c: R30 := mem[R31 + 8, el]:u64 +0000004f: R31 := R31 + 0x10 +00000054: call R30 with noreturn + +0000089c: sub _init(_init_result) +000008e5: _init_result :: out u32 = low:32[R0] + +000007ae: +000007b7: #101 := R31 - 0x10 +000007bc: mem := mem with [#101, el]:u64 <- R29 +000007c1: mem := mem with [#101 + 8, el]:u64 <- R30 +000007c5: R31 := #101 +000007cc: R29 := R31 +000007d1: R30 := 0x768 +000007d3: call @call_weak_fn with return %000007d5 + +000007d5: +000007dd: R29 := mem[R31, el]:u64 +000007e1: R30 := mem[R31 + 8, el]:u64 +000007e4: R31 := R31 + 0x10 +000007e9: call R30 with noreturn + +0000089d: sub _start(_start_result) +000008e6: _start_result :: out u32 = low:32[R0] + +00000224: +0000022a: R29 := 0 +00000230: R30 := 0 +00000238: R5 := R0 +00000240: R1 := mem[R31, el]:u64 +00000247: R2 := R31 + 8 +0000024e: R6 := R31 +00000254: R0 := 0x1F000 +0000025c: R0 := mem[R0 + 0xFD8, el]:u64 +00000262: R3 := 0 +00000268: R4 := 0 +0000026d: R30 := 0x870 +00000270: call @__libc_start_main with return %00000272 + +00000272: +00000275: R30 := 0x874 +00000278: call @abort with return %000008d5 + +000008d5: +000008d6: call @call_weak_fn with noreturn + +000008a0: sub abort() + + +00000276: +0000074c: R16 := 0x20000 +00000754: R17 := mem[R16 + 0x38, el]:u64 +0000075b: R16 := R16 + 0x38 +00000760: call R17 with noreturn + +000008a1: sub call_weak_fn(call_weak_fn_result) +000008e7: call_weak_fn_result :: out u32 = low:32[R0] + +0000027a: +0000027e: R0 := 0x1F000 +00000286: R0 := mem[R0 + 0xFC0, el]:u64 +00000292: #12 := R0 = 0 +0000028c: when #12 goto %0000028a +000008d7: goto %00000596 + +0000028a: +00000297: call R30 with noreturn + +00000596: +00000599: goto @__gmon_start__ + +00000597: +00000733: R16 := 0x20000 +0000073b: R17 := mem[R16 + 0x30, el]:u64 +00000742: R16 := R16 + 0x30 +00000747: call R17 with noreturn + +000008a3: sub deregister_tm_clones(deregister_tm_clones_result) +000008e8: deregister_tm_clones_result :: out u32 = low:32[R0] + +0000029d: +000002a1: R0 := 0x20000 +000002a8: R0 := R0 + 0x70 +000002ae: R1 := 0x20000 +000002b5: R1 := R1 + 0x70 +000002bd: #16 := 1 + ~R0 + R1 +000002c1: NF := 63:63[#16] +000002c4: VF := 63:63[R1] & 63:63[~R0] & ~63:63[#16] | ~63:63[R1] & + ~63:63[~R0] & 63:63[#16] +000002c7: ZF := #16 = 0 +000002ca: CF := 63:63[R1] & 63:63[~R0] | 63:63[~R0] & ~63:63[#16] | 63:63[R1] + & ~63:63[#16] +000002d8: #21 := ZF +000002d2: when #21 goto %000002d0 +000008d8: goto %0000056f + +0000056f: +00000573: R1 := 0x1F000 +0000057b: R1 := mem[R1 + 0xFB0, el]:u64 +00000586: #78 := R1 = 0 +00000580: when #78 goto %000002d0 +000008d9: goto %00000589 + +000002d0: +000002dd: call R30 with noreturn + +00000589: +0000058f: R16 := R1 +00000594: call R16 with noreturn + +000008a6: sub frame_dummy(frame_dummy_result) +000008e9: frame_dummy_result :: out u32 = low:32[R0] + +0000038d: +0000038f: call @register_tm_clones with noreturn + +000008a7: sub free(free_ptr) +000008ea: free_ptr :: in out u64 = R0 + +000004dc: +0000077e: R16 := 0x20000 +00000786: R17 := mem[R16 + 0x48, el]:u64 +0000078d: R16 := R16 + 0x48 +00000792: call R17 with noreturn + +000008a8: sub main(main_argc, main_argv, main_result) +000008eb: main_argc :: in u32 = low:32[R0] +000008ec: main_argv :: in out u64 = R1 +000008ed: main_result :: out u32 = low:32[R0] + +00000391: +00000396: R31 := R31 - 0x40 +0000039e: #42 := R31 + 0x30 +000003a3: mem := mem with [#42, el]:u64 <- R29 +000003a8: mem := mem with [#42 + 8, el]:u64 <- R30 +000003af: R29 := R31 + 0x30 +000003b5: R8 := 0x1F000 +000003bd: R8 := mem[R8 + 0xFC8, el]:u64 +000003c5: mem := mem with [R31 + 0x18, el]:u64 <- R8 +000003cd: mem := mem with [R29 - 8, el]:u64 <- 0 +000003d5: mem := mem with [R29 - 0x10, el]:u64 <- 0 +000003db: R0 := 0xB +000003e0: R30 := 0x97C +000003e3: call @malloc with return %000003e5 + +000003e5: +000003eb: R8 := mem[R31 + 0x18, el]:u64 +000003f3: mem := mem with [R8, el]:u64 <- R0 +000003fb: R8 := mem[R8, el]:u64 +00000403: mem := mem with [R31 + 8, el]:u64 <- R8 +00000409: R0 := 0x1F000 +00000411: R0 := mem[R0 + 0xFD0, el]:u64 +00000419: mem := mem with [R31, el]:u64 <- R0 +0000041e: R30 := 0x99C +00000421: call @strlen with return %00000423 + +00000423: +00000429: R1 := mem[R31, el]:u64 +00000431: R2 := R0 +00000439: R0 := mem[R31 + 8, el]:u64 +0000043e: R30 := 0x9AC +00000441: call @memcpy with return %00000443 + +00000443: +00000449: R8 := mem[R31 + 0x18, el]:u64 +00000451: R0 := mem[R8, el]:u64 +00000456: R30 := 0x9B8 +00000459: call @puts with return %0000045b + +0000045b: +00000461: R8 := mem[R31 + 0x18, el]:u64 +00000469: R9 := mem[R8, el]:u64 +00000470: R9 := R9 + 4 +00000478: mem := mem with [R29 - 8, el]:u64 <- R9 +00000480: R9 := mem[R29 - 8, el]:u64 +00000488: mem := mem with [R9] <- 0 +00000490: R9 := mem[R8, el]:u64 +00000498: mem := mem with [R31 + 0x10, el]:u64 <- R9 +000004a0: R0 := mem[R8, el]:u64 +000004a5: R30 := 0x9E0 +000004a7: call @strlen with return %000004a9 + +000004a9: +000004af: R2 := R0 +000004b7: R0 := mem[R31 + 0x10, el]:u64 +000004be: R1 := 1 +000004c3: R30 := 0x9F0 +000004c6: call @memset with return %000004c8 + +000004c8: +000004ce: R8 := mem[R31 + 0x18, el]:u64 +000004d6: R0 := mem[R8, el]:u64 +000004db: R30 := 0x9FC +000004de: call @free with return %000004e0 + +000004e0: +000004e7: R0 := 0 +000004f0: R29 := mem[R31 + 0x30, el]:u64 +000004f4: R30 := mem[R31 + 0x38, el]:u64 +000004fb: R31 := R31 + 0x40 +00000500: call R30 with noreturn + +000008a9: sub malloc(malloc_size, malloc_result) +000008ee: malloc_size :: in u64 = R0 +000008ef: malloc_result :: out u64 = R0 + +000003e1: +00000701: R16 := 0x20000 +00000709: R17 := mem[R16 + 0x20, el]:u64 +00000710: R16 := R16 + 0x20 +00000715: call R17 with noreturn + +000008aa: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +000008f0: memcpy_dst :: in out u64 = R0 +000008f1: memcpy_src :: in out u64 = R1 +000008f2: memcpy_n :: in u64 = R2 +000008f3: memcpy_result :: out u64 = R0 + +0000043f: +0000069d: R16 := 0x20000 +000006a5: R17 := mem[R16, el]:u64 +000006ac: R16 := R16 +000006b1: call R17 with noreturn + +000008ab: sub memset(memset_buf, memset_c, memset_n, memset_result) +000008f4: memset_buf :: in out u64 = R0 +000008f5: memset_c :: in u32 = low:32[R1] +000008f6: memset_n :: in u64 = R2 +000008f7: memset_result :: out u64 = R0 + +000004c4: +0000071a: R16 := 0x20000 +00000722: R17 := mem[R16 + 0x28, el]:u64 +00000729: R16 := R16 + 0x28 +0000072e: call R17 with noreturn + +000008ac: sub puts(puts_s, puts_result) +000008f8: puts_s :: in u64 = R0 +000008f9: puts_result :: out u32 = low:32[R0] + +00000457: +00000765: R16 := 0x20000 +0000076d: R17 := mem[R16 + 0x40, el]:u64 +00000774: R16 := R16 + 0x40 +00000779: call R17 with noreturn + +000008ad: sub register_tm_clones(register_tm_clones_result) +000008fa: register_tm_clones_result :: out u32 = low:32[R0] + +000002df: +000002e3: R0 := 0x20000 +000002ea: R0 := R0 + 0x70 +000002f0: R1 := 0x20000 +000002f7: R1 := R1 + 0x70 +000002ff: R1 := R1 - R0 +00000306: R2 := R1 >> 0x3F +0000030e: R1 := R2 + (R1 ~>> 3) +00000315: R1 := R1 >> 1 +00000321: #30 := R1 = 0 +0000031b: when #30 goto %00000319 +000008da: goto %00000548 + +00000548: +0000054c: R2 := 0x1F000 +00000554: R2 := mem[R2 + 0xFE0, el]:u64 +0000055f: #73 := R2 = 0 +00000559: when #73 goto %00000319 +000008db: goto %00000562 + +00000319: +00000326: call R30 with noreturn + +00000562: +00000568: R16 := R2 +0000056d: call R16 with noreturn + +000008b0: sub strlen(strlen_s, strlen_result) +000008fb: strlen_s :: in u64 = R0 +000008fc: strlen_result :: out u64 = R0 + +0000041f: +000006b6: R16 := 0x20000 +000006be: R17 := mem[R16 + 8, el]:u64 +000006c5: R16 := R16 + 8 +000006ca: call R17 with noreturn diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.expected b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.expected new file mode 100644 index 000000000..8931fd7be --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.expected @@ -0,0 +1,1068 @@ +var {:extern} Gamma_R0: bool; +var {:extern} Gamma_R1: bool; +var {:extern} Gamma_R16: bool; +var {:extern} Gamma_R17: bool; +var {:extern} Gamma_R2: bool; +var {:extern} Gamma_R29: bool; +var {:extern} Gamma_R30: bool; +var {:extern} Gamma_R31: bool; +var {:extern} Gamma_R8: bool; +var {:extern} Gamma_R9: bool; +var {:extern} Gamma_malloc_base: [bv64]bool; +var {:extern} Gamma_malloc_count: [bv64]bool; +var {:extern} Gamma_malloc_end: [bv64]bool; +var {:extern} Gamma_mem: [bv64]bool; +var {:extern} Gamma_stack: [bv64]bool; +var {:extern} R0: bv64; +var {:extern} R1: bv64; +var {:extern} R16: bv64; +var {:extern} R17: bv64; +var {:extern} R2: bv64; +var {:extern} R29: bv64; +var {:extern} R30: bv64; +var {:extern} R31: bv64; +var {:extern} R8: bv64; +var {:extern} R9: bv64; +var {:extern} malloc_base: [bv64]bv8; +var {:extern} malloc_count: [bv64]bv8; +var {:extern} malloc_end: [bv64]bv8; +var {:extern} mem: [bv64]bv8; +var {:extern} stack: [bv64]bv8; +const {:extern} $buf_addr: bv64; +axiom ($buf_addr == 131192bv64); +const {:extern} $password_addr: bv64; +axiom ($password_addr == 131168bv64); +const {:extern} $stext_addr: bv64; +axiom ($stext_addr == 131169bv64); +function {:extern} L(memory: [bv64]bv8, index: bv64) returns (bool) { + false +} + +function {:extern} {:bvbuiltin "bvadd"} bvadd64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvsub"} bvsub64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvuge"} bvuge64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvugt"} bvugt64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvule"} bvule64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvult"} bvult64(bv64, bv64) returns (bool); +function {:extern} gamma_load32(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))) +} + +function {:extern} gamma_load64(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 7bv64)] && (gammaMap[bvadd64(index, 6bv64)] && (gammaMap[bvadd64(index, 5bv64)] && (gammaMap[bvadd64(index, 4bv64)] && (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))))))) +} + +function {:extern} gamma_load8(gammaMap: [bv64]bool, index: bv64) returns (bool) { + gammaMap[index] +} + +function {:extern} gamma_store64(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value][bvadd64(index, 1bv64) := value][bvadd64(index, 2bv64) := value][bvadd64(index, 3bv64) := value][bvadd64(index, 4bv64) := value][bvadd64(index, 5bv64) := value][bvadd64(index, 6bv64) := value][bvadd64(index, 7bv64) := value] +} + +function {:extern} gamma_store8(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value] +} + +function {:extern} memory_load64_le(memory: [bv64]bv8, index: bv64) returns (bv64) { + (memory[bvadd64(index, 7bv64)] ++ (memory[bvadd64(index, 6bv64)] ++ (memory[bvadd64(index, 5bv64)] ++ (memory[bvadd64(index, 4bv64)] ++ (memory[bvadd64(index, 3bv64)] ++ (memory[bvadd64(index, 2bv64)] ++ (memory[bvadd64(index, 1bv64)] ++ memory[index]))))))) +} + +function {:extern} memory_load8_le(memory: [bv64]bv8, index: bv64) returns (bv8) { + memory[index] +} + +function {:extern} memory_store64_le(memory: [bv64]bv8, index: bv64, value: bv64) returns ([bv64]bv8) { + memory[index := value[8:0]][bvadd64(index, 1bv64) := value[16:8]][bvadd64(index, 2bv64) := value[24:16]][bvadd64(index, 3bv64) := value[32:24]][bvadd64(index, 4bv64) := value[40:32]][bvadd64(index, 5bv64) := value[48:40]][bvadd64(index, 6bv64) := value[56:48]][bvadd64(index, 7bv64) := value[64:56]] +} + +function {:extern} memory_store8_be(memory: [bv64]bv8, index: bv64, value: bv8) returns ([bv64]bv8) { + memory[index := value[8:0]] +} + +procedure {:extern} rely(); + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); + free ensures (memory_load8_le(mem, 2592bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2593bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2594bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2595bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130472bv64) == 80bv8); + free ensures (memory_load8_le(mem, 130473bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130474bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130476bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130477bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130478bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130479bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 120bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 97bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 84bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130480bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130481bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130482bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130483bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130484bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130486bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure {:extern} rely_transitive() + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); +{ + call rely(); + call rely(); +} + +procedure {:extern} rely_reflexive(); + +procedure {:extern} guarantee_reflexive(); + modifies Gamma_mem, mem; + +procedure #free(); + modifies Gamma_R16, Gamma_R17, R16, R17; + requires (forall i : int, j: bv64 :: (malloc_base[i] == R0 && bvuge64(j, R0) && bvult64(j, malloc_end[i])) ==> Gamma_mem[j]); + free requires (memory_load8_le(mem, 2592bv64) == 1bv8); + free requires (memory_load8_le(mem, 2593bv64) == 0bv8); + free requires (memory_load8_le(mem, 2594bv64) == 2bv8); + free requires (memory_load8_le(mem, 2595bv64) == 0bv8); + free requires (memory_load8_le(mem, 130472bv64) == 80bv8); + free requires (memory_load8_le(mem, 130473bv64) == 9bv8); + free requires (memory_load8_le(mem, 130474bv64) == 0bv8); + free requires (memory_load8_le(mem, 130475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130476bv64) == 0bv8); + free requires (memory_load8_le(mem, 130477bv64) == 0bv8); + free requires (memory_load8_le(mem, 130478bv64) == 0bv8); + free requires (memory_load8_le(mem, 130479bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 120bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 97bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 84bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 130480bv64) == 0bv8); + free requires (memory_load8_le(mem, 130481bv64) == 9bv8); + free requires (memory_load8_le(mem, 130482bv64) == 0bv8); + free requires (memory_load8_le(mem, 130483bv64) == 0bv8); + free requires (memory_load8_le(mem, 130484bv64) == 0bv8); + free requires (memory_load8_le(mem, 130485bv64) == 0bv8); + free requires (memory_load8_le(mem, 130486bv64) == 0bv8); + free requires (memory_load8_le(mem, 130487bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2592bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2593bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2594bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2595bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130472bv64) == 80bv8); + free ensures (memory_load8_le(mem, 130473bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130474bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130476bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130477bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130478bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130479bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 120bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 97bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 84bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130480bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130481bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130482bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130483bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130484bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130486bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure main() + modifies Gamma_R0, Gamma_R1, Gamma_R16, Gamma_R17, Gamma_R2, Gamma_R29, Gamma_R30, Gamma_R31, Gamma_R8, Gamma_R9, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, Gamma_mem, Gamma_stack, R0, R1, R16, R17, R2, R29, R30, R31, R8, R9, malloc_base, malloc_count, malloc_end, mem, stack; + requires (gamma_load8(Gamma_mem, $password_addr) == false); + requires malloc_count == 0; + requires gamma_load32(Gamma_mem, memory_load64_le(mem, $stext_addr)); + requires R31 == 100bv64; + free requires (memory_load8_le(mem, 131152bv64) == 0bv8); + free requires (memory_load8_le(mem, 131153bv64) == 0bv8); + free requires (memory_load8_le(mem, 131154bv64) == 0bv8); + free requires (memory_load8_le(mem, 131155bv64) == 0bv8); + free requires (memory_load8_le(mem, 131156bv64) == 0bv8); + free requires (memory_load8_le(mem, 131157bv64) == 0bv8); + free requires (memory_load8_le(mem, 131158bv64) == 0bv8); + free requires (memory_load8_le(mem, 131159bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 131168bv64) == 7bv8); + free requires (memory_load8_le(mem, 131169bv64) == 117bv8); + free requires (memory_load8_le(mem, 131170bv64) == 115bv8); + free requires (memory_load8_le(mem, 131171bv64) == 101bv8); + free requires (memory_load8_le(mem, 131172bv64) == 114bv8); + free requires (memory_load8_le(mem, 131173bv64) == 58bv8); + free requires (memory_load8_le(mem, 131174bv64) == 112bv8); + free requires (memory_load8_le(mem, 131175bv64) == 97bv8); + free requires (memory_load8_le(mem, 131176bv64) == 115bv8); + free requires (memory_load8_le(mem, 131177bv64) == 115bv8); + free requires (memory_load8_le(mem, 131178bv64) == 0bv8); + free requires (memory_load8_le(mem, 131179bv64) == 0bv8); + free requires (memory_load8_le(mem, 2592bv64) == 1bv8); + free requires (memory_load8_le(mem, 2593bv64) == 0bv8); + free requires (memory_load8_le(mem, 2594bv64) == 2bv8); + free requires (memory_load8_le(mem, 2595bv64) == 0bv8); + free requires (memory_load8_le(mem, 130472bv64) == 80bv8); + free requires (memory_load8_le(mem, 130473bv64) == 9bv8); + free requires (memory_load8_le(mem, 130474bv64) == 0bv8); + free requires (memory_load8_le(mem, 130475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130476bv64) == 0bv8); + free requires (memory_load8_le(mem, 130477bv64) == 0bv8); + free requires (memory_load8_le(mem, 130478bv64) == 0bv8); + free requires (memory_load8_le(mem, 130479bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 120bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 97bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 84bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 130480bv64) == 0bv8); + free requires (memory_load8_le(mem, 130481bv64) == 9bv8); + free requires (memory_load8_le(mem, 130482bv64) == 0bv8); + free requires (memory_load8_le(mem, 130483bv64) == 0bv8); + free requires (memory_load8_le(mem, 130484bv64) == 0bv8); + free requires (memory_load8_le(mem, 130485bv64) == 0bv8); + free requires (memory_load8_le(mem, 130486bv64) == 0bv8); + free requires (memory_load8_le(mem, 130487bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (Gamma_R29 == old(Gamma_R29)); + free ensures (Gamma_R31 == old(Gamma_R31)); + free ensures (R29 == old(R29)); + free ensures (R31 == old(R31)); + free ensures (memory_load8_le(mem, 2592bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2593bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2594bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2595bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130472bv64) == 80bv8); + free ensures (memory_load8_le(mem, 130473bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130474bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130476bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130477bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130478bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130479bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 120bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 97bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 84bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130480bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130481bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130482bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130483bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130484bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130486bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); +{ + var #42: bv64; + var Gamma_#42: bool; + lmain: + assume {:captureState "lmain"} true; + R31, Gamma_R31 := bvsub64(R31, 64bv64), Gamma_R31; + #42, Gamma_#42 := bvadd64(R31, 48bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #42, R29), gamma_store64(Gamma_stack, #42, Gamma_R29); + assume {:captureState "%000003a3"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#42, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#42, 8bv64), Gamma_R30); + assume {:captureState "%000003a8"} true; + R29, Gamma_R29 := bvadd64(R31, 48bv64), Gamma_R31; + R8, Gamma_R8 := 126976bv64, true; + call rely(); + R8, Gamma_R8 := memory_load64_le(mem, bvadd64(R8, 4040bv64)), (gamma_load64(Gamma_mem, bvadd64(R8, 4040bv64)) || L(mem, bvadd64(R8, 4040bv64))); + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 24bv64), R8), gamma_store64(Gamma_stack, bvadd64(R31, 24bv64), Gamma_R8); + assume {:captureState "%000003c5"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551608bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64), true); + assume {:captureState "%000003cd"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551600bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551600bv64), true); + assume {:captureState "%000003d5"} true; + R0, Gamma_R0 := 11bv64, true; + R30, Gamma_R30 := 2428bv64, true; + call malloc(); + goto l000003e5; + l000003e5: + assume {:captureState "l000003e5"} true; + R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); + call rely(); + assert (L(mem, R8) ==> Gamma_R0); + mem, Gamma_mem := memory_store64_le(mem, R8, R0), gamma_store64(Gamma_mem, R8, Gamma_R0); + assume {:captureState "%000003f3"} true; + call rely(); + R8, Gamma_R8 := memory_load64_le(mem, R8), (gamma_load64(Gamma_mem, R8) || L(mem, R8)); + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 8bv64), R8), gamma_store64(Gamma_stack, bvadd64(R31, 8bv64), Gamma_R8); + assume {:captureState "%00000403"} true; + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4048bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4048bv64)) || L(mem, bvadd64(R0, 4048bv64))); + stack, Gamma_stack := memory_store64_le(stack, R31, R0), gamma_store64(Gamma_stack, R31, Gamma_R0); + assume {:captureState "%00000419"} true; + R30, Gamma_R30 := 2460bv64, true; + call strlen(); + goto l00000423; + l00000423: + assume {:captureState "l00000423"} true; + R1, Gamma_R1 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 8bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 8bv64)); + R30, Gamma_R30 := 2476bv64, true; + call memcpy(); + goto l00000443; + l00000443: + assume {:captureState "l00000443"} true; + R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R8), (gamma_load64(Gamma_mem, R8) || L(mem, R8)); + R30, Gamma_R30 := 2488bv64, true; + call puts(); + goto l0000045b; + l0000045b: + assume {:captureState "l0000045b"} true; + R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); + call rely(); + R9, Gamma_R9 := memory_load64_le(mem, R8), (gamma_load64(Gamma_mem, R8) || L(mem, R8)); + R9, Gamma_R9 := bvadd64(R9, 4bv64), Gamma_R9; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R29, 18446744073709551608bv64), R9), gamma_store64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64), Gamma_R9); + assume {:captureState "%00000478"} true; + R9, Gamma_R9 := memory_load64_le(stack, bvadd64(R29, 18446744073709551608bv64)), gamma_load64(Gamma_stack, bvadd64(R29, 18446744073709551608bv64)); + call rely(); + assert (L(mem, R9) ==> true); + mem, Gamma_mem := memory_store8_be(mem, R9, 0bv8), gamma_store8(Gamma_mem, R9, true); + assume {:captureState "%00000488"} true; + call rely(); + R9, Gamma_R9 := memory_load64_le(mem, R8), (gamma_load64(Gamma_mem, R8) || L(mem, R8)); + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 16bv64), R9), gamma_store64(Gamma_stack, bvadd64(R31, 16bv64), Gamma_R9); + assume {:captureState "%00000498"} true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R8), (gamma_load64(Gamma_mem, R8) || L(mem, R8)); + R30, Gamma_R30 := 2528bv64, true; + call strlen(); + goto l000004a9; + l000004a9: + assume {:captureState "l000004a9"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); + R1, Gamma_R1 := 1bv64, true; + R30, Gamma_R30 := 2544bv64, true; + call memset(); + goto l000004c8; + l000004c8: + assume {:captureState "l000004c8"} true; + R8, Gamma_R8 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R8), (gamma_load64(Gamma_mem, R8) || L(mem, R8)); + R30, Gamma_R30 := 2556bv64, true; + call #free(); + goto l000004e0; + l000004e0: + assume {:captureState "l000004e0"} true; + R0, Gamma_R0 := 0bv32, true; + R29, Gamma_R29 := memory_load64_le(stack, bvadd64(R31, 48bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 48bv64)); + R30, Gamma_R30 := memory_load64_le(stack, bvadd64(R31, 56bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 56bv64)); + R31, Gamma_R31 := bvadd64(R31, 64bv64), Gamma_R31; + return; +} + +procedure malloc(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, R0, R16, R17, malloc_base, malloc_count, malloc_end; + requires bvugt64(R0, 0bv64); + requires Gamma_R0 == true; + free requires (memory_load8_le(mem, 2592bv64) == 1bv8); + free requires (memory_load8_le(mem, 2593bv64) == 0bv8); + free requires (memory_load8_le(mem, 2594bv64) == 2bv8); + free requires (memory_load8_le(mem, 2595bv64) == 0bv8); + free requires (memory_load8_le(mem, 130472bv64) == 80bv8); + free requires (memory_load8_le(mem, 130473bv64) == 9bv8); + free requires (memory_load8_le(mem, 130474bv64) == 0bv8); + free requires (memory_load8_le(mem, 130475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130476bv64) == 0bv8); + free requires (memory_load8_le(mem, 130477bv64) == 0bv8); + free requires (memory_load8_le(mem, 130478bv64) == 0bv8); + free requires (memory_load8_le(mem, 130479bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 120bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 97bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 84bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 130480bv64) == 0bv8); + free requires (memory_load8_le(mem, 130481bv64) == 9bv8); + free requires (memory_load8_le(mem, 130482bv64) == 0bv8); + free requires (memory_load8_le(mem, 130483bv64) == 0bv8); + free requires (memory_load8_le(mem, 130484bv64) == 0bv8); + free requires (memory_load8_le(mem, 130485bv64) == 0bv8); + free requires (memory_load8_le(mem, 130486bv64) == 0bv8); + free requires (memory_load8_le(mem, 130487bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures Gamma_R0 == true; + ensures malloc_count == old(malloc_count) + 1; + ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); + ensures R0 == malloc_base[malloc_count]; + ensures malloc_end[malloc_count] == bvadd64(R0, old(R0)); + ensures (forall i: int :: i != malloc_count ==> bvugt64(malloc_base[malloc_count], malloc_end[i]) || bvult64(malloc_end[malloc_count], malloc_base[i])); + ensures (forall i: int :: i != malloc_count ==> malloc_base[i] == old(malloc_base[i]) && malloc_end[i] == old(malloc_end[i])); + ensures bvuge64(R0, 100000000bv64); + ensures (forall i : bv64 :: (bvuge64(i, R0) && bvult64(i, bvadd64(R0, old(R0)))) ==> (Gamma_mem[i] && gamma_load8(Gamma_mem, i))); + free ensures (memory_load8_le(mem, 2592bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2593bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2594bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2595bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130472bv64) == 80bv8); + free ensures (memory_load8_le(mem, 130473bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130474bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130476bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130477bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130478bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130479bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 120bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 97bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 84bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130480bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130481bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130482bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130483bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130484bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130486bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memcpy(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + free requires (memory_load8_le(mem, 2592bv64) == 1bv8); + free requires (memory_load8_le(mem, 2593bv64) == 0bv8); + free requires (memory_load8_le(mem, 2594bv64) == 2bv8); + free requires (memory_load8_le(mem, 2595bv64) == 0bv8); + free requires (memory_load8_le(mem, 130472bv64) == 80bv8); + free requires (memory_load8_le(mem, 130473bv64) == 9bv8); + free requires (memory_load8_le(mem, 130474bv64) == 0bv8); + free requires (memory_load8_le(mem, 130475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130476bv64) == 0bv8); + free requires (memory_load8_le(mem, 130477bv64) == 0bv8); + free requires (memory_load8_le(mem, 130478bv64) == 0bv8); + free requires (memory_load8_le(mem, 130479bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 120bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 97bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 84bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 130480bv64) == 0bv8); + free requires (memory_load8_le(mem, 130481bv64) == 9bv8); + free requires (memory_load8_le(mem, 130482bv64) == 0bv8); + free requires (memory_load8_le(mem, 130483bv64) == 0bv8); + free requires (memory_load8_le(mem, 130484bv64) == 0bv8); + free requires (memory_load8_le(mem, 130485bv64) == 0bv8); + free requires (memory_load8_le(mem, 130486bv64) == 0bv8); + free requires (memory_load8_le(mem, 130487bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2592bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2593bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2594bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2595bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130472bv64) == 80bv8); + free ensures (memory_load8_le(mem, 130473bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130474bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130476bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130477bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130478bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130479bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 120bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 97bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 84bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130480bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130481bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130482bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130483bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130484bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130486bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memset(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + requires Gamma_R1; + free requires (memory_load8_le(mem, 2592bv64) == 1bv8); + free requires (memory_load8_le(mem, 2593bv64) == 0bv8); + free requires (memory_load8_le(mem, 2594bv64) == 2bv8); + free requires (memory_load8_le(mem, 2595bv64) == 0bv8); + free requires (memory_load8_le(mem, 130472bv64) == 80bv8); + free requires (memory_load8_le(mem, 130473bv64) == 9bv8); + free requires (memory_load8_le(mem, 130474bv64) == 0bv8); + free requires (memory_load8_le(mem, 130475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130476bv64) == 0bv8); + free requires (memory_load8_le(mem, 130477bv64) == 0bv8); + free requires (memory_load8_le(mem, 130478bv64) == 0bv8); + free requires (memory_load8_le(mem, 130479bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 120bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 97bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 84bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 130480bv64) == 0bv8); + free requires (memory_load8_le(mem, 130481bv64) == 9bv8); + free requires (memory_load8_le(mem, 130482bv64) == 0bv8); + free requires (memory_load8_le(mem, 130483bv64) == 0bv8); + free requires (memory_load8_le(mem, 130484bv64) == 0bv8); + free requires (memory_load8_le(mem, 130485bv64) == 0bv8); + free requires (memory_load8_le(mem, 130486bv64) == 0bv8); + free requires (memory_load8_le(mem, 130487bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then Gamma_R1 else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then R1[8:0] else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2592bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2593bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2594bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2595bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130472bv64) == 80bv8); + free ensures (memory_load8_le(mem, 130473bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130474bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130476bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130477bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130478bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130479bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 120bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 97bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 84bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130480bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130481bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130482bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130483bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130484bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130486bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure puts(); + modifies Gamma_R16, Gamma_R17, R16, R17; + free requires (memory_load8_le(mem, 2592bv64) == 1bv8); + free requires (memory_load8_le(mem, 2593bv64) == 0bv8); + free requires (memory_load8_le(mem, 2594bv64) == 2bv8); + free requires (memory_load8_le(mem, 2595bv64) == 0bv8); + free requires (memory_load8_le(mem, 130472bv64) == 80bv8); + free requires (memory_load8_le(mem, 130473bv64) == 9bv8); + free requires (memory_load8_le(mem, 130474bv64) == 0bv8); + free requires (memory_load8_le(mem, 130475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130476bv64) == 0bv8); + free requires (memory_load8_le(mem, 130477bv64) == 0bv8); + free requires (memory_load8_le(mem, 130478bv64) == 0bv8); + free requires (memory_load8_le(mem, 130479bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 120bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 97bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 84bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 130480bv64) == 0bv8); + free requires (memory_load8_le(mem, 130481bv64) == 9bv8); + free requires (memory_load8_le(mem, 130482bv64) == 0bv8); + free requires (memory_load8_le(mem, 130483bv64) == 0bv8); + free requires (memory_load8_le(mem, 130484bv64) == 0bv8); + free requires (memory_load8_le(mem, 130485bv64) == 0bv8); + free requires (memory_load8_le(mem, 130486bv64) == 0bv8); + free requires (memory_load8_le(mem, 130487bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2592bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2593bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2594bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2595bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130472bv64) == 80bv8); + free ensures (memory_load8_le(mem, 130473bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130474bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130476bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130477bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130478bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130479bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 120bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 97bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 84bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130480bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130481bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130482bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130483bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130484bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130486bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure strlen(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, R0, R16, R17; + free requires (memory_load8_le(mem, 2592bv64) == 1bv8); + free requires (memory_load8_le(mem, 2593bv64) == 0bv8); + free requires (memory_load8_le(mem, 2594bv64) == 2bv8); + free requires (memory_load8_le(mem, 2595bv64) == 0bv8); + free requires (memory_load8_le(mem, 130472bv64) == 80bv8); + free requires (memory_load8_le(mem, 130473bv64) == 9bv8); + free requires (memory_load8_le(mem, 130474bv64) == 0bv8); + free requires (memory_load8_le(mem, 130475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130476bv64) == 0bv8); + free requires (memory_load8_le(mem, 130477bv64) == 0bv8); + free requires (memory_load8_le(mem, 130478bv64) == 0bv8); + free requires (memory_load8_le(mem, 130479bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 120bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 97bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 84bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 130480bv64) == 0bv8); + free requires (memory_load8_le(mem, 130481bv64) == 9bv8); + free requires (memory_load8_le(mem, 130482bv64) == 0bv8); + free requires (memory_load8_le(mem, 130483bv64) == 0bv8); + free requires (memory_load8_le(mem, 130484bv64) == 0bv8); + free requires (memory_load8_le(mem, 130485bv64) == 0bv8); + free requires (memory_load8_le(mem, 130486bv64) == 0bv8); + free requires (memory_load8_le(mem, 130487bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); + ensures Gamma_R0 == true; + ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); + ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); + ensures (bvult64(old(R0), bvadd64(bvadd64(old(R0), R0), 1bv64))); + free ensures (memory_load8_le(mem, 2592bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2593bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2594bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2595bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130472bv64) == 80bv8); + free ensures (memory_load8_le(mem, 130473bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130474bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130476bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130477bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130478bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130479bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 120bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 97bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 84bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130480bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130481bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130482bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130483bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130484bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130485bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130486bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130487bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.relf b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.relf new file mode 100644 index 000000000..27b0d451a --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/clang_pic/malloc_memcpy_strlen_memset_free.relf @@ -0,0 +1,147 @@ + +Relocation section '.rela.dyn' at offset 0x578 contains 10 entries: + Offset Info Type Symbol's Value Symbol's Name + Addend +000000000001fda8 0000000000000403 R_AARCH64_RELATIVE 950 +000000000001fdb0 0000000000000403 R_AARCH64_RELATIVE 900 +000000000001ffc8 0000000000000403 R_AARCH64_RELATIVE 20078 +000000000001ffd0 0000000000000403 R_AARCH64_RELATIVE 20061 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 954 +0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 +000000000001ffb0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 +000000000001ffb8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +000000000001ffc0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 +000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 + +Relocation section '.rela.plt' at offset 0x668 contains 10 entries: + Offset Info Type Symbol's Value Symbol's Name + Addend +0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 +0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 +0000000000020010 0000000500000402 R_AARCH64_JUMP_SLOT 0000000000000000 __libc_start_main@GLIBC_2.34 + 0 +0000000000020018 0000000700000402 R_AARCH64_JUMP_SLOT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +0000000000020020 0000000800000402 R_AARCH64_JUMP_SLOT 0000000000000000 malloc@GLIBC_2.17 + 0 +0000000000020028 0000000900000402 R_AARCH64_JUMP_SLOT 0000000000000000 memset@GLIBC_2.17 + 0 +0000000000020030 0000000a00000402 R_AARCH64_JUMP_SLOT 0000000000000000 __gmon_start__ + 0 +0000000000020038 0000000b00000402 R_AARCH64_JUMP_SLOT 0000000000000000 abort@GLIBC_2.17 + 0 +0000000000020040 0000000c00000402 R_AARCH64_JUMP_SLOT 0000000000000000 puts@GLIBC_2.17 + 0 +0000000000020048 0000000d00000402 R_AARCH64_JUMP_SLOT 0000000000000000 free@GLIBC_2.17 + 0 + +Symbol table '.dynsym' contains 15 entries: + Num: Value Size Type Bind Vis Ndx Name + 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND + 1: 0000000000000758 0 SECTION LOCAL DEFAULT 12 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) + 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) + 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) + 6: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 7: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 (2) + 8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 (2) + 9: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 (2) + 10: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 11: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 (2) + 12: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 (2) + 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) + 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + +Symbol table '.symtab' contains 100 entries: + Num: Value Size Type Bind Vis Ndx Name + 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND + 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp + 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id + 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .hash + 5: 00000000000002e8 0 SECTION LOCAL DEFAULT 5 .gnu.hash + 6: 0000000000000308 0 SECTION LOCAL DEFAULT 6 .dynsym + 7: 0000000000000470 0 SECTION LOCAL DEFAULT 7 .dynstr + 8: 0000000000000524 0 SECTION LOCAL DEFAULT 8 .gnu.version + 9: 0000000000000548 0 SECTION LOCAL DEFAULT 9 .gnu.version_r + 10: 0000000000000578 0 SECTION LOCAL DEFAULT 10 .rela.dyn + 11: 0000000000000668 0 SECTION LOCAL DEFAULT 11 .rela.plt + 12: 0000000000000758 0 SECTION LOCAL DEFAULT 12 .init + 13: 0000000000000770 0 SECTION LOCAL DEFAULT 13 .plt + 14: 0000000000000840 0 SECTION LOCAL DEFAULT 14 .text + 15: 0000000000000a0c 0 SECTION LOCAL DEFAULT 15 .fini + 16: 0000000000000a20 0 SECTION LOCAL DEFAULT 16 .rodata + 17: 0000000000000a24 0 SECTION LOCAL DEFAULT 17 .eh_frame_hdr + 18: 0000000000000a60 0 SECTION LOCAL DEFAULT 18 .eh_frame + 19: 000000000001fda8 0 SECTION LOCAL DEFAULT 19 .init_array + 20: 000000000001fdb0 0 SECTION LOCAL DEFAULT 20 .fini_array + 21: 000000000001fdb8 0 SECTION LOCAL DEFAULT 21 .dynamic + 22: 000000000001ffa8 0 SECTION LOCAL DEFAULT 22 .got + 23: 000000000001ffe8 0 SECTION LOCAL DEFAULT 23 .got.plt + 24: 0000000000020050 0 SECTION LOCAL DEFAULT 24 .data + 25: 0000000000020070 0 SECTION LOCAL DEFAULT 25 .bss + 26: 0000000000000000 0 SECTION LOCAL DEFAULT 26 .comment + 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 28: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 29: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 30: 0000000000000840 0 NOTYPE LOCAL DEFAULT 14 $x + 31: 0000000000000a74 0 NOTYPE LOCAL DEFAULT 18 $d + 32: 0000000000000a20 0 NOTYPE LOCAL DEFAULT 16 $d + 33: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 34: 0000000000000874 0 NOTYPE LOCAL DEFAULT 14 $x + 35: 0000000000000874 20 FUNC LOCAL DEFAULT 14 call_weak_fn + 36: 0000000000000758 0 NOTYPE LOCAL DEFAULT 12 $x + 37: 0000000000000a0c 0 NOTYPE LOCAL DEFAULT 15 $x + 38: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 39: 0000000000000768 0 NOTYPE LOCAL DEFAULT 12 $x + 40: 0000000000000a18 0 NOTYPE LOCAL DEFAULT 15 $x + 41: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 42: 0000000000000890 0 NOTYPE LOCAL DEFAULT 14 $x + 43: 0000000000000890 0 FUNC LOCAL DEFAULT 14 deregister_tm_clones + 44: 00000000000008c0 0 FUNC LOCAL DEFAULT 14 register_tm_clones + 45: 0000000000020058 0 NOTYPE LOCAL DEFAULT 24 $d + 46: 0000000000000900 0 FUNC LOCAL DEFAULT 14 __do_global_dtors_aux + 47: 0000000000020070 1 OBJECT LOCAL DEFAULT 25 completed.0 + 48: 000000000001fdb0 0 NOTYPE LOCAL DEFAULT 20 $d + 49: 000000000001fdb0 0 OBJECT LOCAL DEFAULT 20 __do_global_dtors_aux_fini_array_entry + 50: 0000000000000950 0 FUNC LOCAL DEFAULT 14 frame_dummy + 51: 000000000001fda8 0 NOTYPE LOCAL DEFAULT 19 $d + 52: 000000000001fda8 0 OBJECT LOCAL DEFAULT 19 __frame_dummy_init_array_entry + 53: 0000000000000a88 0 NOTYPE LOCAL DEFAULT 18 $d + 54: 0000000000020070 0 NOTYPE LOCAL DEFAULT 25 $d + 55: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 56: 0000000000000954 0 NOTYPE LOCAL DEFAULT 14 $x.0 + 57: 0000000000020060 0 NOTYPE LOCAL DEFAULT 24 $d.1 + 58: 0000000000020078 0 NOTYPE LOCAL DEFAULT 25 $d.2 + 59: 000000000000001d 0 NOTYPE LOCAL DEFAULT 26 $d.3 + 60: 0000000000000ae8 0 NOTYPE LOCAL DEFAULT 18 $d.4 + 61: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 62: 0000000000000b24 0 NOTYPE LOCAL DEFAULT 18 $d + 63: 0000000000000b24 0 OBJECT LOCAL DEFAULT 18 __FRAME_END__ + 64: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 65: 000000000001fdb8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 66: 0000000000000a24 0 NOTYPE LOCAL DEFAULT 17 __GNU_EH_FRAME_HDR + 67: 000000000001ffa8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 68: 0000000000000770 0 NOTYPE LOCAL DEFAULT 13 $x + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 70: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 71: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 72: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 73: 0000000000020050 0 NOTYPE WEAK DEFAULT 24 data_start + 74: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start__ + 75: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 76: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _bss_end__ + 77: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 24 _edata + 78: 0000000000000a0c 0 FUNC GLOBAL HIDDEN 15 _fini + 79: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __bss_end__ + 80: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 81: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 82: 0000000000020060 1 OBJECT GLOBAL DEFAULT 24 password + 83: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 24 __data_start + 84: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 85: 0000000000020058 0 OBJECT GLOBAL HIDDEN 24 __dso_handle + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 87: 0000000000000a20 4 OBJECT GLOBAL DEFAULT 16 _IO_stdin_used + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 89: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 _end + 90: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 91: 0000000000000840 52 FUNC GLOBAL DEFAULT 14 _start + 92: 0000000000020078 8 OBJECT GLOBAL DEFAULT 25 buf + 93: 0000000000020080 0 NOTYPE GLOBAL DEFAULT 25 __end__ + 94: 0000000000020061 11 OBJECT GLOBAL DEFAULT 24 stext + 95: 000000000002006c 0 NOTYPE GLOBAL DEFAULT 25 __bss_start + 96: 0000000000000954 184 FUNC GLOBAL DEFAULT 14 main + 97: 0000000000020070 0 OBJECT GLOBAL HIDDEN 24 __TMC_END__ + 98: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 99: 0000000000000758 0 FUNC GLOBAL HIDDEN 12 _init diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.adt b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.adt index ad96adf48..25875fa16 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.adt @@ -67,10 +67,10 @@ Annotation(Region(0x20050,0x20072), Attr("section","\".data\"")), Annotation(Region(0x7C0,0x9A3), Attr("section","\".text\"")), Annotation(Region(0x7C0,0x9A3), Attr("code-region","()")), Annotation(Region(0x9A4,0x9B7), Attr("code-region","()"))]), -Program(Tid(2_289, "%000008f1"), Attrs([]), +Program(Tid(2_332, "%0000091c"), Attrs([]), Subs([Sub(Tid(2_261, "@__cxa_finalize"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x740"), -Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_290, "%000008f2"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_333, "%0000091d"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_406, "@__cxa_finalize"), @@ -87,7 +87,7 @@ PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_846, "%00000736"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_262, "@__do_global_dtors_aux"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), - "__do_global_dtors_aux", Args([Arg(Tid(2_291, "%000008f3"), + "__do_global_dtors_aux", Args([Arg(Tid(2_334, "%0000091e"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), @@ -120,7 +120,7 @@ Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), Jmps([Goto(Tid(891, "%0000037b"), Attrs([Attr("address","0x894"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), -Direct(Tid(889, "%00000379"))), Goto(Tid(2_263, "%000008d7"), Attrs([]), +Direct(Tid(889, "%00000379"))), Goto(Tid(2_322, "%00000912"), Attrs([]), Int(1,1), Direct(Tid(1_340, "%0000053c")))])), Blk(Tid(1_340, "%0000053c"), Attrs([Attr("address","0x898")]), Phis([]), Defs([Def(Tid(1_344, "%00000540"), Attrs([Attr("address","0x898"), @@ -133,7 +133,7 @@ Attr("insn","cbz x0, #0x10")]), Var("#69",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_358, "%0000054e"), Attrs([Attr("address","0x8A0"), Attr("insn","cbz x0, #0x10")]), Var("#69",Imm(1)), Direct(Tid(1_356, "%0000054c"))), -Goto(Tid(2_264, "%000008d8"), Attrs([]), Int(1,1), +Goto(Tid(2_323, "%00000913"), Attrs([]), Int(1,1), Direct(Tid(1_388, "%0000056c")))])), Blk(Tid(1_388, "%0000056c"), Attrs([Attr("address","0x8A4")]), Phis([]), Defs([Def(Tid(1_392, "%00000570"), Attrs([Attr("address","0x8A4"), @@ -158,7 +158,7 @@ Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), Def(Tid(1_386, "%0000056a"), Attrs([Attr("address","0x8B8"), Attr("insn","strb w0, [x19, #0x78]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(120,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), -Jmps([Goto(Tid(2_265, "%000008d9"), Attrs([]), Int(1,1), +Jmps([Goto(Tid(2_324, "%00000914"), Attrs([]), Int(1,1), Direct(Tid(889, "%00000379")))])), Blk(Tid(889, "%00000379"), Attrs([Attr("address","0x8BC")]), Phis([]), Defs([Def(Tid(905, "%00000389"), Attrs([Attr("address","0x8BC"), Attr("insn","ldr x19, [sp, #0x10]")]), @@ -177,21 +177,21 @@ PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(927, "%0000039f"), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_266, "@__libc_start_main"), Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), Attr("address","0x730"), Attr("stub","()")]), "__libc_start_main", - Args([Arg(Tid(2_292, "%000008f4"), + Args([Arg(Tid(2_335, "%0000091f"), Attrs([Attr("c.layout","**[ : 64]"), Attr("c.data","Top:u64 ptr ptr"), Attr("c.type","signed (*)(signed , char** , char** );*")]), Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_293, "%000008f5"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_336, "%00000920"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), -Arg(Tid(2_294, "%000008f6"), Attrs([Attr("c.layout","**[char : 8]"), +Arg(Tid(2_337, "%00000921"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), -Arg(Tid(2_295, "%000008f7"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_338, "%00000922"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), -Arg(Tid(2_296, "%000008f8"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_339, "%00000923"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(646, "@__libc_start_main"), @@ -207,7 +207,7 @@ PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_821, "%0000071d"), Attrs([Attr("address","0x73C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_267, "@_fini"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9A4")]), - "_fini", Args([Arg(Tid(2_297, "%000008f9"), + "_fini", Args([Arg(Tid(2_340, "%00000924"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), @@ -237,7 +237,7 @@ PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), Attrs([Attr("address","0x9B4"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_268, "@_init"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x6D8")]), - "_init", Args([Arg(Tid(2_298, "%000008fa"), + "_init", Args([Arg(Tid(2_341, "%00000925"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(2_024, "@_init"), @@ -273,7 +273,7 @@ PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_083, "%00000823"), Attrs([Attr("address","0x6EC"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_269, "@_start"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7C0"), -Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_299, "%000008fb"), +Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_342, "%00000926"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(572, "@_start"), @@ -311,9 +311,9 @@ Defs([Def(Tid(653, "%0000028d"), Attrs([Attr("address","0x7F0"), Attr("insn","bl #-0x70")]), Var("R30",Imm(64)), Int(2036,64))]), Jmps([Call(Tid(656, "%00000290"), Attrs([Attr("address","0x7F0"), Attr("insn","bl #-0x70")]), Int(1,1), -(Direct(Tid(2_272, "@abort")),Direct(Tid(2_270, "%000008de"))))])), -Blk(Tid(2_270, "%000008de"), Attrs([]), Phis([]), Defs([]), -Jmps([Call(Tid(2_271, "%000008df"), Attrs([]), Int(1,1), +(Direct(Tid(2_272, "@abort")),Direct(Tid(2_325, "%00000915"))))])), +Blk(Tid(2_325, "%00000915"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_326, "%00000916"), Attrs([]), Int(1,1), (Direct(Tid(2_273, "@call_weak_fn")),))]))])), Sub(Tid(2_272, "@abort"), Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), Attr("address","0x780"), Attr("stub","()")]), "abort", Args([]), @@ -329,7 +329,7 @@ PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_946, "%0000079a"), Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_273, "@call_weak_fn"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7F4")]), - "call_weak_fn", Args([Arg(Tid(2_300, "%000008fc"), + "call_weak_fn", Args([Arg(Tid(2_343, "%00000927"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(658, "@call_weak_fn"), @@ -344,7 +344,7 @@ Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(676, "%000002a4"), Attrs([Attr("address","0x7FC"), Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), Direct(Tid(674, "%000002a2"))), -Goto(Tid(2_274, "%000008e2"), Attrs([]), Int(1,1), +Goto(Tid(2_327, "%00000917"), Attrs([]), Int(1,1), Direct(Tid(1_488, "%000005d0")))])), Blk(Tid(674, "%000002a2"), Attrs([Attr("address","0x804")]), Phis([]), Defs([]), Jmps([Call(Tid(687, "%000002af"), Attrs([Attr("address","0x804"), @@ -366,7 +366,7 @@ PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_921, "%00000781"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_275, "@deregister_tm_clones"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x810")]), - "deregister_tm_clones", Args([Arg(Tid(2_301, "%000008fd"), + "deregister_tm_clones", Args([Arg(Tid(2_344, "%00000928"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), @@ -400,7 +400,7 @@ Def(Tid(752, "%000002f0"), Attrs([Attr("address","0x824"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), Jmps([Goto(Tid(746, "%000002ea"), Attrs([Attr("address","0x824"), Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), -Direct(Tid(744, "%000002e8"))), Goto(Tid(2_276, "%000008e4"), Attrs([]), +Direct(Tid(744, "%000002e8"))), Goto(Tid(2_328, "%00000918"), Attrs([]), Int(1,1), Direct(Tid(1_449, "%000005a9")))])), Blk(Tid(1_449, "%000005a9"), Attrs([Attr("address","0x828")]), Phis([]), Defs([Def(Tid(1_453, "%000005ad"), Attrs([Attr("address","0x828"), @@ -413,7 +413,7 @@ Attr("insn","cbz x1, #0xc")]), Var("#77",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_466, "%000005ba"), Attrs([Attr("address","0x830"), Attr("insn","cbz x1, #0xc")]), Var("#77",Imm(1)), Direct(Tid(744, "%000002e8"))), -Goto(Tid(2_277, "%000008e5"), Attrs([]), Int(1,1), +Goto(Tid(2_329, "%00000919"), Attrs([]), Int(1,1), Direct(Tid(1_475, "%000005c3")))])), Blk(Tid(744, "%000002e8"), Attrs([Attr("address","0x83C")]), Phis([]), Defs([]), Jmps([Call(Tid(757, "%000002f5"), Attrs([Attr("address","0x83C"), @@ -424,7 +424,7 @@ Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), Jmps([Call(Tid(1_486, "%000005ce"), Attrs([Attr("address","0x838"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), Sub(Tid(2_278, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x8D0")]), "frame_dummy", Args([Arg(Tid(2_302, "%000008fe"), +Attr("address","0x8D0")]), "frame_dummy", Args([Arg(Tid(2_345, "%00000929"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(933, "@frame_dummy"), @@ -433,7 +433,7 @@ Jmps([Call(Tid(935, "%000003a7"), Attrs([Attr("address","0x8D0"), Attr("insn","b #-0x90")]), Int(1,1), (Direct(Tid(2_285, "@register_tm_clones")),))]))])), Sub(Tid(2_279, "@free"), Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7A0"), -Attr("stub","()")]), "free", Args([Arg(Tid(2_303, "%000008ff"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_346, "%0000092a"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), Both())]), Blks([Blk(Tid(1_299, "@free"), Attrs([Attr("address","0x7A0")]), @@ -448,13 +448,13 @@ PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_996, "%000007cc"), Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_280, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x8D4")]), "main", Args([Arg(Tid(2_304, "%00000900"), +Attr("address","0x8D4")]), "main", Args([Arg(Tid(2_347, "%0000092b"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), -LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_305, "%00000901"), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_348, "%0000092c"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), -Var("R1",Imm(64)), Both()), Arg(Tid(2_306, "%00000902"), +Var("R1",Imm(64)), Both()), Arg(Tid(2_349, "%0000092d"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(937, "@main"), @@ -632,10 +632,10 @@ PLUS(Var("R31",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_338, "%0000053a"), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_281, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), Attr("address","0x750"), Attr("malloc","()"), Attr("stub","()")]), "malloc", - Args([Arg(Tid(2_307, "%00000903"), Attrs([Attr("alloc-size","()"), + Args([Arg(Tid(2_350, "%0000092e"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), -Var("R0",Imm(64)), In()), Arg(Tid(2_308, "%00000904"), +Var("R0",Imm(64)), In()), Arg(Tid(2_351, "%0000092f"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), @@ -652,17 +652,17 @@ PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_871, "%0000074f"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_282, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), Attr("address","0x710"), Attr("stub","()")]), "memcpy", - Args([Arg(Tid(2_309, "%00000905"), Attrs([Attr("nonnull","()"), + Args([Arg(Tid(2_352, "%00000930"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), -Var("R0",Imm(64)), Both()), Arg(Tid(2_310, "%00000906"), +Var("R0",Imm(64)), Both()), Arg(Tid(2_353, "%00000931"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), -Arg(Tid(2_311, "%00000907"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Arg(Tid(2_354, "%00000932"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), -Arg(Tid(2_312, "%00000908"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_355, "%00000933"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_109, "@memcpy"), Attrs([Attr("address","0x710")]), Phis([]), @@ -678,16 +678,16 @@ Var("R16",Imm(64)))]), Jmps([Call(Tid(1_771, "%000006eb"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_283, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), Attr("address","0x760"), Attr("stub","()")]), "memset", - Args([Arg(Tid(2_313, "%00000909"), Attrs([Attr("nonnull","()"), + Args([Arg(Tid(2_356, "%00000934"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), -Both()), Arg(Tid(2_314, "%0000090a"), +Both()), Arg(Tid(2_357, "%00000935"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("memset_c",Imm(32)), -LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_315, "%0000090b"), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_358, "%00000936"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), -In()), Arg(Tid(2_316, "%0000090c"), Attrs([Attr("c.layout","*[ : 8]"), +In()), Arg(Tid(2_359, "%00000937"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_270, "@memset"), Attrs([Attr("address","0x760")]), Phis([]), @@ -703,10 +703,10 @@ PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_896, "%00000768"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_284, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), Attr("address","0x790"), Attr("stub","()")]), "puts", - Args([Arg(Tid(2_317, "%0000090d"), Attrs([Attr("c.layout","*[char : 8]"), + Args([Arg(Tid(2_360, "%00000938"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_318, "%0000090e"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_361, "%00000939"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_138, "@puts"), Attrs([Attr("address","0x790")]), Phis([]), @@ -722,7 +722,7 @@ PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_971, "%000007b3"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_285, "@register_tm_clones"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x840")]), - "register_tm_clones", Args([Arg(Tid(2_319, "%0000090f"), + "register_tm_clones", Args([Arg(Tid(2_362, "%0000093a"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), @@ -751,7 +751,7 @@ RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(825, "%00000339"), Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(819, "%00000333"), Attrs([Attr("address","0x860"), Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), -Direct(Tid(817, "%00000331"))), Goto(Tid(2_286, "%000008ee"), Attrs([]), +Direct(Tid(817, "%00000331"))), Goto(Tid(2_330, "%0000091a"), Attrs([]), Int(1,1), Direct(Tid(1_410, "%00000582")))])), Blk(Tid(1_410, "%00000582"), Attrs([Attr("address","0x864")]), Phis([]), Defs([Def(Tid(1_414, "%00000586"), Attrs([Attr("address","0x864"), @@ -764,7 +764,7 @@ Attr("insn","cbz x2, #0xc")]), Var("#72",Imm(1)), EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_427, "%00000593"), Attrs([Attr("address","0x86C"), Attr("insn","cbz x2, #0xc")]), Var("#72",Imm(1)), Direct(Tid(817, "%00000331"))), -Goto(Tid(2_287, "%000008ef"), Attrs([]), Int(1,1), +Goto(Tid(2_331, "%0000091b"), Attrs([]), Int(1,1), Direct(Tid(1_436, "%0000059c")))])), Blk(Tid(817, "%00000331"), Attrs([Attr("address","0x878")]), Phis([]), Defs([]), Jmps([Call(Tid(830, "%0000033e"), Attrs([Attr("address","0x878"), @@ -777,10 +777,10 @@ Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), Sub(Tid(2_288, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), Attr("pure","()"), Attr("address","0x720"), Attr("stub","()")]), "strlen", - Args([Arg(Tid(2_320, "%00000910"), Attrs([Attr("nonnull","()"), + Args([Arg(Tid(2_363, "%0000093b"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), -In()), Arg(Tid(2_321, "%00000911"), +In()), Arg(Tid(2_364, "%0000093c"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_072, "@strlen"), diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.bir b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.bir index 0b1a79af7..df98f3236 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.bir @@ -1,6 +1,6 @@ -000008f1: program +0000091c: program 000008d5: sub __cxa_finalize(__cxa_finalize_result) -000008f2: __cxa_finalize_result :: out u32 = low:32[R0] +0000091d: __cxa_finalize_result :: out u32 = low:32[R0] 0000057e: 00000722: R16 := 0x20000 @@ -9,7 +9,7 @@ 00000736: call R17 with noreturn 000008d6: sub __do_global_dtors_aux(__do_global_dtors_aux_result) -000008f3: __do_global_dtors_aux_result :: out u32 = low:32[R0] +0000091e: __do_global_dtors_aux_result :: out u32 = low:32[R0] 00000342: 00000349: #34 := R31 - 0x20 @@ -22,14 +22,14 @@ 00000375: R0 := pad:32[mem[R19 + 0x78]] 00000381: #36 := ~~0:0[R0] 0000037b: when #36 goto %00000379 -000008d7: goto %0000053c +00000912: goto %0000053c 0000053c: 00000540: R0 := 0x1F000 00000548: R0 := mem[R0 + 0xFC8, el]:u64 00000554: #69 := R0 = 0 0000054e: when #69 goto %0000054c -000008d8: goto %0000056c +00000913: goto %0000056c 0000056c: 00000570: R0 := 0x20000 @@ -44,7 +44,7 @@ 0000055d: 00000562: R0 := 1 0000056a: mem := mem with [R19 + 0x78] <- low:8[31:0[R0]] -000008d9: goto %00000379 +00000914: goto %00000379 00000379: 00000389: R19 := mem[R31 + 0x10, el]:u64 @@ -54,11 +54,11 @@ 0000039f: call R30 with noreturn 000008da: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) -000008f4: __libc_start_main_main :: in u64 = R0 -000008f5: __libc_start_main_arg2 :: in u32 = low:32[R1] -000008f6: __libc_start_main_arg3 :: in out u64 = R2 -000008f7: __libc_start_main_auxv :: in out u64 = R3 -000008f8: __libc_start_main_result :: out u32 = low:32[R0] +0000091f: __libc_start_main_main :: in u64 = R0 +00000920: __libc_start_main_arg2 :: in u32 = low:32[R1] +00000921: __libc_start_main_arg3 :: in out u64 = R2 +00000922: __libc_start_main_auxv :: in out u64 = R3 +00000923: __libc_start_main_result :: out u32 = low:32[R0] 00000286: 00000709: R16 := 0x20000 @@ -67,7 +67,7 @@ 0000071d: call R17 with noreturn 000008db: sub _fini(_fini_result) -000008f9: _fini_result :: out u32 = low:32[R0] +00000924: _fini_result :: out u32 = low:32[R0] 00000020: 00000029: #3 := R31 - 0x10 @@ -81,7 +81,7 @@ 00000054: call R30 with noreturn 000008dc: sub _init(_init_result) -000008fa: _init_result :: out u32 = low:32[R0] +00000925: _init_result :: out u32 = low:32[R0] 000007e8: 000007f1: #100 := R31 - 0x10 @@ -99,7 +99,7 @@ 00000823: call R30 with noreturn 000008dd: sub _start(_start_result) -000008fb: _start_result :: out u32 = low:32[R0] +00000926: _start_result :: out u32 = low:32[R0] 0000023c: 00000242: R29 := 0 @@ -117,10 +117,10 @@ 0000028a: 0000028d: R30 := 0x7F4 -00000290: call @abort with return %000008de +00000290: call @abort with return %00000915 -000008de: -000008df: call @call_weak_fn with noreturn +00000915: +00000916: call @call_weak_fn with noreturn 000008e0: sub abort() @@ -132,14 +132,14 @@ 0000079a: call R17 with noreturn 000008e1: sub call_weak_fn(call_weak_fn_result) -000008fc: call_weak_fn_result :: out u32 = low:32[R0] +00000927: call_weak_fn_result :: out u32 = low:32[R0] 00000292: 00000296: R0 := 0x1F000 0000029e: R0 := mem[R0 + 0xFD0, el]:u64 000002aa: #12 := R0 = 0 000002a4: when #12 goto %000002a2 -000008e2: goto %000005d0 +00000917: goto %000005d0 000002a2: 000002af: call R30 with noreturn @@ -154,7 +154,7 @@ 00000781: call R17 with noreturn 000008e3: sub deregister_tm_clones(deregister_tm_clones_result) -000008fd: deregister_tm_clones_result :: out u32 = low:32[R0] +00000928: deregister_tm_clones_result :: out u32 = low:32[R0] 000002b5: 000002b9: R0 := 0x20000 @@ -170,14 +170,14 @@ & ~63:63[#16] 000002f0: #21 := ZF 000002ea: when #21 goto %000002e8 -000008e4: goto %000005a9 +00000918: goto %000005a9 000005a9: 000005ad: R1 := 0x1F000 000005b5: R1 := mem[R1 + 0xFC0, el]:u64 000005c0: #77 := R1 = 0 000005ba: when #77 goto %000002e8 -000008e5: goto %000005c3 +00000919: goto %000005c3 000002e8: 000002f5: call R30 with noreturn @@ -187,13 +187,13 @@ 000005ce: call R16 with noreturn 000008e6: sub frame_dummy(frame_dummy_result) -000008fe: frame_dummy_result :: out u32 = low:32[R0] +00000929: frame_dummy_result :: out u32 = low:32[R0] 000003a5: 000003a7: call @register_tm_clones with noreturn 000008e7: sub free(free_ptr) -000008ff: free_ptr :: in out u64 = R0 +0000092a: free_ptr :: in out u64 = R0 00000513: 000007b8: R16 := 0x20000 @@ -202,9 +202,9 @@ 000007cc: call R17 with noreturn 000008e8: sub main(main_argc, main_argv, main_result) -00000900: main_argc :: in u32 = low:32[R0] -00000901: main_argv :: in out u64 = R1 -00000902: main_result :: out u32 = low:32[R0] +0000092b: main_argc :: in u32 = low:32[R0] +0000092c: main_argv :: in out u64 = R1 +0000092d: main_result :: out u32 = low:32[R0] 000003a9: 000003b0: #42 := R31 - 0x30 @@ -287,8 +287,8 @@ 0000053a: call R30 with noreturn 000008e9: sub malloc(malloc_size, malloc_result) -00000903: malloc_size :: in u64 = R0 -00000904: malloc_result :: out u64 = R0 +0000092e: malloc_size :: in u64 = R0 +0000092f: malloc_result :: out u64 = R0 000003e9: 0000073b: R16 := 0x20000 @@ -297,10 +297,10 @@ 0000074f: call R17 with noreturn 000008ea: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) -00000905: memcpy_dst :: in out u64 = R0 -00000906: memcpy_src :: in out u64 = R1 -00000907: memcpy_n :: in u64 = R2 -00000908: memcpy_result :: out u64 = R0 +00000930: memcpy_dst :: in out u64 = R0 +00000931: memcpy_src :: in out u64 = R1 +00000932: memcpy_n :: in u64 = R2 +00000933: memcpy_result :: out u64 = R0 00000455: 000006d7: R16 := 0x20000 @@ -309,10 +309,10 @@ 000006eb: call R17 with noreturn 000008eb: sub memset(memset_buf, memset_c, memset_n, memset_result) -00000909: memset_buf :: in out u64 = R0 -0000090a: memset_c :: in u32 = low:32[R1] -0000090b: memset_n :: in u64 = R2 -0000090c: memset_result :: out u64 = R0 +00000934: memset_buf :: in out u64 = R0 +00000935: memset_c :: in u32 = low:32[R1] +00000936: memset_n :: in u64 = R2 +00000937: memset_result :: out u64 = R0 000004f6: 00000754: R16 := 0x20000 @@ -321,8 +321,8 @@ 00000768: call R17 with noreturn 000008ec: sub puts(puts_s, puts_result) -0000090d: puts_s :: in u64 = R0 -0000090e: puts_result :: out u32 = low:32[R0] +00000938: puts_s :: in u64 = R0 +00000939: puts_result :: out u32 = low:32[R0] 00000472: 0000079f: R16 := 0x20000 @@ -331,7 +331,7 @@ 000007b3: call R17 with noreturn 000008ed: sub register_tm_clones(register_tm_clones_result) -0000090f: register_tm_clones_result :: out u32 = low:32[R0] +0000093a: register_tm_clones_result :: out u32 = low:32[R0] 000002f7: 000002fb: R0 := 0x20000 @@ -344,14 +344,14 @@ 0000032d: R1 := R1 >> 1 00000339: #30 := R1 = 0 00000333: when #30 goto %00000331 -000008ee: goto %00000582 +0000091a: goto %00000582 00000582: 00000586: R2 := 0x1F000 0000058e: R2 := mem[R2 + 0xFE0, el]:u64 00000599: #72 := R2 = 0 00000593: when #72 goto %00000331 -000008ef: goto %0000059c +0000091b: goto %0000059c 00000331: 0000033e: call R30 with noreturn @@ -361,8 +361,8 @@ 000005a7: call R16 with noreturn 000008f0: sub strlen(strlen_s, strlen_result) -00000910: strlen_s :: in u64 = R0 -00000911: strlen_result :: out u64 = R0 +0000093b: strlen_s :: in u64 = R0 +0000093c: strlen_result :: out u64 = R0 00000430: 000006f0: R16 := 0x20000 diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.expected b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.expected new file mode 100644 index 000000000..e0dd7a116 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc/malloc_memcpy_strlen_memset_free.expected @@ -0,0 +1,838 @@ +var {:extern} Gamma_R0: bool; +var {:extern} Gamma_R1: bool; +var {:extern} Gamma_R16: bool; +var {:extern} Gamma_R17: bool; +var {:extern} Gamma_R19: bool; +var {:extern} Gamma_R2: bool; +var {:extern} Gamma_R29: bool; +var {:extern} Gamma_R30: bool; +var {:extern} Gamma_R31: bool; +var {:extern} Gamma_malloc_base: [bv64]bool; +var {:extern} Gamma_malloc_count: [bv64]bool; +var {:extern} Gamma_malloc_end: [bv64]bool; +var {:extern} Gamma_mem: [bv64]bool; +var {:extern} Gamma_stack: [bv64]bool; +var {:extern} R0: bv64; +var {:extern} R1: bv64; +var {:extern} R16: bv64; +var {:extern} R17: bv64; +var {:extern} R19: bv64; +var {:extern} R2: bv64; +var {:extern} R29: bv64; +var {:extern} R30: bv64; +var {:extern} R31: bv64; +var {:extern} malloc_base: [bv64]bv8; +var {:extern} malloc_count: [bv64]bv8; +var {:extern} malloc_end: [bv64]bv8; +var {:extern} mem: [bv64]bv8; +var {:extern} stack: [bv64]bv8; +const {:extern} $buf_addr: bv64; +axiom ($buf_addr == 131200bv64); +const {:extern} $password_addr: bv64; +axiom ($password_addr == 131168bv64); +const {:extern} $stext_addr: bv64; +axiom ($stext_addr == 131176bv64); +function {:extern} L(memory: [bv64]bv8, index: bv64) returns (bool) { + false +} + +function {:extern} {:bvbuiltin "bvadd"} bvadd64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvsub"} bvsub64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvuge"} bvuge64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvugt"} bvugt64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvule"} bvule64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvult"} bvult64(bv64, bv64) returns (bool); +function {:extern} gamma_load32(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))) +} + +function {:extern} gamma_load64(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 7bv64)] && (gammaMap[bvadd64(index, 6bv64)] && (gammaMap[bvadd64(index, 5bv64)] && (gammaMap[bvadd64(index, 4bv64)] && (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))))))) +} + +function {:extern} gamma_load8(gammaMap: [bv64]bool, index: bv64) returns (bool) { + gammaMap[index] +} + +function {:extern} gamma_store64(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value][bvadd64(index, 1bv64) := value][bvadd64(index, 2bv64) := value][bvadd64(index, 3bv64) := value][bvadd64(index, 4bv64) := value][bvadd64(index, 5bv64) := value][bvadd64(index, 6bv64) := value][bvadd64(index, 7bv64) := value] +} + +function {:extern} gamma_store8(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value] +} + +function {:extern} memory_load64_le(memory: [bv64]bv8, index: bv64) returns (bv64) { + (memory[bvadd64(index, 7bv64)] ++ (memory[bvadd64(index, 6bv64)] ++ (memory[bvadd64(index, 5bv64)] ++ (memory[bvadd64(index, 4bv64)] ++ (memory[bvadd64(index, 3bv64)] ++ (memory[bvadd64(index, 2bv64)] ++ (memory[bvadd64(index, 1bv64)] ++ memory[index]))))))) +} + +function {:extern} memory_load8_le(memory: [bv64]bv8, index: bv64) returns (bv8) { + memory[index] +} + +function {:extern} memory_store64_le(memory: [bv64]bv8, index: bv64, value: bv64) returns ([bv64]bv8) { + memory[index := value[8:0]][bvadd64(index, 1bv64) := value[16:8]][bvadd64(index, 2bv64) := value[24:16]][bvadd64(index, 3bv64) := value[32:24]][bvadd64(index, 4bv64) := value[40:32]][bvadd64(index, 5bv64) := value[48:40]][bvadd64(index, 6bv64) := value[56:48]][bvadd64(index, 7bv64) := value[64:56]] +} + +function {:extern} memory_store8_be(memory: [bv64]bv8, index: bv64, value: bv8) returns ([bv64]bv8) { + memory[index := value[8:0]] +} + +procedure {:extern} rely(); + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure {:extern} rely_transitive() + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); +{ + call rely(); + call rely(); +} + +procedure {:extern} rely_reflexive(); + +procedure {:extern} guarantee_reflexive(); + modifies Gamma_mem, mem; + +procedure #free(); + modifies Gamma_R16, Gamma_R17, R16, R17; + requires (forall i : int, j: bv64 :: (malloc_base[i] == R0 && bvuge64(j, R0) && bvult64(j, malloc_end[i])) ==> Gamma_mem[j]); + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure main() + modifies Gamma_R0, Gamma_R1, Gamma_R16, Gamma_R17, Gamma_R19, Gamma_R2, Gamma_R29, Gamma_R30, Gamma_R31, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, Gamma_mem, Gamma_stack, R0, R1, R16, R17, R19, R2, R29, R30, R31, malloc_base, malloc_count, malloc_end, mem, stack; + requires (gamma_load8(Gamma_mem, $password_addr) == false); + requires malloc_count == 0; + requires gamma_load32(Gamma_mem, memory_load64_le(mem, $stext_addr)); + requires R31 == 100bv64; + free requires (memory_load8_le(mem, 131152bv64) == 0bv8); + free requires (memory_load8_le(mem, 131153bv64) == 0bv8); + free requires (memory_load8_le(mem, 131154bv64) == 0bv8); + free requires (memory_load8_le(mem, 131155bv64) == 0bv8); + free requires (memory_load8_le(mem, 131156bv64) == 0bv8); + free requires (memory_load8_le(mem, 131157bv64) == 0bv8); + free requires (memory_load8_le(mem, 131158bv64) == 0bv8); + free requires (memory_load8_le(mem, 131159bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 131168bv64) == 7bv8); + free requires (memory_load8_le(mem, 131169bv64) == 0bv8); + free requires (memory_load8_le(mem, 131170bv64) == 0bv8); + free requires (memory_load8_le(mem, 131171bv64) == 0bv8); + free requires (memory_load8_le(mem, 131172bv64) == 0bv8); + free requires (memory_load8_le(mem, 131173bv64) == 0bv8); + free requires (memory_load8_le(mem, 131174bv64) == 0bv8); + free requires (memory_load8_le(mem, 131175bv64) == 0bv8); + free requires (memory_load8_le(mem, 131176bv64) == 117bv8); + free requires (memory_load8_le(mem, 131177bv64) == 115bv8); + free requires (memory_load8_le(mem, 131178bv64) == 101bv8); + free requires (memory_load8_le(mem, 131179bv64) == 114bv8); + free requires (memory_load8_le(mem, 131180bv64) == 58bv8); + free requires (memory_load8_le(mem, 131181bv64) == 112bv8); + free requires (memory_load8_le(mem, 131182bv64) == 97bv8); + free requires (memory_load8_le(mem, 131183bv64) == 115bv8); + free requires (memory_load8_le(mem, 131184bv64) == 115bv8); + free requires (memory_load8_le(mem, 131185bv64) == 0bv8); + free requires (memory_load8_le(mem, 131186bv64) == 0bv8); + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (Gamma_R19 == old(Gamma_R19)); + free ensures (Gamma_R29 == old(Gamma_R29)); + free ensures (Gamma_R31 == old(Gamma_R31)); + free ensures (R19 == old(R19)); + free ensures (R29 == old(R29)); + free ensures (R31 == old(R31)); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); +{ + var #42: bv64; + var Gamma_#42: bool; + lmain: + assume {:captureState "lmain"} true; + #42, Gamma_#42 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #42, R29), gamma_store64(Gamma_stack, #42, Gamma_R29); + assume {:captureState "%000003b5"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#42, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#42, 8bv64), Gamma_R30); + assume {:captureState "%000003ba"} true; + R31, Gamma_R31 := #42, Gamma_#42; + R29, Gamma_R29 := R31, Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 16bv64), R19), gamma_store64(Gamma_stack, bvadd64(R31, 16bv64), Gamma_R19); + assume {:captureState "%000003cd"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 40bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R31, 40bv64), true); + assume {:captureState "%000003d5"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 32bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R31, 32bv64), true); + assume {:captureState "%000003dd"} true; + R0, Gamma_R0 := 11bv64, true; + R30, Gamma_R30 := 2288bv64, true; + call malloc(); + goto l000003ed; + l000003ed: + assume {:captureState "l000003ed"} true; + R1, Gamma_R1 := R0, Gamma_R0; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + assert (L(mem, R0) ==> Gamma_R1); + mem, Gamma_mem := memory_store64_le(mem, R0, R1), gamma_store64(Gamma_mem, R0, Gamma_R1); + assume {:captureState "%00000408"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R19, Gamma_R19 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 104bv64), Gamma_R0; + R30, Gamma_R30 := 2328bv64, true; + call strlen(); + goto l00000434; + l00000434: + assume {:captureState "l00000434"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := 131072bv64, true; + R1, Gamma_R1 := bvadd64(R0, 104bv64), Gamma_R0; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2348bv64, true; + call memcpy(); + goto l00000459; + l00000459: + assume {:captureState "l00000459"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2364bv64, true; + call puts(); + goto l00000476; + l00000476: + assume {:captureState "l00000476"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := bvadd64(R0, 4bv64), Gamma_R0; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 40bv64), R0), gamma_store64(Gamma_stack, bvadd64(R31, 40bv64), Gamma_R0); + assume {:captureState "%00000498"} true; + R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 40bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 40bv64)); + call rely(); + assert (L(mem, R0) ==> true); + mem, Gamma_mem := memory_store8_be(mem, R0, 0bv8), gamma_store8(Gamma_mem, R0, true); + assume {:captureState "%000004a8"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R19, Gamma_R19 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2420bv64, true; + call strlen(); + goto l000004db; + l000004db: + assume {:captureState "l000004db"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R1, Gamma_R1 := 1bv64, true; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2436bv64, true; + call memset(); + goto l000004fa; + l000004fa: + assume {:captureState "l000004fa"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2452bv64, true; + call #free(); + goto l00000517; + l00000517: + assume {:captureState "l00000517"} true; + R0, Gamma_R0 := 0bv64, true; + R19, Gamma_R19 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); + R29, Gamma_R29 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); + R30, Gamma_R30 := memory_load64_le(stack, bvadd64(R31, 8bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 8bv64)); + R31, Gamma_R31 := bvadd64(R31, 48bv64), Gamma_R31; + return; +} + +procedure malloc(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, R0, R16, R17, malloc_base, malloc_count, malloc_end; + requires bvugt64(R0, 0bv64); + requires Gamma_R0 == true; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures Gamma_R0 == true; + ensures malloc_count == old(malloc_count) + 1; + ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); + ensures R0 == malloc_base[malloc_count]; + ensures malloc_end[malloc_count] == bvadd64(R0, old(R0)); + ensures (forall i: int :: i != malloc_count ==> bvugt64(malloc_base[malloc_count], malloc_end[i]) || bvult64(malloc_end[malloc_count], malloc_base[i])); + ensures (forall i: int :: i != malloc_count ==> malloc_base[i] == old(malloc_base[i]) && malloc_end[i] == old(malloc_end[i])); + ensures bvuge64(R0, 100000000bv64); + ensures (forall i : bv64 :: (bvuge64(i, R0) && bvult64(i, bvadd64(R0, old(R0)))) ==> (Gamma_mem[i] && gamma_load8(Gamma_mem, i))); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memcpy(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memset(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + requires Gamma_R1; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then Gamma_R1 else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then R1[8:0] else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure puts(); + modifies Gamma_R16, Gamma_R17, R16, R17; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure strlen(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, R0, R16, R17; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); + ensures Gamma_R0 == true; + ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); + ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); + ensures (bvult64(old(R0), bvadd64(bvadd64(old(R0), R0), 1bv64))); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.adt b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.adt index 23c651808..b1f316af1 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.adt +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.adt @@ -67,10 +67,10 @@ Annotation(Region(0x20050,0x2006B), Attr("section","\".data\"")), Annotation(Region(0x7C0,0x993), Attr("section","\".text\"")), Annotation(Region(0x7C0,0x993), Attr("code-region","()")), Annotation(Region(0x994,0x9A7), Attr("code-region","()"))]), -Program(Tid(2_197, "%00000895"), Attrs([]), +Program(Tid(2_240, "%000008c0"), Attrs([]), Subs([Sub(Tid(2_169, "@__cxa_finalize"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x740"), -Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_198, "%00000896"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_241, "%000008c1"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_318, "@__cxa_finalize"), @@ -87,7 +87,7 @@ PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_758, "%000006de"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_170, "@__do_global_dtors_aux"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x940")]), - "__do_global_dtors_aux", Args([Arg(Tid(2_199, "%00000897"), + "__do_global_dtors_aux", Args([Arg(Tid(2_242, "%000008c2"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), @@ -120,7 +120,7 @@ Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#79",Imm(1)), EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), Jmps([Goto(Tid(1_206, "%000004b6"), Attrs([Attr("address","0x954"), Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#79",Imm(1)), -Direct(Tid(1_204, "%000004b4"))), Goto(Tid(2_171, "%0000087b"), Attrs([]), +Direct(Tid(1_204, "%000004b4"))), Goto(Tid(2_230, "%000008b6"), Attrs([]), Int(1,1), Direct(Tid(1_252, "%000004e4")))])), Blk(Tid(1_252, "%000004e4"), Attrs([Attr("address","0x958")]), Phis([]), Defs([Def(Tid(1_256, "%000004e8"), Attrs([Attr("address","0x958"), @@ -133,7 +133,7 @@ Attr("insn","cbz x0, #0x10")]), Var("#83",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_270, "%000004f6"), Attrs([Attr("address","0x960"), Attr("insn","cbz x0, #0x10")]), Var("#83",Imm(1)), Direct(Tid(1_268, "%000004f4"))), -Goto(Tid(2_172, "%0000087c"), Attrs([]), Int(1,1), +Goto(Tid(2_231, "%000008b7"), Attrs([]), Int(1,1), Direct(Tid(1_300, "%00000514")))])), Blk(Tid(1_300, "%00000514"), Attrs([Attr("address","0x964")]), Phis([]), Defs([Def(Tid(1_304, "%00000518"), Attrs([Attr("address","0x964"), @@ -158,7 +158,7 @@ Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), Def(Tid(1_298, "%00000512"), Attrs([Attr("address","0x978"), Attr("insn","strb w0, [x19, #0x70]")]), Var("mem",Mem(64,8)), Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(112,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), -Jmps([Goto(Tid(2_173, "%0000087d"), Attrs([]), Int(1,1), +Jmps([Goto(Tid(2_232, "%000008b8"), Attrs([]), Int(1,1), Direct(Tid(1_204, "%000004b4")))])), Blk(Tid(1_204, "%000004b4"), Attrs([Attr("address","0x97C")]), Phis([]), Defs([Def(Tid(1_220, "%000004c4"), Attrs([Attr("address","0x97C"), @@ -177,21 +177,21 @@ PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_242, "%000004da"), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_174, "@__libc_start_main"), Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), Attr("address","0x730"), Attr("stub","()")]), "__libc_start_main", - Args([Arg(Tid(2_200, "%00000898"), + Args([Arg(Tid(2_243, "%000008c3"), Attrs([Attr("c.layout","**[ : 64]"), Attr("c.data","Top:u64 ptr ptr"), Attr("c.type","signed (*)(signed , char** , char** );*")]), Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_201, "%00000899"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_244, "%000008c4"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), -Arg(Tid(2_202, "%0000089a"), Attrs([Attr("c.layout","**[char : 8]"), +Arg(Tid(2_245, "%000008c5"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), -Arg(Tid(2_203, "%0000089b"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_246, "%000008c6"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), -Arg(Tid(2_204, "%0000089c"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_247, "%000008c7"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(961, "@__libc_start_main"), @@ -207,7 +207,7 @@ PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_733, "%000006c5"), Attrs([Attr("address","0x73C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_175, "@_fini"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x994")]), - "_fini", Args([Arg(Tid(2_205, "%0000089d"), + "_fini", Args([Arg(Tid(2_248, "%000008c8"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_fini_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), @@ -237,7 +237,7 @@ PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), Attrs([Attr("address","0x9A4"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_176, "@_init"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x6D8")]), - "_init", Args([Arg(Tid(2_206, "%0000089e"), + "_init", Args([Arg(Tid(2_249, "%000008c9"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_init_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_936, "@_init"), @@ -273,7 +273,7 @@ PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_995, "%000007cb"), Attrs([Attr("address","0x6EC"), Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_177, "@_start"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880"), -Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_207, "%0000089f"), +Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_250, "%000008ca"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("_start_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(887, "@_start"), @@ -311,9 +311,9 @@ Defs([Def(Tid(968, "%000003c8"), Attrs([Attr("address","0x8B0"), Attr("insn","bl #-0x130")]), Var("R30",Imm(64)), Int(2228,64))]), Jmps([Call(Tid(971, "%000003cb"), Attrs([Attr("address","0x8B0"), Attr("insn","bl #-0x130")]), Int(1,1), -(Direct(Tid(2_180, "@abort")),Direct(Tid(2_178, "%00000882"))))])), -Blk(Tid(2_178, "%00000882"), Attrs([]), Phis([]), Defs([]), -Jmps([Call(Tid(2_179, "%00000883"), Attrs([]), Int(1,1), +(Direct(Tid(2_180, "@abort")),Direct(Tid(2_233, "%000008b9"))))])), +Blk(Tid(2_233, "%000008b9"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_234, "%000008ba"), Attrs([]), Int(1,1), (Direct(Tid(2_181, "@call_weak_fn")),))]))])), Sub(Tid(2_180, "@abort"), Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), Attr("address","0x780"), Attr("stub","()")]), "abort", Args([]), @@ -329,7 +329,7 @@ PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_858, "%00000742"), Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_181, "@call_weak_fn"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8B4")]), - "call_weak_fn", Args([Arg(Tid(2_208, "%000008a0"), + "call_weak_fn", Args([Arg(Tid(2_251, "%000008cb"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(973, "@call_weak_fn"), @@ -344,7 +344,7 @@ Attr("insn","cbz x0, #0x8")]), Var("#55",Imm(1)), EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(991, "%000003df"), Attrs([Attr("address","0x8BC"), Attr("insn","cbz x0, #0x8")]), Var("#55",Imm(1)), Direct(Tid(989, "%000003dd"))), -Goto(Tid(2_182, "%00000886"), Attrs([]), Int(1,1), +Goto(Tid(2_235, "%000008bb"), Attrs([]), Int(1,1), Direct(Tid(1_400, "%00000578")))])), Blk(Tid(989, "%000003dd"), Attrs([Attr("address","0x8C4")]), Phis([]), Defs([]), Jmps([Call(Tid(1_002, "%000003ea"), Attrs([Attr("address","0x8C4"), @@ -366,7 +366,7 @@ PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_833, "%00000729"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_183, "@deregister_tm_clones"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8D0")]), - "deregister_tm_clones", Args([Arg(Tid(2_209, "%000008a1"), + "deregister_tm_clones", Args([Arg(Tid(2_252, "%000008cc"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), @@ -400,7 +400,7 @@ Def(Tid(1_067, "%0000042b"), Attrs([Attr("address","0x8E4"), Attr("insn","b.eq #0x18")]), Var("#64",Imm(1)), Var("ZF",Imm(1)))]), Jmps([Goto(Tid(1_061, "%00000425"), Attrs([Attr("address","0x8E4"), Attr("insn","b.eq #0x18")]), Var("#64",Imm(1)), -Direct(Tid(1_059, "%00000423"))), Goto(Tid(2_184, "%00000888"), Attrs([]), +Direct(Tid(1_059, "%00000423"))), Goto(Tid(2_236, "%000008bc"), Attrs([]), Int(1,1), Direct(Tid(1_361, "%00000551")))])), Blk(Tid(1_361, "%00000551"), Attrs([Attr("address","0x8E8")]), Phis([]), Defs([Def(Tid(1_365, "%00000555"), Attrs([Attr("address","0x8E8"), @@ -413,7 +413,7 @@ Attr("insn","cbz x1, #0xc")]), Var("#91",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_378, "%00000562"), Attrs([Attr("address","0x8F0"), Attr("insn","cbz x1, #0xc")]), Var("#91",Imm(1)), Direct(Tid(1_059, "%00000423"))), -Goto(Tid(2_185, "%00000889"), Attrs([]), Int(1,1), +Goto(Tid(2_237, "%000008bd"), Attrs([]), Int(1,1), Direct(Tid(1_387, "%0000056b")))])), Blk(Tid(1_059, "%00000423"), Attrs([Attr("address","0x8FC")]), Phis([]), Defs([]), Jmps([Call(Tid(1_072, "%00000430"), Attrs([Attr("address","0x8FC"), @@ -424,7 +424,7 @@ Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), Jmps([Call(Tid(1_398, "%00000576"), Attrs([Attr("address","0x8F8"), Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), Sub(Tid(2_186, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), -Attr("address","0x990")]), "frame_dummy", Args([Arg(Tid(2_210, "%000008a2"), +Attr("address","0x990")]), "frame_dummy", Args([Arg(Tid(2_253, "%000008cd"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_248, "@frame_dummy"), @@ -433,7 +433,7 @@ Jmps([Call(Tid(1_250, "%000004e2"), Attrs([Attr("address","0x990"), Attr("insn","b #-0x90")]), Int(1,1), (Direct(Tid(2_193, "@register_tm_clones")),))]))])), Sub(Tid(2_187, "@free"), Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7A0"), -Attr("stub","()")]), "free", Args([Arg(Tid(2_211, "%000008a3"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_254, "%000008ce"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), Both())]), Blks([Blk(Tid(807, "@free"), Attrs([Attr("address","0x7A0")]), @@ -448,13 +448,13 @@ PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_908, "%00000774"), Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_188, "@main"), Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), -Attr("address","0x7C0")]), "main", Args([Arg(Tid(2_212, "%000008a4"), +Attr("address","0x7C0")]), "main", Args([Arg(Tid(2_255, "%000008cf"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_argc",Imm(32)), -LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_213, "%000008a5"), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_256, "%000008d0"), Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), -Var("R1",Imm(64)), Both()), Arg(Tid(2_214, "%000008a6"), +Var("R1",Imm(64)), Both()), Arg(Tid(2_257, "%000008d1"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(556, "@main"), @@ -594,10 +594,10 @@ PLUS(Var("R31",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(859, "%0000035b"), (Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_189, "@malloc"), Attrs([Attr("c.proto","void* (*)(unsigned long size)"), Attr("address","0x750"), Attr("malloc","()"), Attr("stub","()")]), "malloc", - Args([Arg(Tid(2_215, "%000008a7"), Attrs([Attr("alloc-size","()"), + Args([Arg(Tid(2_258, "%000008d2"), Attrs([Attr("alloc-size","()"), Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), -Var("R0",Imm(64)), In()), Arg(Tid(2_216, "%000008a8"), +Var("R0",Imm(64)), In()), Arg(Tid(2_259, "%000008d3"), Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), @@ -614,17 +614,17 @@ PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_783, "%000006f7"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_190, "@memcpy"), Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), Attr("address","0x710"), Attr("stub","()")]), "memcpy", - Args([Arg(Tid(2_217, "%000008a9"), Attrs([Attr("nonnull","()"), + Args([Arg(Tid(2_260, "%000008d4"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), -Var("R0",Imm(64)), Both()), Arg(Tid(2_218, "%000008aa"), +Var("R0",Imm(64)), Both()), Arg(Tid(2_261, "%000008d5"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), -Arg(Tid(2_219, "%000008ab"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Arg(Tid(2_262, "%000008d6"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), -Arg(Tid(2_220, "%000008ac"), Attrs([Attr("c.layout","*[ : 8]"), +Arg(Tid(2_263, "%000008d7"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(705, "@memcpy"), Attrs([Attr("address","0x710")]), Phis([]), @@ -640,16 +640,16 @@ Var("R16",Imm(64)))]), Jmps([Call(Tid(1_683, "%00000693"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_191, "@memset"), Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), Attr("address","0x760"), Attr("stub","()")]), "memset", - Args([Arg(Tid(2_221, "%000008ad"), Attrs([Attr("nonnull","()"), + Args([Arg(Tid(2_264, "%000008d8"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), -Both()), Arg(Tid(2_222, "%000008ae"), +Both()), Arg(Tid(2_265, "%000008d9"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("memset_c",Imm(32)), -LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_223, "%000008af"), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_266, "%000008da"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), -In()), Arg(Tid(2_224, "%000008b0"), Attrs([Attr("c.layout","*[ : 8]"), +In()), Arg(Tid(2_267, "%000008db"), Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), Attr("c.type","void*")]), Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(791, "@memset"), Attrs([Attr("address","0x760")]), Phis([]), @@ -665,10 +665,10 @@ PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_808, "%00000710"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_192, "@puts"), Attrs([Attr("c.proto","signed (*)( const char* s)"), Attr("address","0x790"), Attr("stub","()")]), "puts", - Args([Arg(Tid(2_225, "%000008b1"), Attrs([Attr("c.layout","*[char : 8]"), + Args([Arg(Tid(2_268, "%000008dc"), Attrs([Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), -Arg(Tid(2_226, "%000008b2"), Attrs([Attr("c.layout","[signed : 32]"), +Arg(Tid(2_269, "%000008dd"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(721, "@puts"), Attrs([Attr("address","0x790")]), Phis([]), @@ -684,7 +684,7 @@ PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_883, "%0000075b"), (Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_193, "@register_tm_clones"), Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x900")]), - "register_tm_clones", Args([Arg(Tid(2_227, "%000008b3"), + "register_tm_clones", Args([Arg(Tid(2_270, "%000008de"), Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), @@ -714,7 +714,7 @@ RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(1_140, "%00000474"), Var("#73",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_134, "%0000046e"), Attrs([Attr("address","0x920"), Attr("insn","cbz x1, #0x18")]), Var("#73",Imm(1)), -Direct(Tid(1_132, "%0000046c"))), Goto(Tid(2_194, "%00000892"), Attrs([]), +Direct(Tid(1_132, "%0000046c"))), Goto(Tid(2_238, "%000008be"), Attrs([]), Int(1,1), Direct(Tid(1_322, "%0000052a")))])), Blk(Tid(1_322, "%0000052a"), Attrs([Attr("address","0x924")]), Phis([]), Defs([Def(Tid(1_326, "%0000052e"), Attrs([Attr("address","0x924"), @@ -727,7 +727,7 @@ Attr("insn","cbz x2, #0xc")]), Var("#86",Imm(1)), EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_339, "%0000053b"), Attrs([Attr("address","0x92C"), Attr("insn","cbz x2, #0xc")]), Var("#86",Imm(1)), Direct(Tid(1_132, "%0000046c"))), -Goto(Tid(2_195, "%00000893"), Attrs([]), Int(1,1), +Goto(Tid(2_239, "%000008bf"), Attrs([]), Int(1,1), Direct(Tid(1_348, "%00000544")))])), Blk(Tid(1_132, "%0000046c"), Attrs([Attr("address","0x938")]), Phis([]), Defs([]), Jmps([Call(Tid(1_145, "%00000479"), Attrs([Attr("address","0x938"), @@ -740,10 +740,10 @@ Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), Sub(Tid(2_196, "@strlen"), Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), Attr("pure","()"), Attr("address","0x720"), Attr("stub","()")]), "strlen", - Args([Arg(Tid(2_228, "%000008b4"), Attrs([Attr("nonnull","()"), + Args([Arg(Tid(2_271, "%000008df"), Attrs([Attr("nonnull","()"), Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), -In()), Arg(Tid(2_229, "%000008b5"), +In()), Arg(Tid(2_272, "%000008e0"), Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(673, "@strlen"), diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.bir b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.bir index b0832a61f..638192f98 100644 --- a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.bir +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.bir @@ -1,6 +1,6 @@ -00000895: program +000008c0: program 00000879: sub __cxa_finalize(__cxa_finalize_result) -00000896: __cxa_finalize_result :: out u32 = low:32[R0] +000008c1: __cxa_finalize_result :: out u32 = low:32[R0] 00000526: 000006ca: R16 := 0x20000 @@ -9,7 +9,7 @@ 000006de: call R17 with noreturn 0000087a: sub __do_global_dtors_aux(__do_global_dtors_aux_result) -00000897: __do_global_dtors_aux_result :: out u32 = low:32[R0] +000008c2: __do_global_dtors_aux_result :: out u32 = low:32[R0] 0000047d: 00000484: #77 := R31 - 0x20 @@ -22,14 +22,14 @@ 000004b0: R0 := pad:32[mem[R19 + 0x70]] 000004bc: #79 := ~~0:0[R0] 000004b6: when #79 goto %000004b4 -0000087b: goto %000004e4 +000008b6: goto %000004e4 000004e4: 000004e8: R0 := 0x1F000 000004f0: R0 := mem[R0 + 0xFC8, el]:u64 000004fc: #83 := R0 = 0 000004f6: when #83 goto %000004f4 -0000087c: goto %00000514 +000008b7: goto %00000514 00000514: 00000518: R0 := 0x20000 @@ -44,7 +44,7 @@ 00000505: 0000050a: R0 := 1 00000512: mem := mem with [R19 + 0x70] <- low:8[31:0[R0]] -0000087d: goto %000004b4 +000008b8: goto %000004b4 000004b4: 000004c4: R19 := mem[R31 + 0x10, el]:u64 @@ -54,11 +54,11 @@ 000004da: call R30 with noreturn 0000087e: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) -00000898: __libc_start_main_main :: in u64 = R0 -00000899: __libc_start_main_arg2 :: in u32 = low:32[R1] -0000089a: __libc_start_main_arg3 :: in out u64 = R2 -0000089b: __libc_start_main_auxv :: in out u64 = R3 -0000089c: __libc_start_main_result :: out u32 = low:32[R0] +000008c3: __libc_start_main_main :: in u64 = R0 +000008c4: __libc_start_main_arg2 :: in u32 = low:32[R1] +000008c5: __libc_start_main_arg3 :: in out u64 = R2 +000008c6: __libc_start_main_auxv :: in out u64 = R3 +000008c7: __libc_start_main_result :: out u32 = low:32[R0] 000003c1: 000006b1: R16 := 0x20000 @@ -67,7 +67,7 @@ 000006c5: call R17 with noreturn 0000087f: sub _fini(_fini_result) -0000089d: _fini_result :: out u32 = low:32[R0] +000008c8: _fini_result :: out u32 = low:32[R0] 00000020: 00000029: #3 := R31 - 0x10 @@ -81,7 +81,7 @@ 00000054: call R30 with noreturn 00000880: sub _init(_init_result) -0000089e: _init_result :: out u32 = low:32[R0] +000008c9: _init_result :: out u32 = low:32[R0] 00000790: 00000799: #114 := R31 - 0x10 @@ -99,7 +99,7 @@ 000007cb: call R30 with noreturn 00000881: sub _start(_start_result) -0000089f: _start_result :: out u32 = low:32[R0] +000008ca: _start_result :: out u32 = low:32[R0] 00000377: 0000037d: R29 := 0 @@ -117,10 +117,10 @@ 000003c5: 000003c8: R30 := 0x8B4 -000003cb: call @abort with return %00000882 +000003cb: call @abort with return %000008b9 -00000882: -00000883: call @call_weak_fn with noreturn +000008b9: +000008ba: call @call_weak_fn with noreturn 00000884: sub abort() @@ -132,14 +132,14 @@ 00000742: call R17 with noreturn 00000885: sub call_weak_fn(call_weak_fn_result) -000008a0: call_weak_fn_result :: out u32 = low:32[R0] +000008cb: call_weak_fn_result :: out u32 = low:32[R0] 000003cd: 000003d1: R0 := 0x1F000 000003d9: R0 := mem[R0 + 0xFD0, el]:u64 000003e5: #55 := R0 = 0 000003df: when #55 goto %000003dd -00000886: goto %00000578 +000008bb: goto %00000578 000003dd: 000003ea: call R30 with noreturn @@ -154,7 +154,7 @@ 00000729: call R17 with noreturn 00000887: sub deregister_tm_clones(deregister_tm_clones_result) -000008a1: deregister_tm_clones_result :: out u32 = low:32[R0] +000008cc: deregister_tm_clones_result :: out u32 = low:32[R0] 000003f0: 000003f4: R0 := 0x20000 @@ -170,14 +170,14 @@ & ~63:63[#59] 0000042b: #64 := ZF 00000425: when #64 goto %00000423 -00000888: goto %00000551 +000008bc: goto %00000551 00000551: 00000555: R1 := 0x1F000 0000055d: R1 := mem[R1 + 0xFC0, el]:u64 00000568: #91 := R1 = 0 00000562: when #91 goto %00000423 -00000889: goto %0000056b +000008bd: goto %0000056b 00000423: 00000430: call R30 with noreturn @@ -187,13 +187,13 @@ 00000576: call R16 with noreturn 0000088a: sub frame_dummy(frame_dummy_result) -000008a2: frame_dummy_result :: out u32 = low:32[R0] +000008cd: frame_dummy_result :: out u32 = low:32[R0] 000004e0: 000004e2: call @register_tm_clones with noreturn 0000088b: sub free(free_ptr) -000008a3: free_ptr :: in out u64 = R0 +000008ce: free_ptr :: in out u64 = R0 00000327: 00000760: R16 := 0x20000 @@ -202,9 +202,9 @@ 00000774: call R17 with noreturn 0000088c: sub main(main_argc, main_argv, main_result) -000008a4: main_argc :: in u32 = low:32[R0] -000008a5: main_argv :: in out u64 = R1 -000008a6: main_result :: out u32 = low:32[R0] +000008cf: main_argc :: in u32 = low:32[R0] +000008d0: main_argv :: in out u64 = R1 +000008d1: main_result :: out u32 = low:32[R0] 0000022c: 00000233: #9 := R31 - 0x30 @@ -273,8 +273,8 @@ 0000035b: call R30 with noreturn 0000088d: sub malloc(malloc_size, malloc_result) -000008a7: malloc_size :: in u64 = R0 -000008a8: malloc_result :: out u64 = R0 +000008d2: malloc_size :: in u64 = R0 +000008d3: malloc_result :: out u64 = R0 00000274: 000006e3: R16 := 0x20000 @@ -283,10 +283,10 @@ 000006f7: call R17 with noreturn 0000088e: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) -000008a9: memcpy_dst :: in out u64 = R0 -000008aa: memcpy_src :: in out u64 = R1 -000008ab: memcpy_n :: in u64 = R2 -000008ac: memcpy_result :: out u64 = R0 +000008d4: memcpy_dst :: in out u64 = R0 +000008d5: memcpy_src :: in out u64 = R1 +000008d6: memcpy_n :: in u64 = R2 +000008d7: memcpy_result :: out u64 = R0 000002c1: 0000067f: R16 := 0x20000 @@ -295,10 +295,10 @@ 00000693: call R17 with noreturn 0000088f: sub memset(memset_buf, memset_c, memset_n, memset_result) -000008ad: memset_buf :: in out u64 = R0 -000008ae: memset_c :: in u32 = low:32[R1] -000008af: memset_n :: in u64 = R2 -000008b0: memset_result :: out u64 = R0 +000008d8: memset_buf :: in out u64 = R0 +000008d9: memset_c :: in u32 = low:32[R1] +000008da: memset_n :: in u64 = R2 +000008db: memset_result :: out u64 = R0 00000317: 000006fc: R16 := 0x20000 @@ -307,8 +307,8 @@ 00000710: call R17 with noreturn 00000890: sub puts(puts_s, puts_result) -000008b1: puts_s :: in u64 = R0 -000008b2: puts_result :: out u32 = low:32[R0] +000008dc: puts_s :: in u64 = R0 +000008dd: puts_result :: out u32 = low:32[R0] 000002d1: 00000747: R16 := 0x20000 @@ -317,7 +317,7 @@ 0000075b: call R17 with noreturn 00000891: sub register_tm_clones(register_tm_clones_result) -000008b3: register_tm_clones_result :: out u32 = low:32[R0] +000008de: register_tm_clones_result :: out u32 = low:32[R0] 00000432: 00000436: R0 := 0x20000 @@ -330,14 +330,14 @@ 00000468: R1 := R1 >> 1 00000474: #73 := R1 = 0 0000046e: when #73 goto %0000046c -00000892: goto %0000052a +000008be: goto %0000052a 0000052a: 0000052e: R2 := 0x1F000 00000536: R2 := mem[R2 + 0xFE0, el]:u64 00000541: #86 := R2 = 0 0000053b: when #86 goto %0000046c -00000893: goto %00000544 +000008bf: goto %00000544 0000046c: 00000479: call R30 with noreturn @@ -347,8 +347,8 @@ 0000054f: call R16 with noreturn 00000894: sub strlen(strlen_s, strlen_result) -000008b4: strlen_s :: in u64 = R0 -000008b5: strlen_result :: out u64 = R0 +000008df: strlen_s :: in u64 = R0 +000008e0: strlen_result :: out u64 = R0 000002a1: 00000698: R16 := 0x20000 diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.expected b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.expected new file mode 100644 index 000000000..455a7193f --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_O2/malloc_memcpy_strlen_memset_free.expected @@ -0,0 +1,823 @@ +var {:extern} Gamma_R0: bool; +var {:extern} Gamma_R1: bool; +var {:extern} Gamma_R16: bool; +var {:extern} Gamma_R17: bool; +var {:extern} Gamma_R19: bool; +var {:extern} Gamma_R2: bool; +var {:extern} Gamma_R20: bool; +var {:extern} Gamma_R21: bool; +var {:extern} Gamma_R29: bool; +var {:extern} Gamma_R30: bool; +var {:extern} Gamma_R31: bool; +var {:extern} Gamma_malloc_base: [bv64]bool; +var {:extern} Gamma_malloc_count: [bv64]bool; +var {:extern} Gamma_malloc_end: [bv64]bool; +var {:extern} Gamma_mem: [bv64]bool; +var {:extern} Gamma_stack: [bv64]bool; +var {:extern} R0: bv64; +var {:extern} R1: bv64; +var {:extern} R16: bv64; +var {:extern} R17: bv64; +var {:extern} R19: bv64; +var {:extern} R2: bv64; +var {:extern} R20: bv64; +var {:extern} R21: bv64; +var {:extern} R29: bv64; +var {:extern} R30: bv64; +var {:extern} R31: bv64; +var {:extern} malloc_base: [bv64]bv8; +var {:extern} malloc_count: [bv64]bv8; +var {:extern} malloc_end: [bv64]bv8; +var {:extern} mem: [bv64]bv8; +var {:extern} stack: [bv64]bv8; +const {:extern} $buf_addr: bv64; +axiom ($buf_addr == 131192bv64); +const {:extern} $password_addr: bv64; +axiom ($password_addr == 131179bv64); +const {:extern} $stext_addr: bv64; +axiom ($stext_addr == 131168bv64); +function {:extern} L(memory: [bv64]bv8, index: bv64) returns (bool) { + false +} + +function {:extern} {:bvbuiltin "bvadd"} bvadd64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvsub"} bvsub64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvuge"} bvuge64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvugt"} bvugt64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvule"} bvule64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvult"} bvult64(bv64, bv64) returns (bool); +function {:extern} gamma_load32(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))) +} + +function {:extern} gamma_load64(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 7bv64)] && (gammaMap[bvadd64(index, 6bv64)] && (gammaMap[bvadd64(index, 5bv64)] && (gammaMap[bvadd64(index, 4bv64)] && (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))))))) +} + +function {:extern} gamma_load8(gammaMap: [bv64]bool, index: bv64) returns (bool) { + gammaMap[index] +} + +function {:extern} gamma_store64(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value][bvadd64(index, 1bv64) := value][bvadd64(index, 2bv64) := value][bvadd64(index, 3bv64) := value][bvadd64(index, 4bv64) := value][bvadd64(index, 5bv64) := value][bvadd64(index, 6bv64) := value][bvadd64(index, 7bv64) := value] +} + +function {:extern} gamma_store8(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value] +} + +function {:extern} memory_load64_le(memory: [bv64]bv8, index: bv64) returns (bv64) { + (memory[bvadd64(index, 7bv64)] ++ (memory[bvadd64(index, 6bv64)] ++ (memory[bvadd64(index, 5bv64)] ++ (memory[bvadd64(index, 4bv64)] ++ (memory[bvadd64(index, 3bv64)] ++ (memory[bvadd64(index, 2bv64)] ++ (memory[bvadd64(index, 1bv64)] ++ memory[index]))))))) +} + +function {:extern} memory_load8_le(memory: [bv64]bv8, index: bv64) returns (bv8) { + memory[index] +} + +function {:extern} memory_store64_le(memory: [bv64]bv8, index: bv64, value: bv64) returns ([bv64]bv8) { + memory[index := value[8:0]][bvadd64(index, 1bv64) := value[16:8]][bvadd64(index, 2bv64) := value[24:16]][bvadd64(index, 3bv64) := value[32:24]][bvadd64(index, 4bv64) := value[40:32]][bvadd64(index, 5bv64) := value[48:40]][bvadd64(index, 6bv64) := value[56:48]][bvadd64(index, 7bv64) := value[64:56]] +} + +function {:extern} memory_store8_be(memory: [bv64]bv8, index: bv64, value: bv8) returns ([bv64]bv8) { + memory[index := value[8:0]] +} + +procedure {:extern} rely(); + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); + free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2473bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2474bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 144bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 64bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 192bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 7bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure {:extern} rely_transitive() + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); +{ + call rely(); + call rely(); +} + +procedure {:extern} rely_reflexive(); + +procedure {:extern} guarantee_reflexive(); + modifies Gamma_mem, mem; + +procedure #free(); + modifies Gamma_R16, Gamma_R17, R16, R17; + requires (forall i : int, j: bv64 :: (malloc_base[i] == R0 && bvuge64(j, R0) && bvult64(j, malloc_end[i])) ==> Gamma_mem[j]); + free requires (memory_load8_le(mem, 2472bv64) == 1bv8); + free requires (memory_load8_le(mem, 2473bv64) == 0bv8); + free requires (memory_load8_le(mem, 2474bv64) == 2bv8); + free requires (memory_load8_le(mem, 2475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 144bv8); + free requires (memory_load8_le(mem, 130505bv64) == 9bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 64bv8); + free requires (memory_load8_le(mem, 130513bv64) == 9bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 192bv8); + free requires (memory_load8_le(mem, 131033bv64) == 7bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2473bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2474bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 144bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 64bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 192bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 7bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure main() + modifies Gamma_R0, Gamma_R1, Gamma_R16, Gamma_R17, Gamma_R19, Gamma_R2, Gamma_R20, Gamma_R21, Gamma_R29, Gamma_R30, Gamma_R31, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, Gamma_mem, Gamma_stack, R0, R1, R16, R17, R19, R2, R20, R21, R29, R30, R31, malloc_base, malloc_count, malloc_end, mem, stack; + requires (gamma_load8(Gamma_mem, $password_addr) == false); + requires malloc_count == 0; + requires gamma_load32(Gamma_mem, memory_load64_le(mem, $stext_addr)); + requires R31 == 100bv64; + free requires (memory_load8_le(mem, 131152bv64) == 0bv8); + free requires (memory_load8_le(mem, 131153bv64) == 0bv8); + free requires (memory_load8_le(mem, 131154bv64) == 0bv8); + free requires (memory_load8_le(mem, 131155bv64) == 0bv8); + free requires (memory_load8_le(mem, 131156bv64) == 0bv8); + free requires (memory_load8_le(mem, 131157bv64) == 0bv8); + free requires (memory_load8_le(mem, 131158bv64) == 0bv8); + free requires (memory_load8_le(mem, 131159bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 131168bv64) == 117bv8); + free requires (memory_load8_le(mem, 131169bv64) == 115bv8); + free requires (memory_load8_le(mem, 131170bv64) == 101bv8); + free requires (memory_load8_le(mem, 131171bv64) == 114bv8); + free requires (memory_load8_le(mem, 131172bv64) == 58bv8); + free requires (memory_load8_le(mem, 131173bv64) == 112bv8); + free requires (memory_load8_le(mem, 131174bv64) == 97bv8); + free requires (memory_load8_le(mem, 131175bv64) == 115bv8); + free requires (memory_load8_le(mem, 131176bv64) == 115bv8); + free requires (memory_load8_le(mem, 131177bv64) == 0bv8); + free requires (memory_load8_le(mem, 131178bv64) == 0bv8); + free requires (memory_load8_le(mem, 131179bv64) == 7bv8); + free requires (memory_load8_le(mem, 2472bv64) == 1bv8); + free requires (memory_load8_le(mem, 2473bv64) == 0bv8); + free requires (memory_load8_le(mem, 2474bv64) == 2bv8); + free requires (memory_load8_le(mem, 2475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 144bv8); + free requires (memory_load8_le(mem, 130505bv64) == 9bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 64bv8); + free requires (memory_load8_le(mem, 130513bv64) == 9bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 192bv8); + free requires (memory_load8_le(mem, 131033bv64) == 7bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (Gamma_R19 == old(Gamma_R19)); + free ensures (Gamma_R20 == old(Gamma_R20)); + free ensures (Gamma_R21 == old(Gamma_R21)); + free ensures (Gamma_R29 == old(Gamma_R29)); + free ensures (Gamma_R31 == old(Gamma_R31)); + free ensures (R19 == old(R19)); + free ensures (R20 == old(R20)); + free ensures (R21 == old(R21)); + free ensures (R29 == old(R29)); + free ensures (R31 == old(R31)); + free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2473bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2474bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 144bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 64bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 192bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 7bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); +{ + var #14: bv64; + var #9: bv64; + var Gamma_#14: bool; + var Gamma_#9: bool; + lmain: + assume {:captureState "lmain"} true; + #9, Gamma_#9 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #9, R29), gamma_store64(Gamma_stack, #9, Gamma_R29); + assume {:captureState "%00000238"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#9, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#9, 8bv64), Gamma_R30); + assume {:captureState "%0000023d"} true; + R31, Gamma_R31 := #9, Gamma_#9; + R0, Gamma_R0 := 11bv64, true; + R29, Gamma_R29 := R31, Gamma_R31; + #14, Gamma_#14 := bvadd64(R31, 16bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #14, R19), gamma_store64(Gamma_stack, #14, Gamma_R19); + assume {:captureState "%0000025b"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#14, 8bv64), R20), gamma_store64(Gamma_stack, bvadd64(#14, 8bv64), Gamma_R20); + assume {:captureState "%00000260"} true; + R20, Gamma_R20 := 131072bv64, true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 32bv64), R21), gamma_store64(Gamma_stack, bvadd64(R31, 32bv64), Gamma_R21); + assume {:captureState "%0000026e"} true; + R30, Gamma_R30 := 2012bv64, true; + call malloc(); + goto l00000278; + l00000278: + assume {:captureState "l00000278"} true; + R21, Gamma_R21 := 131072bv64, true; + R21, Gamma_R21 := bvadd64(R21, 96bv64), Gamma_R21; + R19, Gamma_R19 := R0, Gamma_R0; + R0, Gamma_R0 := R21, Gamma_R21; + call rely(); + assert (L(mem, bvadd64(R20, 120bv64)) ==> Gamma_R19); + mem, Gamma_mem := memory_store64_le(mem, bvadd64(R20, 120bv64), R19), gamma_store64(Gamma_mem, bvadd64(R20, 120bv64), Gamma_R19); + assume {:captureState "%0000029b"} true; + R30, Gamma_R30 := 2036bv64, true; + call strlen(); + goto l000002a5; + l000002a5: + assume {:captureState "l000002a5"} true; + R1, Gamma_R1 := R21, Gamma_R21; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2052bv64, true; + call memcpy(); + goto l000002c5; + l000002c5: + assume {:captureState "l000002c5"} true; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2060bv64, true; + call puts(); + goto l000002d5; + l000002d5: + assume {:captureState "l000002d5"} true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R20, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R20, 120bv64)) || L(mem, bvadd64(R20, 120bv64))); + call rely(); + assert (L(mem, bvadd64(R0, 4bv64)) ==> true); + mem, Gamma_mem := memory_store8_be(mem, bvadd64(R0, 4bv64), 0bv8), gamma_store8(Gamma_mem, bvadd64(R0, 4bv64), true); + assume {:captureState "%000002e3"} true; + call rely(); + R19, Gamma_R19 := memory_load64_le(mem, bvadd64(R20, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R20, 120bv64)) || L(mem, bvadd64(R20, 120bv64))); + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2080bv64, true; + call strlen(); + goto l000002fc; + l000002fc: + assume {:captureState "l000002fc"} true; + R1, Gamma_R1 := 1bv64, true; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2096bv64, true; + call memset(); + goto l0000031b; + l0000031b: + assume {:captureState "l0000031b"} true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R20, 120bv64)), (gamma_load64(Gamma_mem, bvadd64(R20, 120bv64)) || L(mem, bvadd64(R20, 120bv64))); + R30, Gamma_R30 := 2104bv64, true; + call #free(); + goto l0000032b; + l0000032b: + assume {:captureState "l0000032b"} true; + R19, Gamma_R19 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); + R20, Gamma_R20 := memory_load64_le(stack, bvadd64(R31, 24bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 24bv64)); + R0, Gamma_R0 := 0bv64, true; + R21, Gamma_R21 := memory_load64_le(stack, bvadd64(R31, 32bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 32bv64)); + R29, Gamma_R29 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); + R30, Gamma_R30 := memory_load64_le(stack, bvadd64(R31, 8bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 8bv64)); + R31, Gamma_R31 := bvadd64(R31, 48bv64), Gamma_R31; + return; +} + +procedure malloc(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, R0, R16, R17, malloc_base, malloc_count, malloc_end; + requires bvugt64(R0, 0bv64); + requires Gamma_R0 == true; + free requires (memory_load8_le(mem, 2472bv64) == 1bv8); + free requires (memory_load8_le(mem, 2473bv64) == 0bv8); + free requires (memory_load8_le(mem, 2474bv64) == 2bv8); + free requires (memory_load8_le(mem, 2475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 144bv8); + free requires (memory_load8_le(mem, 130505bv64) == 9bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 64bv8); + free requires (memory_load8_le(mem, 130513bv64) == 9bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 192bv8); + free requires (memory_load8_le(mem, 131033bv64) == 7bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures Gamma_R0 == true; + ensures malloc_count == old(malloc_count) + 1; + ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); + ensures R0 == malloc_base[malloc_count]; + ensures malloc_end[malloc_count] == bvadd64(R0, old(R0)); + ensures (forall i: int :: i != malloc_count ==> bvugt64(malloc_base[malloc_count], malloc_end[i]) || bvult64(malloc_end[malloc_count], malloc_base[i])); + ensures (forall i: int :: i != malloc_count ==> malloc_base[i] == old(malloc_base[i]) && malloc_end[i] == old(malloc_end[i])); + ensures bvuge64(R0, 100000000bv64); + ensures (forall i : bv64 :: (bvuge64(i, R0) && bvult64(i, bvadd64(R0, old(R0)))) ==> (Gamma_mem[i] && gamma_load8(Gamma_mem, i))); + free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2473bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2474bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 144bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 64bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 192bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 7bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memcpy(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + free requires (memory_load8_le(mem, 2472bv64) == 1bv8); + free requires (memory_load8_le(mem, 2473bv64) == 0bv8); + free requires (memory_load8_le(mem, 2474bv64) == 2bv8); + free requires (memory_load8_le(mem, 2475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 144bv8); + free requires (memory_load8_le(mem, 130505bv64) == 9bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 64bv8); + free requires (memory_load8_le(mem, 130513bv64) == 9bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 192bv8); + free requires (memory_load8_le(mem, 131033bv64) == 7bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2473bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2474bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 144bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 64bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 192bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 7bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memset(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + requires Gamma_R1; + free requires (memory_load8_le(mem, 2472bv64) == 1bv8); + free requires (memory_load8_le(mem, 2473bv64) == 0bv8); + free requires (memory_load8_le(mem, 2474bv64) == 2bv8); + free requires (memory_load8_le(mem, 2475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 144bv8); + free requires (memory_load8_le(mem, 130505bv64) == 9bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 64bv8); + free requires (memory_load8_le(mem, 130513bv64) == 9bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 192bv8); + free requires (memory_load8_le(mem, 131033bv64) == 7bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then Gamma_R1 else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then R1[8:0] else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2473bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2474bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 144bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 64bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 192bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 7bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure puts(); + modifies Gamma_R16, Gamma_R17, R16, R17; + free requires (memory_load8_le(mem, 2472bv64) == 1bv8); + free requires (memory_load8_le(mem, 2473bv64) == 0bv8); + free requires (memory_load8_le(mem, 2474bv64) == 2bv8); + free requires (memory_load8_le(mem, 2475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 144bv8); + free requires (memory_load8_le(mem, 130505bv64) == 9bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 64bv8); + free requires (memory_load8_le(mem, 130513bv64) == 9bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 192bv8); + free requires (memory_load8_le(mem, 131033bv64) == 7bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2473bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2474bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 144bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 64bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 192bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 7bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure strlen(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, R0, R16, R17; + free requires (memory_load8_le(mem, 2472bv64) == 1bv8); + free requires (memory_load8_le(mem, 2473bv64) == 0bv8); + free requires (memory_load8_le(mem, 2474bv64) == 2bv8); + free requires (memory_load8_le(mem, 2475bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 144bv8); + free requires (memory_load8_le(mem, 130505bv64) == 9bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 64bv8); + free requires (memory_load8_le(mem, 130513bv64) == 9bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 192bv8); + free requires (memory_load8_le(mem, 131033bv64) == 7bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); + ensures Gamma_R0 == true; + ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); + ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); + ensures (bvult64(old(R0), bvadd64(bvadd64(old(R0), R0), 1bv64))); + free ensures (memory_load8_le(mem, 2472bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2473bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2474bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2475bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 144bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 64bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 192bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 7bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt new file mode 100644 index 000000000..25875fa16 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.adt @@ -0,0 +1,797 @@ +Project(Attrs([Attr("filename","\"a.out\""), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2468 20 2468)\n(code-region 1984 484 1984)\n(code-region 1776 192 1776)\n(code-region 1752 24 1752)\n(code-start 2036)\n(code-start 1984)\n(code-start 2260)\n(entry-point 1984)\n(external-reference 131008 _ITM_deregisterTMCloneTable)\n(external-reference 131016 __cxa_finalize)\n(external-reference 131024 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1752 0)\n(llvm:code-entry main 2260 208)\n(llvm:code-entry _start 1984 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2468 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2256 0)\n(llvm:code-entry __do_global_dtors_aux 2176 0)\n(llvm:code-entry register_tm_clones 2112 0)\n(llvm:code-entry deregister_tm_clones 2064 0)\n(llvm:code-entry call_weak_fn 2036 20)\n(llvm:code-entry .fini 2468 20)\n(llvm:code-entry .text 1984 484)\n(llvm:code-entry .plt 1776 192)\n(llvm:code-entry .init 1752 24)\n(llvm:elf-program-header 08 64968 568)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2492 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64984 480)\n(llvm:elf-program-header 03 64968 683)\n(llvm:elf-program-header 02 0 2728)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130504 568)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2492 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130520 480)\n(llvm:elf-virtual-program-header 03 130504 704)\n(llvm:elf-virtual-program-header 02 0 2728)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 1984)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131024 __gmon_start__)\n(llvm:name-reference 131016 __cxa_finalize)\n(llvm:name-reference 131008 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68731)\n(llvm:section-entry .strtab 0 691 68040)\n(llvm:section-entry .symtab 0 2352 65688)\n(llvm:section-entry .comment 0 30 65651)\n(llvm:section-entry .bss 131192 16 65651)\n(llvm:section-entry .data 131152 35 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 131000 48 65464)\n(llvm:section-entry .dynamic 130520 480 64984)\n(llvm:section-entry .fini_array 130512 8 64976)\n(llvm:section-entry .init_array 130504 8 64968)\n(llvm:section-entry .eh_frame 2552 176 2552)\n(llvm:section-entry .eh_frame_hdr 2492 60 2492)\n(llvm:section-entry .rodata 2488 4 2488)\n(llvm:section-entry .fini 2468 20 2468)\n(llvm:section-entry .text 1984 484 1984)\n(llvm:section-entry .plt 1776 192 1776)\n(llvm:section-entry .init 1752 24 1752)\n(llvm:section-entry .rela.plt 1512 240 1512)\n(llvm:section-entry .rela.dyn 1320 192 1320)\n(llvm:section-entry .gnu.version_r 1272 48 1272)\n(llvm:section-entry .gnu.version 1236 30 1236)\n(llvm:section-entry .dynstr 1056 179 1056)\n(llvm:section-entry .dynsym 696 360 696)\n(llvm:section-entry .gnu.hash 664 28 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1752 0 1752 1752)\n(llvm:symbol-entry main 2260 208 2260 2260)\n(llvm:symbol-entry _start 1984 52 1984 1984)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2468 0 2468 2468)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2256 0 2256 2256)\n(llvm:symbol-entry __do_global_dtors_aux 2176 0 2176 2176)\n(llvm:symbol-entry register_tm_clones 2112 0 2112 2112)\n(llvm:symbol-entry deregister_tm_clones 2064 0 2064 2064)\n(llvm:symbol-entry call_weak_fn 2036 20 2036 2036)\n(mapped 0 2728 0)\n(mapped 130504 683 64968)\n(named-region 0 2728 02)\n(named-region 130504 704 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 28 .gnu.hash)\n(named-region 696 360 .dynsym)\n(named-region 1056 179 .dynstr)\n(named-region 1236 30 .gnu.version)\n(named-region 1272 48 .gnu.version_r)\n(named-region 1320 192 .rela.dyn)\n(named-region 1512 240 .rela.plt)\n(named-region 1752 24 .init)\n(named-region 1776 192 .plt)\n(named-region 1984 484 .text)\n(named-region 2468 20 .fini)\n(named-region 2488 4 .rodata)\n(named-region 2492 60 .eh_frame_hdr)\n(named-region 2552 176 .eh_frame)\n(named-region 130504 8 .init_array)\n(named-region 130512 8 .fini_array)\n(named-region 130520 480 .dynamic)\n(named-region 131000 48 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 35 .data)\n(named-region 131192 16 .bss)\n(named-region 0 30 .comment)\n(named-region 0 2352 .symtab)\n(named-region 0 691 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2036 call_weak_fn)\n(named-symbol 2064 deregister_tm_clones)\n(named-symbol 2112 register_tm_clones)\n(named-symbol 2176 __do_global_dtors_aux)\n(named-symbol 2256 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2468 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 1984 _start)\n(named-symbol 2260 main)\n(named-symbol 1752 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 28)\n(section 696 360)\n(section 1056 179)\n(section 1236 30)\n(section 1272 48)\n(section 1320 192)\n(section 1512 240)\n(section 1752 24)\n(section 1776 192)\n(section 1984 484)\n(section 2468 20)\n(section 2488 4)\n(section 2492 60)\n(section 2552 176)\n(section 130504 8)\n(section 130512 8)\n(section 130520 480)\n(section 131000 48)\n(section 131048 104)\n(section 131152 35)\n(section 131192 16)\n(section 0 30)\n(section 0 2352)\n(section 0 691)\n(section 0 259)\n(segment 0 2728 true false true)\n(segment 130504 704 true true false)\n(subarch v8)\n(symbol-chunk 2036 20 2036)\n(symbol-chunk 1984 52 1984)\n(symbol-chunk 2260 208 2260)\n(symbol-value 2036 2036)\n(symbol-value 2064 2064)\n(symbol-value 2112 2112)\n(symbol-value 2176 2176)\n(symbol-value 2256 2256)\n(symbol-value 2468 2468)\n(symbol-value 1984 1984)\n(symbol-value 2260 2260)\n(symbol-value 1752 1752)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x80\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa8\x0a\x00\x00\x00\x00\x00\x00\xa8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x80\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa8\x0a\x00\x00\x00\x00\x00\x00\xa8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xab\x02\x00\x00\x00\x00\x00\x00\xc0\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xbc\x09\x00\x00\x00\x00\x00\x00\xbc\x09\x00\x00\x00\x00\x00\x00\xbc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xd2\x66\x76\xa0\xef\x63\xb2\x78\xbd\x27\x60\x37\xbd\xe4\xdb\xdb\x0f\x31\x25\xed\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x80\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa8\x0a\x00\x00\x00\x00\x00\x00\xa8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xab\x02\x00\x00\x00\x00\x00\x00\xc0\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xd8\xfd\x00\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xd8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xbc\x09\x00\x00\x00\x00\x00\x00\xbc\x09\x00\x00\x00\x00\x00\x00\xbc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xd2\x66\x76\xa0\xef\x63\xb2\x78\xbd\x27\x60\x37\xbd\xe4\xdb\xdb\x0f\x31\x25\xed\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xe0\x01\x91\x01\x01\x00\x90\x21\xe0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xe0\x01\x91\x01\x01\x00\x90\x21\xe0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xe2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xe2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\xff\x17\x00\xf9\xff\x13\x00\xf9\x60\x01\x80\xd2\x99\xff\xff\x97\xe1\x03\x00\xaa\x00\x01\x00\x90\x00\x00\x02\x91\x01\x00\x00\xf9\x00\x01\x00\x90\x00\x00\x02\x91\x13\x00\x40\xf9\x00\x01\x00\x90\x00\xa0\x01\x91\x83\xff\xff\x97\xe2\x03\x00\xaa\x00\x01\x00\x90\x01\xa0\x01\x91\xe0\x03\x13\xaa\x7a\xff\xff\x97\x00\x01\x00\x90"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\xc0\x07\x00\x00\x00\x00"), +Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xd2\x66\x76\xa0\xef\x63\xb2\x78\xbd\x27\x60\x37\xbd\xe4\xdb\xdb\x0f\x31\x25\xed"), +Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), +Section(".gnu.hash", 0x298, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x2B8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x420, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x4D4, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x4F8, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x528, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd0\x08\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x08\x00\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x5E8, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x6D8, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x44\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x6F0, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0x9A4, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0x9B8, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0x9BC, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x04\xfe\xff\xff\x50\x00\x00\x00\x54\xfe\xff\xff\x64\x00\x00\x00\x84\xfe\xff\xff\x78\x00\x00\x00\xc4\xfe\xff\xff\x8c\x00\x00\x00\x14\xff\xff\xff\xb0\x00\x00\x00\x18\xff\xff\xff\xc4\x00\x00\x00"), +Section(".eh_frame", 0x9F8, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xac\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\xe8\xfd\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x04\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x30\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x5c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x8c\x00\x00\x00\x4c\xfe\xff\xff\xd0\x00\x00\x00\x00\x41\x0e\x30\x9d\x06\x9e\x05\x42\x93\x04\x70\xde\xdd\xd3\x0e\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDD0, "\x80\x08\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDD8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\xd8\x06\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xa4\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xd0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x20\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\xe8\x05\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x28\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xf8\x04\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xd4\x04\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDC8, "\xd0\x08\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFB8, "\xd8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00\xf0\x06\x00\x00\x00\x00\x00\x00"), +Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), +Section(".text", 0x7C0, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xd1\xff\xff\x97\xe4\xff\xff\x97\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x40\x00\x00\xb4\xdc\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xe0\x01\x91\x01\x01\x00\x90\x21\xe0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xe0\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xe0\x01\x91\x01\x01\x00\x90\x21\xe0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xe2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa5\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xe2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\xff\x17\x00\xf9\xff\x13\x00\xf9\x60\x01\x80\xd2\x99\xff\xff\x97\xe1\x03\x00\xaa\x00\x01\x00\x90\x00\x00\x02\x91\x01\x00\x00\xf9\x00\x01\x00\x90\x00\x00\x02\x91\x13\x00\x40\xf9\x00\x01\x00\x90\x00\xa0\x01\x91\x83\xff\xff\x97\xe2\x03\x00\xaa\x00\x01\x00\x90\x01\xa0\x01\x91\xe0\x03\x13\xaa\x7a\xff\xff\x97\x00\x01\x00\x90\x00\x00\x02\x91\x00\x00\x40\xf9\x96\xff\xff\x97\x00\x01\x00\x90\x00\x00\x02\x91\x00\x00\x40\xf9\x00\x10\x00\x91\xe0\x17\x00\xf9\xe0\x17\x40\xf9\x1f\x00\x00\x39\x00\x01\x00\x90\x00\x00\x02\x91\x13\x00\x40\xf9\x00\x01\x00\x90\x00\x00\x02\x91\x00\x00\x40\xf9\x6c\xff\xff\x97\xe2\x03\x00\xaa\x21\x00\x80\x52\xe0\x03\x13\xaa\x78\xff\xff\x97\x00\x01\x00\x90\x00\x00\x02\x91\x00\x00\x40\xf9\x84\xff\xff\x97\x00\x00\x80\x52\xf3\x0b\x40\xf9\xfd\x7b\xc3\xa8\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xAA7), Attr("segment","02 0 2728")), +Annotation(Region(0x7C0,0x7F3), Attr("symbol","\"_start\"")), +Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), +Annotation(Region(0x0,0x2B2), Attr("section","\".strtab\"")), +Annotation(Region(0x0,0x92F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x1D), Attr("section","\".comment\"")), +Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), +Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), +Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), +Annotation(Region(0x298,0x2B3), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x2B8,0x41F), Attr("section","\".dynsym\"")), +Annotation(Region(0x420,0x4D2), Attr("section","\".dynstr\"")), +Annotation(Region(0x4D4,0x4F1), Attr("section","\".gnu.version\"")), +Annotation(Region(0x4F8,0x527), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x528,0x5E7), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x5E8,0x6D7), Attr("section","\".rela.plt\"")), +Annotation(Region(0x6D8,0x6EF), Attr("section","\".init\"")), +Annotation(Region(0x6F0,0x7AF), Attr("section","\".plt\"")), +Annotation(Region(0x6D8,0x6EF), Attr("code-region","()")), +Annotation(Region(0x6F0,0x7AF), Attr("code-region","()")), +Annotation(Region(0x7C0,0x7F3), Attr("symbol-info","_start 0x7C0 52")), +Annotation(Region(0x7F4,0x807), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x7F4,0x807), Attr("symbol-info","call_weak_fn 0x7F4 20")), +Annotation(Region(0x8D4,0x9A3), Attr("symbol","\"main\"")), +Annotation(Region(0x8D4,0x9A3), Attr("symbol-info","main 0x8D4 208")), +Annotation(Region(0x9A4,0x9B7), Attr("section","\".fini\"")), +Annotation(Region(0x9B8,0x9BB), Attr("section","\".rodata\"")), +Annotation(Region(0x9BC,0x9F7), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0x9F8,0xAA7), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDC8,0x20072), Attr("segment","03 0x1FDC8 704")), +Annotation(Region(0x1FDD0,0x1FDD7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDD8,0x1FFB7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDC8,0x1FDCF), Attr("section","\".init_array\"")), +Annotation(Region(0x1FFB8,0x1FFE7), Attr("section","\".got\"")), +Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), +Annotation(Region(0x20050,0x20072), Attr("section","\".data\"")), +Annotation(Region(0x7C0,0x9A3), Attr("section","\".text\"")), +Annotation(Region(0x7C0,0x9A3), Attr("code-region","()")), +Annotation(Region(0x9A4,0x9B7), Attr("code-region","()"))]), +Program(Tid(2_332, "%0000091c"), Attrs([]), + Subs([Sub(Tid(2_261, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x740"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_333, "%0000091d"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_406, "@__cxa_finalize"), + Attrs([Attr("address","0x740")]), Phis([]), +Defs([Def(Tid(1_826, "%00000722"), Attrs([Attr("address","0x740"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_834, "%0000072a"), Attrs([Attr("address","0x744"), +Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_841, "%00000731"), Attrs([Attr("address","0x748"), +Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_846, "%00000736"), + Attrs([Attr("address","0x74C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_262, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_334, "%0000091e"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(834, "@__do_global_dtors_aux"), + Attrs([Attr("address","0x880")]), Phis([]), Defs([Def(Tid(841, "%00000349"), + Attrs([Attr("address","0x880"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), +Def(Tid(846, "%0000034e"), Attrs([Attr("address","0x880"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(851, "%00000353"), Attrs([Attr("address","0x880"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(855, "%00000357"), Attrs([Attr("address","0x880"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), +Var("#34",Imm(64))), Def(Tid(862, "%0000035e"), + Attrs([Attr("address","0x884"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(870, "%00000366"), + Attrs([Attr("address","0x888"), Attr("insn","str x19, [sp, #0x10]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), +Def(Tid(876, "%0000036c"), Attrs([Attr("address","0x88C"), +Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), +Def(Tid(885, "%00000375"), Attrs([Attr("address","0x890"), +Attr("insn","ldrb w0, [x19, #0x78]")]), Var("R0",Imm(64)), +UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(120,64)),BigEndian(),8))), +Def(Tid(897, "%00000381"), Attrs([Attr("address","0x894"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), +Jmps([Goto(Tid(891, "%0000037b"), Attrs([Attr("address","0x894"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +Direct(Tid(889, "%00000379"))), Goto(Tid(2_322, "%00000912"), Attrs([]), + Int(1,1), Direct(Tid(1_340, "%0000053c")))])), Blk(Tid(1_340, "%0000053c"), + Attrs([Attr("address","0x898")]), Phis([]), +Defs([Def(Tid(1_344, "%00000540"), Attrs([Attr("address","0x898"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_352, "%00000548"), Attrs([Attr("address","0x89C"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_364, "%00000554"), Attrs([Attr("address","0x8A0"), +Attr("insn","cbz x0, #0x10")]), Var("#69",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_358, "%0000054e"), + Attrs([Attr("address","0x8A0"), Attr("insn","cbz x0, #0x10")]), + Var("#69",Imm(1)), Direct(Tid(1_356, "%0000054c"))), +Goto(Tid(2_323, "%00000913"), Attrs([]), Int(1,1), +Direct(Tid(1_388, "%0000056c")))])), Blk(Tid(1_388, "%0000056c"), + Attrs([Attr("address","0x8A4")]), Phis([]), +Defs([Def(Tid(1_392, "%00000570"), Attrs([Attr("address","0x8A4"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_400, "%00000578"), Attrs([Attr("address","0x8A8"), +Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), +Def(Tid(1_405, "%0000057d"), Attrs([Attr("address","0x8AC"), +Attr("insn","bl #-0x16c")]), Var("R30",Imm(64)), Int(2224,64))]), +Jmps([Call(Tid(1_408, "%00000580"), Attrs([Attr("address","0x8AC"), +Attr("insn","bl #-0x16c")]), Int(1,1), +(Direct(Tid(2_261, "@__cxa_finalize")),Direct(Tid(1_356, "%0000054c"))))])), +Blk(Tid(1_356, "%0000054c"), Attrs([Attr("address","0x8B0")]), Phis([]), +Defs([Def(Tid(1_369, "%00000559"), Attrs([Attr("address","0x8B0"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2228,64))]), +Jmps([Call(Tid(1_371, "%0000055b"), Attrs([Attr("address","0x8B0"), +Attr("insn","bl #-0xa0")]), Int(1,1), +(Direct(Tid(2_275, "@deregister_tm_clones")),Direct(Tid(1_373, "%0000055d"))))])), +Blk(Tid(1_373, "%0000055d"), Attrs([Attr("address","0x8B4")]), Phis([]), +Defs([Def(Tid(1_378, "%00000562"), Attrs([Attr("address","0x8B4"), +Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), +Def(Tid(1_386, "%0000056a"), Attrs([Attr("address","0x8B8"), +Attr("insn","strb w0, [x19, #0x78]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(120,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), +Jmps([Goto(Tid(2_324, "%00000914"), Attrs([]), Int(1,1), +Direct(Tid(889, "%00000379")))])), Blk(Tid(889, "%00000379"), + Attrs([Attr("address","0x8BC")]), Phis([]), Defs([Def(Tid(905, "%00000389"), + Attrs([Attr("address","0x8BC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(915, "%00000393"), Attrs([Attr("address","0x8C0"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(919, "%00000397"), Attrs([Attr("address","0x8C0"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(922, "%0000039a"), Attrs([Attr("address","0x8C0"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(927, "%0000039f"), + Attrs([Attr("address","0x8C4"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_266, "@__libc_start_main"), + Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), +Attr("address","0x730"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_335, "%0000091f"), + Attrs([Attr("c.layout","**[ : 64]"), +Attr("c.data","Top:u64 ptr ptr"), +Attr("c.type","signed (*)(signed , char** , char** );*")]), + Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_336, "%00000920"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), +Arg(Tid(2_337, "%00000921"), Attrs([Attr("c.layout","**[char : 8]"), +Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), + Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), +Arg(Tid(2_338, "%00000922"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), +Arg(Tid(2_339, "%00000923"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), +Out())]), Blks([Blk(Tid(646, "@__libc_start_main"), + Attrs([Attr("address","0x730")]), Phis([]), +Defs([Def(Tid(1_801, "%00000709"), Attrs([Attr("address","0x730"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_809, "%00000711"), Attrs([Attr("address","0x734"), +Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_816, "%00000718"), Attrs([Attr("address","0x738"), +Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_821, "%0000071d"), + Attrs([Attr("address","0x73C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_267, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9A4")]), + "_fini", Args([Arg(Tid(2_340, "%00000924"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_fini_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), + Attrs([Attr("address","0x9A4")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0x9A8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x9A8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0x9A8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0x9A8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9AC"), +Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9B0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9B0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9B0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), + Attrs([Attr("address","0x9B4"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_268, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x6D8")]), + "_init", Args([Arg(Tid(2_341, "%00000925"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_init_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(2_024, "@_init"), + Attrs([Attr("address","0x6D8")]), Phis([]), +Defs([Def(Tid(2_033, "%000007f1"), Attrs([Attr("address","0x6DC"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#100",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(2_038, "%000007f6"), Attrs([Attr("address","0x6DC"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#100",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(2_043, "%000007fb"), Attrs([Attr("address","0x6DC"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#100",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(2_047, "%000007ff"), Attrs([Attr("address","0x6DC"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#100",Imm(64))), Def(Tid(2_054, "%00000806"), + Attrs([Attr("address","0x6E0"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(2_059, "%0000080b"), + Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), + Var("R30",Imm(64)), Int(1768,64))]), Jmps([Call(Tid(2_061, "%0000080d"), + Attrs([Attr("address","0x6E4"), Attr("insn","bl #0x110")]), Int(1,1), +(Direct(Tid(2_273, "@call_weak_fn")),Direct(Tid(2_063, "%0000080f"))))])), +Blk(Tid(2_063, "%0000080f"), Attrs([Attr("address","0x6E8")]), Phis([]), +Defs([Def(Tid(2_071, "%00000817"), Attrs([Attr("address","0x6E8"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(2_075, "%0000081b"), Attrs([Attr("address","0x6E8"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(2_078, "%0000081e"), Attrs([Attr("address","0x6E8"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_083, "%00000823"), + Attrs([Attr("address","0x6EC"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_269, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7C0"), +Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_342, "%00000926"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_start_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(572, "@_start"), + Attrs([Attr("address","0x7C0")]), Phis([]), Defs([Def(Tid(578, "%00000242"), + Attrs([Attr("address","0x7C4"), Attr("insn","mov x29, #0x0")]), + Var("R29",Imm(64)), Int(0,64)), Def(Tid(584, "%00000248"), + Attrs([Attr("address","0x7C8"), Attr("insn","mov x30, #0x0")]), + Var("R30",Imm(64)), Int(0,64)), Def(Tid(592, "%00000250"), + Attrs([Attr("address","0x7CC"), Attr("insn","mov x5, x0")]), + Var("R5",Imm(64)), Var("R0",Imm(64))), Def(Tid(600, "%00000258"), + Attrs([Attr("address","0x7D0"), Attr("insn","ldr x1, [sp]")]), + Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(607, "%0000025f"), Attrs([Attr("address","0x7D4"), +Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(614, "%00000266"), + Attrs([Attr("address","0x7D8"), Attr("insn","mov x6, sp")]), + Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(620, "%0000026c"), + Attrs([Attr("address","0x7DC"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(628, "%00000274"), + Attrs([Attr("address","0x7E0"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), +Def(Tid(634, "%0000027a"), Attrs([Attr("address","0x7E4"), +Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), +Def(Tid(640, "%00000280"), Attrs([Attr("address","0x7E8"), +Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), +Def(Tid(645, "%00000285"), Attrs([Attr("address","0x7EC"), +Attr("insn","bl #-0xbc")]), Var("R30",Imm(64)), Int(2032,64))]), +Jmps([Call(Tid(648, "%00000288"), Attrs([Attr("address","0x7EC"), +Attr("insn","bl #-0xbc")]), Int(1,1), +(Direct(Tid(2_266, "@__libc_start_main")),Direct(Tid(650, "%0000028a"))))])), +Blk(Tid(650, "%0000028a"), Attrs([Attr("address","0x7F0")]), Phis([]), +Defs([Def(Tid(653, "%0000028d"), Attrs([Attr("address","0x7F0"), +Attr("insn","bl #-0x70")]), Var("R30",Imm(64)), Int(2036,64))]), +Jmps([Call(Tid(656, "%00000290"), Attrs([Attr("address","0x7F0"), +Attr("insn","bl #-0x70")]), Int(1,1), +(Direct(Tid(2_272, "@abort")),Direct(Tid(2_325, "%00000915"))))])), +Blk(Tid(2_325, "%00000915"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_326, "%00000916"), Attrs([]), Int(1,1), +(Direct(Tid(2_273, "@call_weak_fn")),))]))])), Sub(Tid(2_272, "@abort"), + Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), +Attr("address","0x780"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(654, "@abort"), Attrs([Attr("address","0x780")]), Phis([]), +Defs([Def(Tid(1_926, "%00000786"), Attrs([Attr("address","0x780"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_934, "%0000078e"), Attrs([Attr("address","0x784"), +Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), +Def(Tid(1_941, "%00000795"), Attrs([Attr("address","0x788"), +Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_946, "%0000079a"), + Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_273, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x7F4")]), + "call_weak_fn", Args([Arg(Tid(2_343, "%00000927"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(658, "@call_weak_fn"), + Attrs([Attr("address","0x7F4")]), Phis([]), Defs([Def(Tid(662, "%00000296"), + Attrs([Attr("address","0x7F4"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(670, "%0000029e"), + Attrs([Attr("address","0x7F8"), Attr("insn","ldr x0, [x0, #0xfd0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), +Def(Tid(682, "%000002aa"), Attrs([Attr("address","0x7FC"), +Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(676, "%000002a4"), + Attrs([Attr("address","0x7FC"), Attr("insn","cbz x0, #0x8")]), + Var("#12",Imm(1)), Direct(Tid(674, "%000002a2"))), +Goto(Tid(2_327, "%00000917"), Attrs([]), Int(1,1), +Direct(Tid(1_488, "%000005d0")))])), Blk(Tid(674, "%000002a2"), + Attrs([Attr("address","0x804")]), Phis([]), Defs([]), +Jmps([Call(Tid(687, "%000002af"), Attrs([Attr("address","0x804"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_488, "%000005d0"), Attrs([Attr("address","0x800")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_491, "%000005d3"), Attrs([Attr("address","0x800"), +Attr("insn","b #-0x90")]), Int(1,1), +Direct(Tid(1_489, "@__gmon_start__")))])), Blk(Tid(1_489, "@__gmon_start__"), + Attrs([Attr("address","0x770")]), Phis([]), +Defs([Def(Tid(1_901, "%0000076d"), Attrs([Attr("address","0x770"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_909, "%00000775"), Attrs([Attr("address","0x774"), +Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), +Def(Tid(1_916, "%0000077c"), Attrs([Attr("address","0x778"), +Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_921, "%00000781"), + Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_275, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x810")]), + "deregister_tm_clones", Args([Arg(Tid(2_344, "%00000928"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(693, "@deregister_tm_clones"), + Attrs([Attr("address","0x810")]), Phis([]), Defs([Def(Tid(697, "%000002b9"), + Attrs([Attr("address","0x810"), Attr("insn","adrp x0, #0x20000")]), + Var("R0",Imm(64)), Int(131072,64)), Def(Tid(704, "%000002c0"), + Attrs([Attr("address","0x814"), Attr("insn","add x0, x0, #0x78")]), + Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(120,64))), +Def(Tid(710, "%000002c6"), Attrs([Attr("address","0x818"), +Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), +Def(Tid(717, "%000002cd"), Attrs([Attr("address","0x81C"), +Attr("insn","add x1, x1, #0x78")]), Var("R1",Imm(64)), +PLUS(Var("R1",Imm(64)),Int(120,64))), Def(Tid(725, "%000002d5"), + Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Var("#16",Imm(64)), +PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), +Def(Tid(729, "%000002d9"), Attrs([Attr("address","0x820"), +Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), +Extract(63,63,Var("#16",Imm(64)))), Def(Tid(732, "%000002dc"), + Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Var("VF",Imm(1)), +OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), +Def(Tid(735, "%000002df"), Attrs([Attr("address","0x820"), +Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), +EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(738, "%000002e2"), + Attrs([Attr("address","0x820"), Attr("insn","cmp x1, x0")]), + Var("CF",Imm(1)), +OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), +Def(Tid(752, "%000002f0"), Attrs([Attr("address","0x824"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), +Jmps([Goto(Tid(746, "%000002ea"), Attrs([Attr("address","0x824"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), +Direct(Tid(744, "%000002e8"))), Goto(Tid(2_328, "%00000918"), Attrs([]), + Int(1,1), Direct(Tid(1_449, "%000005a9")))])), Blk(Tid(1_449, "%000005a9"), + Attrs([Attr("address","0x828")]), Phis([]), +Defs([Def(Tid(1_453, "%000005ad"), Attrs([Attr("address","0x828"), +Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), +Def(Tid(1_461, "%000005b5"), Attrs([Attr("address","0x82C"), +Attr("insn","ldr x1, [x1, #0xfc0]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4032,64)),LittleEndian(),64)), +Def(Tid(1_472, "%000005c0"), Attrs([Attr("address","0x830"), +Attr("insn","cbz x1, #0xc")]), Var("#77",Imm(1)), +EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_466, "%000005ba"), + Attrs([Attr("address","0x830"), Attr("insn","cbz x1, #0xc")]), + Var("#77",Imm(1)), Direct(Tid(744, "%000002e8"))), +Goto(Tid(2_329, "%00000919"), Attrs([]), Int(1,1), +Direct(Tid(1_475, "%000005c3")))])), Blk(Tid(744, "%000002e8"), + Attrs([Attr("address","0x83C")]), Phis([]), Defs([]), +Jmps([Call(Tid(757, "%000002f5"), Attrs([Attr("address","0x83C"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_475, "%000005c3"), Attrs([Attr("address","0x834")]), Phis([]), +Defs([Def(Tid(1_481, "%000005c9"), Attrs([Attr("address","0x834"), +Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), +Jmps([Call(Tid(1_486, "%000005ce"), Attrs([Attr("address","0x838"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_278, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x8D0")]), "frame_dummy", Args([Arg(Tid(2_345, "%00000929"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(933, "@frame_dummy"), + Attrs([Attr("address","0x8D0")]), Phis([]), Defs([]), +Jmps([Call(Tid(935, "%000003a7"), Attrs([Attr("address","0x8D0"), +Attr("insn","b #-0x90")]), Int(1,1), +(Direct(Tid(2_285, "@register_tm_clones")),))]))])), Sub(Tid(2_279, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7A0"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_346, "%0000092a"), + Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), +Both())]), Blks([Blk(Tid(1_299, "@free"), Attrs([Attr("address","0x7A0")]), + Phis([]), Defs([Def(Tid(1_976, "%000007b8"), Attrs([Attr("address","0x7A0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_984, "%000007c0"), Attrs([Attr("address","0x7A4"), +Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), +Def(Tid(1_991, "%000007c7"), Attrs([Attr("address","0x7A8"), +Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(1_996, "%000007cc"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_280, "@main"), + Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), +Attr("address","0x8D4")]), "main", Args([Arg(Tid(2_347, "%0000092b"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("main_argc",Imm(32)), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_348, "%0000092c"), + Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), +Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), +Var("R1",Imm(64)), Both()), Arg(Tid(2_349, "%0000092d"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("main_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(937, "@main"), + Attrs([Attr("address","0x8D4")]), Phis([]), Defs([Def(Tid(944, "%000003b0"), + Attrs([Attr("address","0x8D4"), +Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("#42",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551568,64))), +Def(Tid(949, "%000003b5"), Attrs([Attr("address","0x8D4"), +Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(954, "%000003ba"), Attrs([Attr("address","0x8D4"), +Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(958, "%000003be"), Attrs([Attr("address","0x8D4"), +Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("R31",Imm(64)), +Var("#42",Imm(64))), Def(Tid(965, "%000003c5"), + Attrs([Attr("address","0x8D8"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(973, "%000003cd"), + Attrs([Attr("address","0x8DC"), Attr("insn","str x19, [sp, #0x10]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), +Def(Tid(981, "%000003d5"), Attrs([Attr("address","0x8E0"), +Attr("insn","str xzr, [sp, #0x28]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(40,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(989, "%000003dd"), Attrs([Attr("address","0x8E4"), +Attr("insn","str xzr, [sp, #0x20]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(32,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x8E8"), +Attr("insn","mov x0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), +Def(Tid(1_000, "%000003e8"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x19c")]), Var("R30",Imm(64)), Int(2288,64))]), +Jmps([Call(Tid(1_003, "%000003eb"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x19c")]), Int(1,1), +(Direct(Tid(2_281, "@malloc")),Direct(Tid(1_005, "%000003ed"))))])), +Blk(Tid(1_005, "%000003ed"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_011, "%000003f3"), Attrs([Attr("address","0x8F0"), +Attr("insn","mov x1, x0")]), Var("R1",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_017, "%000003f9"), Attrs([Attr("address","0x8F4"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_024, "%00000400"), Attrs([Attr("address","0x8F8"), +Attr("insn","add x0, x0, #0x80")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(128,64))), Def(Tid(1_032, "%00000408"), + Attrs([Attr("address","0x8FC"), Attr("insn","str x1, [x0]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("R0",Imm(64)),Var("R1",Imm(64)),LittleEndian(),64)), +Def(Tid(1_038, "%0000040e"), Attrs([Attr("address","0x900"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_045, "%00000415"), Attrs([Attr("address","0x904"), +Attr("insn","add x0, x0, #0x80")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(128,64))), Def(Tid(1_053, "%0000041d"), + Attrs([Attr("address","0x908"), Attr("insn","ldr x19, [x0]")]), + Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_059, "%00000423"), Attrs([Attr("address","0x90C"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_066, "%0000042a"), Attrs([Attr("address","0x910"), +Attr("insn","add x0, x0, #0x68")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(104,64))), Def(Tid(1_071, "%0000042f"), + Attrs([Attr("address","0x914"), Attr("insn","bl #-0x1f4")]), + Var("R30",Imm(64)), Int(2328,64))]), Jmps([Call(Tid(1_074, "%00000432"), + Attrs([Attr("address","0x914"), Attr("insn","bl #-0x1f4")]), Int(1,1), +(Direct(Tid(2_288, "@strlen")),Direct(Tid(1_076, "%00000434"))))])), +Blk(Tid(1_076, "%00000434"), Attrs([Attr("address","0x918")]), Phis([]), +Defs([Def(Tid(1_082, "%0000043a"), Attrs([Attr("address","0x918"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_088, "%00000440"), Attrs([Attr("address","0x91C"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_095, "%00000447"), Attrs([Attr("address","0x920"), +Attr("insn","add x1, x0, #0x68")]), Var("R1",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(104,64))), Def(Tid(1_103, "%0000044f"), + Attrs([Attr("address","0x924"), Attr("insn","mov x0, x19")]), + Var("R0",Imm(64)), Var("R19",Imm(64))), Def(Tid(1_108, "%00000454"), + Attrs([Attr("address","0x928"), Attr("insn","bl #-0x218")]), + Var("R30",Imm(64)), Int(2348,64))]), Jmps([Call(Tid(1_111, "%00000457"), + Attrs([Attr("address","0x928"), Attr("insn","bl #-0x218")]), Int(1,1), +(Direct(Tid(2_282, "@memcpy")),Direct(Tid(1_113, "%00000459"))))])), +Blk(Tid(1_113, "%00000459"), Attrs([Attr("address","0x92C")]), Phis([]), +Defs([Def(Tid(1_117, "%0000045d"), Attrs([Attr("address","0x92C"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_124, "%00000464"), Attrs([Attr("address","0x930"), +Attr("insn","add x0, x0, #0x80")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(128,64))), Def(Tid(1_132, "%0000046c"), + Attrs([Attr("address","0x934"), Attr("insn","ldr x0, [x0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_137, "%00000471"), Attrs([Attr("address","0x938"), +Attr("insn","bl #-0x1a8")]), Var("R30",Imm(64)), Int(2364,64))]), +Jmps([Call(Tid(1_140, "%00000474"), Attrs([Attr("address","0x938"), +Attr("insn","bl #-0x1a8")]), Int(1,1), +(Direct(Tid(2_284, "@puts")),Direct(Tid(1_142, "%00000476"))))])), +Blk(Tid(1_142, "%00000476"), Attrs([Attr("address","0x93C")]), Phis([]), +Defs([Def(Tid(1_146, "%0000047a"), Attrs([Attr("address","0x93C"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_153, "%00000481"), Attrs([Attr("address","0x940"), +Attr("insn","add x0, x0, #0x80")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(128,64))), Def(Tid(1_161, "%00000489"), + Attrs([Attr("address","0x944"), Attr("insn","ldr x0, [x0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_168, "%00000490"), Attrs([Attr("address","0x948"), +Attr("insn","add x0, x0, #0x4")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(4,64))), Def(Tid(1_176, "%00000498"), + Attrs([Attr("address","0x94C"), Attr("insn","str x0, [sp, #0x28]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(40,64)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_184, "%000004a0"), Attrs([Attr("address","0x950"), +Attr("insn","ldr x0, [sp, #0x28]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(40,64)),LittleEndian(),64)), +Def(Tid(1_192, "%000004a8"), Attrs([Attr("address","0x954"), +Attr("insn","strb wzr, [x0]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("R0",Imm(64)),Int(0,8),BigEndian(),8)), +Def(Tid(1_198, "%000004ae"), Attrs([Attr("address","0x958"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_205, "%000004b5"), Attrs([Attr("address","0x95C"), +Attr("insn","add x0, x0, #0x80")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(128,64))), Def(Tid(1_213, "%000004bd"), + Attrs([Attr("address","0x960"), Attr("insn","ldr x19, [x0]")]), + Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_219, "%000004c3"), Attrs([Attr("address","0x964"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_226, "%000004ca"), Attrs([Attr("address","0x968"), +Attr("insn","add x0, x0, #0x80")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(128,64))), Def(Tid(1_234, "%000004d2"), + Attrs([Attr("address","0x96C"), Attr("insn","ldr x0, [x0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_239, "%000004d7"), Attrs([Attr("address","0x970"), +Attr("insn","bl #-0x250")]), Var("R30",Imm(64)), Int(2420,64))]), +Jmps([Call(Tid(1_241, "%000004d9"), Attrs([Attr("address","0x970"), +Attr("insn","bl #-0x250")]), Int(1,1), +(Direct(Tid(2_288, "@strlen")),Direct(Tid(1_243, "%000004db"))))])), +Blk(Tid(1_243, "%000004db"), Attrs([Attr("address","0x974")]), Phis([]), +Defs([Def(Tid(1_249, "%000004e1"), Attrs([Attr("address","0x974"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_256, "%000004e8"), Attrs([Attr("address","0x978"), +Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), +Def(Tid(1_264, "%000004f0"), Attrs([Attr("address","0x97C"), +Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), +Def(Tid(1_269, "%000004f5"), Attrs([Attr("address","0x980"), +Attr("insn","bl #-0x220")]), Var("R30",Imm(64)), Int(2436,64))]), +Jmps([Call(Tid(1_272, "%000004f8"), Attrs([Attr("address","0x980"), +Attr("insn","bl #-0x220")]), Int(1,1), +(Direct(Tid(2_283, "@memset")),Direct(Tid(1_274, "%000004fa"))))])), +Blk(Tid(1_274, "%000004fa"), Attrs([Attr("address","0x984")]), Phis([]), +Defs([Def(Tid(1_278, "%000004fe"), Attrs([Attr("address","0x984"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_285, "%00000505"), Attrs([Attr("address","0x988"), +Attr("insn","add x0, x0, #0x80")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(128,64))), Def(Tid(1_293, "%0000050d"), + Attrs([Attr("address","0x98C"), Attr("insn","ldr x0, [x0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_298, "%00000512"), Attrs([Attr("address","0x990"), +Attr("insn","bl #-0x1f0")]), Var("R30",Imm(64)), Int(2452,64))]), +Jmps([Call(Tid(1_301, "%00000515"), Attrs([Attr("address","0x990"), +Attr("insn","bl #-0x1f0")]), Int(1,1), +(Direct(Tid(2_279, "@free")),Direct(Tid(1_303, "%00000517"))))])), +Blk(Tid(1_303, "%00000517"), Attrs([Attr("address","0x994")]), Phis([]), +Defs([Def(Tid(1_308, "%0000051c"), Attrs([Attr("address","0x994"), +Attr("insn","mov w0, #0x0")]), Var("R0",Imm(64)), Int(0,64)), +Def(Tid(1_316, "%00000524"), Attrs([Attr("address","0x998"), +Attr("insn","ldr x19, [sp, #0x10]")]), Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_326, "%0000052e"), Attrs([Attr("address","0x99C"), +Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(1_330, "%00000532"), Attrs([Attr("address","0x99C"), +Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_333, "%00000535"), Attrs([Attr("address","0x99C"), +Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_338, "%0000053a"), + Attrs([Attr("address","0x9A0"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_281, "@malloc"), + Attrs([Attr("c.proto","void* (*)(unsigned long size)"), +Attr("address","0x750"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_350, "%0000092e"), Attrs([Attr("alloc-size","()"), +Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), +Var("R0",Imm(64)), In()), Arg(Tid(2_351, "%0000092f"), + Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_001, "@malloc"), Attrs([Attr("address","0x750")]), Phis([]), +Defs([Def(Tid(1_851, "%0000073b"), Attrs([Attr("address","0x750"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_859, "%00000743"), Attrs([Attr("address","0x754"), +Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), +Def(Tid(1_866, "%0000074a"), Attrs([Attr("address","0x758"), +Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_871, "%0000074f"), + Attrs([Attr("address","0x75C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_282, "@memcpy"), + Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), +Attr("address","0x710"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_352, "%00000930"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), +Var("R0",Imm(64)), Both()), Arg(Tid(2_353, "%00000931"), + Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), + Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), +Arg(Tid(2_354, "%00000932"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), + Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), +Arg(Tid(2_355, "%00000933"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_109, "@memcpy"), Attrs([Attr("address","0x710")]), Phis([]), +Defs([Def(Tid(1_751, "%000006d7"), Attrs([Attr("address","0x710"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_759, "%000006df"), Attrs([Attr("address","0x714"), +Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), +Def(Tid(1_766, "%000006e6"), Attrs([Attr("address","0x718"), +Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), +Var("R16",Imm(64)))]), Jmps([Call(Tid(1_771, "%000006eb"), + Attrs([Attr("address","0x71C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_283, "@memset"), + Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), +Attr("address","0x760"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_356, "%00000934"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), +Both()), Arg(Tid(2_357, "%00000935"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("memset_c",Imm(32)), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_358, "%00000936"), + Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), +In()), Arg(Tid(2_359, "%00000937"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_270, "@memset"), Attrs([Attr("address","0x760")]), Phis([]), +Defs([Def(Tid(1_876, "%00000754"), Attrs([Attr("address","0x760"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_884, "%0000075c"), Attrs([Attr("address","0x764"), +Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), +Def(Tid(1_891, "%00000763"), Attrs([Attr("address","0x768"), +Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_896, "%00000768"), + Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_284, "@puts"), + Attrs([Attr("c.proto","signed (*)( const char* s)"), +Attr("address","0x790"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_360, "%00000938"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), + Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_361, "%00000939"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(1_138, "@puts"), Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_951, "%0000079f"), Attrs([Attr("address","0x790"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_959, "%000007a7"), Attrs([Attr("address","0x794"), +Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), +Def(Tid(1_966, "%000007ae"), Attrs([Attr("address","0x798"), +Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_971, "%000007b3"), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_285, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x840")]), + "register_tm_clones", Args([Arg(Tid(2_362, "%0000093a"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(759, "@register_tm_clones"), Attrs([Attr("address","0x840")]), + Phis([]), Defs([Def(Tid(763, "%000002fb"), Attrs([Attr("address","0x840"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(770, "%00000302"), Attrs([Attr("address","0x844"), +Attr("insn","add x0, x0, #0x78")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(120,64))), Def(Tid(776, "%00000308"), + Attrs([Attr("address","0x848"), Attr("insn","adrp x1, #0x20000")]), + Var("R1",Imm(64)), Int(131072,64)), Def(Tid(783, "%0000030f"), + Attrs([Attr("address","0x84C"), Attr("insn","add x1, x1, #0x78")]), + Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(120,64))), +Def(Tid(791, "%00000317"), Attrs([Attr("address","0x850"), +Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), +MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(798, "%0000031e"), + Attrs([Attr("address","0x854"), Attr("insn","lsr x2, x1, #63")]), + Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), +Def(Tid(806, "%00000326"), Attrs([Attr("address","0x858"), +Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), +PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), +Def(Tid(813, "%0000032d"), Attrs([Attr("address","0x85C"), +Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), +RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(825, "%00000339"), + Attrs([Attr("address","0x860"), Attr("insn","cbz x1, #0x18")]), + Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), +Jmps([Goto(Tid(819, "%00000333"), Attrs([Attr("address","0x860"), +Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), +Direct(Tid(817, "%00000331"))), Goto(Tid(2_330, "%0000091a"), Attrs([]), + Int(1,1), Direct(Tid(1_410, "%00000582")))])), Blk(Tid(1_410, "%00000582"), + Attrs([Attr("address","0x864")]), Phis([]), +Defs([Def(Tid(1_414, "%00000586"), Attrs([Attr("address","0x864"), +Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), +Def(Tid(1_422, "%0000058e"), Attrs([Attr("address","0x868"), +Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), +Def(Tid(1_433, "%00000599"), Attrs([Attr("address","0x86C"), +Attr("insn","cbz x2, #0xc")]), Var("#72",Imm(1)), +EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_427, "%00000593"), + Attrs([Attr("address","0x86C"), Attr("insn","cbz x2, #0xc")]), + Var("#72",Imm(1)), Direct(Tid(817, "%00000331"))), +Goto(Tid(2_331, "%0000091b"), Attrs([]), Int(1,1), +Direct(Tid(1_436, "%0000059c")))])), Blk(Tid(817, "%00000331"), + Attrs([Attr("address","0x878")]), Phis([]), Defs([]), +Jmps([Call(Tid(830, "%0000033e"), Attrs([Attr("address","0x878"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_436, "%0000059c"), Attrs([Attr("address","0x870")]), Phis([]), +Defs([Def(Tid(1_442, "%000005a2"), Attrs([Attr("address","0x870"), +Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), +Jmps([Call(Tid(1_447, "%000005a7"), Attrs([Attr("address","0x874"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_288, "@strlen"), + Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), +Attr("pure","()"), Attr("address","0x720"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_363, "%0000093b"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), +Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), +In()), Arg(Tid(2_364, "%0000093c"), + Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), +Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_072, "@strlen"), + Attrs([Attr("address","0x720")]), Phis([]), +Defs([Def(Tid(1_776, "%000006f0"), Attrs([Attr("address","0x720"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_784, "%000006f8"), Attrs([Attr("address","0x724"), +Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_791, "%000006ff"), Attrs([Attr("address","0x728"), +Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_796, "%00000704"), + Attrs([Attr("address","0x72C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir new file mode 100644 index 000000000..df98f3236 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.bir @@ -0,0 +1,371 @@ +0000091c: program +000008d5: sub __cxa_finalize(__cxa_finalize_result) +0000091d: __cxa_finalize_result :: out u32 = low:32[R0] + +0000057e: +00000722: R16 := 0x20000 +0000072a: R17 := mem[R16 + 0x18, el]:u64 +00000731: R16 := R16 + 0x18 +00000736: call R17 with noreturn + +000008d6: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +0000091e: __do_global_dtors_aux_result :: out u32 = low:32[R0] + +00000342: +00000349: #34 := R31 - 0x20 +0000034e: mem := mem with [#34, el]:u64 <- R29 +00000353: mem := mem with [#34 + 8, el]:u64 <- R30 +00000357: R31 := #34 +0000035e: R29 := R31 +00000366: mem := mem with [R31 + 0x10, el]:u64 <- R19 +0000036c: R19 := 0x20000 +00000375: R0 := pad:32[mem[R19 + 0x78]] +00000381: #36 := ~~0:0[R0] +0000037b: when #36 goto %00000379 +00000912: goto %0000053c + +0000053c: +00000540: R0 := 0x1F000 +00000548: R0 := mem[R0 + 0xFC8, el]:u64 +00000554: #69 := R0 = 0 +0000054e: when #69 goto %0000054c +00000913: goto %0000056c + +0000056c: +00000570: R0 := 0x20000 +00000578: R0 := mem[R0 + 0x58, el]:u64 +0000057d: R30 := 0x8B0 +00000580: call @__cxa_finalize with return %0000054c + +0000054c: +00000559: R30 := 0x8B4 +0000055b: call @deregister_tm_clones with return %0000055d + +0000055d: +00000562: R0 := 1 +0000056a: mem := mem with [R19 + 0x78] <- low:8[31:0[R0]] +00000914: goto %00000379 + +00000379: +00000389: R19 := mem[R31 + 0x10, el]:u64 +00000393: R29 := mem[R31, el]:u64 +00000397: R30 := mem[R31 + 8, el]:u64 +0000039a: R31 := R31 + 0x20 +0000039f: call R30 with noreturn + +000008da: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +0000091f: __libc_start_main_main :: in u64 = R0 +00000920: __libc_start_main_arg2 :: in u32 = low:32[R1] +00000921: __libc_start_main_arg3 :: in out u64 = R2 +00000922: __libc_start_main_auxv :: in out u64 = R3 +00000923: __libc_start_main_result :: out u32 = low:32[R0] + +00000286: +00000709: R16 := 0x20000 +00000711: R17 := mem[R16 + 0x10, el]:u64 +00000718: R16 := R16 + 0x10 +0000071d: call R17 with noreturn + +000008db: sub _fini(_fini_result) +00000924: _fini_result :: out u32 = low:32[R0] + +00000020: +00000029: #3 := R31 - 0x10 +0000002e: mem := mem with [#3, el]:u64 <- R29 +00000033: mem := mem with [#3 + 8, el]:u64 <- R30 +00000037: R31 := #3 +0000003e: R29 := R31 +00000048: R29 := mem[R31, el]:u64 +0000004c: R30 := mem[R31 + 8, el]:u64 +0000004f: R31 := R31 + 0x10 +00000054: call R30 with noreturn + +000008dc: sub _init(_init_result) +00000925: _init_result :: out u32 = low:32[R0] + +000007e8: +000007f1: #100 := R31 - 0x10 +000007f6: mem := mem with [#100, el]:u64 <- R29 +000007fb: mem := mem with [#100 + 8, el]:u64 <- R30 +000007ff: R31 := #100 +00000806: R29 := R31 +0000080b: R30 := 0x6E8 +0000080d: call @call_weak_fn with return %0000080f + +0000080f: +00000817: R29 := mem[R31, el]:u64 +0000081b: R30 := mem[R31 + 8, el]:u64 +0000081e: R31 := R31 + 0x10 +00000823: call R30 with noreturn + +000008dd: sub _start(_start_result) +00000926: _start_result :: out u32 = low:32[R0] + +0000023c: +00000242: R29 := 0 +00000248: R30 := 0 +00000250: R5 := R0 +00000258: R1 := mem[R31, el]:u64 +0000025f: R2 := R31 + 8 +00000266: R6 := R31 +0000026c: R0 := 0x1F000 +00000274: R0 := mem[R0 + 0xFD8, el]:u64 +0000027a: R3 := 0 +00000280: R4 := 0 +00000285: R30 := 0x7F0 +00000288: call @__libc_start_main with return %0000028a + +0000028a: +0000028d: R30 := 0x7F4 +00000290: call @abort with return %00000915 + +00000915: +00000916: call @call_weak_fn with noreturn + +000008e0: sub abort() + + +0000028e: +00000786: R16 := 0x20000 +0000078e: R17 := mem[R16 + 0x38, el]:u64 +00000795: R16 := R16 + 0x38 +0000079a: call R17 with noreturn + +000008e1: sub call_weak_fn(call_weak_fn_result) +00000927: call_weak_fn_result :: out u32 = low:32[R0] + +00000292: +00000296: R0 := 0x1F000 +0000029e: R0 := mem[R0 + 0xFD0, el]:u64 +000002aa: #12 := R0 = 0 +000002a4: when #12 goto %000002a2 +00000917: goto %000005d0 + +000002a2: +000002af: call R30 with noreturn + +000005d0: +000005d3: goto @__gmon_start__ + +000005d1: +0000076d: R16 := 0x20000 +00000775: R17 := mem[R16 + 0x30, el]:u64 +0000077c: R16 := R16 + 0x30 +00000781: call R17 with noreturn + +000008e3: sub deregister_tm_clones(deregister_tm_clones_result) +00000928: deregister_tm_clones_result :: out u32 = low:32[R0] + +000002b5: +000002b9: R0 := 0x20000 +000002c0: R0 := R0 + 0x78 +000002c6: R1 := 0x20000 +000002cd: R1 := R1 + 0x78 +000002d5: #16 := 1 + ~R0 + R1 +000002d9: NF := 63:63[#16] +000002dc: VF := 63:63[R1] & 63:63[~R0] & ~63:63[#16] | ~63:63[R1] & + ~63:63[~R0] & 63:63[#16] +000002df: ZF := #16 = 0 +000002e2: CF := 63:63[R1] & 63:63[~R0] | 63:63[~R0] & ~63:63[#16] | 63:63[R1] + & ~63:63[#16] +000002f0: #21 := ZF +000002ea: when #21 goto %000002e8 +00000918: goto %000005a9 + +000005a9: +000005ad: R1 := 0x1F000 +000005b5: R1 := mem[R1 + 0xFC0, el]:u64 +000005c0: #77 := R1 = 0 +000005ba: when #77 goto %000002e8 +00000919: goto %000005c3 + +000002e8: +000002f5: call R30 with noreturn + +000005c3: +000005c9: R16 := R1 +000005ce: call R16 with noreturn + +000008e6: sub frame_dummy(frame_dummy_result) +00000929: frame_dummy_result :: out u32 = low:32[R0] + +000003a5: +000003a7: call @register_tm_clones with noreturn + +000008e7: sub free(free_ptr) +0000092a: free_ptr :: in out u64 = R0 + +00000513: +000007b8: R16 := 0x20000 +000007c0: R17 := mem[R16 + 0x48, el]:u64 +000007c7: R16 := R16 + 0x48 +000007cc: call R17 with noreturn + +000008e8: sub main(main_argc, main_argv, main_result) +0000092b: main_argc :: in u32 = low:32[R0] +0000092c: main_argv :: in out u64 = R1 +0000092d: main_result :: out u32 = low:32[R0] + +000003a9: +000003b0: #42 := R31 - 0x30 +000003b5: mem := mem with [#42, el]:u64 <- R29 +000003ba: mem := mem with [#42 + 8, el]:u64 <- R30 +000003be: R31 := #42 +000003c5: R29 := R31 +000003cd: mem := mem with [R31 + 0x10, el]:u64 <- R19 +000003d5: mem := mem with [R31 + 0x28, el]:u64 <- 0 +000003dd: mem := mem with [R31 + 0x20, el]:u64 <- 0 +000003e3: R0 := 0xB +000003e8: R30 := 0x8F0 +000003eb: call @malloc with return %000003ed + +000003ed: +000003f3: R1 := R0 +000003f9: R0 := 0x20000 +00000400: R0 := R0 + 0x80 +00000408: mem := mem with [R0, el]:u64 <- R1 +0000040e: R0 := 0x20000 +00000415: R0 := R0 + 0x80 +0000041d: R19 := mem[R0, el]:u64 +00000423: R0 := 0x20000 +0000042a: R0 := R0 + 0x68 +0000042f: R30 := 0x918 +00000432: call @strlen with return %00000434 + +00000434: +0000043a: R2 := R0 +00000440: R0 := 0x20000 +00000447: R1 := R0 + 0x68 +0000044f: R0 := R19 +00000454: R30 := 0x92C +00000457: call @memcpy with return %00000459 + +00000459: +0000045d: R0 := 0x20000 +00000464: R0 := R0 + 0x80 +0000046c: R0 := mem[R0, el]:u64 +00000471: R30 := 0x93C +00000474: call @puts with return %00000476 + +00000476: +0000047a: R0 := 0x20000 +00000481: R0 := R0 + 0x80 +00000489: R0 := mem[R0, el]:u64 +00000490: R0 := R0 + 4 +00000498: mem := mem with [R31 + 0x28, el]:u64 <- R0 +000004a0: R0 := mem[R31 + 0x28, el]:u64 +000004a8: mem := mem with [R0] <- 0 +000004ae: R0 := 0x20000 +000004b5: R0 := R0 + 0x80 +000004bd: R19 := mem[R0, el]:u64 +000004c3: R0 := 0x20000 +000004ca: R0 := R0 + 0x80 +000004d2: R0 := mem[R0, el]:u64 +000004d7: R30 := 0x974 +000004d9: call @strlen with return %000004db + +000004db: +000004e1: R2 := R0 +000004e8: R1 := 1 +000004f0: R0 := R19 +000004f5: R30 := 0x984 +000004f8: call @memset with return %000004fa + +000004fa: +000004fe: R0 := 0x20000 +00000505: R0 := R0 + 0x80 +0000050d: R0 := mem[R0, el]:u64 +00000512: R30 := 0x994 +00000515: call @free with return %00000517 + +00000517: +0000051c: R0 := 0 +00000524: R19 := mem[R31 + 0x10, el]:u64 +0000052e: R29 := mem[R31, el]:u64 +00000532: R30 := mem[R31 + 8, el]:u64 +00000535: R31 := R31 + 0x30 +0000053a: call R30 with noreturn + +000008e9: sub malloc(malloc_size, malloc_result) +0000092e: malloc_size :: in u64 = R0 +0000092f: malloc_result :: out u64 = R0 + +000003e9: +0000073b: R16 := 0x20000 +00000743: R17 := mem[R16 + 0x20, el]:u64 +0000074a: R16 := R16 + 0x20 +0000074f: call R17 with noreturn + +000008ea: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +00000930: memcpy_dst :: in out u64 = R0 +00000931: memcpy_src :: in out u64 = R1 +00000932: memcpy_n :: in u64 = R2 +00000933: memcpy_result :: out u64 = R0 + +00000455: +000006d7: R16 := 0x20000 +000006df: R17 := mem[R16, el]:u64 +000006e6: R16 := R16 +000006eb: call R17 with noreturn + +000008eb: sub memset(memset_buf, memset_c, memset_n, memset_result) +00000934: memset_buf :: in out u64 = R0 +00000935: memset_c :: in u32 = low:32[R1] +00000936: memset_n :: in u64 = R2 +00000937: memset_result :: out u64 = R0 + +000004f6: +00000754: R16 := 0x20000 +0000075c: R17 := mem[R16 + 0x28, el]:u64 +00000763: R16 := R16 + 0x28 +00000768: call R17 with noreturn + +000008ec: sub puts(puts_s, puts_result) +00000938: puts_s :: in u64 = R0 +00000939: puts_result :: out u32 = low:32[R0] + +00000472: +0000079f: R16 := 0x20000 +000007a7: R17 := mem[R16 + 0x40, el]:u64 +000007ae: R16 := R16 + 0x40 +000007b3: call R17 with noreturn + +000008ed: sub register_tm_clones(register_tm_clones_result) +0000093a: register_tm_clones_result :: out u32 = low:32[R0] + +000002f7: +000002fb: R0 := 0x20000 +00000302: R0 := R0 + 0x78 +00000308: R1 := 0x20000 +0000030f: R1 := R1 + 0x78 +00000317: R1 := R1 - R0 +0000031e: R2 := R1 >> 0x3F +00000326: R1 := R2 + (R1 ~>> 3) +0000032d: R1 := R1 >> 1 +00000339: #30 := R1 = 0 +00000333: when #30 goto %00000331 +0000091a: goto %00000582 + +00000582: +00000586: R2 := 0x1F000 +0000058e: R2 := mem[R2 + 0xFE0, el]:u64 +00000599: #72 := R2 = 0 +00000593: when #72 goto %00000331 +0000091b: goto %0000059c + +00000331: +0000033e: call R30 with noreturn + +0000059c: +000005a2: R16 := R2 +000005a7: call R16 with noreturn + +000008f0: sub strlen(strlen_s, strlen_result) +0000093b: strlen_s :: in u64 = R0 +0000093c: strlen_result :: out u64 = R0 + +00000430: +000006f0: R16 := 0x20000 +000006f8: R17 := mem[R16 + 8, el]:u64 +000006ff: R16 := R16 + 8 +00000704: call R17 with noreturn diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.expected b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.expected new file mode 100644 index 000000000..e0dd7a116 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.expected @@ -0,0 +1,838 @@ +var {:extern} Gamma_R0: bool; +var {:extern} Gamma_R1: bool; +var {:extern} Gamma_R16: bool; +var {:extern} Gamma_R17: bool; +var {:extern} Gamma_R19: bool; +var {:extern} Gamma_R2: bool; +var {:extern} Gamma_R29: bool; +var {:extern} Gamma_R30: bool; +var {:extern} Gamma_R31: bool; +var {:extern} Gamma_malloc_base: [bv64]bool; +var {:extern} Gamma_malloc_count: [bv64]bool; +var {:extern} Gamma_malloc_end: [bv64]bool; +var {:extern} Gamma_mem: [bv64]bool; +var {:extern} Gamma_stack: [bv64]bool; +var {:extern} R0: bv64; +var {:extern} R1: bv64; +var {:extern} R16: bv64; +var {:extern} R17: bv64; +var {:extern} R19: bv64; +var {:extern} R2: bv64; +var {:extern} R29: bv64; +var {:extern} R30: bv64; +var {:extern} R31: bv64; +var {:extern} malloc_base: [bv64]bv8; +var {:extern} malloc_count: [bv64]bv8; +var {:extern} malloc_end: [bv64]bv8; +var {:extern} mem: [bv64]bv8; +var {:extern} stack: [bv64]bv8; +const {:extern} $buf_addr: bv64; +axiom ($buf_addr == 131200bv64); +const {:extern} $password_addr: bv64; +axiom ($password_addr == 131168bv64); +const {:extern} $stext_addr: bv64; +axiom ($stext_addr == 131176bv64); +function {:extern} L(memory: [bv64]bv8, index: bv64) returns (bool) { + false +} + +function {:extern} {:bvbuiltin "bvadd"} bvadd64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvsub"} bvsub64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvuge"} bvuge64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvugt"} bvugt64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvule"} bvule64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvult"} bvult64(bv64, bv64) returns (bool); +function {:extern} gamma_load32(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))) +} + +function {:extern} gamma_load64(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 7bv64)] && (gammaMap[bvadd64(index, 6bv64)] && (gammaMap[bvadd64(index, 5bv64)] && (gammaMap[bvadd64(index, 4bv64)] && (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))))))) +} + +function {:extern} gamma_load8(gammaMap: [bv64]bool, index: bv64) returns (bool) { + gammaMap[index] +} + +function {:extern} gamma_store64(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value][bvadd64(index, 1bv64) := value][bvadd64(index, 2bv64) := value][bvadd64(index, 3bv64) := value][bvadd64(index, 4bv64) := value][bvadd64(index, 5bv64) := value][bvadd64(index, 6bv64) := value][bvadd64(index, 7bv64) := value] +} + +function {:extern} gamma_store8(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value] +} + +function {:extern} memory_load64_le(memory: [bv64]bv8, index: bv64) returns (bv64) { + (memory[bvadd64(index, 7bv64)] ++ (memory[bvadd64(index, 6bv64)] ++ (memory[bvadd64(index, 5bv64)] ++ (memory[bvadd64(index, 4bv64)] ++ (memory[bvadd64(index, 3bv64)] ++ (memory[bvadd64(index, 2bv64)] ++ (memory[bvadd64(index, 1bv64)] ++ memory[index]))))))) +} + +function {:extern} memory_load8_le(memory: [bv64]bv8, index: bv64) returns (bv8) { + memory[index] +} + +function {:extern} memory_store64_le(memory: [bv64]bv8, index: bv64, value: bv64) returns ([bv64]bv8) { + memory[index := value[8:0]][bvadd64(index, 1bv64) := value[16:8]][bvadd64(index, 2bv64) := value[24:16]][bvadd64(index, 3bv64) := value[32:24]][bvadd64(index, 4bv64) := value[40:32]][bvadd64(index, 5bv64) := value[48:40]][bvadd64(index, 6bv64) := value[56:48]][bvadd64(index, 7bv64) := value[64:56]] +} + +function {:extern} memory_store8_be(memory: [bv64]bv8, index: bv64, value: bv8) returns ([bv64]bv8) { + memory[index := value[8:0]] +} + +procedure {:extern} rely(); + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure {:extern} rely_transitive() + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); +{ + call rely(); + call rely(); +} + +procedure {:extern} rely_reflexive(); + +procedure {:extern} guarantee_reflexive(); + modifies Gamma_mem, mem; + +procedure #free(); + modifies Gamma_R16, Gamma_R17, R16, R17; + requires (forall i : int, j: bv64 :: (malloc_base[i] == R0 && bvuge64(j, R0) && bvult64(j, malloc_end[i])) ==> Gamma_mem[j]); + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure main() + modifies Gamma_R0, Gamma_R1, Gamma_R16, Gamma_R17, Gamma_R19, Gamma_R2, Gamma_R29, Gamma_R30, Gamma_R31, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, Gamma_mem, Gamma_stack, R0, R1, R16, R17, R19, R2, R29, R30, R31, malloc_base, malloc_count, malloc_end, mem, stack; + requires (gamma_load8(Gamma_mem, $password_addr) == false); + requires malloc_count == 0; + requires gamma_load32(Gamma_mem, memory_load64_le(mem, $stext_addr)); + requires R31 == 100bv64; + free requires (memory_load8_le(mem, 131152bv64) == 0bv8); + free requires (memory_load8_le(mem, 131153bv64) == 0bv8); + free requires (memory_load8_le(mem, 131154bv64) == 0bv8); + free requires (memory_load8_le(mem, 131155bv64) == 0bv8); + free requires (memory_load8_le(mem, 131156bv64) == 0bv8); + free requires (memory_load8_le(mem, 131157bv64) == 0bv8); + free requires (memory_load8_le(mem, 131158bv64) == 0bv8); + free requires (memory_load8_le(mem, 131159bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 131168bv64) == 7bv8); + free requires (memory_load8_le(mem, 131169bv64) == 0bv8); + free requires (memory_load8_le(mem, 131170bv64) == 0bv8); + free requires (memory_load8_le(mem, 131171bv64) == 0bv8); + free requires (memory_load8_le(mem, 131172bv64) == 0bv8); + free requires (memory_load8_le(mem, 131173bv64) == 0bv8); + free requires (memory_load8_le(mem, 131174bv64) == 0bv8); + free requires (memory_load8_le(mem, 131175bv64) == 0bv8); + free requires (memory_load8_le(mem, 131176bv64) == 117bv8); + free requires (memory_load8_le(mem, 131177bv64) == 115bv8); + free requires (memory_load8_le(mem, 131178bv64) == 101bv8); + free requires (memory_load8_le(mem, 131179bv64) == 114bv8); + free requires (memory_load8_le(mem, 131180bv64) == 58bv8); + free requires (memory_load8_le(mem, 131181bv64) == 112bv8); + free requires (memory_load8_le(mem, 131182bv64) == 97bv8); + free requires (memory_load8_le(mem, 131183bv64) == 115bv8); + free requires (memory_load8_le(mem, 131184bv64) == 115bv8); + free requires (memory_load8_le(mem, 131185bv64) == 0bv8); + free requires (memory_load8_le(mem, 131186bv64) == 0bv8); + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (Gamma_R19 == old(Gamma_R19)); + free ensures (Gamma_R29 == old(Gamma_R29)); + free ensures (Gamma_R31 == old(Gamma_R31)); + free ensures (R19 == old(R19)); + free ensures (R29 == old(R29)); + free ensures (R31 == old(R31)); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); +{ + var #42: bv64; + var Gamma_#42: bool; + lmain: + assume {:captureState "lmain"} true; + #42, Gamma_#42 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #42, R29), gamma_store64(Gamma_stack, #42, Gamma_R29); + assume {:captureState "%000003b5"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#42, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#42, 8bv64), Gamma_R30); + assume {:captureState "%000003ba"} true; + R31, Gamma_R31 := #42, Gamma_#42; + R29, Gamma_R29 := R31, Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 16bv64), R19), gamma_store64(Gamma_stack, bvadd64(R31, 16bv64), Gamma_R19); + assume {:captureState "%000003cd"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 40bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R31, 40bv64), true); + assume {:captureState "%000003d5"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 32bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R31, 32bv64), true); + assume {:captureState "%000003dd"} true; + R0, Gamma_R0 := 11bv64, true; + R30, Gamma_R30 := 2288bv64, true; + call malloc(); + goto l000003ed; + l000003ed: + assume {:captureState "l000003ed"} true; + R1, Gamma_R1 := R0, Gamma_R0; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + assert (L(mem, R0) ==> Gamma_R1); + mem, Gamma_mem := memory_store64_le(mem, R0, R1), gamma_store64(Gamma_mem, R0, Gamma_R1); + assume {:captureState "%00000408"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R19, Gamma_R19 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 104bv64), Gamma_R0; + R30, Gamma_R30 := 2328bv64, true; + call strlen(); + goto l00000434; + l00000434: + assume {:captureState "l00000434"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := 131072bv64, true; + R1, Gamma_R1 := bvadd64(R0, 104bv64), Gamma_R0; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2348bv64, true; + call memcpy(); + goto l00000459; + l00000459: + assume {:captureState "l00000459"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2364bv64, true; + call puts(); + goto l00000476; + l00000476: + assume {:captureState "l00000476"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := bvadd64(R0, 4bv64), Gamma_R0; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 40bv64), R0), gamma_store64(Gamma_stack, bvadd64(R31, 40bv64), Gamma_R0); + assume {:captureState "%00000498"} true; + R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 40bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 40bv64)); + call rely(); + assert (L(mem, R0) ==> true); + mem, Gamma_mem := memory_store8_be(mem, R0, 0bv8), gamma_store8(Gamma_mem, R0, true); + assume {:captureState "%000004a8"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R19, Gamma_R19 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2420bv64, true; + call strlen(); + goto l000004db; + l000004db: + assume {:captureState "l000004db"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R1, Gamma_R1 := 1bv64, true; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2436bv64, true; + call memset(); + goto l000004fa; + l000004fa: + assume {:captureState "l000004fa"} true; + R0, Gamma_R0 := 131072bv64, true; + R0, Gamma_R0 := bvadd64(R0, 128bv64), Gamma_R0; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2452bv64, true; + call #free(); + goto l00000517; + l00000517: + assume {:captureState "l00000517"} true; + R0, Gamma_R0 := 0bv64, true; + R19, Gamma_R19 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); + R29, Gamma_R29 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); + R30, Gamma_R30 := memory_load64_le(stack, bvadd64(R31, 8bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 8bv64)); + R31, Gamma_R31 := bvadd64(R31, 48bv64), Gamma_R31; + return; +} + +procedure malloc(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, R0, R16, R17, malloc_base, malloc_count, malloc_end; + requires bvugt64(R0, 0bv64); + requires Gamma_R0 == true; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures Gamma_R0 == true; + ensures malloc_count == old(malloc_count) + 1; + ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); + ensures R0 == malloc_base[malloc_count]; + ensures malloc_end[malloc_count] == bvadd64(R0, old(R0)); + ensures (forall i: int :: i != malloc_count ==> bvugt64(malloc_base[malloc_count], malloc_end[i]) || bvult64(malloc_end[malloc_count], malloc_base[i])); + ensures (forall i: int :: i != malloc_count ==> malloc_base[i] == old(malloc_base[i]) && malloc_end[i] == old(malloc_end[i])); + ensures bvuge64(R0, 100000000bv64); + ensures (forall i : bv64 :: (bvuge64(i, R0) && bvult64(i, bvadd64(R0, old(R0)))) ==> (Gamma_mem[i] && gamma_load8(Gamma_mem, i))); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memcpy(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure memset(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + requires Gamma_R1; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then Gamma_R1 else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then R1[8:0] else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure puts(); + modifies Gamma_R16, Gamma_R17, R16, R17; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + +procedure strlen(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, R0, R16, R17; + free requires (memory_load8_le(mem, 2488bv64) == 1bv8); + free requires (memory_load8_le(mem, 2489bv64) == 0bv8); + free requires (memory_load8_le(mem, 2490bv64) == 2bv8); + free requires (memory_load8_le(mem, 2491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130504bv64) == 208bv8); + free requires (memory_load8_le(mem, 130505bv64) == 8bv8); + free requires (memory_load8_le(mem, 130506bv64) == 0bv8); + free requires (memory_load8_le(mem, 130507bv64) == 0bv8); + free requires (memory_load8_le(mem, 130508bv64) == 0bv8); + free requires (memory_load8_le(mem, 130509bv64) == 0bv8); + free requires (memory_load8_le(mem, 130510bv64) == 0bv8); + free requires (memory_load8_le(mem, 130511bv64) == 0bv8); + free requires (memory_load8_le(mem, 130512bv64) == 128bv8); + free requires (memory_load8_le(mem, 130513bv64) == 8bv8); + free requires (memory_load8_le(mem, 130514bv64) == 0bv8); + free requires (memory_load8_le(mem, 130515bv64) == 0bv8); + free requires (memory_load8_le(mem, 130516bv64) == 0bv8); + free requires (memory_load8_le(mem, 130517bv64) == 0bv8); + free requires (memory_load8_le(mem, 130518bv64) == 0bv8); + free requires (memory_load8_le(mem, 130519bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 212bv8); + free requires (memory_load8_le(mem, 131033bv64) == 8bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); + ensures Gamma_R0 == true; + ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); + ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); + ensures (bvult64(old(R0), bvadd64(bvadd64(old(R0), R0), 1bv64))); + free ensures (memory_load8_le(mem, 2488bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2489bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2490bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130504bv64) == 208bv8); + free ensures (memory_load8_le(mem, 130505bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130506bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130507bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130508bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130509bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130510bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130511bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130512bv64) == 128bv8); + free ensures (memory_load8_le(mem, 130513bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130514bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130515bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130516bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130517bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130518bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130519bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 212bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 8bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf new file mode 100644 index 000000000..ceafc2ab2 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_no_plt_no_pic/malloc_memcpy_strlen_memset_free.relf @@ -0,0 +1,143 @@ + +Relocation section '.rela.dyn' at offset 0x528 contains 8 entries: + Offset Info Type Symbol's Value Symbol's Name + Addend +000000000001fdc8 0000000000000403 R_AARCH64_RELATIVE 8d0 +000000000001fdd0 0000000000000403 R_AARCH64_RELATIVE 880 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 8d4 +0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 +000000000001ffc0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 +000000000001ffc8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +000000000001ffd0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 +000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 + +Relocation section '.rela.plt' at offset 0x5e8 contains 10 entries: + Offset Info Type Symbol's Value Symbol's Name + Addend +0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 +0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 +0000000000020010 0000000500000402 R_AARCH64_JUMP_SLOT 0000000000000000 __libc_start_main@GLIBC_2.34 + 0 +0000000000020018 0000000700000402 R_AARCH64_JUMP_SLOT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +0000000000020020 0000000800000402 R_AARCH64_JUMP_SLOT 0000000000000000 malloc@GLIBC_2.17 + 0 +0000000000020028 0000000900000402 R_AARCH64_JUMP_SLOT 0000000000000000 memset@GLIBC_2.17 + 0 +0000000000020030 0000000a00000402 R_AARCH64_JUMP_SLOT 0000000000000000 __gmon_start__ + 0 +0000000000020038 0000000b00000402 R_AARCH64_JUMP_SLOT 0000000000000000 abort@GLIBC_2.17 + 0 +0000000000020040 0000000c00000402 R_AARCH64_JUMP_SLOT 0000000000000000 puts@GLIBC_2.17 + 0 +0000000000020048 0000000d00000402 R_AARCH64_JUMP_SLOT 0000000000000000 free@GLIBC_2.17 + 0 + +Symbol table '.dynsym' contains 15 entries: + Num: Value Size Type Bind Vis Ndx Name + 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND + 1: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) + 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) + 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) + 6: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 7: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 (2) + 8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 (2) + 9: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 (2) + 10: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 11: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 (2) + 12: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 (2) + 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) + 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + +Symbol table '.symtab' contains 98 entries: + Num: Value Size Type Bind Vis Ndx Name + 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND + 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp + 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id + 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .gnu.hash + 5: 00000000000002b8 0 SECTION LOCAL DEFAULT 5 .dynsym + 6: 0000000000000420 0 SECTION LOCAL DEFAULT 6 .dynstr + 7: 00000000000004d4 0 SECTION LOCAL DEFAULT 7 .gnu.version + 8: 00000000000004f8 0 SECTION LOCAL DEFAULT 8 .gnu.version_r + 9: 0000000000000528 0 SECTION LOCAL DEFAULT 9 .rela.dyn + 10: 00000000000005e8 0 SECTION LOCAL DEFAULT 10 .rela.plt + 11: 00000000000006d8 0 SECTION LOCAL DEFAULT 11 .init + 12: 00000000000006f0 0 SECTION LOCAL DEFAULT 12 .plt + 13: 00000000000007c0 0 SECTION LOCAL DEFAULT 13 .text + 14: 00000000000009a4 0 SECTION LOCAL DEFAULT 14 .fini + 15: 00000000000009b8 0 SECTION LOCAL DEFAULT 15 .rodata + 16: 00000000000009bc 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr + 17: 00000000000009f8 0 SECTION LOCAL DEFAULT 17 .eh_frame + 18: 000000000001fdc8 0 SECTION LOCAL DEFAULT 18 .init_array + 19: 000000000001fdd0 0 SECTION LOCAL DEFAULT 19 .fini_array + 20: 000000000001fdd8 0 SECTION LOCAL DEFAULT 20 .dynamic + 21: 000000000001ffb8 0 SECTION LOCAL DEFAULT 21 .got + 22: 000000000001ffe8 0 SECTION LOCAL DEFAULT 22 .got.plt + 23: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 24: 0000000000020078 0 SECTION LOCAL DEFAULT 24 .bss + 25: 0000000000000000 0 SECTION LOCAL DEFAULT 25 .comment + 26: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 27: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 28: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 29: 00000000000007c0 0 NOTYPE LOCAL DEFAULT 13 $x + 30: 0000000000000a0c 0 NOTYPE LOCAL DEFAULT 17 $d + 31: 00000000000009b8 0 NOTYPE LOCAL DEFAULT 15 $d + 32: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 33: 00000000000007f4 0 NOTYPE LOCAL DEFAULT 13 $x + 34: 00000000000007f4 20 FUNC LOCAL DEFAULT 13 call_weak_fn + 35: 00000000000006d8 0 NOTYPE LOCAL DEFAULT 11 $x + 36: 00000000000009a4 0 NOTYPE LOCAL DEFAULT 14 $x + 37: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 38: 00000000000006e8 0 NOTYPE LOCAL DEFAULT 11 $x + 39: 00000000000009b0 0 NOTYPE LOCAL DEFAULT 14 $x + 40: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 41: 0000000000000810 0 NOTYPE LOCAL DEFAULT 13 $x + 42: 0000000000000810 0 FUNC LOCAL DEFAULT 13 deregister_tm_clones + 43: 0000000000000840 0 FUNC LOCAL DEFAULT 13 register_tm_clones + 44: 0000000000020058 0 NOTYPE LOCAL DEFAULT 23 $d + 45: 0000000000000880 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux + 46: 0000000000020078 1 OBJECT LOCAL DEFAULT 24 completed.0 + 47: 000000000001fdd0 0 NOTYPE LOCAL DEFAULT 19 $d + 48: 000000000001fdd0 0 OBJECT LOCAL DEFAULT 19 __do_global_dtors_aux_fini_array_entry + 49: 00000000000008d0 0 FUNC LOCAL DEFAULT 13 frame_dummy + 50: 000000000001fdc8 0 NOTYPE LOCAL DEFAULT 18 $d + 51: 000000000001fdc8 0 OBJECT LOCAL DEFAULT 18 __frame_dummy_init_array_entry + 52: 0000000000000a20 0 NOTYPE LOCAL DEFAULT 17 $d + 53: 0000000000020078 0 NOTYPE LOCAL DEFAULT 24 $d + 54: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 55: 0000000000020080 0 NOTYPE LOCAL DEFAULT 24 $d + 56: 0000000000020061 0 NOTYPE LOCAL DEFAULT 23 $d + 57: 00000000000008d4 0 NOTYPE LOCAL DEFAULT 13 $x + 58: 0000000000000a80 0 NOTYPE LOCAL DEFAULT 17 $d + 59: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 60: 0000000000000aa4 0 NOTYPE LOCAL DEFAULT 17 $d + 61: 0000000000000aa4 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__ + 62: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 63: 000000000001fdd8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 64: 00000000000009bc 0 NOTYPE LOCAL DEFAULT 16 __GNU_EH_FRAME_HDR + 65: 000000000001ffb8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 66: 00000000000006f0 0 NOTYPE LOCAL DEFAULT 12 $x + 67: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 68: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 70: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 71: 0000000000020050 0 NOTYPE WEAK DEFAULT 23 data_start + 72: 0000000000020073 0 NOTYPE GLOBAL DEFAULT 24 __bss_start__ + 73: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 74: 0000000000020088 0 NOTYPE GLOBAL DEFAULT 24 _bss_end__ + 75: 0000000000020073 0 NOTYPE GLOBAL DEFAULT 23 _edata + 76: 00000000000009a4 0 FUNC GLOBAL HIDDEN 14 _fini + 77: 0000000000020088 0 NOTYPE GLOBAL DEFAULT 24 __bss_end__ + 78: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 79: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 80: 0000000000020060 1 OBJECT GLOBAL DEFAULT 23 password + 81: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 23 __data_start + 82: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 83: 0000000000020058 0 OBJECT GLOBAL HIDDEN 23 __dso_handle + 84: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 85: 00000000000009b8 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 87: 0000000000020088 0 NOTYPE GLOBAL DEFAULT 24 _end + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 89: 00000000000007c0 52 FUNC GLOBAL DEFAULT 13 _start + 90: 0000000000020080 8 OBJECT GLOBAL DEFAULT 24 buf + 91: 0000000000020088 0 NOTYPE GLOBAL DEFAULT 24 __end__ + 92: 0000000000020068 11 OBJECT GLOBAL DEFAULT 23 stext + 93: 0000000000020073 0 NOTYPE GLOBAL DEFAULT 24 __bss_start + 94: 00000000000008d4 208 FUNC GLOBAL DEFAULT 13 main + 95: 0000000000020078 0 OBJECT GLOBAL HIDDEN 23 __TMC_END__ + 96: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 97: 00000000000006d8 0 FUNC GLOBAL HIDDEN 11 _init diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.adt b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.adt new file mode 100644 index 000000000..46fa898b3 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.adt @@ -0,0 +1,799 @@ +Project(Attrs([Attr("filename","\"a.out\""), +Attr("image-specification","(declare abi (name str))\n(declare arch (name str))\n(declare base-address (addr int))\n(declare bias (off int))\n(declare bits (size int))\n(declare code-region (addr int) (size int) (off int))\n(declare code-start (addr int))\n(declare entry-point (addr int))\n(declare external-reference (addr int) (name str))\n(declare format (name str))\n(declare is-executable (flag bool))\n(declare is-little-endian (flag bool))\n(declare llvm:base-address (addr int))\n(declare llvm:code-entry (name str) (off int) (size int))\n(declare llvm:coff-import-library (name str))\n(declare llvm:coff-virtual-section-header (name str) (addr int) (size int))\n(declare llvm:elf-program-header (name str) (off int) (size int))\n(declare llvm:elf-program-header-flags (name str) (ld bool) (r bool) \n (w bool) (x bool))\n(declare llvm:elf-virtual-program-header (name str) (addr int) (size int))\n(declare llvm:entry-point (addr int))\n(declare llvm:macho-symbol (name str) (value int))\n(declare llvm:name-reference (at int) (name str))\n(declare llvm:relocation (at int) (addr int))\n(declare llvm:section-entry (name str) (addr int) (size int) (off int))\n(declare llvm:section-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:segment-command (name str) (off int) (size int))\n(declare llvm:segment-command-flags (name str) (r bool) (w bool) (x bool))\n(declare llvm:symbol-entry (name str) (addr int) (size int) (off int)\n (value int))\n(declare llvm:virtual-segment-command (name str) (addr int) (size int))\n(declare mapped (addr int) (size int) (off int))\n(declare named-region (addr int) (size int) (name str))\n(declare named-symbol (addr int) (name str))\n(declare require (name str))\n(declare section (addr int) (size int))\n(declare segment (addr int) (size int) (r bool) (w bool) (x bool))\n(declare subarch (name str))\n(declare symbol-chunk (addr int) (size int) (root int))\n(declare symbol-value (addr int) (value int))\n(declare system (name str))\n(declare vendor (name str))\n\n(abi unknown)\n(arch aarch64)\n(base-address 0)\n(bias 0)\n(bits 64)\n(code-region 2532 20 2532)\n(code-region 2048 484 2048)\n(code-region 1824 192 1824)\n(code-region 1800 24 1800)\n(code-start 2100)\n(code-start 2048)\n(code-start 2324)\n(entry-point 2048)\n(external-reference 130992 _ITM_deregisterTMCloneTable)\n(external-reference 131000 __cxa_finalize)\n(external-reference 131008 __gmon_start__)\n(external-reference 131040 _ITM_registerTMCloneTable)\n(external-reference 131072 memcpy)\n(external-reference 131080 strlen)\n(external-reference 131088 __libc_start_main)\n(external-reference 131096 __cxa_finalize)\n(external-reference 131104 malloc)\n(external-reference 131112 memset)\n(external-reference 131120 __gmon_start__)\n(external-reference 131128 abort)\n(external-reference 131136 puts)\n(external-reference 131144 free)\n(format elf)\n(is-executable true)\n(is-little-endian true)\n(llvm:base-address 0)\n(llvm:code-entry free 0 0)\n(llvm:code-entry puts 0 0)\n(llvm:code-entry abort 0 0)\n(llvm:code-entry memset 0 0)\n(llvm:code-entry malloc 0 0)\n(llvm:code-entry __cxa_finalize 0 0)\n(llvm:code-entry __libc_start_main 0 0)\n(llvm:code-entry strlen 0 0)\n(llvm:code-entry memcpy 0 0)\n(llvm:code-entry _init 1800 0)\n(llvm:code-entry main 2324 208)\n(llvm:code-entry _start 2048 52)\n(llvm:code-entry free@GLIBC_2.17 0 0)\n(llvm:code-entry puts@GLIBC_2.17 0 0)\n(llvm:code-entry abort@GLIBC_2.17 0 0)\n(llvm:code-entry memset@GLIBC_2.17 0 0)\n(llvm:code-entry malloc@GLIBC_2.17 0 0)\n(llvm:code-entry _fini 2532 0)\n(llvm:code-entry __cxa_finalize@GLIBC_2.17 0 0)\n(llvm:code-entry __libc_start_main@GLIBC_2.34 0 0)\n(llvm:code-entry strlen@GLIBC_2.17 0 0)\n(llvm:code-entry memcpy@GLIBC_2.17 0 0)\n(llvm:code-entry frame_dummy 2320 0)\n(llvm:code-entry __do_global_dtors_aux 2240 0)\n(llvm:code-entry register_tm_clones 2176 0)\n(llvm:code-entry deregister_tm_clones 2128 0)\n(llvm:code-entry call_weak_fn 2100 20)\n(llvm:code-entry .fini 2532 20)\n(llvm:code-entry .text 2048 484)\n(llvm:code-entry .plt 1824 192)\n(llvm:code-entry .init 1800 24)\n(llvm:elf-program-header 08 64952 584)\n(llvm:elf-program-header 07 0 0)\n(llvm:elf-program-header 06 2556 60)\n(llvm:elf-program-header 05 596 68)\n(llvm:elf-program-header 04 64968 480)\n(llvm:elf-program-header 03 64952 699)\n(llvm:elf-program-header 02 0 2792)\n(llvm:elf-program-header 01 568 27)\n(llvm:elf-program-header 00 64 504)\n(llvm:elf-program-header-flags 08 false true false false)\n(llvm:elf-program-header-flags 07 false true true false)\n(llvm:elf-program-header-flags 06 false true false false)\n(llvm:elf-program-header-flags 05 false true false false)\n(llvm:elf-program-header-flags 04 false true true false)\n(llvm:elf-program-header-flags 03 true true true false)\n(llvm:elf-program-header-flags 02 true true false true)\n(llvm:elf-program-header-flags 01 false true false false)\n(llvm:elf-program-header-flags 00 false true false false)\n(llvm:elf-virtual-program-header 08 130488 584)\n(llvm:elf-virtual-program-header 07 0 0)\n(llvm:elf-virtual-program-header 06 2556 60)\n(llvm:elf-virtual-program-header 05 596 68)\n(llvm:elf-virtual-program-header 04 130504 480)\n(llvm:elf-virtual-program-header 03 130488 720)\n(llvm:elf-virtual-program-header 02 0 2792)\n(llvm:elf-virtual-program-header 01 568 27)\n(llvm:elf-virtual-program-header 00 64 504)\n(llvm:entry-point 2048)\n(llvm:name-reference 131144 free)\n(llvm:name-reference 131136 puts)\n(llvm:name-reference 131128 abort)\n(llvm:name-reference 131120 __gmon_start__)\n(llvm:name-reference 131112 memset)\n(llvm:name-reference 131104 malloc)\n(llvm:name-reference 131096 __cxa_finalize)\n(llvm:name-reference 131088 __libc_start_main)\n(llvm:name-reference 131080 strlen)\n(llvm:name-reference 131072 memcpy)\n(llvm:name-reference 131040 _ITM_registerTMCloneTable)\n(llvm:name-reference 131008 __gmon_start__)\n(llvm:name-reference 131000 __cxa_finalize)\n(llvm:name-reference 130992 _ITM_deregisterTMCloneTable)\n(llvm:section-entry .shstrtab 0 259 68731)\n(llvm:section-entry .strtab 0 691 68040)\n(llvm:section-entry .symtab 0 2352 65688)\n(llvm:section-entry .comment 0 30 65651)\n(llvm:section-entry .bss 131192 16 65651)\n(llvm:section-entry .data 131152 35 65616)\n(llvm:section-entry .got.plt 131048 104 65512)\n(llvm:section-entry .got 130984 64 65448)\n(llvm:section-entry .dynamic 130504 480 64968)\n(llvm:section-entry .fini_array 130496 8 64960)\n(llvm:section-entry .init_array 130488 8 64952)\n(llvm:section-entry .eh_frame 2616 176 2616)\n(llvm:section-entry .eh_frame_hdr 2556 60 2556)\n(llvm:section-entry .rodata 2552 4 2552)\n(llvm:section-entry .fini 2532 20 2532)\n(llvm:section-entry .text 2048 484 2048)\n(llvm:section-entry .plt 1824 192 1824)\n(llvm:section-entry .init 1800 24 1800)\n(llvm:section-entry .rela.plt 1560 240 1560)\n(llvm:section-entry .rela.dyn 1320 240 1320)\n(llvm:section-entry .gnu.version_r 1272 48 1272)\n(llvm:section-entry .gnu.version 1236 30 1236)\n(llvm:section-entry .dynstr 1056 179 1056)\n(llvm:section-entry .dynsym 696 360 696)\n(llvm:section-entry .gnu.hash 664 28 664)\n(llvm:section-entry .note.ABI-tag 632 32 632)\n(llvm:section-entry .note.gnu.build-id 596 36 596)\n(llvm:section-entry .interp 568 27 568)\n(llvm:section-flags .shstrtab true false false)\n(llvm:section-flags .strtab true false false)\n(llvm:section-flags .symtab true false false)\n(llvm:section-flags .comment true false false)\n(llvm:section-flags .bss true true false)\n(llvm:section-flags .data true true false)\n(llvm:section-flags .got.plt true true false)\n(llvm:section-flags .got true true false)\n(llvm:section-flags .dynamic true true false)\n(llvm:section-flags .fini_array true true false)\n(llvm:section-flags .init_array true true false)\n(llvm:section-flags .eh_frame true false false)\n(llvm:section-flags .eh_frame_hdr true false false)\n(llvm:section-flags .rodata true false false)\n(llvm:section-flags .fini true false true)\n(llvm:section-flags .text true false true)\n(llvm:section-flags .plt true false true)\n(llvm:section-flags .init true false true)\n(llvm:section-flags .rela.plt true false false)\n(llvm:section-flags .rela.dyn true false false)\n(llvm:section-flags .gnu.version_r true false false)\n(llvm:section-flags .gnu.version true false false)\n(llvm:section-flags .dynstr true false false)\n(llvm:section-flags .dynsym true false false)\n(llvm:section-flags .gnu.hash true false false)\n(llvm:section-flags .note.ABI-tag true false false)\n(llvm:section-flags .note.gnu.build-id true false false)\n(llvm:section-flags .interp true false false)\n(llvm:symbol-entry free 0 0 0 0)\n(llvm:symbol-entry puts 0 0 0 0)\n(llvm:symbol-entry abort 0 0 0 0)\n(llvm:symbol-entry memset 0 0 0 0)\n(llvm:symbol-entry malloc 0 0 0 0)\n(llvm:symbol-entry __cxa_finalize 0 0 0 0)\n(llvm:symbol-entry __libc_start_main 0 0 0 0)\n(llvm:symbol-entry strlen 0 0 0 0)\n(llvm:symbol-entry memcpy 0 0 0 0)\n(llvm:symbol-entry _init 1800 0 1800 1800)\n(llvm:symbol-entry main 2324 208 2324 2324)\n(llvm:symbol-entry _start 2048 52 2048 2048)\n(llvm:symbol-entry free@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry puts@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry abort@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memset@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry malloc@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry _fini 2532 0 2532 2532)\n(llvm:symbol-entry __cxa_finalize@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry __libc_start_main@GLIBC_2.34 0 0 0 0)\n(llvm:symbol-entry strlen@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry memcpy@GLIBC_2.17 0 0 0 0)\n(llvm:symbol-entry frame_dummy 2320 0 2320 2320)\n(llvm:symbol-entry __do_global_dtors_aux 2240 0 2240 2240)\n(llvm:symbol-entry register_tm_clones 2176 0 2176 2176)\n(llvm:symbol-entry deregister_tm_clones 2128 0 2128 2128)\n(llvm:symbol-entry call_weak_fn 2100 20 2100 2100)\n(mapped 0 2792 0)\n(mapped 130488 699 64952)\n(named-region 0 2792 02)\n(named-region 130488 720 03)\n(named-region 568 27 .interp)\n(named-region 596 36 .note.gnu.build-id)\n(named-region 632 32 .note.ABI-tag)\n(named-region 664 28 .gnu.hash)\n(named-region 696 360 .dynsym)\n(named-region 1056 179 .dynstr)\n(named-region 1236 30 .gnu.version)\n(named-region 1272 48 .gnu.version_r)\n(named-region 1320 240 .rela.dyn)\n(named-region 1560 240 .rela.plt)\n(named-region 1800 24 .init)\n(named-region 1824 192 .plt)\n(named-region 2048 484 .text)\n(named-region 2532 20 .fini)\n(named-region 2552 4 .rodata)\n(named-region 2556 60 .eh_frame_hdr)\n(named-region 2616 176 .eh_frame)\n(named-region 130488 8 .init_array)\n(named-region 130496 8 .fini_array)\n(named-region 130504 480 .dynamic)\n(named-region 130984 64 .got)\n(named-region 131048 104 .got.plt)\n(named-region 131152 35 .data)\n(named-region 131192 16 .bss)\n(named-region 0 30 .comment)\n(named-region 0 2352 .symtab)\n(named-region 0 691 .strtab)\n(named-region 0 259 .shstrtab)\n(named-symbol 2100 call_weak_fn)\n(named-symbol 2128 deregister_tm_clones)\n(named-symbol 2176 register_tm_clones)\n(named-symbol 2240 __do_global_dtors_aux)\n(named-symbol 2320 frame_dummy)\n(named-symbol 0 memcpy@GLIBC_2.17)\n(named-symbol 0 strlen@GLIBC_2.17)\n(named-symbol 0 __libc_start_main@GLIBC_2.34)\n(named-symbol 0 __cxa_finalize@GLIBC_2.17)\n(named-symbol 2532 _fini)\n(named-symbol 0 malloc@GLIBC_2.17)\n(named-symbol 0 memset@GLIBC_2.17)\n(named-symbol 0 abort@GLIBC_2.17)\n(named-symbol 0 puts@GLIBC_2.17)\n(named-symbol 0 free@GLIBC_2.17)\n(named-symbol 2048 _start)\n(named-symbol 2324 main)\n(named-symbol 1800 _init)\n(named-symbol 0 memcpy)\n(named-symbol 0 strlen)\n(named-symbol 0 __libc_start_main)\n(named-symbol 0 __cxa_finalize)\n(named-symbol 0 malloc)\n(named-symbol 0 memset)\n(named-symbol 0 abort)\n(named-symbol 0 puts)\n(named-symbol 0 free)\n(require libc.so.6)\n(section 568 27)\n(section 596 36)\n(section 632 32)\n(section 664 28)\n(section 696 360)\n(section 1056 179)\n(section 1236 30)\n(section 1272 48)\n(section 1320 240)\n(section 1560 240)\n(section 1800 24)\n(section 1824 192)\n(section 2048 484)\n(section 2532 20)\n(section 2552 4)\n(section 2556 60)\n(section 2616 176)\n(section 130488 8)\n(section 130496 8)\n(section 130504 480)\n(section 130984 64)\n(section 131048 104)\n(section 131152 35)\n(section 131192 16)\n(section 0 30)\n(section 0 2352)\n(section 0 691)\n(section 0 259)\n(segment 0 2792 true false true)\n(segment 130488 720 true true false)\n(subarch v8)\n(symbol-chunk 2100 20 2100)\n(symbol-chunk 2048 52 2048)\n(symbol-chunk 2324 208 2324)\n(symbol-value 2100 2100)\n(symbol-value 2128 2128)\n(symbol-value 2176 2176)\n(symbol-value 2240 2240)\n(symbol-value 2320 2320)\n(symbol-value 2532 2532)\n(symbol-value 2048 2048)\n(symbol-value 2324 2324)\n(symbol-value 1800 1800)\n(symbol-value 0 0)\n(system \"\")\n(vendor \"\")\n"), +Attr("abi-name","\"aarch64-linux-gnu-elf\"")]), +Sections([Section(".shstrtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x80\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x0a\x00\x00\x00\x00\x00\x00\xe8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01"), +Section(".strtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x80\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x0a\x00\x00\x00\x00\x00\x00\xe8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xbb\x02\x00\x00\x00\x00\x00\x00\xd0\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xfc\x09\x00\x00\x00\x00\x00\x00\xfc\x09\x00\x00\x00\x00\x00\x00\xfc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xa8\x0f\x4d\x6a\xc2\x15\x06\x60\x14\x02\xc2\x60\xa5\x03\xbd\x39\x88\x55\x1c\x12\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".symtab", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x80\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x38\x00\x09\x00\x40\x00\x1d\x00\x1c\x00\x06\x00\x00\x00\x04\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\xf8\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x04\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x0a\x00\x00\x00\x00\x00\x00\xe8\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x06\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xbb\x02\x00\x00\x00\x00\x00\x00\xd0\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x06\x00\x00\x00\xc8\xfd\x00\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xc8\xfd\x01\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x44\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x50\xe5\x74\x64\x04\x00\x00\x00\xfc\x09\x00\x00\x00\x00\x00\x00\xfc\x09\x00\x00\x00\x00\x00\x00\xfc\x09\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x51\xe5\x74\x64\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x52\xe5\x74\x64\x04\x00\x00\x00\xb8\xfd\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x48\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00\x00\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xa8\x0f\x4d\x6a\xc2\x15\x06\x60\x14\x02\xc2\x60\xa5\x03\xbd\x39\x88\x55\x1c\x12\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\x08\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x00\x02\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x68\x00\x02\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xb0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x48\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xcd\xff\xff\x97\xe0\xff\xff\x97\xe0\x00\x00\xf0\x00\xe0\x47\xf9\x40\x00\x00\xb4\xd8\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xe0\x01\x91\x01\x01\x00\x90\x21\xe0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xd8\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xe0\x01\x91\x01\x01\x00\x90\x21\xe0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xe2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xdc\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa1\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xe2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\xff\x17\x00\xf9\xff\x13\x00\xf9\x60\x01\x80\xd2\x95\xff\xff\x97"), +Section(".comment", 0x0, "\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xb7\x00\x01\x00\x00\x00\x00\x08\x00\x00\x00\x00"), +Section(".interp", 0x238, "\x2f\x6c\x69\x62\x2f\x6c\x64\x2d\x6c\x69\x6e\x75\x78\x2d\x61\x61\x72\x63\x68\x36\x34\x2e\x73\x6f\x2e\x31\x00"), +Section(".note.gnu.build-id", 0x254, "\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00\x47\x4e\x55\x00\xa8\x0f\x4d\x6a\xc2\x15\x06\x60\x14\x02\xc2\x60\xa5\x03\xbd\x39\x88\x55\x1c\x12"), +Section(".note.ABI-tag", 0x278, "\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00\x47\x4e\x55\x00\x00\x00\x00\x00\x03\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00"), +Section(".gnu.hash", 0x298, "\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynsym", 0x2B8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x0b\x00\x08\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x17\x00\x50\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".dynstr", 0x420, "\x00\x70\x75\x74\x73\x00\x66\x72\x65\x65\x00\x73\x74\x72\x6c\x65\x6e\x00\x6d\x61\x6c\x6c\x6f\x63\x00\x5f\x5f\x6c\x69\x62\x63\x5f\x73\x74\x61\x72\x74\x5f\x6d\x61\x69\x6e\x00\x5f\x5f\x63\x78\x61\x5f\x66\x69\x6e\x61\x6c\x69\x7a\x65\x00\x6d\x65\x6d\x73\x65\x74\x00\x6d\x65\x6d\x63\x70\x79\x00\x61\x62\x6f\x72\x74\x00\x6c\x69\x62\x63\x2e\x73\x6f\x2e\x36\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x33\x34\x00\x47\x4c\x49\x42\x43\x5f\x32\x2e\x31\x37\x00\x5f\x49\x54\x4d\x5f\x64\x65\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00\x5f\x5f\x67\x6d\x6f\x6e\x5f\x73\x74\x61\x72\x74\x5f\x5f\x00\x5f\x49\x54\x4d\x5f\x72\x65\x67\x69\x73\x74\x65\x72\x54\x4d\x43\x6c\x6f\x6e\x65\x54\x61\x62\x6c\x65\x00"), +Section(".gnu.version", 0x4D4, "\x00\x00\x00\x00\x00\x00\x02\x00\x02\x00\x03\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00\x02\x00\x02\x00\x02\x00\x01\x00"), +Section(".gnu.version_r", 0x4F8, "\x01\x00\x02\x00\x4e\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\xb4\x91\x96\x06\x00\x00\x03\x00\x58\x00\x00\x00\x10\x00\x00\x00\x97\x91\x96\x06\x00\x00\x02\x00\x63\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.dyn", 0x528, "\xb8\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x10\x09\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\xc0\x08\x00\x00\x00\x00\x00\x00\xc8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x80\x00\x02\x00\x00\x00\x00\x00\xd0\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x68\x00\x02\x00\x00\x00\x00\x00\xd8\xff\x01\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\xb0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb8\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\x01\x00\x00\x00\x00\x00\x01\x04\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".rela.plt", 0x618, "\x00\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x02\x00\x00\x00\x00\x00\x02\x04\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init", 0x708, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\x48\x00\x00\x94\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".plt", 0x720, "\xf0\x7b\xbf\xa9\xf0\x00\x00\xf0\x11\xfe\x47\xf9\x10\xe2\x3f\x91\x20\x02\x1f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x10\x01\x00\x90\x11\x02\x40\xf9\x10\x02\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x06\x40\xf9\x10\x22\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0a\x40\xf9\x10\x42\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x0e\x40\xf9\x10\x62\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x12\x40\xf9\x10\x82\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x16\x40\xf9\x10\xa2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1a\x40\xf9\x10\xc2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x1e\x40\xf9\x10\xe2\x00\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x22\x40\xf9\x10\x02\x01\x91\x20\x02\x1f\xd6\x10\x01\x00\x90\x11\x26\x40\xf9\x10\x22\x01\x91\x20\x02\x1f\xd6"), +Section(".fini", 0x9E4, "\x1f\x20\x03\xd5\xfd\x7b\xbf\xa9\xfd\x03\x00\x91\xfd\x7b\xc1\xa8\xc0\x03\x5f\xd6"), +Section(".rodata", 0x9F8, "\x01\x00\x02\x00"), +Section(".eh_frame_hdr", 0x9FC, "\x01\x1b\x03\x3b\x38\x00\x00\x00\x06\x00\x00\x00\x04\xfe\xff\xff\x50\x00\x00\x00\x54\xfe\xff\xff\x64\x00\x00\x00\x84\xfe\xff\xff\x78\x00\x00\x00\xc4\xfe\xff\xff\x8c\x00\x00\x00\x14\xff\xff\xff\xb0\x00\x00\x00\x18\xff\xff\xff\xc4\x00\x00\x00"), +Section(".eh_frame", 0xA38, "\x10\x00\x00\x00\x00\x00\x00\x00\x01\x7a\x52\x00\x04\x78\x1e\x01\x1b\x0c\x1f\x00\x10\x00\x00\x00\x18\x00\x00\x00\xac\xfd\xff\xff\x34\x00\x00\x00\x00\x41\x07\x1e\x10\x00\x00\x00\x2c\x00\x00\x00\xe8\xfd\xff\xff\x30\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00\x04\xfe\xff\xff\x3c\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x54\x00\x00\x00\x30\xfe\xff\xff\x48\x00\x00\x00\x00\x41\x0e\x20\x9d\x04\x9e\x03\x42\x93\x02\x4e\xde\xdd\xd3\x0e\x00\x00\x00\x00\x10\x00\x00\x00\x78\x00\x00\x00\x5c\xfe\xff\xff\x04\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x8c\x00\x00\x00\x4c\xfe\xff\xff\xd0\x00\x00\x00\x00\x41\x0e\x30\x9d\x06\x9e\x05\x42\x93\x04\x70\xde\xdd\xd3\x0e\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".fini_array", 0x1FDC0, "\xc0\x08\x00\x00\x00\x00\x00\x00"), +Section(".dynamic", 0x1FDC8, "\x01\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x08\x07\x00\x00\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xe4\x09\x00\x00\x00\x00\x00\x00\x19\x00\x00\x00\x00\x00\x00\x00\xb8\xfd\x01\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc0\xfd\x01\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xff\x6f\x00\x00\x00\x00\x98\x02\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x20\x04\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\xb8\x02\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xe8\xff\x01\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x17\x00\x00\x00\x00\x00\x00\x00\x18\x06\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x28\x05\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xff\x6f\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\xfe\xff\xff\x6f\x00\x00\x00\x00\xf8\x04\x00\x00\x00\x00\x00\x00\xff\xff\xff\x6f\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x6f\x00\x00\x00\x00\xd4\x04\x00\x00\x00\x00\x00\x00\xf9\xff\xff\x6f\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".init_array", 0x1FDB8, "\x10\x09\x00\x00\x00\x00\x00\x00"), +Section(".got", 0x1FFA8, "\xc8\xfd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x02\x00\x00\x00\x00\x00\x68\x00\x02\x00\x00\x00\x00\x00\x14\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"), +Section(".got.plt", 0x1FFE8, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00"), +Section(".data", 0x20050, "\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x02\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00\x75\x73\x65\x72\x3a\x70\x61\x73\x73\x00\x00"), +Section(".text", 0x800, "\x1f\x20\x03\xd5\x1d\x00\x80\xd2\x1e\x00\x80\xd2\xe5\x03\x00\xaa\xe1\x03\x40\xf9\xe2\x23\x00\x91\xe6\x03\x00\x91\xe0\x00\x00\xf0\x00\xec\x47\xf9\x03\x00\x80\xd2\x04\x00\x80\xd2\xcd\xff\xff\x97\xe0\xff\xff\x97\xe0\x00\x00\xf0\x00\xe0\x47\xf9\x40\x00\x00\xb4\xd8\xff\xff\x17\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\x00\x01\x00\x90\x00\xe0\x01\x91\x01\x01\x00\x90\x21\xe0\x01\x91\x3f\x00\x00\xeb\xc0\x00\x00\x54\xe1\x00\x00\xf0\x21\xd8\x47\xf9\x61\x00\x00\xb4\xf0\x03\x01\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x00\x01\x00\x90\x00\xe0\x01\x91\x01\x01\x00\x90\x21\xe0\x01\x91\x21\x00\x00\xcb\x22\xfc\x7f\xd3\x41\x0c\x81\x8b\x21\xfc\x41\x93\xc1\x00\x00\xb4\xe2\x00\x00\xf0\x42\xf0\x47\xf9\x62\x00\x00\xb4\xf0\x03\x02\xaa\x00\x02\x1f\xd6\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\xfd\x7b\xbe\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\x13\x01\x00\x90\x60\xe2\x41\x39\x40\x01\x00\x37\xe0\x00\x00\xf0\x00\xdc\x47\xf9\x80\x00\x00\xb4\x00\x01\x00\x90\x00\x2c\x40\xf9\xa1\xff\xff\x97\xd8\xff\xff\x97\x20\x00\x80\x52\x60\xe2\x01\x39\xf3\x0b\x40\xf9\xfd\x7b\xc2\xa8\xc0\x03\x5f\xd6\x1f\x20\x03\xd5\x1f\x20\x03\xd5\xdc\xff\xff\x17\xfd\x7b\xbd\xa9\xfd\x03\x00\x91\xf3\x0b\x00\xf9\xff\x17\x00\xf9\xff\x13\x00\xf9\x60\x01\x80\xd2\x95\xff\xff\x97\xe1\x03\x00\xaa\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x01\x00\x00\xf9\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x13\x00\x40\xf9\xe0\x00\x00\xf0\x00\xe8\x47\xf9\x7f\xff\xff\x97\xe2\x03\x00\xaa\xe0\x00\x00\xf0\x01\xe8\x47\xf9\xe0\x03\x13\xaa\x76\xff\xff\x97\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x00\x00\x40\xf9\x92\xff\xff\x97\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x00\x00\x40\xf9\x00\x10\x00\x91\xe0\x17\x00\xf9\xe0\x17\x40\xf9\x1f\x00\x00\x39\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x13\x00\x40\xf9\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x00\x00\x40\xf9\x68\xff\xff\x97\xe2\x03\x00\xaa\x21\x00\x80\x52\xe0\x03\x13\xaa\x74\xff\xff\x97\xe0\x00\x00\xf0\x00\xe4\x47\xf9\x00\x00\x40\xf9\x80\xff\xff\x97\x00\x00\x80\x52\xf3\x0b\x40\xf9\xfd\x7b\xc3\xa8\xc0\x03\x5f\xd6")]), +Memmap([Annotation(Region(0x0,0xAE7), Attr("segment","02 0 2792")), +Annotation(Region(0x800,0x833), Attr("symbol","\"_start\"")), +Annotation(Region(0x0,0x102), Attr("section","\".shstrtab\"")), +Annotation(Region(0x0,0x2B2), Attr("section","\".strtab\"")), +Annotation(Region(0x0,0x92F), Attr("section","\".symtab\"")), +Annotation(Region(0x0,0x1D), Attr("section","\".comment\"")), +Annotation(Region(0x238,0x252), Attr("section","\".interp\"")), +Annotation(Region(0x254,0x277), Attr("section","\".note.gnu.build-id\"")), +Annotation(Region(0x278,0x297), Attr("section","\".note.ABI-tag\"")), +Annotation(Region(0x298,0x2B3), Attr("section","\".gnu.hash\"")), +Annotation(Region(0x2B8,0x41F), Attr("section","\".dynsym\"")), +Annotation(Region(0x420,0x4D2), Attr("section","\".dynstr\"")), +Annotation(Region(0x4D4,0x4F1), Attr("section","\".gnu.version\"")), +Annotation(Region(0x4F8,0x527), Attr("section","\".gnu.version_r\"")), +Annotation(Region(0x528,0x617), Attr("section","\".rela.dyn\"")), +Annotation(Region(0x618,0x707), Attr("section","\".rela.plt\"")), +Annotation(Region(0x708,0x71F), Attr("section","\".init\"")), +Annotation(Region(0x720,0x7DF), Attr("section","\".plt\"")), +Annotation(Region(0x708,0x71F), Attr("code-region","()")), +Annotation(Region(0x720,0x7DF), Attr("code-region","()")), +Annotation(Region(0x800,0x833), Attr("symbol-info","_start 0x800 52")), +Annotation(Region(0x834,0x847), Attr("symbol","\"call_weak_fn\"")), +Annotation(Region(0x834,0x847), Attr("symbol-info","call_weak_fn 0x834 20")), +Annotation(Region(0x914,0x9E3), Attr("symbol","\"main\"")), +Annotation(Region(0x914,0x9E3), Attr("symbol-info","main 0x914 208")), +Annotation(Region(0x9E4,0x9F7), Attr("section","\".fini\"")), +Annotation(Region(0x9F8,0x9FB), Attr("section","\".rodata\"")), +Annotation(Region(0x9FC,0xA37), Attr("section","\".eh_frame_hdr\"")), +Annotation(Region(0xA38,0xAE7), Attr("section","\".eh_frame\"")), +Annotation(Region(0x1FDB8,0x20072), Attr("segment","03 0x1FDB8 720")), +Annotation(Region(0x1FDC0,0x1FDC7), Attr("section","\".fini_array\"")), +Annotation(Region(0x1FDC8,0x1FFA7), Attr("section","\".dynamic\"")), +Annotation(Region(0x1FDB8,0x1FDBF), Attr("section","\".init_array\"")), +Annotation(Region(0x1FFA8,0x1FFE7), Attr("section","\".got\"")), +Annotation(Region(0x1FFE8,0x2004F), Attr("section","\".got.plt\"")), +Annotation(Region(0x20050,0x20072), Attr("section","\".data\"")), +Annotation(Region(0x800,0x9E3), Attr("section","\".text\"")), +Annotation(Region(0x800,0x9E3), Attr("code-region","()")), +Annotation(Region(0x9E4,0x9F7), Attr("code-region","()"))]), +Program(Tid(2_341, "%00000925"), Attrs([]), + Subs([Sub(Tid(2_270, "@__cxa_finalize"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x770"), +Attr("stub","()")]), "__cxa_finalize", Args([Arg(Tid(2_342, "%00000926"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("__cxa_finalize_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(1_415, "@__cxa_finalize"), + Attrs([Attr("address","0x770")]), Phis([]), +Defs([Def(Tid(1_835, "%0000072b"), Attrs([Attr("address","0x770"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_843, "%00000733"), Attrs([Attr("address","0x774"), +Attr("insn","ldr x17, [x16, #0x18]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(24,64)),LittleEndian(),64)), +Def(Tid(1_850, "%0000073a"), Attrs([Attr("address","0x778"), +Attr("insn","add x16, x16, #0x18")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(24,64)))]), Jmps([Call(Tid(1_855, "%0000073f"), + Attrs([Attr("address","0x77C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_271, "@__do_global_dtors_aux"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x8C0")]), + "__do_global_dtors_aux", Args([Arg(Tid(2_343, "%00000927"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("__do_global_dtors_aux_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(834, "@__do_global_dtors_aux"), + Attrs([Attr("address","0x8C0")]), Phis([]), Defs([Def(Tid(841, "%00000349"), + Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("#34",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551584,64))), +Def(Tid(846, "%0000034e"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#34",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(851, "%00000353"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#34",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(855, "%00000357"), Attrs([Attr("address","0x8C0"), +Attr("insn","stp x29, x30, [sp, #-0x20]!")]), Var("R31",Imm(64)), +Var("#34",Imm(64))), Def(Tid(862, "%0000035e"), + Attrs([Attr("address","0x8C4"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(870, "%00000366"), + Attrs([Attr("address","0x8C8"), Attr("insn","str x19, [sp, #0x10]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), +Def(Tid(876, "%0000036c"), Attrs([Attr("address","0x8CC"), +Attr("insn","adrp x19, #0x20000")]), Var("R19",Imm(64)), Int(131072,64)), +Def(Tid(885, "%00000375"), Attrs([Attr("address","0x8D0"), +Attr("insn","ldrb w0, [x19, #0x78]")]), Var("R0",Imm(64)), +UNSIGNED(32,Load(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(120,64)),BigEndian(),8))), +Def(Tid(897, "%00000381"), Attrs([Attr("address","0x8D4"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +EQ(EQ(Extract(0,0,Var("R0",Imm(64))),Int(0,1)),Int(0,1)))]), +Jmps([Goto(Tid(891, "%0000037b"), Attrs([Attr("address","0x8D4"), +Attr("insn","tbnz w0, #0x0, #0x28")]), Var("#36",Imm(1)), +Direct(Tid(889, "%00000379"))), Goto(Tid(2_331, "%0000091b"), Attrs([]), + Int(1,1), Direct(Tid(1_349, "%00000545")))])), Blk(Tid(1_349, "%00000545"), + Attrs([Attr("address","0x8D8")]), Phis([]), +Defs([Def(Tid(1_353, "%00000549"), Attrs([Attr("address","0x8D8"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_361, "%00000551"), Attrs([Attr("address","0x8DC"), +Attr("insn","ldr x0, [x0, #0xfb8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4024,64)),LittleEndian(),64)), +Def(Tid(1_373, "%0000055d"), Attrs([Attr("address","0x8E0"), +Attr("insn","cbz x0, #0x10")]), Var("#78",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_367, "%00000557"), + Attrs([Attr("address","0x8E0"), Attr("insn","cbz x0, #0x10")]), + Var("#78",Imm(1)), Direct(Tid(1_365, "%00000555"))), +Goto(Tid(2_332, "%0000091c"), Attrs([]), Int(1,1), +Direct(Tid(1_397, "%00000575")))])), Blk(Tid(1_397, "%00000575"), + Attrs([Attr("address","0x8E4")]), Phis([]), +Defs([Def(Tid(1_401, "%00000579"), Attrs([Attr("address","0x8E4"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(1_409, "%00000581"), Attrs([Attr("address","0x8E8"), +Attr("insn","ldr x0, [x0, #0x58]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(88,64)),LittleEndian(),64)), +Def(Tid(1_414, "%00000586"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x17c")]), Var("R30",Imm(64)), Int(2288,64))]), +Jmps([Call(Tid(1_417, "%00000589"), Attrs([Attr("address","0x8EC"), +Attr("insn","bl #-0x17c")]), Int(1,1), +(Direct(Tid(2_270, "@__cxa_finalize")),Direct(Tid(1_365, "%00000555"))))])), +Blk(Tid(1_365, "%00000555"), Attrs([Attr("address","0x8F0")]), Phis([]), +Defs([Def(Tid(1_378, "%00000562"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Var("R30",Imm(64)), Int(2292,64))]), +Jmps([Call(Tid(1_380, "%00000564"), Attrs([Attr("address","0x8F0"), +Attr("insn","bl #-0xa0")]), Int(1,1), +(Direct(Tid(2_284, "@deregister_tm_clones")),Direct(Tid(1_382, "%00000566"))))])), +Blk(Tid(1_382, "%00000566"), Attrs([Attr("address","0x8F4")]), Phis([]), +Defs([Def(Tid(1_387, "%0000056b"), Attrs([Attr("address","0x8F4"), +Attr("insn","mov w0, #0x1")]), Var("R0",Imm(64)), Int(1,64)), +Def(Tid(1_395, "%00000573"), Attrs([Attr("address","0x8F8"), +Attr("insn","strb w0, [x19, #0x78]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R19",Imm(64)),Int(120,64)),LOW(8,Extract(31,0,Var("R0",Imm(64)))),BigEndian(),8))]), +Jmps([Goto(Tid(2_333, "%0000091d"), Attrs([]), Int(1,1), +Direct(Tid(889, "%00000379")))])), Blk(Tid(889, "%00000379"), + Attrs([Attr("address","0x8FC")]), Phis([]), Defs([Def(Tid(905, "%00000389"), + Attrs([Attr("address","0x8FC"), Attr("insn","ldr x19, [sp, #0x10]")]), + Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(915, "%00000393"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(919, "%00000397"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(922, "%0000039a"), Attrs([Attr("address","0x900"), +Attr("insn","ldp x29, x30, [sp], #0x20")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(927, "%0000039f"), + Attrs([Attr("address","0x904"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_275, "@__libc_start_main"), + Attrs([Attr("c.proto","signed (*)(signed (*)(signed , char** , char** );* main, signed , char** , \nvoid* auxv)"), +Attr("address","0x760"), Attr("stub","()")]), "__libc_start_main", + Args([Arg(Tid(2_344, "%00000928"), + Attrs([Attr("c.layout","**[ : 64]"), +Attr("c.data","Top:u64 ptr ptr"), +Attr("c.type","signed (*)(signed , char** , char** );*")]), + Var("__libc_start_main_main",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_345, "%00000929"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_arg2",Imm(32)), LOW(32,Var("R1",Imm(64))), In()), +Arg(Tid(2_346, "%0000092a"), Attrs([Attr("c.layout","**[char : 8]"), +Attr("c.data","Top:u8 ptr ptr"), Attr("c.type","char**")]), + Var("__libc_start_main_arg3",Imm(64)), Var("R2",Imm(64)), Both()), +Arg(Tid(2_347, "%0000092b"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("__libc_start_main_auxv",Imm(64)), Var("R3",Imm(64)), Both()), +Arg(Tid(2_348, "%0000092c"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("__libc_start_main_result",Imm(32)), LOW(32,Var("R0",Imm(64))), +Out())]), Blks([Blk(Tid(646, "@__libc_start_main"), + Attrs([Attr("address","0x760")]), Phis([]), +Defs([Def(Tid(1_810, "%00000712"), Attrs([Attr("address","0x760"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_818, "%0000071a"), Attrs([Attr("address","0x764"), +Attr("insn","ldr x17, [x16, #0x10]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_825, "%00000721"), Attrs([Attr("address","0x768"), +Attr("insn","add x16, x16, #0x10")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(1_830, "%00000726"), + Attrs([Attr("address","0x76C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_276, "@_fini"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x9E4")]), + "_fini", Args([Arg(Tid(2_349, "%0000092d"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_fini_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(32, "@_fini"), + Attrs([Attr("address","0x9E4")]), Phis([]), Defs([Def(Tid(41, "%00000029"), + Attrs([Attr("address","0x9E8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#3",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(46, "%0000002e"), Attrs([Attr("address","0x9E8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#3",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(51, "%00000033"), Attrs([Attr("address","0x9E8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#3",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(55, "%00000037"), Attrs([Attr("address","0x9E8"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#3",Imm(64))), Def(Tid(62, "%0000003e"), Attrs([Attr("address","0x9EC"), +Attr("insn","mov x29, sp")]), Var("R29",Imm(64)), Var("R31",Imm(64))), +Def(Tid(72, "%00000048"), Attrs([Attr("address","0x9F0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(76, "%0000004c"), Attrs([Attr("address","0x9F0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(79, "%0000004f"), Attrs([Attr("address","0x9F0"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(84, "%00000054"), + Attrs([Attr("address","0x9F4"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_277, "@_init"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x708")]), + "_init", Args([Arg(Tid(2_350, "%0000092e"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_init_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(2_033, "@_init"), + Attrs([Attr("address","0x708")]), Phis([]), +Defs([Def(Tid(2_042, "%000007fa"), Attrs([Attr("address","0x70C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("#109",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551600,64))), +Def(Tid(2_047, "%000007ff"), Attrs([Attr("address","0x70C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#109",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(2_052, "%00000804"), Attrs([Attr("address","0x70C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#109",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(2_056, "%00000808"), Attrs([Attr("address","0x70C"), +Attr("insn","stp x29, x30, [sp, #-0x10]!")]), Var("R31",Imm(64)), +Var("#109",Imm(64))), Def(Tid(2_063, "%0000080f"), + Attrs([Attr("address","0x710"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(2_068, "%00000814"), + Attrs([Attr("address","0x714"), Attr("insn","bl #0x120")]), + Var("R30",Imm(64)), Int(1816,64))]), Jmps([Call(Tid(2_070, "%00000816"), + Attrs([Attr("address","0x714"), Attr("insn","bl #0x120")]), Int(1,1), +(Direct(Tid(2_282, "@call_weak_fn")),Direct(Tid(2_072, "%00000818"))))])), +Blk(Tid(2_072, "%00000818"), Attrs([Attr("address","0x718")]), Phis([]), +Defs([Def(Tid(2_080, "%00000820"), Attrs([Attr("address","0x718"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(2_084, "%00000824"), Attrs([Attr("address","0x718"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(2_087, "%00000827"), Attrs([Attr("address","0x718"), +Attr("insn","ldp x29, x30, [sp], #0x10")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(16,64)))]), Jmps([Call(Tid(2_092, "%0000082c"), + Attrs([Attr("address","0x71C"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_278, "@_start"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x800"), +Attr("entry-point","()")]), "_start", Args([Arg(Tid(2_351, "%0000092f"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("_start_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(572, "@_start"), + Attrs([Attr("address","0x800")]), Phis([]), Defs([Def(Tid(578, "%00000242"), + Attrs([Attr("address","0x804"), Attr("insn","mov x29, #0x0")]), + Var("R29",Imm(64)), Int(0,64)), Def(Tid(584, "%00000248"), + Attrs([Attr("address","0x808"), Attr("insn","mov x30, #0x0")]), + Var("R30",Imm(64)), Int(0,64)), Def(Tid(592, "%00000250"), + Attrs([Attr("address","0x80C"), Attr("insn","mov x5, x0")]), + Var("R5",Imm(64)), Var("R0",Imm(64))), Def(Tid(600, "%00000258"), + Attrs([Attr("address","0x810"), Attr("insn","ldr x1, [sp]")]), + Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(607, "%0000025f"), Attrs([Attr("address","0x814"), +Attr("insn","add x2, sp, #0x8")]), Var("R2",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(8,64))), Def(Tid(614, "%00000266"), + Attrs([Attr("address","0x818"), Attr("insn","mov x6, sp")]), + Var("R6",Imm(64)), Var("R31",Imm(64))), Def(Tid(620, "%0000026c"), + Attrs([Attr("address","0x81C"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(628, "%00000274"), + Attrs([Attr("address","0x820"), Attr("insn","ldr x0, [x0, #0xfd8]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4056,64)),LittleEndian(),64)), +Def(Tid(634, "%0000027a"), Attrs([Attr("address","0x824"), +Attr("insn","mov x3, #0x0")]), Var("R3",Imm(64)), Int(0,64)), +Def(Tid(640, "%00000280"), Attrs([Attr("address","0x828"), +Attr("insn","mov x4, #0x0")]), Var("R4",Imm(64)), Int(0,64)), +Def(Tid(645, "%00000285"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xcc")]), Var("R30",Imm(64)), Int(2096,64))]), +Jmps([Call(Tid(648, "%00000288"), Attrs([Attr("address","0x82C"), +Attr("insn","bl #-0xcc")]), Int(1,1), +(Direct(Tid(2_275, "@__libc_start_main")),Direct(Tid(650, "%0000028a"))))])), +Blk(Tid(650, "%0000028a"), Attrs([Attr("address","0x830")]), Phis([]), +Defs([Def(Tid(653, "%0000028d"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x80")]), Var("R30",Imm(64)), Int(2100,64))]), +Jmps([Call(Tid(656, "%00000290"), Attrs([Attr("address","0x830"), +Attr("insn","bl #-0x80")]), Int(1,1), +(Direct(Tid(2_281, "@abort")),Direct(Tid(2_334, "%0000091e"))))])), +Blk(Tid(2_334, "%0000091e"), Attrs([]), Phis([]), Defs([]), +Jmps([Call(Tid(2_335, "%0000091f"), Attrs([]), Int(1,1), +(Direct(Tid(2_282, "@call_weak_fn")),))]))])), Sub(Tid(2_281, "@abort"), + Attrs([Attr("noreturn","()"), Attr("c.proto","void (*)(void)"), +Attr("address","0x7B0"), Attr("stub","()")]), "abort", Args([]), +Blks([Blk(Tid(654, "@abort"), Attrs([Attr("address","0x7B0")]), Phis([]), +Defs([Def(Tid(1_935, "%0000078f"), Attrs([Attr("address","0x7B0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_943, "%00000797"), Attrs([Attr("address","0x7B4"), +Attr("insn","ldr x17, [x16, #0x38]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(56,64)),LittleEndian(),64)), +Def(Tid(1_950, "%0000079e"), Attrs([Attr("address","0x7B8"), +Attr("insn","add x16, x16, #0x38")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(56,64)))]), Jmps([Call(Tid(1_955, "%000007a3"), + Attrs([Attr("address","0x7BC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_282, "@call_weak_fn"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x834")]), + "call_weak_fn", Args([Arg(Tid(2_352, "%00000930"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("call_weak_fn_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(658, "@call_weak_fn"), + Attrs([Attr("address","0x834")]), Phis([]), Defs([Def(Tid(662, "%00000296"), + Attrs([Attr("address","0x834"), Attr("insn","adrp x0, #0x1f000")]), + Var("R0",Imm(64)), Int(126976,64)), Def(Tid(670, "%0000029e"), + Attrs([Attr("address","0x838"), Attr("insn","ldr x0, [x0, #0xfc0]")]), + Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4032,64)),LittleEndian(),64)), +Def(Tid(682, "%000002aa"), Attrs([Attr("address","0x83C"), +Attr("insn","cbz x0, #0x8")]), Var("#12",Imm(1)), +EQ(Var("R0",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(676, "%000002a4"), + Attrs([Attr("address","0x83C"), Attr("insn","cbz x0, #0x8")]), + Var("#12",Imm(1)), Direct(Tid(674, "%000002a2"))), +Goto(Tid(2_336, "%00000920"), Attrs([]), Int(1,1), +Direct(Tid(1_497, "%000005d9")))])), Blk(Tid(674, "%000002a2"), + Attrs([Attr("address","0x844")]), Phis([]), Defs([]), +Jmps([Call(Tid(687, "%000002af"), Attrs([Attr("address","0x844"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_497, "%000005d9"), Attrs([Attr("address","0x840")]), Phis([]), +Defs([]), Jmps([Goto(Tid(1_500, "%000005dc"), Attrs([Attr("address","0x840"), +Attr("insn","b #-0xa0")]), Int(1,1), +Direct(Tid(1_498, "@__gmon_start__")))])), Blk(Tid(1_498, "@__gmon_start__"), + Attrs([Attr("address","0x7A0")]), Phis([]), +Defs([Def(Tid(1_910, "%00000776"), Attrs([Attr("address","0x7A0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_918, "%0000077e"), Attrs([Attr("address","0x7A4"), +Attr("insn","ldr x17, [x16, #0x30]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(48,64)),LittleEndian(),64)), +Def(Tid(1_925, "%00000785"), Attrs([Attr("address","0x7A8"), +Attr("insn","add x16, x16, #0x30")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_930, "%0000078a"), + Attrs([Attr("address","0x7AC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_284, "@deregister_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x850")]), + "deregister_tm_clones", Args([Arg(Tid(2_353, "%00000931"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("deregister_tm_clones_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(693, "@deregister_tm_clones"), + Attrs([Attr("address","0x850")]), Phis([]), Defs([Def(Tid(697, "%000002b9"), + Attrs([Attr("address","0x850"), Attr("insn","adrp x0, #0x20000")]), + Var("R0",Imm(64)), Int(131072,64)), Def(Tid(704, "%000002c0"), + Attrs([Attr("address","0x854"), Attr("insn","add x0, x0, #0x78")]), + Var("R0",Imm(64)), PLUS(Var("R0",Imm(64)),Int(120,64))), +Def(Tid(710, "%000002c6"), Attrs([Attr("address","0x858"), +Attr("insn","adrp x1, #0x20000")]), Var("R1",Imm(64)), Int(131072,64)), +Def(Tid(717, "%000002cd"), Attrs([Attr("address","0x85C"), +Attr("insn","add x1, x1, #0x78")]), Var("R1",Imm(64)), +PLUS(Var("R1",Imm(64)),Int(120,64))), Def(Tid(725, "%000002d5"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("#16",Imm(64)), +PLUS(PLUS(Int(1,64),NOT(Var("R0",Imm(64)))),Var("R1",Imm(64)))), +Def(Tid(729, "%000002d9"), Attrs([Attr("address","0x860"), +Attr("insn","cmp x1, x0")]), Var("NF",Imm(1)), +Extract(63,63,Var("#16",Imm(64)))), Def(Tid(732, "%000002dc"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("VF",Imm(1)), +OR(AND(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),NOT(Extract(63,63,Var("#16",Imm(64))))),AND(AND(NOT(Extract(63,63,Var("R1",Imm(64)))),NOT(Extract(63,63,NOT(Var("R0",Imm(64)))))),Extract(63,63,Var("#16",Imm(64)))))), +Def(Tid(735, "%000002df"), Attrs([Attr("address","0x860"), +Attr("insn","cmp x1, x0")]), Var("ZF",Imm(1)), +EQ(Var("#16",Imm(64)),Int(0,64))), Def(Tid(738, "%000002e2"), + Attrs([Attr("address","0x860"), Attr("insn","cmp x1, x0")]), + Var("CF",Imm(1)), +OR(OR(AND(Extract(63,63,Var("R1",Imm(64))),Extract(63,63,NOT(Var("R0",Imm(64))))),AND(Extract(63,63,NOT(Var("R0",Imm(64)))),NOT(Extract(63,63,Var("#16",Imm(64)))))),AND(Extract(63,63,Var("R1",Imm(64))),NOT(Extract(63,63,Var("#16",Imm(64))))))), +Def(Tid(752, "%000002f0"), Attrs([Attr("address","0x864"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), Var("ZF",Imm(1)))]), +Jmps([Goto(Tid(746, "%000002ea"), Attrs([Attr("address","0x864"), +Attr("insn","b.eq #0x18")]), Var("#21",Imm(1)), +Direct(Tid(744, "%000002e8"))), Goto(Tid(2_337, "%00000921"), Attrs([]), + Int(1,1), Direct(Tid(1_458, "%000005b2")))])), Blk(Tid(1_458, "%000005b2"), + Attrs([Attr("address","0x868")]), Phis([]), +Defs([Def(Tid(1_462, "%000005b6"), Attrs([Attr("address","0x868"), +Attr("insn","adrp x1, #0x1f000")]), Var("R1",Imm(64)), Int(126976,64)), +Def(Tid(1_470, "%000005be"), Attrs([Attr("address","0x86C"), +Attr("insn","ldr x1, [x1, #0xfb0]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R1",Imm(64)),Int(4016,64)),LittleEndian(),64)), +Def(Tid(1_481, "%000005c9"), Attrs([Attr("address","0x870"), +Attr("insn","cbz x1, #0xc")]), Var("#86",Imm(1)), +EQ(Var("R1",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_475, "%000005c3"), + Attrs([Attr("address","0x870"), Attr("insn","cbz x1, #0xc")]), + Var("#86",Imm(1)), Direct(Tid(744, "%000002e8"))), +Goto(Tid(2_338, "%00000922"), Attrs([]), Int(1,1), +Direct(Tid(1_484, "%000005cc")))])), Blk(Tid(744, "%000002e8"), + Attrs([Attr("address","0x87C")]), Phis([]), Defs([]), +Jmps([Call(Tid(757, "%000002f5"), Attrs([Attr("address","0x87C"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_484, "%000005cc"), Attrs([Attr("address","0x874")]), Phis([]), +Defs([Def(Tid(1_490, "%000005d2"), Attrs([Attr("address","0x874"), +Attr("insn","mov x16, x1")]), Var("R16",Imm(64)), Var("R1",Imm(64)))]), +Jmps([Call(Tid(1_495, "%000005d7"), Attrs([Attr("address","0x878"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_287, "@frame_dummy"), Attrs([Attr("c.proto","signed (*)(void)"), +Attr("address","0x910")]), "frame_dummy", Args([Arg(Tid(2_354, "%00000932"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("frame_dummy_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(933, "@frame_dummy"), + Attrs([Attr("address","0x910")]), Phis([]), Defs([]), +Jmps([Call(Tid(935, "%000003a7"), Attrs([Attr("address","0x910"), +Attr("insn","b #-0x90")]), Int(1,1), +(Direct(Tid(2_294, "@register_tm_clones")),))]))])), Sub(Tid(2_288, "@free"), + Attrs([Attr("c.proto","void (*)(void* ptr)"), Attr("address","0x7D0"), +Attr("stub","()")]), "free", Args([Arg(Tid(2_355, "%00000933"), + Attrs([Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void*")]), Var("free_ptr",Imm(64)), Var("R0",Imm(64)), +Both())]), Blks([Blk(Tid(1_308, "@free"), Attrs([Attr("address","0x7D0")]), + Phis([]), Defs([Def(Tid(1_985, "%000007c1"), Attrs([Attr("address","0x7D0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_993, "%000007c9"), Attrs([Attr("address","0x7D4"), +Attr("insn","ldr x17, [x16, #0x48]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(72,64)),LittleEndian(),64)), +Def(Tid(2_000, "%000007d0"), Attrs([Attr("address","0x7D8"), +Attr("insn","add x16, x16, #0x48")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(72,64)))]), Jmps([Call(Tid(2_005, "%000007d5"), + Attrs([Attr("address","0x7DC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_289, "@main"), + Attrs([Attr("c.proto","signed (*)(signed argc, const char** argv)"), +Attr("address","0x914")]), "main", Args([Arg(Tid(2_356, "%00000934"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("main_argc",Imm(32)), +LOW(32,Var("R0",Imm(64))), In()), Arg(Tid(2_357, "%00000935"), + Attrs([Attr("c.layout","**[char : 8]"), Attr("c.data","Top:u8 ptr ptr"), +Attr("c.type"," const char**")]), Var("main_argv",Imm(64)), +Var("R1",Imm(64)), Both()), Arg(Tid(2_358, "%00000936"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("main_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), Blks([Blk(Tid(937, "@main"), + Attrs([Attr("address","0x914")]), Phis([]), Defs([Def(Tid(944, "%000003b0"), + Attrs([Attr("address","0x914"), +Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("#42",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(18446744073709551568,64))), +Def(Tid(949, "%000003b5"), Attrs([Attr("address","0x914"), +Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("#42",Imm(64)),Var("R29",Imm(64)),LittleEndian(),64)), +Def(Tid(954, "%000003ba"), Attrs([Attr("address","0x914"), +Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("#42",Imm(64)),Int(8,64)),Var("R30",Imm(64)),LittleEndian(),64)), +Def(Tid(958, "%000003be"), Attrs([Attr("address","0x914"), +Attr("insn","stp x29, x30, [sp, #-0x30]!")]), Var("R31",Imm(64)), +Var("#42",Imm(64))), Def(Tid(965, "%000003c5"), + Attrs([Attr("address","0x918"), Attr("insn","mov x29, sp")]), + Var("R29",Imm(64)), Var("R31",Imm(64))), Def(Tid(973, "%000003cd"), + Attrs([Attr("address","0x91C"), Attr("insn","str x19, [sp, #0x10]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),Var("R19",Imm(64)),LittleEndian(),64)), +Def(Tid(981, "%000003d5"), Attrs([Attr("address","0x920"), +Attr("insn","str xzr, [sp, #0x28]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(40,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(989, "%000003dd"), Attrs([Attr("address","0x924"), +Attr("insn","str xzr, [sp, #0x20]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(32,64)),Int(0,64),LittleEndian(),64)), +Def(Tid(995, "%000003e3"), Attrs([Attr("address","0x928"), +Attr("insn","mov x0, #0xb")]), Var("R0",Imm(64)), Int(11,64)), +Def(Tid(1_000, "%000003e8"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x1ac")]), Var("R30",Imm(64)), Int(2352,64))]), +Jmps([Call(Tid(1_003, "%000003eb"), Attrs([Attr("address","0x92C"), +Attr("insn","bl #-0x1ac")]), Int(1,1), +(Direct(Tid(2_290, "@malloc")),Direct(Tid(1_005, "%000003ed"))))])), +Blk(Tid(1_005, "%000003ed"), Attrs([Attr("address","0x930")]), Phis([]), +Defs([Def(Tid(1_011, "%000003f3"), Attrs([Attr("address","0x930"), +Attr("insn","mov x1, x0")]), Var("R1",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_017, "%000003f9"), Attrs([Attr("address","0x934"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_025, "%00000401"), Attrs([Attr("address","0x938"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_033, "%00000409"), Attrs([Attr("address","0x93C"), +Attr("insn","str x1, [x0]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("R0",Imm(64)),Var("R1",Imm(64)),LittleEndian(),64)), +Def(Tid(1_039, "%0000040f"), Attrs([Attr("address","0x940"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_047, "%00000417"), Attrs([Attr("address","0x944"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_055, "%0000041f"), Attrs([Attr("address","0x948"), +Attr("insn","ldr x19, [x0]")]), Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_061, "%00000425"), Attrs([Attr("address","0x94C"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_069, "%0000042d"), Attrs([Attr("address","0x950"), +Attr("insn","ldr x0, [x0, #0xfd0]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), +Def(Tid(1_074, "%00000432"), Attrs([Attr("address","0x954"), +Attr("insn","bl #-0x204")]), Var("R30",Imm(64)), Int(2392,64))]), +Jmps([Call(Tid(1_077, "%00000435"), Attrs([Attr("address","0x954"), +Attr("insn","bl #-0x204")]), Int(1,1), +(Direct(Tid(2_297, "@strlen")),Direct(Tid(1_079, "%00000437"))))])), +Blk(Tid(1_079, "%00000437"), Attrs([Attr("address","0x958")]), Phis([]), +Defs([Def(Tid(1_085, "%0000043d"), Attrs([Attr("address","0x958"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_091, "%00000443"), Attrs([Attr("address","0x95C"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_099, "%0000044b"), Attrs([Attr("address","0x960"), +Attr("insn","ldr x1, [x0, #0xfd0]")]), Var("R1",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4048,64)),LittleEndian(),64)), +Def(Tid(1_107, "%00000453"), Attrs([Attr("address","0x964"), +Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), +Def(Tid(1_112, "%00000458"), Attrs([Attr("address","0x968"), +Attr("insn","bl #-0x228")]), Var("R30",Imm(64)), Int(2412,64))]), +Jmps([Call(Tid(1_115, "%0000045b"), Attrs([Attr("address","0x968"), +Attr("insn","bl #-0x228")]), Int(1,1), +(Direct(Tid(2_291, "@memcpy")),Direct(Tid(1_117, "%0000045d"))))])), +Blk(Tid(1_117, "%0000045d"), Attrs([Attr("address","0x96C")]), Phis([]), +Defs([Def(Tid(1_121, "%00000461"), Attrs([Attr("address","0x96C"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_129, "%00000469"), Attrs([Attr("address","0x970"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_137, "%00000471"), Attrs([Attr("address","0x974"), +Attr("insn","ldr x0, [x0]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_142, "%00000476"), Attrs([Attr("address","0x978"), +Attr("insn","bl #-0x1b8")]), Var("R30",Imm(64)), Int(2428,64))]), +Jmps([Call(Tid(1_145, "%00000479"), Attrs([Attr("address","0x978"), +Attr("insn","bl #-0x1b8")]), Int(1,1), +(Direct(Tid(2_293, "@puts")),Direct(Tid(1_147, "%0000047b"))))])), +Blk(Tid(1_147, "%0000047b"), Attrs([Attr("address","0x97C")]), Phis([]), +Defs([Def(Tid(1_151, "%0000047f"), Attrs([Attr("address","0x97C"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_159, "%00000487"), Attrs([Attr("address","0x980"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_167, "%0000048f"), Attrs([Attr("address","0x984"), +Attr("insn","ldr x0, [x0]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_174, "%00000496"), Attrs([Attr("address","0x988"), +Attr("insn","add x0, x0, #0x4")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(4,64))), Def(Tid(1_182, "%0000049e"), + Attrs([Attr("address","0x98C"), Attr("insn","str x0, [sp, #0x28]")]), + Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(40,64)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_190, "%000004a6"), Attrs([Attr("address","0x990"), +Attr("insn","ldr x0, [sp, #0x28]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(40,64)),LittleEndian(),64)), +Def(Tid(1_198, "%000004ae"), Attrs([Attr("address","0x994"), +Attr("insn","strb wzr, [x0]")]), Var("mem",Mem(64,8)), +Store(Var("mem",Mem(64,8)),Var("R0",Imm(64)),Int(0,8),BigEndian(),8)), +Def(Tid(1_204, "%000004b4"), Attrs([Attr("address","0x998"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_212, "%000004bc"), Attrs([Attr("address","0x99C"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_220, "%000004c4"), Attrs([Attr("address","0x9A0"), +Attr("insn","ldr x19, [x0]")]), Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_226, "%000004ca"), Attrs([Attr("address","0x9A4"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_234, "%000004d2"), Attrs([Attr("address","0x9A8"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_242, "%000004da"), Attrs([Attr("address","0x9AC"), +Attr("insn","ldr x0, [x0]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_247, "%000004df"), Attrs([Attr("address","0x9B0"), +Attr("insn","bl #-0x260")]), Var("R30",Imm(64)), Int(2484,64))]), +Jmps([Call(Tid(1_249, "%000004e1"), Attrs([Attr("address","0x9B0"), +Attr("insn","bl #-0x260")]), Int(1,1), +(Direct(Tid(2_297, "@strlen")),Direct(Tid(1_251, "%000004e3"))))])), +Blk(Tid(1_251, "%000004e3"), Attrs([Attr("address","0x9B4")]), Phis([]), +Defs([Def(Tid(1_257, "%000004e9"), Attrs([Attr("address","0x9B4"), +Attr("insn","mov x2, x0")]), Var("R2",Imm(64)), Var("R0",Imm(64))), +Def(Tid(1_264, "%000004f0"), Attrs([Attr("address","0x9B8"), +Attr("insn","mov w1, #0x1")]), Var("R1",Imm(64)), Int(1,64)), +Def(Tid(1_272, "%000004f8"), Attrs([Attr("address","0x9BC"), +Attr("insn","mov x0, x19")]), Var("R0",Imm(64)), Var("R19",Imm(64))), +Def(Tid(1_277, "%000004fd"), Attrs([Attr("address","0x9C0"), +Attr("insn","bl #-0x230")]), Var("R30",Imm(64)), Int(2500,64))]), +Jmps([Call(Tid(1_280, "%00000500"), Attrs([Attr("address","0x9C0"), +Attr("insn","bl #-0x230")]), Int(1,1), +(Direct(Tid(2_292, "@memset")),Direct(Tid(1_282, "%00000502"))))])), +Blk(Tid(1_282, "%00000502"), Attrs([Attr("address","0x9C4")]), Phis([]), +Defs([Def(Tid(1_286, "%00000506"), Attrs([Attr("address","0x9C4"), +Attr("insn","adrp x0, #0x1f000")]), Var("R0",Imm(64)), Int(126976,64)), +Def(Tid(1_294, "%0000050e"), Attrs([Attr("address","0x9C8"), +Attr("insn","ldr x0, [x0, #0xfc8]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R0",Imm(64)),Int(4040,64)),LittleEndian(),64)), +Def(Tid(1_302, "%00000516"), Attrs([Attr("address","0x9CC"), +Attr("insn","ldr x0, [x0]")]), Var("R0",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R0",Imm(64)),LittleEndian(),64)), +Def(Tid(1_307, "%0000051b"), Attrs([Attr("address","0x9D0"), +Attr("insn","bl #-0x200")]), Var("R30",Imm(64)), Int(2516,64))]), +Jmps([Call(Tid(1_310, "%0000051e"), Attrs([Attr("address","0x9D0"), +Attr("insn","bl #-0x200")]), Int(1,1), +(Direct(Tid(2_288, "@free")),Direct(Tid(1_312, "%00000520"))))])), +Blk(Tid(1_312, "%00000520"), Attrs([Attr("address","0x9D4")]), Phis([]), +Defs([Def(Tid(1_317, "%00000525"), Attrs([Attr("address","0x9D4"), +Attr("insn","mov w0, #0x0")]), Var("R0",Imm(64)), Int(0,64)), +Def(Tid(1_325, "%0000052d"), Attrs([Attr("address","0x9D8"), +Attr("insn","ldr x19, [sp, #0x10]")]), Var("R19",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(16,64)),LittleEndian(),64)), +Def(Tid(1_335, "%00000537"), Attrs([Attr("address","0x9DC"), +Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R29",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R31",Imm(64)),LittleEndian(),64)), +Def(Tid(1_339, "%0000053b"), Attrs([Attr("address","0x9DC"), +Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R30",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R31",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_342, "%0000053e"), Attrs([Attr("address","0x9DC"), +Attr("insn","ldp x29, x30, [sp], #0x30")]), Var("R31",Imm(64)), +PLUS(Var("R31",Imm(64)),Int(48,64)))]), Jmps([Call(Tid(1_347, "%00000543"), + Attrs([Attr("address","0x9E0"), Attr("insn","ret")]), Int(1,1), +(Indirect(Var("R30",Imm(64))),))]))])), Sub(Tid(2_290, "@malloc"), + Attrs([Attr("c.proto","void* (*)(unsigned long size)"), +Attr("address","0x780"), Attr("malloc","()"), Attr("stub","()")]), "malloc", + Args([Arg(Tid(2_359, "%00000937"), Attrs([Attr("alloc-size","()"), +Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("malloc_size",Imm(64)), +Var("R0",Imm(64)), In()), Arg(Tid(2_360, "%00000938"), + Attrs([Attr("warn-unused","()"), Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("malloc_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_001, "@malloc"), Attrs([Attr("address","0x780")]), Phis([]), +Defs([Def(Tid(1_860, "%00000744"), Attrs([Attr("address","0x780"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_868, "%0000074c"), Attrs([Attr("address","0x784"), +Attr("insn","ldr x17, [x16, #0x20]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(32,64)),LittleEndian(),64)), +Def(Tid(1_875, "%00000753"), Attrs([Attr("address","0x788"), +Attr("insn","add x16, x16, #0x20")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(32,64)))]), Jmps([Call(Tid(1_880, "%00000758"), + Attrs([Attr("address","0x78C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_291, "@memcpy"), + Attrs([Attr("c.proto","void* (*)(void restrict * dst, void restrict * src, unsigned long n)"), +Attr("address","0x740"), Attr("stub","()")]), "memcpy", + Args([Arg(Tid(2_361, "%00000939"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void restrict *")]), Var("memcpy_dst",Imm(64)), +Var("R0",Imm(64)), Both()), Arg(Tid(2_362, "%0000093a"), + Attrs([Attr("nonnull","()"), Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void restrict *")]), + Var("memcpy_src",Imm(64)), Var("R1",Imm(64)), Both()), +Arg(Tid(2_363, "%0000093b"), Attrs([Attr("c.layout","[unsigned long : 64]"), +Attr("c.data","Top:u64"), Attr("c.type","unsigned long")]), + Var("memcpy_n",Imm(64)), Var("R2",Imm(64)), In()), +Arg(Tid(2_364, "%0000093c"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("memcpy_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_113, "@memcpy"), Attrs([Attr("address","0x740")]), Phis([]), +Defs([Def(Tid(1_760, "%000006e0"), Attrs([Attr("address","0x740"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_768, "%000006e8"), Attrs([Attr("address","0x744"), +Attr("insn","ldr x17, [x16]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),Var("R16",Imm(64)),LittleEndian(),64)), +Def(Tid(1_775, "%000006ef"), Attrs([Attr("address","0x748"), +Attr("insn","add x16, x16, #0x0")]), Var("R16",Imm(64)), +Var("R16",Imm(64)))]), Jmps([Call(Tid(1_780, "%000006f4"), + Attrs([Attr("address","0x74C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_292, "@memset"), + Attrs([Attr("c.proto","void* (*)(void* buf, signed c, unsigned long n)"), +Attr("address","0x790"), Attr("stub","()")]), "memset", + Args([Arg(Tid(2_365, "%0000093d"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[ : 8]"), Attr("c.data","{} ptr"), +Attr("c.type","void*")]), Var("memset_buf",Imm(64)), Var("R0",Imm(64)), +Both()), Arg(Tid(2_366, "%0000093e"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("memset_c",Imm(32)), +LOW(32,Var("R1",Imm(64))), In()), Arg(Tid(2_367, "%0000093f"), + Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("memset_n",Imm(64)), Var("R2",Imm(64)), +In()), Arg(Tid(2_368, "%00000940"), Attrs([Attr("c.layout","*[ : 8]"), +Attr("c.data","{} ptr"), Attr("c.type","void*")]), + Var("memset_result",Imm(64)), Var("R0",Imm(64)), Out())]), +Blks([Blk(Tid(1_278, "@memset"), Attrs([Attr("address","0x790")]), Phis([]), +Defs([Def(Tid(1_885, "%0000075d"), Attrs([Attr("address","0x790"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_893, "%00000765"), Attrs([Attr("address","0x794"), +Attr("insn","ldr x17, [x16, #0x28]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(40,64)),LittleEndian(),64)), +Def(Tid(1_900, "%0000076c"), Attrs([Attr("address","0x798"), +Attr("insn","add x16, x16, #0x28")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(40,64)))]), Jmps([Call(Tid(1_905, "%00000771"), + Attrs([Attr("address","0x79C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), Sub(Tid(2_293, "@puts"), + Attrs([Attr("c.proto","signed (*)( const char* s)"), +Attr("address","0x7C0"), Attr("stub","()")]), "puts", + Args([Arg(Tid(2_369, "%00000941"), Attrs([Attr("c.layout","*[char : 8]"), +Attr("c.data","Top:u8 ptr"), Attr("c.type"," const char*")]), + Var("puts_s",Imm(64)), Var("R0",Imm(64)), In()), +Arg(Tid(2_370, "%00000942"), Attrs([Attr("c.layout","[signed : 32]"), +Attr("c.data","Top:u32"), Attr("c.type","signed")]), + Var("puts_result",Imm(32)), LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(1_143, "@puts"), Attrs([Attr("address","0x7C0")]), Phis([]), +Defs([Def(Tid(1_960, "%000007a8"), Attrs([Attr("address","0x7C0"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_968, "%000007b0"), Attrs([Attr("address","0x7C4"), +Attr("insn","ldr x17, [x16, #0x40]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(64,64)),LittleEndian(),64)), +Def(Tid(1_975, "%000007b7"), Attrs([Attr("address","0x7C8"), +Attr("insn","add x16, x16, #0x40")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(64,64)))]), Jmps([Call(Tid(1_980, "%000007bc"), + Attrs([Attr("address","0x7CC"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))])), +Sub(Tid(2_294, "@register_tm_clones"), + Attrs([Attr("c.proto","signed (*)(void)"), Attr("address","0x880")]), + "register_tm_clones", Args([Arg(Tid(2_371, "%00000943"), + Attrs([Attr("c.layout","[signed : 32]"), Attr("c.data","Top:u32"), +Attr("c.type","signed")]), Var("register_tm_clones_result",Imm(32)), +LOW(32,Var("R0",Imm(64))), Out())]), +Blks([Blk(Tid(759, "@register_tm_clones"), Attrs([Attr("address","0x880")]), + Phis([]), Defs([Def(Tid(763, "%000002fb"), Attrs([Attr("address","0x880"), +Attr("insn","adrp x0, #0x20000")]), Var("R0",Imm(64)), Int(131072,64)), +Def(Tid(770, "%00000302"), Attrs([Attr("address","0x884"), +Attr("insn","add x0, x0, #0x78")]), Var("R0",Imm(64)), +PLUS(Var("R0",Imm(64)),Int(120,64))), Def(Tid(776, "%00000308"), + Attrs([Attr("address","0x888"), Attr("insn","adrp x1, #0x20000")]), + Var("R1",Imm(64)), Int(131072,64)), Def(Tid(783, "%0000030f"), + Attrs([Attr("address","0x88C"), Attr("insn","add x1, x1, #0x78")]), + Var("R1",Imm(64)), PLUS(Var("R1",Imm(64)),Int(120,64))), +Def(Tid(791, "%00000317"), Attrs([Attr("address","0x890"), +Attr("insn","sub x1, x1, x0")]), Var("R1",Imm(64)), +MINUS(Var("R1",Imm(64)),Var("R0",Imm(64)))), Def(Tid(798, "%0000031e"), + Attrs([Attr("address","0x894"), Attr("insn","lsr x2, x1, #63")]), + Var("R2",Imm(64)), RSHIFT(Var("R1",Imm(64)),Int(63,64))), +Def(Tid(806, "%00000326"), Attrs([Attr("address","0x898"), +Attr("insn","add x1, x2, x1, asr #3")]), Var("R1",Imm(64)), +PLUS(Var("R2",Imm(64)),ARSHIFT(Var("R1",Imm(64)),Int(3,64)))), +Def(Tid(813, "%0000032d"), Attrs([Attr("address","0x89C"), +Attr("insn","asr x1, x1, #1")]), Var("R1",Imm(64)), +RSHIFT(Var("R1",Imm(64)),Int(1,64))), Def(Tid(825, "%00000339"), + Attrs([Attr("address","0x8A0"), Attr("insn","cbz x1, #0x18")]), + Var("#30",Imm(1)), EQ(Var("R1",Imm(64)),Int(0,64)))]), +Jmps([Goto(Tid(819, "%00000333"), Attrs([Attr("address","0x8A0"), +Attr("insn","cbz x1, #0x18")]), Var("#30",Imm(1)), +Direct(Tid(817, "%00000331"))), Goto(Tid(2_339, "%00000923"), Attrs([]), + Int(1,1), Direct(Tid(1_419, "%0000058b")))])), Blk(Tid(1_419, "%0000058b"), + Attrs([Attr("address","0x8A4")]), Phis([]), +Defs([Def(Tid(1_423, "%0000058f"), Attrs([Attr("address","0x8A4"), +Attr("insn","adrp x2, #0x1f000")]), Var("R2",Imm(64)), Int(126976,64)), +Def(Tid(1_431, "%00000597"), Attrs([Attr("address","0x8A8"), +Attr("insn","ldr x2, [x2, #0xfe0]")]), Var("R2",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R2",Imm(64)),Int(4064,64)),LittleEndian(),64)), +Def(Tid(1_442, "%000005a2"), Attrs([Attr("address","0x8AC"), +Attr("insn","cbz x2, #0xc")]), Var("#81",Imm(1)), +EQ(Var("R2",Imm(64)),Int(0,64)))]), Jmps([Goto(Tid(1_436, "%0000059c"), + Attrs([Attr("address","0x8AC"), Attr("insn","cbz x2, #0xc")]), + Var("#81",Imm(1)), Direct(Tid(817, "%00000331"))), +Goto(Tid(2_340, "%00000924"), Attrs([]), Int(1,1), +Direct(Tid(1_445, "%000005a5")))])), Blk(Tid(817, "%00000331"), + Attrs([Attr("address","0x8B8")]), Phis([]), Defs([]), +Jmps([Call(Tid(830, "%0000033e"), Attrs([Attr("address","0x8B8"), +Attr("insn","ret")]), Int(1,1), (Indirect(Var("R30",Imm(64))),))])), +Blk(Tid(1_445, "%000005a5"), Attrs([Attr("address","0x8B0")]), Phis([]), +Defs([Def(Tid(1_451, "%000005ab"), Attrs([Attr("address","0x8B0"), +Attr("insn","mov x16, x2")]), Var("R16",Imm(64)), Var("R2",Imm(64)))]), +Jmps([Call(Tid(1_456, "%000005b0"), Attrs([Attr("address","0x8B4"), +Attr("insn","br x16")]), Int(1,1), (Indirect(Var("R16",Imm(64))),))]))])), +Sub(Tid(2_297, "@strlen"), + Attrs([Attr("c.proto","unsigned long (*)( const char* s)"), +Attr("pure","()"), Attr("address","0x750"), Attr("stub","()")]), "strlen", + Args([Arg(Tid(2_372, "%00000944"), Attrs([Attr("nonnull","()"), +Attr("c.layout","*[char : 8]"), Attr("c.data","Top:u8 ptr"), +Attr("c.type"," const char*")]), Var("strlen_s",Imm(64)), Var("R0",Imm(64)), +In()), Arg(Tid(2_373, "%00000945"), + Attrs([Attr("c.layout","[unsigned long : 64]"), Attr("c.data","Top:u64"), +Attr("c.type","unsigned long")]), Var("strlen_result",Imm(64)), +Var("R0",Imm(64)), Out())]), Blks([Blk(Tid(1_075, "@strlen"), + Attrs([Attr("address","0x750")]), Phis([]), +Defs([Def(Tid(1_785, "%000006f9"), Attrs([Attr("address","0x750"), +Attr("insn","adrp x16, #0x20000")]), Var("R16",Imm(64)), Int(131072,64)), +Def(Tid(1_793, "%00000701"), Attrs([Attr("address","0x754"), +Attr("insn","ldr x17, [x16, #0x8]")]), Var("R17",Imm(64)), +Load(Var("mem",Mem(64,8)),PLUS(Var("R16",Imm(64)),Int(8,64)),LittleEndian(),64)), +Def(Tid(1_800, "%00000708"), Attrs([Attr("address","0x758"), +Attr("insn","add x16, x16, #0x8")]), Var("R16",Imm(64)), +PLUS(Var("R16",Imm(64)),Int(8,64)))]), Jmps([Call(Tid(1_805, "%0000070d"), + Attrs([Attr("address","0x75C"), Attr("insn","br x17")]), Int(1,1), +(Indirect(Var("R17",Imm(64))),))]))]))]))) \ No newline at end of file diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.bir b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.bir new file mode 100644 index 000000000..5686fd428 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.bir @@ -0,0 +1,371 @@ +00000925: program +000008de: sub __cxa_finalize(__cxa_finalize_result) +00000926: __cxa_finalize_result :: out u32 = low:32[R0] + +00000587: +0000072b: R16 := 0x20000 +00000733: R17 := mem[R16 + 0x18, el]:u64 +0000073a: R16 := R16 + 0x18 +0000073f: call R17 with noreturn + +000008df: sub __do_global_dtors_aux(__do_global_dtors_aux_result) +00000927: __do_global_dtors_aux_result :: out u32 = low:32[R0] + +00000342: +00000349: #34 := R31 - 0x20 +0000034e: mem := mem with [#34, el]:u64 <- R29 +00000353: mem := mem with [#34 + 8, el]:u64 <- R30 +00000357: R31 := #34 +0000035e: R29 := R31 +00000366: mem := mem with [R31 + 0x10, el]:u64 <- R19 +0000036c: R19 := 0x20000 +00000375: R0 := pad:32[mem[R19 + 0x78]] +00000381: #36 := ~~0:0[R0] +0000037b: when #36 goto %00000379 +0000091b: goto %00000545 + +00000545: +00000549: R0 := 0x1F000 +00000551: R0 := mem[R0 + 0xFB8, el]:u64 +0000055d: #78 := R0 = 0 +00000557: when #78 goto %00000555 +0000091c: goto %00000575 + +00000575: +00000579: R0 := 0x20000 +00000581: R0 := mem[R0 + 0x58, el]:u64 +00000586: R30 := 0x8F0 +00000589: call @__cxa_finalize with return %00000555 + +00000555: +00000562: R30 := 0x8F4 +00000564: call @deregister_tm_clones with return %00000566 + +00000566: +0000056b: R0 := 1 +00000573: mem := mem with [R19 + 0x78] <- low:8[31:0[R0]] +0000091d: goto %00000379 + +00000379: +00000389: R19 := mem[R31 + 0x10, el]:u64 +00000393: R29 := mem[R31, el]:u64 +00000397: R30 := mem[R31 + 8, el]:u64 +0000039a: R31 := R31 + 0x20 +0000039f: call R30 with noreturn + +000008e3: sub __libc_start_main(__libc_start_main_main, __libc_start_main_arg2, __libc_start_main_arg3, __libc_start_main_auxv, __libc_start_main_result) +00000928: __libc_start_main_main :: in u64 = R0 +00000929: __libc_start_main_arg2 :: in u32 = low:32[R1] +0000092a: __libc_start_main_arg3 :: in out u64 = R2 +0000092b: __libc_start_main_auxv :: in out u64 = R3 +0000092c: __libc_start_main_result :: out u32 = low:32[R0] + +00000286: +00000712: R16 := 0x20000 +0000071a: R17 := mem[R16 + 0x10, el]:u64 +00000721: R16 := R16 + 0x10 +00000726: call R17 with noreturn + +000008e4: sub _fini(_fini_result) +0000092d: _fini_result :: out u32 = low:32[R0] + +00000020: +00000029: #3 := R31 - 0x10 +0000002e: mem := mem with [#3, el]:u64 <- R29 +00000033: mem := mem with [#3 + 8, el]:u64 <- R30 +00000037: R31 := #3 +0000003e: R29 := R31 +00000048: R29 := mem[R31, el]:u64 +0000004c: R30 := mem[R31 + 8, el]:u64 +0000004f: R31 := R31 + 0x10 +00000054: call R30 with noreturn + +000008e5: sub _init(_init_result) +0000092e: _init_result :: out u32 = low:32[R0] + +000007f1: +000007fa: #109 := R31 - 0x10 +000007ff: mem := mem with [#109, el]:u64 <- R29 +00000804: mem := mem with [#109 + 8, el]:u64 <- R30 +00000808: R31 := #109 +0000080f: R29 := R31 +00000814: R30 := 0x718 +00000816: call @call_weak_fn with return %00000818 + +00000818: +00000820: R29 := mem[R31, el]:u64 +00000824: R30 := mem[R31 + 8, el]:u64 +00000827: R31 := R31 + 0x10 +0000082c: call R30 with noreturn + +000008e6: sub _start(_start_result) +0000092f: _start_result :: out u32 = low:32[R0] + +0000023c: +00000242: R29 := 0 +00000248: R30 := 0 +00000250: R5 := R0 +00000258: R1 := mem[R31, el]:u64 +0000025f: R2 := R31 + 8 +00000266: R6 := R31 +0000026c: R0 := 0x1F000 +00000274: R0 := mem[R0 + 0xFD8, el]:u64 +0000027a: R3 := 0 +00000280: R4 := 0 +00000285: R30 := 0x830 +00000288: call @__libc_start_main with return %0000028a + +0000028a: +0000028d: R30 := 0x834 +00000290: call @abort with return %0000091e + +0000091e: +0000091f: call @call_weak_fn with noreturn + +000008e9: sub abort() + + +0000028e: +0000078f: R16 := 0x20000 +00000797: R17 := mem[R16 + 0x38, el]:u64 +0000079e: R16 := R16 + 0x38 +000007a3: call R17 with noreturn + +000008ea: sub call_weak_fn(call_weak_fn_result) +00000930: call_weak_fn_result :: out u32 = low:32[R0] + +00000292: +00000296: R0 := 0x1F000 +0000029e: R0 := mem[R0 + 0xFC0, el]:u64 +000002aa: #12 := R0 = 0 +000002a4: when #12 goto %000002a2 +00000920: goto %000005d9 + +000002a2: +000002af: call R30 with noreturn + +000005d9: +000005dc: goto @__gmon_start__ + +000005da: +00000776: R16 := 0x20000 +0000077e: R17 := mem[R16 + 0x30, el]:u64 +00000785: R16 := R16 + 0x30 +0000078a: call R17 with noreturn + +000008ec: sub deregister_tm_clones(deregister_tm_clones_result) +00000931: deregister_tm_clones_result :: out u32 = low:32[R0] + +000002b5: +000002b9: R0 := 0x20000 +000002c0: R0 := R0 + 0x78 +000002c6: R1 := 0x20000 +000002cd: R1 := R1 + 0x78 +000002d5: #16 := 1 + ~R0 + R1 +000002d9: NF := 63:63[#16] +000002dc: VF := 63:63[R1] & 63:63[~R0] & ~63:63[#16] | ~63:63[R1] & + ~63:63[~R0] & 63:63[#16] +000002df: ZF := #16 = 0 +000002e2: CF := 63:63[R1] & 63:63[~R0] | 63:63[~R0] & ~63:63[#16] | 63:63[R1] + & ~63:63[#16] +000002f0: #21 := ZF +000002ea: when #21 goto %000002e8 +00000921: goto %000005b2 + +000005b2: +000005b6: R1 := 0x1F000 +000005be: R1 := mem[R1 + 0xFB0, el]:u64 +000005c9: #86 := R1 = 0 +000005c3: when #86 goto %000002e8 +00000922: goto %000005cc + +000002e8: +000002f5: call R30 with noreturn + +000005cc: +000005d2: R16 := R1 +000005d7: call R16 with noreturn + +000008ef: sub frame_dummy(frame_dummy_result) +00000932: frame_dummy_result :: out u32 = low:32[R0] + +000003a5: +000003a7: call @register_tm_clones with noreturn + +000008f0: sub free(free_ptr) +00000933: free_ptr :: in out u64 = R0 + +0000051c: +000007c1: R16 := 0x20000 +000007c9: R17 := mem[R16 + 0x48, el]:u64 +000007d0: R16 := R16 + 0x48 +000007d5: call R17 with noreturn + +000008f1: sub main(main_argc, main_argv, main_result) +00000934: main_argc :: in u32 = low:32[R0] +00000935: main_argv :: in out u64 = R1 +00000936: main_result :: out u32 = low:32[R0] + +000003a9: +000003b0: #42 := R31 - 0x30 +000003b5: mem := mem with [#42, el]:u64 <- R29 +000003ba: mem := mem with [#42 + 8, el]:u64 <- R30 +000003be: R31 := #42 +000003c5: R29 := R31 +000003cd: mem := mem with [R31 + 0x10, el]:u64 <- R19 +000003d5: mem := mem with [R31 + 0x28, el]:u64 <- 0 +000003dd: mem := mem with [R31 + 0x20, el]:u64 <- 0 +000003e3: R0 := 0xB +000003e8: R30 := 0x930 +000003eb: call @malloc with return %000003ed + +000003ed: +000003f3: R1 := R0 +000003f9: R0 := 0x1F000 +00000401: R0 := mem[R0 + 0xFC8, el]:u64 +00000409: mem := mem with [R0, el]:u64 <- R1 +0000040f: R0 := 0x1F000 +00000417: R0 := mem[R0 + 0xFC8, el]:u64 +0000041f: R19 := mem[R0, el]:u64 +00000425: R0 := 0x1F000 +0000042d: R0 := mem[R0 + 0xFD0, el]:u64 +00000432: R30 := 0x958 +00000435: call @strlen with return %00000437 + +00000437: +0000043d: R2 := R0 +00000443: R0 := 0x1F000 +0000044b: R1 := mem[R0 + 0xFD0, el]:u64 +00000453: R0 := R19 +00000458: R30 := 0x96C +0000045b: call @memcpy with return %0000045d + +0000045d: +00000461: R0 := 0x1F000 +00000469: R0 := mem[R0 + 0xFC8, el]:u64 +00000471: R0 := mem[R0, el]:u64 +00000476: R30 := 0x97C +00000479: call @puts with return %0000047b + +0000047b: +0000047f: R0 := 0x1F000 +00000487: R0 := mem[R0 + 0xFC8, el]:u64 +0000048f: R0 := mem[R0, el]:u64 +00000496: R0 := R0 + 4 +0000049e: mem := mem with [R31 + 0x28, el]:u64 <- R0 +000004a6: R0 := mem[R31 + 0x28, el]:u64 +000004ae: mem := mem with [R0] <- 0 +000004b4: R0 := 0x1F000 +000004bc: R0 := mem[R0 + 0xFC8, el]:u64 +000004c4: R19 := mem[R0, el]:u64 +000004ca: R0 := 0x1F000 +000004d2: R0 := mem[R0 + 0xFC8, el]:u64 +000004da: R0 := mem[R0, el]:u64 +000004df: R30 := 0x9B4 +000004e1: call @strlen with return %000004e3 + +000004e3: +000004e9: R2 := R0 +000004f0: R1 := 1 +000004f8: R0 := R19 +000004fd: R30 := 0x9C4 +00000500: call @memset with return %00000502 + +00000502: +00000506: R0 := 0x1F000 +0000050e: R0 := mem[R0 + 0xFC8, el]:u64 +00000516: R0 := mem[R0, el]:u64 +0000051b: R30 := 0x9D4 +0000051e: call @free with return %00000520 + +00000520: +00000525: R0 := 0 +0000052d: R19 := mem[R31 + 0x10, el]:u64 +00000537: R29 := mem[R31, el]:u64 +0000053b: R30 := mem[R31 + 8, el]:u64 +0000053e: R31 := R31 + 0x30 +00000543: call R30 with noreturn + +000008f2: sub malloc(malloc_size, malloc_result) +00000937: malloc_size :: in u64 = R0 +00000938: malloc_result :: out u64 = R0 + +000003e9: +00000744: R16 := 0x20000 +0000074c: R17 := mem[R16 + 0x20, el]:u64 +00000753: R16 := R16 + 0x20 +00000758: call R17 with noreturn + +000008f3: sub memcpy(memcpy_dst, memcpy_src, memcpy_n, memcpy_result) +00000939: memcpy_dst :: in out u64 = R0 +0000093a: memcpy_src :: in out u64 = R1 +0000093b: memcpy_n :: in u64 = R2 +0000093c: memcpy_result :: out u64 = R0 + +00000459: +000006e0: R16 := 0x20000 +000006e8: R17 := mem[R16, el]:u64 +000006ef: R16 := R16 +000006f4: call R17 with noreturn + +000008f4: sub memset(memset_buf, memset_c, memset_n, memset_result) +0000093d: memset_buf :: in out u64 = R0 +0000093e: memset_c :: in u32 = low:32[R1] +0000093f: memset_n :: in u64 = R2 +00000940: memset_result :: out u64 = R0 + +000004fe: +0000075d: R16 := 0x20000 +00000765: R17 := mem[R16 + 0x28, el]:u64 +0000076c: R16 := R16 + 0x28 +00000771: call R17 with noreturn + +000008f5: sub puts(puts_s, puts_result) +00000941: puts_s :: in u64 = R0 +00000942: puts_result :: out u32 = low:32[R0] + +00000477: +000007a8: R16 := 0x20000 +000007b0: R17 := mem[R16 + 0x40, el]:u64 +000007b7: R16 := R16 + 0x40 +000007bc: call R17 with noreturn + +000008f6: sub register_tm_clones(register_tm_clones_result) +00000943: register_tm_clones_result :: out u32 = low:32[R0] + +000002f7: +000002fb: R0 := 0x20000 +00000302: R0 := R0 + 0x78 +00000308: R1 := 0x20000 +0000030f: R1 := R1 + 0x78 +00000317: R1 := R1 - R0 +0000031e: R2 := R1 >> 0x3F +00000326: R1 := R2 + (R1 ~>> 3) +0000032d: R1 := R1 >> 1 +00000339: #30 := R1 = 0 +00000333: when #30 goto %00000331 +00000923: goto %0000058b + +0000058b: +0000058f: R2 := 0x1F000 +00000597: R2 := mem[R2 + 0xFE0, el]:u64 +000005a2: #81 := R2 = 0 +0000059c: when #81 goto %00000331 +00000924: goto %000005a5 + +00000331: +0000033e: call R30 with noreturn + +000005a5: +000005ab: R16 := R2 +000005b0: call R16 with noreturn + +000008f9: sub strlen(strlen_s, strlen_result) +00000944: strlen_s :: in u64 = R0 +00000945: strlen_result :: out u64 = R0 + +00000433: +000006f9: R16 := 0x20000 +00000701: R17 := mem[R16 + 8, el]:u64 +00000708: R16 := R16 + 8 +0000070d: call R17 with noreturn diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.expected b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.expected new file mode 100644 index 000000000..8c9210cc7 --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.expected @@ -0,0 +1,1087 @@ +var {:extern} Gamma_R0: bool; +var {:extern} Gamma_R1: bool; +var {:extern} Gamma_R16: bool; +var {:extern} Gamma_R17: bool; +var {:extern} Gamma_R19: bool; +var {:extern} Gamma_R2: bool; +var {:extern} Gamma_R29: bool; +var {:extern} Gamma_R30: bool; +var {:extern} Gamma_R31: bool; +var {:extern} Gamma_malloc_base: [bv64]bool; +var {:extern} Gamma_malloc_count: [bv64]bool; +var {:extern} Gamma_malloc_end: [bv64]bool; +var {:extern} Gamma_mem: [bv64]bool; +var {:extern} Gamma_stack: [bv64]bool; +var {:extern} R0: bv64; +var {:extern} R1: bv64; +var {:extern} R16: bv64; +var {:extern} R17: bv64; +var {:extern} R19: bv64; +var {:extern} R2: bv64; +var {:extern} R29: bv64; +var {:extern} R30: bv64; +var {:extern} R31: bv64; +var {:extern} malloc_base: [bv64]bv8; +var {:extern} malloc_count: [bv64]bv8; +var {:extern} malloc_end: [bv64]bv8; +var {:extern} mem: [bv64]bv8; +var {:extern} stack: [bv64]bv8; +const {:extern} $buf_addr: bv64; +axiom ($buf_addr == 131200bv64); +const {:extern} $password_addr: bv64; +axiom ($password_addr == 131168bv64); +const {:extern} $stext_addr: bv64; +axiom ($stext_addr == 131176bv64); +function {:extern} L(memory: [bv64]bv8, index: bv64) returns (bool) { + false +} + +function {:extern} {:bvbuiltin "bvadd"} bvadd64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvsub"} bvsub64(bv64, bv64) returns (bv64); +function {:extern} {:bvbuiltin "bvuge"} bvuge64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvugt"} bvugt64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvule"} bvule64(bv64, bv64) returns (bool); +function {:extern} {:bvbuiltin "bvult"} bvult64(bv64, bv64) returns (bool); +function {:extern} gamma_load32(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))) +} + +function {:extern} gamma_load64(gammaMap: [bv64]bool, index: bv64) returns (bool) { + (gammaMap[bvadd64(index, 7bv64)] && (gammaMap[bvadd64(index, 6bv64)] && (gammaMap[bvadd64(index, 5bv64)] && (gammaMap[bvadd64(index, 4bv64)] && (gammaMap[bvadd64(index, 3bv64)] && (gammaMap[bvadd64(index, 2bv64)] && (gammaMap[bvadd64(index, 1bv64)] && gammaMap[index]))))))) +} + +function {:extern} gamma_load8(gammaMap: [bv64]bool, index: bv64) returns (bool) { + gammaMap[index] +} + +function {:extern} gamma_store64(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value][bvadd64(index, 1bv64) := value][bvadd64(index, 2bv64) := value][bvadd64(index, 3bv64) := value][bvadd64(index, 4bv64) := value][bvadd64(index, 5bv64) := value][bvadd64(index, 6bv64) := value][bvadd64(index, 7bv64) := value] +} + +function {:extern} gamma_store8(gammaMap: [bv64]bool, index: bv64, value: bool) returns ([bv64]bool) { + gammaMap[index := value] +} + +function {:extern} memory_load64_le(memory: [bv64]bv8, index: bv64) returns (bv64) { + (memory[bvadd64(index, 7bv64)] ++ (memory[bvadd64(index, 6bv64)] ++ (memory[bvadd64(index, 5bv64)] ++ (memory[bvadd64(index, 4bv64)] ++ (memory[bvadd64(index, 3bv64)] ++ (memory[bvadd64(index, 2bv64)] ++ (memory[bvadd64(index, 1bv64)] ++ memory[index]))))))) +} + +function {:extern} memory_load8_le(memory: [bv64]bv8, index: bv64) returns (bv8) { + memory[index] +} + +function {:extern} memory_store64_le(memory: [bv64]bv8, index: bv64, value: bv64) returns ([bv64]bv8) { + memory[index := value[8:0]][bvadd64(index, 1bv64) := value[16:8]][bvadd64(index, 2bv64) := value[24:16]][bvadd64(index, 3bv64) := value[32:24]][bvadd64(index, 4bv64) := value[40:32]][bvadd64(index, 5bv64) := value[48:40]][bvadd64(index, 6bv64) := value[56:48]][bvadd64(index, 7bv64) := value[64:56]] +} + +function {:extern} memory_store8_be(memory: [bv64]bv8, index: bv64, value: bv8) returns ([bv64]bv8) { + memory[index := value[8:0]] +} + +procedure {:extern} rely(); + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); + free ensures (memory_load8_le(mem, 2552bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2553bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2554bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2555bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 128bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 104bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + +procedure {:extern} rely_transitive() + modifies Gamma_mem, mem; + ensures (mem == old(mem)); + ensures (Gamma_mem == old(Gamma_mem)); +{ + call rely(); + call rely(); +} + +procedure {:extern} rely_reflexive(); + +procedure {:extern} guarantee_reflexive(); + modifies Gamma_mem, mem; + +procedure #free(); + modifies Gamma_R16, Gamma_R17, R16, R17; + requires (forall i : int, j: bv64 :: (malloc_base[i] == R0 && bvuge64(j, R0) && bvult64(j, malloc_end[i])) ==> Gamma_mem[j]); + free requires (memory_load8_le(mem, 2552bv64) == 1bv8); + free requires (memory_load8_le(mem, 2553bv64) == 0bv8); + free requires (memory_load8_le(mem, 2554bv64) == 2bv8); + free requires (memory_load8_le(mem, 2555bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 128bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 104bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2552bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2553bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2554bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2555bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 128bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 104bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + +procedure main() + modifies Gamma_R0, Gamma_R1, Gamma_R16, Gamma_R17, Gamma_R19, Gamma_R2, Gamma_R29, Gamma_R30, Gamma_R31, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, Gamma_mem, Gamma_stack, R0, R1, R16, R17, R19, R2, R29, R30, R31, malloc_base, malloc_count, malloc_end, mem, stack; + requires (gamma_load8(Gamma_mem, $password_addr) == false); + requires malloc_count == 0; + requires gamma_load32(Gamma_mem, memory_load64_le(mem, $stext_addr)); + requires R31 == 100bv64; + free requires (memory_load8_le(mem, 131152bv64) == 0bv8); + free requires (memory_load8_le(mem, 131153bv64) == 0bv8); + free requires (memory_load8_le(mem, 131154bv64) == 0bv8); + free requires (memory_load8_le(mem, 131155bv64) == 0bv8); + free requires (memory_load8_le(mem, 131156bv64) == 0bv8); + free requires (memory_load8_le(mem, 131157bv64) == 0bv8); + free requires (memory_load8_le(mem, 131158bv64) == 0bv8); + free requires (memory_load8_le(mem, 131159bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 131168bv64) == 7bv8); + free requires (memory_load8_le(mem, 131169bv64) == 0bv8); + free requires (memory_load8_le(mem, 131170bv64) == 0bv8); + free requires (memory_load8_le(mem, 131171bv64) == 0bv8); + free requires (memory_load8_le(mem, 131172bv64) == 0bv8); + free requires (memory_load8_le(mem, 131173bv64) == 0bv8); + free requires (memory_load8_le(mem, 131174bv64) == 0bv8); + free requires (memory_load8_le(mem, 131175bv64) == 0bv8); + free requires (memory_load8_le(mem, 131176bv64) == 117bv8); + free requires (memory_load8_le(mem, 131177bv64) == 115bv8); + free requires (memory_load8_le(mem, 131178bv64) == 101bv8); + free requires (memory_load8_le(mem, 131179bv64) == 114bv8); + free requires (memory_load8_le(mem, 131180bv64) == 58bv8); + free requires (memory_load8_le(mem, 131181bv64) == 112bv8); + free requires (memory_load8_le(mem, 131182bv64) == 97bv8); + free requires (memory_load8_le(mem, 131183bv64) == 115bv8); + free requires (memory_load8_le(mem, 131184bv64) == 115bv8); + free requires (memory_load8_le(mem, 131185bv64) == 0bv8); + free requires (memory_load8_le(mem, 131186bv64) == 0bv8); + free requires (memory_load8_le(mem, 2552bv64) == 1bv8); + free requires (memory_load8_le(mem, 2553bv64) == 0bv8); + free requires (memory_load8_le(mem, 2554bv64) == 2bv8); + free requires (memory_load8_le(mem, 2555bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 128bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 104bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (Gamma_R19 == old(Gamma_R19)); + free ensures (Gamma_R29 == old(Gamma_R29)); + free ensures (Gamma_R31 == old(Gamma_R31)); + free ensures (R19 == old(R19)); + free ensures (R29 == old(R29)); + free ensures (R31 == old(R31)); + free ensures (memory_load8_le(mem, 2552bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2553bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2554bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2555bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 128bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 104bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); +{ + var #42: bv64; + var Gamma_#42: bool; + lmain: + assume {:captureState "lmain"} true; + #42, Gamma_#42 := bvadd64(R31, 18446744073709551568bv64), Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, #42, R29), gamma_store64(Gamma_stack, #42, Gamma_R29); + assume {:captureState "%000003b5"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(#42, 8bv64), R30), gamma_store64(Gamma_stack, bvadd64(#42, 8bv64), Gamma_R30); + assume {:captureState "%000003ba"} true; + R31, Gamma_R31 := #42, Gamma_#42; + R29, Gamma_R29 := R31, Gamma_R31; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 16bv64), R19), gamma_store64(Gamma_stack, bvadd64(R31, 16bv64), Gamma_R19); + assume {:captureState "%000003cd"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 40bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R31, 40bv64), true); + assume {:captureState "%000003d5"} true; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 32bv64), 0bv64), gamma_store64(Gamma_stack, bvadd64(R31, 32bv64), true); + assume {:captureState "%000003dd"} true; + R0, Gamma_R0 := 11bv64, true; + R30, Gamma_R30 := 2352bv64, true; + call malloc(); + goto l000003ed; + l000003ed: + assume {:captureState "l000003ed"} true; + R1, Gamma_R1 := R0, Gamma_R0; + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4040bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4040bv64)) || L(mem, bvadd64(R0, 4040bv64))); + call rely(); + assert (L(mem, R0) ==> Gamma_R1); + mem, Gamma_mem := memory_store64_le(mem, R0, R1), gamma_store64(Gamma_mem, R0, Gamma_R1); + assume {:captureState "%00000409"} true; + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4040bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4040bv64)) || L(mem, bvadd64(R0, 4040bv64))); + call rely(); + R19, Gamma_R19 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4048bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4048bv64)) || L(mem, bvadd64(R0, 4048bv64))); + R30, Gamma_R30 := 2392bv64, true; + call strlen(); + goto l00000437; + l00000437: + assume {:captureState "l00000437"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R1, Gamma_R1 := memory_load64_le(mem, bvadd64(R0, 4048bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4048bv64)) || L(mem, bvadd64(R0, 4048bv64))); + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2412bv64, true; + call memcpy(); + goto l0000045d; + l0000045d: + assume {:captureState "l0000045d"} true; + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4040bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4040bv64)) || L(mem, bvadd64(R0, 4040bv64))); + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2428bv64, true; + call puts(); + goto l0000047b; + l0000047b: + assume {:captureState "l0000047b"} true; + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4040bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4040bv64)) || L(mem, bvadd64(R0, 4040bv64))); + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := bvadd64(R0, 4bv64), Gamma_R0; + stack, Gamma_stack := memory_store64_le(stack, bvadd64(R31, 40bv64), R0), gamma_store64(Gamma_stack, bvadd64(R31, 40bv64), Gamma_R0); + assume {:captureState "%0000049e"} true; + R0, Gamma_R0 := memory_load64_le(stack, bvadd64(R31, 40bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 40bv64)); + call rely(); + assert (L(mem, R0) ==> true); + mem, Gamma_mem := memory_store8_be(mem, R0, 0bv8), gamma_store8(Gamma_mem, R0, true); + assume {:captureState "%000004ae"} true; + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4040bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4040bv64)) || L(mem, bvadd64(R0, 4040bv64))); + call rely(); + R19, Gamma_R19 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4040bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4040bv64)) || L(mem, bvadd64(R0, 4040bv64))); + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2484bv64, true; + call strlen(); + goto l000004e3; + l000004e3: + assume {:captureState "l000004e3"} true; + R2, Gamma_R2 := R0, Gamma_R0; + R1, Gamma_R1 := 1bv64, true; + R0, Gamma_R0 := R19, Gamma_R19; + R30, Gamma_R30 := 2500bv64, true; + call memset(); + goto l00000502; + l00000502: + assume {:captureState "l00000502"} true; + R0, Gamma_R0 := 126976bv64, true; + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, bvadd64(R0, 4040bv64)), (gamma_load64(Gamma_mem, bvadd64(R0, 4040bv64)) || L(mem, bvadd64(R0, 4040bv64))); + call rely(); + R0, Gamma_R0 := memory_load64_le(mem, R0), (gamma_load64(Gamma_mem, R0) || L(mem, R0)); + R30, Gamma_R30 := 2516bv64, true; + call #free(); + goto l00000520; + l00000520: + assume {:captureState "l00000520"} true; + R0, Gamma_R0 := 0bv64, true; + R19, Gamma_R19 := memory_load64_le(stack, bvadd64(R31, 16bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 16bv64)); + R29, Gamma_R29 := memory_load64_le(stack, R31), gamma_load64(Gamma_stack, R31); + R30, Gamma_R30 := memory_load64_le(stack, bvadd64(R31, 8bv64)), gamma_load64(Gamma_stack, bvadd64(R31, 8bv64)); + R31, Gamma_R31 := bvadd64(R31, 48bv64), Gamma_R31; + return; +} + +procedure malloc(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, Gamma_malloc_base, Gamma_malloc_count, Gamma_malloc_end, R0, R16, R17, malloc_base, malloc_count, malloc_end; + requires bvugt64(R0, 0bv64); + requires Gamma_R0 == true; + free requires (memory_load8_le(mem, 2552bv64) == 1bv8); + free requires (memory_load8_le(mem, 2553bv64) == 0bv8); + free requires (memory_load8_le(mem, 2554bv64) == 2bv8); + free requires (memory_load8_le(mem, 2555bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 128bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 104bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures Gamma_R0 == true; + ensures malloc_count == old(malloc_count) + 1; + ensures bvugt64(malloc_end[malloc_count], malloc_base[malloc_count]); + ensures R0 == malloc_base[malloc_count]; + ensures malloc_end[malloc_count] == bvadd64(R0, old(R0)); + ensures (forall i: int :: i != malloc_count ==> bvugt64(malloc_base[malloc_count], malloc_end[i]) || bvult64(malloc_end[malloc_count], malloc_base[i])); + ensures (forall i: int :: i != malloc_count ==> malloc_base[i] == old(malloc_base[i]) && malloc_end[i] == old(malloc_end[i])); + ensures bvuge64(R0, 100000000bv64); + ensures (forall i : bv64 :: (bvuge64(i, R0) && bvult64(i, bvadd64(R0, old(R0)))) ==> (Gamma_mem[i] && gamma_load8(Gamma_mem, i))); + free ensures (memory_load8_le(mem, 2552bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2553bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2554bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2555bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 128bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 104bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + +procedure memcpy(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + free requires (memory_load8_le(mem, 2552bv64) == 1bv8); + free requires (memory_load8_le(mem, 2553bv64) == 0bv8); + free requires (memory_load8_le(mem, 2554bv64) == 2bv8); + free requires (memory_load8_le(mem, 2555bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 128bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 104bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i, bvadd64(R0, R2))) then gamma_load8((Gamma_mem), bvadd64(bvsub64(i, R0), R1)) else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then memory_load8_le((mem), bvadd64(bvsub64(i, R0), R1)) else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2552bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2553bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2554bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2555bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 128bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 104bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + +procedure memset(); + modifies Gamma_R16, Gamma_R17, Gamma_mem, R16, R17, mem; + requires Gamma_R1; + free requires (memory_load8_le(mem, 2552bv64) == 1bv8); + free requires (memory_load8_le(mem, 2553bv64) == 0bv8); + free requires (memory_load8_le(mem, 2554bv64) == 2bv8); + free requires (memory_load8_le(mem, 2555bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 128bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 104bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + ensures ((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))); + ensures (forall i: bv64 :: (Gamma_mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then Gamma_R1 else old(gamma_load8(Gamma_mem, i)))); + ensures (forall i: bv64 :: (mem[i] == if (bvule64(R0, i) && bvult64(i,bvadd64(R0, R2))) then R1[8:0] else old(memory_load8_le(mem, i)))); + free ensures (memory_load8_le(mem, 2552bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2553bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2554bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2555bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 128bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 104bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + +procedure puts(); + modifies Gamma_R16, Gamma_R17, R16, R17; + free requires (memory_load8_le(mem, 2552bv64) == 1bv8); + free requires (memory_load8_le(mem, 2553bv64) == 0bv8); + free requires (memory_load8_le(mem, 2554bv64) == 2bv8); + free requires (memory_load8_le(mem, 2555bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 128bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 104bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2552bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2553bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2554bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2555bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 128bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 104bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); + +procedure strlen(); + modifies Gamma_R0, Gamma_R16, Gamma_R17, R0, R16, R17; + free requires (memory_load8_le(mem, 2552bv64) == 1bv8); + free requires (memory_load8_le(mem, 2553bv64) == 0bv8); + free requires (memory_load8_le(mem, 2554bv64) == 2bv8); + free requires (memory_load8_le(mem, 2555bv64) == 0bv8); + free requires (memory_load8_le(mem, 131016bv64) == 128bv8); + free requires (memory_load8_le(mem, 131017bv64) == 0bv8); + free requires (memory_load8_le(mem, 131018bv64) == 2bv8); + free requires (memory_load8_le(mem, 131019bv64) == 0bv8); + free requires (memory_load8_le(mem, 131020bv64) == 0bv8); + free requires (memory_load8_le(mem, 131021bv64) == 0bv8); + free requires (memory_load8_le(mem, 131022bv64) == 0bv8); + free requires (memory_load8_le(mem, 131023bv64) == 0bv8); + free requires (memory_load8_le(mem, 130488bv64) == 16bv8); + free requires (memory_load8_le(mem, 130489bv64) == 9bv8); + free requires (memory_load8_le(mem, 130490bv64) == 0bv8); + free requires (memory_load8_le(mem, 130491bv64) == 0bv8); + free requires (memory_load8_le(mem, 130492bv64) == 0bv8); + free requires (memory_load8_le(mem, 130493bv64) == 0bv8); + free requires (memory_load8_le(mem, 130494bv64) == 0bv8); + free requires (memory_load8_le(mem, 130495bv64) == 0bv8); + free requires (memory_load8_le(mem, 131024bv64) == 104bv8); + free requires (memory_load8_le(mem, 131025bv64) == 0bv8); + free requires (memory_load8_le(mem, 131026bv64) == 2bv8); + free requires (memory_load8_le(mem, 131027bv64) == 0bv8); + free requires (memory_load8_le(mem, 131028bv64) == 0bv8); + free requires (memory_load8_le(mem, 131029bv64) == 0bv8); + free requires (memory_load8_le(mem, 131030bv64) == 0bv8); + free requires (memory_load8_le(mem, 131031bv64) == 0bv8); + free requires (memory_load8_le(mem, 131032bv64) == 20bv8); + free requires (memory_load8_le(mem, 131033bv64) == 9bv8); + free requires (memory_load8_le(mem, 131034bv64) == 0bv8); + free requires (memory_load8_le(mem, 131035bv64) == 0bv8); + free requires (memory_load8_le(mem, 131036bv64) == 0bv8); + free requires (memory_load8_le(mem, 131037bv64) == 0bv8); + free requires (memory_load8_le(mem, 131038bv64) == 0bv8); + free requires (memory_load8_le(mem, 131039bv64) == 0bv8); + free requires (memory_load8_le(mem, 131160bv64) == 88bv8); + free requires (memory_load8_le(mem, 131161bv64) == 0bv8); + free requires (memory_load8_le(mem, 131162bv64) == 2bv8); + free requires (memory_load8_le(mem, 131163bv64) == 0bv8); + free requires (memory_load8_le(mem, 131164bv64) == 0bv8); + free requires (memory_load8_le(mem, 131165bv64) == 0bv8); + free requires (memory_load8_le(mem, 131166bv64) == 0bv8); + free requires (memory_load8_le(mem, 131167bv64) == 0bv8); + free requires (memory_load8_le(mem, 130496bv64) == 192bv8); + free requires (memory_load8_le(mem, 130497bv64) == 8bv8); + free requires (memory_load8_le(mem, 130498bv64) == 0bv8); + free requires (memory_load8_le(mem, 130499bv64) == 0bv8); + free requires (memory_load8_le(mem, 130500bv64) == 0bv8); + free requires (memory_load8_le(mem, 130501bv64) == 0bv8); + free requires (memory_load8_le(mem, 130502bv64) == 0bv8); + free requires (memory_load8_le(mem, 130503bv64) == 0bv8); + ensures (((memory_load64_le(mem, $buf_addr) == old(memory_load64_le(mem, $buf_addr))) && (memory_load8_le(mem, $password_addr) == old(memory_load8_le(mem, $password_addr)))) && (memory_load8_le(mem, $stext_addr) == old(memory_load8_le(mem, $stext_addr)))); + ensures Gamma_R0 == true; + ensures (forall i: bv64 :: (bvule64(old(R0), i)) && (bvult64(i, bvadd64(old(R0), R0))) ==> mem[i] != 0bv8); + ensures (memory_load8_le(mem, bvadd64(old(R0), R0)) == 0bv8); + ensures (bvult64(old(R0), bvadd64(bvadd64(old(R0), R0), 1bv64))); + free ensures (memory_load8_le(mem, 2552bv64) == 1bv8); + free ensures (memory_load8_le(mem, 2553bv64) == 0bv8); + free ensures (memory_load8_le(mem, 2554bv64) == 2bv8); + free ensures (memory_load8_le(mem, 2555bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131016bv64) == 128bv8); + free ensures (memory_load8_le(mem, 131017bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131018bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131019bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131020bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131021bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131022bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131023bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130488bv64) == 16bv8); + free ensures (memory_load8_le(mem, 130489bv64) == 9bv8); + free ensures (memory_load8_le(mem, 130490bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130491bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130492bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130493bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130494bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130495bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131024bv64) == 104bv8); + free ensures (memory_load8_le(mem, 131025bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131026bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131027bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131028bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131029bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131030bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131031bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131032bv64) == 20bv8); + free ensures (memory_load8_le(mem, 131033bv64) == 9bv8); + free ensures (memory_load8_le(mem, 131034bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131035bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131036bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131037bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131038bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131039bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131160bv64) == 88bv8); + free ensures (memory_load8_le(mem, 131161bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131162bv64) == 2bv8); + free ensures (memory_load8_le(mem, 131163bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131164bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131165bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131166bv64) == 0bv8); + free ensures (memory_load8_le(mem, 131167bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130496bv64) == 192bv8); + free ensures (memory_load8_le(mem, 130497bv64) == 8bv8); + free ensures (memory_load8_le(mem, 130498bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130499bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130500bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130501bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130502bv64) == 0bv8); + free ensures (memory_load8_le(mem, 130503bv64) == 0bv8); diff --git a/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.relf b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.relf new file mode 100644 index 000000000..e075e265b --- /dev/null +++ b/src/test/incorrect/malloc_memcpy_strlen_memset_free/gcc_pic/malloc_memcpy_strlen_memset_free.relf @@ -0,0 +1,145 @@ + +Relocation section '.rela.dyn' at offset 0x528 contains 10 entries: + Offset Info Type Symbol's Value Symbol's Name + Addend +000000000001fdb8 0000000000000403 R_AARCH64_RELATIVE 910 +000000000001fdc0 0000000000000403 R_AARCH64_RELATIVE 8c0 +000000000001ffc8 0000000000000403 R_AARCH64_RELATIVE 20080 +000000000001ffd0 0000000000000403 R_AARCH64_RELATIVE 20068 +000000000001ffd8 0000000000000403 R_AARCH64_RELATIVE 914 +0000000000020058 0000000000000403 R_AARCH64_RELATIVE 20058 +000000000001ffb0 0000000600000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_deregisterTMCloneTable + 0 +000000000001ffb8 0000000700000401 R_AARCH64_GLOB_DAT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +000000000001ffc0 0000000a00000401 R_AARCH64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 +000000000001ffe0 0000000e00000401 R_AARCH64_GLOB_DAT 0000000000000000 _ITM_registerTMCloneTable + 0 + +Relocation section '.rela.plt' at offset 0x618 contains 10 entries: + Offset Info Type Symbol's Value Symbol's Name + Addend +0000000000020000 0000000300000402 R_AARCH64_JUMP_SLOT 0000000000000000 memcpy@GLIBC_2.17 + 0 +0000000000020008 0000000400000402 R_AARCH64_JUMP_SLOT 0000000000000000 strlen@GLIBC_2.17 + 0 +0000000000020010 0000000500000402 R_AARCH64_JUMP_SLOT 0000000000000000 __libc_start_main@GLIBC_2.34 + 0 +0000000000020018 0000000700000402 R_AARCH64_JUMP_SLOT 0000000000000000 __cxa_finalize@GLIBC_2.17 + 0 +0000000000020020 0000000800000402 R_AARCH64_JUMP_SLOT 0000000000000000 malloc@GLIBC_2.17 + 0 +0000000000020028 0000000900000402 R_AARCH64_JUMP_SLOT 0000000000000000 memset@GLIBC_2.17 + 0 +0000000000020030 0000000a00000402 R_AARCH64_JUMP_SLOT 0000000000000000 __gmon_start__ + 0 +0000000000020038 0000000b00000402 R_AARCH64_JUMP_SLOT 0000000000000000 abort@GLIBC_2.17 + 0 +0000000000020040 0000000c00000402 R_AARCH64_JUMP_SLOT 0000000000000000 puts@GLIBC_2.17 + 0 +0000000000020048 0000000d00000402 R_AARCH64_JUMP_SLOT 0000000000000000 free@GLIBC_2.17 + 0 + +Symbol table '.dynsym' contains 15 entries: + Num: Value Size Type Bind Vis Ndx Name + 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND + 1: 0000000000000708 0 SECTION LOCAL DEFAULT 11 .init + 2: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 (2) + 4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 (2) + 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 (3) + 6: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 7: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 (2) + 8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 (2) + 9: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 (2) + 10: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 11: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 (2) + 12: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 (2) + 13: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 (2) + 14: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + +Symbol table '.symtab' contains 98 entries: + Num: Value Size Type Bind Vis Ndx Name + 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND + 1: 0000000000000238 0 SECTION LOCAL DEFAULT 1 .interp + 2: 0000000000000254 0 SECTION LOCAL DEFAULT 2 .note.gnu.build-id + 3: 0000000000000278 0 SECTION LOCAL DEFAULT 3 .note.ABI-tag + 4: 0000000000000298 0 SECTION LOCAL DEFAULT 4 .gnu.hash + 5: 00000000000002b8 0 SECTION LOCAL DEFAULT 5 .dynsym + 6: 0000000000000420 0 SECTION LOCAL DEFAULT 6 .dynstr + 7: 00000000000004d4 0 SECTION LOCAL DEFAULT 7 .gnu.version + 8: 00000000000004f8 0 SECTION LOCAL DEFAULT 8 .gnu.version_r + 9: 0000000000000528 0 SECTION LOCAL DEFAULT 9 .rela.dyn + 10: 0000000000000618 0 SECTION LOCAL DEFAULT 10 .rela.plt + 11: 0000000000000708 0 SECTION LOCAL DEFAULT 11 .init + 12: 0000000000000720 0 SECTION LOCAL DEFAULT 12 .plt + 13: 0000000000000800 0 SECTION LOCAL DEFAULT 13 .text + 14: 00000000000009e4 0 SECTION LOCAL DEFAULT 14 .fini + 15: 00000000000009f8 0 SECTION LOCAL DEFAULT 15 .rodata + 16: 00000000000009fc 0 SECTION LOCAL DEFAULT 16 .eh_frame_hdr + 17: 0000000000000a38 0 SECTION LOCAL DEFAULT 17 .eh_frame + 18: 000000000001fdb8 0 SECTION LOCAL DEFAULT 18 .init_array + 19: 000000000001fdc0 0 SECTION LOCAL DEFAULT 19 .fini_array + 20: 000000000001fdc8 0 SECTION LOCAL DEFAULT 20 .dynamic + 21: 000000000001ffa8 0 SECTION LOCAL DEFAULT 21 .got + 22: 000000000001ffe8 0 SECTION LOCAL DEFAULT 22 .got.plt + 23: 0000000000020050 0 SECTION LOCAL DEFAULT 23 .data + 24: 0000000000020078 0 SECTION LOCAL DEFAULT 24 .bss + 25: 0000000000000000 0 SECTION LOCAL DEFAULT 25 .comment + 26: 0000000000000000 0 FILE LOCAL DEFAULT ABS Scrt1.o + 27: 0000000000000278 0 NOTYPE LOCAL DEFAULT 3 $d + 28: 0000000000000278 32 OBJECT LOCAL DEFAULT 3 __abi_tag + 29: 0000000000000800 0 NOTYPE LOCAL DEFAULT 13 $x + 30: 0000000000000a4c 0 NOTYPE LOCAL DEFAULT 17 $d + 31: 00000000000009f8 0 NOTYPE LOCAL DEFAULT 15 $d + 32: 0000000000000000 0 FILE LOCAL DEFAULT ABS crti.o + 33: 0000000000000834 0 NOTYPE LOCAL DEFAULT 13 $x + 34: 0000000000000834 20 FUNC LOCAL DEFAULT 13 call_weak_fn + 35: 0000000000000708 0 NOTYPE LOCAL DEFAULT 11 $x + 36: 00000000000009e4 0 NOTYPE LOCAL DEFAULT 14 $x + 37: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtn.o + 38: 0000000000000718 0 NOTYPE LOCAL DEFAULT 11 $x + 39: 00000000000009f0 0 NOTYPE LOCAL DEFAULT 14 $x + 40: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 41: 0000000000000850 0 NOTYPE LOCAL DEFAULT 13 $x + 42: 0000000000000850 0 FUNC LOCAL DEFAULT 13 deregister_tm_clones + 43: 0000000000000880 0 FUNC LOCAL DEFAULT 13 register_tm_clones + 44: 0000000000020058 0 NOTYPE LOCAL DEFAULT 23 $d + 45: 00000000000008c0 0 FUNC LOCAL DEFAULT 13 __do_global_dtors_aux + 46: 0000000000020078 1 OBJECT LOCAL DEFAULT 24 completed.0 + 47: 000000000001fdc0 0 NOTYPE LOCAL DEFAULT 19 $d + 48: 000000000001fdc0 0 OBJECT LOCAL DEFAULT 19 __do_global_dtors_aux_fini_array_entry + 49: 0000000000000910 0 FUNC LOCAL DEFAULT 13 frame_dummy + 50: 000000000001fdb8 0 NOTYPE LOCAL DEFAULT 18 $d + 51: 000000000001fdb8 0 OBJECT LOCAL DEFAULT 18 __frame_dummy_init_array_entry + 52: 0000000000000a60 0 NOTYPE LOCAL DEFAULT 17 $d + 53: 0000000000020078 0 NOTYPE LOCAL DEFAULT 24 $d + 54: 0000000000000000 0 FILE LOCAL DEFAULT ABS malloc_memcpy_strlen_memset_free.c + 55: 0000000000020080 0 NOTYPE LOCAL DEFAULT 24 $d + 56: 0000000000020061 0 NOTYPE LOCAL DEFAULT 23 $d + 57: 0000000000000914 0 NOTYPE LOCAL DEFAULT 13 $x + 58: 0000000000000ac0 0 NOTYPE LOCAL DEFAULT 17 $d + 59: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c + 60: 0000000000000ae4 0 NOTYPE LOCAL DEFAULT 17 $d + 61: 0000000000000ae4 0 OBJECT LOCAL DEFAULT 17 __FRAME_END__ + 62: 0000000000000000 0 FILE LOCAL DEFAULT ABS + 63: 000000000001fdc8 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC + 64: 00000000000009fc 0 NOTYPE LOCAL DEFAULT 16 __GNU_EH_FRAME_HDR + 65: 000000000001ffa8 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + 66: 0000000000000720 0 NOTYPE LOCAL DEFAULT 12 $x + 67: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.17 + 68: 0000000000000000 0 FUNC GLOBAL DEFAULT UND strlen@GLIBC_2.17 + 69: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.34 + 70: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable + 71: 0000000000020050 0 NOTYPE WEAK DEFAULT 23 data_start + 72: 0000000000020073 0 NOTYPE GLOBAL DEFAULT 24 __bss_start__ + 73: 0000000000000000 0 FUNC WEAK DEFAULT UND __cxa_finalize@GLIBC_2.17 + 74: 0000000000020088 0 NOTYPE GLOBAL DEFAULT 24 _bss_end__ + 75: 0000000000020073 0 NOTYPE GLOBAL DEFAULT 23 _edata + 76: 00000000000009e4 0 FUNC GLOBAL HIDDEN 14 _fini + 77: 0000000000020088 0 NOTYPE GLOBAL DEFAULT 24 __bss_end__ + 78: 0000000000000000 0 FUNC GLOBAL DEFAULT UND malloc@GLIBC_2.17 + 79: 0000000000000000 0 FUNC GLOBAL DEFAULT UND memset@GLIBC_2.17 + 80: 0000000000020060 1 OBJECT GLOBAL DEFAULT 23 password + 81: 0000000000020050 0 NOTYPE GLOBAL DEFAULT 23 __data_start + 82: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ + 83: 0000000000020058 0 OBJECT GLOBAL HIDDEN 23 __dso_handle + 84: 0000000000000000 0 FUNC GLOBAL DEFAULT UND abort@GLIBC_2.17 + 85: 00000000000009f8 4 OBJECT GLOBAL DEFAULT 15 _IO_stdin_used + 86: 0000000000000000 0 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.17 + 87: 0000000000020088 0 NOTYPE GLOBAL DEFAULT 24 _end + 88: 0000000000000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.17 + 89: 0000000000000800 52 FUNC GLOBAL DEFAULT 13 _start + 90: 0000000000020080 8 OBJECT GLOBAL DEFAULT 24 buf + 91: 0000000000020088 0 NOTYPE GLOBAL DEFAULT 24 __end__ + 92: 0000000000020068 11 OBJECT GLOBAL DEFAULT 23 stext + 93: 0000000000020073 0 NOTYPE GLOBAL DEFAULT 24 __bss_start + 94: 0000000000000914 208 FUNC GLOBAL DEFAULT 13 main + 95: 0000000000020078 0 OBJECT GLOBAL HIDDEN 23 __TMC_END__ + 96: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _ITM_registerTMCloneTable + 97: 0000000000000708 0 FUNC GLOBAL HIDDEN 11 _init