// File: /workspace/github_c_makefile_star2_O0/xtanitfy[P]Murphy/src/blob.c
// Function: BLOB_shapeByPtr
int BLOB_shapeByPtr(BLOB_s *pBlob,BLOB_DATA_TYPE *pData,int len)
{
	CHECK_EXPR_RET(pData == NULL,-1);
	CHECK_EXPR_RET(pBlob == NULL,-1);
	CHECK_EXPR_RET(len != pBlob->count,-1);
	
	BLOB_shape(pBlob);
	BLOB_DATA_PTR(pBlob,ptr);
	int k = 0;
	for (int i_num = 0;i_num < pBlob->numSize;i_num++) {	
		for (int i_channel = 0;i_channel  < pBlob->channelSize;i_channel++) {
			for (int i_height = 0;i_height < pBlob->heightSize;i_height++) {	
				for (int i_width = 0;i_width < pBlob->widthSize;i_width++) {	
					ptr[i_num][i_channel][i_height][i_width] = pData[k++];	
				}
			}
		}
	}
	
	return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x2417
leaq 0xc57(%rip), %rdi       # 0x3048
leaq 0xd0d(%rip), %rsi       # 0x3105
leaq 0xd56(%rip), %rdx       # 0x3155
movl $0x6d, %ecx
movb $0x0, %al
callq 0x1030
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
jmp 0x25d7
cmpq $0x0, -0x10(%rbp)
jne 0x244b
leaq 0xc23(%rip), %rdi       # 0x3048
leaq 0xcd9(%rip), %rsi       # 0x3105
leaq 0xd22(%rip), %rdx       # 0x3155
movl $0x6e, %ecx
movb $0x0, %al
callq 0x1030
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
jmp 0x25d7
movslq -0x1c(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpq 0x30(%rcx), %rax
je 0x2486
leaq 0xbe8(%rip), %rdi       # 0x3048
leaq 0xc9e(%rip), %rsi       # 0x3105
leaq 0xce7(%rip), %rdx       # 0x3155
movl $0x6f, %ecx
movb $0x0, %al
callq 0x1030
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
jmp 0x25d7
movq -0x10(%rbp), %rdi
callq 0x1ec0
movq -0x10(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x58(%rbp)
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x50(%rbp)
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movq %rax, -0x48(%rbp)
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x28(%rbp)
movl $0x0, -0x2c(%rbp)
movl $0x0, -0x30(%rbp)
movslq -0x30(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpq 0x10(%rcx), %rax
jae 0x25d0
movl $0x0, -0x34(%rbp)
movslq -0x34(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpq 0x18(%rcx), %rax
jae 0x25c0
movl $0x0, -0x38(%rbp)
movslq -0x38(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpq 0x20(%rcx), %rax
jae 0x25b0
movl $0x0, -0x3c(%rbp)
movslq -0x3c(%rbp), %rax
movq -0x10(%rbp), %rcx
cmpq 0x28(%rcx), %rax
jae 0x25a0
movq -0x48(%rbp), %rdx
movq -0x50(%rbp), %rsi
movq -0x58(%rbp), %rdi
movq -0x18(%rbp), %rax
movl -0x2c(%rbp), %ecx
movl %ecx, %r8d
addl $0x1, %r8d
movl %r8d, -0x2c(%rbp)
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movq -0x28(%rbp), %rax
movslq -0x30(%rbp), %rcx
imulq %rsi, %rdi
imulq %rdx, %rdi
imulq %rdi, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x34(%rbp), %rcx
imulq %rdx, %rsi
imulq %rsi, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x38(%rbp), %rcx
imulq %rdx, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x3c(%rbp), %rcx
movsd %xmm0, (%rax,%rcx,8)
movl -0x3c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x3c(%rbp)
jmp 0x2518
jmp 0x25a2
movl -0x38(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x38(%rbp)
jmp 0x24ff
jmp 0x25b2
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x24e6
jmp 0x25c2
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x24cd
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x60, %rsp
popq %rbp
retq