Une sélection d'utilitaires pour un programmeur sous Linux

Je pense que chaque programmeur a un ensemble d'utilitaires, d'astuces et de connaissances préférés. Il en utilise même dans son travail. Très probablement, ils diffèrent selon les différents programmeurs. Il est donc temps de partager. Aujourd'hui, je vais parler de ma sélection de ce qui n'est probablement pas connu aussi largement qu'il le mérite. Il s'agira principalement de la plate-forme GNU / Linux.


PMD et CPD


Tout d'abord, un peu multiplateforme. Il existe un tel utilitaire - PMD , probablement bien connu des programmeurs Java. Il s'agit d'un analyseur statique qui prend en charge plusieurs (pas très nombreux) langages, ce qui n'est pas surprenant - l'écriture de règles d'analyse significatives n'est pas une tâche simple. Mais cet utilitaire a également une deuxième partie - Détecteur de copier-coller (CPD). Son travail nécessite beaucoup moins de «compréhension» du texte source, il est donc logique qu'il traite beaucoup plus de langues.


Donc, il y a une opinion qu'un projet open source est quand vous devez écrire du code non seulement pour travailler, mais aussi pour empêcher les autres programmeurs de rire. Dans le cas de grands projets, c'est probablement le cas, mais le copier-coller n'est pas si visible. Aux mainteneurs, hélas aussi. Et puis un jour, après avoir reçu des développeurs d'un programme un commentaire que «si ici et ici ces trois lignes sont mises dans une méthode auxiliaire, alors probablement dans les vingt autres endroits également», j'ai décidé d'évaluer l'ampleur de ce qui se passait. D'une part, répéter un motif de trois lignes peut sembler sans peur. D'un autre côté, cela a clairement un certain sens et il sera plus facile pour les contributeurs nouveaux arrivants si le sens est clairement reflété dans le nom de la méthode.


Texte masqué
discuter du code de quelqu'un au travail:
xxx: Vous imaginez donc qu'il a un fragment de code de 15 lignes répété 37 fois. Si vous le mettez dans une fonction, vous pouvez enregistrer une demi-centaine de lignes!
yyy: c'est un refrain.

bash.im


Sans réfléchir à deux fois, j'ai lancé CPD sur ce projet C ++, m'attendant à voir une liste de répétition de ce modèle à trois lignes. Je ne l'ai tout simplement pas rencontré (il n'a pas dépassé le seuil par défaut pour le nombre de jetons par répétition), mais j'ai vu de nombreux cas comme répéter une méthode identique de 50 lignes dans deux descendants différents de la même classe.


Il est peu probable que le développeur principal ait copié consciemment un tel morceau - apparemment, quelque chose d'autre s'est produit: quelqu'un a ajouté une fois cette méthode dans l'une des classes, et dans une autre demande d'extraction après beaucoup de temps, quelqu'un, sans y réfléchir à deux fois, l'a copiée. Il est logique que ce code ne soit pas pire que ce qui est déjà dans le référentiel (ha ha), il a donc été accepté.


Mozilla rr


Vous est-il déjà arrivé que pendant le débogage d'un programme, vous jouiez un bogue pendant longtemps, puis un mauvais mouvement - Passez la main au lieu de Pas dans - et c'est tout, pichalka, recommencez pendant dix minutes!


Avec le framework Mozilla record-replay, tout est quelque peu différent: "exécuter des tests au petit-déjeuner, déboguer à votre retour" ils ont dit . Cet outil n'essaie pas d'enregistrer les changements d'état après chaque instruction (ils disent que gdb a un tel mode ...), il simule plutôt l'exécution d'un programme ... en utilisant le programme lui-même. La logique est la suivante: en général, l'exécution du processus est complètement déterminée, à l'exception de certaines «perturbations»:


  • le noyau peut produire des données différentes en réponse au même appel système - il suffit de noter toutes les réponses (vous devez connaître chaque appel système "en personne" avec toutes les structures utilisées)
  • l'instruction RDTSC génère toujours quelque chose de nouveau - heureusement, elle peut être privilégiée et définir manuellement des valeurs pour chaque interruption
  • Sur un autre ordinateur, CPUID donnera également autre chose - sur de nouveaux processeurs, il peut également être privilégié
  • multithreading et multiprocessing - et ici, il est nécessaire de discuter plus en détail
  • j'ai peut-être oublié autre chose, mais le résultat est que la liste est assez finie

Si je comprends bien, cela fonctionne comme ceci: tous les threads de l'arborescence de processus entière en cours d'écriture sont entassés dans un seul thread, réduisant la "description multithreading" au nombre d'instructions entre les changements de contexte. Un inconvénient en découle. Une fois que la FSF a juré le monopole de «l'architecture Wintel», et ainsi: rr ne fonctionnera que sur «Lintel», c'est-à-dire uniquement sur Linux, et uniquement sur les processeurs Intel frais (Nehalem et supérieurs), qui ont des compteurs de performances assez stables. Il y a eu des tentatives de lancement sur Ryzen, quelque chose était même possible, mais il y a des défauts. Au détriment des autres cœurs OS - je ne sais pas.


Avec rr, vous exécutez d'abord le programme normalement, cliquez sur les boutons / entrez les commandes, tout cela avec un freinage environ une fois et demie, voire moins. Et puis vous tapez rr replay , et le programme commence à fonctionner «en réalité virtuelle», dans lequel tout se passe exactement de la même manière que lors de l'enregistrement. Naturellement, vous ne verrez pas de fenêtres et tout cela - stdout et stderr sont enregistrés - et merci pour cela. Au lieu de cela, vous verrez gdb (ils disent que les débogueurs graphiques comme QtCreator et CLion sont également pris en charge, mais je ne l'ai pas encore essayé). Mais si vous avez accidentellement entré n ( next ), puis réalisé que vous n'aviez pas à le faire, vous pouvez dire rn ( reverse-next ) ou mettre breakpoint et dire rc ( reverse-continue ). Pour autant que je comprends, reverse commandes reverse sont nativement présentes dans gdb, juste pour des raisons évidentes, il est rare que le backend puisse le supporter.


Un chic spécial, à mon avis, est de rechercher la cause du dysfonctionnement de cette façon: ici, vous avez appuyé sur c , et le programme s'est arrêté à l'affirmation. Après avoir étudié l'état des variables avec l' print vous vous êtes rendu compte quelle variable a une valeur incorrecte. Mais qui l'a exposée? Vous dites simplement watch -l <> (je confond toujours la syntaxe, j'espère que non cette fois) , en définissant le point d'arrêt matériel pour écrire en mémoire, puis dites rc ( reverse-continue ) - savon, lavage, répétition ... Seulement n'oubliez pas de supprimer les anciens points de surveillance matériels de la mémoire, car ils sont peu nombreux.


Mais peut-il en être de même, mais avec des boutons en nacre?


Tout d'abord, que faire si vous souhaitez déboguer le système d'exploitation dans une machine virtuelle? Je ne l'ai pas encore rencontré moi-même, mais, disent-ils, QEMU a gdbserver et en général. Et si vous voulez la même chose qu'en rr, mais pour QEMU? La documentation mentionne l' enregistrement / la relecture intégré :


Les fonctions d'enregistrement / relecture sont utilisées pour l'exécution inverse et la relecture déterministe de l'exécution de qemu. La relecture déterministe est utilisée pour enregistrer une fois une exécution volatile du système et la relire plusieurs fois à des fins d'analyse, de débogage, de journalisation, etc. Cette implémentation de la relecture déterministe peut être utilisée pour le débogage déterministe et inversé du code invité via une interface distante gdb.

Par ailleurs, la première version des correctifs a été développée, selon la même page, par l'Institut de programmation système de l'Académie russe des sciences.


Eh bien, et si vous voulez déboguer un processus, mais en Java? Il existe un dérouleur HotSpot pour GDB. Sur une demande similaire, il existe une telle page où il est dit qu'elle bricolait de manière experte dans l'espace d'adressage JVM, fournissant des informations pour la commande bt . J'ai découvert cela par accident, en me connectant au processus JVM et en demandant une trace. Hélas, lors de la préparation de cet article sur Ubuntu 18.10, déroulez régulièrement gdb, mais l'outil peut, une fois réparé, aider d'une manière ou d'une autre en mode rr .


Il voit un œil, mais une dent est engourdie


Une fois, lors du débogage, j'ai rencontré une erreur No space left on device. Cela semblerait une chose courante, ma place s'épuise constamment en raison d'artefacts de compilation. Mais il y avait quelque chose d'étrange - df -h montré plusieurs gigaoctets libres sur chaque partition, et, pour autant que je sache, cela tient compte de l'espace réservé à l'utilisateur root. Un rapide google m'a conduit à conseiller de regarder la sortie de df -i , et en effet, il n'y avait pas d'inodes libres dans la bonne section, c'est-à-dire que les fichiers étaient petits, mais il y en avait beaucoup .


Tracer ceci et cela


Je pense que beaucoup de gens connaissent strace , et sinon, c'est souvent un utilitaire très utile qui montre quel système appelle un processus ou un arbre de processus entier.


Exemple de sortie
 $ strace ls / execve("/bin/ls", ["ls", "/"], 0x7ffd4301e518 /* 61 vars */) = 0 brk(NULL) = 0x55b660056000 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=231893, ...}) = 0 mmap(NULL, 231893, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fb941d0e000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libselinux.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20b\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=154832, ...}) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb941d0c000 mmap(NULL, 2259152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb941ae4000 mprotect(0x7fb941b09000, 2093056, PROT_NONE) = 0 mmap(0x7fb941d08000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x24000) = 0x7fb941d08000 mmap(0x7fb941d0a000, 6352, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fb941d0a000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260A\2\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1996592, ...}) = 0 mmap(NULL, 2004992, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb9418fa000 mprotect(0x7fb94191c000, 1826816, PROT_NONE) = 0 mmap(0x7fb94191c000, 1511424, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22000) = 0x7fb94191c000 mmap(0x7fb941a8d000, 311296, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7fb941a8d000 mmap(0x7fb941ada000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1df000) = 0x7fb941ada000 mmap(0x7fb941ae0000, 14336, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fb941ae0000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpcre.so.3", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p!\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=468944, ...}) = 0 mmap(NULL, 471304, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb941886000 mmap(0x7fb941888000, 335872, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7fb941888000 mmap(0x7fb9418da000, 122880, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x54000) = 0x7fb9418da000 mmap(0x7fb9418f8000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x71000) = 0x7fb9418f8000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\21\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=18656, ...}) = 0 mmap(NULL, 20752, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb941880000 mmap(0x7fb941881000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7fb941881000 mmap(0x7fb941883000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7fb941883000 mmap(0x7fb941884000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7fb941884000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`l\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=149696, ...}) = 0 mmap(NULL, 132288, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fb94185f000 mmap(0x7fb941865000, 61440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7fb941865000 mmap(0x7fb941874000, 24576, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7fb941874000 mmap(0x7fb94187a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7fb94187a000 mmap(0x7fb94187c000, 13504, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fb94187c000 close(3) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb94185d000 arch_prctl(ARCH_SET_FS, 0x7fb94185e380) = 0 mprotect(0x7fb941ada000, 16384, PROT_READ) = 0 mprotect(0x7fb94187a000, 4096, PROT_READ) = 0 mprotect(0x7fb941884000, 4096, PROT_READ) = 0 mprotect(0x7fb9418f8000, 4096, PROT_READ) = 0 mprotect(0x7fb941d08000, 4096, PROT_READ) = 0 mprotect(0x55b65ebdd000, 8192, PROT_READ) = 0 mprotect(0x7fb941d70000, 4096, PROT_READ) = 0 munmap(0x7fb941d0e000, 231893) = 0 set_tid_address(0x7fb94185e650) = 13162 set_robust_list(0x7fb94185e660, 24) = 0 rt_sigaction(SIGRTMIN, {sa_handler=0x7fb9418656c0, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7fb941871dd0}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {sa_handler=0x7fb941865750, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fb941871dd0}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 statfs("/sys/fs/selinux", 0x7fff2349efb0) = -1 ENOENT (No such file or directory) statfs("/selinux", 0x7fff2349efb0) = -1 ENOENT (No such file or directory) brk(NULL) = 0x55b660056000 brk(0x55b660077000) = 0x55b660077000 openat(AT_FDCWD, "/proc/filesystems", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0 read(3, "nodev\tsysfs\nnodev\trootfs\nnodev\tr"..., 1024) = 478 read(3, "", 1024) = 0 close(3) = 0 access("/etc/selinux/config", F_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=5703680, ...}) = 0 mmap(NULL, 5703680, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fb9412ec000 close(3) = 0 ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(1, TIOCGWINSZ, {ws_row=65, ws_col=271, ws_xpixel=0, ws_ypixel=0}) = 0 stat("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 openat(AT_FDCWD, "/", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3 fstat(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 getdents64(3, /* 30 entries */, 32768) = 808 getdents64(3, /* 0 entries */, 32768) = 0 close(3) = 0 fstat(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 1), ...}) = 0 write(1, "bin boot cdrom dev etc home"..., 192bin boot cdrom dev etc home initrd.img initrd.img.old lib lib32 lib64 libx32 lost+found media mnt opt proc root run sbin snap srv sys tmp usr var vmlinuz vmlinuz.old ) = 192 close(1) = 0 close(2) = 0 exit_group(0) = ? +++ exited with 0 +++ 

Comme vous pouvez le voir, il décode même les données d'entrée et de sortie (en général, cela est configurable).


Probablement moins de gens connaissent ltrace - un outil similaire pour analyser les appels entre des objets dynamiques (programme et bibliothèques). Hélas, il semble que le développement de ltrace abandonné, ce qui semble étrange, étant donné que l'outil est utile et devrait généralement être géré par la même équipe de développement qui a vu le chargeur depuis libc . Dans de tels cas, il est de coutume de dire "Vous ne croirez pas ..." :) Il s'avère que les dernières versions de glibc disposent de l'outil sotruss . Il a cependant moins de configurabilité, mais est pertinent dans la glibc . Il y a une mouche dans la pommade: ni ltrace ni sotruss décodent les paramètres d'appel, ce qui n'est pas surprenant - il n'y a pas de liste exhaustive des appels à décoder, des méta-informations tierces sont déjà nécessaires ici. Peut-être qu'il peut être enfermé d'une manière ou d'une autre, mais, franchement, je n'ai pas vraiment eu à utiliser le suivi de bibliothèque. Cependant, je pense qu'il est utile de connaître ces outils.


sotruss ls /
 $ sotruss ls / ls -> libc.so.6 :*strrchr(0x7ffcd884a236, 0x2f, 0x7ffcd8847f00) ls -> libc.so.6 :*setlocale(0x6, 0x5642e3e888ca, 0x14) ls -> libc.so.6 :*bindtextdomain(0x5642e3e889fb, 0x5642e3e88a15, 0x0) ls -> libc.so.6 :*textdomain(0x5642e3e889fb, 0x0, 0x1) ls -> libc.so.6 :*__cxa_atexit(0x5642e3e7d640, 0x0, 0x5642e3e92008) ls -> libc.so.6 :*isatty(0x1, 0x1, 0x2) ls -> libc.so.6 :*getenv(0x5642e3e88a27, 0x3, 0x0) ls -> libc.so.6 :*getenv(0x5642e3e88a35, 0x3, 0x5642e3e88a27) ls -> libc.so.6 :*ioctl(0x1, 0x5413, 0x7ffcd8847db0) ls -> libc.so.6 :*getenv(0x5642e3e88a3d, 0x5413, 0x7ffcd8847db0) ls -> libc.so.6 :*getopt_long(0x2, 0x7ffcd8847ee8, 0x5642e3e8adc8) ls -> libc.so.6 :*getenv(0x5642e3e88ae5, 0x1, 0x7f4e75bc9000) ls -> libc.so.6 :*getenv(0x5642e3e88ae8, 0x5642e3e93328, 0x5642e3e93320) ls -> libc.so.6 :*getenv(0x5642e3e8b08c, 0x5642e3e93328, 0x5642e3e88ae8) ls -> libc.so.6 :*getenv(0x5642e3e8b096, 0x5642e3e93328, 0x5642e3e8b08c) ls -> libc.so.6 :*getenv(0x5642e3e88ae8, 0x5642e3e93328, 0x5642e3e8b096) ls -> libc.so.6 :*__errno_location(0x0, 0x5642e3e93328, 0x0) ls -> libc.so.6 :*memcpy(0x5642e534db30, 0x5642e3e93520, 0x38) ls -> libc.so.6 :*__errno_location(0x0, 0x5642e3e93520, 0x38) ls -> libc.so.6 :*memcpy(0x5642e534db70, 0x5642e3e93520, 0x38) ls -> libc.so.6 :*getenv(0x5642e3e88bbc, 0x0, 0x2) ls -> libc.so.6 :*__errno_location(0x7ffcd88479a6, 0x2, 0x7ffcd884a239) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd88479a6, 0x2, 0x7ffcd884a239) ls -> libc.so.6 :*strlen(0x7ffcd884a239, 0x5642e534db38, 0x2f) ls -> libc.so.6 :*__xstat(0x1, 0x7ffcd884a239, 0x5642e534dc58) ls -> libc.so.6 :*strlen(0x7ffcd884a239, 0x5642e534dc58, 0x1) ls -> libc.so.6 :*memcpy(0x5642e5352a70, 0x7ffcd884a239, 0x2) ls -> libc.so.6 :*_setjmp(0x5642e3e92300, 0x5642e5352aa0, 0x5642e534dd08) ls -> libc.so.6 :*strlen(0x5642e5352a70, 0x5642e5352ad0, 0x5642e5352ab0) ls -> libc.so.6 :*memcpy(0x5642e5352ae0, 0x5642e5352a70, 0x2) ls -> libselinux.so.1:*freecon(0x0, 0x0, 0x0) ls -> libc.so.6 :*__errno_location(0x5642e5352ae0, 0x0, 0x1) ls -> libc.so.6 :*opendir(0x5642e5352ae0, 0x0, 0x1) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x5642e535ab30, 0x5642e5352b00) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352b43) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352b43) ls -> libc.so.6 :*strlen(0x5642e5352b43, 0x5642e534db38, 0x6c) ls -> libc.so.6 :*strlen(0x5642e5352b43, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e5352a70, 0x5642e5352b43, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x9e8c788d5275094, 0x5642e5352b48) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352b73) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352b73) ls -> libc.so.6 :*strlen(0x5642e5352b73, 0x5642e534db38, 0x76) ls -> libc.so.6 :*strlen(0x5642e5352b73, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ab40, 0x5642e5352b73, 0xc) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0xc) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352b93) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352b93) ls -> libc.so.6 :*strlen(0x5642e5352b93, 0x5642e534db38, 0x65) ls -> libc.so.6 :*strlen(0x5642e5352b93, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ab60, 0x5642e5352b93, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352bab) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352bab) ls -> libc.so.6 :*strlen(0x5642e5352bab, 0x5642e534db38, 0x62) ls -> libc.so.6 :*strlen(0x5642e5352bab, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ab80, 0x5642e5352bab, 0x5) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x5) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352bc3) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352bc3) ls -> libc.so.6 :*strlen(0x5642e5352bc3, 0x5642e534db38, 0x63) ls -> libc.so.6 :*strlen(0x5642e5352bc3, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535aba0, 0x5642e5352bc3, 0x6) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x6) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352be3) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352be3) ls -> libc.so.6 :*strlen(0x5642e5352be3, 0x5642e534db38, 0x72) ls -> libc.so.6 :*strlen(0x5642e5352be3, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535abc0, 0x5642e5352be3, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352bfb) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352bfb) ls -> libc.so.6 :*strlen(0x5642e5352bfb, 0x5642e534db38, 0x73) ls -> libc.so.6 :*strlen(0x5642e5352bfb, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535abe0, 0x5642e5352bfb, 0x5) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x5) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352c13) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352c13) ls -> libc.so.6 :*strlen(0x5642e5352c13, 0x5642e534db38, 0x74) ls -> libc.so.6 :*strlen(0x5642e5352c13, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ac00, 0x5642e5352c13, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352c2b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352c2b) ls -> libc.so.6 :*strlen(0x5642e5352c2b, 0x5642e534db38, 0x73) ls -> libc.so.6 :*strlen(0x5642e5352c2b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ac20, 0x5642e5352c2b, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352c43) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352c43) ls -> libc.so.6 :*strlen(0x5642e5352c43, 0x5642e534db38, 0x75) ls -> libc.so.6 :*strlen(0x5642e5352c43, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ac40, 0x5642e5352c43, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352c5b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352c5b) ls -> libc.so.6 :*strlen(0x5642e5352c5b, 0x5642e534db38, 0x6f) ls -> libc.so.6 :*strlen(0x5642e5352c5b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ac60, 0x5642e5352c5b, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352c73) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352c73) ls -> libc.so.6 :*strlen(0x5642e5352c73, 0x5642e534db38, 0x72) ls -> libc.so.6 :*strlen(0x5642e5352c73, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ac80, 0x5642e5352c73, 0x5) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x5) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352c8b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352c8b) ls -> libc.so.6 :*strlen(0x5642e5352c8b, 0x5642e534db38, 0x6d) ls -> libc.so.6 :*strlen(0x5642e5352c8b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535aca0, 0x5642e5352c8b, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352ca3) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352ca3) ls -> libc.so.6 :*strlen(0x5642e5352ca3, 0x5642e534db38, 0x62) ls -> libc.so.6 :*strlen(0x5642e5352ca3, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535acc0, 0x5642e5352ca3, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x4718f72f38efb8b7, 0x5642e5352ca8) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352cd3) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352cd3) ls -> libc.so.6 :*strlen(0x5642e5352cd3, 0x5642e534db38, 0x6d) ls -> libc.so.6 :*strlen(0x5642e5352cd3, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ace0, 0x5642e5352cd3, 0x6) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x6) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352cf3) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352cf3) ls -> libc.so.6 :*strlen(0x5642e5352cf3, 0x5642e534db38, 0x76) ls -> libc.so.6 :*strlen(0x5642e5352cf3, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ad00, 0x5642e5352cf3, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352d0b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352d0b) ls -> libc.so.6 :*strlen(0x5642e5352d0b, 0x5642e534db38, 0x69) ls -> libc.so.6 :*strlen(0x5642e5352d0b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ad20, 0x5642e5352d0b, 0xf) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0xf) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352d33) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352d33) ls -> libc.so.6 :*strlen(0x5642e5352d33, 0x5642e534db38, 0x70) ls -> libc.so.6 :*strlen(0x5642e5352d33, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ad40, 0x5642e5352d33, 0x5) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x5) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352d4b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352d4b) ls -> libc.so.6 :*strlen(0x5642e5352d4b, 0x5642e534db38, 0x73) ls -> libc.so.6 :*strlen(0x5642e5352d4b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ad60, 0x5642e5352d4b, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352d63) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352d63) ls -> libc.so.6 :*strlen(0x5642e5352d63, 0x5642e534db38, 0x64) ls -> libc.so.6 :*strlen(0x5642e5352d63, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ad80, 0x5642e5352d63, 0x4) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x4) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352d7b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352d7b) ls -> libc.so.6 :*strlen(0x5642e5352d7b, 0x5642e534db38, 0x69) ls -> libc.so.6 :*strlen(0x5642e5352d7b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ada0, 0x5642e5352d7b, 0xb) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0xb) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352d9b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352d9b) ls -> libc.so.6 :*strlen(0x5642e5352d9b, 0x5642e534db38, 0x73) ls -> libc.so.6 :*strlen(0x5642e5352d9b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535adc0, 0x5642e5352d9b, 0x5) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x5) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352db3) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352db3) ls -> libc.so.6 :*strlen(0x5642e5352db3, 0x5642e534db38, 0x6c) ls -> libc.so.6 :*strlen(0x5642e5352db3, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ade0, 0x5642e5352db3, 0x6) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x6) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352dd3) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352dd3) ls -> libc.so.6 :*strlen(0x5642e5352dd3, 0x5642e534db38, 0x68) ls -> libc.so.6 :*strlen(0x5642e5352dd3, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ae00, 0x5642e5352dd3, 0x5) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x5) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352deb) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352deb) ls -> libc.so.6 :*strlen(0x5642e5352deb, 0x5642e534db38, 0x6c) ls -> libc.so.6 :*strlen(0x5642e5352deb, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ae20, 0x5642e5352deb, 0x7) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x7) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352e0b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352e0b) ls -> libc.so.6 :*strlen(0x5642e5352e0b, 0x5642e534db38, 0x6c) ls -> libc.so.6 :*strlen(0x5642e5352e0b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ae40, 0x5642e5352e0b, 0xb) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0xb) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352e2b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352e2b) ls -> libc.so.6 :*strlen(0x5642e5352e2b, 0x5642e534db38, 0x6c) ls -> libc.so.6 :*strlen(0x5642e5352e2b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ae60, 0x5642e5352e2b, 0x6) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x6) ls -> libc.so.6 :*__errno_location(0x7ffcd8847626, 0x2, 0x5642e5352e4b) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x7ffcd8847626, 0x2, 0x5642e5352e4b) ls -> libc.so.6 :*strlen(0x5642e5352e4b, 0x5642e534db38, 0x76) ls -> libc.so.6 :*strlen(0x5642e5352e4b, 0x5642e534db38, 0x0) ls -> libc.so.6 :*memcpy(0x5642e535ae80, 0x5642e5352e4b, 0x8) ls -> libc.so.6 :*readdir(0x5642e5352b00, 0x0, 0x8) ls -> libc.so.6 :*closedir(0x5642e5352b00, 0x5642e5352b30, 0x0) ls -> libc.so.6 :*_setjmp(0x5642e3e92300, 0x5642e5352da0, 0x5642e534f220) ls -> libc.so.6 :*__errno_location(0x5642e535ae60, 0x5642e535ae80, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ae60, 0x5642e535ae80, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ae20, 0x5642e535ae40, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ae20, 0x5642e535ae40, 0x5642e5352be0) ls -> libc.so.6 :*memcpy(0x5642e5352be8, 0x5642e5352bc8, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ae20, 0x5642e535ae60, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ae20, 0x5642e535ae60, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ae20, 0x5642e535ae80, 0xc6) ls -> libc.so.6 :*strcoll(0x5642e535ae20, 0x5642e535ae80, 0xc6) ls -> libc.so.6 :*__errno_location(0x5642e535ae40, 0x5642e535ae80, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ae40, 0x5642e535ae80, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ade0, 0x5642e535ae00, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ade0, 0x5642e535ae00, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535adc0, 0x5642e535ae00, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535adc0, 0x5642e535ae00, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535adc0, 0x5642e535ade0, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535adc0, 0x5642e535ade0, 0xc5) ls -> libc.so.6 :*memcpy(0x5642e5352bf0, 0x5642e5352ba8, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ae00, 0x5642e535ae60, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ae00, 0x5642e535ae60, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ade0, 0x5642e535ae60, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ade0, 0x5642e535ae60, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535adc0, 0x5642e535ae60, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535adc0, 0x5642e535ae60, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535adc0, 0x5642e535ae20, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535adc0, 0x5642e535ae20, 0xc5) ls -> libc.so.6 :*__errno_location(0x5642e535adc0, 0x5642e535ae40, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535adc0, 0x5642e535ae40, 0xc5) ls -> libc.so.6 :*__errno_location(0x5642e535adc0, 0x5642e535ae80, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535adc0, 0x5642e535ae80, 0xc5) ls -> libc.so.6 :*__errno_location(0x5642e535ad80, 0x5642e535ada0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ad80, 0x5642e535ada0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ad40, 0x5642e535ad60, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ad40, 0x5642e535ad60, 0x5642e5352be0) ls -> libc.so.6 :*memcpy(0x5642e5352be8, 0x5642e5352b90, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ad40, 0x5642e535ad80, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ad40, 0x5642e535ad80, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ad40, 0x5642e535ada0, 0xc4) ls -> libc.so.6 :*strcoll(0x5642e535ad40, 0x5642e535ada0, 0xc4) ls -> libc.so.6 :*memcpy(0x5642e5352b98, 0x5642e5352be0, 0x10) ls -> libc.so.6 :*__errno_location(0x5642e535ad00, 0x5642e535ad20, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ad00, 0x5642e535ad20, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ace0, 0x5642e535ad20, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535ace0, 0x5642e535ad20, 0xc5) ls -> libc.so.6 :*__errno_location(0x5642e535ace0, 0x5642e535ad00, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e535ace0, 0x5642e535ad00, 0xc3) ls -> libc.so.6 :*__errno_location(0x5642e535ad20, 0x5642e535ad80, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e535ad20, 0x5642e535ad80, 0xc3) ls -> libc.so.6 :*__errno_location(0x5642e535ad20, 0x5642e535ada0, 0xc2) ls -> libc.so.6 :*strcoll(0x5642e535ad20, 0x5642e535ada0, 0xc2) ls -> libc.so.6 :*__errno_location(0x5642e535ad20, 0x5642e535ad40, 0x9) ls -> libc.so.6 :*strcoll(0x5642e535ad20, 0x5642e535ad40, 0x9) ls -> libc.so.6 :*__errno_location(0x5642e535ace0, 0x5642e535ad40, 0xc2) ls -> libc.so.6 :*strcoll(0x5642e535ace0, 0x5642e535ad40, 0xc2) ls -> libc.so.6 :*__errno_location(0x5642e535ad00, 0x5642e535ad40, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e535ad00, 0x5642e535ad40, 0xc3) ls -> libc.so.6 :*__errno_location(0x5642e535ad00, 0x5642e535ad60, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535ad00, 0x5642e535ad60, 0xc5) ls -> libc.so.6 :*memcpy(0x5642e5352c10, 0x5642e5352b80, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ad80, 0x5642e535ae00, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ad80, 0x5642e535ae00, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ada0, 0x5642e535ae00, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ada0, 0x5642e535ae00, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ada0, 0x5642e535ade0, 0xb5) ls -> libc.so.6 :*strcoll(0x5642e535ada0, 0x5642e535ade0, 0xb5) ls -> libc.so.6 :*__errno_location(0x5642e535ad20, 0x5642e535ade0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ad20, 0x5642e535ade0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ace0, 0x5642e535ade0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ace0, 0x5642e535ade0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ace0, 0x5642e535ae60, 0xa5) ls -> libc.so.6 :*strcoll(0x5642e535ace0, 0x5642e535ae60, 0xa5) ls -> libc.so.6 :*__errno_location(0x5642e535ace0, 0x5642e535ae20, 0xa5) ls -> libc.so.6 :*strcoll(0x5642e535ace0, 0x5642e535ae20, 0xa5) ls -> libc.so.6 :*__errno_location(0x5642e535ace0, 0x5642e535ae40, 0xa5) ls -> libc.so.6 :*strcoll(0x5642e535ace0, 0x5642e535ae40, 0xa5) ls -> libc.so.6 :*__errno_location(0x5642e535ace0, 0x5642e535adc0, 0xa5) ls -> libc.so.6 :*strcoll(0x5642e535ace0, 0x5642e535adc0, 0xa5) ls -> libc.so.6 :*__errno_location(0x5642e535ad40, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ad40, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ad60, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ad60, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ad60, 0x5642e535ae80, 0xc6) ls -> libc.so.6 :*strcoll(0x5642e535ad60, 0x5642e535ae80, 0xc6) ls -> libc.so.6 :*__errno_location(0x5642e535ad00, 0x5642e535ae80, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ad00, 0x5642e535ae80, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535aca0, 0x5642e535acc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535aca0, 0x5642e535acc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ac60, 0x5642e535ac80, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ac60, 0x5642e535ac80, 0x5642e5352be0) ls -> libc.so.6 :*memcpy(0x5642e5352be8, 0x5642e5352b58, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ac60, 0x5642e535acc0, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ac60, 0x5642e535acc0, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ac60, 0x5642e535aca0, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e535ac60, 0x5642e535aca0, 0xc3) ls -> libc.so.6 :*memcpy(0x5642e5352b60, 0x5642e5352be0, 0x10) ls -> libc.so.6 :*__errno_location(0x5642e535ac20, 0x5642e535ac40, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ac20, 0x5642e535ac40, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ac00, 0x5642e535ac20, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ac00, 0x5642e535ac20, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ac00, 0x5642e535ac40, 0x98) ls -> libc.so.6 :*strcoll(0x5642e535ac00, 0x5642e535ac40, 0x98) ls -> libc.so.6 :*memcpy(0x5642e5352bf0, 0x5642e5352b48, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ac20, 0x5642e535acc0, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ac20, 0x5642e535acc0, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ac20, 0x5642e535aca0, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535ac20, 0x5642e535aca0, 0xc5) ls -> libc.so.6 :*__errno_location(0x5642e535ac20, 0x5642e535ac60, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535ac20, 0x5642e535ac60, 0xc5) ls -> libc.so.6 :*__errno_location(0x5642e535ac20, 0x5642e535ac80, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535ac20, 0x5642e535ac80, 0xc5) ls -> libc.so.6 :*memcpy(0x5642e5352b58, 0x5642e5352be0, 0x18) ls -> libc.so.6 :*__errno_location(0x5642e535abc0, 0x5642e535abe0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535abc0, 0x5642e535abe0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ab80, 0x5642e535aba0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ab80, 0x5642e535aba0, 0x5642e5352be0) ls -> libc.so.6 :*memcpy(0x5642e5352be8, 0x5642e5352b20, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ab80, 0x5642e535abc0, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ab80, 0x5642e535abc0, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535aba0, 0x5642e535abc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535aba0, 0x5642e535abc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ab40, 0x5642e535ab60, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ab40, 0x5642e535ab60, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e5352a70, 0x5642e535ab60, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e5352a70, 0x5642e535ab60, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e5352a70, 0x5642e535ab40, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e5352a70, 0x5642e535ab40, 0xc3) ls -> libc.so.6 :*memcpy(0x5642e5352bf0, 0x5642e5352b10, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ab60, 0x5642e535ab80, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ab60, 0x5642e535ab80, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ab60, 0x5642e535aba0, 0x7e) ls -> libc.so.6 :*strcoll(0x5642e535ab60, 0x5642e535aba0, 0x7e) ls -> libc.so.6 :*__errno_location(0x5642e535ab60, 0x5642e535abc0, 0x7e) ls -> libc.so.6 :*strcoll(0x5642e535ab60, 0x5642e535abc0, 0x7e) ls -> libc.so.6 :*__errno_location(0x5642e5352a70, 0x5642e535abc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e5352a70, 0x5642e535abc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ab40, 0x5642e535abc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ab40, 0x5642e535abc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ab40, 0x5642e535abe0, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535ab40, 0x5642e535abe0, 0xc5) ls -> libc.so.6 :*memcpy(0x5642e5352b30, 0x5642e5352bf0, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ab80, 0x5642e535acc0, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535ab80, 0x5642e535acc0, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ab80, 0x5642e535aca0, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e535ab80, 0x5642e535aca0, 0xc3) ls -> libc.so.6 :*__errno_location(0x5642e535aba0, 0x5642e535aca0, 0x5e) ls -> libc.so.6 :*strcoll(0x5642e535aba0, 0x5642e535aca0, 0x5e) ls -> libc.so.6 :*__errno_location(0x5642e535ab60, 0x5642e535aca0, 0x69) ls -> libc.so.6 :*strcoll(0x5642e535ab60, 0x5642e535aca0, 0x69) ls -> libc.so.6 :*__errno_location(0x5642e5352a70, 0x5642e535aca0, 0x7e) ls -> libc.so.6 :*strcoll(0x5642e5352a70, 0x5642e535aca0, 0x7e) ls -> libc.so.6 :*__errno_location(0x5642e535abc0, 0x5642e535aca0, 0x90) ls -> libc.so.6 :*strcoll(0x5642e535abc0, 0x5642e535aca0, 0x90) ls -> libc.so.6 :*__errno_location(0x5642e535abc0, 0x5642e535ac60, 0xc4) ls -> libc.so.6 :*strcoll(0x5642e535abc0, 0x5642e535ac60, 0xc4) ls -> libc.so.6 :*__errno_location(0x5642e535abc0, 0x5642e535ac80, 0xc4) ls -> libc.so.6 :*strcoll(0x5642e535abc0, 0x5642e535ac80, 0xc4) ls -> libc.so.6 :*__errno_location(0x5642e535abc0, 0x5642e535ac20, 0xc5) ls -> libc.so.6 :*strcoll(0x5642e535abc0, 0x5642e535ac20, 0xc5) ls -> libc.so.6 :*__errno_location(0x5642e535abe0, 0x5642e535ac20, 0xc4) ls -> libc.so.6 :*strcoll(0x5642e535abe0, 0x5642e535ac20, 0xc4) ls -> libc.so.6 :*__errno_location(0x5642e535ab40, 0x5642e535ac20, 0x5e) ls -> libc.so.6 :*strcoll(0x5642e535ab40, 0x5642e535ac20, 0x5e) ls -> libc.so.6 :*__errno_location(0x5642e535ab40, 0x5642e535ac00, 0xb9) ls -> libc.so.6 :*strcoll(0x5642e535ab40, 0x5642e535ac00, 0xb9) ls -> libc.so.6 :*__errno_location(0x5642e535ab40, 0x5642e535ac40, 0xb9) ls -> libc.so.6 :*strcoll(0x5642e535ab40, 0x5642e535ac40, 0xb9) ls -> libc.so.6 :*memcpy(0x5642e5352c48, 0x5642e5352b30, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535acc0, 0x5642e535ad80, 0x8) ls -> libc.so.6 :*strcoll(0x5642e535acc0, 0x5642e535ad80, 0x8) ls -> libc.so.6 :*__errno_location(0x5642e535ab80, 0x5642e535ad80, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ab80, 0x5642e535ad80, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535aba0, 0x5642e535ad80, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535aba0, 0x5642e535ad80, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ab60, 0x5642e535ad80, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ab60, 0x5642e535ad80, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ab60, 0x5642e535ae00, 0x7e) ls -> libc.so.6 :*strcoll(0x5642e535ab60, 0x5642e535ae00, 0x7e) ls -> libc.so.6 :*__errno_location(0x5642e5352a70, 0x5642e535ae00, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e5352a70, 0x5642e535ae00, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e5352a70, 0x5642e535ada0, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e5352a70, 0x5642e535ada0, 0xc3) ls -> libc.so.6 :*__errno_location(0x5642e5352a70, 0x5642e535ad20, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e5352a70, 0x5642e535ad20, 0xc3) ls -> libc.so.6 :*__errno_location(0x5642e5352a70, 0x5642e535ade0, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e5352a70, 0x5642e535ade0, 0xc3) ls -> libc.so.6 :*__errno_location(0x5642e535aca0, 0x5642e535ade0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535aca0, 0x5642e535ade0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535aca0, 0x5642e535ae60, 0xa5) ls -> libc.so.6 :*strcoll(0x5642e535aca0, 0x5642e535ae60, 0xa5) ls -> libc.so.6 :*__errno_location(0x5642e535aca0, 0x5642e535ae20, 0xa5) ls -> libc.so.6 :*strcoll(0x5642e535aca0, 0x5642e535ae20, 0xa5) ls -> libc.so.6 :*__errno_location(0x5642e535aca0, 0x5642e535ae40, 0xa5) ls -> libc.so.6 :*strcoll(0x5642e535aca0, 0x5642e535ae40, 0xa5) ls -> libc.so.6 :*__errno_location(0x5642e535aca0, 0x5642e535ace0, 0xa5) ls -> libc.so.6 :*strcoll(0x5642e535aca0, 0x5642e535ace0, 0xa5) ls -> libc.so.6 :*__errno_location(0x5642e535aca0, 0x5642e535ad40, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e535aca0, 0x5642e535ad40, 0xc3) ls -> libc.so.6 :*__errno_location(0x5642e535ac60, 0x5642e535ad40, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ac60, 0x5642e535ad40, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ac80, 0x5642e535ad40, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ac80, 0x5642e535ad40, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ac80, 0x5642e535adc0, 0xac) ls -> libc.so.6 :*strcoll(0x5642e535ac80, 0x5642e535adc0, 0xac) ls -> libc.so.6 :*__errno_location(0x5642e535abc0, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535abc0, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535abe0, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535abe0, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ac20, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ac20, 0x5642e535adc0, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ac20, 0x5642e535ad60, 0xc4) ls -> libc.so.6 :*strcoll(0x5642e535ac20, 0x5642e535ad60, 0xc4) ls -> libc.so.6 :*__errno_location(0x5642e535ac00, 0x5642e535ad60, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ac00, 0x5642e535ad60, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ac00, 0x5642e535ad00, 0x98) ls -> libc.so.6 :*strcoll(0x5642e535ac00, 0x5642e535ad00, 0x98) ls -> libc.so.6 :*__errno_location(0x5642e535ac40, 0x5642e535ad00, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ac40, 0x5642e535ad00, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ab40, 0x5642e535ad00, 0x5642e5352be0) ls -> libc.so.6 :*strcoll(0x5642e535ab40, 0x5642e535ad00, 0x5642e5352be0) ls -> libc.so.6 :*__errno_location(0x5642e535ab40, 0x5642e535ae80, 0xc3) ls -> libc.so.6 :*strcoll(0x5642e535ab40, 0x5642e535ae80, 0xc3) ls -> libc.so.6 :*memcpy(0x5642e5352bd8, 0x5642e5352c48, 0x8) ls -> libc.so.6 :*realloc(0x0, 0x540, 0x0) ls -> libc.so.6 :*strlen(0x5642e535acc0, 0x5642e535acc0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535acc0, 0x5642e535acc0, 0x5642e535acc0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535acc0, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ab80, 0x5642e535ab80, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab80, 0x5642e535ab80, 0x5642e535ab80) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab80, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535aba0, 0x5642e535aba0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535aba0, 0x5642e535aba0, 0x5642e535aba0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535aba0, 0x5, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad80, 0x5642e535ad80, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad80, 0x5642e535ad80, 0x5642e535ad80) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad80, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ab60, 0x5642e535ab60, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab60, 0x5642e535ab60, 0x5642e535ab60) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab60, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae00, 0x5642e535ae00, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae00, 0x5642e535ae00, 0x5642e535ae00) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae00, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ada0, 0x5642e535ada0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ada0, 0x5642e535ada0, 0x5642e535ada0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ada0, 0xa, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad20, 0x5642e535ad20, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad20, 0x5642e535ad20, 0x5642e535ad20) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad20, 0xe, 0x0) ls -> libc.so.6 :*strlen(0x5642e5352a70, 0x5642e5352a70, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e5352a60, 0x5642e5352a70, 0x5642e5352a70) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e5352a70, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ade0, 0x5642e535ade0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ade0, 0x5642e535ade0, 0x5642e535ade0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ade0, 0x5, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae60, 0x5642e535ae60, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae60, 0x5642e535ae60, 0x5642e535ae60) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae60, 0x5, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae20, 0x5642e535ae20, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae20, 0x5642e535ae20, 0x5642e535ae20) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae20, 0x6, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae40, 0x5642e535ae40, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae40, 0x5642e535ae40, 0x5642e535ae40) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae40, 0xa, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ace0, 0x5642e535ace0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ace0, 0x5642e535ace0, 0x5642e535ace0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ace0, 0x5, 0x0) ls -> libc.so.6 :*strlen(0x5642e535aca0, 0x5642e535aca0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535aca0, 0x5642e535aca0, 0x5642e535aca0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535aca0, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac60, 0x5642e535ac60, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac60, 0x5642e535ac60, 0x5642e535ac60) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac60, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad40, 0x5642e535ad40, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad40, 0x5642e535ad40, 0x5642e535ad40) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad40, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac80, 0x5642e535ac80, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac80, 0x5642e535ac80, 0x5642e535ac80) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac80, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535abc0, 0x5642e535abc0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535abc0, 0x5642e535abc0, 0x5642e535abc0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535abc0, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535abe0, 0x5642e535abe0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535abe0, 0x5642e535abe0, 0x5642e535abe0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535abe0, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535adc0, 0x5642e535adc0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535adc0, 0x5642e535adc0, 0x5642e535adc0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535adc0, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac20, 0x5642e535ac20, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac20, 0x5642e535ac20, 0x5642e535ac20) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac20, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad60, 0x5642e535ad60, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad60, 0x5642e535ad60, 0x5642e535ad60) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad60, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac00, 0x5642e535ac00, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac00, 0x5642e535ac00, 0x5642e535ac00) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac00, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac40, 0x5642e535ac40, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac40, 0x5642e535ac40, 0x5642e535ac40) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac40, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad00, 0x5642e535ad00, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad00, 0x5642e535ad00, 0x5642e535ad00) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad00, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae80, 0x5642e535ae80, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae80, 0x5642e535ae80, 0x5642e535ae80) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae80, 0x7, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ab40, 0x5642e535ab40, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab40, 0x5642e535ab40, 0x5642e535ab40) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab40, 0xb, 0x0) ls -> libc.so.6 :*strlen(0x5642e535acc0, 0x5642e535acc0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535acc0, 0x5642e535acc0, 0x5642e535acc0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535acc0, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535acc0, 0x5642e535acc0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535acc0, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x5) ls -> libc.so.6 :*strlen(0x5642e535ab80, 0x5642e535ab80, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab80, 0x5642e535ab80, 0x5642e535ab80) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab80, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ab80, 0x5642e535ab80, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ab80, 0x1, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x2) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x3) ls -> libc.so.6 :*strlen(0x5642e535aba0, 0x5642e535aba0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535aba0, 0x5642e535aba0, 0x5642e535aba0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535aba0, 0x5, 0x0) ls -> libc.so.6 :*strlen(0x5642e535aba0, 0x5642e535aba0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535aba0, 0x1, 0x5) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x1) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x2) ls -> libc.so.6 :*strlen(0x5642e535ad80, 0x5642e535ad80, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad80, 0x5642e535ad80, 0x5642e535ad80) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad80, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad80, 0x5642e535ad80, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ad80, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x6) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x7) ls -> libc.so.6 :*strlen(0x5642e535ab60, 0x5642e535ab60, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab60, 0x5642e535ab60, 0x5642e535ab60) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab60, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ab60, 0x5642e535ab60, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ab60, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*strlen(0x5642e535ae00, 0x5642e535ae00, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae00, 0x5642e535ae00, 0x5642e535ae00) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae00, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae00, 0x5642e535ae00, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ae00, 0x1, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x1) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x2) ls -> libc.so.6 :*strlen(0x5642e535ada0, 0x5642e535ada0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ada0, 0x5642e535ada0, 0x5642e535ada0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ada0, 0xa, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ada0, 0x5642e535ada0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ada0, 0x1, 0xa) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x5) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x6) ls -> libc.so.6 :*strlen(0x5642e535ad20, 0x5642e535ad20, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad20, 0x5642e535ad20, 0x5642e535ad20) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad20, 0xe, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad20, 0x5642e535ad20, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ad20, 0x1, 0xe) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x5) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x6) ls -> libc.so.6 :*strlen(0x5642e5352a70, 0x5642e5352a70, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e5352a60, 0x5642e5352a70, 0x5642e5352a70) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e5352a70, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e5352a70, 0x5642e5352a70, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e5352a70, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x2) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x3) ls -> libc.so.6 :*strlen(0x5642e535ade0, 0x5642e535ade0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ade0, 0x5642e535ade0, 0x5642e535ade0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ade0, 0x5, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ade0, 0x5642e535ade0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ade0, 0x1, 0x5) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x1) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x2) ls -> libc.so.6 :*strlen(0x5642e535ae60, 0x5642e535ae60, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae60, 0x5642e535ae60, 0x5642e535ae60) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae60, 0x5, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae60, 0x5642e535ae60, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ae60, 0x1, 0x5) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x0) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x1) ls -> libc.so.6 :*strlen(0x5642e535ae20, 0x5642e535ae20, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae20, 0x5642e535ae20, 0x5642e535ae20) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae20, 0x6, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae20, 0x5642e535ae20, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ae20, 0x1, 0x6) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x0) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x1) ls -> libc.so.6 :*strlen(0x5642e535ae40, 0x5642e535ae40, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae40, 0x5642e535ae40, 0x5642e535ae40) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae40, 0xa, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae40, 0x5642e535ae40, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ae40, 0x1, 0xa) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x5) ls -> libc.so.6 :*strlen(0x5642e535ace0, 0x5642e535ace0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ace0, 0x5642e535ace0, 0x5642e535ace0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ace0, 0x5, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ace0, 0x5642e535ace0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ace0, 0x1, 0x5) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*strlen(0x5642e535aca0, 0x5642e535aca0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535aca0, 0x5642e535aca0, 0x5642e535aca0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535aca0, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535aca0, 0x5642e535aca0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535aca0, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x0) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x1) ls -> libc.so.6 :*strlen(0x5642e535ac60, 0x5642e535ac60, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac60, 0x5642e535ac60, 0x5642e535ac60) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac60, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac60, 0x5642e535ac60, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ac60, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x5) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x6) ls -> libc.so.6 :*strlen(0x5642e535ad40, 0x5642e535ad40, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad40, 0x5642e535ad40, 0x5642e535ad40) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad40, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad40, 0x5642e535ad40, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ad40, 0x1, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*strlen(0x5642e535ac80, 0x5642e535ac80, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac80, 0x5642e535ac80, 0x5642e535ac80) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac80, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac80, 0x5642e535ac80, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ac80, 0x1, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x1) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x2) ls -> libc.so.6 :*strlen(0x5642e535abc0, 0x5642e535abc0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535abc0, 0x5642e535abc0, 0x5642e535abc0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535abc0, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535abc0, 0x5642e535abc0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535abc0, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x6) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x7) ls -> libc.so.6 :*strlen(0x5642e535abe0, 0x5642e535abe0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535abe0, 0x5642e535abe0, 0x5642e535abe0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535abe0, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535abe0, 0x5642e535abe0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535abe0, 0x1, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x5) ls -> libc.so.6 :*strlen(0x5642e535adc0, 0x5642e535adc0, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535adc0, 0x5642e535adc0, 0x5642e535adc0) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535adc0, 0x4, 0x0) ls -> libc.so.6 :*strlen(0x5642e535adc0, 0x5642e535adc0, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535adc0, 0x1, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x2) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x3) ls -> libc.so.6 :*strlen(0x5642e535ac20, 0x5642e535ac20, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac20, 0x5642e535ac20, 0x5642e535ac20) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac20, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac20, 0x5642e535ac20, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ac20, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x9, 0x7) ls -> libc.so.6 :*strlen(0x5642e535ad60, 0x5642e535ad60, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad60, 0x5642e535ad60, 0x5642e535ad60) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad60, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad60, 0x5642e535ad60, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ad60, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x5) ls -> libc.so.6 :*strlen(0x5642e535ac00, 0x5642e535ac00, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac00, 0x5642e535ac00, 0x5642e535ac00) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac00, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac00, 0x5642e535ac00, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ac00, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x1) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x2) ls -> libc.so.6 :*strlen(0x5642e535ac40, 0x5642e535ac40, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac40, 0x5642e535ac40, 0x5642e535ac40) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ac40, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ac40, 0x5642e535ac40, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ac40, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x6) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x7) ls -> libc.so.6 :*strlen(0x5642e535ad00, 0x5642e535ad00, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad00, 0x5642e535ad00, 0x5642e535ad00) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ad00, 0x3, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ad00, 0x5642e535ad00, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ad00, 0x1, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x3) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*strlen(0x5642e535ae80, 0x5642e535ae80, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae80, 0x5642e535ae80, 0x5642e535ae80) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ae80, 0x7, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ae80, 0x5642e535ae80, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ae80, 0x1, 0x7) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x4) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0x20, 0x5) ls -> libc.so.6 :*strlen(0x5642e535ab40, 0x5642e535ab40, 0x5642e534db30) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab40, 0x5642e535ab40, 0x5642e535ab40) ls -> libc.so.6 :*__ctype_get_mb_cur_max(0x5642e535ab40, 0xb, 0x0) ls -> libc.so.6 :*strlen(0x5642e535ab40, 0x5642e535ab40, 0x5642e534db30) ls -> libc.so.6 :*fwrite_unlocked(0x5642e535ab40, 0x1, 0xb) ls -> libc.so.6 :*__overflow(0x7f4e75bc7760, 0xa, 0x0) bin boot cdrom dev etc home initrd.img initrd.img.old lib lib32 lib64 libx32 lost+found media mnt opt proc root run sbin snap srv sys tmp usr var vmlinuz vmlinuz.old ls -> libc.so.6 :*__fpending(0x7f4e75bc7760, 0x0, 0x5642e3e7d640) ls -> libc.so.6 :*fileno(0x7f4e75bc7760, 0x0, 0x5642e3e7d640) ls -> libc.so.6 :*__freading(0x7f4e75bc7760, 0x0, 0x5642e3e7d640) ls -> libc.so.6 :*__freading(0x7f4e75bc7760, 0x0, 0x804) ls -> libc.so.6 :*fflush(0x7f4e75bc7760, 0x0, 0x804) ls -> libc.so.6 :*fclose(0x7f4e75bc7760, 0x7f4e75bc88c0, 0x0) ls -> libc.so.6 :*__fpending(0x7f4e75bc7680, 0x0, 0x7f4e75bc2760) ls -> libc.so.6 :*fileno(0x7f4e75bc7680, 0x0, 0x7f4e75bc2760) ls -> libc.so.6 :*__freading(0x7f4e75bc7680, 0x0, 0x7f4e75bc2760) ls -> libc.so.6 :*__freading(0x7f4e75bc7680, 0x0, 0x4) ls -> libc.so.6 :*fflush(0x7f4e75bc7680, 0x0, 0x4) ls -> libc.so.6 :*fclose(0x7f4e75bc7680, 0x7f4e75bc88b0, 0x0) 

strace ,


strace date
 $ strace date execve("/bin/date", ["date"], 0x7ffd24f0d7c0 /* 60 vars */) = 0 brk(NULL) = 0x5593e5b58000 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=231893, ...}) = 0 mmap(NULL, 231893, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f043c2cd000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260A\2\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1996592, ...}) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f043c2cb000 mmap(NULL, 2004992, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f043c0e1000 mprotect(0x7f043c103000, 1826816, PROT_NONE) = 0 mmap(0x7f043c103000, 1511424, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22000) = 0x7f043c103000 mmap(0x7f043c274000, 311296, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7f043c274000 mmap(0x7f043c2c1000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1df000) = 0x7f043c2c1000 mmap(0x7f043c2c7000, 14336, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f043c2c7000 close(3) = 0 arch_prctl(ARCH_SET_FS, 0x7f043c2cc580) = 0 mprotect(0x7f043c2c1000, 16384, PROT_READ) = 0 mprotect(0x5593e5431000, 8192, PROT_READ) = 0 mprotect(0x7f043c32f000, 4096, PROT_READ) = 0 munmap(0x7f043c2cd000, 231893) = 0 brk(NULL) = 0x5593e5b58000 brk(0x5593e5b79000) = 0x5593e5b79000 openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=5703680, ...}) = 0 mmap(NULL, 5703680, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f043bb70000 close(3) = 0 openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=1544, ...}) = 0 fstat(3, {st_mode=S_IFREG|0644, st_size=1544, ...}) = 0 read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\21\0\0\0\21\0\0\0\0"..., 4096) = 1544 lseek(3, -936, SEEK_CUR) = 608 read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\21\0\0\0\21\0\0\0\0"..., 4096) = 936 close(3) = 0 fstat(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 6), ...}) = 0 write(1, "\320\237\320\275 \320\274\320\260\321\200 11 14:44:42 MSK 2019"..., 33  11 14:44:42 MSK 2019 ) = 33 close(1) = 0 close(2) = 0 exit_group(0) = ? +++ exited with 0 +++ 

: time gettimeofday .
: vdso=0 .


, , gettimeofday , . - vDSO , . , , seccomp , , .



...


  • gdb? tui en — .
  • gdb break , true , : break malloc if sz > 10000 ( break )
  • /

Source: https://habr.com/ru/post/fr443054/


All Articles