// File: /workspace/github_c_makefile_star2_O0/SimpleDoger[P]Darknet_CPU_Only/data.c
// Function: load_data_super
data load_data_super(char **paths, int n, int m, int w, int h, int scale)
{
    if(m) paths = get_random_paths(paths, n, m);
    data d = {0};
    d.shallow = 0;

    int i;
    d.X.rows = n;
    d.X.vals = calloc(n, sizeof(float*));
    d.X.cols = w*h*3;

    d.y.rows = n;
    d.y.vals = calloc(n, sizeof(float*));
    d.y.cols = w*scale * h*scale * 3;

    for(i = 0; i < n; ++i){
        image im = load_image_color(paths[i], 0, 0);
        image crop = random_crop_image(im, w*scale, h*scale);
        int flip = rand()%2;
        if (flip) flip_image(crop);
        image resize = resize_image(crop, w, h);
        d.X.vals[i] = resize.data;
        d.y.vals[i] = crop.data;
        free_image(im);
    }

    if(m) free(paths);
    return d;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x80(%rbp)
movq %rdi, -0x78(%rbp)
movl 0x10(%rbp), %eax
movq %rsi, -0x8(%rbp)
movl %edx, -0xc(%rbp)
movl %ecx, -0x10(%rbp)
movl %r8d, -0x14(%rbp)
movl %r9d, -0x18(%rbp)
cmpl $0x0, -0x10(%rbp)
je 0x37101
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
movl -0x10(%rbp), %edx
callq 0x314c0
movq %rax, -0x8(%rbp)
movq -0x80(%rbp), %rdi
xorl %esi, %esi
movl $0x40, %edx
callq 0x3190
movq -0x80(%rbp), %rax
movl $0x0, 0x28(%rax)
movl -0xc(%rbp), %ecx
movl %ecx, 0x8(%rax)
movslq -0xc(%rbp), %rdi
movl $0x8, %esi
callq 0x3220
movq %rax, %rcx
movq -0x80(%rbp), %rax
movq %rcx, 0x10(%rax)
movl -0x14(%rbp), %ecx
imull -0x18(%rbp), %ecx
imull $0x3, %ecx, %ecx
movl %ecx, 0xc(%rax)
movl -0xc(%rbp), %ecx
movl %ecx, 0x18(%rax)
movslq -0xc(%rbp), %rdi
movl $0x8, %esi
callq 0x3220
movq %rax, %rcx
movq -0x80(%rbp), %rax
movq %rcx, 0x20(%rax)
movl -0x14(%rbp), %ecx
imull 0x10(%rbp), %ecx
imull -0x18(%rbp), %ecx
imull 0x10(%rbp), %ecx
imull $0x3, %ecx, %ecx
movl %ecx, 0x1c(%rax)
movl $0x0, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
cmpl -0xc(%rbp), %eax
jge 0x37294
movq -0x8(%rbp), %rax
movslq -0x1c(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
leaq -0x38(%rbp), %rdi
xorl %ecx, %ecx
movl %ecx, %edx
callq 0xf510
movl -0x14(%rbp), %esi
imull 0x10(%rbp), %esi
movl -0x18(%rbp), %edx
imull 0x10(%rbp), %edx
leaq -0x50(%rbp), %rdi
leaq -0x38(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x12f80
callq 0x34b0
movl $0x2, %ecx
cltd
idivl %ecx
movl %edx, -0x54(%rbp)
cmpl $0x0, -0x54(%rbp)
je 0x37214
leaq -0x50(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0x104c0
movl -0x14(%rbp), %esi
movl -0x18(%rbp), %edx
leaq -0x70(%rbp), %rdi
leaq -0x50(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0xfc00
movq -0x80(%rbp), %rax
movq -0x60(%rbp), %rsi
movq 0x10(%rax), %rcx
movslq -0x1c(%rbp), %rdx
movq %rsi, (%rcx,%rdx,8)
movq -0x40(%rbp), %rdx
movq 0x20(%rax), %rax
movslq -0x1c(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
leaq -0x38(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rsp)
movq 0x8(%rax), %rcx
movq %rcx, 0x8(%rsp)
movq 0x10(%rax), %rax
movq %rax, 0x10(%rsp)
callq 0xedb0
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x37183
cmpl $0x0, -0x10(%rbp)
je 0x372a3
movq -0x8(%rbp), %rdi
callq 0x3030
movq -0x78(%rbp), %rax
addq $0xa0, %rsp
popq %rbp
retq