// File: bluesky466[P]ResourcesParser/ResourcesParserInterpreter.cpp
// Function: ResourcesParserInterpreter::parserEntry(unsigned int, std::shared_ptr<ResourcesParser::ResStringPool>, ResTable_entry*, Res_value*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
void ResourcesParserInterpreter::parserEntry(
		uint32_t resId,
		ResourcesParser::ResStringPoolPtr pKeys,
		ResTable_entry* pEntry,
		Res_value* pValue,
		const string& type,
		const string& tab) {
	string key = ResourcesParser::getStringFromResStringPool(pKeys, pEntry->key.index);
	if(pEntry->flags & ResTable_entry::FLAG_COMPLEX) {
		cout <<tab<<key<<endl;
		ResTable_map_entry* pMapEntry = (ResTable_map_entry*)pEntry;
		ResTable_map* pMap = (ResTable_map*)pValue;
		if(pMapEntry->parent.ident!= 0) {
			cout <<tab+"\t" <<"parent: " <<mParser->getNameForId(pMapEntry->parent.ident) <<endl;
		}

		for(int i = 0 ; i < pMapEntry->count ; i++) {
			string name = mParser->getNameForResTableMap((pMap+i)->name);

			uint32_t ident = (pMap+i)->name.ident;

			if(!ResourcesParser::isTableMapForAttrDesc((pMap+i)->name)){
				cout
					<<tab+"\t\t" <<name
					<<"(" <<*dec <<ident <<" or 0x" <<hex <<ident <<") = "
					<<mParser->stringOfValue(&(pMap+i)->value)
					<<endl;
			} else {
				cout <<tab+"\t" <<name
					<<"(" <<*dec <<ident <<" or 0x" <<hex <<ident <<") "
					<<mParser->getValueTypeForResTableMap((pMap+i)->value)
					<<endl;
			}
		}
	}else{
		if(ID_TYPE == type) {
			cout <<tab+"\t" <<key <<" (" <<*dec <<resId <<" or 0x" <<hex <<resId <<")"<<endl;
		} else {
			string value = mParser->stringOfValue(pValue);
			cout <<tab+"\t" <<key <<" (" <<*dec <<resId <<" or 0x" <<hex <<resId <<")"
				<<" = " <<value <<endl;
		}
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x360, %rsp            # imm = 0x360
movq %rdx, -0x1e8(%rbp)
movl %esi, %eax
movq -0x1e8(%rbp), %rsi
movq 0x10(%rbp), %rdx
movq %rdi, -0x8(%rbp)
movl %eax, -0xc(%rbp)
movq %rsi, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq %r9, -0x30(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x1e0(%rbp)
leaq -0x60(%rbp), %rdi
movq %rdi, -0x1d8(%rbp)
callq 0x6570
movq -0x1d8(%rbp), %rsi
movq -0x20(%rbp), %rax
movl 0x4(%rax), %edx
leaq -0x50(%rbp), %rdi
callq 0xa9b0
jmp 0x555a
leaq -0x60(%rbp), %rdi
callq 0x43a0
movq -0x20(%rbp), %rax
movzwl 0x2(%rax), %eax
andl $0x1, %eax
cmpl $0x0, %eax
je 0x5b52
movq 0x10(%rbp), %rsi
movq 0x21a46(%rip), %rdi     # 0x26fc8
callq 0x3230
movq %rax, -0x1f0(%rbp)
jmp 0x5590
movq -0x1f0(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3230
movq %rax, -0x1f8(%rbp)
jmp 0x55a9
movq -0x1f8(%rbp), %rdi
movq 0x219f1(%rip), %rsi     # 0x26fa8
callq 0x3290
jmp 0x55be
movq -0x20(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x78(%rbp), %rax
cmpl $0x0, 0x8(%rax)
je 0x56f9
movq 0x10(%rbp), %rsi
leaq 0x14b3d(%rip), %rdx     # 0x1a124
leaq -0xa0(%rbp), %rdi
callq 0x69e0
jmp 0x55f5
movq 0x219cc(%rip), %rdi     # 0x26fc8
leaq -0xa0(%rbp), %rsi
callq 0x3230
movq %rax, -0x200(%rbp)
jmp 0x5611
movq -0x200(%rbp), %rdi
leaq 0x14afb(%rip), %rsi     # 0x1a11a
callq 0x3260
movq %rax, -0x208(%rbp)
jmp 0x562d
movq -0x1e0(%rbp), %rax
movq (%rax), %rsi
movq -0x78(%rbp), %rax
movl 0x8(%rax), %edx
leaq -0xc0(%rbp), %rdi
callq 0x90e0
jmp 0x564c
movq -0x208(%rbp), %rdi
leaq -0xc0(%rbp), %rsi
callq 0x3230
movq %rax, -0x210(%rbp)
jmp 0x5668
movq -0x210(%rbp), %rdi
movq 0x21932(%rip), %rsi     # 0x26fa8
callq 0x3290
jmp 0x567d
leaq -0xc0(%rbp), %rdi
callq 0x34a8
leaq -0xa0(%rbp), %rdi
callq 0x34a8
jmp 0x56f9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x60(%rbp), %rdi
callq 0x43a0
jmp 0x5e96
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x5e8d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x56e8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0xc0(%rbp), %rdi
callq 0x34a8
leaq -0xa0(%rbp), %rdi
callq 0x34a8
jmp 0x5e8d
movl $0x0, -0xc4(%rbp)
movl -0xc4(%rbp), %eax
movq -0x78(%rbp), %rcx
cmpl 0xc(%rcx), %eax
jae 0x5b4d
movq -0x1e0(%rbp), %rax
movq (%rax), %rsi
movq -0x80(%rbp), %rax
movslq -0xc4(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
leaq (%rax,%rcx,4), %rdx
leaq -0xe8(%rbp), %rdi
callq 0xafb0
jmp 0x5741
movq -0x80(%rbp), %rax
movslq -0xc4(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
movl (%rax,%rcx,4), %eax
movl %eax, -0xec(%rbp)
movq -0x80(%rbp), %rax
movslq -0xc4(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
leaq (%rax,%rcx,4), %rdi
callq 0xb340
movb %al, -0x211(%rbp)
jmp 0x5779
movb -0x211(%rbp), %al
testb $0x1, %al
jne 0x595e
jmp 0x5789
movq 0x10(%rbp), %rsi
leaq 0x1498f(%rip), %rdx     # 0x1a123
leaq -0x110(%rbp), %rdi
callq 0x69e0
jmp 0x57a2
movq 0x2181f(%rip), %rdi     # 0x26fc8
leaq -0x110(%rbp), %rsi
callq 0x3230
movq %rax, -0x220(%rbp)
jmp 0x57be
movq -0x220(%rbp), %rdi
leaq -0xe8(%rbp), %rsi
callq 0x3230
movq %rax, -0x228(%rbp)
jmp 0x57da
movq -0x228(%rbp), %rdi
leaq 0x1494b(%rip), %rsi     # 0x1a133
callq 0x3260
movq %rax, -0x230(%rbp)
jmp 0x57f6
movq -0x230(%rbp), %rdi
leaq 0x129c(%rip), %rsi      # 0x6aa0
callq 0x30b0
movq %rax, -0x238(%rbp)
jmp 0x5812
movq -0x238(%rbp), %rdi
movl -0xec(%rbp), %esi
callq 0x3340
movq %rax, -0x240(%rbp)
jmp 0x582d
movq -0x240(%rbp), %rdi
leaq 0x148eb(%rip), %rsi     # 0x1a126
callq 0x3260
movq %rax, -0x248(%rbp)
jmp 0x5849
movq -0x248(%rbp), %rdi
leaq 0x1279(%rip), %rsi      # 0x6ad0
callq 0x30b0
movq %rax, -0x250(%rbp)
jmp 0x5865
movq -0x250(%rbp), %rdi
movl -0xec(%rbp), %esi
callq 0x3340
movq %rax, -0x258(%rbp)
jmp 0x5880
movq -0x258(%rbp), %rdi
leaq 0x1489f(%rip), %rsi     # 0x1a12d
callq 0x3260
movq %rax, -0x260(%rbp)
jmp 0x589c
movq -0x1e0(%rbp), %rax
movq (%rax), %rsi
movq -0x80(%rbp), %rax
movslq -0xc4(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
leaq 0x4(%rax,%rcx,4), %rdx
leaq -0x130(%rbp), %rdi
callq 0x86f0
jmp 0x58c8
movq -0x260(%rbp), %rdi
leaq -0x130(%rbp), %rsi
callq 0x3230
movq %rax, -0x268(%rbp)
jmp 0x58e4
movq -0x268(%rbp), %rdi
movq 0x216b6(%rip), %rsi     # 0x26fa8
callq 0x3290
jmp 0x58f9
leaq -0x130(%rbp), %rdi
callq 0x34a8
leaq -0x110(%rbp), %rdi
callq 0x34a8
jmp 0x5b1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x5b3c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x594d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x130(%rbp), %rdi
callq 0x34a8
leaq -0x110(%rbp), %rdi
callq 0x34a8
jmp 0x5b3c
movq 0x10(%rbp), %rsi
leaq 0x147bb(%rip), %rdx     # 0x1a124
leaq -0x150(%rbp), %rdi
callq 0x69e0
jmp 0x5977
movq 0x2164a(%rip), %rdi     # 0x26fc8
leaq -0x150(%rbp), %rsi
callq 0x3230
movq %rax, -0x270(%rbp)
jmp 0x5993
movq -0x270(%rbp), %rdi
leaq -0xe8(%rbp), %rsi
callq 0x3230
movq %rax, -0x278(%rbp)
jmp 0x59af
movq -0x278(%rbp), %rdi
leaq 0x14776(%rip), %rsi     # 0x1a133
callq 0x3260
movq %rax, -0x280(%rbp)
jmp 0x59cb
movq -0x280(%rbp), %rdi
leaq 0x10c7(%rip), %rsi      # 0x6aa0
callq 0x30b0
movq %rax, -0x288(%rbp)
jmp 0x59e7
movq -0x288(%rbp), %rdi
movl -0xec(%rbp), %esi
callq 0x3340
movq %rax, -0x290(%rbp)
jmp 0x5a02
movq -0x290(%rbp), %rdi
leaq 0x14716(%rip), %rsi     # 0x1a126
callq 0x3260
movq %rax, -0x298(%rbp)
jmp 0x5a1e
movq -0x298(%rbp), %rdi
leaq 0x10a4(%rip), %rsi      # 0x6ad0
callq 0x30b0
movq %rax, -0x2a0(%rbp)
jmp 0x5a3a
movq -0x2a0(%rbp), %rdi
movl -0xec(%rbp), %esi
callq 0x3340
movq %rax, -0x2a8(%rbp)
jmp 0x5a55
movq -0x2a8(%rbp), %rdi
leaq 0x14747(%rip), %rsi     # 0x1a1aa
callq 0x3260
movq %rax, -0x2b0(%rbp)
jmp 0x5a71
movq -0x1e0(%rbp), %rax
movq (%rax), %rsi
movq -0x80(%rbp), %rax
movslq -0xc4(%rbp), %rcx
leaq (%rcx,%rcx,2), %rcx
leaq 0x4(%rax,%rcx,4), %rdx
leaq -0x170(%rbp), %rdi
callq 0xb370
jmp 0x5a9d
movq -0x2b0(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0x3230
movq %rax, -0x2b8(%rbp)
jmp 0x5ab9
movq -0x2b8(%rbp), %rdi
movq 0x214e1(%rip), %rsi     # 0x26fa8
callq 0x3290
jmp 0x5ace
leaq -0x170(%rbp), %rdi
callq 0x34a8
leaq -0x150(%rbp), %rdi
callq 0x34a8
jmp 0x5b1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x5b0e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x170(%rbp), %rdi
callq 0x34a8
leaq -0x150(%rbp), %rdi
callq 0x34a8
jmp 0x5b3c
leaq -0xe8(%rbp), %rdi
callq 0x34a8
movl -0xc4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc4(%rbp)
jmp 0x5703
leaq -0xe8(%rbp), %rdi
callq 0x34a8
jmp 0x5e8d
jmp 0x5e7b
movq -0x30(%rbp), %rsi
leaq 0x2189b(%rip), %rdi     # 0x273f8
callq 0x65c0
testb $0x1, %al
jne 0x5b6b
jmp 0x5cb8
movq 0x10(%rbp), %rsi
leaq 0x145ae(%rip), %rdx     # 0x1a124
leaq -0x190(%rbp), %rdi
callq 0x69e0
jmp 0x5b84
movq 0x2143d(%rip), %rdi     # 0x26fc8
leaq -0x190(%rbp), %rsi
callq 0x3230
movq %rax, -0x2c0(%rbp)
jmp 0x5ba0
movq -0x2c0(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3230
movq %rax, -0x2c8(%rbp)
jmp 0x5bb9
movq -0x2c8(%rbp), %rdi
leaq 0x1456b(%rip), %rsi     # 0x1a132
callq 0x3260
movq %rax, -0x2d0(%rbp)
jmp 0x5bd5
movq -0x2d0(%rbp), %rdi
leaq 0xebd(%rip), %rsi       # 0x6aa0
callq 0x30b0
movq %rax, -0x2d8(%rbp)
jmp 0x5bf1
movq -0x2d8(%rbp), %rdi
movl -0xc(%rbp), %esi
callq 0x3340
movq %rax, -0x2e0(%rbp)
jmp 0x5c09
movq -0x2e0(%rbp), %rdi
leaq 0x1450f(%rip), %rsi     # 0x1a126
callq 0x3260
movq %rax, -0x2e8(%rbp)
jmp 0x5c25
movq -0x2e8(%rbp), %rdi
leaq 0xe9d(%rip), %rsi       # 0x6ad0
callq 0x30b0
movq %rax, -0x2f0(%rbp)
jmp 0x5c41
movq -0x2f0(%rbp), %rdi
movl -0xc(%rbp), %esi
callq 0x3340
movq %rax, -0x2f8(%rbp)
jmp 0x5c59
movq -0x2f8(%rbp), %rdi
leaq 0x14537(%rip), %rsi     # 0x1a19e
callq 0x3260
movq %rax, -0x300(%rbp)
jmp 0x5c75
movq -0x300(%rbp), %rdi
movq 0x21325(%rip), %rsi     # 0x26fa8
callq 0x3290
jmp 0x5c8a
leaq -0x190(%rbp), %rdi
callq 0x34a8
jmp 0x5e79
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x190(%rbp), %rdi
callq 0x34a8
jmp 0x5e8d
movq -0x1e0(%rbp), %rax
movq (%rax), %rsi
movq -0x28(%rbp), %rdx
leaq -0x1b0(%rbp), %rdi
callq 0x86f0
jmp 0x5cd4
movq 0x10(%rbp), %rsi
leaq 0x14445(%rip), %rdx     # 0x1a124
leaq -0x1d0(%rbp), %rdi
callq 0x69e0
jmp 0x5ced
movq 0x212d4(%rip), %rdi     # 0x26fc8
leaq -0x1d0(%rbp), %rsi
callq 0x3230
movq %rax, -0x308(%rbp)
jmp 0x5d09
movq -0x308(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3230
movq %rax, -0x310(%rbp)
jmp 0x5d22
movq -0x310(%rbp), %rdi
leaq 0x14402(%rip), %rsi     # 0x1a132
callq 0x3260
movq %rax, -0x318(%rbp)
jmp 0x5d3e
movq -0x318(%rbp), %rdi
leaq 0xd54(%rip), %rsi       # 0x6aa0
callq 0x30b0
movq %rax, -0x320(%rbp)
jmp 0x5d5a
movq -0x320(%rbp), %rdi
movl -0xc(%rbp), %esi
callq 0x3340
movq %rax, -0x328(%rbp)
jmp 0x5d72
movq -0x328(%rbp), %rdi
leaq 0x143a6(%rip), %rsi     # 0x1a126
callq 0x3260
movq %rax, -0x330(%rbp)
jmp 0x5d8e
movq -0x330(%rbp), %rdi
leaq 0xd34(%rip), %rsi       # 0x6ad0
callq 0x30b0
movq %rax, -0x338(%rbp)
jmp 0x5daa
movq -0x338(%rbp), %rdi
movl -0xc(%rbp), %esi
callq 0x3340
movq %rax, -0x340(%rbp)
jmp 0x5dc2
movq -0x340(%rbp), %rdi
leaq 0x143ce(%rip), %rsi     # 0x1a19e
callq 0x3260
movq %rax, -0x348(%rbp)
jmp 0x5dde
movq -0x348(%rbp), %rdi
leaq 0x14342(%rip), %rsi     # 0x1a12e
callq 0x3260
movq %rax, -0x350(%rbp)
jmp 0x5dfa
movq -0x350(%rbp), %rdi
leaq -0x1b0(%rbp), %rsi
callq 0x3230
movq %rax, -0x358(%rbp)
jmp 0x5e16
movq -0x358(%rbp), %rdi
movq 0x21184(%rip), %rsi     # 0x26fa8
callq 0x3290
jmp 0x5e2b
leaq -0x1d0(%rbp), %rdi
callq 0x34a8
leaq -0x1b0(%rbp), %rdi
callq 0x34a8
jmp 0x5e79
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
jmp 0x5e6b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x68(%rbp)
movl %eax, -0x6c(%rbp)
leaq -0x1d0(%rbp), %rdi
callq 0x34a8
leaq -0x1b0(%rbp), %rdi
callq 0x34a8
jmp 0x5e8d
jmp 0x5e7b
leaq -0x50(%rbp), %rdi
callq 0x34a8
addq $0x360, %rsp            # imm = 0x360
popq %rbp
retq
leaq -0x50(%rbp), %rdi
callq 0x34a8
movq -0x68(%rbp), %rdi
callq 0x3450
nop