// File: /workspace/github_c_makefile_star2_O0/System-Glitch[P]ESGILinter-C/src/test.c
// Function: print_function
static void print_function(function_t *function, unsigned int tabs) {
	if(function != NULL) {
		for(unsigned int j = 0 ; j < tabs ; j++)
			printf("\t");
		printf("      %sName:         %s%s\n", COLOR_CYAN, FORMAT_RESET, function->name);

		for(unsigned int j = 0 ; j < tabs ; j++)
			printf("\t");
		printf("      %sIs prototype: %s%d\n", COLOR_CYAN, FORMAT_RESET, function->is_prototype);

		for(unsigned int j = 0 ; j < tabs ; j++)
			printf("\t");
		printf("      %sType:         %s%s\n", COLOR_CYAN, FORMAT_RESET, function->return_type.name);

		for(unsigned int j = 0 ; j < tabs ; j++)
			printf("\t");
		printf("      %sIs pointer:   %s%d\n", COLOR_CYAN, FORMAT_RESET, function->return_type.is_pointer);

		for(unsigned int j = 0 ; j < tabs ; j++)
			printf("\t");
		printf("      %sParameters:   %s", COLOR_CYAN, FORMAT_RESET);
		if(function->params->size == 0) {
			printf("%sNone%s\n", COLOR_RED, FORMAT_RESET);
		} else {
			printf("\n");
			print_variables(function->params, tabs + 1);
		}
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x359d
movl $0x0, -0x10(%rbp)
movl -0x10(%rbp), %eax
cmpl -0xc(%rbp), %eax
jae 0x3402
leaq 0x10071(%rip), %rdi     # 0x13461
movb $0x0, %al
callq 0x20b0
movl -0x10(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10(%rbp)
jmp 0x33e1
movq -0x8(%rbp), %rax
movq (%rax), %rcx
leaq 0x101ce(%rip), %rdi     # 0x135de
leaq 0x1006f(%rip), %rsi     # 0x13486
leaq 0xfc07(%rip), %rdx      # 0x13025
movb $0x0, %al
callq 0x20b0
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl -0xc(%rbp), %eax
jae 0x344d
leaq 0x10026(%rip), %rdi     # 0x13461
movb $0x0, %al
callq 0x20b0
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x342c
movq -0x8(%rbp), %rax
movzbl 0x18(%rax), %ecx
leaq 0x1019e(%rip), %rdi     # 0x135fa
leaq 0x10023(%rip), %rsi     # 0x13486
leaq 0xfbbb(%rip), %rdx      # 0x13025
movb $0x0, %al
callq 0x20b0
movl $0x0, -0x18(%rbp)
movl -0x18(%rbp), %eax
cmpl -0xc(%rbp), %eax
jae 0x3499
leaq 0xffda(%rip), %rdi      # 0x13461
movb $0x0, %al
callq 0x20b0
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x3478
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rcx
leaq 0x1016e(%rip), %rdi     # 0x13616
leaq 0xffd7(%rip), %rsi      # 0x13486
leaq 0xfb6f(%rip), %rdx      # 0x13025
movb $0x0, %al
callq 0x20b0
movl $0x0, -0x1c(%rbp)
movl -0x1c(%rbp), %eax
cmpl -0xc(%rbp), %eax
jae 0x34e5
leaq 0xff8e(%rip), %rdi      # 0x13461
movb $0x0, %al
callq 0x20b0
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x34c4
movq -0x8(%rbp), %rax
movsbl 0x10(%rax), %ecx
leaq 0x1013e(%rip), %rdi     # 0x13632
leaq 0xff8b(%rip), %rsi      # 0x13486
leaq 0xfb23(%rip), %rdx      # 0x13025
movb $0x0, %al
callq 0x20b0
movl $0x0, -0x20(%rbp)
movl -0x20(%rbp), %eax
cmpl -0xc(%rbp), %eax
jae 0x3531
leaq 0xff42(%rip), %rdi      # 0x13461
movb $0x0, %al
callq 0x20b0
movl -0x20(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x20(%rbp)
jmp 0x3510
leaq 0x10116(%rip), %rdi     # 0x1364e
leaq 0xff47(%rip), %rsi      # 0x13486
leaq 0xfadf(%rip), %rdx      # 0x13025
movb $0x0, %al
callq 0x20b0
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rax
cmpq $0x0, 0x8(%rax)
jne 0x357a
leaq 0x10104(%rip), %rdi     # 0x13667
leaq 0xfaaf(%rip), %rsi      # 0x13019
leaq 0xfab4(%rip), %rdx      # 0x13025
movb $0x0, %al
callq 0x20b0
jmp 0x359b
leaq 0x10420(%rip), %rdi     # 0x139a1
movb $0x0, %al
callq 0x20b0
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rdi
movl -0xc(%rbp), %esi
addl $0x1, %esi
callq 0x3100
jmp 0x359d
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)