// File: /workspace/github_cpp_makefile_star2_O1/lotuskip[P]yuxtapa/client/view.cpp
// Function: redraw_view()
void redraw_view()
{
	if(clientstate == CS_LIMBO)
		Base::print_view(limboview);
	else if(clientstate == CS_HELP)
	{
		if(!helpshown) // first time to show help
		{
			// replace keys in the view with actual values
			char *kmv;
			short idx;
			for(e_Key_binding kb = KB_8; kb < MAX_KEY_BINDING; kb = e_Key_binding(kb+1))
			{
				kmv = Config::key_map_value(kb);
				idx = kmv_idx[kb];
				while(*kmv)
				{
					helpview[idx] = *kmv;
					idx += 2;
					++kmv;
				}
			}
			helpshown = true;
		}
		Base::print_view(helpview);
	}
	else if(clientstate != CS_TEAM_INFO)
	{
		Base::print_view(viewbuffer);
		if(clientstate == CS_AIMING)
			draw_aimer();
		if(showtitles)
			draw_titles();
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
leaq 0x9295(%rip), %rbx      # 0x17e80
movl (%rbx), %eax
cmpl $0x5, %eax
je 0xeefc
cmpl $0x4, %eax
je 0xec09
cmpl $0x3, %eax
jne 0xec75
leaq 0x2019(%rip), %rdi      # 0x10c20
jmp 0xec62
cmpb $0x0, 0xbab1(%rip)      # 0x1a6c1
jne 0xec5b
xorl %ebx, %ebx
leaq 0x2435(%rip), %r14      # 0x11050
leaq 0x87ae(%rip), %r15      # 0x173d0
movl %ebx, %edi
callq 0xe0d3
movb (%rax), %cl
testb %cl, %cl
je 0xec4b
movzwl (%r14,%rbx,2), %edx
incq %rax
movswq %dx, %rsi
movb %cl, (%rsi,%r15)
addl $0x2, %edx
movb (%rax), %cl
incq %rax
testb %cl, %cl
jne 0xec37
incq %rbx
cmpq $0x1b, %rbx
jne 0xec22
movb $0x1, 0xba66(%rip)      # 0x1a6c1
leaq 0x876e(%rip), %rdi      # 0x173d0
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x6b86
leaq 0xaa44(%rip), %r15      # 0x196c0
movq %r15, %rdi
callq 0x6b86
cmpl $0x6, (%rbx)
jne 0xeee0
leaq 0x90ac(%rip), %r8       # 0x17d40
movzwl (%r8), %edx
movzwl 0x2(%r8), %esi
movl %edx, %eax
orw %si, %ax
je 0xee8b
movl %edx, %eax
negw %ax
cmovsw %dx, %ax
movl %esi, %r9d
negw %r9w
cmovsw %si, %r9w
cmpw %r9w, %ax
cmoval %eax, %r9d
movzwl %r9w, %ecx
movsbl %cl, %eax
cmpl $0x2, %eax
jl 0xee8b
movswl %si, %esi
shll $0x18, %r9d
movl %esi, %edi
addl %eax, %edi
jne 0xece6
addl %edx, %ecx
jmp 0xed0c
movswl %dx, %edx
cmpl %edx, %eax
jne 0xecf4
leal (%rcx,%rcx,2), %ecx
addl %esi, %ecx
jmp 0xed0c
cmpl %esi, %eax
jne 0xecff
leal (%rcx,%rcx,4), %ecx
subl %edx, %ecx
jmp 0xed0c
leal (,%rcx,8), %edx
subl %ecx, %edx
subl %esi, %edx
movl %edx, %ecx
sarl $0x17, %r9d
cmpl $0x3, %r9d
jl 0xee8b
addl $-0x2, %r9d
leal -0x2(%rax), %edx
leaq 0x23f8(%rip), %rsi      # 0x11120
movslq (%rsi,%rdx,4), %rdx
movq %rdx, -0x50(%rbp)
addq %rsi, %rdx
movq %rdx, -0x48(%rbp)
movsbl %cl, %ecx
imull %eax, %ecx
addl %ecx, %ecx
movq %rcx, -0x40(%rbp)
xorl %r13d, %r13d
movl %r9d, -0x30(%rbp)
movq -0x40(%rbp), %rax
addl %r13d, %eax
cltq
movq -0x50(%rbp), %rcx
addq %rax, %rcx
leaq 0x23bf(%rip), %rdx      # 0x11120
movb (%rdx,%rcx), %r12b
addb $0xb, %r12b
movq -0x48(%rbp), %rcx
movb 0x1(%rcx,%rax), %r14b
addb $0xb, %r14b
movsbl %r14b, %ecx
leal (%rcx,%rcx,2), %eax
shll $0x3, %eax
movq %rcx, -0x38(%rbp)
subl %ecx, %eax
movsbl %r12b, %ecx
movl %ecx, -0x2c(%rbp)
addl %ecx, %eax
addl %eax, %eax
cltq
movq %rax, -0x58(%rbp)
movzbl 0x1(%rax,%r15), %eax
cmpl $0x21, %eax
je 0xedac
cmpl $0x40, %eax
jne 0xedf2
jmp 0xee5c
movb 0xad2f(%rip), %r15b     # 0x19ae2
testb %r15b, %r15b
setle %al
jle 0xedf2
incb %r15b
leaq 0xad1e(%rip), %rbx      # 0x19ae3
cmpb %r12b, (%rbx)
jne 0xedd0
cmpb %r14b, 0x1(%rbx)
je 0xedee
leaq 0x2(%rbx), %rdi
callq 0x41b0
addq %rax, %rbx
addq $0x3, %rbx
decb %r15b
cmpb $0x2, %r15b
setl %al
jge 0xedc5
jmp 0xedf2
testb $0x1, %al
je 0xee5c
movq -0x58(%rbp), %rbx
incq %rbx
leaq 0x2348(%rip), %rdi      # 0x11148
movl $0x2a, %esi
movl -0x2c(%rbp), %edx
movq -0x38(%rbp), %rcx
movl $0x3, %r8d
xorl %r9d, %r9d
callq 0x68af
leaq 0xa89f(%rip), %r15      # 0x196c0
movzbl (%rbx,%r15), %eax
addl $-0x23, %eax
cmpl $0x2c, %eax
leaq 0x8f0d(%rip), %r8       # 0x17d40
movl -0x30(%rbp), %r9d
ja 0xee49
movabsq $0x100000000101, %rcx   # imm = 0x100000000101
btq %rax, %rcx
jb 0xee8b
addb $0x2, %r13b
movsbl %r13b, %r13d
cmpl %r9d, %r13d
jl 0xed4a
jmp 0xee8b
leaq 0x22e5(%rip), %rdi      # 0x11148
movl $0x25, %esi
movl -0x2c(%rbp), %edx
movq -0x38(%rbp), %rcx
movl $0x3, %r8d
xorl %r9d, %r9d
callq 0x68af
leaq 0xa83c(%rip), %r15      # 0x196c0
leaq 0x8eb5(%rip), %r8       # 0x17d40
movb (%r8), %cl
leal 0xb(%rcx), %edx
movzwl 0x2(%r8), %esi
leal 0xb(%rsi), %edi
movb $0x3e, %al
orb %sil, %cl
movsbl %dl, %edx
movsbl %dil, %ecx
je 0xeec8
leal (%rcx,%rcx,2), %eax
shll $0x3, %eax
subl %ecx, %eax
addl %edx, %eax
addl %eax, %eax
cltq
cmpb $0x40, 0x1(%rax,%r15)
movl $0x25, %esi
movl $0x3e, %eax
cmovel %esi, %eax
movzbl %al, %esi
leaq 0x2278(%rip), %rdi      # 0x1114a
movl $0x3, %r8d
xorl %r9d, %r9d
callq 0x68af
cmpb $0x1, 0xb7d9(%rip)      # 0x1a6c0
jne 0xeefc
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0xea96
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq