Can't load my library【ARM32】
Hi. I'm a new user of Qiling. I want to emulate a bin. But qiling can't load the library,
the dependency of the bin is armbsp: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.3, stripped
0x00000001 (NEEDED) Shared library: [libpthread.so.0] 0x00000001 (NEEDED) Shared library: [libdl.so.2] 0x00000001 (NEEDED) Shared library: [librt.so.1] 0x00000001 (NEEDED) Shared library: [libsecurec.so] 0x00000001 (NEEDED) Shared library: [libstdc++.so.6] 0x00000001 (NEEDED) Shared library: [libm.so.6] 0x00000001 (NEEDED) Shared library: [libc.so.6] 0x00000001 (NEEDED) Shared library: [ld-linux.so.3] 0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
I add the libpthread.so.0 in rootfs/arm_linux/lib, and add it in rootfs/arm_linux/usr/lib
and the output is
[+] Profile: Default
[+] Set init_kernel_get_tls
[+] Mapped 0x56555000-0x56565000
[+] Mapped 0x5656c000-0x5656f000
[+] mem_start : 0x0
[+] mem_end : 0x1a000
[+] Interpreter path: ../rootfs/myrootfs/lib/ld-linux.so.3
[+] Interpreter addr: 0x47ba000
[+] Interpreter size: 0x32000
[+] mmap_address is : 0x774bf000
[+] rel name b'__stack_chk_guard'
[+] rel name b'stderr'
[+] rel name b'stdout'
[+] rel name b'_ITM_deregisterTMCloneTable'
[+] rel name b'__gmon_start__'
[+] rel name b'_ITM_registerTMCloneTable'
[+] rel name b'__cxa_finalize'
[+] rel name b'signal'
[+] rel name b'pthread_mutex_lock'
[+] rel name b'localtime_r'
[+] rel name b'pthread_mutex_init'
[+] rel name b'__aeabi_uldivmod'
[+] rel name b'getpid'
[+] rel name b'vsnprintf_s'
[+] rel name b'memset_s'
[+] rel name b'sem_trywait'
[+] rel name b'free'
[+] rel name b'readdir'
[+] rel name b'strcpy_s'
[+] rel name b'snprintf_s'
[+] rel name b'strncmp'
[+] rel name b'fgetc'
[+] rel name b'closedir'
[+] rel name b'printf'
[+] rel name b'dirname'
[+] rel name b'puts'
[+] rel name b'realpath'
[+] rel name b'sem_wait'
[+] rel name b'flock'
[+] rel name b'syscall'
[+] rel name b'setpgid'
[+] rel name b'strtoul'
[+] rel name b'memset'
[+] rel name b'opendir'
[+] rel name b'__libc_start_main'
[+] rel name b'mmap64'
[+] rel name b'strncpy_s'
[+] rel name b'close'
[+] rel name b'fopen'
[+] rel name b'read'
[+] rel name b'abort'
[+] rel name b'sem_init'
[+] rel name b'unlink'
[+] rel name b'ioctl'
[+] rel name b'dup2'
[+] rel name b'mmap'
[+] rel name b'open'
[+] rel name b'memcpy_s'
[+] rel name b'getpagesize'
[+] rel name b'__stack_chk_fail'
[+] rel name b'vfork'
[+] rel name b'mkdir'
[+] rel name b'strtoull'
[+] rel name b'wait4'
[+] rel name b'calloc'
[+] rel name b'fputc'
[+] rel name b'fwrite'
[+] rel name b'memcpy'
[+] rel name b'malloc'
[+] rel name b'strlen'
[+] rel name b'munmap'
[+] rel name b'fclose'
[+] rel name b'write'
[+] rel name b'sem_timedwait'
[+] rel name b'_exit'
[+] rel name b'strcmp'
[+] rel name b'sem_post'
[+] rel name b'time'
[+] rel name b'__errno_location'
[+] rel name b'fflush'
[+] rel name b'__xpg_basename'
[+] rel name b'sprintf_s'
[+] rel name b'execvp'
[+] rel name b'__gmon_start__'
[+] rel name b'strchr'
[+] rel name b'__cxa_finalize'
[+] rel name b'pthread_mutex_unlock'
[+] rel name b'strdup'
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d3548: ql_syscall_brk()
[+] 0x047d3548: brk(inp = 0x0) = 0x56571000
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d479c: ql_syscall_uname()
[+] 0x047d479c: uname(buf = 0x7ff3cb08) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d45ac: ql_syscall_access()
[+] No such file or directory: /etc/ld.so.nohwcap
[+] 0x047d45ac: access(path = 0x47d8f64, mode = 0x0) = -0x1 (EPERM)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d46bc: ql_syscall_mmap2()
[+] mmap2 - mapping needed for 0x774bf000
[+] mmap2 - addr range 0x774bf000 - 0x774c1fff:
[+] 0x047d46bc: mmap2(addr = 0x0, length = 0x3000, prot = 0x3, flags = 0x22, fd = 0xffffffff, pgoffset = 0x0) = 0x774bf000
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d45ac: ql_syscall_access()
[+] No such file or directory: /etc/ld.so.preload
[+] 0x047d45ac: access(path = 0x47d7fb8, mode = 0x4) = -0x1 (EPERM)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/etc/ld.so.cache, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/etc/ld.so.cache
[+] 0x047d44ac: open(filename = 0x47d9df0, flags = 0x80000, mode = 0x1) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/tls/i686/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/tls/i686/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/tls/i686/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/tls/i686/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/tls/i686/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/tls/i686/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/tls/i686/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/tls/i686/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/tls/i686/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/tls/i686/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/tls/i686/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/tls/i686", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/tls/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/tls/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/tls/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/tls/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/tls/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/tls/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/tls/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/tls/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/tls/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/tls/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/tls/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/tls", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/i686/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/i686/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/i686/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/i686/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/i686/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/i686/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/i686/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/i686/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/i686/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/i686/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/i686/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/i686", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/arm-linux-gnueabihf/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/arm-linux-gnueabihf/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/arm-linux-gnueabihf", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/tls/i686/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/tls/i686/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/tls/i686/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/tls/i686/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/tls/i686/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/tls/i686/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/tls/i686/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/tls/i686/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/tls/i686/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/tls/i686/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/tls/i686/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/tls/i686", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/tls/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/tls/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/tls/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/tls/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/tls/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/tls/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/tls/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/tls/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/tls/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/tls/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/tls/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/tls", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/i686/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/i686/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/i686/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/i686/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/i686/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/i686/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/i686/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/i686/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/i686/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/i686/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/i686/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/i686", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/arm-linux-gnueabihf/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/arm-linux-gnueabihf/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/arm-linux-gnueabihf", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/tls/i686/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/tls/i686/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/tls/i686/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/tls/i686/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/tls/i686/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/tls/i686/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/tls/i686/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/tls/i686/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/tls/i686/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/tls/i686/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/tls/i686/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/tls/i686", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/tls/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/tls/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/tls/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/tls/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/tls/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/tls/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/tls/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/tls/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/tls/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/tls/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/tls/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/tls", 0x7ff3c730) write completed
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/i686/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/i686/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/i686/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/i686/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/i686/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/i686/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/i686/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/i686/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/i686/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/i686/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/i686/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/i686", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/lib/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/lib/libpthread.so.0, 0o0) = 3
[+] File found: /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = 0x3
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ec: ql_syscall_read()
[+] read() CONTENT: b'\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00(\x00\x01\x00\x00\x00\xf8\x06\x00\x004\x00\x00\x00\x101\x00\x00\x00\x02\x00\x054\x00 \x00\x06\x00(\x00\x19\x00\x18\x00\x01\x00\x00p\x98\x1f\x00\x00\x98\x1f\x00\x00\x98\x1f\x00\x00\xf0\x00\x00\x00\xf0\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88!\x00\x00\x88!\x00\x00\x05\x00\x00\x00\x00\x80\x00\x00\x01\x00\x00\x00\x98.\x00\x00\x98\xae\x00\x00\x98\xae\x00\x00l\x01\x00\x00p\x01\x00\x00\x06\x00\x00\x00\x00\x80\x00\x00\x02\x00\x00\x00\xa0.\x00\x00\xa0\xae\x00\x00\xa0\xae\x00\x00\x10\x01\x00\x00\x10\x01\x00\x00\x06\x00\x00\x00\x04\x00\x00\x00Q\xe5td\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x10\x00\x00\x00R\xe5td\x98.\x00\x00\x98\xae\x00\x00\x98\xae\x00\x00h\x01\x00\x00h\x01\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00GNU\x00\x00\x00\x00\x00\x05\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\t\x00\x00\x00\r\x00\x00\x00\x04\x00\x00\x00\x07\x00\x00\x00\x00\x03\x04\x08\x00\x00\x00\x00\x80A\x02\n\x00\x80\x02\x00\r\x00\x00\x00\x0e\x00\x00\x00\x0f\x00\x00\x00\x10\x00\x00\x00\x11\x00\x00\x00\x12\x00\x00\x00\x13\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc7\xf8\xf3\xc3\xc9\xf8\xf3\xc3\t\xf9\xf3\xc3\t\xf9\xf3\xc3\xef\xf8\xf3\xc3\xd9=l\xf6\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x89\xddv\x16\xcf\xf8\xf3\xc3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf4\x00\x00\x00\x00\x00\x00\x00\x03\x00\x01\x00\x00\x00\x00\x00\x00\xb0\x00\x00\x00\x00\x00\x00\x03\x00\x15\x00F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x00\x00\x9e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"\x00\x00\x00'
[+] 0x047d44ec: read(fd = 0x3, buf = 0x7ff3c808, length = 0x200) = 0x200
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d466c: ql_syscall_close()
[+] 0x047d466c: close(fd = 0x3) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/lib", 0x7ff3c730) write completed
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/tls/i686/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/tls/i686/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/tls/i686/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/tls/i686/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/tls/i686/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/tls/i686/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/tls/i686/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/tls/i686/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/tls/i686/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/tls/i686/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/tls/i686/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/tls/i686", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/tls/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/tls/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/tls/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/tls/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/tls/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/tls/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/tls/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/tls/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/tls/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/tls/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/tls/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/tls", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/i686/neon/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/i686/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/i686/neon/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/i686/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/i686/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/i686/neon", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/i686/vfp/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/i686/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/i686/vfp", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/i686/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/i686/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/i686", 0x7ff3c730) read/write fail
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/neon/vfp/libpthread.so.0, 0o0) = 3
[+] File found: /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/neon/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = 0x3
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ec: ql_syscall_read()
[+] read() CONTENT: b'\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00(\x00\x01\x00\x00\x00\xf8\x06\x00\x004\x00\x00\x00\x101\x00\x00\x00\x02\x00\x054\x00 \x00\x06\x00(\x00\x19\x00\x18\x00\x01\x00\x00p\x98\x1f\x00\x00\x98\x1f\x00\x00\x98\x1f\x00\x00\xf0\x00\x00\x00\xf0\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88!\x00\x00\x88!\x00\x00\x05\x00\x00\x00\x00\x80\x00\x00\x01\x00\x00\x00\x98.\x00\x00\x98\xae\x00\x00\x98\xae\x00\x00l\x01\x00\x00p\x01\x00\x00\x06\x00\x00\x00\x00\x80\x00\x00\x02\x00\x00\x00\xa0.\x00\x00\xa0\xae\x00\x00\xa0\xae\x00\x00\x10\x01\x00\x00\x10\x01\x00\x00\x06\x00\x00\x00\x04\x00\x00\x00Q\xe5td\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x10\x00\x00\x00R\xe5td\x98.\x00\x00\x98\xae\x00\x00\x98\xae\x00\x00h\x01\x00\x00h\x01\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00GNU\x00\x00\x00\x00\x00\x05\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\t\x00\x00\x00\r\x00\x00\x00\x04\x00\x00\x00\x07\x00\x00\x00\x00\x03\x04\x08\x00\x00\x00\x00\x80A\x02\n\x00\x80\x02\x00\r\x00\x00\x00\x0e\x00\x00\x00\x0f\x00\x00\x00\x10\x00\x00\x00\x11\x00\x00\x00\x12\x00\x00\x00\x13\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc7\xf8\xf3\xc3\xc9\xf8\xf3\xc3\t\xf9\xf3\xc3\t\xf9\xf3\xc3\xef\xf8\xf3\xc3\xd9=l\xf6\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x89\xddv\x16\xcf\xf8\xf3\xc3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf4\x00\x00\x00\x00\x00\x00\x00\x03\x00\x01\x00\x00\x00\x00\x00\x00\xb0\x00\x00\x00\x00\x00\x00\x03\x00\x15\x00F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x00\x00\x9e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"\x00\x00\x00'
[+] 0x047d44ec: read(fd = 0x3, buf = 0x7ff3c808, length = 0x200) = 0x200
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d466c: ql_syscall_close()
[+] 0x047d466c: close(fd = 0x3) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/neon/vfp", 0x7ff3c730) write completed
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/neon/libpthread.so.0, 0o0) = -2
[+] File not found /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/neon/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = -0x2 (ENOENT)
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/neon", 0x7ff3c730) write completed
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/vfp/libpthread.so.0, 0o0) = 3
[+] File found: /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/vfp/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = 0x3
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ec: ql_syscall_read()
[+] read() CONTENT: b'\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00(\x00\x01\x00\x00\x00\xf8\x06\x00\x004\x00\x00\x00\x101\x00\x00\x00\x02\x00\x054\x00 \x00\x06\x00(\x00\x19\x00\x18\x00\x01\x00\x00p\x98\x1f\x00\x00\x98\x1f\x00\x00\x98\x1f\x00\x00\xf0\x00\x00\x00\xf0\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88!\x00\x00\x88!\x00\x00\x05\x00\x00\x00\x00\x80\x00\x00\x01\x00\x00\x00\x98.\x00\x00\x98\xae\x00\x00\x98\xae\x00\x00l\x01\x00\x00p\x01\x00\x00\x06\x00\x00\x00\x00\x80\x00\x00\x02\x00\x00\x00\xa0.\x00\x00\xa0\xae\x00\x00\xa0\xae\x00\x00\x10\x01\x00\x00\x10\x01\x00\x00\x06\x00\x00\x00\x04\x00\x00\x00Q\xe5td\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x10\x00\x00\x00R\xe5td\x98.\x00\x00\x98\xae\x00\x00\x98\xae\x00\x00h\x01\x00\x00h\x01\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00GNU\x00\x00\x00\x00\x00\x05\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\t\x00\x00\x00\r\x00\x00\x00\x04\x00\x00\x00\x07\x00\x00\x00\x00\x03\x04\x08\x00\x00\x00\x00\x80A\x02\n\x00\x80\x02\x00\r\x00\x00\x00\x0e\x00\x00\x00\x0f\x00\x00\x00\x10\x00\x00\x00\x11\x00\x00\x00\x12\x00\x00\x00\x13\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc7\xf8\xf3\xc3\xc9\xf8\xf3\xc3\t\xf9\xf3\xc3\t\xf9\xf3\xc3\xef\xf8\xf3\xc3\xd9=l\xf6\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x89\xddv\x16\xcf\xf8\xf3\xc3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf4\x00\x00\x00\x00\x00\x00\x00\x03\x00\x01\x00\x00\x00\x00\x00\x00\xb0\x00\x00\x00\x00\x00\x00\x03\x00\x15\x00F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x00\x00\x9e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"\x00\x00\x00'
[+] 0x047d44ec: read(fd = 0x3, buf = 0x7ff3c808, length = 0x200) = 0x200
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d466c: ql_syscall_close()
[+] 0x047d466c: close(fd = 0x3) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib/vfp", 0x7ff3c730) write completed
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ac: ql_syscall_open()
[+] open(/usr/lib/libpthread.so.0, 0o0) = 3
[+] File found: /home/hei/Desktop/qiling/examples/mycode/../rootfs/myrootfs/usr/lib/libpthread.so.0
[+] 0x047d44ac: open(filename = 0x7ff3c690, flags = 0x80000, mode = 0x47eb960) = 0x3
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d44ec: ql_syscall_read()
[+] read() CONTENT: b'\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00(\x00\x01\x00\x00\x00\xf8\x06\x00\x004\x00\x00\x00\x101\x00\x00\x00\x02\x00\x054\x00 \x00\x06\x00(\x00\x19\x00\x18\x00\x01\x00\x00p\x98\x1f\x00\x00\x98\x1f\x00\x00\x98\x1f\x00\x00\xf0\x00\x00\x00\xf0\x00\x00\x00\x04\x00\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88!\x00\x00\x88!\x00\x00\x05\x00\x00\x00\x00\x80\x00\x00\x01\x00\x00\x00\x98.\x00\x00\x98\xae\x00\x00\x98\xae\x00\x00l\x01\x00\x00p\x01\x00\x00\x06\x00\x00\x00\x00\x80\x00\x00\x02\x00\x00\x00\xa0.\x00\x00\xa0\xae\x00\x00\xa0\xae\x00\x00\x10\x01\x00\x00\x10\x01\x00\x00\x06\x00\x00\x00\x04\x00\x00\x00Q\xe5td\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x10\x00\x00\x00R\xe5td\x98.\x00\x00\x98\xae\x00\x00\x98\xae\x00\x00h\x01\x00\x00h\x01\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x10\x00\x00\x00\x01\x00\x00\x00GNU\x00\x00\x00\x00\x00\x05\x00\x00\x00\n\x00\x00\x00\x00\x00\x00\x00\t\x00\x00\x00\r\x00\x00\x00\x04\x00\x00\x00\x07\x00\x00\x00\x00\x03\x04\x08\x00\x00\x00\x00\x80A\x02\n\x00\x80\x02\x00\r\x00\x00\x00\x0e\x00\x00\x00\x0f\x00\x00\x00\x10\x00\x00\x00\x11\x00\x00\x00\x12\x00\x00\x00\x13\x00\x00\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xc7\xf8\xf3\xc3\xc9\xf8\xf3\xc3\t\xf9\xf3\xc3\t\xf9\xf3\xc3\xef\xf8\xf3\xc3\xd9=l\xf6\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x88\xddv\x16\x89\xddv\x16\xcf\xf8\xf3\xc3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf4\x00\x00\x00\x00\x00\x00\x00\x03\x00\x01\x00\x00\x00\x00\x00\x00\xb0\x00\x00\x00\x00\x00\x00\x03\x00\x15\x00F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x00\x00\x9e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"\x00\x00\x00'
[+] 0x047d44ec: read(fd = 0x3, buf = 0x7ff3c808, length = 0x200) = 0x200
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d466c: ql_syscall_close()
[+] 0x047d466c: close(fd = 0x3) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d43dc: ql_syscall_stat64()
[+] stat64("/usr/lib", 0x7ff3c730) write completed
[+] 0x047d43dc: stat64(path = 0x7ff3c690, buf_ptr = 0x7ff3c730) = 0x0
[+] Received interrupt: 0x2
[+] syscall hooked 0x47cb96c: ql_syscall_writev()
[+] writev() CONTENT:
[+] 'armbsp'
armbsp[+] ': '
: [+] 'error while loading shared libraries'
error while loading shared libraries[+] ': '
: [+] 'libpthread.so.0'
libpthread.so.0[+] ': '
: [+] 'cannot open shared object file'
cannot open shared object file[+] ': '
: [+] 'No such file or directory'
No such file or directory[+] '\n'
[+] 0x047cb96c: writev(fd = 0x2, vec = 0x7ff3c560, vlen = 0xa) = 0x79
[+] Received interrupt: 0x2
[+] syscall hooked 0x47d47d4: ql_syscall_exit_group()
[+] 0x047d47d4: exit_group(code = 0x7f) = ?
[x] CPU Context:
[x] r0 : 0x28ac
[x] r1 : 0x2
[x] r2 : 0x7ff3c7a0
[x] r3 : 0x0
[x] r4 : 0x7ff3cff8
[x] r5 : 0x7ff3cbc8
[x] r6 : 0x47d9048
[x] r7 : 0xf8
[x] r8 : 0x7ff3cbe0
[x] r9 : 0x47d89bc
[x] r10 : 0x5656ce7c
[x] r11 : 0x0
[x] r12 : 0x5656cef4
[x] sp : 0x7ff3c794
[x] lr : 0x565579cc
[x] pc : 0x2544
[x] f0 : 0x0
[x] f1 : 0x0
[x] f2 : 0x0
[x] f3 : 0x0
[x] f4 : 0x0
[x] f5 : 0x0
[x] f6 : 0x0
[x] f7 : 0x0
[x] fps : 0x0
[x] cpsr : 0x600001d3
[x] c1_c0_2 : 0x0
[x] c13_c0_3 : 0x0
[x] fpexc : 0x40000000
[x] PC = 0x00002544 (unreachable)
[=] Memory map:
[=] Start End Perm Label Image
[=] 047ba000 - 047ec000 rwx /home/hei/Desktop/qiling/examples/rootfs/myrootfs/lib/ld-linux.so.3
[=] 56555000 - 56565000 r-x armbsp armbsp
[=] 5656c000 - 5656f000 rw- armbsp armbsp
[=] 5656f000 - 56571000 rwx [hook_mem]
[=] 774bf000 - 774c2000 rw- [syscall_mmap2]
[=] 7ff0d000 - 7ff3d000 rwx [stack]
[=] ffff0000 - ffff1000 rwx [arm_tls]
Traceback (most recent call last):
File "armbsp_test.py", line 38, in <module>
ql.run()
File "/usr/local/lib/python3.8/dist-packages/qiling-1.4.2-py3.8.egg/qiling/core.py", line 730, in run
self.os.run()
File "/usr/local/lib/python3.8/dist-packages/qiling-1.4.2-py3.8.egg/qiling/os/linux/linux.py", line 149, in run
self.ql.emu_start(self.ql.loader.elf_entry, self.exit_point, self.ql.timeout, self.ql.count)
File "/usr/local/lib/python3.8/dist-packages/qiling-1.4.2-py3.8.egg/qiling/core.py", line 880, in emu_start
self.uc.emu_start(begin, end, timeout, count)
File "/home/hei/.local/lib/python3.8/site-packages/unicorn/unicorn.py", line 525, in emu_start
raise UcError(status)
unicorn.unicorn.UcError: Invalid memory fetch (UC_ERR_FETCH_UNMAPPED)
It seems that qiling have found the libpthread.so.0 but outputs 'cannot open shared object file' and doesn't load the libpthread.so.0 Why is this happening?
run, just to make sure you got the right one?
$ file /home/hei/Desktop/qiling/examples/rootfs/arm_linux/lib/ld-linux.so.3
ld-linux.so.3 is the default ld in rootfs
ld-linux.so.3: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, BuildID[sha1]=97ea942b1c123793352877a2fdb1197465de7fd7, stripped
I have also use my ld-linux.so.3, It outputs
ld-linux.so.3: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, stripped
[x] Syscall ERROR: ql_syscall_mmap2 DEBUG: Error: mapping needed but failed
I also try to emulate a ARM64 little endian binary. The library needs
hei@hei-VirtualBox:~/Desktop/qiling/examples/mycode$ readelf -d c_framework
Dynamic section at offset 0x17ab8 contains 32 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libdl.so.2]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libpthread.so.0]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x0000000000000001 (NEEDED) Shared library: [ld-linux-aarch64.so.1]
I firstly put libdl.so.2 libc.so.6 and ld-linux-aarch64.so.1 in a folder as my rootfs It also outputs
[+] 'c_framework'
c_framework[+] ': '
: [+] 'error while loading shared libraries'
error while loading shared libraries[+] ': '
: [+] 'libdl.so.2'
libdl.so.2[+] ': '
: [+] 'cannot stat shared object'
cannot stat shared object[+] ': '
: [+] 'Operation not permitted'
Operation not permitted[+] '\n'
[+] 0x00007ffff7de6be8: writev(fd = 0x2, vec = 0x80000000cbc0, vlen = 0xa) = 0x72
[+] Received interrupt: 0x2
[+] syscall hooked 0x7ffff7df4648: ql_syscall_exit_group()
[+] 0x00007ffff7df4648: exit_group(code = 0x7f) = ?
[x] CPU Context:
[x] x0 : 0x2bec
[x] x1 : 0x80000000d0d0
[x] x2 : 0x80000000cfc8
[x] x3 : 0x15440
[x] x4 : 0x154c0
[x] x5 : 0x7f
[x] x6 : 0x80000000cfc0
[x] x7 : 0x7ffff7dfacbb
[x] x8 : 0x5e
[x] x9 : 0x20
[x] x10 : 0x80000000d0d0
[x] x11 : 0x80000000d0d0
[x] x12 : 0x80000000d090
[x] x13 : 0x7463656a626f20
[x] x14 : 0x1
[x] x15 : 0x0
[x] x16 : 0x55555557bdd8
[x] x17 : 0x1b70
[x] x18 : 0x1
[x] x19 : 0x7ffff7dfaac8
[x] x20 : 0x80000000dff0
[x] x21 : 0x7ffff7dfac80
[x] x22 : 0x7ffff7e139ea
[x] x23 : 0x7ffff7dfaac8
[x] x24 : 0x7ffff7e139d0
[x] x25 : 0x7ffff7e13290
[x] x26 : 0x0
[x] x27 : 0x7ffff7e13a00
[x] x28 : 0x5f454c49464f5250
[x] x29 : 0x0
[x] x30 : 0x555555556094
[x] sp : 0x80000000cfc0
[x] pc : 0x1b70
[x] lr : 0x555555556094
[x] cpacr_el1 : 0x300000
[x] tpidr_el0 : 0x0
[x] w0 : 0x2bec
[x] w1 : 0xd0d0
[x] w2 : 0xcfc8
[x] w3 : 0x15440
[x] w4 : 0x154c0
[x] w5 : 0x7f
[x] w6 : 0xcfc0
[x] w7 : 0xf7dfacbb
[x] w8 : 0x5e
[x] w9 : 0x20
[x] w10 : 0xd0d0
[x] w11 : 0xd0d0
[x] w12 : 0xd090
[x] w13 : 0x6a626f20
[x] w14 : 0x1
[x] w15 : 0x0
[x] w16 : 0x5557bdd8
[x] w17 : 0x1b70
[x] w18 : 0x1
[x] w19 : 0xf7dfaac8
[x] w20 : 0xdff0
[x] w21 : 0xf7dfac80
[x] w22 : 0xf7e139ea
[x] w23 : 0xf7dfaac8
[x] w24 : 0xf7e139d0
[x] w25 : 0xf7e13290
[x] w26 : 0x0
[x] w27 : 0xf7e13a00
[x] w28 : 0x464f5250
[x] w29 : 0x0
[x] w30 : 0x55556094
[x] PC = 0x0000000000001b70 (unreachable)
[=] Memory map:
[=] Start End Perm Label Image
[=] 555555554000 - 55555556c000 r-x c_framework c_framework
[=] 55555557b000 - 555555595000 rw- c_framework c_framework
[=] 555555595000 - 555555597000 rwx [hook_mem]
[=] 7ffff7dd5000 - 7ffff7e14000 rwx /home/hei/Desktop/qiling/examples/rootfs/arm64_linux/lib64/ld-linux-aarch64.so.1
[=] 7ffffffde000 - 80000000e000 rwx [stack]
Traceback (most recent call last):
File "c_framework_test.py", line 38, in <module>
ql.run()
File "/usr/local/lib/python3.8/dist-packages/qiling-1.4.2-py3.8.egg/qiling/core.py", line 730, in run
self.os.run()
File "/usr/local/lib/python3.8/dist-packages/qiling-1.4.2-py3.8.egg/qiling/os/linux/linux.py", line 149, in run
self.ql.emu_start(self.ql.loader.elf_entry, self.exit_point, self.ql.timeout, self.ql.count)
File "/usr/local/lib/python3.8/dist-packages/qiling-1.4.2-py3.8.egg/qiling/core.py", line 880, in emu_start
self.uc.emu_start(begin, end, timeout, count)
File "/home/hei/.local/lib/python3.8/site-packages/unicorn/unicorn.py", line 525, in emu_start
raise UcError(status)
unicorn.unicorn.UcError: Invalid memory fetch (UC_ERR_FETCH_UNMAPPED)
It can't load the library as well.
you need to ensure the library exists . As for the Invalid memory fetch error, you should find out the instruction that causes this error.
hei@hei-VirtualBox:~/Desktop/qiling/examples/rootfs/arm64_linux/lib64$ ls
ld-linux-aarch64.so.1 libc.so.6 libdl.so.2
The library is existing. And I guess the invalid memory(PC is unreachable) is caused by the unloaded library. But it can't load the library well.
Close for now.
We updated the codebase for Qiling and Unicorn since this issue being posted.
Feel free to try the latest version.