// File: /workspace/github_cpp_makefile_star2_O3/nickgammon[P]tinymudserver/player.cpp
// Function: tPlayer::Save()
void tPlayer::Save ()
{
  ofstream f ((PLAYER_DIR + playername + PLAYER_EXT).c_str (), ios::out);
  if (!f)
  {
  cerr << "Could not write to file for player " << playername << endl;
  return;
  }
  
  // write player details
  f << password << endl;
  f << room << endl;
  copy (flags.begin (), flags.end (), ostream_iterator<string> (f, " "));
  f << endl;
  
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x248, %rsp            # imm = 0x248
movq %rdi, %rbx
leaq 0x90(%rdi), %rdx
leaq 0x10bbb(%rip), %rsi     # 0x16448
leaq -0x58(%rbp), %r14
movq %r14, %rdi
callq 0x62f3
movq 0x10bc8(%rip), %rsi     # 0x16468
movq 0x10bc9(%rip), %rdx     # 0x16470
movq %r14, %rdi
callq 0x30f0
leaq -0x28(%rbp), %r14
movq %r14, -0x10(%r14)
movq (%rax), %rsi
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rsi
je 0x58d3
movq %rsi, -0x38(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x28(%rbp)
jmp 0x58dd
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq %r14, %rsi
movq 0x8(%rax), %rdx
movq %rdx, -0x30(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq -0x258(%rbp), %rdi
movl $0x10, %edx
callq 0x3340
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x591a
movq -0x28(%rbp), %rsi
incq %rsi
callq 0x32f0
leaq -0x48(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x5933
movq -0x48(%rbp), %rsi
incq %rsi
callq 0x32f0
movq -0x258(%rbp), %rax
movq -0x18(%rax), %rax
testb $0x5, -0x238(%rbp,%rax)
je 0x5996
movq 0x10699(%rip), %rdi     # 0x15fe8
leaq 0xa88e(%rip), %rsi      # 0x101e4
movl $0x23, %edx
callq 0x3370
movq 0x90(%rbx), %rsi
movq 0x98(%rbx), %rdx
movq 0x10673(%rip), %rdi     # 0x15fe8
callq 0x3370
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x32d0
jmp 0x5a5d
movq 0xb0(%rbx), %rsi
movq 0xb8(%rbx), %rdx
leaq -0x258(%rbp), %rdi
callq 0x3370
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x32d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3220
movl 0xd4(%rbx), %esi
leaq -0x258(%rbp), %r14
movq %r14, %rdi
callq 0x3510
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32d0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3220
movq 0xf8(%rbx), %rsi
addq $0xe8, %rbx
leaq -0x38(%rbp), %rcx
movq %r14, (%rcx)
leaq 0xaf4b(%rip), %rax      # 0x10980
movq %rax, 0x8(%rcx)
leaq -0x58(%rbp), %rdi
movq %rbx, %rdx
callq 0x687e
movq -0x258(%rbp), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x32d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3220
movq 0x10529(%rip), %rax     # 0x15fa0
movq (%rax), %rcx
movq 0x18(%rax), %rax
leaq -0x250(%rbp), %rdi
movq %rcx, -0x8(%rdi)
movq -0x18(%rcx), %rcx
movq %rax, -0x258(%rbp,%rcx)
callq 0x3290
leaq -0x160(%rbp), %rdi
callq 0x3110
addq $0x248, %rsp            # imm = 0x248
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
jmp 0x5aee
movq %rax, %rbx
movq -0x38(%rbp), %rdi
cmpq %r14, %rdi
je 0x5ad3
movq -0x28(%rbp), %rsi
incq %rsi
callq 0x32f0
jmp 0x5ad3
movq %rax, %rbx
leaq -0x48(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x5afd
movq -0x48(%rbp), %rsi
incq %rsi
callq 0x32f0
jmp 0x5afd
movq %rax, %rbx
leaq -0x258(%rbp), %rdi
callq 0x3430
movq %rbx, %rdi
callq 0x3530
nop