// File: jstaursky[P]hutch/src/Sleigh/slghsymbol.cc
// Function: ContextOp::restoreXml(Element const*, SleighBase*)
void ContextOp::restoreXml(const Element *el,SleighBase *trans)

{
  {
    istringstream s(el->getAttributeValue("i"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> num;
  }
  {
    istringstream s(el->getAttributeValue("shift"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> shift;
  }
  {
    istringstream s(el->getAttributeValue("mask"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> mask;
  }
  const List &list(el->getChildren());
  List::const_iterator iter;
  iter = list.begin();
  patexp = (PatternValue *)PatternExpression::restoreExpression(*iter,trans);
  patexp->layClaim();
}

// Assembly:
subq $0x5d8, %rsp            # imm = 0x5D8
movq %rdi, 0x5d0(%rsp)
movq %rsi, 0x5c8(%rsp)
movq %rdx, 0x5c0(%rsp)
movq 0x5d0(%rsp), %rax
movq %rax, 0x88(%rsp)
movq 0x5c8(%rsp), %rax
movq %rax, 0x90(%rsp)
leaq 0x41f(%rsp), %rdi
movq %rdi, 0x98(%rsp)
callq 0xe0c80
movq 0x98(%rsp), %rdx
leaq 0x3ce1d(%rip), %rsi     # 0x189680
leaq 0x420(%rsp), %rdi
callq 0xe00a0
jmp 0x14c872
movq 0x90(%rsp), %rdi
leaq 0x420(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x80(%rsp)
jmp 0x14c891
movq 0x80(%rsp), %rsi
leaq 0x440(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x14c8ad
leaq 0x420(%rsp), %rdi
callq 0xd4550
leaq 0x41f(%rsp), %rdi
callq 0xd8ec0
movq 0x440(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0x440(%rsp,%rax), %rax
movq %rax, 0x70(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0x7c(%rsp)
jmp 0x14c8f5
movl 0x7c(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0x6c(%rsp)
jmp 0x14c909
movl 0x6c(%rsp), %esi
movq 0x70(%rsp), %rdi
callq 0xda6e0
jmp 0x14c919
movq 0x88(%rsp), %rsi
addq $0x10, %rsi
leaq 0x440(%rsp), %rdi
callq 0xd4480
jmp 0x14c934
leaq 0x440(%rsp), %rdi
callq 0xd25a0
movq 0x5c8(%rsp), %rax
movq %rax, 0x58(%rsp)
leaq 0x267(%rsp), %rdi
movq %rdi, 0x60(%rsp)
callq 0xe0c80
movq 0x60(%rsp), %rdx
leaq 0x3bedf(%rip), %rsi     # 0x18884b
leaq 0x268(%rsp), %rdi
callq 0xe00a0
jmp 0x14c97b
movq 0x58(%rsp), %rdi
leaq 0x268(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x50(%rsp)
jmp 0x14c994
movq 0x50(%rsp), %rsi
leaq 0x288(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x14c9ad
leaq 0x268(%rsp), %rdi
callq 0xd4550
leaq 0x267(%rsp), %rdi
callq 0xd8ec0
movq 0x288(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0x288(%rsp,%rax), %rax
movq %rax, 0x40(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0x4c(%rsp)
jmp 0x14c9f5
movl 0x4c(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0x3c(%rsp)
jmp 0x14ca09
movl 0x3c(%rsp), %esi
movq 0x40(%rsp), %rdi
callq 0xda6e0
jmp 0x14ca19
movq 0x88(%rsp), %rsi
addq $0x18, %rsi
leaq 0x288(%rsp), %rdi
callq 0xd4480
jmp 0x14ca34
leaq 0x288(%rsp), %rdi
callq 0xd25a0
movq 0x5c8(%rsp), %rax
movq %rax, 0x28(%rsp)
leaq 0xbf(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0xe0c80
movq 0x30(%rsp), %rdx
leaq 0x3bba7(%rip), %rsi     # 0x188613
leaq 0xc0(%rsp), %rdi
callq 0xe00a0
jmp 0x14ca7b
movq 0x28(%rsp), %rdi
leaq 0xc0(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x20(%rsp)
jmp 0x14ca94
movq 0x20(%rsp), %rsi
leaq 0xe0(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x14caad
leaq 0xc0(%rsp), %rdi
callq 0xd4550
leaq 0xbf(%rsp), %rdi
callq 0xd8ec0
movq 0xe0(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0xe0(%rsp,%rax), %rax
movq %rax, 0x10(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0x1c(%rsp)
jmp 0x14caf5
movl 0x1c(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0xc(%rsp)
jmp 0x14cb09
movl 0xc(%rsp), %esi
movq 0x10(%rsp), %rdi
callq 0xda6e0
jmp 0x14cb19
movq 0x88(%rsp), %rsi
addq $0x14, %rsi
leaq 0xe0(%rsp), %rdi
callq 0xceae0
jmp 0x14cb34
leaq 0xe0(%rsp), %rdi
callq 0xd25a0
movq 0x5c8(%rsp), %rdi
callq 0xde930
movq %rax, 0xb0(%rsp)
leaq 0xa8(%rsp), %rdi
callq 0xd03e0
movq 0xb0(%rsp), %rdi
callq 0xd4960
movq %rax, 0xa0(%rsp)
movq 0xa0(%rsp), %rax
movq %rax, 0xa8(%rsp)
leaq 0xa8(%rsp), %rdi
callq 0xddc90
movq (%rax), %rdi
movq 0x5c0(%rsp), %rsi
callq 0xd8230
movq %rax, %rcx
movq 0x88(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x8(%rax), %rdi
callq 0xd99b0
addq $0x5d8, %rsp            # imm = 0x5D8
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
jmp 0x14cbfc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
leaq 0x420(%rsp), %rdi
callq 0xd4550
leaq 0x41f(%rsp), %rdi
callq 0xd8ec0
jmp 0x14cd07
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
leaq 0x440(%rsp), %rdi
callq 0xd25a0
jmp 0x14cd07
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
jmp 0x14cc6b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
leaq 0x268(%rsp), %rdi
callq 0xd4550
leaq 0x267(%rsp), %rdi
callq 0xd8ec0
jmp 0x14cd07
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
leaq 0x288(%rsp), %rdi
callq 0xd25a0
jmp 0x14cd07
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
jmp 0x14ccd7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
leaq 0xc0(%rsp), %rdi
callq 0xd4550
leaq 0xbf(%rsp), %rdi
callq 0xd8ec0
jmp 0x14cd07
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x410(%rsp)
movl %eax, 0x40c(%rsp)
leaq 0xe0(%rsp), %rdi
callq 0xd25a0
movq 0x410(%rsp), %rdi
callq 0xe0be0
nopw %cs:(%rax,%rax)