// File: /workspace/github_c_makefile_star2_O2/nilyang[P]redis-tdd-annotation/src/redis-cli.c
// Function: main
int main(int argc, char **argv) {
    int firstarg;

    config.hostip = sdsnew("127.0.0.1");
    config.hostport = 6379;
    config.hostsocket = NULL;
    config.repeat = 1;
    config.interval = 0;
    config.dbnum = 0;
    config.interactive = 0;
    config.shutdown = 0;
    config.monitor_mode = 0;
    config.pubsub_mode = 0;
    config.latency_mode = 0;
    config.latency_history = 0;
    config.cluster_mode = 0;
    config.slave_mode = 0;
    config.getrdb_mode = 0;
    config.stat_mode = 0;
    config.scan_mode = 0;
    config.intrinsic_latency_mode = 0;
    config.pattern = NULL;
    config.rdb_filename = NULL;
    config.pipe_mode = 0;
    config.pipe_timeout = REDIS_CLI_DEFAULT_PIPE_TIMEOUT;
    config.bigkeys = 0;
    config.stdinarg = 0;
    config.auth = NULL;
    config.eval = NULL;
    if (!isatty(fileno(stdout)) && (getenv("FAKETTY") == NULL))
        config.output = OUTPUT_RAW;
    else
        config.output = OUTPUT_STANDARD;
    config.mb_delim = sdsnew("\n");
    cliInitHelp();

    firstarg = parseOptions(argc,argv);
    argc -= firstarg;
    argv += firstarg;

    /* Latency mode */
    if (config.latency_mode) {
        if (cliConnect(0) == REDIS_ERR) exit(1);
        latencyMode();
    }

    /* Slave mode */
    if (config.slave_mode) {
        if (cliConnect(0) == REDIS_ERR) exit(1);
        slaveMode();
    }

    /* Get RDB mode. */
    if (config.getrdb_mode) {
        if (cliConnect(0) == REDIS_ERR) exit(1);
        getRDB();
    }

    /* Pipe mode */
    if (config.pipe_mode) {
        if (cliConnect(0) == REDIS_ERR) exit(1);
        pipeMode();
    }

    /* Find big keys */
    if (config.bigkeys) {
        if (cliConnect(0) == REDIS_ERR) exit(1);
        findBigKeys();
    }

    /* Stat mode */
    if (config.stat_mode) {
        if (cliConnect(0) == REDIS_ERR) exit(1);
        if (config.interval == 0) config.interval = 1000000;
        statMode();
    }

    /* Scan mode */
    if (config.scan_mode) {
        if (cliConnect(0) == REDIS_ERR) exit(1);
        scanMode();
    }

    /* Intrinsic latency mode */
    if (config.intrinsic_latency_mode) intrinsicLatencyMode();

    /* Start interactive mode when no command is provided */
    if (argc == 0 && !config.eval) {
        /* Note that in repl mode we don't abort on connection error.
         * A new attempt will be performed for every command send. */
        cliConnect(0);
        repl();
    }

    /* Otherwise, we have some arguments to execute */
    if (cliConnect(0) != REDIS_OK) exit(1);
    if (config.eval) {
        return evalMode(argc,argv);
    } else {
        return noninteractive(argc,convertToSds(argc,argv));
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x81c8, %rsp           # imm = 0x81C8
movq %rsi, 0x8(%rsp)
movq %rdi, 0x10(%rsp)
leaq 0x1f18b(%rip), %rdi     # 0x2ec91
callq 0xe4c1
movq %rax, 0x32226(%rip)     # 0x41d38
movl $0x18eb, 0x32224(%rip)  # imm = 0x18EB
andq $0x0, 0x32224(%rip)     # 0x41d48
movq $0x1, 0x32221(%rip) # 0x41d50
andq $0x0, 0x3224d(%rip)     # 0x41d84
xorpd %xmm0, %xmm0
andq $0x0, 0x32235(%rip)     # 0x41d78
movupd %xmm0, 0x3220d(%rip)    # 0x41d58
movupd %xmm0, 0x32215(%rip)    # 0x41d68
movupd %xmm0, 0x32235(%rip)    # 0x41d90
movupd %xmm0, 0x32245(%rip)    # 0x41da8
movl $0x1e, 0x3221f(%rip)    # 0x41d8c
andq $0x0, 0x322e3(%rip)     # 0x41e58
movupd %xmm0, 0x3223b(%rip)    # 0x41db8
movq 0x3041c(%rip), %rax     # 0x3ffa0
movq (%rax), %rdi
callq 0xd3b0
movl %eax, %edi
callq 0xd0e0
testl %eax, %eax
jne 0xfbac
leaq 0x1f0fd(%rip), %rdi     # 0x2ec9b
callq 0xd050
testq %rax, %rax
je 0x1023c
xorl %eax, %eax
pushq $0x1
popq %r14
movl %eax, 0x32210(%rip)     # 0x41dc8
leaq 0x20107(%rip), %rdi     # 0x2fcc6
callq 0xe4c1
movq %rax, 0x32205(%rip)     # 0x41dd0
movb $0x1, 0x3228e(%rip)     # 0x41e60
movl $0x1580, %edi           # imm = 0x1580
callq 0xd3e0
movq %rax, 0x32285(%rip)     # 0x41e68
pushq $0x8
popq %r12
leaq 0x2eb72(%rip), %rbx     # 0x3e760
leaq 0x1f0ae(%rip), %r13     # 0x2eca3
xorl %r15d, %r15d
cmpq $0x60, %r15
je 0xfc83
movl $0x1, 0x1c4(%rsp)
movq %r12, %rdi
callq 0xd3e0
movq %rax, %rbp
movq %rax, 0x1c8(%rsp)
callq 0xe4b3
movq (%r15,%rbx), %rdx
movq %rax, %rdi
movq %r13, %rsi
xorl %eax, %eax
callq 0xe931
movq %rax, 0x1d0(%rsp)
movl $0x2, 0x1c0(%rsp)
andq $0x0, 0x1d8(%rsp)
movq %rax, (%rbp)
movq 0x3220b(%rip), %rax     # 0x41e68
movups 0x1c0(%rsp), %xmm0
movups %xmm0, (%rax,%r15,4)
movupd 0x1d0(%rsp), %xmm0
movupd %xmm0, 0x10(%rax,%r15,4)
addq $0x8, %r15
jmp 0xfbf8
movl $0x180, %ebx            # imm = 0x180
leaq 0x30701(%rip), %r15     # 0x40390
leaq 0x1c4(%rsp), %r12
cmpq $0x1580, %rbx           # imm = 0x1580
je 0xfd02
movq (%r15), %rdi
movq %r12, %rsi
callq 0xf1dc
movq %rax, 0x1c8(%rsp)
movq (%r15), %rdi
callq 0xe4c1
movq %rax, 0x1d0(%rsp)
movl $0x1, 0x1c0(%rsp)
movq %r15, 0x1d8(%rsp)
movq 0x3218b(%rip), %rax     # 0x41e68
movups 0x1c0(%rsp), %xmm0
movups %xmm0, (%rax,%rbx)
movupd 0x1d0(%rsp), %xmm0
movupd %xmm0, 0x10(%rax,%rbx)
addq $0x20, %rbx
addq $0x28, %r15
jmp 0xfc97
movq 0x10(%rsp), %rax
leal -0x1(%rax), %r13d
movq 0x10(%rsp), %r15
movslq %r14d, %r12
subl %r14d, %r15d
jle 0x10273
movq 0x8(%rsp), %rax
movq (%rax,%r12,8), %rbp
movzbl (%rbp), %ebx
movl %ebx, %eax
addl $-0x2d, %eax
jne 0xfd3d
movzbl 0x1(%rbp), %eax
addl $-0x68, %eax
jne 0xfd3d
movzbl 0x2(%rbp), %eax
testl %eax, %eax
jne 0xfd73
cmpl %r13d, %r14d
je 0xfd73
movq 0x31feb(%rip), %rdi     # 0x41d38
callq 0xe4eb
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
callq 0xe4c1
movq %rax, 0x31fca(%rip)     # 0x41d38
jmp 0x10234
testl %eax, %eax
jne 0xfd80
cmpl %r13d, %r14d
je 0x10a9e
movq %rbp, %rdi
leaq 0x1ef5a(%rip), %rsi     # 0x2ece4
callq 0xd330
testl %eax, %eax
je 0x10a9e
cmpb $0x2d, %bl
jne 0xff11
movzbl 0x1(%rbp), %eax
leal -0x6e(%rax), %ecx
cmpl $0xa, %ecx
ja 0xfdef
leaq 0x1c4fd(%rip), %rdx     # 0x2c2b0
movslq (%rdx,%rcx,4), %rax
addq %rdx, %rax
jmpq *%rax
cmpb $0x0, 0x2(%rbp)
jne 0xff11
cmpl %r13d, %r14d
je 0xff11
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
callq 0xd590
movl %eax, 0x31f76(%rip)     # 0x41d60
jmp 0x10234
cmpl $0x61, %eax
je 0xfeea
cmpl $0x69, %eax
jne 0xff11
cmpb $0x0, 0x2(%rbp)
jne 0xff11
cmpl %r13d, %r14d
je 0xff11
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
callq 0xd120
mulsd 0x1c43f(%rip), %xmm0    # 0x2c270
cvttsd2si %xmm0, %rax
movq %rax, 0x31f1b(%rip)     # 0x41d58
jmp 0x10234
cmpb $0x0, 0x2(%rbp)
jne 0xff11
cmpl %r13d, %r14d
je 0xff11
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
callq 0xd590
movl %eax, 0x31ed0(%rip)     # 0x41d40
jmp 0x10234
cmpb $0x0, 0x2(%rbp)
jne 0xff11
cmpl %r13d, %r14d
je 0xff11
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
xorl %esi, %esi
pushq $0xa
popq %rdx
callq 0xd340
movq %rax, 0x31ea7(%rip)     # 0x41d50
jmp 0x10234
cmpb $0x0, 0x2(%rbp)
jne 0xff11
cmpl %r13d, %r14d
je 0xff11
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rax
movq %rax, 0x31e78(%rip)     # 0x41d48
jmp 0x10234
cmpb $0x0, 0x2(%rbp)
jne 0xff11
movl $0x1, 0x31ed7(%rip)     # 0x41dbc
jmp 0x10234
cmpb $0x0, 0x2(%rbp)
jne 0xff11
cmpl %r13d, %r14d
je 0xff11
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rax
movq %rax, 0x31eb4(%rip)     # 0x41dc0
jmp 0x10234
movq %rbp, %rdi
leaq 0x1edd0(%rip), %rsi     # 0x2eceb
callq 0xd330
testl %eax, %eax
je 0x100fd
movq %rbp, %rdi
leaq 0x1edbf(%rip), %rsi     # 0x2ecf1
callq 0xd330
testl %eax, %eax
je 0x1010c
movq %rbp, %rdi
leaq 0x1edae(%rip), %rsi     # 0x2ecf7
callq 0xd330
testl %eax, %eax
je 0x1011b
movq %rbp, %rdi
leaq 0x1eda1(%rip), %rsi     # 0x2ed01
callq 0xd330
testl %eax, %eax
je 0x1012a
movq %rbp, %rdi
leaq 0x1ed9c(%rip), %rsi     # 0x2ed13
callq 0xd330
testl %eax, %eax
je 0x10140
movq %rbp, %rdi
leaq 0x1ed8d(%rip), %rsi     # 0x2ed1b
callq 0xd330
testl %eax, %eax
je 0x1014f
movq %rbp, %rdi
leaq 0x1ed7d(%rip), %rsi     # 0x2ed22
callq 0xd330
testl %eax, %eax
je 0x1015e
cmpl %r13d, %r14d
sete 0x20(%rsp)
movq %rbp, %rdi
leaq 0x1ed65(%rip), %rsi     # 0x2ed29
callq 0xd330
testl %eax, %eax
setne %al
orb 0x20(%rsp), %al
je 0x1016d
cmpl %r13d, %r14d
sete 0x20(%rsp)
movq %rbp, %rdi
leaq 0x1ed49(%rip), %rsi     # 0x2ed33
callq 0xd330
testl %eax, %eax
setne %al
orb 0x20(%rsp), %al
je 0x10189
cmpl %r13d, %r14d
sete 0x20(%rsp)
movq %rbp, %rdi
leaq 0x1ed37(%rip), %rsi     # 0x2ed47
callq 0xd330
testl %eax, %eax
setne %al
orb 0x20(%rsp), %al
je 0x101b3
movq %rbp, %rdi
leaq 0x1ed1f(%rip), %rsi     # 0x2ed4d
callq 0xd330
testl %eax, %eax
je 0x101d6
cmpl %r13d, %r14d
sete 0x20(%rsp)
movq %rbp, %rdi
leaq 0x1ed07(%rip), %rsi     # 0x2ed54
callq 0xd330
testl %eax, %eax
setne %al
orb 0x20(%rsp), %al
je 0x101e2
movq %rbp, %rdi
leaq 0x1ecf8(%rip), %rsi     # 0x2ed63
callq 0xd330
testl %eax, %eax
je 0x101ff
cmpl %r13d, %r14d
sete 0x20(%rsp)
movq %rbp, %rdi
leaq 0x1ece3(%rip), %rsi     # 0x2ed6d
callq 0xd330
testl %eax, %eax
setne %al
orb 0x20(%rsp), %al
je 0x1020b
cmpb $0x2d, %bl
jne 0x10253
movzbl 0x1(%rbp), %eax
cmpl $0x63, %eax
je 0x10224
cmpl $0x64, %eax
jne 0x10244
cmpb $0x0, 0x2(%rbp)
jne 0x10253
cmpl %r13d, %r14d
je 0x10253
movq 0x31cf9(%rip), %rdi     # 0x41dd0
callq 0xe4eb
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
callq 0xe4c1
movq %rax, 0x31cd8(%rip)     # 0x41dd0
jmp 0x10234
movl $0x1, 0x31cc1(%rip)     # 0x41dc8
jmp 0x10234
movl $0x2, 0x31cb2(%rip)     # 0x41dc8
jmp 0x10234
movl $0x1, 0x31c4f(%rip)     # 0x41d74
jmp 0x10234
movabsq $0x100000001, %rax      # imm = 0x100000001
movq %rax, 0x31c39(%rip)     # 0x41d74
jmp 0x10234
movl $0x1, 0x31c3a(%rip)     # 0x41d84
jmp 0x10234
movl $0x1, 0x31c3b(%rip)     # 0x41d94
jmp 0x10234
movl $0x1, 0x31c30(%rip)     # 0x41d98
jmp 0x10234
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rax
movq %rax, 0x31c24(%rip)     # 0x41da8
jmp 0x10234
movl $0x1, 0x31c09(%rip)     # 0x41d9c
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
callq 0xd590
movl %eax, 0x31bf2(%rip)     # 0x41da0
jmp 0x10234
movl $0x1, 0x31bd3(%rip)     # 0x41d90
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rax
movq %rax, 0x31bdc(%rip)     # 0x41db0
jmp 0x10234
movl $0x1, 0x31ba8(%rip)     # 0x41d88
jmp 0x10234
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rdi
callq 0xd590
movl %eax, 0x31b8f(%rip)     # 0x41d8c
jmp 0x10234
movl $0x1, 0x31baf(%rip)     # 0x41db8
jmp 0x10234
movslq %r14d, %rax
incl %r14d
movq 0x8(%rsp), %rcx
movq 0x8(%rcx,%rax,8), %rax
movq %rax, 0x31c36(%rip)     # 0x41e58
jmp 0x10234
cmpb $0x0, 0x2(%rbp)
jne 0x10253
movl $0x1, 0x31b48(%rip)     # 0x41d7c
incl %r14d
jmp 0xfd0b
pushq $0x1
popq %rax
jmp 0xfbae
cmpl $0x76, %eax
jne 0x10253
cmpb $0x0, 0x2(%rbp)
je 0x11bcc
leaq 0x1eb1a(%rip), %rsi     # 0x2ed74
movq %rbp, %rdi
callq 0xd330
testl %eax, %eax
je 0x11bcc
cmpb $0x2d, %bl
je 0x11d40
cmpl $0x0, 0x31afa(%rip)     # 0x41d74
jne 0x10acf
cmpl $0x0, 0x31afd(%rip)     # 0x41d84
je 0x1029e
xorl %edi, %edi
callq 0x11d6e
cmpl $-0x1, %eax
je 0x10a3a
callq 0x11ece
cmpl $0x0, 0x31aeb(%rip)     # 0x41d90
jne 0x1052e
cmpl $0x0, 0x31ad6(%rip)     # 0x41d88
jne 0x10599
cmpl $0x0, 0x31af9(%rip)     # 0x41db8
jne 0x10c48
cmpl $0x0, 0x31ac8(%rip)     # 0x41d94
jne 0x10d53
cmpl $0x0, 0x31abf(%rip)     # 0x41d98
jne 0x11054
cmpl $0x0, 0x31ab6(%rip)     # 0x41d9c
jne 0x11111
movq 0x31b65(%rip), %rbx     # 0x41e58
xorl %edi, %edi
callq 0x11d6e
cmpl %r14d, 0x10(%rsp)
jne 0x1030a
testq %rbx, %rbx
je 0x111b5
testl %eax, %eax
jne 0x10a3a
movq 0x8(%rsp), %rax
leaq (%rax,%r12,8), %rax
movq %rax, 0x8(%rsp)
cmpq $0x0, 0x31b30(%rip)     # 0x41e58
je 0x1045a
callq 0xe4b3
movq %rax, %r12
movq 0x31b1b(%rip), %rdi     # 0x41e58
leaq 0x1beff(%rip), %rsi     # 0x2c243
callq 0xd370
testq %rax, %rax
je 0x11234
movq %rax, %rbx
leaq 0x1c0(%rsp), %r14
pushq $0x1
popq %r13
movl $0x400, %edx            # imm = 0x400
movq %r14, %rdi
movq %r13, %rsi
movq %rbx, %rcx
callq 0xd0f0
testq %rax, %rax
je 0x1038c
movq %r12, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0xe661
movq %rax, %r12
jmp 0x10361
movq %rbx, %rdi
callq 0xd190
leal 0x3(%r15), %eax
movl %eax, 0x20(%rsp)
movslq %r15d, %rbx
leaq 0x18(,%rbx,8), %rdi
callq 0x12de5
movq %rax, %r14
leaq 0x1c641(%rip), %rdi     # 0x2c9f7
callq 0xe4c1
movq %rax, (%r14)
xorl %r13d, %r13d
testl %ebx, %ebx
cmovlel %r13d, %r15d
movq %r14, 0x10(%rsp)
movq %r12, 0x8(%r14)
xorl %ebx, %ebx
xorl %ebp, %ebp
cmpq %r13, %r15
je 0x10428
movq 0x8(%rsp), %rax
movq (%rax,%r13,8), %rdi
testl %ebx, %ebx
jne 0x103f1
cmpb $0x2c, (%rdi)
jne 0x103f1
cmpb $0x0, 0x1(%rdi)
je 0x10422
xorl %r14d, %r14d
xorl %r12d, %r12d
testl %ebx, %ebx
sete %r14b
setne %r12b
callq 0xe4c1
movl %r13d, %ecx
subl %ebx, %ecx
addl $0x3, %ecx
movq 0x10(%rsp), %rdx
movq %rax, (%rdx,%rcx,8)
addl %r14d, %ebp
incq %r13
movl %r12d, %ebx
jmp 0x103d4
pushq $0x1
popq %r12
jmp 0x1041a
callq 0xe4b3
leaq 0x1f3e9(%rip), %rsi     # 0x2f81d
movq %rax, %rdi
movl %ebp, %edx
xorl %eax, %eax
callq 0xe931
movq 0x10(%rsp), %rsi
movq %rax, 0x10(%rsi)
movl 0x20(%rsp), %edi
subl %ebx, %edi
movl 0x318fb(%rip), %edx     # 0x41d50
jmp 0x10517
movslq %r15d, %r13
leaq (,%r13,8), %rdi
callq 0x12de5
movq %rax, %rbx
xorl %r14d, %r14d
testl %r15d, %r15d
movl $0x0, %r12d
cmovgl %r15d, %r12d
cmpq %r14, %r12
je 0x10499
movq 0x8(%rsp), %rax
movq (%rax,%r14,8), %rdi
callq 0xe4c1
movq %rax, (%rbx,%r14,8)
incq %r14
jmp 0x1047d
cmpl $0x0, 0x3191c(%rip)     # 0x41dbc
je 0x1050b
incl %r15d
leaq 0x8(,%r13,8), %rsi
movq %rbx, %rdi
callq 0x12e8f
movq %rax, %rbx
callq 0xe4b3
movq %rax, %r12
movq 0x2fae1(%rip), %rbp     # 0x3ffa8
leaq 0x1c0(%rsp), %r14
movq (%rbp), %rdi
callq 0xd3b0
movl $0x400, %edx            # imm = 0x400
movl %eax, %edi
movq %r14, %rsi
callq 0xd2b0
testl %eax, %eax
je 0x10507
cmpl $-0x1, %eax
je 0x10abe
movslq %eax, %rdx
movq %r12, %rdi
movq %r14, %rsi
callq 0xe661
movq %rax, %r12
jmp 0x104cf
movq %r12, (%rbx,%r13,8)
movl 0x3183f(%rip), %edx     # 0x41d50
movl %r15d, %edi
movq %rbx, %rsi
callq 0x12938
addq $0x81c8, %rsp           # imm = 0x81C8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorl %edi, %edi
callq 0x11d6e
cmpl $-0x1, %eax
je 0x10a3a
movq 0x3192b(%rip), %rax     # 0x41e70
movl 0x84(%rax), %ebx
movl %ebx, %edi
callq 0xf910
movq %rax, %r14
movq 0x2fa94(%rip), %r15     # 0x3fff0
movq (%r15), %rdi
movq 0x3184a(%rip), %rcx     # 0x41db0
leaq 0x1f468(%rip), %rsi     # 0x2f9d5
movq %rax, %rdx
xorl %eax, %eax
callq 0xd350
movq 0x31832(%rip), %rdi     # 0x41db0
cmpb $0x2d, (%rdi)
jne 0x10933
cmpb $0x0, 0x1(%rdi)
jne 0x10933
pushq $0x1
popq %rbp
jmp 0x1097b
xorl %edi, %edi
callq 0x11d6e
cmpl $-0x1, %eax
je 0x10a3a
movq 0x318c0(%rip), %rax     # 0x41e70
movl 0x84(%rax), %ebx
callq 0x13af6
movq %rax, 0x8(%rsp)
xorl %edi, %edi
callq 0xd3a0
movq %rax, 0x10(%rsp)
xorl %edi, %edi
callq 0xd3a0
movl %eax, %edi
callq 0xd2c0
leaq 0xc0(%rsp), %rdi
movl %ebx, %esi
callq 0xd7ec
cmpl $-0x1, %eax
je 0x11216
xorl %r14d, %r14d
xorl %r13d, %r13d
xorl %r12d, %r12d
xorl %ebp, %ebp
xorl %r15d, %r15d
movq $0x0, 0x38(%rsp)
testl %ebp, %ebp
jne 0x10a94
testl %r12d, %r12d
sete %al
testq %r13, %r13
setne %cl
orb %al, %cl
movzbl %cl, %eax
leal 0x1(,%rax,2), %esi
movl $0x3e8, %edx            # imm = 0x3E8
movl %ebx, %edi
callq 0x139d0
xorl %ebp, %ebp
testb $0x1, %al
je 0x10761
movl %eax, 0x30(%rsp)
leaq 0x1c0(%rsp), %rsi
movl $0x4000, %edx           # imm = 0x4000
movl %ebx, %edi
callq 0xd2b0
cmpq $-0x1, %rax
je 0x1068f
testq %rax, %rax
jle 0x106a4
movq 0x8(%rsp), %rdi
movl %ebx, %ebp
leaq 0x1c0(%rsp), %rbx
movq %rbx, %rsi
movq %rax, %rdx
callq 0x13b8f
xorl %edi, %edi
callq 0xd3a0
movq %rbx, %rsi
movl %ebp, %ebx
movq %rax, 0x10(%rsp)
jmp 0x1064b
callq 0xd0a0
movl (%rax), %edi
cmpl $0x4, %edi
je 0x106a4
cmpl $0xb, %edi
jne 0x10aa3
movl $0x0, 0x20(%rsp)
leaq 0x48(%rsp), %rbp
movq 0x8(%rsp), %rdi
movq %rbp, %rsi
callq 0x13c6d
cmpl $-0x1, %eax
je 0x10a42
movq 0x48(%rsp), %rax
testq %rax, %rax
je 0x10759
movl (%rax), %ecx
cmpl $0x6, %ecx
je 0x1071f
testl %r12d, %r12d
sete %dl
cmpl $0x1, %ecx
setne %cl
orb %dl, %cl
jne 0x10740
cmpl $0x14, 0x10(%rax)
jne 0x10740
movq 0x18(%rax), %rdi
leaq 0x50(%rsp), %rsi
pushq $0x14
popq %rdx
callq 0xd430
testl %eax, %eax
jne 0x10740
leaq 0x1fbd3(%rip), %rdi     # 0x302e1
callq 0xd0d0
decq %r15
pushq $0x1
popq %rax
movl %eax, 0x20(%rsp)
jmp 0x10740
movq 0x2f8ca(%rip), %rcx     # 0x3fff0
movq (%rcx), %rdi
movq 0x18(%rax), %rdx
leaq 0x1f25a(%rip), %rsi     # 0x2f98e
xorl %eax, %eax
callq 0xd350
incq 0x38(%rsp)
incq %r15
movq 0x48(%rsp), %rdi
callq 0x13a9c
cmpq $0x0, 0x48(%rsp)
jne 0x106b1
movl 0x20(%rsp), %ebp
movl 0x30(%rsp), %eax
testb $0x2, %al
je 0x108b5
testq %r13, %r13
je 0x107b2
leaq (%rsp,%r14), %rsi
addq $0x41c0, %rsi           # imm = 0x41C0
movl %ebx, %edi
movq %r13, %rdx
callq 0xd160
cmpq $-0x1, %rax
jne 0x107a6
callq 0xd0a0
movl (%rax), %edi
cmpl $0x4, %edi
je 0x107a4
movl $0x0, %eax
cmpl $0xb, %edi
je 0x107a6
jmp 0x10a79
xorl %eax, %eax
addq %rax, %r14
subq %rax, %r13
jne 0x108b5
testl %r12d, %r12d
je 0x107bf
xorl %r13d, %r13d
jmp 0x10895
xorl %r12d, %r12d
movl $0x4000, %edx           # imm = 0x4000
xorl %edi, %edi
leaq 0x41c0(%rsp), %rsi
callq 0xd2b0
testq %rax, %rax
je 0x107f0
movq %rax, %r13
cmpq $-0x1, %rax
je 0x10a57
xorl %r14d, %r14d
jmp 0x10895
movups 0x1fd45(%rip), %xmm0    # 0x3053c
movups %xmm0, 0x8c(%rsp)
movaps 0x1fd2a(%rip), %xmm0    # 0x30530
movaps %xmm0, 0x80(%rsp)
movapd 0x1fd0a(%rip), %xmm0    # 0x30520
movapd %xmm0, 0x70(%rsp)
xorl %r14d, %r14d
cmpq $0x14, %r14
je 0x10834
callq 0xd680
movb %al, 0x50(%rsp,%r14)
incq %r14
jmp 0x1081f
movl 0x60(%rsp), %eax
leaq 0x85(%rsp), %rcx
movl %eax, 0x10(%rcx)
movaps 0x50(%rsp), %xmm0
movups %xmm0, (%rcx)
movaps 0x70(%rsp), %xmm0
movapd 0x80(%rsp), %xmm1
movaps %xmm0, 0x41c0(%rsp)
movapd %xmm1, 0x41d0(%rsp)
movupd 0x8b(%rsp), %xmm0
movupd %xmm0, 0x41db(%rsp)
leaq 0x1fa7f(%rip), %rdi     # 0x30302
callq 0xd0d0
xorl %r14d, %r14d
pushq $0x2b
popq %r13
pushq $0x1
popq %rax
movl %eax, %r12d
testq %r13, %r13
sete %al
testl %r12d, %r12d
setne %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x10769
xorl %r13d, %r13d
pushq $0x1
popq %rax
movl %eax, %r12d
testl %r12d, %r12d
je 0x10609
cmpl $0x0, 0x314c7(%rip)     # 0x41d8c
jle 0x10609
xorl %edi, %edi
callq 0xd3a0
subq 0x10(%rsp), %rax
movslq 0x314ae(%rip), %rdx     # 0x41d8c
cmpq %rdx, %rax
jle 0x10609
movq 0x2f702(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
leaq 0x1f246(%rip), %rsi     # 0x2fb3e
xorl %eax, %eax
callq 0xd350
movq 0x38(%rsp), %r14
incq %r14
movq 0x8(%rsp), %rdi
callq 0x13b4e
leaq 0x1f24b(%rip), %rdi     # 0x2fb63
movq %r14, %rsi
movq %r15, %rdx
xorl %eax, %eax
callq 0xd1d0
testq %r14, %r14
je 0x10a17
jmp 0x10a3a
pushq $0x41
popq %rsi
movl $0x1a4, %edx            # imm = 0x1A4
xorl %eax, %eax
callq 0xd4b0
movl %eax, %ebp
cmpl $-0x1, %eax
jne 0x1097b
movq (%r15), %rbx
movq 0x3145d(%rip), %r14     # 0x41db0
callq 0xd0a0
movl (%rax), %edi
callq 0xd630
leaq 0x1f0a0(%rip), %rsi     # 0x2fa06
movq %rbx, %rdi
movq %r14, %rdx
movq %rax, %rcx
xorl %eax, %eax
callq 0xd350
jmp 0x10a3a
movl $0x1000, %r13d          # imm = 0x1000
leaq 0x1c0(%rsp), %r15
testq %r14, %r14
je 0x109ed
cmpq %r13, %r14
movl $0x1000, %edx           # imm = 0x1000
cmovbq %r14, %rdx
movl %ebx, %edi
movq %r15, %rsi
callq 0xd2b0
testq %rax, %rax
jle 0x10a1e
movq %rax, %r12
movl %ebp, %edi
movq %r15, %rsi
movq %rax, %rdx
callq 0xd160
subq %r12, %r14
cmpq %r12, %rax
je 0x10989
movq 0x2f628(%rip), %rax     # 0x3fff0
movq (%rax), %rbx
callq 0xd0a0
movl (%rax), %edi
callq 0xd630
leaq 0x1f06b(%rip), %rsi     # 0x2fa49
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd350
jmp 0x10a3a
movl %ebx, %edi
callq 0xd260
movl %ebp, %edi
callq 0xd4e0
movq 0x2f5ee(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1f05d(%rip), %rdi     # 0x2fa69
pushq $0x20
popq %rsi
pushq $0x1
popq %rdx
callq 0xd5f0
xorl %edi, %edi
callq 0xd5d0
movq 0x2f5cb(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1efef(%rip), %rdi     # 0x2fa1e
pushq $0x2a
popq %rsi
pushq $0x1
popq %rdx
callq 0xd5f0
pushq $0x1
popq %rdi
callq 0xd5d0
movq 0x2f5a7(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1f089(%rip), %rdi     # 0x2fadc
pushq $0x22
jmp 0x10a31
movq 0x2f592(%rip), %rax     # 0x3fff0
movq (%rax), %rbx
callq 0xd0a0
movl (%rax), %edi
callq 0xd630
leaq 0x1f0ac(%rip), %rsi     # 0x2fb20
jmp 0x109de
movq 0x2f570(%rip), %rax     # 0x3fff0
movq (%rax), %rbx
callq 0xd630
leaq 0x1f070(%rip), %rsi     # 0x2faff
jmp 0x109de
movq 0x38(%rsp), %r14
jmp 0x10907
callq 0x11fa5
movq 0x2f546(%rip), %rax     # 0x3fff0
movq (%rax), %rbx
callq 0xd630
leaq 0x1f000(%rip), %rsi     # 0x2fab9
jmp 0x109de
leaq 0x1f800(%rip), %rdi     # 0x302c5
callq 0xd540
jmp 0x10a3a
xorl %edi, %edi
callq 0x11d6e
cmpl $-0x1, %eax
je 0x10a3a
movq 0x31272(%rip), %rcx     # 0x41d58
movl $0x3e8, %esi            # imm = 0x3E8
movq %rcx, %rax
cqto
idivq %rsi
testq %rcx, %rcx
movl $0x3a98, %ecx           # imm = 0x3A98
cmovneq %rax, %rcx
movq %rcx, 0x20(%rsp)
callq 0x12070
movq %rax, 0x10(%rsp)
cmpq $0x0, 0x3135a(%rip)     # 0x41e70
je 0x10a3a
xorl %r12d, %r12d
movq $0x0, 0x8(%rsp)
xorl %r14d, %r14d
xorl %r13d, %r13d
callq 0x12070
movq %rax, %r15
movq 0x31333(%rip), %rdi     # 0x41e70
leaq 0x1cc1f(%rip), %rsi     # 0x2d763
xorl %eax, %eax
callq 0x1504d
testq %rax, %rax
je 0x11aa4
movq %rax, %rbx
callq 0x12070
movq %rax, %rbp
subq %r15, %rbp
movq %rbx, %rdi
callq 0x13a9c
leaq 0x1(%r14), %r15
testq %r14, %r14
je 0x10b9c
cmpq %r13, %rbp
cmovlq %rbp, %r13
cmpq %r12, %rbp
cmovgq %rbp, %r12
movq 0x8(%rsp), %r14
addq %rbp, %r14
cvtsi2sd %r14, %xmm0
cvtsi2sd %r15, %xmm1
divsd %xmm1, %xmm0
movq %r12, %rbp
jmp 0x10ba7
cvtsi2sd %rbp, %xmm0
movq %rbp, %r14
movq %rbp, %r13
movq 0x10(%rsp), %rbx
leaq 0x1ec79(%rip), %rdi     # 0x2f82c
movq %r13, %rsi
movq %rbp, %rdx
movq %r15, %rcx
movb $0x1, %al
callq 0xd1d0
movq 0x2f3d6(%rip), %rax     # 0x3ffa0
movq (%rax), %rdi
callq 0xd400
cmpl $0x0, 0x3119f(%rip)     # 0x41d78
je 0x10c2e
callq 0x12070
subq %rbx, %rax
cmpq 0x20(%rsp), %rax
jle 0x10c2e
callq 0x12070
subq %rbx, %rax
cvtsi2ss %rax, %xmm0
divss 0x1b689(%rip), %xmm0    # 0x2c288
cvtss2sd %xmm0, %xmm0
leaq 0x1ec59(%rip), %rdi     # 0x2f863
movb $0x1, %al
callq 0xd1d0
callq 0x12070
movq %rax, 0x10(%rsp)
xorl %ebp, %ebp
movq $0x0, 0x8(%rsp)
xorl %r15d, %r15d
xorl %r13d, %r13d
jmp 0x10c33
movq %r14, 0x8(%rsp)
movl $0x2710, %edi           # imm = 0x2710
callq 0xd6c0
movq %rbp, %r12
movq %r15, %r14
jmp 0x10b2e
xorl %edi, %edi
callq 0x11d6e
cmpl $-0x1, %eax
je 0x10a3a
xorpd %xmm0, %xmm0
movapd %xmm0, 0x1d0(%rsp)
movapd %xmm0, 0x1c0(%rsp)
andq $0x0, 0x1e0(%rsp)
movapd %xmm0, 0x41d0(%rsp)
andq $0x0, 0x41e0(%rsp)
movapd %xmm0, 0x41c0(%rsp)
andq $0x0, 0xe0(%rsp)
movapd %xmm0, 0xd0(%rsp)
movapd %xmm0, 0xc0(%rsp)
movapd %xmm0, 0x80(%rsp)
movapd %xmm0, 0x70(%rsp)
andq $0x0, 0x90(%rsp)
movq 0x311a4(%rip), %rdi     # 0x41e70
leaq 0x1bb70(%rip), %rsi     # 0x2c843
xorl %eax, %eax
callq 0x1504d
testq %rax, %rax
je 0x1127a
cmpl $0x3, (%rax)
jne 0x1127a
movslq 0x8(%rax), %rbx
movq %rax, %rdi
callq 0x13a9c
leaq 0x1f637(%rip), %rdi     # 0x30336
callq 0xd0d0
leaq 0x1f66b(%rip), %rdi     # 0x30376
callq 0xd0d0
leaq 0x1f6a2(%rip), %rdi     # 0x303b9
callq 0xd0d0
xorl %r14d, %r14d
cmpq $0x5, %r14
je 0x11524
callq 0xe4b3
movq %rax, 0x70(%rsp,%r14,8)
incq %r14
testq %rax, %rax
jne 0x10d1f
movq 0x2f2ae(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1ee4d(%rip), %rdi     # 0x2fb99
pushq $0x30
jmp 0x10a31
xorl %edi, %edi
callq 0x11d6e
cmpl $-0x1, %eax
je 0x10a3a
cmpq $0x0, 0x30fed(%rip)     # 0x41d58
jne 0x10d78
movq $0xf4240, 0x30fe0(%rip) # imm = 0xF4240
leaq 0x1f298(%rip), %r14     # 0x30017
leaq 0x1c0(%rsp), %r13
leaq 0x1f196(%rip), %r15     # 0x2ff24
movq $0x0, 0x10(%rsp)
movl $0x0, 0x8(%rsp)
movq 0x310ca(%rip), %rbp     # 0x41e70
cmpl $0x0, (%rbp)
jne 0x11b12
xorl %r12d, %r12d
xorl %ebx, %ebx
testq %r12, %r12
jne 0x10e49
movq 0x2f1db(%rip), %r12     # 0x3ffa0
testb $0x3, (%rbp)
je 0x10e0b
incl %ebx
movq %r14, %rdi
movl %ebx, %esi
xorl %eax, %eax
callq 0xd1d0
movq (%r12), %rdi
callq 0xd400
movq %rbp, %rdi
callq 0x14acb
movq 0x30f47(%rip), %rdi     # 0x41d38
movl 0x30f49(%rip), %esi     # 0x41d40
callq 0x14b09
movq %rax, %rbp
movl $0xf4240, %edi          # imm = 0xF4240
callq 0xd6c0
jmp 0x10dc5
movq %rbp, %rdi
leaq 0x1b988(%rip), %rsi     # 0x2c79d
xorl %eax, %eax
callq 0x1504d
movq %rax, %r12
movl (%rbp), %eax
testl %eax, %eax
sete %cl
testb $0x3, %al
setne %al
orb %cl, %al
je 0x1125d
testl %ebx, %ebx
jle 0x10db5
pushq $0xa
popq %rdi
callq 0xd070
jmp 0x10db5
movq %rbp, 0x31020(%rip)     # 0x41e70
cmpl $0x6, (%r12)
je 0x11b31
movl 0x8(%rsp), %ebx
movl %ebx, %eax
xorl %edx, %edx
pushq $0x14
popq %rcx
divl %ecx
testl %edx, %edx
jne 0x10e78
leaq 0x1f590(%rip), %rdi     # 0x30403
callq 0xd0d0
incl %ebx
movl %ebx, 0x8(%rsp)
xorl %ebp, %ebp
xorl %ebx, %ebx
movq %r13, %rdi
cmpl $0x14, %ebp
je 0x10eb4
movq %r15, %rsi
movl %ebp, %edx
xorl %eax, %eax
callq 0xd5c0
movq 0x18(%r12), %rdi
movq %r13, %rsi
callq 0x12790
movq %rax, %rcx
negq %rcx
jno 0x10ead
xorl %eax, %eax
addq %rax, %rbx
incl %ebp
jmp 0x10e82
leaq 0x1f073(%rip), %rbp     # 0x2ff2e
movq %rbp, %rsi
movq %rbx, %rdx
xorl %eax, %eax
callq 0xd5c0
leaq 0x1f063(%rip), %rdi     # 0x2ff32
movq %r13, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%r12), %rdi
leaq 0x1f053(%rip), %rsi     # 0x2ff38
callq 0x12790
movq %r13, %rdi
movq %rax, %rsi
callq 0xf9e7
leaq 0x1f05b(%rip), %rbx     # 0x2ff57
movq %rbx, %rdi
movq %r13, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%r12), %rdi
leaq 0x1f02f(%rip), %rsi     # 0x2ff44
callq 0x12790
movq %r13, %rdi
movq %rbp, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd5c0
leaq 0x1f025(%rip), %rdi     # 0x2ff56
movq %r13, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%r12), %rdi
leaq 0x1f015(%rip), %rsi     # 0x2ff5c
callq 0x12790
movq %r13, %rdi
movq %rbp, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd5c0
movq %rbx, %rdi
movq %r13, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%r12), %rdi
leaq 0x1eff7(%rip), %rsi     # 0x2ff6c
callq 0x12790
movq %rax, %rbx
movq %rax, %rcx
movq 0x10(%rsp), %rax
subq %rax, %rcx
testq %rax, %rax
cmoveq %rax, %rcx
movq %r13, %rdi
leaq 0x1efec(%rip), %rsi     # 0x2ff85
movq %rbx, %rdx
xorl %eax, %eax
callq 0xd5c0
leaq 0x1efe6(%rip), %rdi     # 0x2ff90
movq %r13, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%r12), %rdi
leaq 0x1efd6(%rip), %rsi     # 0x2ff96
callq 0x12790
movq %r13, %rdi
movq %rbp, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd5c0
leaq 0x1efd5(%rip), %rdi     # 0x2ffb1
movq %r13, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%r12), %rdi
leaq 0x1efc6(%rip), %rsi     # 0x2ffb8
callq 0x12790
movq %rax, %rbp
movq 0x18(%r12), %rdi
leaq 0x1efc5(%rip), %rsi     # 0x2ffcb
callq 0x12790
addq %rax, %rax
orq %rbp, %rax
decq %rax
cmpq $0x2, %rax
ja 0x1102f
leaq 0x1b303(%rip), %rcx     # 0x2c324
movslq (%rcx,%rax,4), %rdi
addq %rcx, %rdi
xorl %eax, %eax
callq 0xd1d0
pushq $0xa
popq %rdi
callq 0xd070
movq %r12, %rdi
callq 0x13a9c
movl 0x30d13(%rip), %edi     # 0x41d58
callq 0xd6c0
movq %rbx, 0x10(%rsp)
jmp 0x10d9f
xorl %edi, %edi
callq 0x11d6e
cmpl $-0x1, %eax
je 0x10a3a
leaq 0x1ecd6(%rip), %rbx     # 0x2fd41
pushq $0xa
popq %rbp
leaq 0x1efb8(%rip), %r14     # 0x3002d
xorl %r12d, %r12d
movq 0x30d29(%rip), %rcx     # 0x41da8
movq 0x30dea(%rip), %rdi     # 0x41e70
testq %rcx, %rcx
je 0x1109a
movq %r14, %rsi
movq %r12, %rdx
xorl %eax, %eax
callq 0x1504d
jmp 0x110a7
movq %rbx, %rsi
movq %r12, %rdx
xorl %eax, %eax
callq 0x1504d
movq %rax, %r15
testq %rax, %rax
je 0x114fc
cmpl $0x6, (%r15)
je 0x1150d
movq 0x28(%r15), %rax
movq (%rax), %rax
movq 0x18(%rax), %rdi
xorl %esi, %esi
movl %ebp, %edx
callq 0xd310
movq %rax, %r12
xorl %r13d, %r13d
movq 0x28(%r15), %rax
movq 0x8(%rax), %rax
cmpq %r13, 0x20(%rax)
jbe 0x110fb
movq 0x28(%rax), %rax
movq (%rax,%r13,8), %rax
movq 0x18(%rax), %rdi
callq 0xd0d0
incq %r13
jmp 0x110d7
movq %r15, %rdi
callq 0x13a9c
testq %r12, %r12
jne 0x11078
jmp 0x10a17
movslq 0x30c88(%rip), %rax     # 0x41da0
imulq $0xf4240, %rax, %rbx    # imm = 0xF4240
callq 0x12082
movq %rax, %r15
movq %rbx, 0x8(%rsp)
addq %rbx, %r15
xorl %r14d, %r14d
xorl %r12d, %r12d
callq 0x12082
movq %rax, %rbx
callq 0xfa72
callq 0x12082
incq %r14
movq %rax, %rbp
subq %rbx, %rbp
jle 0x11135
movq %rax, %r13
cmpq %r12, %rbp
jle 0x1116e
leaq 0x1eedf(%rip), %rdi     # 0x30040
movq %rbp, %rsi
xorl %eax, %eax
callq 0xd1d0
movq %rbp, %r12
cmpq %r15, %r13
jle 0x11135
movq 0x8(%rsp), %rax
cqto
idivq %r14
movq %rax, %rbx
leaq 0x1eee1(%rip), %rdi     # 0x30068
movq %r14, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd1d0
cvtsi2sd %r12, %xmm0
cvtsi2sd %rbx, %xmm1
divsd %xmm1, %xmm0
leaq 0x1eef2(%rip), %rdi     # 0x3009b
movb $0x1, %al
callq 0xd1d0
jmp 0x10a17
movl $0x1, 0x30ba5(%rip)     # 0x41d64
pushq $0x1
popq %rbx
movl %ebx, %edi
callq 0x15adc
leaq 0x165d(%rip), %rdi      # 0x1282d
callq 0x15af5
movq 0x2edcc(%rip), %rax     # 0x3ffa8
movq (%rax), %rdi
callq 0xd3b0
movl %eax, %edi
callq 0xd0e0
movl %eax, 0x20(%rsp)
testl %eax, %eax
je 0x11208
leaq 0x1eecb(%rip), %rdi     # 0x300c5
callq 0xd050
testq %rax, %rax
jne 0x11292
movq $0x0, 0x10(%rsp)
jmp 0x112c7
movq 0x2edd3(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
leaq 0x1e863(%rip), %rsi     # 0x2fa8a
leaq 0xc0(%rsp), %rdx
jmp 0x109e4
movq 0x2edb5(%rip), %rax     # 0x3fff0
movq (%rax), %rbx
movq 0x30c13(%rip), %r14     # 0x41e58
callq 0xd0a0
movl (%rax), %edi
callq 0xd630
leaq 0x1f053(%rip), %rsi     # 0x302ab
jmp 0x10966
movq 0x2ed8c(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
addq $0x4, %rbp
leaq 0x1e6d0(%rip), %rsi     # 0x2f942
movq %rbp, %rdx
jmp 0x109e4
movq 0x2ed6f(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1ea9a(%rip), %rdi     # 0x2fd25
pushq $0x1b
jmp 0x10a31
callq 0xe4b3
movq %rax, %r14
leaq 0x1ee24(%rip), %rdi     # 0x300c5
callq 0xd050
leaq 0x1ee1d(%rip), %rsi     # 0x300ca
movq %r14, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0xe931
movq %rax, 0x10(%rsp)
movq %rax, %rdi
callq 0x16d00
callq 0x1228a
leaq 0x1ee0c(%rip), %rbp     # 0x300df
movl 0x20(%rsp), %r15d
movq 0x10(%rsp), %r14
cmpq $0x0, 0x30b8b(%rip)     # 0x41e70
leaq 0x30aec(%rip), %rdi     # 0x41dd8
cmoveq %rbp, %rdi
callq 0x163ee
testq %rax, %rax
je 0x10a17
movq %rax, %r13
cmpb $0x0, (%rax)
je 0x114ef
movq %r13, %rdi
leaq 0x1c0(%rsp), %rsi
callq 0xf1dc
movq %rax, %r12
testl %r15d, %r15d
je 0x1132a
movq %r13, %rdi
callq 0x16b00
testq %r14, %r14
je 0x11337
movq %r14, %rdi
callq 0x16c9f
testq %r12, %r12
je 0x113dc
movl 0x1c0(%rsp), %ebp
testl %ebp, %ebp
jle 0x114d9
movq (%r12), %r14
movq %r14, %rdi
leaq 0x1ed92(%rip), %rsi     # 0x300ef
callq 0xd080
testl %eax, %eax
je 0x10a17
movq %r14, %rdi
leaq 0x1ed80(%rip), %rsi     # 0x300f4
callq 0xd080
testl %eax, %eax
je 0x10a17
cmpl $0x1, %ebp
je 0x113ed
cmpl $0x3, %ebp
jne 0x11404
movq %r14, %rdi
leaq 0x1ed64(%rip), %rsi     # 0x300f9
callq 0xd080
testl %eax, %eax
jne 0x11404
movq 0x30993(%rip), %rdi     # 0x41d38
callq 0xe4eb
movq 0x8(%r12), %rdi
callq 0xe4c1
movq %rax, 0x3097d(%rip)     # 0x41d38
movq 0x10(%r12), %rdi
callq 0xd590
movl %eax, 0x30975(%rip)     # 0x41d40
callq 0x1228a
movl %ebx, %edi
callq 0x11d6e
jmp 0x114d4
leaq 0x1f0c6(%rip), %rdi     # 0x304a9
callq 0xd0d0
jmp 0x114ef
movq %r14, %rdi
leaq 0x1ed0a(%rip), %rsi     # 0x30101
callq 0xd080
testl %eax, %eax
je 0x114cf
callq 0x12070
movq %rax, 0x8(%rsp)
movq (%r12), %rdi
callq 0xd590
movl %eax, %ebp
movl 0x1c0(%rsp), %edi
cmpl $0x2, %edi
setge %al
testl %ebp, %ebp
setne %cl
andb %al, %cl
cmovel %ebx, %ebp
movzbl %cl, %r15d
leaq (%r12,%r15,8), %r14
andl $0x0, 0x30941(%rip)     # 0x41d80
subl %r15d, %edi
movq %r14, %rsi
movl %ebp, %edx
callq 0x12938
testl %eax, %eax
je 0x11474
movl %ebx, %edi
callq 0x11d6e
movl 0x1c0(%rsp), %edi
subl %r15d, %edi
movq %r14, %rsi
movl %ebp, %edx
callq 0x12938
testl %eax, %eax
je 0x11474
callq 0x12767
cmpl $0x0, 0x30901(%rip)     # 0x41d7c
je 0x11496
cmpl $0x0, 0x308fc(%rip)     # 0x41d80
je 0x11496
movl %ebx, %edi
callq 0x11d6e
movl 0x1c0(%rsp), %edi
jmp 0x11438
callq 0x12070
subq 0x8(%rsp), %rax
cmpq $0x1f4, %rax            # imm = 0x1F4
movl 0x20(%rsp), %r15d
movq 0x10(%rsp), %r14
jl 0x114d9
cvtsi2sd %rax, %xmm0
divsd 0x1adc1(%rip), %xmm0    # 0x2c280
leaq 0x1ec41(%rip), %rdi     # 0x30107
movb $0x1, %al
callq 0xd1d0
jmp 0x114d9
callq 0x15ae3
movq 0x10(%rsp), %r14
movl 0x1c0(%rsp), %esi
movq %r12, %rdi
callq 0xf012
leaq 0x1ebf0(%rip), %rbp     # 0x300df
movq %r13, %rdi
callq 0xd060
jmp 0x112dd
leaq 0x1ef9c(%rip), %rdi     # 0x3049f
callq 0xd0d0
jmp 0x10a3a
movq 0x18(%r15), %rsi
leaq 0x1ea01(%rip), %rdi     # 0x2ff19
xorl %eax, %eax
callq 0xd1d0
jmp 0x10a3a
movq %rbx, %xmm0
punpckldq 0x1ad5f(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1ad67(%rip), %xmm0    # 0x2c2a0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd %xmm1, 0xb0(%rsp)
xorl %edx, %edx
xorl %ebp, %ebp
movq $0x0, 0x30(%rsp)
xorl %r12d, %r12d
movl $0x0, 0x44(%rsp)
xorl %r14d, %r14d
movq %r14, %xmm0
punpckldq 0x1ad1a(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1ad22(%rip), %xmm0    # 0x2c2a0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
mulsd 0x1ace6(%rip), %xmm1    # 0x2c278
movapd %xmm1, 0x20(%rsp)
movq 0x308d1(%rip), %rdi     # 0x41e70
leaq 0x1e79b(%rip), %rsi     # 0x2fd41
xorl %eax, %eax
callq 0x1504d
testq %rax, %rax
je 0x11aa4
movl (%rax), %edx
cmpl $0x2, %edx
jne 0x11ba6
cmpq $0x2, 0x20(%rax)
jne 0x11bf2
movq 0x28(%rax), %rcx
movq (%rcx), %rdx
cmpl $0x1, (%rdx)
jne 0x11c0a
movq %rax, 0xa8(%rsp)
movq 0x8(%rcx), %rbx
cmpl $0x2, (%rbx)
jne 0x11c29
movq 0x18(%rdx), %rdi
callq 0xd590
movl %eax, 0x38(%rsp)
movq 0x20(%rbx), %rsi
movslq 0x44(%rsp), %rax
cmpq %rax, %rsi
movq %r14, 0x8(%rsp)
jbe 0x1164d
shlq $0x2, %rsi
movq %r12, %rdi
callq 0x12e8f
movq %rax, %r12
movq 0x20(%rbx), %rsi
shlq $0x3, %rsi
movq %rbp, %rdi
callq 0x12e8f
testq %r12, %r12
je 0x11d56
movq %rax, %rbp
testq %rax, %rax
je 0x11d56
movq 0x20(%rbx), %rsi
movl %esi, 0x44(%rsp)
movapd 0x20(%rsp), %xmm0
divsd 0xb0(%rsp), %xmm0
movapd %xmm0, 0x20(%rsp)
movslq 0x38(%rsp), %rax
movq %rax, 0xa0(%rsp)
xorl %r14d, %r14d
cmpq %r14, %rsi
jbe 0x116a1
movq 0x307f2(%rip), %rdi     # 0x41e70
movq 0x28(%rbx), %rax
movq (%rax,%r14,8), %rax
movq 0x18(%rax), %rdx
leaq 0x1e79d(%rip), %rsi     # 0x2fe2e
xorl %eax, %eax
callq 0x14f37
incq %r14
movq 0x20(%rbx), %rsi
jmp 0x11672
xorl %r15d, %r15d
movq %rbp, 0x10(%rsp)
cmpq %r15, %rsi
jbe 0x11791
movq 0x307b7(%rip), %rdi     # 0x41e70
leaq 0x50(%rsp), %rsi
callq 0x14e06
testl %eax, %eax
jne 0x11abc
movq 0x50(%rsp), %rbp
movl (%rbp), %edx
cmpl $0x5, %edx
jne 0x11ae9
movq 0x28(%rbx), %rax
movq (%rax,%r15,8), %rax
movq 0x18(%rax), %r13
movq 0x18(%rbp), %r14
movq %r14, %rdi
leaq 0x1adcd(%rip), %rsi     # 0x2c4c3
callq 0xd330
testl %eax, %eax
je 0x11772
movq %r14, %rdi
leaq 0x1bac5(%rip), %rsi     # 0x2d1ce
callq 0xd330
pushq $0x1
popq %rcx
testl %eax, %eax
je 0x11774
movq %r14, %rdi
leaq 0x1c927(%rip), %rsi     # 0x2e046
callq 0xd330
pushq $0x2
popq %rcx
testl %eax, %eax
je 0x11774
movq %r14, %rdi
leaq 0x1b6d1(%rip), %rsi     # 0x2ce06
callq 0xd330
pushq $0x3
popq %rcx
testl %eax, %eax
je 0x11774
movq %r14, %rdi
leaq 0x1e435(%rip), %rsi     # 0x2fb80
callq 0xd330
pushq $0x4
popq %rcx
testl %eax, %eax
je 0x11774
movq %r14, %rdi
leaq 0x1e72e(%rip), %rsi     # 0x2fe8f
callq 0xd330
pushq $0x5
popq %rcx
testl %eax, %eax
je 0x11774
jmp 0x11b8a
xorl %ecx, %ecx
movl %ecx, (%r12,%r15,4)
movq %rbp, %rdi
callq 0x13a9c
incq %r15
movq 0x20(%rbx), %rsi
movq 0x10(%rsp), %rbp
jmp 0x116a9
xorl %r14d, %r14d
cmpq %r14, %rsi
jbe 0x117d8
movslq (%r12,%r14,4), %rax
cmpq $0x5, %rax
je 0x117d3
movq 0x306c6(%rip), %rdi     # 0x41e70
leaq 0x2d06f(%rip), %rcx     # 0x3e820
movq (%rcx,%rax,8), %rdx
movq 0x28(%rbx), %rax
movq (%rax,%r14,8), %rax
movq 0x18(%rax), %rcx
leaq 0x1e6ec(%rip), %rsi     # 0x2feb4
xorl %eax, %eax
callq 0x14f37
movq 0x20(%rbx), %rsi
incq %r14
jmp 0x11794
xorl %r14d, %r14d
cmpq %r14, %rsi
jbe 0x11869
cmpl $0x5, (%r12,%r14,4)
jne 0x117f3
andq $0x0, (%rbp,%r14,8)
jmp 0x11828
movq 0x30676(%rip), %rdi     # 0x41e70
leaq 0x50(%rsp), %rsi
callq 0x14e06
testl %eax, %eax
jne 0x11b3b
movq 0x50(%rsp), %rdi
cmpl $0x3, (%rdi)
jne 0x1182d
movq 0x8(%rdi), %rax
movq %rax, (%rbp,%r14,8)
callq 0x13a9c
movq 0x20(%rbx), %rsi
incq %r14
jmp 0x117db
movq 0x2e7bc(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
movslq (%r12,%r14,4), %rax
leaq 0x2cfde(%rip), %rcx     # 0x3e820
movq (%rcx,%rax,8), %rdx
movq 0x28(%rbx), %rax
movq (%rax,%r14,8), %rax
movq 0x18(%rax), %rcx
leaq 0x1e68b(%rip), %rsi     # 0x2fee4
xorl %eax, %eax
callq 0xd350
movq 0x50(%rsp), %rdi
xorl %eax, %eax
jmp 0x1181a
xorl %r14d, %r14d
cmpq %r14, %rsi
jbe 0x11956
movslq (%r12,%r14,4), %r15
cmpq $0x5, %r15
je 0x1194a
movq (%rbp,%r14,8), %rax
addq %rax, 0xc0(%rsp,%r15,8)
incq 0x41c0(%rsp,%r15,8)
movq 0x28(%rbx), %rax
movq (%rax,%r14,8), %rax
movslq 0x10(%rax), %r13
movq (%rbp,%r14,8), %rcx
cmpq %rcx, 0x1c0(%rsp,%r15,8)
jae 0x11912
leaq 0x2cf06(%rip), %rdx     # 0x3e7c0
movq (%rdx,%r15,8), %rsi
movq 0x18(%rax), %rdx
leaq 0x2cf27(%rip), %rax     # 0x3e7f0
movq (%rax,%r15,8), %r8
leaq 0x1e31c(%rip), %rdi     # 0x2fbf0
movapd 0x20(%rsp), %xmm0
movb $0x1, %al
callq 0xd1d0
movq 0x70(%rsp,%r15,8), %rdi
movq 0x28(%rbx), %rax
movq (%rax,%r14,8), %rax
movq 0x18(%rax), %rsi
callq 0xe75f
movq %rax, 0x70(%rsp,%r15,8)
testq %rax, %rax
je 0x11b72
movq (%rbp,%r14,8), %rax
movq %rax, 0x1c0(%rsp,%r15,8)
addq %r13, 0x30(%rsp)
movq 0x8(%rsp), %rsi
incq %rsi
movq %rsi, %rax
xorl %edx, %edx
movl $0xf4240, %ecx          # imm = 0xF4240
divq %rcx
testq %rdx, %rdx
movq %rsi, 0x8(%rsp)
jne 0x1194a
leaq 0x1e30f(%rip), %rdi     # 0x2fc4c
movapd 0x20(%rsp), %xmm0
movb $0x1, %al
callq 0xd1d0
incq %r14
movq 0x20(%rbx), %rsi
jmp 0x1186c
movq 0x8(%rsp), %r14
testq %r14, %r14
je 0x1198a
movq %r14, %rax
xorl %edx, %edx
pushq $0x64
popq %rcx
divq %rcx
testq %rdx, %rdx
sete %al
movq 0x303e0(%rip), %rdi     # 0x41d58
testq %rdi, %rdi
setne %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x1198a
callq 0xd6c0
movq 0xa8(%rsp), %rdi
callq 0x13a9c
cmpl $0x0, 0x38(%rsp)
movq 0xa0(%rsp), %rdx
jne 0x11569
testq %r12, %r12
je 0x119b7
movq %r12, %rdi
callq 0x12f25
cmpq $0x0, 0x10(%rsp)
je 0x119c9
movq 0x10(%rsp), %rdi
callq 0x12f25
leaq 0x1ea18(%rip), %rdi     # 0x303e8
callq 0xd0d0
leaq 0x1e295(%rip), %rdi     # 0x2fc71
xorl %ebx, %ebx
movq 0x8(%rsp), %r14
movq %r14, %rsi
xorl %eax, %eax
callq 0xd1d0
movq %r14, %xmm0
punpckldq 0x1a896(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1a89e(%rip), %xmm0    # 0x2c2a0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd %xmm1, 0x10(%rsp)
xorpd %xmm0, %xmm0
cmpq $0x0, 0x30(%rsp)
je 0x11a47
movsd 0x30(%rsp), %xmm1
unpcklps 0x1a863(%rip), %xmm1    # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x1a86b(%rip), %xmm1    # 0x2c2a0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
divsd 0x10(%rsp), %xmm0
leaq 0x1e247(%rip), %rdi     # 0x2fc95
movq 0x30(%rsp), %rsi
movb $0x1, %al
callq 0xd1d0
leaq 0x1e267(%rip), %r14     # 0x2fcc8
cmpq $0x28, %rbx
je 0x11c48
movq 0x70(%rsp,%rbx), %rdx
cmpl $0x0, -0x8(%rdx)
je 0x11a9e
leaq 0x2cd43(%rip), %rax     # 0x3e7c0
movq (%rbx,%rax), %rsi
movq 0x1c0(%rsp,%rbx), %rcx
leaq 0x2cd60(%rip), %rax     # 0x3e7f0
movq (%rbx,%rax), %r8
movq %r14, %rdi
xorl %eax, %eax
callq 0xd1d0
addq $0x8, %rbx
jmp 0x11a61
movq 0x2e545(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1dd6b(%rip), %rdi     # 0x2f820
pushq $0xb
jmp 0x10a31
movq 0x2e52d(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
movq 0x28(%rbx), %rax
movq (%rax,%r15,8), %rax
movq 0x18(%rax), %rdx
movq 0x30397(%rip), %r8      # 0x41e70
movl (%r8), %ecx
addq $0x4, %r8
leaq 0x1e34f(%rip), %rsi     # 0x2fe36
jmp 0x11b66
movq 0x2e500(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
movq 0x28(%rbx), %rax
movq (%rax,%r15,8), %rax
movq 0x18(%rax), %rcx
leaq 0x1e35a(%rip), %rsi     # 0x2fe60
xorl %eax, %eax
callq 0xd350
jmp 0x10a3a
leaq 0x1e4d3(%rip), %rdi     # 0x2ffec
leaq 0x1e2aa(%rip), %rsi     # 0x2fdca
leaq 0x1e4cd(%rip), %rcx     # 0x2fff4
movl $0x298, %edx            # imm = 0x298
callq 0xd220
movq 0x18(%r12), %rsi
jmp 0x11511
movq 0x2e4ae(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
movq 0x28(%rbx), %rax
movq (%rax,%r14,8), %rax
movq 0x18(%rax), %rdx
movq 0x30318(%rip), %r8      # 0x41e70
movl (%r8), %ecx
addq $0x4, %r8
leaq 0x1e354(%rip), %rsi     # 0x2feba
xorl %eax, %eax
callq 0xd350
jmp 0x10a3a
movq 0x2e477(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1e0a5(%rip), %rdi     # 0x2fc28
pushq $0x23
jmp 0x10a31
movq 0x2e45f(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
leaq 0x1e2f9(%rip), %rsi     # 0x2fe94
movq %r14, %rdx
movq %r13, %rcx
jmp 0x1096f
cmpl $0x6, %edx
jne 0x11d0d
movq %rax, %rcx
movq 0x2e437(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
movq 0x18(%rcx), %rdx
leaq 0x1e184(%rip), %rsi     # 0x2fd4b
jmp 0x109e4
callq 0x11fdc
movq %rax, %rbx
leaq 0x1d1a3(%rip), %rdi     # 0x2ed7e
movq %rax, %rsi
xorl %eax, %eax
callq 0xd1d0
movq %rbx, %rdi
callq 0xe4eb
jmp 0x10a17
movq 0x2e3f7(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1e177(%rip), %rdi     # 0x2fd7a
pushq $0x21
jmp 0x10a31
leaq 0x1e18b(%rip), %rdi     # 0x2fd9c
leaq 0x1e1b2(%rip), %rsi     # 0x2fdca
leaq 0x1e1b7(%rip), %rcx     # 0x2fdd6
movl $0x54c, %edx            # imm = 0x54C
callq 0xd220
leaq 0x1e1d1(%rip), %rdi     # 0x2fe01
leaq 0x1e193(%rip), %rsi     # 0x2fdca
leaq 0x1e198(%rip), %rcx     # 0x2fdd6
movl $0x54d, %edx            # imm = 0x54D
callq 0xd220
pushq $0xa
popq %rdi
callq 0xd070
xorl %ebx, %ebx
leaq 0x1e093(%rip), %r14     # 0x2fcec
cmpq $0x28, %rbx
je 0x11d25
movq 0x41c0(%rsp,%rbx), %rsi
movq %rsi, %xmm0
punpckldq 0x1a618(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1a620(%rip), %xmm0    # 0x2c2a0
movapd %xmm0, %xmm2
unpckhpd %xmm0, %xmm2            # xmm2 = xmm2[1],xmm0[1]
addsd %xmm0, %xmm2
movapd %xmm2, %xmm3
mulsd 0x1a5e0(%rip), %xmm3    # 0x2c278
xorpd %xmm1, %xmm1
xorpd %xmm0, %xmm0
cmpq $0x0, 0x8(%rsp)
je 0x11cb2
divsd 0x10(%rsp), %xmm3
movapd %xmm3, %xmm0
movq 0xc0(%rsp,%rbx), %rcx
testq %rsi, %rsi
je 0x11ce4
movq %rcx, %xmm3
punpckldq 0x1a5c4(%rip), %xmm3 # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]
subpd 0x1a5cc(%rip), %xmm3    # 0x2c2a0
movapd %xmm3, %xmm1
unpckhpd %xmm3, %xmm1            # xmm1 = xmm1[1],xmm3[1]
addsd %xmm3, %xmm1
divsd %xmm2, %xmm1
leaq 0x2cad5(%rip), %rax     # 0x3e7c0
movq (%rbx,%rax), %rdx
leaq 0x2cafa(%rip), %rax     # 0x3e7f0
movq (%rbx,%rax), %r8
movq %r14, %rdi
movb $0x2, %al
callq 0xd1d0
addq $0x8, %rbx
jmp 0x11c59
movq 0x2e2dc(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1e03d(%rip), %rdi     # 0x2fd5b
pushq $0x1e
jmp 0x10a31
xorl %ebx, %ebx
cmpq $0x5, %rbx
je 0x10a17
movq 0x70(%rsp,%rbx,8), %rdi
callq 0xe4eb
incq %rbx
jmp 0x11d27
movq 0x2e2a9(%rip), %rax     # 0x3fff0
movq (%rax), %rdi
leaq 0x1d03b(%rip), %rsi     # 0x2ed8c
jmp 0x11272
movq 0x2e293(%rip), %rax     # 0x3fff0
movq (%rax), %rcx
leaq 0x1de63(%rip), %rdi     # 0x2fbca
pushq $0x25
jmp 0x10a31