// File: /workspace/github_c_makefile_star2_O2/erikdubbelboer[P]discnt/src/server.c
// Function: initServerConfig
void initServerConfig(void) {
    int j;

    getRandomHexChars(server.runid,CONFIG_RUN_ID_SIZE);
    server.configfile = NULL;
    server.executable = NULL;
    server.hz = CONFIG_DEFAULT_HZ;
    server.runid[CONFIG_RUN_ID_SIZE] = '\0';
    server.arch_bits = (sizeof(long) == 8) ? 64 : 32;
    server.port = CONFIG_DEFAULT_SERVER_PORT;
    server.tcp_backlog = CONFIG_DEFAULT_TCP_BACKLOG;
    server.bindaddr_count = 0;
    server.unixsocket = NULL;
    server.unixsocketperm = CONFIG_DEFAULT_UNIX_SOCKET_PERM;
    server.ipfd_count = 0;
    server.sofd = -1;
    server.verbosity = CONFIG_DEFAULT_VERBOSITY;
    server.maxidletime = CONFIG_DEFAULT_CLIENT_TIMEOUT;
    server.tcpkeepalive = CONFIG_DEFAULT_TCP_KEEPALIVE;
    server.active_expire_enabled = 1;
    server.client_max_querybuf_len = PROTO_MAX_QUERYBUF_LEN;
    server.saveparams = NULL;
    server.loading = 0;
    server.logfile = zstrdup(CONFIG_DEFAULT_LOGFILE);
    server.syslog_enabled = CONFIG_DEFAULT_SYSLOG_ENABLED;
    server.syslog_ident = zstrdup(CONFIG_DEFAULT_SYSLOG_IDENT);
    server.syslog_facility = LOG_LOCAL0;
    server.daemonize = CONFIG_DEFAULT_DAEMONIZE;
    server.supervised = 0;
    server.supervised_mode = SUPERVISED_NONE;
    server.pidfile = zstrdup(CONFIG_DEFAULT_PID_FILE);
    server.ddb_filename = zstrdup(CONFIG_DEFAULT_DDB_FILENAME);
    server.requirepass = NULL;
    server.ddb_checksum = CONFIG_DEFAULT_DDB_CHECKSUM;
    server.stop_writes_on_bgsave_err = CONFIG_DEFAULT_STOP_WRITES_ON_BGSAVE_ERROR;
    server.activerehashing = CONFIG_DEFAULT_ACTIVE_REHASHING;
    server.maxclients = CONFIG_DEFAULT_MAX_CLIENTS;
    server.default_precision = CONFIG_DEFAULT_PRECISION;
    server.history_size = CONFIG_HISTORY;
    server.history_index = 0;
    server.bpop_blocked_clients = 0;
    server.maxmemory = CONFIG_DEFAULT_MAXMEMORY;
    server.shutdown_asap = 0;
    server.cluster_node_timeout = CLUSTER_DEFAULT_NODE_TIMEOUT;
    server.cluster_configfile = zstrdup(CONFIG_DEFAULT_CLUSTER_CONFIG_FILE);
    server.next_client_id = 1; /* Client IDs, start from 1 .*/
    server.loading_process_events_interval_bytes = (1024*1024*2);

    resetServerSaveParams();
    appendServerSaveParams(60*60,1); /* save after 1 hour and 1 change */
    appendServerSaveParams(300,100); /* save after 5 minutes and 100 changes */
    appendServerSaveParams(60,10000); /* save after 1 minute and 10000 changes */

    /* Client output buffer limits */
    for (j = 0; j < CLIENT_TYPE_COUNT; j++)
        server.client_obuf_limits[j] = clientBufferLimitsDefaults[j];

    /* Double constants initialization */
    R_Zero = 0.0;
    R_PosInf = 1.0/R_Zero;
    R_NegInf = -1.0/R_Zero;
    R_Nan = R_Zero/R_Zero;

    /* Command table -- we initiialize it here as it is part of the
     * initial configuration, since command names may be changed via
     * discnt.conf using the rename-command directive. */
    server.commands = dictCreate(&commandTableDictType,NULL);
    server.orig_commands = dictCreate(&commandTableDictType,NULL);
    populateCommandTable();
    server.delCommand = lookupCommandByCString("del");
    server.multiCommand = lookupCommandByCString("multi");
    server.lpushCommand = lookupCommandByCString("lpush");
    server.lpopCommand = lookupCommandByCString("lpop");
    server.rpopCommand = lookupCommandByCString("rpop");

    /* Latency monitor */
    server.latency_monitor_threshold = CONFIG_DEFAULT_LATENCY_MONITOR_THRESHOLD;

    /* Debugging */
    server.assert_failed = "<no assertion failed>";
    server.assert_file = "<no file>";
    server.assert_line = 0;
    server.bug_report_start = 0;
    server.watchdog_period = 0;
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
leaq 0x5353e(%rip), %rdi     # 0x6a0e8
pushq $0x28
popq %rsi
callq 0x1f624
xorps %xmm0, %xmm0
movups %xmm0, 0x534d4(%rip)    # 0x6a090
movl $0xa, 0x534e2(%rip)     # 0x6a0a8
movb $0x0, 0x53543(%rip)     # 0x6a110
movl $0x40, 0x53509(%rip)    # 0x6a0e0
movabsq $0x1ff0000148e, %rax    # imm = 0x1FF0000148E
movq %rax, 0x53554(%rip)     # 0x6a13c
andl $0x0, 0x535d9(%rip)     # 0x6a1c8
andq $0x0, 0x535d9(%rip)     # 0x6a1d0
andl $0x0, 0x535da(%rip)     # 0x6a1d8
movabsq $-0x100000000, %rax     # imm = 0xFFFFFFFF00000000
movq %rax, 0x5360d(%rip)     # 0x6a21c
movaps 0x3577a(%rip), %xmm0    # 0x4c390
movups %xmm0, 0x53a03(%rip)    # 0x6a620
movl $0x40000000, %r14d      # imm = 0x40000000
movq %r14, 0x53a06(%rip)     # 0x6a630
andq $0x0, 0x53b0e(%rip)     # 0x6a740
andl $0x0, 0x5376f(%rip)     # 0x6a3a8
leaq 0x37f0d(%rip), %rdi     # 0x4eb4d
callq 0x1acc3
movq %rax, 0x53a2c(%rip)     # 0x6a678
andl $0x0, 0x53a2d(%rip)     # 0x6a680
leaq 0x35e4b(%rip), %rdi     # 0x4caa5
callq 0x1acc3
movq %rax, 0x53a22(%rip)     # 0x6a688
movl $0x80, 0x53a20(%rip)    # 0x6a690
andl $0x0, 0x539c9(%rip)     # 0x6a640
andq $0x0, 0x539b9(%rip)     # 0x6a638
leaq 0x35e26(%rip), %rdi     # 0x4caac
callq 0x1acc3
movq %rax, 0x53446(%rip)     # 0x6a0d8
leaq 0x35e27(%rip), %rdi     # 0x4cac0
callq 0x1acc3
movq %rax, 0x53aab(%rip)     # 0x6a750
andq $0x0, 0x53423(%rip)     # 0x6a0d0
pushq $0x1
popq %rbx
movl %ebx, 0x53aa6(%rip)     # 0x6a75c
movl %ebx, 0x53acc(%rip)     # 0x6a788
movl $0x2710, 0x539ce(%rip)  # imm = 0x2710
movabsq $0x3ff0000000000000, %rax # imm = 0x3FF0000000000000
movq %rax, 0x539d1(%rip)     # 0x6a6a8
movq $0xa, 0x539ce(%rip) # 0x6a6b0
andl $0x0, 0x539cf(%rip)     # 0x6a6b8
movq %r14, 0x539a8(%rip)     # 0x6a698
movabsq $0x100000000, %rax      # imm = 0x100000000
movq %rax, 0x533c7(%rip)     # 0x6a0c8
movq $0x3a98, 0x539d4(%rip) # imm = 0x3A98
leaq 0x35db6(%rip), %rdi     # 0x4cac9
callq 0x1acc3
movq %rax, 0x539c9(%rip)     # 0x6a6e8
movq $0x1, 0x53676(%rip) # 0x6a3a0
movq $0x200000, 0x53693(%rip) # imm = 0x200000
callq 0x205cd
movl $0xe10, %edi            # imm = 0xE10
movl %ebx, %esi
callq 0x20577
pushq $0x64
popq %rsi
movl $0x12c, %edi            # imm = 0x12C
callq 0x20577
pushq $0x3c
popq %rdi
movl $0x2710, %esi           # imm = 0x2710
callq 0x20577
xorl %eax, %eax
leaq 0x5331f(%rip), %rcx     # 0x6a088
leaq 0x67800(%rip), %rdx     # 0x7e570
cmpq $0x30, %rax
je 0x16d95
movq 0x10(%rdx,%rax), %rsi
movq %rsi, 0x5d0(%rax,%rcx)
movups (%rdx,%rax), %xmm0
movups %xmm0, 0x5c0(%rax,%rcx)
addq $0x18, %rax
jmp 0x16d70
andq $0x0, 0x675c3(%rip)     # 0x7e360
movabsq $0x7ff0000000000000, %rax # imm = 0x7FF0000000000000
movq %rax, 0x675ba(%rip)     # 0x7e368
movabsq $-0x10000000000000, %rax # imm = 0xFFF0000000000000
movq %rax, 0x675b1(%rip)     # 0x7e370
movabsq $0x7ff8000000000000, %rax # imm = 0x7FF8000000000000
movq %rax, 0x675a8(%rip)     # 0x7e378
leaq 0x52f39(%rip), %rbx     # 0x69d10
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1464a
movq %rax, 0x532c8(%rip)     # 0x6a0b0
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1464a
movq %rax, 0x532bf(%rip)     # 0x6a0b8
callq 0x16e98
leaq 0x35ccf(%rip), %rdi     # 0x4cad4
callq 0x16feb
movq %rax, 0x535bf(%rip)     # 0x6a3d0
leaq 0x35cc0(%rip), %rdi     # 0x4cad8
callq 0x16feb
movq %rax, 0x535b4(%rip)     # 0x6a3d8
leaq 0x35cb3(%rip), %rdi     # 0x4cade
callq 0x16feb
movq %rax, 0x535a9(%rip)     # 0x6a3e0
leaq 0x35ca6(%rip), %rdi     # 0x4cae4
callq 0x16feb
movq %rax, 0x5359e(%rip)     # 0x6a3e8
leaq 0x35c98(%rip), %rdi     # 0x4cae9
callq 0x16feb
movq %rax, 0x53593(%rip)     # 0x6a3f0
andq $0x0, 0x53893(%rip)     # 0x6a6f8
leaq 0x35c82(%rip), %rax     # 0x4caee
movq %rax, 0x53895(%rip)     # 0x6a708
leaq 0x35c8a(%rip), %rax     # 0x4cb04
movq %rax, 0x5388f(%rip)     # 0x6a710
andq $0x0, 0x5388f(%rip)     # 0x6a718
andl $0x0, 0x53890(%rip)     # 0x6a720
addq $0x8, %rsp
popq %rbx
popq %r14
retq