// File: /workspace/github_c_makefile_star2_O1/oridb[P]mc/parse/infer.c
// Function: infer
void
infer(void)
{
	size_t i;

	delayed = mkht(tyhash, tyeq);
	initimpl();

	/* do the inference */
	pushstab(file.globls);
	inferstab(file.globls);
	for (i = 0; i < file.nstmts; i++)
		infernode(&file.stmts[i], NULL, 0);
	popstab();
	postinfer();

	/* and replace type vars with actual types */
	pushstab(file.globls);
	stabsub(file.globls);
	for (i = 0; i < file.nstmts; i++)
		typesub(file.stmts[i], 0);
	popstab();

	specialize();
	verify();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
leaq 0xc621(%rip), %rdi      # 0x23e8e
leaq 0xcc40(%rip), %rsi      # 0x244b4
callq 0x2db1c
movq %rax, 0x49f20(%rip)     # 0x617a0
leaq 0x499f1(%rip), %rax     # 0x61278
movq 0x90(%rax), %rdi
callq 0x20070
movl $0x128, %edi            # imm = 0x128
callq 0x2d348
movq %rax, 0x49f0c(%rip)     # 0x617b0
xorl %r14d, %r14d
leaq 0x49f12(%rip), %rbx     # 0x617c0
callq 0x2d63c
movq %rax, (%r14,%rbx)
addq $0x8, %r14
cmpq $0xf8, %r14
jne 0x178ae
movq 0x49f0d(%rip), %rdi     # 0x617d8
xorl %esi, %esi
callq 0x2d816
movq 0x49eff(%rip), %rdi     # 0x617d8
movl $0x1, %esi
callq 0x2d816
movq 0x49f1e(%rip), %rdi     # 0x61808
xorl %esi, %esi
callq 0x2d816
movq 0x49f10(%rip), %rdi     # 0x61808
movl $0x1, %esi
callq 0x2d816
movl $0x4, %r14d
movq (%rbx,%r14,8), %rdi
xorl %esi, %esi
callq 0x2d816
movq (%rbx,%r14,8), %rdi
movl $0x1, %esi
callq 0x2d816
incq %r14
cmpq $0xf, %r14
jne 0x17908
movq 0x49f07(%rip), %rdi     # 0x61838
xorl %r14d, %r14d
xorl %esi, %esi
callq 0x2d816
movq 0x49ef6(%rip), %rdi     # 0x61838
movl $0x2, %esi
callq 0x2d816
movq 0x49eed(%rip), %rdi     # 0x61840
xorl %esi, %esi
callq 0x2d816
movq 0x49edf(%rip), %rdi     # 0x61840
movl $0x2, %esi
callq 0x2d816
movq 0x49ede(%rip), %rdi     # 0x61850
movl $0x4, %esi
callq 0x2d816
movq 0x49edd(%rip), %rdi     # 0x61860
movl $0x3, %esi
callq 0x2d816
movq 0x49ecc(%rip), %rdi     # 0x61860
movl $0x4, %esi
callq 0x2d816
movq 0x49ebb(%rip), %rdi     # 0x61860
movl $0x6, %esi
callq 0x2d816
movq 0x49eb2(%rip), %rdi     # 0x61868
movl $0x3, %esi
callq 0x2d816
movq 0x49ea1(%rip), %rdi     # 0x61868
movl $0x4, %esi
callq 0x2d816
movq 0x49e90(%rip), %rdi     # 0x61868
movl $0x6, %esi
callq 0x2d816
movq 0x49e6f(%rip), %rdi     # 0x61858
movl $0x5, %esi
callq 0x2d816
callq 0x19a3a
movq 0x49db1(%rip), %rcx     # 0x617b0
movq %rax, 0x8(%rcx,%r14)
movq (%rax), %rdi
movq (%r14,%rbx), %rsi
callq 0x2d897
addq $0x8, %r14
cmpq $0xf8, %r14
jne 0x179f3
leaq 0x4a7ec(%rip), %rax     # 0x62210
cmpq $0x0, (%rax)
je 0x17af3
xorl %r12d, %r12d
leaq 0x4a7d0(%rip), %r13     # 0x62208
movq (%r13), %rax
movq (%rax,%r12,8), %rbx
movq 0x20(%rbx), %r14
testq %r14, %r14
jne 0x17a9a
movq 0x18(%rbx), %r14
movq 0x18(%r14), %rdi
testq %rdi, %rdi
je 0x17a5d
callq 0x2022f
jmp 0x17a6b
leaq 0x49814(%rip), %rax     # 0x61278
movq 0x90(%rax), %rax
testq %rax, %rax
je 0x17a80
movq %rax, %rdi
movq %r14, %rsi
callq 0x20669
movq %rax, %r14
jmp 0x17a83
xorl %r14d, %r14d
testq %r14, %r14
je 0x186c0
movq 0x28(%r14), %rax
cmpq 0x40(%rbx), %rax
jne 0x186dd
movq 0x38(%rbx), %rdi
callq 0x20159
movq 0x28(%rbx), %rdi
callq 0x196c0
movq %rax, %r15
movq 0x49cfa(%rip), %rdi     # 0x617b0
movq %r14, %rsi
movq %rax, %rdx
callq 0x198a4
cmpl $0x6, (%r14)
jne 0x17ad7
movq 0x30(%rbx), %rax
movq (%rax), %rdi
callq 0x196c0
movq %rax, 0x28(%r15)
movq 0x38(%rbx), %rdi
callq 0x201a4
incq %r12
leaq 0x4a726(%rip), %rax     # 0x62210
cmpq (%rax), %r12
jb 0x17a38
callq 0x200b6
leaq 0x49779(%rip), %r15     # 0x61278
movq 0x90(%r15), %rdi
callq 0x20070
movq 0x90(%r15), %rdi
callq 0x18779
cmpq $0x0, 0x48(%r15)
je 0x17b40
xorl %ebx, %ebx
xorl %r14d, %r14d
movq 0x40(%r15), %rdi
addq %rbx, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x188e1
incq %r14
addq $0x8, %rbx
cmpq 0x48(%r15), %r14
jb 0x17b23
callq 0x200b6
leaq 0x4a6ac(%rip), %r12     # 0x621f8
xorl %eax, %eax
movq %rax, 0x30(%rsp)
xorl %eax, %eax
movq %rax, 0x18(%rsp)
movq %rax, 0x28(%rsp)
cmpq %rax, 0x49dca(%rip)     # 0x61930
je 0x1811d
xorl %r15d, %r15d
movq 0x49db2(%rip), %rax     # 0x61928
movq (%rax,%r15,8), %rax
movq (%rax), %r14
movq 0x8(%rax), %rdi
callq 0x20070
movq 0x49d9b(%rip), %rax     # 0x61928
movq (%rax,%r15,8), %rax
movq 0x10(%rax), %rdi
callq 0x20159
movl 0x8(%r14), %eax
cmpl $0x4, %eax
je 0x17c3a
cmpl $0x8, %eax
jne 0x180f4
movq %r14, %rdi
callq 0x1d672
cmpl $0x32, %eax
jg 0x17c7b
leal -0x2a(%rax), %ecx
cmpl $0x2, %ecx
jae 0x17e9e
movq %r15, 0x10(%rsp)
movq 0x50(%r14), %rax
movq (%rax), %r13
movq %r14, %rcx
movq 0x8(%rax), %r14
movq %rcx, 0x8(%rsp)
movl 0x18(%rcx), %r15d
movq %r13, %rdi
callq 0x1b6e6
movq %rax, %rdi
callq 0x196c0
movq %rax, %rdi
callq 0x22c44
movq %rax, %rbx
cmpl $0x2a, %r15d
jne 0x17f58
movl (%rbx), %eax
movl %eax, %ecx
andl $-0x2, %ecx
cmpl $0x14, %ecx
jne 0x17ef0
movq %r13, 0x20(%rsp)
movq %r14, %rdi
callq 0x1e73b
movq %rax, %rdi
leaq 0x20e53(%rip), %rsi     # 0x38a88
jmp 0x17f0c
movq 0x20(%r14), %rdi
callq 0x1b6e6
movq %rax, %rbx
movq 0x18(%r14), %rdi
callq 0x1b6e6
movq %rax, 0x20(%rsp)
testq %rbx, %rbx
je 0x17d79
leaq 0x4a56c(%rip), %rax     # 0x621d0
movq (%rax), %rax
movq %rbx, %rbp
movl 0x4(%rbx), %ecx
movq (%rax,%rcx,8), %rbx
testq %rbx, %rbx
jne 0x17c67
jmp 0x17d7b
cmpl $0x33, %eax
je 0x17eac
cmpl $0x38, %eax
jne 0x185a6
movq 0x20(%r14), %rdi
callq 0x196c0
movq %rax, %rdi
callq 0x22c44
movq %rax, %rbx
movl (%rax), %eax
cmpl $0x19, %eax
je 0x180f4
cmpl $0x17, %eax
jne 0x185c9
cmpq $0x0, 0x40(%r14)
je 0x180f4
xorl %r13d, %r13d
movq %r15, 0x10(%rsp)
movq %r14, 0x8(%rsp)
movq 0x50(%r14), %rax
movq (%rax,%r13,8), %r14
cmpq $0x0, 0x78(%rbx)
je 0x17d1f
movq 0x48(%r14), %r15
xorl %r12d, %r12d
movq 0x88(%rbx), %rax
movq (%rax,%r12,8), %rax
movq 0x20(%rax), %rdi
callq 0x1e73b
movq %rax, %rbp
movq %r15, %rdi
callq 0x1e73b
movq %rbp, %rdi
movq %rax, %rsi
callq 0x4230
testl %eax, %eax
je 0x17d24
incq %r12
cmpq 0x78(%rbx), %r12
jb 0x17ce3
xorl %r15d, %r15d
jmp 0x17d37
xorl %r15d, %r15d
jmp 0x17d3e
movq 0x88(%rbx), %rax
movq (%rax,%r12,8), %rdi
callq 0x1b6e6
movq %rax, %r15
leaq 0x4a4ba(%rip), %r12     # 0x621f8
testq %r15, %r15
je 0x17f89
movq %r14, %rdi
callq 0x1b6e6
movq %r14, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x1a59b
incq %r13
movq 0x8(%rsp), %r14
cmpq 0x40(%r14), %r13
movq 0x10(%rsp), %r15
jb 0x17ccd
jmp 0x180f4
xorl %ebp, %ebp
cmpq $0x0, 0x28(%rbp)
je 0x180f4
leaq 0x4a483(%rip), %rsi     # 0x62210
cmpq $0x0, (%rsi)
je 0x17dff
movq %r14, 0x8(%rsp)
movq %r15, %r14
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
xorl %r13d, %r13d
xorl %ebx, %ebx
leaq 0x4a45b(%rip), %rdi     # 0x62208
movq (%rdi), %rax
movq (%rax,%r13,8), %rax
movq 0x20(%rax), %rcx
movq (%r12), %rdx
cmpq 0x30(%rdx), %rcx
jne 0x17de7
movq 0x28(%rax), %rdi
movq %rbp, %rsi
callq 0x1729e
leaq 0x4a433(%rip), %rdi     # 0x62208
leaq 0x4a434(%rip), %rsi     # 0x62210
cmpl %r15d, %eax
cmovgl %eax, %r15d
cmovgq %r13, %rbx
incq %r13
cmpq (%rsi), %r13
jb 0x17dad
testl %r15d, %r15d
setns %al
movq %r14, %r15
movq 0x8(%rsp), %r14
jmp 0x17e03
xorl %eax, %eax
xorl %ebx, %ebx
testb %al, %al
je 0x180f4
movq %r15, 0x10(%rsp)
leaq 0x4a3f1(%rip), %rax     # 0x62208
movq (%rax), %rax
movq (%rax,%rbx,8), %rax
movq 0x28(%rax), %r13
movq 0x30(%rax), %rax
movq (%rax), %rdi
callq 0x196c0
movq %rax, %r15
callq 0x1e994
movq %rax, %rbx
cmpq $0x0, 0x48(%rbp)
je 0x17e6c
xorl %r12d, %r12d
movq 0x40(%r13), %rax
movq (%rax,%r12,8), %rdi
callq 0x196c0
movq 0x40(%rbp), %rcx
movq (%rcx,%r12,8), %rdx
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1e938
incq %r12
cmpq 0x48(%rbp), %r12
jb 0x17e43
movq %rbx, %rdi
movq %r15, %rsi
callq 0x1b8a3
movq %rax, %r15
movq %rbx, %rdi
callq 0x1e9d5
movq %r14, %rdi
movq %r15, %rsi
movq 0x20(%rsp), %rdx
callq 0x1a59b
leaq 0x4a35f(%rip), %r12     # 0x621f8
jmp 0x180ef
cmpl $0x2e, %eax
je 0x180f4
jmp 0x185a6
leaq 0x49ab5(%rip), %rax     # 0x61968
movq (%rax), %rax
movq 0x38(%r14), %rcx
movq (%rax,%rcx,8), %rbx
movq 0x38(%rbx), %rdi
callq 0x20159
movq %r14, %r13
movq 0x28(%r14), %rdi
testq %rdi, %rdi
je 0x18033
movq 0x48(%rbx), %r14
callq 0x196c0
movq %r14, %rdi
movq %rax, %rsi
callq 0x2dd9a
jmp 0x18035
cmpl $0x18, %eax
jne 0x17f58
movq %r13, 0x20(%rsp)
movq %r14, %rdi
callq 0x1e73b
movq %rax, %rdi
leaq 0x1ed79(%rip), %rsi     # 0x36c85
callq 0x4230
testl %eax, %eax
jne 0x18561
movq 0x8(%rsp), %rbx
movq %rbx, %rdi
callq 0x1b6e6
movq (%r12), %rcx
movq (%rcx), %rdx
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1be6c
movq %rbx, %rdi
callq 0x1b6e6
movq (%r12), %rcx
movq 0x8(%rcx), %rdx
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1be6c
jmp 0x180ef
movq %rbx, %rdi
callq 0x22c44
cmpl $0x12, (%rax)
jne 0x17f7c
movq 0x68(%rbx), %rax
movq (%rax), %rdi
callq 0x196c0
movq %rax, %rdi
callq 0x22c44
movq %rax, %rbx
movq %rbx, %rdi
callq 0x22c44
cmpl $0x19, (%rax)
jne 0x17fc7
movl $0x18, %edi
callq 0x2d379
movq %rax, %rbx
movq 0x8(%rsp), %rax
movq %rax, (%rbx)
callq 0x20037
movq %rax, 0x8(%rbx)
callq 0x2013d
movq %rax, 0x10(%rbx)
leaq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rsi
movq %rbx, %rdx
callq 0x2d3ff
jmp 0x180ef
movq %rbx, %rdi
callq 0x22c44
movl (%rax), %eax
cmpl $0x2a, %r15d
jne 0x1807e
movq %r13, 0x20(%rsp)
cmpl $0x17, %eax
jne 0x1862c
cmpq $0x0, 0x78(%rbx)
je 0x18561
movq 0x88(%rbx), %r13
xorl %ebp, %ebp
movq %r14, %rdi
callq 0x1e73b
movq %rax, %r15
movq (%r13,%rbp,8), %rdi
callq 0x1e53d
movq %r15, %rdi
movq %rax, %rsi
callq 0x4230
testl %eax, %eax
je 0x180c7
incq %rbp
cmpq 0x78(%rbx), %rbp
jb 0x17ffd
jmp 0x18561
xorl %eax, %eax
testq %rax, %rax
je 0x18040
movq 0x28(%rax), %r14
jmp 0x18043
xorl %r14d, %r14d
testq %r14, %r14
jne 0x1805d
movq %rbx, %rdi
callq 0x1b6e6
xorl %edi, %edi
movq %rax, %rsi
callq 0x1b8a3
movq %rax, %r14
movq %r13, %rdi
callq 0x1b6e6
movq %r13, %rdi
movq %rax, %rsi
movq %r14, %rdx
callq 0x1a59b
movq 0x38(%rbx), %rdi
callq 0x201a4
jmp 0x180f4
cmpl $0x16, %eax
jne 0x1860b
cmpl $0x9, 0x8(%r14)
movq 0x10(%rsp), %r15
jne 0x18656
movq 0x30(%r14), %r14
cmpq 0x70(%rbx), %r14
jae 0x185e1
movq 0x8(%rsp), %r13
movq %r13, %rdi
callq 0x1b6e6
movq 0x68(%rbx), %rcx
movq (%rcx,%r14,8), %rdx
movq %r13, %rdi
movq %rax, %rsi
callq 0x1a59b
jmp 0x180f4
movq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x1b6e6
movq %rax, %rbx
movq (%r13,%rbp,8), %rdi
callq 0x1e56c
movq %r14, %rdi
movq %rbx, %rsi
movq %rax, %rdx
callq 0x1a59b
movq 0x10(%rsp), %r15
movq 0x4982d(%rip), %rax     # 0x61928
movq (%rax,%r15,8), %rax
movq 0x10(%rax), %rdi
callq 0x201a4
callq 0x200b6
incq %r15
cmpq 0x49819(%rip), %r15     # 0x61930
jb 0x17b6f
movq 0x28(%rsp), %rax
cmpq 0x30(%rsp), %rax
jne 0x17b4e
leaq 0x49144(%rip), %rbx     # 0x61278
movq 0x90(%rbx), %rdi
callq 0x20070
movq 0x90(%rbx), %rbx
movq 0x28(%rbx), %rdi
leaq 0x18(%rsp), %r15
movq %r15, %rsi
callq 0x2dedf
movq %rax, %r14
cmpq $0x0, (%r15)
je 0x181ba
xorl %r12d, %r12d
movq (%r14,%r12,8), %rsi
movq %rbx, %rdi
callq 0x205d4
testq %rax, %rax
je 0x18190
leaq 0x4a054(%rip), %rcx     # 0x621d0
movq (%rcx), %rcx
movq %rax, %r15
movl 0x4(%rax), %eax
movq (%rcx,%rax,8), %rax
testq %rax, %rax
jne 0x1817f
jmp 0x18193
xorl %r15d, %r15d
movq (%r14,%r12,8), %rsi
movq %rbx, %rdi
movq %r15, %rdx
callq 0x20a41
movq (%r14,%r12,8), %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x1a0c3
incq %r12
cmpq 0x18(%rsp), %r12
jb 0x18164
movq %r14, %rdi
callq 0x4040
movq 0x18(%rbx), %rdi
leaq 0x18(%rsp), %r15
movq %r15, %rsi
callq 0x2dedf
movq %rax, %r14
cmpq $0x0, (%r15)
je 0x1824a
xorl %r12d, %r12d
movq (%r14,%r12,8), %rsi
movq %rbx, %rdi
callq 0x2048b
movq %rax, %r15
movq 0x38(%rax), %rdi
callq 0x20159
movq 0x28(%r15), %rsi
movq %r15, %rdi
xorl %edx, %edx
callq 0x1a0c3
movq %rax, 0x28(%r15)
movq 0x38(%r15), %rdi
callq 0x201a4
cmpb $0x0, 0x72(%r15)
jne 0x18220
cmpb $0x0, 0x73(%r15)
je 0x18240
cmpq $0x0, 0x40(%r15)
jne 0x18240
cmpb $0x0, 0x77(%r15)
jne 0x18240
cmpb $0x0, 0x74(%r15)
jne 0x18240
cmpq $0x0, 0x30(%r15)
je 0x1874b
incq %r12
cmpq 0x18(%rsp), %r12
jb 0x181df
movq %r14, %rdi
callq 0x4040
leaq 0x4901f(%rip), %r14     # 0x61278
cmpq $0x0, 0x48(%r14)
je 0x1827a
xorl %ebx, %ebx
movq 0x40(%r14), %rax
movq (%rax,%rbx,8), %rdi
xorl %esi, %esi
callq 0x19164
incq %rbx
cmpq 0x48(%r14), %rbx
jb 0x18262
callq 0x200b6
cmpq $0x0, 0x496b9(%rip)     # 0x61940
je 0x182ca
xorl %r12d, %r12d
leaq 0x48fe5(%rip), %rax     # 0x61278
leaq 0x40(%rax), %rbx
leaq 0x48(%rax), %r14
movq 0x49696(%rip), %rax     # 0x61938
movq (%rax,%r12,8), %r15
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x2d3ff
movq %r15, %rdi
xorl %esi, %esi
callq 0x19164
incq %r12
cmpq 0x49678(%rip), %r12     # 0x61940
jb 0x1829b
cmpq $0x0, 0x4963e(%rip)     # 0x61910
je 0x184b7
xorl %r12d, %r12d
leaq 0x18(%rsp), %rbx
movq 0x49611(%rip), %rax     # 0x618f8
movq (%rax,%r12,8), %rdi
callq 0x20070
movq 0x49611(%rip), %rax     # 0x61908
movq (%rax,%r12,8), %r14
cmpl $0x8, 0x8(%r14)
jne 0x18387
movq %r14, %rdi
callq 0x1d672
cmpl $0x1, %eax
jne 0x18387
leaq 0x49ede(%rip), %rax     # 0x621f8
movq (%rax), %rax
movq 0x38(%rax), %r13
cmpq $0x1, 0x38(%r13)
jne 0x1872c
movq %r14, %rdi
callq 0x1e5d4
movq %rax, %r15
movq (%r14), %rdi
movl $0x1, %esi
callq 0x22d38
movq (%r14), %rdi
xorl %esi, %esi
xorl %edx, %edx
movq %rax, %rcx
callq 0x23245
movq %rax, %r14
leaq 0x68(%rax), %rdi
leaq 0x70(%rax), %rsi
movq %r15, %rdx
callq 0x2d3ff
movq 0x30(%r13), %rax
movq (%rax), %rdi
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x1f4f1
movq 0x30(%r13), %rcx
movq (%rcx), %rcx
jmp 0x18493
cmpl $0x8, 0x8(%r14)
jne 0x183d9
movq %r14, %rdi
callq 0x1d672
cmpl $0x33, %eax
jne 0x183d9
movq 0x49576(%rip), %rax     # 0x61918
movq (%rax,%r12,8), %rdi
movq 0x20(%r14), %rdx
movq 0x28(%r14), %rsi
movq %rbx, %rcx
callq 0x1f4f1
movq 0x18(%rsp), %rcx
movq 0x50(%r14), %rdx
movq %rcx, (%rdx)
movq 0x18(%rax), %rcx
movq %rcx, 0x38(%r14)
movq %rax, %rdi
xorl %esi, %esi
callq 0x19164
jmp 0x184a2
cmpl $0x4, 0x8(%r14)
jne 0x18675
leaq 0x49e0d(%rip), %rax     # 0x621f8
movq (%rax), %rax
movq 0x30(%rax), %rbp
cmpq $0x2, 0x38(%rbp)
jne 0x18683
movq 0x20(%r14), %rdi
callq 0x1e5d4
cmpl $0x1a, (%rax)
je 0x184a2
movq %rax, %r15
movq (%r14), %rdi
movq 0x20(%r14), %r13
movl $0x2, %esi
callq 0x22d38
movq %r13, %rdi
movq %rax, %rsi
callq 0x1d4ce
movq 0x30(%rbp), %rcx
movq (%rcx), %rdi
movq %r15, %rsi
movq %rax, %rdx
movq %rbx, %rcx
callq 0x1f4f1
movq 0x30(%rbp), %rcx
movq (%rcx), %rcx
movq 0x48(%rcx), %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x2dbc2
movq (%r14), %rdi
movq 0x20(%r14), %r14
movl $0x1, %esi
callq 0x22d38
movq %r14, %rdi
movq %rax, %rsi
callq 0x1d4ce
movq 0x30(%rbp), %rcx
movq 0x8(%rcx), %rdi
movq %r15, %rsi
movq %rax, %rdx
movq %rbx, %rcx
callq 0x1f4f1
movq 0x30(%rbp), %rcx
movq 0x8(%rcx), %rcx
movq 0x48(%rcx), %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x2dbc2
callq 0x200b6
incq %r12
cmpq 0x4945f(%rip), %r12     # 0x61910
jb 0x182e0
leaq 0x48dba(%rip), %rbx     # 0x61278
movq 0x90(%rbx), %rdi
callq 0x20070
movq 0x48(%rbx), %rax
testq %rax, %rax
je 0x184f5
movq 0x40(%rbx), %rcx
xorl %edx, %edx
movq (%rcx,%rdx,8), %rbx
cmpl $0xd, 0x8(%rbx)
jne 0x184ed
cmpb $0x0, 0x5c(%rbx)
jne 0x186a2
incq %rdx
cmpq %rdx, %rax
jne 0x184d9
leaq 0x49cec(%rip), %rbx     # 0x621e8
cmpq $0x0, (%rbx)
je 0x18552
xorl %r14d, %r14d
leaq 0x49ccc(%rip), %r15     # 0x621d8
movq (%r15), %rax
movq (%rax,%r14,8), %r12
cmpl $0x15, (%r12)
jne 0x1854a
movq 0x88(%r12), %rdi
movl $0x1, %esi
callq 0x14703
movq %rax, 0x88(%r12)
testq %rax, %rax
je 0x1854a
movq %rax, %rdi
callq 0x1d672
cmpl $0x35, %eax
jne 0x18708
incq %r14
cmpq (%rbx), %r14
jb 0x1850c
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x20(%rsp), %r15
movq %r15, %rdi
callq 0x1b6e6
movq %rax, %rdi
callq 0x23e44
movq %rax, %rbx
movq %r14, %rdi
callq 0x19a6f
movq %rax, %r14
movq %r15, %rdi
callq 0x19a6f
leaq 0x1e342(%rip), %rsi     # 0x368d5
movq %r15, %rdi
movq %rbx, %rdx
movq %r14, %rcx
movq %rax, %r8
xorl %eax, %eax
callq 0x13aa3
movq %r14, %rdi
callq 0x1d672
movl %eax, %eax
leaq 0x47de9(%rip), %rcx     # 0x603a0
movq (%rcx,%rax,8), %rsi
leaq 0x1e20c(%rip), %rdi     # 0x367ce
xorl %eax, %eax
callq 0x13a00
movq 0x20(%r14), %rdi
callq 0x23e44
leaq 0x1e31f(%rip), %rsi     # 0x368f8
movq %r14, %rdi
jmp 0x18722
movq %rbx, %rdi
callq 0x23e44
movq %rax, %rbx
movq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0x19a6f
leaq 0x1e29c(%rip), %rsi     # 0x3689c
movq %r15, %rdi
movq %r14, %rdx
movq %rbx, %rcx
jmp 0x1859c
movq %rbx, %rdi
callq 0x23e44
movq %rax, %rbx
movq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x19a6f
leaq 0x1e1f6(%rip), %rsi     # 0x36820
jmp 0x1864b
movq %rbx, %rdi
callq 0x23e44
movq %rax, %rbx
movq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x19a6f
leaq 0x1e1a3(%rip), %rsi     # 0x367ee
movq %r14, %rdi
movq %rbx, %rdx
jmp 0x186fe
leaq 0x1e1fb(%rip), %rdi     # 0x36858
leaq 0x1dc44(%rip), %rsi     # 0x362a8
leaq 0x1e200(%rip), %rcx     # 0x3686b
movl $0x93a, %edx            # imm = 0x93A
callq 0x4180
leaq 0x1e41a(%rip), %rdi     # 0x36a96
xorl %eax, %eax
callq 0x13a00
leaq 0x1e3fc(%rip), %rdi     # 0x36a86
leaq 0x1dc17(%rip), %rsi     # 0x362a8
leaq 0x1e3d8(%rip), %rcx     # 0x36a70
movl $0xb16, %edx            # imm = 0xB16
callq 0x4180
movq 0x18(%rbx), %rdi
callq 0x1e73b
movq %rax, %r14
movq 0x28(%rbx), %rdi
callq 0x23e44
leaq 0x1e402(%rip), %rsi     # 0x36ac0
jmp 0x186f8
movq 0x18(%rbx), %rdi
callq 0x1e73b
movq %rax, %r14
movq %rbx, %rdi
callq 0x19a6f
leaq 0x1d7cd(%rip), %rsi     # 0x35ea8
jmp 0x186f8
movq 0x18(%rbx), %rdi
callq 0x1e73b
movq %rax, %r14
movq %rbx, %rdi
callq 0x19a6f
leaq 0x1d7d0(%rip), %rsi     # 0x35ec8
movq %rbx, %rdi
movq %r14, %rdx
movq %rax, %rcx
xorl %eax, %eax
callq 0x13aa3
movq 0x88(%r12), %rbx
movq %rbx, %rdi
callq 0x19a6f
leaq 0x1e3ce(%rip), %rsi     # 0x36aed
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x13aa3
leaq 0x1e26a(%rip), %rdi     # 0x3699d
leaq 0x1db6e(%rip), %rsi     # 0x362a8
leaq 0x1e32f(%rip), %rcx     # 0x36a70
movl $0xb06, %edx            # imm = 0xB06
callq 0x4180
cmpb $0x0, 0x73(%r15)
leaq 0x1ce62(%rip), %rax     # 0x355b9
leaq 0x1ce67(%rip), %rbx     # 0x355c5
cmoveq %rax, %rbx
movq %r15, %rdi
callq 0x19a6f
leaq 0x1e1b4(%rip), %rsi     # 0x36925
movq %r15, %rdi
jmp 0x1864e