// File: /workspace/github_cpp_makefile_star2_O3/ys1998[P]spsim/src/instruction.cpp
// Function: Instruction::Instruction(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
Instruction::Instruction(int _PC, std::string instr){
	ID = -1;
	PC = _PC;
	_rd = -1; rd_ = -1;
	rs = rt = rd = -1;
	IF = DE = RF1 = EXEC = RF2= MEM= WB = -1;
	shamt = 0;
	text = instr;
	predicted = jumpAddressPred = 55;

	std::istringstream iss(instr);
	std::string op;
	int cnt = 0, extra;
	while(iss){
		switch(cnt){
			case 0:
			op = ""; iss >> op;
			if(!OPCODE.count(op) || !FUNCT.count(op)){
				error_msg("parser", "Invalid operation \"" + op + "\", line " + std::to_string(_PC));
			}else{	
				opcode = OPCODE[op];
				funct = FUNCT[op];
			}
			break;
			case 1:
			if(opcode == 0 || opcode == OPCODE["lw"])
			{
				iss >> rd;
				if(rd < 0 || rd >= NUM_LOG_REGS){
					error_msg("parser", "Invalid register rd = " + std::to_string(rd) + ", line " + std::to_string(_PC));
				}
			}
			else{
				iss >> rs;
				if(rs < 0 || rs >= NUM_LOG_REGS){
					error_msg("parser", "Invalid register rd = " + std::to_string(rs) + ", line " + std::to_string(_PC));
				}
			}
			break;
			case 2:
			if(opcode == OPCODE["lw"] || opcode == OPCODE["sw"]){
				iss >> immediate;
				if(immediate>std::pow(2,15)||immediate<-std::pow(2,15))
				error_msg("parser", "Invalid immediate immediate = " + std::to_string(immediate) + ", line " + std::to_string(_PC));
				 	
			}else if(opcode == 0)
			{
				iss >> rs;
				if(rs < 0 || rs >= NUM_LOG_REGS){
					error_msg("parser", "Invalid register rs = " + std::to_string(rs) + ", line " + std::to_string(_PC));
				}
			}
			else
			{
				iss >> rt;
				if(rt < 0 || rt >= NUM_LOG_REGS){
					error_msg("parser", "Invalid register rt = " + std::to_string(rt) + ", line " + std::to_string(_PC));
				}
			}
			break;
			
			case 3:
			if(opcode == 0)
			{
				iss >> rt;
				if(rt < 0 || rt >= NUM_LOG_REGS){
					error_msg("parser", "Invalid register rt = " + std::to_string(rt) + ", line " + std::to_string(_PC));
				}
			}
			else if( opcode == OPCODE["beq"] || opcode == OPCODE["bne"])
			{
				iss >> immediate;
				if (immediate < -32768 || immediate >= 32768)
				{
					error_msg("parser", "Invalid immediate = " + std::to_string(immediate) + ", line " + std::to_string(_PC));
				}
			}
			else{
				iss >> rt;
				if(rt < 0 || rt >= NUM_LOG_REGS){
					error_msg("parser", "Invalid register rt = " + std::to_string(rt) + ", line " + std::to_string(_PC));
				}
			}
			if(opcode == OPCODE["lw"])
				rs=rt;
			break;
			default:
			iss >> extra;
			break;
		}
		cnt++;
	}
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x4a8, %rsp            # imm = 0x4A8
movq %rdx, %rbx
movl %esi, %r12d
movq %rdi, %r15
leaq 0x50(%rdi), %rdi
leaq 0x60(%r15), %r14
movq %r14, 0x50(%r15)
movq $0x0, 0x58(%r15)
movb $0x0, 0x60(%r15)
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, (%r15)
movl %esi, 0x4(%r15)
movq $-0x1, %rcx
movq %rcx, 0x1c(%r15)
movl %eax, 0x10(%r15)
movq %rcx, 0x8(%r15)
pcmpeqd %xmm0, %xmm0
movdqu %xmm0, 0x34(%r15)
movdqu %xmm0, 0x40(%r15)
movl $0x0, 0x2c(%r15)
movq %rdi, 0x318(%rsp)
movq %rdx, %rsi
callq 0x3140
movabsq $0x3700000037, %rax     # imm = 0x3700000037
movq %rax, 0x70(%r15)
leaq 0x328(%rsp), %rdi
movq %rbx, %rsi
movl $0x8, %edx
callq 0x3320
leaq 0xc8(%rsp), %rax
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq 0x328(%rsp), %rax
movq -0x18(%rax), %rax
testb $0x5, 0x348(%rsp,%rax)
jne 0xa012
movq %r14, 0xa8(%rsp)
leaq 0x10(%r15), %rax
movq %rax, 0xb0(%rsp)
leaq 0xc(%r15), %rax
movq %rax, 0x88(%rsp)
leaq 0x8(%r15), %rax
movq %rax, 0x98(%rsp)
leaq 0x10(%rsp), %rbp
leaq 0x58(%rsp), %r13
movl %r12d, %ecx
negl %ecx
cmovsl %r12d, %ecx
shrl $0x1f, %r12d
movq %r12, 0x90(%rsp)
leaq 0x30(%r15), %rax
movq %rax, 0xa0(%rsp)
xorl %ebx, %ebx
leaq 0x48(%rsp), %r12
movq %rsp, %r14
movl %ecx, 0x24(%rsp)
cmpl $0x3, %ebx
ja 0x809e
movl %ebx, %eax
leaq 0xe4f9(%rip), %rcx      # 0x160b4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0xc0(%rsp), %rdx
leaq 0xb8(%rsp), %rdi
xorl %esi, %esi
leaq 0xe720(%rip), %rcx      # 0x162fd
xorl %r8d, %r8d
callq 0x32e0
leaq 0x328(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
callq 0x3280
leaq 0x1460f(%rip), %rdi     # 0x1c210
leaq 0xb8(%rsp), %rsi
callq 0xaa3c
leaq 0x145fb(%rip), %rcx     # 0x1c210
addq $0x8, %rcx
cmpq %rcx, %rax
je 0x80b8
leaq 0x14617(%rip), %rdi     # 0x1c240
leaq 0xb8(%rsp), %rsi
callq 0xaa3c
leaq 0x14603(%rip), %rcx     # 0x1c240
addq $0x8, %rcx
cmpq %rcx, %rax
je 0x80b8
leaq 0x145bf(%rip), %rdi     # 0x1c210
leaq 0xb8(%rsp), %rsi
callq 0xa952
movl (%rax), %eax
movl %eax, 0x24(%r15)
leaq 0x145d5(%rip), %rdi     # 0x1c240
leaq 0xb8(%rsp), %rsi
callq 0xa952
movl (%rax), %eax
movl %eax, 0x28(%r15)
jmp 0x9fd1
movl 0x24(%r15), %r12d
movq %rbp, (%rsp)
movq %r14, %rdi
leaq 0xe3d8(%rip), %rsi      # 0x1606d
leaq 0xe3d3(%rip), %rdx      # 0x1606f
callq 0x530a
leaq 0x14568(%rip), %rdi     # 0x1c210
movq %r14, %rsi
callq 0x5136
movb $0x1, %bpl
cmpl (%rax), %r12d
leaq 0x48(%rsp), %r12
je 0x7d08
movl 0x24(%r15), %ebp
movq %r13, 0x48(%rsp)
movq %r12, %rdi
leaq 0xe34d(%rip), %rsi      # 0x1601d
leaq 0xe348(%rip), %rdx      # 0x1601f
callq 0x530a
leaq 0x1452d(%rip), %rdi     # 0x1c210
movq %r12, %rsi
callq 0x5136
cmpl (%rax), %ebp
sete %bpl
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x7d08
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7d23
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
testb %bpl, %bpl
je 0x8131
leaq 0x328(%rsp), %rdi
movq 0xa0(%rsp), %rsi
callq 0x3170
leaq 0x10(%rsp), %rbp
movq 0xa0(%rsp), %rax
movl (%rax), %eax
movl $0xffff7fff, %ecx       # imm = 0xFFFF7FFF
addl %ecx, %eax
cmpl $0xfffefffe, %eax       # imm = 0xFFFEFFFE
ja 0x9fd1
leaq 0x248(%rsp), %rax
movq %rax, 0x238(%rsp)
leaq 0x238(%rsp), %rdi
leaq 0xe343(%rip), %rsi      # 0x160c4
leaq 0xe342(%rip), %rdx      # 0x160ca
callq 0x530a
movq 0xa0(%rsp), %rax
movl (%rax), %r13d
movl %r13d, %ebp
negl %ebp
cmovsl %r13d, %ebp
movl $0x1, %r12d
cmpl $0xa, %ebp
jb 0x8a36
movl $0x4, %r12d
movl %ebp, %eax
cmpl $0x63, %eax
jbe 0x8a2d
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x8a33
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x8a36
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x7db8
addl $-0x3, %r12d
jmp 0x8a36
movl 0x24(%r15), %r12d
testl %r12d, %r12d
je 0x8201
movq %rbp, (%rsp)
movq %r14, %rdi
leaq 0xe1f5(%rip), %rsi      # 0x1600c
leaq 0xe1f1(%rip), %rdx      # 0x1600f
callq 0x530a
leaq 0x143e6(%rip), %rdi     # 0x1c210
movq %r14, %rsi
callq 0x5136
movb $0x1, %bpl
cmpl (%rax), %r12d
leaq 0x48(%rsp), %r12
je 0x7e8a
movl 0x24(%r15), %ebp
movq %r13, 0x48(%rsp)
movq %r12, %rdi
leaq 0xe1be(%rip), %rsi      # 0x16010
leaq 0xe1ba(%rip), %rdx      # 0x16013
callq 0x530a
leaq 0x143ab(%rip), %rdi     # 0x1c210
movq %r12, %rsi
callq 0x5136
cmpl (%rax), %ebp
sete %bpl
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x7e8a
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7ea5
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
testb %bpl, %bpl
je 0x8386
leaq 0x328(%rsp), %rdi
movq 0xa0(%rsp), %rsi
callq 0x3170
leaq 0x10(%rsp), %rbp
movq 0xa0(%rsp), %rax
movl (%rax), %eax
movswl %ax, %ecx
cmpl %eax, %ecx
je 0x9c56
leaq 0x2e8(%rsp), %rax
movq %rax, 0x2d8(%rsp)
leaq 0x2d8(%rsp), %rdi
leaq 0xe1c8(%rip), %rsi      # 0x160c4
leaq 0xe1c7(%rip), %rdx      # 0x160ca
callq 0x530a
movq 0xa0(%rsp), %rax
movl (%rax), %r13d
movl %r13d, %ebp
negl %ebp
cmovsl %r13d, %ebp
movl $0x1, %r12d
cmpl $0xa, %ebp
jb 0x92eb
movl $0x4, %r12d
movl %ebp, %eax
cmpl $0x63, %eax
jbe 0x902a
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x92e8
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x92eb
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x7f33
addl $-0x3, %r12d
jmp 0x92eb
movl 0x24(%r15), %ebp
testl %ebp, %ebp
je 0x7fd9
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq %r14, %rdi
leaq 0xe0db(%rip), %rsi      # 0x1606d
leaq 0xe0d6(%rip), %rdx      # 0x1606f
callq 0x530a
leaq 0x1426b(%rip), %rdi     # 0x1c210
movq %r14, %rsi
callq 0x5136
movl (%rax), %r12d
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x7fcb
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
cmpl %r12d, %ebp
leaq 0x48(%rsp), %r12
jne 0x82c1
leaq 0x328(%rsp), %rdi
movq 0xb0(%rsp), %rsi
callq 0x3170
leaq 0x10(%rsp), %rbp
movq 0xb0(%rsp), %rax
cmpl $0x20, (%rax)
jb 0x9fd1
leaq 0x288(%rsp), %rax
movq %rax, 0x278(%rsp)
leaq 0x278(%rsp), %rdi
leaq 0xe0a1(%rip), %rsi      # 0x160c4
leaq 0xe0a0(%rip), %rdx      # 0x160ca
callq 0x530a
movq 0xb0(%rsp), %rax
movl (%rax), %r13d
movl %r13d, %ebp
negl %ebp
cmovsl %r13d, %ebp
movl $0x1, %r12d
cmpl $0xa, %ebp
jb 0x8734
movl $0x4, %r12d
movl %ebp, %eax
cmpl $0x63, %eax
jbe 0x872b
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x8731
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x8734
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x805a
addl $-0x3, %r12d
jmp 0x8734
leaq 0x328(%rsp), %rdi
leaq 0x324(%rsp), %rsi
callq 0x3170
jmp 0x9fd1
leaq 0x2a8(%rsp), %rax
movq %rax, 0x298(%rsp)
leaq 0x298(%rsp), %rdi
leaq 0xdfed(%rip), %rsi      # 0x160c4
leaq 0xdfec(%rip), %rdx      # 0x160ca
callq 0x530a
movq %r12, %rdi
leaq 0xdfde(%rip), %rsi      # 0x160cb
leaq 0xb8(%rsp), %rdx
callq 0xa8ca
movq %r12, %rdi
leaq 0xdfdb(%rip), %rsi      # 0x160df
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x844b
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x8454
cmpl $0x0, 0x24(%r15)
leaq 0x10(%rsp), %rbp
je 0x84c9
leaq 0x328(%rsp), %rdi
movq 0x88(%rsp), %rsi
callq 0x3170
movq 0x88(%rsp), %rax
cmpl $0x20, (%rax)
jb 0x9fd1
leaq 0x208(%rsp), %rax
movq %rax, 0x1f8(%rsp)
leaq 0x1f8(%rsp), %rdi
leaq 0xdf3e(%rip), %rsi      # 0x160c4
leaq 0xdf3d(%rip), %rdx      # 0x160ca
callq 0x530a
movq 0x88(%rsp), %rax
movl (%rax), %r13d
movl %r13d, %ebp
negl %ebp
cmovsl %r13d, %ebp
movl $0x1, %r12d
cmpl $0xa, %ebp
jb 0x9195
movl $0x4, %r12d
movl %ebp, %eax
cmpl $0x63, %eax
jbe 0x9021
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x9192
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x9195
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x81bd
addl $-0x3, %r12d
jmp 0x9195
leaq 0x328(%rsp), %rdi
movq 0x88(%rsp), %rsi
callq 0x3170
movq 0x88(%rsp), %rax
cmpl $0x20, (%rax)
jb 0x9c56
leaq 0x308(%rsp), %rax
movq %rax, 0x2f8(%rsp)
leaq 0x2f8(%rsp), %rdi
leaq 0xde7e(%rip), %rsi      # 0x160c4
leaq 0xde7d(%rip), %rdx      # 0x160ca
callq 0x530a
movq 0x88(%rsp), %rax
movl (%rax), %r13d
movl %r13d, %ebp
negl %ebp
cmovsl %r13d, %ebp
movl $0x1, %r12d
cmpl $0xa, %ebp
jb 0x8d38
movl $0x4, %r12d
movl %ebp, %eax
cmpl $0x63, %eax
jbe 0x8d2f
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x8d35
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x8d38
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x827d
addl $-0x3, %r12d
jmp 0x8d38
leaq 0x328(%rsp), %rdi
movq 0x98(%rsp), %rsi
callq 0x3170
leaq 0x10(%rsp), %rbp
movq 0x98(%rsp), %rax
cmpl $0x20, (%rax)
jb 0x9fd1
leaq 0x268(%rsp), %rax
movq %rax, 0x258(%rsp)
leaq 0x258(%rsp), %rdi
leaq 0xddb9(%rip), %rsi      # 0x160c4
leaq 0xddb8(%rip), %rdx      # 0x160ca
callq 0x530a
movq 0x98(%rsp), %rax
movl (%rax), %r13d
movl %r13d, %ebp
negl %ebp
cmovsl %r13d, %ebp
movl $0x1, %r12d
cmpl $0xa, %ebp
jb 0x903f
movl $0x4, %r12d
movl %ebp, %eax
cmpl $0x63, %eax
jbe 0x901b
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x903c
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x903f
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x8342
addl $-0x3, %r12d
jmp 0x903f
leaq 0x328(%rsp), %rdi
movq 0x88(%rsp), %rsi
callq 0x3170
leaq 0x10(%rsp), %rbp
movq 0x88(%rsp), %rax
cmpl $0x20, (%rax)
jb 0x9c56
leaq 0x2c8(%rsp), %rax
movq %rax, 0x2b8(%rsp)
leaq 0x2b8(%rsp), %rdi
leaq 0xdcf4(%rip), %rsi      # 0x160c4
leaq 0xdcf3(%rip), %rdx      # 0x160ca
callq 0x530a
movq 0x88(%rsp), %rax
movl (%rax), %r13d
movl %r13d, %ebp
negl %ebp
cmovsl %r13d, %ebp
movl $0x1, %r12d
cmpl $0xa, %ebp
jb 0x9441
movl $0x4, %r12d
movl %ebp, %eax
cmpl $0x63, %eax
jbe 0x9033
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x943e
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x9441
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x8407
addl $-0x3, %r12d
jmp 0x9441
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x8592
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x8589
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x858f
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x8592
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x8485
addl $-0x3, %r12d
jmp 0x8592
leaq 0x328(%rsp), %rdi
movq 0x98(%rsp), %rsi
callq 0x3170
movq 0x98(%rsp), %rax
cmpl $0x20, (%rax)
jb 0x9fd1
leaq 0x228(%rsp), %rax
movq %rax, 0x218(%rsp)
leaq 0x218(%rsp), %rdi
leaq 0xdbb6(%rip), %rsi      # 0x160c4
leaq 0xdbb5(%rip), %rdx      # 0x160ca
callq 0x530a
movq 0x98(%rsp), %rax
movl (%rax), %r13d
movl %r13d, %ebp
negl %ebp
cmovsl %r13d, %ebp
movl $0x1, %r12d
cmpl $0xa, %ebp
jb 0x9cd9
movl $0x4, %r12d
movl %ebp, %eax
cmpl $0x63, %eax
jbe 0x9cd0
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x9cd6
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x9cd9
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x8545
addl $-0x3, %r12d
jmp 0x9cd9
addl $-0x2, %r12d
jmp 0x8592
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x68(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x85de
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x68(%rsp), %rsi
movq 0x70(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0x1e8(%rsp), %r12
movq %rsp, %r14
jbe 0x861a
movl $0xf, %edi
leaq 0x78(%rsp), %r9
cmpq %r9, %rsi
je 0x8615
movq 0x78(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x8624
movq %r14, %rdi
callq 0x30c0
jmp 0x8632
leaq 0x68(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0x1d8(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x865b
movq %rdx, 0x1d8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x1e8(%rsp)
jmp 0x8665
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x1e0(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x298(%rsp), %rdi
leaq 0x1d8(%rsp), %rsi
callq 0xdab0
movq 0x1d8(%rsp), %rdi
cmpq %r12, %rdi
je 0x86b7
movq 0x1e8(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
leaq 0x48(%rsp), %r12
je 0x86d8
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x86ee
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x8705
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x298(%rsp), %rdi
leaq 0x2a8(%rsp), %rax
cmpq %rax, %rdi
je 0x9fd1
movq 0x2a8(%rsp), %rsi
jmp 0x9fc9
addl $-0x2, %r12d
jmp 0x8734
decl %r12d
shrl $0x1f, %r13d
leal (%r12,%r13), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movl $0x2d, %edx
callq 0x3250
addq 0x68(%rsp), %r13
movq %r13, %rdi
movl %r12d, %esi
movl %ebp, %edx
callq 0xa9ce
movl $0x16, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xd96a(%rip), %rcx      # 0x160e8
callq 0x3230
leaq 0x58(%rsp), %r13
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %rdi
je 0x87b5
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x87bf
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xd902(%rip), %rsi      # 0x160e0
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x8804
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x880d
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x8878
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x886f
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x8875
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x8878
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x883a
addl $-0x3, %r12d
jmp 0x8878
addl $-0x2, %r12d
jmp 0x8878
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x28(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x28(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x88c4
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0x1c8(%rsp), %r12
movq %rsp, %r14
jbe 0x8900
movl $0xf, %edi
leaq 0x38(%rsp), %r9
cmpq %r9, %rsi
je 0x88fb
movq 0x38(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x890a
movq %r14, %rdi
callq 0x30c0
jmp 0x8918
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0x1b8(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x8941
movq %rdx, 0x1b8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x1c8(%rsp)
jmp 0x894b
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x1c0(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x278(%rsp), %rdi
leaq 0x1b8(%rsp), %rsi
callq 0xdab0
movq 0x1b8(%rsp), %rdi
cmpq %r12, %rdi
je 0x899d
movq 0x1c8(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
leaq 0x48(%rsp), %r12
je 0x89be
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x89d4
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x89eb
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x8a07
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x278(%rsp), %rdi
leaq 0x288(%rsp), %rax
cmpq %rax, %rdi
je 0x9fd1
movq 0x288(%rsp), %rsi
jmp 0x9fc9
addl $-0x2, %r12d
jmp 0x8a36
decl %r12d
shrl $0x1f, %r13d
leal (%r12,%r13), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movl $0x2d, %edx
callq 0x3250
addq 0x68(%rsp), %r13
movq %r13, %rdi
movl %r12d, %esi
movl %ebp, %edx
callq 0xa9ce
movl $0x1e, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xd67f(%rip), %rcx      # 0x160ff
callq 0x3230
leaq 0x58(%rsp), %r13
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %rdi
je 0x8ab7
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x8ac1
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xd600(%rip), %rsi      # 0x160e0
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x8b06
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x8b0f
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x8b7a
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x8b71
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x8b77
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x8b7a
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x8b3c
addl $-0x3, %r12d
jmp 0x8b7a
addl $-0x2, %r12d
jmp 0x8b7a
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x28(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x28(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x8bc6
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0x188(%rsp), %r12
movq %rsp, %r14
jbe 0x8c02
movl $0xf, %edi
leaq 0x38(%rsp), %r9
cmpq %r9, %rsi
je 0x8bfd
movq 0x38(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x8c0c
movq %r14, %rdi
callq 0x30c0
jmp 0x8c1a
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0x178(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x8c43
movq %rdx, 0x178(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x188(%rsp)
jmp 0x8c4d
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x180(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x238(%rsp), %rdi
leaq 0x178(%rsp), %rsi
callq 0xdab0
movq 0x178(%rsp), %rdi
cmpq %r12, %rdi
je 0x8c9f
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
leaq 0x48(%rsp), %r12
je 0x8cc0
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x8cd6
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x8ced
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x8d09
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x238(%rsp), %rdi
leaq 0x248(%rsp), %rax
cmpq %rax, %rdi
je 0x9fd1
movq 0x248(%rsp), %rsi
jmp 0x9fc9
addl $-0x2, %r12d
jmp 0x8d38
decl %r12d
shrl $0x1f, %r13d
leal (%r12,%r13), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movl $0x2d, %edx
callq 0x3250
addq 0x68(%rsp), %r13
movq %r13, %rdi
movl %r12d, %esi
movl %ebp, %edx
callq 0xa9ce
movl $0x16, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xd3b3(%rip), %rcx      # 0x16135
callq 0x3230
leaq 0x58(%rsp), %r13
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %rdi
je 0x8db9
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x8dc3
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xd2fe(%rip), %rsi      # 0x160e0
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x8e08
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x8e11
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x8e7c
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x8e73
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x8e79
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x8e7c
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x8e3e
addl $-0x3, %r12d
jmp 0x8e7c
addl $-0x2, %r12d
jmp 0x8e7c
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x28(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x28(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x8ec8
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0x128(%rsp), %r12
movq %rsp, %r14
jbe 0x8f04
movl $0xf, %edi
leaq 0x38(%rsp), %r9
cmpq %r9, %rsi
je 0x8eff
movq 0x38(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x8f0e
movq %r14, %rdi
callq 0x30c0
jmp 0x8f1c
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0x118(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x8f45
movq %rdx, 0x118(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x128(%rsp)
jmp 0x8f4f
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x120(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x2f8(%rsp), %rdi
leaq 0x118(%rsp), %rsi
callq 0xdab0
movq 0x118(%rsp), %rdi
cmpq %r12, %rdi
je 0x8fa1
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x8fbd
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x8fd3
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x8fea
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x9006
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x2f8(%rsp), %rdi
leaq 0x308(%rsp), %rcx
jmp 0x9c43
addl $-0x2, %r12d
jmp 0x903f
addl $-0x2, %r12d
jmp 0x9195
addl $-0x2, %r12d
jmp 0x92eb
addl $-0x2, %r12d
jmp 0x9441
decl %r12d
shrl $0x1f, %r13d
leal (%r12,%r13), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movl $0x2d, %edx
callq 0x3250
addq 0x68(%rsp), %r13
movq %r13, %rdi
movl %r12d, %esi
movl %ebp, %edx
callq 0xa9ce
movl $0x16, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xd05f(%rip), %rcx      # 0x160e8
callq 0x3230
leaq 0x58(%rsp), %r13
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %rdi
je 0x90c0
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x90ca
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xcff7(%rip), %rsi      # 0x160e0
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x910f
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x9118
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x9597
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x9189
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x9594
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x9597
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x9149
addl $-0x3, %r12d
jmp 0x9597
addl $-0x2, %r12d
jmp 0x9597
decl %r12d
shrl $0x1f, %r13d
leal (%r12,%r13), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movl $0x2d, %edx
callq 0x3250
addq 0x68(%rsp), %r13
movq %r13, %rdi
movl %r12d, %esi
movl %ebp, %edx
callq 0xa9ce
movl $0x16, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xcf56(%rip), %rcx      # 0x16135
callq 0x3230
leaq 0x58(%rsp), %r13
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %rdi
je 0x9216
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x9220
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xcea1(%rip), %rsi      # 0x160e0
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9265
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x926e
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x974f
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x92df
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x974c
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x974f
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x929f
addl $-0x3, %r12d
jmp 0x974f
addl $-0x2, %r12d
jmp 0x974f
decl %r12d
shrl $0x1f, %r13d
leal (%r12,%r13), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movl $0x2d, %edx
callq 0x3250
addq 0x68(%rsp), %r13
movq %r13, %rdi
movl %r12d, %esi
movl %ebp, %edx
callq 0xa9ce
movl $0x14, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xce17(%rip), %rcx      # 0x1614c
callq 0x3230
leaq 0x58(%rsp), %r13
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %rdi
je 0x936c
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x9376
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xcd4b(%rip), %rsi      # 0x160e0
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x93bb
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x93c4
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x9907
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x9435
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x9904
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x9907
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x93f5
addl $-0x3, %r12d
jmp 0x9907
addl $-0x2, %r12d
jmp 0x9907
decl %r12d
shrl $0x1f, %r13d
leal (%r12,%r13), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movl $0x2d, %edx
callq 0x3250
addq 0x68(%rsp), %r13
movq %r13, %rdi
movl %r12d, %esi
movl %ebp, %edx
callq 0xa9ce
movl $0x16, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xccaa(%rip), %rcx      # 0x16135
callq 0x3230
leaq 0x58(%rsp), %r13
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %rdi
je 0x94c2
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x94cc
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xcbf5(%rip), %rsi      # 0x160e0
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9511
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x951a
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x9aa9
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x958b
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x9aa6
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x9aa9
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x954b
addl $-0x3, %r12d
jmp 0x9aa9
addl $-0x2, %r12d
jmp 0x9aa9
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x28(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x28(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x95e3
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0x1a8(%rsp), %r12
movq %rsp, %r14
jbe 0x961f
movl $0xf, %edi
leaq 0x38(%rsp), %r9
cmpq %r9, %rsi
je 0x961a
movq 0x38(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x9629
movq %r14, %rdi
callq 0x30c0
jmp 0x9637
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0x198(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x9660
movq %rdx, 0x198(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x1a8(%rsp)
jmp 0x966a
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x1a0(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x258(%rsp), %rdi
leaq 0x198(%rsp), %rsi
callq 0xdab0
movq 0x198(%rsp), %rdi
cmpq %r12, %rdi
je 0x96bc
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
leaq 0x48(%rsp), %r12
je 0x96dd
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x96f3
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x970a
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x9726
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x258(%rsp), %rdi
leaq 0x268(%rsp), %rax
cmpq %rax, %rdi
je 0x9fd1
movq 0x268(%rsp), %rsi
jmp 0x9fc9
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x28(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x28(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x979b
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0x148(%rsp), %r12
movq %rsp, %r14
jbe 0x97d7
movl $0xf, %edi
leaq 0x38(%rsp), %r9
cmpq %r9, %rsi
je 0x97d2
movq 0x38(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x97e1
movq %r14, %rdi
callq 0x30c0
jmp 0x97ef
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0x138(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x9818
movq %rdx, 0x138(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x148(%rsp)
jmp 0x9822
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x140(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x1f8(%rsp), %rdi
leaq 0x138(%rsp), %rsi
callq 0xdab0
movq 0x138(%rsp), %rdi
cmpq %r12, %rdi
je 0x9874
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
leaq 0x48(%rsp), %r12
je 0x9895
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x98ab
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x98c2
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x98de
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x1f8(%rsp), %rdi
leaq 0x208(%rsp), %rax
cmpq %rax, %rdi
je 0x9fd1
movq 0x208(%rsp), %rsi
jmp 0x9fc9
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x28(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x28(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x9953
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0x108(%rsp), %r12
movq %rsp, %r14
jbe 0x998f
movl $0xf, %edi
leaq 0x38(%rsp), %r9
cmpq %r9, %rsi
je 0x998a
movq 0x38(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x9999
movq %r14, %rdi
callq 0x30c0
jmp 0x99a7
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0xf8(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x99d0
movq %rdx, 0xf8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x108(%rsp)
jmp 0x99da
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x100(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x2d8(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0xdab0
movq 0xf8(%rsp), %rdi
cmpq %r12, %rdi
je 0x9a2c
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x9a48
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x9a5e
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x9a75
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x9a91
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x2d8(%rsp), %rdi
leaq 0x2e8(%rsp), %rcx
jmp 0x9c43
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x28(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x28(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x9af5
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0xe8(%rsp), %r12
movq %rsp, %r14
jbe 0x9b31
movl $0xf, %edi
leaq 0x38(%rsp), %r9
cmpq %r9, %rsi
je 0x9b2c
movq 0x38(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x9b3b
movq %r14, %rdi
callq 0x30c0
jmp 0x9b49
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0xd8(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x9b72
movq %rdx, 0xd8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xe8(%rsp)
jmp 0x9b7c
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0xe0(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x2b8(%rsp), %rdi
leaq 0xd8(%rsp), %rsi
callq 0xdab0
movq 0xd8(%rsp), %rdi
cmpq %r12, %rdi
je 0x9bce
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x9bea
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x9c00
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x9c17
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x9c33
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x2b8(%rsp), %rdi
leaq 0x2c8(%rsp), %rcx
movq %rcx, %rax
cmpq %rcx, %rdi
je 0x9c56
movq (%rax), %rsi
incq %rsi
callq 0x3200
movq %rbp, %rax
movl 0x24(%r15), %ebp
movq %rax, (%rsp)
movq %r14, %rdi
leaq 0xc402(%rip), %rsi      # 0x1606d
leaq 0xc3fd(%rip), %rdx      # 0x1606f
callq 0x530a
leaq 0x12592(%rip), %rdi     # 0x1c210
movq %r14, %rsi
callq 0x5136
movl (%rax), %r12d
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x9ca4
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
cmpl %r12d, %ebp
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %r12
jne 0x9fd1
movq 0x88(%rsp), %rax
movl (%rax), %eax
movq 0x98(%rsp), %rcx
movl %eax, (%rcx)
jmp 0x9fd1
addl $-0x2, %r12d
jmp 0x9cd9
decl %r12d
shrl $0x1f, %r13d
leal (%r12,%r13), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %r14
movq %r14, %rdi
movl $0x2d, %edx
callq 0x3250
addq 0x68(%rsp), %r13
movq %r13, %rdi
movl %r12d, %esi
movl %ebp, %edx
callq 0xa9ce
movl $0x16, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0xc3fb(%rip), %rcx      # 0x1611e
callq 0x3230
leaq 0x58(%rsp), %r13
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
leaq 0x10(%rsp), %rbp
leaq 0x48(%rsp), %rdi
je 0x9d5a
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x9d64
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xc35d(%rip), %rsi      # 0x160e0
callq 0x3380
movq %rbp, (%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9da9
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
jmp 0x9db2
movdqu (%rcx), %xmm0
movdqu %xmm0, (%rbp)
movq 0x8(%rax), %rdx
movq %rdx, 0x8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %r12d
movl 0x24(%rsp), %eax
cmpl $0xa, %eax
jb 0x9e1d
movl $0x4, %r12d
cmpl $0x63, %eax
jbe 0x9e14
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x9e1a
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x9e1d
movl %eax, %ecx
movl $0xd1b71759, %edx       # imm = 0xD1B71759
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x9ddf
addl $-0x3, %r12d
jmp 0x9e1d
addl $-0x2, %r12d
jmp 0x9e1d
decl %r12d
movq 0x90(%rsp), %r14
leal (%r14,%r12), %esi
leaq 0x38(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0x28(%rsp), %rdi
movl $0x2d, %edx
callq 0x3250
movq 0x28(%rsp), %rdi
addq %r14, %rdi
movl %r12d, %esi
movl 0x24(%rsp), %edx
callq 0xa9ce
movq (%rsp), %rcx
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x9e69
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r8
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rdi, %rax
leaq 0x168(%rsp), %r12
movq %rsp, %r14
jbe 0x9ea5
movl $0xf, %edi
leaq 0x38(%rsp), %r9
cmpq %r9, %rsi
je 0x9ea0
movq 0x38(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x9eaf
movq %r14, %rdi
callq 0x30c0
jmp 0x9ebd
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3230
movq %r12, 0x158(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x9ee6
movq %rdx, 0x158(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x168(%rsp)
jmp 0x9ef0
movdqu (%rcx), %xmm0
movdqu %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x160(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x218(%rsp), %rdi
leaq 0x158(%rsp), %rsi
callq 0xdab0
movq 0x158(%rsp), %rdi
cmpq %r12, %rdi
je 0x9f42
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
leaq 0x48(%rsp), %r12
je 0x9f63
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x9f79
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x9f90
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x9fac
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0x9fd1
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x3200
incl %ebx
movq 0x328(%rsp), %rax
movq -0x18(%rax), %rax
testb $0x5, 0x348(%rsp,%rax)
je 0x7ba9
movq 0xb8(%rsp), %rdi
leaq 0xc8(%rsp), %rax
cmpq %rax, %rdi
je 0xa012
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x11fb7(%rip), %rsi     # 0x1bfd0
leaq 0x328(%rsp), %rdi
callq 0x32a0
leaq 0x3a0(%rsp), %rdi
callq 0x30d0
addq $0x4a8, %rsp            # imm = 0x4A8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq 0x158(%rsp), %rdi
cmpq %r12, %rdi
je 0xa06a
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa06a
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0xa08b
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa08b
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa0ab
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa0ab
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa0cc
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa0cc
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa0ed
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa0ed
movq %rax, %rbx
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x228(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7fd
movq %rax, %rbx
movq 0x198(%rsp), %rdi
cmpq %r12, %rdi
je 0xa13d
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa13d
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0xa15e
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa15e
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa17e
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa17e
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa19f
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa19f
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa1c0
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa1c0
movq %rax, %rbx
movq 0x258(%rsp), %rdi
leaq 0x268(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x268(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7fd
movq %rax, %rbx
movq 0x138(%rsp), %rdi
cmpq %r12, %rdi
je 0xa210
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa210
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0xa231
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa231
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa251
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa251
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa272
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa272
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa293
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa293
movq %rax, %rbx
movq 0x1f8(%rsp), %rdi
leaq 0x208(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x208(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7fd
movq %rax, %rbx
movq 0xf8(%rsp), %rdi
cmpq %r12, %rdi
je 0xa2e3
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa2e3
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0xa304
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa304
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa324
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa324
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa345
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa345
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa366
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa366
movq %rax, %rbx
movq 0x2d8(%rsp), %rdi
leaq 0x2e8(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x2e8(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7fd
movq %rax, %rbx
movq 0xd8(%rsp), %rdi
cmpq %r12, %rdi
je 0xa3b6
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa3b6
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0xa3d7
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa3d7
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa3f7
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa3f7
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa418
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa418
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa439
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa439
movq %rax, %rbx
movq 0x2b8(%rsp), %rdi
leaq 0x2c8(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x2c8(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7fd
movq %rax, %rbx
movq 0x118(%rsp), %rdi
cmpq %r12, %rdi
je 0xa489
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa489
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0xa4aa
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa4aa
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa4ca
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa4ca
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa4eb
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa4eb
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa50c
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa50c
movq %rax, %rbx
movq 0x2f8(%rsp), %rdi
leaq 0x308(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x308(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7fd
movq %rax, %rbx
movq 0x178(%rsp), %rdi
cmpq %r12, %rdi
je 0xa55c
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa55c
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0xa57d
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa57d
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa59d
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa59d
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa5be
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa5be
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa5df
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa5df
movq %rax, %rbx
movq 0x238(%rsp), %rdi
leaq 0x248(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x248(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7fd
jmp 0xa6f9
jmp 0xa7db
movq %rax, %rbx
movq 0x1b8(%rsp), %rdi
cmpq %r12, %rdi
je 0xa639
movq 0x1c8(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa639
movq %rax, %rbx
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0xa65a
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa65a
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa67a
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa67a
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa69b
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa69b
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa6bc
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa6bc
movq %rax, %rbx
movq 0x278(%rsp), %rdi
leaq 0x288(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x288(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7fd
jmp 0xa6e9
movq %r14, 0xa8(%rsp)
movq %rax, %rbx
jmp 0xa846
movq %rax, %rbx
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0xa7de
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa7de
jmp 0xa7db
movq %rax, %rbx
jmp 0xa7b0
jmp 0xa7fd
movq %rax, %rbx
movq 0x1d8(%rsp), %rdi
cmpq %r12, %rdi
je 0xa753
movq 0x1e8(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa753
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0xa774
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa774
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa794
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa794
movq %rax, %rbx
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0xa7b0
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x298(%rsp), %rdi
leaq 0x2a8(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x2a8(%rsp), %rsi
jmp 0xa7f1
jmp 0xa7db
jmp 0xa7fd
jmp 0xa7db
jmp 0xa7fd
jmp 0xa7db
jmp 0xa7fd
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0xa800
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3200
jmp 0xa800
jmp 0xa7fd
movq %rax, %rbx
movq 0xb8(%rsp), %rdi
leaq 0xc8(%rsp), %rax
cmpq %rax, %rdi
je 0xa825
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x3200
movq 0x117a4(%rip), %rsi     # 0x1bfd0
leaq 0x328(%rsp), %rdi
callq 0x32a0
leaq 0x3a0(%rsp), %rdi
callq 0x30d0
movq 0x318(%rsp), %rax
movq (%rax), %rdi
cmpq 0xa8(%rsp), %rdi
je 0xa86e
movq 0xa8(%rsp), %rax
movq (%rax), %rsi
incq %rsi
callq 0x3200
movq %rbx, %rdi
callq 0x3340