// File: /workspace/github_c_makefile_star2_O0/jiqingxiaoxi[P]RPA/RPA.c
// Function: getTstack
void getTstack(double tstackEntropies[],double tstackEnthalpies[],char *path)
{
        int i1, j1, i2, j2;
        FILE *sFile, *hFile;
        char *line;

        i1=strlen(path)+20;
        line=(char *)malloc(i1);
        memset(line,'\0',i1);
        strcpy(line,path);
        strcat(line,"tstack_tm_inf.ds");
        if(access(line,0)==-1)
        {
                printf("Error! Don't have %s file!\n",line);
                exit(1);
        }
        sFile=fopen(line,"r");
        if(sFile==NULL)
        {
                printf("Error! Can't open the %s file!\n",line);
                exit(1);
        }

        memset(line,'\0',i1);
        strcpy(line,path);      
        strcat(line,"tstack.dh");
        if(access(line,0)==-1)
        {
                printf("Error! Don't have %s file!\n",line);
                exit(1);
        }             
        hFile=fopen(line,"r");
        if(sFile==NULL)
        {
                printf("Error! Can't open the %s file!\n",line);
                exit(1);   
        }
        free(line);

        line=(char *)malloc(20);
        memset(line,'\0',20);
        for (i1 = 0; i1 < 5; ++i1)
                for (i2 = 0; i2 < 5; ++i2)
                        for (j1 = 0; j1 < 5; ++j1)
                                for (j2 = 0; j2 < 5; ++j2)
                                        if (i1 == 4 || j1 == 4)
                                        {
                                                tstackEnthalpies[i1*125+i2*25+j1*5+j2]=1.0*INFINITY;
                                                tstackEntropies[i1*125+i2*25+j1*5+j2] = -1.0;
                                        }
                                        else if (i2 == 4 || j2 == 4)
                                        {
                                                tstackEntropies[i1*125+i2*25+j1*5+j2] = 0.00000000001;
                                                tstackEnthalpies[i1*125+i2*25+j1*5+j2] = 0.0;
                                        }
                                        else
                                        {
                                                if(fgets(line,20,sFile)==NULL)
                                                {
                                                        printf("Error! When read parameters in getTstack function!\n");
                                                        exit(1);
                                                }
                                                if(strncmp(line, "inf", 3)==0)
                                                        tstackEntropies[i1*125+i2*25+j1*5+j2]=1.0*INFINITY;
                                                else
                                                        tstackEntropies[i1*125+i2*25+j1*5+j2]=atof(line);

                                                if(fgets(line,20,hFile)==NULL)
                                                {
                                                        printf("Error! When read parameters in getTstack function!\n");
                                                        exit(1);
                                                }
                                                if(strncmp(line, "inf", 3)==0)
                                                        tstackEnthalpies[i1*125+i2*25+j1*5+j2]=1.0*INFINITY;
                                                else
                                                        tstackEnthalpies[i1*125+i2*25+j1*5+j2]=atof(line);

                                                if (fabs(tstackEntropies[i1*125+i2*25+j1*5+j2])>999999999||fabs(tstackEnthalpies[i1*125+i2*25+j1*5+j2])>999999999)
                                                {
                                                        tstackEntropies[i1*125+i2*25+j1*5+j2] = -1.0;
                                                        tstackEnthalpies[i1*125+i2*25+j1*5+j2] =1.0*INFINITY;
                                                }
                                        }
        fclose(sFile);
        fclose(hFile);
        free(line);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x18(%rbp), %rdi
callq 0x10a0
addq $0x14, %rax
movl %eax, -0x1c(%rbp)
movslq -0x1c(%rbp), %rdi
callq 0x1160
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rdi
movslq -0x1c(%rbp), %rdx
xorl %esi, %esi
callq 0x10e0
movq -0x40(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x1050
movq -0x40(%rbp), %rdi
leaq 0x14a47(%rip), %rsi     # 0x1732f
callq 0x11b0
movq -0x40(%rbp), %rdi
xorl %esi, %esi
callq 0x1180
cmpl $-0x1, %eax
jne 0x2919
movq -0x40(%rbp), %rsi
leaq 0x14911(%rip), %rdi     # 0x17219
movb $0x0, %al
callq 0x10b0
movl $0x1, %edi
callq 0x11c0
movq -0x40(%rbp), %rdi
leaq 0x15048(%rip), %rsi     # 0x1796c
callq 0x1190
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x30(%rbp)
jne 0x2950
movq -0x40(%rbp), %rsi
leaq 0x148f6(%rip), %rdi     # 0x17235
movb $0x0, %al
callq 0x10b0
movl $0x1, %edi
callq 0x11c0
movq -0x40(%rbp), %rdi
movslq -0x1c(%rbp), %rdx
xorl %esi, %esi
callq 0x10e0
movq -0x40(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0x1050
movq -0x40(%rbp), %rdi
leaq 0x149c9(%rip), %rsi     # 0x17340
callq 0x11b0
movq -0x40(%rbp), %rdi
xorl %esi, %esi
callq 0x1180
cmpl $-0x1, %eax
jne 0x29a8
movq -0x40(%rbp), %rsi
leaq 0x14882(%rip), %rdi     # 0x17219
movb $0x0, %al
callq 0x10b0
movl $0x1, %edi
callq 0x11c0
movq -0x40(%rbp), %rdi
leaq 0x14fb9(%rip), %rsi     # 0x1796c
callq 0x1190
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x30(%rbp)
jne 0x29df
movq -0x40(%rbp), %rsi
leaq 0x14867(%rip), %rdi     # 0x17235
movb $0x0, %al
callq 0x10b0
movl $0x1, %edi
callq 0x11c0
movq -0x40(%rbp), %rdi
callq 0x1030
movl $0x14, %edi
callq 0x1160
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rdi
xorl %esi, %esi
movl $0x14, %edx
callq 0x10e0
movl $0x0, -0x1c(%rbp)
cmpl $0x5, -0x1c(%rbp)
jge 0x2d3b
movl $0x0, -0x24(%rbp)
cmpl $0x5, -0x24(%rbp)
jge 0x2d2b
movl $0x0, -0x20(%rbp)
cmpl $0x5, -0x20(%rbp)
jge 0x2d1b
movl $0x0, -0x28(%rbp)
cmpl $0x5, -0x28(%rbp)
jge 0x2d0b
cmpl $0x4, -0x1c(%rbp)
je 0x2a56
cmpl $0x4, -0x20(%rbp)
jne 0x2aa9
movq -0x10(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd 0x146b8(%rip), %xmm0    # 0x17130
movsd %xmm0, (%rax,%rcx,8)
movq -0x8(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd 0x146a1(%rip), %xmm0    # 0x17140
movsd %xmm0, (%rax,%rcx,8)
jmp 0x2cfb
cmpl $0x4, -0x24(%rbp)
je 0x2ab5
cmpl $0x4, -0x28(%rbp)
jne 0x2b03
movq -0x8(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd 0x14671(%rip), %xmm0    # 0x17148
movsd %xmm0, (%rax,%rcx,8)
movq -0x10(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
xorps %xmm0, %xmm0
movsd %xmm0, (%rax,%rcx,8)
jmp 0x2cf9
movq -0x40(%rbp), %rdi
movq -0x30(%rbp), %rdx
movl $0x14, %esi
callq 0x1110
cmpq $0x0, %rax
jne 0x2b33
leaq 0x14828(%rip), %rdi     # 0x1734a
movb $0x0, %al
callq 0x10b0
movl $0x1, %edi
callq 0x11c0
movq -0x40(%rbp), %rdi
leaq 0x146ca(%rip), %rsi     # 0x17208
movl $0x3, %edx
callq 0x1040
cmpl $0x0, %eax
jne 0x2b76
movq -0x8(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd 0x145c1(%rip), %xmm0    # 0x17130
movsd %xmm0, (%rax,%rcx,8)
jmp 0x2b9e
movq -0x40(%rbp), %rdi
callq 0x1080
movq -0x8(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq -0x40(%rbp), %rdi
movq -0x38(%rbp), %rdx
movl $0x14, %esi
callq 0x1110
cmpq $0x0, %rax
jne 0x2bce
leaq 0x1478d(%rip), %rdi     # 0x1734a
movb $0x0, %al
callq 0x10b0
movl $0x1, %edi
callq 0x11c0
movq -0x40(%rbp), %rdi
leaq 0x1462f(%rip), %rsi     # 0x17208
movl $0x3, %edx
callq 0x1040
cmpl $0x0, %eax
jne 0x2c11
movq -0x10(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd 0x14526(%rip), %xmm0    # 0x17130
movsd %xmm0, (%rax,%rcx,8)
jmp 0x2c39
movq -0x40(%rbp), %rdi
callq 0x1080
movq -0x10(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq -0x8(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movaps 0x14591(%rip), %xmm1    # 0x171f0
pand %xmm1, %xmm0
movsd 0x144cd(%rip), %xmm1    # 0x17138
ucomisd %xmm1, %xmm0
ja 0x2ca9
movq -0x10(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
movaps 0x14559(%rip), %xmm1    # 0x171f0
pand %xmm1, %xmm0
movsd 0x14495(%rip), %xmm1    # 0x17138
ucomisd %xmm1, %xmm0
jbe 0x2cf7
movq -0x8(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd 0x14475(%rip), %xmm0    # 0x17140
movsd %xmm0, (%rax,%rcx,8)
movq -0x10(%rbp), %rax
imull $0x7d, -0x1c(%rbp), %ecx
imull $0x19, -0x24(%rbp), %edx
addl %edx, %ecx
imull $0x5, -0x20(%rbp), %edx
addl %edx, %ecx
addl -0x28(%rbp), %ecx
movslq %ecx, %rcx
movsd 0x1443e(%rip), %xmm0    # 0x17130
movsd %xmm0, (%rax,%rcx,8)
jmp 0x2cf9
jmp 0x2cfb
jmp 0x2cfd
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x2a40
jmp 0x2d0d
movl -0x20(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x20(%rbp)
jmp 0x2a2f
jmp 0x2d1d
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x2a1e
jmp 0x2d2d
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x2a0d
movq -0x30(%rbp), %rdi
callq 0x1090
movq -0x38(%rbp), %rdi
callq 0x1090
movq -0x40(%rbp), %rdi
callq 0x1030
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)