// File: /workspace/github_c_makefile_star2_O2/tditlu[P]shadetabler/src/lodepng/lodepng.c
// Function: lodepng_convert
unsigned lodepng_convert(unsigned char* out, const unsigned char* in,
                         const LodePNGColorMode* mode_out, const LodePNGColorMode* mode_in,
                         unsigned w, unsigned h) {
  size_t i;
  ColorTree tree;
  size_t numpixels = (size_t)w * (size_t)h;
  unsigned error = 0;

  if(mode_in->colortype == LCT_PALETTE && !mode_in->palette) {
    return 107; /* error: must provide palette if input mode is palette */
  }

  if(lodepng_color_mode_equal(mode_out, mode_in)) {
    size_t numbytes = lodepng_get_raw_size(w, h, mode_in);
    lodepng_memcpy(out, in, numbytes);
    return 0;
  }

  if(mode_out->colortype == LCT_PALETTE) {
    size_t palettesize = mode_out->palettesize;
    const unsigned char* palette = mode_out->palette;
    size_t palsize = (size_t)1u << mode_out->bitdepth;
    /*if the user specified output palette but did not give the values, assume
    they want the values of the input color type (assuming that one is palette).
    Note that we never create a new palette ourselves.*/
    if(palettesize == 0) {
      palettesize = mode_in->palettesize;
      palette = mode_in->palette;
      /*if the input was also palette with same bitdepth, then the color types are also
      equal, so copy literally. This to preserve the exact indices that were in the PNG
      even in case there are duplicate colors in the palette.*/
      if(mode_in->colortype == LCT_PALETTE && mode_in->bitdepth == mode_out->bitdepth) {
        size_t numbytes = lodepng_get_raw_size(w, h, mode_in);
        lodepng_memcpy(out, in, numbytes);
        return 0;
      }
    }
    if(palettesize < palsize) palsize = palettesize;
    color_tree_init(&tree);
    for(i = 0; i != palsize; ++i) {
      const unsigned char* p = &palette[i * 4];
      error = color_tree_add(&tree, p[0], p[1], p[2], p[3], (unsigned)i);
      if(error) break;
    }
  }

  if(!error) {
    if(mode_in->bitdepth == 16 && mode_out->bitdepth == 16) {
      for(i = 0; i != numpixels; ++i) {
        unsigned short r = 0, g = 0, b = 0, a = 0;
        getPixelColorRGBA16(&r, &g, &b, &a, in, i, mode_in);
        rgba16ToPixel(out, i, mode_out, r, g, b, a);
      }
    } else if(mode_out->bitdepth == 8 && mode_out->colortype == LCT_RGBA) {
      getPixelColorsRGBA8(out, numpixels, in, mode_in);
    } else if(mode_out->bitdepth == 8 && mode_out->colortype == LCT_RGB) {
      getPixelColorsRGB8(out, numpixels, in, mode_in);
    } else {
      unsigned char r = 0, g = 0, b = 0, a = 0;
      for(i = 0; i != numpixels; ++i) {
        getPixelColorRGBA8(&r, &g, &b, &a, in, i, mode_in);
        error = rgba8ToPixel(out, i, mode_out, &tree, r, g, b, a);
        if(error) break;
      }
    }
  }

  if(mode_out->colortype == LCT_PALETTE) {
    color_tree_cleanup(&tree);
  }

  return error;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xd8, %rsp
movl %r9d, %r14d
movl %r8d, %ebx
movq %rcx, %rbp
movq %rdx, %r12
movq %rsi, 0x18(%rsp)
movq %rdi, %r13
movl (%rcx), %r15d
cmpl $0x3, %r15d
jne 0x52f0
cmpq $0x0, 0x8(%rbp)
je 0x535c
movq %r12, %rdi
movq %rbp, %rsi
callq 0x5dcc
testl %eax, %eax
je 0x5324
movl %ebx, %edi
movl %r14d, %esi
movq %rbp, %rdx
callq 0x4bc5
movq %r13, %rdi
movq 0x18(%rsp), %rsi
movq %rax, %rdx
callq 0x4a33
xorl %r12d, %r12d
jmp 0x55c4
movq %rbp, 0x30(%rsp)
movq %r13, 0x48(%rsp)
movq %r12, 0x28(%rsp)
cmpl $0x3, (%r12)
jne 0x53e9
movq 0x28(%rsp), %rdx
movq 0x10(%rdx), %rax
movl 0x4(%rdx), %ecx
pushq $0x1
popq %r13
shlq %cl, %r13
testq %rax, %rax
je 0x5365
movq 0x8(%rdx), %rbp
jmp 0x5396
pushq $0x6b
popq %r12
jmp 0x55c4
movq 0x30(%rsp), %rdx
movq 0x8(%rdx), %rbp
movq 0x10(%rdx), %rax
cmpl $0x3, %r15d
jne 0x5396
cmpl %ecx, 0x4(%rdx)
jne 0x5396
movl %ebx, %edi
movl %r14d, %esi
movq 0x30(%rsp), %rdx
callq 0x4bc5
movq 0x48(%rsp), %rdi
jmp 0x530f
cmpq %r13, %rax
cmovbq %rax, %r13
leaq 0x50(%rsp), %r15
movq %r15, %rdi
callq 0x5e38
xorl %r12d, %r12d
cmpq %r12, %r13
je 0x53e9
movzbl (%rbp,%r12,4), %esi
movzbl 0x1(%rbp,%r12,4), %edx
movzbl 0x2(%rbp,%r12,4), %ecx
movzbl 0x3(%rbp,%r12,4), %r8d
movq %r15, %rdi
movl %r12d, %r9d
callq 0x5e53
incq %r12
testl %eax, %eax
je 0x53ad
movq 0x28(%rsp), %r9
movq %rax, %r12
jmp 0x55b4
movl %ebx, %r15d
movl %r14d, %r14d
movq %r14, %rax
imulq %r15, %rax
movq %rax, 0x10(%rsp)
movq 0x30(%rsp), %rax
movl 0x4(%rax), %edx
movl %edx, %ecx
xorl $0x10, %ecx
movq 0x28(%rsp), %r9
movl 0x4(%r9), %eax
movl %eax, %esi
xorl $0x10, %esi
orl %ecx, %esi
jne 0x5527
leaq 0x26(%rsp), %r14
leaq 0x3e(%rsp), %r15
leaq 0x3c(%rsp), %r12
leaq 0x9d4c(%rip), %r13      # 0xf180
xorl %edi, %edi
xorl %ebp, %ebp
cmpq %rbp, 0x10(%rsp)
je 0x55ac
andw $0x0, 0x40(%rsp)
andw $0x0, 0x26(%rsp)
andw $0x0, 0x3e(%rsp)
andw $0x0, 0x3c(%rsp)
movq 0x30(%rsp), %rax
movq %rax, (%rsp)
movq %rdi, %rbx
leaq 0x40(%rsp), %rdi
movq %r14, %rsi
movq %r15, %rdx
movq %r12, %rcx
movq 0x18(%rsp), %r8
movq %rbp, %r9
callq 0x5f0a
movq %rbx, %rdi
movq 0x28(%rsp), %rax
movl (%rax), %esi
cmpq $0x6, %rsi
ja 0x551b
movzwl 0x40(%rsp), %ebx
movzwl 0x26(%rsp), %edx
movzwl 0x3e(%rsp), %eax
movzwl 0x3c(%rsp), %ecx
movslq (%r13,%rsi,4), %rsi
addq %r13, %rsi
jmpq *%rsi
rolw $0x8, %bx
movq 0x48(%rsp), %rax
movw %bx, (%rax,%rbp,2)
jmp 0x551b
movq 0x48(%rsp), %rax
movb %bh, (%rax,%rbp,4)
movb %bl, 0x1(%rax,%rbp,4)
movb %ch, 0x2(%rax,%rbp,4)
movb %cl, 0x3(%rax,%rbp,4)
jmp 0x551b
movq 0x48(%rsp), %rcx
movb %bh, (%rcx,%rdi,2)
movb %bl, 0x1(%rcx,%rdi,2)
movb %dh, 0x2(%rcx,%rdi,2)
movb %dl, 0x3(%rcx,%rdi,2)
movb %ah, 0x4(%rcx,%rdi,2)
movb %al, 0x5(%rcx,%rdi,2)
jmp 0x551b
movq 0x48(%rsp), %rsi
movb %bh, (%rsi,%rbp,8)
movb %bl, 0x1(%rsi,%rbp,8)
movb %dh, 0x2(%rsi,%rbp,8)
movb %dl, 0x3(%rsi,%rbp,8)
movb %ah, 0x4(%rsi,%rbp,8)
movb %al, 0x5(%rsi,%rbp,8)
movb %ch, 0x6(%rsi,%rbp,8)
movb %cl, 0x7(%rsi,%rbp,8)
incq %rbp
addq $0x3, %rdi
jmp 0x5438
cmpl $0x8, %eax
movq 0x48(%rsp), %rbp
jne 0x55d9
movl (%r9), %eax
cmpl $0x2, %eax
movq %rdx, %rbx
je 0x57ba
cmpl $0x6, %eax
jne 0x55d9
movq 0x30(%rsp), %rax
movl (%rax), %eax
xorl %r12d, %r12d
cmpq $0x6, %rax
ja 0x55b4
leaq 0x9be4(%rip), %rcx      # 0xf148
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
cmpq $0x10, %rdx
je 0x5c84
cmpl $0x8, %edx
movq 0x18(%rsp), %r12
jne 0x5d01
xorl %eax, %eax
cmpq 0x10(%rsp), %rax
je 0x5c47
movb (%r12,%rax), %cl
movb %cl, 0x2(%rbp)
movb %cl, 0x1(%rbp)
movb %cl, (%rbp)
movb $-0x1, 0x3(%rbp)
incq %rax
addq $0x4, %rbp
jmp 0x5587
movq 0x28(%rsp), %r9
xorl %r12d, %r12d
cmpl $0x3, (%r9)
jne 0x55c4
leaq 0x50(%rsp), %rdi
callq 0x632a
movl %r12d, %eax
addq $0xd8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorl %eax, %eax
leaq 0x40(%rsp), %rcx
movb %al, (%rcx)
leaq 0x26(%rsp), %rcx
movb %al, (%rcx)
leaq 0x3e(%rsp), %rcx
movq %rcx, %r15
movb %al, (%rcx)
leaq 0x3c(%rsp), %rcx
movq %rcx, %r13
movb %al, (%rcx)
leaq 0x9b60(%rip), %rbx      # 0xf164
xorl %r12d, %r12d
xorl %r14d, %r14d
cmpq %r14, 0x10(%rsp)
je 0x55b1
movq 0x30(%rsp), %rax
movq %rax, (%rsp)
leaq 0x40(%rsp), %rdi
leaq 0x26(%rsp), %rsi
movq %r15, %rdx
movq %r13, %rcx
movq 0x18(%rsp), %r8
movq %r14, %r9
callq 0x6082
movq 0x28(%rsp), %r9
movl (%r9), %r8d
cmpq $0x6, %r8
ja 0x57ae
movb 0x40(%rsp), %al
movzbl %al, %esi
movb 0x26(%rsp), %dl
movb 0x3e(%rsp), %cl
movb 0x3c(%rsp), %dil
movslq (%rbx,%r8,4), %r8
addq %rbx, %r8
jmpq *%r8
movl 0x4(%r9), %edx
cmpl $0x10, %edx
je 0x5769
cmpl $0x8, %edx
jne 0x578b
movb %al, (%rbp,%r14)
jmp 0x57ae
movzbl %dl, %edx
movzbl %cl, %ecx
movzbl %dil, %r8d
leaq 0x50(%rsp), %rdi
callq 0xb75f
testl %eax, %eax
js 0x5820
movq 0x28(%rsp), %r9
movl 0x4(%r9), %edx
cmpl $0x8, %edx
jne 0x579c
movb %al, (%rbp,%r14)
jmp 0x57ae
cmpl $0x8, 0x4(%r9)
jne 0x571f
movb %al, (%rbp,%r12)
movb %dl, 0x1(%rbp,%r12)
movb %cl, 0x2(%rbp,%r12)
jmp 0x57ae
movl 0x4(%r9), %ecx
cmpl $0x10, %ecx
je 0x5775
cmpl $0x8, %ecx
jne 0x57ae
movb %al, (%rbp,%r14,2)
movb %dil, 0x1(%rbp,%r14,2)
jmp 0x57ae
cmpl $0x8, 0x4(%r9)
jne 0x573f
movb %al, (%rbp,%r14,4)
movb %dl, 0x1(%rbp,%r14,4)
movb %cl, 0x2(%rbp,%r14,4)
movb %dil, 0x3(%rbp,%r14,4)
jmp 0x57ae
movb %al, 0x1(%rbp,%r12,2)
movb %al, (%rbp,%r12,2)
movb %dl, 0x3(%rbp,%r12,2)
movb %dl, 0x2(%rbp,%r12,2)
movb %cl, 0x5(%rbp,%r12,2)
movb %cl, 0x4(%rbp,%r12,2)
jmp 0x57ae
movb %al, 0x1(%rbp,%r14,8)
movb %al, (%rbp,%r14,8)
movb %dl, 0x3(%rbp,%r14,8)
movb %dl, 0x2(%rbp,%r14,8)
movb %cl, 0x5(%rbp,%r14,8)
movb %cl, 0x4(%rbp,%r14,8)
movb %dil, 0x7(%rbp,%r14,8)
movb %dil, 0x6(%rbp,%r14,8)
jmp 0x57ae
movb %al, 0x1(%rbp,%r14,2)
movb %al, (%rbp,%r14,2)
jmp 0x57ae
movb %al, 0x1(%rbp,%r14,4)
movb %al, (%rbp,%r14,4)
movb %dil, 0x3(%rbp,%r14,4)
movb %dil, 0x2(%rbp,%r14,4)
jmp 0x57ae
movb $0x8, %cl
subb %dl, %cl
shrl %cl, %esi
pushq $-0x1
popq %rax
movl %edx, %ecx
shll %cl, %eax
notl %eax
andl %esi, %eax
movq %rbp, %rdi
movq %r14, %rsi
movl %eax, %ecx
callq 0xb70b
movq 0x28(%rsp), %r9
incq %r14
addq $0x3, %r12
jmp 0x560a
movq 0x30(%rsp), %rax
movl (%rax), %eax
xorl %r12d, %r12d
cmpq $0x6, %rax
ja 0x55b4
leaq 0x9957(%rip), %rcx      # 0xf12c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
cmpq $0x8, %rdx
je 0x5cd3
cmpl $0x10, %edx
movq 0x18(%rsp), %r15
jne 0x5d74
addq $0x2, %rbp
xorl %r12d, %r12d
xorl %eax, %eax
cmpq %rax, 0x10(%rsp)
je 0x55b4
movb (%r15,%rax,2), %cl
movb %cl, (%rbp)
movb %cl, -0x1(%rbp)
movb %cl, -0x2(%rbp)
incq %rax
addq $0x3, %rbp
jmp 0x57ff
pushq $0x52
popq %rax
movl %eax, %r12d
jmp 0x5dc2
cmpl $0x8, %edx
jne 0x59d2
xorl %r12d, %r12d
pushq $0x4
popq %rbx
xorl %r14d, %r14d
movq 0x18(%rsp), %r15
cmpq %r14, 0x10(%rsp)
je 0x5dc2
movzbl (%r15,%r14), %esi
shll $0x2, %esi
movq 0x30(%rsp), %rax
addq 0x8(%rax), %rsi
movq %rbp, %rdi
movq %rbx, %rdx
callq 0x4a33
incq %r14
addq $0x4, %rbp
jmp 0x5842
cmpl $0x8, %edx
jne 0x5a20
xorl %r12d, %r12d
pushq $0x3
popq %rbx
xorl %r14d, %r14d
movq 0x18(%rsp), %r15
cmpq %r14, 0x10(%rsp)
je 0x5dc2
movzbl (%r15,%r14), %esi
shll $0x2, %esi
movq 0x30(%rsp), %rax
addq 0x8(%rax), %rsi
movq %rbp, %rdi
movq %rbx, %rdx
callq 0x4a33
incq %r14
addq $0x3, %rbp
jmp 0x5889
cmpl $0x8, %edx
jne 0x5a6e
xorl %r12d, %r12d
pushq $0x3
popq %rbx
cmpq 0x10(%rsp), %r12
je 0x5af6
leaq (%r12,%r12,2), %rsi
addq 0x18(%rsp), %rsi
movq %rbp, %rdi
movq %rbx, %rdx
callq 0x4a33
movb $-0x1, 0x3(%rbp)
incq %r12
addq $0x4, %rbp
jmp 0x58c8
cmpl $0x8, %edx
jne 0x5b58
movq 0x10(%rsp), %rax
leaq (%rax,%rax,2), %rdx
jmp 0x5954
xorl %r12d, %r12d
xorl %eax, %eax
cmpl $0x8, %edx
jne 0x5b8b
movq 0x18(%rsp), %rdx
cmpq %rax, 0x10(%rsp)
je 0x55b4
movb (%rdx,%rax,2), %cl
movb %cl, 0x2(%rbp,%rax,4)
movb %cl, 0x1(%rbp,%rax,4)
movb %cl, (%rbp,%rax,4)
movb 0x1(%rdx,%rax,2), %cl
movb %cl, 0x3(%rbp,%rax,4)
incq %rax
jmp 0x591b
cmpl $0x8, %edx
jne 0x5bb7
movq 0x10(%rsp), %rdx
shlq $0x2, %rdx
movq %rbp, %rdi
movq 0x18(%rsp), %rsi
callq 0x4a33
jmp 0x5dc2
addq $0x2, %rbp
xorl %r12d, %r12d
xorl %eax, %eax
cmpl $0x8, %edx
jne 0x5bf0
movq 0x18(%rsp), %rdx
cmpq %rax, 0x10(%rsp)
je 0x55b4
movb (%rdx,%rax,2), %cl
movb %cl, (%rbp)
movb %cl, -0x1(%rbp)
movb %cl, -0x2(%rbp)
incq %rax
addq $0x3, %rbp
jmp 0x597d
cmpl $0x8, %edx
jne 0x5c15
pushq $0x3
popq %rbx
movq 0x18(%rsp), %r14
subq $0x1, 0x10(%rsp)
jb 0x5dc2
movq %rbp, %rdi
movq %r14, %rsi
movq %rbx, %rdx
callq 0x4a33
addq $0x3, %rbp
addq $0x4, %r14
jmp 0x59ae
leaq 0x40(%rsp), %r13
andq $0x0, (%r13)
pushq $0x4
popq %r14
movq 0x18(%rsp), %r15
subq $0x1, 0x10(%rsp)
jb 0x5dc2
movq %r13, %rdi
movq %r15, %rsi
callq 0xb6a9
leal (,%rax,4), %esi
movq 0x30(%rsp), %rax
addq 0x8(%rax), %rsi
movq %rbp, %rdi
movq %r14, %rdx
callq 0x4a33
movq %rbx, %rdx
addq $0x4, %rbp
jmp 0x59e5
leaq 0x40(%rsp), %r13
andq $0x0, (%r13)
pushq $0x3
popq %r14
movq 0x18(%rsp), %r15
subq $0x1, 0x10(%rsp)
jb 0x5dc2
movq %r13, %rdi
movq %r15, %rsi
callq 0xb6a9
leal (,%rax,4), %esi
movq 0x30(%rsp), %rax
addq 0x8(%rax), %rsi
movq %rbp, %rdi
movq %r14, %rdx
callq 0x4a33
movq %rbx, %rdx
addq $0x3, %rbp
jmp 0x5a33
movq 0x18(%rsp), %r9
addq $0x5, %r9
xorl %r12d, %r12d
xorl %eax, %eax
movq 0x30(%rsp), %r10
cmpq %rax, 0x10(%rsp)
je 0x5dc2
movzbl -0x5(%r9), %edi
movb %dil, (%rbp,%rax,4)
movzbl -0x3(%r9), %esi
movb %sil, 0x1(%rbp,%rax,4)
movzbl -0x1(%r9), %edx
movb %dl, 0x2(%rbp,%rax,4)
movb $-0x1, %cl
cmpl $0x0, 0x18(%r10)
je 0x5ae9
shll $0x8, %edi
movzbl -0x4(%r9), %r8d
orl %edi, %r8d
cmpl 0x1c(%r10), %r8d
jne 0x5ae9
shll $0x8, %esi
movzbl -0x2(%r9), %edi
orl %esi, %edi
cmpl 0x20(%r10), %edi
jne 0x5ae9
shll $0x8, %edx
movzbl (%r9), %ecx
orl %edx, %ecx
movq 0x30(%rsp), %rdx
cmpl 0x24(%rdx), %ecx
setne %cl
negb %cl
movb %cl, 0x3(%rbp,%rax,4)
incq %rax
addq $0x6, %r9
jmp 0x5a81
xorl %r12d, %r12d
movq 0x30(%rsp), %rax
cmpl $0x0, 0x18(%rax)
je 0x5dc2
imulq %r15, %r14
negq %r14
movq 0x28(%rsp), %r9
testq %r14, %r14
je 0x55b4
movzbl (%rbp,%r14,4), %eax
movq 0x30(%rsp), %rcx
cmpl %eax, 0x1c(%rcx)
jne 0x5b53
movzbl 0x1(%rbp,%r14,4), %eax
movq 0x30(%rsp), %rcx
cmpl %eax, 0x20(%rcx)
jne 0x5b53
movzbl 0x2(%rbp,%r14,4), %eax
movq 0x30(%rsp), %rcx
cmpl %eax, 0x24(%rcx)
jne 0x5b53
movb $0x0, 0x3(%rbp,%r14,4)
incq %r14
jmp 0x5b14
xorl %r12d, %r12d
xorl %eax, %eax
movq 0x18(%rsp), %rdx
subq $0x1, 0x10(%rsp)
jb 0x55b4
movb (%rdx,%rax,2), %cl
movb %cl, (%rbp,%rax)
movb 0x2(%rdx,%rax,2), %cl
movb %cl, 0x1(%rbp,%rax)
movb 0x4(%rdx,%rax,2), %cl
movb %cl, 0x2(%rbp,%rax)
addq $0x3, %rax
jmp 0x5b62
movq 0x18(%rsp), %rdx
cmpq %rax, 0x10(%rsp)
je 0x55b4
movb (%rdx,%rax,4), %cl
movb %cl, 0x2(%rbp,%rax,4)
movb %cl, 0x1(%rbp,%rax,4)
movb %cl, (%rbp,%rax,4)
movb 0x2(%rdx,%rax,4), %cl
movb %cl, 0x3(%rbp,%rax,4)
incq %rax
jmp 0x5b90
xorl %r12d, %r12d
xorl %eax, %eax
movq 0x18(%rsp), %rdx
cmpq %rax, 0x10(%rsp)
je 0x55b4
movb (%rdx,%rax,8), %cl
movb %cl, (%rbp,%rax,4)
movb 0x2(%rdx,%rax,8), %cl
movb %cl, 0x1(%rbp,%rax,4)
movb 0x4(%rdx,%rax,8), %cl
movb %cl, 0x2(%rbp,%rax,4)
movb 0x6(%rdx,%rax,8), %cl
movb %cl, 0x3(%rbp,%rax,4)
incq %rax
jmp 0x5bc1
movq 0x18(%rsp), %rdx
cmpq %rax, 0x10(%rsp)
je 0x55b4
movb (%rdx,%rax,4), %cl
movb %cl, (%rbp)
movb %cl, -0x1(%rbp)
movb %cl, -0x2(%rbp)
incq %rax
addq $0x3, %rbp
jmp 0x5bf5
xorl %r12d, %r12d
xorl %eax, %eax
movq 0x18(%rsp), %rdx
cmpq %rax, 0x10(%rsp)
je 0x55b4
movb (%rdx,%rax,8), %cl
movb %cl, (%rbp)
movb 0x2(%rdx,%rax,8), %cl
movb %cl, 0x1(%rbp)
movb 0x4(%rdx,%rax,8), %cl
movb %cl, 0x2(%rbp)
incq %rax
addq $0x3, %rbp
jmp 0x5c1f
xorl %r12d, %r12d
movq 0x30(%rsp), %rax
cmpl $0x0, 0x18(%rax)
je 0x55b4
imulq %r15, %r14
negq %r14
movq 0x30(%rsp), %rcx
testq %r14, %r14
je 0x55b4
movzbl (%rbp,%r14,4), %eax
cmpl %eax, 0x1c(%rcx)
jne 0x5c7f
movb $0x0, 0x3(%rbp,%r14,4)
incq %r14
jmp 0x5c65
xorl %r12d, %r12d
xorl %eax, %eax
movq 0x18(%rsp), %rsi
movq 0x30(%rsp), %rdi
cmpq %rax, 0x10(%rsp)
je 0x55b4
movzbl (%rsi,%rax,2), %ecx
movb %cl, 0x2(%rbp,%rax,4)
movb %cl, 0x1(%rbp,%rax,4)
movb %cl, (%rbp,%rax,4)
cmpl $0x0, 0x18(%rdi)
je 0x5cc8
shll $0x8, %ecx
movzbl 0x1(%rsi,%rax,2), %edx
orl %ecx, %edx
cmpl 0x1c(%rdi), %edx
setne %cl
negb %cl
jmp 0x5cca
movb $-0x1, %cl
movb %cl, 0x3(%rbp,%rax,4)
incq %rax
jmp 0x5c93
addq $0x2, %rbp
xorl %r12d, %r12d
xorl %eax, %eax
movq 0x18(%rsp), %rdx
cmpq %rax, 0x10(%rsp)
je 0x55b4
movb (%rdx,%rax), %cl
movb %cl, (%rbp)
movb %cl, -0x1(%rbp)
movb %cl, -0x2(%rbp)
incq %rax
addq $0x3, %rbp
jmp 0x5ce1
pushq $-0x1
popq %rbp
movl %edx, %ecx
shll %cl, %ebp
notl %ebp
leaq 0x40(%rsp), %r15
andq $0x0, (%r15)
xorl %r14d, %r14d
cmpq %r14, 0x10(%rsp)
je 0x5dbf
movq %r15, %rdi
movq %r12, %rsi
callq 0xb6a9
movl %eax, %ecx
imull $0xff, %eax, %eax
xorl %edx, %edx
divl %ebp
movq 0x48(%rsp), %rdx
movb %al, 0x2(%rdx,%r14,4)
movb %al, 0x1(%rdx,%r14,4)
movb %al, (%rdx,%r14,4)
movq 0x30(%rsp), %rax
cmpl $0x0, 0x18(%rax)
je 0x5d60
cmpl 0x1c(%rax), %ecx
setne %al
negb %al
jmp 0x5d62
movb $-0x1, %al
movq 0x48(%rsp), %rcx
movb %al, 0x3(%rcx,%r14,4)
incq %r14
movq %rbx, %rdx
jmp 0x5d16
movq %rbp, %r14
pushq $-0x1
popq %rbp
movl %edx, %ecx
shll %cl, %ebp
notl %ebp
leaq 0x40(%rsp), %r12
andq $0x0, (%r12)
addq $0x2, %r14
subq $0x1, 0x10(%rsp)
jb 0x5dbf
movq %r12, %rdi
movq %r15, %rsi
movq %rbx, %rdx
callq 0xb6a9
imull $0xff, %eax, %eax
xorl %edx, %edx
divl %ebp
movb %al, (%r14)
movb %al, -0x1(%r14)
movb %al, -0x2(%r14)
addq $0x3, %r14
jmp 0x5d8e
xorl %r12d, %r12d
movq 0x28(%rsp), %r9
jmp 0x55b4