LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_attr_value
SOAP_FMAC1
const char *
SOAP_FMAC2
soap_attr_value(struct soap *soap, const char *name, int flag)
{ register struct soap_attribute *tp;
  if (*name == '-')
    return SOAP_STR_EOS;
  for (tp = soap->attributes; tp; tp = tp->next)
  { if (tp->visible && !soap_match_tag(soap, tp->name, name))
      break;
  }
  if (tp)
  { if (flag == 2 && (soap->mode & SOAP_XML_STRICT))
      soap->error = SOAP_PROHIBITED;
    else
      return tp->value;
  }
  else if (flag == 1 && (soap->mode & SOAP_XML_STRICT))
    soap->error = SOAP_REQUIRED;
  else
    soap->error = SOAP_OK;
  return NULL;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq -0x18(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x2d, %eax
jne 0x61a8f
leaq 0x189fb(%rip), %rax     # 0x7a481
movq %rax, -0x8(%rbp)
jmp 0x61b5a
movq -0x10(%rbp), %rax
movq 0x18580(%rax), %rax
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
je 0x61add
movq -0x28(%rbp), %rax
movswl 0x20(%rax), %eax
cmpl $0x0, %eax
je 0x61ace
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rsi
addq $0x22, %rsi
movq -0x18(%rbp), %rdx
callq 0x55510
cmpl $0x0, %eax
jne 0x61ace
jmp 0x61add
jmp 0x61ad0
movq -0x28(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x28(%rbp)
jmp 0x61a9e
cmpq $0x0, -0x28(%rbp)
je 0x61b1b
cmpl $0x2, -0x1c(%rbp)
jne 0x61b0b
movq -0x10(%rbp), %rax
movl 0x4(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
je 0x61b0b
movq -0x10(%rbp), %rax
movl $0x2b, 0x19214(%rax)
jmp 0x61b19
movq -0x28(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x61b5a
jmp 0x61b52
cmpl $0x1, -0x1c(%rbp)
jne 0x61b42
movq -0x10(%rbp), %rax
movl 0x4(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
je 0x61b42
movq -0x10(%rbp), %rax
movl $0x2a, 0x19214(%rax)
jmp 0x61b50
movq -0x10(%rbp), %rax
movl $0x0, 0x19214(%rax)
jmp 0x61b52
movq $0x0, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_revert
SOAP_FMAC2
soap_revert(struct soap *soap)
{ if (!soap->peeked)
  { soap->peeked = 1;
    if (soap->body)
      soap->level--;
  }
  DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Reverting last element (level=%u)\n", soap->level));
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
cmpw $0x0, 0x18594(%rax)
jne 0x61df6
movq -0x8(%rbp), %rax
movw $0x1, 0x18594(%rax)
movq -0x8(%rbp), %rax
cmpw $0x0, 0x6106(%rax)
je 0x61df4
movq -0x8(%rbp), %rax
movl 0x6108(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x6108(%rax)
jmp 0x61df6
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_outint
SOAP_FMAC2
soap_outint(struct soap *soap, const char *tag, int id, const int *p, const char *type, int n)
{ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, p, n), type)
   || soap_string_out(soap, soap_long2s(soap, (long)*p), 0))
    return soap->error;
  return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movl %r9d, -0x34(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
movq -0x28(%rbp), %rdx
movl -0x34(%rbp), %ecx
callq 0x5b5a0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl %eax, %edx
movq -0x30(%rbp), %rcx
callq 0x5bbd0
cmpl $0x0, %eax
jne 0x63c55
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rax
movslq (%rax), %rsi
callq 0x63b90
movq -0x50(%rbp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x61120
cmpl $0x0, %eax
je 0x63c64
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x63c74
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x5bcc0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2int
SOAP_FMAC2
soap_s2int(struct soap *soap, const char *s, int *p)
{ if (s)
  { char *r;
#ifndef WITH_NOIO
#ifndef WITH_LEAN
    soap_reset_errno;
#endif
#endif
    *p = (int)soap_strtol(s, &r, 10);
    if ((s == r && (soap->mode & SOAP_XML_STRICT)) || *r
#ifndef WITH_NOIO
#ifndef WITH_LEAN
     || soap_errno == SOAP_ERANGE
#endif
#endif
    )
      soap->error = SOAP_TYPE;
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x63d01
callq 0x3060
movl $0x0, (%rax)
movq -0x10(%rbp), %rdi
leaq -0x20(%rbp), %rsi
movl $0xa, %edx
callq 0x3230
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, (%rax)
movq -0x10(%rbp), %rax
cmpq -0x20(%rbp), %rax
jne 0x63cdb
movq -0x8(%rbp), %rax
movl 0x4(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
jne 0x63cf1
movq -0x20(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
jne 0x63cf1
callq 0x3060
cmpl $0x22, (%rax)
jne 0x63cff
movq -0x8(%rbp), %rax
movl $0x4, 0x19214(%rax)
jmp 0x63d01
movq -0x8(%rbp), %rax
movl 0x19214(%rax), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_value
SOAP_FMAC1
const char *
SOAP_FMAC2
soap_value(struct soap *soap)
{ register size_t i;
  register soap_wchar c = 0;
  register char *s = soap->tmpbuf;
  if (!soap->body)
    return SOAP_STR_EOS;
  do c = soap_get(soap);
  while (soap_blank(c));
  for (i = 0; i < sizeof(soap->tmpbuf) - 1; i++)
  { if (c == SOAP_TT || c == SOAP_LT || (int)c == EOF)
      break;
    *s++ = (char)c;
    c = soap_get(soap);
  }
  for (s--; i > 0; i--, s--)
  { if (!soap_blank(*s))
      break;
  }
  s[1] = '\0';
  DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Element content value='%s'\n", soap->tmpbuf));
  if (c == SOAP_TT || c == SOAP_LT || (int)c == EOF)
    soap_unget(soap, c);
  else if (soap->mode & SOAP_XML_STRICT)
  { soap->error = SOAP_LENGTH;
    return NULL;
  }
#ifdef WITH_DOM
  if ((soap->mode & SOAP_XML_DOM) && soap->dom)
    soap->dom->data = soap_strdup(soap, soap->tmpbuf);
#endif
  return soap->tmpbuf; /* return non-null pointer */
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movl $0x0, -0x1c(%rbp)
movq -0x10(%rbp), %rax
addq $0x16538, %rax          # imm = 0x16538
movq %rax, -0x28(%rbp)
movq -0x10(%rbp), %rax
cmpw $0x0, 0x6106(%rax)
jne 0x63f6f
leaq 0x1651b(%rip), %rax     # 0x7a481
movq %rax, -0x8(%rbp)
jmp 0x6409a
jmp 0x63f71
movq -0x10(%rbp), %rdi
callq 0x503c0
movl %eax, -0x1c(%rbp)
xorl %eax, %eax
cmpl $0x0, -0x1c(%rbp)
movb %al, -0x29(%rbp)
jl 0x63f92
cmpl $0x20, -0x1c(%rbp)
setle %al
movb %al, -0x29(%rbp)
movb -0x29(%rbp), %al
testb $0x1, %al
jne 0x63f71
movq $0x0, -0x18(%rbp)
cmpq $0x3ff, -0x18(%rbp)     # imm = 0x3FF
jae 0x63fef
cmpl $-0x3, -0x1c(%rbp)
je 0x63fbd
cmpl $-0x2, -0x1c(%rbp)
je 0x63fbd
cmpl $-0x1, -0x1c(%rbp)
jne 0x63fbf
jmp 0x63fef
movl -0x1c(%rbp), %eax
movb %al, %cl
movq -0x28(%rbp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, -0x28(%rbp)
movb %cl, (%rax)
movq -0x10(%rbp), %rdi
callq 0x503c0
movl %eax, -0x1c(%rbp)
movq -0x18(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x18(%rbp)
jmp 0x63fa1
movq -0x28(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x18(%rbp)
jbe 0x64038
movq -0x28(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
jl 0x6401a
movq -0x28(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x20, %eax
jle 0x6401c
jmp 0x64038
jmp 0x6401e
movq -0x18(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x18(%rbp)
movq -0x28(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x28(%rbp)
jmp 0x63ffb
movq -0x28(%rbp), %rax
movb $0x0, 0x1(%rax)
cmpl $-0x3, -0x1c(%rbp)
je 0x64052
cmpl $-0x2, -0x1c(%rbp)
je 0x64052
cmpl $-0x1, -0x1c(%rbp)
jne 0x64061
movl -0x1c(%rbp), %ecx
movq -0x10(%rbp), %rax
movl %ecx, 0x6100(%rax)
jmp 0x6408c
movq -0x10(%rbp), %rax
movl 0x4(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
je 0x6408a
movq -0x10(%rbp), %rax
movl $0x2d, 0x19214(%rax)
movq $0x0, -0x8(%rbp)
jmp 0x6409a
jmp 0x6408c
movq -0x10(%rbp), %rax
addq $0x16538, %rax          # imm = 0x16538
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_outlong
SOAP_FMAC2
soap_outlong(struct soap *soap, const char *tag, int id, const long *p, const char *type, int n)
{ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, p, n), type)
   || soap_string_out(soap, soap_long2s(soap, *p), 0))
    return soap->error;
  return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movl %r9d, -0x34(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
movq -0x28(%rbp), %rdx
movl -0x34(%rbp), %ecx
callq 0x5b5a0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl %eax, %edx
movq -0x30(%rbp), %rcx
callq 0x5bbd0
cmpl $0x0, %eax
jne 0x64135
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rax
movq (%rax), %rsi
callq 0x63b90
movq -0x50(%rbp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x61120
cmpl $0x0, %eax
je 0x64144
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x64154
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x5bcc0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2long
SOAP_FMAC2
soap_s2long(struct soap *soap, const char *s, long *p)
{ if (s)
  { char *r;
#ifndef WITH_NOIO
#ifndef WITH_LEAN
    soap_reset_errno;
#endif
#endif
    *p = soap_strtol(s, &r, 10);
    if ((s == r && (soap->mode & SOAP_XML_STRICT)) || *r
#ifndef WITH_NOIO
#ifndef WITH_LEAN
     || soap_errno == SOAP_ERANGE
#endif
#endif
    )
      soap->error = SOAP_TYPE;
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x641e3
callq 0x3060
movl $0x0, (%rax)
movq -0x10(%rbp), %rdi
leaq -0x20(%rbp), %rsi
movl $0xa, %edx
callq 0x3230
movq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x10(%rbp), %rax
cmpq -0x20(%rbp), %rax
jne 0x641bd
movq -0x8(%rbp), %rax
movl 0x4(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
jne 0x641d3
movq -0x20(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
jne 0x641d3
callq 0x3060
cmpl $0x22, (%rax)
jne 0x641e1
movq -0x8(%rbp), %rax
movl $0x4, 0x19214(%rax)
jmp 0x641e3
movq -0x8(%rbp), %rax
movl 0x19214(%rax), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_outLONG64
SOAP_FMAC2
soap_outLONG64(struct soap *soap, const char *tag, int id, const LONG64 *p, const char *type, int n)
{ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, p, n), type)
   || soap_string_out(soap, soap_LONG642s(soap, *p), 0))
    return soap->error;
  return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movl %r9d, -0x34(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
movq -0x28(%rbp), %rdx
movl -0x34(%rbp), %ecx
callq 0x5b5a0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl %eax, %edx
movq -0x30(%rbp), %rcx
callq 0x5bbd0
cmpl $0x0, %eax
jne 0x644d5
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rax
movq (%rax), %rsi
callq 0x64410
movq -0x50(%rbp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x61120
cmpl $0x0, %eax
je 0x644e4
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x644f4
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x5bcc0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_outbyte
SOAP_FMAC2
soap_outbyte(struct soap *soap, const char *tag, int id, const char *p, const char *type, int n)
{ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, p, n), type)
   || soap_string_out(soap, soap_long2s(soap, (long)*p), 0))
    return soap->error;
  return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movl %r9d, -0x34(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
movq -0x28(%rbp), %rdx
movl -0x34(%rbp), %ecx
callq 0x5b5a0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl %eax, %edx
movq -0x30(%rbp), %rcx
callq 0x5bbd0
cmpl $0x0, %eax
jne 0x648f6
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rax
movsbq (%rax), %rsi
callq 0x63b90
movq -0x50(%rbp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x61120
cmpl $0x0, %eax
je 0x64905
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x64915
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x5bcc0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2byte
SOAP_FMAC2
soap_s2byte(struct soap *soap, const char *s, char *p)
{ if (s)
  { long n;
    char *r;
    n = soap_strtol(s, &r, 10);
    if (s == r || *r || n < -128 || n > 127)
      soap->error = SOAP_TYPE;
    *p = (char)n;
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x6498f
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
movl $0xa, %edx
callq 0x3230
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpq -0x28(%rbp), %rax
je 0x64975
movq -0x28(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
jne 0x64975
cmpq $-0x80, -0x20(%rbp)
jl 0x64975
cmpq $0x7f, -0x20(%rbp)
jle 0x64983
movq -0x8(%rbp), %rax
movl $0x4, 0x19214(%rax)
movq -0x20(%rbp), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, (%rax)
movq -0x8(%rbp), %rax
movl 0x19214(%rax), %eax
addq $0x30, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_inbyte
SOAP_FMAC1
char *
SOAP_FMAC2
soap_inbyte(struct soap *soap, const char *tag, char *p, const char *type, int t)
{ if (soap_element_begin_in(soap, tag, 0, NULL))
    return NULL;
#ifndef WITH_LEAN
  if (*soap->type
   && soap_match_tag(soap, soap->type, type)
   && soap_match_tag(soap, soap->type, ":byte"))
  { soap->error = SOAP_TYPE;
    soap_revert(soap);
    return NULL;
  }
#endif
  p = (char*)soap_id_enter(soap, soap->id, p, t, sizeof(char), 0, NULL, NULL, NULL);
  if (*soap->href)
    p = (char*)soap_id_forward(soap, soap->href, p, 0, t, 0, sizeof(char), 0, NULL);
  else if (p)
  { if (soap_s2byte(soap, soap_value(soap), p))
      return NULL;
  }
  if (soap->body && soap_element_end_in(soap, tag))
    return NULL;
  return p;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movl %r8d, -0x2c(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
xorl %edx, %edx
xorl %eax, %eax
movl %eax, %ecx
callq 0x53390
cmpl $0x0, %eax
je 0x649e1
movq $0x0, -0x8(%rbp)
jmp 0x64b54
movq -0x10(%rbp), %rax
movsbl 0x17538(%rax), %eax
cmpl $0x0, %eax
je 0x64a52
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
movq -0x28(%rbp), %rdx
callq 0x55510
cmpl $0x0, %eax
je 0x64a52
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x1417e(%rip), %rdx     # 0x78ba2
callq 0x55510
cmpl $0x0, %eax
je 0x64a52
movq -0x10(%rbp), %rax
movl $0x4, 0x19214(%rax)
movq -0x10(%rbp), %rdi
callq 0x61db0
movq $0x0, -0x8(%rbp)
jmp 0x64b54
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x16d38, %rsi          # imm = 0x16D38
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %ecx
movl $0x1, %r8d
xorl %r9d, %r9d
xorl %eax, %eax
movq $0x0, (%rsp)
movq $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5cbc0
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpb $0x0, 0x17138(%rax)
je 0x64ae5
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17138, %rsi          # imm = 0x17138
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %r8d
xorl %eax, %eax
movl %eax, %ecx
xorl %r9d, %r9d
movq $0x1, (%rsp)
movl $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5c9a0
movq %rax, -0x20(%rbp)
jmp 0x64b20
cmpq $0x0, -0x20(%rbp)
je 0x64b1e
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rdi
callq 0x63f30
movq -0x38(%rbp), %rdi
movq %rax, %rsi
movq -0x20(%rbp), %rdx
callq 0x64920
cmpl $0x0, %eax
je 0x64b1c
movq $0x0, -0x8(%rbp)
jmp 0x64b54
jmp 0x64b1e
jmp 0x64b20
movq -0x10(%rbp), %rax
movswl 0x6106(%rax), %eax
cmpl $0x0, %eax
je 0x64b4c
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x53660
cmpl $0x0, %eax
je 0x64b4c
movq $0x0, -0x8(%rbp)
jmp 0x64b54
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_outshort
SOAP_FMAC2
soap_outshort(struct soap *soap, const char *tag, int id, const short *p, const char *type, int n)
{ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, p, n), type)
   || soap_string_out(soap, soap_long2s(soap, (long)*p), 0))
    return soap->error;
  return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movl %r9d, -0x34(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
movq -0x28(%rbp), %rdx
movl -0x34(%rbp), %ecx
callq 0x5b5a0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl %eax, %edx
movq -0x30(%rbp), %rcx
callq 0x5bbd0
cmpl $0x0, %eax
jne 0x64c16
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rax
movswq (%rax), %rsi
callq 0x63b90
movq -0x50(%rbp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x61120
cmpl $0x0, %eax
je 0x64c25
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x64c35
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x5bcc0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2short
SOAP_FMAC2
soap_s2short(struct soap *soap, const char *s, short *p)
{ if (s)
  { long n;
    char *r;
    n = soap_strtol(s, &r, 10);
    if (s == r || *r || n < -32768 || n > 32767)
      soap->error = SOAP_TYPE;
    *p = (short)n;
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x64cb7
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
movl $0xa, %edx
callq 0x3230
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpq -0x28(%rbp), %rax
je 0x64c9b
movq -0x28(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
jne 0x64c9b
cmpq $-0x8000, -0x20(%rbp)   # imm = 0x8000
jl 0x64c9b
cmpq $0x7fff, -0x20(%rbp)    # imm = 0x7FFF
jle 0x64ca9
movq -0x8(%rbp), %rax
movl $0x4, 0x19214(%rax)
movq -0x20(%rbp), %rax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, (%rax)
movq -0x8(%rbp), %rax
movl 0x19214(%rax), %eax
addq $0x30, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_inshort
SOAP_FMAC1
short *
SOAP_FMAC2
soap_inshort(struct soap *soap, const char *tag, short *p, const char *type, int t)
{ if (soap_element_begin_in(soap, tag, 0, NULL))
    return NULL;
#ifndef WITH_LEAN
  if (*soap->type
   && soap_match_tag(soap, soap->type, type)
   && soap_match_tag(soap, soap->type, ":short")
   && soap_match_tag(soap, soap->type, ":byte"))
  { soap->error = SOAP_TYPE;
    soap_revert(soap);
    return NULL;
  }
#endif
  p = (short*)soap_id_enter(soap, soap->id, p, t, sizeof(short), 0, NULL, NULL, NULL);
  if (*soap->href)
    p = (short*)soap_id_forward(soap, soap->href, p, 0, t, 0, sizeof(short), 0, NULL);
  else if (p)
  { if (soap_s2short(soap, soap_value(soap), p))
      return NULL;
  }
  if (soap->body && soap_element_end_in(soap, tag))
    return NULL;
  return p;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movl %r8d, -0x2c(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
xorl %edx, %edx
xorl %eax, %eax
movl %eax, %ecx
callq 0x53390
cmpl $0x0, %eax
je 0x64d11
movq $0x0, -0x8(%rbp)
jmp 0x64ea8
movq -0x10(%rbp), %rax
movsbl 0x17538(%rax), %eax
cmpl $0x0, %eax
je 0x64da6
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
movq -0x28(%rbp), %rdx
callq 0x55510
cmpl $0x0, %eax
je 0x64da6
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x15d82(%rip), %rdx     # 0x7aada
callq 0x55510
cmpl $0x0, %eax
je 0x64da6
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x13e2a(%rip), %rdx     # 0x78ba2
callq 0x55510
cmpl $0x0, %eax
je 0x64da6
movq -0x10(%rbp), %rax
movl $0x4, 0x19214(%rax)
movq -0x10(%rbp), %rdi
callq 0x61db0
movq $0x0, -0x8(%rbp)
jmp 0x64ea8
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x16d38, %rsi          # imm = 0x16D38
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %ecx
movl $0x2, %r8d
xorl %r9d, %r9d
xorl %eax, %eax
movq $0x0, (%rsp)
movq $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5cbc0
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpb $0x0, 0x17138(%rax)
je 0x64e39
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17138, %rsi          # imm = 0x17138
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %r8d
xorl %eax, %eax
movl %eax, %ecx
xorl %r9d, %r9d
movq $0x2, (%rsp)
movl $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5c9a0
movq %rax, -0x20(%rbp)
jmp 0x64e74
cmpq $0x0, -0x20(%rbp)
je 0x64e72
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rdi
callq 0x63f30
movq -0x38(%rbp), %rdi
movq %rax, %rsi
movq -0x20(%rbp), %rdx
callq 0x64c40
cmpl $0x0, %eax
je 0x64e70
movq $0x0, -0x8(%rbp)
jmp 0x64ea8
jmp 0x64e72
jmp 0x64e74
movq -0x10(%rbp), %rax
movswl 0x6106(%rax), %eax
cmpl $0x0, %eax
je 0x64ea0
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x53660
cmpl $0x0, %eax
je 0x64ea0
movq $0x0, -0x8(%rbp)
jmp 0x64ea8
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_float2s
SOAP_FMAC1
const char*
SOAP_FMAC2
soap_float2s(struct soap *soap, float n)
{ char *s;
  if (soap_isnan((double)n))
    return "NaN";
  if (soap_ispinff(n))
    return "INF";
  if (soap_isninff(n))
    return "-INF";
  s = soap->tmpbuf;
#if defined(HAVE_SPRINTF_L)
  sprintf_l(s, soap->c_locale, soap->float_format, n);
#else
  sprintf(s, soap->float_format, n);
  s = strchr(s, ',');	/* convert decimal comma to DP */
  if (s)
    *s = '.';
#endif
  return soap->tmpbuf;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movss %xmm0, -0x14(%rbp)
movss -0x14(%rbp), %xmm0
cvtss2sd %xmm0, %xmm0
ucomisd %xmm0, %xmm0
setp %al
testb $0x1, %al
jne 0x64ee7
jmp 0x64ef7
leaq 0x15c50(%rip), %rax     # 0x7ab3e
movq %rax, -0x8(%rbp)
jmp 0x64f89
movss -0x14(%rbp), %xmm0
movss 0x15684(%rip), %xmm1    # 0x7a588
ucomiss %xmm1, %xmm0
jb 0x64f16
leaq 0x15c38(%rip), %rax     # 0x7ab48
movq %rax, -0x8(%rbp)
jmp 0x64f89
movss 0x1566e(%rip), %xmm0    # 0x7a58c
ucomiss -0x14(%rbp), %xmm0
jb 0x64f31
leaq 0x15c17(%rip), %rax     # 0x7ab42
movq %rax, -0x8(%rbp)
jmp 0x64f89
movq -0x10(%rbp), %rax
addq $0x16538, %rax          # imm = 0x16538
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rsi
movss -0x14(%rbp), %xmm0
cvtss2sd %xmm0, %xmm0
movb $0x1, %al
callq 0x3370
movq -0x20(%rbp), %rdi
movl $0x2c, %esi
callq 0x3130
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x64f7b
movq -0x20(%rbp), %rax
movb $0x2e, (%rax)
movq -0x10(%rbp), %rax
addq $0x16538, %rax          # imm = 0x16538
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_outfloat
SOAP_FMAC2
soap_outfloat(struct soap *soap, const char *tag, int id, const float *p, const char *type, int n)
{ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, p, n), type)
   || soap_string_out(soap, soap_float2s(soap, *p), 0))
    return soap->error;
  return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movl %r9d, -0x34(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
movq -0x28(%rbp), %rdx
movl -0x34(%rbp), %ecx
callq 0x5b5a0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl %eax, %edx
movq -0x30(%rbp), %rcx
callq 0x5bbd0
cmpl $0x0, %eax
jne 0x65026
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rax
movss (%rax), %xmm0
callq 0x64ec0
movq -0x50(%rbp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x61120
cmpl $0x0, %eax
je 0x65035
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x65045
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x5bcc0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2float
SOAP_FMAC2
soap_s2float(struct soap *soap, const char *s, float *p)
{ if (s)
  { if (!*s)
      return soap->error = SOAP_TYPE;
    if (!soap_tag_cmp(s, "INF"))
      *p = FLT_PINFTY;
    else if (!soap_tag_cmp(s, "+INF"))
      *p = FLT_PINFTY;
    else if (!soap_tag_cmp(s, "-INF"))
      *p = FLT_NINFTY;
    else if (!soap_tag_cmp(s, "NaN"))
      *p = FLT_NAN;
    else
    {
/* On some systems strtof requires -std=c99 or does not even link: so we try to use strtod first */
#if defined(HAVE_STRTOD_L)
      char *r;
      *p = (float)strtod_l(s, &r, soap->c_locale);
      if (*r)
#elif defined(HAVE_STRTOD)
      char *r;
      *p = (float)strtod(s, &r);
      if (*r)
#elif defined(HAVE_STRTOF_L)
      char *r;
      *p = strtof_l((char*)s, &r, soap->c_locale);
      if (*r)
#elif defined(HAVE_STRTOF)
      char *r;
      *p = strtof((char*)s, &r);
      if (*r)
#endif
      {
#if defined(HAVE_SSCANF_L) && !defined(HAVE_STRTOF_L) && !defined(HAVE_STRTOD_L)
        if (sscanf_l(s, soap->c_locale, "%g", p) != 1)
          soap->error = SOAP_TYPE;
#elif defined(HAVE_SSCANF)
        if (sscanf(s, "%g", p) != 1)
          soap->error = SOAP_TYPE;
#else
        soap->error = SOAP_TYPE;
#endif
      }
    }
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x6518b
movq -0x18(%rbp), %rax
cmpb $0x0, (%rax)
jne 0x65092
movq -0x10(%rbp), %rax
movl $0x4, 0x19214(%rax)
movl $0x4, -0x4(%rbp)
jmp 0x65198
movq -0x18(%rbp), %rdi
leaq 0x15aab(%rip), %rsi     # 0x7ab48
callq 0x4ff40
cmpl $0x0, %eax
jne 0x650bc
movq -0x20(%rbp), %rax
movss 0x154d5(%rip), %xmm0    # 0x7a588
movss %xmm0, (%rax)
jmp 0x65189
movq -0x18(%rbp), %rdi
leaq 0x15a80(%rip), %rsi     # 0x7ab47
callq 0x4ff40
cmpl $0x0, %eax
jne 0x650e6
movq -0x20(%rbp), %rax
movss 0x154ab(%rip), %xmm0    # 0x7a588
movss %xmm0, (%rax)
jmp 0x65187
movq -0x18(%rbp), %rdi
leaq 0x15a51(%rip), %rsi     # 0x7ab42
callq 0x4ff40
cmpl $0x0, %eax
jne 0x6510d
movq -0x20(%rbp), %rax
movss 0x15485(%rip), %xmm0    # 0x7a58c
movss %xmm0, (%rax)
jmp 0x65185
movq -0x18(%rbp), %rdi
leaq 0x15a26(%rip), %rsi     # 0x7ab3e
callq 0x4ff40
cmpl $0x0, %eax
jne 0x65134
movss 0x152a6(%rip), %xmm0    # 0x7a3d0
movq -0x20(%rbp), %rax
movss %xmm0, (%rax)
jmp 0x65183
movq -0x18(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x30a0
cvtsd2ss %xmm0, %xmm0
movq -0x20(%rbp), %rax
movss %xmm0, (%rax)
movq -0x28(%rbp), %rax
cmpb $0x0, (%rax)
je 0x65181
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rdx
leaq 0x159e7(%rip), %rsi     # 0x7ab4c
movb $0x0, %al
callq 0x32a0
cmpl $0x1, %eax
je 0x6517f
movq -0x10(%rbp), %rax
movl $0x4, 0x19214(%rax)
jmp 0x65181
jmp 0x65183
jmp 0x65185
jmp 0x65187
jmp 0x65189
jmp 0x6518b
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_infloat
SOAP_FMAC1
float *
SOAP_FMAC2
soap_infloat(struct soap *soap, const char *tag, float *p, const char *type, int t)
{ if (soap_element_begin_in(soap, tag, 0, NULL))
    return NULL;
#ifndef WITH_LEAN
  if (*soap->type != '\0' && soap_isnumeric(soap, type))
    return NULL;
#endif
  p = (float*)soap_id_enter(soap, soap->id, p, t, sizeof(float), 0, NULL, NULL, NULL);
  if (*soap->href)
    p = (float*)soap_id_forward(soap, soap->href, p, 0, t, 0, sizeof(float), 0, NULL);
  else if (p)
  { if (soap_s2float(soap, soap_value(soap), p))
      return NULL;
  }
  if (soap->body && soap_element_end_in(soap, tag))
    return NULL;
  return p;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movl %r8d, -0x2c(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
xorl %edx, %edx
xorl %eax, %eax
movl %eax, %ecx
callq 0x53390
cmpl $0x0, %eax
je 0x651f1
movq $0x0, -0x8(%rbp)
jmp 0x65322
movq -0x10(%rbp), %rax
movsbl 0x17538(%rax), %eax
cmpl $0x0, %eax
je 0x65220
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0x65330
cmpl $0x0, %eax
je 0x65220
movq $0x0, -0x8(%rbp)
jmp 0x65322
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x16d38, %rsi          # imm = 0x16D38
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %ecx
movl $0x4, %r8d
xorl %r9d, %r9d
xorl %eax, %eax
movq $0x0, (%rsp)
movq $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5cbc0
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpb $0x0, 0x17138(%rax)
je 0x652b3
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17138, %rsi          # imm = 0x17138
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %r8d
xorl %eax, %eax
movl %eax, %ecx
xorl %r9d, %r9d
movq $0x4, (%rsp)
movl $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5c9a0
movq %rax, -0x20(%rbp)
jmp 0x652ee
cmpq $0x0, -0x20(%rbp)
je 0x652ec
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rdi
callq 0x63f30
movq -0x38(%rbp), %rdi
movq %rax, %rsi
movq -0x20(%rbp), %rdx
callq 0x65050
cmpl $0x0, %eax
je 0x652ea
movq $0x0, -0x8(%rbp)
jmp 0x65322
jmp 0x652ec
jmp 0x652ee
movq -0x10(%rbp), %rax
movswl 0x6106(%rax), %eax
cmpl $0x0, %eax
je 0x6531a
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x53660
cmpl $0x0, %eax
je 0x6531a
movq $0x0, -0x8(%rbp)
jmp 0x65322
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_double2s
SOAP_FMAC1
const char*
SOAP_FMAC2
soap_double2s(struct soap *soap, double n)
{ char *s;
  if (soap_isnan(n))
    return "NaN";
  if (soap_ispinfd(n))
    return "INF";
  if (soap_isninfd(n))
    return "-INF";
  s = soap->tmpbuf;
#if defined(HAVE_SPRINTF_L)
  sprintf_l(s, soap->c_locale, soap->double_format, n);
#else
  sprintf(s, soap->double_format, n);
  s = strchr(s, ',');	/* convert decimal comma to DP */
  if (s)
    *s = '.';
#endif
  return soap->tmpbuf;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movsd %xmm0, -0x18(%rbp)
movsd -0x18(%rbp), %xmm0
ucomisd %xmm0, %xmm0
setp %al
testb $0x1, %al
jne 0x655f3
jmp 0x65603
leaq 0x15544(%rip), %rax     # 0x7ab3e
movq %rax, -0x8(%rbp)
jmp 0x65693
movsd -0x18(%rbp), %xmm0
movsd 0x14f80(%rip), %xmm1    # 0x7a590
ucomisd %xmm1, %xmm0
jb 0x65623
leaq 0x1552b(%rip), %rax     # 0x7ab48
movq %rax, -0x8(%rbp)
jmp 0x65693
movsd 0x14f6d(%rip), %xmm0    # 0x7a598
ucomisd -0x18(%rbp), %xmm0
jb 0x6563f
leaq 0x15509(%rip), %rax     # 0x7ab42
movq %rax, -0x8(%rbp)
jmp 0x65693
movq -0x10(%rbp), %rax
addq $0x16538, %rax          # imm = 0x16538
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rdi
movq -0x10(%rbp), %rax
movq 0x18(%rax), %rsi
movsd -0x18(%rbp), %xmm0
movb $0x1, %al
callq 0x3370
movq -0x20(%rbp), %rdi
movl $0x2c, %esi
callq 0x3130
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x65685
movq -0x20(%rbp), %rax
movb $0x2e, (%rax)
movq -0x10(%rbp), %rax
addq $0x16538, %rax          # imm = 0x16538
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2double
SOAP_FMAC2
soap_s2double(struct soap *soap, const char *s, double *p)
{ if (s)
  { if (!*s)
      return soap->error = SOAP_TYPE;
    if (!soap_tag_cmp(s, "INF"))
      *p = DBL_PINFTY;
    else if (!soap_tag_cmp(s, "+INF"))
      *p = DBL_PINFTY;
    else if (!soap_tag_cmp(s, "-INF"))
      *p = DBL_NINFTY;
    else if (!soap_tag_cmp(s, "NaN"))
      *p = DBL_NAN;
    else
    {
#if defined(HAVE_STRTOD_L)
      char *r;
      *p = strtod_l(s, &r, soap->c_locale);
      if (*r)
#elif defined(HAVE_STRTOD)
      char *r;
      *p = strtod(s, &r);
      if (*r)
#endif
      {
#if defined(HAVE_SSCANF_L) && !defined(HAVE_STRTOF_L) && !defined(HAVE_STRTOD_L)
        if (sscanf_l(s, soap->c_locale, "%lg", p) != 1)
          soap->error = SOAP_TYPE;
#elif defined(HAVE_SSCANF)
        if (sscanf(s, "%lg", p) != 1)
          soap->error = SOAP_TYPE;
#else
        soap->error = SOAP_TYPE;
#endif
      }
    }
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x65887
movq -0x18(%rbp), %rax
cmpb $0x0, (%rax)
jne 0x65792
movq -0x10(%rbp), %rax
movl $0x4, 0x19214(%rax)
movl $0x4, -0x4(%rbp)
jmp 0x65894
movq -0x18(%rbp), %rdi
leaq 0x153ab(%rip), %rsi     # 0x7ab48
callq 0x4ff40
cmpl $0x0, %eax
jne 0x657bc
movq -0x20(%rbp), %rax
movsd 0x14ddd(%rip), %xmm0    # 0x7a590
movsd %xmm0, (%rax)
jmp 0x65885
movq -0x18(%rbp), %rdi
leaq 0x15380(%rip), %rsi     # 0x7ab47
callq 0x4ff40
cmpl $0x0, %eax
jne 0x657e6
movq -0x20(%rbp), %rax
movsd 0x14db3(%rip), %xmm0    # 0x7a590
movsd %xmm0, (%rax)
jmp 0x65883
movq -0x18(%rbp), %rdi
leaq 0x15351(%rip), %rsi     # 0x7ab42
callq 0x4ff40
cmpl $0x0, %eax
jne 0x6580d
movq -0x20(%rbp), %rax
movsd 0x14d91(%rip), %xmm0    # 0x7a598
movsd %xmm0, (%rax)
jmp 0x65881
movq -0x18(%rbp), %rdi
leaq 0x15326(%rip), %rsi     # 0x7ab3e
callq 0x4ff40
cmpl $0x0, %eax
jne 0x65834
movsd 0x14ba6(%rip), %xmm0    # 0x7a3d0
movq -0x20(%rbp), %rax
movsd %xmm0, (%rax)
jmp 0x6587f
movq -0x18(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x30a0
movq -0x20(%rbp), %rax
movsd %xmm0, (%rax)
movq -0x28(%rbp), %rax
cmpb $0x0, (%rax)
je 0x6587d
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rdx
leaq 0x152ee(%rip), %rsi     # 0x7ab4f
movb $0x0, %al
callq 0x32a0
cmpl $0x1, %eax
je 0x6587b
movq -0x10(%rbp), %rax
movl $0x4, 0x19214(%rax)
jmp 0x6587d
jmp 0x6587f
jmp 0x65881
jmp 0x65883
jmp 0x65885
jmp 0x65887
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_indouble
SOAP_FMAC1
double *
SOAP_FMAC2
soap_indouble(struct soap *soap, const char *tag, double *p, const char *type, int t)
{ if (soap_element_begin_in(soap, tag, 0, NULL))
    return NULL;
#ifndef WITH_LEAN
  if (*soap->type != '\0' && soap_isnumeric(soap, type))
    return NULL;
#endif
  p = (double*)soap_id_enter(soap, soap->id, p, t, sizeof(double), 0, NULL, NULL, NULL);
  if (*soap->href)
    p = (double*)soap_id_forward(soap, soap->href, p, 0, t, 0, sizeof(double), 0, NULL);
  else if (p)
  { if (soap_s2double(soap, soap_value(soap), p))
      return NULL;
  }
  if (soap->body && soap_element_end_in(soap, tag))
    return NULL;
  return p;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movl %r8d, -0x2c(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
xorl %edx, %edx
xorl %eax, %eax
movl %eax, %ecx
callq 0x53390
cmpl $0x0, %eax
je 0x658e1
movq $0x0, -0x8(%rbp)
jmp 0x65a12
movq -0x10(%rbp), %rax
movsbl 0x17538(%rax), %eax
cmpl $0x0, %eax
je 0x65910
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0x65330
cmpl $0x0, %eax
je 0x65910
movq $0x0, -0x8(%rbp)
jmp 0x65a12
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x16d38, %rsi          # imm = 0x16D38
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %ecx
movl $0x8, %r8d
xorl %r9d, %r9d
xorl %eax, %eax
movq $0x0, (%rsp)
movq $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5cbc0
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpb $0x0, 0x17138(%rax)
je 0x659a3
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17138, %rsi          # imm = 0x17138
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %r8d
xorl %eax, %eax
movl %eax, %ecx
xorl %r9d, %r9d
movq $0x8, (%rsp)
movl $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5c9a0
movq %rax, -0x20(%rbp)
jmp 0x659de
cmpq $0x0, -0x20(%rbp)
je 0x659dc
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rdi
callq 0x63f30
movq -0x38(%rbp), %rdi
movq %rax, %rsi
movq -0x20(%rbp), %rdx
callq 0x65750
cmpl $0x0, %eax
je 0x659da
movq $0x0, -0x8(%rbp)
jmp 0x65a12
jmp 0x659dc
jmp 0x659de
movq -0x10(%rbp), %rax
movswl 0x6106(%rax), %eax
cmpl $0x0, %eax
je 0x65a0a
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x53660
cmpl $0x0, %eax
je 0x65a0a
movq $0x0, -0x8(%rbp)
jmp 0x65a12
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_outunsignedByte
SOAP_FMAC2
soap_outunsignedByte(struct soap *soap, const char *tag, int id, const unsigned char *p, const char *type, int n)
{ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, p, n), type)
   || soap_string_out(soap, soap_unsignedLong2s(soap, (unsigned long)*p), 0))
    return soap->error;
  return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movl %r9d, -0x34(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
movq -0x28(%rbp), %rdx
movl -0x34(%rbp), %ecx
callq 0x5b5a0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl %eax, %edx
movq -0x30(%rbp), %rcx
callq 0x5bbd0
cmpl $0x0, %eax
jne 0x65b17
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rax
movzbl (%rax), %eax
movl %eax, %esi
callq 0x65a50
movq -0x50(%rbp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x61120
cmpl $0x0, %eax
je 0x65b26
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x65b36
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x5bcc0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2unsignedByte
SOAP_FMAC2
soap_s2unsignedByte(struct soap *soap, const char *s, unsigned char *p)
{ if (s)
  { unsigned long n;
    char *r;
    n = soap_strtoul(s, &r, 10);
    if (s == r || *r || n > 255)
      soap->error = SOAP_TYPE;
    *p = (unsigned char)n;
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x65bab
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
movl $0xa, %edx
callq 0x3350
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpq -0x28(%rbp), %rax
je 0x65b91
movq -0x28(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
jne 0x65b91
cmpq $0xff, -0x20(%rbp)
jbe 0x65b9f
movq -0x8(%rbp), %rax
movl $0x4, 0x19214(%rax)
movq -0x20(%rbp), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, (%rax)
movq -0x8(%rbp), %rax
movl 0x19214(%rax), %eax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_inunsignedByte
SOAP_FMAC1
unsigned char *
SOAP_FMAC2
soap_inunsignedByte(struct soap *soap, const char *tag, unsigned char *p, const char *type, int t)
{ if (soap_element_begin_in(soap, tag, 0, NULL))
    return NULL;
#ifndef WITH_LEAN
  if (*soap->type
   && soap_match_tag(soap, soap->type, type)
   && soap_match_tag(soap, soap->type, ":unsignedByte"))
  { soap->error = SOAP_TYPE;
    soap_revert(soap);
    return NULL;
  }
#endif
  p = (unsigned char*)soap_id_enter(soap, soap->id, p, t, sizeof(unsigned char), 0, NULL, NULL, NULL);
  if (*soap->href)
    p = (unsigned char*)soap_id_forward(soap, soap->href, p, 0, t, 0, sizeof(unsigned char), 0, NULL);
  else if (p)
  { if (soap_s2unsignedByte(soap, soap_value(soap), p))
      return NULL;
  }
  if (soap->body && soap_element_end_in(soap, tag))
    return NULL;
  return p;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movl %r8d, -0x2c(%rbp)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
xorl %edx, %edx
xorl %eax, %eax
movl %eax, %ecx
callq 0x53390
cmpl $0x0, %eax
je 0x65c01
movq $0x0, -0x8(%rbp)
jmp 0x65d74
movq -0x10(%rbp), %rax
movsbl 0x17538(%rax), %eax
cmpl $0x0, %eax
je 0x65c72
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
movq -0x28(%rbp), %rdx
callq 0x55510
cmpl $0x0, %eax
je 0x65c72
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x14f0f(%rip), %rdx     # 0x7ab53
callq 0x55510
cmpl $0x0, %eax
je 0x65c72
movq -0x10(%rbp), %rax
movl $0x4, 0x19214(%rax)
movq -0x10(%rbp), %rdi
callq 0x61db0
movq $0x0, -0x8(%rbp)
jmp 0x65d74
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x16d38, %rsi          # imm = 0x16D38
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %ecx
movl $0x1, %r8d
xorl %r9d, %r9d
xorl %eax, %eax
movq $0x0, (%rsp)
movq $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5cbc0
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpb $0x0, 0x17138(%rax)
je 0x65d05
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17138, %rsi          # imm = 0x17138
movq -0x20(%rbp), %rdx
movl -0x2c(%rbp), %r8d
xorl %eax, %eax
movl %eax, %ecx
xorl %r9d, %r9d
movq $0x1, (%rsp)
movl $0x0, 0x8(%rsp)
movq $0x0, 0x10(%rsp)
callq 0x5c9a0
movq %rax, -0x20(%rbp)
jmp 0x65d40
cmpq $0x0, -0x20(%rbp)
je 0x65d3e
movq -0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rdi
callq 0x63f30
movq -0x38(%rbp), %rdi
movq %rax, %rsi
movq -0x20(%rbp), %rdx
callq 0x65b40
cmpl $0x0, %eax
je 0x65d3c
movq $0x0, -0x8(%rbp)
jmp 0x65d74
jmp 0x65d3e
jmp 0x65d40
movq -0x10(%rbp), %rax
movswl 0x6106(%rax), %eax
cmpl $0x0, %eax
je 0x65d6c
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x53660
cmpl $0x0, %eax
je 0x65d6c
movq $0x0, -0x8(%rbp)
jmp 0x65d74
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2unsignedShort
SOAP_FMAC2
soap_s2unsignedShort(struct soap *soap, const char *s, unsigned short *p)
{ if (s)
  { unsigned long n;
    char *r;
    n = soap_strtoul(s, &r, 10);
    if (s == r || *r || n > 65535)
      soap->error = SOAP_TYPE;
    *p = (unsigned short)n;
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x65ecd
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
movl $0xa, %edx
callq 0x3350
movq %rax, -0x20(%rbp)
movq -0x10(%rbp), %rax
cmpq -0x28(%rbp), %rax
je 0x65eb1
movq -0x28(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
jne 0x65eb1
cmpq $0xffff, -0x20(%rbp)    # imm = 0xFFFF
jbe 0x65ebf
movq -0x8(%rbp), %rax
movl $0x4, 0x19214(%rax)
movq -0x20(%rbp), %rax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, (%rax)
movq -0x8(%rbp), %rax
movl 0x19214(%rax), %eax
addq $0x30, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_s2unsignedInt
SOAP_FMAC2
soap_s2unsignedInt(struct soap *soap, const char *s, unsigned int *p)
{ if (s)
  { char *r;
#ifndef WITH_NOIO
#ifndef WITH_LEAN
    soap_reset_errno;
#endif
#endif
    *p = (unsigned int)soap_strtoul(s, &r, 10);
    if ((s == r && (soap->mode & SOAP_XML_STRICT)) || *r
#ifndef WITH_NOIO
#ifndef WITH_LEAN
     || soap_errno == SOAP_ERANGE
#endif
#endif
    )
      soap->error = SOAP_TYPE;
  }
  return soap->error;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x66231
callq 0x3060
movl $0x0, (%rax)
movq -0x10(%rbp), %rdi
leaq -0x20(%rbp), %rsi
movl $0xa, %edx
callq 0x3350
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, (%rax)
movq -0x10(%rbp), %rax
cmpq -0x20(%rbp), %rax
jne 0x6620b
movq -0x8(%rbp), %rax
movl 0x4(%rax), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
jne 0x66221
movq -0x20(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x0, %eax
jne 0x66221
callq 0x3060
cmpl $0x22, (%rax)
jne 0x6622f
movq -0x8(%rbp), %rax
movl $0x4, 0x19214(%rax)
jmp 0x66231
movq -0x8(%rbp), %rax
movl 0x19214(%rax), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_outunsignedLong
SOAP_FMAC2
soap_outunsignedLong(struct soap *soap, const char *tag, int id, const unsigned long *p, const char *type, int n)
{ if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, p, n), type)
   || soap_string_out(soap, soap_unsignedLong2s(soap, *p), 0))
    return soap->error;
  return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movl %r9d, -0x34(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
movl -0x1c(%rbp), %esi
movq -0x28(%rbp), %rdx
movl -0x34(%rbp), %ecx
callq 0x5b5a0
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
movl %eax, %edx
movq -0x30(%rbp), %rcx
callq 0x5bbd0
cmpl $0x0, %eax
jne 0x664e5
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rax
movq (%rax), %rsi
callq 0x65a50
movq -0x50(%rbp), %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x61120
cmpl $0x0, %eax
je 0x664f4
movq -0x10(%rbp), %rax
movl 0x19214(%rax), %eax
movl %eax, -0x4(%rbp)
jmp 0x66504
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x5bcc0
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)