=== Seccomp BPF Analysis: syd_emu ===
--- File Information ---
File: ./bpf/syd_emu.bpf
Size: 1904 bytes
Instructions: 238

--- Disassembled Filter ---
 line  CODE  JT   JF      K
=================================
 0000: 0x20 0x00 0x00 0x00000004  A = arch
 0001: 0x15 0x00 0xeb 0xc000003e  if (A != ARCH_X86_64) goto 0237
 0002: 0x20 0x00 0x00 0x00000000  A = sys_number
 0003: 0x35 0x00 0x01 0x40000000  if (A < 0x40000000) goto 0005
 0004: 0x15 0x00 0xe8 0xffffffff  if (A != 0xffffffff) goto 0237
 0005: 0x20 0x00 0x00 0x00000000  A = sys_number
 0006: 0x25 0x00 0x72 0x000000c3  if (A <= 0xc3) goto 0121
 0007: 0x25 0x00 0x33 0x00000114  if (A <= 0x114) goto 0059
 0008: 0x25 0x00 0x13 0x000001b2  if (A <= 0x1b2) goto 0028
 0009: 0x25 0x00 0x09 0x000001c1  if (A <= 0x1c1) goto 0019
 0010: 0x25 0x00 0x04 0x000001c8  if (A <= 0x1c8) goto 0015
 0011: 0x15 0xe0 0x00 0x000001d2  if (A == 0x1d2) goto 0236
 0012: 0x15 0xdf 0x00 0x000001d1  if (A == 0x1d1) goto 0236
 0013: 0x15 0xde 0x00 0x000001d0  if (A == 0x1d0) goto 0236
 0014: 0x15 0xdd 0xde 0x000001cf  if (A == 0x1cf) goto 0236 else goto 0237
 0015: 0x15 0xdc 0x00 0x000001c8  if (A == 0x1c8) goto 0236
 0016: 0x15 0xdb 0x00 0x000001c7  if (A == 0x1c7) goto 0236
 0017: 0x15 0xda 0x00 0x000001c6  if (A == 0x1c6) goto 0236
 0018: 0x15 0xd9 0xda 0x000001c4  if (A == 0x1c4) goto 0236 else goto 0237
 0019: 0x25 0x00 0x04 0x000001b7  if (A <= 0x1b7) goto 0024
 0020: 0x15 0xd7 0x00 0x000001c1  if (A == 0x1c1) goto 0236
 0021: 0x15 0xd6 0x00 0x000001c0  if (A == 0x1c0) goto 0236
 0022: 0x15 0xd5 0x00 0x000001be  if (A == 0x1be) goto 0236
 0023: 0x15 0xd4 0xd5 0x000001bc  if (A == 0x1bc) goto 0236 else goto 0237
 0024: 0x15 0xd3 0x00 0x000001b7  if (A == 0x1b7) goto 0236
 0025: 0x15 0xd2 0x00 0x000001b6  if (A == 0x1b6) goto 0236
 0026: 0x15 0xd1 0x00 0x000001b5  if (A == 0x1b5) goto 0236
 0027: 0x15 0xd0 0xd1 0x000001b3  if (A == 0x1b3) goto 0236 else goto 0237
 0028: 0x25 0x00 0x0f 0x00000138  if (A <= 0x138) goto 0044
 0029: 0x25 0x00 0x04 0x00000142  if (A <= 0x142) goto 0034
 0030: 0x15 0xcd 0x00 0x000001b2  if (A == 0x1b2) goto 0236
 0031: 0x15 0xcc 0x00 0x000001a8  if (A == 0x1a8) goto 0236
 0032: 0x15 0xcb 0x00 0x0000014e  if (A == 0x14e) goto 0236
 0033: 0x15 0xca 0xcb 0x0000014c  if (A == statx) goto 0236 else goto 0237
 0034: 0x15 0x00 0x06 0x00000142  if (A != execveat) goto 0041
 0035: 0x20 0x00 0x00 0x00000034  A = flags >> 32 # execveat(dfd, filename, argv, envp, flags)
 0036: 0x54 0x00 0x00 0x00000000  A &= 0x0
 0037: 0x15 0x00 0xc7 0x00000000  if (A != 0) goto 0237
 0038: 0x20 0x00 0x00 0x00000030  A = flags # execveat(dfd, filename, argv, envp, flags)
 0039: 0x54 0x00 0x00 0x00010000  A &= 0x10000
 0040: 0x15 0xc3 0xc4 0x00010000  if (A == 65536) goto 0236 else goto 0237
 0041: 0x15 0xc2 0x00 0x0000013f  if (A == memfd_create) goto 0236
 0042: 0x15 0xc1 0x00 0x0000013e  if (A == getrandom) goto 0236
 0043: 0x15 0xc0 0xc1 0x0000013c  if (A == renameat2) goto 0236 else goto 0237
 0044: 0x25 0x00 0x04 0x00000125  if (A <= 0x125) goto 0049
 0045: 0x15 0xbe 0x00 0x00000138  if (A == kcmp) goto 0236
 0046: 0x15 0xbd 0x00 0x00000137  if (A == process_vm_writev) goto 0236
 0047: 0x15 0xbc 0x00 0x00000136  if (A == process_vm_readv) goto 0236
 0048: 0x15 0xbb 0xbc 0x0000012d  if (A == fanotify_mark) goto 0236 else goto 0237
 0049: 0x15 0x00 0x06 0x00000125  if (A != pipe2) goto 0056
 0050: 0x20 0x00 0x00 0x0000001c  A = flags >> 32 # pipe2(fildes, flags)
 0051: 0x54 0x00 0x00 0x00000000  A &= 0x0
 0052: 0x15 0x00 0xb8 0x00000000  if (A != 0) goto 0237
 0053: 0x20 0x00 0x00 0x00000018  A = flags # pipe2(fildes, flags)
 0054: 0x54 0x00 0x00 0x00000080  A &= 0x80
 0055: 0x15 0xb4 0xb5 0x00000000  if (A == 0) goto 0236 else goto 0237
 0056: 0x15 0xb3 0x00 0x00000120  if (A == accept4) goto 0236
 0057: 0x15 0xb2 0x00 0x0000011d  if (A == fallocate) goto 0236
 0058: 0x15 0xb1 0xb2 0x00000118  if (A == utimensat) goto 0236 else goto 0237
 0059: 0x25 0x00 0x2a 0x000000f7  if (A <= 0xf7) goto 0102
 0060: 0x25 0x00 0x0d 0x00000109  if (A <= 0x109) goto 0074
 0061: 0x25 0x00 0x04 0x00000110  if (A <= 0x110) goto 0066
 0062: 0x15 0xad 0x00 0x00000114  if (A == tee) goto 0236
 0063: 0x15 0xac 0x00 0x00000113  if (A == splice) goto 0236
 0064: 0x15 0xab 0x00 0x00000112  if (A == get_robust_list) goto 0236
 0065: 0x15 0xaa 0xab 0x00000111  if (A == set_robust_list) goto 0236 else goto 0237
 0066: 0x15 0x00 0x04 0x00000110  if (A != unshare) goto 0071
 0067: 0x20 0x00 0x00 0x00000014  A = unshare_flags >> 32 # unshare(unshare_flags)
 0068: 0x15 0x00 0xa8 0x00000000  if (A != 0x0) goto 0237
 0069: 0x20 0x00 0x00 0x00000010  A = unshare_flags # unshare(unshare_flags)
 0070: 0x15 0xa5 0xa6 0x00000600  if (A == 0x600) goto 0236 else goto 0237
 0071: 0x15 0xa4 0x00 0x0000010c  if (A == fchmodat) goto 0236
 0072: 0x15 0xa3 0x00 0x0000010b  if (A == readlinkat) goto 0236
 0073: 0x15 0xa2 0xa3 0x0000010a  if (A == symlinkat) goto 0236 else goto 0237
 0074: 0x25 0x00 0x04 0x00000103  if (A <= 0x103) goto 0079
 0075: 0x15 0xa0 0x00 0x00000109  if (A == linkat) goto 0236
 0076: 0x15 0x9f 0x00 0x00000107  if (A == unlinkat) goto 0236
 0077: 0x15 0x9e 0x00 0x00000106  if (A == newfstatat) goto 0236
 0078: 0x15 0x9d 0x9e 0x00000104  if (A == fchownat) goto 0236 else goto 0237
 0079: 0x15 0x9c 0x00 0x00000103  if (A == mknodat) goto 0236
 0080: 0x15 0x9b 0x00 0x00000102  if (A == mkdirat) goto 0236
 0081: 0x15 0x00 0x13 0x00000101  if (A != openat) goto 0101
 0082: 0x20 0x00 0x00 0x0000001c  A = filename >> 32 # openat(dfd, filename, flags, mode)
 0083: 0x15 0x00 0x91 0x00005555  if (A != 0x5555) goto 0229
 0084: 0x20 0x00 0x00 0x00000018  A = filename # openat(dfd, filename, flags, mode)
 0085: 0x15 0x00 0x8f 0x555981bd  if (A != 0x555981bd) goto 0229
 0086: 0x20 0x00 0x00 0x00000014  A = dfd >> 32 # openat(dfd, filename, flags, mode)
 0087: 0x25 0x8d 0x00 0x00000000  if (A > 0x0) goto 0229
 0088: 0x15 0x00 0x02 0x00000000  if (A != 0x0) goto 0091
 0089: 0x20 0x00 0x00 0x00000010  A = dfd # openat(dfd, filename, flags, mode)
 0090: 0x25 0x8a 0x00 0x7fffffff  if (A > 0x7fffffff) goto 0229
 0091: 0x20 0x00 0x00 0x0000001c  A = filename >> 32 # openat(dfd, filename, flags, mode)
 0092: 0x15 0x00 0x90 0x00005555  if (A != 0x5555) goto 0237
 0093: 0x20 0x00 0x00 0x00000018  A = filename # openat(dfd, filename, flags, mode)
 0094: 0x15 0x00 0x8e 0x555981bd  if (A != 0x555981bd) goto 0237
 0095: 0x20 0x00 0x00 0x00000024  A = flags >> 32 # openat(dfd, filename, flags, mode)
 0096: 0x54 0x00 0x00 0x00000000  A &= 0x0
 0097: 0x15 0x00 0x8b 0x00000000  if (A != 0) goto 0237
 0098: 0x20 0x00 0x00 0x00000020  A = flags # openat(dfd, filename, flags, mode)
 0099: 0x54 0x00 0x00 0x000b0100  A &= 0xb0100
 0100: 0x15 0x87 0x88 0x000b0100  if (A == 721152) goto 0236 else goto 0237
 0101: 0x15 0x86 0x87 0x000000fe  if (A == inotify_add_watch) goto 0236 else goto 0237
 0102: 0x25 0x00 0x09 0x000000db  if (A <= 0xdb) goto 0112
 0103: 0x25 0x00 0x04 0x000000e4  if (A <= 0xe4) goto 0108
 0104: 0x15 0x83 0x00 0x000000f7  if (A == waitid) goto 0236
 0105: 0x15 0x82 0x00 0x000000ea  if (A == tgkill) goto 0236
 0106: 0x15 0x81 0x00 0x000000e7  if (A == exit_group) goto 0236
 0107: 0x15 0x80 0x81 0x000000e6  if (A == clock_nanosleep) goto 0236 else goto 0237
 0108: 0x15 0x7f 0x00 0x000000e4  if (A == clock_gettime) goto 0236
 0109: 0x15 0x7e 0x00 0x000000e2  if (A == timer_delete) goto 0236
 0110: 0x15 0x7d 0x00 0x000000df  if (A == timer_settime) goto 0236
 0111: 0x15 0x7c 0x7d 0x000000de  if (A == timer_create) goto 0236 else goto 0237
 0112: 0x25 0x00 0x04 0x000000c8  if (A <= 0xc8) goto 0117
 0113: 0x15 0x7a 0x00 0x000000db  if (A == restart_syscall) goto 0236
 0114: 0x15 0x79 0x00 0x000000d9  if (A == getdents64) goto 0236
 0115: 0x15 0x78 0x00 0x000000cc  if (A == sched_getaffinity) goto 0236
 0116: 0x15 0x77 0x78 0x000000ca  if (A == futex) goto 0236 else goto 0237
 0117: 0x15 0x76 0x00 0x000000c8  if (A == tkill) goto 0236
 0118: 0x15 0x75 0x00 0x000000c7  if (A == fremovexattr) goto 0236
 0119: 0x15 0x74 0x00 0x000000c6  if (A == lremovexattr) goto 0236
 0120: 0x15 0x73 0x74 0x000000c4  if (A == flistxattr) goto 0236 else goto 0237
 0121: 0x25 0x00 0x30 0x00000037  if (A <= 0x37) goto 0170
 0122: 0x25 0x00 0x13 0x0000006f  if (A <= 0x6f) goto 0142
 0123: 0x25 0x00 0x09 0x00000095  if (A <= 0x95) goto 0133
 0124: 0x25 0x00 0x04 0x000000bd  if (A <= 0xbd) goto 0129
 0125: 0x15 0x6e 0x00 0x000000c3  if (A == llistxattr) goto 0236
 0126: 0x15 0x6d 0x00 0x000000c1  if (A == fgetxattr) goto 0236
 0127: 0x15 0x6c 0x00 0x000000c0  if (A == lgetxattr) goto 0236
 0128: 0x15 0x6b 0x6c 0x000000be  if (A == fsetxattr) goto 0236 else goto 0237
 0129: 0x15 0x6a 0x00 0x000000bd  if (A == lsetxattr) goto 0236
 0130: 0x15 0x69 0x00 0x000000ba  if (A == gettid) goto 0236
 0131: 0x15 0x68 0x00 0x0000009d  if (A == prctl) goto 0236
 0132: 0x15 0x67 0x68 0x00000096  if (A == munlock) goto 0236 else goto 0237
 0133: 0x25 0x00 0x04 0x00000079  if (A <= 0x79) goto 0138
 0134: 0x15 0x65 0x00 0x00000095  if (A == mlock) goto 0236
 0135: 0x15 0x64 0x00 0x0000008a  if (A == fstatfs) goto 0236
 0136: 0x15 0x63 0x00 0x00000083  if (A == sigaltstack) goto 0236
 0137: 0x15 0x62 0x63 0x00000080  if (A == rt_sigtimedwait) goto 0236 else goto 0237
 0138: 0x15 0x61 0x00 0x00000079  if (A == getpgid) goto 0236
 0139: 0x15 0x60 0x00 0x00000078  if (A == getresgid) goto 0236
 0140: 0x15 0x5f 0x00 0x00000076  if (A == getresuid) goto 0236
 0141: 0x15 0x5e 0x5f 0x00000073  if (A == getgroups) goto 0236 else goto 0237
 0142: 0x25 0x00 0x09 0x00000051  if (A <= 0x51) goto 0152
 0143: 0x25 0x00 0x04 0x00000066  if (A <= 0x66) goto 0148
 0144: 0x15 0x5b 0x00 0x0000006f  if (A == getpgrp) goto 0236
 0145: 0x15 0x5a 0x00 0x0000006c  if (A == getegid) goto 0236
 0146: 0x15 0x59 0x00 0x0000006b  if (A == geteuid) goto 0236
 0147: 0x15 0x58 0x59 0x00000068  if (A == getgid) goto 0236 else goto 0237
 0148: 0x15 0x57 0x00 0x00000066  if (A == getuid) goto 0236
 0149: 0x15 0x56 0x00 0x0000005f  if (A == umask) goto 0236
 0150: 0x15 0x55 0x00 0x0000005d  if (A == fchown) goto 0236
 0151: 0x15 0x54 0x55 0x0000005b  if (A == fchmod) goto 0236 else goto 0237
 0152: 0x25 0x00 0x04 0x00000048  if (A <= 0x48) goto 0157
 0153: 0x15 0x52 0x00 0x00000051  if (A == fchdir) goto 0236
 0154: 0x15 0x51 0x00 0x0000004d  if (A == ftruncate) goto 0236
 0155: 0x15 0x50 0x00 0x0000004c  if (A == truncate) goto 0236
 0156: 0x15 0x4a 0x50 0x0000004b  if (A == fdatasync) goto 0231 else goto 0237
 0157: 0x15 0x00 0x09 0x00000048  if (A != fcntl) goto 0167
 0158: 0x20 0x00 0x00 0x0000001c  A = cmd >> 32 # fcntl(fd, cmd, arg)
 0159: 0x15 0x00 0x4d 0x00000000  if (A != 0x0) goto 0237
 0160: 0x20 0x00 0x00 0x00000018  A = cmd # fcntl(fd, cmd, arg)
 0161: 0x15 0x4a 0x00 0x00000026  if (A == 0x26) goto 0236
 0162: 0x15 0x49 0x00 0x00000025  if (A == 0x25) goto 0236
 0163: 0x15 0x48 0x00 0x00000004  if (A == 0x4) goto 0236
 0164: 0x15 0x47 0x00 0x00000003  if (A == 0x3) goto 0236
 0165: 0x15 0x46 0x00 0x00000002  if (A == 0x2) goto 0236
 0166: 0x15 0x45 0x46 0x00000001  if (A == 0x1) goto 0236 else goto 0237
 0167: 0x15 0x44 0x00 0x0000003f  if (A == uname) goto 0236
 0168: 0x15 0x43 0x00 0x0000003c  if (A == exit) goto 0236
 0169: 0x15 0x42 0x43 0x00000038  if (A == clone) goto 0236 else goto 0237
 0170: 0x25 0x00 0x27 0x0000000e  if (A <= 0xe) goto 0210
 0171: 0x25 0x00 0x09 0x00000023  if (A <= 0x23) goto 0181
 0172: 0x25 0x00 0x04 0x0000002c  if (A <= 0x2c) goto 0177
 0173: 0x15 0x3e 0x00 0x00000037  if (A == getsockopt) goto 0236
 0174: 0x15 0x3d 0x00 0x00000033  if (A == getsockname) goto 0236
 0175: 0x15 0x3c 0x00 0x00000031  if (A == bind) goto 0236
 0176: 0x15 0x3b 0x3c 0x0000002e  if (A == sendmsg) goto 0236 else goto 0237
 0177: 0x15 0x3a 0x00 0x0000002c  if (A == sendto) goto 0236
 0178: 0x15 0x39 0x00 0x0000002a  if (A == connect) goto 0236
 0179: 0x15 0x38 0x00 0x00000029  if (A == socket) goto 0236
 0180: 0x15 0x37 0x38 0x00000027  if (A == getpid) goto 0236 else goto 0237
 0181: 0x25 0x00 0x04 0x00000014  if (A <= 0x14) goto 0186
 0182: 0x15 0x35 0x00 0x00000023  if (A == nanosleep) goto 0236
 0183: 0x15 0x34 0x00 0x0000001c  if (A == madvise) goto 0236
 0184: 0x15 0x33 0x00 0x00000019  if (A == mremap) goto 0236
 0185: 0x15 0x32 0x33 0x00000018  if (A == sched_yield) goto 0236 else goto 0237
 0186: 0x15 0x2c 0x00 0x00000014  if (A == writev) goto 0231
 0187: 0x15 0x30 0x00 0x00000013  if (A == readv) goto 0236
 0188: 0x15 0x00 0x14 0x00000010  if (A != ioctl) goto 0209
 0189: 0x20 0x00 0x00 0x00000014  A = fd >> 32 # ioctl(fd, cmd, arg)
 0190: 0x15 0x00 0x2e 0x00000000  if (A != 0x0) goto 0237
 0191: 0x20 0x00 0x00 0x00000010  A = fd # ioctl(fd, cmd, arg)
 0192: 0x15 0x00 0x2c 0x000000ca  if (A != 0xca) goto 0237
 0193: 0x20 0x00 0x00 0x0000001c  A = cmd >> 32 # ioctl(fd, cmd, arg)
 0194: 0x15 0x00 0x06 0xffffffff  if (A != 0xffffffff) goto 0201
 0195: 0x20 0x00 0x00 0x00000018  A = cmd # ioctl(fd, cmd, arg)
 0196: 0x15 0x27 0x00 0xc0502100  if (A == 0xc0502100) goto 0236
 0197: 0x15 0x26 0x00 0xc0182101  if (A == 0xc0182101) goto 0236
 0198: 0x15 0x25 0x00 0x40182103  if (A == 0x40182103) goto 0236
 0199: 0x15 0x24 0x00 0x40082104  if (A == 0x40082104) goto 0236
 0200: 0x15 0x23 0x00 0x40082102  if (A == 0x40082102) goto 0236
 0201: 0x20 0x00 0x00 0x0000001c  A = cmd >> 32 # ioctl(fd, cmd, arg)
 0202: 0x15 0x00 0x22 0x00000000  if (A != 0x0) goto 0237
 0203: 0x20 0x00 0x00 0x00000018  A = cmd # ioctl(fd, cmd, arg)
 0204: 0x15 0x1f 0x00 0xc0502100  if (A == 0xc0502100) goto 0236
 0205: 0x15 0x1e 0x00 0xc0182101  if (A == 0xc0182101) goto 0236
 0206: 0x15 0x1d 0x00 0x40182103  if (A == 0x40182103) goto 0236
 0207: 0x15 0x1c 0x00 0x40082104  if (A == 0x40082104) goto 0236
 0208: 0x15 0x1b 0x1c 0x40082102  if (A == 0x40082102) goto 0236 else goto 0237
 0209: 0x15 0x1a 0x1b 0x0000000f  if (A == rt_sigreturn) goto 0236 else goto 0237
 0210: 0x25 0x00 0x0d 0x00000005  if (A <= 0x5) goto 0224
 0211: 0x25 0x00 0x08 0x0000000a  if (A <= 0xa) goto 0220
 0212: 0x15 0x17 0x00 0x0000000e  if (A == rt_sigprocmask) goto 0236
 0213: 0x15 0x00 0x04 0x0000000d  if (A != rt_sigaction) goto 0218
 0214: 0x20 0x00 0x00 0x0000001c  A = act >> 32 # rt_sigaction(sig, act, oact, sigsetsize)
 0215: 0x15 0x00 0x15 0x00000000  if (A != 0x0) goto 0237
 0216: 0x20 0x00 0x00 0x00000018  A = act # rt_sigaction(sig, act, oact, sigsetsize)
 0217: 0x15 0x12 0x13 0x00000000  if (A == 0x0) goto 0236 else goto 0237
 0218: 0x15 0x11 0x00 0x0000000c  if (A == brk) goto 0236
 0219: 0x15 0x10 0x11 0x0000000b  if (A == munmap) goto 0236 else goto 0237
 0220: 0x15 0x0f 0x00 0x0000000a  if (A == mprotect) goto 0236
 0221: 0x15 0x0e 0x00 0x00000009  if (A == mmap) goto 0236
 0222: 0x15 0x0d 0x00 0x00000008  if (A == lseek) goto 0236
 0223: 0x15 0x05 0x0d 0x00000006  if (A == lstat) goto 0229 else goto 0237
 0224: 0x25 0x00 0x05 0x00000001  if (A <= 0x1) goto 0230
 0225: 0x15 0x0a 0x00 0x00000005  if (A == fstat) goto 0236
 0226: 0x15 0x02 0x00 0x00000004  if (A == stat) goto 0229
 0227: 0x15 0x08 0x00 0x00000003  if (A == close) goto 0236
 0228: 0x15 0x00 0x08 0x00000002  if (A != open) goto 0237
 0229: 0x06 0x00 0x00 0x00050026  return ERRNO(38)
 0230: 0x15 0x00 0x04 0x00000001  if (A != write) goto 0235
 0231: 0x20 0x00 0x00 0x00000014  A = args[0] >> 32
 0232: 0x15 0x00 0x04 0x00000000  if (A != 0x0) goto 0237
 0233: 0x20 0x00 0x00 0x00000010  A = args[0]
 0234: 0x15 0x01 0x02 0x00000002  if (A == 0x2) goto 0236 else goto 0237
 0235: 0x15 0x00 0x01 0x00000000  if (A != read) goto 0237
 0236: 0x06 0x00 0x00 0x7fff0000  return ALLOW
 0237: 0x06 0x00 0x00 0x80000000  return KILL_PROCESS
