// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_inULONG64
SOAP_FMAC1
ULONG64 *
SOAP_FMAC2
soap_inULONG64(struct soap *soap, const char *tag, ULONG64 *p, const char *type, int t)
{ if (soap_element_begin_in(soap, tag, 0, NULL))
    return NULL;
  if (*soap->type
   && soap_match_tag(soap, soap->type, type)
   && soap_match_tag(soap, soap->type, ":positiveInteger")
   && soap_match_tag(soap, soap->type, ":nonNegativeInteger")
   && soap_match_tag(soap, soap->type, ":unsignedLong")
   && soap_match_tag(soap, soap->type, ":unsignedInt")
   && soap_match_tag(soap, soap->type, ":unsignedShort")
   && soap_match_tag(soap, soap->type, ":unsignedByte"))
  { soap->error = SOAP_TYPE;
    soap_revert(soap);
    return NULL;
  }
  p = (ULONG64*)soap_id_enter(soap, soap->id, p, t, sizeof(ULONG64), 0, NULL, NULL, NULL);
  if (*soap->href)
    p = (ULONG64*)soap_id_forward(soap, soap->href, p, 0, t, 0, sizeof(ULONG64), 0, NULL);
  else if (p)
  { if (soap_s2ULONG64(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 0x66951
movq $0x0, -0x8(%rbp)
jmp 0x66b78
movq -0x10(%rbp), %rax
movsbl 0x17538(%rax), %eax
cmpl $0x0, %eax
je 0x66a76
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
movq -0x28(%rbp), %rdx
callq 0x55510
cmpl $0x0, %eax
je 0x66a76
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x14152(%rip), %rdx     # 0x7aaee
callq 0x55510
cmpl $0x0, %eax
je 0x66a76
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x14164(%rip), %rdx     # 0x7ab24
callq 0x55510
cmpl $0x0, %eax
je 0x66a76
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x1419d(%rip), %rdx     # 0x7ab81
callq 0x55510
cmpl $0x0, %eax
je 0x66a76
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x14168(%rip), %rdx     # 0x7ab70
callq 0x55510
cmpl $0x0, %eax
je 0x66a76
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x14139(%rip), %rdx     # 0x7ab61
callq 0x55510
cmpl $0x0, %eax
je 0x66a76
movq -0x10(%rbp), %rdi
movq -0x10(%rbp), %rsi
addq $0x17538, %rsi          # imm = 0x17538
leaq 0x1410b(%rip), %rdx     # 0x7ab53
callq 0x55510
cmpl $0x0, %eax
je 0x66a76
movq -0x10(%rbp), %rax
movl $0x4, 0x19214(%rax)
movq -0x10(%rbp), %rdi
callq 0x61db0
movq $0x0, -0x8(%rbp)
jmp 0x66b78
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 0x66b09
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 0x66b44
cmpq $0x0, -0x20(%rbp)
je 0x66b42
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 0x668b0
cmpl $0x0, %eax
je 0x66b40
movq $0x0, -0x8(%rbp)
jmp 0x66b78
jmp 0x66b42
jmp 0x66b44
movq -0x10(%rbp), %rax
movswl 0x6106(%rax), %eax
cmpl $0x0, %eax
je 0x66b70
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x53660
cmpl $0x0, %eax
je 0x66b70
movq $0x0, -0x8(%rbp)
jmp 0x66b78
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)