// File: /workspace/github_c_makefile_star2_O0/enzo1982[P]smooth/libraries/libcpuid/cpuid_main.c
// Function: cpuid_deserialize_raw_data_internal
static int cpuid_deserialize_raw_data_internal(struct cpu_raw_data_t* single_raw, struct cpu_raw_data_array_t* raw_array, const char* filename)
{
	int i;
	int cur_line = 0;
	int assigned = 0;
	int subleaf = 0;
	bool is_header = true;
	bool is_libcpuid_dump = true;
	bool is_aida64_dump = false;
	const bool use_raw_array = (raw_array != NULL);
	logical_cpu_t logical_cpu = 0;
	uint32_t addr, eax, ebx, ecx, edx;
	char version[8] = "";
	char line[100];
	struct cpu_raw_data_t* raw_ptr = single_raw;
	FILE *f;

	/* Open file descriptor */
	f = !strcmp(filename, "") ? stdin : fopen(filename, "rt");
	if (!f)
		return cpuid_set_error(ERR_OPEN);
	debugf(1, "Opening raw dump from '%s'\n", f == stdin ? "stdin" : filename);

	if (use_raw_array)
		cpu_raw_data_array_t_constructor(raw_array, false);

	/* Parse file and store data in cpu_raw_data_t */
	while (fgets(line, sizeof(line), f) != NULL) {
		i = -1;
		line[strcspn(line, "\n")] = '\0';
		if (line[0] == '\0') // Skip empty lines
			continue;
		if (!strcmp(line, "--------------------------------------------------------------------------------")) // Skip test results
			break;
		cur_line++;
		if (is_header) {
			if (sscanf(line, "version=%s", version) >= 1) {
				debugf(2, "Recognized version '%s' from raw dump\n", version);
				is_libcpuid_dump = true;
				is_aida64_dump = false;
				continue;
			}
			else if (sscanf(line, "basic_cpuid[%d]=%x %x %x %x", &i, &eax, &ebx, &ecx, &edx) >= 5) {
				debugf(2, "Parsing raw dump for a single CPU dump\n");
				is_header = false;
				is_libcpuid_dump = true;
				is_aida64_dump = false;
				if (use_raw_array) {
					cpuid_grow_raw_data_array(raw_array, 1);
					raw_ptr = &raw_array->raw[0];
					raw_array->with_affinity = false;
				}
			}
			else if (!strcmp(line, "------[ Versions ]------") ||
			         !strcmp(line, "------[ Logical CPU #0 ]------") ||
			         !strcmp(line, "------[ CPUID Registers / Logical CPU #0 ]------") ||
			         strstr(line, "CPU#000 AffMask: 0x")) {
				debugf(2, "Recognized AIDA64 raw dump\n");
				is_header = false;
				is_libcpuid_dump = false;
				is_aida64_dump = true;
			}
		}

		if (is_libcpuid_dump) {
			if (use_raw_array && (sscanf(line, "_________________ Logical CPU #%hi _________________", &logical_cpu) >= 1)) {
				debugf(2, "Parsing raw dump for logical CPU %i\n", logical_cpu);
				is_header = false;
				cpuid_grow_raw_data_array(raw_array, logical_cpu + 1);
				raw_ptr = &raw_array->raw[logical_cpu];
				raw_array->with_affinity = true;
			}
			else if ((sscanf(line, "basic_cpuid[%d]=%x %x %x %x", &i, &eax, &ebx, &ecx, &edx) >= 5) && (i >= 0) && (i < MAX_CPUID_LEVEL)) {
				RAW_ASSIGN_LINE(raw_ptr->basic_cpuid[i]);
			}
			else if ((sscanf(line, "ext_cpuid[%d]=%x %x %x %x", &i, &eax, &ebx, &ecx, &edx) >= 5) && (i >= 0) && (i < MAX_EXT_CPUID_LEVEL)) {
				RAW_ASSIGN_LINE(raw_ptr->ext_cpuid[i]);
			}
			else if ((sscanf(line, "intel_fn4[%d]=%x %x %x %x", &i, &eax, &ebx, &ecx, &edx) >= 5) && (i >= 0) && (i < MAX_INTELFN4_LEVEL)) {
				RAW_ASSIGN_LINE(raw_ptr->intel_fn4[i]);
			}
			else if ((sscanf(line, "intel_fn11[%d]=%x %x %x %x", &i, &eax, &ebx, &ecx, &edx) >= 5) && (i >= 0) && (i < MAX_INTELFN11_LEVEL)) {
				RAW_ASSIGN_LINE(raw_ptr->intel_fn11[i]);
			}
			else if ((sscanf(line, "intel_fn12h[%d]=%x %x %x %x", &i, &eax, &ebx, &ecx, &edx) >= 5) && (i >= 0) && (i < MAX_INTELFN12H_LEVEL)) {
				RAW_ASSIGN_LINE(raw_ptr->intel_fn12h[i]);
			}
			else if ((sscanf(line, "intel_fn14h[%d]=%x %x %x %x", &i, &eax, &ebx, &ecx, &edx) >= 5) && (i >= 0) && (i < MAX_INTELFN14H_LEVEL)) {
				RAW_ASSIGN_LINE(raw_ptr->intel_fn14h[i]);
			}
			else if ((sscanf(line, "amd_fn8000001dh[%d]=%x %x %x %x", &i, &eax, &ebx, &ecx, &edx) >= 5) && (i >= 0) && (i < MAX_AMDFN8000001DH_LEVEL)) {
				RAW_ASSIGN_LINE(raw_ptr->amd_fn8000001dh[i]);
			}
			else if (line[0] != '\0') {
				warnf("Warning: file '%s', line %d: '%s' not understood!\n", filename, cur_line, line);
			}
		}
		else if (is_aida64_dump) {
			if (use_raw_array && ((sscanf(line, "------[ Logical CPU #%hi ]------", &logical_cpu) >= 1) ||
			                      (sscanf(line, "------[ CPUID Registers / Logical CPU #%hi ]------", &logical_cpu) >= 1) ||
			                      (sscanf(line, "CPU#%hi AffMask: 0x%*x", &logical_cpu) >= 1))) {
				debugf(2, "Parsing AIDA64 raw dump for logical CPU %i\n", logical_cpu);
				cpuid_grow_raw_data_array(raw_array, logical_cpu + 1);
				raw_ptr = &raw_array->raw[logical_cpu];
				raw_array->with_affinity = true;
				continue;
			}
			subleaf = 0;
			assigned = sscanf(line, "CPUID %x: %x-%x-%x-%x [SL %02i]", &addr, &eax, &ebx, &ecx, &edx, &subleaf);
			debugf(3, "raw line %d: %i items assigned for string '%s'\n", cur_line, assigned, line);
			if ((assigned >= 5) && (subleaf == 0)) {
				if (addr < MAX_CPUID_LEVEL) {
					i = (int) addr;
					RAW_ASSIGN_LINE(raw_ptr->basic_cpuid[i]);
				}
				else if ((addr >= ADDRESS_EXT_CPUID_START) && (addr < ADDRESS_EXT_CPUID_END)) {
					i = (int) addr - ADDRESS_EXT_CPUID_START;
					RAW_ASSIGN_LINE(raw_ptr->ext_cpuid[i]);
				}
			}
			if (assigned >= 6) {
				i = subleaf;
				switch (addr) {
					case 0x00000004: RAW_ASSIGN_LINE(raw_ptr->intel_fn4[i]);       break;
					case 0x0000000B: RAW_ASSIGN_LINE(raw_ptr->intel_fn11[i]);      break;
					case 0x00000012: RAW_ASSIGN_LINE(raw_ptr->intel_fn12h[i]);     break;
					case 0x00000014: RAW_ASSIGN_LINE(raw_ptr->intel_fn14h[i]);     break;
					case 0x8000001D: RAW_ASSIGN_LINE(raw_ptr->amd_fn8000001dh[i]); break;
					default: break;
				}
			}
		}
	}

	/* Close file descriptor */
	if (strcmp(filename, ""))
		fclose(f);
	return cpuid_set_error(ERR_OK);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x100, %rsp            # imm = 0x100
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movl $0x0, -0x28(%rbp)
movl $0x0, -0x2c(%rbp)
movl $0x0, -0x30(%rbp)
movb $0x1, -0x31(%rbp)
movb $0x1, -0x32(%rbp)
movb $0x0, -0x33(%rbp)
cmpq $0x0, -0x18(%rbp)
setne %al
andb $0x1, %al
movb %al, -0x34(%rbp)
movw $0x0, -0x36(%rbp)
leaq -0x54(%rbp), %rdi
xorl %esi, %esi
movl $0x8, %edx
callq 0x5a200
movq -0x10(%rbp), %rax
movq %rax, -0xc8(%rbp)
movq -0x20(%rbp), %rdi
leaq 0x73343(%rip), %rsi     # 0x1a5884
callq 0x5c440
cmpl $0x0, %eax
jne 0x13255e
movq 0xd696e(%rip), %rax     # 0x208ec0
movq (%rax), %rax
movq %rax, -0xd8(%rbp)
jmp 0x132575
movq -0x20(%rbp), %rdi
leaq 0x739e5(%rip), %rsi     # 0x1a5f4e
callq 0x5db10
movq %rax, -0xd8(%rbp)
movq -0xd8(%rbp), %rax
movq %rax, -0xd0(%rbp)
cmpq $0x0, -0xd0(%rbp)
jne 0x13259f
movl $0xfffffffc, %edi       # imm = 0xFFFFFFFC
callq 0x131660
movl %eax, -0x4(%rbp)
jmp 0x1332f9
movq -0xd0(%rbp), %rax
movq 0xd6913(%rip), %rcx     # 0x208ec0
cmpq (%rcx), %rax
jne 0x1325c2
leaq 0x75617(%rip), %rax     # 0x1a7bd0
movq %rax, -0xe0(%rbp)
jmp 0x1325cd
movq -0x20(%rbp), %rax
movq %rax, -0xe0(%rbp)
movq -0xe0(%rbp), %rdx
movl $0x1, %edi
leaq 0x755d4(%rip), %rsi     # 0x1a7bb4
movb $0x0, %al
callq 0x135780
testb $0x1, -0x34(%rbp)
je 0x1325f8
movq -0x18(%rbp), %rdi
xorl %esi, %esi
callq 0x131c00
jmp 0x1325fa
leaq -0xc0(%rbp), %rdi
movq -0xd0(%rbp), %rdx
movl $0x64, %esi
callq 0x5b4e0
cmpq $0x0, %rax
je 0x1332ce
movl $0xffffffff, -0x24(%rbp) # imm = 0xFFFFFFFF
leaq -0xc0(%rbp), %rdi
leaq 0x73252(%rip), %rsi     # 0x1a5883
callq 0x5bec0
movb $0x0, -0xc0(%rbp,%rax)
movsbl -0xc0(%rbp), %eax
cmpl $0x0, %eax
jne 0x13264c
jmp 0x1325fa
leaq -0xc0(%rbp), %rdi
leaq 0x7557c(%rip), %rsi     # 0x1a7bd6
callq 0x5c440
cmpl $0x0, %eax
jne 0x132669
jmp 0x1332ce
movl -0x28(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x28(%rbp)
testb $0x1, -0x31(%rbp)
je 0x1327c4
leaq -0xc0(%rbp), %rdi
leaq -0x54(%rbp), %rdx
leaq 0x75599(%rip), %rsi     # 0x1a7c27
movb $0x0, %al
callq 0x59470
cmpl $0x1, %eax
jl 0x1326be
leaq -0x54(%rbp), %rdx
movl $0x2, %edi
leaq 0x75588(%rip), %rsi     # 0x1a7c32
movb $0x0, %al
callq 0x135780
movb $0x1, -0x32(%rbp)
movb $0x0, -0x33(%rbp)
jmp 0x1325fa
leaq -0xc0(%rbp), %rdi
leaq 0x7558d(%rip), %rsi     # 0x1a7c59
leaq -0x24(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %rax
movq %rax, (%rsp)
movb $0x0, %al
callq 0x59470
cmpl $0x5, %eax
jl 0x13273e
movl $0x2, %edi
leaq 0x75579(%rip), %rsi     # 0x1a7c75
movb $0x0, %al
callq 0x135780
movb $0x0, -0x31(%rbp)
movb $0x1, -0x32(%rbp)
movb $0x0, -0x33(%rbp)
testb $0x1, -0x34(%rbp)
je 0x132739
movq -0x18(%rbp), %rdi
movl $0x1, %esi
callq 0x131d00
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0xc8(%rbp)
movq -0x18(%rbp), %rax
movb $0x0, (%rax)
jmp 0x1327c0
leaq -0xc0(%rbp), %rdi
leaq 0x75551(%rip), %rsi     # 0x1a7c9d
callq 0x5c440
cmpl $0x0, %eax
je 0x13279f
leaq -0xc0(%rbp), %rdi
leaq 0x75552(%rip), %rsi     # 0x1a7cb6
callq 0x5c440
cmpl $0x0, %eax
je 0x13279f
leaq -0xc0(%rbp), %rdi
leaq 0x75559(%rip), %rsi     # 0x1a7cd5
callq 0x5c440
cmpl $0x0, %eax
je 0x13279f
leaq -0xc0(%rbp), %rdi
leaq 0x75572(%rip), %rsi     # 0x1a7d06
callq 0x5ab80
cmpq $0x0, %rax
je 0x1327be
movl $0x2, %edi
leaq 0x7556f(%rip), %rsi     # 0x1a7d1a
movb $0x0, %al
callq 0x135780
movb $0x0, -0x31(%rbp)
movb $0x0, -0x32(%rbp)
movb $0x1, -0x33(%rbp)
jmp 0x1327c0
jmp 0x1327c2
jmp 0x1327c4
testb $0x1, -0x32(%rbp)
je 0x132dad
testb $0x1, -0x34(%rbp)
je 0x132849
leaq -0xc0(%rbp), %rdi
leaq 0x75554(%rip), %rsi     # 0x1a7d36
leaq -0x36(%rbp), %rdx
movb $0x0, %al
callq 0x59470
cmpl $0x1, %eax
jl 0x132849
movzwl -0x36(%rbp), %edx
movl $0x2, %edi
leaq 0x75569(%rip), %rsi     # 0x1a7d6b
movb $0x0, %al
callq 0x135780
movb $0x0, -0x31(%rbp)
movq -0x18(%rbp), %rdi
movzwl -0x36(%rbp), %eax
addl $0x1, %eax
movzwl %ax, %esi
callq 0x131d00
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rax
movzwl -0x36(%rbp), %ecx
imulq $0x580, %rcx, %rcx      # imm = 0x580
addq %rcx, %rax
movq %rax, -0xc8(%rbp)
movq -0x18(%rbp), %rax
movb $0x1, (%rax)
jmp 0x132da8
leaq -0xc0(%rbp), %rdi
leaq 0x75402(%rip), %rsi     # 0x1a7c59
leaq -0x24(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %rax
movq %rax, (%rsp)
movb $0x0, %al
callq 0x59470
cmpl $0x5, %eax
jl 0x1328eb
cmpl $0x0, -0x24(%rbp)
jl 0x1328eb
cmpl $0x20, -0x24(%rbp)
jge 0x1328eb
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132da6
leaq -0xc0(%rbp), %rdi
leaq 0x75497(%rip), %rsi     # 0x1a7d90
leaq -0x24(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %rax
movq %rax, (%rsp)
movb $0x0, %al
callq 0x59470
cmpl $0x5, %eax
jl 0x1329ad
cmpl $0x0, -0x24(%rbp)
jl 0x1329ad
cmpl $0x20, -0x24(%rbp)
jge 0x1329ad
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x200, %rax            # imm = 0x200
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x200, %rax            # imm = 0x200
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x200, %rax            # imm = 0x200
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x200, %rax            # imm = 0x200
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132da4
leaq -0xc0(%rbp), %rdi
leaq 0x753ef(%rip), %rsi     # 0x1a7daa
leaq -0x24(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %rax
movq %rax, (%rsp)
movb $0x0, %al
callq 0x59470
cmpl $0x5, %eax
jl 0x132a6f
cmpl $0x0, -0x24(%rbp)
jl 0x132a6f
cmpl $0x8, -0x24(%rbp)
jge 0x132a6f
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x400, %rax            # imm = 0x400
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x400, %rax            # imm = 0x400
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x400, %rax            # imm = 0x400
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x400, %rax            # imm = 0x400
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132da2
leaq -0xc0(%rbp), %rdi
leaq 0x75347(%rip), %rsi     # 0x1a7dc4
leaq -0x24(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %rax
movq %rax, (%rsp)
movb $0x0, %al
callq 0x59470
cmpl $0x5, %eax
jl 0x132b31
cmpl $0x0, -0x24(%rbp)
jl 0x132b31
cmpl $0x4, -0x24(%rbp)
jge 0x132b31
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x480, %rax            # imm = 0x480
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x480, %rax            # imm = 0x480
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x480, %rax            # imm = 0x480
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x480, %rax            # imm = 0x480
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132da0
leaq -0xc0(%rbp), %rdi
leaq 0x752a0(%rip), %rsi     # 0x1a7ddf
leaq -0x24(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %rax
movq %rax, (%rsp)
movb $0x0, %al
callq 0x59470
cmpl $0x5, %eax
jl 0x132bf3
cmpl $0x0, -0x24(%rbp)
jl 0x132bf3
cmpl $0x4, -0x24(%rbp)
jge 0x132bf3
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x4c0, %rax            # imm = 0x4C0
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x4c0, %rax            # imm = 0x4C0
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x4c0, %rax            # imm = 0x4C0
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x4c0, %rax            # imm = 0x4C0
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132d9e
leaq -0xc0(%rbp), %rdi
leaq 0x751fa(%rip), %rsi     # 0x1a7dfb
leaq -0x24(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %rax
movq %rax, (%rsp)
movb $0x0, %al
callq 0x59470
cmpl $0x5, %eax
jl 0x132cb5
cmpl $0x0, -0x24(%rbp)
jl 0x132cb5
cmpl $0x4, -0x24(%rbp)
jge 0x132cb5
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x500, %rax            # imm = 0x500
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x500, %rax            # imm = 0x500
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x500, %rax            # imm = 0x500
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x500, %rax            # imm = 0x500
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132d9c
leaq -0xc0(%rbp), %rdi
leaq 0x75154(%rip), %rsi     # 0x1a7e17
leaq -0x24(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %rax
movq %rax, (%rsp)
movb $0x0, %al
callq 0x59470
cmpl $0x5, %eax
jl 0x132d70
cmpl $0x0, -0x24(%rbp)
jl 0x132d70
cmpl $0x4, -0x24(%rbp)
jge 0x132d70
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x540, %rax            # imm = 0x540
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x540, %rax            # imm = 0x540
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x540, %rax            # imm = 0x540
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x540, %rax            # imm = 0x540
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132d9a
movsbl -0xc0(%rbp), %eax
cmpl $0x0, %eax
je 0x132d98
movq -0x20(%rbp), %rsi
movl -0x28(%rbp), %edx
leaq -0xc0(%rbp), %rcx
leaq 0x750a6(%rip), %rdi     # 0x1a7e37
movb $0x0, %al
callq 0x1356a0
jmp 0x132d9a
jmp 0x132d9c
jmp 0x132d9e
jmp 0x132da0
jmp 0x132da2
jmp 0x132da4
jmp 0x132da6
jmp 0x132da8
jmp 0x1332c9
testb $0x1, -0x33(%rbp)
je 0x1332c7
testb $0x1, -0x34(%rbp)
je 0x132e6e
leaq -0xc0(%rbp), %rdi
leaq 0x7509b(%rip), %rsi     # 0x1a7e6a
leaq -0x36(%rbp), %rdx
movb $0x0, %al
callq 0x59470
cmpl $0x1, %eax
jge 0x132e1b
leaq -0xc0(%rbp), %rdi
leaq 0x7509e(%rip), %rsi     # 0x1a7e8b
leaq -0x36(%rbp), %rdx
movb $0x0, %al
callq 0x59470
cmpl $0x1, %eax
jge 0x132e1b
leaq -0xc0(%rbp), %rdi
leaq 0x750b3(%rip), %rsi     # 0x1a7ebe
leaq -0x36(%rbp), %rdx
movb $0x0, %al
callq 0x59470
cmpl $0x1, %eax
jl 0x132e6e
movzwl -0x36(%rbp), %edx
movl $0x2, %edi
leaq 0x750aa(%rip), %rsi     # 0x1a7ed5
movb $0x0, %al
callq 0x135780
movq -0x18(%rbp), %rdi
movzwl -0x36(%rbp), %eax
addl $0x1, %eax
movzwl %ax, %esi
callq 0x131d00
movq -0x18(%rbp), %rax
movq 0x8(%rax), %rax
movzwl -0x36(%rbp), %ecx
imulq $0x580, %rcx, %rcx      # imm = 0x580
addq %rcx, %rax
movq %rax, -0xc8(%rbp)
movq -0x18(%rbp), %rax
movb $0x1, (%rax)
jmp 0x1325fa
movl $0x0, -0x30(%rbp)
leaq -0xc0(%rbp), %rdi
leaq 0x7507e(%rip), %rsi     # 0x1a7f01
leaq -0x3c(%rbp), %rdx
leaq -0x40(%rbp), %rcx
leaq -0x44(%rbp), %r8
leaq -0x48(%rbp), %r9
leaq -0x4c(%rbp), %r10
leaq -0x30(%rbp), %rax
movq %r10, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x0, %al
callq 0x59470
movl %eax, -0x2c(%rbp)
movl -0x28(%rbp), %edx
movl -0x2c(%rbp), %ecx
leaq -0xc0(%rbp), %r8
movl $0x3, %edi
leaq 0x7505a(%rip), %rsi     # 0x1a7f21
movb $0x0, %al
callq 0x135780
cmpl $0x5, -0x2c(%rbp)
jl 0x132ff2
cmpl $0x0, -0x30(%rbp)
jne 0x132ff2
cmpl $0x20, -0x3c(%rbp)
jae 0x132f52
movl -0x3c(%rbp), %eax
movl %eax, -0x24(%rbp)
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132ff0
cmpl $0x80000000, -0x3c(%rbp) # imm = 0x80000000
jb 0x132fee
cmpl $0x80000020, -0x3c(%rbp) # imm = 0x80000020
jae 0x132fee
movl -0x3c(%rbp), %eax
subl $0x80000000, %eax       # imm = 0x80000000
movl %eax, -0x24(%rbp)
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x200, %rax            # imm = 0x200
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x200, %rax            # imm = 0x200
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x200, %rax            # imm = 0x200
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x200, %rax            # imm = 0x200
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x132ff0
jmp 0x132ff2
cmpl $0x6, -0x2c(%rbp)
jl 0x1332c5
movl -0x30(%rbp), %eax
movl %eax, -0x24(%rbp)
movl -0x3c(%rbp), %eax
movl %eax, -0xe4(%rbp)
subl $0x8000001d, %eax       # imm = 0x8000001D
je 0x133248
jmp 0x133018
movl -0xe4(%rbp), %eax
subl $0x4, %eax
je 0x13305b
jmp 0x133025
movl -0xe4(%rbp), %eax
subl $0xb, %eax
je 0x1330d7
jmp 0x133036
movl -0xe4(%rbp), %eax
subl $0x12, %eax
je 0x133153
jmp 0x133047
movl -0xe4(%rbp), %eax
subl $0x14, %eax
je 0x1331cf
jmp 0x1332c1
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x400, %rax            # imm = 0x400
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x400, %rax            # imm = 0x400
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x400, %rax            # imm = 0x400
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x400, %rax            # imm = 0x400
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x1332c3
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x480, %rax            # imm = 0x480
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x480, %rax            # imm = 0x480
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x480, %rax            # imm = 0x480
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x480, %rax            # imm = 0x480
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x1332c3
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x4c0, %rax            # imm = 0x4C0
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x4c0, %rax            # imm = 0x4C0
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x4c0, %rax            # imm = 0x4C0
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x4c0, %rax            # imm = 0x4C0
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x1332c3
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x500, %rax            # imm = 0x500
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x500, %rax            # imm = 0x500
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x500, %rax            # imm = 0x500
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x500, %rax            # imm = 0x500
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x1332c3
movl -0x40(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x540, %rax            # imm = 0x540
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl -0x44(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x540, %rax            # imm = 0x540
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl -0x48(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x540, %rax            # imm = 0x540
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0x8(%rax)
movl -0x4c(%rbp), %ecx
movq -0xc8(%rbp), %rax
addq $0x540, %rax            # imm = 0x540
movslq -0x24(%rbp), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movl %ecx, 0xc(%rax)
jmp 0x1332c3
jmp 0x1332c3
jmp 0x1332c5
jmp 0x1332c7
jmp 0x1332c9
jmp 0x1325fa
movq -0x20(%rbp), %rdi
leaq 0x725ab(%rip), %rsi     # 0x1a5884
callq 0x5c440
cmpl $0x0, %eax
je 0x1332ef
movq -0xd0(%rbp), %rdi
callq 0x5a8f0
xorl %edi, %edi
callq 0x131660
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x100, %rsp            # imm = 0x100
popq %rbp
retq
nopw %cs:(%rax,%rax)