// File: /workspace/github_c_makefile_star2_O0/jonof[P]jftekwar/src/tekgame.c
// Function: playback
void
playback()
{
     int i, j, k;

     ready2send = 0;
     recstat = 0; i = reccnt;
     while (keystatus[1] == 0)
     {
          while (totalclock >= lockclock+TICSPERFRAME)
          {
               if (i >= reccnt)
               {
                    prepareboard(boardfilename);
                    for(i=connecthead;i>=0;i=connectpoint2[i])
                         initplayersprite((short)i);
                    resettiming(); ototalclock = 0; gotlastpacketclock = 0;
                    i = 0;
               }

               k = 0;
               for(j=connecthead;j>=0;j=connectpoint2[j])
               {
                    fsyncvel[j] = recsyncvel[i][k];
                    fsyncsvel[j] = recsyncsvel[i][k];
                    fsyncangvel[j] = recsyncangvel[i][k];
                    fsyncbits[j] = recsyncbits[i][k];
                    k++;
               }
               movethings(); domovethings();
               i++;
          }
          drawscreen(screenpeek,(totalclock-lockclock)*(65536/TICSPERFRAME));

          if (keystatus[keys[15]] > 0)
          {
               keystatus[keys[15]] = 0;

               screenpeek = connectpoint2[screenpeek];
               if (screenpeek < 0) screenpeek = connecthead;
          }
          if (keystatus[keys[14]] > 0)
          {
               keystatus[keys[14]] = 0;
               dimensionmode[screenpeek]++;
               if (dimensionmode[screenpeek] > 3) dimensionmode[screenpeek] = 1;
               if (dimensionmode[screenpeek] == 2) setview(0L,0L,xdim-1,(ydim-1)>>detailmode);
               if (dimensionmode[screenpeek] == 3) setup3dscreen();
          }
     }

     musicoff();

     uninitmultiplayers();
     uninittimer();
     uninitinput();
     uninitengine();
     uninitsb();
     uninitgroupfile();
     cduninit();
     exit(0);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movb $0x0, 0x11d574(%rip)    # 0x12d7d3
movl $0x0, 0x109e3b(%rip)    # 0x11a0a4
movl 0x11e241(%rip), %eax    # 0x12e4b0
movl %eax, -0x4(%rbp)
leaq 0x367e57(%rip), %rax    # 0x3780d0
movsbl 0x1(%rax), %eax
cmpl $0x0, %eax
jne 0x10565
jmp 0x10288
leaq 0x596089(%rip), %rax    # 0x5a6318
movl (%rax), %eax
movl 0x11d571(%rip), %ecx    # 0x12d808
addl $0x3, %ecx
cmpl %ecx, %eax
jl 0x10400
movl -0x4(%rbp), %eax
cmpl 0x11e205(%rip), %eax    # 0x12e4b0
jl 0x1030b
leaq 0x11e51c(%rip), %rdi    # 0x12e7d0
callq 0x22220
leaq 0x794c90(%rip), %rax    # 0x7a4f50
movl (%rax), %eax
movl %eax, -0x4(%rbp)
cmpl $0x0, -0x4(%rbp)
jl 0x102e9
movl -0x4(%rbp), %eax
movswl %ax, %edi
callq 0x24f80
movslq -0x4(%rbp), %rcx
leaq 0x794c7f(%rip), %rax    # 0x7a4f60
movl (%rax,%rcx,4), %eax
movl %eax, -0x4(%rbp)
jmp 0x102c5
movb $0x0, %al
callq 0x9660
movl $0x0, 0x11d4da(%rip)    # 0x12d7d4
movl $0x0, 0x11d4d4(%rip)    # 0x12d7d8
movl $0x0, -0x4(%rbp)
movl $0x0, -0xc(%rbp)
leaq 0x794c37(%rip), %rax    # 0x7a4f50
movl (%rax), %eax
movl %eax, -0x8(%rbp)
cmpl $0x0, -0x8(%rbp)
jl 0x103e8
movslq -0x4(%rbp), %rcx
leaq 0x12b8ed(%rip), %rax    # 0x13bc20
shlq %rcx
addq %rcx, %rax
movslq -0xc(%rbp), %rcx
movb (%rax,%rcx), %dl
movslq -0x8(%rbp), %rcx
leaq 0x11e1c5(%rip), %rax    # 0x12e510
movb %dl, (%rax,%rcx)
movslq -0x4(%rbp), %rcx
leaq 0x1338c7(%rip), %rax    # 0x143c20
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0xc(%rbp), %rcx
movw (%rax,%rcx,2), %dx
movslq -0x8(%rbp), %rcx
leaq 0x11e1ed(%rip), %rax    # 0x12e560
movw %dx, (%rax,%rcx,2)
movslq -0x4(%rbp), %rcx
leaq 0x14389e(%rip), %rax    # 0x153c20
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0xc(%rbp), %rcx
movw (%rax,%rcx,2), %dx
movslq -0x8(%rbp), %rcx
leaq 0x11e224(%rip), %rax    # 0x12e5c0
movw %dx, (%rax,%rcx,2)
movslq -0x4(%rbp), %rcx
leaq 0x153875(%rip), %rax    # 0x163c20
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0xc(%rbp), %rcx
movw (%rax,%rcx,2), %dx
movslq -0x8(%rbp), %rcx
leaq 0x11e23b(%rip), %rax    # 0x12e600
movw %dx, (%rax,%rcx,2)
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
movslq -0x8(%rbp), %rcx
leaq 0x794b83(%rip), %rax    # 0x7a4f60
movl (%rax,%rcx,4), %eax
movl %eax, -0x8(%rbp)
jmp 0x1031e
callq 0xe1c0
callq 0xe330
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x10288
movw 0x11d3d7(%rip), %ax     # 0x12d7de
leaq 0x595f0a(%rip), %rcx    # 0x5a6318
movl (%rcx), %ecx
subl 0x11d3f2(%rip), %ecx    # 0x12d808
imull $0x5555, %ecx, %esi     # imm = 0x5555
movswl %ax, %edi
callq 0xb170
movslq 0x109b31(%rip), %rcx    # 0x119f5c
leaq 0x367c9e(%rip), %rax    # 0x3780d0
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
jle 0x10484
movslq 0x109b1a(%rip), %rcx    # 0x119f5c
leaq 0x367c87(%rip), %rax    # 0x3780d0
movb $0x0, (%rax,%rcx)
movswq 0x11d389(%rip), %rcx    # 0x12d7de
leaq 0x794b04(%rip), %rax    # 0x7a4f60
movl (%rax,%rcx,4), %eax
movw %ax, 0x11d378(%rip)     # 0x12d7de
movswl 0x11d371(%rip), %eax    # 0x12d7de
cmpl $0x0, %eax
jge 0x10482
leaq 0x794ad7(%rip), %rax    # 0x7a4f50
movl (%rax), %eax
movw %ax, 0x11d35c(%rip)     # 0x12d7de
jmp 0x10484
movslq 0x109acd(%rip), %rcx    # 0x119f58
leaq 0x367c3e(%rip), %rax    # 0x3780d0
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
jle 0x10560
movslq 0x109ab2(%rip), %rcx    # 0x119f58
leaq 0x367c23(%rip), %rax    # 0x3780d0
movb $0x0, (%rax,%rcx)
movswq 0x11d325(%rip), %rcx    # 0x12d7de
leaq 0x11e3c0(%rip), %rax    # 0x12e880
movb (%rax,%rcx), %dl
addb $0x1, %dl
leaq 0x11e3b3(%rip), %rax    # 0x12e880
movb %dl, (%rax,%rcx)
movswq 0x11d306(%rip), %rcx    # 0x12d7de
leaq 0x11e3a1(%rip), %rax    # 0x12e880
movsbl (%rax,%rcx), %eax
cmpl $0x3, %eax
jle 0x104fb
movswq 0x11d2ee(%rip), %rcx    # 0x12d7de
leaq 0x11e389(%rip), %rax    # 0x12e880
movb $0x1, (%rax,%rcx)
movswq 0x11d2db(%rip), %rcx    # 0x12d7de
leaq 0x11e376(%rip), %rax    # 0x12e880
movsbl (%rax,%rcx), %eax
cmpl $0x2, %eax
jne 0x1053f
leaq 0x5efb02(%rip), %rax    # 0x60001c
movl (%rax), %edx
subl $0x1, %edx
leaq 0x5efafa(%rip), %rax    # 0x600020
movl (%rax), %eax
subl $0x1, %eax
movsbl 0x11d2a0(%rip), %ecx    # 0x12d7d2
sarl %cl, %eax
movl %eax, %ecx
xorl %esi, %esi
movl %esi, %edi
callq 0x67180
movswq 0x11d297(%rip), %rcx    # 0x12d7de
leaq 0x11e332(%rip), %rax    # 0x12e880
movsbl (%rax,%rcx), %eax
cmpl $0x3, %eax
jne 0x1055e
movb $0x0, %al
callq 0x19da0
jmp 0x10560
jmp 0x10272
callq 0x26ad0
callq 0x875c0
callq 0xc22e0
callq 0xc2290
callq 0x52e50
callq 0x26a00
callq 0x4d390
callq 0x9d30
xorl %edi, %edi
callq 0x88d0
nopw %cs:(%rax,%rax)