// File: mehrangoli[P]Static-Data-Extractor/SCmain.cpp
// Function: ScMain::find_module_var(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
NT ScMain:: find_module_var (string line){
	NT NameType;
	vector<string> split_line = split(line, ' ');
	remove_element_vector(split_line, "");
	int index_var = find_in_vector(split_line, ";");
	
	if (index_var >=0)
		NameType.first = replace_first_occurrence(split_line[index_var],";","");
	else
		NameType.first = replace_first_occurrence(split_line[1],";","");
		
	NameType.second = split_line[0];
	filter_element(NameType.first, {"*","&","["});
	return NameType;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x310, %rsp            # imm = 0x310
movq %rdx, -0x230(%rbp)
movq %rdi, -0x240(%rbp)
movq %rdi, %rax
movq %rax, -0x238(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movb $0x0, -0x19(%rbp)
callq 0xe2f0
movq -0x230(%rbp), %rsi
leaq -0x38(%rbp), %rdi
movl $0x20, %edx
callq 0x10ec0
jmp 0x9f1f
leaq -0x69(%rbp), %rdi
movq %rdi, -0x248(%rbp)
callq 0x3430
movq -0x248(%rbp), %rdx
leaq 0xd5b5(%rip), %rsi      # 0x174f2
leaq -0x68(%rbp), %rdi
callq 0x6100
jmp 0x9f48
leaq -0x38(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x11350
jmp 0x9f57
leaq -0x68(%rbp), %rdi
callq 0x3190
leaq -0x69(%rbp), %rdi
callq 0x32a0
leaq -0x88(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0xe5d0
jmp 0x9f7b
leaq -0xa9(%rbp), %rdi
movq %rdi, -0x250(%rbp)
callq 0x3430
movq -0x250(%rbp), %rdx
leaq 0xd4dd(%rip), %rsi      # 0x17479
leaq -0xa8(%rbp), %rdi
callq 0x6100
jmp 0x9faa
leaq -0x88(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x11260
movl %eax, -0x254(%rbp)
jmp 0x9fc5
leaq -0xa8(%rbp), %rdi
callq 0x3190
leaq -0xa9(%rbp), %rdi
callq 0x32a0
leaq -0x88(%rbp), %rdi
callq 0x6270
movl -0x254(%rbp), %eax
movl %eax, -0x70(%rbp)
cmpl $0x0, -0x70(%rbp)
jl 0xa1d8
movslq -0x70(%rbp), %rsi
leaq -0x38(%rbp), %rdi
callq 0xe270
movq %rax, -0x268(%rbp)
leaq -0xf1(%rbp), %rdi
movq %rdi, -0x260(%rbp)
callq 0x3430
movq -0x260(%rbp), %rdx
leaq 0xd448(%rip), %rsi      # 0x17479
leaq -0xf0(%rbp), %rdi
callq 0x6100
jmp 0xa03f
leaq -0x119(%rbp), %rdi
movq %rdi, -0x270(%rbp)
callq 0x3430
movq -0x270(%rbp), %rdx
leaq 0xd492(%rip), %rsi      # 0x174f2
leaq -0x118(%rbp), %rdi
callq 0x6100
jmp 0xa06e
movq -0x268(%rbp), %rsi
leaq -0xd0(%rbp), %rdi
leaq -0xf0(%rbp), %rdx
leaq -0x118(%rbp), %rcx
callq 0x11030
jmp 0xa091
movq -0x240(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0x32d0
leaq -0xd0(%rbp), %rdi
callq 0x3190
leaq -0x118(%rbp), %rdi
callq 0x3190
leaq -0x119(%rbp), %rdi
callq 0x32a0
leaq -0xf0(%rbp), %rdi
callq 0x3190
leaq -0xf1(%rbp), %rdi
callq 0x32a0
jmp 0xa31c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa67f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa119
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x3190
leaq -0x69(%rbp), %rdi
callq 0x32a0
jmp 0xa658
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa658
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa15e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0xa8(%rbp), %rdi
callq 0x3190
leaq -0xa9(%rbp), %rdi
callq 0x32a0
leaq -0x88(%rbp), %rdi
callq 0x6270
jmp 0xa658
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa1c7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa1af
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x118(%rbp), %rdi
callq 0x3190
leaq -0x119(%rbp), %rdi
callq 0x32a0
leaq -0xf0(%rbp), %rdi
callq 0x3190
leaq -0xf1(%rbp), %rdi
callq 0x32a0
jmp 0xa658
leaq -0x38(%rbp), %rdi
movl $0x1, %esi
callq 0xe270
movq %rax, -0x280(%rbp)
leaq -0x161(%rbp), %rdi
movq %rdi, -0x278(%rbp)
callq 0x3430
movq -0x278(%rbp), %rdx
leaq 0xd26b(%rip), %rsi      # 0x17479
leaq -0x160(%rbp), %rdi
callq 0x6100
jmp 0xa21c
leaq -0x189(%rbp), %rdi
movq %rdi, -0x288(%rbp)
callq 0x3430
movq -0x288(%rbp), %rdx
leaq 0xd2b5(%rip), %rsi      # 0x174f2
leaq -0x188(%rbp), %rdi
callq 0x6100
jmp 0xa24b
movq -0x280(%rbp), %rsi
leaq -0x140(%rbp), %rdi
leaq -0x160(%rbp), %rdx
leaq -0x188(%rbp), %rcx
callq 0x11030
jmp 0xa26e
movq -0x240(%rbp), %rdi
leaq -0x140(%rbp), %rsi
callq 0x32d0
leaq -0x140(%rbp), %rdi
callq 0x3190
leaq -0x188(%rbp), %rdi
callq 0x3190
leaq -0x189(%rbp), %rdi
callq 0x32a0
leaq -0x160(%rbp), %rdi
callq 0x3190
leaq -0x161(%rbp), %rdi
callq 0x32a0
jmp 0xa31c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa30b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa2f3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x188(%rbp), %rdi
callq 0x3190
leaq -0x189(%rbp), %rdi
callq 0x32a0
leaq -0x160(%rbp), %rdi
callq 0x3190
leaq -0x161(%rbp), %rdi
callq 0x32a0
jmp 0xa658
xorl %eax, %eax
movl %eax, %esi
leaq -0x38(%rbp), %rdi
callq 0xe270
movq -0x240(%rbp), %rdi
movq %rax, %rsi
addq $0x20, %rdi
callq 0x3030
jmp 0xa33e
movq -0x240(%rbp), %rax
movq %rax, -0x2a0(%rbp)
movb $0x1, -0x224(%rbp)
leaq -0x218(%rbp), %rax
movq %rax, -0x298(%rbp)
movq %rax, -0x220(%rbp)
leaq -0x221(%rbp), %rdi
movq %rdi, -0x290(%rbp)
callq 0x3430
movq -0x298(%rbp), %rdi
movq -0x290(%rbp), %rdx
leaq 0xcf72(%rip), %rsi      # 0x17302
callq 0x6100
jmp 0xa397
leaq -0x1f8(%rbp), %rax
movq %rax, -0x2b0(%rbp)
movq %rax, -0x220(%rbp)
leaq -0x222(%rbp), %rdi
movq %rdi, -0x2a8(%rbp)
callq 0x3430
movq -0x2b0(%rbp), %rdi
movq -0x2a8(%rbp), %rdx
leaq 0xcf30(%rip), %rsi      # 0x17304
callq 0x6100
jmp 0xa3db
leaq -0x1d8(%rbp), %rax
movq %rax, -0x2c0(%rbp)
movq %rax, -0x220(%rbp)
leaq -0x223(%rbp), %rdi
movq %rdi, -0x2b8(%rbp)
callq 0x3430
movq -0x2c0(%rbp), %rdi
movq -0x2b8(%rbp), %rdx
leaq 0xd06f(%rip), %rsi      # 0x17487
callq 0x6100
jmp 0xa41f
movb $0x0, -0x224(%rbp)
leaq -0x218(%rbp), %rax
movq %rax, -0x1b8(%rbp)
movq $0x3, -0x1b0(%rbp)
leaq -0x225(%rbp), %rdi
movq %rdi, -0x2c8(%rbp)
callq 0x61b0
movq -0x2c8(%rbp), %rcx
movq -0x1b8(%rbp), %rsi
movq -0x1b0(%rbp), %rdx
leaq -0x1a8(%rbp), %rdi
callq 0x61d0
jmp 0xa475
movq -0x2a0(%rbp), %rdi
leaq -0x1a8(%rbp), %rsi
callq 0x11490
jmp 0xa48a
leaq -0x1a8(%rbp), %rdi
callq 0x6270
leaq -0x225(%rbp), %rdi
callq 0x6250
leaq -0x218(%rbp), %rax
movq %rax, -0x2d8(%rbp)
addq $0x60, %rax
movq %rax, -0x2d0(%rbp)
movq -0x2d0(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x2e0(%rbp)
callq 0x3190
movq -0x2d8(%rbp), %rcx
movq -0x2e0(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x2d0(%rbp)
jne 0xa4bb
leaq -0x223(%rbp), %rdi
callq 0x32a0
leaq -0x222(%rbp), %rdi
callq 0x32a0
leaq -0x221(%rbp), %rdi
callq 0x32a0
movb $0x1, -0x19(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x6270
testb $0x1, -0x19(%rbp)
jne 0xa66f
jmp 0xa663
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa5f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa5e6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa5da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0xa582
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x1a8(%rbp), %rdi
callq 0x6270
leaq -0x225(%rbp), %rdi
callq 0x6250
leaq -0x218(%rbp), %rax
movq %rax, -0x2f0(%rbp)
addq $0x60, %rax
movq %rax, -0x2e8(%rbp)
movq -0x2e8(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x2f8(%rbp)
callq 0x3190
movq -0x2f0(%rbp), %rcx
movq -0x2f8(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x2e8(%rbp)
jne 0xa5a7
jmp 0xa5da
leaq -0x223(%rbp), %rdi
callq 0x32a0
leaq -0x222(%rbp), %rdi
callq 0x32a0
leaq -0x221(%rbp), %rdi
callq 0x32a0
testb $0x1, -0x224(%rbp)
jne 0xa609
jmp 0xa656
movq -0x220(%rbp), %rax
leaq -0x218(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x300(%rbp)
je 0xa654
movq -0x300(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x308(%rbp)
callq 0x3190
movq -0x308(%rbp), %rax
leaq -0x218(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x300(%rbp)
jne 0xa623
jmp 0xa656
jmp 0xa658
leaq -0x38(%rbp), %rdi
callq 0x6270
jmp 0xa67f
movq -0x240(%rbp), %rdi
callq 0x6740
movq -0x238(%rbp), %rax
addq $0x310, %rsp            # imm = 0x310
popq %rbp
retq
movq -0x240(%rbp), %rdi
callq 0x6740
movq -0x40(%rbp), %rdi
callq 0x3420
nopw %cs:(%rax,%rax)