// File: /workspace/github_cpp_makefile_star2_O3/lindorx[P]train/InsPro.cpp
// Function: Push(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, int, int)
std::vector<unsigned char>Push(const std::string& str, int n,int num)
{
	using namespace std;
	vector<unsigned char>data;
	vector<unsigned char>d;
	string ch;
	ch = CutStr(str,n);
	if (ch == "AX" || ch == "ax"){
		data.push_back(0x50);
		return data;
	}
	else if (ch == "CX" || ch == "cx"){
		data.push_back(0x51);
		return data;
	}
	else if (ch == "DX" || ch == "dx"){
		data.push_back(0x52);
		return data;
	}
	else if (ch == "BX" || ch == "bx"){
		data.push_back(0x53);
		return data;
	}
	else if (ch == "SP" || ch == "sp"){
		data.push_back(0x54);
		return data;
	}
	else if (ch == "BP" || ch == "bp"){
		data.push_back(0x55);
		return data;
	}
	else if (ch == "SI" || ch == "si"){
		data.push_back(0x56);
		return data;
	}
	else if (ch == "DI" || ch == "di"){
		data.push_back(0x57);
		return data;
	}
	else if (ch == "ES" || ch == "es"){
		data.push_back(0x6);
		return data;
	}
	else if (ch == "CS" || ch == "cs"){
		data.push_back(0xe);
		return data;
	}
	else if (ch == "SS" || ch == "ss"){
		data.push_back(0x16);
		return data;
	}
	else if (ch == "DS" || ch == "ds"){
		data.push_back(0x1e);
		return data;
	}
	else {
		int k = IntNum(ch, num);
		if (k > 0x7f){
			data.push_back(0x68);
			d = Num(ch, 2, num);
			data.insert(data.end(), d.begin(), d.end());
			return data;
		}
		else if(k>=0&&k<0x80){
			data.push_back(0x6a);
			d = Num(ch, 1, num);
			data.insert(data.end(), d.begin(), d.end());
			return data;
		}
		else{
			return data;
			//��������data��СΪ0��˵��Ϊ����
		}
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movl %ecx, %r14d
movq %rdi, %rbx
xorl %eax, %eax
movq %rax, 0x10(%rdi)
xorps %xmm0, %xmm0
movups %xmm0, (%rdi)
leaq -0x38(%rbp), %r13
movq %r13, -0x10(%r13)
movq %rax, -0x8(%r13)
movb $0x0, (%r13)
leaq -0x68(%rbp), %rdi
callq 0x3b1c
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %r15
movq %r15, %rsi
callq 0x2230
movq (%r15), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0xb29f
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x21d0
leaq 0x5e92(%rip), %rsi      # 0x11138
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb53a
leaq 0x5e92(%rip), %rsi      # 0x11150
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb53a
leaq 0x5e65(%rip), %rsi      # 0x1113b
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb54e
leaq 0x5e65(%rip), %rsi      # 0x11153
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb54e
leaq 0x5e38(%rip), %rsi      # 0x1113e
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb562
leaq 0x5e38(%rip), %rsi      # 0x11156
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb562
leaq 0x5e0b(%rip), %rsi      # 0x11141
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb576
leaq 0x5e0b(%rip), %rsi      # 0x11159
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb576
leaq 0x5dde(%rip), %rsi      # 0x11144
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb58a
leaq 0x5dde(%rip), %rsi      # 0x1115c
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb58a
leaq 0x5db1(%rip), %rsi      # 0x11147
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb59b
leaq 0x5db1(%rip), %rsi      # 0x1115f
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb59b
leaq 0x5d84(%rip), %rsi      # 0x1114a
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5ac
leaq 0x5d84(%rip), %rsi      # 0x11162
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5ac
leaq 0x5d57(%rip), %rsi      # 0x1114d
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5bd
leaq 0x5d57(%rip), %rsi      # 0x11165
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5bd
leaq 0x5d42(%rip), %rsi      # 0x11168
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5ce
leaq 0x5d36(%rip), %rsi      # 0x11174
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5ce
leaq 0x5d15(%rip), %rsi      # 0x1116b
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5df
leaq 0x5d09(%rip), %rsi      # 0x11177
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5df
leaq 0x5ce8(%rip), %rsi      # 0x1116e
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5f0
leaq 0x5cdc(%rip), %rsi      # 0x1117a
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb5f0
leaq 0x5cbb(%rip), %rsi      # 0x11171
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb601
leaq 0x5caf(%rip), %rsi      # 0x1117d
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb601
leaq -0x48(%rbp), %rdi
movl %r14d, %esi
callq 0x45f9
cmpl $0x80, %eax
jl 0xb650
leaq -0x68(%rbp), %rsi
movb $0x68, (%rsi)
movq %rbx, %rdi
callq 0x6694
leaq -0x68(%rbp), %rdi
leaq -0x48(%rbp), %rsi
movl $0x2, %edx
movl %r14d, %ecx
callq 0x48ee
movq -0x68(%rbp), %r12
movq -0x60(%rbp), %rcx
movq -0x58(%rbp), %r14
movq 0x8(%rbx), %rsi
movq %rbx, %rdi
movq %r12, %rdx
callq 0x68c6
jmp 0xb616
leaq -0x68(%rbp), %rsi
movb $0x50, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x51, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x52, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x53, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x54, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x55, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x56, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x57, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x6, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0xe, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x16, (%rsi)
movq %rbx, %rdi
callq 0x6694
jmp 0xb610
leaq -0x68(%rbp), %rsi
movb $0x1e, (%rsi)
movq %rbx, %rdi
callq 0x6694
xorl %r14d, %r14d
xorl %r12d, %r12d
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
je 0xb62b
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x21d0
testq %r12, %r12
je 0xb63e
subq %r12, %r14
movq %r12, %rdi
movq %r14, %rsi
callq 0x21d0
movq %rbx, %rax
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
testl %eax, %eax
js 0xb610
leaq -0x68(%rbp), %rsi
movb $0x6a, (%rsi)
movq %rbx, %rdi
callq 0x6694
leaq -0x68(%rbp), %rdi
leaq -0x48(%rbp), %rsi
movl $0x1, %edx
movl %r14d, %ecx
callq 0x48ee
movq -0x68(%rbp), %r12
movq -0x60(%rbp), %rcx
movq -0x58(%rbp), %r14
movq 0x8(%rbx), %rsi
movq %rbx, %rdi
movq %r12, %rdx
callq 0x68c6
jmp 0xb616
jmp 0xb69b
jmp 0xb6be
jmp 0xb6be
movq %rax, %r15
jmp 0xb6c7
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
jmp 0xb6be
movq %rax, %r15
xorl %r14d, %r14d
xorl %r12d, %r12d
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
je 0xb6dc
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x21d0
testq %r12, %r12
je 0xb6ef
subq %r12, %r14
movq %r12, %rdi
movq %r14, %rsi
callq 0x21d0
movq (%rbx), %rdi
testq %rdi, %rdi
je 0xb703
movq 0x10(%rbx), %rsi
subq %rdi, %rsi
callq 0x21d0
movq %r15, %rdi
callq 0x2300