// File: /workspace/github_c_makefile_star2_O3/Ihsoh[P]ilang/compiler/frontend/semantics.c
// Function: fe_sem_process
void fe_sem_process(
	ParserContext *ctx
) {
	assert(ctx);
	assert(ctx->ast);

	ParserASTNode *node_module = ctx->ast;
	_module(ctx, node_module);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x448, %rsp            # imm = 0x448
testq %rdi, %rdi
je 0x2a15d
movq %rdi, %r13
movq 0x8(%rdi), %rbx
testq %rbx, %rbx
je 0x2a17c
cmpl $0x0, 0x44(%rbx)
jle 0x2a015
xorl %r14d, %r14d
movq %rbx, -0x40(%rbp)
movq 0x48(%rbx), %rax
movq (%rax,%r14,8), %rsi
testq %rsi, %rsi
je 0x2a027
movl (%rsi), %eax
cmpl $0xa00, %eax            # imm = 0xA00
je 0x29c05
cmpl $0xd00, %eax            # imm = 0xD00
je 0x29b93
cmpl $0xc00, %eax            # imm = 0xC00
jne 0x2a046
movq %r13, %rdi
callq 0x2ac20
jmp 0x2a005
cmpl $0x2, 0x44(%rsi)
jne 0x2a0a3
movq 0x48(%rsi), %rax
movq (%rax), %rbx
cmpl $0x200, (%rbx)          # imm = 0x200
jne 0x2a0c2
movq %r14, -0x38(%rbp)
movq 0x8(%rax), %r8
movl (%r8), %eax
cmpl $0x900, %eax            # imm = 0x900
je 0x29bcd
cmpl $0xd01, %eax            # imm = 0xD01
jne 0x2a0e1
movq 0x30(%rsi), %r15
testq %r15, %r15
je 0x2a065
movq 0x10(%rbx), %rcx
cmpl $0x900, %eax            # imm = 0x900
jne 0x29ed6
movq %r13, %rdi
movq %r15, %rsi
movq %rcx, %rdx
movq %r8, %rcx
movl $0x1, %r8d
callq 0x24fd5
jmp 0x29ffd
movl 0x44(%rsi), %eax
cmpl $0x4, %eax
movq %r14, -0x38(%rbp)
movq %rsi, -0x58(%rbp)
je 0x29c30
cmpl $0x3, %eax
jne 0x2a100
movq 0x48(%rsi), %rax
leaq 0x10(%rax), %rcx
movq $0x0, -0x50(%rbp)
jmp 0x29c40
movq 0x48(%rsi), %rax
movq 0x10(%rax), %rcx
movq %rcx, -0x50(%rbp)
leaq 0x18(%rax), %rcx
movq (%rax), %rdx
movq %rdx, -0x68(%rbp)
movq 0x8(%rax), %r14
movq (%rcx), %rax
movq %rax, -0x60(%rbp)
movl 0x44(%r14), %eax
testl %eax, %eax
jle 0x29d61
movq 0x48(%r14), %rcx
movq (%rcx), %rdx
cmpl $0xa03, (%rdx)          # imm = 0xA03
jne 0x29cb4
movups 0x22d3e(%rip), %xmm0    # 0x4c9b2
movups %xmm0, -0x456(%rbp)
movups 0x22d26(%rip), %xmm0    # 0x4c9a8
movaps %xmm0, -0x460(%rbp)
movups 0x22d08(%rip), %xmm0    # 0x4c998
movaps %xmm0, -0x470(%rbp)
movq (%rcx), %rsi
movq %r13, %rdi
leaq -0x470(%rbp), %rdx
callq *0x58(%r13)
movl 0x44(%r14), %eax
testl %eax, %eax
jle 0x29d61
xorl %r15d, %r15d
movq %r14, -0x48(%rbp)
movq 0x48(%r14), %rcx
movq (%rcx,%r15,8), %rbx
cmpl $0xa02, (%rbx)          # imm = 0xA02
jne 0x29d52
movq 0x48(%rbx), %rax
movq %r13, %rdi
movq (%rax), %r14
movq 0x8(%rax), %r12
movb $0x0, -0x29(%rbp)
movq %r12, %rsi
leaq -0x29(%rbp), %rdx
callq 0x2b24f
movb -0x29(%rbp), %al
leal -0x1(%rax), %ecx
cmpb $0xb, %cl
jb 0x29d30
movzbl %al, %ecx
cmpl $0xc, %ecx
je 0x29d30
cmpl $0x10, %ecx
je 0x29d30
movl $0x52, %edx
leaq -0x470(%rbp), %rdi
leaq 0x22caa(%rip), %rsi     # 0x4c9c2
callq 0x3110
movq %r13, %rdi
movq %r12, %rsi
leaq -0x470(%rbp), %rdx
callq *0x58(%rdi)
movb -0x29(%rbp), %al
movq 0x10(%r14), %rdx
movzbl %al, %ecx
movq %r13, %rdi
movq -0x58(%rbp), %rsi
movq %r12, %r8
callq 0x24d44
movq %rax, 0x60(%rbx)
movq -0x48(%rbp), %r14
movl 0x44(%r14), %eax
incq %r15
movslq %eax, %rcx
cmpq %rcx, %r15
jl 0x29cbb
movq -0x50(%rbp), %r15
testq %r15, %r15
movq -0x58(%rbp), %rbx
je 0x29de4
movb $0x0, -0x29(%rbp)
movq %r13, %rdi
movq %r15, %rsi
leaq -0x29(%rbp), %rdx
movl $0x1, %ecx
callq 0x2becf
movb -0x29(%rbp), %al
leal -0x1(%rax), %ecx
cmpb $0xb, %cl
setb %cl
cmpb $0x10, %al
sete %al
orb %cl, %al
jne 0x29de4
movups 0x22c9f(%rip), %xmm0    # 0x4ca41
movups %xmm0, -0x443(%rbp)
movups 0x22c84(%rip), %xmm0    # 0x4ca34
movaps %xmm0, -0x450(%rbp)
movups 0x22c66(%rip), %xmm0    # 0x4ca24
movaps %xmm0, -0x460(%rbp)
movups 0x22c48(%rip), %xmm0    # 0x4ca14
movaps %xmm0, -0x470(%rbp)
movq %r13, %rdi
movq %r15, %rsi
leaq -0x470(%rbp), %rdx
callq *0x58(%r13)
movq 0x30(%rbx), %r15
testq %r15, %r15
je 0x2a084
movq -0x60(%rbp), %rax
cmpl $0x900, (%rax)          # imm = 0x900
movq -0x68(%rbp), %rbx
movq 0x10(%rbx), %rcx
movq %r13, %rdi
jne 0x29e2d
movq %r15, %rsi
movq %rcx, %rdx
movq %r14, %rcx
movq -0x50(%rbp), %r8
movl $0x1, %r9d
callq 0x25099
movq -0x58(%rbp), %rcx
movq %rax, 0x60(%rcx)
jmp 0x29ffd
movq %r15, %rsi
movl $0x3, %edx
callq 0x6c89
testq %rax, %rax
je 0x29f30
movq %rax, %r12
cmpb $0x1, 0x50(%rax)
jne 0x29f30
movq %r13, %rdi
movl $0x430, %esi            # imm = 0x430
leaq 0x181ca(%rip), %rdx     # 0x42029
xorl %ecx, %ecx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x65f1
movq %rax, %r15
movq %r13, %rdi
movq %rax, %rsi
movq %r14, %rdx
callq 0x68cf
movq -0x50(%rbp), %rdx
testq %rdx, %rdx
je 0x29e91
movq %r13, %rdi
movq %r15, %rsi
callq 0x68cf
movq %r14, -0x48(%rbp)
movq 0x40(%r12), %rdx
movq %r13, %rdi
movq %r15, %rsi
callq 0x3292f
testb %al, %al
jne 0x29ebb
movq 0x10(%rbx), %rsi
movq %r13, %rdi
leaq 0x22b9a(%rip), %rdx     # 0x4ca51
callq *0x50(%r13)
movb $0x0, 0x50(%r12)
movq -0x40(%rbp), %rbx
movq -0x38(%rbp), %r14
movq -0x58(%rbp), %rax
movq -0x48(%rbp), %rcx
jmp 0x29f64
movq %rsi, %r14
movq %r8, -0x48(%rbp)
movq %r13, %rdi
movq %r15, %rsi
movl $0x2, %edx
callq 0x6c89
testq %rax, %rax
je 0x29fbf
movq %rax, %r12
cmpb $0x1, 0x40(%rax)
jne 0x29fbf
movq %r13, %rdi
movq %r14, %rbx
movq %r14, %rsi
movq -0x48(%rbp), %r14
movq %r14, %rdx
movq %r12, %rcx
callq 0x32b0b
movb $0x0, 0x40(%r12)
movq %rbx, 0x30(%r12)
movq %r14, 0x38(%r12)
jmp 0x29ffd
movq 0x10(%rbx), %rdx
movq %r13, %rdi
movq %r15, %rsi
movq %r14, %rcx
movq -0x50(%rbp), %r8
xorl %r9d, %r9d
callq 0x25099
movq %rax, %r12
testq %rax, %rax
movq -0x40(%rbp), %rbx
movq %r14, %rcx
movq -0x38(%rbp), %r14
movq -0x58(%rbp), %rax
je 0x2a13e
movq %r12, 0x60(%rax)
movslq 0x44(%rcx), %rax
testq %rax, %rax
jle 0x29f93
movq 0x48(%rcx), %rcx
xorl %edx, %edx
movq (%rcx,%rdx,8), %rsi
cmpl $0xa02, (%rsi)          # imm = 0xA02
jne 0x29f8b
movq 0x60(%rsi), %rsi
movq %r12, 0x40(%rsi)
incq %rdx
cmpq %rdx, %rax
jne 0x29f77
movq -0x60(%rbp), %r15
cmpl $0xb00, (%r15)          # imm = 0xB00
jne 0x2a11f
movq %r13, %rdi
movq %r15, %rsi
movq %r15, %rdx
callq 0x33634
movq %r13, %rdi
movq %r15, %rsi
callq 0x32de1
jmp 0x2a005
movq 0x10(%rbx), %rsi
movq %r13, %rdi
movq %r14, %rbx
movq %r14, %rdx
movq -0x48(%rbp), %r14
movq %r14, %rcx
xorl %r8d, %r8d
callq 0x24f34
movq %rax, %r12
movq %r13, %rdi
movq %rbx, %rsi
movq %r14, %rdx
movq %rax, %rcx
callq 0x32b0b
movq %r13, %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0x6bc7
movq -0x40(%rbp), %rbx
movq -0x38(%rbp), %r14
incq %r14
movslq 0x44(%rbx), %rax
cmpq %rax, %r14
jl 0x29b56
addq $0x448, %rsp            # imm = 0x448
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x18db4(%rip), %rdi     # 0x42de2
leaq 0x208c5(%rip), %rsi     # 0x4a8fa
leaq 0x2097c(%rip), %rcx     # 0x4a9b8
movl $0x1560, %edx           # imm = 0x1560
callq 0x30a0
leaq 0x15313(%rip), %rdi     # 0x3f360
leaq 0x208a6(%rip), %rsi     # 0x4a8fa
leaq 0x2095d(%rip), %rcx     # 0x4a9b8
movl $0x1570, %edx           # imm = 0x1570
callq 0x30a0
leaq 0x209ac(%rip), %rdi     # 0x4aa18
leaq 0x20887(%rip), %rsi     # 0x4a8fa
leaq 0x22790(%rip), %rcx     # 0x4c80a
movl $0x1490, %edx           # imm = 0x1490
callq 0x30a0
leaq 0x2098d(%rip), %rdi     # 0x4aa18
leaq 0x20868(%rip), %rsi     # 0x4a8fa
leaq 0x228d2(%rip), %rcx     # 0x4c96b
movl $0x1523, %edx           # imm = 0x1523
callq 0x30a0
leaq 0x20c4b(%rip), %rdi     # 0x4acf5
leaq 0x20849(%rip), %rsi     # 0x4a8fa
leaq 0x22752(%rip), %rcx     # 0x4c80a
movl $0x1486, %edx           # imm = 0x1486
callq 0x30a0
leaq 0x17531(%rip), %rdi     # 0x415fa
leaq 0x2082a(%rip), %rsi     # 0x4a8fa
leaq 0x22733(%rip), %rcx     # 0x4c80a
movl $0x1489, %edx           # imm = 0x1489
callq 0x30a0
leaq 0x22751(%rip), %rdi     # 0x4c839
leaq 0x2080b(%rip), %rsi     # 0x4a8fa
leaq 0x22714(%rip), %rcx     # 0x4c80a
movl $0x148d, %edx           # imm = 0x148D
callq 0x30a0
leaq 0x15259(%rip), %rdi     # 0x3f360
leaq 0x207ec(%rip), %rsi     # 0x4a8fa
leaq 0x22856(%rip), %rcx     # 0x4c96b
movl $0x14eb, %edx           # imm = 0x14EB
callq 0x30a0
leaq 0x229bc(%rip), %rdi     # 0x4cae2
leaq 0x207cd(%rip), %rsi     # 0x4a8fa
leaq 0x22973(%rip), %rcx     # 0x4caa7
movl $0x14cf, %edx           # imm = 0x14CF
callq 0x30a0
leaq 0x18e27(%rip), %rdi     # 0x42f6c
leaq 0x207ae(%rip), %rsi     # 0x4a8fa
leaq 0x22818(%rip), %rcx     # 0x4c96b
movl $0x1548, %edx           # imm = 0x1548
callq 0x30a0
leaq 0x16c50(%rip), %rdi     # 0x40db4
leaq 0x2078f(%rip), %rsi     # 0x4a8fa
leaq 0x207a6(%rip), %rcx     # 0x4a918
movl $0x1587, %edx           # imm = 0x1587
callq 0x30a0
leaq 0x1723c(%rip), %rdi     # 0x413bf
leaq 0x20770(%rip), %rsi     # 0x4a8fa
leaq 0x20787(%rip), %rcx     # 0x4a918
movl $0x1588, %edx           # imm = 0x1588
callq 0x30a0