// File: /workspace/github_c_makefile_star2_O2/dxwc[P]sfeed/sfeed.c
// Function: xmlattr
static void
xmlattr(XMLParser *p, const char *t, size_t tl, const char *n, size_t nl,
	const char *v, size_t vl)
{
	/* handles transforming inline XML to data */
	if (ISINCONTENT(ctx)) {
		if (ctx.contenttype == ContentTypeHTML)
			xmldata(p, v, vl);
		return;
	}

	if (ctx.feedtype == FeedTypeNone)
		return;

	/* content-type may be: Atom: text, xhtml, html or mime-type.
	   MRSS (media:description): plain, html. */
	if (ISCONTENTTAG(ctx)) {
		if (isattr(n, nl, STRP("type"))) {
			if (isattr(v, vl, STRP("html")) ||
			    isattr(v, vl, STRP("xhtml")) ||
			    isattr(v, vl, STRP("text/html")) ||
			    isattr(v, vl, STRP("text/xhtml"))) {
				ctx.contenttype = ContentTypeHTML;
			} else if (isattr(v, vl, STRP("text")) ||
			           isattr(v, vl, STRP("plain")) ||
				   isattr(v, vl, STRP("text/plain"))) {
				ctx.contenttype = ContentTypePlain;
			}
		}
		return;
	}

	if (ctx.feedtype == FeedTypeRSS) {
		if (ctx.tagid == RSSTagEnclosure &&
		    isattr(n, nl, STRP("url")) && ctx.field) {
			string_append(ctx.field, v, vl);
		} else if (ctx.tagid == RSSTagGuid &&
		           isattr(n, nl, STRP("ispermalink")) &&
		           !isattr(v, vl, STRP("true"))) {
			rssidpermalink = 0;
		}
	} else if (ctx.feedtype == FeedTypeAtom) {
		if (ctx.tagid == AtomTagLink &&
		           isattr(n, nl, STRP("rel"))) {
			/* empty or "alternate": other types could be
			   "enclosure", "related", "self" or "via" */
			if (!vl || isattr(v, vl, STRP("alternate")))
				atomlinktype = AtomTagLinkAlternate;
			else if (isattr(v, vl, STRP("enclosure")))
				atomlinktype = AtomTagLinkEnclosure;
			else
				atomlinktype = TagUnknown;
		} else if (ctx.tagid == AtomTagLink &&
		           isattr(n, nl, STRP("href"))) {
			string_append(&atomlink, v, vl);
		}
	}
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %r9, %r14
movq %rcx, %r12
movq 0x30(%rsp), %rbx
movl 0x88e5(%rip), %ecx      # 0xac94
testl %ecx, %ecx
sete %al
movl 0x88de(%rip), %edx      # 0xac98
testl %edx, %edx
setne %sil
orb %al, %sil
je 0x2483
movl 0x88d1(%rip), %eax      # 0xaca0
testl %eax, %eax
je 0x265d
movq %r8, %r15
testl %edx, %edx
setne %dl
testl %ecx, %ecx
sete %cl
andb %dl, %cl
cmpb $0x1, %cl
jne 0x24a6
leaq 0x2c0e(%rip), %rdx      # 0x5004
pushq $0x4
popq %rcx
movq %r12, %rdi
movq %r15, %rsi
callq 0x330d
testl %eax, %eax
je 0x265d
leaq 0x2bfb(%rip), %rdx      # 0x500e
pushq $0x4
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
jne 0x2474
leaq 0x2bec(%rip), %rdx      # 0x5018
pushq $0x5
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
jne 0x2474
leaq 0x2bc4(%rip), %rdx      # 0x5009
pushq $0x9
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
jne 0x2474
leaq 0x2bb5(%rip), %rdx      # 0x5013
pushq $0xa
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
je 0x25ff
movl $0x2, 0x881e(%rip)      # 0xac9c
jmp 0x265d
cmpl $0x2, 0x8812(%rip)      # 0xac9c
jne 0x265d
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x2727
cmpl $0x2, %eax
je 0x2503
cmpl $0x1, %eax
jne 0x265d
movl 0x87d6(%rip), %eax      # 0xac90
cmpl $0x7, %eax
je 0x255a
cmpl $0x9, %eax
jne 0x265d
leaq 0x2b5b(%rip), %rdx      # 0x502e
pushq $0x3
popq %rcx
movq %r12, %rdi
movq %r15, %rsi
callq 0x330d
testl %eax, %eax
setne %al
movq 0x86bb(%rip), %rdi      # 0xaba8
testq %rdi, %rdi
setne %cl
andb %al, %cl
cmpb $0x1, %cl
je 0x25c4
jmp 0x265d
cmpl $0x13, 0x8786(%rip)     # 0xac90
jne 0x265d
leaq 0x2b2c(%rip), %rdx      # 0x5043
pushq $0x3
popq %rcx
movq %r12, %rdi
movq %r15, %rsi
callq 0x330d
testl %eax, %eax
je 0x25a0
testq %rbx, %rbx
je 0x254b
leaq 0x2b12(%rip), %rdx      # 0x5047
pushq $0x9
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
je 0x25da
movl $0x14, 0x8757(%rip)     # 0xacac
jmp 0x265d
leaq 0x2ad1(%rip), %rdx      # 0x5032
pushq $0xb
popq %rcx
movq %r12, %rdi
movq %r15, %rsi
callq 0x330d
testl %eax, %eax
je 0x265d
leaq 0x2ac0(%rip), %rdx      # 0x503e
pushq $0x4
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
jne 0x265d
movb $0x0, 0x870d(%rip)      # 0xaca8
jmp 0x265d
leaq 0x2ab4(%rip), %rdx      # 0x505b
pushq $0x4
popq %rcx
movq %r12, %rdi
movq %r15, %rsi
callq 0x330d
testl %eax, %eax
je 0x265d
leaq 0x86ec(%rip), %rdi      # 0xacb0
movq %r14, %rsi
movq %rbx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x332b
leaq 0x2a70(%rip), %rdx      # 0x5051
pushq $0x9
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
je 0x2656
movl $0x15, 0x86af(%rip)     # 0xacac
jmp 0x265d
leaq 0x2a18(%rip), %rdx      # 0x501e
pushq $0x4
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
jne 0x264a
leaq 0x2a09(%rip), %rdx      # 0x5028
pushq $0x5
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
jne 0x264a
leaq 0x29eb(%rip), %rdx      # 0x5023
pushq $0xa
popq %rcx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x330d
testl %eax, %eax
je 0x265d
movl $0x1, 0x8648(%rip)      # 0xac9c
jmp 0x265d
andl $0x0, 0x864f(%rip)      # 0xacac
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq