// File: /workspace/github_cpp_makefile_star2_O2/bluesky466[P]ResourcesParser/ResourcesParser.cpp
// Function: ResourcesParser::stringOfValue[abi:cxx11](Res_value const*) const
string ResourcesParser::stringOfValue(const Res_value* value) const {
	stringstream ss;
    if (value->dataType == Res_value::TYPE_NULL) {
        ss<<"(null)";
    } else if (value->dataType == Res_value::TYPE_REFERENCE) {
		ss<<"(reference) "<<getNameForId(value->data);
    } else if (value->dataType == Res_value::TYPE_ATTRIBUTE) {
		ss<<"(attribute) "<<getNameForId(value->data);
    } else if (value->dataType == Res_value::TYPE_STRING) {
		ss<<"(string) "<<getStringFromGlobalStringPool(value->data);
    } else if (value->dataType == Res_value::TYPE_FLOAT) {
        ss<<"(float) "<<*(const float*)&value->data;
    } else if (value->dataType == Res_value::TYPE_DIMENSION) {
        ss<<"(dimension) "<<stringOfComplex(value->data, false);
    } else if (value->dataType == Res_value::TYPE_FRACTION) {
        ss<<"(fraction) "<<stringOfComplex(value->data, true);
    } else if (value->dataType >= Res_value::TYPE_FIRST_COLOR_INT
            && value->dataType <= Res_value::TYPE_LAST_COLOR_INT) {
		ss<<"(color) #"<<hex<<setw(8)<<setfill('0')<<value->data;
    } else if (value->dataType == Res_value::TYPE_INT_BOOLEAN) {
        ss<<"(boolean) "<<(value->data ? "true" : "false");
    } else if (value->dataType >= Res_value::TYPE_FIRST_INT
            && value->dataType <= Res_value::TYPE_LAST_INT) {
        ss<<"(int) "<<value->data<<" or 0x"<<hex<<setw(8)<<setfill('0')<<value->data;
    } else {
		ss<<"(unknown type) "
			<<"t=0x"<<hex<<setw(2)<<setfill('0')<<(int)value->dataType<<" "
			<<"d=0x"<<hex<<setw(8)<<setfill('0')<<(int)value->data<<" "
			<<"(s=0x"<<hex<<setw(4)<<setfill('0')<<(int)value->size<<" "
			<<"r=0x"<<hex<<setw(2)<<setfill('0')<<(int)value->res0<<")";
    }
	return ss.str();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x1b0, %rsp            # imm = 0x1B0
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
leaq -0x1c8(%rbp), %rdi
callq 0x3120
movzbl 0x3(%r14), %eax
cmpq $0x6, %rax
ja 0x4e6e
leaq 0x539f(%rip), %rcx      # 0xa158
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x540f(%rip), %rsi      # 0xa1d8
leaq -0x1b8(%rbp), %rdi
callq 0x31e0
jmp 0x4f72
leaq -0x1b8(%rbp), %rdi
leaq 0x541b(%rip), %rsi      # 0xa203
callq 0x31e0
movss 0x4(%r14), %xmm0
movq %rax, %rdi
callq 0x3140
jmp 0x4f72
leaq -0x1b8(%rbp), %rdi
leaq 0x53de(%rip), %rsi      # 0xa1ec
callq 0x31e0
movq %rax, %r12
movl 0x4(%r14), %edx
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x51de
leaq -0x40(%rbp), %rsi
movq %r12, %rdi
callq 0x31b0
jmp 0x4f69
leaq -0x1b8(%rbp), %rdi
leaq 0x53b4(%rip), %rsi      # 0xa1f9
callq 0x31e0
movq %rax, %r12
movl 0x4(%r14), %edx
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x5596
leaq -0x40(%rbp), %rsi
movq %r12, %rdi
callq 0x31b0
jmp 0x4f69
movl %eax, %ecx
andb $-0x4, %cl
cmpb $0x1c, %cl
jne 0x4fa0
leaq -0x1b8(%rbp), %rdi
leaq 0x539b(%rip), %rsi      # 0xa225
callq 0x31e0
movq (%rax), %rcx
movq -0x18(%rcx), %rdx
movl 0x18(%rax,%rdx), %esi
andl $-0x4b, %esi
orl $0x8, %esi
movl %esi, 0x18(%rax,%rdx)
movq -0x18(%rcx), %rcx
movq $0x8, 0x10(%rax,%rcx)
pushq $0x30
popq %rsi
movq %rax, %rdi
callq 0x32c0
addq $0x4, %r14
movl (%r14), %esi
movq %rax, %rdi
callq 0x3100
jmp 0x4f72
leaq -0x1b8(%rbp), %rdi
leaq 0x5301(%rip), %rsi      # 0xa1df
callq 0x31e0
movq %rax, %r12
movl 0x4(%r14), %edx
leaq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x51de
leaq -0x40(%rbp), %rsi
movq %r12, %rdi
callq 0x31b0
jmp 0x4f69
leaq -0x1b8(%rbp), %rdi
leaq 0x52fa(%rip), %rsi      # 0xa20c
callq 0x31e0
movq %rax, %r15
movl 0x4(%r14), %esi
leaq -0x40(%rbp), %rdi
xorl %edx, %edx
callq 0x55f2
leaq -0x40(%rbp), %rsi
movq %r15, %rdi
callq 0x31b0
jmp 0x4f69
leaq -0x1b8(%rbp), %rdi
leaq 0x52d4(%rip), %rsi      # 0xa219
callq 0x31e0
movq %rax, %r15
movl 0x4(%r14), %esi
leaq -0x40(%rbp), %rdi
pushq $0x1
popq %rdx
callq 0x55f2
leaq -0x40(%rbp), %rsi
movq %r15, %rdi
callq 0x31b0
leaq -0x40(%rbp), %rdi
callq 0x3378
leaq -0x1b0(%rbp), %rsi
movq %rbx, %rdi
callq 0x32d0
leaq -0x1c8(%rbp), %rdi
callq 0x3150
movq %rbx, %rax
addq $0x1b0, %rsp            # imm = 0x1B0
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
cmpb $0x12, %al
jne 0x4fd6
leaq -0x1b8(%rbp), %rdi
leaq 0x527d(%rip), %rsi      # 0xa22f
callq 0x31e0
movq %rax, %rdi
cmpl $0x0, 0x4(%r14)
leaq 0x5279(%rip), %rax      # 0xa23f
leaq 0x526d(%rip), %rsi      # 0xa23a
cmoveq %rax, %rsi
jmp 0x4dd0
andb $-0x10, %al
leaq -0x1b8(%rbp), %rdi
cmpb $0x10, %al
jne 0x503c
leaq 0x525b(%rip), %rsi      # 0xa245
callq 0x31e0
movl 0x4(%r14), %esi
movq %rax, %rdi
callq 0x3100
leaq 0x5124(%rip), %rsi      # 0xa126
movq %rax, %rdi
callq 0x31e0
movq (%rax), %rcx
movq -0x18(%rcx), %rdx
movl 0x18(%rax,%rdx), %esi
andl $-0x4b, %esi
orl $0x8, %esi
movl %esi, 0x18(%rax,%rdx)
movq -0x18(%rcx), %rcx
movq $0x8, 0x10(%rax,%rcx)
pushq $0x30
popq %rsi
movq %rax, %rdi
callq 0x32c0
jmp 0x4ebc
leaq 0x5209(%rip), %rsi      # 0xa24c
callq 0x31e0
leaq 0x520d(%rip), %rsi      # 0xa25c
movq %rax, %rdi
callq 0x31e0
movq (%rax), %rcx
movq -0x18(%rcx), %rdx
movl 0x18(%rax,%rdx), %esi
andl $-0x4b, %esi
orl $0x8, %esi
movl %esi, 0x18(%rax,%rdx)
movq -0x18(%rcx), %rcx
movq $0x2, 0x10(%rax,%rcx)
pushq $0x30
popq %rsi
movq %rax, %rdi
callq 0x32c0
movzbl 0x3(%r14), %esi
movq %rax, %rdi
callq 0x3320
leaq 0x5152(%rip), %rsi      # 0xa1ea
movq %rax, %rdi
callq 0x31e0
leaq 0x51ba(%rip), %rsi      # 0xa261
movq %rax, %rdi
callq 0x31e0
movq (%rax), %rcx
movq -0x18(%rcx), %rdx
movl 0x18(%rax,%rdx), %esi
andl $-0x4b, %esi
orl $0x8, %esi
movl %esi, 0x18(%rax,%rdx)
movq -0x18(%rcx), %rcx
movq $0x8, 0x10(%rax,%rcx)
pushq $0x30
popq %rsi
movq %rax, %rdi
callq 0x32c0
movl 0x4(%r14), %esi
movq %rax, %rdi
callq 0x3320
leaq 0x50fb(%rip), %rsi      # 0xa1ea
movq %rax, %rdi
callq 0x31e0
leaq 0x5168(%rip), %rsi      # 0xa266
movq %rax, %rdi
callq 0x31e0
movq (%rax), %rcx
movq -0x18(%rcx), %rdx
movl 0x18(%rax,%rdx), %esi
andl $-0x4b, %esi
orl $0x8, %esi
movl %esi, 0x18(%rax,%rdx)
movq -0x18(%rcx), %rcx
movq $0x4, 0x10(%rax,%rcx)
pushq $0x30
popq %rsi
movq %rax, %rdi
callq 0x32c0
movzwl (%r14), %esi
movq %rax, %rdi
callq 0x3320
leaq 0x50a4(%rip), %rsi      # 0xa1ea
movq %rax, %rdi
callq 0x31e0
leaq 0x5117(%rip), %rsi      # 0xa26c
movq %rax, %rdi
callq 0x31e0
movq (%rax), %rcx
movq -0x18(%rcx), %rdx
movl 0x18(%rax,%rdx), %esi
andl $-0x4b, %esi
orl $0x8, %esi
movl %esi, 0x18(%rax,%rdx)
movq -0x18(%rcx), %rcx
movq $0x2, 0x10(%rax,%rcx)
pushq $0x30
popq %rsi
movq %rax, %rdi
callq 0x32c0
movzbl 0x2(%r14), %esi
movq %rax, %rdi
callq 0x3320
movq %rax, %rdi
leaq 0x503c(%rip), %rsi      # 0xa1dd
jmp 0x4dd0
jmp 0x51ae
jmp 0x51ae
jmp 0x51ae
jmp 0x51ae
movq %rax, %rbx
leaq -0x40(%rbp), %rdi
callq 0x3378
jmp 0x51c9
jmp 0x51c6
jmp 0x51c6
jmp 0x51c6
jmp 0x51c6
jmp 0x51c6
movq %rax, %rbx
leaq -0x1c8(%rbp), %rdi
callq 0x3150
movq %rbx, %rdi
callq 0x3340
nop