// File: /workspace/github_c_makefile_star2_O2/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_inLONG64
SOAP_FMAC1
LONG64 *
SOAP_FMAC2
soap_inLONG64(struct soap *soap, const char *tag, LONG64 *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, ":integer")
   && soap_match_tag(soap, soap->type, ":positiveInteger")
   && soap_match_tag(soap, soap->type, ":negativeInteger")
   && soap_match_tag(soap, soap->type, ":nonPositiveInteger")
   && soap_match_tag(soap, soap->type, ":nonNegativeInteger")
   && soap_match_tag(soap, soap->type, ":long")
   && soap_match_tag(soap, soap->type, ":int")
   && 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 = (LONG64*)soap_id_enter(soap, soap->id, p, t, sizeof(LONG64), 0, NULL, NULL, NULL);
  if (*soap->href)
    p = (LONG64*)soap_id_forward(soap, soap->href, p, 0, t, 0, sizeof(LONG64), 0, NULL);
  else if (p)
  { if (soap_s2LONG64(soap, soap_value(soap), p))
      return NULL;
  }
  if (soap->body && soap_element_end_in(soap, tag))
    return NULL;
  return p;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movl %r8d, %ebp
movq %rcx, %r13
movq %rdx, %r15
movq %rsi, %r14
movq %rdi, %rbx
xorl %r12d, %r12d
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x36f8a
testl %eax, %eax
jne 0x406d0
cmpb $0x0, 0x17538(%rbx)
je 0x4062f
leaq 0x17538(%rbx), %r12
movq %rbx, %rdi
movq %r12, %rsi
movq %r13, %rdx
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xd1f5(%rip), %rdx      # 0x4d73e
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xd1e4(%rip), %rdx      # 0x4d747
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xd1db(%rip), %rdx      # 0x4d758
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xd1d2(%rip), %rdx      # 0x4d769
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xd1cc(%rip), %rdx      # 0x4d77d
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xd1ca(%rip), %rdx      # 0x4d791
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xb5de(%rip), %rdx      # 0x4bbbb
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xd140(%rip), %rdx      # 0x4d733
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
leaq 0xb5a9(%rip), %rdx      # 0x4bbb2
movq %rbx, %rdi
movq %r12, %rsi
callq 0x380f0
testl %eax, %eax
je 0x4062f
movl $0x4, 0x19214(%rbx)
movq %rbx, %rdi
callq 0x3ed4a
jmp 0x406cd
leaq 0x16d38(%rbx), %rsi
xorps %xmm0, %xmm0
movups %xmm0, (%rsp)
andq $0x0, 0x10(%rsp)
pushq $0x8
popq %r8
movq %rbx, %rdi
movq %r15, %rdx
movl %ebp, %ecx
xorl %r9d, %r9d
callq 0x3c1b5
movq %rax, %r12
cmpb $0x0, 0x17138(%rbx)
je 0x406ae
leaq 0x17138(%rbx), %rsi
andq $0x0, 0x10(%rsp)
andl $0x0, 0x8(%rsp)
movq $0x8, (%rsp)
movq %rbx, %rdi
movq %r12, %rdx
xorl %ecx, %ecx
movl %ebp, %r8d
xorl %r9d, %r9d
callq 0x3c06d
movq %rax, %r12
cmpw $0x0, 0x6106(%rbx)
je 0x406d0
movq %rbx, %rdi
movq %r14, %rsi
callq 0x3713c
testl %eax, %eax
jne 0x406cd
jmp 0x406d0
testq %r12, %r12
je 0x406e2
movq %rbx, %rdi
callq 0x4010f
movq %rbx, %rdi
movq %rax, %rsi
movq %r12, %rdx
callq 0x404b3
testl %eax, %eax
je 0x40693
xorl %r12d, %r12d
movq %r12, %rax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorl %r12d, %r12d
jmp 0x40693