// File: /workspace/github_c_makefile_star2_O3/mohuangrui[P]ArtraCFD/paraview_writer.c
// Function: WriteStructuredDataParaview
void WriteStructuredDataParaview(const Time *time, const Space *space, const Model *model)
{
    PvSet pvSet = { /* initialize environment */
        .rname = "field",
        .bname = {'\0'},
        .fname = {'\0'},
        .fext = ".vts",
        .fmt = "%s%05d",
        .intType = "Int32",
        .floatType = "Float32",
        .byteOrder = "LittleEndian",
        .scaN = 10,
        .sca = {"rho", "u", "v", "w", "p", "T", "did", "fid", "lid", "gst"},
        .vecN = 1,
        .vec = {"Vel"},
    };
    snprintf(pvSet.bname, sizeof(PvStr), pvSet.fmt, pvSet.rname, time->dataC);
    if (0 == time->stepC) { /* initialization step */
        InitializeTransientCaseFile(&pvSet);
    }
    WriteCaseFile(time, &pvSet);
    WriteStructuredData(space, model, &pvSet);
    return;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x328, %rsp            # imm = 0x328
movq %rdx, 0x20(%rsp)
movq %rsi, %rbx
movq %rdi, %r15
leaq 0xa211(%rip), %rsi      # 0x1edb8
leaq 0x30(%rsp), %r12
movl $0x2f8, %edx            # imm = 0x2F8
movq %r12, %rdi
callq 0x2170
leaq 0x80(%rsp), %r14
leaq 0x170(%rsp), %rdx
movl 0x38(%r15), %r8d
movl $0x50, %esi
movq %r14, %rdi
movq %r12, %rcx
xorl %eax, %eax
callq 0x20b0
cmpl $0x0, 0x8(%r15)
jne 0x14bf0
leaq 0x30(%rsp), %rdi
callq 0x1527c
leaq 0x30(%rsp), %rsi
movq %r15, %rdi
callq 0x15343
leaq 0xd0(%rsp), %r15
leaq 0x120(%rsp), %r8
leaq 0xa148(%rip), %rdx      # 0x1ed5c
movl $0x50, %esi
movq %r15, %rdi
movq %r14, %rcx
xorl %eax, %eax
callq 0x20b0
leaq 0x70fb(%rip), %rsi      # 0x1bd28
movq %r15, %rdi
callq 0x9026
movq %rax, %r12
movq (%rbx), %r14
movl 0x90(%rbx), %ebp
notl %ebp
addl 0x94(%rbx), %ebp
movl 0x98(%rbx), %r15d
notl %r15d
addl 0x9c(%rbx), %r15d
movl 0xa0(%rbx), %r13d
notl %r13d
addl 0xa4(%rbx), %r13d
leaq 0xaa2e(%rip), %rdi      # 0x1f6a0
movl $0x16, %esi
movl $0x1, %edx
movq %rax, %rcx
callq 0x2200
leaq 0x260(%rsp), %rdx
leaq 0xaafe(%rip), %rsi      # 0x1f791
movq %r12, %rdi
xorl %eax, %eax
callq 0x2160
leaq 0xab2c(%rip), %rsi      # 0x1f7d0
movq %r12, %rdi
xorl %edx, %edx
movl %ebp, %ecx
xorl %r8d, %r8d
movl %r15d, %r9d
xorl %eax, %eax
pushq %r13
xorl %r10d, %r10d
pushq %r10
callq 0x2160
addq $0x10, %rsp
leaq 0xab3a(%rip), %rsi      # 0x1f804
movq %r12, %rdi
xorl %edx, %edx
movl %ebp, %ecx
xorl %r8d, %r8d
movl %r15d, %r9d
xorl %eax, %eax
pushq %r13
xorl %r15d, %r15d
pushq %r15
callq 0x2160
addq $0x10, %rsp
leaq 0xab3c(%rip), %rdi      # 0x1f82c
movl $0x12, %esi
movl $0x1, %edx
movq %r12, %rcx
callq 0x2200
leaq 0x260(%rsp), %rax
cmpl %r15d, 0x50(%rax)
movq %r12, 0x10(%rsp)
jle 0x14ee4
xorpd %xmm0, %xmm0
movsd %xmm0, 0x8(%rsp)
xorl %r13d, %r13d
leaq (,%r13,4), %rax
addq %r13, %rax
leaq 0x210(%rsp), %rdx
leaq (%rdx,%rax,2), %rcx
addq $0xa4, %rcx
movq %r12, %rdi
leaq 0xaaf1(%rip), %rsi      # 0x1f83f
xorl %eax, %eax
callq 0x2160
movl $0xa, %esi
movl $0x1, %edx
leaq 0xab11(%rip), %rdi      # 0x1f877
movq %r12, %rcx
callq 0x2200
movl 0xa0(%rbx), %ebp
movl 0xa4(%rbx), %ecx
cmpl %ecx, %ebp
jge 0x14eb2
movl 0x9c(%rbx), %eax
movl 0x98(%rbx), %r12d
cmpl %eax, %r12d
jge 0x14ea8
movl 0x94(%rbx), %ecx
movl 0x90(%rbx), %r15d
cmpl %ecx, %r15d
jge 0x14e96
movl 0x34(%rbx), %r8d
movl 0x38(%rbx), %ecx
movl %ebp, %edi
movl %r12d, %esi
movl %r15d, %edx
callq 0x7d53
cmpl $0x9, %r13d
ja 0x14e65
cltq
movq %rax, %rcx
shlq $0x7, %rcx
leaq (%rcx,%rax,8), %rcx
leaq (%r14,%rcx), %rax
leaq (%r14,%rcx), %rdi
addq $0x10, %rdi
movl %r13d, %ecx
leaq 0x9fa1(%rip), %rdx      # 0x1ed90
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
movsd (%rdi), %xmm0
jmp 0x14e5f
movq 0x20(%rsp), %rax
movsd 0x40(%rax), %xmm0
callq 0x7b9e
jmp 0x14e5f
xorps %xmm0, %xmm0
cvtsi2sdl 0xc(%rax), %xmm0
jmp 0x14e5f
movsd 0x20(%rax), %xmm0
jmp 0x14e36
movsd 0x28(%rax), %xmm0
jmp 0x14e36
xorps %xmm0, %xmm0
cvtsi2sdl 0x4(%rax), %xmm0
jmp 0x14e5f
movsd 0x18(%rax), %xmm0
divsd 0x10(%rax), %xmm0
jmp 0x14e5f
movq 0x20(%rsp), %rax
movsd 0x50(%rax), %xmm0
callq 0x7c92
jmp 0x14e5f
xorps %xmm0, %xmm0
cvtsi2sdl (%rax), %xmm0
jmp 0x14e5f
xorps %xmm0, %xmm0
cvtsi2sdl 0x8(%rax), %xmm0
movsd %xmm0, 0x8(%rsp)
movq 0x10(%rsp), %rdi
leaq 0xaa81(%rip), %rsi      # 0x1f8f2
movsd 0x8(%rsp), %xmm0
movb $0x1, %al
callq 0x2160
incl %r15d
movl 0x94(%rbx), %ecx
cmpl %ecx, %r15d
jl 0x14dae
movl 0x9c(%rbx), %eax
incl %r12d
cmpl %eax, %r12d
jl 0x14d9e
movl 0xa4(%rbx), %ecx
incl %ebp
cmpl %ecx, %ebp
jl 0x14d88
movl $0x16, %esi
movl $0x1, %edx
leaq 0xa9bf(%rip), %rdi      # 0x1f882
movq 0x10(%rsp), %r12
movq %r12, %rcx
callq 0x2200
incq %r13
movslq 0x2b0(%rsp), %rax
cmpq %rax, %r13
jl 0x14d26
cmpl $0x0, 0x318(%rsp)
jle 0x15065
xorl %ecx, %ecx
movq %rbx, 0x18(%rsp)
movq %r14, 0x28(%rsp)
movq 0x18(%rsp), %r14
movq %rcx, 0x8(%rsp)
leaq (%rcx,%rcx,4), %rax
leaq 0x210(%rsp), %rdx
leaq (%rdx,%rax,2), %rcx
addq $0x10c, %rcx            # imm = 0x10C
movq %r12, %rdi
leaq 0xa970(%rip), %rsi      # 0x1f899
xorl %eax, %eax
callq 0x2160
movl $0xa, %esi
movl $0x1, %edx
leaq 0xa936(%rip), %rdi      # 0x1f877
movq %r12, %rcx
callq 0x2200
movq %rbx, %rax
movl 0xa0(%rbx), %ebx
movl 0xa4(%rax), %ecx
cmpl %ecx, %ebx
jge 0x15029
movq 0x18(%rsp), %rax
movl 0x9c(%rax), %eax
movq 0x18(%rsp), %rdx
movl 0x98(%rdx), %ebp
cmpl %eax, %ebp
jge 0x1501f
movl 0x94(%rdx), %ecx
movl 0x90(%r14), %r15d
cmpl %ecx, %r15d
leaq 0xa953(%rip), %r13      # 0x1f8e8
movq 0x28(%rsp), %r12
jge 0x1500a
movl 0x34(%r14), %r8d
movl 0x38(%r14), %ecx
movl %ebx, %edi
movl %ebp, %esi
movl %r15d, %edx
callq 0x7d53
cltq
movq %rax, %rcx
shlq $0x7, %rcx
leaq (%rcx,%rax,8), %rax
movsd 0x10(%r12,%rax), %xmm3
movsd 0x18(%r12,%rax), %xmm0
divsd %xmm3, %xmm0
movsd 0x20(%r12,%rax), %xmm1
divsd %xmm3, %xmm1
movsd 0x28(%r12,%rax), %xmm2
divsd %xmm3, %xmm2
movq 0x10(%rsp), %rdi
movq %r13, %rsi
movb $0x3, %al
callq 0x2160
incl %r15d
movl 0x94(%r14), %ecx
cmpl %ecx, %r15d
jl 0x14f9c
movl 0x9c(%r14), %eax
incl %ebp
cmpl %eax, %ebp
jl 0x14f84
movq 0x18(%rsp), %rcx
movl 0xa4(%rcx), %ecx
incl %ebx
cmpl %ecx, %ebx
jl 0x14f6b
movl $0x16, %esi
movl $0x1, %edx
leaq 0xa848(%rip), %rdi      # 0x1f882
movq 0x10(%rsp), %r12
movq %r12, %rcx
callq 0x2200
movq 0x8(%rsp), %rcx
incq %rcx
movslq 0x318(%rsp), %rax
cmpq %rax, %rcx
movq 0x18(%rsp), %rbx
jl 0x14f03
leaq 0xa88c(%rip), %rdi      # 0x1f8f8
movl $0x13, %esi
movl $0x1, %edx
movq %r12, %rcx
callq 0x2200
leaq 0xa887(%rip), %rdi      # 0x1f90c
movl $0x11, %esi
movl $0x1, %edx
movq %r12, %rcx
callq 0x2200
leaq 0xa880(%rip), %rdi      # 0x1f91e
movl $0x12, %esi
movl $0x1, %edx
movq %r12, %rcx
callq 0x2200
leaq 0xa87a(%rip), %rdi      # 0x1f931
movl $0xf, %esi
movl $0x1, %edx
movq %r12, %rcx
callq 0x2200
leaq 0x210(%rsp), %rdx
leaq 0xa869(%rip), %rsi      # 0x1f941
movq %r12, %rdi
xorl %eax, %eax
callq 0x2160
leaq 0xa78e(%rip), %rdi      # 0x1f877
movl $0xa, %esi
movl $0x1, %edx
movq %r12, %rcx
callq 0x2200
movl 0xa0(%rbx), %ebp
movl 0xa4(%rbx), %ecx
cmpl %ecx, %ebp
movq %r12, %r14
jge 0x151e5
movl 0x9c(%rbx), %eax
leaq 0xa7c9(%rip), %r15      # 0x1f8e8
movl 0x98(%rbx), %r12d
cmpl %eax, %r12d
jge 0x151db
movl 0x94(%rbx), %ecx
movl 0x90(%rbx), %r13d
cmpl %ecx, %r13d
jge 0x151c9
movsd 0x3f0(%rbx), %xmm0
movsd 0x58(%rbx), %xmm1
movl 0x40(%rbx), %esi
movl %r13d, %edi
callq 0x7db8
movsd %xmm0, 0x10(%rsp)
movsd 0x400(%rbx), %xmm0
movsd 0x60(%rbx), %xmm1
movl 0x44(%rbx), %esi
movl %r12d, %edi
callq 0x7db8
movsd %xmm0, 0x8(%rsp)
movsd 0x410(%rbx), %xmm0
movsd 0x68(%rbx), %xmm1
movl 0x48(%rbx), %esi
movl %ebp, %edi
callq 0x7db8
movapd %xmm0, %xmm2
movq %r14, %rdi
movq %r15, %rsi
movsd 0x10(%rsp), %xmm0
movsd 0x8(%rsp), %xmm1
movb $0x3, %al
callq 0x2160
incl %r13d
movl 0x94(%rbx), %ecx
cmpl %ecx, %r13d
jl 0x15145
movl 0x9c(%rbx), %eax
incl %r12d
cmpl %eax, %r12d
jl 0x15135
movl 0xa4(%rbx), %ecx
incl %ebp
cmpl %ecx, %ebp
jl 0x1511f
leaq 0xa696(%rip), %rdi      # 0x1f882
movl $0x16, %esi
movl $0x1, %edx
movq %r14, %rcx
callq 0x2200
leaq 0xa78f(%rip), %rdi      # 0x1f994
movl $0x10, %esi
movl $0x1, %edx
movq %r14, %rcx
callq 0x2200
leaq 0xa787(%rip), %rdi      # 0x1f9a5
movl $0xd, %esi
movl $0x1, %edx
movq %r14, %rcx
callq 0x2200
leaq 0xa77c(%rip), %rdi      # 0x1f9b3
movl $0x14, %esi
movl $0x1, %edx
movq %r14, %rcx
callq 0x2200
leaq 0xa4c3(%rip), %rdi      # 0x1f713
movl $0xb, %esi
movl $0x1, %edx
movq %r14, %rcx
callq 0x2200
movq %r14, %rdi
callq 0x2080
addq $0x328, %rsp            # imm = 0x328
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq