// File: /workspace/github_cpp_makefile_star2_O3/CMU-SAFARI[P]MQSim/src/ssd/TSU_Priority_OutOfOrder.cpp
// Function: SSD_Components::TSU_Priority_OutOfOrder::TSU_Priority_OutOfOrder(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, SSD_Components::FTL*, SSD_Components::NVM_PHY_ONFI_NVDDR2*, unsigned int, unsigned int, unsigned int, unsigned int, unsigned long, unsigned long, unsigned long, bool, bool)
TSU_Priority_OutOfOrder::TSU_Priority_OutOfOrder(const sim_object_id_type &id,
                                                 FTL *ftl,
                                                 NVM_PHY_ONFI_NVDDR2 *NVMController,
                                                 unsigned int ChannelCount,
                                                 unsigned int ChipNoPerChannel,
                                                 unsigned int DieNoPerChip,
                                                 unsigned int PlaneNoPerDie,
                                                 sim_time_type WriteReasonableSuspensionTimeForRead,
                                                 sim_time_type EraseReasonableSuspensionTimeForRead,
                                                 sim_time_type EraseReasonableSuspensionTimeForWrite,
                                                 bool EraseSuspensionEnabled,
                                                 bool ProgramSuspensionEnabled)
    : TSU_Base(id,
               ftl,
               NVMController,
               Flash_Scheduling_Type::PRIORITY_OUT_OF_ORDER,
               ChannelCount,
               ChipNoPerChannel,
               DieNoPerChip,
               PlaneNoPerDie,
               WriteReasonableSuspensionTimeForRead,
               EraseReasonableSuspensionTimeForRead,
               EraseReasonableSuspensionTimeForWrite,
               EraseSuspensionEnabled,
               ProgramSuspensionEnabled)
{
    UserReadTRQueue = new Flash_Transaction_Queue **[channel_count];
    UserWriteTRQueue = new Flash_Transaction_Queue **[channel_count];
    GCReadTRQueue = new Flash_Transaction_Queue *[channel_count];
    GCWriteTRQueue = new Flash_Transaction_Queue *[channel_count];
    GCEraseTRQueue = new Flash_Transaction_Queue *[channel_count];
    MappingReadTRQueue = new Flash_Transaction_Queue *[channel_count];
    MappingWriteTRQueue = new Flash_Transaction_Queue *[channel_count];
    nextPriorityClassRead = new IO_Flow_Priority_Class::Priority *[channel_count];
    nextPriorityClassWrite = new IO_Flow_Priority_Class::Priority * [channel_count];
    currentWeightRead = new int* [channel_count];
    currentWeightWrite = new int *[channel_count];
    for (unsigned int channelID = 0; channelID < channel_count; channelID++)
    {
        UserReadTRQueue[channelID] = new Flash_Transaction_Queue *[chip_no_per_channel];
        UserWriteTRQueue[channelID] = new Flash_Transaction_Queue *[chip_no_per_channel];
        GCReadTRQueue[channelID] = new Flash_Transaction_Queue[chip_no_per_channel];
        GCWriteTRQueue[channelID] = new Flash_Transaction_Queue[chip_no_per_channel];
        GCEraseTRQueue[channelID] = new Flash_Transaction_Queue[chip_no_per_channel];
        MappingReadTRQueue[channelID] = new Flash_Transaction_Queue[chip_no_per_channel];
        MappingWriteTRQueue[channelID] = new Flash_Transaction_Queue[chip_no_per_channel];
        nextPriorityClassRead[channelID] = new IO_Flow_Priority_Class::Priority[chip_no_per_channel];
        nextPriorityClassWrite[channelID] = new IO_Flow_Priority_Class::Priority[chip_no_per_channel];
        currentWeightRead[channelID] = new int[chip_no_per_channel];
        currentWeightWrite[channelID] = new int[chip_no_per_channel];
        for (unsigned int chipId = 0; chipId < chip_no_per_channel; chipId++)
        {
            UserReadTRQueue[channelID][chipId] = new Flash_Transaction_Queue[IO_Flow_Priority_Class::NUMBER_OF_PRIORITY_LEVELS];
            UserWriteTRQueue[channelID][chipId] = new Flash_Transaction_Queue[IO_Flow_Priority_Class::NUMBER_OF_PRIORITY_LEVELS];
            nextPriorityClassRead[channelID][chipId] = IO_Flow_Priority_Class::URGENT;
            nextPriorityClassWrite[channelID][chipId] = IO_Flow_Priority_Class::URGENT;
            currentWeightRead[channelID][chipId] = IO_Flow_Priority_Class::get_scheduling_weight(IO_Flow_Priority_Class::HIGH);
            currentWeightWrite[channelID][chipId] = IO_Flow_Priority_Class::get_scheduling_weight(IO_Flow_Priority_Class::HIGH);
            for (unsigned int priorityClass = 0; priorityClass < IO_Flow_Priority_Class::NUMBER_OF_PRIORITY_LEVELS; priorityClass++)
            {
                UserReadTRQueue[channelID][chipId][priorityClass].Set_id("User_Read_TR_Queue@" + std::to_string(channelID) + "@" + std::to_string(chipId) + "@" + IO_Flow_Priority_Class::to_string(priorityClass));
                UserWriteTRQueue[channelID][chipId][priorityClass].Set_id("User_Write_TR_Queue@" + std::to_string(channelID) + "@" + std::to_string(chipId) + "@" + IO_Flow_Priority_Class::to_string(priorityClass));
            }

            GCReadTRQueue[channelID][chipId].Set_id("GC_Read_TR_Queue@" + std::to_string(channelID) + "@" + std::to_string(chipId));
            MappingReadTRQueue[channelID][chipId].Set_id("Mapping_Read_TR_Queue@" + std::to_string(channelID) + "@" + std::to_string(chipId));
            MappingWriteTRQueue[channelID][chipId].Set_id("Mapping_Write_TR_Queue@" + std::to_string(channelID) + "@" + std::to_string(chipId));
            GCWriteTRQueue[channelID][chipId].Set_id("GC_Write_TR_Queue@" + std::to_string(channelID) + "@" + std::to_string(chipId));
            GCEraseTRQueue[channelID][chipId].Set_id("GC_Erase_TR_Queue@" + std::to_string(channelID) + "@" + std::to_string(chipId));
        }
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x1e8, %rsp            # imm = 0x1E8
movl %r9d, %eax
movl %r8d, %r9d
movq %rdi, %r13
movl 0x220(%rsp), %r10d
xorl %r11d, %r11d
cmpq $0x0, 0x230(%rsp)
setne %r11b
xorl %ebx, %ebx
cmpq $0x0, 0x238(%rsp)
movl 0x228(%rsp), %r14d
setne %bl
movzbl 0x248(%rsp), %r15d
movzbl 0x250(%rsp), %r12d
movl $0x1, %r8d
pushq %r12
pushq %r15
pushq 0x250(%rsp)
pushq %rbx
pushq %r11
pushq %r14
pushq %r10
pushq %rax
callq 0x4a458
addq $0x40, %rsp
leaq 0x21201(%rip), %rax     # 0x6ecb8
movq %rax, (%r13)
movl 0x44(%r13), %r14d
leaq (,%r14,8), %rbx
movq %rbx, %rdi
movq %r13, 0x18(%rsp)
callq 0x7030
movq %rax, 0xb0(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xb8(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xc0(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xc8(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xd0(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xd8(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xe0(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xe8(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xf0(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0xf8(%r13)
movq %rbx, %rdi
callq 0x7030
movq %rax, 0x100(%r13)
testl %r14d, %r14d
je 0x4f89d
movq 0x18(%rsp), %rax
movl 0x48(%rax), %eax
leaq 0xcace(%rip), %r13      # 0x5a657
leaq 0x60(%rsp), %r12
movq $0x0, 0x10(%rsp)
movl %eax, %r15d
leaq (,%r15,8), %rbx
movq %rbx, %rdi
movq 0x18(%rsp), %r14
callq 0x7030
movq 0x10(%rsp), %rbp
movq 0xb0(%r14), %rcx
movq %rax, (%rcx,%rbp,8)
movq %rbx, %rdi
callq 0x7030
movq 0xb8(%r14), %rcx
movq %rax, (%rcx,%rbp,8)
movq %r15, %rax
shlq $0x8, %rax
leaq (%rax,%r15,8), %rdi
addq $0x8, %rdi
callq 0x7030
movq %rax, %r14
movq %r15, (%rax)
leaq 0x8(%rax), %rbx
testq %r15, %r15
je 0x4dc2e
imulq $-0x108, %r15, %rbp     # imm = 0xFEF8
movq %rbx, 0x8(%rsp)
xorl %r15d, %r15d
movq %rbx, %rdi
callq 0x3ddf4
addq $-0x108, %r15           # imm = 0xFEF8
addq $0x108, %rbx            # imm = 0x108
cmpq %r15, %rbp
jne 0x4dc04
movq 0x18(%rsp), %rcx
movl 0x48(%rcx), %eax
movq 0x8(%rsp), %rbx
jmp 0x4dc35
xorl %eax, %eax
movq 0x18(%rsp), %rcx
movq 0xc0(%rcx), %rcx
movq 0x10(%rsp), %rdx
movq %rbx, (%rcx,%rdx,8)
movl %eax, %ebx
movq %rbx, %rax
shlq $0x8, %rax
leaq (%rax,%rbx,8), %rdi
addq $0x8, %rdi
callq 0x7030
movq %rax, %r14
movq %rbx, (%rax)
leaq 0x8(%rax), %rsi
testq %rbx, %rbx
je 0x4dca6
imulq $-0x108, %rbx, %rbp     # imm = 0xFEF8
movq %rsi, 0x8(%rsp)
movq %rsi, %rbx
xorl %r15d, %r15d
movq %rbx, %rdi
callq 0x3ddf4
addq $-0x108, %r15           # imm = 0xFEF8
addq $0x108, %rbx            # imm = 0x108
cmpq %r15, %rbp
jne 0x4dc7c
movq 0x18(%rsp), %rcx
movl 0x48(%rcx), %eax
movq 0x8(%rsp), %rsi
jmp 0x4dcad
xorl %eax, %eax
movq 0x18(%rsp), %rcx
movq 0xc8(%rcx), %rcx
movq 0x10(%rsp), %rdx
movq %rsi, (%rcx,%rdx,8)
movl %eax, %ebx
movq %rbx, %rax
shlq $0x8, %rax
leaq (%rax,%rbx,8), %rdi
addq $0x8, %rdi
callq 0x7030
movq %rax, %r14
movq %rbx, (%rax)
leaq 0x8(%rax), %rsi
testq %rbx, %rbx
je 0x4dd1e
imulq $-0x108, %rbx, %rbp     # imm = 0xFEF8
movq %rsi, 0x8(%rsp)
movq %rsi, %rbx
xorl %r15d, %r15d
movq %rbx, %rdi
callq 0x3ddf4
addq $-0x108, %r15           # imm = 0xFEF8
addq $0x108, %rbx            # imm = 0x108
cmpq %r15, %rbp
jne 0x4dcf4
movq 0x18(%rsp), %rcx
movl 0x48(%rcx), %eax
movq 0x8(%rsp), %rsi
jmp 0x4dd25
xorl %eax, %eax
movq 0x18(%rsp), %rcx
movq 0xd0(%rcx), %rcx
movq 0x10(%rsp), %rdx
movq %rsi, (%rcx,%rdx,8)
movl %eax, %ebx
movq %rbx, %rax
shlq $0x8, %rax
leaq (%rax,%rbx,8), %rdi
addq $0x8, %rdi
callq 0x7030
movq %rax, %r14
movq %rbx, (%rax)
leaq 0x8(%rax), %rsi
testq %rbx, %rbx
je 0x4dd96
imulq $-0x108, %rbx, %rbp     # imm = 0xFEF8
movq %rsi, 0x8(%rsp)
movq %rsi, %rbx
xorl %r15d, %r15d
movq %rbx, %rdi
callq 0x3ddf4
addq $-0x108, %r15           # imm = 0xFEF8
addq $0x108, %rbx            # imm = 0x108
cmpq %r15, %rbp
jne 0x4dd6c
movq 0x18(%rsp), %rcx
movl 0x48(%rcx), %eax
movq 0x8(%rsp), %rsi
jmp 0x4dd9d
xorl %eax, %eax
movq 0x18(%rsp), %rcx
movq 0xd8(%rcx), %rcx
movq 0x10(%rsp), %rdx
movq %rsi, (%rcx,%rdx,8)
movl %eax, %ebx
movq %rbx, %rax
shlq $0x8, %rax
leaq (%rax,%rbx,8), %rdi
addq $0x8, %rdi
callq 0x7030
movq %rax, %r14
movq %rbx, (%rax)
addq $0x8, %rax
testq %rbx, %rbx
movq %rax, 0x8(%rsp)
je 0x4de0a
imulq $-0x108, %rbx, %rbp     # imm = 0xFEF8
movq %rax, %rbx
xorl %r15d, %r15d
movq %rbx, %rdi
callq 0x3ddf4
addq $-0x108, %r15           # imm = 0xFEF8
addq $0x108, %rbx            # imm = 0x108
cmpq %r15, %rbp
jne 0x4dde4
movq 0x18(%rsp), %r15
movl 0x48(%r15), %r14d
jmp 0x4de12
xorl %r14d, %r14d
movq 0x18(%rsp), %r15
movq 0xe0(%r15), %rax
movq 0x10(%rsp), %rbp
movq 0x8(%rsp), %rcx
movq %rcx, (%rax,%rbp,8)
movl %r14d, %ebx
shlq $0x2, %rbx
movq %rbx, %rdi
callq 0x7030
movq 0xe8(%r15), %rcx
movq %rax, (%rcx,%rbp,8)
movq %rbx, %rdi
callq 0x7030
movq 0xf0(%r15), %rcx
movq %rax, (%rcx,%rbp,8)
movq %rbx, %rdi
callq 0x7030
movq 0xf8(%r15), %rcx
movq %rax, (%rcx,%rbp,8)
movq %rbx, %rdi
callq 0x7030
movq 0x100(%r15), %rcx
movq %rax, (%rcx,%rbp,8)
testl %r14d, %r14d
je 0x4f87d
movq $0x0, 0x8(%rsp)
movl $0x428, %edi            # imm = 0x428
callq 0x7030
movq %rax, %r14
movq $0x4, (%rax)
leaq 0x8(%rax), %rbx
movl $0x8, %r15d
leaq (%r14,%r15), %rdi
callq 0x3ddf4
addq $0x108, %r15            # imm = 0x108
cmpq $0x428, %r15            # imm = 0x428
jne 0x4deaa
movq 0x18(%rsp), %rax
movq 0xb0(%rax), %rax
movq 0x10(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x8(%rsp), %rcx
movq %rbx, (%rax,%rcx,8)
movl $0x428, %edi            # imm = 0x428
callq 0x7030
movq %rax, %r14
movq $0x4, (%rax)
leaq 0x8(%rax), %rbx
movl $0x8, %r15d
leaq (%r14,%r15), %rdi
callq 0x3ddf4
addq $0x108, %r15            # imm = 0x108
cmpq $0x428, %r15            # imm = 0x428
jne 0x4deff
movq 0x18(%rsp), %rcx
movq 0xb8(%rcx), %rax
movq 0x10(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x8(%rsp), %rdi
movq %rbx, (%rax,%rdi,8)
movq 0xe8(%rcx), %rax
movq (%rax,%rsi,8), %rax
xorl %edx, %edx
movl %edx, (%rax,%rdi,4)
movq 0xf0(%rcx), %rax
movq (%rax,%rsi,8), %rax
movl %edx, (%rax,%rdi,4)
movq 0xf8(%rcx), %rax
movq (%rax,%rsi,8), %rax
movl $0x4, %edx
movl %edx, (%rax,%rdi,4)
movq 0x100(%rcx), %rax
movq (%rax,%rsi,8), %rax
movl %edx, (%rax,%rdi,4)
xorl %r15d, %r15d
movq 0x18(%rsp), %rax
movq 0xb0(%rax), %rax
movq 0x10(%rsp), %rdx
movq (%rax,%rdx,8), %rax
movq %r15, %rcx
shlq $0x8, %rcx
leaq (%rcx,%r15,8), %rbx
movq 0x8(%rsp), %rcx
movq (%rax,%rcx,8), %r14
addq %rbx, %r14
movl $0x1, %eax
cmpq $0xa, %rdx
jb 0x4dff6
movl $0x4, %eax
movq 0x10(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4dfef
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4dff4
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4dff6
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4dfb9
addl $-0x3, %eax
jmp 0x4dff6
addl $-0x2, %eax
jmp 0x4dff6
decl %eax
movq %r12, %rbp
movq %r13, %r12
movl %eax, %esi
leaq 0xf8(%rsp), %rax
movq %rax, 0xe8(%rsp)
leaq 0xe8(%rsp), %r13
movq %r13, %rdi
xorl %edx, %edx
callq 0x7420
movq 0xe8(%rsp), %rdi
movl 0xf0(%rsp), %esi
movq 0x10(%rsp), %rdx
callq 0xaec5
movl $0x13, %r8d
movq %r13, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xc5d1(%rip), %rcx      # 0x5a61e
callq 0x73e0
leaq 0x70(%rsp), %rsi
movq %rsi, 0x60(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4e07a
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x4e080
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %r12, %r13
movq 0x8(%rax), %rdx
movq %rdx, 0x68(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbp, %r12
movq %rbp, %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x90(%rsp), %rsi
movq %rsi, 0x80(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4e0dd
movq %rdx, 0x80(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x90(%rsp)
jmp 0x4e0e3
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
leaq 0xa0(%rsp), %rbp
movq 0x8(%rax), %rdx
movq %rdx, 0x88(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %eax
cmpq $0xa, 0x8(%rsp)
jb 0x4e15a
movl $0x4, %eax
movq 0x8(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4e153
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4e158
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4e15a
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4e11d
addl $-0x3, %eax
jmp 0x4e15a
addl $-0x2, %eax
jmp 0x4e15a
decl %eax
movl %eax, %esi
leaq 0xb0(%rsp), %rax
movq %rax, 0xa0(%rsp)
movq %rbp, %rdi
xorl %edx, %edx
callq 0x7420
movq 0xa0(%rsp), %rdi
movl 0xa8(%rsp), %esi
movq 0x8(%rsp), %rdx
callq 0xaec5
movq 0x80(%rsp), %rcx
movl $0xf, %edi
leaq 0x90(%rsp), %rax
cmpq %rax, %rcx
je 0x4e1b1
movq 0x90(%rsp), %rdi
movq 0x88(%rsp), %r8
movq 0xa0(%rsp), %rsi
movq 0xa8(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4e1f1
movl $0xf, %edi
leaq 0xb0(%rsp), %r9
cmpq %r9, %rsi
je 0x4e1ec
movq 0xb0(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4e200
leaq 0x80(%rsp), %rdi
callq 0x7130
jmp 0x4e20c
movq %rbp, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4e231
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x4e237
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4e289
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x4e28f
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xc8(%rsp), %rdi
movl %r15d, %esi
callq 0x517a0
movq 0x20(%rsp), %rcx
movl $0xf, %edi
leaq 0x30(%rsp), %rax
cmpq %rax, %rcx
je 0x4e2d0
movq 0x30(%rsp), %rdi
movq 0x28(%rsp), %r8
movq 0xc8(%rsp), %rsi
movq 0xd0(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4e30d
movl $0xf, %edi
leaq 0xd8(%rsp), %r9
cmpq %r9, %rsi
je 0x4e308
movq 0xd8(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4e319
leaq 0x20(%rsp), %rdi
callq 0x7130
jmp 0x4e32a
leaq 0xc8(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
leaq 0x138(%rsp), %rsi
movq %rsi, 0x128(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4e35b
movq %rdx, 0x128(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x138(%rsp)
jmp 0x4e361
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x130(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq %r14, %rdi
leaq 0x128(%rsp), %rsi
callq 0x3defa
movq 0x128(%rsp), %rdi
leaq 0x138(%rsp), %rax
cmpq %rax, %rdi
je 0x4e3ab
callq 0x7370
movq 0xc8(%rsp), %rdi
leaq 0xd8(%rsp), %rax
cmpq %rax, %rdi
je 0x4e3c5
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4e3d9
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4e3ed
callq 0x7370
movq 0xa0(%rsp), %rdi
leaq 0xb0(%rsp), %rax
cmpq %rax, %rdi
je 0x4e407
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4e421
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4e435
callq 0x7370
movq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rax
cmpq %rax, %rdi
je 0x4e44f
callq 0x7370
movq 0x18(%rsp), %rax
movq 0xb8(%rax), %rax
movq 0x10(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x8(%rsp), %rdx
addq (%rax,%rdx,8), %rbx
movl $0x1, %eax
cmpq $0xa, %rcx
jb 0x4e4bf
movl $0x4, %eax
movq 0x10(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4e4b8
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4e4bd
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4e4bf
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4e482
addl $-0x3, %eax
jmp 0x4e4bf
addl $-0x2, %eax
jmp 0x4e4bf
decl %eax
movl %eax, %esi
leaq 0xf8(%rsp), %rax
movq %rax, 0xe8(%rsp)
leaq 0xe8(%rsp), %r14
movq %r14, %rdi
xorl %edx, %edx
callq 0x7420
movq 0xe8(%rsp), %rdi
movl 0xf0(%rsp), %esi
movq 0x10(%rsp), %rdx
callq 0xaec5
movl $0x14, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xc122(%rip), %rcx      # 0x5a632
callq 0x73e0
leaq 0x70(%rsp), %rsi
movq %rsi, 0x60(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4e53d
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x4e543
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x68(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %r12, %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x90(%rsp), %rsi
movq %rsi, 0x80(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4e59a
movq %rdx, 0x80(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x90(%rsp)
jmp 0x4e5a0
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x88(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %eax
cmpq $0xa, 0x8(%rsp)
jb 0x4e60f
movl $0x4, %eax
movq 0x8(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4e608
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4e60d
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4e60f
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4e5d2
addl $-0x3, %eax
jmp 0x4e60f
addl $-0x2, %eax
jmp 0x4e60f
decl %eax
movl %eax, %esi
leaq 0xb0(%rsp), %rax
movq %rax, 0xa0(%rsp)
movq %rbp, %rdi
xorl %edx, %edx
callq 0x7420
movq 0xa0(%rsp), %rdi
movl 0xa8(%rsp), %esi
movq 0x8(%rsp), %rdx
callq 0xaec5
movq 0x80(%rsp), %rcx
movl $0xf, %edi
leaq 0x90(%rsp), %rax
cmpq %rax, %rcx
je 0x4e666
movq 0x90(%rsp), %rdi
movq 0x88(%rsp), %r8
movq 0xa0(%rsp), %rsi
movq 0xa8(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4e6a6
movl $0xf, %edi
leaq 0xb0(%rsp), %r9
cmpq %r9, %rsi
je 0x4e6a1
movq 0xb0(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4e6b5
leaq 0x80(%rsp), %rdi
callq 0x7130
jmp 0x4e6c1
movq %rbp, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4e6e6
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x4e6ec
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4e73e
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x4e744
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xc8(%rsp), %rdi
movl %r15d, %esi
callq 0x517a0
movq 0x20(%rsp), %rcx
movl $0xf, %edi
leaq 0x30(%rsp), %rax
cmpq %rax, %rcx
je 0x4e785
movq 0x30(%rsp), %rdi
movq 0x28(%rsp), %r8
movq 0xc8(%rsp), %rsi
movq 0xd0(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4e7c2
movl $0xf, %edi
leaq 0xd8(%rsp), %r9
cmpq %r9, %rsi
je 0x4e7bd
movq 0xd8(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4e7ce
leaq 0x20(%rsp), %rdi
callq 0x7130
jmp 0x4e7df
leaq 0xc8(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
leaq 0x118(%rsp), %rsi
movq %rsi, 0x108(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4e810
movq %rdx, 0x108(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x118(%rsp)
jmp 0x4e816
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x110(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq %rbx, %rdi
leaq 0x108(%rsp), %rsi
callq 0x3defa
movq 0x108(%rsp), %rdi
leaq 0x118(%rsp), %rax
cmpq %rax, %rdi
je 0x4e860
callq 0x7370
movq 0xc8(%rsp), %rdi
leaq 0xd8(%rsp), %rax
cmpq %rax, %rdi
je 0x4e87a
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4e88e
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4e8a2
callq 0x7370
movq 0xa0(%rsp), %rdi
leaq 0xb0(%rsp), %rax
cmpq %rax, %rdi
je 0x4e8bc
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4e8d6
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4e8ea
callq 0x7370
movq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rax
cmpq %rax, %rdi
je 0x4e904
callq 0x7370
incq %r15
cmpq $0x4, %r15
jne 0x4df78
movl $0x1, %eax
movq 0x10(%rsp), %rbx
cmpq $0xa, %rbx
leaq 0x1d8(%rsp), %r14
jb 0x4e972
movl $0x4, %eax
movl %ebx, %ecx
cmpl $0x63, %ecx
jbe 0x4e966
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4e96b
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4e96d
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4e930
addl $-0x3, %eax
jmp 0x4e96d
addl $-0x2, %eax
jmp 0x4e96d
decl %eax
movq 0x10(%rsp), %rbx
movq 0x18(%rsp), %rcx
movq 0xc0(%rcx), %rcx
movq 0x8(%rsp), %rsi
movq %rsi, %rdx
shlq $0x8, %rdx
leaq (%rdx,%rsi,8), %rdx
movq (%rcx,%rbx,8), %r15
movq %rdx, 0xc0(%rsp)
addq %rdx, %r15
movl %eax, %esi
leaq 0x90(%rsp), %rax
movq %rax, 0x80(%rsp)
leaq 0x80(%rsp), %rbp
movq %rbp, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x80(%rsp), %rdi
movl 0x88(%rsp), %esi
movl %ebx, %edx
callq 0xaec5
movl $0x11, %r8d
movq %rbp, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xbc5c(%rip), %rcx      # 0x5a647
callq 0x73e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4ea18
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x4ea1e
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0xc0(%rsp), %rbp
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4ea73
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x4ea79
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %eax
cmpq $0xa, 0x8(%rsp)
jb 0x4eae5
movl $0x4, %eax
movq 0x8(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4eade
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4eae3
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4eae5
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4eaa8
addl $-0x3, %eax
jmp 0x4eae5
addl $-0x2, %eax
jmp 0x4eae5
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
movq %r12, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movq 0x8(%rsp), %rdx
callq 0xaec5
movq 0x20(%rsp), %rcx
movl $0xf, %edi
leaq 0x30(%rsp), %rax
cmpq %rax, %rcx
je 0x4eb27
movq 0x30(%rsp), %rdi
movq 0x28(%rsp), %r8
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4eb58
movl $0xf, %edi
leaq 0x70(%rsp), %r9
cmpq %r9, %rsi
je 0x4eb53
movq 0x70(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4eb64
leaq 0x20(%rsp), %rdi
callq 0x7130
jmp 0x4eb70
movq %r12, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
movq %r14, 0x1c8(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4eb99
movq %rdx, 0x1c8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x1d8(%rsp)
jmp 0x4eba0
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x1d0(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq %r15, %rdi
leaq 0x1c8(%rsp), %rsi
callq 0x3defa
movq 0x1c8(%rsp), %rdi
cmpq %r14, %rdi
je 0x4ebe2
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4ebf6
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4ec0a
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4ec1e
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4ec38
callq 0x7370
movq 0x18(%rsp), %rax
movq 0xd8(%rax), %rax
movq 0x10(%rsp), %rcx
movq (%rax,%rcx,8), %rbx
addq %rbp, %rbx
movl $0x1, %eax
cmpq $0xa, %rcx
jb 0x4eca2
movl $0x4, %eax
movq 0x10(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4ec9b
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4eca0
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4eca2
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4ec65
addl $-0x3, %eax
jmp 0x4eca2
addl $-0x2, %eax
jmp 0x4eca2
decl %eax
movl %eax, %esi
leaq 0x90(%rsp), %rax
movq %rax, 0x80(%rsp)
leaq 0x80(%rsp), %r14
movq %r14, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x80(%rsp), %rdi
movl 0x88(%rsp), %esi
movq 0x10(%rsp), %rdx
callq 0xaec5
movl $0x16, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xb966(%rip), %rcx      # 0x5a659
callq 0x73e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4ed20
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x4ed26
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
leaq 0x158(%rsp), %r14
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4ed7b
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x4ed81
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %eax
cmpq $0xa, 0x8(%rsp)
jb 0x4eded
movl $0x4, %eax
movq 0x8(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4ede6
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4edeb
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4eded
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4edb0
addl $-0x3, %eax
jmp 0x4eded
addl $-0x2, %eax
jmp 0x4eded
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
movq %r12, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movq 0x8(%rsp), %rdx
callq 0xaec5
movq 0x20(%rsp), %rcx
movl $0xf, %edi
leaq 0x30(%rsp), %rax
cmpq %rax, %rcx
je 0x4ee2f
movq 0x30(%rsp), %rdi
movq 0x28(%rsp), %r8
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4ee60
movl $0xf, %edi
leaq 0x70(%rsp), %r9
cmpq %r9, %rsi
je 0x4ee5b
movq 0x70(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4ee6c
leaq 0x20(%rsp), %rdi
callq 0x7130
jmp 0x4ee78
movq %r12, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
movq %r14, 0x148(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4eea1
movq %rdx, 0x148(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x158(%rsp)
jmp 0x4eea8
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x150(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq %rbx, %rdi
leaq 0x148(%rsp), %rsi
callq 0x3defa
movq 0x148(%rsp), %rdi
cmpq %r14, %rdi
je 0x4eeea
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
leaq 0x1b8(%rsp), %r14
leaq 0x198(%rsp), %r15
je 0x4ef0e
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4ef22
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4ef36
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4ef50
callq 0x7370
movq 0x18(%rsp), %rax
movq 0xe0(%rax), %rax
movq 0x10(%rsp), %rcx
movq (%rax,%rcx,8), %rbx
addq %rbp, %rbx
movl $0x1, %eax
cmpq $0xa, %rcx
jb 0x4efba
movl $0x4, %eax
movq 0x10(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4efb3
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4efb8
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4efba
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4ef7d
addl $-0x3, %eax
jmp 0x4efba
addl $-0x2, %eax
jmp 0x4efba
decl %eax
movl %eax, %esi
leaq 0x90(%rsp), %rax
movq %rax, 0x80(%rsp)
leaq 0x80(%rsp), %rbp
movq %rbp, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x80(%rsp), %rdi
movl 0x88(%rsp), %esi
movq 0x10(%rsp), %rdx
callq 0xaec5
movl $0x17, %r8d
movq %rbp, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xb665(%rip), %rcx      # 0x5a670
callq 0x73e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4f038
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x4f03e
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0xc0(%rsp), %rbp
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4f093
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x4f099
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %eax
cmpq $0xa, 0x8(%rsp)
jb 0x4f105
movl $0x4, %eax
movq 0x8(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4f0fe
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4f103
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4f105
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4f0c8
addl $-0x3, %eax
jmp 0x4f105
addl $-0x2, %eax
jmp 0x4f105
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
movq %r12, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movq 0x8(%rsp), %rdx
callq 0xaec5
movq 0x20(%rsp), %rcx
movl $0xf, %edi
leaq 0x30(%rsp), %rax
cmpq %rax, %rcx
je 0x4f147
movq 0x30(%rsp), %rdi
movq 0x28(%rsp), %r8
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4f178
movl $0xf, %edi
leaq 0x70(%rsp), %r9
cmpq %r9, %rsi
je 0x4f173
movq 0x70(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4f184
leaq 0x20(%rsp), %rdi
callq 0x7130
jmp 0x4f190
movq %r12, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
movq %r14, 0x1a8(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4f1b9
movq %rdx, 0x1a8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x1b8(%rsp)
jmp 0x4f1c0
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x1b0(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq %rbx, %rdi
leaq 0x1a8(%rsp), %rsi
callq 0x3defa
movq 0x1a8(%rsp), %rdi
cmpq %r14, %rdi
je 0x4f202
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4f216
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4f22a
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4f23e
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4f258
callq 0x7370
movq 0x18(%rsp), %rax
movq 0xc8(%rax), %rax
movq 0x10(%rsp), %rcx
movq (%rax,%rcx,8), %rbx
addq %rbp, %rbx
movl $0x1, %eax
cmpq $0xa, %rcx
jb 0x4f2c2
movl $0x4, %eax
movq 0x10(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4f2bb
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4f2c0
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4f2c2
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4f285
addl $-0x3, %eax
jmp 0x4f2c2
addl $-0x2, %eax
jmp 0x4f2c2
decl %eax
movl %eax, %esi
leaq 0x90(%rsp), %rax
movq %rax, 0x80(%rsp)
leaq 0x80(%rsp), %r14
movq %r14, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x80(%rsp), %rdi
movl 0x88(%rsp), %esi
movq 0x10(%rsp), %rdx
callq 0xaec5
movl $0x12, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xb375(%rip), %rcx      # 0x5a688
callq 0x73e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4f340
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x4f346
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4f393
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x4f399
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %eax
cmpq $0xa, 0x8(%rsp)
jb 0x4f405
movl $0x4, %eax
movq 0x8(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4f3fe
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4f403
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4f405
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4f3c8
addl $-0x3, %eax
jmp 0x4f405
addl $-0x2, %eax
jmp 0x4f405
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
movq %r12, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movq 0x8(%rsp), %rdx
callq 0xaec5
movq 0x20(%rsp), %rcx
movl $0xf, %edi
leaq 0x30(%rsp), %rax
cmpq %rax, %rcx
je 0x4f447
movq 0x30(%rsp), %rdi
movq 0x28(%rsp), %r8
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4f478
movl $0xf, %edi
leaq 0x70(%rsp), %r9
cmpq %r9, %rsi
je 0x4f473
movq 0x70(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4f484
leaq 0x20(%rsp), %rdi
callq 0x7130
jmp 0x4f490
movq %r12, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
movq %r15, 0x188(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4f4b9
movq %rdx, 0x188(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x198(%rsp)
jmp 0x4f4c0
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x190(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq %rbx, %rdi
leaq 0x188(%rsp), %rsi
callq 0x3defa
movq 0x188(%rsp), %rdi
cmpq %r15, %rdi
je 0x4f502
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
leaq 0x178(%rsp), %r14
leaq 0x80(%rsp), %rbx
je 0x4f526
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4f53a
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4f54e
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4f568
callq 0x7370
movq 0x18(%rsp), %rax
movq 0xd0(%rax), %rax
movq 0x10(%rsp), %rcx
addq (%rax,%rcx,8), %rbp
movl $0x1, %eax
cmpq $0xa, %rcx
jb 0x4f5cf
movl $0x4, %eax
movq 0x10(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4f5c8
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4f5cd
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4f5cf
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4f592
addl $-0x3, %eax
jmp 0x4f5cf
addl $-0x2, %eax
jmp 0x4f5cf
decl %eax
movl %eax, %esi
leaq 0x90(%rsp), %rax
movq %rax, 0x80(%rsp)
movq %rbx, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x80(%rsp), %rdi
movl 0x88(%rsp), %esi
movq 0x10(%rsp), %rdx
callq 0xaec5
movl $0x12, %r8d
movq %rbx, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xb083(%rip), %rcx      # 0x5a69b
callq 0x73e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4f645
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x4f64b
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
movq %r13, %rsi
callq 0x7690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x4f698
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x4f69e
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %eax
cmpq $0xa, 0x8(%rsp)
jb 0x4f70a
movl $0x4, %eax
movq 0x8(%rsp), %rcx
cmpl $0x63, %ecx
jbe 0x4f703
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x4f708
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x4f70a
movl %ecx, %edx
movl $0xd1b71759, %esi       # imm = 0xD1B71759
imulq %rsi, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x4f6cd
addl $-0x3, %eax
jmp 0x4f70a
addl $-0x2, %eax
jmp 0x4f70a
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
movq %r12, %rdi
xorl %edx, %edx
callq 0x7420
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movq 0x8(%rsp), %rdx
callq 0xaec5
movq 0x20(%rsp), %rcx
movl $0xf, %edi
leaq 0x30(%rsp), %rax
cmpq %rax, %rcx
je 0x4f74c
movq 0x30(%rsp), %rdi
movq 0x28(%rsp), %r8
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
jbe 0x4f77d
movl $0xf, %edi
leaq 0x70(%rsp), %r9
cmpq %r9, %rsi
je 0x4f778
movq 0x70(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x4f789
leaq 0x20(%rsp), %rdi
callq 0x7130
jmp 0x4f795
movq %r12, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x73e0
movq %r14, 0x168(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x4f7be
movq %rdx, 0x168(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x178(%rsp)
jmp 0x4f7c5
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x170(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq %rbp, %rdi
leaq 0x168(%rsp), %rsi
callq 0x3defa
movq 0x168(%rsp), %rdi
cmpq %r14, %rdi
je 0x4f807
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4f81b
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4f82f
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4f843
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4f85d
callq 0x7370
movq 0x8(%rsp), %rdx
incq %rdx
movq 0x18(%rsp), %rax
movl 0x48(%rax), %eax
movq %rdx, 0x8(%rsp)
cmpq %rax, %rdx
jb 0x4de8c
jmp 0x4f87f
xorl %eax, %eax
movq 0x10(%rsp), %rsi
incq %rsi
movq 0x18(%rsp), %rcx
movl 0x44(%rcx), %ecx
movq %rsi, 0x10(%rsp)
cmpq %rcx, %rsi
jb 0x4db97
addq $0x1e8, %rsp            # imm = 0x1E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x4fca0
jmp 0x4fca0
movq %rax, %rbx
jmp 0x4f98a
movq %rax, %rbx
jmp 0x4f962
jmp 0x4fca0
movq %rax, %rbx
jmp 0x4fa0d
movq %rax, %rbx
movq 0x1a8(%rsp), %rdi
cmpq %r14, %rdi
je 0x4f8fd
callq 0x7370
jmp 0x4f8fd
jmp 0x4fca0
movq %rax, %rbx
jmp 0x4f9f9
movq %rax, %rbx
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4f91e
callq 0x7370
jmp 0x4f91e
movq %rax, %rbx
jmp 0x4f9e5
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4fa4d
callq 0x7370
jmp 0x4fa4d
movq %rax, %rbx
jmp 0x4f976
movq %rax, %rbx
jmp 0x4f99e
movq %rax, %rbx
jmp 0x4f9d1
movq %rax, %rbx
movq 0x168(%rsp), %rdi
cmpq %r14, %rdi
je 0x4f962
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4f976
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4f98a
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4f99e
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe92
jmp 0x4fe59
movq %rax, %rbx
movq 0x188(%rsp), %rdi
cmpq %r15, %rdi
je 0x4f9d1
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4f9e5
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4f9f9
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4fa0d
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe92
jmp 0x4fe59
jmp 0x4fca0
movq %rax, %rbx
jmp 0x4fadc
movq %rax, %rbx
jmp 0x4fb5f
jmp 0x4fca0
movq %rax, %rbx
jmp 0x4fac8
movq %rax, %rbx
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4fb2a
callq 0x7370
jmp 0x4fb2a
movq %rax, %rbx
jmp 0x4fb73
jmp 0x4fca0
movq %rax, %rbx
movq 0x1c8(%rsp), %rdi
cmpq %r14, %rdi
je 0x4fa96
callq 0x7370
jmp 0x4fa96
movq %rax, %rbx
jmp 0x4fb09
movq %rax, %rbx
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4fb4b
callq 0x7370
jmp 0x4fb4b
movq %rax, %rbx
movq 0x148(%rsp), %rdi
cmpq %r14, %rdi
je 0x4fac8
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4fadc
callq 0x7370
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4faf5
callq 0x7370
jmp 0x4faf5
movq %rax, %rbx
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4fb09
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe92
jmp 0x4fe59
movq %rax, %rbx
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe92
jmp 0x4fe59
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4fb5f
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4fb73
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe92
jmp 0x4fe59
movq %rax, %rbx
testq %r15, %r15
je 0x4fbb8
negq %r15
movq %r14, %r12
addq $-0x100, %r12
leaq (%r12,%r15), %rdi
callq 0x46b66
addq $-0x108, %r15           # imm = 0xFEF8
jne 0x4fba6
jmp 0x4fe8a
movq %rax, %rbx
testq %r15, %r15
je 0x4fbe4
negq %r15
movq %r14, %r12
addq $-0x100, %r12
leaq (%r12,%r15), %rdi
callq 0x46b66
addq $-0x108, %r15           # imm = 0xFEF8
jne 0x4fbd2
jmp 0x4fe8a
movq %rax, %rbx
testq %r15, %r15
je 0x4fc10
negq %r15
movq %r14, %r12
addq $-0x100, %r12
leaq (%r12,%r15), %rdi
callq 0x46b66
addq $-0x108, %r15           # imm = 0xFEF8
jne 0x4fbfe
jmp 0x4fe8a
movq %rax, %rbx
testq %r15, %r15
je 0x4fc3c
negq %r15
movq %r14, %r12
addq $-0x100, %r12
leaq (%r12,%r15), %rdi
callq 0x46b66
addq $-0x108, %r15           # imm = 0xFEF8
jne 0x4fc2a
jmp 0x4fe8a
movq %rax, %rbx
testq %r15, %r15
je 0x4fc68
negq %r15
movq %r14, %r12
addq $-0x100, %r12
leaq (%r12,%r15), %rdi
callq 0x46b66
addq $-0x108, %r15           # imm = 0xFEF8
jne 0x4fc56
jmp 0x4fe8a
jmp 0x4fca0
movq %rax, %rbx
movq 0x108(%rsp), %rdi
leaq 0x118(%rsp), %rax
cmpq %rax, %rdi
je 0x4fcda
callq 0x7370
jmp 0x4fcda
movq %rax, %rbx
jmp 0x4fdfc
jmp 0x4fca0
movq %rax, %rbx
jmp 0x4fd57
movq %rax, %rbx
jmp 0x4fe92
movq %rax, %rbx
jmp 0x4fe44
movq %rax, %rbx
movq 0x128(%rsp), %rdi
leaq 0x138(%rsp), %rax
cmpq %rax, %rdi
je 0x4fd08
callq 0x7370
jmp 0x4fd08
movq %rax, %rbx
jmp 0x4fde8
movq %rax, %rbx
movq 0xc8(%rsp), %rdi
leaq 0xd8(%rsp), %rax
cmpq %rax, %rdi
je 0x4fdd4
callq 0x7370
jmp 0x4fdd4
movq %rax, %rbx
jmp 0x4fe30
movq %rax, %rbx
movq 0xc8(%rsp), %rdi
leaq 0xd8(%rsp), %rax
cmpq %rax, %rdi
je 0x4fd43
callq 0x7370
jmp 0x4fd43
movq %rax, %rbx
jmp 0x4fd85
movq %rax, %rbx
jmp 0x4fd9f
movq %rax, %rbx
jmp 0x4fe16
movq %rax, %rbx
jmp 0x4fd6b
movq %rax, %rbx
jmp 0x4fdb3
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4fd57
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4fd6b
callq 0x7370
movq 0xa0(%rsp), %rdi
leaq 0xb0(%rsp), %rax
cmpq %rax, %rdi
je 0x4fd85
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4fd9f
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4fdb3
callq 0x7370
movq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe92
jmp 0x4fe59
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x4fde8
callq 0x7370
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x4fdfc
callq 0x7370
movq 0xa0(%rsp), %rdi
leaq 0xb0(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe16
callq 0x7370
movq 0x80(%rsp), %rdi
leaq 0x90(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe30
callq 0x7370
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe44
callq 0x7370
movq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rax
cmpq %rax, %rdi
je 0x4fe92
callq 0x7370
jmp 0x4fe92
movq %rax, %rbx
cmpq $0x8, %r15
je 0x4fe74
movq %r15, %rdi
movq %r14, %rsi
callq 0x7ac6
jmp 0x4fe8a
movq %rax, %rbx
cmpq $0x8, %r15
je 0x4fe8a
movq %r15, %rdi
movq %r14, %rsi
callq 0x7a25
movq %r14, %rdi
callq 0x7480
movq 0x18(%rsp), %rdi
callq 0x4a5ba
movq %rbx, %rdi
callq 0x7620