// File: rishabh-battulwar[P]imageprocessing/./include/ImageProc.h
// Function: ImageProc::error_diffusion(Image&, Image&)
void ImageProc::error_diffusion(Image &img_orig, Image &img_modified)
{
	float diffusionError;
	int direction;
	float img_orig_float[img_orig.rows][img_orig.cols][img_orig.channels];

	for(int i = 0; i < img_orig.rows; i++)
		for(int j = 0; j < img_orig.cols; j++)
			for(int k = 0; k < img_orig.channels; k++)
			{
				img_orig_float[i][j][k] = float(img_orig.getvalue(i,j,k)/255.0);
			}


	for(int i = 0; i < img_modified.rows-1; i++)
	{
		if(i%2 == 0)
		{
			direction = LEFT2RIGHT;
			for(int j = 0; j < img_modified.cols; j++)
				for(int k = 0; k < img_modified.channels; k++)
				{

					if(img_orig_float[i][j][k] <= 0.5)
					{
						diffusionError = img_orig_float[i][j][k] - 0.0;
						img_modified.setvalue(i,j,k,0);
					}
					else
					{
						diffusionError = img_orig_float[i][j][k] - 1.0;
						img_modified.setvalue(i,j,k,255);
					}

					img_orig_float[i][j+1][k] = img_orig_float[i][j+1][k]+(diffusionError*7.0/16);
					img_orig_float[i+1][j+1][k] = img_orig_float[i+1][j+1][k]+(diffusionError*1.0/16);
					img_orig_float[i+1][j][k] = img_orig_float[i+1][j][k]+(diffusionError*5.0/16);
					img_orig_float[i+1][j-1][k] = img_orig_float[i+1][j-1][k]+(diffusionError*3.0/16);

				}
		}

		else
		{
			direction = RIGHT2LEFT;
			for(int j = img_modified.cols - 1; j >= 0; j--)
				for(int k = 0; k < img_modified.channels; k++)
				{
					if(img_orig_float[i][j][k] <= 0.5)
					{
						diffusionError = img_orig_float[i][j][k] - 0.0;
						img_modified.setvalue(i,j,k,0);
					}
					else
					{
						diffusionError = img_orig_float[i][j][k] - 1.0;
						img_modified.setvalue(i,j,k,255);
					}

					img_orig_float[i][j-1][k] = img_orig_float[i][j-1][k]+(diffusionError*7.0/16);
					img_orig_float[i+1][j-1][k] = img_orig_float[i+1][j-1][k]+(diffusionError*1.0/16);
					img_orig_float[i+1][j][k] = img_orig_float[i+1][j][k]+(diffusionError*5.0/16);
					img_orig_float[i+1][j+1][k] = img_orig_float[i+1][j+1][k]+(diffusionError*3.0/16);
				}

		}


	}

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movl 0x8(%rax), %ecx
movl 0xc(%rax), %edx
movq %rcx, -0x70(%rbp)
movl 0x10(%rax), %eax
movq %rax, -0x68(%rbp)
movq %rsp, %rsi
movq %rsi, -0x20(%rbp)
movq %rdx, %rsi
imulq %rcx, %rsi
imulq %rax, %rsi
leaq 0xf(,%rsi,4), %rdi
andq $-0x10, %rdi
movq %rsp, %rsi
subq %rdi, %rsi
movq %rsi, -0x60(%rbp)
movq %rsi, %rsp
movq %rdx, -0x28(%rbp)
movq %rcx, -0x30(%rbp)
movq %rax, -0x38(%rbp)
movl $0x0, -0x3c(%rbp)
movl -0x3c(%rbp), %eax
movq -0x8(%rbp), %rcx
cmpl 0xc(%rcx), %eax
jge 0x13a77
movl $0x0, -0x40(%rbp)
movl -0x40(%rbp), %eax
movq -0x8(%rbp), %rcx
cmpl 0x8(%rcx), %eax
jge 0x13a67
movl $0x0, -0x44(%rbp)
movl -0x44(%rbp), %eax
movq -0x8(%rbp), %rcx
cmpl 0x10(%rcx), %eax
jge 0x13a57
movq -0x8(%rbp), %rdi
movl -0x3c(%rbp), %esi
movl -0x40(%rbp), %edx
movl -0x44(%rbp), %ecx
callq 0x83b0
movq -0x70(%rbp), %rsi
movq -0x68(%rbp), %rdx
movl %eax, %ecx
movq -0x60(%rbp), %rax
cvtsi2sd %ecx, %xmm0
movsd 0x8aaf(%rip), %xmm1     # 0x1c4c8
divsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movslq -0x3c(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x40(%rbp), %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x44(%rbp), %rcx
movss %xmm0, (%rax,%rcx,4)
movl -0x44(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x44(%rbp)
jmp 0x139e1
jmp 0x13a59
movl -0x40(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x40(%rbp)
jmp 0x139ca
jmp 0x13a69
movl -0x3c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x3c(%rbp)
jmp 0x139b3
movl $0x0, -0x48(%rbp)
movl -0x48(%rbp), %eax
movq -0x10(%rbp), %rcx
movl 0xc(%rcx), %ecx
subl $0x1, %ecx
cmpl %ecx, %eax
jge 0x14286
movl -0x48(%rbp), %eax
movl $0x2, %ecx
cltd
idivl %ecx
cmpl $0x0, %edx
jne 0x13e90
movl $0x1, -0x18(%rbp)
movl $0x0, -0x4c(%rbp)
movl -0x4c(%rbp), %eax
movq -0x10(%rbp), %rcx
cmpl 0x8(%rcx), %eax
jge 0x13e8b
movl $0x0, -0x50(%rbp)
movl -0x50(%rbp), %eax
movq -0x10(%rbp), %rcx
cmpl 0x10(%rcx), %eax
jge 0x13e7b
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rax
movq -0x70(%rbp), %rsi
movslq -0x48(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x4c(%rbp), %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x50(%rbp), %rcx
movss (%rax,%rcx,4), %xmm0
cvtss2sd %xmm0, %xmm1
movsd 0x85e9(%rip), %xmm0     # 0x1c108
ucomisd %xmm1, %xmm0
jb 0x13b87
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rax
movq -0x70(%rbp), %rsi
movslq -0x48(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x4c(%rbp), %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x50(%rbp), %rcx
movss (%rax,%rcx,4), %xmm0
cvtss2sd %xmm0, %xmm0
xorps %xmm1, %xmm1
subsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, -0x14(%rbp)
movq -0x10(%rbp), %rdi
movl -0x48(%rbp), %esi
movl -0x4c(%rbp), %edx
movl -0x50(%rbp), %ecx
xorl %r8d, %r8d
callq 0x83f0
jmp 0x13bef
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rax
movq -0x70(%rbp), %rsi
movslq -0x48(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x4c(%rbp), %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x50(%rbp), %rcx
movss (%rax,%rcx,4), %xmm0
cvtss2sd %xmm0, %xmm0
movsd 0x869e(%rip), %xmm1     # 0x1c268
subsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, -0x14(%rbp)
movq -0x10(%rbp), %rdi
movl -0x48(%rbp), %esi
movl -0x4c(%rbp), %edx
movl -0x50(%rbp), %ecx
movl $0xff, %r8d
callq 0x83f0
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rax
movq -0x70(%rbp), %rsi
movslq -0x48(%rbp), %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x4c(%rbp), %edi
addl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x50(%rbp), %rdi
movss (%rcx,%rdi,4), %xmm0
cvtss2sd %xmm0, %xmm0
movss -0x14(%rbp), %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x88aa(%rip), %xmm2     # 0x1c4f0
mulsd %xmm2, %xmm1
movsd 0x845e(%rip), %xmm2     # 0x1c0b0
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movslq -0x48(%rbp), %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x4c(%rbp), %edi
addl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x50(%rbp), %rdi
movss %xmm0, (%rcx,%rdi,4)
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x4c(%rbp), %edi
addl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x50(%rbp), %rdi
movss (%rcx,%rdi,4), %xmm0
cvtss2sd %xmm0, %xmm0
movss -0x14(%rbp), %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x8584(%rip), %xmm2     # 0x1c268
mulsd %xmm2, %xmm1
movsd 0x83c0(%rip), %xmm2     # 0x1c0b0
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x4c(%rbp), %edi
addl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x50(%rbp), %rdi
movss %xmm0, (%rcx,%rdi,4)
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movslq -0x4c(%rbp), %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x50(%rbp), %rdi
movss (%rcx,%rdi,4), %xmm0
cvtss2sd %xmm0, %xmm0
movss -0x14(%rbp), %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x867e(%rip), %xmm2     # 0x1c400
mulsd %xmm2, %xmm1
movsd 0x8322(%rip), %xmm2     # 0x1c0b0
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movslq -0x4c(%rbp), %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x50(%rbp), %rdi
movss %xmm0, (%rcx,%rdi,4)
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x4c(%rbp), %edi
subl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x50(%rbp), %rdi
movss (%rcx,%rdi,4), %xmm0
cvtss2sd %xmm0, %xmm0
movss -0x14(%rbp), %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x8458(%rip), %xmm2     # 0x1c278
mulsd %xmm2, %xmm1
movsd 0x8284(%rip), %xmm2     # 0x1c0b0
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movl -0x4c(%rbp), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x50(%rbp), %rcx
movss %xmm0, (%rax,%rcx,4)
movl -0x50(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x50(%rbp)
jmp 0x13acc
jmp 0x13e7d
movl -0x4c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4c(%rbp)
jmp 0x13ab5
jmp 0x14276
movl $0x0, -0x18(%rbp)
movq -0x10(%rbp), %rax
movl 0x8(%rax), %eax
subl $0x1, %eax
movl %eax, -0x54(%rbp)
cmpl $0x0, -0x54(%rbp)
jl 0x14274
movl $0x0, -0x58(%rbp)
movl -0x58(%rbp), %eax
movq -0x10(%rbp), %rcx
cmpl 0x10(%rcx), %eax
jge 0x14264
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rax
movq -0x70(%rbp), %rsi
movslq -0x48(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x54(%rbp), %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x58(%rbp), %rcx
movss (%rax,%rcx,4), %xmm0
cvtss2sd %xmm0, %xmm1
movsd 0x8200(%rip), %xmm0     # 0x1c108
ucomisd %xmm1, %xmm0
jb 0x13f70
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rax
movq -0x70(%rbp), %rsi
movslq -0x48(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x54(%rbp), %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x58(%rbp), %rcx
movss (%rax,%rcx,4), %xmm0
cvtss2sd %xmm0, %xmm0
xorps %xmm1, %xmm1
subsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, -0x14(%rbp)
movq -0x10(%rbp), %rdi
movl -0x48(%rbp), %esi
movl -0x54(%rbp), %edx
movl -0x58(%rbp), %ecx
xorl %r8d, %r8d
callq 0x83f0
jmp 0x13fd8
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rax
movq -0x70(%rbp), %rsi
movslq -0x48(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x54(%rbp), %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x58(%rbp), %rcx
movss (%rax,%rcx,4), %xmm0
cvtss2sd %xmm0, %xmm0
movsd 0x82b5(%rip), %xmm1     # 0x1c268
subsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, -0x14(%rbp)
movq -0x10(%rbp), %rdi
movl -0x48(%rbp), %esi
movl -0x54(%rbp), %edx
movl -0x58(%rbp), %ecx
movl $0xff, %r8d
callq 0x83f0
movq -0x68(%rbp), %rdx
movq -0x60(%rbp), %rax
movq -0x70(%rbp), %rsi
movslq -0x48(%rbp), %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x54(%rbp), %edi
subl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x58(%rbp), %rdi
movss (%rcx,%rdi,4), %xmm0
cvtss2sd %xmm0, %xmm0
movss -0x14(%rbp), %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x84c1(%rip), %xmm2     # 0x1c4f0
mulsd %xmm2, %xmm1
movsd 0x8075(%rip), %xmm2     # 0x1c0b0
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movslq -0x48(%rbp), %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x54(%rbp), %edi
subl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x58(%rbp), %rdi
movss %xmm0, (%rcx,%rdi,4)
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x54(%rbp), %edi
subl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x58(%rbp), %rdi
movss (%rcx,%rdi,4), %xmm0
cvtss2sd %xmm0, %xmm0
movss -0x14(%rbp), %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x819b(%rip), %xmm2     # 0x1c268
mulsd %xmm2, %xmm1
movsd 0x7fd7(%rip), %xmm2     # 0x1c0b0
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x54(%rbp), %edi
subl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x58(%rbp), %rdi
movss %xmm0, (%rcx,%rdi,4)
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movslq -0x54(%rbp), %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x58(%rbp), %rdi
movss (%rcx,%rdi,4), %xmm0
cvtss2sd %xmm0, %xmm0
movss -0x14(%rbp), %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x8295(%rip), %xmm2     # 0x1c400
mulsd %xmm2, %xmm1
movsd 0x7f39(%rip), %xmm2     # 0x1c0b0
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movslq -0x54(%rbp), %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x58(%rbp), %rdi
movss %xmm0, (%rcx,%rdi,4)
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rdi
movq %rsi, %rcx
imulq %rdx, %rcx
imulq %rcx, %rdi
shlq $0x2, %rdi
movq %rax, %rcx
addq %rdi, %rcx
movl -0x54(%rbp), %edi
addl $0x1, %edi
movslq %edi, %rdi
imulq %rdx, %rdi
shlq $0x2, %rdi
addq %rdi, %rcx
movslq -0x58(%rbp), %rdi
movss (%rcx,%rdi,4), %xmm0
cvtss2sd %xmm0, %xmm0
movss -0x14(%rbp), %xmm1
cvtss2sd %xmm1, %xmm1
movsd 0x806f(%rip), %xmm2     # 0x1c278
mulsd %xmm2, %xmm1
movsd 0x7e9b(%rip), %xmm2     # 0x1c0b0
divsd %xmm2, %xmm1
addsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
movl -0x48(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movl -0x54(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
imulq %rdx, %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movslq -0x58(%rbp), %rcx
movss %xmm0, (%rax,%rcx,4)
movl -0x58(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x58(%rbp)
jmp 0x13eb5
jmp 0x14266
movl -0x54(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x54(%rbp)
jmp 0x13ea4
jmp 0x14276
jmp 0x14278
movl -0x48(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x48(%rbp)
jmp 0x13a7e
movq -0x20(%rbp), %rax
movq %rax, %rsp
movq %rbp, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)