// File: /workspace/github_c_makefile_star2_O3/BernardTatin[P]s7sh/s7.c
// Function: set_implicit
static goto_t set_implicit(s7_scheme *sc) /* sc->code incoming is (set! (...) ...) */
                {
                    s7_pointer caar_code, cx, form;

                    form = sc->code;
                    sc->code = cdr(sc->code);
                    caar_code = caar(sc->code);
                    if (is_pair(caar_code))
                    {
                        push_stack(sc, OP_SET2, cdar(sc->code), cdr(sc->code));
                        sc->code = caar_code;
                        sc->cur_op = optimize_op(sc->code);
                        return(goto_top_no_pop);
                    }

                    if (is_symbol(caar_code))
                    {
                        /* this was cx = s7_symbol_value(sc, caar_code) but the function call overhead is noticeable */
                        cx = symbol_to_slot(sc, caar_code);
                        if (is_slot(cx))
                            cx = slot_value(cx);
                        else s7_error(sc, sc->syntax_error_symbol, set_elist_3(sc, no_setter_string, caar_code, prepackaged_type_names[type(cx)]));
                    }
                    else cx = caar_code;

                    /* code here is the setter and the value without the "set!": ((window-width) 800) */
                    /*    (set! (hi 0) (* 2 3)) -> ((hi 0) (* 2 3)) */
                    /* for gmp case, indices need to be decoded via s7_integer, not just integer */

                    switch (type(cx))
                    {
                        case T_C_OBJECT:
                            return(set_implicit_c_object(sc, cx));

                        case T_INT_VECTOR: case T_FLOAT_VECTOR: case T_VECTOR: case T_BYTE_VECTOR:
                            return(set_implicit_vector(sc, cx, form));

                        case T_STRING:
                            return(set_implicit_string(sc, cx));

                        case T_PAIR:
                            return(set_implicit_pair(sc, cx));

                        case T_HASH_TABLE:
                            return(set_implicit_hash_table(sc, cx));

                        case T_LET:
                            return(set_implicit_let(sc, cx));

                        case T_C_MACRO: case T_C_OPT_ARGS_FUNCTION: case T_C_RST_ARGS_FUNCTION:
                        case T_C_ANY_ARGS_FUNCTION: case T_C_FUNCTION: case T_C_FUNCTION_STAR:
                            return(set_implicit_function(sc, cx));

                        case T_MACRO: case T_MACRO_STAR: case T_BACRO: case T_BACRO_STAR:
                        case T_CLOSURE: case T_CLOSURE_STAR:
                            return(set_implicit_closure(sc, cx));

                        case T_ITERATOR:     /* not sure this makes sense */
                            return(set_implicit_iterator(sc, cx));

                        case T_SYNTAX:
                            return(set_implicit_syntax(sc, cx));

                        default:                                         /* (set! (1 2) 3) */
                            s7_error(sc, sc->syntax_error_symbol, set_elist_3(sc, no_setter_string, caar_code, prepackaged_type_names[type(cx)]));
                    }
                    return(goto_top_no_pop);
                }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdi, %rbx
movq (%rdi), %rbp
movq 0x10(%rbp), %rcx
movq %rcx, (%rdi)
movq 0x8(%rcx), %rax
movq 0x8(%rax), %r15
movzbl (%r15), %eax
cmpl $0xa, %eax
je 0xc80d9
movq %r15, %r14
cmpl $0x1, %eax
jne 0xc8161
movq 0x10(%rcx), %rax
movq 0x50(%rbx), %rcx
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x1ac, 0x18(%rax)      # imm = 0x1AC
addq $0x20, 0x50(%rbx)
movq %r15, (%rbx)
movzwl 0x4(%r15), %eax
jmp 0xc9b6a
movq 0x8(%rbx), %rcx
movq 0x18(%rcx), %rsi
movq 0x20(%r15), %rdx
movl $0x18, %eax
cmpq %rdx, %rsi
je 0xc8107
jle 0xc80fe
movq 0x10(%rcx), %rcx
movq 0x18(%rcx), %rsi
cmpq %rsi, %rdx
jl 0xc80f1
cmpq %rdx, %rsi
jne 0xc846b
movq (%r15,%rax), %r14
movzbl (%r14), %eax
cmpq $0x20, %rax
jne 0xc811b
movq 0x10(%r14), %r14
jmp 0xc815e
movq 0x1918(%rbx), %rsi
movq 0x8d2e7(%rip), %rcx     # 0x155410
leaq 0x82930(%rip), %rdx     # 0x14aa60
movq (%rdx,%rax,8), %rax
movq 0x6e8(%rbx), %rdx
movq %rcx, 0x8(%rdx)
movq 0x10(%rdx), %rcx
movq %r15, 0x8(%rcx)
movq 0x10(%rcx), %rcx
movq %rax, 0x8(%rcx)
movq 0x6e8(%rbx), %rdx
movq %rbx, %rdi
callq 0x38dfa
movb (%r14), %al
movzbl %al, %ecx
leal -0x1(%rcx), %eax
cmpl $0x32, %eax
ja 0xc8fbd
leaq 0x40775(%rip), %rdx     # 0x1088ec
movslq (%rdx,%rax,4), %rax
addq %rdx, %rax
jmpq *%rax
movq 0x20(%r14), %r15
cmpq 0x120(%rbx), %r15
jne 0xc81b1
testb $0x4, 0x2(%r14)
jne 0xc81b1
movq 0x700(%rbx), %rax
movq %r14, 0x8(%rax)
movq 0x700(%rbx), %rsi
movq %rbx, %rdi
callq 0x3fabd
movq %rax, %r15
movzbl (%r15), %eax
leaq 0x84174(%rip), %rcx     # 0x14c330
cmpb $0x1, (%rax,%rcx)
jne 0xc8498
movq 0x68(%rbx), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x68(%rbx)
movq %r15, (%rax)
movq (%rbx), %rax
movq 0x110(%rbx), %rcx
movq 0x8(%rax), %rdx
movq 0x10(%rdx), %rdx
cmpq %rcx, %rdx
je 0xc88fe
movq 0x10(%rdx), %rsi
movq 0x10(%rax), %rax
cmpq %rcx, %rsi
je 0xc82a8
movq %rbx, %rdi
movq %rax, %rdx
jmp 0xc82a3
movq 0x8(%r14), %rax
movq 0x30(%rax), %rax
movzbl (%rax), %edx
leaq 0x84112(%rip), %rsi     # 0x14c330
cmpb $0x1, (%rdx,%rsi)
jne 0xc85ba
movq (%rbx), %r15
movq 0x8(%r15), %rcx
movq 0x10(%r15), %rdx
movq 0x10(%rcx), %rcx
cmpb $0x1, (%rcx)
jne 0xc886b
movq 0x8(%rdx), %r13
cmpb $0xa, (%r13)
jne 0xc827e
movq 0x8(%rcx), %r12
cmpb $0xa, (%r12)
jne 0xc827e
movq 0x10(%rcx), %rcx
movq 0x110(%rbx), %rdx
cmpq %rdx, %rcx
je 0xc9a16
movq 0x8(%rcx), %rbp
cmpb $0xa, (%rbp)
jne 0xc827e
cmpq %rdx, 0x10(%rcx)
je 0xc9ec8
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
movq (%rbx), %rax
movq 0x8(%rax), %rcx
movq 0x10(%rax), %rdx
movq 0x10(%rcx), %rax
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0x39c05
movq 0x50(%rbx), %rcx
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x50(%rbx), %rax
movq 0x110(%rbx), %rcx
movq %rcx, 0x10(%rax)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
jmp 0xc9b54
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, %rcx
jne 0xc8310
leaq 0x50479(%rip), %rsi     # 0x118773
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, 0x10(%rcx)
je 0xc832f
leaq 0x50473(%rip), %rsi     # 0x118790
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x8(%rdx), %r13
cmpq %rax, 0x10(%r13)
jne 0xc8348
leaq 0x50474(%rip), %rsi     # 0x1187b4
movq %rbx, %rdi
callq 0x3a657
testb $0x1, 0x3(%r14)
je 0xc838e
movq 0x82612(%rip), %rax     # 0x14a968
movq 0x1668(%rbx), %rcx
movq 0x6e8(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x10(%rdx), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %r14, 0x8(%rax)
movq 0x6e8(%rbx), %rdx
movq 0xea8(%rbx), %rsi
movq %rbx, %rdi
callq 0x38dfa
movq 0x10(%r13), %r12
cmpb $0x1, (%r12)
jne 0xc86dc
xorl %r15d, %r15d
movq %r12, %rax
incq %r15
movq 0x10(%rax), %rax
cmpb $0x1, (%rax)
je 0xc83a3
movl $0x1, %eax
cmpq $0x1, %r15
je 0xc86de
cmpb $0x15, (%r14)
jne 0xc83df
movq 0x18(%r14), %rax
movq 0x20(%rax), %rax
testq %rax, %rax
je 0xc8b14
cmpq %r15, 0x10(%rax)
jne 0xc8b14
cmpq $0x2, %r15
jne 0xc86f5
movq 0x8(%r12), %rsi
movq %rbx, %rdi
callq 0xcd0e8
movl $0x2, %r15d
testb %al, %al
je 0xc86f5
movq 0x10(%r12), %rax
movq 0x8(%rax), %rsi
movq %rbx, %rdi
callq 0xcd0e8
testb %al, %al
je 0xc86f5
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rsi
movq %rbx, %rdi
callq 0xcd0e8
testb %al, %al
je 0xc86f5
movq 0x8(%rbx), %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0xd151a
movq (%rbx), %rax
movq 0x8(%rbx), %rdx
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0xcd131
movw $0x17e, 0x4(%rbp)       # imm = 0x17E
movw $0x201, (%rbp)          # imm = 0x201
jmp 0xc86f5
movl $0x10, %eax
cmpb $0x1c, (%rcx)
jne 0xc8107
movq 0x8(%rcx), %r14
testq %r14, %r14
je 0xc8492
cmpq %r15, 0x8(%r14)
je 0xc810b
movq 0x18(%r14), %r14
jmp 0xc847d
movq 0x10(%rcx), %rcx
jmp 0xc8470
leaq 0x83ed1(%rip), %rcx     # 0x14c370
cmpb $0x1, (%rax,%rcx)
jne 0xc8826
movq (%rbx), %rax
movq 0x110(%rbx), %rbp
movq 0x8(%rax), %rcx
movq 0x10(%rax), %r13
movq 0x10(%rcx), %rsi
cmpq %rbp, %rsi
je 0xc90cd
cmpb $0x1, (%r13)
jne 0xc90e7
movq %rsi, 0x10(%rsp)
movq %r13, 0x4c8(%rbx)
movq 0x8(%r13), %r14
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xc8502
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %rbp, 0x10(%rax)
movq %rax, 0x8(%rsp)
movq %rax, 0x4e8(%rbx)
movq 0x10(%r13), %r13
cmpb $0x1, (%r13)
jne 0xc8596
movq 0x8(%rsp), %rbp
movq 0x8(%r13), %r14
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r12
cmpq 0x98(%rbx), %rax
ja 0xc8566
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r12, 0x10(%rax)
movq %rax, 0x10(%rbp)
movq 0x10(%r13), %r13
cmpb $0x1, (%r13)
movq %rax, %rbp
je 0xc853c
movq 0x110(%rbx), %rax
movq %rax, 0x4e8(%rbx)
movq %rax, 0x4c8(%rbx)
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %rdx
jmp 0xc90ea
leaq 0x83daf(%rip), %rax     # 0x14c370
cmpb $0x1, (%rdx,%rax)
jne 0xc88a8
movq (%rbx), %rax
movq 0x110(%rbx), %rbp
movq 0x8(%rax), %rcx
movq 0x10(%rax), %r13
movq 0x10(%rcx), %rsi
cmpq %rbp, %rsi
je 0xc90da
cmpb $0x1, (%r13)
jne 0xc90fb
movq %rsi, 0x10(%rsp)
movq %r13, 0x4c8(%rbx)
movq 0x8(%r13), %r15
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xc8624
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r15, 0x8(%rax)
movq %rbp, 0x10(%rax)
movq %rax, 0x8(%rsp)
movq %rax, 0x4e8(%rbx)
movq 0x10(%r13), %r13
cmpb $0x1, (%r13)
jne 0xc86b8
movq 0x8(%rsp), %rbp
movq 0x8(%r13), %r15
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r12
cmpq 0x98(%rbx), %rax
ja 0xc8688
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r15, 0x8(%rax)
movq %r12, 0x10(%rax)
movq %rax, 0x10(%rbp)
movq 0x10(%r13), %r13
cmpb $0x1, (%r13)
movq %rax, %rbp
je 0xc865e
movq 0x110(%rbx), %rax
movq %rax, 0x4e8(%rbx)
movq %rax, 0x4c8(%rbx)
movq 0x10(%rsp), %rsi
movq 0x8(%rsp), %rdx
jmp 0xc90fe
xorl %eax, %eax
movq 0x18(%r14), %rcx
movq 0x20(%rcx), %rcx
testq %rcx, %rcx
je 0xc870f
cmpq $0x1, 0x10(%rcx)
movq %rax, %r15
jle 0xc870f
movq 0x18(%r14), %rax
movq 0x20(%rax), %rax
testq %rax, %rax
je 0xc9097
movq 0x10(%rax), %rax
jmp 0xc909c
movq 0x8(%r12), %r15
movq %rbx, %rdi
movq %r15, %rsi
callq 0xcd0e8
testb %al, %al
je 0xc8768
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rsi
movq %rbx, %rdi
callq 0xcd0e8
testb %al, %al
je 0xc8768
movq 0x8(%rbx), %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0xcd131
movq (%rbx), %rax
movq 0x8(%rbx), %rdx
movq 0x10(%rax), %rsi
movq %rbx, %rdi
callq 0xcd131
movw $0x17d, 0x4(%rbp)       # imm = 0x17D
movw $0x201, (%rbp)          # imm = 0x201
movzbl (%r15), %ecx
cmpl $0x1, %ecx
je 0xc9005
cmpl $0xa, %ecx
jne 0xc879b
movq 0x8(%rbx), %rdi
movq %r15, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc8796
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9c492
movb (%rax), %cl
movq %rax, %r15
cmpb $0xb, %cl
je 0xc880d
movq 0x1940(%rbx), %rsi
movq 0x820(%rbx), %rax
movslq 0x7dc(%rbx), %rcx
movq (%rax,%rcx,8), %rax
incl %ecx
andl $0x7, %ecx
movl %ecx, 0x7dc(%rbx)
leaq 0x4fd0f(%rip), %rcx     # 0x1184da
movq %rcx, 0x10(%rax)
movq $0x29, 0x8(%rax)
movq (%rbx), %rcx
movq 0x6e0(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x6e0(%rbx), %rax
movq 0x10(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x6e0(%rbx), %rdx
movq %rbx, %rdi
callq 0x38dfa
cmpb $0xb, (%r15)
jne 0xc9328
movq 0x8(%r15), %r12
testq %r12, %r12
jns 0xc932b
leaq 0x82227(%rip), %rax     # 0x14aa48
jmp 0xc9338
movq 0x1918(%rbx), %rsi
movq 0x8cbdc(%rip), %rax     # 0x155410
movq (%rbx), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rcx), %rcx
movzbl (%r14), %edx
leaq 0x82216(%rip), %rdi     # 0x14aa60
movq (%rdi,%rdx,8), %rdx
movq 0x6e8(%rbx), %rdi
movq %rax, 0x8(%rdi)
movq 0x10(%rdi), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %rdx, 0x8(%rax)
jmp 0xc88e7
movq 0x110(%rbx), %r13
cmpq %r13, 0x10(%rdx)
jne 0xc8888
movq 0x8(%rdx), %r15
movb (%r15), %cl
cmpb $0x1, %cl
jne 0xc9514
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
jmp 0xc890a
movq 0x1918(%rbx), %rsi
movq 0x8cb5a(%rip), %rax     # 0x155410
movq (%rbx), %rdx
movq 0x8(%rdx), %rdx
movq 0x8(%rdx), %rdx
leaq 0x82198(%rip), %rdi     # 0x14aa60
movq (%rdi,%rcx,8), %rcx
movq 0x6e8(%rbx), %rdi
movq %rax, 0x8(%rdi)
movq 0x10(%rdi), %rax
movq %rdx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x6e8(%rbx), %rdx
movq %rbx, %rdi
callq 0x38dfa
movq (%rbx), %rax
jmp 0xc9b66
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq 0x50(%rbx), %rcx
movq %rax, (%rcx)
jmp 0xc9584
movq 0x8(%r14), %rax
movzbl (%rax), %ecx
leaq 0x8a2c0(%rip), %rdx     # 0x152be0
cmpb $0x0, (%rcx,%rdx)
jne 0xc8937
leaq 0x83a43(%rip), %rdx     # 0x14c370
cmpb $0x1, (%rcx,%rdx)
jne 0xc954c
addq $0x20, %rax
jmp 0xc9553
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, %rcx
jne 0xc8970
leaq 0x4fe77(%rip), %rsi     # 0x1187d1
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, 0x10(%rcx)
je 0xc898f
leaq 0x4fe71(%rip), %rsi     # 0x1187ee
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x8(%rdx), %r15
movq 0x10(%r15), %rcx
cmpq %rax, %rcx
jne 0xc89b6
leaq 0x4fe6f(%rip), %rsi     # 0x118812
movq %rbx, %rdi
callq 0x3a657
movq 0x10(%r15), %rcx
movq 0x110(%rbx), %rax
cmpq %rax, 0x10(%rcx)
je 0xc89d2
movq (%rbx), %rdx
leaq 0x4fe69(%rip), %rsi     # 0x11882f
movq %rbx, %rdi
callq 0x3a657
movq 0x10(%r15), %rcx
movq 0x8(%rcx), %r15
movzbl (%r15), %ecx
cmpl $0x1, %ecx
je 0xc940a
cmpl $0xa, %ecx
jne 0xc8a09
movq 0x8(%rbx), %rdi
movq %r15, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc8a04
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9c492
movb (%rax), %cl
movq %rax, %r15
cmpb $0xb, %cl
je 0xc8a7b
movq 0x1940(%rbx), %rsi
movq 0x820(%rbx), %rax
movslq 0x7dc(%rbx), %rcx
movq (%rax,%rcx,8), %rax
incl %ecx
andl $0x7, %ecx
movl %ecx, 0x7dc(%rbx)
leaq 0x4faae(%rip), %rcx     # 0x1184e7
movq %rcx, 0x10(%rax)
movq $0x1c, 0x8(%rax)
movq (%rbx), %rcx
movq 0x6e0(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x6e0(%rbx), %rax
movq 0x10(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x6e0(%rbx), %rdx
movq %rbx, %rdi
callq 0x38dfa
cmpb $0xb, (%r15)
jne 0xc969e
movq 0x8(%r15), %r13
testq %r13, %r13
jns 0xc96a1
leaq 0x81fb9(%rip), %rax     # 0x14aa48
jmp 0xc96ae
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, %rcx
jne 0xc8ac4
leaq 0x4fda6(%rip), %rsi     # 0x118854
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, 0x10(%rcx)
je 0xc8ae3
leaq 0x4fd9e(%rip), %rsi     # 0x11886f
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x8(%rdx), %r13
movq 0x10(%r13), %rcx
cmpq %rax, %rcx
jne 0xc8b0a
leaq 0x4fd9a(%rip), %rsi     # 0x118891
movq %rbx, %rdi
callq 0x3a657
movq 0x10(%r13), %rcx
movq 0x110(%rbx), %rax
cmpq %rax, 0x10(%rcx)
je 0xc91d2
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x10(%rax), %rax
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r13), %rax
movq 0x10(%rax), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x1ac, 0x18(%rax)      # imm = 0x1AC
addq $0x20, 0x50(%rbx)
movq 0x8(%r13), %r14
movq 0x10(%r13), %rax
jmp 0xc8f47
movq (%rbx), %r12
movq 0x110(%rbx), %rax
movq 0x10(%r12), %rcx
cmpq %rax, %rcx
jne 0xc8b91
leaq 0x4fbbb(%rip), %rsi     # 0x118732
movq %rbx, %rdi
movq %r12, %rdx
callq 0x3a657
movq (%rbx), %r12
movq 0x110(%rbx), %rax
movq 0x10(%r12), %rcx
cmpq %rax, 0x10(%rcx)
je 0xc8bb3
leaq 0x4fbb1(%rip), %rsi     # 0x11874f
movq %rbx, %rdi
movq %r12, %rdx
callq 0x3a657
movq (%rbx), %r12
movq 0x110(%rbx), %rax
movq 0x8(%r12), %r15
movq 0x10(%r15), %rcx
addq $0x10, %r15
cmpq %rax, %rcx
je 0xc8bcf
cmpq %rax, 0x10(%rcx)
je 0xc9630
movq 0x1ed0(%rbx), %rax
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
movq (%r15), %rax
cmpq 0x110(%rbx), %rax
je 0xc948d
movq 0x10(%rax), %rsi
movq (%rbx), %rax
movq 0x10(%rax), %rdx
movq %rbx, %rdi
callq 0x39c05
movq 0x50(%rbx), %rcx
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r12
cmpq 0x98(%rbx), %rax
ja 0xc8c41
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r12, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
jmp 0xc9ca7
movq 0x17e0(%rbx), %rax
movq 0x10(%rax), %rax
cmpq %r14, 0x10(%rax)
je 0xc9293
movq 0x1918(%rbx), %rsi
movq 0x8c770(%rip), %rax     # 0x155410
movq (%rbx), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rcx), %rcx
movq 0x81df6(%rip), %rdx     # 0x14aaa8
movq 0x6e8(%rbx), %rdi
movq %rax, 0x8(%rdi)
movq 0x10(%rdi), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %rdx, 0x8(%rax)
jmp 0xc8ff1
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, %rcx
jne 0xc8d02
leaq 0x4fc48(%rip), %rsi     # 0x118934
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, 0x10(%rcx)
je 0xc8d21
leaq 0x4fc3f(%rip), %rsi     # 0x11894e
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x8(%rdx), %r15
cmpq %rax, 0x10(%r15)
jne 0xc8d3a
leaq 0x4fc3d(%rip), %rsi     # 0x11896f
movq %rbx, %rdi
callq 0x3a657
testb $0x1, 0x3(%r14)
je 0xc8d80
movq 0x81c20(%rip), %rax     # 0x14a968
movq 0x1240(%rbx), %rcx
movq 0x6e8(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x10(%rdx), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %r14, 0x8(%rax)
movq 0x6e8(%rbx), %rdx
movq 0xea8(%rbx), %rsi
movq %rbx, %rdi
callq 0x38dfa
movq 0x10(%r15), %rcx
movq 0x10(%rcx), %rax
cmpq 0x110(%rbx), %rax
jne 0xc8f04
movq 0x8(%rcx), %rcx
cmpb $0x1, (%rcx)
jne 0xc8dbe
movq 0x8(%rcx), %rdx
cmpq 0x17b0(%rbx), %rdx
jne 0xc8dbe
movq 0x10(%rcx), %rcx
cmpb $0x1, (%rcx)
jne 0xc8dbe
cmpq %rax, 0x10(%rcx)
je 0xca08d
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x10(%rax), %rax
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r15
cmpq 0x98(%rbx), %rax
ja 0xc8dfe
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r15, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
movq 0x1ec8(%rbx), %rax
jmp 0xc9b45
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, %rcx
jne 0xc8e71
leaq 0x4fa71(%rip), %rsi     # 0x1188cc
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x10(%rdx), %rcx
cmpq %rax, 0x10(%rcx)
je 0xc8e90
leaq 0x4fa6f(%rip), %rsi     # 0x1188ed
movq %rbx, %rdi
callq 0x3a657
movq (%rbx), %rdx
movq 0x110(%rbx), %rax
movq 0x8(%rdx), %r15
cmpq %rax, 0x10(%r15)
jne 0xc8ea9
leaq 0x4fa74(%rip), %rsi     # 0x118915
movq %rbx, %rdi
callq 0x3a657
testb $0x1, 0x3(%r14)
je 0xc8eef
movq 0x81ab1(%rip), %rax     # 0x14a968
movq 0xf70(%rbx), %rcx
movq 0x6e8(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x10(%rdx), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %r14, 0x8(%rax)
movq 0x6e8(%rbx), %rdx
movq 0xea8(%rbx), %rsi
movq %rbx, %rdi
callq 0x38dfa
movq 0x10(%r15), %rax
movq 0x10(%rax), %rcx
cmpq 0x110(%rbx), %rcx
je 0xc92e2
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x10(%rax), %rax
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%r15), %rax
movq 0x10(%rax), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x1ac, 0x18(%rax)      # imm = 0x1AC
addq $0x20, 0x50(%rbx)
movq 0x8(%r15), %r14
movq 0x10(%r15), %rax
movq 0x8(%rax), %r15
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r12
cmpq 0x98(%rbx), %rax
ja 0xc8f71
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movl $0x200001, %ecx         # imm = 0x200001
movq %rcx, (%rax)
movq %r15, 0x8(%rax)
movq %r12, 0x10(%rax)
movq 0x90(%rbx), %rdx
leaq -0x8(%rdx), %rsi
movq %rsi, 0x90(%rbx)
movq -0x8(%rdx), %rdx
movq %rcx, (%rdx)
movq %r14, 0x8(%rdx)
movq %rax, 0x10(%rdx)
movq %rdx, (%rbx)
movzwl 0x4(%rdx), %eax
jmp 0xc9b6a
movq 0x1918(%rbx), %rsi
movq 0x8c445(%rip), %rax     # 0x155410
leaq 0x81a8e(%rip), %rdx     # 0x14aa60
movq (%rdx,%rcx,8), %rcx
movq 0x6e8(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x10(%rdx), %rax
movq %r15, 0x8(%rax)
movq 0x10(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x6e8(%rbx), %rdx
movq %rbx, %rdi
callq 0x38dfa
jmp 0xc9b6e
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x10(%rax), %rax
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r15
cmpq 0x98(%rbx), %rax
ja 0xc9045
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r15, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
movq 0x1ea8(%rbx), %rax
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
jmp 0xc91c9
movl $0x1, %eax
cmpq %rax, %r15
jne 0xc912c
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
cmpb $0x1, (%rax)
je 0xc912c
movq 0x10(%r13), %rax
cmpb $0x1, (%rax)
jne 0xc911f
movq 0x8(%rax), %rcx
cmpb $0x1, (%rcx)
je 0xc911f
movq 0x10(%rax), %rax
jmp 0xc90b9
movq %rbx, %rdi
movq %r13, %rsi
callq 0x42f69
jmp 0xc90f2
movq %rbx, %rdi
movq %r13, %rsi
callq 0x42f69
jmp 0xc9106
movq %rbp, %rdx
movq %rbx, %rdi
callq 0x39c05
movq %rax, 0x10(%rbx)
movq %r15, (%rbx)
jmp 0xc9115
movq %rbp, %rdx
movq %rbx, %rdi
callq 0x39c05
movq %rax, 0x10(%rbx)
movq 0x8(%r14), %rax
movq 0x30(%rax), %rax
movq %rax, (%rbx)
movl $0xa, %eax
jmp 0xc9b73
cmpq 0x110(%rbx), %rax
je 0xc9865
movq 0x1ea8(%rbx), %rax
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
movq 0x10(%r13), %rax
movq 0x10(%rax), %rsi
movq (%rbx), %rax
movq 0x10(%rax), %rdx
movq %rbx, %rdi
callq 0x39c05
movq 0x50(%rbx), %rcx
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r15
cmpq 0x98(%rbx), %rax
ja 0xc9192
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r15, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
movq 0x10(%r13), %rax
jmp 0xc9b5f
movq 0x8(%rcx), %r15
movb (%r15), %al
cmpb $0x1, %al
je 0xc91f6
movq (%rbx), %rcx
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %r12
movb (%r12), %bpl
cmpb $0x1, %bpl
jne 0xc9bc3
movq 0x1eb8(%rbx), %rax
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
movq 0x10(%r13), %rax
movq 0x10(%rax), %rsi
movq (%rbx), %rax
movq 0x10(%rax), %rdx
movq %rbx, %rdi
callq 0x39c05
movq 0x50(%rbx), %rcx
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r12
cmpq 0x98(%rbx), %rax
ja 0xc925c
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r12, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
jmp 0xc80c7
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x8(%rax), %rdx
movq 0x10(%rdx), %rdx
movq %rdx, 0x10(%rbx)
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, (%rbx)
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x10(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x32c, 0x18(%rax)      # imm = 0x32C
addq $0x20, 0x50(%rbx)
jmp 0xc88f6
movq 0x8(%rax), %r12
movzbl (%r12), %eax
cmpl $0x1, %eax
je 0xc9ac7
cmpl $0xa, %eax
jne 0xc9b82
movq 0x8(%rbx), %rdi
movq %r12, %rsi
callq 0x9c43c
movq %rax, %r15
testq %rax, %rax
jne 0xc9b85
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
movq %rax, %r15
jmp 0xc9b85
xorl %r12d, %r12d
cmpq 0x8(%r14), %r12
jl 0xc938a
leaq 0x81708(%rip), %rax     # 0x14aa40
movq 0x1668(%rbx), %rcx
movq 0x8(%rcx), %rcx
movq 0x7d616(%rip), %rdx     # 0x146960
movq (%rax), %rax
movq 0x1ee8(%rbx), %rsi
movq 0x10(%rsi), %rsi
movq %rcx, 0x8(%rsi)
movq 0x10(%rsi), %rcx
movq %rdx, 0x8(%rcx)
movq 0x10(%rcx), %rcx
movq %r15, 0x8(%rcx)
movq 0x10(%rcx), %rcx
movq %rax, 0x8(%rcx)
movq 0x1948(%rbx), %rsi
movq 0x1ee8(%rbx), %rdx
movq %rbx, %rdi
callq 0x38dfa
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %r13
movzbl (%r13), %eax
cmpl $0x1, %eax
je 0xc93c8
cmpl $0xa, %eax
jne 0xc93d4
movq 0x8(%rbx), %rdi
movq %r13, %rsi
callq 0x9c43c
movq %rax, %r15
testq %rax, %rax
jne 0xc93d7
movq %rbx, %rdi
movq %r13, %rsi
callq 0x9c492
movq %rax, %r15
jmp 0xc93d7
movq 0x1ea8(%rbx), %rax
jmp 0xc97d8
movq %r13, %r15
testb $0x2, 0x6(%r14)
jne 0xc93f0
movq %rbx, %rdi
movq %r14, %rsi
movq %r12, %rdx
movq %r15, %rcx
callq *0x28(%r14)
jmp 0xc9401
movq %rbx, %rdi
movq %r14, %rsi
movq %r12, %rdx
movq %r15, %rcx
callq 0x3b5f6
movq %r15, 0x20(%rbx)
jmp 0xc9ec1
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x10(%rax), %rax
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r15
cmpq 0x98(%rbx), %rax
ja 0xc944a
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r15, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
movq 0x1eb0(%rbx), %rax
jmp 0xc9b45
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r15
cmpq 0x98(%rbx), %rax
ja 0xc94d1
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r15, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
movq (%rbx), %r15
addq $0x10, %r15
jmp 0xc9ca7
testb $0x10, 0x3(%rax)
jne 0xc9a8c
cmpb $0xa, %cl
jne 0xc9d0b
movq 0x8(%rbx), %rdi
movq %r15, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc9d0e
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9c492
jmp 0xc9d0e
leaq 0x120(%rbx), %rax
movq (%rax), %r14
movzbl (%r14), %eax
leaq 0x82dcf(%rip), %rcx     # 0x14c330
cmpb $0x0, (%rax,%rcx)
je 0xc95b8
movq 0x68(%rbx), %rax
leaq 0x8(%rax), %rcx
movq %rcx, 0x68(%rbx)
movq %r14, (%rax)
movq 0x50(%rbx), %rax
movq 0x110(%rbx), %rcx
movq %rcx, (%rax)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x50(%rbx), %rax
movq 0x110(%rbx), %rcx
movq %rcx, 0x10(%rax)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
movq (%rbx), %rax
jmp 0xc9b5b
cmpl $0x14, %eax
jne 0xc95c4
testb $0x20, 0x2(%r14)
jne 0xc9567
leaq 0x82da5(%rip), %rcx     # 0x14c370
cmpb $0x1, (%rax,%rcx)
jne 0xc9679
movq (%rbx), %rcx
movq 0x90(%rbx), %rax
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %r15
movq 0x110(%rbx), %r12
cmpq 0x98(%rbx), %rax
ja 0xc9606
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r15, 0x8(%rax)
movq %r12, 0x10(%rax)
movq %rax, 0x10(%rbx)
movq %r14, (%rbx)
jmp 0xc9115
movq 0x8(%rcx), %r13
movzbl (%r13), %eax
cmpl $0x1, %eax
je 0xc9c1c
cmpl $0xa, %eax
jne 0xc9caf
movq 0x8(%rbx), %rdi
movq %r13, %rsi
callq 0x9c43c
movq %rax, %r15
testq %rax, %rax
jne 0xc9cb2
movq %rbx, %rdi
movq %r13, %rsi
callq 0x9c492
movq %rax, %r15
movq (%rbx), %r12
jmp 0xc9cb2
movq 0x1918(%rbx), %rsi
movq 0x8bd89(%rip), %rax     # 0x155410
movq (%rbx), %rcx
movq 0x8(%rcx), %rcx
movq 0x8(%rcx), %rcx
movq 0x814af(%rip), %rdx     # 0x14ab48
jmp 0xc884e
xorl %r13d, %r13d
cmpq 0x8(%r14), %r13
jl 0xc96ce
leaq 0x81392(%rip), %rax     # 0x14aa40
movq 0x1550(%rbx), %rcx
movq 0x8(%rcx), %rsi
movq 0x7d2a0(%rip), %rdx     # 0x146960
movq (%rax), %r8
movq %rbx, %rdi
movq %r15, %rcx
callq 0xe1fe
testb $0x1, 0x3(%r14)
je 0xc9714
movq 0x8128c(%rip), %rax     # 0x14a968
movq 0x1550(%rbx), %rcx
movq 0x6e8(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x10(%rdx), %rax
movq %rcx, 0x8(%rax)
movq 0x10(%rax), %rax
movq %r14, 0x8(%rax)
movq 0x6e8(%rbx), %rdx
movq 0xea8(%rbx), %rsi
movq %rbx, %rdi
callq 0x38dfa
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %r12
movzbl (%r12), %ecx
cmpl $0x1, %ecx
je 0xc97d1
cmpl $0xa, %ecx
jne 0xc9753
movq 0x8(%rbx), %rdi
movq %r12, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc974e
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
movb (%rax), %cl
movq %rax, %r12
cmpb $0x8, %cl
jne 0xc976e
movb 0x8(%r12), %al
movq 0x10(%r14), %rcx
movb %al, (%rcx,%r13)
movq %r12, 0x20(%rbx)
jmp 0xc9ec1
movq 0x1940(%rbx), %rsi
movq 0x820(%rbx), %rax
movslq 0x7dc(%rbx), %rcx
movq (%rax,%rcx,8), %rax
incl %ecx
andl $0x7, %ecx
movl %ecx, 0x7dc(%rbx)
leaq 0x4ee09(%rip), %rcx     # 0x1185a2
movq %rcx, 0x10(%rax)
movq $0x1d, 0x8(%rax)
movq (%rbx), %rcx
movq 0x6e0(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x6e0(%rbx), %rax
movq 0x10(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x6e0(%rbx), %rdx
movq %rbx, %rdi
callq 0x38dfa
movq 0x1eb0(%rbx), %rax
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r12
cmpq 0x98(%rbx), %rax
ja 0xc980d
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movl $0x200001, %ecx         # imm = 0x200001
movq %rcx, (%rax)
movq %r14, 0x8(%rax)
movq %r12, 0x10(%rax)
movq 0x90(%rbx), %rdx
leaq -0x8(%rdx), %rsi
movq %rsi, 0x90(%rbx)
movq -0x8(%rdx), %rdx
movq %rcx, (%rdx)
movq %r15, 0x8(%rdx)
movq %rax, 0x10(%rdx)
movq %rdx, 0x10(%rbx)
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq %rax, (%rbx)
movl $0xb, %eax
jmp 0xc9b73
addq $0x2, %r15
movq %rbx, %rdi
movq %r15, %rsi
callq 0xae576
movq %rax, %r15
testb $0x40, 0x7(%rax)
jne 0xc9899
movq 0x50(%rbx), %rax
movq $0x1, 0x18(%rax)
movq 0x50(%rbx), %rax
leaq 0x20(%rax), %rcx
movq %rcx, 0x50(%rbx)
movq %r15, 0x10(%rax)
movq %r14, 0x8(%r15)
movq 0x10(%r13), %r13
movq 0x10(%r15), %r12
cmpb $0x1, (%r13)
jne 0xc99bb
leaq 0x4ec23(%rip), %rbp     # 0x1184da
movq 0x8(%r13), %r14
movb (%r14), %cl
cmpb $0xa, %cl
jne 0xc9909
movq 0x8(%rbx), %rax
movq 0x18(%rax), %rdx
movq 0x20(%r14), %rcx
cmpq %rcx, %rdx
je 0xc98ec
jle 0xc98e3
movq 0x10(%rax), %rax
movq 0x18(%rax), %rdx
cmpq %rdx, %rcx
jl 0xc98d6
cmpq %rcx, %rdx
jne 0xc9985
movq 0x18(%r14), %rcx
movq 0x10(%rcx), %rax
testq %rax, %rax
jne 0xc9904
movq %rbx, %rdi
movq %r14, %rsi
callq 0x9c492
movb (%rax), %cl
movq %rax, %r14
cmpb $0xb, %cl
je 0xc996a
movq 0x1940(%rbx), %rsi
movq 0x820(%rbx), %rax
movslq 0x7dc(%rbx), %rcx
movq (%rax,%rcx,8), %rax
incl %ecx
andl $0x7, %ecx
movl %ecx, 0x7dc(%rbx)
movq %rbp, 0x10(%rax)
movq $0x29, 0x8(%rax)
movq (%rbx), %rcx
movq 0x6e0(%rbx), %rdx
movq %rax, 0x8(%rdx)
movq 0x6e0(%rbx), %rax
movq 0x10(%rax), %rax
movq %rcx, 0x8(%rax)
movq 0x6e0(%rbx), %rdx
movq %rbx, %rdi
callq 0x38dfa
movq %r14, 0x8(%r12)
movq 0x10(%r13), %r13
movq 0x10(%r12), %r12
cmpb $0x1, (%r13)
je 0xc98b7
jmp 0xc99bb
cmpb $0x1c, (%rax)
jne 0xc99a9
movq 0x8(%rax), %rcx
testq %rcx, %rcx
je 0xc99a3
cmpq %r14, 0x8(%rcx)
je 0xc98f0
movq 0x18(%rcx), %rcx
jmp 0xc998e
movq 0x10(%rax), %rax
jmp 0xc9985
movq 0x10(%r14), %rcx
cmpb $0x20, (%rcx)
je 0xc98f0
jmp 0xc98f9
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %r14
movq %r14, 0x8(%r12)
cmpb $0xa, (%r14)
jne 0xc99f2
movq 0x8(%rbx), %rdi
movq %r14, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc99ed
movq %rbx, %rdi
movq %r14, %rsi
callq 0x9c492
movq %rax, 0x8(%r12)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x79cc5
movq %rax, 0x20(%rbx)
testb $0x40, 0x7(%r15)
jne 0xc9cf7
addq $-0x20, 0x50(%rbx)
jmp 0xc9ec1
movl (%rax), %r15d
movq 0x8(%rbx), %rbp
movq %rbp, %rdi
movq %r12, %rsi
callq 0x9c43c
btl $0x1c, %r15d
jb 0xc9d25
testq %rax, %rax
jne 0xc9a43
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
movq 0x570(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq (%rbx), %rax
movq 0x8(%rbx), %rdi
movq 0x10(%rax), %rax
movq 0x8(%rax), %r15
movq %r15, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc9a75
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9c492
movq 0x578(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x570(%rbx), %rax
jmp 0xc9106
cmpb $0xa, %cl
jne 0xc9dd3
movq 0x8(%rbx), %rdi
movq %r15, %rsi
callq 0x9c43c
movq %rax, %r12
testq %rax, %rax
jne 0xc9dd6
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9c492
movq %rax, %r12
movq 0x110(%rbx), %r13
jmp 0xc9dd6
movq (%rbx), %rax
movq 0x50(%rbx), %rcx
movq 0x10(%rax), %rax
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r15
cmpq 0x98(%rbx), %rax
ja 0xc9b07
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r15, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
movq 0x1ec0(%rbx), %rax
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
movq (%rbx), %rax
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq %rax, (%rbx)
movzwl 0x4(%rax), %eax
movq %rax, 0x18(%rbx)
movl $0x9, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %r12, %r15
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %r12
movzbl (%r12), %eax
cmpl $0x1, %eax
je 0xc9bfa
cmpl $0xa, %eax
jne 0xc9c06
movq 0x8(%rbx), %rdi
movq %r12, %rsi
callq 0x9c43c
movq %rax, %rcx
testq %rax, %rax
jne 0xc9c09
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
movq %rax, %rcx
jmp 0xc9c09
cmpb $0xa, %al
jne 0xc9e66
movq 0x8(%rbx), %rdi
movq %r15, %rsi
callq 0x9c43c
movq %rax, %r13
testq %rax, %rax
jne 0xc9e69
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9c492
movq %rax, %r13
movb (%r12), %bpl
jmp 0xc9e69
movq 0x1ec0(%rbx), %rax
jmp 0xc97d8
movq %r12, %rcx
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x36924
jmp 0xc9ebd
movq 0x10(%r12), %rax
movq 0x50(%rbx), %rcx
movq %rax, (%rcx)
movq 0x8(%rbx), %rax
movq 0x50(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r12
cmpq 0x98(%rbx), %rax
ja 0xc9c5a
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r14, 0x8(%rax)
movq %r12, 0x10(%rax)
movq 0x50(%rbx), %rcx
movq %rax, 0x10(%rcx)
movq 0x50(%rbx), %rax
movq $0x193, 0x18(%rax)      # imm = 0x193
addq $0x20, 0x50(%rbx)
movq 0x1ed0(%rbx), %rax
movq 0x68(%rbx), %rcx
leaq 0x8(%rcx), %rdx
movq %rdx, 0x68(%rbx)
movq %rax, (%rcx)
movq (%r15), %rax
jmp 0xc9b5f
movq %r13, %r15
movq 0x10(%r12), %rax
movq 0x8(%rax), %r12
movzbl (%r12), %eax
cmpl $0x1, %eax
je 0xc9e18
cmpl $0xa, %eax
jne 0xc9e24
movq 0x8(%rbx), %rdi
movq %r12, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc9e27
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
jmp 0xc9e27
andb $-0x5, 0x1(%r15)
movl $0x0, 0x2138(%rbx)
jmp 0xc9ec1
movq %r15, %rax
movq 0x568(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x568(%rbx), %rax
jmp 0xc9106
testq %rax, %rax
jne 0xc9d44
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
movq (%rbx), %rcx
movq 0x8(%rbx), %rbp
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %r13
movq %rax, %r15
movq %rbp, %rdi
movq %r13, %rsi
callq 0x9c43c
movq %rax, %r12
testq %rax, %rax
jne 0xc9d68
movq %rbx, %rdi
movq %r13, %rsi
callq 0x9c492
movq %rax, %r12
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r13
cmpq 0x98(%rbx), %rax
ja 0xc9d8e
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rcx
movl $0x200001, %edx         # imm = 0x200001
movq %rdx, (%rcx)
movq %r12, 0x8(%rcx)
movq %r13, 0x10(%rcx)
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rsi
movq %rsi, 0x90(%rbx)
movq -0x8(%rax), %rax
movq %rdx, (%rax)
movq %r15, 0x8(%rax)
movq %rcx, 0x10(%rax)
jmp 0xc9106
movq %r15, %r12
movq 0x90(%rbx), %rax
cmpq 0x98(%rbx), %rax
ja 0xc9df5
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movq $0x200001, (%rax)       # imm = 0x200001
movq %r12, 0x8(%rax)
movq %r13, 0x10(%rax)
jmp 0xc9106
movq 0x1ed0(%rbx), %rax
jmp 0xc97d8
movq %r12, %rax
movq 0x580(%rbx), %rcx
movq %r14, 0x8(%rcx)
movq 0x588(%rbx), %rcx
movq %r15, 0x8(%rcx)
movq 0x590(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x8d8(%rbx), %rax
movq 0x8(%r14), %rcx
movq (%rax,%rcx,8), %rax
movq 0x580(%rbx), %rsi
movq %rbx, %rdi
callq *0x50(%rax)
jmp 0xc9ebd
movq %r15, %r13
cmpb $0xa, %bpl
jne 0xc9e8d
movq 0x8(%rbx), %rdi
movq %r12, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc9e90
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
jmp 0xc9e90
movq %r12, %rax
movq 0x570(%rbx), %rcx
movq %r13, 0x8(%rcx)
movq 0x578(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x570(%rbx), %rdx
movq %rbx, %rdi
movq %r14, %rsi
movl $0x2, %ecx
callq 0xe6eb4
movq %rax, 0x20(%rbx)
xorl %eax, %eax
jmp 0xc9b73
movl (%rax), %r13d
movq 0x8(%rbx), %rdi
movq %rdi, 0x8(%rsp)
movq %r12, %rsi
callq 0x9c43c
btl $0x1c, %r13d
jb 0xc9f7a
testq %rax, %rax
jne 0xc9ef7
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
movq 0x580(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq (%rbx), %rax
movq 0x8(%rbx), %rdi
movq 0x8(%rax), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %r15
movq %r15, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc9f31
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9c492
movq 0x588(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq (%rbx), %rax
movq 0x8(%rbx), %rdi
movq 0x10(%rax), %rax
movq 0x8(%rax), %r15
movq %r15, %rsi
callq 0x9c43c
testq %rax, %rax
jne 0xc9f63
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9c492
movq 0x590(%rbx), %rcx
movq %rax, 0x8(%rcx)
movq 0x580(%rbx), %rax
jmp 0xc9106
testq %rax, %rax
movq 0x8(%rsp), %r13
jne 0xc9fa6
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
movq (%rbx), %r15
movq 0x8(%rbx), %r13
movq 0x8(%r15), %rcx
movq 0x10(%rcx), %rcx
movq 0x10(%rcx), %rcx
movq 0x8(%rcx), %rbp
movq %rax, 0x8(%rsp)
movq %r13, %rdi
movq %rbp, %rsi
callq 0x9c43c
movq %rax, %r12
testq %rax, %rax
jne 0xc9fd3
movq %rbx, %rdi
movq %rbp, %rsi
callq 0x9c492
movq %rax, %r12
movq (%rbx), %r15
movq 0x8(%rbx), %r13
movq 0x10(%r15), %rax
movq 0x8(%rax), %rbp
movq %r13, %rdi
movq %rbp, %rsi
callq 0x9c43c
movq %rax, %r13
testq %rax, %rax
jne 0xc9ffc
movq %rbx, %rdi
movq %rbp, %rsi
callq 0x9c492
movq %rax, %r13
movq 0x90(%rbx), %rax
movq 0x110(%rbx), %r15
cmpq 0x98(%rbx), %rax
ja 0xca022
movq %rbx, %rdi
callq 0xa550
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rcx
movq %rcx, 0x90(%rbx)
movq -0x8(%rax), %rax
movl $0x200001, %ecx         # imm = 0x200001
movq %rcx, (%rax)
movq %r13, 0x8(%rax)
movq %r15, 0x10(%rax)
movq 0x90(%rbx), %rdx
leaq -0x8(%rdx), %rsi
movq %rsi, 0x90(%rbx)
movq -0x8(%rdx), %rdx
movq %rcx, (%rdx)
movq %r12, 0x8(%rdx)
movq %rax, 0x10(%rdx)
movq 0x90(%rbx), %rax
leaq -0x8(%rax), %rsi
movq %rsi, 0x90(%rbx)
movq -0x8(%rax), %rax
movq %rcx, (%rax)
movq 0x8(%rsp), %rcx
movq %rcx, 0x8(%rax)
movq %rdx, 0x10(%rax)
jmp 0xc9106
movq 0x8(%rcx), %r15
movq (%rbx), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %r12
movzbl (%r12), %eax
cmpl $0x1, %eax
je 0xca0cf
cmpl $0xa, %eax
jne 0xca0db
movq 0x8(%rbx), %rdi
movq %r12, %rsi
callq 0x9c43c
movq %rax, %rcx
testq %rax, %rax
jne 0xca0de
movq %rbx, %rdi
movq %r12, %rsi
callq 0x9c492
movq %rax, %rcx
jmp 0xca0de
movq 0x1ec8(%rbx), %rax
jmp 0xc97d8
movq %r12, %rcx
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0xb7d1
jmp 0xc9ebd