// File: rcolomina[P]the_charmed_house/src/objeto.cpp
// Function: Objeto::Objeto(Entidad const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
Objeto::Objeto(const Entidad &entity,
	       vector<string> names,
	       vector<string> descriptions,
	       vector<pair<string,string> > namesProperties,
	       string pathFileText):
     Entidad(entity)
{
     // TODO: Create an external list of properties by default
     map_pBools[string("used")]=new Bool(string("used"),false);
     map_pBools[string("fix")]=new Bool(string("fix"),false);
     map_pBools[string("visibility")]=new Bool(string("visibility"),true);
     map_pBools[string("tirable")]=new Bool(string("tirable"),false);
     map_pBools[string("alcanzable")]=new Bool(string("alcanzable"),true);
     map_pBools[string("desatascador")]=new Bool(string("desatascador"),true);
	  	  
     vector<pair<string,string> >::iterator it;
     for(it=namesProperties.begin();it!=namesProperties.end();it++)
     {			 
	  pair<string,string> par=*it;

	  if(par.second==string("true") or par.second==string("false"))
	  {
	       bool boolvalue=false;
	       if(par.second==string("true"))
		    boolvalue=true;
					
	       map_pBools[par.first]=new Bool(par.first,boolvalue);
	       mapBool[par.first]=boolvalue;
	  }
	  else
	  {
	       int integerValue=stoi(par.second);
	       map_pInts[par.first]=new Int(par.first,integerValue);
	  }					
     }

     this->pathFileText=pathFileText;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x530, %rsp            # imm = 0x530
movq %r8, -0x3b0(%rbp)
movq %r9, -0x3a8(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq %r9, -0x30(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x358(%rbp)
movq -0x10(%rbp), %rsi
callq 0x2d550
movq -0x358(%rbp), %rdi
addq $0x68, %rdi
movq %rdi, -0x3a0(%rbp)
callq 0x297d0
movq -0x358(%rbp), %rdi
subq $-0x80, %rdi
movq %rdi, -0x398(%rbp)
callq 0x297d0
movq -0x358(%rbp), %rdi
addq $0x98, %rdi
movq %rdi, -0x390(%rbp)
callq 0x2d4d0
movq -0x358(%rbp), %rdi
addq $0xc8, %rdi
movq %rdi, -0x388(%rbp)
callq 0x41900
movq -0x358(%rbp), %rdi
addq $0xf8, %rdi
movq %rdi, -0x380(%rbp)
callq 0x2d4b0
movq -0x358(%rbp), %rdi
addq $0x128, %rdi            # imm = 0x128
movq %rdi, -0x378(%rbp)
callq 0x41920
movq -0x358(%rbp), %rdi
addq $0x158, %rdi            # imm = 0x158
movq %rdi, -0x370(%rbp)
callq 0x5540
movq -0x358(%rbp), %rdi
addq $0x178, %rdi            # imm = 0x178
movq %rdi, -0x368(%rbp)
callq 0x5540
movq -0x358(%rbp), %rdi
addq $0x1a8, %rdi            # imm = 0x1A8
movq %rdi, -0x360(%rbp)
callq 0x5540
movq -0x358(%rbp), %rdi
addq $0x1c8, %rdi            # imm = 0x1C8
movq %rdi, -0x350(%rbp)
callq 0x3e7e0
jmp 0x403e5
movq -0x358(%rbp), %rdi
addq $0x218, %rdi            # imm = 0x218
movq %rdi, -0x3d0(%rbp)
callq 0x5540
movq -0x358(%rbp), %rdi
addq $0x238, %rdi            # imm = 0x238
movq %rdi, -0x3c8(%rbp)
callq 0x297d0
movq -0x358(%rbp), %rdi
addq $0x250, %rdi            # imm = 0x250
movq %rdi, -0x3c0(%rbp)
callq 0x5540
movl $0x28, %edi
callq 0x53c0
movq %rax, -0x3b8(%rbp)
jmp 0x40446
movb $0x1, -0x62(%rbp)
leaq -0x61(%rbp), %rdi
movq %rdi, -0x3d8(%rbp)
callq 0x56d0
movq -0x3d8(%rbp), %rdx
leaq 0xfc48(%rip), %rsi      # 0x500b0
leaq -0x60(%rbp), %rdi
callq 0x299c0
jmp 0x40473
movq -0x3b8(%rbp), %rdi
leaq -0x60(%rbp), %rsi
xorl %edx, %edx
callq 0x41940
jmp 0x40487
movq -0x358(%rbp), %rax
movb $0x0, -0x62(%rbp)
addq $0xc8, %rax
movq %rax, -0x3e8(%rbp)
leaq -0x89(%rbp), %rdi
movq %rdi, -0x3e0(%rbp)
callq 0x56d0
movq -0x3e0(%rbp), %rdx
leaq 0xfbf0(%rip), %rsi      # 0x500b0
leaq -0x88(%rbp), %rdi
callq 0x299c0
jmp 0x404ce
movq -0x3e8(%rbp), %rdi
leaq -0x88(%rbp), %rsi
callq 0x41980
movq %rax, -0x3f0(%rbp)
jmp 0x404ea
movq -0x3f0(%rbp), %rax
movq -0x3b8(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x88(%rbp), %rdi
callq 0x5748
leaq -0x89(%rbp), %rdi
callq 0x5420
leaq -0x60(%rbp), %rdi
callq 0x5748
leaq -0x61(%rbp), %rdi
callq 0x5420
movl $0x28, %edi
callq 0x53c0
movq %rax, -0x3f8(%rbp)
jmp 0x40538
movb $0x1, -0xb2(%rbp)
leaq -0xb1(%rbp), %rdi
movq %rdi, -0x400(%rbp)
callq 0x56d0
movq -0x400(%rbp), %rdx
leaq 0xfb55(%rip), %rsi      # 0x500b5
leaq -0xb0(%rbp), %rdi
callq 0x299c0
jmp 0x4056e
movq -0x3f8(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
xorl %edx, %edx
callq 0x41940
jmp 0x40585
movq -0x358(%rbp), %rax
movb $0x0, -0xb2(%rbp)
addq $0xc8, %rax
movq %rax, -0x410(%rbp)
leaq -0xd9(%rbp), %rdi
movq %rdi, -0x408(%rbp)
callq 0x56d0
movq -0x408(%rbp), %rdx
leaq 0xfaf4(%rip), %rsi      # 0x500b5
leaq -0xd8(%rbp), %rdi
callq 0x299c0
jmp 0x405cf
movq -0x410(%rbp), %rdi
leaq -0xd8(%rbp), %rsi
callq 0x41980
movq %rax, -0x418(%rbp)
jmp 0x405eb
movq -0x418(%rbp), %rax
movq -0x3f8(%rbp), %rcx
movq %rcx, (%rax)
leaq -0xd8(%rbp), %rdi
callq 0x5748
leaq -0xd9(%rbp), %rdi
callq 0x5420
leaq -0xb0(%rbp), %rdi
callq 0x5748
leaq -0xb1(%rbp), %rdi
callq 0x5420
movl $0x28, %edi
callq 0x53c0
movq %rax, -0x420(%rbp)
jmp 0x4063f
movb $0x1, -0x102(%rbp)
leaq -0x101(%rbp), %rdi
movq %rdi, -0x428(%rbp)
callq 0x56d0
movq -0x428(%rbp), %rdx
leaq 0xfa52(%rip), %rsi      # 0x500b9
leaq -0x100(%rbp), %rdi
callq 0x299c0
jmp 0x40675
movq -0x420(%rbp), %rdi
leaq -0x100(%rbp), %rsi
movl $0x1, %edx
callq 0x41940
jmp 0x4068f
movq -0x358(%rbp), %rax
movb $0x0, -0x102(%rbp)
addq $0xc8, %rax
movq %rax, -0x438(%rbp)
leaq -0x129(%rbp), %rdi
movq %rdi, -0x430(%rbp)
callq 0x56d0
movq -0x430(%rbp), %rdx
leaq 0xf9ee(%rip), %rsi      # 0x500b9
leaq -0x128(%rbp), %rdi
callq 0x299c0
jmp 0x406d9
movq -0x438(%rbp), %rdi
leaq -0x128(%rbp), %rsi
callq 0x41980
movq %rax, -0x440(%rbp)
jmp 0x406f5
movq -0x440(%rbp), %rax
movq -0x420(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x128(%rbp), %rdi
callq 0x5748
leaq -0x129(%rbp), %rdi
callq 0x5420
leaq -0x100(%rbp), %rdi
callq 0x5748
leaq -0x101(%rbp), %rdi
callq 0x5420
movl $0x28, %edi
callq 0x53c0
movq %rax, -0x448(%rbp)
jmp 0x40749
movb $0x1, -0x152(%rbp)
leaq -0x151(%rbp), %rdi
movq %rdi, -0x450(%rbp)
callq 0x56d0
movq -0x450(%rbp), %rdx
leaq 0xf953(%rip), %rsi      # 0x500c4
leaq -0x150(%rbp), %rdi
callq 0x299c0
jmp 0x4077f
movq -0x448(%rbp), %rdi
leaq -0x150(%rbp), %rsi
xorl %edx, %edx
callq 0x41940
jmp 0x40796
movq -0x358(%rbp), %rax
movb $0x0, -0x152(%rbp)
addq $0xc8, %rax
movq %rax, -0x460(%rbp)
leaq -0x179(%rbp), %rdi
movq %rdi, -0x458(%rbp)
callq 0x56d0
movq -0x458(%rbp), %rdx
leaq 0xf8f2(%rip), %rsi      # 0x500c4
leaq -0x178(%rbp), %rdi
callq 0x299c0
jmp 0x407e0
movq -0x460(%rbp), %rdi
leaq -0x178(%rbp), %rsi
callq 0x41980
movq %rax, -0x468(%rbp)
jmp 0x407fc
movq -0x468(%rbp), %rax
movq -0x448(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x178(%rbp), %rdi
callq 0x5748
leaq -0x179(%rbp), %rdi
callq 0x5420
leaq -0x150(%rbp), %rdi
callq 0x5748
leaq -0x151(%rbp), %rdi
callq 0x5420
movl $0x28, %edi
callq 0x53c0
movq %rax, -0x470(%rbp)
jmp 0x40850
movb $0x1, -0x1a2(%rbp)
leaq -0x1a1(%rbp), %rdi
movq %rdi, -0x478(%rbp)
callq 0x56d0
movq -0x478(%rbp), %rdx
leaq 0x10507(%rip), %rsi     # 0x50d7f
leaq -0x1a0(%rbp), %rdi
callq 0x299c0
jmp 0x40886
movq -0x470(%rbp), %rdi
leaq -0x1a0(%rbp), %rsi
movl $0x1, %edx
callq 0x41940
jmp 0x408a0
movq -0x358(%rbp), %rax
movb $0x0, -0x1a2(%rbp)
addq $0xc8, %rax
movq %rax, -0x488(%rbp)
leaq -0x1c9(%rbp), %rdi
movq %rdi, -0x480(%rbp)
callq 0x56d0
movq -0x480(%rbp), %rdx
leaq 0x104a3(%rip), %rsi     # 0x50d7f
leaq -0x1c8(%rbp), %rdi
callq 0x299c0
jmp 0x408ea
movq -0x488(%rbp), %rdi
leaq -0x1c8(%rbp), %rsi
callq 0x41980
movq %rax, -0x490(%rbp)
jmp 0x40906
movq -0x490(%rbp), %rax
movq -0x470(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x1c8(%rbp), %rdi
callq 0x5748
leaq -0x1c9(%rbp), %rdi
callq 0x5420
leaq -0x1a0(%rbp), %rdi
callq 0x5748
leaq -0x1a1(%rbp), %rdi
callq 0x5420
movl $0x28, %edi
callq 0x53c0
movq %rax, -0x498(%rbp)
jmp 0x4095a
movb $0x1, -0x1f2(%rbp)
leaq -0x1f1(%rbp), %rdi
movq %rdi, -0x4a0(%rbp)
callq 0x56d0
movq -0x4a0(%rbp), %rdx
leaq 0x10570(%rip), %rsi     # 0x50ef2
leaq -0x1f0(%rbp), %rdi
callq 0x299c0
jmp 0x40990
movq -0x498(%rbp), %rdi
leaq -0x1f0(%rbp), %rsi
movl $0x1, %edx
callq 0x41940
jmp 0x409aa
movq -0x358(%rbp), %rax
movb $0x0, -0x1f2(%rbp)
addq $0xc8, %rax
movq %rax, -0x4b0(%rbp)
leaq -0x219(%rbp), %rdi
movq %rdi, -0x4a8(%rbp)
callq 0x56d0
movq -0x4a8(%rbp), %rdx
leaq 0x1050c(%rip), %rsi     # 0x50ef2
leaq -0x218(%rbp), %rdi
callq 0x299c0
jmp 0x409f4
movq -0x4b0(%rbp), %rdi
leaq -0x218(%rbp), %rsi
callq 0x41980
movq %rax, -0x4b8(%rbp)
jmp 0x40a10
movq -0x4b8(%rbp), %rax
movq -0x498(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x218(%rbp), %rdi
callq 0x5748
leaq -0x219(%rbp), %rdi
callq 0x5420
leaq -0x1f0(%rbp), %rdi
callq 0x5748
leaq -0x1f1(%rbp), %rdi
callq 0x5420
leaq -0x228(%rbp), %rdi
callq 0x41a60
movq -0x3b0(%rbp), %rdi
callq 0x37920
movq %rax, -0x230(%rbp)
movq -0x230(%rbp), %rax
movq %rax, -0x228(%rbp)
movq -0x3b0(%rbp), %rdi
callq 0x37740
movq %rax, -0x238(%rbp)
leaq -0x228(%rbp), %rdi
leaq -0x238(%rbp), %rsi
callq 0x41a80
testb $0x1, %al
jne 0x40aad
jmp 0x412a1
leaq -0x228(%rbp), %rdi
callq 0x41ac0
movq %rax, %rsi
leaq -0x278(%rbp), %rdi
callq 0x377a0
jmp 0x40aca
leaq -0x258(%rbp), %rax
movq %rax, -0x4c8(%rbp)
leaq -0x299(%rbp), %rdi
movq %rdi, -0x4c0(%rbp)
callq 0x56d0
movq -0x4c0(%rbp), %rdx
movb $0x0, -0x2c2(%rbp)
movb $0x0, -0x2c3(%rbp)
leaq 0x103d8(%rip), %rsi     # 0x50edf
leaq -0x298(%rbp), %rdi
callq 0x299c0
jmp 0x40b15
movq -0x4c8(%rbp), %rdi
leaq -0x298(%rbp), %rsi
callq 0x2d6e0
movb %al, %cl
movb $0x1, %al
testb $0x1, %cl
movb %al, -0x4c9(%rbp)
jne 0x40b9b
leaq -0x258(%rbp), %rax
movq %rax, -0x4e0(%rbp)
leaq -0x2c1(%rbp), %rdi
movq %rdi, -0x4d8(%rbp)
callq 0x56d0
movq -0x4d8(%rbp), %rdx
movb $0x1, -0x2c2(%rbp)
leaq 0xf53d(%rip), %rsi      # 0x500aa
leaq -0x2c0(%rbp), %rdi
callq 0x299c0
jmp 0x40b7b
movq -0x4e0(%rbp), %rdi
movb $0x1, -0x2c3(%rbp)
leaq -0x2c0(%rbp), %rsi
callq 0x2d6e0
movb %al, -0x4c9(%rbp)
movb -0x4c9(%rbp), %al
movb %al, -0x4e1(%rbp)
testb $0x1, -0x2c3(%rbp)
jne 0x40bb2
jmp 0x40bbe
leaq -0x2c0(%rbp), %rdi
callq 0x5748
testb $0x1, -0x2c2(%rbp)
jne 0x40bc9
jmp 0x40bd5
leaq -0x2c1(%rbp), %rdi
callq 0x5420
leaq -0x298(%rbp), %rdi
callq 0x5748
leaq -0x299(%rbp), %rdi
callq 0x5420
movb -0x4e1(%rbp), %al
testb $0x1, %al
jne 0x40bfc
jmp 0x4116d
movb $0x0, -0x2c4(%rbp)
leaq -0x258(%rbp), %rax
movq %rax, -0x4f8(%rbp)
leaq -0x2e9(%rbp), %rdi
movq %rdi, -0x4f0(%rbp)
callq 0x56d0
movq -0x4f0(%rbp), %rdx
leaq 0x102ad(%rip), %rsi     # 0x50edf
leaq -0x2e8(%rbp), %rdi
callq 0x299c0
jmp 0x40c40
movq -0x4f8(%rbp), %rdi
leaq -0x2e8(%rbp), %rsi
callq 0x2d6e0
movb %al, -0x4f9(%rbp)
leaq -0x2e8(%rbp), %rdi
callq 0x5748
leaq -0x2e9(%rbp), %rdi
callq 0x5420
movb -0x4f9(%rbp), %al
testb $0x1, %al
jne 0x40c80
jmp 0x4103a
movb $0x1, -0x2c4(%rbp)
jmp 0x4103a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x412f6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x412c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40d05
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40cfc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40cf0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x88(%rbp), %rdi
callq 0x5748
leaq -0x89(%rbp), %rdi
callq 0x5420
leaq -0x60(%rbp), %rdi
callq 0x5748
leaq -0x61(%rbp), %rdi
callq 0x5420
testb $0x1, -0x62(%rbp)
jne 0x40d16
jmp 0x40d27
movq -0x3b8(%rbp), %rdi
movl $0x28, %esi
callq 0x53d0
jmp 0x412c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40d86
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40d7a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40d6e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0xd8(%rbp), %rdi
callq 0x5748
leaq -0xd9(%rbp), %rdi
callq 0x5420
leaq -0xb0(%rbp), %rdi
callq 0x5748
leaq -0xb1(%rbp), %rdi
callq 0x5420
testb $0x1, -0xb2(%rbp)
jne 0x40d9d
jmp 0x40dae
movq -0x3f8(%rbp), %rdi
movl $0x28, %esi
callq 0x53d0
jmp 0x412c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40e0d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40e01
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40df5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x128(%rbp), %rdi
callq 0x5748
leaq -0x129(%rbp), %rdi
callq 0x5420
leaq -0x100(%rbp), %rdi
callq 0x5748
leaq -0x101(%rbp), %rdi
callq 0x5420
testb $0x1, -0x102(%rbp)
jne 0x40e24
jmp 0x40e35
movq -0x420(%rbp), %rdi
movl $0x28, %esi
callq 0x53d0
jmp 0x412c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40e94
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40e88
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40e7c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x178(%rbp), %rdi
callq 0x5748
leaq -0x179(%rbp), %rdi
callq 0x5420
leaq -0x150(%rbp), %rdi
callq 0x5748
leaq -0x151(%rbp), %rdi
callq 0x5420
testb $0x1, -0x152(%rbp)
jne 0x40eab
jmp 0x40ebc
movq -0x448(%rbp), %rdi
movl $0x28, %esi
callq 0x53d0
jmp 0x412c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40f1b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40f0f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40f03
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x1c8(%rbp), %rdi
callq 0x5748
leaq -0x1c9(%rbp), %rdi
callq 0x5420
leaq -0x1a0(%rbp), %rdi
callq 0x5748
leaq -0x1a1(%rbp), %rdi
callq 0x5420
testb $0x1, -0x1a2(%rbp)
jne 0x40f32
jmp 0x40f43
movq -0x470(%rbp), %rdi
movl $0x28, %esi
callq 0x53d0
jmp 0x412c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40fa2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40f96
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x40f8a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x218(%rbp), %rdi
callq 0x5748
leaq -0x219(%rbp), %rdi
callq 0x5420
leaq -0x1f0(%rbp), %rdi
callq 0x5748
leaq -0x1f1(%rbp), %rdi
callq 0x5420
testb $0x1, -0x1f2(%rbp)
jne 0x40fb9
jmp 0x40fca
movq -0x498(%rbp), %rdi
movl $0x28, %esi
callq 0x53d0
jmp 0x412c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x4100c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
testb $0x1, -0x2c2(%rbp)
jne 0x40ff4
jmp 0x41000
leaq -0x2c1(%rbp), %rdi
callq 0x5420
leaq -0x298(%rbp), %rdi
callq 0x5748
leaq -0x299(%rbp), %rdi
callq 0x5420
jmp 0x41293
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x2e9(%rbp), %rdi
callq 0x5420
jmp 0x41293
movl $0x28, %edi
callq 0x53c0
movq %rax, -0x508(%rbp)
jmp 0x4104d
movb $0x1, -0x311(%rbp)
leaq -0x310(%rbp), %rdi
leaq -0x278(%rbp), %rsi
callq 0x5180
jmp 0x41069
movq -0x508(%rbp), %rdi
movzbl -0x2c4(%rbp), %edx
andl $0x1, %edx
leaq -0x310(%rbp), %rsi
callq 0x41940
jmp 0x41088
movq -0x358(%rbp), %rdi
movb $0x0, -0x311(%rbp)
addq $0xc8, %rdi
leaq -0x278(%rbp), %rsi
callq 0x41ae0
movq %rax, -0x510(%rbp)
jmp 0x410b2
movq -0x510(%rbp), %rax
movq -0x508(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x310(%rbp), %rdi
callq 0x5748
movq -0x358(%rbp), %rdi
movb -0x2c4(%rbp), %al
movb %al, -0x519(%rbp)
addq $0xf8, %rdi
leaq -0x278(%rbp), %rsi
callq 0x2da50
movq %rax, -0x518(%rbp)
jmp 0x410fe
movq -0x518(%rbp), %rax
movb -0x519(%rbp), %cl
andb $0x1, %cl
movb %cl, (%rax)
jmp 0x4126d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x41293
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x4114c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x310(%rbp), %rdi
callq 0x5748
testb $0x1, -0x311(%rbp)
jne 0x41157
jmp 0x41168
movq -0x508(%rbp), %rdi
movl $0x28, %esi
callq 0x53d0
jmp 0x41293
leaq -0x258(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
movl $0xa, %edx
callq 0x41bc0
movl %eax, -0x520(%rbp)
jmp 0x4118a
movl -0x520(%rbp), %eax
movl %eax, -0x318(%rbp)
movl $0x28, %edi
callq 0x53c0
movq %rax, -0x528(%rbp)
jmp 0x411a9
movb $0x1, -0x339(%rbp)
leaq -0x338(%rbp), %rdi
leaq -0x278(%rbp), %rsi
callq 0x5180
jmp 0x411c5
movq -0x528(%rbp), %rdi
movl -0x318(%rbp), %edx
leaq -0x338(%rbp), %rsi
callq 0x41c00
jmp 0x411e0
movq -0x358(%rbp), %rdi
movb $0x0, -0x339(%rbp)
addq $0x128, %rdi            # imm = 0x128
leaq -0x278(%rbp), %rsi
callq 0x41c30
movq %rax, -0x530(%rbp)
jmp 0x4120a
movq -0x530(%rbp), %rax
movq -0x528(%rbp), %rcx
movq %rcx, (%rax)
leaq -0x338(%rbp), %rdi
callq 0x5748
jmp 0x4126d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x4124f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x338(%rbp), %rdi
callq 0x5748
testb $0x1, -0x339(%rbp)
jne 0x4125a
jmp 0x4126b
movq -0x528(%rbp), %rdi
movl $0x28, %esi
callq 0x53d0
jmp 0x41293
leaq -0x278(%rbp), %rdi
callq 0x36ac0
leaq -0x228(%rbp), %rdi
xorl %esi, %esi
callq 0x41d10
movq %rax, -0x348(%rbp)
jmp 0x40a7e
leaq -0x278(%rbp), %rdi
callq 0x36ac0
jmp 0x412c6
movq -0x3a8(%rbp), %rsi
movq -0x358(%rbp), %rdi
addq $0x1a8, %rdi            # imm = 0x1A8
callq 0x5060
jmp 0x412bd
addq $0x530, %rsp            # imm = 0x530
popq %rbp
retq
movq -0x3c0(%rbp), %rdi
callq 0x5748
movq -0x3c8(%rbp), %rdi
callq 0x298b0
movq -0x3d0(%rbp), %rdi
callq 0x5748
movq -0x350(%rbp), %rdi
callq 0x3b320
movq -0x360(%rbp), %rdi
callq 0x5748
movq -0x368(%rbp), %rdi
callq 0x5748
movq -0x370(%rbp), %rdi
callq 0x5748
movq -0x378(%rbp), %rdi
callq 0x3bab0
movq -0x380(%rbp), %rdi
callq 0x2d610
movq -0x388(%rbp), %rdi
callq 0x3bad0
movq -0x390(%rbp), %rdi
callq 0x2d5f0
movq -0x398(%rbp), %rdi
callq 0x298b0
movq -0x3a0(%rbp), %rdi
callq 0x298b0
movq -0x358(%rbp), %rdi
callq 0x2d510
movq -0x38(%rbp), %rdi
callq 0x56c0
nopw (%rax,%rax)