// File: /workspace/github_cpp_makefile_star2_O1/WeiqiangZhou[P]BIRD/source/create_library_function.cpp
// Function: ReadParam(char*, int*, char**)
int ReadParam(char *infile, int *parameter, char **filename)
{
	FILE * p_in;
	char par_name[255];
	int temp_int;
	char temp_char[255];
	p_in = fopen(infile, "r");
	if (p_in != NULL)
	{
		std::cout << "Reading " << infile << "..." << std::endl;
		while (!feof(p_in) && fscanf(p_in, "%s", par_name) == 1)
		{
			if (strcmp(par_name, "NumLoci") == 0)
			{
				fscanf(p_in, "%d", &temp_int);
				parameter[0] = temp_int;
				std::cout << "NumLoci=" << temp_int << std::endl;
			}
			else if (strcmp(par_name, "NumGene") == 0)
			{
				fscanf(p_in, "%d", &temp_int);
				parameter[1] = temp_int;
				std::cout << "NumGene=" << temp_int << std::endl;
			}
			else if (strcmp(par_name, "NumCluster") == 0)
			{
				fscanf(p_in, "%d", &temp_int);
				parameter[2] = temp_int;
				std::cout << "NumCluster=" << temp_int << std::endl;
			}
			else if (strcmp(par_name, "NumBin") == 0)
			{
				fscanf(p_in, "%d", &temp_int);
				parameter[3] = temp_int;
				std::cout << "NumBin=" << temp_int << std::endl;
			}
			else if (strcmp(par_name, "NumVar") == 0)
			{
				fscanf(p_in, "%d", &temp_int);
				parameter[4] = temp_int;
				std::cout << "NumVar=" << temp_int << std::endl;
			}
			else if (strcmp(par_name, "DHCluterNum1") == 0)
			{
				fscanf(p_in, "%d", &temp_int);
				parameter[5] = temp_int;
				std::cout << "DHCluterNum1=" << temp_int << std::endl;
			}
			else if (strcmp(par_name, "DHCluterNum2") == 0)
			{
				fscanf(p_in, "%d", &temp_int);
				parameter[6] = temp_int;
				std::cout << "DHCluterNum2=" << temp_int << std::endl;
			}
			else if (strcmp(par_name, "DHCluterNum3") == 0)
			{
				fscanf(p_in, "%d", &temp_int);
				parameter[7] = temp_int;
				std::cout << "DHCluterNum3=" << temp_int << std::endl;
			}
			else if (strcmp(par_name, "GeneQuantile") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[0], temp_char);
			}
			else if (strcmp(par_name, "GeneMean") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[1], temp_char);
			}
			else if (strcmp(par_name, "GeneSD") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[2], temp_char);
			}
			else if (strcmp(par_name, "ClusterIndex") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[3], temp_char);
			}
			else if (strcmp(par_name, "DNaseMean") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[4], temp_char);
			}
			else if (strcmp(par_name, "DNaseSD") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[5], temp_char);
			}
			else if (strcmp(par_name, "RegressionCoef") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[6], temp_char);
			}
			else if (strcmp(par_name, "RegressionPredictor") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[7], temp_char);
			}
			else if (strcmp(par_name, "GenomicLoci") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[8], temp_char);
			}
			else if (strcmp(par_name, "GeneName") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[9], temp_char);
			}
			else if (strcmp(par_name, "DistanceMatrix") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[10], temp_char);
			}
			else if (strcmp(par_name, "DHCluster") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[11], temp_char);
			}
			else if (strcmp(par_name, "DHClusterCoef1") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[12], temp_char);
			}
			else if (strcmp(par_name, "DHClusterCoef2") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[13], temp_char);
			}
			else if (strcmp(par_name, "DHClusterCoef3") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[14], temp_char);
			}
			else if (strcmp(par_name, "DHClusterPredictor1") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[15], temp_char);
			}
			else if (strcmp(par_name, "DHClusterPredictor2") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[16], temp_char);
			}
			else if (strcmp(par_name, "DHClusterPredictor3") == 0)
			{
				fscanf(p_in, "%s", temp_char);
				strcpy(filename[17], temp_char);
			}
			else
			{
				break;
			}
		}

	}
	else
	{
		std::cout << "Error! File "<<infile<< " not found!" << std::endl;
		return 1;
	}

	std::cout << "Sucessfully read in parameter file." << std::endl;
	return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x228, %rsp            # imm = 0x228
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r12
leaq 0x22b8(%rip), %rsi      # 0x543c
callq 0x2160
testq %rax, %rax
je 0x31d1
movq %rax, %r15
movq %rbx, -0x38(%rbp)
movq 0x3e3c(%rip), %rbx      # 0x6fd8
leaq 0x224d(%rip), %rsi      # 0x53f0
movl $0x8, %edx
movq %rbx, %rdi
callq 0x2150
testq %r12, %r12
je 0x3214
movq %r12, %rdi
callq 0x2090
movq 0x3e14(%rip), %rdi      # 0x6fd8
movq %r12, %rsi
movq %rax, %rdx
callq 0x2150
jmp 0x322b
movq 0x3e00(%rip), %rbx      # 0x6fd8
leaq 0x23a6(%rip), %rsi      # 0x5585
movl $0xc, %edx
movq %rbx, %rdi
callq 0x2150
testq %r12, %r12
je 0x3b46
movq %r12, %rdi
callq 0x2090
movq 0x3dd4(%rip), %rdi      # 0x6fd8
movq %r12, %rsi
movq %rax, %rdx
callq 0x2150
jmp 0x3b5d
movq (%rbx), %rax
movq -0x18(%rax), %rax
leaq (%rbx,%rax), %rdi
movl 0x20(%rbx,%rax), %esi
orl $0x1, %esi
callq 0x21e0
leaq 0x211b(%rip), %rsi      # 0x534d
movl $0x3, %edx
movq %rbx, %rdi
callq 0x2150
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2120
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
callq 0x21b0
testl %eax, %eax
je 0x3291
movq 0x3d5f(%rip), %rdi      # 0x6fd8
leaq 0x231e(%rip), %rsi      # 0x559e
movl $0x23, %edx
callq 0x2150
xorl %ebx, %ebx
jmp 0x3b7a
leaq 0x2161(%rip), %r12      # 0x53f9
movq 0x3d39(%rip), %rbx      # 0x6fd8
movabsq $0x7463696465725072, %rax # imm = 0x7463696465725072
movq %rax, %xmm0
movabsq $0x657473756c434844, %rax # imm = 0x657473756C434844
movq %rax, %xmm1
punpcklqdq %xmm0, %xmm1    # xmm1 = xmm1[0],xmm0[0]
movdqa %xmm1, -0x150(%rbp)
movq %r15, %rdi
movq %r12, %rsi
leaq -0x140(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
cmpl $0x1, %eax
jne 0x3272
movq -0x140(%rbp), %rax
movabsq $0x656e65476d754e, %rcx # imm = 0x656E65476D754E
cmpq %rcx, %rax
je 0x3336
movabsq $0x69636f4c6d754e, %rcx # imm = 0x69636F4C6D754E
cmpq %rcx, %rax
jne 0x3366
movq %r15, %rdi
leaq 0x20eb(%rip), %rsi      # 0x53fc
leaq -0x2c(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
movl -0x2c(%rbp), %eax
movl %eax, (%r14)
movl $0x8, %edx
movq %rbx, %rdi
leaq 0x20ce(%rip), %rsi      # 0x53ff
jmp 0x3676
movq %r15, %rdi
leaq 0x20bc(%rip), %rsi      # 0x53fc
leaq -0x2c(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
movl -0x2c(%rbp), %eax
movl %eax, 0x4(%r14)
movl $0x8, %edx
movq %rbx, %rdi
leaq 0x20a7(%rip), %rsi      # 0x5408
jmp 0x3676
movq -0x140(%rbp), %rcx
movabsq $0x7473756c436d754e, %rdx # imm = 0x7473756C436D754E
xorq %rdx, %rcx
movq -0x13d(%rbp), %rdx
movabsq $0x72657473756c43, %rsi # imm = 0x72657473756C43
xorq %rsi, %rdx
orq %rcx, %rdx
je 0x3561
movl -0x140(%rbp), %ecx
movl $0x426d754e, %edx       # imm = 0x426D754E
xorl %edx, %ecx
movl -0x13d(%rbp), %edx
movl $0x6e6942, %esi         # imm = 0x6E6942
xorl %esi, %edx
orl %ecx, %edx
je 0x3591
movl -0x140(%rbp), %ecx
movl $0x566d754e, %edx       # imm = 0x566D754E
xorl %edx, %ecx
movl -0x13d(%rbp), %edx
movl $0x726156, %esi         # imm = 0x726156
xorl %esi, %edx
orl %ecx, %edx
je 0x35c1
movq -0x140(%rbp), %rcx
movabsq $0x726574756c434844, %rsi # imm = 0x726574756C434844
xorq %rsi, %rcx
movq -0x13b(%rbp), %rdx
movabsq $0x316d754e726574, %rdi # imm = 0x316D754E726574
xorq %rdi, %rdx
orq %rcx, %rdx
je 0x35f1
movq -0x140(%rbp), %rcx
xorq %rsi, %rcx
movq -0x13b(%rbp), %rdx
movabsq $0x326d754e726574, %rdi # imm = 0x326D754E726574
xorq %rdi, %rdx
orq %rcx, %rdx
je 0x361e
movq -0x140(%rbp), %rcx
xorq %rsi, %rcx
movq -0x13b(%rbp), %rdx
movabsq $0x336d754e726574, %rsi # imm = 0x336D754E726574
xorq %rsi, %rdx
orq %rcx, %rdx
je 0x364b
movq -0x140(%rbp), %rcx
movabsq $0x6e617551656e6547, %rdx # imm = 0x6E617551656E6547
xorq %rdx, %rcx
movq -0x13b(%rbp), %rdx
movabsq $0x656c69746e6175, %rsi # imm = 0x656C69746E6175
xorq %rsi, %rdx
orq %rcx, %rdx
je 0x36c5
movq -0x140(%rbp), %rcx
movabsq $0x6e61654d656e6547, %rdx # imm = 0x6E61654D656E6547
xorq %rdx, %rcx
movzbl -0x138(%rbp), %edx
orq %rcx, %rdx
je 0x36e8
movl -0x140(%rbp), %ecx
movl $0x656e6547, %edx       # imm = 0x656E6547
xorl %edx, %ecx
movl -0x13d(%rbp), %edx
movl $0x445365, %esi         # imm = 0x445365
xorl %esi, %edx
orl %ecx, %edx
je 0x370c
movq -0x140(%rbp), %rcx
movabsq $0x4972657473756c43, %rdx # imm = 0x4972657473756C43
xorq %rdx, %rcx
movq -0x13b(%rbp), %rdx
movabsq $0x7865646e497265, %rsi # imm = 0x7865646E497265
xorq %rsi, %rdx
orq %rcx, %rdx
je 0x3730
movq -0x140(%rbp), %rcx
movabsq $0x61654d6573614e44, %rdx # imm = 0x61654D6573614E44
xorq %rdx, %rcx
movzwl -0x138(%rbp), %edx
xorq $0x6e, %rdx
orq %rcx, %rdx
je 0x3754
movabsq $0x44536573614e44, %rcx # imm = 0x44536573614E44
cmpq %rcx, %rax
jne 0x3778
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x28(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
leaq 0x1e91(%rip), %rsi      # 0x53fc
leaq -0x2c(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
movl -0x2c(%rbp), %eax
movl %eax, 0x8(%r14)
movl $0xb, %edx
movq %rbx, %rdi
leaq 0x1e90(%rip), %rsi      # 0x541c
jmp 0x3676
movq %r15, %rdi
leaq 0x1e61(%rip), %rsi      # 0x53fc
leaq -0x2c(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
movl -0x2c(%rbp), %eax
movl %eax, 0xc(%r14)
movl $0x7, %edx
movq %rbx, %rdi
leaq 0x1e73(%rip), %rsi      # 0x542f
jmp 0x3676
movq %r15, %rdi
leaq 0x1e31(%rip), %rsi      # 0x53fc
leaq -0x2c(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
movl -0x2c(%rbp), %eax
movl %eax, 0x10(%r14)
movl $0x7, %edx
movq %rbx, %rdi
leaq 0x1e52(%rip), %rsi      # 0x543e
jmp 0x3676
movq %r15, %rdi
leaq 0x1e01(%rip), %rsi      # 0x53fc
leaq -0x2c(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
movl -0x2c(%rbp), %eax
movl %eax, 0x14(%r14)
movl $0xd, %edx
movq %rbx, %rdi
leaq 0x1e37(%rip), %rsi      # 0x5453
jmp 0x3676
movq %r15, %rdi
leaq 0x1dd4(%rip), %rsi      # 0x53fc
leaq -0x2c(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
movl -0x2c(%rbp), %eax
movl %eax, 0x18(%r14)
movl $0xd, %edx
movq %rbx, %rdi
leaq 0x1e25(%rip), %rsi      # 0x546e
jmp 0x3676
movq %r15, %rdi
leaq 0x1da7(%rip), %rsi      # 0x53fc
leaq -0x2c(%rbp), %rdx
xorl %eax, %eax
callq 0x2220
movl -0x2c(%rbp), %eax
movl %eax, 0x1c(%r14)
movl $0xd, %edx
movq %rbx, %rdi
leaq 0x1e13(%rip), %rsi      # 0x5489
callq 0x2150
movl -0x2c(%rbp), %esi
movq %rbx, %rdi
callq 0x21f0
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2120
movsbl %al, %esi
movq %r13, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
callq 0x21b0
testl %eax, %eax
je 0x32c9
jmp 0x3272
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq (%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x8(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x10(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x18(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x20(%rax), %rdi
jmp 0x3b39
movq -0x140(%rbp), %rax
movabsq $0x6973736572676552, %rcx # imm = 0x6973736572676552
xorq %rcx, %rax
movq -0x139(%rbp), %rcx
movabsq $0x66656f436e6f69, %rdx # imm = 0x66656F436E6F69
xorq %rdx, %rcx
orq %rax, %rcx
je 0x39b8
movd -0x130(%rbp), %xmm0
pcmpeqb 0x1bd7(%rip), %xmm0     # 0x5390
movdqa -0x140(%rbp), %xmm1
pcmpeqb 0x1bd7(%rip), %xmm1     # 0x53a0
pand %xmm0, %xmm1
pmovmskb %xmm1, %eax
cmpl $0xffff, %eax           # imm = 0xFFFF
je 0x39dc
movq -0x140(%rbp), %rax
movabsq $0x4c63696d6f6e6547, %rcx # imm = 0x4C63696D6F6E6547
xorq %rcx, %rax
movl -0x138(%rbp), %ecx
xorq $0x69636f, %rcx         # imm = 0x69636F
orq %rax, %rcx
je 0x3a00
movq -0x140(%rbp), %rax
movabsq $0x656d614e656e6547, %rcx # imm = 0x656D614E656E6547
xorq %rcx, %rax
movzbl -0x138(%rbp), %ecx
orq %rax, %rcx
je 0x3a24
movq -0x140(%rbp), %rax
movabsq $0x65636e6174736944, %rcx # imm = 0x65636E6174736944
xorq %rcx, %rax
movq -0x139(%rbp), %rcx
movabsq $0x78697274614d65, %rdx # imm = 0x78697274614D65
xorq %rdx, %rcx
orq %rax, %rcx
je 0x3a48
movq -0x140(%rbp), %rax
movabsq $0x657473756c434844, %rdx # imm = 0x657473756C434844
xorq %rdx, %rax
movzwl -0x138(%rbp), %ecx
xorq $0x72, %rcx
orq %rax, %rcx
je 0x3a6c
movq -0x140(%rbp), %rax
xorq %rdx, %rax
movq -0x139(%rbp), %rcx
movabsq $0x3166656f437265, %rsi # imm = 0x3166656F437265
xorq %rsi, %rcx
orq %rax, %rcx
je 0x3a90
movq -0x140(%rbp), %rax
xorq %rdx, %rax
movq -0x139(%rbp), %rcx
movabsq $0x3266656f437265, %rsi # imm = 0x3266656F437265
xorq %rsi, %rcx
orq %rax, %rcx
je 0x3ab4
movq -0x140(%rbp), %rax
xorq %rdx, %rax
movq -0x139(%rbp), %rcx
movabsq $0x3366656f437265, %rdx # imm = 0x3366656F437265
xorq %rdx, %rcx
orq %rax, %rcx
je 0x3ad5
movd -0x130(%rbp), %xmm0
pcmpeqb 0x1aa8(%rip), %xmm0     # 0x53b0
movdqa -0x140(%rbp), %xmm1
pcmpeqb 0x1aa8(%rip), %xmm1     # 0x53c0
pand %xmm0, %xmm1
pmovmskb %xmm1, %eax
cmpl $0xffff, %eax           # imm = 0xFFFF
je 0x3af6
movd -0x130(%rbp), %xmm0
pcmpeqb 0x1a95(%rip), %xmm0     # 0x53d0
movdqa -0x140(%rbp), %xmm1
pcmpeqb -0x150(%rbp), %xmm1
pand %xmm0, %xmm1
pmovmskb %xmm1, %eax
cmpl $0xffff, %eax           # imm = 0xFFFF
je 0x3b17
movd -0x130(%rbp), %xmm0
pcmpeqb 0x1a72(%rip), %xmm0     # 0x53e0
movdqa -0x140(%rbp), %xmm1
pcmpeqb -0x150(%rbp), %xmm1
pand %xmm0, %xmm1
pmovmskb %xmm1, %eax
cmpl $0xffff, %eax           # imm = 0xFFFF
jne 0x3272
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x88(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x30(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x38(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x40(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x48(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x50(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x58(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x60(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x68(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x70(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x78(%rax), %rdi
jmp 0x3b39
movq %r15, %rdi
movq %r12, %rsi
leaq -0x250(%rbp), %r13
movq %r13, %rdx
xorl %eax, %eax
callq 0x2220
movq -0x38(%rbp), %rax
movq 0x80(%rax), %rdi
movq %r13, %rsi
callq 0x2110
jmp 0x36b0
movq (%rbx), %rax
movq -0x18(%rax), %rax
leaq (%rbx,%rax), %rdi
movl 0x20(%rbx,%rax), %esi
orl $0x1, %esi
callq 0x21e0
movq 0x3474(%rip), %rdi      # 0x6fd8
leaq 0x1a27(%rip), %rsi      # 0x5592
movl $0xb, %edx
callq 0x2150
movl $0x1, %ebx
movq 0x3457(%rip), %r14      # 0x6fd8
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2120
movsbl %al, %esi
movq %r14, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x20d0
movl %ebx, %eax
addq $0x228, %rsp            # imm = 0x228
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq