// File: /workspace/github_cpp_makefile_star2_O1/bluesky466[P]ResourcesParser/main.cpp
// Function: main
int main(int argc, char *argv[]) {
	const char* path = getArgv("-p", argv, argc);
	const char* type = getArgv("-t", argv, argc);
	const char* id = getArgv("-i", argv, argc);
	int all = findArgvIndex("-a", argv, argc);

	if(nullptr == path) {
		printHelp();
		return -1;
	} else if(getArgv("-h", argv, argc) != nullptr) {
		printHelp();
	}

	ResourcesParser parser(path);
	ResourcesParserInterpreter interpreter(&parser);

	if(all >= 0) {
		interpreter.parserResource(ResourcesParserInterpreter::ALL_TYPE);
	}

	if(type) {
		interpreter.parserResource(type);
	}

	if(id) {
		interpreter.parserId(id);
	}
	return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xe8, %rsp
movq %rsi, %r13
movl %edi, %ebx
leaq 0x7708(%rip), %rdi      # 0xb004
movl %ebx, %edx
callq 0x3b1f
movq %rax, -0x70(%rbp)
leaq 0x76f9(%rip), %rdi      # 0xb007
movq %r13, %rsi
movl %ebx, %edx
callq 0x3b1f
movq %rax, -0x68(%rbp)
leaq 0x76e7(%rip), %rdi      # 0xb00a
movq %r13, %rsi
movl %ebx, %edx
callq 0x3b1f
movq %rax, -0x60(%rbp)
testl %ebx, %ebx
movl %ebx, -0x34(%rbp)
jle 0x396c
movl %ebx, %r15d
decq %r15
xorl %r12d, %r12d
leaq 0x76c5(%rip), %rbx      # 0xb00d
movq (%r13,%r12,8), %rsi
movq %rbx, %rdi
callq 0x3280
testl %eax, %eax
sete %r14b
je 0x396f
leaq 0x1(%r12), %rax
cmpq %r12, %r15
movq %rax, %r12
jne 0x3948
jmp 0x396f
xorl %r14d, %r14d
movq -0x70(%rbp), %rbx
testq %rbx, %rbx
je 0x3abb
leaq 0x768d(%rip), %rdi      # 0xb010
movq %r13, %rsi
movl -0x34(%rbp), %edx
callq 0x3b1f
testq %rax, %rax
je 0x3998
callq 0x3bde
leaq -0x48(%rbp), %r12
movq %r12, -0x10(%r12)
movq %rbx, %rdi
callq 0x30e0
movq %rbx, %rdx
addq %rax, %rdx
leaq -0x58(%rbp), %rdi
movq %rbx, %rsi
callq 0x3efc
movq -0x68(%rbp), %r15
leaq -0x108(%rbp), %rbx
leaq -0x58(%rbp), %rsi
movq %rbx, %rdi
callq 0x6570
movq -0x58(%rbp), %rdi
cmpq %r12, %rdi
je 0x39e0
callq 0x31d0
movq %rbx, -0x30(%rbp)
testb %r14b, %r14b
je 0x39f9
leaq 0xb7f0(%rip), %rsi      # 0xf1e0
leaq -0x30(%rbp), %rdi
callq 0x3f98
testq %r15, %r15
movq -0x60(%rbp), %r14
je 0x3a3d
leaq -0x58(%rbp), %rbx
movq %r12, (%rbx)
movq %r15, %rdi
callq 0x30e0
movq %r15, %rdx
addq %rax, %rdx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x3efc
leaq -0x30(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x3f98
movq -0x58(%rbp), %rdi
cmpq %r12, %rdi
je 0x3a3d
callq 0x31d0
testq %r14, %r14
je 0x3a7d
leaq -0x58(%rbp), %rbx
movq %r12, (%rbx)
movq %r14, %rdi
callq 0x30e0
movq %r14, %rdx
addq %rax, %rdx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x3efc
leaq -0x30(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x4e50
movq -0x58(%rbp), %rdi
cmpq %r12, %rdi
je 0x3a7d
callq 0x31d0
movq -0x88(%rbp), %rdi
testq %rdi, %rdi
je 0x3a8e
callq 0x31d0
leaq -0xb8(%rbp), %rdi
callq 0x3d94
leaq -0xe8(%rbp), %rbx
movq %rbx, %rdi
callq 0x3e66
movq -0x8(%rbx), %rdi
testq %rdi, %rdi
je 0x3ab7
callq 0x3dfa
xorl %eax, %eax
jmp 0x3ac5
callq 0x3bde
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
addq $0xe8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x3af0
jmp 0x3add
jmp 0x3af0
movq %rax, %rbx
movq -0x58(%rbp), %rdi
cmpq %r12, %rdi
je 0x3af3
callq 0x31d0
jmp 0x3af3
movq %rax, %rbx
leaq -0x108(%rbp), %rdi
callq 0x3d42
jmp 0x3b17
movq %rax, %rbx
movq -0x58(%rbp), %rdi
cmpq %r12, %rdi
je 0x3b17
callq 0x31d0
jmp 0x3b17
movq %rax, %rbx
movq %rbx, %rdi
callq 0x3340