// File: nickgammon[P]tinymudserver/commands.cpp
// Function: DoTell(tPlayer*, std::istream&)
void DoTell (tPlayer * p, istream & sArgs)
{
  p->NeedNoFlag ("gagged"); // can't if gagged
  tPlayer * ptarget = p->GetPlayer (sArgs, "Tell whom?", true);  // who
  string what = GetMessage (sArgs, "Tell " + p->playername + " what?");  // what  
  *p << "You tell " << ptarget->playername << ", \"" << what << "\"\n";     // confirm
  *ptarget << p->playername << " tells you, \"" << what << "\"\n";    // tell them
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x150, %rsp            # imm = 0x150
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xe8(%rbp)
leaq -0x31(%rbp), %rdi
movq %rdi, -0xe0(%rbp)
callq 0x46e0
movq -0xe0(%rbp), %rdx
leaq 0xb062(%rip), %rsi      # 0x1c41e
leaq -0x30(%rbp), %rdi
callq 0x67d0
jmp 0x113c7
movq -0xe8(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x8330
jmp 0x113d9
leaq -0x30(%rbp), %rdi
callq 0x47d8
leaq -0x31(%rbp), %rdi
callq 0x44a0
movq -0x8(%rbp), %rax
movq %rax, -0x100(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0xf8(%rbp)
leaq -0x71(%rbp), %rdi
movq %rdi, -0xf0(%rbp)
callq 0x46e0
movq -0xf0(%rbp), %rdx
leaq 0xb027(%rip), %rsi      # 0x1c446
leaq -0x70(%rbp), %rdi
callq 0x67d0
jmp 0x1142a
movq -0xf8(%rbp), %rsi
movq -0x100(%rbp), %rdi
movb $0x1, -0x72(%rbp)
leaq -0x70(%rbp), %rdx
leaq -0x72(%rbp), %rcx
callq 0x77e0
movq %rax, -0x108(%rbp)
jmp 0x11452
leaq -0x70(%rbp), %rdi
callq 0x47d8
leaq -0x71(%rbp), %rdi
callq 0x44a0
movq -0x108(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x118(%rbp)
movq -0x8(%rbp), %rdx
addq $0x90, %rdx
leaq 0xafc5(%rip), %rsi      # 0x1c451
leaq -0xd8(%rbp), %rdi
movq %rdi, -0x110(%rbp)
callq 0x13750
movq -0x110(%rbp), %rsi
leaq 0xafe4(%rip), %rdx      # 0x1c491
leaq -0xb8(%rbp), %rdi
callq 0xc6c0
jmp 0x114bb
movq -0x118(%rbp), %rsi
leaq -0x98(%rbp), %rdi
leaq -0xb8(%rbp), %rdx
callq 0x10680
jmp 0x114d7
leaq -0xb8(%rbp), %rdi
callq 0x47d8
leaq -0xd8(%rbp), %rdi
callq 0x47d8
movq -0x8(%rbp), %rdi
leaq 0xaf5d(%rip), %rsi      # 0x1c457
callq 0x14160
movq %rax, -0x120(%rbp)
jmp 0x11508
movq -0x120(%rbp), %rdi
movq -0x50(%rbp), %rsi
addq $0x90, %rsi
callq 0xb450
movq %rax, -0x128(%rbp)
jmp 0x11528
movq -0x128(%rbp), %rdi
leaq 0xaf52(%rip), %rsi      # 0x1c488
callq 0x14260
movq %rax, -0x130(%rbp)
jmp 0x11544
movq -0x130(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0xb450
movq %rax, -0x138(%rbp)
jmp 0x11560
movq -0x138(%rbp), %rdi
leaq 0xaecc(%rip), %rsi      # 0x1c43a
callq 0x13f30
jmp 0x11575
movq -0x50(%rbp), %rdi
movq -0x8(%rbp), %rsi
addq $0x90, %rsi
callq 0xb450
movq %rax, -0x140(%rbp)
jmp 0x11592
movq -0x140(%rbp), %rdi
leaq 0xaec1(%rip), %rsi      # 0x1c461
callq 0x13e30
movq %rax, -0x148(%rbp)
jmp 0x115ae
movq -0x148(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0xb450
movq %rax, -0x150(%rbp)
jmp 0x115ca
movq -0x150(%rbp), %rdi
leaq 0xae62(%rip), %rsi      # 0x1c43a
callq 0x13f30
jmp 0x115df
leaq -0x98(%rbp), %rdi
callq 0x47d8
addq $0x150, %rsp            # imm = 0x150
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x11617
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x47d8
leaq -0x31(%rbp), %rdi
callq 0x44a0
jmp 0x1169c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x11645
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x70(%rbp), %rdi
callq 0x47d8
leaq -0x71(%rbp), %rdi
callq 0x44a0
jmp 0x1169c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x11676
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0xb8(%rbp), %rdi
callq 0x47d8
leaq -0xd8(%rbp), %rdi
callq 0x47d8
jmp 0x1169c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x98(%rbp), %rdi
callq 0x47d8
movq -0x40(%rbp), %rdi
callq 0x46d0
nopw %cs:(%rax,%rax)