// File: /workspace/github_c_makefile_star2_O3/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, %r14
movq %rdi, 0x10(%rsp)
leaq 0x224d3(%rip), %rdi     # 0x32ca5
callq 0xec9a
movq %rax, 0x3355a(%rip)     # 0x43d38
movl $0x18eb, 0x33558(%rip)  # imm = 0x18EB
xorl %ebx, %ebx
movq %rbx, 0x33557(%rip)     # 0x43d48
movq $0x1, 0x33554(%rip) # 0x43d50
movq %rbx, 0x33581(%rip)     # 0x43d84
xorpd %xmm0, %xmm0
movupd %xmm0, 0x33549(%rip)    # 0x43d58
movupd %xmm0, 0x33551(%rip)    # 0x43d68
movq %rbx, 0x3355a(%rip)     # 0x43d78
movupd %xmm0, 0x3356a(%rip)    # 0x43d90
movupd %xmm0, 0x3357a(%rip)    # 0x43da8
movl $0x1e, 0x33554(%rip)    # 0x43d8c
movq %rbx, 0x33619(%rip)     # 0x43e58
movupd %xmm0, 0x33571(%rip)    # 0x43db8
movq 0x31752(%rip), %rax     # 0x41fa0
movq (%rax), %rdi
callq 0xd3b0
movl %eax, %edi
callq 0xd0e0
testl %eax, %eax
jne 0x10877
leaq 0x22447(%rip), %rdi     # 0x32caf
callq 0xd050
testq %rax, %rax
jne 0x10877
movl $0x1, %ebx
movl %ebx, 0x3354b(%rip)     # 0x43dc8
leaq 0x23456(%rip), %rdi     # 0x33cda
callq 0xec9a
movq %rax, 0x33540(%rip)     # 0x43dd0
movb $0x1, 0x335c9(%rip)     # 0x43e60
movl $0x1580, %edi           # imm = 0x1580
callq 0xd3e0
movq %rax, 0x335c0(%rip)     # 0x43e68
leaq 0x1c4(%rsp), %r15
leaq 0x2fea9(%rip), %rbx     # 0x40760
leaq 0x223f9(%rip), %r12     # 0x32cb7
xorl %ebp, %ebp
movl $0x1, 0x1c4(%rsp)
movl $0x8, %edi
callq 0xd3e0
movq %rax, %r13
movq %rax, 0x1c8(%rsp)
callq 0xec72
movq (%rbp,%rbx), %rdx
movq %rax, %rdi
movq %r12, %rsi
xorl %eax, %eax
callq 0xf272
movq %rax, (%r13)
movq %rax, 0x1d0(%rsp)
movl $0x2, 0x1c0(%rsp)
movq $0x0, 0x1d8(%rsp)
movq 0x33547(%rip), %rax     # 0x43e68
movups 0x1c0(%rsp), %xmm0
movups %xmm0, (%rax,%rbp,4)
movupd 0x1d0(%rsp), %xmm0
movupd %xmm0, 0x10(%rax,%rbp,4)
addq $0x8, %rbp
cmpq $0x60, %rbp
jne 0x108c0
movl $0x180, %ebx            # imm = 0x180
leaq 0x31a3a(%rip), %r12     # 0x42390
movq (%r12), %rdi
movq %r15, %rsi
callq 0xfcea
movq %rax, 0x1c8(%rsp)
movq (%r12), %rdi
callq 0xec9a
movq %rax, 0x1d0(%rsp)
movl $0x1, 0x1c0(%rsp)
movq %r12, 0x1d8(%rsp)
movq 0x334d3(%rip), %rax     # 0x43e68
movups 0x1c0(%rsp), %xmm0
movups %xmm0, (%rax,%rbx)
movupd 0x1d0(%rsp), %xmm0
movupd %xmm0, 0x10(%rax,%rbx)
addq $0x20, %rbx
addq $0x28, %r12
cmpq $0x1580, %rbx           # imm = 0x1580
jne 0x10956
movl $0x1, %r13d
movq 0x10(%rsp), %rbp
cmpl $0x2, %ebp
jl 0x10e93
leal -0x1(%rbp), %r12d
movslq %r13d, %r15
movq (%r14,%r15,8), %rbp
movzbl (%rbp), %ebx
movl %ebx, %eax
addl $-0x2d, %eax
jne 0x109f8
movzbl 0x1(%rbp), %eax
addl $-0x68, %eax
jne 0x109f8
movzbl 0x2(%rbp), %eax
testl %eax, %eax
jne 0x10a26
cmpl %r12d, %r13d
je 0x10a26
movq 0x33330(%rip), %rdi     # 0x43d38
callq 0xed21
incl %r13d
movq 0x8(%r14,%r15,8), %rdi
callq 0xec9a
movq %rax, 0x33317(%rip)     # 0x43d38
jmp 0x10e82
testl %eax, %eax
jne 0x10a33
cmpl %r12d, %r13d
je 0x1157e
movq %rbp, %rdi
leaq 0x222bb(%rip), %rsi     # 0x32cf8
callq 0xd330
testl %eax, %eax
je 0x1157e
cmpb $0x2d, %bl
jne 0x10b8e
movzbl 0x1(%rbp), %eax
leal -0x6e(%rax), %ecx
cmpl $0xa, %ecx
ja 0x10a9a
leaq 0x1f85e(%rip), %rdx     # 0x302c4
movslq (%rdx,%rcx,4), %rax
addq %rdx, %rax
jmpq *%rax
cmpb $0x0, 0x2(%rbp)
jne 0x10b8e
cmpl %r12d, %r13d
je 0x10b8e
incl %r13d
movq 0x8(%r14,%r15,8), %rdi
callq 0xd590
movl %eax, 0x332cb(%rip)     # 0x43d60
jmp 0x10e82
cmpl $0x61, %eax
je 0x10b6f
cmpl $0x69, %eax
jne 0x10b8e
cmpb $0x0, 0x2(%rbp)
jne 0x10b8e
cmpl %r12d, %r13d
je 0x10b8e
incl %r13d
movq 0x8(%r14,%r15,8), %rdi
callq 0xd120
mulsd 0x1f78c(%rip), %xmm0    # 0x30260
cvttsd2si %xmm0, %rax
movq %rax, 0x33278(%rip)     # 0x43d58
jmp 0x10e82
cmpb $0x0, 0x2(%rbp)
jne 0x10b8e
cmpl %r12d, %r13d
je 0x10b8e
incl %r13d
movq 0x8(%r14,%r15,8), %rdi
callq 0xd590
movl %eax, 0x33235(%rip)     # 0x43d40
jmp 0x10e82
cmpb $0x0, 0x2(%rbp)
jne 0x10b8e
cmpl %r12d, %r13d
je 0x10b8e
incl %r13d
movq 0x8(%r14,%r15,8), %rdi
xorl %esi, %esi
movl $0xa, %edx
callq 0xd340
movq %rax, 0x3321a(%rip)     # 0x43d50
jmp 0x10e82
cmpb $0x0, 0x2(%rbp)
jne 0x10b8e
cmpl %r12d, %r13d
je 0x10b8e
incl %r13d
movq 0x8(%r14,%r15,8), %rax
movq %rax, 0x331f3(%rip)     # 0x43d48
jmp 0x10e82
cmpb $0x0, 0x2(%rbp)
jne 0x10b8e
movl $0x1, 0x33252(%rip)     # 0x43dbc
jmp 0x10e82
cmpb $0x0, 0x2(%rbp)
jne 0x10b8e
cmpl %r12d, %r13d
je 0x10b8e
incl %r13d
movq 0x8(%r14,%r15,8), %rax
movq %rax, 0x33237(%rip)     # 0x43dc0
jmp 0x10e82
movq %rbp, %rdi
leaq 0x22167(%rip), %rsi     # 0x32cff
callq 0xd330
testl %eax, %eax
je 0x10d72
movq %rbp, %rdi
leaq 0x22156(%rip), %rsi     # 0x32d05
callq 0xd330
testl %eax, %eax
je 0x10d81
movq %rbp, %rdi
leaq 0x22145(%rip), %rsi     # 0x32d0b
callq 0xd330
testl %eax, %eax
je 0x10d90
movq %rbp, %rdi
leaq 0x22138(%rip), %rsi     # 0x32d15
callq 0xd330
testl %eax, %eax
je 0x10d9f
movq %rbp, %rdi
leaq 0x22133(%rip), %rsi     # 0x32d27
callq 0xd330
testl %eax, %eax
je 0x10db5
movq %rbp, %rdi
leaq 0x22124(%rip), %rsi     # 0x32d2f
callq 0xd330
testl %eax, %eax
je 0x10dc4
movq %rbp, %rdi
leaq 0x22114(%rip), %rsi     # 0x32d36
callq 0xd330
testl %eax, %eax
je 0x10dd3
cmpl %r12d, %r13d
sete 0x8(%rsp)
movq %rbp, %rdi
leaq 0x220fc(%rip), %rsi     # 0x32d3d
callq 0xd330
testl %eax, %eax
setne %al
orb 0x8(%rsp), %al
je 0x10de2
cmpl %r12d, %r13d
sete 0x8(%rsp)
movq %rbp, %rdi
leaq 0x220e0(%rip), %rsi     # 0x32d47
callq 0xd330
testl %eax, %eax
setne %al
orb 0x8(%rsp), %al
je 0x10df6
cmpl %r12d, %r13d
sete 0x8(%rsp)
movq %rbp, %rdi
leaq 0x220ce(%rip), %rsi     # 0x32d5b
callq 0xd330
testl %eax, %eax
setne %al
orb 0x8(%rsp), %al
je 0x10e15
movq %rbp, %rdi
leaq 0x220b6(%rip), %rsi     # 0x32d61
callq 0xd330
testl %eax, %eax
je 0x10e30
cmpl %r12d, %r13d
sete 0x8(%rsp)
movq %rbp, %rdi
leaq 0x2209e(%rip), %rsi     # 0x32d68
callq 0xd330
testl %eax, %eax
setne %al
orb 0x8(%rsp), %al
je 0x10e3c
movq %rbp, %rdi
leaq 0x2208f(%rip), %rsi     # 0x32d77
callq 0xd330
testl %eax, %eax
je 0x10e51
cmpl %r12d, %r13d
sete 0x8(%rsp)
movq %rbp, %rdi
leaq 0x2207a(%rip), %rsi     # 0x32d81
callq 0xd330
testl %eax, %eax
setne %al
orb 0x8(%rsp), %al
je 0x10e5d
cmpb $0x2d, %bl
jne 0x11558
movzbl 0x1(%rbp), %eax
cmpl $0x63, %eax
je 0x10e6e
cmpl $0x64, %eax
jne 0x129c0
cmpb $0x0, 0x2(%rbp)
jne 0x129cb
cmpl %r12d, %r13d
je 0x129cb
movq 0x3307c(%rip), %rdi     # 0x43dd0
callq 0xed21
incl %r13d
movq 0x8(%r14,%r15,8), %rdi
callq 0xec9a
movq %rax, 0x33063(%rip)     # 0x43dd0
jmp 0x10e82
movl $0x1, 0x3304c(%rip)     # 0x43dc8
jmp 0x10e82
movl $0x2, 0x3303d(%rip)     # 0x43dc8
jmp 0x10e82
movl $0x1, 0x32fda(%rip)     # 0x43d74
jmp 0x10e82
movabsq $0x100000001, %rax      # imm = 0x100000001
movq %rax, 0x32fc4(%rip)     # 0x43d74
jmp 0x10e82
movl $0x1, 0x32fc5(%rip)     # 0x43d84
jmp 0x10e82
movl $0x1, 0x32fc6(%rip)     # 0x43d94
jmp 0x10e82
movl $0x1, 0x32fbb(%rip)     # 0x43d98
jmp 0x10e82
incl %r13d
movq 0x8(%r14,%r15,8), %rax
movq %rax, 0x32fb7(%rip)     # 0x43da8
jmp 0x10e82
movl $0x1, 0x32f9c(%rip)     # 0x43d9c
incl %r13d
movq 0x8(%r14,%r15,8), %rdi
callq 0xd590
movl %eax, 0x32f8d(%rip)     # 0x43da0
jmp 0x10e82
movl $0x1, 0x32f71(%rip)     # 0x43d90
incl %r13d
movq 0x8(%r14,%r15,8), %rax
movq %rax, 0x32f82(%rip)     # 0x43db0
jmp 0x10e82
movl $0x1, 0x32f4e(%rip)     # 0x43d88
jmp 0x10e82
incl %r13d
movq 0x8(%r14,%r15,8), %rdi
callq 0xd590
movl %eax, 0x32f3d(%rip)     # 0x43d8c
jmp 0x10e82
movl $0x1, 0x32f5d(%rip)     # 0x43db8
jmp 0x10e82
incl %r13d
movq 0x8(%r14,%r15,8), %rax
movq %rax, 0x32fec(%rip)     # 0x43e58
jmp 0x10e82
cmpb $0x0, 0x2(%rbp)
jne 0x129cb
movl $0x1, 0x32efa(%rip)     # 0x43d7c
incl %r13d
movq 0x10(%rsp), %rbp
cmpl %ebp, %r13d
jl 0x109d9
cmpl $0x0, 0x32eda(%rip)     # 0x43d74
jne 0x1158d
cmpl $0x0, 0x32edd(%rip)     # 0x43d84
jne 0x1115b
cmpl $0x0, 0x32edc(%rip)     # 0x43d90
jne 0x118dc
cmpl $0x0, 0x32ec7(%rip)     # 0x43d88
jne 0x11175
cmpl $0x0, 0x32eea(%rip)     # 0x43db8
jne 0x118f9
cmpl $0x0, 0x32eb9(%rip)     # 0x43d94
jne 0x120b7
cmpl $0x0, 0x32eb0(%rip)     # 0x43d98
jne 0x123e0
cmpl $0x0, 0x32ea7(%rip)     # 0x43d9c
jne 0x124aa
movq 0x32f56(%rip), %rbx     # 0x43e58
xorl %edi, %edi
callq 0x12a6e
cmpl %r13d, %ebp
jne 0x10f17
testq %rbx, %rbx
je 0x12591
testl %eax, %eax
jne 0x12973
subl %r13d, %ebp
movslq %r13d, %rax
leaq (%r14,%rax,8), %r13
cmpq $0x0, 0x32f27(%rip)     # 0x43e58
je 0x1105a
callq 0xec72
movq %rax, %r15
movq 0x32f12(%rip), %rdi     # 0x43e58
leaq 0x231cc(%rip), %rsi     # 0x34119
callq 0xd370
testq %rax, %rax
je 0x125f8
movq %rax, %r14
leaq 0x1c0(%rsp), %rdi
movl $0x1, %esi
movl $0x400, %edx            # imm = 0x400
movq %rax, %rcx
callq 0xd0f0
testq %rax, %rax
movq %r13, 0x10(%rsp)
je 0x10fb5
leaq 0x1c0(%rsp), %r12
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xee9d
movq %rax, %r15
movl $0x1, %esi
movl $0x400, %edx            # imm = 0x400
movq %r12, %rdi
movq %r14, %rcx
callq 0xd0f0
testq %rax, %rax
jne 0x10f8a
movq %r14, %rdi
callq 0xd190
leal 0x3(%rbp), %eax
movl %eax, 0x30(%rsp)
movslq %ebp, %rbx
leaq 0x18(,%rbx,8), %rdi
callq 0x13979
movq %rax, %r14
leaq 0x1fa2d(%rip), %rdi     # 0x30a0b
callq 0xec9a
movq %rax, (%r14)
movq %r14, 0x8(%rsp)
movq %r15, 0x8(%r14)
testl %ebx, %ebx
jle 0x110fe
movl %ebp, %r15d
xorl %r12d, %r12d
xorl %ebx, %ebx
xorl %ebp, %ebp
movq 0x10(%rsp), %rax
movq (%rax,%r12,8), %rdi
testl %ebp, %ebp
jne 0x11019
cmpb $0x2c, (%rdi)
jne 0x11019
cmpb $0x0, 0x1(%rdi)
je 0x11052
xorl %r14d, %r14d
xorl %r13d, %r13d
testl %ebp, %ebp
sete %r14b
setne %r13b
callq 0xec9a
movl %r12d, %ecx
subl %ebp, %ecx
addl $0x3, %ecx
movq 0x8(%rsp), %rdx
movq %rax, (%rdx,%rcx,8)
addl %r14d, %ebx
incq %r12
movl %r13d, %ebp
cmpq %r12, %r15
jne 0x11001
jmp 0x11103
movl $0x1, %r13d
jmp 0x11042
movslq %ebp, %rbx
leaq (,%rbx,8), %rdi
callq 0x13979
movq %rax, %r14
testl %ebp, %ebp
jle 0x1108d
movl %ebp, %r15d
xorl %r12d, %r12d
movq (%r13,%r12,8), %rdi
callq 0xec9a
movq %rax, (%r14,%r12,8)
incq %r12
cmpq %r12, %r15
jne 0x11077
cmpl $0x0, 0x32d28(%rip)     # 0x43dbc
je 0x11139
incl %ebp
leaq 0x8(,%rbx,8), %rsi
movq %r14, %rdi
callq 0x13a25
movq %rax, %r14
callq 0xec72
movq %rax, %r12
movq 0x30eea(%rip), %r13     # 0x41fa8
leaq 0x1c0(%rsp), %r15
movq (%r13), %rdi
callq 0xd3b0
movl $0x400, %edx            # imm = 0x400
movl %eax, %edi
movq %r15, %rsi
callq 0xd2b0
testl %eax, %eax
je 0x11135
cmpl $-0x1, %eax
je 0x11588
movslq %eax, %rdx
movq %r12, %rdi
movq %r15, %rsi
callq 0xee9d
movq %rax, %r12
jmp 0x110c6
xorl %r13d, %r13d
xorl %ebx, %ebx
movl 0x30(%rsp), %ebp
subl %r13d, %ebp
callq 0xec72
leaq 0x2271b(%rip), %rsi     # 0x33831
movq %rax, %rdi
movl %ebx, %edx
xorl %eax, %eax
callq 0xf272
movq 0x8(%rsp), %rsi
movq %rax, 0x10(%rsi)
movl 0x32c1f(%rip), %edx     # 0x43d50
movl %ebp, %edi
jmp 0x11144
movq %r12, (%r14,%rbx,8)
movl 0x32c11(%rip), %edx     # 0x43d50
movl %ebp, %edi
movq %r14, %rsi
callq 0x134ce
addq $0x81c8, %rsp           # imm = 0x81C8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorl %edi, %edi
callq 0x12a6e
cmpl $-0x1, %eax
je 0x12973
callq 0xd700
jmp 0x10ead
xorl %edi, %edi
callq 0x12a6e
cmpl $-0x1, %eax
je 0x12973
movq 0x32ce4(%rip), %rax     # 0x43e70
movl 0x84(%rax), %ebp
callq 0x1499d
movq %rax, %rbx
xorl %edi, %edi
callq 0xd3a0
movq %rax, 0x8(%rsp)
xorl %edi, %edi
callq 0xd3a0
movl %eax, %edi
callq 0xd2c0
leaq 0xc0(%rsp), %rdi
movl %ebp, %esi
callq 0xdefc
cmpl $-0x1, %eax
je 0x125eb
movq $0x0, 0x28(%rsp)
xorl %r15d, %r15d
xorl %r13d, %r13d
xorl %r14d, %r14d
xorl %r12d, %r12d
movl %ebp, 0x10(%rsp)
movq %rbx, 0x20(%rsp)
testl %r13d, %r13d
sete %al
testq %r14, %r14
setne %cl
orb %al, %cl
movzbl %cl, %eax
leal 0x1(,%rax,2), %esi
movl $0x3e8, %edx            # imm = 0x3E8
movl %ebp, %edi
callq 0x14863
movb $0x1, %cl
testb $0x1, %al
je 0x11358
movl %eax, 0x40(%rsp)
movl $0x4000, %edx           # imm = 0x4000
movl %ebp, %edi
leaq 0x1c0(%rsp), %rsi
callq 0xd2b0
cmpq $-0x1, %rax
je 0x1126b
testq %rax, %rax
jle 0x11280
movq %rbx, %rdi
leaq 0x1c0(%rsp), %rbp
movq %rbp, %rsi
movq %rax, %rdx
callq 0x14a3b
xorl %edi, %edi
callq 0xd3a0
movq %rax, 0x8(%rsp)
movl $0x4000, %edx           # imm = 0x4000
movl 0x10(%rsp), %edi
movq %rbp, %rsi
jmp 0x1122b
callq 0xd0a0
movl (%rax), %edi
cmpl $0x4, %edi
je 0x11280
cmpl $0xb, %edi
jne 0x11583
movl $0x0, 0x30(%rsp)
movl 0x10(%rsp), %ebp
movq %rbx, %rdi
leaq 0x70(%rsp), %rsi
callq 0x14b1b
cmpl $-0x1, %eax
je 0x1154e
movq 0x70(%rsp), %rax
testq %rax, %rax
je 0x1134c
movl (%rax), %ecx
cmpl $0x6, %ecx
je 0x11312
testl %r13d, %r13d
sete %dl
cmpl $0x1, %ecx
setne %cl
orb %dl, %cl
jne 0x11333
cmpl $0x14, 0x10(%rax)
jne 0x11333
movq 0x18(%rax), %rax
movdqu (%rax), %xmm0
movd 0x10(%rax), %xmm1
movd 0x60(%rsp), %xmm2
pcmpeqb 0x50(%rsp), %xmm0
pcmpeqb %xmm1, %xmm2
pand %xmm2, %xmm0
pmovmskb %xmm0, %eax
cmpl $0xffff, %eax           # imm = 0xFFFF
jne 0x11333
leaq 0x22ff5(%rip), %rdi     # 0x342f5
callq 0xd0d0
decq %r15
movl $0x1, 0x30(%rsp)
jmp 0x11333
movq 0x30cd7(%rip), %rcx     # 0x41ff0
movq (%rcx), %rdi
movq 0x18(%rax), %rdx
leaq 0x2267b(%rip), %rsi     # 0x339a2
xorl %eax, %eax
callq 0xd350
incq 0x28(%rsp)
incq %r15
movq 0x70(%rsp), %rdi
callq 0x1492c
cmpq $0x0, 0x70(%rsp)
jne 0x1128c
cmpl $0x0, 0x30(%rsp)
sete %cl
movl 0x40(%rsp), %eax
testb $0x2, %al
jne 0x11363
movl %ebp, %ebx
jmp 0x114c0
movb %cl, 0x30(%rsp)
testq %r14, %r14
je 0x113b0
leaq (%rsp,%r12), %rsi
addq $0x41c0, %rsi           # imm = 0x41C0
movl %ebp, %edi
movq %r14, %rdx
callq 0xd160
cmpq $-0x1, %rax
jne 0x113a4
callq 0xd0a0
movl (%rax), %edi
cmpl $0x4, %edi
je 0x113a2
movl $0x0, %eax
cmpl $0xb, %edi
je 0x113a4
jmp 0x11579
xorl %eax, %eax
addq %rax, %r12
subq %rax, %r14
jne 0x114ba
testl %r13d, %r13d
je 0x113bd
xorl %r14d, %r14d
jmp 0x11496
xorl %r13d, %r13d
movl $0x4000, %edx           # imm = 0x4000
xorl %edi, %edi
leaq 0x41c0(%rsp), %rsi
callq 0xd2b0
testq %rax, %rax
je 0x113eb
movq %rax, %r14
cmpq $-0x1, %rax
jne 0x11493
jmp 0x11553
movups 0x2316a(%rip), %xmm0    # 0x3455c
movups %xmm0, 0x9c(%rsp)
movaps 0x2314f(%rip), %xmm0    # 0x34550
movaps %xmm0, 0x90(%rsp)
movapd 0x2312f(%rip), %xmm0    # 0x34540
movapd %xmm0, 0x80(%rsp)
xorl %r14d, %r14d
callq 0xd680
movb %al, 0x50(%rsp,%r14)
incq %r14
cmpq $0x14, %r14
jne 0x1141d
movl 0x60(%rsp), %eax
leaq 0x95(%rsp), %rcx
movl %eax, 0x10(%rcx)
movaps 0x50(%rsp), %xmm0
movups %xmm0, (%rcx)
movaps 0x80(%rsp), %xmm0
movdqa 0x90(%rsp), %xmm1
movaps %xmm0, 0x41c0(%rsp)
movdqa %xmm1, 0x41d0(%rsp)
movdqu 0x9b(%rsp), %xmm0
movdqu %xmm0, 0x41db(%rsp)
leaq 0x22e94(%rip), %rdi     # 0x34316
callq 0xd0d0
movl $0x1, %r13d
movl $0x2b, %r14d
xorl %r12d, %r12d
testq %r14, %r14
sete %al
testl %r13d, %r13d
setne %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x11367
movl %ebp, %ebx
movl $0x1, %r13d
xorl %r14d, %r14d
jmp 0x114bc
movl %ebp, %ebx
movb 0x30(%rsp), %cl
testl %r13d, %r13d
je 0x114ea
cmpl $0x0, 0x328c0(%rip)     # 0x43d8c
jle 0x114ea
xorl %edi, %edi
movl %ecx, %ebp
callq 0xd3a0
movl %ebp, %ecx
subq 0x8(%rsp), %rax
movslq 0x328a7(%rip), %rdx     # 0x43d8c
cmpq %rdx, %rax
jg 0x114fb
testb %cl, %cl
movl %ebx, %ebp
movq 0x20(%rsp), %rbx
jne 0x111ea
jmp 0x1151d
movq 0x30aee(%rip), %rax     # 0x41ff0
movq (%rax), %rdi
leaq 0x22646(%rip), %rsi     # 0x33b52
xorl %eax, %eax
callq 0xd350
incq 0x28(%rsp)
movq 0x20(%rsp), %rbx
movq %rbx, %rdi
callq 0x149fa
leaq 0x2264b(%rip), %rdi     # 0x33b77
movq 0x28(%rsp), %rbx
movq %rbx, %rsi
movq %r15, %rdx
xorl %eax, %eax
callq 0xd1d0
testq %rbx, %rbx
jne 0x12973
xorl %edi, %edi
callq 0xd5d0
callq 0xd9b0
callq 0xda2d
leaq 0x21829(%rip), %rsi     # 0x32d88
movq %rbp, %rdi
callq 0xd330
testl %eax, %eax
movq 0x10(%rsp), %rbp
jne 0x10e93
jmp 0x129de
callq 0xda01
callq 0x12b48
callq 0xd9d5
callq 0xdce7
xorl %edi, %edi
callq 0x12a6e
cmpl $-0x1, %eax
je 0x12973
movq 0x327b4(%rip), %rcx     # 0x43d58
movabsq $0x20c49ba5e353f7cf, %r14 # imm = 0x20C49BA5E353F7CF
movq %rcx, %rax
imulq %r14
movq %rdx, %rax
shrq $0x3f, %rax
sarq $0x7, %rdx
addq %rax, %rdx
testq %rcx, %rcx
movl $0x3a98, %eax           # imm = 0x3A98
cmovneq %rdx, %rax
movq %rax, 0x28(%rsp)
leaq 0x1c0(%rsp), %rbx
movq %rbx, %rdi
xorl %esi, %esi
callq 0xd210
imulq $0xf4240, (%rbx), %rax  # imm = 0xF4240
addq 0x8(%rbx), %rax
imulq %r14
cmpq $0x0, 0x32875(%rip)     # 0x43e70
je 0x12973
movq %rdx, %r13
leaq 0x1c0(%rsp), %rbx
movq %rbx, %rdi
xorl %esi, %esi
callq 0xd210
movq (%rbx), %rax
movq %rax, 0x8(%rsp)
movq 0x8(%rbx), %r15
movq 0x32847(%rip), %rdi     # 0x43e70
leaq 0x20147(%rip), %rsi     # 0x31777
xorl %eax, %eax
callq 0x160f7
testq %rax, %rax
je 0x118b7
movq %rax, %r12
movq %r13, %rax
shrq $0x3f, %rax
sarq $0x7, %r13
addq %rax, %r13
movq %r13, 0x30(%rsp)
leaq 0x1c0(%rsp), %r14
movq $0x0, 0x20(%rsp)
movq $0x0, 0x10(%rsp)
movq $0x0, 0x40(%rsp)
xorl %r13d, %r13d
movq 0x10(%rsp), %rbx
imulq $0xf4240, 0x8(%rsp), %rax # imm = 0xF4240
addq %r15, %rax
movabsq $-0x20c49ba5e353f7cf, %rcx # imm = 0xDF3B645A1CAC0831
imulq %rcx
movq %rdx, %r15
movq %rdx, %rax
shrq $0x3f, %rax
sarq $0x7, %r15
addq %rax, %r15
movq %r14, %rdi
xorl %esi, %esi
callq 0xd210
imulq $0xf4240, 0x1c0(%rsp), %rax # imm = 0xF4240
addq 0x1c8(%rsp), %rax
movabsq $0x20c49ba5e353f7cf, %r14 # imm = 0x20C49BA5E353F7CF
imulq %r14
movq %rdx, %rbp
movq %rdx, %rax
shrq $0x3f, %rax
sarq $0x7, %rbp
addq %rax, %rbp
addq %r15, %rbp
movq %r12, %rdi
callq 0x1492c
leaq 0x1(%rbx), %rcx
testq %rbx, %rbx
je 0x11729
movq 0x20(%rsp), %rsi
cmpq %rsi, %rbp
cmovlq %rbp, %rsi
cmpq %r13, %rbp
cmovgq %rbp, %r13
movq 0x40(%rsp), %r12
addq %rbp, %r12
cvtsi2sd %r12, %xmm0
cvtsi2sd %rcx, %xmm1
divsd %xmm1, %xmm0
movq %r13, %rbp
jmp 0x11737
xorps %xmm0, %xmm0
cvtsi2sd %rbp, %xmm0
movq %rbp, %r12
movq %rbp, %rsi
movq 0x30(%rsp), %rbx
leaq 0x220fd(%rip), %rdi     # 0x33840
movq %rsi, 0x20(%rsp)
movq %rbp, %rdx
movq %rcx, 0x10(%rsp)
movb $0x1, %al
callq 0xd1d0
movq 0x30842(%rip), %rax     # 0x41fa0
movq (%rax), %rdi
callq 0xd400
cmpl $0x0, 0x3260b(%rip)     # 0x43d78
leaq 0x1c0(%rsp), %r15
je 0x1185d
movq %r15, %rdi
xorl %esi, %esi
callq 0xd210
imulq $0xf4240, 0x1c0(%rsp), %rax # imm = 0xF4240
addq 0x1c8(%rsp), %rax
imulq %r14
movq %rdx, %rax
shrq $0x3f, %rax
sarq $0x7, %rdx
addq %rax, %rdx
subq %rbx, %rdx
cmpq 0x28(%rsp), %rdx
jle 0x1185d
movq %r15, %rdi
xorl %esi, %esi
callq 0xd210
imulq $0xf4240, 0x1c0(%rsp), %rax # imm = 0xF4240
addq 0x1c8(%rsp), %rax
imulq %r14
movq %rdx, %rax
shrq $0x3f, %rax
sarq $0x7, %rdx
addq %rax, %rdx
subq %rbx, %rdx
xorps %xmm0, %xmm0
cvtsi2ss %rdx, %xmm0
divss 0x1eac6(%rip), %xmm0    # 0x302c0
cvtss2sd %xmm0, %xmm0
leaq 0x22072(%rip), %rdi     # 0x33877
movb $0x1, %al
callq 0xd1d0
movq %r15, %rdi
xorl %esi, %esi
callq 0xd210
imulq $0xf4240, 0x1c0(%rsp), %rax # imm = 0xF4240
addq 0x1c8(%rsp), %rax
imulq %r14
movq %rdx, %rbx
movq %rdx, %rax
shrq $0x3f, %rax
sarq $0x7, %rbx
addq %rax, %rbx
xorl %ebp, %ebp
movq $0x0, 0x40(%rsp)
movq $0x0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
jmp 0x11862
movq %r12, 0x40(%rsp)
movq %rbx, 0x30(%rsp)
movl $0x2710, %edi           # imm = 0x2710
callq 0xd6c0
movq %r15, %rdi
xorl %esi, %esi
callq 0xd210
movq 0x1c0(%rsp), %rax
movq %rax, 0x8(%rsp)
movq %r15, %r14
movq 0x1c8(%rsp), %r15
movq 0x325d6(%rip), %rdi     # 0x43e70
leaq 0x1fed6(%rip), %rsi     # 0x31777
xorl %eax, %eax
callq 0x160f7
movq %rax, %r12
movq %rbp, %r13
testq %rax, %rax
jne 0x1167c
movq 0x30732(%rip), %rax     # 0x41ff0
movq (%rax), %rcx
leaq 0x21f6c(%rip), %rdi     # 0x33834
movl $0xb, %esi
movl $0x1, %edx
callq 0xd5f0
jmp 0x12973
xorl %edi, %edi
callq 0x12a6e
cmpl $-0x1, %eax
je 0x12973
leaq 0x1c0(%rsp), %rdi
callq 0xd847
xorl %edi, %edi
callq 0x12a6e
cmpl $-0x1, %eax
je 0x12973
xorpd %xmm0, %xmm0
movapd %xmm0, 0x1d0(%rsp)
movapd %xmm0, 0x1c0(%rsp)
xorl %eax, %eax
movq %rax, 0x1e0(%rsp)
movq %rax, 0x41e0(%rsp)
movapd %xmm0, 0x41d0(%rsp)
movapd %xmm0, 0x41c0(%rsp)
movq %rax, 0xe0(%rsp)
movapd %xmm0, 0xd0(%rsp)
movapd %xmm0, 0xc0(%rsp)
movq %rax, 0xa0(%rsp)
movapd %xmm0, 0x90(%rsp)
movapd %xmm0, 0x80(%rsp)
movq 0x324f2(%rip), %rdi     # 0x43e70
leaq 0x1eed2(%rip), %rsi     # 0x30857
xorl %eax, %eax
callq 0x160f7
testq %rax, %rax
je 0x125fd
cmpl $0x3, (%rax)
jne 0x125fd
movslq 0x8(%rax), %rbx
movq %rax, %rdi
callq 0x1492c
leaq 0x22999(%rip), %rdi     # 0x3434a
callq 0xd0d0
leaq 0x229cd(%rip), %rdi     # 0x3438a
callq 0xd0d0
leaq 0x22a04(%rip), %rdi     # 0x343cd
callq 0xd0d0
xorl %r14d, %r14d
callq 0xec72
movq %rax, 0x80(%rsp,%r14,8)
testq %rax, %rax
je 0x1297d
incq %r14
cmpq $0x5, %r14
jne 0x119d1
movq %rbx, %xmm0
punpckldq 0x1e8a3(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1e8ab(%rip), %xmm0    # 0x302b0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd %xmm1, 0xb0(%rsp)
leaq 0x22421(%rip), %rbp     # 0x33e42
xorl %ebx, %ebx
xorl %r15d, %r15d
movq $0x0, 0x28(%rsp)
xorl %r14d, %r14d
movl $0x0, 0x4c(%rsp)
xorl %r13d, %r13d
movq %r13, %xmm0
punpckldq 0x1e856(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1e85e(%rip), %xmm0    # 0x302b0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
mulsd 0x1e802(%rip), %xmm1    # 0x30268
movapd %xmm1, 0x30(%rsp)
movq 0x323fd(%rip), %rdi     # 0x43e70
leaq 0x222db(%rip), %rsi     # 0x33d55
movq %rbx, %rdx
xorl %eax, %eax
callq 0x160f7
testq %rax, %rax
je 0x12a17
movl (%rax), %ecx
cmpl $0x2, %ecx
jne 0x129af
cmpq $0x2, 0x20(%rax)
jne 0x12a1c
movq 0x28(%rax), %rcx
movq (%rcx), %rdx
cmpl $0x1, (%rdx)
jne 0x12a21
movq %rax, 0x20(%rsp)
movq 0x8(%rcx), %rbx
cmpl $0x2, (%rbx)
jne 0x12a40
movq 0x18(%rdx), %rdi
callq 0xd590
movl %eax, 0x40(%rsp)
movq 0x20(%rbx), %rsi
movslq 0x4c(%rsp), %rax
cmpq %rax, %rsi
jbe 0x11b1c
shlq $0x2, %rsi
movq %r14, %rdi
callq 0x13a25
movq %rax, %r14
movq 0x20(%rbx), %rsi
shlq $0x3, %rsi
movq %r15, %rdi
callq 0x13a25
testq %r14, %r14
je 0x12a69
movq %rax, %r15
testq %rax, %rax
je 0x12a69
movq 0x20(%rbx), %rsi
movl %esi, 0x4c(%rsp)
movq %r15, 0x8(%rsp)
testq %rsi, %rsi
je 0x11e93
movapd 0x30(%rsp), %xmm0
divsd 0xb0(%rsp), %xmm0
movapd %xmm0, 0x30(%rsp)
leaq 0x28(%rbx), %rax
movq %rax, 0x10(%rsp)
xorl %r15d, %r15d
movq 0x3231e(%rip), %rdi     # 0x43e70
movq 0x28(%rbx), %rax
movq (%rax,%r15,8), %rax
movq 0x18(%rax), %rdx
movq %rbp, %rsi
xorl %eax, %eax
callq 0x15f94
incq %r15
movq 0x20(%rbx), %rax
cmpq %r15, %rax
ja 0x11b4b
testq %rax, %rax
je 0x11e93
movq %r13, 0x78(%rsp)
xorl %r13d, %r13d
movq 0x322e4(%rip), %rdi     # 0x43e70
leaq 0x50(%rsp), %rsi
callq 0x15df3
testl %eax, %eax
jne 0x12982
movq 0x50(%rsp), %rbp
movl (%rbp), %edx
cmpl $0x5, %edx
jne 0x1298f
movq 0x10(%rsp), %rax
movq (%rax), %rax
movq (%rax,%r13,8), %rax
movq 0x18(%rax), %r12
movq 0x18(%rbp), %r15
movq %r15, %rdi
leaq 0x1e90a(%rip), %rsi     # 0x304d7
callq 0xd330
testl %eax, %eax
je 0x11c3f
movq %r15, %rdi
leaq 0x1f602(%rip), %rsi     # 0x311e2
callq 0xd330
testl %eax, %eax
je 0x11c43
movq %r15, %rdi
leaq 0x20467(%rip), %rsi     # 0x3205a
callq 0xd330
testl %eax, %eax
je 0x11c4a
movq %r15, %rdi
leaq 0x1f214(%rip), %rsi     # 0x30e1a
callq 0xd330
testl %eax, %eax
je 0x11c51
movq %r15, %rdi
leaq 0x21f7b(%rip), %rsi     # 0x33b94
callq 0xd330
testl %eax, %eax
je 0x11c58
movq %r15, %rdi
leaq 0x22277(%rip), %rsi     # 0x33ea3
callq 0xd330
movl $0x5, %ecx
testl %eax, %eax
je 0x11c5d
jmp 0x12a0c
xorl %ecx, %ecx
jmp 0x11c5d
movl $0x1, %ecx
jmp 0x11c5d
movl $0x2, %ecx
jmp 0x11c5d
movl $0x3, %ecx
jmp 0x11c5d
movl $0x4, %ecx
movl %ecx, (%r14,%r13,4)
movq %rbp, %rdi
callq 0x1492c
incq %r13
movq 0x20(%rbx), %rax
cmpq %r13, %rax
ja 0x11b85
testq %rax, %rax
movq 0x78(%rsp), %r13
leaq 0x221ba(%rip), %rbp     # 0x33e42
je 0x11e93
xorl %r15d, %r15d
movslq (%r14,%r15,4), %rcx
cmpq $0x5, %rcx
je 0x11ccb
movq 0x321ce(%rip), %rdi     # 0x43e70
leaq 0x2eb77(%rip), %rax     # 0x40820
movq (%rax,%rcx,8), %rdx
movq 0x28(%rbx), %rax
movq (%rax,%r15,8), %rax
movq 0x18(%rax), %rcx
leaq 0x22208(%rip), %rsi     # 0x33ec8
xorl %eax, %eax
callq 0x15f94
movq 0x20(%rbx), %rax
incq %r15
cmpq %r15, %rax
ja 0x11c91
testq %rax, %rax
je 0x11e93
xorl %r13d, %r13d
movq 0x8(%rsp), %r15
cmpl $0x5, (%r14,%r13,4)
jne 0x11cf5
movq $0x0, (%r15,%r13,8)
jmp 0x11d29
movq 0x32174(%rip), %rdi     # 0x43e70
leaq 0x50(%rsp), %rsi
callq 0x15df3
testl %eax, %eax
jne 0x129a2
movq 0x50(%rsp), %rdi
cmpl $0x3, (%rdi)
jne 0x11d33
movq 0x8(%rdi), %rax
movq %rax, (%r15,%r13,8)
callq 0x1492c
movq 0x20(%rbx), %rax
incq %r13
cmpq %r13, %rax
ja 0x11ce4
jmp 0x11d73
movq 0x302b6(%rip), %rax     # 0x41ff0
movq (%rax), %rdi
movslq (%r14,%r13,4), %rax
leaq 0x2ead8(%rip), %rcx     # 0x40820
movq (%rcx,%rax,8), %rdx
movq 0x10(%rsp), %rax
movq (%rax), %rax
movq (%rax,%r13,8), %rax
movq 0x18(%rax), %rcx
leaq 0x22195(%rip), %rsi     # 0x33ef8
xorl %eax, %eax
callq 0xd350
movq 0x50(%rsp), %rdi
xorl %eax, %eax
jmp 0x11d1c
testq %rax, %rax
movq 0x78(%rsp), %r13
je 0x11e93
xorl %r15d, %r15d
movslq (%r14,%r15,4), %r12
cmpq $0x5, %r12
je 0x11e86
movq %r13, %rbp
movq 0x8(%rsp), %rcx
movq (%rcx,%r15,8), %rax
addq %rax, 0xc0(%rsp,%r12,8)
incq 0x41c0(%rsp,%r12,8)
movq 0x10(%rsp), %rax
movq (%rax), %rax
movq (%rax,%r15,8), %rax
movslq 0x10(%rax), %r13
movq (%rcx,%r15,8), %rcx
cmpq %rcx, 0x1c0(%rsp,%r12,8)
jae 0x11e39
leaq 0x2e9ed(%rip), %rdx     # 0x407c0
movq (%rdx,%r12,8), %rsi
movq 0x18(%rax), %rdx
leaq 0x2ea0e(%rip), %rax     # 0x407f0
movq (%rax,%r12,8), %r8
leaq 0x21e17(%rip), %rdi     # 0x33c04
movapd 0x30(%rsp), %xmm0
movb $0x1, %al
callq 0xd1d0
movq 0x80(%rsp,%r12,8), %rdi
movq 0x10(%rsp), %rax
movq (%rax), %rax
movq (%rax,%r15,8), %rax
movq 0x18(%rax), %rsi
callq 0xf021
movq %rax, 0x80(%rsp,%r12,8)
testq %rax, %rax
je 0x12a64
movq 0x8(%rsp), %rax
movq (%rax,%r15,8), %rax
movq %rax, 0x1c0(%rsp,%r12,8)
addq %r13, 0x28(%rsp)
movq %rbp, %r13
incq %r13
movq %r13, %rax
movabsq $0x790fb65668c26139, %rcx # imm = 0x790FB65668C26139
imulq %rcx, %rax
rorq $0x6, %rax
movabsq $0x10c6f7a0b5ed, %rcx   # imm = 0x10C6F7A0B5ED
cmpq %rcx, %rax
ja 0x11e7f
leaq 0x21df1(%rip), %rdi     # 0x33c60
movapd 0x30(%rsp), %xmm0
movq %r13, %rsi
movb $0x1, %al
callq 0xd1d0
leaq 0x21fbc(%rip), %rbp     # 0x33e42
incq %r15
cmpq %r15, 0x20(%rbx)
ja 0x11d84
testq %r13, %r13
je 0x11ed6
movq %r13, %rax
movabsq $-0x70a3d70a3d70a3d7, %rcx # imm = 0x8F5C28F5C28F5C29
imulq %rcx, %rax
rorq $0x2, %rax
movabsq $0x28f5c28f5c28f5d, %rcx # imm = 0x28F5C28F5C28F5D
cmpq %rcx, %rax
setb %al
movq 0x31e94(%rip), %rdi     # 0x43d58
testq %rdi, %rdi
setne %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x11ed6
callq 0xd6c0
movslq 0x40(%rsp), %rbx
movq 0x20(%rsp), %rdi
callq 0x1492c
testl %ebx, %ebx
movq 0x8(%rsp), %r15
jne 0x11a3d
leaq 0x2e8c7(%rip), %rbp     # 0x407c0
testq %r14, %r14
je 0x11f06
movq %r14, %rdi
callq 0x13abb
cmpq $0x0, 0x8(%rsp)
je 0x11f18
movq 0x8(%rsp), %rdi
callq 0x13abb
leaq 0x224dd(%rip), %rdi     # 0x343fc
callq 0xd0d0
leaq 0x21d5a(%rip), %rdi     # 0x33c85
xorl %r14d, %r14d
movq %r13, %rsi
xorl %eax, %eax
callq 0xd1d0
movq %r13, %xmm0
punpckldq 0x1e35b(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1e363(%rip), %xmm0    # 0x302b0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd %xmm1, 0x10(%rsp)
xorpd %xmm0, %xmm0
cmpq $0x0, 0x28(%rsp)
je 0x11f92
movsd 0x28(%rsp), %xmm1
unpcklps 0x1e328(%rip), %xmm1    # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x1e330(%rip), %xmm1    # 0x302b0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
divsd 0x10(%rsp), %xmm0
leaq 0x21d10(%rip), %rdi     # 0x33ca9
movq 0x28(%rsp), %rsi
movb $0x1, %al
callq 0xd1d0
leaq 0x21d30(%rip), %rbx     # 0x33cdc
movq %rbp, %r15
leaq 0x2e83a(%rip), %r12     # 0x407f0
movq 0x80(%rsp,%r14), %rdx
cmpl $0x0, -0x8(%rdx)
je 0x11fde
movq (%r14,%r15), %rsi
movq 0x1c0(%rsp,%r14), %rcx
movq (%r14,%r12), %r8
movq %rbx, %rdi
xorl %eax, %eax
callq 0xd1d0
addq $0x8, %r14
cmpq $0x28, %r14
jne 0x11fb6
movl $0xa, %edi
callq 0xd070
xorl %r14d, %r14d
leaq 0x21d04(%rip), %rbx     # 0x33d00
movq 0x41c0(%rsp,%r14), %rsi
movq %rsi, %xmm0
punpckldq 0x1e28f(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1e297(%rip), %xmm0    # 0x302b0
movapd %xmm0, %xmm2
unpckhpd %xmm0, %xmm2            # xmm2 = xmm2[1],xmm0[1]
addsd %xmm0, %xmm2
movapd %xmm2, %xmm3
mulsd 0x1e237(%rip), %xmm3    # 0x30268
xorpd %xmm1, %xmm1
xorpd %xmm0, %xmm0
testq %r13, %r13
je 0x12048
divsd 0x10(%rsp), %xmm3
movapd %xmm3, %xmm0
movq 0xc0(%rsp,%r14), %rcx
testq %rsi, %rsi
je 0x1207a
movq %rcx, %xmm3
punpckldq 0x1e23e(%rip), %xmm3 # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]
subpd 0x1e246(%rip), %xmm3    # 0x302b0
movapd %xmm3, %xmm1
unpckhpd %xmm3, %xmm1            # xmm1 = xmm1[1],xmm3[1]
addsd %xmm3, %xmm1
divsd %xmm2, %xmm1
movq (%r14,%r15), %rdx
movq (%r14,%r12), %r8
movq %rbx, %rdi
movb $0x2, %al
callq 0xd1d0
addq $0x8, %r14
cmpq $0x28, %r14
jne 0x11ffc
xorl %ebx, %ebx
movq 0x80(%rsp,%rbx,8), %rdi
callq 0xed21
incq %rbx
cmpq $0x5, %rbx
jne 0x1209c
jmp 0x11547
xorl %edi, %edi
callq 0x12a6e
cmpl $-0x1, %eax
je 0x12973
cmpq $0x0, 0x31c89(%rip)     # 0x43d58
jne 0x120dc
movq $0xf4240, 0x31c7c(%rip) # imm = 0xF4240
movq 0x31d8d(%rip), %r13     # 0x43e70
cmpl $0x0, (%r13)
jne 0x123c1
leaq 0x21e43(%rip), %r15     # 0x33f38
leaq 0x1c0(%rsp), %r12
leaq 0x21f27(%rip), %r14     # 0x3402b
movl $0x0, 0x10(%rsp)
movq $0x0, 0x8(%rsp)
xorl %ebx, %ebx
testb $0x3, (%r13)
je 0x1216a
movq 0x2fe7b(%rip), %rbp     # 0x41fa0
incl %ebx
movq %r14, %rdi
movl %ebx, %esi
xorl %eax, %eax
callq 0xd1d0
movq (%rbp), %rdi
callq 0xd400
movq %r13, %rdi
callq 0x15a09
movq 0x31bed(%rip), %rdi     # 0x43d38
movl 0x31bef(%rip), %esi     # 0x43d40
callq 0x15a47
movq %rax, %r13
movl $0xf4240, %edi          # imm = 0xF4240
callq 0xd6c0
testb $0x3, (%r13)
jne 0x12125
movq %r13, %rdi
leaq 0x1e63d(%rip), %rsi     # 0x307b1
xorl %eax, %eax
callq 0x160f7
movq %rax, %rbp
movl (%r13), %eax
testl %eax, %eax
sete %cl
testb $0x3, %al
setne %al
orb %cl, %al
je 0x1294b
testl %ebx, %ebx
jle 0x121a2
movl $0xa, %edi
callq 0xd070
testq %rbp, %rbp
je 0x12117
movq %r13, 0x31cbe(%rip)     # 0x43e70
cmpl $0x6, (%rbp)
je 0x1299c
movl 0x10(%rsp), %ebx
imull $0xcccccccd, %ebx, %eax # imm = 0xCCCCCCCD
rorl $0x2, %eax
cmpl $0xccccccc, %eax        # imm = 0xCCCCCCC
ja 0x121dc
leaq 0x22240(%rip), %rdi     # 0x34417
callq 0xd0d0
incl %ebx
movl %ebx, 0x10(%rsp)
xorl %ebx, %ebx
xorl %r13d, %r13d
movq %r12, %rdi
movq %r15, %rsi
movl %r13d, %edx
xorl %eax, %eax
callq 0xd5c0
movq 0x18(%rbp), %rdi
movq %r12, %rsi
callq 0x13302
movq %rax, %rcx
negq %rcx
jno 0x1220d
xorl %eax, %eax
addq %rax, %rbx
incl %r13d
cmpl $0x14, %r13d
jne 0x121e7
movq %r12, %rdi
leaq 0x21d1f(%rip), %r13     # 0x33f42
movq %r13, %rsi
movq %rbx, %rdx
xorl %eax, %eax
callq 0xd5c0
leaq 0x21d0f(%rip), %rdi     # 0x33f46
movq %r12, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%rbp), %rdi
leaq 0x21d00(%rip), %rsi     # 0x33f4c
callq 0x13302
movq %r12, %rdi
movq %rax, %rsi
callq 0x106a4
leaq 0x21d08(%rip), %rbx     # 0x33f6b
movq %rbx, %rdi
movq %r12, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%rbp), %rdi
leaq 0x21cdd(%rip), %rsi     # 0x33f58
callq 0x13302
movq %r12, %rdi
movq %r13, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd5c0
leaq 0x21cd3(%rip), %rdi     # 0x33f6a
movq %r12, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%rbp), %rdi
leaq 0x21cc4(%rip), %rsi     # 0x33f70
callq 0x13302
movq %r12, %rdi
movq %r13, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd5c0
movq %rbx, %rdi
movq %r12, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%rbp), %rdi
leaq 0x21ca7(%rip), %rsi     # 0x33f80
callq 0x13302
movq %rax, %rdx
movq %rax, %rcx
movq 0x8(%rsp), %rax
subq %rax, %rcx
testq %rax, %rax
cmoveq %rax, %rcx
movq %r12, %rdi
leaq 0x21c9c(%rip), %rsi     # 0x33f99
movq %rdx, 0x8(%rsp)
xorl %eax, %eax
callq 0xd5c0
leaq 0x21c94(%rip), %rdi     # 0x33fa4
movq %r12, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%rbp), %rdi
leaq 0x21c85(%rip), %rsi     # 0x33faa
callq 0x13302
movq %r12, %rdi
movq %r13, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd5c0
leaq 0x21c84(%rip), %rdi     # 0x33fc5
movq %r12, %rsi
xorl %eax, %eax
callq 0xd1d0
movq 0x18(%rbp), %rdi
leaq 0x21c76(%rip), %rsi     # 0x33fcc
callq 0x13302
movq %rax, %rbx
movq 0x18(%rbp), %rdi
leaq 0x21c76(%rip), %rsi     # 0x33fdf
callq 0x13302
addq %rax, %rax
orq %rbx, %rax
decq %rax
cmpq $0x2, %rax
ja 0x12392
leaq 0x1dfb4(%rip), %rcx     # 0x30338
movslq (%rcx,%rax,4), %rdi
addq %rcx, %rdi
xorl %eax, %eax
callq 0xd1d0
movl $0xa, %edi
callq 0xd070
movq %rbp, %rdi
callq 0x1492c
movl 0x319ae(%rip), %edi     # 0x43d58
callq 0xd6c0
movq 0x31aba(%rip), %r13     # 0x43e70
cmpl $0x0, (%r13)
je 0x12115
leaq 0x21c38(%rip), %rdi     # 0x34000
leaq 0x21a0f(%rip), %rsi     # 0x33dde
leaq 0x21c32(%rip), %rcx     # 0x34008
movl $0x298, %edx            # imm = 0x298
callq 0xd220
xorl %edi, %edi
callq 0x12a6e
cmpl $-0x1, %eax
je 0x12973
leaq 0x2195e(%rip), %rbx     # 0x33d55
leaq 0x21c43(%rip), %r14     # 0x34041
xorl %r12d, %r12d
movq 0x319a0(%rip), %rcx     # 0x43da8
movq 0x31a61(%rip), %rdi     # 0x43e70
testq %rcx, %rcx
je 0x12423
movq %r14, %rsi
movq %r12, %rdx
xorl %eax, %eax
callq 0x160f7
jmp 0x12430
movq %rbx, %rsi
movq %r12, %rdx
xorl %eax, %eax
callq 0x160f7
movq %rax, %r15
testq %rax, %rax
je 0x12953
cmpl $0x6, (%r15)
je 0x12961
movq 0x28(%r15), %rax
movq (%rax), %rax
movq 0x18(%rax), %rdi
xorl %esi, %esi
movl $0xa, %edx
callq 0xd310
movq %rax, %r12
movq 0x28(%r15), %rax
movq 0x8(%rax), %rax
cmpq $0x0, 0x20(%rax)
je 0x12494
xorl %r13d, %r13d
movq 0x28(%rax), %rax
movq (%rax,%r13,8), %rax
movq 0x18(%rax), %rdi
callq 0xd0d0
incq %r13
movq 0x28(%r15), %rax
movq 0x8(%rax), %rax
cmpq %r13, 0x20(%rax)
ja 0x12472
movq %r15, %rdi
callq 0x1492c
testq %r12, %r12
jne 0x12401
jmp 0x11547
movslq 0x318ef(%rip), %rax     # 0x43da0
imulq $0xf4240, %rax, %r15    # imm = 0xF4240
leaq 0x1c0(%rsp), %r14
movq %r14, %rdi
xorl %esi, %esi
callq 0xd210
imulq $0xf4240, (%r14), %rax  # imm = 0xF4240
movq 0x8(%r14), %rbx
movq %r15, 0x10(%rsp)
addq %r15, %rbx
addq %rax, %rbx
xorl %r15d, %r15d
xorl %ebp, %ebp
movq %r14, %rdi
xorl %esi, %esi
callq 0xd210
imulq $-0xf4240, 0x1c0(%rsp), %r13 # imm = 0xFFF0BDC0
subq 0x1c8(%rsp), %r13
callq 0x1072f
movq %r14, %rdi
xorl %esi, %esi
callq 0xd210
imulq $0xf4240, 0x1c0(%rsp), %r12 # imm = 0xF4240
addq 0x1c8(%rsp), %r12
addq %r12, %r13
incq %r15
testq %r13, %r13
jle 0x124e5
cmpq %rbp, %r13
jle 0x1254a
leaq 0x21b17(%rip), %rdi     # 0x34054
movq %r13, %rsi
xorl %eax, %eax
callq 0xd1d0
movq %r13, %rbp
cmpq %rbx, %r12
jle 0x124e5
movq 0x10(%rsp), %rax
cqto
idivq %r15
movq %rax, %rbx
leaq 0x21b19(%rip), %rdi     # 0x3407c
movq %r15, %rsi
movq %rax, %rdx
xorl %eax, %eax
callq 0xd1d0
cvtsi2sd %rbp, %xmm0
cvtsi2sd %rbx, %xmm1
divsd %xmm1, %xmm0
leaq 0x21b2a(%rip), %rdi     # 0x340af
movb $0x1, %al
callq 0xd1d0
jmp 0x11547
movl $0x1, 0x317c9(%rip)     # 0x43d64
movl $0x1, %edi
callq 0x16c58
leaq 0xdfd(%rip), %rdi       # 0x133a9
callq 0x16c75
movq 0x2f9f0(%rip), %rax     # 0x41fa8
movq (%rax), %rdi
callq 0xd3b0
movl %eax, %edi
callq 0xd0e0
movl %eax, 0x10(%rsp)
testl %eax, %eax
je 0x125e0
leaq 0x21b03(%rip), %rdi     # 0x340d9
callq 0xd050
testq %rax, %rax
jne 0x12602
movq $0x0, 0x20(%rsp)
jmp 0x12637
leaq 0xc0(%rsp), %rdi
callq 0xda60
callq 0xdca7
callq 0xdc5a
callq 0xec72
movq %rax, %r14
leaq 0x21ac8(%rip), %rdi     # 0x340d9
callq 0xd050
leaq 0x21ac1(%rip), %rsi     # 0x340de
movq %r14, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0xf272
movq %rax, 0x20(%rsp)
movq %rax, %rdi
callq 0x18150
callq 0x12e0d
cmpq $0x0, 0x3182c(%rip)     # 0x43e70
leaq 0x21aa8(%rip), %r14     # 0x340f3
leaq 0x31786(%rip), %r15     # 0x43dd8
movq %r15, %rdi
cmoveq %r14, %rdi
callq 0x177ae
testq %rax, %rax
movq 0x20(%rsp), %r12
je 0x11547
movq %rax, %r13
cmpb $0x0, (%r13)
je 0x1291e
movq %r13, %rdi
leaq 0x41c0(%rsp), %rsi
callq 0xfcea
movq %rax, %rbp
cmpl $0x0, 0x10(%rsp)
je 0x1269c
movq %r13, %rdi
callq 0x17f42
testq %r12, %r12
je 0x126a9
movq %r12, %rdi
callq 0x180e6
testq %rbp, %rbp
je 0x1274f
movl 0x41c0(%rsp), %ebx
testl %ebx, %ebx
jle 0x1290f
movq (%rbp), %r15
movq %r15, %rdi
leaq 0x21a34(%rip), %rsi     # 0x34103
callq 0xd080
testl %eax, %eax
je 0x11547
movq %r15, %rdi
leaq 0x21a22(%rip), %rsi     # 0x34108
callq 0xd080
testl %eax, %eax
je 0x11547
cmpl $0x1, %ebx
je 0x12760
cmpl $0x3, %ebx
jne 0x12777
movq %r15, %rdi
leaq 0x21a06(%rip), %rsi     # 0x3410d
callq 0xd080
testl %eax, %eax
jne 0x12777
movq 0x31621(%rip), %rdi     # 0x43d38
callq 0xed21
movq 0x8(%rbp), %rdi
callq 0xec9a
movq %rax, 0x3160c(%rip)     # 0x43d38
movq 0x10(%rbp), %rdi
callq 0xd590
movl %eax, 0x31605(%rip)     # 0x43d40
callq 0x12e0d
movl $0x1, %edi
callq 0x12a6e
jmp 0x12908
leaq 0x21d67(%rip), %rdi     # 0x344bd
callq 0xd0d0
jmp 0x1291e
movq %r15, %rdi
leaq 0x219ab(%rip), %rsi     # 0x34115
callq 0xd080
testl %eax, %eax
je 0x12903
leaq 0x1c0(%rsp), %rdi
xorl %esi, %esi
callq 0xd210
movq 0x1c0(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x1c8(%rsp), %rax
movq %rax, 0x8(%rsp)
movq (%rbp), %rdi
callq 0xd590
movl %eax, %r12d
movl 0x41c0(%rsp), %edi
cmpl $0x2, %edi
setge %al
testl %r12d, %r12d
setne %cl
andb %al, %cl
movl $0x1, %eax
cmovel %eax, %r12d
movzbl %cl, %ebx
leaq (,%rbx,8), %r15
addq %rbp, %r15
movl $0x0, 0x3159e(%rip)     # 0x43d80
subl %ebx, %edi
movq %r15, %rsi
movl %r12d, %edx
callq 0x134ce
testl %eax, %eax
je 0x12821
movl $0x1, %edi
callq 0x12a6e
movl 0x41c0(%rsp), %edi
subl %ebx, %edi
movq %r15, %rsi
movl %r12d, %edx
callq 0x134ce
testl %eax, %eax
je 0x12821
movq 0x31654(%rip), %rdx     # 0x43e70
testq %rdx, %rdx
jne 0x12846
cmpl $0x0, 0x31554(%rip)     # 0x43d7c
je 0x12864
cmpl $0x0, 0x3154f(%rip)     # 0x43d80
je 0x12864
movl $0x1, %edi
callq 0x12a6e
movl 0x41c0(%rsp), %edi
jmp 0x127d8
movq 0x2f7a3(%rip), %rax     # 0x41ff0
movq (%rax), %rdi
addq $0x4, %rdx
leaq 0x210fb(%rip), %rsi     # 0x33956
xorl %eax, %eax
callq 0xd350
jmp 0x12821
imulq $0xf4240, 0x30(%rsp), %rax # imm = 0xF4240
addq 0x8(%rsp), %rax
movabsq $-0x20c49ba5e353f7cf, %rcx # imm = 0xDF3B645A1CAC0831
imulq %rcx
movq %rdx, %r15
movq %rdx, %rax
shrq $0x3f, %rax
sarq $0x7, %r15
addq %rax, %r15
leaq 0x1c0(%rsp), %rdi
xorl %esi, %esi
callq 0xd210
imulq $0xf4240, 0x1c0(%rsp), %rax # imm = 0xF4240
addq 0x1c8(%rsp), %rax
movabsq $0x20c49ba5e353f7cf, %rcx # imm = 0x20C49BA5E353F7CF
imulq %rcx
movq %rdx, %rax
shrq $0x3f, %rax
sarq $0x7, %rdx
addq %rax, %rdx
addq %r15, %rdx
cmpq $0x1f4, %rdx            # imm = 0x1F4
movq 0x20(%rsp), %r12
leaq 0x314f4(%rip), %r15     # 0x43dd8
jl 0x1290f
cvtsi2sd %rdx, %xmm0
divsd 0x1d97d(%rip), %xmm0    # 0x30270
leaq 0x21821(%rip), %rdi     # 0x3411b
movb $0x1, %al
callq 0xd1d0
jmp 0x1290f
callq 0x16c5f
leaq 0x314c9(%rip), %r15     # 0x43dd8
movl 0x41c0(%rsp), %esi
movq %rbp, %rdi
callq 0xfa32
movq %r13, %rdi
callq 0xd060
cmpq $0x0, 0x31542(%rip)     # 0x43e70
movq %r15, %rdi
cmoveq %r14, %rdi
callq 0x177ae
movq %rax, %r13
testq %rax, %rax
jne 0x1266f
jmp 0x11547
movq %r13, %rdi
callq 0xdc7f
leaq 0x21b59(%rip), %rdi     # 0x344b3
callq 0xd0d0
jmp 0x12973
movq 0x18(%r15), %rsi
leaq 0x215c1(%rip), %rdi     # 0x33f2d
xorl %eax, %eax
callq 0xd1d0
movl $0x1, %edi
callq 0xd5d0
callq 0xdc35
movq 0x10(%rsp), %rdi
movq %r13, %rsi
callq 0xdace
movq 0x10(%rsp), %rdi
movq %r13, %rsi
callq 0xdb0b
movq 0x18(%rbp), %rsi
jmp 0x12965
movq 0x10(%rsp), %rdi
movq %r13, %rsi
callq 0xdb61
cmpl $0x6, %ecx
jne 0x12a5f
movq %rax, %rdi
callq 0xdbc3
cmpl $0x76, %eax
jne 0x129cb
cmpb $0x0, 0x2(%rbp)
je 0x129de
leaq 0x203b6(%rip), %rsi     # 0x32d88
movq %rbp, %rdi
callq 0xd330
testl %eax, %eax
jne 0x12a04
callq 0x12b83
movq %rax, %rbx
leaq 0x203a5(%rip), %rdi     # 0x32d92
movq %rax, %rsi
xorl %eax, %eax
callq 0xd1d0
movq %rbx, %rdi
callq 0xed21
jmp 0x11547
movq %rbp, %rdi
callq 0xd823
movq %r15, %rdi
movq %r12, %rsi
callq 0xdb3a
callq 0xdc10
callq 0xda84
leaq 0x21388(%rip), %rdi     # 0x33db0
leaq 0x213af(%rip), %rsi     # 0x33dde
leaq 0x213b4(%rip), %rcx     # 0x33dea
movl $0x54c, %edx            # imm = 0x54C
callq 0xd220
leaq 0x213ce(%rip), %rdi     # 0x33e15
leaq 0x21390(%rip), %rsi     # 0x33dde
leaq 0x21395(%rip), %rcx     # 0x33dea
movl $0x54d, %edx            # imm = 0x54D
callq 0xd220
callq 0xdbeb
callq 0xdb9e
callq 0xdaa9