// File: /workspace/github_c_makefile_star2_O1/nilyang[P]redis-tdd-annotation/src/config.c
// Function: rewriteConfig
int rewriteConfig(char *path) {
    struct rewriteConfigState *state;
    sds newcontent;
    int retval;

    /* Step 1: read the old config into our rewrite state. */
    if ((state = rewriteConfigReadOldFile(path)) == NULL) return -1;

    /* Step 2: rewrite every single option, replacing or appending it inside
     * the rewrite state. */

    rewriteConfigYesNoOption(state,"daemonize",server.daemonize,0);
    rewriteConfigStringOption(state,"pidfile",server.pidfile,REDIS_DEFAULT_PID_FILE);
    rewriteConfigNumericalOption(state,"port",server.port,REDIS_SERVERPORT);
    rewriteConfigNumericalOption(state,"tcp-backlog",server.tcp_backlog,REDIS_TCP_BACKLOG);
    rewriteConfigBindOption(state);
    rewriteConfigStringOption(state,"unixsocket",server.unixsocket,NULL);
    rewriteConfigOctalOption(state,"unixsocketperm",server.unixsocketperm,REDIS_DEFAULT_UNIX_SOCKET_PERM);
    rewriteConfigNumericalOption(state,"timeout",server.maxidletime,REDIS_MAXIDLETIME);
    rewriteConfigNumericalOption(state,"tcp-keepalive",server.tcpkeepalive,REDIS_DEFAULT_TCP_KEEPALIVE);
    rewriteConfigEnumOption(state,"loglevel",server.verbosity,
        "debug", REDIS_DEBUG,
        "verbose", REDIS_VERBOSE,
        "notice", REDIS_NOTICE,
        "warning", REDIS_WARNING,
        NULL, REDIS_DEFAULT_VERBOSITY);
    rewriteConfigStringOption(state,"logfile",server.logfile,REDIS_DEFAULT_LOGFILE);
    rewriteConfigYesNoOption(state,"syslog-enabled",server.syslog_enabled,REDIS_DEFAULT_SYSLOG_ENABLED);
    rewriteConfigStringOption(state,"syslog-ident",server.syslog_ident,REDIS_DEFAULT_SYSLOG_IDENT);
    rewriteConfigSyslogfacilityOption(state);
    rewriteConfigSaveOption(state);
    rewriteConfigNumericalOption(state,"databases",server.dbnum,REDIS_DEFAULT_DBNUM);
    rewriteConfigYesNoOption(state,"stop-writes-on-bgsave-error",server.stop_writes_on_bgsave_err,REDIS_DEFAULT_STOP_WRITES_ON_BGSAVE_ERROR);
    rewriteConfigYesNoOption(state,"rdbcompression",server.rdb_compression,REDIS_DEFAULT_RDB_COMPRESSION);
    rewriteConfigYesNoOption(state,"rdbchecksum",server.rdb_checksum,REDIS_DEFAULT_RDB_CHECKSUM);
    rewriteConfigStringOption(state,"dbfilename",server.rdb_filename,REDIS_DEFAULT_RDB_FILENAME);
    rewriteConfigDirOption(state);
    rewriteConfigSlaveofOption(state);
    rewriteConfigStringOption(state,"masterauth",server.masterauth,NULL);
    rewriteConfigYesNoOption(state,"slave-serve-stale-data",server.repl_serve_stale_data,REDIS_DEFAULT_SLAVE_SERVE_STALE_DATA);
    rewriteConfigYesNoOption(state,"slave-read-only",server.repl_slave_ro,REDIS_DEFAULT_SLAVE_READ_ONLY);
    rewriteConfigNumericalOption(state,"repl-ping-slave-period",server.repl_ping_slave_period,REDIS_REPL_PING_SLAVE_PERIOD);
    rewriteConfigNumericalOption(state,"repl-timeout",server.repl_timeout,REDIS_REPL_TIMEOUT);
    rewriteConfigBytesOption(state,"repl-backlog-size",server.repl_backlog_size,REDIS_DEFAULT_REPL_BACKLOG_SIZE);
    rewriteConfigBytesOption(state,"repl-backlog-ttl",server.repl_backlog_time_limit,REDIS_DEFAULT_REPL_BACKLOG_TIME_LIMIT);
    rewriteConfigYesNoOption(state,"repl-disable-tcp-nodelay",server.repl_disable_tcp_nodelay,REDIS_DEFAULT_REPL_DISABLE_TCP_NODELAY);
    rewriteConfigNumericalOption(state,"slave-priority",server.slave_priority,REDIS_DEFAULT_SLAVE_PRIORITY);
    rewriteConfigNumericalOption(state,"min-slaves-to-write",server.repl_min_slaves_to_write,REDIS_DEFAULT_MIN_SLAVES_TO_WRITE);
    rewriteConfigNumericalOption(state,"min-slaves-max-lag",server.repl_min_slaves_max_lag,REDIS_DEFAULT_MIN_SLAVES_MAX_LAG);
    rewriteConfigStringOption(state,"requirepass",server.requirepass,NULL);
    rewriteConfigNumericalOption(state,"maxclients",server.maxclients,REDIS_MAX_CLIENTS);
    rewriteConfigBytesOption(state,"maxmemory",server.maxmemory,REDIS_DEFAULT_MAXMEMORY);
    rewriteConfigEnumOption(state,"maxmemory-policy",server.maxmemory_policy,
        "volatile-lru", REDIS_MAXMEMORY_VOLATILE_LRU,
        "allkeys-lru", REDIS_MAXMEMORY_ALLKEYS_LRU,
        "volatile-random", REDIS_MAXMEMORY_VOLATILE_RANDOM,
        "allkeys-random", REDIS_MAXMEMORY_ALLKEYS_RANDOM,
        "volatile-ttl", REDIS_MAXMEMORY_VOLATILE_TTL,
        "noeviction", REDIS_MAXMEMORY_NO_EVICTION,
        NULL, REDIS_DEFAULT_MAXMEMORY_POLICY);
    rewriteConfigNumericalOption(state,"maxmemory-samples",server.maxmemory_samples,REDIS_DEFAULT_MAXMEMORY_SAMPLES);
    rewriteConfigYesNoOption(state,"appendonly",server.aof_state != REDIS_AOF_OFF,0);
    rewriteConfigStringOption(state,"appendfilename",server.aof_filename,REDIS_DEFAULT_AOF_FILENAME);
    rewriteConfigEnumOption(state,"appendfsync",server.aof_fsync,
        "everysec", AOF_FSYNC_EVERYSEC,
        "always", AOF_FSYNC_ALWAYS,
        "no", AOF_FSYNC_NO,
        NULL, REDIS_DEFAULT_AOF_FSYNC);
    rewriteConfigYesNoOption(state,"no-appendfsync-on-rewrite",server.aof_no_fsync_on_rewrite,REDIS_DEFAULT_AOF_NO_FSYNC_ON_REWRITE);
    rewriteConfigNumericalOption(state,"auto-aof-rewrite-percentage",server.aof_rewrite_perc,REDIS_AOF_REWRITE_PERC);
    rewriteConfigBytesOption(state,"auto-aof-rewrite-min-size",server.aof_rewrite_min_size,REDIS_AOF_REWRITE_MIN_SIZE);
    rewriteConfigNumericalOption(state,"lua-time-limit",server.lua_time_limit,REDIS_LUA_TIME_LIMIT);
    rewriteConfigYesNoOption(state,"cluster-enabled",server.cluster_enabled,0);
    rewriteConfigStringOption(state,"cluster-config-file",server.cluster_configfile,REDIS_DEFAULT_CLUSTER_CONFIG_FILE);
    rewriteConfigNumericalOption(state,"cluster-node-timeout",server.cluster_node_timeout,REDIS_CLUSTER_DEFAULT_NODE_TIMEOUT);
    rewriteConfigNumericalOption(state,"cluster-migration-barrier",server.cluster_migration_barrier,REDIS_CLUSTER_DEFAULT_MIGRATION_BARRIER);
    rewriteConfigNumericalOption(state,"slowlog-log-slower-than",server.slowlog_log_slower_than,REDIS_SLOWLOG_LOG_SLOWER_THAN);
    rewriteConfigNumericalOption(state,"slowlog-max-len",server.slowlog_max_len,REDIS_SLOWLOG_MAX_LEN);
    rewriteConfigNotifykeyspaceeventsOption(state);
    rewriteConfigNumericalOption(state,"hash-max-ziplist-entries",server.hash_max_ziplist_entries,REDIS_HASH_MAX_ZIPLIST_ENTRIES);
    rewriteConfigNumericalOption(state,"hash-max-ziplist-value",server.hash_max_ziplist_value,REDIS_HASH_MAX_ZIPLIST_VALUE);
    rewriteConfigNumericalOption(state,"list-max-ziplist-entries",server.list_max_ziplist_entries,REDIS_LIST_MAX_ZIPLIST_ENTRIES);
    rewriteConfigNumericalOption(state,"list-max-ziplist-value",server.list_max_ziplist_value,REDIS_LIST_MAX_ZIPLIST_VALUE);
    rewriteConfigNumericalOption(state,"set-max-intset-entries",server.set_max_intset_entries,REDIS_SET_MAX_INTSET_ENTRIES);
    rewriteConfigNumericalOption(state,"zset-max-ziplist-entries",server.zset_max_ziplist_entries,REDIS_ZSET_MAX_ZIPLIST_ENTRIES);
    rewriteConfigNumericalOption(state,"zset-max-ziplist-value",server.zset_max_ziplist_value,REDIS_ZSET_MAX_ZIPLIST_VALUE);
    rewriteConfigNumericalOption(state,"hll-sparse-max-bytes",server.hll_sparse_max_bytes,REDIS_DEFAULT_HLL_SPARSE_MAX_BYTES);
    rewriteConfigYesNoOption(state,"activerehashing",server.activerehashing,REDIS_DEFAULT_ACTIVE_REHASHING);
    rewriteConfigClientoutputbufferlimitOption(state);
    rewriteConfigNumericalOption(state,"hz",server.hz,REDIS_DEFAULT_HZ);
    rewriteConfigYesNoOption(state,"aof-rewrite-incremental-fsync",server.aof_rewrite_incremental_fsync,REDIS_DEFAULT_AOF_REWRITE_INCREMENTAL_FSYNC);
    if (server.sentinel_mode) rewriteConfigSentinelOption(state);

    /* Step 3: remove all the orphaned lines in the old file, that is, lines
     * that were used by a config option and are no longer used, like in case
     * of multiple "save" options or duplicated options. */
    rewriteConfigRemoveOrphaned(state);

    /* Step 4: generate a new configuration file from the modified state
     * and write it into the original file. */
    newcontent = rewriteConfigGetContentFromState(state);
    retval = rewriteConfigOverwriteFile(server.configfile,newcontent);

    sdsfree(newcontent);
    rewriteConfigReleaseState(state);
    return retval;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
callq 0x47d81
testq %rax, %rax
je 0x491eb
movq %rax, %rbx
leaq 0x814fd(%rip), %r15     # 0xc9fa8
movl 0x484(%r15), %edx
leaq 0x5109d(%rip), %rsi     # 0x99b56
xorl %r14d, %r14d
movq %rax, %rdi
xorl %ecx, %ecx
callq 0x48180
movq 0x48(%r15), %rdx
leaq 0x51200(%rip), %rsi     # 0x99cd1
leaq 0x4c22f(%rip), %rcx     # 0x94d07
movq %rbx, %rdi
callq 0x481de
movslq 0x88(%r15), %rdx
leaq 0x50c4c(%rip), %rsi     # 0x9973a
movl $0x18eb, %ecx           # imm = 0x18EB
movq %rbx, %rdi
callq 0x48273
movslq 0x8c(%r15), %rdx
leaq 0x50c36(%rip), %rsi     # 0x9973f
movl $0x1ff, %ecx            # imm = 0x1FF
movq %rbx, %rdi
callq 0x48273
movq %rbx, %rdi
callq 0x487a0
movq 0x118(%r15), %rdx
leaq 0x50c5c(%rip), %rsi     # 0x99788
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x481de
movl 0x120(%r15), %edx
leaq 0x50c4f(%rip), %rsi     # 0x99793
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x482c2
movslq 0x468(%r15), %rdx
leaq 0x512ef(%rip), %rsi     # 0x99e4b
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48273
movslq 0x46c(%r15), %rdx
leaq 0x50b94(%rip), %rsi     # 0x99708
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48273
movl 0x464(%r15), %edx
subq $0x8, %rsp
movl $0x2, %r13d
movl $0x3, %ebp
leaq 0x50ca4(%rip), %r10     # 0x9983f
leaq 0x50c65(%rip), %r11     # 0x99807
movl $0x1, %r12d
leaq 0x50c47(%rip), %rsi     # 0x997f6
leaq 0x5abe2(%rip), %rcx     # 0xa3798
leaq 0x50c42(%rip), %r9      # 0x997ff
movq %rbx, %rdi
movl $0x0, %r8d
movl $0x0, %eax
pushq %r13
pushq %r14
pushq %rbp
pushq %r10
pushq %r13
pushq %r11
pushq %r12
callq 0x4830e
addq $0x40, %rsp
movq 0x5d0(%r15), %rdx
leaq 0x50c58(%rip), %rsi     # 0x99847
leaq 0x4e6eb(%rip), %rcx     # 0x972e1
movq %rbx, %rdi
callq 0x481de
movl 0x5d8(%r15), %edx
leaq 0x50c5f(%rip), %rsi     # 0x9986b
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48180
movq 0x5e0(%r15), %rdx
leaq 0x50c75(%rip), %rsi     # 0x99899
leaq 0x4c0d6(%rip), %rcx     # 0x94d01
movq %rbx, %rdi
callq 0x481de
movq %rbx, %rdi
callq 0x48425
movq %rbx, %rdi
callq 0x484bb
movslq 0x480(%r15), %rdx
leaq 0x50cba(%rip), %rsi     # 0x9990b
movl $0x10, %ecx
movq %rbx, %rdi
callq 0x48273
movl 0x5bc(%r15), %edx
leaq 0x512fc(%rip), %rsi     # 0x99f68
movq %rbx, %rdi
movl $0x1, %ecx
callq 0x48180
movl 0x590(%r15), %edx
leaq 0x50ea4(%rip), %rsi     # 0x99b2b
movq %rbx, %rdi
movl $0x1, %ecx
callq 0x48180
movl 0x594(%r15), %edx
leaq 0x50e98(%rip), %rsi     # 0x99b3a
movq %rbx, %rdi
movl $0x1, %ecx
callq 0x48180
movq 0x588(%r15), %rdx
leaq 0x5101c(%rip), %rsi     # 0x99cd9
leaq 0x4c056(%rip), %rcx     # 0x94d1a
movq %rbx, %rdi
callq 0x481de
movq %rbx, %rdi
callq 0x48558
movq %rbx, %rdi
callq 0x4859c
movq 0x648(%r15), %rdx
leaq 0x50e0f(%rip), %rsi     # 0x99af9
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x481de
movl 0x6a8(%r15), %edx
leaq 0x50e02(%rip), %rsi     # 0x99b04
movq %rbx, %rdi
movl $0x1, %ecx
callq 0x48180
movl 0x6ac(%r15), %edx
leaq 0x50dfe(%rip), %rsi     # 0x99b1b
movq %rbx, %rdi
movl $0x1, %ecx
callq 0x48180
movslq 0x5f8(%r15), %rdx
leaq 0x50cc7(%rip), %rsi     # 0x999ff
movl $0xa, %ecx
movq %rbx, %rdi
callq 0x48273
movslq 0x65c(%r15), %rdx
leaq 0x50cef(%rip), %rsi     # 0x99a42
movl $0x3c, %ecx
movq %rbx, %rdi
callq 0x48273
movq 0x608(%r15), %rdx
leaq 0x50d1c(%rip), %rsi     # 0x99a8a
movl $0x100000, %ecx         # imm = 0x100000
movq %rbx, %rdi
callq 0x48120
movq 0x628(%r15), %rdx
leaq 0x50d3b(%rip), %rsi     # 0x99ac4
movl $0xe10, %ecx            # imm = 0xE10
movq %rbx, %rdi
callq 0x48120
movl 0x6b8(%r15), %edx
leaq 0x50ccd(%rip), %rsi     # 0x99a71
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48180
movslq 0x6bc(%r15), %rdx
leaq 0x511c8(%rip), %rsi     # 0x99f84
movl $0x64, %ecx
movq %rbx, %rdi
callq 0x48273
movslq 0x638(%r15), %rdx
leaq 0x511bc(%rip), %rsi     # 0x99f93
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48273
movslq 0x63c(%r15), %rdx
leaq 0x511df(%rip), %rsi     # 0x99fce
movl $0xa, %ecx
movq %rbx, %rdi
callq 0x48273
movq 0x40(%r15), %rdx
leaq 0x50e8f(%rip), %rsi     # 0x99c96
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x481de
movslq 0x71c(%r15), %rdx
leaq 0x50afe(%rip), %rsi     # 0x9991d
movl $0x2710, %ecx           # imm = 0x2710
movq %rbx, %rdi
callq 0x48273
movq 0x720(%r15), %rdx
leaq 0x50b08(%rip), %rsi     # 0x99942
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48120
movl 0x728(%r15), %edx
subq $0x8, %rsp
movl $0x5, %r11d
leaq 0x50b46(%rip), %r14     # 0x999a2
leaq 0x50b17(%rip), %rbp     # 0x9997a
leaq 0x50b29(%rip), %r12     # 0x99993
leaq 0x50af9(%rip), %r10     # 0x9996a
leaq 0x50ad4(%rip), %rsi     # 0x9994c
leaq 0x50ade(%rip), %rcx     # 0x9995d
leaq 0x50b01(%rip), %r9      # 0x99987
movq %rbx, %rdi
movl $0x0, %r8d
movl $0x0, %eax
pushq %r11
movl $0x0, %r13d
pushq %r13
pushq %r11
pushq %r14
movl $0x1, %r14d
pushq %r14
pushq %rbp
pushq $0x4
pushq %r12
movl $0x2, %r12d
pushq %r12
pushq %r10
movl $0x3, %r10d
pushq %r10
callq 0x4830e
addq $0x60, %rsp
movslq 0x72c(%r15), %rdx
leaq 0x50aee(%rip), %rsi     # 0x999c6
movl $0x5, %ecx
movq %rbx, %rdi
callq 0x48273
xorl %edx, %edx
cmpl $0x0, 0x4d0(%r15)
setne %dl
leaq 0x50c6a(%rip), %rsi     # 0x99b63
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48180
movq 0x4d8(%r15), %rdx
leaq 0x50c5d(%rip), %rsi     # 0x99b6e
leaq 0x4be0b(%rip), %rcx     # 0x94d23
movq %rbx, %rdi
callq 0x481de
movl 0x4d4(%r15), %edx
subq $0x8, %rsp
leaq 0x4f6a0(%rip), %r10     # 0x985d2
leaq 0x50c8e(%rip), %rsi     # 0x99bc7
leaq 0x50c9a(%rip), %rcx     # 0x99bda
leaq 0x50c8c(%rip), %r9      # 0x99bd3
movq %rbx, %rdi
movl $0x2, %r8d
movl $0x0, %eax
pushq %r12
pushq %r13
pushq $0x0
pushq %r10
pushq %r14
callq 0x4830e
addq $0x30, %rsp
movl 0x4e0(%r15), %edx
leaq 0x50c37(%rip), %rsi     # 0x99bad
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48180
movslq 0x4e4(%r15), %rdx
leaq 0x50c83(%rip), %rsi     # 0x99c11
movl $0x64, %ecx
movq %rbx, %rdi
callq 0x48273
movq 0x4e8(%r15), %rdx
leaq 0x50cb5(%rip), %rsi     # 0x99c5e
movl $0x4000000, %ecx        # imm = 0x4000000
movq %rbx, %rdi
callq 0x48120
movq 0x800(%r15), %rdx
leaq 0x50efe(%rip), %rsi     # 0x99ec2
movl $0x1388, %ecx           # imm = 0x1388
movq %rbx, %rdi
callq 0x48273
movl 0x7bc(%r15), %edx
leaq 0x50e3b(%rip), %rsi     # 0x99e1a
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x48180
movq 0x7c8(%r15), %rdx
leaq 0x50e33(%rip), %rsi     # 0x99e2a
leaq 0x4bd34(%rip), %rcx     # 0x94d32
movq %rbx, %rdi
callq 0x481de
movq 0x7c0(%r15), %rdx
leaq 0x50e2a(%rip), %rsi     # 0x99e3e
movl $0x3a98, %ecx           # imm = 0x3A98
movq %rbx, %rdi
callq 0x48273
movslq 0x7d8(%r15), %rdx
leaq 0x50e4e(%rip), %rsi     # 0x99e7d
movl $0x1, %ecx
movq %rbx, %rdi
callq 0x48273
movq 0x3b8(%r15), %rdx
leaq 0x50e87(%rip), %rsi     # 0x99ed1
movl $0x2710, %ecx           # imm = 0x2710
movq %rbx, %rdi
callq 0x48273
movq 0x3c0(%r15), %rdx
leaq 0x50e84(%rip), %rsi     # 0x99ee9
movl $0x80, %ecx
movq %rbx, %rdi
callq 0x48273
movq %rbx, %rdi
callq 0x4861c
movq 0x758(%r15), %rdx
leaq 0x50c88(%rip), %rsi     # 0x99d10
movl $0x200, %ecx            # imm = 0x200
movq %rbx, %rdi
callq 0x48273
movq 0x760(%r15), %rdx
leaq 0x50c86(%rip), %rsi     # 0x99d29
movl $0x40, %ecx
movq %rbx, %rdi
callq 0x48273
movq 0x768(%r15), %rdx
leaq 0x50c82(%rip), %rsi     # 0x99d40
movl $0x200, %ecx            # imm = 0x200
movq %rbx, %rdi
callq 0x48273
movq 0x770(%r15), %rdx
leaq 0x50c80(%rip), %rsi     # 0x99d59
movl $0x40, %ecx
movq %rbx, %rdi
callq 0x48273
movq 0x778(%r15), %rdx
leaq 0x50c7c(%rip), %rsi     # 0x99d70
movl $0x200, %ecx            # imm = 0x200
movq %rbx, %rdi
callq 0x48273
movq 0x780(%r15), %rdx
leaq 0x50c78(%rip), %rsi     # 0x99d87
movl $0x80, %ecx
movq %rbx, %rdi
callq 0x48273
movq 0x788(%r15), %rdx
leaq 0x50c76(%rip), %rsi     # 0x99da0
movl $0x40, %ecx
movq %rbx, %rdi
callq 0x48273
movq 0x790(%r15), %rdx
leaq 0x50c72(%rip), %rsi     # 0x99db7
movl $0xbb8, %ecx            # imm = 0xBB8
movq %rbx, %rdi
callq 0x48273
movl 0x38(%r15), %edx
leaq 0x509e9(%rip), %rsi     # 0x99b46
movq %rbx, %rdi
movl $0x1, %ecx
callq 0x48180
movq %rbx, %rdi
callq 0x48699
movslq 0x8(%r15), %rdx
leaq 0x509e3(%rip), %rsi     # 0x99b60
movl $0xa, %ecx
movq %rbx, %rdi
callq 0x48273
movl 0x550(%r15), %edx
leaq 0x50ae0(%rip), %rsi     # 0x99c78
movq %rbx, %rdi
movl $0x1, %ecx
callq 0x48180
cmpl $0x0, 0x84(%r15)
je 0x491b7
movq %rbx, %rdi
callq 0x5d0cf
movq %rbx, %rdi
callq 0x488e1
movq %rbx, %rdi
callq 0x48847
movq %rax, %r14
movq (%r15), %rdi
movq %rax, %rsi
callq 0x4898f
movl %eax, %ebp
movq %r14, %rdi
callq 0x28204
movq %rbx, %rdi
callq 0x488b7
movl %ebp, %eax
jmp 0x491f0
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq