// File: /workspace/github_c_makefile_star2_O3/loversmile[P]sugarcrm/sugar_soapC.c
// Function: soap_out_SOAP_ENV__Fault
SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Fault *a, const char *type)
{
	const char *soap_tmp_faultcode = soap_QName2s(soap, a->faultcode);
	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Fault), type))
		return soap->error;
	if (soap_out__QName(soap, "faultcode", -1, (char*const*)&soap_tmp_faultcode, ""))
		return soap->error;
	if (soap_out_string(soap, "faultstring", -1, &a->faultstring, ""))
		return soap->error;
	if (soap_out_string(soap, "faultactor", -1, &a->faultactor, ""))
		return soap->error;
	if (soap_out_PointerToSOAP_ENV__Detail(soap, "detail", -1, &a->detail, ""))
		return soap->error;
	if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", -1, &a->SOAP_ENV__Code, ""))
		return soap->error;
	if (soap_out_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", -1, &a->SOAP_ENV__Reason, ""))
		return soap->error;
	if (soap_out_string(soap, "SOAP-ENV:Node", -1, &a->SOAP_ENV__Node, ""))
		return soap->error;
	if (soap_out_string(soap, "SOAP-ENV:Role", -1, &a->SOAP_ENV__Role, ""))
		return soap->error;
	if (soap_out_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", -1, &a->SOAP_ENV__Detail, ""))
		return soap->error;
	return soap_element_end_out(soap, tag);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x10, %rsp
movq %r8, %r12
movq %rcx, %r15
movl %edx, %ebp
movq %rsi, %r14
movq %rdi, %rbx
movq (%rcx), %rsi
callq 0x46400
movq %rax, 0x8(%rsp)
movq %rbx, %rdi
movl %ebp, %esi
movq %r15, %rdx
movl $0xfe, %ecx
callq 0x3f149
movq %rbx, %rdi
movq %r14, %rsi
movl %eax, %edx
movq %r12, %rcx
callq 0x3f670
testl %eax, %eax
jne 0x29549
leaq 0x2805f(%rip), %rsi     # 0x5143e
leaq 0x2934c(%rip), %r8      # 0x52732
leaq 0x8(%rsp), %rcx
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
movl $0x5, %r9d
callq 0x46913
testl %eax, %eax
jne 0x29549
leaq 0x8(%r15), %rcx
leaq 0x28037(%rip), %rsi     # 0x51448
leaq 0x2931a(%rip), %r8      # 0x52732
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
movl $0x4, %r9d
callq 0x46913
testl %eax, %eax
jne 0x29549
leaq 0x10(%r15), %rcx
leaq 0x28016(%rip), %rsi     # 0x51454
leaq 0x292ed(%rip), %r8      # 0x52732
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
movl $0x4, %r9d
callq 0x46913
testl %eax, %eax
jne 0x29549
leaq 0x18(%r15), %rcx
leaq 0x27ff4(%rip), %rsi     # 0x5145f
leaq 0x292c0(%rip), %r8      # 0x52732
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x29574
testl %eax, %eax
jne 0x29549
leaq 0x20(%r15), %rcx
leaq 0x27fd4(%rip), %rsi     # 0x51466
leaq 0x29299(%rip), %r8      # 0x52732
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x295d6
testl %eax, %eax
jne 0x29549
leaq 0x28(%r15), %rcx
leaq 0x27fbb(%rip), %rsi     # 0x51474
leaq 0x29272(%rip), %r8      # 0x52732
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x29638
testl %eax, %eax
jne 0x29549
leaq 0x30(%r15), %rcx
leaq 0x27fa8(%rip), %rsi     # 0x51484
leaq 0x2924f(%rip), %r8      # 0x52732
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
movl $0x4, %r9d
callq 0x46913
testl %eax, %eax
jne 0x29549
leaq 0x38(%r15), %rcx
leaq 0x27f8d(%rip), %rsi     # 0x51492
leaq 0x29226(%rip), %r8      # 0x52732
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
movl $0x4, %r9d
callq 0x46913
testl %eax, %eax
jne 0x29549
addq $0x40, %r15
leaq 0x27f72(%rip), %rsi     # 0x514a0
leaq 0x291fd(%rip), %r8      # 0x52732
movq %rbx, %rdi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
movq %r15, %rcx
callq 0x29574
testl %eax, %eax
je 0x2955c
movl 0x19214(%rbx), %eax
addq $0x10, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movq %rbx, %rdi
movq %r14, %rsi
callq 0x3f6ed
jmp 0x2954f