// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_get
SOAP_FMAC2
soap_get(struct soap *soap)
{ register soap_wchar c;
  c = soap->ahead;
  if (c)
  { if ((int)c != EOF)
      soap->ahead = 0;
  }
  else
    c = soap_get1(soap);
  while ((int)c != EOF)
  { if (soap->cdata)
    { if (c == ']')
      { c = soap_get1(soap);
        if (c == ']')
        { c = soap_get0(soap);
          if (c == '>')
          { soap->cdata = 0;
            soap_get1(soap);
            c = soap_get1(soap);
          }
          else
          { soap_unget(soap, ']');
            return ']';
          }
        }
        else
        { soap_revget1(soap);
          return ']';
        }
      }
      else
        return c;
    }
    switch (c)
    { case '<':
        do c = soap_get1(soap);
        while (soap_blank(c));
        if (c == '!' || c == '?' || c == '%')
        { register int k = 1;
          if (c == '!')
          { c = soap_get1(soap);
            if (c == '[')
            { do c = soap_get1(soap);
              while ((int)c != EOF && c != '[');
              if ((int)c == EOF)
                break;
              soap->cdata = 1;
              c = soap_get1(soap);
              continue;
            }
            if (c == '-' && (c = soap_get1(soap)) == '-')
            { do
              { c = soap_get1(soap);
                if (c == '-' && (c = soap_get1(soap)) == '-')
                  break;
              } while ((int)c != EOF);
            }
          }
          else if (c == '?')
            c = soap_get_pi(soap);
          while ((int)c != EOF)
          { if (c == '<')
              k++;
            else if (c == '>')
            { if (--k <= 0)
                break;
            }
            c = soap_get1(soap);
          }
          if ((int)c == EOF)
            break;
          c = soap_get1(soap);
          continue;
        }
        if (c == '/')
          return SOAP_TT;
        soap_revget1(soap);
        return SOAP_LT;
      case '>':
        return SOAP_GT;
      case '"':
        return SOAP_QT;
      case '\'':
        return SOAP_AP;
      case '&':
        return soap_char(soap) | 0x80000000;
    }
    break;
  }
  return c;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movl 0x6100(%rax), %eax
movl %eax, -0x14(%rbp)
cmpl $0x0, -0x14(%rbp)
je 0x503f5
cmpl $-0x1, -0x14(%rbp)
je 0x503f3
movq -0x10(%rbp), %rax
movl $0x0, 0x6100(%rax)
jmp 0x50453
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x50425
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x50425
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x1c(%rbp)
jmp 0x5044d
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x50455
cmpl $-0x1, -0x14(%rbp)
je 0x50b35
movq -0x10(%rbp), %rax
cmpw $0x0, 0x6104(%rax)
je 0x50644
cmpl $0x5d, -0x14(%rbp)
jne 0x50637
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x504ab
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x504ab
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x20(%rbp)
jmp 0x504d3
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x20(%rbp)
movl -0x20(%rbp), %eax
movl %eax, -0x14(%rbp)
cmpl $0x5d, -0x14(%rbp)
jne 0x50613
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x50513
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x50513
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x24(%rbp)
jmp 0x5052d
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rcx
movq 0x60f0(%rcx), %rcx
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl %eax, -0x14(%rbp)
cmpl $0x3e, -0x14(%rbp)
jne 0x505f7
movq -0x10(%rbp), %rax
movw $0x0, 0x6104(%rax)
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x50572
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x50572
jmp 0x50597
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x505c7
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x505c7
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x28(%rbp)
jmp 0x505ef
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x28(%rbp)
movl -0x28(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x50611
movq -0x10(%rbp), %rax
movl $0x5d, 0x6100(%rax)
movl $0x5d, -0x4(%rbp)
jmp 0x50b3b
jmp 0x50635
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rcx
addq $-0x1, %rcx
movq %rcx, 0x60f0(%rax)
movl $0x5d, -0x4(%rbp)
jmp 0x50b3b
jmp 0x50642
movl -0x14(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x50b3b
jmp 0x50644
movl -0x14(%rbp), %eax
addl $-0x22, %eax
movl %eax, %ecx
movq %rcx, -0x30(%rbp)
subl $0x1c, %eax
ja 0x50b33
movq -0x30(%rbp), %rax
leaq 0x2992c(%rip), %rcx     # 0x79f90
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
jmp 0x5066f
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x5069f
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x5069f
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x34(%rbp)
jmp 0x506c7
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x34(%rbp)
movl -0x34(%rbp), %eax
movl %eax, -0x14(%rbp)
xorl %eax, %eax
cmpl $0x0, -0x14(%rbp)
movb %al, -0x35(%rbp)
jl 0x506e2
cmpl $0x20, -0x14(%rbp)
setle %al
movb %al, -0x35(%rbp)
movb -0x35(%rbp), %al
testb $0x1, %al
jne 0x5066f
cmpl $0x21, -0x14(%rbp)
je 0x506ff
cmpl $0x3f, -0x14(%rbp)
je 0x506ff
cmpl $0x25, -0x14(%rbp)
jne 0x50ad7
movl $0x1, -0x18(%rbp)
cmpl $0x21, -0x14(%rbp)
jne 0x509bb
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x50740
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x50740
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x3c(%rbp)
jmp 0x50768
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x3c(%rbp)
movl -0x3c(%rbp), %eax
movl %eax, -0x14(%rbp)
cmpl $0x5b, -0x14(%rbp)
jne 0x5086f
jmp 0x5077a
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x507aa
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x507aa
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x40(%rbp)
jmp 0x507d2
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x40(%rbp)
movl -0x40(%rbp), %eax
movl %eax, -0x14(%rbp)
xorl %eax, %eax
cmpl $-0x1, -0x14(%rbp)
movb %al, -0x41(%rbp)
je 0x507ed
cmpl $0x5b, -0x14(%rbp)
setne %al
movb %al, -0x41(%rbp)
movb -0x41(%rbp), %al
testb $0x1, %al
jne 0x5077a
cmpl $-0x1, -0x14(%rbp)
jne 0x507ff
jmp 0x50b33
movq -0x10(%rbp), %rax
movw $0x1, 0x6104(%rax)
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x5083c
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x5083c
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x48(%rbp)
jmp 0x50864
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x48(%rbp)
movl -0x48(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x50455
cmpl $0x2d, -0x14(%rbp)
jne 0x509b9
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x508a9
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x508a9
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x4c(%rbp)
jmp 0x508d1
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x4c(%rbp)
movl -0x4c(%rbp), %eax
movl %eax, -0x14(%rbp)
cmpl $0x2d, %eax
jne 0x509b9
jmp 0x508e2
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x50912
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x50912
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x50(%rbp)
jmp 0x5093a
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x50(%rbp)
movl -0x50(%rbp), %eax
movl %eax, -0x14(%rbp)
cmpl $0x2d, -0x14(%rbp)
jne 0x509ab
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x50976
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x50976
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x54(%rbp)
jmp 0x5099e
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x54(%rbp)
movl -0x54(%rbp), %eax
movl %eax, -0x14(%rbp)
cmpl $0x2d, %eax
jne 0x509ab
jmp 0x509b7
jmp 0x509ad
cmpl $-0x1, -0x14(%rbp)
jne 0x508e2
jmp 0x509b9
jmp 0x509cf
cmpl $0x3f, -0x14(%rbp)
jne 0x509cd
movq -0x10(%rbp), %rdi
callq 0x50b50
movl %eax, -0x14(%rbp)
jmp 0x509cf
jmp 0x509d1
cmpl $-0x1, -0x14(%rbp)
je 0x50a69
cmpl $0x3c, -0x14(%rbp)
jne 0x509ec
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x50a06
cmpl $0x3e, -0x14(%rbp)
jne 0x50a04
movl -0x18(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x18(%rbp)
cmpl $0x0, %eax
jg 0x50a02
jmp 0x50a69
jmp 0x50a04
jmp 0x50a06
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x50a36
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x50a36
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x58(%rbp)
jmp 0x50a5e
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x58(%rbp)
movl -0x58(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x509d1
cmpl $-0x1, -0x14(%rbp)
jne 0x50a74
jmp 0x50b33
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rax
movq -0x10(%rbp), %rcx
cmpq 0x60f8(%rcx), %rax
jb 0x50aa4
movq -0x10(%rbp), %rdi
callq 0x4f9f0
cmpl $0x0, %eax
je 0x50aa4
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
movl %eax, -0x5c(%rbp)
jmp 0x50acc
movq -0x10(%rbp), %rax
movq -0x10(%rbp), %rdx
movq 0x60f0(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x60f0(%rdx)
movzbl 0x6138(%rax,%rcx), %eax
movl %eax, -0x5c(%rbp)
movl -0x5c(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x50455
cmpl $0x2f, -0x14(%rbp)
jne 0x50ae6
movl $0xfffffffd, -0x4(%rbp) # imm = 0xFFFFFFFD
jmp 0x50b3b
movq -0x10(%rbp), %rax
movq 0x60f0(%rax), %rcx
addq $-0x1, %rcx
movq %rcx, 0x60f0(%rax)
movl $0xfffffffe, -0x4(%rbp) # imm = 0xFFFFFFFE
jmp 0x50b3b
movl $0xfffffffc, -0x4(%rbp) # imm = 0xFFFFFFFC
jmp 0x50b3b
movl $0xfffffffb, -0x4(%rbp) # imm = 0xFFFFFFFB
jmp 0x50b3b
movl $0xfffffffa, -0x4(%rbp) # imm = 0xFFFFFFFA
jmp 0x50b3b
movq -0x10(%rbp), %rdi
callq 0x50cb0
orl $0x80000000, %eax       # imm = 0x80000000
movl %eax, -0x4(%rbp)
jmp 0x50b3b
jmp 0x50b35
movl -0x14(%rbp), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x60, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)