// File: DoubleString[P]RtConverter/src/Rnxobs/RnxobsFile_sat.cpp
// Function: bamboo::RnxobsFile_sat::v_readEpoch(int&, double&)
void RnxobsFile_sat::v_readEpoch(int& mjd, double& sod) {
	int lfind, nprn, iflag, i, j, k, nline, ntemp;
	int iy, im, id, ih, imi, isat, isys, iobs;
	double sec, ds;
	streampos pos;
	char cline[1024], code[4];
	string line, varstr;
	double obt[MAXOBSTYP];
	if (!(this->in)){
		memset(obs, 0, sizeof(double) * MAXSAT * 2 * MAXFREQ);
		this->mjd = mjd;
		this->sod = sod;
		return;
	}
	Deploy* dly = RtRinexStream::m_getCurConfigures();
	// Read Rnx
	memset(obs, 0, sizeof(double) * MAXSAT * 2 * MAXFREQ);
	memset(dop,0,sizeof(double) * MAXSAT * 2 * MAXFREQ);
	memset(snr,0,sizeof(double) * MAXSAT * MAXFREQ);
	lfind = false;
	while (!lfind && !in.eof()) {
		pos = in.tellg();
		getline(in, line);
		if(!len_trim(line.c_str()))
			continue;
		if (ver < 3.0) {
			nprn = atoi(line.substr(29, 3).c_str());
			iflag = atoi(line.substr(26, 3).c_str());
		} else {
			nprn = atoi(line.substr(32, 3).c_str());
			iflag = atoi(line.substr(29, 3).c_str());
		}
		if (nprn > MAXSAT) {
			printf("nprn = %d,MAXSAT = %d,staname = %s,station's satellite number is bigger than MAXSAT,possible is the readEpoch iflag!",
					nprn,MAXSAT,staname.c_str());
			in.close();
			memset(obs, 0, sizeof(double) * MAXSAT * 2 * MAXFREQ);
			this->mjd = mjd;
			this->sod = sod;
			return;
		}
		// station moved
		if (iflag > 1) {
			for (i = 0; i < nprn; i++) { // nprn indicate the nline
				getline(in, line);
				if (strstr(line.c_str(), "ANTENNA: DELTA H/E/N")) {
					cout << "***INFO(readEpoch):Changing the ENU of the station"
							<< staname << endl;
					sscanf(line.c_str(), "%lf%lf%lf", &h, &e, &n);
				}
			}
			continue;
		}
		// check if the format is correct
		if (ver >= 3.0)
			sscanf(line.c_str(), "%*s%d%d%d%d%d%lf", &iy, &im, &id, &ih, &imi,
					&sec);
		else
			sscanf(line.c_str(), "%d%d%d%d%d%lf", &iy, &im, &id, &ih, &imi,
					&sec);
		yr2year(iy);
		if(iy < 2000 || iy > 3500){
			printf("iy = %d,staname = %s,reading time error,possible is the readEpoch iflag!",iy,staname.c_str());
			in.close();
			memset(obs, 0, sizeof(double) * MAXSAT * 2 * MAXFREQ);
			this->mjd = mjd;
			this->sod = sod;
			return;
		}
		this->mjd = md_julday(iy, im, id);
		this->sod = ih * 3600.0 + imi * 60 + sec;//NINT(ih * 3600.0 + imi * 60 + sec);
		if (ver < 3.0) {
			if (nprn % 12 != 0)
				nline = (int) (nprn / 12.0) + 1;
			else
				nline = nprn / 12;
			if (nprn == 0)
				nline = 1;
		}
		ds = timdif(mjd, sod, this->mjd, this->sod);
		if (ds < -MAXWND) {
			// the requested time is before the current time in the obsfile
			in.seekg(pos);
			this->mjd = mjd;
			this->sod = sod;
			return;
		} else if (ds > MAXWND) {
			// keep tracing until find the corresponding observation
			if (ver < 3.0) {
				for (i = 0; i < nline - 1; i++)
					getline(in, line);
				if (nobstype[0] % 5 != 0)
					ntemp = nprn * ((int) (nobstype[0] / 5) + 1);
				else
					ntemp = nprn * (nobstype[0] / 5);
				for (i = 0; i < ntemp; i++)
					getline(in, line);
			} else {
				for (i = 0; i < nprn; i++)
					getline(in, line);
			}
		} else {
			lfind = true;
			mjd = this->mjd;
			sod = ih * 3600.0 + imi * 60.0 + sec;
			this->sod = sod;
		}
	}
	if(in.eof()){
		this->mjd = mjd;
		this->sod = sod;
		return;
	}
	if (ver < 3.0) {
		// get rinex 2.x version observation data
		in.seekg(pos);
		for (i = 0; i < nline; i++) {
			getline(in, line);
			for (j = 0; j < MIN(nprn - 12 * i, 12); j++) {
				cprn_ob[j + i * 12] = line.substr(32 + j * 3, 3);
				if (cprn_ob[j + i * 12][0] == ' ')
					cprn_ob[j + i * 12][0] = 'G';
				if (cprn_ob[j + i * 12][1] == ' ')
					cprn_ob[j + i * 12][1] = '0';
			}
		}
		if (nobstype[0] % 5 != 0)
			nline = (int) (nobstype[0] / 5.0) + 1;
		else
			nline = nobstype[0] / 5;
		for (i = 0; i < nprn; i++) {
			for (j = 0; j < nline; j++) {
				getline(in, line);
				strcpy(cline, line.c_str());
				fillobs(cline, MIN(nobstype[0] - j * 5, 5), 16,ver);
				varstr = string(cline);
				for (k = 0; k < MIN(nobstype[0] - j * 5, 5); k++) {
					obt[k + j * 5] = 0.0;
					obt[k + j * 5] = atof(varstr.substr(16 * k, 14).c_str());
				}
			}
			isat = pointer_string(dly->nprn, dly->cprn, this->cprn_ob[i]);
			if (isat != -1) {
				//isys = SYS.find_first_of(this->cprn_ob[i][0]);
				isys = index_string(SYS,this->cprn_ob[i][0]);
				for (j = 0; j < dly->nfreq[isys]; j++) {
					code[0] = 'P';
					code[1] = dly->freq[isys][j][1];
					code[2] = '\0';
					k = pointer_string(nobstype[isys], obstype[isys],
							string(code));
					if (k != -1) {
						this->obs[isat][MAXFREQ + j] = obt[k];
						code[0] = 'C';
						code[1] = dly->freq[isys][j][1];
						code[2] = 'P';
						code[3] = '\0';
						memcpy(this->fob[isat][MAXFREQ + j],code,sizeof(char) * 4);
					}
					if (this->obs[isat][MAXFREQ + j] == 0) {
						code[0] = 'C';
						code[1] = dly->freq[isys][j][1];
						code[2] = '\0';

						k = pointer_string(nobstype[isys], obstype[isys],
								string(code));
						if (k != -1) {
							this->obs[isat][MAXFREQ + j] = obt[k];
							code[0] = 'C';
							code[1] = dly->freq[isys][j][1];
							code[2] = 'C';
							code[3] = '\0';
							memcpy(this->fob[isat][MAXFREQ + j],code,sizeof(char) * 4);
						}
					}
					code[0] = 'L';
					code[1] = dly->freq[isys][j][1];
					code[2] = '\0';
					k = pointer_string(nobstype[isys], obstype[isys],
							string(code));
					if (k != -1) {
						this->obs[isat][j] = obt[k];
						code[0] = 'L';
						code[1] = dly->freq[isys][j][1];
						code[2] = 'P';
						code[3] = '\0';
						memcpy(this->fob[isat][j],code,sizeof(char) * 4);
					}
					/////////////////////// dop observations//////////////
					code[0] = 'D';
					code[1] = dly->freq[isys][j][1];
					code[2] = '\0';
					k = pointer_string(nobstype[isys], obstype[isys],
							string(code));
					if (k != -1) {
						this->dop[isat][MAXFREQ + j] = obt[k];
					}
				}
				m_checkObs(isat,obs[isat],dop[isat],snr[isat]);
			}
		}
	} else {
		// get rinex 3.x version observation data
		for (i = 0; i < nprn; i++) {
			getline(in, line);
			//isys = SYS.find_first_of(line[0]);
			isys = index_string(SYS,line[0]);
			if (isys == -1)
				continue;
			if (line[1] == ' ')
				line[1] = '0';
			isat = pointer_string(dly->nprn, dly->cprn, line.substr(0, 3));
			if (isat == -1)
				continue;
			strcpy(cline, line.substr(3, line.size() - 3).c_str());
			fillobs(cline, nobstype[isys], 16,ver);
			varstr = line.substr(0,3) + string(cline);
			for (j = 0; j < nobstype[isys]; j++) {
				obt[j] = atof(varstr.substr(3 + j * 16, 14).c_str());
			}
			for (j = 0; j < dly->nfreq[isys]; j++) {
				if (!(this->tstore[isat][j])) {
					for (iobs = 0; iobs < strlen(OBSTYPE); iobs++) {
						code[0] = 'C';
						code[1] = dly->freq[isys][j][1];
						code[2] = OBSTYPE[iobs];
						code[3] = '\0';
						k = pointer_string(nobstype[isys], obstype[isys],
								string(code));
						if (k != -1) {
							obs[isat][MAXFREQ + j] = obt[k];
							memcpy(this->fob[isat][MAXFREQ + j],code,sizeof(char) * 4);
						}
						code[0] = 'L';
						code[1] = dly->freq[isys][j][1];
						code[2] = OBSTYPE[iobs];
						code[3] = '\0';
						k = pointer_string(nobstype[isys], obstype[isys],
								string(code));
						if (k != -1) {
							obs[isat][j] = obt[k];
							memcpy(this->fob[isat][j],code,sizeof(char) * 4);
						}

						code[0] = 'S';
						code[1] = dly->freq[isys][j][1];
						code[2] = OBSTYPE[iobs];
						code[3] = '\0';
						k = pointer_string(nobstype[isys], obstype[isys],
								string(code));
						if (k != -1) {
							snr[isat][j] = obt[k];
						}

						code[0] = 'D';
						code[1] = dly->freq[isys][j][1];
						code[2] = OBSTYPE[iobs];
						code[3] = '\0';

						k = pointer_string(nobstype[isys], obstype[isys],
								string(code));
						if (k != -1) {
							dop[isat][MAXFREQ + j] = obt[k];
						}
						//// must according the uobs to decide
						if (obs[isat][j] != 0 && obs[isat][MAXFREQ + j] != 0)
							break;
					}
					if (iobs < strlen(OBSTYPE)) {
						usetype[isat][j] = OBSTYPE[iobs];
						tstore[isat][j] = 1;
					}
				} else {
					code[0] = 'C';
					code[1] = dly->freq[isys][j][1];
					code[2] = this->usetype[isat][j];
					code[3] = '\0';
					k = pointer_string(nobstype[isys], obstype[isys],
							string(code));
					if (k != -1) {
						obs[isat][MAXFREQ + j] = obt[k];
						memcpy(this->fob[isat][MAXFREQ + j],code,sizeof(char) * 4);
					}
					code[0] = 'L';
					code[1] = dly->freq[isys][j][1];
					code[2] = this->usetype[isat][j];
					code[3] = '\0';
					k = pointer_string(nobstype[isys], obstype[isys],
							string(code));
					if (k != -1) {
						obs[isat][j] = obt[k];
						memcpy(this->fob[isat][j],code,sizeof(char) * 4);
					}

					code[0] = 'S';
					code[1] = dly->freq[isys][j][1];
					code[2] = this->usetype[isat][j];
					code[3] = '\0';

					k = pointer_string(nobstype[isys], obstype[isys],
							string(code));
					if (k != -1) {
						snr[isat][j] = obt[k];
					}

					code[0] = 'D';
					code[1] = dly->freq[isys][j][1];
					code[2] = this->usetype[isat][j];
					code[3] = '\0';

					k = pointer_string(nobstype[isys], obstype[isys],
							string(code));
					if (k != -1) {
						dop[isat][MAXFREQ + j] = obt[k];
					}
				}
			}
			m_checkObs(isat,obs[isat],dop[isat],snr[isat]);
		}
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xcd0, %rsp            # imm = 0xCD0
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xa68(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x43040
leaq -0x4a8(%rbp), %rdi
callq 0x9a50
leaq -0x4c8(%rbp), %rdi
callq 0x9a50
movq -0xa68(%rbp), %rax
movq 0xb820(%rax), %rcx
movq -0x18(%rcx), %rcx
leaq 0xb820(%rax,%rcx), %rdi
callq 0x9320
movb %al, -0xa5a(%rbp)
jmp 0x4076a
movb -0xa5a(%rbp), %al
testb $0x1, %al
jne 0x40776
jmp 0x407d6
movq -0xa68(%rbp), %rdi
addq $0x8, %rdi
xorl %esi, %esi
movl $0x1fe0, %edx           # imm = 0x1FE0
callq 0x93d0
movq -0xa68(%rbp), %rax
movq -0x10(%rbp), %rcx
movl (%rcx), %ecx
movl %ecx, 0x6010(%rax)
movq -0x18(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x3fc8(%rax)
movl $0x1, -0x670(%rbp)
jmp 0x42e56
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x42e77
callq 0x42fa0
movq %rax, -0xa70(%rbp)
jmp 0x407e4
movq -0xa68(%rbp), %rdi
movq -0xa70(%rbp), %rax
movq %rax, -0x678(%rbp)
addq $0x8, %rdi
xorl %esi, %esi
movl $0x1fe0, %edx           # imm = 0x1FE0
callq 0x93d0
movq -0xa68(%rbp), %rdi
addq $0x1fe8, %rdi           # imm = 0x1FE8
xorl %esi, %esi
movl $0x1fe0, %edx           # imm = 0x1FE0
callq 0x93d0
movq -0xa68(%rbp), %rdi
addq $0x4fc0, %rdi           # imm = 0x4FC0
xorl %esi, %esi
movl $0xff0, %edx            # imm = 0xFF0
callq 0x93d0
movl $0x0, -0x1c(%rbp)
xorl %eax, %eax
cmpl $0x0, -0x1c(%rbp)
movb %al, -0xa71(%rbp)
jne 0x40887
movq -0xa68(%rbp), %rax
movq 0xb820(%rax), %rcx
movq -0x18(%rcx), %rcx
leaq 0xb820(%rax,%rcx), %rdi
callq 0x9dd0
movb %al, -0xa72(%rbp)
jmp 0x40879
movb -0xa72(%rbp), %al
xorb $-0x1, %al
movb %al, -0xa71(%rbp)
movb -0xa71(%rbp), %al
testb $0x1, %al
jne 0x40896
jmp 0x41079
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
callq 0x9d00
movq %rdx, -0xa88(%rbp)
movq %rax, -0xa80(%rbp)
jmp 0x408b9
movq -0xa68(%rbp), %rdi
movq -0xa88(%rbp), %rax
movq -0xa80(%rbp), %rcx
movq %rcx, -0x688(%rbp)
movq %rax, -0x680(%rbp)
movups -0x688(%rbp), %xmm0
movaps %xmm0, -0x80(%rbp)
addq $0xb820, %rdi           # imm = 0xB820
leaq -0x4a8(%rbp), %rsi
callq 0x9160
jmp 0x408fc
leaq -0x4a8(%rbp), %rdi
callq 0x92b0
movq %rax, %rdi
callq 0x33d80
movl %eax, -0xa8c(%rbp)
jmp 0x40918
movl -0xa8c(%rbp), %eax
cmpl $0x0, %eax
jne 0x40928
jmp 0x40844
movq -0xa68(%rbp), %rax
movsd 0x7c501(%rip), %xmm0    # 0xbce38
ucomisd 0x6c20(%rax), %xmm0
jbe 0x409d5
leaq -0x6a8(%rbp), %rdi
leaq -0x4a8(%rbp), %rsi
movl $0x1d, %edx
movl $0x3, %ecx
callq 0x97a0
jmp 0x40964
leaq -0x6a8(%rbp), %rdi
movq %rdi, -0xa98(%rbp)
callq 0x92b0
movq %rax, %rdi
callq 0x9b60
movq -0xa98(%rbp), %rdi
movl %eax, -0x20(%rbp)
callq 0x9480
leaq -0x6c8(%rbp), %rdi
leaq -0x4a8(%rbp), %rsi
movl $0x1a, %edx
movl $0x3, %ecx
callq 0x97a0
jmp 0x409ad
leaq -0x6c8(%rbp), %rdi
callq 0x92b0
movq %rax, %rdi
callq 0x9b60
movl %eax, -0x24(%rbp)
leaq -0x6c8(%rbp), %rdi
callq 0x9480
jmp 0x40a60
leaq -0x6e8(%rbp), %rdi
leaq -0x4a8(%rbp), %rsi
movl $0x20, %edx
movl $0x3, %ecx
callq 0x97a0
jmp 0x409f4
leaq -0x6e8(%rbp), %rdi
movq %rdi, -0xaa0(%rbp)
callq 0x92b0
movq %rax, %rdi
callq 0x9b60
movq -0xaa0(%rbp), %rdi
movl %eax, -0x20(%rbp)
callq 0x9480
leaq -0x708(%rbp), %rdi
leaq -0x4a8(%rbp), %rsi
movl $0x1d, %edx
movl $0x3, %ecx
callq 0x97a0
jmp 0x40a3d
leaq -0x708(%rbp), %rdi
callq 0x92b0
movq %rax, %rdi
callq 0x9b60
movl %eax, -0x24(%rbp)
leaq -0x708(%rbp), %rdi
callq 0x9480
cmpl $0xaa, -0x20(%rbp)
jle 0x40b05
movq -0xa68(%rbp), %rdi
movl -0x20(%rbp), %eax
movl %eax, -0xaa4(%rbp)
addq $0x5fb0, %rdi           # imm = 0x5FB0
callq 0x92b0
movl -0xaa4(%rbp), %esi
movq %rax, %rcx
leaq 0x7cd3b(%rip), %rdi     # 0xbd7d4
xorl %eax, %eax
movl $0xaa, %edx
callq 0x9090
jmp 0x40aa7
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
callq 0x9170
jmp 0x40abc
movq -0xa68(%rbp), %rdi
addq $0x8, %rdi
xorl %esi, %esi
movl $0x1fe0, %edx           # imm = 0x1FE0
callq 0x93d0
movq -0xa68(%rbp), %rax
movq -0x10(%rbp), %rcx
movl (%rcx), %ecx
movl %ecx, 0x6010(%rax)
movq -0x18(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x3fc8(%rax)
movl $0x1, -0x670(%rbp)
jmp 0x42e56
cmpl $0x1, -0x24(%rbp)
jle 0x40c0b
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
cmpl -0x20(%rbp), %eax
jge 0x40c06
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
leaq -0x4a8(%rbp), %rsi
callq 0x9160
jmp 0x40b3e
leaq -0x4a8(%rbp), %rdi
callq 0x92b0
movq %rax, %rdi
leaq 0x7ccf5(%rip), %rsi     # 0xbd849
callq 0x91b0
cmpq $0x0, %rax
je 0x40bf6
movq 0xb6456(%rip), %rdi     # 0xf6fc0
leaq 0x7cced(%rip), %rsi     # 0xbd85e
callq 0x9760
movq %rax, -0xab0(%rbp)
jmp 0x40b7f
movq -0xab0(%rbp), %rdi
movq -0xa68(%rbp), %rsi
addq $0x5fb0, %rsi           # imm = 0x5FB0
callq 0x9690
movq %rax, -0xab8(%rbp)
jmp 0x40ba2
movq -0xab8(%rbp), %rdi
movq 0xb63f0(%rip), %rsi     # 0xf6fa0
callq 0x97c0
jmp 0x40bb7
leaq -0x4a8(%rbp), %rdi
callq 0x92b0
movq -0xa68(%rbp), %r8
movq %rax, %rdi
movq %r8, %rdx
addq $0x6cb8, %rdx           # imm = 0x6CB8
movq %r8, %rcx
addq $0x6ca8, %rcx           # imm = 0x6CA8
addq $0x6cb0, %r8            # imm = 0x6CB0
leaq 0x8b8bf(%rip), %rsi     # 0xcc4ae
movb $0x0, %al
callq 0x9750
jmp 0x40bf8
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x40b16
jmp 0x40844
movq -0xa68(%rbp), %rax
movsd 0x6c20(%rax), %xmm0
movsd 0x7c216(%rip), %xmm1    # 0xbce38
ucomisd %xmm1, %xmm0
jb 0x40c68
leaq -0x4a8(%rbp), %rdi
callq 0x92b0
movq %rax, %rdi
leaq 0x7cc53(%rip), %rsi     # 0xbd891
leaq -0x3c(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %r10
leaq -0x60(%rbp), %rax
movq %r10, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x0, %al
callq 0x9750
jmp 0x40ca6
leaq -0x4a8(%rbp), %rdi
callq 0x92b0
movq %rax, %rdi
leaq 0x7cc16(%rip), %rsi     # 0xbd894
leaq -0x3c(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %r10
leaq -0x60(%rbp), %rax
movq %r10, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x0, %al
callq 0x9750
leaq -0x3c(%rbp), %rdi
callq 0x337d0
jmp 0x40cb1
cmpl $0x7d0, -0x3c(%rbp)     # imm = 0x7D0
jl 0x40cc7
cmpl $0xdac, -0x3c(%rbp)     # imm = 0xDAC
jle 0x40d5a
movq -0xa68(%rbp), %rdi
movl -0x3c(%rbp), %eax
movl %eax, -0xabc(%rbp)
addq $0x5fb0, %rdi           # imm = 0x5FB0
callq 0x92b0
movl -0xabc(%rbp), %esi
movq %rax, %rdx
leaq 0x7cbaf(%rip), %rdi     # 0xbd8a2
xorl %eax, %eax
callq 0x9090
jmp 0x40cfc
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
callq 0x9170
jmp 0x40d11
movq -0xa68(%rbp), %rdi
addq $0x8, %rdi
xorl %esi, %esi
movl $0x1fe0, %edx           # imm = 0x1FE0
callq 0x93d0
movq -0xa68(%rbp), %rax
movq -0x10(%rbp), %rcx
movl (%rcx), %ecx
movl %ecx, 0x6010(%rax)
movq -0x18(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x3fc8(%rax)
movl $0x1, -0x670(%rbp)
jmp 0x42e56
movl -0x3c(%rbp), %edi
movl -0x40(%rbp), %esi
movl -0x44(%rbp), %edx
callq 0x32fe0
movl %eax, -0xac0(%rbp)
jmp 0x40d70
movq -0xa68(%rbp), %rax
movl -0xac0(%rbp), %ecx
movl %ecx, 0x6010(%rax)
cvtsi2sdl -0x48(%rbp), %xmm0
imull $0x3c, -0x4c(%rbp), %ecx
cvtsi2sd %ecx, %xmm1
movsd 0x7c078(%rip), %xmm2    # 0xbce10
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
addsd -0x60(%rbp), %xmm0
movsd %xmm0, 0x3fc8(%rax)
movsd 0x7c083(%rip), %xmm0    # 0xbce38
ucomisd 0x6c20(%rax), %xmm0
jbe 0x40e09
movl -0x20(%rbp), %eax
movl $0xc, %ecx
cltd
idivl %ecx
cmpl $0x0, %edx
je 0x40dec
cvtsi2sdl -0x20(%rbp), %xmm0
movsd 0x7c99c(%rip), %xmm1    # 0xbd778
divsd %xmm1, %xmm0
cvttsd2si %xmm0, %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x40dfa
movl -0x20(%rbp), %eax
movl $0xc, %ecx
cltd
idivl %ecx
movl %eax, -0x34(%rbp)
cmpl $0x0, -0x20(%rbp)
jne 0x40e07
movl $0x1, -0x34(%rbp)
jmp 0x40e09
movq -0xa68(%rbp), %rax
movq -0x10(%rbp), %rcx
movl (%rcx), %edi
movq -0x18(%rbp), %rcx
movsd (%rcx), %xmm0
movl 0x6010(%rax), %esi
movsd 0x3fc8(%rax), %xmm1
callq 0x33790
movsd %xmm0, -0xac8(%rbp)
jmp 0x40e3b
movsd -0xac8(%rbp), %xmm0
movsd %xmm0, -0x68(%rbp)
movsd 0x7c930(%rip), %xmm0    # 0xbd780
ucomisd -0x68(%rbp), %xmm0
jbe 0x40eb7
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
movaps -0x80(%rbp), %xmm0
movaps %xmm0, -0x720(%rbp)
movq -0x720(%rbp), %rsi
movq -0x718(%rbp), %rdx
callq 0x9970
jmp 0x40e85
movq -0xa68(%rbp), %rax
movq -0x10(%rbp), %rcx
movl (%rcx), %ecx
movl %ecx, 0x6010(%rax)
movq -0x18(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x3fc8(%rax)
movl $0x1, -0x670(%rbp)
jmp 0x42e56
movsd -0x68(%rbp), %xmm0
movsd 0x7c8c4(%rip), %xmm1    # 0xbd788
ucomisd %xmm1, %xmm0
jbe 0x41015
movq -0xa68(%rbp), %rax
movsd 0x7bf5b(%rip), %xmm0    # 0xbce38
ucomisd 0x6c20(%rax), %xmm0
jbe 0x40fd9
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
movl -0x34(%rbp), %ecx
subl $0x1, %ecx
cmpl %ecx, %eax
jge 0x40f28
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
leaq -0x4a8(%rbp), %rsi
callq 0x9160
jmp 0x40f1b
jmp 0x40f1d
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x40ef2
movq -0xa68(%rbp), %rax
movl 0x6cd4(%rax), %eax
movl $0x5, %ecx
cltd
idivl %ecx
cmpl $0x0, %edx
je 0x40f73
movq -0xa68(%rbp), %rax
movl -0x20(%rbp), %ecx
movl %ecx, -0xacc(%rbp)
movl 0x6cd4(%rax), %eax
movl $0x5, %ecx
cltd
idivl %ecx
movl %eax, %ecx
movl -0xacc(%rbp), %eax
addl $0x1, %ecx
imull %ecx, %eax
movl %eax, -0x38(%rbp)
jmp 0x40f9f
movq -0xa68(%rbp), %rax
movl -0x20(%rbp), %ecx
movl %ecx, -0xad0(%rbp)
movl 0x6cd4(%rax), %eax
movl $0x5, %ecx
cltd
idivl %ecx
movl %eax, %ecx
movl -0xad0(%rbp), %eax
imull %ecx, %eax
movl %eax, -0x38(%rbp)
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
cmpl -0x38(%rbp), %eax
jge 0x40fd7
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
leaq -0x4a8(%rbp), %rsi
callq 0x9160
jmp 0x40fca
jmp 0x40fcc
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x40fa6
jmp 0x41013
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
cmpl -0x20(%rbp), %eax
jge 0x41011
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
leaq -0x4a8(%rbp), %rsi
callq 0x9160
jmp 0x41004
jmp 0x41006
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x40fe0
jmp 0x41013
jmp 0x41072
movq -0xa68(%rbp), %rax
movl $0x1, -0x1c(%rbp)
movl 0x6010(%rax), %edx
movq -0x10(%rbp), %rcx
movl %edx, (%rcx)
cvtsi2sdl -0x48(%rbp), %xmm0
cvtsi2sdl -0x4c(%rbp), %xmm1
movsd 0x7bdd7(%rip), %xmm2    # 0xbce18
mulsd %xmm2, %xmm1
movsd 0x7bdc3(%rip), %xmm2    # 0xbce10
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
addsd -0x60(%rbp), %xmm0
movq -0x18(%rbp), %rcx
movsd %xmm0, (%rcx)
movq -0x18(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x3fc8(%rax)
jmp 0x41074
jmp 0x40844
movq -0xa68(%rbp), %rax
movq 0xb820(%rax), %rcx
movq -0x18(%rcx), %rcx
leaq 0xb820(%rax,%rcx), %rdi
callq 0x9dd0
movb %al, -0xad1(%rbp)
jmp 0x410a0
movb -0xad1(%rbp), %al
testb $0x1, %al
jne 0x410ac
jmp 0x410de
movq -0xa68(%rbp), %rax
movq -0x10(%rbp), %rcx
movl (%rcx), %ecx
movl %ecx, 0x6010(%rax)
movq -0x18(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x3fc8(%rax)
movl $0x1, -0x670(%rbp)
jmp 0x42e56
movq -0xa68(%rbp), %rax
movsd 0x7bd4b(%rip), %xmm0    # 0xbce38
ucomisd 0x6c20(%rax), %xmm0
jbe 0x41da1
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
movups -0x80(%rbp), %xmm0
movaps %xmm0, -0x730(%rbp)
movq -0x730(%rbp), %rsi
movq -0x728(%rbp), %rdx
callq 0x9970
jmp 0x41129
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
cmpl -0x34(%rbp), %eax
jge 0x41347
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
leaq -0x4a8(%rbp), %rsi
callq 0x9160
jmp 0x41158
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movl %eax, -0xadc(%rbp)
movl -0x20(%rbp), %edi
movl -0x28(%rbp), %ecx
shll $0x2, %ecx
movl %ecx, %eax
leal (%rax,%rax,2), %eax
subl %eax, %edi
movl $0xc, %esi
callq 0x38f10
movl %eax, -0xad8(%rbp)
jmp 0x4118a
movl -0xadc(%rbp), %eax
movl -0xad8(%rbp), %ecx
cmpl %ecx, %eax
jge 0x41337
movl -0x2c(%rbp), %ecx
movl %ecx, %eax
leal 0x20(%rax,%rax,2), %eax
movslq %eax, %rdx
leaq -0x750(%rbp), %rdi
leaq -0x4a8(%rbp), %rsi
movl $0x3, %ecx
callq 0x97a0
jmp 0x411c4
movq -0xa68(%rbp), %rax
movl -0x2c(%rbp), %edx
movl -0x28(%rbp), %esi
movl %esi, %ecx
leal (%rcx,%rcx,2), %esi
movl %edx, %ecx
movl %esi, %edx
leal (%rcx,%rdx,4), %ecx
movslq %ecx, %rcx
shlq $0x5, %rcx
leaq 0x98b0(%rax,%rcx), %rdi
leaq -0x750(%rbp), %rsi
movq %rsi, -0xaf0(%rbp)
callq 0x9920
movq -0xaf0(%rbp), %rdi
callq 0x9480
movq -0xa68(%rbp), %rax
movl -0x2c(%rbp), %edx
movl -0x28(%rbp), %esi
movl %esi, %ecx
leal (%rcx,%rcx,2), %esi
movl %edx, %ecx
movl %esi, %edx
leal (%rcx,%rdx,4), %ecx
movslq %ecx, %rcx
shlq $0x5, %rcx
leaq 0x98b0(%rax,%rcx), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x9eb0
movq %rax, -0xae8(%rbp)
jmp 0x41245
movq -0xae8(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x20, %eax
jne 0x41298
movq -0xa68(%rbp), %rax
movl -0x2c(%rbp), %edx
movl -0x28(%rbp), %esi
movl %esi, %ecx
leal (%rcx,%rcx,2), %esi
movl %edx, %ecx
movl %esi, %edx
leal (%rcx,%rdx,4), %ecx
movslq %ecx, %rcx
shlq $0x5, %rcx
leaq 0x98b0(%rax,%rcx), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x9eb0
movq %rax, -0xaf8(%rbp)
jmp 0x4128e
movq -0xaf8(%rbp), %rax
movb $0x47, (%rax)
movq -0xa68(%rbp), %rax
movl -0x2c(%rbp), %edx
movl -0x28(%rbp), %esi
movl %esi, %ecx
leal (%rcx,%rcx,2), %esi
movl %edx, %ecx
movl %esi, %edx
leal (%rcx,%rdx,4), %ecx
movslq %ecx, %rcx
shlq $0x5, %rcx
leaq 0x98b0(%rax,%rcx), %rdi
movl $0x1, %esi
callq 0x9eb0
movq %rax, -0xb00(%rbp)
jmp 0x412d3
movq -0xb00(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x20, %eax
jne 0x41327
movq -0xa68(%rbp), %rax
movl -0x2c(%rbp), %edx
movl -0x28(%rbp), %esi
movl %esi, %ecx
leal (%rcx,%rcx,2), %esi
movl %edx, %ecx
movl %esi, %edx
leal (%rcx,%rdx,4), %ecx
movslq %ecx, %rcx
shlq $0x5, %rcx
leaq 0x98b0(%rax,%rcx), %rdi
movl $0x1, %esi
callq 0x9eb0
movq %rax, -0xb08(%rbp)
jmp 0x4131d
movq -0xb08(%rbp), %rax
movb $0x30, (%rax)
jmp 0x41329
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x4115f
jmp 0x41339
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x41130
movq -0xa68(%rbp), %rax
movl 0x6cd4(%rax), %eax
movl $0x5, %ecx
cltd
idivl %ecx
cmpl $0x0, %edx
je 0x41388
movq -0xa68(%rbp), %rax
cvtsi2sdl 0x6cd4(%rax), %xmm0
movsd 0x7c3f8(%rip), %xmm1    # 0xbd770
divsd %xmm1, %xmm0
cvttsd2si %xmm0, %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x413a0
movq -0xa68(%rbp), %rax
movl 0x6cd4(%rax), %eax
movl $0x5, %ecx
cltd
idivl %ecx
movl %eax, -0x34(%rbp)
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
cmpl -0x20(%rbp), %eax
jge 0x41d9c
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
cmpl -0x34(%rbp), %eax
jge 0x415af
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
leaq -0x4a8(%rbp), %rsi
callq 0x9160
jmp 0x413e2
leaq -0x4a8(%rbp), %rdi
callq 0x92b0
movq %rax, %rsi
leaq -0x480(%rbp), %rdi
movq %rdi, -0xb18(%rbp)
callq 0x96f0
movq -0xa68(%rbp), %rax
movl 0x6cd4(%rax), %edi
movl -0x2c(%rbp), %ecx
movl %ecx, %eax
leal (%rax,%rax,4), %eax
subl %eax, %edi
movl $0x5, %esi
callq 0x38f10
movl %eax, -0xb0c(%rbp)
jmp 0x4142d
movl -0xb0c(%rbp), %esi
movq -0xb18(%rbp), %rdi
movq -0xa68(%rbp), %rax
movsd 0x6c20(%rax), %xmm0
movl $0x10, %edx
callq 0x33c60
jmp 0x41455
leaq -0x771(%rbp), %rdi
movq %rdi, -0xb20(%rbp)
callq 0x9d30
movq -0xb20(%rbp), %rdx
leaq -0x770(%rbp), %rdi
leaq -0x480(%rbp), %rsi
callq 0x9a30
jmp 0x41484
leaq -0x4c8(%rbp), %rdi
leaq -0x770(%rbp), %rsi
callq 0x9920
leaq -0x770(%rbp), %rdi
callq 0x9480
leaq -0x771(%rbp), %rdi
callq 0x97e0
movl $0x0, -0x30(%rbp)
movq -0xa68(%rbp), %rax
movl -0x30(%rbp), %ecx
movl %ecx, -0xb28(%rbp)
movl 0x6cd4(%rax), %edi
movl -0x2c(%rbp), %ecx
movl %ecx, %eax
leal (%rax,%rax,4), %eax
subl %eax, %edi
movl $0x5, %esi
callq 0x38f10
movl %eax, -0xb24(%rbp)
jmp 0x414e8
movl -0xb28(%rbp), %eax
movl -0xb24(%rbp), %ecx
cmpl %ecx, %eax
jge 0x4159f
movl -0x30(%rbp), %eax
movl -0x2c(%rbp), %edx
movl %edx, %ecx
leal (%rcx,%rcx,4), %ecx
addl %ecx, %eax
cltq
movq $0x0, -0x660(%rbp,%rax,8)
movl -0x30(%rbp), %eax
shll $0x4, %eax
movslq %eax, %rdx
leaq -0x798(%rbp), %rdi
leaq -0x4c8(%rbp), %rsi
movl $0xe, %ecx
callq 0x97a0
jmp 0x4153a
leaq -0x798(%rbp), %rdi
callq 0x92b0
movq %rax, %rdi
callq 0x9940
movl -0x30(%rbp), %eax
imull $0x5, -0x2c(%rbp), %ecx
addl %ecx, %eax
cltq
movsd %xmm0, -0x660(%rbp,%rax,8)
leaq -0x798(%rbp), %rdi
callq 0x9480
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x414b6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x771(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
jmp 0x415a1
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x413ba
movq -0xa68(%rbp), %rax
movq -0x678(%rbp), %rcx
movl 0x4c(%rcx), %edx
movl %edx, -0xb34(%rbp)
addq $0x6b0, %rcx            # imm = 0x6B0
movq %rcx, -0xb30(%rbp)
movslq -0x28(%rbp), %rcx
shlq $0x5, %rcx
leaq 0x98b0(%rax,%rcx), %rsi
leaq -0x7b8(%rbp), %rdi
callq 0x92d0
jmp 0x415f2
movq -0xb30(%rbp), %rsi
movl -0xb34(%rbp), %edi
leaq -0x7b8(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xb38(%rbp)
jmp 0x41613
movl -0xb38(%rbp), %eax
movl %eax, -0x50(%rbp)
leaq -0x7b8(%rbp), %rdi
callq 0x9480
cmpl $-0x1, -0x50(%rbp)
je 0x41d8c
movq -0xa68(%rbp), %rax
movslq -0x28(%rbp), %rcx
shlq $0x5, %rcx
leaq 0x98b0(%rax,%rcx), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x9eb0
movq %rax, -0xb40(%rbp)
jmp 0x4165b
movq -0xb40(%rbp), %rax
movsbl (%rax), %esi
leaq 0x7c374(%rip), %rdi     # 0xbd9e0
callq 0x340b0
movl %eax, -0xb44(%rbp)
jmp 0x41679
movl -0xb44(%rbp), %eax
movl %eax, -0x54(%rbp)
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
cmpl 0x30(%rcx,%rdx,4), %eax
jge 0x41d56
movq -0xa68(%rbp), %rax
movb $0x50, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movb $0x0, -0x482(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xb5c(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xb58(%rbp)
leaq -0x7d9(%rbp), %rdi
movq %rdi, -0xb50(%rbp)
callq 0x9d30
movq -0xb50(%rbp), %rdx
leaq -0x7d8(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x4172d
movq -0xb58(%rbp), %rsi
movl -0xb5c(%rbp), %edi
leaq -0x7d8(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xb60(%rbp)
jmp 0x4174e
movl -0xb60(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x7d8(%rbp), %rdi
callq 0x9480
leaq -0x7d9(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x41871
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
movq %rax, %rcx
addq $0x8, %rcx
movslq -0x50(%rbp), %rdx
imulq $0x30, %rdx, %rdx
addq %rdx, %rcx
movl -0x2c(%rbp), %edx
addl $0x3, %edx
movslq %edx, %rdx
movsd %xmm0, (%rcx,%rdx,8)
movb $0x43, -0x484(%rbp)
movq -0x678(%rbp), %rcx
addq $0x5c, %rcx
movslq -0x54(%rbp), %rdx
imulq $0xc, %rdx, %rdx
addq %rdx, %rcx
movslq -0x2c(%rbp), %rdx
movb 0x1(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movb $0x50, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
addq $0x3fd0, %rax           # imm = 0x3FD0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movl -0x484(%rbp), %edx
movl %edx, (%rax,%rcx,4)
jmp 0x41871
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x7b8(%rbp), %rdi
callq 0x9480
jmp 0x42e77
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x41860
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x7d8(%rbp), %rdi
callq 0x9480
leaq -0x7d9(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
addq $0x8, %rax
movslq -0x50(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jne 0x41a57
jp 0x41a57
movq -0xa68(%rbp), %rax
movb $0x43, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movb $0x0, -0x482(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xb74(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xb70(%rbp)
leaq -0x801(%rbp), %rdi
movq %rdi, -0xb68(%rbp)
callq 0x9d30
movq -0xb68(%rbp), %rdx
leaq -0x800(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x41934
movq -0xb70(%rbp), %rsi
movl -0xb74(%rbp), %edi
leaq -0x800(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xb78(%rbp)
jmp 0x41955
movl -0xb78(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x800(%rbp), %rdi
callq 0x9480
leaq -0x801(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x41a55
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
movq %rax, %rcx
addq $0x8, %rcx
movslq -0x50(%rbp), %rdx
imulq $0x30, %rdx, %rdx
addq %rdx, %rcx
movl -0x2c(%rbp), %edx
addl $0x3, %edx
movslq %edx, %rdx
movsd %xmm0, (%rcx,%rdx,8)
movb $0x43, -0x484(%rbp)
movq -0x678(%rbp), %rcx
addq $0x5c, %rcx
movslq -0x54(%rbp), %rdx
imulq $0xc, %rdx, %rdx
addq %rdx, %rcx
movslq -0x2c(%rbp), %rdx
movb 0x1(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movb $0x43, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
addq $0x3fd0, %rax           # imm = 0x3FD0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movl -0x484(%rbp), %edx
movl %edx, (%rax,%rcx,4)
jmp 0x41a55
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x41a44
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x800(%rbp), %rdi
callq 0x9480
leaq -0x801(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
jmp 0x41a57
movq -0xa68(%rbp), %rax
movb $0x4c, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movb $0x0, -0x482(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xb8c(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xb88(%rbp)
leaq -0x829(%rbp), %rdi
movq %rdi, -0xb80(%rbp)
callq 0x9d30
movq -0xb80(%rbp), %rdx
leaq -0x828(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x41ae3
movq -0xb88(%rbp), %rsi
movl -0xb8c(%rbp), %edi
leaq -0x828(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xb90(%rbp)
jmp 0x41b04
movl -0xb90(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x828(%rbp), %rdi
callq 0x9480
leaq -0x829(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x41bfa
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
movq %rax, %rcx
addq $0x8, %rcx
movslq -0x50(%rbp), %rdx
imulq $0x30, %rdx, %rdx
addq %rdx, %rcx
movslq -0x2c(%rbp), %rdx
movsd %xmm0, (%rcx,%rdx,8)
movb $0x4c, -0x484(%rbp)
movq -0x678(%rbp), %rcx
addq $0x5c, %rcx
movslq -0x54(%rbp), %rdx
imulq $0xc, %rdx, %rdx
addq %rdx, %rcx
movslq -0x2c(%rbp), %rdx
movb 0x1(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movb $0x50, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
addq $0x3fd0, %rax           # imm = 0x3FD0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq -0x2c(%rbp), %rcx
movl -0x484(%rbp), %edx
movl %edx, (%rax,%rcx,4)
jmp 0x41bfa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x41be9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x828(%rbp), %rdi
callq 0x9480
leaq -0x829(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
movb $0x44, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movb $0x0, -0x482(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xba4(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xba0(%rbp)
leaq -0x851(%rbp), %rdi
movq %rdi, -0xb98(%rbp)
callq 0x9d30
movq -0xb98(%rbp), %rdx
leaq -0x850(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x41c86
movq -0xba0(%rbp), %rsi
movl -0xba4(%rbp), %edi
leaq -0x850(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xba8(%rbp)
jmp 0x41ca7
movl -0xba8(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x850(%rbp), %rdi
callq 0x9480
leaq -0x851(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x41d46
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
addq $0x1fe8, %rax           # imm = 0x1FE8
movslq -0x50(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x41d46
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x41d35
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x850(%rbp), %rdi
callq 0x9480
leaq -0x851(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
jmp 0x41d48
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x41689
movq -0xa68(%rbp), %rdi
movslq -0x50(%rbp), %rax
movl %eax, %esi
leaq (%rax,%rax,2), %rax
movq %rax, %rcx
shlq $0x4, %rcx
leaq 0x8(%rdi,%rcx), %rdx
leaq 0x1fe8(%rdi,%rcx), %rcx
leaq 0x4fc0(%rdi,%rax,8), %r8
callq 0x3ed10
jmp 0x41d8a
jmp 0x41d8c
jmp 0x41d8e
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x413a7
jmp 0x42e4c
movl $0x0, -0x28(%rbp)
movl -0x28(%rbp), %eax
cmpl -0x20(%rbp), %eax
jge 0x42e4a
movq -0xa68(%rbp), %rdi
addq $0xb820, %rdi           # imm = 0xB820
leaq -0x4a8(%rbp), %rsi
callq 0x9160
jmp 0x41dd0
xorl %eax, %eax
movl %eax, %esi
leaq -0x4a8(%rbp), %rdi
callq 0x9eb0
movq %rax, -0xbb0(%rbp)
jmp 0x41de9
movq -0xbb0(%rbp), %rax
movsbl (%rax), %esi
leaq 0x7bbe6(%rip), %rdi     # 0xbd9e0
callq 0x340b0
movl %eax, -0xbb4(%rbp)
jmp 0x41e07
movl -0xbb4(%rbp), %eax
movl %eax, -0x54(%rbp)
cmpl $-0x1, -0x54(%rbp)
jne 0x41e1b
jmp 0x42e3c
leaq -0x4a8(%rbp), %rdi
movl $0x1, %esi
callq 0x9eb0
movq %rax, -0xbc0(%rbp)
jmp 0x41e35
movq -0xbc0(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x20, %eax
jne 0x41e68
leaq -0x4a8(%rbp), %rdi
movl $0x1, %esi
callq 0x9eb0
movq %rax, -0xbc8(%rbp)
jmp 0x41e5e
movq -0xbc8(%rbp), %rax
movb $0x30, (%rax)
movq -0x678(%rbp), %rax
movl 0x4c(%rax), %ecx
movl %ecx, -0xbd4(%rbp)
addq $0x6b0, %rax            # imm = 0x6B0
movq %rax, -0xbd0(%rbp)
xorl %eax, %eax
movl %eax, %edx
leaq -0x878(%rbp), %rdi
leaq -0x4a8(%rbp), %rsi
movl $0x3, %ecx
callq 0x97a0
jmp 0x41ea3
movq -0xbd0(%rbp), %rsi
movl -0xbd4(%rbp), %edi
leaq -0x878(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xbd8(%rbp)
jmp 0x41ec4
movl -0xbd8(%rbp), %eax
movl %eax, -0x50(%rbp)
leaq -0x878(%rbp), %rdi
callq 0x9480
cmpl $-0x1, -0x50(%rbp)
jne 0x41f07
jmp 0x42e3c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x878(%rbp), %rdi
callq 0x9480
jmp 0x42e77
leaq -0x480(%rbp), %rax
movq %rax, -0xbe8(%rbp)
leaq -0x4a8(%rbp), %rdi
movq %rdi, -0xbe0(%rbp)
callq 0x9540
movq -0xbe0(%rbp), %rsi
movq %rax, %rcx
addq $-0x3, %rcx
leaq -0x898(%rbp), %rdi
movl $0x3, %edx
callq 0x97a0
jmp 0x41f49
leaq -0x898(%rbp), %rdi
movq %rdi, -0xbf0(%rbp)
callq 0x92b0
movq -0xbe8(%rbp), %rdi
movq %rax, %rsi
callq 0x96f0
movq -0xbf0(%rbp), %rdi
callq 0x9480
movq -0xa68(%rbp), %rax
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %esi
movsd 0x6c20(%rax), %xmm0
leaq -0x480(%rbp), %rdi
movl $0x10, %edx
callq 0x33c60
jmp 0x41fa4
xorl %eax, %eax
movl %eax, %edx
leaq -0x8d8(%rbp), %rdi
leaq -0x4a8(%rbp), %rsi
movl $0x3, %ecx
callq 0x97a0
jmp 0x41fc2
leaq -0x8f9(%rbp), %rdi
movq %rdi, -0xbf8(%rbp)
callq 0x9d30
movq -0xbf8(%rbp), %rdx
leaq -0x8f8(%rbp), %rdi
leaq -0x480(%rbp), %rsi
callq 0x9a30
jmp 0x41ff1
leaq -0x8b8(%rbp), %rdi
leaq -0x8d8(%rbp), %rsi
leaq -0x8f8(%rbp), %rdx
callq 0x43070
jmp 0x4200d
leaq -0x4c8(%rbp), %rdi
leaq -0x8b8(%rbp), %rsi
callq 0x9920
leaq -0x8b8(%rbp), %rdi
callq 0x9480
leaq -0x8f8(%rbp), %rdi
callq 0x9480
leaq -0x8f9(%rbp), %rdi
callq 0x97e0
leaq -0x8d8(%rbp), %rdi
callq 0x9480
movl $0x0, -0x2c(%rbp)
movq -0xa68(%rbp), %rcx
movl -0x2c(%rbp), %eax
movslq -0x54(%rbp), %rdx
cmpl 0x6cd4(%rcx,%rdx,4), %eax
jge 0x4211f
movl -0x2c(%rbp), %eax
shll $0x4, %eax
orl $0x3, %eax
movslq %eax, %rdx
leaq -0x920(%rbp), %rdi
leaq -0x4c8(%rbp), %rsi
movl $0xe, %ecx
callq 0x97a0
jmp 0x42098
leaq -0x920(%rbp), %rdi
callq 0x92b0
movq %rax, %rdi
callq 0x9940
movslq -0x2c(%rbp), %rax
movsd %xmm0, -0x660(%rbp,%rax,8)
leaq -0x920(%rbp), %rdi
callq 0x9480
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x42057
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x42102
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x8f8(%rbp), %rdi
callq 0x9480
leaq -0x8f9(%rbp), %rdi
callq 0x97e0
leaq -0x8d8(%rbp), %rdi
callq 0x9480
jmp 0x42e77
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
cmpl 0x30(%rcx,%rdx,4), %eax
jge 0x42e06
movq -0xa68(%rbp), %rax
addq $0xb024, %rax           # imm = 0xB024
movslq -0x50(%rbp), %rcx
imulq $0xc, %rcx, %rcx
addq %rcx, %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x0, (%rax,%rcx,4)
jne 0x42807
movl $0x0, -0x58(%rbp)
movslq -0x58(%rbp), %rax
cmpq $0x10, %rax
jae 0x427a9
movq -0xa68(%rbp), %rax
movb $0x43, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movslq -0x58(%rbp), %rcx
leaq 0x7b83d(%rip), %rdx     # 0xbd9f0
movb (%rcx,%rdx), %cl
movb %cl, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xc0c(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xc08(%rbp)
leaq -0x941(%rbp), %rdi
movq %rdi, -0xc00(%rbp)
callq 0x9d30
movq -0xc00(%rbp), %rdx
leaq -0x940(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x42219
movq -0xc08(%rbp), %rsi
movl -0xc0c(%rbp), %edi
leaq -0x940(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xc10(%rbp)
jmp 0x4223a
movl -0xc10(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x940(%rbp), %rdi
callq 0x9480
leaq -0x941(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x42301
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
movq %rax, %rcx
addq $0x8, %rcx
movslq -0x50(%rbp), %rdx
imulq $0x30, %rdx, %rdx
addq %rdx, %rcx
movl -0x2c(%rbp), %edx
addl $0x3, %edx
movslq %edx, %rdx
movsd %xmm0, (%rcx,%rdx,8)
addq $0x3fd0, %rax           # imm = 0x3FD0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movl -0x484(%rbp), %edx
movl %edx, (%rax,%rcx,4)
jmp 0x42301
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x422f0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x940(%rbp), %rdi
callq 0x9480
leaq -0x941(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
movb $0x4c, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movslq -0x58(%rbp), %rcx
leaq 0x7b6b5(%rip), %rdx     # 0xbd9f0
movb (%rcx,%rdx), %cl
movb %cl, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xc24(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xc20(%rbp)
leaq -0x969(%rbp), %rdi
movq %rdi, -0xc18(%rbp)
callq 0x9d30
movq -0xc18(%rbp), %rdx
leaq -0x968(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x423a1
movq -0xc20(%rbp), %rsi
movl -0xc24(%rbp), %edi
leaq -0x968(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xc28(%rbp)
jmp 0x423c2
movl -0xc28(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x968(%rbp), %rdi
callq 0x9480
leaq -0x969(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x4247f
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
movq %rax, %rcx
addq $0x8, %rcx
movslq -0x50(%rbp), %rdx
imulq $0x30, %rdx, %rdx
addq %rdx, %rcx
movslq -0x2c(%rbp), %rdx
movsd %xmm0, (%rcx,%rdx,8)
addq $0x3fd0, %rax           # imm = 0x3FD0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq -0x2c(%rbp), %rcx
movl -0x484(%rbp), %edx
movl %edx, (%rax,%rcx,4)
jmp 0x4247f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x4246e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x968(%rbp), %rdi
callq 0x9480
leaq -0x969(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
movb $0x53, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movslq -0x58(%rbp), %rcx
leaq 0x7b537(%rip), %rdx     # 0xbd9f0
movb (%rcx,%rdx), %cl
movb %cl, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xc3c(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xc38(%rbp)
leaq -0x991(%rbp), %rdi
movq %rdi, -0xc30(%rbp)
callq 0x9d30
movq -0xc30(%rbp), %rdx
leaq -0x990(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x4251f
movq -0xc38(%rbp), %rsi
movl -0xc3c(%rbp), %edi
leaq -0x990(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xc40(%rbp)
jmp 0x42540
movl -0xc40(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x990(%rbp), %rdi
callq 0x9480
leaq -0x991(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x425da
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
addq $0x4fc0, %rax           # imm = 0x4FC0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq -0x2c(%rbp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x425da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x425c9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x990(%rbp), %rdi
callq 0x9480
leaq -0x991(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
movb $0x44, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movslq -0x58(%rbp), %rcx
leaq 0x7b3dc(%rip), %rdx     # 0xbd9f0
movb (%rcx,%rdx), %cl
movb %cl, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xc54(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xc50(%rbp)
leaq -0x9b9(%rbp), %rdi
movq %rdi, -0xc48(%rbp)
callq 0x9d30
movq -0xc48(%rbp), %rdx
leaq -0x9b8(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x4267a
movq -0xc50(%rbp), %rsi
movl -0xc54(%rbp), %edi
leaq -0x9b8(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xc58(%rbp)
jmp 0x4269b
movl -0xc58(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x9b8(%rbp), %rdi
callq 0x9480
leaq -0x9b9(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x4273a
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
addq $0x1fe8, %rax           # imm = 0x1FE8
movslq -0x50(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x4273a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x42729
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x9b8(%rbp), %rdi
callq 0x9480
leaq -0x9b9(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
addq $0x8, %rax
movslq -0x50(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movslq -0x2c(%rbp), %rcx
movsd (%rax,%rcx,8), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jne 0x42766
jp 0x42766
jmp 0x42799
movq -0xa68(%rbp), %rax
addq $0x8, %rax
movslq -0x50(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jne 0x42797
jp 0x42797
jmp 0x42799
jmp 0x427a9
jmp 0x4279b
movl -0x58(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x58(%rbp)
jmp 0x4216b
movslq -0x58(%rbp), %rax
cmpq $0x10, %rax
jae 0x42802
movq -0xa68(%rbp), %rax
movslq -0x58(%rbp), %rdx
leaq 0x7b22b(%rip), %rcx     # 0xbd9f0
movb (%rcx,%rdx), %sil
movq %rax, %rcx
addq $0xae24, %rcx           # imm = 0xAE24
movslq -0x50(%rbp), %rdx
imulq $0x3, %rdx, %rdx
addq %rdx, %rcx
movslq -0x2c(%rbp), %rdx
movb %sil, (%rcx,%rdx)
addq $0xb024, %rax           # imm = 0xB024
movslq -0x50(%rbp), %rcx
imulq $0xc, %rcx, %rcx
addq %rcx, %rax
movslq -0x2c(%rbp), %rcx
movl $0x1, (%rax,%rcx,4)
jmp 0x42df6
movq -0xa68(%rbp), %rax
movb $0x43, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movslq -0x50(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
movq %rax, %rdx
addq %rcx, %rdx
movslq -0x2c(%rbp), %rcx
movb 0xae24(%rcx,%rdx), %cl
movb %cl, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xc6c(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xc68(%rbp)
leaq -0x9e1(%rbp), %rdi
movq %rdi, -0xc60(%rbp)
callq 0x9d30
movq -0xc60(%rbp), %rdx
leaq -0x9e0(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x428b2
movq -0xc68(%rbp), %rsi
movl -0xc6c(%rbp), %edi
leaq -0x9e0(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xc70(%rbp)
jmp 0x428d3
movl -0xc70(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0x9e0(%rbp), %rdi
callq 0x9480
leaq -0x9e1(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x4299a
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
movq %rax, %rcx
addq $0x8, %rcx
movslq -0x50(%rbp), %rdx
imulq $0x30, %rdx, %rdx
addq %rdx, %rcx
movl -0x2c(%rbp), %edx
addl $0x3, %edx
movslq %edx, %rdx
movsd %xmm0, (%rcx,%rdx,8)
addq $0x3fd0, %rax           # imm = 0x3FD0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movl -0x484(%rbp), %edx
movl %edx, (%rax,%rcx,4)
jmp 0x4299a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x42989
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0x9e0(%rbp), %rdi
callq 0x9480
leaq -0x9e1(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
movb $0x4c, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movslq -0x50(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
movq %rax, %rdx
addq %rcx, %rdx
movslq -0x2c(%rbp), %rcx
movb 0xae24(%rcx,%rdx), %cl
movb %cl, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xc84(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xc80(%rbp)
leaq -0xa09(%rbp), %rdi
movq %rdi, -0xc78(%rbp)
callq 0x9d30
movq -0xc78(%rbp), %rdx
leaq -0xa08(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x42a45
movq -0xc80(%rbp), %rsi
movl -0xc84(%rbp), %edi
leaq -0xa08(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xc88(%rbp)
jmp 0x42a66
movl -0xc88(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0xa08(%rbp), %rdi
callq 0x9480
leaq -0xa09(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x42b23
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
movq %rax, %rcx
addq $0x8, %rcx
movslq -0x50(%rbp), %rdx
imulq $0x30, %rdx, %rdx
addq %rdx, %rcx
movslq -0x2c(%rbp), %rdx
movsd %xmm0, (%rcx,%rdx,8)
addq $0x3fd0, %rax           # imm = 0x3FD0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq -0x2c(%rbp), %rcx
movl -0x484(%rbp), %edx
movl %edx, (%rax,%rcx,4)
jmp 0x42b23
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x42b12
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0xa08(%rbp), %rdi
callq 0x9480
leaq -0xa09(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
movb $0x53, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movslq -0x50(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
movq %rax, %rdx
addq %rcx, %rdx
movslq -0x2c(%rbp), %rcx
movb 0xae24(%rcx,%rdx), %cl
movb %cl, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xc9c(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xc98(%rbp)
leaq -0xa31(%rbp), %rdi
movq %rdi, -0xc90(%rbp)
callq 0x9d30
movq -0xc90(%rbp), %rdx
leaq -0xa30(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x42bce
movq -0xc98(%rbp), %rsi
movl -0xc9c(%rbp), %edi
leaq -0xa30(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xca0(%rbp)
jmp 0x42bef
movl -0xca0(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0xa30(%rbp), %rdi
callq 0x9480
leaq -0xa31(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x42c89
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
addq $0x4fc0, %rax           # imm = 0x4FC0
movslq -0x50(%rbp), %rcx
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq -0x2c(%rbp), %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x42c89
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x42c78
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0xa30(%rbp), %rdi
callq 0x9480
leaq -0xa31(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
movq -0xa68(%rbp), %rax
movb $0x44, -0x484(%rbp)
movq -0x678(%rbp), %rcx
movslq -0x54(%rbp), %rdx
leaq (%rdx,%rdx,2), %rdx
leaq (%rcx,%rdx,4), %rcx
movslq -0x2c(%rbp), %rdx
movb 0x5d(%rcx,%rdx,4), %cl
movb %cl, -0x483(%rbp)
movslq -0x50(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
movq %rax, %rdx
addq %rcx, %rdx
movslq -0x2c(%rbp), %rcx
movb 0xae24(%rcx,%rdx), %cl
movb %cl, -0x482(%rbp)
movb $0x0, -0x481(%rbp)
movslq -0x54(%rbp), %rcx
movl 0x6cd4(%rax,%rcx,4), %edx
movl %edx, -0xcb4(%rbp)
imulq $0x640, %rcx, %rcx      # imm = 0x640
leaq 0x6cf0(%rax,%rcx), %rax
movq %rax, -0xcb0(%rbp)
leaq -0xa59(%rbp), %rdi
movq %rdi, -0xca8(%rbp)
callq 0x9d30
movq -0xca8(%rbp), %rdx
leaq -0xa58(%rbp), %rdi
leaq -0x484(%rbp), %rsi
callq 0x9a30
jmp 0x42d34
movq -0xcb0(%rbp), %rsi
movl -0xcb4(%rbp), %edi
leaq -0xa58(%rbp), %rdx
callq 0x33fc0
movl %eax, -0xcb8(%rbp)
jmp 0x42d55
movl -0xcb8(%rbp), %eax
movl %eax, -0x30(%rbp)
leaq -0xa58(%rbp), %rdi
callq 0x9480
leaq -0xa59(%rbp), %rdi
callq 0x97e0
cmpl $-0x1, -0x30(%rbp)
je 0x42df4
movq -0xa68(%rbp), %rax
movslq -0x30(%rbp), %rcx
movsd -0x660(%rbp,%rcx,8), %xmm0
addq $0x1fe8, %rax           # imm = 0x1FE8
movslq -0x50(%rbp), %rcx
imulq $0x30, %rcx, %rcx
addq %rcx, %rax
movl -0x2c(%rbp), %ecx
addl $0x3, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
jmp 0x42df4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
jmp 0x42de3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x668(%rbp)
movl %eax, -0x66c(%rbp)
leaq -0xa58(%rbp), %rdi
callq 0x9480
leaq -0xa59(%rbp), %rdi
callq 0x97e0
jmp 0x42e77
jmp 0x42df6
jmp 0x42df8
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x42126
movq -0xa68(%rbp), %rdi
movslq -0x50(%rbp), %rax
movl %eax, %esi
leaq (%rax,%rax,2), %rax
movq %rax, %rcx
shlq $0x4, %rcx
leaq 0x8(%rdi,%rcx), %rdx
leaq 0x1fe8(%rdi,%rcx), %rcx
leaq 0x4fc0(%rdi,%rax,8), %r8
callq 0x3ed10
jmp 0x42e3a
jmp 0x42e3c
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
jmp 0x41da8
jmp 0x42e4c
movl $0x0, -0x670(%rbp)
leaq -0x4c8(%rbp), %rdi
callq 0x9480
leaq -0x4a8(%rbp), %rdi
callq 0x9480
addq $0xcd0, %rsp            # imm = 0xCD0
popq %rbp
retq
leaq -0x4c8(%rbp), %rdi
callq 0x9480
leaq -0x4a8(%rbp), %rdi
callq 0x9480
movq -0x668(%rbp), %rdi
callq 0x9d20
nopl (%rax,%rax)