// File: /workspace/github_cpp_makefile_star2_O1/lindorx[P]train/HelpInsPro.cpp
// Function: regadd(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, int)
unsigned char regadd(const std::string& str,int num)
{
	if (num == 2){
		if (str == "CX")return CX_ADD;
		if (str == "DX")return DX_ADD;
		if (str == "BX")return BX_ADD;
		if (str == "SP")return SP_ADD;
		if (str == "BP")return BP_ADD;
		if (str == "SI")return SI_ADD;
		if (str == "DI")return DI_ADD;

		if (str == "cx")return CX_ADD;
		if (str == "dx")return DX_ADD;
		if (str == "bx")return BX_ADD;
		if (str == "sp")return SP_ADD;
		if (str == "bp")return BP_ADD;
		if (str == "si")return SI_ADD;
		if (str == "di")return DI_ADD;
	}
	else if (num == 1){
		if (str == "cl")return CL_ADD;
		if (str == "dl")return DL_ADD;
		if (str == "bl")return BL_ADD;
		if (str == "ah")return AH_ADD;
		if (str == "ch")return CH_ADD;
		if (str == "dh")return DH_ADD;
		if (str == "bh")return BH_ADD;

		if (str == "CL")return CL_ADD;
		if (str == "DL")return DL_ADD;
		if (str == "BL")return BL_ADD;
		if (str == "AH")return AH_ADD;
		if (str == "CH")return CH_ADD;
		if (str == "DH")return DH_ADD;
		if (str == "BH")return BH_ADD;
	}
	return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
movq %rdi, %rbx
cmpl $0x1, %esi
je 0x4bc5
cmpl $0x2, %esi
jne 0x4d08
leaq 0xc6b8(%rip), %rsi      # 0x1113b
movq %rbx, %rdi
callq 0x20a0
movb $-0x3f, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc6a1(%rip), %rsi      # 0x1113e
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d0d
leaq 0xc68d(%rip), %rsi      # 0x11141
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d12
leaq 0xc679(%rip), %rsi      # 0x11144
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d17
leaq 0xc665(%rip), %rsi      # 0x11147
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d1c
leaq 0xc651(%rip), %rsi      # 0x1114a
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d21
leaq 0xc63d(%rip), %rsi      # 0x1114d
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d26
leaq 0xc62c(%rip), %rsi      # 0x11153
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d29
leaq 0xc618(%rip), %rsi      # 0x11156
movq %rbx, %rdi
callq 0x20a0
movb $-0x3e, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc601(%rip), %rsi      # 0x11159
movq %rbx, %rdi
callq 0x20a0
movb $-0x3d, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc5ea(%rip), %rsi      # 0x1115c
movq %rbx, %rdi
callq 0x20a0
movb $-0x3c, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc5d3(%rip), %rsi      # 0x1115f
movq %rbx, %rdi
callq 0x20a0
movb $-0x3b, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc5bc(%rip), %rsi      # 0x11162
movq %rbx, %rdi
callq 0x20a0
movb $-0x3a, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc5a5(%rip), %rsi      # 0x11165
jmp 0x4cf9
leaq 0xc55d(%rip), %rsi      # 0x11129
movq %rbx, %rdi
callq 0x20a0
movb $-0x3f, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc549(%rip), %rsi      # 0x1112f
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d0d
leaq 0xc538(%rip), %rsi      # 0x11135
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d12
leaq 0xc50c(%rip), %rsi      # 0x11120
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d17
leaq 0xc4fb(%rip), %rsi      # 0x11126
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d1c
leaq 0xc4ea(%rip), %rsi      # 0x1112c
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d21
leaq 0xc4d9(%rip), %rsi      # 0x11132
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d26
leaq 0xc4a1(%rip), %rsi      # 0x11111
movq %rbx, %rdi
callq 0x20a0
testl %eax, %eax
je 0x4d29
leaq 0xc490(%rip), %rsi      # 0x11117
movq %rbx, %rdi
callq 0x20a0
movb $-0x3e, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc47c(%rip), %rsi      # 0x1111d
movq %rbx, %rdi
callq 0x20a0
movb $-0x3d, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc451(%rip), %rsi      # 0x11108
movq %rbx, %rdi
callq 0x20a0
movb $-0x3c, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc441(%rip), %rsi      # 0x1110e
movq %rbx, %rdi
callq 0x20a0
movb $-0x3b, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc431(%rip), %rsi      # 0x11114
movq %rbx, %rdi
callq 0x20a0
movb $-0x3a, %r14b
testl %eax, %eax
je 0x4d29
leaq 0xc421(%rip), %rsi      # 0x1111a
movq %rbx, %rdi
callq 0x20a0
movb $-0x39, %r14b
testl %eax, %eax
je 0x4d29
xorl %r14d, %r14d
jmp 0x4d29
movb $-0x3e, %r14b
jmp 0x4d29
movb $-0x3d, %r14b
jmp 0x4d29
movb $-0x3c, %r14b
jmp 0x4d29
movb $-0x3b, %r14b
jmp 0x4d29
movb $-0x3a, %r14b
jmp 0x4d29
movb $-0x39, %r14b
movl %r14d, %eax
popq %rbx
popq %r14
popq %rbp
retq