// File: jstaursky[P]hutch/src/Sleigh/slghpatexpress.cc
// Function: OperandValue::restoreXml(Element const*, Translate*)
void OperandValue::restoreXml(const Element *el,Translate *trans)

{
  uintm ctid,tabid;
  {
    istringstream s(el->getAttributeValue("index"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> index;
  }
  {
    istringstream s(el->getAttributeValue("table"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> tabid;
  }
  {
    istringstream s(el->getAttributeValue("ct"));
    s.unsetf(ios::dec | ios::hex | ios::oct);
    s >> ctid;
  }
  SleighBase *sleigh = (SleighBase *)trans;
  SubtableSymbol *tab = dynamic_cast<SubtableSymbol *>(sleigh->findSymbol(tabid));
  ct = tab->getConstructor(ctid);
}

// Assembly:
subq $0x5e8, %rsp            # imm = 0x5E8
movq %rdi, 0x5e0(%rsp)
movq %rsi, 0x5d8(%rsp)
movq %rdx, 0x5d0(%rsp)
movq 0x5e0(%rsp), %rax
movq %rax, 0x98(%rsp)
movq 0x5d8(%rsp), %rax
movq %rax, 0xa0(%rsp)
leaq 0x427(%rsp), %rdi
movq %rdi, 0xa8(%rsp)
callq 0xe0c80
movq 0xa8(%rsp), %rdx
leaq 0x5ca13(%rip), %rsi     # 0x1877a6
leaq 0x428(%rsp), %rdi
callq 0xe00a0
jmp 0x12ada2
movq 0xa0(%rsp), %rdi
leaq 0x428(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x90(%rsp)
jmp 0x12adc1
movq 0x90(%rsp), %rsi
leaq 0x448(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x12addd
leaq 0x428(%rsp), %rdi
callq 0xd4550
leaq 0x427(%rsp), %rdi
callq 0xd8ec0
movq 0x448(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0x448(%rsp,%rax), %rax
movq %rax, 0x80(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0x8c(%rsp)
jmp 0x12ae2b
movl 0x8c(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0x7c(%rsp)
jmp 0x12ae42
movl 0x7c(%rsp), %esi
movq 0x80(%rsp), %rdi
callq 0xda6e0
jmp 0x12ae55
movq 0x98(%rsp), %rsi
addq $0xc, %rsi
leaq 0x448(%rsp), %rdi
callq 0xd4480
jmp 0x12ae70
leaq 0x448(%rsp), %rdi
callq 0xd25a0
movq 0x5d8(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x26f(%rsp), %rdi
movq %rdi, 0x70(%rsp)
callq 0xe0c80
movq 0x70(%rsp), %rdx
leaq 0x5e35c(%rip), %rsi     # 0x189204
leaq 0x270(%rsp), %rdi
callq 0xe00a0
jmp 0x12aeb7
movq 0x68(%rsp), %rdi
leaq 0x270(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x60(%rsp)
jmp 0x12aed0
movq 0x60(%rsp), %rsi
leaq 0x290(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x12aee9
leaq 0x270(%rsp), %rdi
callq 0xd4550
leaq 0x26f(%rsp), %rdi
callq 0xd8ec0
movq 0x290(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0x290(%rsp,%rax), %rax
movq %rax, 0x50(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0x5c(%rsp)
jmp 0x12af31
movl 0x5c(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0x4c(%rsp)
jmp 0x12af45
movl 0x4c(%rsp), %esi
movq 0x50(%rsp), %rdi
callq 0xda6e0
jmp 0x12af55
leaq 0x290(%rsp), %rdi
leaq 0x5c8(%rsp), %rsi
callq 0xceae0
jmp 0x12af6c
leaq 0x290(%rsp), %rdi
callq 0xd25a0
movq 0x5d8(%rsp), %rax
movq %rax, 0x38(%rsp)
leaq 0xc7(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0xe0c80
movq 0x40(%rsp), %rdx
leaq 0x5e548(%rip), %rsi     # 0x1894ec
leaq 0xc8(%rsp), %rdi
callq 0xe00a0
jmp 0x12afb3
movq 0x38(%rsp), %rdi
leaq 0xc8(%rsp), %rsi
callq 0xdb6f0
movq %rax, 0x30(%rsp)
jmp 0x12afcc
movq 0x30(%rsp), %rsi
leaq 0xe8(%rsp), %rdi
movl $0x8, %edx
callq 0xdfcc0
jmp 0x12afe5
leaq 0xc8(%rsp), %rdi
callq 0xd4550
leaq 0xc7(%rsp), %rdi
callq 0xd8ec0
movq 0xe8(%rsp), %rax
movq -0x18(%rax), %rax
leaq 0xe8(%rsp,%rax), %rax
movq %rax, 0x20(%rsp)
movl $0x2, %edi
movl $0x8, %esi
callq 0xe0e70
movl %eax, 0x2c(%rsp)
jmp 0x12b02d
movl 0x2c(%rsp), %edi
movl $0x40, %esi
callq 0xe0e70
movl %eax, 0x1c(%rsp)
jmp 0x12b041
movl 0x1c(%rsp), %esi
movq 0x20(%rsp), %rdi
callq 0xda6e0
jmp 0x12b051
leaq 0xe8(%rsp), %rdi
leaq 0x5cc(%rsp), %rsi
callq 0xceae0
jmp 0x12b068
leaq 0xe8(%rsp), %rdi
callq 0xd25a0
movq 0x5d0(%rsp), %rax
movq %rax, 0xb8(%rsp)
movq 0xb8(%rsp), %rdi
movl 0x5c8(%rsp), %esi
callq 0xd45f0
movq %rax, 0x10(%rsp)
cmpq $0x0, %rax
je 0x12b215
movq 0x10(%rsp), %rdi
movq 0x9c9fc(%rip), %rsi     # 0x1c7ab0
movq 0x9ce2d(%rip), %rdx     # 0x1c7ee8
xorl %eax, %eax
movl %eax, %ecx
callq 0xd99a0
movq %rax, 0x8(%rsp)
jmp 0x12b21e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
jmp 0x12b105
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
leaq 0x428(%rsp), %rdi
callq 0xd4550
leaq 0x427(%rsp), %rdi
callq 0xd8ec0
jmp 0x12b256
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
leaq 0x448(%rsp), %rdi
callq 0xd25a0
jmp 0x12b256
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
jmp 0x12b174
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
leaq 0x270(%rsp), %rdi
callq 0xd4550
leaq 0x26f(%rsp), %rdi
callq 0xd8ec0
jmp 0x12b256
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
leaq 0x290(%rsp), %rdi
callq 0xd25a0
jmp 0x12b256
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
jmp 0x12b1e3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
leaq 0xc8(%rsp), %rdi
callq 0xd4550
leaq 0xc7(%rsp), %rdi
callq 0xd8ec0
jmp 0x12b256
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x418(%rsp)
movl %eax, 0x414(%rsp)
leaq 0xe8(%rsp), %rdi
callq 0xd25a0
jmp 0x12b256
xorl %eax, %eax
movq %rax, 0x8(%rsp)
jmp 0x12b21e
movq 0x8(%rsp), %rax
movq %rax, 0xb0(%rsp)
movq 0xb0(%rsp), %rdi
movl 0x5cc(%rsp), %esi
callq 0xd3c10
movq %rax, %rcx
movq 0x98(%rsp), %rax
movq %rcx, 0x10(%rax)
addq $0x5e8, %rsp            # imm = 0x5E8
retq
movq 0x418(%rsp), %rdi
callq 0xe0be0
nopw %cs:(%rax,%rax)