// File: /workspace/github_c_makefile_star2_O0/mohuangrui[P]ArtraCFD/case_loader.c
// Function: ReadBoundaryData
static void ReadBoundaryData(FILE *fp, Space *space, const int n)
{
    Partition *const part = &(space->part);
    String str = {'\0'}; /* store the current read line */
    const char *fmtI = ParseFormat("%lg");
    ParseCommand(fgets(str, sizeof str, fp));
    if (0 == strncmp(str, "inflow", sizeof str)) {
        part->typeBC[n] = INFLOW;
        ReadConsecutiveData(fp, VARBC - 1, fmtI, part->varBC[n], NULL);
        return;
    }
    if (0 == strncmp(str, "outflow", sizeof str)) {
        part->typeBC[n] = OUTFLOW;
        return;
    }
    if (0 == strncmp(str, "slip wall", sizeof str)) {
        part->typeBC[n] = SLIPWALL;
        Sread(fp, 1, fmtI, &(part->varBC[n][VARBC-1]));
        return;
    }
    if (0 == strncmp(str, "noslip wall", sizeof str)) {
        part->typeBC[n] = NOSLIPWALL;
        Sread(fp, 1, fmtI, &(part->varBC[n][VARBC-1]));
        return;
    }
    if (0 == strncmp(str, "periodic", sizeof str)) {
        part->typeBC[n] = PERIODIC;
        return;
    }
    ShowError("unidentified boundary type: n: %d, type: %s", n, str);
    return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x100, %rsp            # imm = 0x100
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movq -0x10(%rbp), %rax
addq $0x28, %rax
movq %rax, -0x20(%rbp)
leaq -0xf0(%rbp), %rdi
xorl %esi, %esi
movl $0xc8, %edx
callq 0x20d0
leaq 0x1faaa(%rip), %rdi     # 0x27bd6
callq 0xbbc0
movq %rax, -0xf8(%rbp)
leaq -0xf0(%rbp), %rdi
movq -0x8(%rbp), %rdx
movl $0xc8, %esi
callq 0x2110
movq %rax, %rdi
callq 0xb940
leaq -0xf0(%rbp), %rdi
leaq 0x1ed14(%rip), %rsi     # 0x26e77
movl $0xc8, %edx
callq 0x2050
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jne 0x81c0
movq -0x20(%rbp), %rax
movq 0x390(%rax), %rax
movslq -0x14(%rbp), %rcx
movl $0x0, (%rax,%rcx,4)
movq -0x8(%rbp), %rdi
movq -0xf8(%rbp), %rdx
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rcx
movslq -0x14(%rbp), %rax
imulq $0x30, %rax, %rax
addq %rax, %rcx
movl $0x5, %esi
xorl %eax, %eax
movl %eax, %r8d
callq 0x8000
jmp 0x8320
leaq -0xf0(%rbp), %rdi
leaq 0x1ecb0(%rip), %rsi     # 0x26e7e
movl $0xc8, %edx
callq 0x2050
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jne 0x81fb
movq -0x20(%rbp), %rax
movq 0x390(%rax), %rax
movslq -0x14(%rbp), %rcx
movl $0x1, (%rax,%rcx,4)
jmp 0x8320
leaq -0xf0(%rbp), %rdi
leaq 0x1ec7f(%rip), %rsi     # 0x26e88
movl $0xc8, %edx
callq 0x2050
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jne 0x8267
movq -0x20(%rbp), %rax
movq 0x390(%rax), %rax
movslq -0x14(%rbp), %rcx
movl $0x2, (%rax,%rcx,4)
movq -0x8(%rbp), %rdi
movq -0xf8(%rbp), %rdx
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rcx
movslq -0x14(%rbp), %rax
imulq $0x30, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
movl $0x1, %esi
movb $0x0, %al
callq 0xc1e0
jmp 0x8320
leaq -0xf0(%rbp), %rdi
leaq 0x1ec11(%rip), %rsi     # 0x26e86
movl $0xc8, %edx
callq 0x2050
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jne 0x82d0
movq -0x20(%rbp), %rax
movq 0x390(%rax), %rax
movslq -0x14(%rbp), %rcx
movl $0x3, (%rax,%rcx,4)
movq -0x8(%rbp), %rdi
movq -0xf8(%rbp), %rdx
movq -0x20(%rbp), %rax
movq 0x3a0(%rax), %rcx
movslq -0x14(%rbp), %rax
imulq $0x30, %rax, %rax
addq %rax, %rcx
addq $0x28, %rcx
movl $0x1, %esi
movb $0x0, %al
callq 0xc1e0
jmp 0x8320
leaq -0xf0(%rbp), %rdi
leaq 0x1ebb4(%rip), %rsi     # 0x26e92
movl $0xc8, %edx
callq 0x2050
movl %eax, %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jne 0x8308
movq -0x20(%rbp), %rax
movq 0x390(%rax), %rax
movslq -0x14(%rbp), %rcx
movl $0x4, (%rax,%rcx,4)
jmp 0x8320
movl -0x14(%rbp), %esi
leaq -0xf0(%rbp), %rdx
leaq 0x1eb82(%rip), %rdi     # 0x26e9b
movb $0x0, %al
callq 0xbbd0
addq $0x100, %rsp            # imm = 0x100
popq %rbp
retq
nopl (%rax)