// File: /workspace/github_cpp_makefile_star2_O1/gvaumour[P]cache-simulator/src/common.cc
// Function: splitAddr_Bytes[abi:cxx11](unsigned long)
vector<string> splitAddr_Bytes(uint64_t a)
{
	stringstream ss;
	ss << std::hex << a;
   	string addr = ss.str();
	while(addr.size() < 16)
		addr = string(1,'0') + addr;

	vector<string> result;
	for(unsigned i = 0 ; i < addr.size(); i+=2)
	{
		stringstream ss1;
		ss1 << addr.at(i);
		ss1 << addr.at(i+1);
		result.push_back(ss1.str());
	}
	return result;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x358, %rsp            # imm = 0x358
movq %rsi, %rbx
movq %rdi, (%rsp)
leaq 0x1d0(%rsp), %rdi
callq 0x5210
leaq 0x1e0(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
movl 0x1f8(%rsp,%rax), %ecx
andl $-0x4b, %ecx
orl $0x8, %ecx
movl %ecx, 0x1f8(%rsp,%rax)
movq %rbx, %rsi
callq 0x51e0
leaq 0x1e8(%rsp), %rsi
leaq 0x8(%rsp), %rdi
callq 0x54f0
cmpq $0xf, 0x10(%rsp)
leaq 0x38(%rsp), %r12
ja 0x2eafb
leaq 0x58(%rsp), %r13
leaq 0x28(%rsp), %rbx
leaq 0x8(%rsp), %r14
leaq 0x48(%rsp), %r15
movq %r12, 0x28(%rsp)
movl $0x1, %esi
movq %rbx, %rdi
movl $0x30, %edx
callq 0x5370
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x5100
movq %r13, 0x48(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x2eaa6
movq %rdx, 0x48(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x58(%rsp)
jmp 0x2eaae
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x50(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %r14, %rdi
movq %r15, %rsi
callq 0x53e0
movq 0x48(%rsp), %rdi
cmpq %r13, %rdi
je 0x2eae0
callq 0x52a0
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x2eaef
callq 0x52a0
cmpq $0x10, 0x10(%rsp)
jb 0x2ea5a
xorps %xmm0, %xmm0
movq (%rsp), %rax
movups %xmm0, (%rax)
movq $0x0, 0x10(%rax)
cmpq $0x0, 0x10(%rsp)
je 0x2ebe7
leaq 0x58(%rsp), %r14
movl $0x2, %ebx
xorl %r15d, %r15d
leaq 0x48(%rsp), %r13
leaq 0x28(%rsp), %rbp
movq %r13, %rdi
callq 0x5210
movq 0x10(%rsp), %rdx
cmpq %r15, %rdx
jbe 0x2ec31
movq 0x8(%rsp), %rax
movb (%rax,%r15), %al
movb %al, 0x28(%rsp)
movl $0x1, %edx
movq %r14, %rdi
movq %rbp, %rsi
callq 0x5350
leal -0x1(%rbx), %r15d
movq 0x10(%rsp), %rdx
cmpq %r15, %rdx
jbe 0x2ec31
movq 0x8(%rsp), %rax
movb (%rax,%r15), %al
movb %al, 0x28(%rsp)
movl $0x1, %edx
movq %r14, %rdi
movq %rbp, %rsi
callq 0x5350
movq %rbp, %rdi
leaq 0x60(%rsp), %rsi
callq 0x54f0
movq (%rsp), %rdi
movq %rbp, %rsi
callq 0x3029a
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x2ebba
callq 0x52a0
movq %r13, %rdi
movq 0x163d4(%rip), %rsi     # 0x44f98
callq 0x5230
leaq 0xc8(%rsp), %rdi
callq 0x5120
movl %ebx, %r15d
addl $0x2, %ebx
cmpq %r15, 0x10(%rsp)
ja 0x2eb30
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2ebfa
callq 0x52a0
movq 0x16397(%rip), %rsi     # 0x44f98
leaq 0x1d0(%rsp), %rdi
callq 0x5230
leaq 0x250(%rsp), %rdi
callq 0x5120
movq (%rsp), %rax
addq $0x358, %rsp            # imm = 0x358
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x8620(%rip), %rdi      # 0x37258
movq %r15, %rsi
xorl %eax, %eax
callq 0x5480
jmp 0x2ec44
movq %rax, %r14
jmp 0x2ecbc
movq %rax, %r14
jmp 0x2eca9
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x2eca9
callq 0x52a0
jmp 0x2eca9
movq %rax, %r14
jmp 0x2eca0
jmp 0x2ec7f
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x2ec82
callq 0x52a0
jmp 0x2ec82
jmp 0x2ec7f
movq %rax, %r14
movq 0x1630f(%rip), %rsi     # 0x44f98
leaq 0x48(%rsp), %rdi
callq 0x5230
leaq 0xc8(%rsp), %rdi
callq 0x5120
movq (%rsp), %rdi
callq 0xc830
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2ecbc
callq 0x52a0
movq 0x162d5(%rip), %rsi     # 0x44f98
leaq 0x1d0(%rsp), %rdi
callq 0x5230
leaq 0x250(%rsp), %rdi
callq 0x5120
movq %r14, %rdi
callq 0x55a0