void adjust_edge_pixel(unsigned char *input, unsigned char *org_image,
                       int wide) {
  int i, j;
  unsigned char *tmp = (unsigned char *)malloc(4608000 * sizeof(unsigned char));
  memcpy(tmp, input, 4608000 * sizeof(unsigned char));
  for (i = 2; i < 1920 - 2; i++) {
    for (j = 2; j < 2400 - 2; j++) {
      if ((((i * 2400) + j) + 1) % 5 == 0) {
        continue;
      }
      if (input[i * 2400 + j] != 0x00) {
        tmp[(i - 1) * 2400 + (j - 1)] = org_image[(i - 1) * 2400 + (j - 1)];
        tmp[(i - 1) * 2400 + (j)] = org_image[(i - 1) * 2400 + (j)];
        tmp[(i - 1) * 2400 + (j + 1)] = org_image[(i - 1) * 2400 + (j + 1)];
        tmp[(i)*2400 + (j - 1)] = org_image[(i)*2400 + (j - 1)];
        tmp[(i)*2400 + (j + 1)] = org_image[(i)*2400 + (j + 1)];
        tmp[(i + 1) * 2400 + (j - 1)] = org_image[(i + 1) * 2400 + (j - 1)];
        tmp[(i + 1) * 2400 + (j)] = org_image[(i + 1) * 2400 + (j)];
        tmp[(i + 1) * 2400 + (j + 1)] = org_image[(i + 1) * 2400 + (j + 1)];
        if (wide == 1) {
          tmp[(i - 1) * 2400 + (j - 2)] = org_image[(i - 1) * 2400 + (j - 2)];
          tmp[(i - 1) * 2400 + (j + 2)] = org_image[(i - 1) * 2400 + (j + 2)];
          tmp[(i)*2400 + (j - 2)] = org_image[(i)*2400 + (j - 2)];
          tmp[(i)*2400 + (j + 2)] = org_image[(i)*2400 + (j + 2)];
          tmp[(i + 1) * 2400 + (j - 2)] = org_image[(i + 1) * 2400 + (j - 2)];
          tmp[(i + 1) * 2400 + (j + 2)] = org_image[(i + 1) * 2400 + (j + 2)];
          tmp[(i - 2) * 2400 + (j - 2)] = org_image[(i - 2) * 2400 + (j - 2)];
          tmp[(i - 2) * 2400 + (j - 1)] = org_image[(i - 2) * 2400 + (j - 1)];
          tmp[(i - 2) * 2400 + (j)] = org_image[(i - 2) * 2400 + (j)];
          tmp[(i - 2) * 2400 + (j + 1)] = org_image[(i - 2) * 2400 + (j + 1)];
          tmp[(i - 2) * 2400 + (j + 2)] = org_image[(i - 2) * 2400 + (j + 2)];
          tmp[(i + 2) * 2400 + (j - 2)] = org_image[(i + 2) * 2400 + (j - 2)];
          tmp[(i + 2) * 2400 + (j - 1)] = org_image[(i + 2) * 2400 + (j - 1)];
          tmp[(i + 2) * 2400 + (j)] = org_image[(i + 2) * 2400 + (j)];
          tmp[(i + 2) * 2400 + (j + 1)] = org_image[(i + 2) * 2400 + (j + 1)];
          tmp[(i + 2) * 2400 + (j + 2)] = org_image[(i + 2) * 2400 + (j + 2)];
        }
      }
    }
  }
  memcpy(input, tmp, 4608000 * sizeof(unsigned char));
  free(tmp);
}


x86 assembly (clang, -O0):
<adjust_edge_pixel>:
push   %rbp
mov    %rsp,%rbp
sub    $0x30,%rsp
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    %edx,-0x14(%rbp)
mov    $0x465000,%edi
call   1050 <malloc@plt>
mov    %rax,-0x28(%rbp)
mov    -0x28(%rbp),%rdi
mov    -0x8(%rbp),%rsi
mov    $0x465000,%edx
call   1040 <memcpy@plt>
movl   $0x2,-0x18(%rbp)
cmpl   $0x77e,-0x18(%rbp)
jge    1751 <adjust_edge_pixel+0x621>
movl   $0x2,-0x1c(%rbp)
cmpl   $0x95e,-0x1c(%rbp)
jge    173e <adjust_edge_pixel+0x60e>
imul   $0x960,-0x18(%rbp),%eax
add    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    $0x5,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    11ae <adjust_edge_pixel+0x7e>
jmp    1730 <adjust_edge_pixel+0x600>
mov    -0x8(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
movzbl (%rax,%rcx,1),%eax
cmp    $0x0,%eax
je     172b <adjust_edge_pixel+0x5fb>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
sub    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
sub    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
add    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
add    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
mov    -0x1c(%rbp),%edx
sub    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
mov    -0x1c(%rbp),%esi
sub    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
mov    -0x1c(%rbp),%edx
add    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
mov    -0x1c(%rbp),%esi
add    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
sub    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
sub    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
add    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
add    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
cmpl   $0x1,-0x14(%rbp)
jne    1726 <adjust_edge_pixel+0x5f6>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
sub    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
sub    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
add    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
add    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
mov    -0x1c(%rbp),%edx
sub    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
mov    -0x1c(%rbp),%esi
sub    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
mov    -0x1c(%rbp),%edx
add    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
imul   $0x960,-0x18(%rbp),%ecx
mov    -0x1c(%rbp),%esi
add    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
sub    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
sub    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
add    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
add    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
sub    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
sub    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
sub    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
sub    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
add    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
add    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
add    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
add    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
sub    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
sub    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
sub    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
sub    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
add    -0x1c(%rbp),%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
add    $0x1,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
add    $0x1,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%edx
add    $0x2,%edx
add    %edx,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,1),%dl
mov    -0x28(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
imul   $0x960,%ecx,%ecx
mov    -0x1c(%rbp),%esi
add    $0x2,%esi
add    %esi,%ecx
movslq %ecx,%rcx
mov    %dl,(%rax,%rcx,1)
jmp    172b <adjust_edge_pixel+0x5fb>
jmp    1730 <adjust_edge_pixel+0x600>
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    117e <adjust_edge_pixel+0x4e>
jmp    1743 <adjust_edge_pixel+0x613>
mov    -0x18(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x18(%rbp)
jmp    116a <adjust_edge_pixel+0x3a>
mov    -0x8(%rbp),%rdi
mov    -0x28(%rbp),%rsi
mov    $0x465000,%edx
call   1040 <memcpy@plt>
mov    -0x28(%rbp),%rdi
call   1030 <free@plt>
add    $0x30,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<adjust_edge_pixel>:
push   %rbp
push   %r15
push   %r14
push   %r12
push   %rbx
mov    %edx,%r12d
mov    %rsi,%rbx
mov    %rdi,%r14
mov    $0x465000,%edi
call   1050 <malloc@plt>
mov    %rax,%r15
mov    $0x465000,%edx
mov    %rax,%rdi
mov    %r14,%rsi
call   1040 <memcpy@plt>
add    $0x2584,%rbx
mov    %r15,%rax
add    $0x2584,%rax
lea    0x12c2(%r14),%rcx
mov    $0x2,%r8d
mov    $0xffffed3d,%esi
mov    $0x12c3,%r9d
mov    $0xcccccccd,%r10d
jmp    11c2 <adjust_edge_pixel+0x92>
xchg   %ax,%ax
add    $0x1,%r8
add    $0x960,%rbx
add    $0x960,%rax
add    $0xfffff6a0,%esi
add    $0x960,%r9d
add    $0x960,%rcx
cmp    $0x77e,%r8
je     1350 <adjust_edge_pixel+0x220>
mov    %r9d,%edi
xor    %ebp,%ebp
jmp    11e0 <adjust_edge_pixel+0xb0>
nopl   0x0(%rax)
add    $0x1,%rbp
add    $0x1,%edi
cmp    $0x95c,%rbp
je     1190 <adjust_edge_pixel+0x60>
mov    %edi,%edx
imul   %r10,%rdx
shr    $0x22,%rdx
lea    (%rdx,%rdx,4),%edx
add    %esi,%edx
cmp    %ebp,%edx
je     11d0 <adjust_edge_pixel+0xa0>
cmpb   $0x0,(%rcx,%rbp,1)
je     11d0 <adjust_edge_pixel+0xa0>
movzbl -0x1c23(%rbx,%rbp,1),%edx
mov    %dl,-0x1c23(%rax,%rbp,1)
movzbl -0x1c22(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x1c22(%rax,%rbp,1)
movzbl -0x1c21(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x1c21(%rax,%rbp,1)
movzbl -0x12c3(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x12c3(%rax,%rbp,1)
movzbl -0x12c1(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x12c1(%rax,%rbp,1)
movzbl -0x963(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x963(%rax,%rbp,1)
movzbl -0x962(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x962(%rax,%rbp,1)
movzbl -0x961(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x961(%rax,%rbp,1)
cmp    $0x1,%r12d
jne    11d0 <adjust_edge_pixel+0xa0>
movzbl -0x1c24(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x1c24(%rax,%rbp,1)
movzbl -0x1c20(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x1c20(%rax,%rbp,1)
movzbl -0x12c4(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x12c4(%rax,%rbp,1)
movzbl -0x12c0(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x12c0(%rax,%rbp,1)
movzbl -0x964(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x964(%rax,%rbp,1)
movzbl -0x960(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x960(%rax,%rbp,1)
movzbl -0x2584(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x2584(%rax,%rbp,1)
movzbl -0x2583(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x2583(%rax,%rbp,1)
movzbl -0x2582(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x2582(%rax,%rbp,1)
movzbl -0x2581(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x2581(%rax,%rbp,1)
movzbl -0x2580(%rbx,%rbp,1),%edx
ff
mov    %dl,-0x2580(%rax,%rbp,1)
movzbl -0x4(%rbx,%rbp,1),%edx
mov    %dl,-0x4(%rax,%rbp,1)
movzbl -0x3(%rbx,%rbp,1),%edx
mov    %dl,-0x3(%rax,%rbp,1)
movzbl -0x2(%rbx,%rbp,1),%edx
mov    %dl,-0x2(%rax,%rbp,1)
movzbl -0x1(%rbx,%rbp,1),%edx
mov    %dl,-0x1(%rax,%rbp,1)
movzbl (%rbx,%rbp,1),%edx
mov    %dl,(%rax,%rbp,1)
jmp    11d0 <adjust_edge_pixel+0xa0>
mov    $0x465000,%edx
mov    %r14,%rdi
mov    %r15,%rsi
call   1040 <memcpy@plt>
mov    %r15,%rdi
pop    %rbx
pop    %r12
pop    %r14
pop    %r15
pop    %rbp
jmp    1030 <free@plt>

LLVM IR (-O0):
define void @adjust_edge_pixel(i8* %0, i8* %1, i32 %2) {
%4 = alloca i8*
%5 = alloca i8*
%6 = alloca i32
%7 = alloca i32
%8 = alloca i32
%9 = alloca i8*
store i8* %0, i8** %4
store i8* %1, i8** %5
store i32 %2, i32* %6
%10 = call i8* @malloc(i64 4608000)
store i8* %10, i8** %9
%11 = load i8*, i8** %9
%12 = load i8*, i8** %4
store i32 2, i32* %7
br label %13
13: ; preds = %490, %3
%14 = load i32, i32* %7
%15 = icmp slt i32 %14, 1918
br i1 %15, label %16, label %493
16: ; preds = %13
store i32 2, i32* %8
br label %17
17: ; preds = %486, %16
%18 = load i32, i32* %8
%19 = icmp slt i32 %18, 2398
br i1 %19, label %20, label %489
20: ; preds = %17
%21 = load i32, i32* %7
%22 = mul nsw i32 %21, 2400
%23 = load i32, i32* %8
%24 = add nsw i32 %22, %23
%25 = add nsw i32 %24, 1
%26 = srem i32 %25, 5
%27 = icmp eq i32 %26, 0
br i1 %27, label %28, label %29
28: ; preds = %20
br label %486
29: ; preds = %20
%30 = load i8*, i8** %4
%31 = load i32, i32* %7
%32 = mul nsw i32 %31, 2400
%33 = load i32, i32* %8
%34 = add nsw i32 %32, %33
%35 = sext i32 %34 to i64
%36 = getelementptr inbounds i8, i8* %30, i64 %35
%37 = load i8, i8* %36
%38 = zext i8 %37 to i32
%39 = icmp ne i32 %38, 0
br i1 %39, label %40, label %485
40: ; preds = %29
%41 = load i8*, i8** %5
%42 = load i32, i32* %7
%43 = sub nsw i32 %42, 1
%44 = mul nsw i32 %43, 2400
%45 = load i32, i32* %8
%46 = sub nsw i32 %45, 1
%47 = add nsw i32 %44, %46
%48 = sext i32 %47 to i64
%49 = getelementptr inbounds i8, i8* %41, i64 %48
%50 = load i8, i8* %49
%51 = load i8*, i8** %9
%52 = load i32, i32* %7
%53 = sub nsw i32 %52, 1
%54 = mul nsw i32 %53, 2400
%55 = load i32, i32* %8
%56 = sub nsw i32 %55, 1
%57 = add nsw i32 %54, %56
%58 = sext i32 %57 to i64
%59 = getelementptr inbounds i8, i8* %51, i64 %58
store i8 %50, i8* %59
%60 = load i8*, i8** %5
%61 = load i32, i32* %7
%62 = sub nsw i32 %61, 1
%63 = mul nsw i32 %62, 2400
%64 = load i32, i32* %8
%65 = add nsw i32 %63, %64
%66 = sext i32 %65 to i64
%67 = getelementptr inbounds i8, i8* %60, i64 %66
%68 = load i8, i8* %67
%69 = load i8*, i8** %9
%70 = load i32, i32* %7
%71 = sub nsw i32 %70, 1
%72 = mul nsw i32 %71, 2400
%73 = load i32, i32* %8
%74 = add nsw i32 %72, %73
%75 = sext i32 %74 to i64
%76 = getelementptr inbounds i8, i8* %69, i64 %75
store i8 %68, i8* %76
%77 = load i8*, i8** %5
%78 = load i32, i32* %7
%79 = sub nsw i32 %78, 1
%80 = mul nsw i32 %79, 2400
%81 = load i32, i32* %8
%82 = add nsw i32 %81, 1
%83 = add nsw i32 %80, %82
%84 = sext i32 %83 to i64
%85 = getelementptr inbounds i8, i8* %77, i64 %84
%86 = load i8, i8* %85
%87 = load i8*, i8** %9
%88 = load i32, i32* %7
%89 = sub nsw i32 %88, 1
%90 = mul nsw i32 %89, 2400
%91 = load i32, i32* %8
%92 = add nsw i32 %91, 1
%93 = add nsw i32 %90, %92
%94 = sext i32 %93 to i64
%95 = getelementptr inbounds i8, i8* %87, i64 %94
store i8 %86, i8* %95
%96 = load i8*, i8** %5
%97 = load i32, i32* %7
%98 = mul nsw i32 %97, 2400
%99 = load i32, i32* %8
%100 = sub nsw i32 %99, 1
%101 = add nsw i32 %98, %100
%102 = sext i32 %101 to i64
%103 = getelementptr inbounds i8, i8* %96, i64 %102
%104 = load i8, i8* %103
%105 = load i8*, i8** %9
%106 = load i32, i32* %7
%107 = mul nsw i32 %106, 2400
%108 = load i32, i32* %8
%109 = sub nsw i32 %108, 1
%110 = add nsw i32 %107, %109
%111 = sext i32 %110 to i64
%112 = getelementptr inbounds i8, i8* %105, i64 %111
store i8 %104, i8* %112
%113 = load i8*, i8** %5
%114 = load i32, i32* %7
%115 = mul nsw i32 %114, 2400
%116 = load i32, i32* %8
%117 = add nsw i32 %116, 1
%118 = add nsw i32 %115, %117
%119 = sext i32 %118 to i64
%120 = getelementptr inbounds i8, i8* %113, i64 %119
%121 = load i8, i8* %120
%122 = load i8*, i8** %9
%123 = load i32, i32* %7
%124 = mul nsw i32 %123, 2400
%125 = load i32, i32* %8
%126 = add nsw i32 %125, 1
%127 = add nsw i32 %124, %126
%128 = sext i32 %127 to i64
%129 = getelementptr inbounds i8, i8* %122, i64 %128
store i8 %121, i8* %129
%130 = load i8*, i8** %5
%131 = load i32, i32* %7
%132 = add nsw i32 %131, 1
%133 = mul nsw i32 %132, 2400
%134 = load i32, i32* %8
%135 = sub nsw i32 %134, 1
%136 = add nsw i32 %133, %135
%137 = sext i32 %136 to i64
%138 = getelementptr inbounds i8, i8* %130, i64 %137
%139 = load i8, i8* %138
%140 = load i8*, i8** %9
%141 = load i32, i32* %7
%142 = add nsw i32 %141, 1
%143 = mul nsw i32 %142, 2400
%144 = load i32, i32* %8
%145 = sub nsw i32 %144, 1
%146 = add nsw i32 %143, %145
%147 = sext i32 %146 to i64
%148 = getelementptr inbounds i8, i8* %140, i64 %147
store i8 %139, i8* %148
%149 = load i8*, i8** %5
%150 = load i32, i32* %7
%151 = add nsw i32 %150, 1
%152 = mul nsw i32 %151, 2400
%153 = load i32, i32* %8
%154 = add nsw i32 %152, %153
%155 = sext i32 %154 to i64
%156 = getelementptr inbounds i8, i8* %149, i64 %155
%157 = load i8, i8* %156
%158 = load i8*, i8** %9
%159 = load i32, i32* %7
%160 = add nsw i32 %159, 1
%161 = mul nsw i32 %160, 2400
%162 = load i32, i32* %8
%163 = add nsw i32 %161, %162
%164 = sext i32 %163 to i64
%165 = getelementptr inbounds i8, i8* %158, i64 %164
store i8 %157, i8* %165
%166 = load i8*, i8** %5
%167 = load i32, i32* %7
%168 = add nsw i32 %167, 1
%169 = mul nsw i32 %168, 2400
%170 = load i32, i32* %8
%171 = add nsw i32 %170, 1
%172 = add nsw i32 %169, %171
%173 = sext i32 %172 to i64
%174 = getelementptr inbounds i8, i8* %166, i64 %173
%175 = load i8, i8* %174
%176 = load i8*, i8** %9
%177 = load i32, i32* %7
%178 = add nsw i32 %177, 1
%179 = mul nsw i32 %178, 2400
%180 = load i32, i32* %8
%181 = add nsw i32 %180, 1
%182 = add nsw i32 %179, %181
%183 = sext i32 %182 to i64
%184 = getelementptr inbounds i8, i8* %176, i64 %183
store i8 %175, i8* %184
%185 = load i32, i32* %6
%186 = icmp eq i32 %185, 1
br i1 %186, label %187, label %484
187: ; preds = %40
%188 = load i8*, i8** %5
%189 = load i32, i32* %7
%190 = sub nsw i32 %189, 1
%191 = mul nsw i32 %190, 2400
%192 = load i32, i32* %8
%193 = sub nsw i32 %192, 2
%194 = add nsw i32 %191, %193
%195 = sext i32 %194 to i64
%196 = getelementptr inbounds i8, i8* %188, i64 %195
%197 = load i8, i8* %196
%198 = load i8*, i8** %9
%199 = load i32, i32* %7
%200 = sub nsw i32 %199, 1
%201 = mul nsw i32 %200, 2400
%202 = load i32, i32* %8
%203 = sub nsw i32 %202, 2
%204 = add nsw i32 %201, %203
%205 = sext i32 %204 to i64
%206 = getelementptr inbounds i8, i8* %198, i64 %205
store i8 %197, i8* %206
%207 = load i8*, i8** %5
%208 = load i32, i32* %7
%209 = sub nsw i32 %208, 1
%210 = mul nsw i32 %209, 2400
%211 = load i32, i32* %8
%212 = add nsw i32 %211, 2
%213 = add nsw i32 %210, %212
%214 = sext i32 %213 to i64
%215 = getelementptr inbounds i8, i8* %207, i64 %214
%216 = load i8, i8* %215
%217 = load i8*, i8** %9
%218 = load i32, i32* %7
%219 = sub nsw i32 %218, 1
%220 = mul nsw i32 %219, 2400
%221 = load i32, i32* %8
%222 = add nsw i32 %221, 2
%223 = add nsw i32 %220, %222
%224 = sext i32 %223 to i64
%225 = getelementptr inbounds i8, i8* %217, i64 %224
store i8 %216, i8* %225
%226 = load i8*, i8** %5
%227 = load i32, i32* %7
%228 = mul nsw i32 %227, 2400
%229 = load i32, i32* %8
%230 = sub nsw i32 %229, 2
%231 = add nsw i32 %228, %230
%232 = sext i32 %231 to i64
%233 = getelementptr inbounds i8, i8* %226, i64 %232
%234 = load i8, i8* %233
%235 = load i8*, i8** %9
%236 = load i32, i32* %7
%237 = mul nsw i32 %236, 2400
%238 = load i32, i32* %8
%239 = sub nsw i32 %238, 2
%240 = add nsw i32 %237, %239
%241 = sext i32 %240 to i64
%242 = getelementptr inbounds i8, i8* %235, i64 %241
store i8 %234, i8* %242
%243 = load i8*, i8** %5
%244 = load i32, i32* %7
%245 = mul nsw i32 %244, 2400
%246 = load i32, i32* %8
%247 = add nsw i32 %246, 2
%248 = add nsw i32 %245, %247
%249 = sext i32 %248 to i64
%250 = getelementptr inbounds i8, i8* %243, i64 %249
%251 = load i8, i8* %250
%252 = load i8*, i8** %9
%253 = load i32, i32* %7
%254 = mul nsw i32 %253, 2400
%255 = load i32, i32* %8
%256 = add nsw i32 %255, 2
%257 = add nsw i32 %254, %256
%258 = sext i32 %257 to i64
%259 = getelementptr inbounds i8, i8* %252, i64 %258
store i8 %251, i8* %259
%260 = load i8*, i8** %5
%261 = load i32, i32* %7
%262 = add nsw i32 %261, 1
%263 = mul nsw i32 %262, 2400
%264 = load i32, i32* %8
%265 = sub nsw i32 %264, 2
%266 = add nsw i32 %263, %265
%267 = sext i32 %266 to i64
%268 = getelementptr inbounds i8, i8* %260, i64 %267
%269 = load i8, i8* %268
%270 = load i8*, i8** %9
%271 = load i32, i32* %7
%272 = add nsw i32 %271, 1
%273 = mul nsw i32 %272, 2400
%274 = load i32, i32* %8
%275 = sub nsw i32 %274, 2
%276 = add nsw i32 %273, %275
%277 = sext i32 %276 to i64
%278 = getelementptr inbounds i8, i8* %270, i64 %277
store i8 %269, i8* %278
%279 = load i8*, i8** %5
%280 = load i32, i32* %7
%281 = add nsw i32 %280, 1
%282 = mul nsw i32 %281, 2400
%283 = load i32, i32* %8
%284 = add nsw i32 %283, 2
%285 = add nsw i32 %282, %284
%286 = sext i32 %285 to i64
%287 = getelementptr inbounds i8, i8* %279, i64 %286
%288 = load i8, i8* %287
%289 = load i8*, i8** %9
%290 = load i32, i32* %7
%291 = add nsw i32 %290, 1
%292 = mul nsw i32 %291, 2400
%293 = load i32, i32* %8
%294 = add nsw i32 %293, 2
%295 = add nsw i32 %292, %294
%296 = sext i32 %295 to i64
%297 = getelementptr inbounds i8, i8* %289, i64 %296
store i8 %288, i8* %297
%298 = load i8*, i8** %5
%299 = load i32, i32* %7
%300 = sub nsw i32 %299, 2
%301 = mul nsw i32 %300, 2400
%302 = load i32, i32* %8
%303 = sub nsw i32 %302, 2
%304 = add nsw i32 %301, %303
%305 = sext i32 %304 to i64
%306 = getelementptr inbounds i8, i8* %298, i64 %305
%307 = load i8, i8* %306
%308 = load i8*, i8** %9
%309 = load i32, i32* %7
%310 = sub nsw i32 %309, 2
%311 = mul nsw i32 %310, 2400
%312 = load i32, i32* %8
%313 = sub nsw i32 %312, 2
%314 = add nsw i32 %311, %313
%315 = sext i32 %314 to i64
%316 = getelementptr inbounds i8, i8* %308, i64 %315
store i8 %307, i8* %316
%317 = load i8*, i8** %5
%318 = load i32, i32* %7
%319 = sub nsw i32 %318, 2
%320 = mul nsw i32 %319, 2400
%321 = load i32, i32* %8
%322 = sub nsw i32 %321, 1
%323 = add nsw i32 %320, %322
%324 = sext i32 %323 to i64
%325 = getelementptr inbounds i8, i8* %317, i64 %324
%326 = load i8, i8* %325
%327 = load i8*, i8** %9
%328 = load i32, i32* %7
%329 = sub nsw i32 %328, 2
%330 = mul nsw i32 %329, 2400
%331 = load i32, i32* %8
%332 = sub nsw i32 %331, 1
%333 = add nsw i32 %330, %332
%334 = sext i32 %333 to i64
%335 = getelementptr inbounds i8, i8* %327, i64 %334
store i8 %326, i8* %335
%336 = load i8*, i8** %5
%337 = load i32, i32* %7
%338 = sub nsw i32 %337, 2
%339 = mul nsw i32 %338, 2400
%340 = load i32, i32* %8
%341 = add nsw i32 %339, %340
%342 = sext i32 %341 to i64
%343 = getelementptr inbounds i8, i8* %336, i64 %342
%344 = load i8, i8* %343
%345 = load i8*, i8** %9
%346 = load i32, i32* %7
%347 = sub nsw i32 %346, 2
%348 = mul nsw i32 %347, 2400
%349 = load i32, i32* %8
%350 = add nsw i32 %348, %349
%351 = sext i32 %350 to i64
%352 = getelementptr inbounds i8, i8* %345, i64 %351
store i8 %344, i8* %352
%353 = load i8*, i8** %5
%354 = load i32, i32* %7
%355 = sub nsw i32 %354, 2
%356 = mul nsw i32 %355, 2400
%357 = load i32, i32* %8
%358 = add nsw i32 %357, 1
%359 = add nsw i32 %356, %358
%360 = sext i32 %359 to i64
%361 = getelementptr inbounds i8, i8* %353, i64 %360
%362 = load i8, i8* %361
%363 = load i8*, i8** %9
%364 = load i32, i32* %7
%365 = sub nsw i32 %364, 2
%366 = mul nsw i32 %365, 2400
%367 = load i32, i32* %8
%368 = add nsw i32 %367, 1
%369 = add nsw i32 %366, %368
%370 = sext i32 %369 to i64
%371 = getelementptr inbounds i8, i8* %363, i64 %370
store i8 %362, i8* %371
%372 = load i8*, i8** %5
%373 = load i32, i32* %7
%374 = sub nsw i32 %373, 2
%375 = mul nsw i32 %374, 2400
%376 = load i32, i32* %8
%377 = add nsw i32 %376, 2
%378 = add nsw i32 %375, %377
%379 = sext i32 %378 to i64
%380 = getelementptr inbounds i8, i8* %372, i64 %379
%381 = load i8, i8* %380
%382 = load i8*, i8** %9
%383 = load i32, i32* %7
%384 = sub nsw i32 %383, 2
%385 = mul nsw i32 %384, 2400
%386 = load i32, i32* %8
%387 = add nsw i32 %386, 2
%388 = add nsw i32 %385, %387
%389 = sext i32 %388 to i64
%390 = getelementptr inbounds i8, i8* %382, i64 %389
store i8 %381, i8* %390
%391 = load i8*, i8** %5
%392 = load i32, i32* %7
%393 = add nsw i32 %392, 2
%394 = mul nsw i32 %393, 2400
%395 = load i32, i32* %8
%396 = sub nsw i32 %395, 2
%397 = add nsw i32 %394, %396
%398 = sext i32 %397 to i64
%399 = getelementptr inbounds i8, i8* %391, i64 %398
%400 = load i8, i8* %399
%401 = load i8*, i8** %9
%402 = load i32, i32* %7
%403 = add nsw i32 %402, 2
%404 = mul nsw i32 %403, 2400
%405 = load i32, i32* %8
%406 = sub nsw i32 %405, 2
%407 = add nsw i32 %404, %406
%408 = sext i32 %407 to i64
%409 = getelementptr inbounds i8, i8* %401, i64 %408
store i8 %400, i8* %409
%410 = load i8*, i8** %5
%411 = load i32, i32* %7
%412 = add nsw i32 %411, 2
%413 = mul nsw i32 %412, 2400
%414 = load i32, i32* %8
%415 = sub nsw i32 %414, 1
%416 = add nsw i32 %413, %415
%417 = sext i32 %416 to i64
%418 = getelementptr inbounds i8, i8* %410, i64 %417
%419 = load i8, i8* %418
%420 = load i8*, i8** %9
%421 = load i32, i32* %7
%422 = add nsw i32 %421, 2
%423 = mul nsw i32 %422, 2400
%424 = load i32, i32* %8
%425 = sub nsw i32 %424, 1
%426 = add nsw i32 %423, %425
%427 = sext i32 %426 to i64
%428 = getelementptr inbounds i8, i8* %420, i64 %427
store i8 %419, i8* %428
%429 = load i8*, i8** %5
%430 = load i32, i32* %7
%431 = add nsw i32 %430, 2
%432 = mul nsw i32 %431, 2400
%433 = load i32, i32* %8
%434 = add nsw i32 %432, %433
%435 = sext i32 %434 to i64
%436 = getelementptr inbounds i8, i8* %429, i64 %435
%437 = load i8, i8* %436
%438 = load i8*, i8** %9
%439 = load i32, i32* %7
%440 = add nsw i32 %439, 2
%441 = mul nsw i32 %440, 2400
%442 = load i32, i32* %8
%443 = add nsw i32 %441, %442
%444 = sext i32 %443 to i64
%445 = getelementptr inbounds i8, i8* %438, i64 %444
store i8 %437, i8* %445
%446 = load i8*, i8** %5
%447 = load i32, i32* %7
%448 = add nsw i32 %447, 2
%449 = mul nsw i32 %448, 2400
%450 = load i32, i32* %8
%451 = add nsw i32 %450, 1
%452 = add nsw i32 %449, %451
%453 = sext i32 %452 to i64
%454 = getelementptr inbounds i8, i8* %446, i64 %453
%455 = load i8, i8* %454
%456 = load i8*, i8** %9
%457 = load i32, i32* %7
%458 = add nsw i32 %457, 2
%459 = mul nsw i32 %458, 2400
%460 = load i32, i32* %8
%461 = add nsw i32 %460, 1
%462 = add nsw i32 %459, %461
%463 = sext i32 %462 to i64
%464 = getelementptr inbounds i8, i8* %456, i64 %463
store i8 %455, i8* %464
%465 = load i8*, i8** %5
%466 = load i32, i32* %7
%467 = add nsw i32 %466, 2
%468 = mul nsw i32 %467, 2400
%469 = load i32, i32* %8
%470 = add nsw i32 %469, 2
%471 = add nsw i32 %468, %470
%472 = sext i32 %471 to i64
%473 = getelementptr inbounds i8, i8* %465, i64 %472
%474 = load i8, i8* %473
%475 = load i8*, i8** %9
%476 = load i32, i32* %7
%477 = add nsw i32 %476, 2
%478 = mul nsw i32 %477, 2400
%479 = load i32, i32* %8
%480 = add nsw i32 %479, 2
%481 = add nsw i32 %478, %480
%482 = sext i32 %481 to i64
%483 = getelementptr inbounds i8, i8* %475, i64 %482
store i8 %474, i8* %483
br label %484
484: ; preds = %187, %40
br label %485
485: ; preds = %484, %29
br label %486
486: ; preds = %485, %28
%487 = load i32, i32* %8
%488 = add nsw i32 %487, 1
store i32 %488, i32* %8
br label %17
489: ; preds = %17
br label %490
490: ; preds = %489
%491 = load i32, i32* %7
%492 = add nsw i32 %491, 1
store i32 %492, i32* %7
br label %13
493: ; preds = %13
%494 = load i8*, i8** %4
%495 = load i8*, i8** %9
%496 = load i8*, i8** %9
ret void
}

LLVM IR (-O2):
define void @adjust_edge_pixel(i8* nocapture %0, i8* %1, i32 %2) {
%4 = tail call dereferenceable_or_null(4608000) i8* @malloc(i64 4608000)
tail call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 1 dereferenceable(4608000) %4, i8* align 1 dereferenceable(4608000) %0, i64 4608000, i1 false)
%5 = icmp eq i32 %2, 1
br label %6
6: ; preds = %3, %129
%7 = phi i64 [ 2, %3 ], [ %130, %129 ]
%8 = mul nuw nsw i64 %7, 2400
%9 = add nsw i64 %8, -2400
%10 = add nuw nsw i64 %8, 2400
%11 = add nsw i64 %8, -4800
%12 = add nuw nsw i64 %8, 4800
br label %13
13: ; preds = %6, %126
%14 = phi i64 [ 2, %6 ], [ %127, %126 ]
%15 = add nuw nsw i64 %14, %8
%16 = trunc i64 %15 to i32
%17 = add i32 %16, 1
%18 = urem i32 %17, 5
%19 = icmp eq i32 %18, 0
br i1 %19, label %126, label %20
20: ; preds = %13
%21 = getelementptr inbounds i8, i8* %0, i64 %15
%22 = load i8, i8* %21
%23 = icmp eq i8 %22, 0
br i1 %23, label %126, label %24
24: ; preds = %20
%25 = add nsw i64 %14, -1
%26 = add nuw nsw i64 %25, %9
%27 = getelementptr inbounds i8, i8* %1, i64 %26
%28 = load i8, i8* %27
%29 = getelementptr inbounds i8, i8* %4, i64 %26
store i8 %28, i8* %29
%30 = add nuw nsw i64 %14, %9
%31 = getelementptr inbounds i8, i8* %1, i64 %30
%32 = load i8, i8* %31
%33 = getelementptr inbounds i8, i8* %4, i64 %30
store i8 %32, i8* %33
%34 = add nuw nsw i64 %14, 1
%35 = add nuw nsw i64 %34, %9
%36 = getelementptr inbounds i8, i8* %1, i64 %35
%37 = load i8, i8* %36
%38 = getelementptr inbounds i8, i8* %4, i64 %35
store i8 %37, i8* %38
%39 = add nuw nsw i64 %25, %8
%40 = getelementptr inbounds i8, i8* %1, i64 %39
%41 = load i8, i8* %40
%42 = getelementptr inbounds i8, i8* %4, i64 %39
store i8 %41, i8* %42
%43 = add nuw nsw i64 %34, %8
%44 = getelementptr inbounds i8, i8* %1, i64 %43
%45 = load i8, i8* %44
%46 = getelementptr inbounds i8, i8* %4, i64 %43
store i8 %45, i8* %46
%47 = add nuw nsw i64 %25, %10
%48 = getelementptr inbounds i8, i8* %1, i64 %47
%49 = load i8, i8* %48
%50 = getelementptr inbounds i8, i8* %4, i64 %47
store i8 %49, i8* %50
%51 = add nuw nsw i64 %14, %10
%52 = getelementptr inbounds i8, i8* %1, i64 %51
%53 = load i8, i8* %52
%54 = getelementptr inbounds i8, i8* %4, i64 %51
store i8 %53, i8* %54
%55 = add nuw nsw i64 %34, %10
%56 = getelementptr inbounds i8, i8* %1, i64 %55
%57 = load i8, i8* %56
%58 = getelementptr inbounds i8, i8* %4, i64 %55
store i8 %57, i8* %58
br i1 %5, label %59, label %126
59: ; preds = %24
%60 = add nsw i64 %14, -2
%61 = add nuw nsw i64 %60, %9
%62 = getelementptr inbounds i8, i8* %1, i64 %61
%63 = load i8, i8* %62
%64 = getelementptr inbounds i8, i8* %4, i64 %61
store i8 %63, i8* %64
%65 = add nuw nsw i64 %14, 2
%66 = add nuw nsw i64 %65, %9
%67 = getelementptr inbounds i8, i8* %1, i64 %66
%68 = load i8, i8* %67
%69 = getelementptr inbounds i8, i8* %4, i64 %66
store i8 %68, i8* %69
%70 = add nuw nsw i64 %60, %8
%71 = getelementptr inbounds i8, i8* %1, i64 %70
%72 = load i8, i8* %71
%73 = getelementptr inbounds i8, i8* %4, i64 %70
store i8 %72, i8* %73
%74 = add nuw nsw i64 %65, %8
%75 = getelementptr inbounds i8, i8* %1, i64 %74
%76 = load i8, i8* %75
%77 = getelementptr inbounds i8, i8* %4, i64 %74
store i8 %76, i8* %77
%78 = add nuw nsw i64 %60, %10
%79 = getelementptr inbounds i8, i8* %1, i64 %78
%80 = load i8, i8* %79
%81 = getelementptr inbounds i8, i8* %4, i64 %78
store i8 %80, i8* %81
%82 = add nuw nsw i64 %65, %10
%83 = getelementptr inbounds i8, i8* %1, i64 %82
%84 = load i8, i8* %83
%85 = getelementptr inbounds i8, i8* %4, i64 %82
store i8 %84, i8* %85
%86 = add nuw nsw i64 %60, %11
%87 = getelementptr inbounds i8, i8* %1, i64 %86
%88 = load i8, i8* %87
%89 = getelementptr inbounds i8, i8* %4, i64 %86
store i8 %88, i8* %89
%90 = add nuw nsw i64 %25, %11
%91 = getelementptr inbounds i8, i8* %1, i64 %90
%92 = load i8, i8* %91
%93 = getelementptr inbounds i8, i8* %4, i64 %90
store i8 %92, i8* %93
%94 = add nuw nsw i64 %14, %11
%95 = getelementptr inbounds i8, i8* %1, i64 %94
%96 = load i8, i8* %95
%97 = getelementptr inbounds i8, i8* %4, i64 %94
store i8 %96, i8* %97
%98 = add nuw nsw i64 %34, %11
%99 = getelementptr inbounds i8, i8* %1, i64 %98
%100 = load i8, i8* %99
%101 = getelementptr inbounds i8, i8* %4, i64 %98
store i8 %100, i8* %101
%102 = add nuw nsw i64 %65, %11
%103 = getelementptr inbounds i8, i8* %1, i64 %102
%104 = load i8, i8* %103
%105 = getelementptr inbounds i8, i8* %4, i64 %102
store i8 %104, i8* %105
%106 = add nuw nsw i64 %60, %12
%107 = getelementptr inbounds i8, i8* %1, i64 %106
%108 = load i8, i8* %107
%109 = getelementptr inbounds i8, i8* %4, i64 %106
store i8 %108, i8* %109
%110 = add nuw nsw i64 %25, %12
%111 = getelementptr inbounds i8, i8* %1, i64 %110
%112 = load i8, i8* %111
%113 = getelementptr inbounds i8, i8* %4, i64 %110
store i8 %112, i8* %113
%114 = add nuw nsw i64 %14, %12
%115 = getelementptr inbounds i8, i8* %1, i64 %114
%116 = load i8, i8* %115
%117 = getelementptr inbounds i8, i8* %4, i64 %114
store i8 %116, i8* %117
%118 = add nuw nsw i64 %34, %12
%119 = getelementptr inbounds i8, i8* %1, i64 %118
%120 = load i8, i8* %119
%121 = getelementptr inbounds i8, i8* %4, i64 %118
store i8 %120, i8* %121
%122 = add nuw nsw i64 %65, %12
%123 = getelementptr inbounds i8, i8* %1, i64 %122
%124 = load i8, i8* %123
%125 = getelementptr inbounds i8, i8* %4, i64 %122
store i8 %124, i8* %125
br label %126
126: ; preds = %20, %59, %24, %13
%127 = add nuw nsw i64 %14, 1
%128 = icmp eq i64 %127, 2398
br i1 %128, label %129, label %13
129: ; preds = %126
%130 = add nuw nsw i64 %7, 1
%131 = icmp eq i64 %130, 1918
br i1 %131, label %132, label %6
132: ; preds = %129
tail call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 1 dereferenceable(4608000) %0, i8* align 1 dereferenceable(4608000) %4, i64 4608000, i1 false)
tail call void @free(i8* %4)
ret void
}