// File: /workspace/github_c_makefile_star2_O0/xtanitfy[P]Murphy/src/blob.c
// Function: BLOB_shapeAddPad
int BLOB_shapeAddPad(BLOB_s *pDataSrc,BLOB_s *pData,int pady,int padx)
{
	CHECK_EXPR_RET(pDataSrc == NULL,-1);
	CHECK_EXPR_RET(pData == NULL,-1);
	CHECK_EXPR_RET(pady > pDataSrc->heightSize,-1);
	CHECK_EXPR_RET(padx > pDataSrc->widthSize,-1);
	
	BLOB_DATA_PTR(pDataSrc,ptrDataSrc);
	BLOB_DATA_PTR(pData,ptrData);
	for (int i_num = 0;i_num < pData->numSize;i_num++) {	
		for (int i_channel = 0;i_channel  < pData->channelSize;i_channel++) {
			for (int i_height = 0;i_height < pData->heightSize - pady;i_height++) {	
				for (int i_width = 0;i_width < pData->widthSize - padx;i_width++) {	
					ptrData[i_num][i_channel][i_height + pady][i_width + padx] = 
						ptrDataSrc[i_num][i_channel][i_height][i_width];	
				
				}
			}
		}
	}

	return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movl %ecx, -0x20(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x205a
leaq 0x1014(%rip), %rdi      # 0x3048
leaq 0x10ca(%rip), %rsi      # 0x3105
leaq 0x10e8(%rip), %rdx      # 0x312a
movl $0x3b, %ecx
movb $0x0, %al
callq 0x1030
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
jmp 0x22cf
cmpq $0x0, -0x18(%rbp)
jne 0x208e
leaq 0xfe0(%rip), %rdi       # 0x3048
leaq 0x1096(%rip), %rsi      # 0x3105
leaq 0x10b4(%rip), %rdx      # 0x312a
movl $0x3c, %ecx
movb $0x0, %al
callq 0x1030
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
jmp 0x22cf
movslq -0x1c(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpq 0x20(%rcx), %rax
jbe 0x20c9
leaq 0xfa5(%rip), %rdi       # 0x3048
leaq 0x105b(%rip), %rsi      # 0x3105
leaq 0x1079(%rip), %rdx      # 0x312a
movl $0x3d, %ecx
movb $0x0, %al
callq 0x1030
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
jmp 0x22cf
movslq -0x20(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpq 0x28(%rcx), %rax
jbe 0x2104
leaq 0xf6a(%rip), %rdi       # 0x3048
leaq 0x1020(%rip), %rsi      # 0x3105
leaq 0x103e(%rip), %rdx      # 0x312a
movl $0x3e, %ecx
movb $0x0, %al
callq 0x1030
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
jmp 0x22cf
movq -0x10(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x70(%rbp)
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x68(%rbp)
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movq %rax, -0x60(%rbp)
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x58(%rbp)
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x50(%rbp)
movq -0x18(%rbp), %rax
movq 0x28(%rax), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x30(%rbp)
movl $0x0, -0x34(%rbp)
movslq -0x34(%rbp), %rax
movq -0x18(%rbp), %rcx
cmpq 0x10(%rcx), %rax
jae 0x22c8
movl $0x0, -0x38(%rbp)
movslq -0x38(%rbp), %rax
movq -0x18(%rbp), %rcx
cmpq 0x18(%rcx), %rax
jae 0x22b8
movl $0x0, -0x3c(%rbp)
movslq -0x3c(%rbp), %rax
movq -0x18(%rbp), %rcx
movq 0x20(%rcx), %rcx
movslq -0x1c(%rbp), %rdx
subq %rdx, %rcx
cmpq %rcx, %rax
jae 0x22a8
movl $0x0, -0x40(%rbp)
movslq -0x40(%rbp), %rax
movq -0x18(%rbp), %rcx
movq 0x28(%rcx), %rcx
movslq -0x20(%rbp), %rdx
subq %rdx, %rcx
cmpq %rcx, %rax
jae 0x2298
movq -0x48(%rbp), %rdx
movq -0x50(%rbp), %rsi
movq -0x58(%rbp), %rdi
movq -0x60(%rbp), %r8
movq -0x68(%rbp), %r9
movq -0x70(%rbp), %r10
movq -0x28(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq %r9, %r10
imulq %r8, %r10
imulq %r10, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x38(%rbp), %rcx
imulq %r8, %r9
imulq %r9, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x3c(%rbp), %rcx
imulq %r8, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x40(%rbp), %rcx
movsd (%rax,%rcx,8), %xmm0
movq -0x30(%rbp), %rax
movslq -0x34(%rbp), %rcx
imulq %rsi, %rdi
imulq %rdx, %rdi
imulq %rdi, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x38(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movl -0x3c(%rbp), %ecx
addl -0x1c(%rbp), %ecx
movslq %ecx, %rcx
imulq %rdx, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movl -0x40(%rbp), %ecx
addl -0x20(%rbp), %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movl -0x40(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x40(%rbp)
jmp 0x21c0
jmp 0x229a
movl -0x3c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x3c(%rbp)
jmp 0x219d
jmp 0x22aa
movl -0x38(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x38(%rbp)
jmp 0x2184
jmp 0x22ba
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x216b
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x70, %rsp
popq %rbp
retq
nopl (%rax,%rax)