// https://syzkaller.appspot.com/bug?id=c5b913a64fe18842c19f1d9fecb1c5d728043744 // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include #include static void sleep_ms(uint64_t ms) { usleep(ms * 1000); } static uint64_t current_time_ms(void) { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts)) exit(1); return (uint64_t)ts.tv_sec * 1000 + (uint64_t)ts.tv_nsec / 1000000; } static void thread_start(void* (*fn)(void*), void* arg) { pthread_t th; pthread_attr_t attr; pthread_attr_init(&attr); pthread_attr_setstacksize(&attr, 128 << 10); if (pthread_create(&th, &attr, fn, arg)) exit(1); pthread_attr_destroy(&attr); } typedef struct { pthread_mutex_t mu; pthread_cond_t cv; int state; } event_t; static void event_init(event_t* ev) { if (pthread_mutex_init(&ev->mu, 0)) exit(1); if (pthread_cond_init(&ev->cv, 0)) exit(1); ev->state = 0; } static void event_reset(event_t* ev) { ev->state = 0; } static void event_set(event_t* ev) { pthread_mutex_lock(&ev->mu); if (ev->state) exit(1); ev->state = 1; pthread_mutex_unlock(&ev->mu); pthread_cond_broadcast(&ev->cv); } static void event_wait(event_t* ev) { pthread_mutex_lock(&ev->mu); while (!ev->state) pthread_cond_wait(&ev->cv, &ev->mu); pthread_mutex_unlock(&ev->mu); } static int event_isset(event_t* ev) { pthread_mutex_lock(&ev->mu); int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } static int event_timedwait(event_t* ev, uint64_t timeout) { uint64_t start = current_time_ms(); uint64_t now = start; pthread_mutex_lock(&ev->mu); for (;;) { if (ev->state) break; uint64_t remain = timeout - (now - start); struct timespec ts; ts.tv_sec = remain / 1000; ts.tv_nsec = (remain % 1000) * 1000 * 1000; pthread_cond_timedwait(&ev->cv, &ev->mu, &ts); now = current_time_ms(); if (now - start > timeout) break; } int res = ev->state; pthread_mutex_unlock(&ev->mu); return res; } #define __syscall syscall struct thread_t { int created, call; event_t ready, done; }; static struct thread_t threads[16]; static void execute_call(int call); static int running; static void* thr(void* arg) { struct thread_t* th = (struct thread_t*)arg; for (;;) { event_wait(&th->ready); event_reset(&th->ready); execute_call(th->call); __atomic_fetch_sub(&running, 1, __ATOMIC_RELAXED); event_set(&th->done); } return 0; } static void loop(void) { int i, call, thread; int collide = 0; again: for (call = 0; call < 4; call++) { for (thread = 0; thread < (int)(sizeof(threads) / sizeof(threads[0])); thread++) { struct thread_t* th = &threads[thread]; if (!th->created) { th->created = 1; event_init(&th->ready); event_init(&th->done); event_set(&th->done); thread_start(thr, th); } if (!event_isset(&th->done)) continue; event_reset(&th->done); th->call = call; __atomic_fetch_add(&running, 1, __ATOMIC_RELAXED); event_set(&th->ready); if (collide && (call % 2) == 0) break; event_timedwait(&th->done, 45); break; } } for (i = 0; i < 100 && __atomic_load_n(&running, __ATOMIC_RELAXED); i++) sleep_ms(1); if (!collide) { collide = 1; goto again; } } uint64_t r[1] = {0xffffffffffffffff}; void execute_call(int call) { long res; switch (call) { case 0: res = syscall(SYS_socket, 2, 3, 0); if (res != -1) r[0] = res; break; case 1: memcpy((void*)0x200000c0, "\xd3\x09\x70\xd7", 4); syscall(SYS_setsockopt, r[0], 0, 2, 0x200000c0, 4); break; case 2: *(uint16_t*)0x20000000 = 0x282; memcpy((void*)0x20000002, "./file0\x00", 8); syscall(SYS_connect, r[0], 0x20000000, 0x10); break; case 3: memcpy( (void*)0x20000280, "\xbb\x17\x0e\xa4\x6d\x96\x90\x39\xe2\x00\x11\xea\x2b\x00\xd6\x46\x0c" "\xd2\x1b\x68\x4d\x50\xc8\x69\xa5\x5a\x35\x57\xbd\x90\x5a\x7a\xb8\xb8" "\x1f\xf8\xef\x72\xd4\xcf\x98\x07\xb1\x44\x1c\x81\x30\x51\xd6\x0a\xec" "\xf7\xc6\xea\x71\x01\x3f\x79\x20\x1d\x41\x48\x39\xc3\x73\x23\x8f\x17" "\x16\x36\x6f\xcf\xcb\xb5\x2b\x19\xc9\x96\x86\xab\xd0\x10\x26\x67\xc9" "\xf5\x0c\xc0\x74\xb4\x84\x0c\x2a\x11\xe1\x64\x93\xd9\x70\x76\x19\xd2" "\x5f\x18\x28\xf7\xc6\xbf\xf0\x3a\xd9\x7b\x07\x14\x88\x84\xc1\xf5\xca" "\xfa\xa9\xfd\xcc\xfc\xb9\x7e\xa9\xed\xc5\x2f\x54\x28\xd3\xae\xcb\x71" "\xf6\xd7\x51\x88\xde\x97\x1a\x5a\x4f\xcf\xe0\x66\x1c\x95\x1b\xee\xfc" "\xa5\x06\x6b\x9a\x3b\x5a\xa0\xb1\x7f\x2e\x3d\x49\x7f\x3a\xc8\xfd\x76" "\xce\x58\x5e\xdc\xd8\x40\xb7\x1d\x75\xb2\x34\x42\xb8\x91\x2f\x9f\x8c" "\x40\xd1\x62\x2c\x72\x6f\x64\xd3\x44\xf1\x73\x1f\xd1\x1d\xf9\x06\x86" "\xa0\x7b\x15\x9f\xf8\x18\x55\xee\x4d\x24\x59\x7d\xf5\x2c\x08\xc7\x29" "\x87\xcd\x0e\x75\xdd\x80\x12\x0e\x2e\x66\x85\xda\x27\x45\xba\x28\x95" "\xae\xfe\x24\xf7\x54\x90\x35\xab\x1c\x29\xbd\xa0\x1a\x05\x4c\xe6\xf8" "\xd2\xab\xb8\x54\x23\xa9\xa0\x52\x28\x2a\x84\x19\xcd\x36\xb9\x58\xdf" "\x0f\xa1\x4c\x9f\x1c\x11\x5b\x3e\x4f\xe1\xbf\x9f\xb7\xb6\x84\x4f\xe8" "\x08\x68\x9a\xad\x25\x86\xa0\x34\xe4\xd7\xe3\xcd\x3c\x79\x9a\x31\xca" "\x82\x37\x0b\x8e\xbe\xaf\xa3\xe5\xed\x10\xc6\x59\x39\x41\x73\x80\xb3" "\xa4\xa0\x4b\x14\xb3\xa8\xdd\x88\x5a\xcc\xea\xf5\xf8\x30\x65\x46\x53" "\x7e\x16\xcb\xfa\x6b\xf4\x24\xe7\xe9\x5c\x8d\xbc\xd9\x46\x03\xb4\x03" "\x94\x95\x31\xcc\x4a\xcf\x56\xd6\xdb\x7c\x96\xcb\xa5\x6a\x57\x0f\x8f" "\xfb\xd0\x35\x29\xe8\xa1\x17\x16\x6d\x33\xcc\xb9\xb3\x51\xf1\x5b\x57" "\xcf\x07\x28\x9c\x38\xfe\x68\x2f\x0b\x36\x06\xa2\x2e\xc6\x22\x0c\x18" "\x40\x2f\x90\xae\xb4\xf3\x7e\xaa\x4e\xce\xa2\xb9\x86\xd1\x42\x1a\x1f" "\x49\x8a\x3b\xdf\x78\x2f\x91\xb6\xda\x89\x59\xd3\xbb\x0f\x5f\x73\xf7" "\xd7\xf2\x54\x34\xfa\x4e\xa2\x13\x7c\x0e\xd6\x83\x8a\xf1\xfd\xdc\x65" "\xd4\xfb\xe5\xd8\xb0\xd7\x28\x8e\x56\x35\xd4\xb2\xd7\xcc\xc2\x48\x89" "\xc0\x16\xfb\xbc\xe9\xdb\x89\xbb\xdb\x09\xdf\x9f\xd1\xbe\x9a\x31\xe8" "\x9e\xcf\x28\xeb\x2e\x8a\x5b\x15\xf1\xb0\xfd\xe7\x46\xfb\x27\xda\x5a" "\x91\xd9\x27\x7c\xf2\xea\xbd\x73\x45\x9b\x72\x9a\x8d\x3c\x0b\xec\x70" "\x1c\x42\x2b\x53\x6f\xff\x8c\x5d\xd6\xee\x6d\x39\xf0\x90\x83\x9e\x93" "\x52\x2c\xcf\xa0\x49\x99\x1c\xfc\xe7\xd6\x8b\xb5\x3d\xea\x6e\x8b\x87" "\xe2\xa5\x1a\xf4\x99\xc4\x21\x1c\xc0\x59\xb3\xd2\x22\xa1\xdf\x46\x5e" "\x25\xce\xac\xf9\x48\x63\xb0\xa2\x72\x60\xcd\xfe\x28\x35\x5d\x8e\x2a" "\x60\xe5\x8c\x88\xa6\xcb\xb0\xeb\x16\x87\xbc\x47\xb1\x10\x3e\x0a\xb4" "\xea\x0f\x50\xae\xfa\x7c\xdf\x50\xe8\xc0\xa2\x99\x8f\xf5\xae\x51\x05" "\xcc\xfe\x3a\x8c\x02\xa1\x8c\xe7\x31\x56\x35\x4f\xea\x9d\x59\xca\xe4" "\x5f\x94\xd7\xe7\x6e\x04\x22\x48\x68\x44\x3e\xb8\xb1\x79\x3b\x63\x5c" "\x97\x48\x28\x46\xdd\x80\x38\x2c\xa2\x2e\xc5\x1d\xb8\x65\x36\xf2\xd8" "\xce\x6b\x48\x5a\x45\x3a\x9e\x4f\xbb\x74\x35\x6c\xaf\x92\x92\xb7\xcf" "\xa4\x56\xb5\x4d\xc0\xdc\xc2\x6a\x26\x50\xa2\x2b\x32\xd4\x37\x57\x3a" "\xb7\xc7\x2c\x2e\xaf\x01\x62\x2b\x97\x3e\x03\xa1\x7d\x33\xee\xc9\xd8" "\x1e\x53\xa4\xd2\x9d\xe0\x2c\x50\x62\x04\x00\x46\xa9\xae\x1d\x4a\x26" "\x20\xda\x70\x4b\x8b\xca\x41\xa5\x50\xf7\xf8\xdb\x44\xd7\x2a\x35\x6c" "\x43\x3f\x80\xa8\x19\x6c\xd3\xdb\x50\xba\xae\x73\xb6\x9e\x5a\x03\xb2" "\x9b\x48\xf6\x9c\x2f\x27\x2d\x75\x05\x75\x3b\xfe\xda\x5e\x9e\x37\x5f" "\xe0\x80\x16\x70\x45\xe3\x1e\x5e\x7a\xd0\xf4\xf4\xd9\x6b\xa6\x23\x97" "\xab\xa8\x1b\x1c\xc4\xa2\x16\x12\x28\xf0\x9d\xb5\x3d\x0a\xf8\xe4\x69" "\x08\xf5\xb4\x49\x5a\x1e\x9f\x48\x62\x7a\x82\x49\x80\x20\xc6\xd7\x9a" "\xee\x5a\x79\xc8\x23\x06\x04\xcb\xa8\xbf\x46\xc6\xd0\xd3\xed\xb1\xb2" "\xd4\x00\x37\xb4\xb3\x2a\xe5\x7d\x22\xd0\xdf\x9b\x56\x53\x5c\xdd\x26" "\xc5\x45\x4d\x9f\x8f\xba\x1b\x97\x06\x6c\x0f\x8b\xa2\xf8\x90\x5c\x76" "\x8b\x6c\x32\x1e\x64\xe6\x6f\xc9\x60\xcb\x87\xff\xd2\x22\xa9\xe8\x88" "\x93\x03\x79\xc4\xf7\x35\x5d\x5c\x8a\xdc\xc4\xf2\x5c\x51\xc5\x4f\x17" "\x04\x75\xd1\x82\x12\xc7\x76\x31\x5c\x07\x75\x18\x9b\xcf\x30\x30\x5d" "\xcd\xf2\x53\x32\xb6\xd2\xf7\x78\x95\xbf\x29\x39\x01\x44\xc4\x5f\x01" "\x9f\xfa\x2d\x91\xc9\x57\xa8\x67\xd5\x7e\x60\x32\x27\x02\x09\x61\x3f" "\xdb\xcf\xde\x9a\x62\x7b\xbb\x16\x7c\x89\x99\x5b\x71\x84\x5b\x8b\x01" "\xd7\x87\x82\xb0\x08\xa3\x82\x5a\x17\x84\x11\x19\x86\xd8\x3e\xcb\xfe" "\x1a\x9e\x85\xbf\x19\x2e\x83\xc8\x77\x93\x11\x17\x25\xcf\x13\x09\xad" "\x9c\xd4\xf5\x5b\x31\x72\x3f\x8f\xea\xaf\x2e\xa6\x4a\xa8\xf2\x8e\xfd" "\x00\x3d\x5b\x73\xab\x05\xaa\xb7\x67\x02\x51\xa0\xd3\xd5\x43\x77\xe7" "\x37\x08\x0e\x6c\xa5\x19\x96\xf5\x2a\x3d\x18\x7e\xb4\xef\x67\x62\x0d" "\x72\x35\x63\xf6\x26\xa3\x41\xe8\xd1\xc3\x21\x85\x54\x0c\x33\xe3\x13" "\xf3\x64\x0a\xa6\xf9\x58\x05\xe5\x43\x8a\x55\xdc\xda\x5a\x48\x42\xc9" "\x85\xac\xce\xbf\x64\x95\xa0\x91\x07\xb3\xac\xb7\xe2\x13\xff\x41\x21" "\xb1\x60\x5e\x0e\xa3\x21\x63\xd5\x0e\xa5\x6e\x72\xee\x83\x22\xfd\x26" "\xc0\xe2\x42\x34\x75\x1b\x6f\x58\x81\x75\xf8\x97\x6d\x48\x12\x84\xf5" "\x3b\xac\x89\xf2\x78\x17\xb8\x91\x6b\x40\x11\xe5\x25\xa0\xce\xa3\x30" "\xec\x44\xa6\xec\x25\xc5\x33\x85\x91\xe7\x6a\xef\x52\x42\xde\x4d\xf5" "\xe2\xb5\x60\xe7\x09\xcf\x0e\x27\x42\x9a\x11\x29\x02\xaa\x20\xde\x2b" "\xd9\xac\x43\x3c\xf2\x59\x6c\x87\x6e\x44\x11\x2e\x05\xff\x7e\x50\x61" "\xa3\x2b\xe1\x5e\xe7\xff\xa7\x93\x05\x2e\x48\x44\x91\xbb\xda\xf0\xd0" "\x43\xfe\x17\x47\xde\xa1\x34\x6c\x90\xb7\xec\xf6\xf3\xba\xac\xa1\x68" "\x82\x0f\xb4\x25\xde\xce\xc0\x3b\xbf\x4d\x77\xea\xe7\xf1\x21\x99\x11" "\x39\xb8\xee\x41\x33\x4e\x9a\x32\x5a\x0a\x4a\xe1\xbc\x7c\x85\x60\xca" "\x8a\x5e\x3f\x1c\xab\xd4\x9e\x72\x63\x22\x07\x68\x5d\x12\xd5\x21\x3d" "\xff\x63\x68\xf3\xb2\xaf\xa7\x27\xeb\x56\xcc\x29\xbf\x26\x7a\x16\x14" "\xc7\x63\x59\x71\x71\xa6\x5f\x3f\xa4\x47\x87\x3e\x9f\x8f\x60\xb2\xed" "\xd7\xb4\xdb\xb3\xee\x1e\x7f\x86\xbf\xfb\xf8\x8d\xc9\x93\x8d\xdb\xfd" "\x7f\xc7\x3f\x5b\x60\xa8\xcb\xbb\x83\x9d\x8d\x07\x78\x22\x50\xe5\x72" "\xf1\xb2\x21\xd3\x34\x9f\x94\x7b\xf0\xa6\xea\x0b\x97\x62\x2a\x6f\x86" "\x05\xd0\xbe\xd9\xde\x98\x15\x3c\x41\xb4\xc9\x06\x1e\x96\x9e\x3f\xc1" "\xc9\xd6\xf4\x6b\x24\x13\xd0\xad\x62\x7a\x59\x62\xa0\x62\xfc\x5c\xdf" "\x13\xda\xf5\xeb\x6d\xfa\x60\x39\xb2\x31\x17\xac\xd4\x80\x1a\x97\xc6" "\x36\xf0\x0f\x4e\xac\x6b\x8b\x04\x59\x7f\x98\x1d\xc4\x53\x7a\x92\x00" "\x20\xc7\x33\x82\xb8\xe9\x6a\x65\x7b\x9e\x78\x38\xef\x48\xf7\xc0\x6e" "\xe5\xf5\x43\x49\xa9\x02\xe4\x0e\x7f\xfe\xa1\x87\xb9\x72\x32\x9d\xb4" "\x48\x12\xf5\x42\x29\x6e\xff\x79\xb5\xae\x16\xd1\xd8\x94\x35\x9e\xe8" "\x05\xa1\x5a\xa1\x23\xa3\x93\x90\xbe\x55\x07\x03\xfb\x68\x8b\x2f\xb4" "\x30\xf9\x41\x10\x2c\x54\xe6\x5c\x0a\xf0\x7e\xd4\xb7\xda\x45\x53\x4f" "\xe4\x31\x31\x83\x01\x5d\x87\x9b\x77\x1f\x69\x4c\x80\xb7\xa9\x16\x2a" "\x22\x33\xc6\x14\x9a\x0c\x06\xc5\x74\x6c\x84\x46\x44\x2c\xf1\x6f\x83" "\xb9\xba\x7a\xe4\x7c\x4b\x0a\x18\xac\x47\xe2\xcd\x01\x47\xa9\x2a\x1f" "\xb8\x49\xbd\x71\xf5\x82\xbf\xe5\x18\xe3\x13\x85\x58\x3e\x15\x1f\xcb" "\x1c\x5b\x7c\x52\x47\xff\x36\xa4\x56\xd3\x05\xa6\x2a\x9e\x89\xe8\x0d" "\x70\xbf\x56\x2a\x0b\x8f\x4e\x16\x64\x76\x2b\x8b\x08\xb6\x7d\xc4\x90" "\x77\x9b\x69\x89\xd6\x86\x40\x67\x51\x34\x1d\xd1\x42\xa0\x71\x96\x15" "\x9f\x9b\xc6\xe9\x16\xf6\x16\xca\x2c\xa8\x17\xd6\x79\x54\xf9\x95\x66" "\x65\x0b\xbe\xc5\x2e\x46\x98\x25\xb9\x96\x5e\x6c\x55\x04\x6d\xa3\x56" "\x37\x19\xbf\x38\x76\xc3\xd7\x3b\x93\xfb\x74\xe1\x32\x80\x4e\xda\xfb" "\x5c\xd7\x82\x17\x01\x58\x23\x6d\x18\x59\xc0\xba\xce\x24\xb1\x88\x36" "\x22\x83\x9d\x42\x28\x27\x5c\x58\xe8\x9d\x9c\x9e\xf8\xd1\x8b\x2c\x36" "\x8a\x55\x4d\xc5\xbe\xa1\x99\x51\x56\x92\x83\x96\xc3\x66\xfb\x24\x15" "\xcc\x00\xa4\x60\x82\x3b\x54\x24\x19\x83\x51\x47\xbe\x1d\x3a\x21\xc3" "\xad\x38\x27\xec\x88\x8e\x93\xe5\xd3\x9d\xa3\xfd\xe6\xb0\xc9\x73\x39" "\x83\x3f\x21\x83\xab\x3e\x7e\xe9\x06\x2b\xcf\xa9\xae\x63\x1d\x81\x46" "\xa9\x50\xb8\x9f\xc7\x12\x8b\x8c\x9b\xf6\x70\xcb\xef\xac\x99\x07\xfd" "\x2a\xc9\xc6\xcb\x43\xe3\x51\x98\x80\x4e\x5d\x54\x8a\x42\x43\x38\x4e" "\x25\xed\x26\x0a\x9c\x68\x42\xfe\xd3\x59\xe8\x4a\x50\x11\xfb\xce\x09" "\xed\x79\x84\x7d\xbe\x6d\x6d\xa6\xd7\x3a\x7c\x24\xbf\x11\x2c\x57\x53" "\x1a\xb6\x8e\xd7\x5c\x91\xe1\xf3\x20\xdb\x34\xd0\x30\x88\xdd\xa5\x94" "\xe2\x0e\x31\xb9\x4c\x12\xf7\xab\x28\x39\x97\x69\x8a\x6c\x1e\x71\x76" "\x3f\x1f\xc3\x55\xe0\xa2\xb0\x00\x8e\xcb\x4b\x32\x99\xa6\xf9\xe3\x08" "\xbb\xff\xdb\x6a\x30\x9e\x35\xb6\x5a\x8c\x5b\x04\xae\x2d\x2f\xad\x83" "\x85\xe4\x92\x7e\xc1\x26\xd4\x62\xb8\x46\x71\x5b\xec\x1c\x44\xc8\x03" "\xfe\x02\xd5\x43\xd6\x03\xca\x4f\x5d\xe4\xe0\xe6\xd2\xe4\xa2\x22\x0e" "\x9b\xf0\x53\x73\xbd\xec\x63\xba\xd0\x42\xc8\x46\xbf\x9e\xe3\x8b\x67" "\xce\x37\xc0\xde\xf7\xf1\x2d\x7a\xee\x87\xdd\x5d\x68\xce\xc5\xf6\x51" "\x49\x5a\x02\xb0\x3f\x18\x03\x3a\xb4\x53\xef\x62\xaa\x9d\x5b\xe7\x92" "\x10\x2d\x3a\x57\x92\x99\xe8\x29\xa4\x34\x1a\x18\x7e\xaf\x2c\x89\xce" "\x2f\x38\x3d\x80\x6c\x21\xab\x57\x38\x4d\x2f\xa3\x1d\xad\xe4\x4c\x2b" "\x22\xee\xa4\x9c\x22\x23\x76\x6d\x32\xfe\xeb\x3d\x8f\xa4\xa7\x66\x2b" "\x48\x8d\x5e\x38\x9e\x68\x9a\x45\xfe\xcd\x93\x25\x13\x02\xa1\xdb\x31" "\x6c\x29\x42\x7b\x7a\x5a\xb5\x29\x2d\xb6\xed\x45\x59\x2b\x9d\xe5\x5c" "\xf2\xb8\x7e\xe5\x60\xa4\x6c\x3d\x67\x5e\x89\x9d\x7b\x49\x52\x0c\xfb" "\x5d\xd4\xd5\x8f\x6d\x3c\x41\x24\x81\x1d\x8e\xcc\x08\xf0\x42\xaf\x58" "\xb0\xa2\x52\x05\xf7\xc6\xde\x61\xaa\xca\xf1\x5f\xf2\x64\x4f\xf2\x40" "\xa0\xe9\xd4\xa6\x25\xd0\x58\x3b\xd8\x19\xa9\x1b\x23\x44\xe7\x03\xed" "\xc1\x4a\x38\x6f\x9c\xc2\x70\xb1\x47\x38\xf6\x6a\xea\xe2\x64\x6a\xd8" "\x8b\x7a\xe4\xf4\x4d\x44\x23\x8e\xf4\x70\xac\x27\x20\x09\xaa\x82\xf4" "\x83\xbc\x89\xe8\x52\xc6\xcc\xfe\x00\x42\x2e\x7f\xcb\xac\x72\x6e\xd3" "\x92\x4c\x19\x39\xb9\x02\x8f\xd3\x05\xdb\xa8\x70\x5e\x6d\x4e\x2c\xf8" "\x94\xdb\x58\xa4\xa8\xda\xbe\xa6\x5a\x42\xd8\xdd\xe6\x5b\x64\xcc\xa1" "\x5e\xe5\x02\xed\x87\x0e\xc8\xa6\xcf\xe8\x1c\x44\xc3\x73\x8d\x8b\x25" "\x97\xe2\x7f\xbc\x47\x9d\x85\x59\x3e\x21\xf6\x45\x99\xc4\x5d\x94\x5d" "\x55\xe7\x68\xce\x52\x06\x7a\x1a\xaa\xf3\x0e\x16\x74\x56\x31\x44\x8b" "\x26\x52\xa5\x55\xda\x2c\xdc\x7a\x7c\xea\xd6\x66\xc5\xa1\x4b\x26\x74" "\x52\x7f\x46\x8d\x3a\xbe\xc2\x6e\x3e\xbd\x2a\x21\xc7\xe4\xf2\x6d\x25" "\xcc\xe2\xde\xb4\xca\x21\xff\x5d\xab\xfa\xf2\xa9\xf2\x13\xa6\x02\x5e" "\x6d\xc1\x4d\x5c\xff\xcc\xa2\x73\x47\x68\xd8\xb1\xf2\x92\x52\x89\x6e" "\xeb\x86\x9e\x51\x82\x03\xa1\x52\xee\x30\xd1\xc2\x21\xba\x6a\xd5\xb7" "\x39\xdb\xbd\xdb\xba\x3c\xe6\xf0\x88\x9e\x9f\xd4\x75\x58\xa8\xe2\x77" "\x6b\x3b\x2f\xed\xfb\x67\x91\xcd\x0d\x43\xd1\xef\x89\xbb\x2a\x1b\x35" "\x23\xf1\x81\x55\xf4\x82\x24\xe2\x7e\x1c\x52\xf7\x40\x10\x6b\xf1\xa0" "\x56\x04\x48\x0b\xc8\x85\x0d\xc1\xc2\x43\x06\xff\x57\x63\x67\xe1\x29" "\x46\xf8\x21\xbc\x2e\xca\x68\xe3\x9f\x20\xc7\xff\x41\xd7\x98\x82\xdf" "\x86\x64\xaf\xa9\xc3\x86\x96\xfd\x87\xde\xe7\xc2\x61\xda\xdd\x2b\xba" "\xe6\x8a\xf8\x41\x72\x51\x6c\x1a\x40\x24\x4c\x1e\xb0\x7d\x30\xa3\x0c" "\x9b\x44\xdc\xe7\x70\xf3\x0c\x57\x4d\x54\x25\xe1\x99\xe5\x36\xcf\xfd" "\x3f\x93\x9b\x5d\x7a\xe3\x13\x77\xd4\xff\x95\xa0\xc9\xa8\x05\x0c\x4c" "\x4b\x6b\x44\x38\x03\xb8\xf8\x71\x75\x83\xe9\xf9\x43\x9c\x99\xa0\x6b" "\x61\x20\x36\xc6\xb2\x32\xec\x4d\xff\x4d\x15\x1d\xb1\x64\xa9\xa5\x01" "\x77\x8a\x0d\x76\x97\xa2\x73\x9b\x19\x5f\x75\x3d\x34\xfd\x62\x2a\x1e" "\x66\x80\xfa\x35\x14\x17\x1c\x2b\x3d\x04\xb4\x7b\x6a\x22\xe7\xa2\xac" "\x3d\xd0\x1c\x92\x07\xba\x84\xaa\xfb\x07\xe1\x84\xb9\x1f\x4e\xfd\x94" "\xf7\x55\xeb\xf2\x90\x1a\xe4\x21\x22\x74\xf1\xa6\xe1\x2b\xcf\xd3\xf5" "\x8f\x97\xde\xd7\x9f\xb2\xa7\xbf\x00\xd2\x7d\xfd\xe5\x0f\x5f\x06\xf7" "\xdb\xb0\x49\xef\xd9\xa5\x7a\x75\x94\x30\x05\xca\x1d\x02\xb7\xe1\x81" "\xe0\x06\x80\x2e\xba\x8f\x8c\xa4\xd0\xaf\x1f\x03\x5b\xb2\xfe\xa6\x95" "\x90\xd8\x1b\xae\x0b\xe2\xc8\x7d\x0e\x1b\x01\xae\xea\xf9\x8e\x50\x52" "\x45\xc3\x41\xb0\x6a\x51\x22\x88\x0a\x15\x4f\x01\x5d\x2b\x39\xf7\x4e" "\x66\x87\x1d\xa3\xd9\xbc\x96\x71\xd3\xe2\xd0\x20\xaf\xe4\x29\x9d\x79" "\xa6\x64\xc5\x59\x73\xb5\xe5\x89\x61\xd6\xd0\x28\x63\x4a\xae\x84\x51" "\x8b\x3e\xc6\xd0\x5b\x1c\x6c\x8f\x5e\x27\x28\x3a\xe0\xfa\xb6\xa0\x3f" "\xce\x0b\xf6\x24\x1f\x67\x5d\xf7\x3a\xb1\xbf\xfe\x6c\x14\xc9\x2b\x1c" "\x41\x63\x21\x8f\xcd\x26\x0a\x34\x81\x7e\x81\x89\x23\x85\x31\xee\x5e" "\x13\x18\x6a\x45\x7a\x32\x38\xc4\x1e\xe8\xf1\xbd\x8c\x90\xb5\xd2\x59" "\x6d\xf0\xf4\x3c\xa1\x5b\xa2\x4b\xba\x4d\x79\x0e\xb2\x8d\xbd\x4e\x4d" "\xdb\x35\x31\x68\xb8\x70\x80\x59\xf6\x7d\x2c\x17\x9b\x19\x00\x4f\xb1" "\x2c\x2f\x26\xc9\x1e\x30\x5b\xdf\x9e\xcb\x8f\xd9\x12\x4c\xa2\xa3\xea" "\x4a\xc2\x29\x5b\xb4\xfd\xff\x1e\x6e\x58\x9b\x3f\xda\xa0\x88\x1c\x4f" "\x9b\x72\x70\x95\xe5\x9f\x30\x59\x77\x54\xb8\x7c\xcc\x33\xd1\x24\xad" "\x22\x6b\x11\x5a\xc1\x75\x18\x6d\x61\x4c\xf9\xf1\x4f\x64\x56\xec\x40" "\xb6\x9d\x1e\x87\xad\x04\xc7\x41\x5a\x86\x9d\x2a\x96\xff\xe1\x6b\xac" "\xa2\xdf\x63\x2c\x28\xac\x38\x7e\xb8\x76\xb2\x7d\x70\x1c\x00\x5b\xa5" "\x61\x32\x4c\x62\x16\xe3\x93\xbb\x10\x60\xa5\x6f\x99\x70\x97\xe0\xd3" "\x55\xe7\x16\x2f\xe0\x3b\x14\x44\x43\x75\xeb\x07\x3b\x39\xe9\x14\xb2" "\x8b\x4d\x78\xa6\x41\x78\x91\x0c\xca\x7c\xc5\x48\x8c\xeb\x13\x17\x99" "\xe0\x37\x32\xd3\x9d\x45\xa4\x6f\x45\x8c\xf1\x06\x4b\x55\xcb\x04\x79" "\xd4\xb0\x21\x44\xec\xad\x13\xad\x9f\xca\x19\xc8\x91\xe4\x43\xc1\x68" "\xc5\xdb\xcc\xb9\x67\x26\x66\xb5\x5b\xa2\x92\xe8\x44\x65\x36\x85\x59" "\xe6\xaa\x46\xc1\xb0\x95\x25\x4c\x0b\x19\x00\x61\x0f\x88\x34\xdb\xb1" "\xe5\xaa\x16\xf1\x23\x62\xf5\x99\x9e\xfb\x14\xac\xa3\x17\x88\xf7\x45" "\xaa\xd9\x0a\x34\x60\xee\x79\x53\xc8\xeb\xf1\x86\xa9\xf7\x6a\xa4\xbf" "\x41\xe8\x8c\x7e\xbc\xdd\x51\x1a\x3e\x2d\x4d\x29\x56\x2e\xb5\x5d\xc9" "\x94\x3f\xa6\xfb\xc8\xb3\xd0\x25\x87\xa4\xd8\xdc\x25\x7e\x91\xdb\xa6" "\xa3\x42\x33\x9f\xde\x9d\xf7\x43\xba\x08\xf8\x06\xa0\xfa\xd7\x4f\xcf" "\x82\x88\xbf\x6f\xe3\xfb\xbc\xe2\xbd\x21\xf9\xb9\xf4\x56\x41\x47\xbc" "\x50\x95\x07\x2b\xba\x37\xb2\x4d\x6b\xc3\x76\x17\x58\xcf\x5f\x8c\x00" "\x58\xd2\xc8\x5c\x8b\x61\x7f\x31\x64\x41\x29\x4a\x67\x67\x1b\x74\x73" "\x66\x27\x8a\x5f\x33\x0a\x31\xf1\x9e\x06\x74\x46\x74\xc6\x08\xf3\xeb" "\xc0\x46\x53\x6e\xd6\x08\x89\x74\xe7\xdf\x33\x9a\xff\x31\x4f\x6e\x7f" "\x85\xfd\xa6\x17\x02\x5e\x38\xf9\x53\xa2\x7c\xe3\xe2\xeb\x82\xd9\xee" "\x57\x05\xc2\x0c\xd6\x47\x42\xae\x0e\x81\x5d\x46\x28\x92\x6c\x42\xd1" "\x28\x6c\xdb\x02\x83\xbc\x49\xff\x22\x43\x32\x86\x97\x24\x70\x7a\x10" "\x5b\x9d\x2e\x30\x60\xee\x5c\xfe\xa6\x2e\x1b\x6b\x0d\x54\x26\xf3\x2b" "\xba\xe7\x64\xd7\xce\xb7\x28\xc4\xe0\x94\x99\xe1\x4e\xcc\x82\xd9\x5f" "\x16\x7d\x1b\x1a\xa4\x81\xb6\xd5\x30\x35\xb7\x7a\x07\x74\x4e\x8e\x4e" "\x67\xca\x34\x77\xc7\xf4\x8a\x58\xe4\x4d\x7f\x66\x38\xe2\xde\x59\x53" "\x61\x17\x68\x69\x5b\x88\x28\x5a\x4d\x7e\x8b\x31\x55\xb5\xed\x8e\xc3" "\x26\x9e\xe0\xc7\x2f\x7b\xdc\xbe\x2e\x07\x58\x69\x6b\xba\x50\x44\x2b" "\xf0\x9f\x73\x27\x79\x4a\x3c\xf4\xaa\xb8\x92\x36\xf0\x3d\xe8\xd6\x56" "\xd9\xdb\x06\x52\x88\xd0\x5b\x84\xd3\x70\xdb\x52\x74\x91\xee\x13\xf0" "\x2a\x25\xd3\x7a\xbc\x5d\x09\x6e\x70\x7b\x70\x47\x95\x29\x88\xa9\x00" "\x2c\xd0\xee\xfe\xa8\xe7\x4e\x4d\x67\x6b\x13\x28\x44\x87\xf6\x28\xaa" "\x30\xb4\xb1\x67\x27\x1b\x3a\x92\x7e\x07\xe5\x13\x94\x29\x91\x77\x28" "\x71\x65\x45\xf8\xb7\xcf\x4a\x0c\x91\x27\x23\xc4\xe2\xe7\x36\x9d\xd9" "\x8a\xf1\x9f\xcb\xc2\x8e\x85\x56\xa8\xb8\x04\xe1\xbd\x6b\x42\xa9\x30" "\xf4\x9e\x6a\x08\x63\xfc\x4f\x88\x5e\xaa\x8e\xbd\x99\x80\x0a\x0a\x86" "\xf2\x1f\x47\x1d\x93\x74\x72\xd9\xae\xf0\xed\x09\xe9\x07\xf6\x98\x6b" "\x7e\x60\xea\x94\x79\x35\x39\xb9\x1c\x23\x9e\xd8\xe8\xc9\x70\xd3\x91" "\xf4\xef\x58\x3e\x90\x05\x5d\xf6\x6f\x3e\x0f\xee\xc1\xf4\x6b\x56\xd4" "\x67\xce\x2b\xa7\x4d\xb9\xbe\x63\xfd\xca\xa8\x4b\x6c\x9b\x44\x29\x1b" "\xd7\xa7\x89\xe6\x96\x69\xc9\x42\xc0\x44\x4c\x50\x5a\x3f\xa6\x21\x2b" "\x94\x0b\x3a\x79\x04\xb8\xfa\xd6\xad\xb0\x51\xf8\x3a\xe8\x04\x23\x46" "\x00\x75\xc5\x08\x34\x74\x51\xb9\x3f\x90\x40\xf4\xf6\x31\x82\xa6\xf5" "\xea\x8d\x54\x3b\x69\xc1\x63\x20\x24\x64\x8d\xb2\x50\x15\x01\x12\xf5" "\xc0\x15\xeb\x7f\x41\x7a\xac\x4c\x7c\xdf\x93\x44\x1b\x9b\x53\xda\xf9" "\xb8\xce\x75\xa5\x4d\x9c\x7d\xfe\x9c\x5c\x68\x21\xfd\x4e\x9c\x23\x73" "\xde\xa4\x78\x9b\x66\xae\xe3\xb3\x65\xda\x1f\x30\x88\x7e\xb6\x06\x65" "\xde\x7e\xea\x2c\x2b\xf5\x11\xa5\x7c\x1c\xc9\xdd\xbc\x83\x2e\xf1\xf1" "\x5e\x01\xd9\x39\x0c\xff\xf8\x5f\x11\x0f\xe2\x8c\xb6\xd7\x5d\x31\x55" "\xc6\x69\xa8\xff\x01\xaf\xd6\xeb\x07\x69\x76\xf3\x46\x6a\xa7\xa6\x81" "\xd4\x47\xd3\x5d\xec\xbc\x48\x79\xad\xe9\x00\xc0\x31\x52\x72\x6d\x64" "\x67\xa6\xeb\xd5\xcb\xda\x14\xa8\x58\xbd\x37\x8e\x15\x6b\x49\x66\x96" "\xe7\x72\x50\xab\x5f\xbd\xbe\xda\x41\xca\x64\x61\x6f\x10\x91\x55\xcc" "\x76\xaf\x52\x88\x9a\xee\x7b\xae\x80\x24\x16\x8a\x98\x2f\x1d\xdf\xaa" "\x9a\x7d\x63\x3f\x1e\xc4\xa0\x5d\x27\xbe\xac\x8e\x74\xbe\x9b\x82\x58" "\x32\xa0\xc8\x7f\x49\xc9\x9d\xa1\x4f\x80\xa3\x97\xa3\x72\x5e\x51\xff" "\x62\x1a\x56\x98\x68\xf4\xb0\xf1\xd4\x2c\x87\x1d\x79\xc6\x1a\xa8\xa4" "\xe7\xdd\x0b\x5c\xbd\x36\x3f\x92\xfb\x1e\x2a\x62\x54\xd7\x16\x34\x83" "\x34\x5d\x74\x6b\x36\x4f\xe0\x5e\x0e\x65\x83\x6b\xaf\xdd\x95\x5a\x75" "\xad\x12\x52\x35\xcf\x02\xa3\xb2\xec\xa7\x3d\xed\xc8\xce\x31\x1b\xb7" "\x76\x76\xea\x1c\xb4\xf8\xf4\xb3\xc0\xca\x6d\xe2\xac\xe6\xcf\xcb\xa1" "\xed\x43\x26\x59\xf2\xcd\x02\xb5\xe1\x7a\xb5\xbb\x82\x14\xb6\x06\x7e" "\xfc\x07\xff\xc5\x1a\xf2\xdf\x39\x68\x53\x68\xe3\x57\x27\x5e\x7d\x35" "\xe1\xba\x3c\x19\x34\x84\x5f\x7c\x5f\xcd\x60\xf4\xcd\x5c\xf7\x56\x6b" "\x3b\x9b\xf5\x84\xf1\x9f\x36\xe8\x9d\xfa\xe5\x38\x65\x92\xde\xb0\xb9" "\x26\x21\xed\x7c\x70\xdc\x02\x4a\x7c\xf6\x7c\x66\x1d\x6c\x3d\x21", 4096); syscall(SYS_write, r[0], 0x20000280, 0x1000); break; } } int main(void) { syscall(SYS_mmap, 0x20000000, 0x1000000, 3, 0x1012, -1, 0, 0); loop(); return 0; }