spacepaste

  1.  
  2. neon@neon-X555BA:~$ cd git/universal-dynamic-loader/loader/
  3. neon@neon-X555BA:~/git/universal-dynamic-loader/loader$ files/readelf_ ./files/libstring.so
  4. ----------------------------------------------------------------------->called init_aux() at line 287 from libstring.c
  5. ----------------------------------------------------------------------->called init_env() at line 266 from libstring.c
  6. ----------------------------------------------------------------------->called init_argX() at line 275 from libstring.c
  7. ----------------------------------------------------------------------->called currentaux() at line 785 from libstring.c
  8. AT_SYSINFO_EHDR = 0x7fffd216d000
  9. AT_HWCAP = 0x178bfbff
  10. AT_PAGESZ = 4096
  11. AT_CLKTCK = 100
  12. AT_PHDR = 0x558f51dbb040
  13. AT_PHENT = 56
  14. AT_PHNUM = 9
  15. AT_BASE = 0x7f9e1467a000
  16. AT_FLAGS = (nil)
  17. AT_ENTRY = 0x558f51dbb6a0
  18. AT_UID = 1000
  19. AT_EUID = 1000
  20. AT_GID = 1000
  21. AT_EGID = 1000
  22. AT_SECURE = 0
  23. AT_HWCAP2 = (nil)
  24. AT_EXECFN = files/readelf_
  25. AT_PLATFORM = x86_64
  26. current index 0 holds "NULL"
  27. searching indexes for "./files/libstring.so" incase it has already been loaded
  28. current index 0 holds "NULL"
  29. attempting to save to index 0
  30. map succeded with address: 0x7f9e1483a000
  31. calling round_up
  32. returning = 0x7f9e10000000
  33. memmove: round_up(0x7f9e02b17010, 0x000010000000)+0x000000200000 = 0x7f9e10200000
  34. calling round_up
  35. returning = 0x7f9e10000000
  36. dest = 0x7f9e10200000
  37. dest = 0x7f9e10000000
  38. library[library_index]._elf_program_header[library[library_index].Last_Load_Header_index].p_vaddr = 0x00000020ed80
  39. library[library_index]._elf_program_header[lowest_idx].p_paddr = 0x00000020ed80
  40. library[library_index]._elf_program_header[lowest_idx].p_vaddr = 0x00000020ed80
  41. calling round_down
  42. returning = 0x00000020e000
  43. calling round_down
  44. returning = 0x00000020e000
  45. calling round_nearest
  46. returning = 0x00000020f000
  47. base address range = 0x7f9e10000000 - 0x7f9e102122a0
  48. mapping = 0x7f9e10000000
  49. base address = 0x7f9e10000000
  50. find 0x7f9e10000000, 0x7f9e102122a0, (int) 1239
  51. mapping PT_LOAD number 1
  52. p_flags: 0x000000000005
  53. p_offset: (nil)
  54. p_vaddr: (nil)
  55. p_paddr: (nil)
  56. p_filesz: 0x00000000e7f8
  57. p_memsz: 0x00000000e7f8
  58. p_align: 0x000000200000
  59. p_flags: 0x000000000005 p_offset: (nil) p_vaddr: (nil) p_paddr: (nil) p_filesz: 0x00000000e7f8 p_memsz: 0x00000000e7f8 p_align: 0x000000200000
  60. mprotect(0x7f9e10000000+round_down( (nil), 0x000000200000), 0x00000000e7f8, PROT_READ|PROT_EXEC|);
  61. calling round_up
  62. returning = 0x000000200000
  63. calling round_down
  64. returning = (nil)
  65. calling round_up
  66. returning = 0x000000200000
  67. calling round_down
  68. returning = (nil)
  69. mprotect on 0x7f9e10000000 succeded with size: 0x000000200000
  70. 558f51dbb000-558f51dbc000 r-xp 00000000 08:05 8802722 /home/neon/git/universal-dynamic-loader/loader/files/readelf_
  71. 558f51fbb000-558f51fbc000 r--p 00000000 08:05 8802722 /home/neon/git/universal-dynamic-loader/loader/files/readelf_
  72. 558f51fbc000-558f51fbd000 rw-p 00001000 08:05 8802722 /home/neon/git/universal-dynamic-loader/loader/files/readelf_
  73. 558f5384f000-558f53870000 rw-p 00000000 00:00 0 [heap]
  74. 7f9e02b17000-7f9e10000000 rw-p 00000000 00:00 0
  75. 7f9e10000000-7f9e10200000 r-xp 00000000 00:00 0
  76. 7f9e10200000-7f9e12f2a000 rw-p 00000000 00:00 0
  77. 7f9e12f2a000-7f9e13208000 r--p 00000000 08:02 17829554 /usr/lib/locale/locale-archive
  78. 7f9e1320a000-7f9e133a7000 r-xp 00000000 08:02 4723381 /lib/x86_64-linux-gnu/libm-2.27.so
  79. 7f9e133a7000-7f9e135a6000 ---p 0019d000 08:02 4723381 /lib/x86_64-linux-gnu/libm-2.27.so
  80. 7f9e135a6000-7f9e135a7000 r--p 0019c000 08:02 4723381 /lib/x86_64-linux-gnu/libm-2.27.so
  81. 7f9e135a7000-7f9e135a8000 rw-p 0019d000 08:02 4723381 /lib/x86_64-linux-gnu/libm-2.27.so
  82. 7f9e135aa000-7f9e135c1000 r-xp 00000000 08:02 4723355 /lib/x86_64-linux-gnu/libgcc_s.so.1
  83. 7f9e135c1000-7f9e137c0000 ---p 00017000 08:02 4723355 /lib/x86_64-linux-gnu/libgcc_s.so.1
  84. 7f9e137c0000-7f9e137c1000 r--p 00016000 08:02 4723355 /lib/x86_64-linux-gnu/libgcc_s.so.1
  85. 7f9e137c1000-7f9e137c2000 rw-p 00017000 08:02 4723355 /lib/x86_64-linux-gnu/libgcc_s.so.1
  86. 7f9e137c2000-7f9e1393b000 r-xp 00000000 08:02 17835254 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
  87. 7f9e1393b000-7f9e13b3b000 ---p 00179000 08:02 17835254 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
  88. 7f9e13b3b000-7f9e13b45000 r--p 00179000 08:02 17835254 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
  89. 7f9e13b45000-7f9e13b47000 rw-p 00183000 08:02 17835254 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
  90. 7f9e13b47000-7f9e13b4b000 rw-p 00000000 00:00 0
  91. 7f9e13b52000-7f9e13d39000 r-xp 00000000 08:02 4723318 /lib/x86_64-linux-gnu/libc-2.27.so
  92. 7f9e13d39000-7f9e13f39000 ---p 001e7000 08:02 4723318 /lib/x86_64-linux-gnu/libc-2.27.so
  93. 7f9e13f39000-7f9e13f3d000 r--p 001e7000 08:02 4723318 /lib/x86_64-linux-gnu/libc-2.27.so
  94. 7f9e13f3d000-7f9e13f3f000 rw-p 001eb000 08:02 4723318 /lib/x86_64-linux-gnu/libc-2.27.so
  95. 7f9e13f3f000-7f9e13f43000 rw-p 00000000 00:00 0
  96. 7f9e13f4a000-7f9e13f59000 r-xp 00000000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  97. 7f9e13f59000-7f9e14158000 ---p 0000f000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  98. 7f9e14158000-7f9e14159000 r--p 0000e000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  99. 7f9e14159000-7f9e1415a000 rw-p 0000f000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  100. 7f9e1415a000-7f9e1415d000 rw-p 00000000 00:00 0
  101. 7f9e14162000-7f9e141bf000 r-xp 00000000 08:05 8802721 /home/neon/git/universal-dynamic-loader/loader/files/patchelf.so
  102. 7f9e141bf000-7f9e143be000 ---p 0005d000 08:05 8802721 /home/neon/git/universal-dynamic-loader/loader/files/patchelf.so
  103. 7f9e143be000-7f9e143bf000 r--p 0005c000 08:05 8802721 /home/neon/git/universal-dynamic-loader/loader/files/patchelf.so
  104. 7f9e143bf000-7f9e143c1000 rw-p 0005d000 08:05 8802721 /home/neon/git/universal-dynamic-loader/loader/files/patchelf.so
  105. 7f9e143c1000-7f9e143f7000 rw-p 00000000 00:00 0
  106. 7f9e143fa000-7f9e1443c000 r-xp 00000000 08:05 8802717 /home/neon/git/universal-dynamic-loader/loader/files/readelf_.so
  107. 7f9e1443c000-7f9e1463c000 ---p 00042000 08:05 8802717 /home/neon/git/universal-dynamic-loader/loader/files/readelf_.so
  108. 7f9e1463c000-7f9e1463e000 r--p 00042000 08:05 8802717 /home/neon/git/universal-dynamic-loader/loader/files/readelf_.so
  109. 7f9e1463e000-7f9e1463f000 rw-p 00044000 08:05 8802717 /home/neon/git/universal-dynamic-loader/loader/files/readelf_.so
  110. 7f9e1463f000-7f9e14674000 rw-p 00000000 00:00 0
  111. 7f9e1467a000-7f9e146a1000 r-xp 00000000 08:02 4723292 /lib/x86_64-linux-gnu/ld-2.27.so
  112. 7f9e1483a000-7f9e1487c000 r--p 00000000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  113. 7f9e1487f000-7f9e14882000 rw-p 00000000 00:00 0
  114. 7f9e1489f000-7f9e148a1000 rw-p 00000000 00:00 0
  115. 7f9e148a1000-7f9e148a2000 r--p 00027000 08:02 4723292 /lib/x86_64-linux-gnu/ld-2.27.so
  116. 7f9e148a2000-7f9e148a3000 rw-p 00028000 08:02 4723292 /lib/x86_64-linux-gnu/ld-2.27.so
  117. 7f9e148a3000-7f9e148a4000 rw-p 00000000 00:00 0
  118. 7f9e148a5000-7f9e148a7000 rw-p 00000000 00:00 0
  119. 7fffd20ae000-7fffd20cf000 rw-p 00000000 00:00 0 [stack]
  120. 7fffd216a000-7fffd216d000 r--p 00000000 00:00 0 [vvar]
  121. 7fffd216d000-7fffd216f000 r-xp 00000000 00:00 0 [vdso]
  122. ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
  123. mapping PT_LOAD number 2
  124. p_flags: 0x000000000006
  125. p_offset: 0x00000000ed80
  126. p_vaddr: 0x00000020ed80
  127. p_paddr: 0x00000020ed80
  128. p_filesz: 0x0000000004e0
  129. p_memsz: 0x000000003520
  130. p_align: 0x000000200000
  131. p_flags: 0x000000000006 p_offset: 0x00000000ed80 p_vaddr: 0x00000020ed80 p_paddr: 0x00000020ed80 p_filesz: 0x0000000004e0 p_memsz: 0x000000003520 p_align: 0x000000200000
  132. mprotect(0x7f9e10000000+round_down(0x00000020ed80, 0x000000200000), 0x000000003520, PROT_READ|PROT_WRITE|);
  133. calling round_up
  134. returning = 0x000000200000
  135. calling round_down
  136. returning = 0x000000200000
  137. calling round_up
  138. returning = 0x000000200000
  139. calling round_down
  140. returning = 0x000000200000
  141. mprotect on 0x7f9e10200000 succeded with size: 0x000000200000
  142. 558f51dbb000-558f51dbc000 r-xp 00000000 08:05 8802722 /home/neon/git/universal-dynamic-loader/loader/files/readelf_
  143. 558f51fbb000-558f51fbc000 r--p 00000000 08:05 8802722 /home/neon/git/universal-dynamic-loader/loader/files/readelf_
  144. 558f51fbc000-558f51fbd000 rw-p 00001000 08:05 8802722 /home/neon/git/universal-dynamic-loader/loader/files/readelf_
  145. 558f5384f000-558f53870000 rw-p 00000000 00:00 0 [heap]
  146. 7f9e02b17000-7f9e10000000 rw-p 00000000 00:00 0
  147. 7f9e10000000-7f9e10200000 r-xp 00000000 00:00 0
  148. 7f9e10200000-7f9e10400000 -wxp 00000000 00:00 0
  149. 7f9e10400000-7f9e12f2a000 rw-p 00000000 00:00 0
  150. 7f9e12f2a000-7f9e13208000 r--p 00000000 08:02 17829554 /usr/lib/locale/locale-archive
  151. 7f9e1320a000-7f9e133a7000 r-xp 00000000 08:02 4723381 /lib/x86_64-linux-gnu/libm-2.27.so
  152. 7f9e133a7000-7f9e135a6000 ---p 0019d000 08:02 4723381 /lib/x86_64-linux-gnu/libm-2.27.so
  153. 7f9e135a6000-7f9e135a7000 r--p 0019c000 08:02 4723381 /lib/x86_64-linux-gnu/libm-2.27.so
  154. 7f9e135a7000-7f9e135a8000 rw-p 0019d000 08:02 4723381 /lib/x86_64-linux-gnu/libm-2.27.so
  155. 7f9e135aa000-7f9e135c1000 r-xp 00000000 08:02 4723355 /lib/x86_64-linux-gnu/libgcc_s.so.1
  156. 7f9e135c1000-7f9e137c0000 ---p 00017000 08:02 4723355 /lib/x86_64-linux-gnu/libgcc_s.so.1
  157. 7f9e137c0000-7f9e137c1000 r--p 00016000 08:02 4723355 /lib/x86_64-linux-gnu/libgcc_s.so.1
  158. 7f9e137c1000-7f9e137c2000 rw-p 00017000 08:02 4723355 /lib/x86_64-linux-gnu/libgcc_s.so.1
  159. 7f9e137c2000-7f9e1393b000 r-xp 00000000 08:02 17835254 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
  160. 7f9e1393b000-7f9e13b3b000 ---p 00179000 08:02 17835254 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
  161. 7f9e13b3b000-7f9e13b45000 r--p 00179000 08:02 17835254 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
  162. 7f9e13b45000-7f9e13b47000 rw-p 00183000 08:02 17835254 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
  163. 7f9e13b47000-7f9e13b4b000 rw-p 00000000 00:00 0
  164. 7f9e13b52000-7f9e13d39000 r-xp 00000000 08:02 4723318 /lib/x86_64-linux-gnu/libc-2.27.so
  165. 7f9e13d39000-7f9e13f39000 ---p 001e7000 08:02 4723318 /lib/x86_64-linux-gnu/libc-2.27.so
  166. 7f9e13f39000-7f9e13f3d000 r--p 001e7000 08:02 4723318 /lib/x86_64-linux-gnu/libc-2.27.so
  167. 7f9e13f3d000-7f9e13f3f000 rw-p 001eb000 08:02 4723318 /lib/x86_64-linux-gnu/libc-2.27.so
  168. 7f9e13f3f000-7f9e13f43000 rw-p 00000000 00:00 0
  169. 7f9e13f4a000-7f9e13f59000 r-xp 00000000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  170. 7f9e13f59000-7f9e14158000 ---p 0000f000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  171. 7f9e14158000-7f9e14159000 r--p 0000e000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  172. 7f9e14159000-7f9e1415a000 rw-p 0000f000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  173. 7f9e1415a000-7f9e1415d000 rw-p 00000000 00:00 0
  174. 7f9e14162000-7f9e141bf000 r-xp 00000000 08:05 8802721 /home/neon/git/universal-dynamic-loader/loader/files/patchelf.so
  175. 7f9e141bf000-7f9e143be000 ---p 0005d000 08:05 8802721 /home/neon/git/universal-dynamic-loader/loader/files/patchelf.so
  176. 7f9e143be000-7f9e143bf000 r--p 0005c000 08:05 8802721 /home/neon/git/universal-dynamic-loader/loader/files/patchelf.so
  177. 7f9e143bf000-7f9e143c1000 rw-p 0005d000 08:05 8802721 /home/neon/git/universal-dynamic-loader/loader/files/patchelf.so
  178. 7f9e143c1000-7f9e143f7000 rw-p 00000000 00:00 0
  179. 7f9e143fa000-7f9e1443c000 r-xp 00000000 08:05 8802717 /home/neon/git/universal-dynamic-loader/loader/files/readelf_.so
  180. 7f9e1443c000-7f9e1463c000 ---p 00042000 08:05 8802717 /home/neon/git/universal-dynamic-loader/loader/files/readelf_.so
  181. 7f9e1463c000-7f9e1463e000 r--p 00042000 08:05 8802717 /home/neon/git/universal-dynamic-loader/loader/files/readelf_.so
  182. 7f9e1463e000-7f9e1463f000 rw-p 00044000 08:05 8802717 /home/neon/git/universal-dynamic-loader/loader/files/readelf_.so
  183. 7f9e1463f000-7f9e14674000 rw-p 00000000 00:00 0
  184. 7f9e1467a000-7f9e146a1000 r-xp 00000000 08:02 4723292 /lib/x86_64-linux-gnu/ld-2.27.so
  185. 7f9e1483a000-7f9e1487c000 r--p 00000000 08:05 8802715 /home/neon/git/universal-dynamic-loader/loader/files/libstring.so
  186. 7f9e1487f000-7f9e14882000 rw-p 00000000 00:00 0
  187. 7f9e1489f000-7f9e148a1000 rw-p 00000000 00:00 0
  188. 7f9e148a1000-7f9e148a2000 r--p 00027000 08:02 4723292 /lib/x86_64-linux-gnu/ld-2.27.so
  189. 7f9e148a2000-7f9e148a3000 rw-p 00028000 08:02 4723292 /lib/x86_64-linux-gnu/ld-2.27.so
  190. 7f9e148a3000-7f9e148a4000 rw-p 00000000 00:00 0
  191. 7f9e148a5000-7f9e148a7000 rw-p 00000000 00:00 0
  192. 7fffd20ae000-7fffd20cf000 rw-p 00000000 00:00 0 [stack]
  193. 7fffd216a000-7fffd216d000 r--p 00000000 00:00 0 [vvar]
  194. 7fffd216d000-7fffd216f000 r-xp 00000000 00:00 0 [vdso]
  195. ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
  196. calling round_up
  197. returning = 0x558f53863000
  198. called get_dynamic_entry
  199. testing if DT_NEEDED == DT_PLTGOT
  200. testing if DT_INIT == DT_PLTGOT
  201. testing if DT_FINI == DT_PLTGOT
  202. testing if DT_INIT_ARRAY == DT_PLTGOT
  203. testing if DT_INIT_ARRAYSZ == DT_PLTGOT
  204. testing if DT_FINI_ARRAY == DT_PLTGOT
  205. testing if DT_FINI_ARRAYSZ == DT_PLTGOT
  206. testing if 1879047925 == DT_PLTGOT
  207. testing if DT_STRTAB == DT_PLTGOT
  208. testing if DT_SYMTAB == DT_PLTGOT
  209. testing if DT_STRSZ == DT_PLTGOT
  210. testing if DT_SYMENT == DT_PLTGOT
  211. testing if DT_PLTGOT == DT_PLTGOT
  212. called get_dynamic_entry
  213. testing if DT_NEEDED == DT_RELASZ
  214. testing if DT_INIT == DT_RELASZ
  215. testing if DT_FINI == DT_RELASZ
  216. testing if DT_INIT_ARRAY == DT_RELASZ
  217. testing if DT_INIT_ARRAYSZ == DT_RELASZ
  218. testing if DT_FINI_ARRAY == DT_RELASZ
  219. testing if DT_FINI_ARRAYSZ == DT_RELASZ
  220. testing if 1879047925 == DT_RELASZ
  221. testing if DT_STRTAB == DT_RELASZ
  222. testing if DT_SYMTAB == DT_RELASZ
  223. testing if DT_STRSZ == DT_RELASZ
  224. testing if DT_SYMENT == DT_RELASZ
  225. testing if DT_PLTGOT == DT_RELASZ
  226. testing if DT_PLTRELSZ == DT_RELASZ
  227. testing if DT_PLTREL == DT_RELASZ
  228. testing if DT_JMPREL == DT_RELASZ
  229. testing if DT_RELA == DT_RELASZ
  230. testing if DT_RELASZ == DT_RELASZ
  231. called get_dynamic_entry
  232. testing if DT_NEEDED == DT_RELA
  233. testing if DT_INIT == DT_RELA
  234. testing if DT_FINI == DT_RELA
  235. testing if DT_INIT_ARRAY == DT_RELA
  236. testing if DT_INIT_ARRAYSZ == DT_RELA
  237. testing if DT_FINI_ARRAY == DT_RELA
  238. testing if DT_FINI_ARRAYSZ == DT_RELA
  239. testing if 1879047925 == DT_RELA
  240. testing if DT_STRTAB == DT_RELA
  241. testing if DT_SYMTAB == DT_RELA
  242. testing if DT_STRSZ == DT_RELA
  243. testing if DT_SYMENT == DT_RELA
  244. testing if DT_PLTGOT == DT_RELA
  245. testing if DT_PLTRELSZ == DT_RELA
  246. testing if DT_PLTREL == DT_RELA
  247. testing if DT_JMPREL == DT_RELA
  248. testing if DT_RELA == DT_RELA
  249. i = 0, ELF64_R_TYPE(reloc->r_info) =
  250. R_X86_64_RELATIVE calculation: B + A (base address + r_addend)
  251. library[library_index].base_address = 0x7f9e10000000
  252. reloc->r_offset = 0x7f9e10000000+0x00000020ed88=0x7f9e1020ed88
  253. reloc->r_addend = 0x7f9e10000000+0x0000000026a0=0x7f9e100026a0
  254. ((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x7f9e1020ed88
  255. *((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x26a0
  256. *((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x1
  257. 0x7f9e1020ed88 = 0x7f9e100026a0
  258. ((char*)library[library_index].base_address + reloc->r_offset) = 0x7f9e1020ed88
  259. i = 1, ELF64_R_TYPE(reloc->r_info) =
  260. R_X86_64_RELATIVE calculation: B + A (base address + r_addend)
  261. library[library_index].base_address = 0x7f9e10000000
  262. reloc->r_offset = 0x7f9e10000000+0x00000020ed98=0x7f9e1020ed98
  263. reloc->r_addend = 0x7f9e10000000+0x000000002660=0x7f9e10002660
  264. ((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x7f9e1020ed98
  265. *((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x2660
  266. *((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x1
  267. 0x7f9e1020ed98 = 0x7f9e10002660
  268. ((char*)library[library_index].base_address + reloc->r_offset) = 0x7f9e1020ed98
  269. i = 2, ELF64_R_TYPE(reloc->r_info) =
  270. R_X86_64_RELATIVE calculation: B + A (base address + r_addend)
  271. library[library_index].base_address = 0x7f9e10000000
  272. reloc->r_offset = 0x7f9e10000000+0x00000020f238=0x7f9e1020f238
  273. reloc->r_addend = 0x7f9e10000000+0x00000020f238=0x7f9e1020f238
  274. ((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x7f9e1020f238
  275. *((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x20f238
  276. *((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x1
  277. 0x7f9e1020f238 = 0x7f9e1020f238
  278. ((char*)library[library_index].base_address + reloc->r_offset) = 0x7f9e1020f238
  279. i = 3, ELF64_R_TYPE(reloc->r_info) =
  280. R_X86_64_RELATIVE calculation: B + A (base address + r_addend)
  281. library[library_index].base_address = 0x7f9e10000000
  282. reloc->r_offset = 0x7f9e10000000+0x00000020f258=0x7f9e1020f258
  283. reloc->r_addend = 0x7f9e10000000+0x00000000c700=0x7f9e1000c700
  284. ((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x7f9e1020f258
  285. *((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0xc700
  286. *((char**)((char*)library[library_index].base_address + reloc->r_offset)) = 0x1
  287. 0x7f9e1020f258 = 0x7f9e1000c700
  288. ((char*)library[library_index].base_address + reloc->r_offset) = 0x7f9e1020f258
  289. i = 4, ELF64_R_TYPE(reloc->r_info) =
  290. R_X86_64_64 calculation: S + A (symbol value + r_addend)
  291. reloc->r_offset = 0x00000020ed80
  292. attempting to look up symbol, index = 56
  293. looking up index 56 of table 3
  294. requested symbol name for index 56 is init_aux
  295. symbol = 13965 (0x00000000368d)
  296. ((char*)library[library_index].mapping_start + reloc->r_offset) = 0x7f9e1020ed80
  297. i = 5, ELF64_R_TYPE(reloc->r_info) =
  298. R_X86_64_64 calculation: S + A (symbol value + r_addend)
  299. reloc->r_offset = 0x00000020ed90
  300. attempting to look up symbol, index = 65
  301. looking up index 65 of table 3
  302. requested symbol name for index 65 is currentaux
  303. symbol = 17710 (0x00000000452e)
  304. ((char*)library[library_index].mapping_start + reloc->r_offset) = 0x7f9e1020ed90
  305. i = 6, ELF64_R_TYPE(reloc->r_info) =
  306. R_X86_64_GLOB_DAT calculation: S (symbol value)
  307. reloc->r_offset = 0x7f9e10000000+0x00000020ef60=0x7f9e1020ef60
  308. attempting to look up symbol, index = 82
  309. looking up index 82 of table 3
  310. requested symbol name for index 82 is findyourself_save_path
  311. symbol = 2159232 (0x00000020f280)
  312. 0x7f9e1020ef60 = 0x7f9e1020f280
  313. i = 7, ELF64_R_TYPE(reloc->r_info) =
  314. R_X86_64_GLOB_DAT calculation: S (symbol value)
  315. reloc->r_offset = 0x7f9e10000000+0x00000020ef68=0x7f9e1020ef68
  316. attempting to look up symbol, index = 4
  317. looking up index 4 of table 3
  318. requested symbol name for index 4 is _ITM_deregisterTMCloneTable
  319. symbol = 0 ( (nil))
  320. 0x7f9e1020ef68 = 0x7f9e10000000
  321. i = 8, ELF64_R_TYPE(reloc->r_info) =
  322. R_X86_64_GLOB_DAT calculation: S (symbol value)
  323. reloc->r_offset = 0x7f9e10000000+0x00000020ef70=0x7f9e1020ef70
  324. attempting to look up symbol, index = 76
  325. looking up index 76 of table 3
  326. requested symbol name for index 76 is findyourself_save_pwd
  327. symbol = 2163328 (0x000000210280)
  328. 0x7f9e1020ef70 = 0x7f9e10210280
  329. i = 9, ELF64_R_TYPE(reloc->r_info) =
  330. R_X86_64_GLOB_DAT calculation: S (symbol value)
  331. reloc->r_offset = 0x7f9e10000000+0x00000020ef78=0x7f9e1020ef78
  332. attempting to look up symbol, index = 125
  333. looking up index 125 of table 3
  334. requested symbol name for index 125 is libstring_argc
  335. symbol = 2167424 (0x000000211280)
  336. 0x7f9e1020ef78 = 0x7f9e10211280
  337. i = 10, ELF64_R_TYPE(reloc->r_info) =
  338. R_X86_64_GLOB_DAT calculation: S (symbol value)
  339. reloc->r_offset = 0x7f9e10000000+0x00000020ef80=0x7f9e1020ef80
  340. attempting to look up symbol, index = 91
  341. looking up index 91 of table 3
  342. requested symbol name for index 91 is findyourself_debug
  343. symbol = 2159184 (0x00000020f250)
  344. 0x7f9e1020ef80 = 0x7f9e1020f250
  345. i = 11, ELF64_R_TYPE(reloc->r_info) =
  346. R_X86_64_GLOB_DAT calculation: S (symbol value)
  347. reloc->r_offset = 0x7f9e10000000+0x00000020ef88=0x7f9e1020ef88
  348. attempting to look up symbol, index = 107
  349. looking up index 107 of table 3
  350. requested symbol name for index 107 is findyourself_path_separator
  351. symbol = 2159168 (0x00000020f240)
  352. 0x7f9e1020ef88 = 0x7f9e1020f240
  353. i = 12, ELF64_R_TYPE(reloc->r_info) =
  354. R_X86_64_GLOB_DAT calculation: S (symbol value)
  355. reloc->r_offset = 0x7f9e10000000+0x00000020ef90=0x7f9e1020ef90
  356. attempting to look up symbol, index = 111
  357. looking up index 111 of table 3
  358. requested symbol name for index 111 is libstring_env
  359. symbol = 2159208 (0x00000020f268)
  360. 0x7f9e1020ef90 = 0x7f9e1020f268
  361. i = 13, ELF64_R_TYPE(reloc->r_info) =
  362. R_X86_64_GLOB_DAT calculation: S (symbol value)
  363. reloc->r_offset = 0x7f9e10000000+0x00000020ef98=0x7f9e1020ef98
  364. attempting to look up symbol, index = 26
  365. looking up index 26 of table 3
  366. requested symbol name for index 26 is __gmon_start__
  367. symbol = 0 ( (nil))
  368. 0x7f9e1020ef98 = 0x7f9e10000000
  369. i = 14, ELF64_R_TYPE(reloc->r_info) =
  370. R_X86_64_GLOB_DAT calculation: S (symbol value)
  371. reloc->r_offset = 0x7f9e10000000+0x00000020efa0=0x7f9e1020efa0
  372. attempting to look up symbol, index = 27
  373. looking up index 27 of table 3
  374. requested symbol name for index 27 is environ
  375. symbol = 0 ( (nil))
  376. 0x7f9e1020efa0 = 0x7f9e10000000
  377. i = 15, ELF64_R_TYPE(reloc->r_info) =
  378. R_X86_64_GLOB_DAT calculation: S (symbol value)
  379. reloc->r_offset = 0x7f9e10000000+0x00000020efa8=0x7f9e1020efa8
  380. attempting to look up symbol, index = 72
  381. looking up index 72 of table 3
  382. requested symbol name for index 72 is findyourself_path_list_separator
  383. symbol = 2159176 (0x00000020f248)
  384. 0x7f9e1020efa8 = 0x7f9e1020f248
  385. i = 16, ELF64_R_TYPE(reloc->r_info) =
  386. R_X86_64_GLOB_DAT calculation: S (symbol value)
  387. reloc->r_offset = 0x7f9e10000000+0x00000020efb0=0x7f9e1020efb0
  388. attempting to look up symbol, index = 101
  389. looking up index 101 of table 3
  390. requested symbol name for index 101 is findyourself_initialized
  391. symbol = 2159216 (0x00000020f270)
  392. 0x7f9e1020efb0 = 0x7f9e1020f270
  393. i = 17, ELF64_R_TYPE(reloc->r_info) =
  394. R_X86_64_GLOB_DAT calculation: S (symbol value)
  395. reloc->r_offset = 0x7f9e10000000+0x00000020efb8=0x7f9e1020efb8
  396. attempting to look up symbol, index = 69
  397. looking up index 69 of table 3
  398. requested symbol name for index 69 is findyourself_verbose
  399. symbol = 2159185 (0x00000020f251)
  400. 0x7f9e1020efb8 = 0x7f9e1020f251
  401. i = 18, ELF64_R_TYPE(reloc->r_info) =
  402. R_X86_64_GLOB_DAT calculation: S (symbol value)
  403. reloc->r_offset = 0x7f9e10000000+0x00000020efc0=0x7f9e1020efc0
  404. attempting to look up symbol, index = 67
  405. looking up index 67 of table 3
  406. requested symbol name for index 67 is libstring_argv
  407. symbol = 2167432 (0x000000211288)
  408. 0x7f9e1020efc0 = 0x7f9e10211288
  409. i = 19, ELF64_R_TYPE(reloc->r_info) =
  410. R_X86_64_GLOB_DAT calculation: S (symbol value)
  411. reloc->r_offset = 0x7f9e10000000+0x00000020efc8=0x7f9e1020efc8
  412. attempting to look up symbol, index = 57
  413. looking up index 57 of table 3
  414. requested symbol name for index 57 is findyourself_path_separator_as_string
  415. symbol = 2159169 (0x00000020f241)
  416. 0x7f9e1020efc8 = 0x7f9e1020f241
  417. i = 20, ELF64_R_TYPE(reloc->r_info) =
  418. R_X86_64_GLOB_DAT calculation: S (symbol value)
  419. reloc->r_offset = 0x7f9e10000000+0x00000020efd0=0x7f9e1020efd0
  420. attempting to look up symbol, index = 120
  421. looking up index 120 of table 3
  422. requested symbol name for index 120 is findyourself_save_argv0
  423. symbol = 2167456 (0x0000002112a0)
  424. 0x7f9e1020efd0 = 0x7f9e102112a0
  425. i = 21, ELF64_R_TYPE(reloc->r_info) =
  426. R_X86_64_GLOB_DAT calculation: S (symbol value)
  427. reloc->r_offset = 0x7f9e10000000+0x00000020efd8=0x7f9e1020efd8
  428. attempting to look up symbol, index = 41
  429. looking up index 41 of table 3
  430. requested symbol name for index 41 is __environ
  431. symbol = 0 ( (nil))
  432. 0x7f9e1020efd8 = 0x7f9e10000000
  433. i = 22, ELF64_R_TYPE(reloc->r_info) =
  434. R_X86_64_GLOB_DAT calculation: S (symbol value)
  435. reloc->r_offset = 0x7f9e10000000+0x00000020efe0=0x7f9e1020efe0
  436. attempting to look up symbol, index = 44
  437. looking up index 44 of table 3
  438. requested symbol name for index 44 is _ITM_registerTMCloneTable
  439. symbol = 0 ( (nil))
  440. 0x7f9e1020efe0 = 0x7f9e10000000
  441. i = 23, ELF64_R_TYPE(reloc->r_info) =
  442. R_X86_64_GLOB_DAT calculation: S (symbol value)
  443. reloc->r_offset = 0x7f9e10000000+0x00000020efe8=0x7f9e1020efe8
  444. attempting to look up symbol, index = 47
  445. looking up index 47 of table 3
  446. requested symbol name for index 47 is __cxa_finalize
  447. symbol = 0 ( (nil))
  448. 0x7f9e1020efe8 = 0x7f9e10000000
  449. i = 24, ELF64_R_TYPE(reloc->r_info) =
  450. R_X86_64_GLOB_DAT calculation: S (symbol value)
  451. reloc->r_offset = 0x7f9e10000000+0x00000020eff0=0x7f9e1020eff0
  452. attempting to look up symbol, index = 59
  453. looking up index 59 of table 3
  454. requested symbol name for index 59 is global_quiet
  455. symbol = 2159192 (0x00000020f258)
  456. 0x7f9e1020eff0 = 0x7f9e1020f258
  457. i = 25, ELF64_R_TYPE(reloc->r_info) =
  458. R_X86_64_GLOB_DAT calculation: S (symbol value)
  459. reloc->r_offset = 0x7f9e10000000+0x00000020eff8=0x7f9e1020eff8
  460. attempting to look up symbol, index = 49
  461. looking up index 49 of table 3
  462. requested symbol name for index 49 is stderr
  463. symbol = 0 ( (nil))
  464. 0x7f9e1020eff8 = 0x7f9e10000000
  465. called get_dynamic_entry
  466. testing if DT_NEEDED == DT_JMPREL
  467. testing if DT_INIT == DT_JMPREL
  468. testing if DT_FINI == DT_JMPREL
  469. testing if DT_INIT_ARRAY == DT_JMPREL
  470. testing if DT_INIT_ARRAYSZ == DT_JMPREL
  471. testing if DT_FINI_ARRAY == DT_JMPREL
  472. testing if DT_FINI_ARRAYSZ == DT_JMPREL
  473. testing if 1879047925 == DT_JMPREL
  474. testing if DT_STRTAB == DT_JMPREL
  475. testing if DT_SYMTAB == DT_JMPREL
  476. testing if DT_STRSZ == DT_JMPREL
  477. testing if DT_SYMENT == DT_JMPREL
  478. testing if DT_PLTGOT == DT_JMPREL
  479. testing if DT_PLTRELSZ == DT_JMPREL
  480. testing if DT_PLTREL == DT_JMPREL
  481. testing if DT_JMPREL == DT_JMPREL
  482. i = 0, ELF64_R_TYPE(reloc->r_info) =
  483. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  484. library[library_index].mapping_start = 0x7f9e10000000
  485. reloc->r_offset = 0x7f9e10000000+0x00000020f018=0x7f9e1020f018
  486. attempting to look up symbol, index = 1
  487. looking up index 1 of table 3
  488. requested symbol name for index 1 is getenv
  489. symbol = 0 ( (nil))
  490. 0x7f9e1020f018 = 0x7f9e10000000
  491. i = 1, ELF64_R_TYPE(reloc->r_info) =
  492. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  493. library[library_index].mapping_start = 0x7f9e10000000
  494. reloc->r_offset = 0x7f9e10000000+0x00000020f020=0x7f9e1020f020
  495. attempting to look up symbol, index = 75
  496. looking up index 75 of table 3
  497. requested symbol name for index 75 is getaux
  498. symbol = 14065 (0x0000000036f1)
  499. 0x7f9e1020f020 = 0x7f9e100036f1
  500. i = 2, ELF64_R_TYPE(reloc->r_info) =
  501. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  502. library[library_index].mapping_start = 0x7f9e10000000
  503. reloc->r_offset = 0x7f9e10000000+0x00000020f028=0x7f9e1020f028
  504. attempting to look up symbol, index = 2
  505. looking up index 2 of table 3
  506. requested symbol name for index 2 is free
  507. symbol = 0 ( (nil))
  508. 0x7f9e1020f028 = 0x7f9e10000000
  509. i = 3, ELF64_R_TYPE(reloc->r_info) =
  510. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  511. library[library_index].mapping_start = 0x7f9e10000000
  512. reloc->r_offset = 0x7f9e10000000+0x00000020f030=0x7f9e1020f030
  513. attempting to look up symbol, index = 102
  514. looking up index 102 of table 3
  515. requested symbol name for index 102 is bcmpcr_
  516. symbol = 12251 (0x000000002fdb)
  517. 0x7f9e1020f030 = 0x7f9e10002fdb
  518. i = 4, ELF64_R_TYPE(reloc->r_info) =
  519. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  520. library[library_index].mapping_start = 0x7f9e10000000
  521. reloc->r_offset = 0x7f9e10000000+0x00000020f038=0x7f9e1020f038
  522. attempting to look up symbol, index = 3
  523. looking up index 3 of table 3
  524. requested symbol name for index 3 is strncpy
  525. symbol = 0 ( (nil))
  526. 0x7f9e1020f038 = 0x7f9e10000000
  527. i = 5, ELF64_R_TYPE(reloc->r_info) =
  528. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  529. library[library_index].mapping_start = 0x7f9e10000000
  530. reloc->r_offset = 0x7f9e10000000+0x00000020f040=0x7f9e1020f040
  531. attempting to look up symbol, index = 5
  532. looking up index 5 of table 3
  533. requested symbol name for index 5 is _exit
  534. symbol = 0 ( (nil))
  535. 0x7f9e1020f040 = 0x7f9e10000000
  536. i = 6, ELF64_R_TYPE(reloc->r_info) =
  537. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  538. library[library_index].mapping_start = 0x7f9e10000000
  539. reloc->r_offset = 0x7f9e10000000+0x00000020f048=0x7f9e1020f048
  540. attempting to look up symbol, index = 70
  541. looking up index 70 of table 3
  542. requested symbol name for index 70 is bcmp_q
  543. symbol = 9898 (0x0000000026aa)
  544. 0x7f9e1020f048 = 0x7f9e100026aa
  545. i = 7, ELF64_R_TYPE(reloc->r_info) =
  546. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  547. library[library_index].mapping_start = 0x7f9e10000000
  548. reloc->r_offset = 0x7f9e10000000+0x00000020f050=0x7f9e1020f050
  549. attempting to look up symbol, index = 53
  550. looking up index 53 of table 3
  551. requested symbol name for index 53 is lseek_stringc
  552. symbol = 37663 (0x00000000931f)
  553. 0x7f9e1020f050 = 0x7f9e1000931f
  554. i = 8, ELF64_R_TYPE(reloc->r_info) =
  555. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  556. library[library_index].mapping_start = 0x7f9e10000000
  557. reloc->r_offset = 0x7f9e10000000+0x00000020f058=0x7f9e1020f058
  558. attempting to look up symbol, index = 6
  559. looking up index 6 of table 3
  560. requested symbol name for index 6 is readlink
  561. symbol = 0 ( (nil))
  562. 0x7f9e1020f058 = 0x7f9e10000000
  563. i = 9, ELF64_R_TYPE(reloc->r_info) =
  564. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  565. library[library_index].mapping_start = 0x7f9e10000000
  566. reloc->r_offset = 0x7f9e10000000+0x00000020f060=0x7f9e1020f060
  567. attempting to look up symbol, index = 7
  568. looking up index 7 of table 3
  569. requested symbol name for index 7 is write
  570. symbol = 0 ( (nil))
  571. 0x7f9e1020f060 = 0x7f9e10000000
  572. i = 10, ELF64_R_TYPE(reloc->r_info) =
  573. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  574. library[library_index].mapping_start = 0x7f9e10000000
  575. reloc->r_offset = 0x7f9e10000000+0x00000020f068=0x7f9e1020f068
  576. attempting to look up symbol, index = 8
  577. looking up index 8 of table 3
  578. requested symbol name for index 8 is getpid
  579. symbol = 0 ( (nil))
  580. 0x7f9e1020f068 = 0x7f9e10000000
  581. i = 11, ELF64_R_TYPE(reloc->r_info) =
  582. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  583. library[library_index].mapping_start = 0x7f9e10000000
  584. reloc->r_offset = 0x7f9e10000000+0x00000020f070=0x7f9e1020f070
  585. attempting to look up symbol, index = 55
  586. looking up index 55 of table 3
  587. requested symbol name for index 55 is round_up
  588. symbol = 13368 (0x000000003438)
  589. 0x7f9e1020f070 = 0x7f9e10003438
  590. i = 12, ELF64_R_TYPE(reloc->r_info) =
  591. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  592. library[library_index].mapping_start = 0x7f9e10000000
  593. reloc->r_offset = 0x7f9e10000000+0x00000020f078=0x7f9e1020f078
  594. attempting to look up symbol, index = 73
  595. looking up index 73 of table 3
  596. requested symbol name for index 73 is init_argX
  597. symbol = 13792 (0x0000000035e0)
  598. 0x7f9e1020f078 = 0x7f9e100035e0
  599. i = 13, ELF64_R_TYPE(reloc->r_info) =
  600. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  601. library[library_index].mapping_start = 0x7f9e10000000
  602. reloc->r_offset = 0x7f9e10000000+0x00000020f080=0x7f9e1020f080
  603. attempting to look up symbol, index = 9
  604. looking up index 9 of table 3
  605. requested symbol name for index 9 is strlen
  606. symbol = 0 ( (nil))
  607. 0x7f9e1020f080 = 0x7f9e10000000
  608. i = 14, ELF64_R_TYPE(reloc->r_info) =
  609. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  610. library[library_index].mapping_start = 0x7f9e10000000
  611. reloc->r_offset = 0x7f9e10000000+0x00000020f088=0x7f9e1020f088
  612. attempting to look up symbol, index = 10
  613. looking up index 10 of table 3
  614. requested symbol name for index 10 is __lxstat
  615. symbol = 0 ( (nil))
  616. 0x7f9e1020f088 = 0x7f9e10000000
  617. i = 15, ELF64_R_TYPE(reloc->r_info) =
  618. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  619. library[library_index].mapping_start = 0x7f9e10000000
  620. reloc->r_offset = 0x7f9e10000000+0x00000020f090=0x7f9e1020f090
  621. attempting to look up symbol, index = 11
  622. looking up index 11 of table 3
  623. requested symbol name for index 11 is chdir
  624. symbol = 0 ( (nil))
  625. 0x7f9e1020f090 = 0x7f9e10000000
  626. i = 16, ELF64_R_TYPE(reloc->r_info) =
  627. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  628. library[library_index].mapping_start = 0x7f9e10000000
  629. reloc->r_offset = 0x7f9e10000000+0x00000020f098=0x7f9e1020f098
  630. attempting to look up symbol, index = 12
  631. looking up index 12 of table 3
  632. requested symbol name for index 12 is __stack_chk_fail
  633. symbol = 0 ( (nil))
  634. 0x7f9e1020f098 = 0x7f9e10000000
  635. i = 17, ELF64_R_TYPE(reloc->r_info) =
  636. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  637. library[library_index].mapping_start = 0x7f9e10000000
  638. reloc->r_offset = 0x7f9e10000000+0x00000020f0a0=0x7f9e1020f0a0
  639. attempting to look up symbol, index = 99
  640. looking up index 99 of table 3
  641. requested symbol name for index 99 is strchrb
  642. symbol = 21985 (0x0000000055e1)
  643. 0x7f9e1020f0a0 = 0x7f9e100055e1
  644. i = 18, ELF64_R_TYPE(reloc->r_info) =
  645. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  646. library[library_index].mapping_start = 0x7f9e10000000
  647. reloc->r_offset = 0x7f9e10000000+0x00000020f0a8=0x7f9e1020f0a8
  648. attempting to look up symbol, index = 13
  649. looking up index 13 of table 3
  650. requested symbol name for index 13 is strchr
  651. symbol = 0 ( (nil))
  652. 0x7f9e1020f0a8 = 0x7f9e10000000
  653. i = 19, ELF64_R_TYPE(reloc->r_info) =
  654. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  655. library[library_index].mapping_start = 0x7f9e10000000
  656. reloc->r_offset = 0x7f9e10000000+0x00000020f0b0=0x7f9e1020f0b0
  657. attempting to look up symbol, index = 14
  658. looking up index 14 of table 3
  659. requested symbol name for index 14 is printf
  660. symbol = 0 ( (nil))
  661. 0x7f9e1020f0b0 = 0x7f9e10000000
  662. i = 20, ELF64_R_TYPE(reloc->r_info) =
  663. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  664. library[library_index].mapping_start = 0x7f9e10000000
  665. reloc->r_offset = 0x7f9e10000000+0x00000020f0b8=0x7f9e1020f0b8
  666. attempting to look up symbol, index = 15
  667. looking up index 15 of table 3
  668. requested symbol name for index 15 is dirname
  669. symbol = 0 ( (nil))
  670. 0x7f9e1020f0b8 = 0x7f9e10000000
  671. i = 21, ELF64_R_TYPE(reloc->r_info) =
  672. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  673. library[library_index].mapping_start = 0x7f9e10000000
  674. reloc->r_offset = 0x7f9e10000000+0x00000020f0c0=0x7f9e1020f0c0
  675. attempting to look up symbol, index = 16
  676. looking up index 16 of table 3
  677. requested symbol name for index 16 is lseek
  678. symbol = 0 ( (nil))
  679. 0x7f9e1020f0c0 = 0x7f9e10000000
  680. i = 22, ELF64_R_TYPE(reloc->r_info) =
  681. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  682. library[library_index].mapping_start = 0x7f9e10000000
  683. reloc->r_offset = 0x7f9e10000000+0x00000020f0c8=0x7f9e1020f0c8
  684. attempting to look up symbol, index = 17
  685. looking up index 17 of table 3
  686. requested symbol name for index 17 is __assert_fail
  687. symbol = 0 ( (nil))
  688. 0x7f9e1020f0c8 = 0x7f9e10000000
  689. i = 23, ELF64_R_TYPE(reloc->r_info) =
  690. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  691. library[library_index].mapping_start = 0x7f9e10000000
  692. reloc->r_offset = 0x7f9e10000000+0x00000020f0d0=0x7f9e1020f0d0
  693. attempting to look up symbol, index = 103
  694. looking up index 103 of table 3
  695. requested symbol name for index 103 is strstrb
  696. symbol = 22785 (0x000000005901)
  697. 0x7f9e1020f0d0 = 0x7f9e10005901
  698. i = 24, ELF64_R_TYPE(reloc->r_info) =
  699. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  700. library[library_index].mapping_start = 0x7f9e10000000
  701. reloc->r_offset = 0x7f9e10000000+0x00000020f0d8=0x7f9e1020f0d8
  702. attempting to look up symbol, index = 18
  703. looking up index 18 of table 3
  704. requested symbol name for index 18 is getcwd
  705. symbol = 0 ( (nil))
  706. 0x7f9e1020f0d8 = 0x7f9e10000000
  707. i = 25, ELF64_R_TYPE(reloc->r_info) =
  708. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  709. library[library_index].mapping_start = 0x7f9e10000000
  710. reloc->r_offset = 0x7f9e10000000+0x00000020f0e0=0x7f9e1020f0e0
  711. attempting to look up symbol, index = 19
  712. looking up index 19 of table 3
  713. requested symbol name for index 19 is strncat
  714. symbol = 0 ( (nil))
  715. 0x7f9e1020f0e0 = 0x7f9e10000000
  716. i = 26, ELF64_R_TYPE(reloc->r_info) =
  717. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  718. library[library_index].mapping_start = 0x7f9e10000000
  719. reloc->r_offset = 0x7f9e10000000+0x00000020f0e8=0x7f9e1020f0e8
  720. attempting to look up symbol, index = 20
  721. looking up index 20 of table 3
  722. requested symbol name for index 20 is close
  723. symbol = 0 ( (nil))
  724. 0x7f9e1020f0e8 = 0x7f9e10000000
  725. i = 27, ELF64_R_TYPE(reloc->r_info) =
  726. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  727. library[library_index].mapping_start = 0x7f9e10000000
  728. reloc->r_offset = 0x7f9e10000000+0x00000020f0f0=0x7f9e1020f0f0
  729. attempting to look up symbol, index = 79
  730. looking up index 79 of table 3
  731. requested symbol name for index 79 is bcmp_qr
  732. symbol = 11430 (0x000000002ca6)
  733. 0x7f9e1020f0f0 = 0x7f9e10002ca6
  734. i = 28, ELF64_R_TYPE(reloc->r_info) =
  735. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  736. library[library_index].mapping_start = 0x7f9e10000000
  737. reloc->r_offset = 0x7f9e10000000+0x00000020f0f8=0x7f9e1020f0f8
  738. attempting to look up symbol, index = 21
  739. looking up index 21 of table 3
  740. requested symbol name for index 21 is fputc
  741. symbol = 0 ( (nil))
  742. 0x7f9e1020f0f8 = 0x7f9e10000000
  743. i = 29, ELF64_R_TYPE(reloc->r_info) =
  744. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  745. library[library_index].mapping_start = 0x7f9e10000000
  746. reloc->r_offset = 0x7f9e10000000+0x00000020f100=0x7f9e1020f100
  747. attempting to look up symbol, index = 22
  748. looking up index 22 of table 3
  749. requested symbol name for index 22 is strtok_r
  750. symbol = 0 ( (nil))
  751. 0x7f9e1020f100 = 0x7f9e10000000
  752. i = 30, ELF64_R_TYPE(reloc->r_info) =
  753. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  754. library[library_index].mapping_start = 0x7f9e10000000
  755. reloc->r_offset = 0x7f9e10000000+0x00000020f108=0x7f9e1020f108
  756. attempting to look up symbol, index = 23
  757. looking up index 23 of table 3
  758. requested symbol name for index 23 is read
  759. symbol = 0 ( (nil))
  760. 0x7f9e1020f108 = 0x7f9e10000000
  761. i = 31, ELF64_R_TYPE(reloc->r_info) =
  762. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  763. library[library_index].mapping_start = 0x7f9e10000000
  764. reloc->r_offset = 0x7f9e10000000+0x00000020f110=0x7f9e1020f110
  765. attempting to look up symbol, index = 117
  766. looking up index 117 of table 3
  767. requested symbol name for index 117 is strncpyb
  768. symbol = 22155 (0x00000000568b)
  769. 0x7f9e1020f110 = 0x7f9e1000568b
  770. i = 32, ELF64_R_TYPE(reloc->r_info) =
  771. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  772. library[library_index].mapping_start = 0x7f9e10000000
  773. reloc->r_offset = 0x7f9e10000000+0x00000020f118=0x7f9e1020f118
  774. attempting to look up symbol, index = 104
  775. looking up index 104 of table 3
  776. requested symbol name for index 104 is init_env
  777. symbol = 13595 (0x00000000351b)
  778. 0x7f9e1020f118 = 0x7f9e1000351b
  779. i = 33, ELF64_R_TYPE(reloc->r_info) =
  780. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  781. library[library_index].mapping_start = 0x7f9e10000000
  782. reloc->r_offset = 0x7f9e10000000+0x00000020f120=0x7f9e1020f120
  783. attempting to look up symbol, index = 95
  784. looking up index 95 of table 3
  785. requested symbol name for index 95 is strncatb
  786. symbol = 22370 (0x000000005762)
  787. 0x7f9e1020f120 = 0x7f9e10005762
  788. i = 34, ELF64_R_TYPE(reloc->r_info) =
  789. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  790. library[library_index].mapping_start = 0x7f9e10000000
  791. reloc->r_offset = 0x7f9e10000000+0x00000020f128=0x7f9e1020f128
  792. attempting to look up symbol, index = 25
  793. looking up index 25 of table 3
  794. requested symbol name for index 25 is fprintf
  795. symbol = 0 ( (nil))
  796. 0x7f9e1020f128 = 0x7f9e10000000
  797. i = 35, ELF64_R_TYPE(reloc->r_info) =
  798. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  799. library[library_index].mapping_start = 0x7f9e10000000
  800. reloc->r_offset = 0x7f9e10000000+0x00000020f130=0x7f9e1020f130
  801. attempting to look up symbol, index = 28
  802. looking up index 28 of table 3
  803. requested symbol name for index 28 is realpath
  804. symbol = 0 ( (nil))
  805. 0x7f9e1020f130 = 0x7f9e10000000
  806. i = 36, ELF64_R_TYPE(reloc->r_info) =
  807. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  808. library[library_index].mapping_start = 0x7f9e10000000
  809. reloc->r_offset = 0x7f9e10000000+0x00000020f138=0x7f9e1020f138
  810. attempting to look up symbol, index = 83
  811. looking up index 83 of table 3
  812. requested symbol name for index 83 is bcmpcqr_
  813. symbol = 12850 (0x000000003232)
  814. 0x7f9e1020f138 = 0x7f9e10003232
  815. i = 37, ELF64_R_TYPE(reloc->r_info) =
  816. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  817. library[library_index].mapping_start = 0x7f9e10000000
  818. reloc->r_offset = 0x7f9e10000000+0x00000020f140=0x7f9e1020f140
  819. attempting to look up symbol, index = 29
  820. looking up index 29 of table 3
  821. requested symbol name for index 29 is memcpy
  822. symbol = 0 ( (nil))
  823. 0x7f9e1020f140 = 0x7f9e10000000
  824. i = 38, ELF64_R_TYPE(reloc->r_info) =
  825. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  826. library[library_index].mapping_start = 0x7f9e10000000
  827. reloc->r_offset = 0x7f9e10000000+0x00000020f148=0x7f9e1020f148
  828. attempting to look up symbol, index = 30
  829. looking up index 30 of table 3
  830. requested symbol name for index 30 is __xpg_basename
  831. symbol = 0 ( (nil))
  832. 0x7f9e1020f148 = 0x7f9e10000000
  833. i = 39, ELF64_R_TYPE(reloc->r_info) =
  834. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  835. library[library_index].mapping_start = 0x7f9e10000000
  836. reloc->r_offset = 0x7f9e10000000+0x00000020f150=0x7f9e1020f150
  837. attempting to look up symbol, index = 31
  838. looking up index 31 of table 3
  839. requested symbol name for index 31 is __xstat
  840. symbol = 0 ( (nil))
  841. 0x7f9e1020f150 = 0x7f9e10000000
  842. i = 40, ELF64_R_TYPE(reloc->r_info) =
  843. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  844. library[library_index].mapping_start = 0x7f9e10000000
  845. reloc->r_offset = 0x7f9e10000000+0x00000020f158=0x7f9e1020f158
  846. attempting to look up symbol, index = 32
  847. looking up index 32 of table 3
  848. requested symbol name for index 32 is pause
  849. symbol = 0 ( (nil))
  850. 0x7f9e1020f158 = 0x7f9e10000000
  851. i = 41, ELF64_R_TYPE(reloc->r_info) =
  852. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  853. library[library_index].mapping_start = 0x7f9e10000000
  854. reloc->r_offset = 0x7f9e10000000+0x00000020f160=0x7f9e1020f160
  855. attempting to look up symbol, index = 96
  856. looking up index 96 of table 3
  857. requested symbol name for index 96 is findyourself_init_
  858. symbol = 40974 (0x00000000a00e)
  859. 0x7f9e1020f160 = 0x7f9e1000a00e
  860. i = 42, ELF64_R_TYPE(reloc->r_info) =
  861. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  862. library[library_index].mapping_start = 0x7f9e10000000
  863. reloc->r_offset = 0x7f9e10000000+0x00000020f168=0x7f9e1020f168
  864. attempting to look up symbol, index = 33
  865. looking up index 33 of table 3
  866. requested symbol name for index 33 is malloc
  867. symbol = 0 ( (nil))
  868. 0x7f9e1020f168 = 0x7f9e10000000
  869. i = 43, ELF64_R_TYPE(reloc->r_info) =
  870. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  871. library[library_index].mapping_start = 0x7f9e10000000
  872. reloc->r_offset = 0x7f9e10000000+0x00000020f170=0x7f9e1020f170
  873. attempting to look up symbol, index = 97
  874. looking up index 97 of table 3
  875. requested symbol name for index 97 is resolve_debug
  876. symbol = 24081 (0x000000005e11)
  877. 0x7f9e1020f170 = 0x7f9e10005e11
  878. i = 44, ELF64_R_TYPE(reloc->r_info) =
  879. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  880. library[library_index].mapping_start = 0x7f9e10000000
  881. reloc->r_offset = 0x7f9e10000000+0x00000020f178=0x7f9e1020f178
  882. attempting to look up symbol, index = 129
  883. looking up index 129 of table 3
  884. requested symbol name for index 129 is bcmpc_
  885. symbol = 10722 (0x0000000029e2)
  886. 0x7f9e1020f178 = 0x7f9e100029e2
  887. i = 45, ELF64_R_TYPE(reloc->r_info) =
  888. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  889. library[library_index].mapping_start = 0x7f9e10000000
  890. reloc->r_offset = 0x7f9e10000000+0x00000020f180=0x7f9e1020f180
  891. attempting to look up symbol, index = 68
  892. looking up index 68 of table 3
  893. requested symbol name for index 68 is strlenb
  894. symbol = 21876 (0x000000005574)
  895. 0x7f9e1020f180 = 0x7f9e10005574
  896. i = 46, ELF64_R_TYPE(reloc->r_info) =
  897. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  898. library[library_index].mapping_start = 0x7f9e10000000
  899. reloc->r_offset = 0x7f9e10000000+0x00000020f188=0x7f9e1020f188
  900. attempting to look up symbol, index = 34
  901. looking up index 34 of table 3
  902. requested symbol name for index 34 is realloc
  903. symbol = 0 ( (nil))
  904. 0x7f9e1020f188 = 0x7f9e10000000
  905. i = 47, ELF64_R_TYPE(reloc->r_info) =
  906. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  907. library[library_index].mapping_start = 0x7f9e10000000
  908. reloc->r_offset = 0x7f9e10000000+0x00000020f190=0x7f9e1020f190
  909. attempting to look up symbol, index = 84
  910. looking up index 84 of table 3
  911. requested symbol name for index 84 is bytecmpq
  912. symbol = 10053 (0x000000002745)
  913. 0x7f9e1020f190 = 0x7f9e10002745
  914. i = 48, ELF64_R_TYPE(reloc->r_info) =
  915. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  916. library[library_index].mapping_start = 0x7f9e10000000
  917. reloc->r_offset = 0x7f9e10000000+0x00000020f198=0x7f9e1020f198
  918. attempting to look up symbol, index = 60
  919. looking up index 60 of table 3
  920. requested symbol name for index 60 is bcmpcq_
  921. symbol = 11223 (0x000000002bd7)
  922. 0x7f9e1020f198 = 0x7f9e10002bd7
  923. i = 49, ELF64_R_TYPE(reloc->r_info) =
  924. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  925. library[library_index].mapping_start = 0x7f9e10000000
  926. reloc->r_offset = 0x7f9e10000000+0x00000020f1a0=0x7f9e1020f1a0
  927. attempting to look up symbol, index = 35
  928. looking up index 35 of table 3
  929. requested symbol name for index 35 is getauxval
  930. symbol = 0 ( (nil))
  931. 0x7f9e1020f1a0 = 0x7f9e10000000
  932. i = 50, ELF64_R_TYPE(reloc->r_info) =
  933. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  934. library[library_index].mapping_start = 0x7f9e10000000
  935. reloc->r_offset = 0x7f9e10000000+0x00000020f1a8=0x7f9e1020f1a8
  936. attempting to look up symbol, index = 36
  937. looking up index 36 of table 3
  938. requested symbol name for index 36 is memmove
  939. symbol = 0 ( (nil))
  940. 0x7f9e1020f1a8 = 0x7f9e10000000
  941. i = 51, ELF64_R_TYPE(reloc->r_info) =
  942. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  943. library[library_index].mapping_start = 0x7f9e10000000
  944. reloc->r_offset = 0x7f9e10000000+0x00000020f1b0=0x7f9e1020f1b0
  945. attempting to look up symbol, index = 37
  946. looking up index 37 of table 3
  947. requested symbol name for index 37 is open
  948. symbol = 0 ( (nil))
  949. 0x7f9e1020f1b0 = 0x7f9e10000000
  950. i = 52, ELF64_R_TYPE(reloc->r_info) =
  951. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  952. library[library_index].mapping_start = 0x7f9e10000000
  953. reloc->r_offset = 0x7f9e10000000+0x00000020f1b8=0x7f9e1020f1b8
  954. attempting to look up symbol, index = 38
  955. looking up index 38 of table 3
  956. requested symbol name for index 38 is access
  957. symbol = 0 ( (nil))
  958. 0x7f9e1020f1b8 = 0x7f9e10000000
  959. i = 53, ELF64_R_TYPE(reloc->r_info) =
  960. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  961. library[library_index].mapping_start = 0x7f9e10000000
  962. reloc->r_offset = 0x7f9e10000000+0x00000020f1c0=0x7f9e1020f1c0
  963. attempting to look up symbol, index = 39
  964. looking up index 39 of table 3
  965. requested symbol name for index 39 is perror
  966. symbol = 0 ( (nil))
  967. 0x7f9e1020f1c0 = 0x7f9e10000000
  968. i = 54, ELF64_R_TYPE(reloc->r_info) =
  969. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  970. library[library_index].mapping_start = 0x7f9e10000000
  971. reloc->r_offset = 0x7f9e10000000+0x00000020f1c8=0x7f9e1020f1c8
  972. attempting to look up symbol, index = 40
  973. looking up index 40 of table 3
  974. requested symbol name for index 40 is strtok
  975. symbol = 0 ( (nil))
  976. 0x7f9e1020f1c8 = 0x7f9e10000000
  977. i = 55, ELF64_R_TYPE(reloc->r_info) =
  978. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  979. library[library_index].mapping_start = 0x7f9e10000000
  980. reloc->r_offset = 0x7f9e10000000+0x00000020f1d0=0x7f9e1020f1d0
  981. attempting to look up symbol, index = 132
  982. looking up index 132 of table 3
  983. requested symbol name for index 132 is bcmp_
  984. symbol = 10126 (0x00000000278e)
  985. 0x7f9e1020f1d0 = 0x7f9e1000278e
  986. i = 56, ELF64_R_TYPE(reloc->r_info) =
  987. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  988. library[library_index].mapping_start = 0x7f9e10000000
  989. reloc->r_offset = 0x7f9e10000000+0x00000020f1d8=0x7f9e1020f1d8
  990. attempting to look up symbol, index = 80
  991. looking up index 80 of table 3
  992. requested symbol name for index 80 is getenv_debug
  993. symbol = 23037 (0x0000000059fd)
  994. 0x7f9e1020f1d8 = 0x7f9e100059fd
  995. i = 57, ELF64_R_TYPE(reloc->r_info) =
  996. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  997. library[library_index].mapping_start = 0x7f9e10000000
  998. reloc->r_offset = 0x7f9e10000000+0x00000020f1e0=0x7f9e1020f1e0
  999. attempting to look up symbol, index = 54
  1000. looking up index 54 of table 3
  1001. requested symbol name for index 54 is strcpyb
  1002. symbol = 22074 (0x00000000563a)
  1003. 0x7f9e1020f1e0 = 0x7f9e1000563a
  1004. i = 58, ELF64_R_TYPE(reloc->r_info) =
  1005. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1006. library[library_index].mapping_start = 0x7f9e10000000
  1007. reloc->r_offset = 0x7f9e10000000+0x00000020f1e8=0x7f9e1020f1e8
  1008. attempting to look up symbol, index = 78
  1009. looking up index 78 of table 3
  1010. requested symbol name for index 78 is bcmpr_
  1011. symbol = 11658 (0x000000002d8a)
  1012. 0x7f9e1020f1e8 = 0x7f9e10002d8a
  1013. i = 59, ELF64_R_TYPE(reloc->r_info) =
  1014. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1015. library[library_index].mapping_start = 0x7f9e10000000
  1016. reloc->r_offset = 0x7f9e10000000+0x00000020f1f0=0x7f9e1020f1f0
  1017. attempting to look up symbol, index = 42
  1018. looking up index 42 of table 3
  1019. requested symbol name for index 42 is exit
  1020. symbol = 0 ( (nil))
  1021. 0x7f9e1020f1f0 = 0x7f9e10000000
  1022. i = 60, ELF64_R_TYPE(reloc->r_info) =
  1023. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1024. library[library_index].mapping_start = 0x7f9e10000000
  1025. reloc->r_offset = 0x7f9e10000000+0x00000020f1f8=0x7f9e1020f1f8
  1026. attempting to look up symbol, index = 43
  1027. looking up index 43 of table 3
  1028. requested symbol name for index 43 is fwrite
  1029. symbol = 0 ( (nil))
  1030. 0x7f9e1020f1f8 = 0x7f9e10000000
  1031. i = 61, ELF64_R_TYPE(reloc->r_info) =
  1032. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1033. library[library_index].mapping_start = 0x7f9e10000000
  1034. reloc->r_offset = 0x7f9e10000000+0x00000020f200=0x7f9e1020f200
  1035. attempting to look up symbol, index = 88
  1036. looking up index 88 of table 3
  1037. requested symbol name for index 88 is find_yourself_
  1038. symbol = 41112 (0x00000000a098)
  1039. 0x7f9e1020f200 = 0x7f9e1000a098
  1040. i = 62, ELF64_R_TYPE(reloc->r_info) =
  1041. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1042. library[library_index].mapping_start = 0x7f9e10000000
  1043. reloc->r_offset = 0x7f9e10000000+0x00000020f208=0x7f9e1020f208
  1044. attempting to look up symbol, index = 121
  1045. looking up index 121 of table 3
  1046. requested symbol name for index 121 is strcmpb
  1047. symbol = 22504 (0x0000000057e8)
  1048. 0x7f9e1020f208 = 0x7f9e100057e8
  1049. i = 63, ELF64_R_TYPE(reloc->r_info) =
  1050. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1051. library[library_index].mapping_start = 0x7f9e10000000
  1052. reloc->r_offset = 0x7f9e10000000+0x00000020f210=0x7f9e1020f210
  1053. attempting to look up symbol, index = 61
  1054. looking up index 61 of table 3
  1055. requested symbol name for index 61 is string_quote_catraw
  1056. symbol = 19542 (0x000000004c56)
  1057. 0x7f9e1020f210 = 0x7f9e10004c56
  1058. i = 64, ELF64_R_TYPE(reloc->r_info) =
  1059. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1060. library[library_index].mapping_start = 0x7f9e10000000
  1061. reloc->r_offset = 0x7f9e10000000+0x00000020f218=0x7f9e1020f218
  1062. attempting to look up symbol, index = 45
  1063. looking up index 45 of table 3
  1064. requested symbol name for index 45 is strdup
  1065. symbol = 0 ( (nil))
  1066. 0x7f9e1020f218 = 0x7f9e10000000
  1067. i = 65, ELF64_R_TYPE(reloc->r_info) =
  1068. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1069. library[library_index].mapping_start = 0x7f9e10000000
  1070. reloc->r_offset = 0x7f9e10000000+0x00000020f220=0x7f9e1020f220
  1071. attempting to look up symbol, index = 46
  1072. looking up index 46 of table 3
  1073. requested symbol name for index 46 is sleep
  1074. symbol = 0 ( (nil))
  1075. 0x7f9e1020f220 = 0x7f9e10000000
  1076. i = 66, ELF64_R_TYPE(reloc->r_info) =
  1077. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1078. library[library_index].mapping_start = 0x7f9e10000000
  1079. reloc->r_offset = 0x7f9e10000000+0x00000020f228=0x7f9e1020f228
  1080. attempting to look up symbol, index = 48
  1081. looking up index 48 of table 3
  1082. requested symbol name for index 48 is execv
  1083. symbol = 0 ( (nil))
  1084. 0x7f9e1020f228 = 0x7f9e10000000
  1085. i = 67, ELF64_R_TYPE(reloc->r_info) =
  1086. R_X86_64_JUMP_SLOT calculation: S (symbol value)
  1087. library[library_index].mapping_start = 0x7f9e10000000
  1088. reloc->r_offset = 0x7f9e10000000+0x00000020f230=0x7f9e1020f230
  1089. attempting to look up symbol, index = 86
  1090. looking up index 86 of table 3
  1091. requested symbol name for index 86 is string_quote
  1092. symbol = 49263 (0x00000000c06f)
  1093. 0x7f9e1020f230 = 0x7f9e1000c06f
  1094. called get_dynamic_entry
  1095. testing if DT_NEEDED == DT_BIND_NOW
  1096. testing if DT_INIT == DT_BIND_NOW
  1097. testing if DT_FINI == DT_BIND_NOW
  1098. testing if DT_INIT_ARRAY == DT_BIND_NOW
  1099. testing if DT_INIT_ARRAYSZ == DT_BIND_NOW
  1100. testing if DT_FINI_ARRAY == DT_BIND_NOW
  1101. testing if DT_FINI_ARRAYSZ == DT_BIND_NOW
  1102. testing if 1879047925 == DT_BIND_NOW
  1103. testing if DT_STRTAB == DT_BIND_NOW
  1104. testing if DT_SYMTAB == DT_BIND_NOW
  1105. testing if DT_STRSZ == DT_BIND_NOW
  1106. testing if DT_SYMENT == DT_BIND_NOW
  1107. testing if DT_PLTGOT == DT_BIND_NOW
  1108. testing if DT_PLTRELSZ == DT_BIND_NOW
  1109. testing if DT_PLTREL == DT_BIND_NOW
  1110. testing if DT_JMPREL == DT_BIND_NOW
  1111. testing if DT_RELA == DT_BIND_NOW
  1112. testing if DT_RELASZ == DT_BIND_NOW
  1113. testing if DT_RELAENT == DT_BIND_NOW
  1114. testing if DT_VERNEED == DT_BIND_NOW
  1115. testing if DT_VERNEEDNUM == DT_BIND_NOW
  1116. testing if DT_VERSYM == DT_BIND_NOW
  1117. testing if DT_RELACOUNT == DT_BIND_NOW
  1118. returning 0
  1119. relocation summary:
  1120. R_X86_64_NONE = 0
  1121. R_X86_64_64 = 2
  1122. R_X86_64_PC32 = 0
  1123. R_X86_64_GOT32 = 0
  1124. R_X86_64_PLT32 = 0
  1125. R_X86_64_COPY = 0
  1126. R_X86_64_GLOB_DAT = 20
  1127. R_X86_64_JUMP_SLOT = 68
  1128. R_X86_64_RELATIVE = 4
  1129. R_X86_64_GOTPCREL = 0
  1130. R_X86_64_32 = 0
  1131. R_X86_64_32S = 0
  1132. R_X86_64_16 = 0
  1133. R_X86_64_PC16 = 0
  1134. R_X86_64_8 = 0
  1135. R_X86_64_PC8 = 0
  1136. R_X86_64_DTPMOD64 = 0
  1137. R_X86_64_DTPOFF64 = 0
  1138. R_X86_64_TPOFF64 = 0
  1139. R_X86_64_TLSGD = 0
  1140. R_X86_64_TLSLD = 0
  1141. R_X86_64_DTPOFF32 = 0
  1142. R_X86_64_GOTTPOFF = 0
  1143. R_X86_64_TPOFF32 = 0
  1144. R_X86_64_PC64 = 0
  1145. R_X86_64_GOTOFF64 = 0
  1146. R_X86_64_GOTPC32 = 0
  1147. R_X86_64_GOT64 = 0
  1148. R_X86_64_GOTPCREL64 = 0
  1149. R_X86_64_GOTPC64 = 0
  1150. Deprecated1 = 0
  1151. R_X86_64_PLTOFF64 = 0
  1152. R_X86_64_SIZE32 = 0
  1153. R_X86_64_SIZE64 = 0
  1154. R_X86_64_GOTPC32_TLSDESC = 0
  1155. R_X86_64_TLSDESC_CALL = 0
  1156. R_X86_64_TLSDESC = 0
  1157. R_X86_64_IRELATIVE = 0
  1158. R_X86_64_RELATIVE64 = 0
  1159. Deprecated2 = 0
  1160. Deprecated3 = 0
  1161. R_X86_64_GOTPLT64 = 0
  1162. R_X86_64_GOTPCRELX = 0
  1163. R_X86_64_REX_GOTPCRELX = 0
  1164. R_X86_64_NUM = 0
  1165. R_X86_64_UNKNOWN = 0
  1166. total = 94
  1167. called get_dynamic_entry
  1168. testing if DT_NEEDED == DT_ENCODING (or DT_PREINIT_ARRAY)
  1169. testing if DT_INIT == DT_ENCODING (or DT_PREINIT_ARRAY)
  1170. testing if DT_FINI == DT_ENCODING (or DT_PREINIT_ARRAY)
  1171. testing if DT_INIT_ARRAY == DT_ENCODING (or DT_PREINIT_ARRAY)
  1172. testing if DT_INIT_ARRAYSZ == DT_ENCODING (or DT_PREINIT_ARRAY)
  1173. testing if DT_FINI_ARRAY == DT_ENCODING (or DT_PREINIT_ARRAY)
  1174. testing if DT_FINI_ARRAYSZ == DT_ENCODING (or DT_PREINIT_ARRAY)
  1175. testing if 1879047925 == DT_ENCODING (or DT_PREINIT_ARRAY)
  1176. testing if DT_STRTAB == DT_ENCODING (or DT_PREINIT_ARRAY)
  1177. testing if DT_SYMTAB == DT_ENCODING (or DT_PREINIT_ARRAY)
  1178. testing if DT_STRSZ == DT_ENCODING (or DT_PREINIT_ARRAY)
  1179. testing if DT_SYMENT == DT_ENCODING (or DT_PREINIT_ARRAY)
  1180. testing if DT_PLTGOT == DT_ENCODING (or DT_PREINIT_ARRAY)
  1181. testing if DT_PLTRELSZ == DT_ENCODING (or DT_PREINIT_ARRAY)
  1182. testing if DT_PLTREL == DT_ENCODING (or DT_PREINIT_ARRAY)
  1183. testing if DT_JMPREL == DT_ENCODING (or DT_PREINIT_ARRAY)
  1184. testing if DT_RELA == DT_ENCODING (or DT_PREINIT_ARRAY)
  1185. testing if DT_RELASZ == DT_ENCODING (or DT_PREINIT_ARRAY)
  1186. testing if DT_RELAENT == DT_ENCODING (or DT_PREINIT_ARRAY)
  1187. testing if DT_VERNEED == DT_ENCODING (or DT_PREINIT_ARRAY)
  1188. testing if DT_VERNEEDNUM == DT_ENCODING (or DT_PREINIT_ARRAY)
  1189. testing if DT_VERSYM == DT_ENCODING (or DT_PREINIT_ARRAY)
  1190. testing if DT_RELACOUNT == DT_ENCODING (or DT_PREINIT_ARRAY)
  1191. returning 0
  1192. called get_dynamic_entry
  1193. testing if DT_NEEDED == DT_PREINIT_ARRAYSZ
  1194. testing if DT_INIT == DT_PREINIT_ARRAYSZ
  1195. testing if DT_FINI == DT_PREINIT_ARRAYSZ
  1196. testing if DT_INIT_ARRAY == DT_PREINIT_ARRAYSZ
  1197. testing if DT_INIT_ARRAYSZ == DT_PREINIT_ARRAYSZ
  1198. testing if DT_FINI_ARRAY == DT_PREINIT_ARRAYSZ
  1199. testing if DT_FINI_ARRAYSZ == DT_PREINIT_ARRAYSZ
  1200. testing if 1879047925 == DT_PREINIT_ARRAYSZ
  1201. testing if DT_STRTAB == DT_PREINIT_ARRAYSZ
  1202. testing if DT_SYMTAB == DT_PREINIT_ARRAYSZ
  1203. testing if DT_STRSZ == DT_PREINIT_ARRAYSZ
  1204. testing if DT_SYMENT == DT_PREINIT_ARRAYSZ
  1205. testing if DT_PLTGOT == DT_PREINIT_ARRAYSZ
  1206. testing if DT_PLTRELSZ == DT_PREINIT_ARRAYSZ
  1207. testing if DT_PLTREL == DT_PREINIT_ARRAYSZ
  1208. testing if DT_JMPREL == DT_PREINIT_ARRAYSZ
  1209. testing if DT_RELA == DT_PREINIT_ARRAYSZ
  1210. testing if DT_RELASZ == DT_PREINIT_ARRAYSZ
  1211. testing if DT_RELAENT == DT_PREINIT_ARRAYSZ
  1212. testing if DT_VERNEED == DT_PREINIT_ARRAYSZ
  1213. testing if DT_VERNEEDNUM == DT_PREINIT_ARRAYSZ
  1214. testing if DT_VERSYM == DT_PREINIT_ARRAYSZ
  1215. testing if DT_RELACOUNT == DT_PREINIT_ARRAYSZ
  1216. returning 0
  1217. library[library_index].dynamic[DT_PREINIT_ARRAY] = (nil)
  1218. NO DT_PREINIT_ARRAY
  1219. preinit_array->d_un.d_ptr = 0
  1220. preinit_array->d_un.d_val = 0
  1221. called get_dynamic_entry
  1222. testing if DT_NEEDED == DT_INIT
  1223. testing if DT_INIT == DT_INIT
  1224. library[library_index].dynamic[DT_INIT] = 0x3
  1225. INIT = 0x558f538722b0
  1226. attempting to call DT_INIT for ./files/libstring.so
  1227. library[library_index].base_address = 10000000
  1228. library[library_index].base_address = 0x7f9e10000000
  1229. library[library_index].mapping_start = 10000000
  1230. library[library_index].mapping_start = 0x7f9e10000000
  1231. INIT->d_un.d_ptr = 2150
  1232. INIT->d_un.d_ptr = 0x2150
  1233. library[library_index].base_address + INIT->d_un.d_ptr = 10002150
  1234. library[library_index].base_address + INIT->d_un.d_ptr = 0x7f9e10002150
  1235. library[library_index].mapping_start + INIT->d_un.d_ptr = 10002150
  1236. library[library_index].mapping_start + INIT->d_un.d_ptr = 0x7f9e10002150
  1237. libstring_argc = 2
  1238. libstring_argv = 0x7fffd20cc1d8
  1239. libstring_env = 0x7fffd20cc1f0
  1240. is_readelf = true
  1241. testing library[library_index].base_address + INIT->d_un.d_ptr
  1242. 0x7f9e10002150 = 0x3d058b4808ec8348
  1243. testing library[library_index].mapping_start + INIT->d_un.d_ptr
  1244. 0x7f9e10002150 = 0x3d058b4808ec8348
  1245. received signal (11)
  1246. NOTICE
  1247. received SegFault (11)
  1248. addr: 0x7f9e10000000
  1249. signo: 11
  1250. errno: 0
  1251. code: 2 (If this is less than or equal to 0, then the signal was generated by a process)
  1252. 0x7f9e10002150 = INVALID
  1253. DT_INIT CALLED
  1254. called get_dynamic_entry
  1255. testing if DT_NEEDED == DT_INIT_ARRAY
  1256. testing if DT_INIT == DT_INIT_ARRAY
  1257. testing if DT_FINI == DT_INIT_ARRAY
  1258. testing if DT_INIT_ARRAY == DT_INIT_ARRAY
  1259. called get_dynamic_entry
  1260. testing if DT_NEEDED == DT_INIT_ARRAYSZ
  1261. testing if DT_INIT == DT_INIT_ARRAYSZ
  1262. testing if DT_FINI == DT_INIT_ARRAYSZ
  1263. testing if DT_INIT_ARRAY == DT_INIT_ARRAYSZ
  1264. testing if DT_INIT_ARRAYSZ == DT_INIT_ARRAYSZ
  1265. called get_dynamic_entry
  1266. testing if DT_NEEDED == DT_INIT_ARRAYSZ
  1267. testing if DT_INIT == DT_INIT_ARRAYSZ
  1268. testing if DT_FINI == DT_INIT_ARRAYSZ
  1269. testing if DT_INIT_ARRAY == DT_INIT_ARRAYSZ
  1270. testing if DT_INIT_ARRAYSZ == DT_INIT_ARRAYSZ
  1271. get_dynamic_entry(library[library_index].dynamic, DT_INIT_ARRAYSZ)->d_un.d_val / sizeof (Elf64_Addr) = 3, ((Elf64_Addr *) (library[library_index].base_address + init_array->d_un.d_ptr))[0] = 0x00001000368d, ((Elf64_Addr *) (library[library_index].base_address + init_array->d_un.d_ptr))[1] = 0x0000100026a0, ((Elf64_Addr *) (library[library_index].base_address + init_array->d_un.d_ptr))[2] = 0x00001000452e
  1272. addrs = 0x7f9e1020ed80
  1273. addrs[0] = 0x00001000368d
  1274. addrs[1] = 0x0000100026a0
  1275. addrs[0] = 0x00001000368d
  1276. executing ((init_t) addrs[0]) (libstring_argc, libstring_argv, libstring_env)
  1277. received signal (11)
  1278. NOTICE
  1279. received SegFault (11)
  1280. addr: 0x7f9e10000000
  1281. signo: 11
  1282. errno: 0
  1283. code: 2 (If this is less than or equal to 0, then the signal was generated by a process)
  1284. 0x000000000660 = INVALID
  1285. addrs[1] = 0x0000100026a0
  1286. executing ((init_t) addrs[1]) (libstring_argc, libstring_argv, libstring_env)
  1287. addrs[2] = 0x00001000452e
  1288. executing ((init_t) addrs[2]) (libstring_argc, libstring_argv, libstring_env)
  1289. Segmentation fault
  1290. neon@neon-X555BA:~/git/universal-dynamic-loader/loader$
  1291.