// File: /workspace/github_c_makefile_star2_O0/jonof[P]jftekwar/jfbuild/src/engine.c
// Function: slowhline
static void slowhline(int xr, int yp)
{
	int xl, r;

	xl = lastx[yp]; if (xl > xr) return;
	r = horizlookup2[yp-globalhoriz+horizycent];
	asm1 = globalx1*r;
	asm2 = globaly2*r;

	asm3 = (intptr_t)globalpalwritten + ((int)getpalookup((int)mulscale16(r,globvis),globalshade)<<8);
	if (!(globalorientation&256))
	{
		mhline((void *)globalbufplc,globaly1*r+globalxpanning-asm1*(xr-xl),(xr-xl)<<16,0L,
			globalx2*r+globalypanning-asm2*(xr-xl),(void *)(ylookup[yp]+xl+frameoffset));
		return;
	}
	thline((void *)globalbufplc,globaly1*r+globalxpanning-asm1*(xr-xl),(xr-xl)<<16,0L,
		globalx2*r+globalypanning-asm2*(xr-xl),(void *)(ylookup[yp]+xl+frameoffset));
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
movslq -0x8(%rbp), %rcx
leaq 0x429d97(%rip), %rax    # 0x488b90
movl (%rax,%rcx,4), %eax
movl %eax, -0xc(%rbp)
movl -0xc(%rbp), %eax
cmpl -0x4(%rbp), %eax
jle 0x5ee0c
jmp 0x5ef89
movq 0x3f2c55(%rip), %rax    # 0x451a68
movl -0x8(%rbp), %ecx
subl 0x2597e0(%rip), %ecx    # 0x2b85fc
addl 0x3f2c4e(%rip), %ecx    # 0x451a70
movslq %ecx, %rcx
movl (%rax,%rcx,4), %eax
movl %eax, -0x10(%rbp)
movl 0x3f0767(%rip), %eax    # 0x44f598
imull -0x10(%rbp), %eax
movl %eax, 0x3f2b79(%rip)    # 0x4519b4
movl 0x3f0763(%rip), %eax    # 0x44f5a4
imull -0x10(%rbp), %eax
movl %eax, 0x3f2b6d(%rip)    # 0x4519b8
movq 0x3ebf16(%rip), %rax    # 0x44ad68
movq %rax, -0x18(%rbp)
movl -0x10(%rbp), %edi
movl 0x3f0731(%rip), %esi    # 0x44f590
callq 0x39010
movl %eax, %edi
movl 0x3f0720(%rip), %esi    # 0x44f58c
callq 0x5ec70
movl %eax, %ecx
movq -0x18(%rbp), %rax
shll $0x8, %ecx
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, 0x3f2b39(%rip)    # 0x4519c0
movl 0x3ebed3(%rip), %eax    # 0x44ad60
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
jne 0x5ef11
movq 0x3f06e2(%rip), %rdi    # 0x44f580
movl 0x3f06f8(%rip), %esi    # 0x44f59c
imull -0x10(%rbp), %esi
addl 0x429a92(%rip), %esi    # 0x488940
movl 0x3f2b00(%rip), %eax    # 0x4519b4
movl -0x4(%rbp), %ecx
subl -0xc(%rbp), %ecx
imull %ecx, %eax
subl %eax, %esi
movl -0x4(%rbp), %edx
subl -0xc(%rbp), %edx
shll $0x10, %edx
movl 0x3f06d1(%rip), %r8d    # 0x44f5a0
imull -0x10(%rbp), %r8d
addl 0x429a69(%rip), %r8d    # 0x488944
movl 0x3f2ad7(%rip), %eax    # 0x4519b8
movl -0x4(%rbp), %ecx
subl -0xc(%rbp), %ecx
imull %ecx, %eax
subl %eax, %r8d
movslq -0x8(%rbp), %rcx
leaq 0x3f2b88(%rip), %rax    # 0x451a80
movl (%rax,%rcx,4), %eax
addl -0xc(%rbp), %eax
movslq %eax, %r9
addq 0x3b35e8(%rip), %r9     # 0x4124f0
xorl %ecx, %ecx
callq 0xa7bb0
jmp 0x5ef89
movq 0x3f0668(%rip), %rdi    # 0x44f580
movl 0x3f067e(%rip), %esi    # 0x44f59c
imull -0x10(%rbp), %esi
addl 0x429a18(%rip), %esi    # 0x488940
movl 0x3f2a86(%rip), %eax    # 0x4519b4
movl -0x4(%rbp), %ecx
subl -0xc(%rbp), %ecx
imull %ecx, %eax
subl %eax, %esi
movl -0x4(%rbp), %edx
subl -0xc(%rbp), %edx
shll $0x10, %edx
movl 0x3f0657(%rip), %r8d    # 0x44f5a0
imull -0x10(%rbp), %r8d
addl 0x4299ef(%rip), %r8d    # 0x488944
movl 0x3f2a5d(%rip), %eax    # 0x4519b8
movl -0x4(%rbp), %ecx
subl -0xc(%rbp), %ecx
imull %ecx, %eax
subl %eax, %r8d
movslq -0x8(%rbp), %rcx
leaq 0x3f2b0e(%rip), %rax    # 0x451a80
movl (%rax,%rcx,4), %eax
addl -0xc(%rbp), %eax
movslq %eax, %r9
addq 0x3b356e(%rip), %r9     # 0x4124f0
xorl %ecx, %ecx
callq 0xa7cc0
addq $0x20, %rsp
popq %rbp
retq
nop