// File: /workspace/github_cpp_makefile_star2_O3/lotuskip[P]yuxtapa/client/class_cpv.cpp
// Function: ClassCPV::state_upd(SerialBuffer&)
void ClassCPV::state_upd(SerialBuffer &data)
{
	char oldhp = hp;
	hp = static_cast<char>(data.read_ch());
	// if got hurt but not dead and ouch is defined, send ouch:
	if(hp > 0 && hp < oldhp && Config::do_ouch())
		Network::send_line(Config::get_ouch(), false);
	tohit = static_cast<char>(data.read_ch());
	dam_add = static_cast<char>(data.read_ch());
	dv = data.read_ch();
	poisoned = bool(data.read_ch());
	sector = e_Dir(data.read_ch());
	torch_sym[0] = data.read_ch();

	reprint_pcinfo();

	// if died, abort any action in the client end:
	if(hp <= 0)
	{
		if(clientstate == CS_AIMING || clientstate == CS_DIR)
			clientstate = CS_NORMAL;
		Base::print_walk((walkmode = false));
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xc8, %rsp
movq %rdi, %rbx
movb 0x10328(%rip), %r14b    # 0x17d44
callq 0xf344
movb %al, 0x1031d(%rip)      # 0x17d44
testb %al, %al
jle 0x7a48
cmpb %r14b, %al
jge 0x7a48
callq 0xe02f
testb %al, %al
je 0x7a48
callq 0xe022
movq %rax, %rdi
xorl %esi, %esi
callq 0xc98e
movq %rbx, %rdi
callq 0xf344
movb %al, 0x102f2(%rip)      # 0x17d48
movq %rbx, %rdi
callq 0xf344
movb %al, 0x102e5(%rip)      # 0x17d49
movq %rbx, %rdi
callq 0xf344
movb %al, 0x102d4(%rip)      # 0x17d46
movq %rbx, %rdi
callq 0xf344
testb %al, %al
setne 0x102c7(%rip)           # 0x17d4a
movq %rbx, %rdi
callq 0xf344
movzbl %al, %eax
movl %eax, 0x102b8(%rip)     # 0x17d4c
movq %rbx, %rdi
callq 0xf344
movb %al, 0xf91e(%rip)       # 0x173c0
leaq -0x78(%rbp), %rax
movq %rax, -0x10(%rax)
movw $0x28, (%rax)
movq $0x1, -0x8(%rax)
movl 0x1028f(%rip), %eax     # 0x17d4c
shlq $0x5, %rax
leaq 0xfff8(%rip), %rcx      # 0x17ac0
movq (%rax,%rcx), %rsi
movq 0x8(%rax,%rcx), %rdx
leaq -0x88(%rbp), %rdi
callq 0x4120
leaq 0x8996(%rip), %rsi      # 0x1047a
leaq -0x88(%rbp), %rdi
callq 0x46e0
movq -0x88(%rbp), %rdi
movl 0xf8bf(%rip), %eax      # 0x173bc
leaq 0x8848(%rip), %rcx      # 0x1034c
movzbl (%rax,%rcx), %esi
movl $0x34, %edx
movl $0x3, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x686d
movsbl 0x10220(%rip), %esi     # 0x17d44
leaq -0xc8(%rbp), %rdi
callq 0xfcfb
leaq 0x8946(%rip), %rcx      # 0x1047d
leaq -0xc8(%rbp), %rdi
movl $0x4, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x4400
leaq -0x98(%rbp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7b7a
movq %rdx, -0xa8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x98(%rbp)
jmp 0x7b81
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq -0xa8(%rbp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%rdi), %rsi
movl $0x1, %ecx
xorl %edx, %edx
movl $0x2f, %r8d
callq 0x46d0
leaq -0x58(%rbp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7bd9
movq %rdx, -0x68(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x58(%rbp)
jmp 0x7be1
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, -0x60(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl 0xf7ba(%rip), %eax      # 0x173b8
leaq (%rax,%rax,2), %rcx
leaq (%rax,%rcx,4), %rax
leaq 0x8743(%rip), %rcx      # 0x10350
movsbl 0x3(%rcx,%rax), %esi
leaq -0xe8(%rbp), %rdi
callq 0xfcfb
movq -0x68(%rbp), %rcx
movq -0x60(%rbp), %r8
movq -0xe0(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r13, %rcx
je 0x7c3f
movq -0x58(%rbp), %rdi
movq -0xe8(%rbp), %rsi
cmpq %rdi, %rax
jbe 0x7c68
leaq -0xd8(%rbp), %r9
movl $0xf, %edi
cmpq %r9, %rsi
je 0x7c63
movq -0xd8(%rbp), %rdi
cmpq %rdi, %rax
jbe 0x7c73
leaq -0x68(%rbp), %rdi
callq 0x4120
jmp 0x7c83
leaq -0xe8(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4400
leaq -0x38(%rbp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x7ca4
movq %rsi, -0x48(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x38(%rbp)
jmp 0x7caa
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0x40(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq -0x88(%rbp), %rdi
leaq -0x48(%rbp), %rbx
movq %rbx, %rsi
callq 0x4480
movq (%rbx), %rdi
leaq -0x38(%rbp), %r14
cmpq %r14, %rdi
je 0x7cf1
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4390
leaq -0xd8(%rbp), %r12
movq -0x10(%r12), %rdi
cmpq %r12, %rdi
je 0x7d11
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x7d26
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0xa8(%rbp), %rdi
cmpq %r15, %rdi
je 0x7d41
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4390
leaq -0xb8(%rbp), %r15
movq -0x10(%r15), %rdi
cmpq %r15, %rdi
je 0x7d60
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4390
cmpq $0x9, -0x80(%rbp)
ja 0x7d82
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
movl $0x20, %esi
callq 0x4300
cmpq $0xa, -0x80(%rbp)
jb 0x7d6e
movq -0x88(%rbp), %rdi
movl 0xf62d(%rip), %eax      # 0x173bc
leaq 0x85b6(%rip), %rcx      # 0x1034c
movzbl (%rax,%rcx), %esi
movl $0x25, %edx
movl $0x4, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x686d
movsbl 0xff90(%rip), %esi      # 0x17d46
leaq -0xc8(%rbp), %rdi
callq 0xfcfb
leaq 0x86b9(%rip), %rcx      # 0x10482
leaq -0xc8(%rbp), %rdi
movl $0x6, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x4400
leaq -0x98(%rbp), %rsi
movq %rsi, -0xa8(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7e0f
movq %rdx, -0xa8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x98(%rbp)
jmp 0x7e15
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
leaq -0xa8(%rbp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%rdi), %rsi
movl $0x1, %ecx
xorl %edx, %edx
movl $0x2f, %r8d
callq 0x46d0
movq %r13, -0x68(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x7e69
movq %rdx, -0x68(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x58(%rbp)
jmp 0x7e71
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, -0x60(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movsbl 0xfeb8(%rip), %esi      # 0x17d47
leaq -0xe8(%rbp), %rdi
callq 0xfcfb
movq -0x68(%rbp), %rcx
movq -0x60(%rbp), %r8
movq -0xe0(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r13, %rcx
je 0x7ebc
movq -0x58(%rbp), %rdi
movq -0xe8(%rbp), %rsi
cmpq %rdi, %rax
jbe 0x7ede
movl $0xf, %edi
cmpq %r12, %rsi
je 0x7ed9
movq -0xd8(%rbp), %rdi
cmpq %rdi, %rax
jbe 0x7ee9
leaq -0x68(%rbp), %rdi
callq 0x4120
jmp 0x7ef9
leaq -0xe8(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4400
movq %r14, -0x48(%rbp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x7f16
movq %rdx, -0x48(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x38(%rbp)
jmp 0x7f1d
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0x40(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq -0x88(%rbp), %rdi
leaq -0x48(%rbp), %rbx
movq %rbx, %rsi
callq 0x4480
movq (%rbx), %rdi
cmpq %r14, %rdi
je 0x7f60
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0xe8(%rbp), %rdi
cmpq %r12, %rdi
je 0x7f7b
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x7f90
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0xa8(%rbp), %rdi
leaq -0x98(%rbp), %rax
cmpq %rax, %rdi
je 0x7fb2
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0xc8(%rbp), %rdi
cmpq %r15, %rdi
je 0x7fcd
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4390
cmpq $0x9, -0x80(%rbp)
ja 0x7fef
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
movl $0x20, %esi
callq 0x4300
cmpq $0xa, -0x80(%rbp)
jb 0x7fdb
movq -0x88(%rbp), %rdi
movl 0xf3c0(%rip), %eax      # 0x173bc
leaq 0x8349(%rip), %rcx      # 0x1034c
movzbl (%rax,%rcx), %esi
movl $0x25, %edx
movl $0x5, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x686d
movq $0x0, -0x80(%rbp)
movq -0x88(%rbp), %rax
movb $0x0, (%rax)
movb 0xfd14(%rip), %al       # 0x17d48
testb %al, %al
jle 0x804f
leaq -0x88(%rbp), %rdi
movl $0x2b, %esi
callq 0x4300
movb 0xfcf9(%rip), %al       # 0x17d48
movsbl %al, %esi
leaq -0xa8(%rbp), %rdi
callq 0xfcfb
leaq 0x8424(%rip), %rsi      # 0x10489
leaq -0xa8(%rbp), %rdi
callq 0x46e0
movq %r13, -0x68(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x8091
movq %rdx, -0x68(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x58(%rbp)
jmp 0x8099
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, -0x60(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movsbl 0xfc8e(%rip), %esi      # 0x17d45
leaq -0xc8(%rbp), %rdi
callq 0xfcfb
movq -0x68(%rbp), %rcx
movq -0x60(%rbp), %r8
movq -0xc0(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r13, %rcx
je 0x80e4
movq -0x58(%rbp), %rdi
movq -0xc8(%rbp), %rsi
cmpq %rdi, %rax
jbe 0x8106
movl $0xf, %edi
cmpq %r15, %rsi
je 0x8101
movq -0xb8(%rbp), %rdi
cmpq %rdi, %rax
jbe 0x8111
leaq -0x68(%rbp), %rdi
callq 0x4120
jmp 0x8121
leaq -0xc8(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4400
movq %r14, -0x48(%rbp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x813e
movq %rdx, -0x48(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x38(%rbp)
jmp 0x8145
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0x40(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq -0x48(%rbp), %rsi
movq -0x40(%rbp), %rdx
leaq -0x88(%rbp), %rdi
callq 0x4120
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x818a
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0xc8(%rbp), %rdi
cmpq %r15, %rdi
je 0x81a5
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
leaq -0x98(%rbp), %rbx
je 0x81c1
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4390
movq -0xa8(%rbp), %rdi
cmpq %rbx, %rdi
je 0x81dc
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4390
movb 0xfb67(%rip), %al       # 0x17d49
testb %al, %al
jle 0x81fd
leaq -0x88(%rbp), %rdi
movl $0x2b, %esi
callq 0x4300
movb 0xfb4c(%rip), %al       # 0x17d49
testb %al, %al
je 0x8236
movsbl %al, %esi
leaq -0x48(%rbp), %rdi
callq 0xfcfb
movq -0x48(%rbp), %rsi
movq -0x40(%rbp), %rdx
leaq -0x88(%rbp), %rdi
callq 0x4120
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x8236
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4390
cmpq $0x9, -0x80(%rbp)
ja 0x8258
leaq -0x88(%rbp), %rbx
movq %rbx, %rdi
movl $0x20, %esi
callq 0x4300
cmpq $0xa, -0x80(%rbp)
jb 0x8244
movq -0x88(%rbp), %rdi
movl 0xf157(%rip), %eax      # 0x173bc
leaq 0x80e0(%rip), %rcx      # 0x1034c
movzbl (%rax,%rcx), %esi
movl $0x25, %edx
movl $0x6, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x686d
leaq -0x88(%rbp), %rdi
movq 0x8(%rdi), %rdx
leaq 0x81f6(%rip), %rax      # 0x1048d
leaq 0x81d1(%rip), %rcx      # 0x1046f
cmpb $0x0, 0xfaa5(%rip)      # 0x17d4a
cmovneq %rax, %rcx
movl $0xa, %r8d
xorl %esi, %esi
callq 0x45a0
movq -0x88(%rbp), %rdi
movl 0xf0f9(%rip), %eax      # 0x173bc
leaq 0x8082(%rip), %rcx      # 0x1034c
movzbl (%rax,%rcx), %esi
movl $0x25, %edx
movl $0x7, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x686d
leaq 0xf0d6(%rip), %rdi      # 0x173c0
movl $0x41, %esi
movl $0x33, %edx
movl $0x4, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x686d
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x8320
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4390
cmpb $0x0, 0xfa1d(%rip)      # 0x17d44
jg 0x8351
leaq 0xfb50(%rip), %rax      # 0x17e80
movl (%rax), %ecx
andl $-0x2, %ecx
cmpl $0x6, %ecx
jne 0x8340
movl $0x0, (%rax)
leaq 0xfb3d(%rip), %rax      # 0x17e84
movb $0x0, (%rax)
xorl %edi, %edi
callq 0x6cd0
addq $0xc8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x8507
movq -0x38(%rbp), %rsi
jmp 0x84f2
jmp 0x8504
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x839e
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x839e
movq %rax, %rbx
movq -0xc8(%rbp), %rdi
cmpq %r15, %rdi
je 0x83be
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x83be
movq %rax, %rbx
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x83d8
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x83d8
movq %rax, %rbx
movq -0xa8(%rbp), %rdi
leaq -0x98(%rbp), %rax
cmpq %rax, %rdi
je 0x8507
movq -0x98(%rbp), %rsi
jmp 0x84f2
jmp 0x8504
movq %rax, %rbx
movq -0xe8(%rbp), %rdi
cmpq %r12, %rdi
je 0x8423
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x8423
movq %rax, %rbx
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x843d
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x843d
movq %rax, %rbx
movq -0xa8(%rbp), %rdi
leaq -0x98(%rbp), %rax
cmpq %rax, %rdi
je 0x8464
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x8464
movq %rax, %rbx
movq -0xc8(%rbp), %rdi
cmpq %r15, %rdi
jne 0x84eb
jmp 0x8507
jmp 0x8504
movq %rax, %rbx
leaq -0xd8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x84a1
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x84a1
movq %rax, %rbx
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x84bb
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x84bb
movq %rax, %rbx
movq -0xa8(%rbp), %rdi
cmpq %r15, %rdi
je 0x84db
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x84db
movq %rax, %rbx
leaq -0xb8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x8507
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4390
jmp 0x8507
jmp 0x8504
jmp 0x8504
jmp 0x8504
jmp 0x8504
movq %rax, %rbx
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x8523
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4390
movq %rbx, %rdi
callq 0x4660
nop