// File: /workspace/github_c_makefile_star2_O0/0x3f00[P]PhotonCpp/./PhotonFileHeader.h
// Function: PhotonFileHeader::PhotonFileHeader(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
PhotonFileHeader(const std::string & fileContent) {
		std::stringstream ss(fileContent);
        PhotonInputStream ds(ss);

        header1_ = ds.readInt();
        version_ = ds.readInt();

        bedXmm_ = ds.readFloat();
        bedYmm_ = ds.readFloat();
        bedZmm_ = ds.readFloat();

        unknown1_ = ds.readInt();
        unknown2_ = ds.readInt();
        unknown3_ = ds.readInt();

        layerHeightMilimeter_ = ds.readFloat();
        exposureTimeSeconds_ = ds.readFloat();
        exposureBottomTimeSeconds_ = ds.readFloat();

        offTimeSeconds_ = ds.readFloat();
        bottomLayers_ = ds.readInt();

        resolutionX_ = ds.readInt();
        resolutionY_ = ds.readInt();

        previewOneOffsetAddress_ = ds.readInt();
        layersDefinitionOffsetAddress_ = ds.readInt();

        numberOfLayers_ = ds.readInt();

        previewTwoOffsetAddress_ = ds.readInt();
        printTimeSeconds_ = ds.readInt();

        projectType_ = (ds.readInt() ? PhotonProjectType::lcdMirror : PhotonProjectType::cast);

        printParametersOffsetAddress_ = ds.readInt();
        printParametersSize_ = ds.readInt();
        antiAliasingLevel_ = ds.readInt();

        lightPWM_ = ds.readShort();
        bottomLightPWM_ = ds.readShort();

        unknown4_ = ds.readInt();
        unknown5_ = ds.readInt();
        if (version_>1) {
            unknown6_ = ds.readInt();
        }
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x240, %rsp            # imm = 0x240
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x1c8(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x1c0(%rbp)
movl $0x10, %edi
movl $0x8, %esi
callq 0x11790
movq -0x1c0(%rbp), %rsi
movl %eax, %edx
leaq -0x198(%rbp), %rdi
movq %rdi, -0x1b8(%rbp)
callq 0x34d0
movq -0x1b8(%rbp), %rsi
leaq -0x1a0(%rbp), %rdi
callq 0x117b0
jmp 0xc229
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x1cc(%rbp)
jmp 0xc23d
movq -0x1c8(%rbp), %rax
movl -0x1cc(%rbp), %ecx
movl %ecx, (%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x1d0(%rbp)
jmp 0xc260
movq -0x1c8(%rbp), %rax
movl -0x1d0(%rbp), %ecx
movl %ecx, 0x4(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x118d0
movss %xmm0, -0x1d4(%rbp)
jmp 0xc286
movq -0x1c8(%rbp), %rax
movss -0x1d4(%rbp), %xmm0
movss %xmm0, 0x8(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x118d0
movss %xmm0, -0x1d8(%rbp)
jmp 0xc2b0
movq -0x1c8(%rbp), %rax
movss -0x1d8(%rbp), %xmm0
movss %xmm0, 0xc(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x118d0
movss %xmm0, -0x1dc(%rbp)
jmp 0xc2da
movq -0x1c8(%rbp), %rax
movss -0x1dc(%rbp), %xmm0
movss %xmm0, 0x10(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x1e0(%rbp)
jmp 0xc302
movq -0x1c8(%rbp), %rax
movl -0x1e0(%rbp), %ecx
movl %ecx, 0x14(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x1e4(%rbp)
jmp 0xc326
movq -0x1c8(%rbp), %rax
movl -0x1e4(%rbp), %ecx
movl %ecx, 0x18(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x1e8(%rbp)
jmp 0xc34a
movq -0x1c8(%rbp), %rax
movl -0x1e8(%rbp), %ecx
movl %ecx, 0x1c(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x118d0
movss %xmm0, -0x1ec(%rbp)
jmp 0xc370
movq -0x1c8(%rbp), %rax
movss -0x1ec(%rbp), %xmm0
movss %xmm0, 0x20(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x118d0
movss %xmm0, -0x1f0(%rbp)
jmp 0xc39a
movq -0x1c8(%rbp), %rax
movss -0x1f0(%rbp), %xmm0
movss %xmm0, 0x24(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x118d0
movss %xmm0, -0x1f4(%rbp)
jmp 0xc3c4
movq -0x1c8(%rbp), %rax
movss -0x1f4(%rbp), %xmm0
movss %xmm0, 0x28(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x118d0
movss %xmm0, -0x1f8(%rbp)
jmp 0xc3ee
movq -0x1c8(%rbp), %rax
movss -0x1f8(%rbp), %xmm0
movss %xmm0, 0x2c(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x1fc(%rbp)
jmp 0xc416
movq -0x1c8(%rbp), %rax
movl -0x1fc(%rbp), %ecx
movl %ecx, 0x30(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x200(%rbp)
jmp 0xc43a
movq -0x1c8(%rbp), %rax
movl -0x200(%rbp), %ecx
movl %ecx, 0x34(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x204(%rbp)
jmp 0xc45e
movq -0x1c8(%rbp), %rax
movl -0x204(%rbp), %ecx
movl %ecx, 0x38(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x208(%rbp)
jmp 0xc482
movq -0x1c8(%rbp), %rax
movl -0x208(%rbp), %ecx
movl %ecx, 0x3c(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x20c(%rbp)
jmp 0xc4a6
movq -0x1c8(%rbp), %rax
movl -0x20c(%rbp), %ecx
movl %ecx, 0x40(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x210(%rbp)
jmp 0xc4ca
movq -0x1c8(%rbp), %rax
movl -0x210(%rbp), %ecx
movl %ecx, 0x44(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x214(%rbp)
jmp 0xc4ee
movq -0x1c8(%rbp), %rax
movl -0x214(%rbp), %ecx
movl %ecx, 0x48(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x218(%rbp)
jmp 0xc512
movq -0x1c8(%rbp), %rax
movl -0x218(%rbp), %ecx
movl %ecx, 0x4c(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x21c(%rbp)
jmp 0xc536
movq -0x1c8(%rbp), %rax
movl -0x21c(%rbp), %ecx
testl %ecx, %ecx
setne %cl
movzbl %cl, %ecx
movl %ecx, 0x50(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x220(%rbp)
jmp 0xc562
movq -0x1c8(%rbp), %rax
movl -0x220(%rbp), %ecx
movl %ecx, 0x54(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x224(%rbp)
jmp 0xc586
movq -0x1c8(%rbp), %rax
movl -0x224(%rbp), %ecx
movl %ecx, 0x58(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x228(%rbp)
jmp 0xc5aa
movq -0x1c8(%rbp), %rax
movl -0x228(%rbp), %ecx
movl %ecx, 0x5c(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x11900
movw %ax, -0x22a(%rbp)
jmp 0xc5cf
movq -0x1c8(%rbp), %rax
movw -0x22a(%rbp), %cx
movw %cx, 0x60(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x11900
movw %ax, -0x22c(%rbp)
jmp 0xc5f6
movq -0x1c8(%rbp), %rax
movw -0x22c(%rbp), %cx
movw %cx, 0x62(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x230(%rbp)
jmp 0xc61c
movq -0x1c8(%rbp), %rax
movl -0x230(%rbp), %ecx
movl %ecx, 0x64(%rax)
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x234(%rbp)
jmp 0xc640
movq -0x1c8(%rbp), %rax
movl -0x234(%rbp), %ecx
movl %ecx, 0x68(%rax)
cmpl $0x1, 0x4(%rax)
jle 0xc69c
leaq -0x1a0(%rbp), %rdi
callq 0x117d0
movl %eax, -0x238(%rbp)
jmp 0xc66a
movq -0x1c8(%rbp), %rax
movl -0x238(%rbp), %ecx
movl %ecx, 0x6c(%rax)
jmp 0xc69c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a8(%rbp)
movl %eax, -0x1ac(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x3230
jmp 0xc6b1
leaq -0x198(%rbp), %rdi
callq 0x3230
addq $0x240, %rsp            # imm = 0x240
popq %rbp
retq
movq -0x1a8(%rbp), %rdi
callq 0x3570
nopl (%rax)