// File: /workspace/github_cpp_makefile_star2_O1/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 -0x70(%rbp), %rdi
callq 0x3b1c
leaq -0x48(%rbp), %rdi
leaq -0x70(%rbp), %r15
movq %r15, %rsi
callq 0x2230
movq (%r15), %rdi
leaq -0x60(%rbp), %rax
cmpq %rax, %rdi
je 0xb491
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x21d0
leaq 0x5ca0(%rip), %rsi      # 0x11138
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb72c
leaq 0x5ca0(%rip), %rsi      # 0x11150
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb72c
leaq 0x5c73(%rip), %rsi      # 0x1113b
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb740
leaq 0x5c73(%rip), %rsi      # 0x11153
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb740
leaq 0x5c46(%rip), %rsi      # 0x1113e
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb754
leaq 0x5c46(%rip), %rsi      # 0x11156
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb754
leaq 0x5c19(%rip), %rsi      # 0x11141
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb768
leaq 0x5c19(%rip), %rsi      # 0x11159
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb768
leaq 0x5bec(%rip), %rsi      # 0x11144
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb77c
leaq 0x5bec(%rip), %rsi      # 0x1115c
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb77c
leaq 0x5bbf(%rip), %rsi      # 0x11147
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb78d
leaq 0x5bbf(%rip), %rsi      # 0x1115f
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb78d
leaq 0x5b92(%rip), %rsi      # 0x1114a
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb79e
leaq 0x5b92(%rip), %rsi      # 0x11162
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb79e
leaq 0x5b65(%rip), %rsi      # 0x1114d
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7af
leaq 0x5b65(%rip), %rsi      # 0x11165
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7af
leaq 0x5b50(%rip), %rsi      # 0x11168
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7c0
leaq 0x5b44(%rip), %rsi      # 0x11174
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7c0
leaq 0x5b23(%rip), %rsi      # 0x1116b
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7d1
leaq 0x5b17(%rip), %rsi      # 0x11177
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7d1
leaq 0x5af6(%rip), %rsi      # 0x1116e
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7e2
leaq 0x5aea(%rip), %rsi      # 0x1117a
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7e2
leaq 0x5ac9(%rip), %rsi      # 0x11171
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7f3
leaq 0x5abd(%rip), %rsi      # 0x1117d
leaq -0x48(%rbp), %rdi
callq 0x20a0
testl %eax, %eax
je 0xb7f3
leaq -0x48(%rbp), %rdi
movl %r14d, %esi
callq 0x460a
cmpl $0x80, %eax
jl 0xb842
leaq -0x70(%rbp), %rsi
movb $0x68, (%rsi)
movq %rbx, %rdi
callq 0x67f0
leaq -0x70(%rbp), %rdi
leaq -0x48(%rbp), %rsi
movl $0x2, %edx
movl %r14d, %ecx
callq 0x48ff
movq -0x70(%rbp), %r12
movq -0x68(%rbp), %rcx
movq -0x60(%rbp), %r14
movq 0x8(%rbx), %rsi
movq %rbx, %rdi
movq %r12, %rdx
callq 0x6a1a
jmp 0xb808
leaq -0x70(%rbp), %rsi
movb $0x50, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x51, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x52, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x53, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x54, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x55, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x56, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x57, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x6, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0xe, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x16, (%rsi)
movq %rbx, %rdi
callq 0x67f0
jmp 0xb802
leaq -0x70(%rbp), %rsi
movb $0x1e, (%rsi)
movq %rbx, %rdi
callq 0x67f0
xorl %r14d, %r14d
xorl %r12d, %r12d
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
je 0xb81d
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x21d0
testq %r12, %r12
je 0xb830
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 0xb802
leaq -0x70(%rbp), %rsi
movb $0x6a, (%rsi)
movq %rbx, %rdi
callq 0x67f0
leaq -0x70(%rbp), %rdi
leaq -0x48(%rbp), %rsi
movl $0x1, %edx
movl %r14d, %ecx
callq 0x48ff
movq -0x70(%rbp), %r12
movq -0x68(%rbp), %rcx
movq -0x60(%rbp), %r14
movq 0x8(%rbx), %rsi
movq %rbx, %rdi
movq %r12, %rdx
callq 0x6a1a
jmp 0xb808
jmp 0xb88d
jmp 0xb8b0
jmp 0xb8b0
movq %rax, %r15
jmp 0xb8b9
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
jmp 0xb8b0
movq %rax, %r15
xorl %r14d, %r14d
xorl %r12d, %r12d
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
je 0xb8ce
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x21d0
testq %r12, %r12
je 0xb8e1
subq %r12, %r14
movq %r12, %rdi
movq %r14, %rsi
callq 0x21d0
movq (%rbx), %rdi
testq %rdi, %rdi
je 0xb8f5
movq 0x10(%rbx), %rsi
subq %rdi, %rsi
callq 0x21d0
movq %r15, %rdi
callq 0x2300