// File: /workspace/github_c_makefile_star2_O1/haxlang[P]hax/haxUnixAZ.c
// Function: StoreStatData
static int
StoreStatData(
    Hax_Interp *interp,			/* Interpreter for error reports. */
    char *varName,			/* Name of associative array variable
					 * in which to store stat results. */
    struct stat *statPtr		/* Pointer to buffer containing
					 * stat data to store in varName. */)
{
    char string[30];

    sprintf(string, "%lld", (long long int) statPtr->st_dev);
    if (Hax_SetVar2(interp, varName, (char *) "dev", string, HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%lld", (long long int) statPtr->st_ino);
    if (Hax_SetVar2(interp, varName, (char *) "ino", string, HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%d", statPtr->st_mode);
    if (Hax_SetVar2(interp, varName, (char *) "mode", string, HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%lld", (long long int) statPtr->st_nlink);
    if (Hax_SetVar2(interp, varName, (char *) "nlink", string,
	    HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%d", statPtr->st_uid);
    if (Hax_SetVar2(interp, varName, (char *) "uid", string, HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%d", statPtr->st_gid);
    if (Hax_SetVar2(interp, varName, (char *) "gid", string, HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%lld", (long long int) statPtr->st_size);
    if (Hax_SetVar2(interp, varName, (char *) "size", string, HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%lld", (long long int) statPtr->st_atime);
    if (Hax_SetVar2(interp, varName, (char *) "atime", string,
	    HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%lld", (long long int) statPtr->st_mtime);
    if (Hax_SetVar2(interp, varName, (char *) "mtime", string,
	    HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    sprintf(string, "%lld", (long long int) statPtr->st_ctime);
    if (Hax_SetVar2(interp, varName, (char *) "ctime", string,
	    HAX_LEAVE_ERR_MSG)
	    == NULL) {
	return HAX_ERROR;
    }
    if (Hax_SetVar2(interp, varName, (char *) "type",
	    GetFileType((int) statPtr->st_mode), HAX_LEAVE_ERR_MSG) == NULL) {
	return HAX_ERROR;
    }
    return HAX_OK;
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x20, %rsp
movq %rdx, %r12
movq %rsi, %r14
movq %rdi, %r15
movq (%rdx), %rdx
leaq 0x3e35(%rip), %rsi      # 0x9735
movq %rsp, %rbx
movq %rbx, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3e7f(%rip), %rdx      # 0x9793
movq %r15, %rdi
movq %r14, %rsi
movq %rbx, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
movl $0x1, %ebx
testq %rax, %rax
je 0x5b80
movq 0x8(%r12), %rdx
leaq 0x3df3(%rip), %rsi      # 0x9735
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3e41(%rip), %rdx      # 0x9797
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movl 0x18(%r12), %edx
leaq 0x3c60(%rip), %rsi      # 0x95df
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3e08(%rip), %rdx      # 0x979b
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movq 0x10(%r12), %rdx
leaq 0x3d79(%rip), %rsi      # 0x9735
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3dd0(%rip), %rdx      # 0x97a0
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movl 0x1c(%r12), %edx
leaq 0x3be6(%rip), %rsi      # 0x95df
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3d99(%rip), %rdx      # 0x97a6
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movl 0x20(%r12), %edx
leaq 0x3ba9(%rip), %rsi      # 0x95df
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3d60(%rip), %rdx      # 0x97aa
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movq 0x30(%r12), %rdx
leaq 0x3cc2(%rip), %rsi      # 0x9735
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3927(%rip), %rdx      # 0x93ae
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movq 0x48(%r12), %rdx
leaq 0x3c85(%rip), %rsi      # 0x9735
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3878(%rip), %rdx      # 0x933c
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movq 0x58(%r12), %rdx
leaq 0x3c48(%rip), %rsi      # 0x9735
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3884(%rip), %rdx      # 0x9385
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movq 0x68(%r12), %rdx
leaq 0x3c0f(%rip), %rsi      # 0x9735
movq %rsp, %r13
movq %r13, %rdi
xorl %eax, %eax
callq 0x35a0
leaq 0x3c74(%rip), %rdx      # 0x97ae
movq %r15, %rdi
movq %r14, %rsi
movq %r13, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
testq %rax, %rax
je 0x5b80
movl 0x18(%r12), %edi
callq 0x5b90
leaq 0x3873(%rip), %rdx      # 0x93d7
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
movl $0x200, %r8d            # imm = 0x200
callq 0x30c0
xorl %ebx, %ebx
testq %rax, %rax
sete %bl
movl %ebx, %eax
addq $0x20, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq