// https://syzkaller.appspot.com/bug?id=9af1b02de9c2c9d59a4beda7aecb08289aff9e7e
// autogenerated by syzkaller (http://github.com/google/syzkaller)

#define _GNU_SOURCE
#include <endian.h>
#include <stdint.h>
#include <string.h>
#include <sys/syscall.h>
#include <unistd.h>

#ifndef __NR_mmap
#define __NR_mmap 192
#endif
#ifndef __NR_socket
#define __NR_socket 359
#endif
#ifndef __NR_setsockopt
#define __NR_setsockopt 366
#endif
#undef __NR_mmap
#define __NR_mmap __NR_mmap2

long r[1];
void loop()
{
  memset(r, -1, sizeof(r));
  syscall(__NR_mmap, 0x20000000, 0xfff000, 3, 0x32, -1, 0);
  r[0] = syscall(__NR_socket, 2, 2, 0);
  memcpy((void*)0x208ce6a0, "\x72\x61\x77\x00\x00\x00\x00\x00\x00\x00\x00\x00"
                            "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
                            "\x00\x00\x00\x00\x00\x00\x00\x00",
         32);
  *(uint32_t*)0x208ce6c0 = 0;
  *(uint32_t*)0x208ce6c4 = 0;
  *(uint32_t*)0x208ce6c8 = 0x90;
  *(uint32_t*)0x208ce6cc = 0;
  *(uint32_t*)0x208ce6d0 = 0;
  *(uint32_t*)0x208ce6d4 = 0;
  *(uint32_t*)0x208ce6d8 = 0;
  *(uint32_t*)0x208ce6dc = 0;
  *(uint32_t*)0x208ce6e0 = 0;
  *(uint32_t*)0x208ce6e4 = 0;
  *(uint32_t*)0x208ce6e8 = 0;
  *(uint32_t*)0x208ce6ec = 0;
  *(uint32_t*)0x208ce6f0 = 0;
  *(uint32_t*)0x208ce6f4 = 0x10;
  *(uint32_t*)0x208ce6f8 = 0x20bd4000;
  *(uint32_t*)0x208ce6fc = htobe32(0x7f000001);
  *(uint8_t*)0x208ce700 = 0xac;
  *(uint8_t*)0x208ce701 = 0x14;
  *(uint8_t*)0x208ce702 = 0;
  *(uint8_t*)0x208ce703 = 0xbb;
  *(uint32_t*)0x208ce704 = htobe32(0);
  *(uint32_t*)0x208ce708 = htobe32(0);
  *(uint8_t*)0x208ce70c = 0x73;
  *(uint8_t*)0x208ce70d = 0x79;
  *(uint8_t*)0x208ce70e = 0x7a;
  *(uint8_t*)0x208ce70f = 0;
  *(uint8_t*)0x208ce710 = 0;
  memcpy((void*)0x208ce71c,
         "\x62\x63\x73\x66\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00",
         16);
  *(uint8_t*)0x208ce72c = 0;
  *(uint8_t*)0x208ce72d = 0;
  *(uint8_t*)0x208ce72e = 0;
  *(uint8_t*)0x208ce72f = 0;
  *(uint8_t*)0x208ce730 = 0;
  *(uint8_t*)0x208ce731 = 0;
  *(uint8_t*)0x208ce732 = 0;
  *(uint8_t*)0x208ce733 = 0;
  *(uint8_t*)0x208ce734 = 0;
  *(uint8_t*)0x208ce735 = 0;
  *(uint8_t*)0x208ce736 = 0;
  *(uint8_t*)0x208ce737 = 0;
  *(uint8_t*)0x208ce738 = 0;
  *(uint8_t*)0x208ce739 = 0;
  *(uint8_t*)0x208ce73a = 0;
  *(uint8_t*)0x208ce73b = 0;
  *(uint8_t*)0x208ce73c = 0;
  *(uint8_t*)0x208ce73d = 0;
  *(uint8_t*)0x208ce73e = 0;
  *(uint8_t*)0x208ce73f = 0;
  *(uint8_t*)0x208ce740 = 0;
  *(uint8_t*)0x208ce741 = 0;
  *(uint8_t*)0x208ce742 = 0;
  *(uint8_t*)0x208ce743 = 0;
  *(uint8_t*)0x208ce744 = 0;
  *(uint8_t*)0x208ce745 = 0;
  *(uint8_t*)0x208ce746 = 0;
  *(uint8_t*)0x208ce747 = 0;
  *(uint8_t*)0x208ce748 = 0;
  *(uint8_t*)0x208ce749 = 0;
  *(uint8_t*)0x208ce74a = 0;
  *(uint8_t*)0x208ce74b = 0;
  *(uint16_t*)0x208ce74c = 0;
  *(uint8_t*)0x208ce74e = 0;
  *(uint8_t*)0x208ce74f = 0;
  *(uint32_t*)0x208ce750 = 0;
  *(uint16_t*)0x208ce754 = 0x70;
  *(uint16_t*)0x208ce756 = 0x90;
  *(uint32_t*)0x208ce758 = 0;
  *(uint64_t*)0x208ce75c = 0;
  *(uint64_t*)0x208ce764 = 0;
  *(uint16_t*)0x208ce76c = 0x20;
  memcpy((void*)0x208ce76e, "\xa4\x83\x1a\xfc\x6e\x3e\xf2\xc7\x2c\x57\x0a\xbd"
                            "\x8e\x80\xfa\x98\x5a\x55\xfe\xfc\x54\xb3\xf9\x23"
                            "\x76\xc4\x24\x08\xf7",
         29);
  *(uint8_t*)0x208ce78b = 0xd8;
  syscall(__NR_setsockopt, r[0], 0, 0x40, 0x208ce6a0, 0xec);
}

int main()
{
  loop();
  return 0;
}