// File: /workspace/github_c_makefile_star2_O1/nilyang[P]redis-tdd-annotation/src/config.c
// Function: configGetCommand
void configGetCommand(redisClient *c) {
    robj *o = c->argv[2];
    void *replylen = addDeferredMultiBulkLength(c);
    char *pattern = o->ptr;
    char buf[128];
    int matches = 0;
    redisAssertWithInfo(c,o,sdsEncodedObject(o));

    /* String values */
    config_get_string_field("dbfilename",server.rdb_filename);
    config_get_string_field("requirepass",server.requirepass);
    config_get_string_field("masterauth",server.masterauth);
    config_get_string_field("unixsocket",server.unixsocket);
    config_get_string_field("logfile",server.logfile);
    config_get_string_field("pidfile",server.pidfile);

    /* Numerical values */
    config_get_numerical_field("maxmemory",server.maxmemory);
    config_get_numerical_field("maxmemory-samples",server.maxmemory_samples);
    config_get_numerical_field("timeout",server.maxidletime);
    config_get_numerical_field("tcp-keepalive",server.tcpkeepalive);
    config_get_numerical_field("auto-aof-rewrite-percentage",
            server.aof_rewrite_perc);
    config_get_numerical_field("auto-aof-rewrite-min-size",
            server.aof_rewrite_min_size);
    config_get_numerical_field("hash-max-ziplist-entries",
            server.hash_max_ziplist_entries);
    config_get_numerical_field("hash-max-ziplist-value",
            server.hash_max_ziplist_value);
    config_get_numerical_field("list-max-ziplist-entries",
            server.list_max_ziplist_entries);
    config_get_numerical_field("list-max-ziplist-value",
            server.list_max_ziplist_value);
    config_get_numerical_field("set-max-intset-entries",
            server.set_max_intset_entries);
    config_get_numerical_field("zset-max-ziplist-entries",
            server.zset_max_ziplist_entries);
    config_get_numerical_field("zset-max-ziplist-value",
            server.zset_max_ziplist_value);
    config_get_numerical_field("hll-sparse-max-bytes",
            server.hll_sparse_max_bytes);
    config_get_numerical_field("lua-time-limit",server.lua_time_limit);
    config_get_numerical_field("slowlog-log-slower-than",
            server.slowlog_log_slower_than);
    config_get_numerical_field("slowlog-max-len",
            server.slowlog_max_len);
    config_get_numerical_field("port",server.port);
    config_get_numerical_field("tcp-backlog",server.tcp_backlog);
    config_get_numerical_field("databases",server.dbnum);
    config_get_numerical_field("repl-ping-slave-period",server.repl_ping_slave_period);
    config_get_numerical_field("repl-timeout",server.repl_timeout);
    config_get_numerical_field("repl-backlog-size",server.repl_backlog_size);
    config_get_numerical_field("repl-backlog-ttl",server.repl_backlog_time_limit);
    config_get_numerical_field("maxclients",server.maxclients);
    config_get_numerical_field("watchdog-period",server.watchdog_period);
    config_get_numerical_field("slave-priority",server.slave_priority);
    config_get_numerical_field("min-slaves-to-write",server.repl_min_slaves_to_write);
    config_get_numerical_field("min-slaves-max-lag",server.repl_min_slaves_max_lag);
    config_get_numerical_field("hz",server.hz);
    config_get_numerical_field("cluster-node-timeout",server.cluster_node_timeout);
    config_get_numerical_field("cluster-migration-barrier",server.cluster_migration_barrier);

    /* Bool (yes/no) values */
    config_get_bool_field("no-appendfsync-on-rewrite",
            server.aof_no_fsync_on_rewrite);
    config_get_bool_field("slave-serve-stale-data",
            server.repl_serve_stale_data);
    config_get_bool_field("slave-read-only",
            server.repl_slave_ro);
    config_get_bool_field("stop-writes-on-bgsave-error",
            server.stop_writes_on_bgsave_err);
    config_get_bool_field("daemonize", server.daemonize);
    config_get_bool_field("rdbcompression", server.rdb_compression);
    config_get_bool_field("rdbchecksum", server.rdb_checksum);
    config_get_bool_field("activerehashing", server.activerehashing);
    config_get_bool_field("repl-disable-tcp-nodelay",
            server.repl_disable_tcp_nodelay);
    config_get_bool_field("aof-rewrite-incremental-fsync",
            server.aof_rewrite_incremental_fsync);

    /* Everything we can't handle with macros follows. */

    if (stringmatch(pattern,"appendonly",0)) {
        addReplyBulkCString(c,"appendonly");
        addReplyBulkCString(c,server.aof_state == REDIS_AOF_OFF ? "no" : "yes");
        matches++;
    }
    if (stringmatch(pattern,"dir",0)) {
        char buf[1024];

        if (getcwd(buf,sizeof(buf)) == NULL)
            buf[0] = '\0';

        addReplyBulkCString(c,"dir");
        addReplyBulkCString(c,buf);
        matches++;
    }
    if (stringmatch(pattern,"maxmemory-policy",0)) {
        char *s;

        switch(server.maxmemory_policy) {
        case REDIS_MAXMEMORY_VOLATILE_LRU: s = "volatile-lru"; break;
        case REDIS_MAXMEMORY_VOLATILE_TTL: s = "volatile-ttl"; break;
        case REDIS_MAXMEMORY_VOLATILE_RANDOM: s = "volatile-random"; break;
        case REDIS_MAXMEMORY_ALLKEYS_LRU: s = "allkeys-lru"; break;
        case REDIS_MAXMEMORY_ALLKEYS_RANDOM: s = "allkeys-random"; break;
        case REDIS_MAXMEMORY_NO_EVICTION: s = "noeviction"; break;
        default: s = "unknown"; break; /* too harmless to panic */
        }
        addReplyBulkCString(c,"maxmemory-policy");
        addReplyBulkCString(c,s);
        matches++;
    }
    if (stringmatch(pattern,"appendfsync",0)) {
        char *policy;

        switch(server.aof_fsync) {
        case AOF_FSYNC_NO: policy = "no"; break;
        case AOF_FSYNC_EVERYSEC: policy = "everysec"; break;
        case AOF_FSYNC_ALWAYS: policy = "always"; break;
        default: policy = "unknown"; break; /* too harmless to panic */
        }
        addReplyBulkCString(c,"appendfsync");
        addReplyBulkCString(c,policy);
        matches++;
    }
    if (stringmatch(pattern,"save",0)) {
        sds buf = sdsempty();
        int j;

        for (j = 0; j < server.saveparamslen; j++) {
            buf = sdscatprintf(buf,"%jd %d",
                    (intmax_t)server.saveparams[j].seconds,
                    server.saveparams[j].changes);
            if (j != server.saveparamslen-1)
                buf = sdscatlen(buf," ",1);
        }
        addReplyBulkCString(c,"save");
        addReplyBulkCString(c,buf);
        sdsfree(buf);
        matches++;
    }
    if (stringmatch(pattern,"loglevel",0)) {
        char *s;

        switch(server.verbosity) {
        case REDIS_WARNING: s = "warning"; break;
        case REDIS_VERBOSE: s = "verbose"; break;
        case REDIS_NOTICE: s = "notice"; break;
        case REDIS_DEBUG: s = "debug"; break;
        default: s = "unknown"; break; /* too harmless to panic */
        }
        addReplyBulkCString(c,"loglevel");
        addReplyBulkCString(c,s);
        matches++;
    }
    if (stringmatch(pattern,"client-output-buffer-limit",0)) {
        sds buf = sdsempty();
        int j;

        for (j = 0; j < REDIS_CLIENT_LIMIT_NUM_CLASSES; j++) {
            buf = sdscatprintf(buf,"%s %llu %llu %ld",
                    getClientLimitClassName(j),
                    server.client_obuf_limits[j].hard_limit_bytes,
                    server.client_obuf_limits[j].soft_limit_bytes,
                    (long) server.client_obuf_limits[j].soft_limit_seconds);
            if (j != REDIS_CLIENT_LIMIT_NUM_CLASSES-1)
                buf = sdscatlen(buf," ",1);
        }
        addReplyBulkCString(c,"client-output-buffer-limit");
        addReplyBulkCString(c,buf);
        sdsfree(buf);
        matches++;
    }
    if (stringmatch(pattern,"unixsocketperm",0)) {
        char buf[32];
        snprintf(buf,sizeof(buf),"%o",server.unixsocketperm);
        addReplyBulkCString(c,"unixsocketperm");
        addReplyBulkCString(c,buf);
        matches++;
    }
    if (stringmatch(pattern,"slaveof",0)) {
        char buf[256];

        addReplyBulkCString(c,"slaveof");
        if (server.masterhost)
            snprintf(buf,sizeof(buf),"%s %d",
                server.masterhost, server.masterport);
        else
            buf[0] = '\0';
        addReplyBulkCString(c,buf);
        matches++;
    }
    if (stringmatch(pattern,"notify-keyspace-events",0)) {
        robj *flagsobj = createObject(REDIS_STRING,
            keyspaceEventsFlagsToString(server.notify_keyspace_events));

        addReplyBulkCString(c,"notify-keyspace-events");
        addReplyBulk(c,flagsobj);
        decrRefCount(flagsobj);
        matches++;
    }
    if (stringmatch(pattern,"bind",0)) {
        sds aux = sdsjoin(server.bindaddr,server.bindaddr_count," ");

        addReplyBulkCString(c,"bind");
        addReplyBulkCString(c,aux);
        sdsfree(aux);
        matches++;
    }
    setDeferredMultiBulkLength(c,replylen,matches*2);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x4a8, %rsp            # imm = 0x4A8
movq %rdi, %r15
movq 0x38(%rdi), %rax
movq 0x10(%rax), %r14
callq 0x2dc0a
movq %rax, 0x98(%rsp)
movl (%r14), %eax
shrl $0x4, %eax
testb $0x7, %al
jne 0x47c8b
movq 0x8(%r14), %r12
leaq 0x53424(%rip), %rsi     # 0x99cd9
xorl %ebx, %ebx
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x468fd
leaq 0x5340d(%rip), %rsi     # 0x99cd9
movq %r15, %rdi
callq 0x2ddc1
leaq 0x836cd(%rip), %rax     # 0xc9fa8
movq 0x588(%rax), %rax
testq %rax, %rax
leaq 0x509f5(%rip), %rsi     # 0x972e1
cmovneq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
movl $0x1, %ebx
leaq 0x53392(%rip), %rsi     # 0x99c96
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46944
leaq 0x5337d(%rip), %rsi     # 0x99c96
movq %r15, %rdi
callq 0x2ddc1
leaq 0x83680(%rip), %rax     # 0xc9fa8
movq 0x40(%rax), %rax
testq %rax, %rax
leaq 0x509ab(%rip), %rsi     # 0x972e1
cmovneq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x531ae(%rip), %rsi     # 0x99af9
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4698e
leaq 0x53199(%rip), %rsi     # 0x99af9
movq %r15, %rdi
callq 0x2ddc1
leaq 0x83639(%rip), %rax     # 0xc9fa8
movq 0x648(%rax), %rax
testq %rax, %rax
leaq 0x50961(%rip), %rsi     # 0x972e1
cmovneq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52df3(%rip), %rsi     # 0x99788
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x469d8
leaq 0x52dde(%rip), %rsi     # 0x99788
movq %r15, %rdi
callq 0x2ddc1
leaq 0x835ef(%rip), %rax     # 0xc9fa8
movq 0x118(%rax), %rax
testq %rax, %rax
leaq 0x50917(%rip), %rsi     # 0x972e1
cmovneq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52e68(%rip), %rsi     # 0x99847
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46a22
leaq 0x52e53(%rip), %rsi     # 0x99847
movq %r15, %rdi
callq 0x2ddc1
leaq 0x835a5(%rip), %rax     # 0xc9fa8
movq 0x5d0(%rax), %rax
testq %rax, %rax
leaq 0x508cd(%rip), %rsi     # 0x972e1
cmovneq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x532a8(%rip), %rsi     # 0x99cd1
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46a69
leaq 0x53293(%rip), %rsi     # 0x99cd1
movq %r15, %rdi
callq 0x2ddc1
leaq 0x8355b(%rip), %rax     # 0xc9fa8
movq 0x48(%rax), %rax
testq %rax, %rax
leaq 0x50886(%rip), %rsi     # 0x972e1
cmovneq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52ed2(%rip), %rsi     # 0x99942
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46aba
leaq 0x83523(%rip), %rax     # 0xc9fa8
movq 0x720(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52e9d(%rip), %rsi     # 0x99942
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52f05(%rip), %rsi     # 0x999c6
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46b0b
leaq 0x834d2(%rip), %rax     # 0xc9fa8
movslq 0x72c(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52ed0(%rip), %rsi     # 0x999c6
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x53339(%rip), %rsi     # 0x99e4b
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46b5c
leaq 0x83481(%rip), %rax     # 0xc9fa8
movslq 0x468(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x53304(%rip), %rsi     # 0x99e4b
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52ba5(%rip), %rsi     # 0x99708
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46bad
leaq 0x83430(%rip), %rax     # 0xc9fa8
movslq 0x46c(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52b70(%rip), %rsi     # 0x99708
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x5305d(%rip), %rsi     # 0x99c11
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46bfe
leaq 0x833df(%rip), %rax     # 0xc9fa8
movslq 0x4e4(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x53028(%rip), %rsi     # 0x99c11
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x53059(%rip), %rsi     # 0x99c5e
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46c4f
leaq 0x8338e(%rip), %rax     # 0xc9fa8
movq 0x4e8(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x53024(%rip), %rsi     # 0x99c5e
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x530ba(%rip), %rsi     # 0x99d10
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46ca0
leaq 0x8333d(%rip), %rax     # 0xc9fa8
movq 0x758(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x53085(%rip), %rsi     # 0x99d10
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x53082(%rip), %rsi     # 0x99d29
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46cf1
leaq 0x832ec(%rip), %rax     # 0xc9fa8
movq 0x760(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x5304d(%rip), %rsi     # 0x99d29
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x53048(%rip), %rsi     # 0x99d40
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46d42
leaq 0x8329b(%rip), %rax     # 0xc9fa8
movq 0x768(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x53013(%rip), %rsi     # 0x99d40
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x53010(%rip), %rsi     # 0x99d59
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46d93
leaq 0x8324a(%rip), %rax     # 0xc9fa8
movq 0x770(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52fdb(%rip), %rsi     # 0x99d59
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52fd6(%rip), %rsi     # 0x99d70
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46de4
leaq 0x831f9(%rip), %rax     # 0xc9fa8
movq 0x778(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52fa1(%rip), %rsi     # 0x99d70
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52f9c(%rip), %rsi     # 0x99d87
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46e35
leaq 0x831a8(%rip), %rax     # 0xc9fa8
movq 0x780(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52f67(%rip), %rsi     # 0x99d87
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52f64(%rip), %rsi     # 0x99da0
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46e86
leaq 0x83157(%rip), %rax     # 0xc9fa8
movq 0x788(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52f2f(%rip), %rsi     # 0x99da0
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52f2a(%rip), %rsi     # 0x99db7
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46ed7
leaq 0x83106(%rip), %rax     # 0xc9fa8
movq 0x790(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52ef5(%rip), %rsi     # 0x99db7
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52fe4(%rip), %rsi     # 0x99ec2
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46f28
leaq 0x830b5(%rip), %rax     # 0xc9fa8
movq 0x800(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52faf(%rip), %rsi     # 0x99ec2
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52fa2(%rip), %rsi     # 0x99ed1
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46f79
leaq 0x83064(%rip), %rax     # 0xc9fa8
movq 0x3b8(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52f6d(%rip), %rsi     # 0x99ed1
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52f69(%rip), %rsi     # 0x99ee9
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x46fca
leaq 0x83013(%rip), %rax     # 0xc9fa8
movq 0x3c0(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52f34(%rip), %rsi     # 0x99ee9
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52769(%rip), %rsi     # 0x9973a
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4701b
leaq 0x82fc2(%rip), %rax     # 0xc9fa8
movslq 0x88(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52734(%rip), %rsi     # 0x9973a
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x5271d(%rip), %rsi     # 0x9973f
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4706c
leaq 0x82f71(%rip), %rax     # 0xc9fa8
movslq 0x8c(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x526e8(%rip), %rsi     # 0x9973f
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52898(%rip), %rsi     # 0x9990b
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x470bd
leaq 0x82f20(%rip), %rax     # 0xc9fa8
movslq 0x480(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52863(%rip), %rsi     # 0x9990b
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x5293b(%rip), %rsi     # 0x999ff
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4710e
leaq 0x82ecf(%rip), %rax     # 0xc9fa8
movslq 0x5f8(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52906(%rip), %rsi     # 0x999ff
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x5292d(%rip), %rsi     # 0x99a42
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4715f
leaq 0x82e7e(%rip), %rax     # 0xc9fa8
movslq 0x65c(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x528f8(%rip), %rsi     # 0x99a42
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52924(%rip), %rsi     # 0x99a8a
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x471b0
leaq 0x82e2d(%rip), %rax     # 0xc9fa8
movq 0x608(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x528ef(%rip), %rsi     # 0x99a8a
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x5290d(%rip), %rsi     # 0x99ac4
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47201
leaq 0x82ddc(%rip), %rax     # 0xc9fa8
movq 0x628(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x528d8(%rip), %rsi     # 0x99ac4
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52715(%rip), %rsi     # 0x9991d
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47252
leaq 0x82d8b(%rip), %rax     # 0xc9fa8
movslq 0x71c(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x526e0(%rip), %rsi     # 0x9991d
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x530f8(%rip), %rsi     # 0x9a351
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x472a3
leaq 0x82d3a(%rip), %rax     # 0xc9fa8
movslq 0x838(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x530c3(%rip), %rsi     # 0x9a351
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52cda(%rip), %rsi     # 0x99f84
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x472f4
leaq 0x82ce9(%rip), %rax     # 0xc9fa8
movslq 0x6bc(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52ca5(%rip), %rsi     # 0x99f84
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52c98(%rip), %rsi     # 0x99f93
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47345
leaq 0x82c98(%rip), %rax     # 0xc9fa8
movslq 0x638(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52c63(%rip), %rsi     # 0x99f93
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52c82(%rip), %rsi     # 0x99fce
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47396
leaq 0x82c47(%rip), %rax     # 0xc9fa8
movslq 0x63c(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52c4d(%rip), %rsi     # 0x99fce
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x527c3(%rip), %rsi     # 0x99b60
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x473e4
leaq 0x82bf6(%rip), %rax     # 0xc9fa8
movslq 0x8(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52791(%rip), %rsi     # 0x99b60
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52a53(%rip), %rsi     # 0x99e3e
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47435
leaq 0x82ba8(%rip), %rax     # 0xc9fa8
movq 0x7c0(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52a1e(%rip), %rsi     # 0x99e3e
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52a41(%rip), %rsi     # 0x99e7d
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47486
leaq 0x82b57(%rip), %rax     # 0xc9fa8
movslq 0x7d8(%rax), %rdx
leaq 0x10(%rsp), %r14
movl $0x80, %esi
movq %r14, %rdi
callq 0x2fe12
leaq 0x52a0c(%rip), %rsi     # 0x99e7d
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52720(%rip), %rsi     # 0x99bad
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x474d4
leaq 0x5270b(%rip), %rsi     # 0x99bad
movq %r15, %rdi
callq 0x2ddc1
leaq 0x82af7(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x4e0(%rax)
leaq 0x51113(%rip), %rax     # 0x985d2
leaq 0x521fb(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52629(%rip), %rsi     # 0x99b04
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47522
leaq 0x52614(%rip), %rsi     # 0x99b04
movq %r15, %rdi
callq 0x2ddc1
leaq 0x82aa9(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x6a8(%rax)
leaq 0x510c5(%rip), %rax     # 0x985d2
leaq 0x521ad(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x525f2(%rip), %rsi     # 0x99b1b
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47570
leaq 0x525dd(%rip), %rsi     # 0x99b1b
movq %r15, %rdi
callq 0x2ddc1
leaq 0x82a5b(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x6ac(%rax)
leaq 0x51077(%rip), %rax     # 0x985d2
leaq 0x5215f(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x529f1(%rip), %rsi     # 0x99f68
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x475be
leaq 0x529dc(%rip), %rsi     # 0x99f68
movq %r15, %rdi
callq 0x2ddc1
leaq 0x82a0d(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x5bc(%rax)
leaq 0x51029(%rip), %rax     # 0x985d2
leaq 0x52111(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52591(%rip), %rsi     # 0x99b56
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4760c
leaq 0x5257c(%rip), %rsi     # 0x99b56
movq %r15, %rdi
callq 0x2ddc1
leaq 0x829bf(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x484(%rax)
leaq 0x50fdb(%rip), %rax     # 0x985d2
leaq 0x520c3(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52518(%rip), %rsi     # 0x99b2b
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4765a
leaq 0x52503(%rip), %rsi     # 0x99b2b
movq %r15, %rdi
callq 0x2ddc1
leaq 0x82971(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x590(%rax)
leaq 0x50f8d(%rip), %rax     # 0x985d2
leaq 0x52075(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x524d9(%rip), %rsi     # 0x99b3a
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x476a8
leaq 0x524c4(%rip), %rsi     # 0x99b3a
movq %r15, %rdi
callq 0x2ddc1
leaq 0x82923(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x594(%rax)
leaq 0x50f3f(%rip), %rax     # 0x985d2
leaq 0x52027(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52497(%rip), %rsi     # 0x99b46
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x476f3
leaq 0x52482(%rip), %rsi     # 0x99b46
movq %r15, %rdi
callq 0x2ddc1
leaq 0x828d5(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x38(%rax)
leaq 0x50ef4(%rip), %rax     # 0x985d2
leaq 0x51fdc(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52377(%rip), %rsi     # 0x99a71
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47741
leaq 0x52362(%rip), %rsi     # 0x99a71
movq %r15, %rdi
callq 0x2ddc1
leaq 0x8288a(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x6b8(%rax)
leaq 0x50ea6(%rip), %rax     # 0x985d2
leaq 0x51f8e(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52530(%rip), %rsi     # 0x99c78
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4778f
leaq 0x5251b(%rip), %rsi     # 0x99c78
movq %r15, %rdi
callq 0x2ddc1
leaq 0x8283c(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x550(%rax)
leaq 0x50e58(%rip), %rax     # 0x985d2
leaq 0x51f40(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x523cd(%rip), %rsi     # 0x99b63
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x477dd
leaq 0x523b8(%rip), %rsi     # 0x99b63
movq %r15, %rdi
callq 0x2ddc1
leaq 0x827ee(%rip), %rax     # 0xc9fa8
cmpl $0x0, 0x4d0(%rax)
leaq 0x50e0a(%rip), %rax     # 0x985d2
leaq 0x51ef2(%rip), %rsi     # 0x996c1
cmoveq %rax, %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x51ff6(%rip), %rsi     # 0x997da
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47832
leaq 0xa0(%rsp), %rdi
movl $0x400, %esi            # imm = 0x400
callq 0x1f8a0
testq %rax, %rax
jne 0x47811
movb $0x0, 0xa0(%rsp)
leaq 0x51fc2(%rip), %rsi     # 0x997da
movq %r15, %rdi
callq 0x2ddc1
leaq 0xa0(%rsp), %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52113(%rip), %rsi     # 0x9994c
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x4788d
leaq 0x8275a(%rip), %rax     # 0xc9fa8
movl 0x728(%rax), %eax
cmpq $0x5, %rax
ja 0x4786a
leaq 0x52d1b(%rip), %rcx     # 0x9a57c
movslq (%rcx,%rax,4), %r14
addq %rcx, %r14
jmp 0x47871
leaq 0x4fc1d(%rip), %r14     # 0x9748e
leaq 0x520d4(%rip), %rsi     # 0x9994c
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x52333(%rip), %rsi     # 0x99bc7
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x478e8
leaq 0x826ff(%rip), %rax     # 0xc9fa8
movl 0x4d4(%rax), %eax
cmpq $0x2, %rax
ja 0x478c5
leaq 0x52cd8(%rip), %rcx     # 0x9a594
movslq (%rcx,%rax,4), %r14
addq %rcx, %r14
jmp 0x478cc
leaq 0x4fbc2(%rip), %r14     # 0x9748e
leaq 0x522f4(%rip), %rsi     # 0x99bc7
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x502ce(%rip), %rsi     # 0x97bbd
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
movq %r12, 0x8(%rsp)
je 0x479c9
movq %rbx, (%rsp)
movq %r15, 0x90(%rsp)
callq 0x281b2
movq %rax, %r13
leaq 0x82687(%rip), %rbx     # 0xc9fa8
cmpl $0x0, 0x580(%rbx)
jle 0x47994
movl $0x8, %r12d
leaq 0x52a75(%rip), %rbp     # 0x9a3ac
leaq 0x52a89(%rip), %r14     # 0x9a3c7
xorl %r15d, %r15d
movq 0x578(%rbx), %rax
movq -0x8(%rax,%r12), %rdx
movl (%rax,%r12), %ecx
movq %r13, %rdi
movq %rbp, %rsi
xorl %eax, %eax
callq 0x28760
movq %rax, %r13
movl 0x580(%rbx), %eax
decl %eax
cmpq %rax, %r15
je 0x47981
movl $0x1, %edx
movq %r13, %rdi
movq %r14, %rsi
callq 0x28380
movq %rax, %r13
incq %r15
movslq 0x580(%rbx), %rax
addq $0x10, %r12
cmpq %rax, %r15
jl 0x47941
leaq 0x50222(%rip), %rsi     # 0x97bbd
movq 0x90(%rsp), %r15
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r13, %rsi
callq 0x2ddc1
movq %r13, %rdi
callq 0x28204
movq (%rsp), %rbx
incl %ebx
movq 0x8(%rsp), %r12
leaq 0x51e26(%rip), %rsi     # 0x997f6
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47a24
leaq 0x825c3(%rip), %rax     # 0xc9fa8
movl 0x464(%rax), %eax
cmpq $0x3, %rax
ja 0x47a01
leaq 0x52ba8(%rip), %rcx     # 0x9a5a0
movslq (%rcx,%rax,4), %r14
addq %rcx, %r14
jmp 0x47a08
leaq 0x4fa86(%rip), %r14     # 0x9748e
leaq 0x51de7(%rip), %rsi     # 0x997f6
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x524ce(%rip), %rsi     # 0x99ef9
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47adf
movq %rbx, (%rsp)
movl $0x498, %ebx            # imm = 0x498
addq 0x7e56b(%rip), %rbx     # 0xc5fb8
callq 0x281b2
movq %rax, %r13
leaq 0x52957(%rip), %rbp     # 0x9a3b3
leaq 0x52964(%rip), %r14     # 0x9a3c7
xorl %r12d, %r12d
movl %r12d, %edi
callq 0x2f7f6
movq -0x10(%rbx), %rcx
movq -0x8(%rbx), %r8
movq (%rbx), %r9
movq %r13, %rdi
movq %rbp, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0x28760
movq %rax, %r13
cmpq $0x2, %r12
je 0x47aa5
movl $0x1, %edx
movq %r13, %rdi
movq %r14, %rsi
callq 0x28380
movq %rax, %r13
incq %r12
addq $0x18, %rbx
cmpq $0x3, %r12
jne 0x47a66
leaq 0x52440(%rip), %rsi     # 0x99ef9
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r13, %rsi
callq 0x2ddc1
movq %r13, %rdi
callq 0x28204
movq (%rsp), %rbx
incl %ebx
movq 0x8(%rsp), %r12
leaq 0x51cad(%rip), %rsi     # 0x99793
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47b3b
leaq 0x824ad(%rip), %rax     # 0xc9fa8
movl 0x120(%rax), %ecx
leaq 0x52906(%rip), %rdx     # 0x9a40e
leaq 0xa0(%rsp), %r14
movl $0x20, %esi
movq %r14, %rdi
xorl %eax, %eax
callq 0x1f120
leaq 0x51c6d(%rip), %rsi     # 0x99793
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
incl %ebx
leaq 0x4ca49(%rip), %rsi     # 0x9458b
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47bb0
leaq 0x4ca34(%rip), %rsi     # 0x9458b
movq %r15, %rdi
callq 0x2ddc1
leaq 0x82442(%rip), %rax     # 0xc9fa8
movq 0x650(%rax), %rcx
testq %rcx, %rcx
je 0x47b96
movl 0x658(%rax), %r8d
leaq 0x57b2a(%rip), %rdx     # 0x9f6aa
leaq 0xa0(%rsp), %rdi
movl $0x100, %esi            # imm = 0x100
xorl %eax, %eax
callq 0x1f120
jmp 0x47b9e
movb $0x0, 0xa0(%rsp)
leaq 0xa0(%rsp), %rsi
movq %r15, %rdi
callq 0x2ddc1
incl %ebx
leaq 0x52450(%rip), %rsi     # 0x9a007
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47c08
leaq 0x823dc(%rip), %rax     # 0xc9fa8
movl 0x7b8(%rax), %edi
callq 0x60797
xorl %edi, %edi
movq %rax, %rsi
callq 0x302c4
movq %rax, %r14
leaq 0x5241c(%rip), %rsi     # 0x9a007
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2df74
movq %r14, %rdi
callq 0x30834
incl %ebx
leaq 0x51b52(%rip), %rsi     # 0x99761
movq %r12, %rdi
xorl %edx, %edx
callq 0x2fc0c
testl %eax, %eax
je 0x47c64
leaq 0x82384(%rip), %rdi     # 0xc9fa8
movl 0x110(%rdi), %esi
addq $0x90, %rdi
leaq 0x5278f(%rip), %rdx     # 0x9a3c7
callq 0x2968f
movq %rax, %r14
leaq 0x51b1a(%rip), %rsi     # 0x99761
movq %r15, %rdi
callq 0x2ddc1
movq %r15, %rdi
movq %r14, %rsi
callq 0x2ddc1
movq %r14, %rdi
callq 0x28204
incl %ebx
addl %ebx, %ebx
movq %r15, %rdi
movq 0x98(%rsp), %rsi
movq %rbx, %rdx
callq 0x2dc46
addq $0x4a8, %rsp            # imm = 0x4A8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x51326(%rip), %rdx     # 0x98fb8
leaq 0x52155(%rip), %rcx     # 0x99dee
movq %r15, %rdi
movq %r14, %rsi
movl $0x3ce, %r8d            # imm = 0x3CE
callq 0x4d872
movl $0x1, %edi
callq 0x1f3b0