// File: /workspace/github_cpp_makefile_star2_O2/lindorx[P]train/main.cpp
// Function: jmpch()
void jmpch(void)
{
	using namespace std;
	int i, j, n, k = 50;//k����ѭ������
	vector<unsigned char>d;
	//ע��������ʹ�ö���if��Ƕ
	for (i = 0; i < (int)Title.size(); i++)
		for (j = k - 1; j >= 0; j--) {
			//------------------------�������ָ���-----------------------------//
			if (j < (int)jp_p.size()) {//�����������������ó���Χ
				if (Title[i].str == jp_p[j].str) {
					//jp���鴦��
					n = Title[i].num - jp_p[j].num - 2;
					if (n > 0x7f) {//����n=0x80��˵����jmpָ��ռ3�ַ���������������Ϊ0xe9,0xxx,0xxx
						Data[jp_p[j].s] = 0xe9;
						//��nת��Ϊ��Ӧ�Ŀ�����������
						d = NumToUc(n - 1, 2);
						Data[jp_p[j].s + 1] = d[0];
						Data.insert(Data.begin() + jp_p[j].s + 2, 1, d[1]);
					}
					else {
						d = NumToUc(n, 1);
						Data[jp_p[j].s + 1] = d[0];
					}
				}
			}
			//------------------------�������ָ���-----------------------------//
			if (j < (int)je_p.size()) {
				if (Title[i].str == je_p[j].str) {
					n = Title[i].num - je_p[j].num - 2;
					if (n > 0x7f) {
						Data[je_p[j].s] = 0x0f;
						Data[je_p[j].s + 1] = 0x84;
						d = NumToUc(n, 2);
						Data.insert(Data.begin() + je_p[j].s + 2, d.begin(), d.end());
					}
					else {
						d = NumToUc(n, 1);
						Data[je_p[j].s + 1] = d[0];
					}
				}
			}
			//------------------------�������ָ���-----------------------------//
			//JB����
			if (j < (int)jb_p.size()) {
				if (Title[i].str == jb_p[j].str) {
					n = Title[i].num - jb_p[j].num - 2;
					if (n > 0x7f) {
						Data[jb_p[j].s] = 0x0f;
						Data[jb_p[j].s + 1] = 0x82;
						d = NumToUc(n, 2);
						Data.insert(Data.begin() + jb_p[j].s + 2, d.begin(), d.end());
					}
					else {
						d = NumToUc(n, 1);
						Data[jb_p[j].s + 1] = d[0];
					}
				}
			}
			//------------------------�������ָ���-----------------------------//
			if (j < (int)jbe_p.size()) {
				if (Title[i].str == jbe_p[j].str) {
					n = Title[i].num - jbe_p[j].num - 2;
					if (n > 0x7f) {
						Data[jbe_p[j].s] = 0x0f;
						Data[jbe_p[j].s + 1] = 0x86;
						d = NumToUc(n, 2);
						Data.insert(Data.begin() + jbe_p[j].s + 2, d.begin(), d.end());
					}
					else {
						d = NumToUc(n, 1);
						Data[jbe_p[j].s + 1] = d[0];
					}
				}
			}
			//------------------------�������ָ���-----------------------------//
			if (j < (int)push_p.size()) {
				//push_p���鴦��
				if (Title[i].str == push_p[j].str) {
					//jp���鴦��
					n = Title[i].num;
					if (n > 0x7f) {//����n=0x80��˵����jmpָ��ռ3�ַ���������������Ϊ0xe9,0xxx,0xxx
						Data[push_p[j].s] = 0x68;
						//��nת��Ϊ��Ӧ�Ŀ�����������
						d = NumToUc(n, 2);
						Data[push_p[j].s + 1] = d[0];
						Data.insert(Data.begin() + push_p[j].s + 2, 1, d[1]);
					}
					else {
						d = NumToUc(n, 1);
						Data[push_p[j].s + 1] = d[0];
					}
				}
			}
			//------------------------�������ָ���-----------------------------//
		}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
xorps %xmm0, %xmm0
leaq -0x40(%rbp), %rax
movaps %xmm0, (%rax)
andq $0x0, 0x10(%rax)
xorl %ecx, %ecx
movq 0x5cc4(%rip), %rax      # 0x12060
subq 0x5cb5(%rip), %rax      # 0x12058
cqto
pushq $0x28
popq %rsi
idivq %rsi
cltq
cmpq %rax, %rcx
jge 0xc9c2
movq %rcx, -0x60(%rbp)
imulq $0x28, %rcx, %r12
pushq $0x31
popq %r13
testl %r13d, %r13d
js 0xc9b6
movq 0x5ce6(%rip), %rax      # 0x120b8
movq 0x5cd7(%rip), %rsi      # 0x120b0
subq %rsi, %rax
cqto
pushq $0x28
popq %rcx
idivq %rcx
movl %r13d, %ebx
cmpl %eax, %r13d
jge 0xc501
movq 0x5c61(%rip), %rdi      # 0x12058
addq %r12, %rdi
imulq $0x28, %rbx, %r14
addq %r14, %rsi
callq 0x5aa9
testb %al, %al
je 0xc501
movq 0x5c43(%rip), %rax      # 0x12058
movslq 0x20(%rax,%r12), %rsi
movq 0x5c8f(%rip), %rax      # 0x120b0
movslq 0x20(%rax,%r14), %rcx
subq %rcx, %rsi
cmpl $0x82, %esi
jl 0xc4bd
addq %r14, %rax
movslq 0x24(%rax), %rax
movq 0x5bbd(%rip), %rcx      # 0x12000
movb $-0x17, (%rcx,%rax)
addl $-0x3, %esi
leaq -0x58(%rbp), %r15
movq %r15, %rdi
pushq $0x2
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5d96
movq %r15, %rdi
callq 0x5be8
movq -0x40(%rbp), %rax
movb (%rax), %al
movq 0x5c36(%rip), %rcx      # 0x120b0
movslq 0x24(%rcx,%r14), %rcx
movq 0x5b7a(%rip), %rdx      # 0x12000
movb %al, 0x1(%rdx,%rcx)
movq 0x5b6f(%rip), %rax      # 0x12000
movq 0x5c18(%rip), %rcx      # 0x120b0
movslq 0x24(%rcx,%r14), %rcx
leaq (%rax,%rcx), %rsi
addq $0x2, %rsi
movq -0x40(%rbp), %rcx
incq %rcx
leaq 0x5b4d(%rip), %rdi      # 0x12000
pushq $0x1
popq %rdx
callq 0xa902
jmp 0xc501
addq $-0x2, %rsi
leaq -0x58(%rbp), %r15
movq %r15, %rdi
pushq $0x1
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5d96
movq %r15, %rdi
callq 0x5be8
movq -0x40(%rbp), %rax
movb (%rax), %al
movq 0x5bbf(%rip), %rcx      # 0x120b0
movslq 0x24(%rcx,%r14), %rcx
movq 0x5b03(%rip), %rdx      # 0x12000
movb %al, 0x1(%rdx,%rcx)
movq 0x5be0(%rip), %rax      # 0x120e8
movq 0x5bd1(%rip), %rsi      # 0x120e0
subq %rsi, %rax
cqto
pushq $0x28
popq %rcx
idivq %rcx
cmpl %eax, %r13d
jge 0xc62f
movq 0x5b2e(%rip), %rdi      # 0x12058
addq %r12, %rdi
imulq $0x28, %rbx, %r14
addq %r14, %rsi
callq 0x5aa9
testb %al, %al
je 0xc62f
movq 0x5b10(%rip), %rax      # 0x12058
movslq 0x20(%rax,%r12), %rcx
movq 0x5b8c(%rip), %rax      # 0x120e0
movslq 0x20(%rax,%r14), %rdx
subq %rdx, %rcx
movq %rcx, %rsi
addq $-0x2, %rsi
cmpl $0x82, %ecx
jl 0xc5ef
addq %r14, %rax
movslq 0x24(%rax), %rax
movq 0x5a83(%rip), %rcx      # 0x12000
movb $0xf, (%rcx,%rax)
movq 0x5b58(%rip), %rax      # 0x120e0
movslq 0x24(%rax,%r14), %rax
movq 0x5a6c(%rip), %rcx      # 0x12000
movb $-0x7c, 0x1(%rcx,%rax)
movl %esi, %esi
leaq -0x58(%rbp), %r15
movq %r15, %rdi
pushq $0x2
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5d96
movq %r15, %rdi
callq 0x5be8
movq 0x5a3b(%rip), %rax      # 0x12000
movq 0x5b14(%rip), %rcx      # 0x120e0
movslq 0x24(%rcx,%r14), %rcx
leaq (%rax,%rcx), %rsi
addq $0x2, %rsi
movq -0x40(%rbp), %rdx
movq -0x38(%rbp), %rcx
leaq 0x5a18(%rip), %rdi      # 0x12000
callq 0x5b08
jmp 0xc62f
leaq -0x58(%rbp), %r15
movq %r15, %rdi
pushq $0x1
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5d96
movq %r15, %rdi
callq 0x5be8
movq -0x40(%rbp), %rax
movb (%rax), %al
movq 0x5ac1(%rip), %rcx      # 0x120e0
movslq 0x24(%rcx,%r14), %rcx
movq 0x59d5(%rip), %rdx      # 0x12000
movb %al, 0x1(%rdx,%rcx)
movq 0x5ae2(%rip), %rax      # 0x12118
movq 0x5ad3(%rip), %rsi      # 0x12110
subq %rsi, %rax
cqto
pushq $0x28
popq %rcx
idivq %rcx
cmpl %eax, %r13d
jge 0xc75d
movq 0x5a00(%rip), %rdi      # 0x12058
addq %r12, %rdi
imulq $0x28, %rbx, %r14
addq %r14, %rsi
callq 0x5aa9
testb %al, %al
je 0xc75d
movq 0x59e2(%rip), %rax      # 0x12058
movslq 0x20(%rax,%r12), %rcx
movq 0x5a8e(%rip), %rax      # 0x12110
movslq 0x20(%rax,%r14), %rdx
subq %rdx, %rcx
movq %rcx, %rsi
addq $-0x2, %rsi
cmpl $0x82, %ecx
jl 0xc71d
addq %r14, %rax
movslq 0x24(%rax), %rax
movq 0x5955(%rip), %rcx      # 0x12000
movb $0xf, (%rcx,%rax)
movq 0x5a5a(%rip), %rax      # 0x12110
movslq 0x24(%rax,%r14), %rax
movq 0x593e(%rip), %rcx      # 0x12000
movb $-0x7e, 0x1(%rcx,%rax)
movl %esi, %esi
leaq -0x58(%rbp), %r15
movq %r15, %rdi
pushq $0x2
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5d96
movq %r15, %rdi
callq 0x5be8
movq 0x590d(%rip), %rax      # 0x12000
movq 0x5a16(%rip), %rcx      # 0x12110
movslq 0x24(%rcx,%r14), %rcx
leaq (%rax,%rcx), %rsi
addq $0x2, %rsi
movq -0x40(%rbp), %rdx
movq -0x38(%rbp), %rcx
leaq 0x58ea(%rip), %rdi      # 0x12000
callq 0x5b08
jmp 0xc75d
leaq -0x58(%rbp), %r15
movq %r15, %rdi
pushq $0x1
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5d96
movq %r15, %rdi
callq 0x5be8
movq -0x40(%rbp), %rax
movb (%rax), %al
movq 0x59c3(%rip), %rcx      # 0x12110
movslq 0x24(%rcx,%r14), %rcx
movq 0x58a7(%rip), %rdx      # 0x12000
movb %al, 0x1(%rdx,%rcx)
movq 0x599c(%rip), %rax      # 0x12100
movq 0x598d(%rip), %rsi      # 0x120f8
subq %rsi, %rax
cqto
pushq $0x28
popq %rcx
idivq %rcx
cmpl %eax, %r13d
jge 0xc88b
movq 0x58d2(%rip), %rdi      # 0x12058
addq %r12, %rdi
imulq $0x28, %rbx, %r14
addq %r14, %rsi
callq 0x5aa9
testb %al, %al
je 0xc88b
movq 0x58b4(%rip), %rax      # 0x12058
movslq 0x20(%rax,%r12), %rcx
movq 0x5948(%rip), %rax      # 0x120f8
movslq 0x20(%rax,%r14), %rdx
subq %rdx, %rcx
movq %rcx, %rsi
addq $-0x2, %rsi
cmpl $0x82, %ecx
jl 0xc84b
addq %r14, %rax
movslq 0x24(%rax), %rax
movq 0x5827(%rip), %rcx      # 0x12000
movb $0xf, (%rcx,%rax)
movq 0x5914(%rip), %rax      # 0x120f8
movslq 0x24(%rax,%r14), %rax
movq 0x5810(%rip), %rcx      # 0x12000
movb $-0x7a, 0x1(%rcx,%rax)
movl %esi, %esi
leaq -0x58(%rbp), %r15
movq %r15, %rdi
pushq $0x2
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5d96
movq %r15, %rdi
callq 0x5be8
movq 0x57df(%rip), %rax      # 0x12000
movq 0x58d0(%rip), %rcx      # 0x120f8
movslq 0x24(%rcx,%r14), %rcx
leaq (%rax,%rcx), %rsi
addq $0x2, %rsi
movq -0x40(%rbp), %rdx
movq -0x38(%rbp), %rcx
leaq 0x57bc(%rip), %rdi      # 0x12000
callq 0x5b08
jmp 0xc88b
leaq -0x58(%rbp), %r15
movq %r15, %rdi
pushq $0x1
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5d96
movq %r15, %rdi
callq 0x5be8
movq -0x40(%rbp), %rax
movb (%rax), %al
movq 0x587d(%rip), %rcx      # 0x120f8
movslq 0x24(%rcx,%r14), %rcx
movq 0x5779(%rip), %rdx      # 0x12000
movb %al, 0x1(%rdx,%rcx)
movq 0x583e(%rip), %rax      # 0x120d0
movq 0x582f(%rip), %rsi      # 0x120c8
subq %rsi, %rax
cqto
pushq $0x28
popq %rcx
idivq %rcx
cmpl %eax, %r13d
jge 0xc9ae
movq 0x57a4(%rip), %rdi      # 0x12058
addq %r12, %rdi
imulq $0x28, %rbx, %rbx
addq %rbx, %rsi
callq 0x5aa9
testb %al, %al
je 0xc9ae
movq 0x5786(%rip), %rax      # 0x12058
movslq 0x20(%rax,%r12), %rsi
cmpq $0x80, %rsi
jl 0xc96e
movq 0x57dd(%rip), %rax      # 0x120c8
movslq 0x24(%rax,%rbx), %rax
movq 0x5709(%rip), %rcx      # 0x12000
movb $0x68, (%rcx,%rax)
leaq -0x58(%rbp), %r14
movq %r14, %rdi
pushq $0x2
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r14, %rsi
callq 0x5d96
movq %r14, %rdi
callq 0x5be8
movq -0x40(%rbp), %rax
movb (%rax), %al
movq 0x579d(%rip), %rcx      # 0x120c8
movslq 0x24(%rcx,%rbx), %rcx
movq 0x56c9(%rip), %rdx      # 0x12000
movb %al, 0x1(%rdx,%rcx)
movq 0x56be(%rip), %rax      # 0x12000
movq 0x577f(%rip), %rcx      # 0x120c8
movslq 0x24(%rcx,%rbx), %rcx
leaq (%rax,%rcx), %rsi
addq $0x2, %rsi
movq -0x40(%rbp), %rcx
incq %rcx
leaq 0x569c(%rip), %rdi      # 0x12000
pushq $0x1
popq %rdx
callq 0xa902
jmp 0xc9ae
leaq -0x58(%rbp), %r14
movq %r14, %rdi
pushq $0x1
popq %rdx
callq 0x3e87
leaq -0x40(%rbp), %rdi
movq %r14, %rsi
callq 0x5d96
movq %r14, %rdi
callq 0x5be8
movq -0x40(%rbp), %rax
movb (%rax), %al
movq 0x572a(%rip), %rcx      # 0x120c8
movslq 0x24(%rcx,%rbx), %rcx
movq 0x5656(%rip), %rdx      # 0x12000
movb %al, 0x1(%rdx,%rcx)
decl %r13d
jmp 0xc3c2
movq -0x60(%rbp), %rcx
incq %rcx
jmp 0xc395
leaq -0x40(%rbp), %rdi
callq 0x5be8
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
jmp 0xc9f6
movq %rax, %rbx
leaq -0x40(%rbp), %rdi
callq 0x5be8
movq %rbx, %rdi
callq 0x2300