// File: /workspace/github_c_makefile_star2_O0/olcaytaner[P]Isell/image.c
// Function: load_image
void load_image(char* fname)
{
 int i, j, objecttype, legendposition, coloringtype, fonttype, colortype;
 FILE* infile;
 char buffer[READLINELENGTH]; 
 clear_image();
 infile = fopen(fname, "r");
 fscanf(infile, "%d %d %d %d", &(img.width), &(img.height), &(img.objectcount), &coloringtype);
 img.groupcoloring = coloringtype;
 /* Load x axis */
 fscanf(infile, "%d %d %d", &(img.xaxis.available), &(img.xaxis.namesavailable), &(img.xaxis.limitsset));
 fscanf(infile, "%s", buffer);
 img.xaxis.label = strcopy(img.xaxis.label, buffer);
 fscanf(infile, "%d %d %lf %lf", &(img.xaxis.lim.division), &(img.xaxis.lim.precision), &(img.xaxis.lim.min), &(img.xaxis.lim.max));
 fscanf(infile, "%d %lf %d %d", &(img.xaxis.labelfnt.dashedtype), &(img.xaxis.labelfnt.fontsize), &fonttype, &colortype);
 img.xaxis.labelfnt.fontname = fonttype;
 img.xaxis.labelfnt.fontcolor = colortype;
 fscanf(infile, "%d %lf %d %d", &(img.xaxis.axisfnt.dashedtype), &(img.xaxis.axisfnt.fontsize), &fonttype, &colortype);
 img.xaxis.axisfnt.fontname = fonttype;
 img.xaxis.axisfnt.fontcolor = colortype;
 if (img.xaxis.namesavailable)
  {
   img.xaxis.names = safemalloc(img.xaxis.lim.division * sizeof(char *), "load_image", 12);
   for (i = 0; i < img.xaxis.lim.division; i++)
    {
     fscanf(infile, "%s", buffer);
     img.xaxis.names[i] = strcopy(img.xaxis.names[i], buffer);
    }
  }
 else
   img.xaxis.names = NULL;
 /* Load y axis */
 fscanf(infile, "%d %d %d", &(img.yaxis.available), &(img.yaxis.namesavailable), &(img.yaxis.limitsset));
 if (img.yaxis.available)
  {
   fscanf(infile, "%s", buffer);
   img.yaxis.label = strcopy(img.yaxis.label, buffer);
   fscanf(infile, "%d %d %lf %lf", &(img.yaxis.lim.division), &(img.yaxis.lim.precision), &(img.yaxis.lim.min), &(img.yaxis.lim.max));
   fscanf(infile, "%d %lf %d %d", &(img.yaxis.labelfnt.dashedtype), &(img.yaxis.labelfnt.fontsize), &fonttype, &colortype);
   img.yaxis.labelfnt.fontname = fonttype;
   img.yaxis.labelfnt.fontcolor = colortype;
   fscanf(infile, "%d %lf %d %d", &(img.yaxis.axisfnt.dashedtype), &(img.yaxis.axisfnt.fontsize), &fonttype, &colortype);
   img.yaxis.axisfnt.fontname = fonttype;
   img.yaxis.axisfnt.fontcolor = colortype;
   if (img.yaxis.namesavailable)
    {
     img.yaxis.names = safemalloc(img.yaxis.lim.division * sizeof(char *), "load_image", 12);
     for (i = 0; i < img.yaxis.lim.division; i++)
      {
       fscanf(infile, "%s", buffer);
       img.yaxis.names[i] = strcopy(img.yaxis.names[i], buffer);
      }
    }
   else
     img.yaxis.names = NULL;
  }
 else
  {
   img.yaxis.label = NULL;
   img.yaxis.namesavailable = BOOLEAN_FALSE;
   img.yaxis.names = NULL;
  }
 /* Load Objects */
 img.objects = safemalloc(img.objectcount * sizeof(Object), "load_image", 25);
 for (i = 0; i < img.objectcount; i++)
  {
   fscanf(infile, "%d %d %d", &objecttype, &(img.objects[i].index), &(img.objects[i].groupindex));
   img.objects[i].type = objecttype;
   fscanf(infile, "%d %lf %d %d", &(img.objects[i].fnt.dashedtype), &(img.objects[i].fnt.fontsize), &fonttype, &colortype);
   img.objects[i].fnt.fontname = fonttype;
   img.objects[i].fnt.fontcolor = colortype;
   switch (img.objects[i].type)
    {
     case      OBJECT_LINE:fscanf(infile, "%lf %lf %lf %lf", &(img.objects[i].obje.li.downright.x), &(img.objects[i].obje.li.downright.y), &(img.objects[i].obje.li.upleft.x), &(img.objects[i].obje.li.upleft.y));
                           break;
     case    OBJECT_CIRCLE:fscanf(infile, "%lf %lf %lf", &(img.objects[i].obje.ci.center.x), &(img.objects[i].obje.ci.center.y), &(img.objects[i].obje.ci.radius));
                           break;
     case      OBJECT_POINT:
     case     OBJECT_STRING:
     case OBJECT_NAMEDPOINT:fscanf(infile, "%lf %lf", &(img.objects[i].obje.st.p.x), &(img.objects[i].obje.st.p.y));
                           fscanf(infile, "%s", buffer);
                           img.objects[i].obje.st.st = strcopy(img.objects[i].obje.st.st, buffer);
                           break;
     case OBJECT_RECTANGLE:fscanf(infile, "%lf %lf %lf %lf", &(img.objects[i].obje.re.downright.x), &(img.objects[i].obje.re.downright.y), &(img.objects[i].obje.re.upleft.x), &(img.objects[i].obje.re.upleft.y));
                           break;
     case     OBJECT_MVBOX:fscanf(infile, "%lf %lf", &(img.objects[i].obje.mv.mean), &(img.objects[i].obje.mv.variance));
                           break;
     case   OBJECT_BOXPLOT:fscanf(infile, "%lf %lf %lf %lf %lf", &(img.objects[i].obje.box.lwhisker), &(img.objects[i].obje.box.swhisker), &(img.objects[i].obje.box.p75), &(img.objects[i].obje.box.p25), &(img.objects[i].obje.box.median));
                           break;
     case  OBJECT_ERRORHISTOGRAM:fscanf(infile, "%lf %lf\n", &(img.objects[i].obje.errorhist.min), &(img.objects[i].obje.errorhist.max));
                                 for (j = 0; j < 10; j++)
                                   fscanf(infile, "%d", &(img.objects[i].obje.errorhist.counts[j]));
                                 break;
    }
  }
 /* Load Legend */
 fscanf(infile, "%d %d", &legendposition, &(img.imagelegend.legendcount));
 img.imagelegend.position = legendposition;
 fscanf(infile, "%d %lf %d %d", &(img.imagelegend.fnt.dashedtype), &(img.imagelegend.fnt.fontsize), &fonttype, &colortype);
 img.imagelegend.fnt.fontname = fonttype;
 img.imagelegend.fnt.fontcolor = colortype;
 img.imagelegend.names = safemalloc(img.imagelegend.legendcount * sizeof(char *), "load_image", 25);
 for (i = 0; i < img.imagelegend.legendcount; i++)
  {
   fscanf(infile, "%s", buffer);
   img.imagelegend.names[i] = strcopy(img.imagelegend.names[i], buffer);
  } 
 img.imagelegend.colors = safemalloc(img.imagelegend.legendcount * sizeof(COLOR_TYPE), "load_image", 26);
 for (i = 0; i < img.imagelegend.legendcount; i++)
  {
   fscanf(infile, "%d", &colortype);
   img.imagelegend.colors[i] = colortype;
  }
 img.imagelegend.types = safemalloc(img.imagelegend.legendcount * sizeof(char), "load_image", 30);
 for (i = 0; i < img.imagelegend.legendcount; i++)
   fscanf(infile, "%c", &(img.imagelegend.types[i]));
 fclose(infile);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x7a170, %rsp          # imm = 0x7A170
movq %rdi, -0x8(%rbp)
callq 0x41a40
movq -0x8(%rbp), %rdi
leaq 0xa7e37(%rip), %rsi     # 0xe81a6
callq 0x40c0
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
leaq 0xa5105(%rip), %rsi     # 0xe5488
leaq 0x3a1cfe(%rip), %rcx    # 0x3e2088
movq %rcx, %rdx
addq $0x4, %rdx
movq %rcx, %r8
addq $0x124, %r8             # imm = 0x124
leaq -0x1c(%rbp), %r9
movb $0x0, %al
callq 0x4070
movl -0x1c(%rbp), %ecx
leaq 0x3a1cd8(%rip), %rax    # 0x3e2088
movl %ecx, 0x120(%rax)
movq -0x30(%rbp), %rdi
leaq 0xa50ca(%rip), %rsi     # 0xe548b
leaq 0x3a1cc0(%rip), %rdx    # 0x3e2088
addq $0x8, %rdx
movq %rdx, %rcx
addq $0x30, %rcx
movq %rdx, %r8
addq $0x20, %r8
movb $0x0, %al
callq 0x4070
movq -0x30(%rbp), %rdi
leaq -0x7a150(%rbp), %rdx
leaq 0xa46a5(%rip), %rsi     # 0xe4a98
movb $0x0, %al
callq 0x4070
leaq 0x3a1c87(%rip), %rax    # 0x3e2088
movq 0x40(%rax), %rdi
leaq -0x7a150(%rbp), %rsi
callq 0x54ba0
movq %rax, %rcx
leaq 0x3a1c6d(%rip), %rax    # 0x3e2088
movq %rcx, 0x40(%rax)
movq -0x30(%rbp), %rdi
leaq 0xa506a(%rip), %rsi     # 0xe5494
leaq 0x3a1c57(%rip), %r8     # 0x3e2088
addq $0x8, %r8
addq $0x8, %r8
movq %r8, %rdx
addq $0x10, %rdx
movq %r8, %rcx
addq $0x14, %rcx
movq %r8, %r9
addq $0x8, %r9
movb $0x0, %al
callq 0x4070
movq -0x30(%rbp), %rdi
leaq 0xa5042(%rip), %rsi     # 0xe54a2
leaq 0x3a1c21(%rip), %rcx    # 0x3e2088
addq $0x8, %rcx
addq $0x58, %rcx
movq %rcx, %rdx
addq $0x14, %rdx
addq $0x8, %rcx
leaq -0x20(%rbp), %r8
leaq -0x24(%rbp), %r9
movb $0x0, %al
callq 0x4070
movl -0x20(%rbp), %ecx
leaq 0x3a1bf5(%rip), %rax    # 0x3e2088
movl %ecx, 0x60(%rax)
movl -0x24(%rbp), %ecx
leaq 0x3a1be8(%rip), %rax    # 0x3e2088
movl %ecx, 0x70(%rax)
movq -0x30(%rbp), %rdi
leaq 0xa4ff4(%rip), %rsi     # 0xe54a2
leaq 0x3a1bd3(%rip), %rcx    # 0x3e2088
addq $0x8, %rcx
addq $0x40, %rcx
movq %rcx, %rdx
addq $0x14, %rdx
addq $0x8, %rcx
leaq -0x20(%rbp), %r8
leaq -0x24(%rbp), %r9
movb $0x0, %al
callq 0x4070
movl -0x20(%rbp), %ecx
leaq 0x3a1ba7(%rip), %rax    # 0x3e2088
movl %ecx, 0x48(%rax)
movl -0x24(%rbp), %ecx
leaq 0x3a1b9a(%rip), %rax    # 0x3e2088
movl %ecx, 0x58(%rax)
leaq 0x3a1b90(%rip), %rax    # 0x3e2088
cmpl $0x0, 0x38(%rax)
je 0x405a1
leaq 0x3a1b7f(%rip), %rax    # 0x3e2088
movslq 0x20(%rax), %rdi
shlq $0x3, %rdi
leaq 0xa4f97(%rip), %rsi     # 0xe54af
movl $0xc, %edx
callq 0x52d70
movq %rax, %rcx
leaq 0x3a1b5c(%rip), %rax    # 0x3e2088
movq %rcx, 0x30(%rax)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
leaq 0x3a1b47(%rip), %rcx    # 0x3e2088
cmpl 0x20(%rcx), %eax
jge 0x4059f
movq -0x30(%rbp), %rdi
leaq -0x7a150(%rbp), %rdx
leaq 0xa4540(%rip), %rsi     # 0xe4a98
movb $0x0, %al
callq 0x4070
leaq 0x3a1b22(%rip), %rax    # 0x3e2088
movq 0x30(%rax), %rax
movslq -0xc(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq -0x7a150(%rbp), %rsi
callq 0x54ba0
movq %rax, %rdx
leaq 0x3a1b00(%rip), %rax    # 0x3e2088
movq 0x30(%rax), %rax
movslq -0xc(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x40537
jmp 0x405b0
leaq 0x3a1ae0(%rip), %rax    # 0x3e2088
movq $0x0, 0x30(%rax)
movq -0x30(%rbp), %rdi
leaq 0xa4ed0(%rip), %rsi     # 0xe548b
leaq 0x3a1ac6(%rip), %rdx    # 0x3e2088
addq $0x78, %rdx
movq %rdx, %rcx
addq $0x30, %rcx
movq %rdx, %r8
addq $0x20, %r8
movb $0x0, %al
callq 0x4070
leaq 0x3a1aa6(%rip), %rax    # 0x3e2088
cmpl $0x0, 0x78(%rax)
je 0x407e4
movq -0x30(%rbp), %rdi
leaq -0x7a150(%rbp), %rdx
leaq 0xa449a(%rip), %rsi     # 0xe4a98
movb $0x0, %al
callq 0x4070
leaq 0x3a1a7c(%rip), %rax    # 0x3e2088
movq 0xb0(%rax), %rdi
leaq -0x7a150(%rbp), %rsi
callq 0x54ba0
movq %rax, %rcx
leaq 0x3a1a5f(%rip), %rax    # 0x3e2088
movq %rcx, 0xb0(%rax)
movq -0x30(%rbp), %rdi
leaq 0xa4e59(%rip), %rsi     # 0xe5494
leaq 0x3a1a46(%rip), %r8     # 0x3e2088
addq $0x78, %r8
addq $0x8, %r8
movq %r8, %rdx
addq $0x10, %rdx
movq %r8, %rcx
addq $0x14, %rcx
movq %r8, %r9
addq $0x8, %r9
movb $0x0, %al
callq 0x4070
movq -0x30(%rbp), %rdi
leaq 0xa4e31(%rip), %rsi     # 0xe54a2
leaq 0x3a1a10(%rip), %rcx    # 0x3e2088
addq $0x78, %rcx
addq $0x58, %rcx
movq %rcx, %rdx
addq $0x14, %rdx
addq $0x8, %rcx
leaq -0x20(%rbp), %r8
leaq -0x24(%rbp), %r9
movb $0x0, %al
callq 0x4070
movl -0x20(%rbp), %ecx
leaq 0x3a19e4(%rip), %rax    # 0x3e2088
movl %ecx, 0xd0(%rax)
movl -0x24(%rbp), %ecx
leaq 0x3a19d4(%rip), %rax    # 0x3e2088
movl %ecx, 0xe0(%rax)
movq -0x30(%rbp), %rdi
leaq 0xa4ddd(%rip), %rsi     # 0xe54a2
leaq 0x3a19bc(%rip), %rcx    # 0x3e2088
addq $0x78, %rcx
addq $0x40, %rcx
movq %rcx, %rdx
addq $0x14, %rdx
addq $0x8, %rcx
leaq -0x20(%rbp), %r8
leaq -0x24(%rbp), %r9
movb $0x0, %al
callq 0x4070
movl -0x20(%rbp), %ecx
leaq 0x3a1990(%rip), %rax    # 0x3e2088
movl %ecx, 0xb8(%rax)
movl -0x24(%rbp), %ecx
leaq 0x3a1980(%rip), %rax    # 0x3e2088
movl %ecx, 0xc8(%rax)
leaq 0x3a1973(%rip), %rax    # 0x3e2088
cmpl $0x0, 0xa8(%rax)
je 0x407d0
leaq 0x3a195f(%rip), %rax    # 0x3e2088
movslq 0x90(%rax), %rdi
shlq $0x3, %rdi
leaq 0xa4d74(%rip), %rsi     # 0xe54af
movl $0xc, %edx
callq 0x52d70
movq %rax, %rcx
leaq 0x3a1939(%rip), %rax    # 0x3e2088
movq %rcx, 0xa0(%rax)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
leaq 0x3a1921(%rip), %rcx    # 0x3e2088
cmpl 0x90(%rcx), %eax
jge 0x407ce
movq -0x30(%rbp), %rdi
leaq -0x7a150(%rbp), %rdx
leaq 0xa4317(%rip), %rsi     # 0xe4a98
movb $0x0, %al
callq 0x4070
leaq 0x3a18f9(%rip), %rax    # 0x3e2088
movq 0xa0(%rax), %rax
movslq -0xc(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq -0x7a150(%rbp), %rsi
callq 0x54ba0
movq %rax, %rdx
leaq 0x3a18d4(%rip), %rax    # 0x3e2088
movq 0xa0(%rax), %rax
movslq -0xc(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x4075d
jmp 0x407e2
leaq 0x3a18b1(%rip), %rax    # 0x3e2088
movq $0x0, 0xa0(%rax)
jmp 0x40819
leaq 0x3a189d(%rip), %rax    # 0x3e2088
movq $0x0, 0xb0(%rax)
leaq 0x3a188b(%rip), %rax    # 0x3e2088
movl $0x0, 0xa8(%rax)
leaq 0x3a187a(%rip), %rax    # 0x3e2088
movq $0x0, 0xa0(%rax)
leaq 0x3a1868(%rip), %rax    # 0x3e2088
movslq 0x124(%rax), %rax
imulq $0x60, %rax, %rdi
leaq 0xa4c7d(%rip), %rsi     # 0xe54af
movl $0x19, %edx
callq 0x52d70
movq %rax, %rcx
leaq 0x3a1842(%rip), %rax    # 0x3e2088
movq %rcx, 0x128(%rax)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
leaq 0x3a182a(%rip), %rcx    # 0x3e2088
cmpl 0x124(%rcx), %eax
jge 0x40db1
movq -0x30(%rbp), %rdi
leaq 0x3a1813(%rip), %rax    # 0x3e2088
movq %rax, -0x7a160(%rbp)
movq 0x128(%rax), %rax
movslq -0xc(%rbp), %rcx
leaq (%rcx,%rcx,2), %rdx
shlq $0x5, %rdx
leaq 0x24(%rax,%rdx), %rcx
leaq 0x20(%rax,%rdx), %r8
leaq 0xa4beb(%rip), %rsi     # 0xe548b
xorl %eax, %eax
movb %al, -0x7a161(%rbp)
leaq -0x14(%rbp), %rdx
callq 0x4070
movq -0x7a160(%rbp), %rcx
movb -0x7a161(%rbp), %al
movl -0x14(%rbp), %edi
movq 0x128(%rcx), %rdx
movslq -0xc(%rbp), %rsi
leaq (%rsi,%rsi,2), %rsi
shlq $0x5, %rsi
movl %edi, (%rdx,%rsi)
movq -0x30(%rbp), %rdi
movq 0x128(%rcx), %rcx
movslq -0xc(%rbp), %rdx
leaq (%rdx,%rdx,2), %rsi
shlq $0x5, %rsi
leaq 0x1c(%rcx,%rsi), %rdx
leaq 0x10(%rcx,%rsi), %rcx
leaq 0xa4ba3(%rip), %rsi     # 0xe54a2
leaq -0x20(%rbp), %r8
leaq -0x24(%rbp), %r9
callq 0x4070
movq -0x7a160(%rbp), %rax
movl -0x20(%rbp), %esi
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
shlq $0x5, %rdx
movl %esi, 0x8(%rcx,%rdx)
movl -0x24(%rbp), %esi
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
shlq $0x5, %rdx
movl %esi, 0x18(%rcx,%rdx)
movq 0x128(%rax), %rax
movslq -0xc(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
shlq $0x5, %rcx
movl (%rax,%rcx), %eax
movq %rax, -0x7a158(%rbp)
subq $0x8, %rax
ja 0x40da1
movq -0x7a158(%rbp), %rax
leaq 0xa4a7c(%rip), %rcx     # 0xe53f8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x30(%rbp), %rdi
leaq 0x3a16f8(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rdx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rdx
addq $0x28, %rdx
addq $0x10, %rdx
leaq 0x3a16d7(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
addq $0x10, %rcx
addq $0x8, %rcx
leaq 0x3a16b2(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %r8
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %r8
addq $0x28, %r8
leaq 0x3a1695(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %r9
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %r9
addq $0x28, %r9
addq $0x8, %r9
leaq 0xa4aaa(%rip), %rsi     # 0xe54be
movb $0x0, %al
callq 0x4070
jmp 0x40da1
movq -0x30(%rbp), %rdi
leaq 0x3a165d(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rdx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rdx
addq $0x28, %rdx
leaq 0x3a1640(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
addq $0x8, %rcx
leaq 0x3a161f(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %r8
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %r8
addq $0x28, %r8
addq $0x10, %r8
leaq 0xa4a38(%rip), %rsi     # 0xe54c2
movb $0x0, %al
callq 0x4070
jmp 0x40da1
movq -0x30(%rbp), %rdi
leaq 0x3a15e7(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rdx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rdx
addq $0x28, %rdx
leaq 0x3a15ca(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
addq $0x8, %rcx
leaq 0xa49bb(%rip), %rsi     # 0xe549a
movb $0x0, %al
callq 0x4070
movq -0x30(%rbp), %rdi
leaq -0x7a150(%rbp), %rdx
leaq 0xa3fa0(%rip), %rsi     # 0xe4a98
movb $0x0, %al
callq 0x4070
leaq 0x3a1582(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rax
movslq -0xc(%rbp), %rcx
imulq $0x60, %rcx, %rcx
addq %rcx, %rax
movq 0x38(%rax), %rdi
leaq -0x7a150(%rbp), %rsi
callq 0x54ba0
movq %rax, %rcx
leaq 0x3a1556(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rax
movslq -0xc(%rbp), %rdx
imulq $0x60, %rdx, %rdx
addq %rdx, %rax
movq %rcx, 0x38(%rax)
jmp 0x40da1
movq -0x30(%rbp), %rdi
leaq 0x3a1530(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rdx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rdx
addq $0x28, %rdx
addq $0x10, %rdx
leaq 0x3a150f(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
addq $0x10, %rcx
addq $0x8, %rcx
leaq 0x3a14ea(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %r8
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %r8
addq $0x28, %r8
leaq 0x3a14cd(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %r9
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %r9
addq $0x28, %r9
addq $0x8, %r9
leaq 0xa48e2(%rip), %rsi     # 0xe54be
movb $0x0, %al
callq 0x4070
jmp 0x40da1
movq -0x30(%rbp), %rdi
leaq 0x3a1495(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rdx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rdx
addq $0x28, %rdx
leaq 0x3a1478(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
addq $0x8, %rcx
leaq 0xa4869(%rip), %rsi     # 0xe549a
movb $0x0, %al
callq 0x4070
jmp 0x40da1
movq -0x30(%rbp), %rdi
leaq 0x3a1440(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rdx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rdx
addq $0x28, %rdx
addq $0x20, %rdx
leaq 0x3a141f(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
addq $0x18, %rcx
leaq 0x3a13fe(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %r8
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %r8
addq $0x28, %r8
addq $0x10, %r8
leaq 0x3a13dd(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %r9
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %r9
addq $0x28, %r9
addq $0x8, %r9
leaq 0x3a13bc(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rax
movslq -0xc(%rbp), %rsi
imulq $0x60, %rsi, %rsi
addq %rsi, %rax
addq $0x28, %rax
leaq 0xa47d1(%rip), %rsi     # 0xe54ba
movq %rax, (%rsp)
movb $0x0, %al
callq 0x4070
jmp 0x40da1
movq -0x30(%rbp), %rdi
leaq 0x3a1384(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rdx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rdx
addq $0x28, %rdx
leaq 0x3a1367(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rcx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
addq $0x8, %rcx
leaq 0xa6a60(%rip), %rsi     # 0xe77a2
movb $0x0, %al
callq 0x4070
movl $0x0, -0x10(%rbp)
cmpl $0xa, -0x10(%rbp)
jge 0x40d9f
movq -0x30(%rbp), %rdi
leaq 0x3a1327(%rip), %rax    # 0x3e2088
movq 0x128(%rax), %rdx
movslq -0xc(%rbp), %rax
imulq $0x60, %rax, %rax
addq %rax, %rdx
addq $0x28, %rdx
addq $0x10, %rdx
movslq -0x10(%rbp), %rax
shlq $0x2, %rax
addq %rax, %rdx
leaq 0xac4d8(%rip), %rsi     # 0xed265
movb $0x0, %al
callq 0x4070
movl -0x10(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10(%rbp)
jmp 0x40d50
jmp 0x40da1
jmp 0x40da3
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x40854
movq -0x30(%rbp), %rdi
leaq 0xa46d2(%rip), %rsi     # 0xe548e
leaq -0x18(%rbp), %rdx
leaq 0x3a12c1(%rip), %rcx    # 0x3e2088
addq $0xe8, %rcx
addq $0x4, %rcx
movb $0x0, %al
callq 0x4070
movl -0x18(%rbp), %ecx
leaq 0x3a12a5(%rip), %rax    # 0x3e2088
movl %ecx, 0xe8(%rax)
movq -0x30(%rbp), %rdi
leaq 0xa46ae(%rip), %rsi     # 0xe54a2
leaq 0x3a128d(%rip), %rcx    # 0x3e2088
addq $0xe8, %rcx
addq $0x20, %rcx
movq %rcx, %rdx
addq $0x14, %rdx
addq $0x8, %rcx
leaq -0x20(%rbp), %r8
leaq -0x24(%rbp), %r9
movb $0x0, %al
callq 0x4070
movl -0x20(%rbp), %ecx
leaq 0x3a125e(%rip), %rax    # 0x3e2088
movl %ecx, 0x108(%rax)
movl -0x24(%rbp), %ecx
leaq 0x3a124e(%rip), %rax    # 0x3e2088
movl %ecx, 0x118(%rax)
leaq 0x3a1241(%rip), %rax    # 0x3e2088
movslq 0xec(%rax), %rdi
shlq $0x3, %rdi
leaq 0xa4656(%rip), %rsi     # 0xe54af
movl $0x19, %edx
callq 0x52d70
movq %rax, %rcx
leaq 0x3a121b(%rip), %rax    # 0x3e2088
movq %rcx, 0x100(%rax)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
leaq 0x3a1203(%rip), %rcx    # 0x3e2088
cmpl 0xec(%rcx), %eax
jge 0x40eec
movq -0x30(%rbp), %rdi
leaq -0x7a150(%rbp), %rdx
leaq 0xa3bf9(%rip), %rsi     # 0xe4a98
movb $0x0, %al
callq 0x4070
leaq 0x3a11db(%rip), %rax    # 0x3e2088
movq 0x100(%rax), %rax
movslq -0xc(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
leaq -0x7a150(%rbp), %rsi
callq 0x54ba0
movq %rax, %rdx
leaq 0x3a11b6(%rip), %rax    # 0x3e2088
movq 0x100(%rax), %rax
movslq -0xc(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x40e7b
leaq 0x3a1195(%rip), %rax    # 0x3e2088
movslq 0xec(%rax), %rdi
shlq $0x2, %rdi
leaq 0xa45aa(%rip), %rsi     # 0xe54af
movl $0x1a, %edx
callq 0x52d70
movq %rax, %rcx
leaq 0x3a116f(%rip), %rax    # 0x3e2088
movq %rcx, 0xf0(%rax)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
leaq 0x3a1157(%rip), %rcx    # 0x3e2088
cmpl 0xec(%rcx), %eax
jge 0x40f72
movq -0x30(%rbp), %rdi
leaq 0xac321(%rip), %rsi     # 0xed265
leaq -0x24(%rbp), %rdx
movb $0x0, %al
callq 0x4070
movl -0x24(%rbp), %edx
leaq 0x3a112f(%rip), %rax    # 0x3e2088
movq 0xf0(%rax), %rax
movslq -0xc(%rbp), %rcx
movl %edx, (%rax,%rcx,4)
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x40f27
leaq 0x3a110f(%rip), %rax    # 0x3e2088
movslq 0xec(%rax), %rdi
shlq $0x0, %rdi
leaq 0xa4524(%rip), %rsi     # 0xe54af
movl $0x1e, %edx
callq 0x52d70
movq %rax, %rcx
leaq 0x3a10e9(%rip), %rax    # 0x3e2088
movq %rcx, 0xf8(%rax)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
leaq 0x3a10d1(%rip), %rcx    # 0x3e2088
cmpl 0xec(%rcx), %eax
jge 0x40ff1
movq -0x30(%rbp), %rdi
leaq 0x3a10be(%rip), %rax    # 0x3e2088
movq 0xf8(%rax), %rdx
movslq -0xc(%rbp), %rax
addq %rax, %rdx
leaq 0xa5939(%rip), %rsi     # 0xe6918
movb $0x0, %al
callq 0x4070
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x40fad
movq -0x30(%rbp), %rdi
callq 0x4250
addq $0x7a170, %rsp          # imm = 0x7A170
popq %rbp
retq
nopw %cs:(%rax,%rax)