// File: /workspace/github_c_makefile_star2_O0/joncampbell123[P]swfhax/swf.c
// Function: swf_reader_read_LINESTYLE2
int swf_reader_read_LINESTYLE2(swf_reader *swf,swf_LINESTYLEARRAY_read *nfo) {
	nfo->Width = swf_reader_read_UI16(swf);
	nfo->StartCapStyle = swf_reader_read_UB(swf,2);
	nfo->JoinStyle = swf_reader_read_UB(swf,2);
	nfo->HasFillFlag = swf_reader_read_UB(swf,1);
	nfo->NoHScaleFlag = swf_reader_read_UB(swf,1);
	nfo->NoVScaleFlag = swf_reader_read_UB(swf,1);
	nfo->PixelHintingFlag = swf_reader_read_UB(swf,1);
	/* Reserved */swf_reader_read_UB(swf,5);
	nfo->NoClose = swf_reader_read_UB(swf,1);
	nfo->EndCapStyle = swf_reader_read_UB(swf,2);
	if (nfo->JoinStyle == 2) nfo->MiterLimitFactor = swf_reader_read_UI16(swf);
	else nfo->MiterLimitFactor = 0;
	if (nfo->HasFillFlag)
		return swf_reader_read_FILLSTYLE(swf,&nfo->FillType);
	else
		swf_reader_read_RGBA(swf,&nfo->Color);

	return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x10(%rbp), %rdi
callq 0x35d0
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x4(%rax)
movq -0x10(%rbp), %rdi
movl $0x2, %esi
callq 0x33d0
movl %eax, %ecx
movq -0x18(%rbp), %rax
movw %cx, %dx
movw 0xa(%rax), %cx
andw $0x3, %dx
andw $-0x4, %cx
orw %dx, %cx
movw %cx, 0xa(%rax)
movq -0x10(%rbp), %rdi
movl $0x2, %esi
callq 0x33d0
movl %eax, %ecx
movq -0x18(%rbp), %rax
movw %cx, %dx
movw 0xa(%rax), %cx
andw $0x3, %dx
shlw $0x2, %dx
andw $-0xd, %cx
orw %dx, %cx
movw %cx, 0xa(%rax)
movq -0x10(%rbp), %rdi
movl $0x1, %esi
callq 0x33d0
movl %eax, %ecx
movq -0x18(%rbp), %rax
movw %cx, %dx
movw 0xa(%rax), %cx
andw $0x1, %dx
shlw $0x4, %dx
andw $-0x11, %cx
orw %dx, %cx
movw %cx, 0xa(%rax)
movq -0x10(%rbp), %rdi
movl $0x1, %esi
callq 0x33d0
movl %eax, %ecx
movq -0x18(%rbp), %rax
movw %cx, %dx
movw 0xa(%rax), %cx
andw $0x1, %dx
shlw $0x5, %dx
andw $-0x21, %cx
orw %dx, %cx
movw %cx, 0xa(%rax)
movq -0x10(%rbp), %rdi
movl $0x1, %esi
callq 0x33d0
movl %eax, %ecx
movq -0x18(%rbp), %rax
movw %cx, %dx
movw 0xa(%rax), %cx
andw $0x1, %dx
shlw $0x6, %dx
andw $-0x41, %cx
orw %dx, %cx
movw %cx, 0xa(%rax)
movq -0x10(%rbp), %rdi
movl $0x1, %esi
callq 0x33d0
movl %eax, %ecx
movq -0x18(%rbp), %rax
movw %cx, %dx
movw 0xa(%rax), %cx
andw $0x1, %dx
shlw $0x7, %dx
andw $0xff7f, %cx            # imm = 0xFF7F
orw %dx, %cx
movw %cx, 0xa(%rax)
movq -0x10(%rbp), %rdi
movl $0x5, %esi
callq 0x33d0
movq -0x10(%rbp), %rdi
movl $0x1, %esi
callq 0x33d0
movl %eax, %ecx
movq -0x18(%rbp), %rax
movw %cx, %dx
movw 0xa(%rax), %cx
andw $0x1, %dx
shlw $0x8, %dx
andw $0xfeff, %cx            # imm = 0xFEFF
orw %dx, %cx
movw %cx, 0xa(%rax)
movq -0x10(%rbp), %rdi
movl $0x2, %esi
callq 0x33d0
movl %eax, %ecx
movq -0x18(%rbp), %rax
movw %cx, %dx
movw 0xa(%rax), %cx
andw $0x3, %dx
shlw $0x9, %dx
andw $0xf9ff, %cx            # imm = 0xF9FF
orw %dx, %cx
movw %cx, 0xa(%rax)
movq -0x18(%rbp), %rax
movw 0xa(%rax), %ax
shrw $0x2, %ax
andw $0x3, %ax
movzwl %ax, %eax
cmpl $0x2, %eax
jne 0x56cf
movq -0x10(%rbp), %rdi
callq 0x35d0
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0xc(%rax)
jmp 0x56d9
movq -0x18(%rbp), %rax
movw $0x0, 0xc(%rax)
movq -0x18(%rbp), %rax
movw 0xa(%rax), %ax
shrw $0x4, %ax
andw $0x1, %ax
movzwl %ax, %eax
cmpl $0x0, %eax
je 0x5707
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
addq $0x10, %rsi
callq 0x5730
movl %eax, -0x4(%rbp)
jmp 0x571f
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
addq $0x6, %rsi
callq 0x3310
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)