// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_token_TokenValue_canzetakezeargszy
static bool mw_mirth_token_TokenValue_canzetakezeargszy (struct mirth_token_TokenValue in_TokenValue_1) {
	bool branch_Bool_3;
	switch ((in_TokenValue_1).tag) {
		case mirth_token_TokenValue_Name: {
			uint64_t v4 = mtp_mirth_token_TokenValue_Name(in_TokenValue_1);
			bool v5 = true;
			branch_Bool_3 = v5;
		} break;
		case mirth_token_TokenValue_DName: {
			struct mirth_name_DName* v6 = mtp_mirth_token_TokenValue_DName(in_TokenValue_1);
			decref(MK_mirth_name_DName(v6));
			bool v7 = true;
			branch_Bool_3 = v7;
		} break;
		case mirth_token_TokenValue_LabelGet: {
			uint64_t v8 = mtp_mirth_token_TokenValue_LabelGet(in_TokenValue_1);
			bool v9 = true;
			branch_Bool_3 = v9;
		} break;
		case mirth_token_TokenValue_LabelSet: {
			uint64_t v10 = mtp_mirth_token_TokenValue_LabelSet(in_TokenValue_1);
			bool v11 = true;
			branch_Bool_3 = v11;
		} break;
		default: {
			decref(MK_mirth_token_TokenValue(in_TokenValue_1));
			bool v12 = false;
			branch_Bool_3 = v12;
		} break;
	}
	return branch_Bool_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movl -0x10(%rbp), %eax
addl $-0x1b, %eax
movl %eax, %ecx
movq %rcx, -0x108(%rbp)
subl $0x7, %eax
ja 0x7987f
movq -0x108(%rbp), %rax
leaq 0x2d8060(%rip), %rcx    # 0x351768
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x799e0
movq %rax, -0x20(%rbp)
movb $0x1, -0x21(%rbp)
movb -0x21(%rbp), %al
andb $0x1, %al
movb %al, -0x11(%rbp)
jmp 0x7998a
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79a30
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x40(%rbp)
leaq 0x318787(%rip), %rax    # 0x391ed8
orq $0x1, %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x79812
movq -0x30(%rbp), %rax
movq %rax, -0x50(%rbp)
leaq 0x31875e(%rip), %rax    # 0x391ed8
orq $0x1, %rax
movq %rax, -0x48(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x50(%rbp), %rax
cmpq $0x0, %rax
je 0x79812
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
leaq 0x318733(%rip), %rax    # 0x391ed8
orq $0x1, %rax
movq %rax, -0x58(%rbp)
movq -0x60(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x79812
movq -0x30(%rbp), %rax
movq %rax, -0x70(%rbp)
leaq 0x31870e(%rip), %rax    # 0x391ed8
orq $0x1, %rax
movq %rax, -0x68(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0x70(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x79810
movq -0x30(%rbp), %rax
movq %rax, -0x80(%rbp)
leaq 0x3186dd(%rip), %rax    # 0x391ed8
orq $0x1, %rax
movq %rax, -0x78(%rbp)
movq -0x80(%rbp), %rdi
movq -0x78(%rbp), %rsi
callq 0x127c0
jmp 0x79812
jmp 0x79814
movb $0x1, -0x81(%rbp)
movb -0x81(%rbp), %al
andb $0x1, %al
movb %al, -0x11(%rbp)
jmp 0x7998a
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79b30
movq %rax, -0x90(%rbp)
movb $0x1, -0x91(%rbp)
movb -0x91(%rbp), %al
andb $0x1, %al
movb %al, -0x11(%rbp)
jmp 0x7998a
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79b80
movq %rax, -0xa0(%rbp)
movb $0x1, -0xa1(%rbp)
movb -0xa1(%rbp), %al
andb $0x1, %al
movb %al, -0x11(%rbp)
jmp 0x7998a
jmp 0x79881
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0xb8(%rbp)
movq %rdx, -0xb0(%rbp)
movq -0xb0(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x79976
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0xc8(%rbp)
movq %rdx, -0xc0(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0xc8(%rbp), %rax
cmpq $0x0, %rax
je 0x79976
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0xd8(%rbp)
movq %rdx, -0xd0(%rbp)
movq -0xd8(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x79976
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0xe8(%rbp)
movq %rdx, -0xe0(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0xe8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x79974
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x79bd0
movq %rax, -0xf8(%rbp)
movq %rdx, -0xf0(%rbp)
movq -0xf8(%rbp), %rdi
movq -0xf0(%rbp), %rsi
callq 0x127c0
jmp 0x79976
jmp 0x79978
movb $0x0, -0xf9(%rbp)
movb -0xf9(%rbp), %al
andb $0x1, %al
movb %al, -0x11(%rbp)
movb -0x11(%rbp), %al
andb $0x1, %al
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
nopl (%rax,%rax)