// File: NichtJens[P]lmf2txt/LMF_IO.cpp
// Function: LMF_IO::ReadfADC8_header_LMFversion9()
__int32	LMF_IO::ReadfADC8_header_LMFversion9()
{
	__int32 byte_counter = 0;
	*input_lmf >> this->number_of_DAQ_source_strings;  byte_counter += sizeof(__int32);

	DAQ_source_strings = new std::string*[number_of_DAQ_source_strings];
	memset(DAQ_source_strings,0,sizeof(std::string*)*number_of_DAQ_source_strings);
	for (__int32 i=0;i<number_of_DAQ_source_strings;++i) {
		__int32 string_len;
		*input_lmf >> string_len;	byte_counter += sizeof(__int32);
		DAQ_source_strings[i] = new std::string();
		DAQ_source_strings[i]->reserve(string_len);
		while (string_len > 0) {
			__int8 c;
			*input_lmf >> c;		byte_counter += sizeof(__int8);
			*DAQ_source_strings[i] += c;
			--string_len;
		}
	}

	*input_lmf >> time_reference;	byte_counter += sizeof(__int32);
	*input_lmf >> tdcresolution;	byte_counter += sizeof(double);					// tdc resolution in ns
	*input_lmf >> TDCDataType;		byte_counter += sizeof(__int32);

	unsigned __int64 temp_uint64;
	*input_lmf >> temp_uint64;		byte_counter += sizeof(unsigned __int64);		// number of channels
	number_of_channels =__int32(temp_uint64);

	*input_lmf >> temp_uint64;		byte_counter += sizeof(unsigned __int64);		// number of hits
	max_number_of_hits =__int32(temp_uint64);

	if (int(number_of_channels) > num_channels)	{errorflag = 19;	return -100000;}
	if (int(max_number_of_hits) > num_ions)		{errorflag = 20;	return -100000;}

	*input_lmf >> data_format_in_userheader;	byte_counter += sizeof(__int32);	// data format (2=short integer)



	// bools
	__int32 counter = 0;
	*input_lmf >> fADC8.number_of_bools;		byte_counter += sizeof(__int32);
	for (__int32 i=counter;i<fADC8.number_of_bools;++i) {
		bool bool_dummy;
		*input_lmf >> bool_dummy;				byte_counter += sizeof(bool);
	}


	// unsigned 32bit
	counter = 0;
	*input_lmf >> fADC8.number_of_uint32s;		byte_counter += sizeof(__int32);
	
	*input_lmf >> fADC8.i32NumberOfDAQLoops;	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.i32NumberOfADCmodules;	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iEnableGroupMode;		byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iTriggerChannel;		byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iPreSamplings_in_4800ps_units;	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iPostSamplings_in_9600ps_units;	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iEnableTDCinputs;		byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iChannelMode[0][0];		byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iChannelMode[0][1];		byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iChannelMode[1][0];		byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iChannelMode[1][1];		byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iChannelMode[2][0];		byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iChannelMode[2][1];		byte_counter += sizeof(__int32); counter++;
	for (__int32 i=counter;i<fADC8.number_of_uint32s;++i) {
		unsigned __int32 uint_dummy;
		*input_lmf >> uint_dummy;				byte_counter += sizeof(unsigned __int32);
	}


	// signed 32bit
	counter = 0;
	*input_lmf >> fADC8.number_of_int32s;		byte_counter += sizeof(__int32);

	for (__int32 imod = 0; imod < 3; imod++) {
		for (__int32 ich = 0; ich < 8; ich++) {
			*input_lmf >> fADC8.iThreshold_GT[imod][ich];  byte_counter += sizeof(__int32);  counter++;
		}
	}
	for (__int32 imod = 0; imod < 3; imod++) {
		for (__int32 ich = 0; ich < 8; ich++) {
			*input_lmf >> fADC8.iThreshold_LT[imod][ich];  byte_counter += sizeof(__int32);  counter++;
		}
	}
	*input_lmf >> fADC8.iSynchronMode[0][0];	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iSynchronMode[0][1];	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iSynchronMode[1][0];	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iSynchronMode[1][1];	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iSynchronMode[2][0];	byte_counter += sizeof(__int32); counter++;
	*input_lmf >> fADC8.iSynchronMode[2][1];	byte_counter += sizeof(__int32); counter++;
	
	
	for (__int32 i=counter;i<fADC8.number_of_int32s;++i) {
		__int32 int_dummy;
		*input_lmf >> int_dummy;				byte_counter += sizeof(__int32);
	}

	// doubles
	counter = 0;
	*input_lmf >> fADC8.number_of_doubles;		byte_counter += sizeof(__int32);
	*input_lmf >> fADC8.dGroupRangeStart;		byte_counter += sizeof(double); counter++;
	*input_lmf >> fADC8.dGroupRangeEnd;			byte_counter += sizeof(double); counter++;
	*input_lmf >> fADC8.dSyncTimeOffset[0][0];	byte_counter += sizeof(double); counter++;
	*input_lmf >> fADC8.dSyncTimeOffset[0][1];	byte_counter += sizeof(double); counter++;
	*input_lmf >> fADC8.dSyncTimeOffset[1][0];	byte_counter += sizeof(double); counter++;
	*input_lmf >> fADC8.dSyncTimeOffset[1][1];	byte_counter += sizeof(double); counter++;
	*input_lmf >> fADC8.dSyncTimeOffset[2][0];	byte_counter += sizeof(double); counter++;
	*input_lmf >> fADC8.dSyncTimeOffset[2][1];	byte_counter += sizeof(double); counter++;

	for (__int32 i=counter;i<fADC8.number_of_doubles;++i) {
		double double_dummy;
		*input_lmf >> double_dummy;				byte_counter += sizeof(double);
	}

	*input_lmf >> fADC8.GroupEndMarker;			byte_counter += sizeof(__int32); counter++;

	return byte_counter;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rsi
movq %rsi, -0x68(%rbp)
movl $0x0, -0x14(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x1328, %rsi           # imm = 0x1328
callq 0x1cf60
movq -0x68(%rbp), %rax
movslq -0x14(%rbp), %rcx
addq $0x4, %rcx
movl %ecx, -0x14(%rbp)
movslq 0x1328(%rax), %rax
movl $0x8, %ecx
mulq %rcx
movq %rax, %rdi
seto %cl
movq $-0x1, %rax
testb $0x1, %cl
cmovneq %rax, %rdi
callq 0x2030
movq %rax, %rcx
movq -0x68(%rbp), %rax
movq %rcx, 0x1330(%rax)
movq 0x1330(%rax), %rdi
movslq 0x1328(%rax), %rdx
shlq $0x3, %rdx
xorl %esi, %esi
callq 0x20d0
movl $0x0, -0x18(%rbp)
movq -0x68(%rbp), %rcx
movl -0x18(%rbp), %eax
cmpl 0x1328(%rcx), %eax
jge 0xb708
movq -0x68(%rbp), %rax
movq 0x2b18(%rax), %rdi
leaq -0x1c(%rbp), %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl $0x20, %edi
callq 0x2190
movq %rax, %rdi
movq %rdi, -0x70(%rbp)
callq 0x2260
movq -0x70(%rbp), %rsi
movq -0x68(%rbp), %rax
movq 0x1330(%rax), %rcx
movslq -0x18(%rbp), %rdx
movq %rsi, (%rcx,%rdx,8)
movq 0x1330(%rax), %rax
movslq -0x18(%rbp), %rcx
movq (%rax,%rcx,8), %rdi
movslq -0x1c(%rbp), %rsi
callq 0x22d0
cmpl $0x0, -0x1c(%rbp)
jle 0xb6f8
movq -0x68(%rbp), %rax
movq 0x2b18(%rax), %rdi
leaq -0x1d(%rbp), %rsi
callq 0x1d0e0
movq -0x68(%rbp), %rcx
movslq -0x14(%rbp), %rax
addq $0x1, %rax
movl %eax, -0x14(%rbp)
movb -0x1d(%rbp), %al
movq 0x1330(%rcx), %rcx
movslq -0x18(%rbp), %rdx
movq (%rcx,%rdx,8), %rdi
movsbl %al, %esi
callq 0x2100
movl -0x1c(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0xb6aa
jmp 0xb6fa
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0xb633
movq -0x68(%rbp), %rsi
movq 0x2b18(%rsi), %rdi
addq $0x240, %rsi            # imm = 0x240
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x12b8, %rsi           # imm = 0x12B8
callq 0x1d1f0
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x12ac, %rsi           # imm = 0x12AC
callq 0x1cf60
movq -0x68(%rbp), %rax
movslq -0x14(%rbp), %rcx
addq $0x4, %rcx
movl %ecx, -0x14(%rbp)
movq 0x2b18(%rax), %rdi
leaq -0x28(%rbp), %rsi
callq 0x1cbb0
movq -0x68(%rbp), %rax
movslq -0x14(%rbp), %rcx
addq $0x8, %rcx
movl %ecx, -0x14(%rbp)
movq -0x28(%rbp), %rcx
movl %ecx, 0x2b4(%rax)
movq 0x2b18(%rax), %rdi
leaq -0x28(%rbp), %rsi
callq 0x1cbb0
movq -0x68(%rbp), %rcx
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movq -0x28(%rbp), %rax
movl %eax, 0x2bc(%rcx)
movl 0x2b4(%rcx), %eax
cmpl 0x2b70(%rcx), %eax
jle 0xb7ec
movq -0x68(%rbp), %rax
movl $0x13, 0x12e0(%rax)
movl $0xfffe7960, -0x4(%rbp) # imm = 0xFFFE7960
jmp 0xc083
movq -0x68(%rbp), %rcx
movl 0x2bc(%rcx), %eax
cmpl 0x2b74(%rcx), %eax
jle 0xb818
movq -0x68(%rbp), %rax
movl $0x14, 0x12e0(%rax)
movl $0xfffe7960, -0x4(%rbp) # imm = 0xFFFE7960
jmp 0xc083
movq -0x68(%rbp), %rsi
movq 0x2b18(%rsi), %rdi
addq $0x290, %rsi            # imm = 0x290
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl $0x0, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x8, %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
movl %eax, -0x30(%rbp)
movq -0x68(%rbp), %rcx
movl -0x30(%rbp), %eax
cmpl 0x15a8(%rcx), %eax
jge 0xb8a6
movq -0x68(%rbp), %rax
movq 0x2b18(%rax), %rdi
leaq -0x31(%rbp), %rsi
callq 0x1d2d0
movslq -0x14(%rbp), %rax
addq $0x1, %rax
movl %eax, -0x14(%rbp)
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0xb86d
movq -0x68(%rbp), %rsi
movl $0x0, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x10, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x4, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x1c, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x20, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x24, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x28, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x2c, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x30, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x34, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x34, %rsi
addq $0x4, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x34, %rsi
addq $0x8, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x34, %rsi
addq $0x8, %rsi
addq $0x4, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x34, %rsi
addq $0x10, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x34, %rsi
addq $0x10, %rsi
addq $0x4, %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movl %eax, -0x38(%rbp)
movq -0x68(%rbp), %rcx
movl -0x38(%rbp), %eax
cmpl 0x15b0(%rcx), %eax
jge 0xbb91
movq -0x68(%rbp), %rax
movq 0x2b18(%rax), %rdi
leaq -0x3c(%rbp), %rsi
callq 0x1cb80
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x38(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x38(%rbp)
jmp 0xbb58
movq -0x68(%rbp), %rsi
movl $0x0, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0xc, %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl $0x0, -0x40(%rbp)
cmpl $0x3, -0x40(%rbp)
jge 0xbc35
movl $0x0, -0x44(%rbp)
cmpl $0x8, -0x44(%rbp)
jge 0xbc28
movq -0x68(%rbp), %rsi
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x74, %rsi
movslq -0x40(%rbp), %rax
shlq $0x5, %rax
addq %rax, %rsi
movslq -0x44(%rbp), %rax
shlq $0x2, %rax
addq %rax, %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movl -0x44(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x44(%rbp)
jmp 0xbbd2
jmp 0xbc2a
movl -0x40(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x40(%rbp)
jmp 0xbbc5
movl $0x0, -0x48(%rbp)
cmpl $0x3, -0x48(%rbp)
jge 0xbcaf
movl $0x0, -0x4c(%rbp)
cmpl $0x8, -0x4c(%rbp)
jge 0xbca2
movq -0x68(%rbp), %rsi
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x174, %rsi            # imm = 0x174
movslq -0x48(%rbp), %rax
shlq $0x5, %rax
addq %rax, %rsi
movslq -0x4c(%rbp), %rax
shlq $0x2, %rax
addq %rax, %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movl -0x4c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4c(%rbp)
jmp 0xbc49
jmp 0xbca4
movl -0x48(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x48(%rbp)
jmp 0xbc3c
movq -0x68(%rbp), %rsi
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x274, %rsi            # imm = 0x274
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x274, %rsi            # imm = 0x274
addq $0x4, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x274, %rsi            # imm = 0x274
addq $0x8, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x274, %rsi            # imm = 0x274
addq $0x8, %rsi
addq $0x4, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x274, %rsi            # imm = 0x274
addq $0x10, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x274, %rsi            # imm = 0x274
addq $0x10, %rsi
addq $0x4, %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movl %eax, -0x50(%rbp)
movq -0x68(%rbp), %rcx
movl -0x50(%rbp), %eax
cmpl 0x15ac(%rcx), %eax
jge 0xbe36
movq -0x68(%rbp), %rax
movq 0x2b18(%rax), %rdi
leaq -0x54(%rbp), %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x50(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x50(%rbp)
jmp 0xbdfd
movq -0x68(%rbp), %rsi
movl $0x0, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x14, %rsi
callq 0x1cf60
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x448, %rsi            # imm = 0x448
callq 0x1d1f0
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x450, %rsi            # imm = 0x450
callq 0x1d1f0
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x458, %rsi            # imm = 0x458
callq 0x1d1f0
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x458, %rsi            # imm = 0x458
addq $0x8, %rsi
callq 0x1d1f0
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x458, %rsi            # imm = 0x458
addq $0x10, %rsi
callq 0x1d1f0
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x458, %rsi            # imm = 0x458
addq $0x10, %rsi
addq $0x8, %rsi
callq 0x1d1f0
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x458, %rsi            # imm = 0x458
addq $0x20, %rsi
callq 0x1d1f0
movq -0x68(%rbp), %rsi
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x458, %rsi            # imm = 0x458
addq $0x20, %rsi
addq $0x8, %rsi
callq 0x1d1f0
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movl %eax, -0x58(%rbp)
movq -0x68(%rbp), %rcx
movl -0x58(%rbp), %eax
cmpl 0x15b4(%rcx), %eax
jge 0xc04e
movq -0x68(%rbp), %rax
movq 0x2b18(%rax), %rdi
leaq -0x60(%rbp), %rsi
callq 0x1d1f0
movslq -0x14(%rbp), %rax
addq $0x8, %rax
movl %eax, -0x14(%rbp)
movl -0x58(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x58(%rbp)
jmp 0xc015
movq -0x68(%rbp), %rsi
movq 0x2b18(%rsi), %rdi
addq $0x15a0, %rsi           # imm = 0x15A0
addq $0x18, %rsi
callq 0x1cf60
movslq -0x14(%rbp), %rax
addq $0x4, %rax
movl %eax, -0x14(%rbp)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
movl -0x14(%rbp), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x70, %rsp
popq %rbp
retq
nopl (%rax)