// File: metastableB[P]Program-Dependence-Graph-Creator/./pdg.cpp
// Function: PDG::plot_ddg()
void PDG::plot_ddg(){
	std::string edges;
	for(int i = 1; i <= total_lines;i++)
		for(int j = 1; j <= total_lines;j++)
			if(g_ddg[i][j] != 0){
				if(i < j)
					edges += "("+std::to_string(i) + "," + std::to_string(j) + ")|";
				else
					edges += "("+std::to_string(i) + "," + std::to_string(j) + ")|";
			}
	std::string command = "python ./networkX/simplePlot.py \'" + edges + "\'";
	system(command.c_str());
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x210, %rsp            # imm = 0x210
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x208(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x33c0
movl $0x1, -0x2c(%rbp)
movq -0x208(%rbp), %rcx
movl -0x2c(%rbp), %eax
cmpl 0x214(%rcx), %eax
jg 0x5dac
movl $0x1, -0x30(%rbp)
movq -0x208(%rbp), %rcx
movl -0x30(%rbp), %eax
cmpl 0x214(%rcx), %eax
jg 0x5d9c
movq -0x208(%rbp), %rax
movq 0x268(%rax), %rax
movslq -0x2c(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movslq -0x30(%rbp), %rcx
cmpl $0x0, (%rax,%rcx,4)
je 0x5d8c
movl -0x2c(%rbp), %eax
cmpl -0x30(%rbp), %eax
jge 0x5bd3
movl -0x2c(%rbp), %esi
leaq -0xd0(%rbp), %rdi
callq 0x6450
jmp 0x5a2e
leaq 0x46e0(%rip), %rsi      # 0xa115
leaq -0xb0(%rbp), %rdi
leaq -0xd0(%rbp), %rdx
callq 0x6400
jmp 0x5a4a
leaq 0x46c6(%rip), %rdx      # 0xa117
leaq -0x90(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x5fe0
jmp 0x5a66
movl -0x30(%rbp), %esi
leaq -0x100(%rbp), %rdi
callq 0x6450
jmp 0x5a77
leaq -0x70(%rbp), %rdi
leaq -0x90(%rbp), %rsi
leaq -0x100(%rbp), %rdx
callq 0x6330
jmp 0x5a90
leaq 0x4682(%rip), %rdx      # 0xa119
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x5fe0
jmp 0x5aa6
leaq -0x28(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3380
jmp 0x5ab5
leaq -0x50(%rbp), %rdi
callq 0x31a0
leaq -0x70(%rbp), %rdi
callq 0x31a0
leaq -0x100(%rbp), %rdi
callq 0x31a0
leaq -0x90(%rbp), %rdi
callq 0x31a0
leaq -0xb0(%rbp), %rdi
callq 0x31a0
leaq -0xd0(%rbp), %rdi
callq 0x31a0
jmp 0x5d8a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5e5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5bc2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5bb6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5baa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5b9e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5b95
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
leaq -0x50(%rbp), %rdi
callq 0x31a0
leaq -0x70(%rbp), %rdi
callq 0x31a0
leaq -0x100(%rbp), %rdi
callq 0x31a0
leaq -0x90(%rbp), %rdi
callq 0x31a0
leaq -0xb0(%rbp), %rdi
callq 0x31a0
leaq -0xd0(%rbp), %rdi
callq 0x31a0
jmp 0x5e5f
movl -0x2c(%rbp), %esi
leaq -0x1a0(%rbp), %rdi
callq 0x6450
jmp 0x5be4
leaq 0x452a(%rip), %rsi      # 0xa115
leaq -0x180(%rbp), %rdi
leaq -0x1a0(%rbp), %rdx
callq 0x6400
jmp 0x5c00
leaq 0x4510(%rip), %rdx      # 0xa117
leaq -0x160(%rbp), %rdi
leaq -0x180(%rbp), %rsi
callq 0x5fe0
jmp 0x5c1c
movl -0x30(%rbp), %esi
leaq -0x1c0(%rbp), %rdi
callq 0x6450
jmp 0x5c2d
leaq -0x140(%rbp), %rdi
leaq -0x160(%rbp), %rsi
leaq -0x1c0(%rbp), %rdx
callq 0x6330
jmp 0x5c49
leaq 0x44c9(%rip), %rdx      # 0xa119
leaq -0x120(%rbp), %rdi
leaq -0x140(%rbp), %rsi
callq 0x5fe0
jmp 0x5c65
leaq -0x28(%rbp), %rdi
leaq -0x120(%rbp), %rsi
callq 0x3380
jmp 0x5c77
leaq -0x120(%rbp), %rdi
callq 0x31a0
leaq -0x140(%rbp), %rdi
callq 0x31a0
leaq -0x1c0(%rbp), %rdi
callq 0x31a0
leaq -0x160(%rbp), %rdi
callq 0x31a0
leaq -0x180(%rbp), %rdi
callq 0x31a0
leaq -0x1a0(%rbp), %rdi
callq 0x31a0
jmp 0x5d8a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5d79
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5d6d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5d61
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5d55
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
jmp 0x5d49
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x31a0
leaq -0x140(%rbp), %rdi
callq 0x31a0
leaq -0x1c0(%rbp), %rdi
callq 0x31a0
leaq -0x160(%rbp), %rdi
callq 0x31a0
leaq -0x180(%rbp), %rdi
callq 0x31a0
leaq -0x1a0(%rbp), %rdi
callq 0x31a0
jmp 0x5e5f
jmp 0x5d8c
jmp 0x5d8e
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x59d7
jmp 0x5d9e
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x59ba
leaq 0x4369(%rip), %rsi      # 0xa11c
leaq -0x200(%rbp), %rdi
leaq -0x28(%rbp), %rdx
callq 0x6030
jmp 0x5dc5
leaq 0x4370(%rip), %rdx      # 0xa13c
leaq -0x1e0(%rbp), %rdi
leaq -0x200(%rbp), %rsi
callq 0x5fe0
jmp 0x5de1
leaq -0x200(%rbp), %rdi
callq 0x31a0
leaq -0x1e0(%rbp), %rdi
callq 0x3130
movq %rax, %rdi
callq 0x3230
jmp 0x5e03
leaq -0x1e0(%rbp), %rdi
callq 0x31a0
leaq -0x28(%rbp), %rdi
callq 0x31a0
addq $0x210, %rsp            # imm = 0x210
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
leaq -0x200(%rbp), %rdi
callq 0x31a0
jmp 0x5e5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xd8(%rbp)
movl %eax, -0xdc(%rbp)
leaq -0x1e0(%rbp), %rdi
callq 0x31a0
leaq -0x28(%rbp), %rdi
callq 0x31a0
movq -0xd8(%rbp), %rdi
callq 0x3470
nopw %cs:(%rax,%rax)
nop