// File: /workspace/github_c_makefile_star2_O2/videolan[P]bitstream/examples/dvb_ecmg_test.c
// Function: main
int main(int i_argc, char **ppsz_argv)
{
    if (i_argc != 3) {
        fprintf(stderr, "usage: %s <# streams> <crypto-period (s)> < < <input stream> > <output stream>\n",
                ppsz_argv[0]);
        return EXIT_FAILURE;
    }

    i_wanted_streams = atoi(ppsz_argv[1]);
    i_period = atoi(ppsz_argv[2]);
    i_last_time = time(NULL);

    srand(time(NULL));
    i_channelid = rand();
    i_supercasid = rand();
    send_channel_setup();

    for ( ; ; ) {
        uint8_t *p_tlv_h = malloc(TLVH_HEADER_SIZE + TLV_HEADER_SIZE);
        uint8_t *p_tlv = tlvh_get_tlv(p_tlv_h);
        uint16_t i_type;
        fd_set rset;
        struct timeval timeout;
        int i_ret;

        FD_ZERO(&rset);
        FD_SET(STDIN_FILENO, &rset);
        timeout.tv_sec = SELECT_TIMEOUT;
        timeout.tv_usec = 0;

        if ((i_ret = select(STDIN_FILENO + 1, &rset, NULL, NULL, &timeout)) < 0)
            return EXIT_FAILURE;
        if (!i_ret) {
            goto no_packet;
        }

        if (read_wrapper(p_tlv_h, TLVH_HEADER_SIZE + TLV_HEADER_SIZE) <= 0)
            return EXIT_FAILURE;

        p_tlv_h = realloc(p_tlv_h, TLVH_HEADER_SIZE + TLV_HEADER_SIZE
                                    + tlv_get_length(p_tlv));
        p_tlv = tlvh_get_tlv(p_tlv_h);
        if (read_wrapper(p_tlv + TLV_HEADER_SIZE, tlv_get_length(p_tlv)) <= 0)
            return EXIT_FAILURE;

        if (tlvh_get_version(p_tlv_h) != i_version) {
            send_channel_error(i_channelid, 0x2);
            free(p_tlv_h);
            exit(EXIT_FAILURE);
        }

        i_type = tlv_get_type(p_tlv);

        if (!tlv_validate(p_tlv)) {
            send_channel_error(i_channelid, 0x1);
            free(p_tlv_h);
            exit(EXIT_FAILURE);
        }

        if (!ecmg_validate(p_tlv)) {
            send_channel_error(i_channelid, 0xf);
            free(p_tlv_h);
            exit(EXIT_FAILURE);
        }

        if (b_init && i_type != ECMG_TYPE_CHANNEL_STATUS) {
            send_channel_error(i_channelid, 0x6);
            free(p_tlv_h);
            exit(EXIT_FAILURE);
        }

        switch (i_type) {
            case ECMG_TYPE_CHANNEL_STATUS:
                handle_channel_status(p_tlv);
                break;

            case ECMG_TYPE_CHANNEL_TEST:
                handle_channel_test(p_tlv);
                break;

            case ECMG_TYPE_CHANNEL_ERROR:
                handle_channel_error(p_tlv);
                break;

            case ECMG_TYPE_STREAM_STATUS:
                handle_stream_status(p_tlv);
                break;

            case ECMG_TYPE_STREAM_TEST:
                handle_stream_test(p_tlv);
                break;

            case ECMG_TYPE_STREAM_ERROR:
                handle_stream_error(p_tlv);
                break;

            case ECMG_TYPE_ECM:
                handle_ecm(p_tlv);
                break;

            default:
                send_channel_error(i_channelid, 0x3);
                break;
        }

no_packet:
        free(p_tlv_h);

        if (!b_init) {
            time_t i_time = time(NULL);

            if (i_nb_streams < i_wanted_streams)
                create_stream();

            while (i_last_time < i_time) {
                i_last_time++;
                check_cw();
            }
        }
    }

    return EXIT_SUCCESS;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x4c8, %rsp            # imm = 0x4C8
movq %rsi, %rbx
cmpl $0x3, %edi
jne 0x1c86
movq 0x8(%rbx), %rdi
callq 0x10d0
movl %eax, 0x3d7b(%rip)      # 0x50a0
movq 0x10(%rbx), %rdi
callq 0x10d0
movl %eax, 0x3d70(%rip)      # 0x50a4
xorl %edi, %edi
callq 0x1090
movq %rax, 0x3d66(%rip)      # 0x50a8
xorl %edi, %edi
callq 0x1090
movl %eax, %edi
callq 0x1070
callq 0x1100
movw %ax, 0x3d54(%rip)       # 0x50b0
callq 0x1100
movl %eax, %ebp
movl %eax, 0x3d4b(%rip)      # 0x50b4
leaq 0x41(%rsp), %rbx
movb $0x0, 0x5(%rbx)
movl $0x3010001, -0x1(%rbx)  # imm = 0x3010001
movw $0xfc, 0x3(%rbx)
movzwl 0x3d2a(%rip), %esi      # 0x50b0
movq %rbx, %rdi
callq 0x1eac
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1eef
movzwl 0x2(%rbx), %ecx
rolw $0x8, %cx
movzwl %cx, %ecx
movq %rax, %rdx
subq %rbx, %rdx
addq $0x6, %rdx
cmpq %rcx, %rdx
jg 0x13d9
movl $0x4000100, (%rax)      # imm = 0x4000100
pushq $0x18
popq %rcx
xorl %edx, %edx
cmpq $0x4, %rdx
je 0x13d4
movl %ebp, %esi
shrl %cl, %esi
movb %sil, 0x4(%rax,%rdx)
incq %rdx
addl $-0x8, %ecx
jmp 0x13bd
andw $0x0, 0x8(%rax)
leaq 0x41(%rsp), %rbx
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1eef
movl %eax, %ecx
subl %ebx, %ecx
addl $-0x4, %ecx
rolw $0x8, %cx
leaq 0x40(%rsp), %rdi
movw %cx, 0x3(%rdi)
subq %rdi, %rax
movq %rax, %rsi
callq 0x128f
pushq $0x5
popq %rdi
callq 0x10b0
movq %rax, %r13
xorl %eax, %eax
cmpq $0x10, %rax
je 0x1428
andq $0x0, 0x448(%rsp,%rax,8)
incq %rax
jmp 0x1414
orb $0x1, 0x448(%rsp)
movq $0x1, 0x30(%rsp)
andq $0x0, 0x38(%rsp)
pushq $0x1
popq %rdi
leaq 0x448(%rsp), %rsi
xorl %edx, %edx
xorl %ecx, %ecx
leaq 0x30(%rsp), %r8
callq 0x10a0
testl %eax, %eax
js 0x1ca1
je 0x18c6
movq %r13, %rdi
pushq $0x5
popq %rsi
callq 0x120c
testq %rax, %rax
jle 0x1ca1
movzwl 0x3(%r13), %eax
rolw $0x8, %ax
movzwl %ax, %esi
addq $0x5, %rsi
movq %r13, %rdi
callq 0x10c0
movq %rax, %r13
leaq 0x5(%rax), %r15
movzwl 0x3(%rax), %eax
rolw $0x8, %ax
movzwl %ax, %esi
movq %r15, %rdi
callq 0x120c
testq %rax, %rax
jle 0x1ca1
cmpb $0x1, (%r13)
jne 0x1cd5
movq %r13, %r12
incq %r12
movzwl 0x1(%r13), %ecx
movzwl 0x3(%r13), %eax
rolw $0x8, %cx
movw %cx, 0xc(%rsp)
movzwl %cx, %edi
rolw $0x8, %ax
movzwl %ax, %eax
movq %r15, %rcx
subq %r12, %rcx
cmpq %rax, %rcx
jg 0x150f
movzwl 0x2(%r15), %edx
rolw $0x8, %dx
movzwl %dx, %edx
leaq (%r15,%rdx), %rsi
subq %r12, %rsi
cmpq %rax, %rsi
jg 0x150f
addq %rdx, %r15
addq $0x4, %r15
jmp 0x14e3
addq $-0x4, %rcx
cmpq %rax, %rcx
jne 0x1ce0
andw $0x0, 0x44(%rsp)
andl $0x0, 0x40(%rsp)
leal -0x101(%rdi), %eax
cmpl $0x5, %eax
movq %rdi, 0x10(%rsp)
jbe 0x1558
leal -0x1(%rdi), %eax
cmpl $0x4, %eax
ja 0x1571
leaq 0x1aca(%rip), %rcx      # 0x3010
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1b64(%rip), %r14      # 0x30ba
jmp 0x15cc
leaq 0x1ac5(%rip), %rcx      # 0x3024
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1bc1(%rip), %r14      # 0x3130
jmp 0x15cc
cmpl $0x201, %edi            # imm = 0x201
je 0x15a1
leaq 0x40(%rsp), %r14
cmpl $0x202, %edi            # imm = 0x202
jne 0x15cc
leaq 0x1c13(%rip), %r14      # 0x31a0
jmp 0x15cc
leaq 0x1b3a(%rip), %r14      # 0x30d0
jmp 0x15cc
leaq 0x1b51(%rip), %r14      # 0x30f0
jmp 0x15cc
leaq 0x1bc8(%rip), %r14      # 0x3170
jmp 0x15cc
leaq 0x1a8f(%rip), %r14      # 0x3040
jmp 0x15cc
leaq 0x1aa6(%rip), %r14      # 0x3060
jmp 0x15cc
leaq 0x1b8d(%rip), %r14      # 0x3150
jmp 0x15cc
leaq 0x1b44(%rip), %r14      # 0x3110
movzwl (%r14), %r15d
xorl %ebx, %ebx
testw %r15w, %r15w
je 0x165f
xorl %ebp, %ebp
movzwl %bp, %esi
movq %r12, %rdi
callq 0x1f1f
testq %rax, %rax
je 0x1604
incl %ebp
movzwl (%rax), %eax
rolw $0x8, %ax
xorl %ecx, %ecx
cmpw %r15w, %ax
sete %cl
addl %ecx, %ebx
jmp 0x15de
cmpw 0x2(%r14), %bx
jb 0x1cb6
leaq 0x6(%r14), %rax
cmpw 0x4(%r14), %bx
movq %rax, %r14
jbe 0x15cc
jmp 0x1cb6
movzwl (%rax), %ecx
rolw $0x8, %cx
movzwl 0x2(%rax), %eax
rolw $0x8, %ax
cmpw $0x19, %cx
ja 0x164c
movzwl %cx, %ecx
leaq 0x1b7f(%rip), %rdx      # 0x31c0
cmpw (%rdx,%rcx,2), %ax
jae 0x165d
jmp 0x1cb6
cmpw $0x7000, %cx            # imm = 0x7000
jne 0x165d
cmpw $0x2, %ax
jb 0x1cb6
incl %ebx
movzwl %bx, %esi
movq %r12, %rdi
callq 0x1f1f
testq %rax, %rax
jne 0x1622
movb 0x3a43(%rip), %bl       # 0x50b8
testb %bl, %bl
movzwl 0xc(%rsp), %eax
jne 0x1688
cmpw $0x3, %ax
jne 0x1d00
cmpw $0x3, %ax
je 0x17e1
movq 0x10(%rsp), %rax
cmpl $0x103, %eax            # imm = 0x103
je 0x16db
cmpl $0x202, %eax            # imm = 0x202
je 0x1716
cmpl $0x106, %eax            # imm = 0x106
je 0x1bdc
cmpl $0x2, %eax
je 0x1d95
cmpl $0x5, %eax
je 0x1d5d
cmpl $0x102, %eax            # imm = 0x102
je 0x1d27
movzwl 0x39dc(%rip), %edi      # 0x50b0
pushq $0x3
jmp 0x18c0
movq %r12, %rdi
callq 0x1fa9
movl %eax, %ebp
movq %r12, %rdi
callq 0x1fd1
cmpw 0x39bc(%rip), %bp       # 0x50b0
jne 0x1d0b
movzwl %ax, %ebp
movl %ebp, %edi
callq 0x1fe4
testq %rax, %rax
je 0x1d13
movb $0x0, 0x6(%rax)
jmp 0x18c6
movq %r12, %rdi
callq 0x1fa9
movl %eax, %ebp
movq %r12, %rdi
callq 0x1fd1
cmpw 0x3981(%rip), %bp       # 0x50b0
jne 0x18bb
movzwl %ax, %ebp
movl %ebp, %edi
callq 0x1fe4
testq %rax, %rax
je 0x1bd0
movq %rax, %r15
movq %r12, %rdi
pushq $0x12
popq %rsi
callq 0x1eef
movzwl 0x4(%rax), %eax
rolw $0x8, %ax
cmpw 0x4(%r15), %ax
jne 0x1c24
cmpb $0x0, 0x3950(%rip)      # 0x50c0
jne 0x18c6
movq %r12, %rdi
pushq $0x15
popq %rsi
callq 0x1eef
movzwl 0x2(%rax), %edx
rolw $0x8, %dx
cmpw $0x2, %dx
jbe 0x1c45
movzbl 0x5(%rax), %esi
movl %esi, %ecx
andl $0xf, %ecx
shll $0x8, %ecx
movzbl 0x6(%rax), %eax
leal (%rcx,%rax), %edi
addl $0x3, %edi
cmpw %di, %dx
jne 0x1c65
orl %eax, %ecx
testb %sil, %sil
setns %al
cmpw $0x9, %cx
setae %cl
orb %al, %cl
jne 0x18c6
movq 0x3828(%rip), %rax      # 0x4ff8
movq (%rax), %rcx
leaq 0x1c61(%rip), %rdi      # 0x343b
pushq $0x14
jmp 0x1c78
movq %r12, %rdi
callq 0x1fa9
movzwl %ax, %r15d
cmpw 0x38bc(%rip), %ax       # 0x50b0
jne 0x1d1c
testb %bl, %bl
jne 0x18c6
movq %r12, %rdi
pushq $0x8
popq %rsi
callq 0x1eef
movzwl 0x4(%rax), %eax
rolw $0x8, %ax
movzwl %ax, %edx
cmpl %edx, 0x3882(%rip)      # 0x50a0
jg 0x1dce
movq %r12, %rdi
pushq $0x9
popq %rsi
callq 0x1eef
movzwl 0x4(%rax), %eax
rolw $0x8, %ax
movzwl %ax, %edx
imull $0xa, 0x3863(%rip), %eax # 0x50a4
cmpl %edx, %eax
jl 0x1dbb
movq %r12, %rdi
pushq $0x2
popq %rsi
callq 0x1eef
movb 0x4(%rax), %al
movb %al, 0x3863(%rip)       # 0x50c0
movq %r12, %rdi
pushq $0xb
popq %rsi
callq 0x1eef
movb 0x4(%rax), %al
movb %al, 0x3850(%rip)       # 0x50c1
movq %r12, %rdi
pushq $0xa
popq %rsi
callq 0x1eef
movb 0x4(%rax), %al
movb %al, 0x383d(%rip)       # 0x50c2
movq 0x376c(%rip), %rax      # 0x4ff8
movq (%rax), %rdi
movl 0x381e(%rip), %r8d      # 0x50b4
leaq 0x1a64(%rip), %rsi      # 0x3301
movl %r15d, %edx
pushq $0x1
popq %rcx
xorl %eax, %eax
callq 0x1080
movb $0x1, 0x3807(%rip)      # 0x50b8
movq %r13, %rdi
callq 0x1030
jmp 0x18dd
movzwl %bp, %edi
pushq $0x6
popq %rsi
callq 0x1e21
movb 0x37ec(%rip), %bl       # 0x50b8
movq %r13, %rdi
callq 0x1030
cmpb $0x1, %bl
jne 0x1407
xorl %edi, %edi
callq 0x1090
movq %rax, 0x18(%rsp)
movslq 0x37cc(%rip), %rbx      # 0x50bc
cmpl 0x37aa(%rip), %ebx      # 0x50a0
jl 0x1ac5
movq 0x37a5(%rip), %rax      # 0x50a8
cmpq 0x18(%rsp), %rax
jge 0x1407
incq %rax
movq %rax, 0x3790(%rip)      # 0x50a8
movslq 0x3785(%rip), %rcx      # 0x50a4
cqto
idivq %rcx
movq %rdx, %rsi
movl 0x378f(%rip), %ecx      # 0x50bc
xorl %edi, %edi
movq %rdx, 0x20(%rsp)
movslq %ecx, %rax
cmpq %rax, %rdi
jge 0x18fc
movq 0x3785(%rip), %rax      # 0x50c8
movq (%rax,%rdi,8), %rax
movq %rax, 0x10(%rsp)
cmpb $0x0, 0x6(%rax)
jne 0x1abd
movl %edi, %eax
cltd
idivl 0x3745(%rip)            # 0x50a4
cmpl %esi, %edx
jne 0x1abd
movq %rdi, 0x28(%rsp)
movb $0x0, 0x46(%rsp)
movl $0x3010201, 0x40(%rsp)  # imm = 0x3010201
movw $0xfc, 0x44(%rsp)
movzwl 0x3729(%rip), %esi      # 0x50b0
leaq 0x41(%rsp), %rbx
movq %rbx, %rdi
callq 0x1eac
movq 0x10(%rsp), %rax
movzwl (%rax), %esi
movq %rbx, %rdi
callq 0x20aa
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1eef
movzwl 0x43(%rsp), %ecx
rolw $0x8, %cx
movzwl %cx, %ecx
movq %rax, %rdx
subq %rbx, %rdx
addq $0x4, %rdx
cmpq %rcx, %rdx
jg 0x19e3
movq 0x10(%rsp), %rcx
movzwl 0x4(%rcx), %ecx
movl $0x2001200, (%rax)      # imm = 0x2001200
movb %ch, 0x4(%rax)
movb %cl, 0x5(%rax)
andw $0x0, 0x6(%rax)
pushq $0x1
popq %r13
movzbl 0x36d3(%rip), %ebx      # 0x50c1
cmpl %ebx, %r13d
ja 0x1a7e
movq 0x10(%rsp), %rax
movzwl 0x4(%rax), %r15d
movzbl 0x36b9(%rip), %r14d     # 0x50c2
callq 0x1100
movl %eax, 0xc(%rsp)
callq 0x1100
movl %eax, %ebp
leaq 0x41(%rsp), %r12
movq %r12, %rdi
xorl %esi, %esi
callq 0x1eef
movzwl 0x43(%rsp), %ecx
rolw $0x8, %cx
movzwl %cx, %ecx
movq %rax, %rdx
subq %r12, %rdx
addq $0xc, %rdx
cmpq %rcx, %rdx
jg 0x1a76
movl %r14d, %ecx
addl %r15d, %ecx
subl %ebx, %ecx
addl %r13d, %ecx
addb %r14b, %r15b
subb %bl, %r15b
movzbl %r15b, %edx
addl %r13d, %edx
movl $0xa001400, (%rax)      # imm = 0xA001400
movb %ch, 0x4(%rax)
movb %dl, 0x5(%rax)
movl 0xc(%rsp), %ecx
movl %ecx, 0x6(%rax)
movl %ebp, 0xa(%rax)
andw $0x0, 0xe(%rax)
incl %r13d
jmp 0x19e7
leaq 0x41(%rsp), %rbx
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1eef
movl %eax, %ecx
subl %ebx, %ecx
addl $-0x4, %ecx
rolw $0x8, %cx
movw %cx, 0x43(%rsp)
leaq 0x40(%rsp), %rdi
subq %rdi, %rax
movq %rax, %rsi
callq 0x128f
movl 0x3609(%rip), %ecx      # 0x50bc
movq 0x20(%rsp), %rsi
movq 0x28(%rsp), %rdi
incq %rdi
jmp 0x1934
pushq $0x8
popq %rdi
callq 0x10b0
movq %rax, %r15
movq 0x35f1(%rip), %rdi      # 0x50c8
leaq 0x1(%rbx), %r14
movl %r14d, 0x35da(%rip)     # 0x50bc
leaq 0x8(,%rbx,8), %rsi
callq 0x10c0
movq %rax, 0x35d2(%rip)      # 0x50c8
movq %r15, (%rax,%rbx,8)
movw %r14w, (%r15)
movw %r14w, 0x2(%r15)
movw $0xff, 0x4(%r15)
movb $0x1, 0x6(%r15)
movb $0x0, 0x46(%rsp)
movl $0x3010101, 0x40(%rsp)  # imm = 0x3010101
movw $0xf7, 0x44(%rsp)
movzwl 0x3586(%rip), %esi      # 0x50b0
leaq 0x41(%rsp), %rbx
movq %rbx, %rdi
callq 0x1eac
movzwl (%r15), %esi
movq %rbx, %rdi
callq 0x20aa
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1eef
movzwl 0x43(%rsp), %ecx
rolw $0x8, %cx
movzwl %cx, %ecx
movq %rax, %rdx
subq %rbx, %rdx
addq $0x4, %rdx
cmpq %rcx, %rdx
jg 0x1b80
imull $0xa, 0x3535(%rip), %ecx # 0x50a4
movl $0x2001000, (%rax)      # imm = 0x2001000
movb %ch, 0x4(%rax)
movb %cl, 0x5(%rax)
andw $0x0, 0x6(%rax)
leaq 0x41(%rsp), %rbx
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1eef
movl %eax, %ecx
subl %ebx, %ecx
addl $-0x4, %ecx
rolw $0x8, %cx
movw %cx, 0x43(%rsp)
leaq 0x40(%rsp), %rdi
subq %rdi, %rax
movq %rax, %rsi
callq 0x128f
movq 0x3442(%rip), %rax      # 0x4ff8
movq (%rax), %rdi
movzwl (%r15), %edx
leaq 0x188c(%rip), %rsi      # 0x3450
xorl %eax, %eax
callq 0x1080
jmp 0x18fc
movl %ebp, %edi
callq 0x200f
jmp 0x18c6
movq %r12, %rdi
callq 0x1fa9
movl %eax, %ebp
movq %r12, %rdi
callq 0x1fd1
movq 0x3403(%rip), %rcx      # 0x4ff8
movq (%rcx), %r15
movzwl %bp, %ebp
movzwl %ax, %ebx
movq %r12, %rdi
callq 0x1fbc
movzwl %ax, %r8d
movq %r15, %rdi
leaq 0x17b0(%rip), %rsi      # 0x33c4
movl %ebp, %edx
movl %ebx, %ecx
xorl %eax, %eax
callq 0x1080
jmp 0x18c6
movq 0x33cd(%rip), %rax      # 0x4ff8
movq (%rax), %rcx
leaq 0x17cd(%rip), %rdi      # 0x3402
pushq $0x10
popq %rsi
pushq $0x1
popq %rdx
callq 0x10f0
jmp 0x1769
movzwl %dx, %edx
movq 0x33a9(%rip), %rax      # 0x4ff8
movq (%rax), %rdi
leaq 0x17ba(%rip), %rsi      # 0x3413
xorl %eax, %eax
callq 0x1080
jmp 0x18c6
movq 0x338c(%rip), %rax      # 0x4ff8
movq (%rax), %rcx
leaq 0x17b2(%rip), %rdi      # 0x3428
pushq $0x12
popq %rsi
pushq $0x1
popq %rdx
callq 0x10f0
jmp 0x18c6
movq 0x336b(%rip), %rax      # 0x4ff8
movq (%rax), %rdi
movq (%rbx), %rdx
leaq 0x15a5(%rip), %rsi      # 0x323f
xorl %eax, %eax
callq 0x1080
pushq $0x1
popq %rax
addq $0x4c8, %rsp            # imm = 0x4C8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movzwl 0x33f3(%rip), %edi      # 0x50b0
pushq $0xf
popq %rsi
callq 0x1e21
movq %r13, %rdi
callq 0x1030
pushq $0x1
popq %rdi
callq 0x10e0
movzwl 0x33d4(%rip), %edi      # 0x50b0
pushq $0x2
jmp 0x1cbf
movzwl 0x33c9(%rip), %edi      # 0x50b0
pushq $0x1
popq %rbx
movl %ebx, %esi
callq 0x1e21
movq %r13, %rdi
callq 0x1030
movl %ebx, %edi
callq 0x10e0
movzwl 0x33a9(%rip), %edi      # 0x50b0
pushq $0x6
jmp 0x1cbf
movzwl %bp, %edi
jmp 0x1df3
movl %ebp, %edi
callq 0x200f
jmp 0x1ccd
pushq $0x6
popq %rsi
movl %r15d, %edi
jmp 0x1df6
movq %r12, %rdi
callq 0x1fa9
movl %eax, %ebx
movq %r12, %rdi
callq 0x1fd1
cmpw 0x3370(%rip), %bx       # 0x50b0
jne 0x1deb
movzwl %ax, %ebx
movl %ebx, %edi
callq 0x1fe4
testq %rax, %rax
jne 0x1e00
movl %ebx, %edi
jmp 0x1d15
movq %r12, %rdi
callq 0x1fa9
movq 0x328c(%rip), %rcx      # 0x4ff8
movq (%rcx), %rbx
movzwl %ax, %ebp
movq %r12, %rdi
callq 0x1fbc
movzwl %ax, %ecx
leaq 0x15ce(%rip), %rsi      # 0x3352
movq %rbx, %rdi
movl %ebp, %edx
xorl %eax, %eax
callq 0x1080
jmp 0x1ccd
movq %r12, %rdi
callq 0x1fa9
cmpw 0x330c(%rip), %ax       # 0x50b0
jne 0x1df0
movq 0x324b(%rip), %rax      # 0x4ff8
movq (%rax), %rcx
leaq 0x1584(%rip), %rdi      # 0x333b
pushq $0x16
jmp 0x1e13
movq 0x3236(%rip), %rax      # 0x4ff8
movq (%rax), %rdi
leaq 0x1516(%rip), %rsi      # 0x32e2
jmp 0x1ddf
movq 0x3223(%rip), %rax      # 0x4ff8
movq (%rax), %rdi
leaq 0x14df(%rip), %rsi      # 0x32be
xorl %eax, %eax
callq 0x1080
jmp 0x1ccd
movzwl %bx, %edi
jmp 0x1df3
movzwl %ax, %edi
pushq $0x6
popq %rsi
callq 0x1e21
jmp 0x1ccd
movq 0x31f1(%rip), %rax      # 0x4ff8
movq (%rax), %rcx
leaq 0x159d(%rip), %rdi      # 0x33ae
pushq $0x15
popq %rsi
pushq $0x1
popq %rdx
callq 0x10f0
jmp 0x1ccd