// File: /workspace/github_c_makefile_star2_O2/jonof[P]jftekwar/jfbuild/src/engine.c
// Function: transmaskwallscan
static void transmaskwallscan(int x1, int x2)
{
	int x;

	setgotpic(globalpicnum);
	if ((tilesizx[globalpicnum] <= 0) || (tilesizy[globalpicnum] <= 0)) return;

	if (waloff[globalpicnum] == 0) loadtile(globalpicnum);

	setuptvlineasm(globalshiftval);

	x = x1;
	while ((startumost[x+windowx1] > startdmost[x+windowx1]) && (x <= x2)) x++;
#ifndef USING_A_C
	if ((x <= x2) && (x&1)) transmaskvline(x), x++;
	while (x < x2) transmaskvline2(x), x += 2;
#endif
	while (x <= x2) transmaskvline(x), x++;
	faketimerhandler();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %esi, %ebx
movl %edi, %ebp
movswl 0x3cd636(%rip), %edi    # 0x409010
callq 0x2cc16
movswq 0x3cd629(%rip), %rdi    # 0x409010
leaq 0x3cd632(%rip), %rax    # 0x409020
cmpw $0x0, (%rax,%rdi,2)
jle 0x3bbcf
leaq 0x3bede0(%rip), %rax    # 0x3fa7e0
cmpw $0x0, (%rax,%rdi,2)
jle 0x3bbcf
leaq 0x3568ce(%rip), %rax    # 0x3922e0
cmpq $0x0, (%rax,%rdi,8)
jne 0x3ba1e
callq 0x2cc4a
movswl 0x4110c3(%rip), %edi    # 0x44cae8
callq 0x643e6
movslq 0x38f33f(%rip), %rax    # 0x3cad70
movslq %ebp, %rcx
movslq %ebx, %rdx
leal -0x1(%rcx), %esi
addq %rcx, %rax
addq %rax, %rax
leaq 0x38d529(%rip), %r13    # 0x3c8f70
leaq 0x38f332(%rip), %rbp    # 0x3cad80
incl %esi
cmpq %rdx, %rcx
jg 0x3ba6a
movzwl (%rax,%rbp), %edi
incq %rcx
leaq 0x2(%rax), %r8
cmpw %di, (%rax,%r13)
movq %r8, %rax
jg 0x3ba4e
movslq %esi, %r12
leaq 0x561aac(%rip), %r15    # 0x59d520
leaq 0x466495(%rip), %r14    # 0x4a1f10
cmpl %ebx, %r12d
jg 0x3bbde
testl %r12d, %r12d
js 0x3bbc7
cmpl %r12d, 0x61d9c(%rip)    # 0x9d830
jle 0x3bbc7
movl %r12d, %edx
movswl (%r15,%rdx,2), %ecx
movslq 0x38f2c7(%rip), %rsi    # 0x3cad70
addq %r12, %rsi
movswl (%r13,%rsi,2), %eax
movl 0x3910c8(%rip), %edi    # 0x3ccb80
subl %edi, %eax
cmpl %ecx, %eax
cmovll %ecx, %eax
movswl (%r14,%rdx,2), %ecx
movswl (%rbp,%rsi,2), %r8d
subl %edi, %r8d
cmpl %ecx, %r8d
cmovgl %ecx, %r8d
decl %r8d
cmpw %ax, %r8w
jl 0x3bbc7
movswl %ax, %r10d
movslq 0x3cd518(%rip), %rax    # 0x409004
leaq 0x46821d(%rip), %rcx    # 0x4a3d10
movslq (%rcx,%rdx,4), %rcx
movslq 0x3d1d32(%rip), %rsi    # 0x40d830
imulq %rcx, %rsi
shrq $0x10, %rsi
sarl $0x8, %esi
addl 0x3d1d1d(%rip), %esi    # 0x40d82c
testl %esi, %esi
movl $0x0, %edi
cmovlel %edi, %esi
movswl 0x3d1d08(%rip), %edi    # 0x40d828
decl %edi
cmpl %edi, %esi
cmovll %esi, %edi
shll $0x8, %edi
movslq %edi, %rsi
leaq 0x355fac(%rip), %rdi    # 0x391ae0
addq (%rdi,%rax,8), %rsi
movl 0x410fb2(%rip), %edi    # 0x44caf0
imull %ecx, %edi
movl %r10d, %ecx
subl 0x238f52(%rip), %ecx    # 0x274a9c
incl %ecx
imull %edi, %ecx
addl 0x410f97(%rip), %ecx    # 0x44caec
movl 0x410f85(%rip), %eax    # 0x44cae0
leaq 0x46bdae(%rip), %r9     # 0x4a7910
addl (%r9,%rdx,4), %eax
movswq 0x3cd4a2(%rip), %r9     # 0x409010
leaq 0x3cd4ab(%rip), %rdx    # 0x409020
movswl (%rdx,%r9,2), %r11d
cmpl %r11d, %eax
jl 0x3bb85
cltd
idivl %r11d
movl %edx, %eax
movswl %r8w, %edx
leaq 0x3bec50(%rip), %r8     # 0x3fa7e0
movswq (%r8,%r9,2), %r11
movslq %eax, %r8
imulq %r11, %r8
leaq 0x35673d(%rip), %rax    # 0x3922e0
addq (%rax,%r9,8), %r8
movslq %r10d, %rax
leaq 0x3d40ef(%rip), %r9     # 0x40fca0
movslq (%r9,%rax,4), %r9
addq 0x394bd4(%rip), %r9     # 0x3d0790
addq %r12, %r9
subl %r10d, %edx
callq 0x643ed
incq %r12
jmp 0x3ba7b
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x9fd2