// File: /workspace/github_c_makefile_star2_O2/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 $0x28, %rsp
leaq 0xb2d5(%rip), %rdi      # 0x21035
leaq 0xb88e(%rip), %rsi      # 0x215f5
callq 0x2a188
movq %rax, 0x48a2d(%rip)     # 0x5e7a0
leaq 0x484fe(%rip), %rax     # 0x5e278
movq 0x90(%rax), %rdi
callq 0x1d890
movl $0x128, %edi            # imm = 0x128
callq 0x29a78
movq %rax, 0x48a19(%rip)     # 0x5e7b0
xorl %ebx, %ebx
leaq 0x48a20(%rip), %r12     # 0x5e7c0
cmpq $0xf8, %rbx
je 0x15db8
callq 0x29d3c
movq %rax, (%rbx,%r12)
addq $0x8, %rbx
jmp 0x15da0
movq 0x48a19(%rip), %rdi     # 0x5e7d8
xorl %esi, %esi
callq 0x29ed5
movq 0x48a0b(%rip), %rdi     # 0x5e7d8
pushq $0x1
popq %rbx
movq %rbx, %rsi
callq 0x29ed5
movq 0x48a29(%rip), %rdi     # 0x5e808
xorl %esi, %esi
callq 0x29ed5
movq 0x48a1b(%rip), %rdi     # 0x5e808
movq %rbx, %rsi
callq 0x29ed5
pushq $0x4
popq %r14
cmpq $0xf, %r14
je 0x15e1b
movq (%r12,%r14,8), %rdi
xorl %esi, %esi
callq 0x29ed5
movq (%r12,%r14,8), %rdi
movq %rbx, %rsi
callq 0x29ed5
incq %r14
jmp 0x15df9
movq 0x48a16(%rip), %rdi     # 0x5e838
xorl %r13d, %r13d
xorl %esi, %esi
callq 0x29ed5
movq 0x48a05(%rip), %rdi     # 0x5e838
pushq $0x2
popq %rbx
movq %rbx, %rsi
callq 0x29ed5
movq 0x489fb(%rip), %rdi     # 0x5e840
xorl %esi, %esi
callq 0x29ed5
movq 0x489ed(%rip), %rdi     # 0x5e840
movq %rbx, %rsi
callq 0x29ed5
movq 0x489ee(%rip), %rdi     # 0x5e850
pushq $0x4
popq %rbx
movq %rbx, %rsi
callq 0x29ed5
movq 0x489ec(%rip), %rdi     # 0x5e860
pushq $0x3
popq %r14
movq %r14, %rsi
callq 0x29ed5
movq 0x489d9(%rip), %rdi     # 0x5e860
movq %rbx, %rsi
callq 0x29ed5
movq 0x489ca(%rip), %rdi     # 0x5e860
pushq $0x6
popq %r15
movq %r15, %rsi
callq 0x29ed5
movq 0x489bf(%rip), %rdi     # 0x5e868
movq %r14, %rsi
callq 0x29ed5
movq 0x489b0(%rip), %rdi     # 0x5e868
movq %rbx, %rsi
callq 0x29ed5
movq 0x489a1(%rip), %rdi     # 0x5e868
movq %r15, %rsi
callq 0x29ed5
movq 0x48982(%rip), %rdi     # 0x5e858
pushq $0x5
popq %rsi
callq 0x29ed5
cmpq $0xf8, %r13
je 0x15f0b
callq 0x17f69
movq 0x488bd(%rip), %rcx     # 0x5e7b0
movq %rax, 0x8(%rcx,%r13)
movq (%rax), %rdi
movq (%r13,%r12), %rsi
callq 0x29f5f
addq $0x8, %r13
jmp 0x15ede
xorl %r13d, %r13d
leaq 0x492f3(%rip), %rcx     # 0x5f208
leaq 0x1ba74(%rip), %r15     # 0x31990
leaq 0x48355(%rip), %r12     # 0x5e278
leaq 0x492e6(%rip), %rax     # 0x5f210
cmpq (%rax), %r13
jae 0x1615b
movq (%rcx), %rax
movq (%rax,%r13,8), %rbx
movq 0x20(%rbx), %r14
testq %r14, %r14
jne 0x15f8d
movq 0x18(%rbx), %r14
movq 0x18(%r14), %rdi
testq %rdi, %rdi
je 0x15f5a
callq 0x1da38
movq %rax, %rdi
jmp 0x15f62
movq 0x90(%r12), %rdi
testq %rdi, %rdi
je 0x16b33
movq %r14, %rsi
callq 0x1de33
testq %rax, %rax
je 0x16b33
movq %rax, %r14
movq 0x28(%rax), %rax
cmpq 0x40(%rbx), %rax
jne 0x16c2b
movq %r13, 0x8(%rsp)
movq 0x38(%rbx), %rdi
callq 0x1d970
movq 0x28(%rbx), %rdi
callq 0x17d99
movq %rax, %r12
movq 0x48802(%rip), %r13     # 0x5e7b0
movq %rax, 0x18(%rsp)
movq %rbx, (%rsp)
movl (%r12), %eax
movq 0x8(%r13,%rax,8), %rbp
testq %rbp, %rbp
jne 0x15fd6
callq 0x17f69
movq %rax, %rbp
movl (%r12), %eax
movq %rbp, 0x8(%r13,%rax,8)
addl $-0x12, %eax
cmpl $0xb, %eax
ja 0x1608c
movslq (%r15,%rax,4), %rax
addq %r15, %rax
jmpq *%rax
movq 0x68(%r12), %rax
movq (%rax), %r12
movq %rbp, %r13
jmp 0x15fb7
xorl %ebx, %ebx
cmpq $0x1a, %rbx
je 0x16050
cmpq $0x1f, %rbx
je 0x16118
movq 0x8(%r13,%rbx,8), %rbp
testq %rbp, %rbp
jne 0x16021
callq 0x17f69
movq %rax, %rbp
movq %rax, 0x8(%r13,%rbx,8)
leaq 0x108(%rbp), %rdi
leaq 0x110(%rbp), %rsi
movq %r12, %rdx
callq 0x29b2d
leaq 0x118(%rbp), %rdi
addq $0x120, %rbp            # imm = 0x120
movq %rbp, %rsi
movq %r14, %rdx
callq 0x29b2d
incq %rbx
jmp 0x15ffa
cmpq $0x0, 0x38(%r12)
je 0x160a1
leaq 0x108(%rbp), %rdi
leaq 0x110(%r13), %rsi
movq %r12, %rdx
callq 0x29b2d
addq $0x118, %rbp            # imm = 0x118
addq $0x120, %r13            # imm = 0x120
movq %rbp, %rdi
movq %r13, %rsi
jmp 0x16110
movq %r12, %rdi
callq 0x204ce
testl %eax, %eax
je 0x160e9
movq (%rbp), %rdi
movslq (%r14), %rsi
jmp 0x160e2
movq 0x100(%rbp), %rdi
movq 0x88(%r12), %rsi
callq 0x2a3e8
movq %rax, %r13
testq %rax, %rax
jne 0x160dc
callq 0x29d3c
movq %rax, %r13
movq 0x100(%rbp), %rdi
movq 0x88(%r12), %rsi
movq %rax, %rdx
callq 0x2a22a
movslq (%r14), %rsi
movq %r13, %rdi
callq 0x29ed5
jmp 0x16118
leaq 0x108(%rbp), %rdi
leaq 0x110(%rbp), %rsi
movq %r12, %rdx
callq 0x29b2d
leaq 0x118(%rbp), %rdi
addq $0x120, %rbp            # imm = 0x120
movq %rbp, %rsi
movq %r14, %rdx
callq 0x29b2d
cmpl $0x6, (%r14)
movq (%rsp), %rbx
jne 0x16137
movq 0x30(%rbx), %rax
movq (%rax), %rdi
callq 0x17d99
movq 0x18(%rsp), %rcx
movq %rax, 0x28(%rcx)
movq 0x38(%rbx), %rdi
callq 0x1d9bb
movq 0x8(%rsp), %r13
incq %r13
leaq 0x48129(%rip), %r12     # 0x5e278
leaq 0x490b2(%rip), %rcx     # 0x5f208
jmp 0x15f23
callq 0x1d8d4
movq 0x90(%r12), %rdi
callq 0x1d890
movq 0x90(%r12), %rdi
callq 0x16cc6
xorl %ebx, %ebx
xorl %r14d, %r14d
cmpq 0x48(%r12), %r14
jae 0x161a0
movq 0x40(%r12), %rdi
addq %rbx, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x16e0d
incq %r14
addq $0x8, %rbx
jmp 0x1617f
callq 0x1d8d4
xorl %eax, %eax
movq %rax, 0x18(%rsp)
andq $0x0, 0x10(%rsp)
andq $0x0, 0x20(%rsp)
xorl %r13d, %r13d
cmpq 0x4876e(%rip), %r13     # 0x5e930
jae 0x166c2
movq 0x48759(%rip), %rax     # 0x5e928
movq (%rax,%r13,8), %rax
movq (%rax), %rbp
movq 0x8(%rax), %rdi
callq 0x1d890
movq 0x48742(%rip), %rax     # 0x5e928
movq (%rax,%r13,8), %rax
movq 0x10(%rax), %rdi
callq 0x1d970
movl 0x8(%rbp), %eax
cmpl $0x4, %eax
je 0x16303
cmpl $0x8, %eax
jne 0x165dd
movq %rbp, %rdi
callq 0x1b5e6
leal -0x2a(%rax), %ecx
cmpl $0x2, %ecx
jb 0x163ff
cmpl $0x2e, %eax
je 0x165dd
cmpl $0x33, %eax
je 0x16491
cmpl $0x38, %eax
jne 0x16af8
movq 0x20(%rbp), %rdi
callq 0x17d99
movq %rax, %rdi
callq 0x1fcd8
movq %rax, %rbx
movl (%rax), %eax
cmpl $0x19, %eax
je 0x165dd
cmpl $0x17, %eax
jne 0x16b1b
xorl %ecx, %ecx
cmpq 0x40(%rbp), %rcx
jae 0x165dd
movq 0x50(%rbp), %rax
movq %rcx, (%rsp)
movq (%rax,%rcx,8), %rax
movq %rax, 0x8(%rsp)
movq 0x48(%rax), %r15
xorl %r14d, %r14d
cmpq 0x78(%rbx), %r14
jae 0x165ab
movq 0x88(%rbx), %rax
movq (%rax,%r14,8), %rax
movq 0x20(%rax), %rdi
callq 0x1c0c8
movq %rax, %r12
movq %r15, %rdi
callq 0x1c0c8
movq %r12, %rdi
movq %rax, %rsi
callq 0x4230
testl %eax, %eax
je 0x162c0
incq %r14
jmp 0x16283
movq 0x88(%rbx), %rax
movq (%rax,%r14,8), %rdi
callq 0x19ae5
testq %rax, %rax
je 0x165ab
movq %rax, %r15
movq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x19ae5
movq %r14, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x18a60
movq (%rsp), %rcx
incq %rcx
jmp 0x16261
movq 0x20(%rbp), %rdi
callq 0x19ae5
movq %rax, %r14
movq 0x18(%rbp), %rdi
callq 0x19ae5
movq %rax, (%rsp)
movq %r14, %rdi
callq 0x1589c
cmpq $0x0, 0x28(%rax)
je 0x165dd
movq %rax, %r14
leaq 0x48ed7(%rip), %rax     # 0x5f210
movq (%rax), %rax
pushq $-0x1
popq %r12
xorl %r15d, %r15d
xorl %ebx, %ebx
leaq 0x48ebc(%rip), %rdi     # 0x5f208
cmpq %rax, %rbx
jae 0x16399
movq (%rdi), %rcx
movq (%rcx,%rbx,8), %rcx
movq 0x20(%rcx), %rdx
leaq 0x48e95(%rip), %rsi     # 0x5f1f8
movq (%rsi), %rsi
cmpq 0x30(%rsi), %rdx
jne 0x16394
movq 0x28(%rcx), %rdi
movq %r14, %rsi
callq 0x158be
leaq 0x48e89(%rip), %rdi     # 0x5f208
cmpl %r12d, %eax
cmovgl %eax, %r12d
cmovgq %rbx, %r15
leaq 0x48e7f(%rip), %rax     # 0x5f210
movq (%rax), %rax
incq %rbx
jmp 0x1634c
testl %r12d, %r12d
js 0x165dd
leaq 0x48e5f(%rip), %rax     # 0x5f208
movq (%rax), %rax
movq (%rax,%r15,8), %rax
movq 0x28(%rax), %rbx
movq 0x30(%rax), %rax
movq (%rax), %rdi
callq 0x17d99
movq %rax, 0x8(%rsp)
callq 0x1c2cd
movq %rax, %r12
xorl %r15d, %r15d
cmpq 0x48(%r14), %r15
jae 0x16465
movq 0x40(%rbx), %rax
movq (%rax,%r15,8), %rdi
callq 0x17d99
movq 0x40(%r14), %rcx
movq (%rcx,%r15,8), %rdx
movq %r12, %rdi
movq %rax, %rsi
callq 0x1c27c
incq %r15
jmp 0x163d0
movq 0x50(%rbp), %rax
movq (%rax), %rbx
movq 0x8(%rax), %r14
movl 0x18(%rbp), %r12d
movq %rbx, %rdi
callq 0x19ae5
movq %rax, %rdi
callq 0x17d99
movq %rax, %rdi
callq 0x1fcd8
movq %rax, %r15
cmpl $0x2a, %r12d
jne 0x1657a
movl (%r15), %eax
movl %eax, %ecx
andl $-0x2, %ecx
cmpl $0x14, %ecx
jne 0x16510
movq %rbp, %r15
movq %rbx, (%rsp)
movq %r14, %rbp
movq %r14, %rdi
callq 0x1c0c8
movq %rax, %rdi
leaq 0x1e618(%rip), %rsi     # 0x34a78
jmp 0x16531
movq %r12, %rdi
movq 0x8(%rsp), %rsi
callq 0x19ca0
movq %rax, %r14
movq %r12, %rdi
callq 0x1c319
movq %rbp, %rdi
movq %r14, %rsi
movq (%rsp), %rdx
callq 0x18a60
jmp 0x165dd
leaq 0x484d0(%rip), %rax     # 0x5e968
movq (%rax), %rax
movq 0x38(%rbp), %rcx
movq (%rax,%rcx,8), %rbx
movq 0x38(%rbx), %rdi
callq 0x1d970
movq 0x28(%rbp), %rdi
testq %rdi, %rdi
je 0x164d7
movq 0x48(%rbx), %r14
callq 0x17d99
movq %r14, %rdi
movq %rax, %rsi
callq 0x2a3e8
testq %rax, %rax
je 0x164d7
movq 0x28(%rax), %r14
testq %r14, %r14
jne 0x164ec
movq %rbx, %rdi
callq 0x19ae5
xorl %edi, %edi
movq %rax, %rsi
callq 0x19ca0
movq %rax, %r14
movq %rbp, %rdi
callq 0x19ae5
movq %rbp, %rdi
movq %rax, %rsi
movq %r14, %rdx
callq 0x18a60
movq 0x38(%rbx), %rdi
callq 0x1d9bb
jmp 0x165dd
cmpl $0x18, %eax
jne 0x1657a
movq %rbp, %r15
movq %rbx, (%rsp)
movq %r14, %rbp
movq %r14, %rdi
callq 0x1c0c8
movq %rax, %rdi
leaq 0x1c734(%rip), %rsi     # 0x32c65
callq 0x4230
testl %eax, %eax
jne 0x16ab4
movq %r15, %rdi
callq 0x19ae5
leaq 0x48cab(%rip), %rbx     # 0x5f1f8
movq (%rbx), %rcx
movq (%rcx), %rdx
movq %r15, %rdi
movq %rax, %rsi
callq 0x1a237
movq %r15, %rdi
callq 0x19ae5
movq (%rbx), %rcx
movq 0x8(%rcx), %rdx
movq %r15, %rdi
movq %rax, %rsi
callq 0x1a237
jmp 0x165dd
movq %r15, %rdi
callq 0x1fcd8
cmpl $0x12, (%rax)
jne 0x1659e
movq 0x68(%r15), %rax
movq (%rax), %rdi
callq 0x17d99
movq %rax, %rdi
callq 0x1fcd8
movq %rax, %r15
movq %r15, %rdi
callq 0x1fcd8
cmpl $0x19, (%rax)
jne 0x165fe
pushq $0x18
popq %rdi
callq 0x29aa7
movq %rax, %rbx
movq %rbp, (%rax)
callq 0x1d859
movq %rax, 0x8(%rbx)
callq 0x1d954
movq %rax, 0x10(%rbx)
leaq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rsi
movq %rbx, %rdx
callq 0x29b2d
movq 0x48344(%rip), %rax     # 0x5e928
movq (%rax,%r13,8), %rax
movq 0x10(%rax), %rdi
callq 0x1d9bb
callq 0x1d8d4
incq %r13
jmp 0x161bb
movq %r15, %rdi
callq 0x1fcd8
movl (%rax), %eax
cmpl $0x2a, %r12d
jne 0x1665e
movq %rbp, 0x8(%rsp)
movq %rbx, (%rsp)
cmpl $0x17, %eax
jne 0x16bc7
movq %r14, %rbp
movq 0x88(%r15), %r14
xorl %ebx, %ebx
cmpq 0x78(%r15), %rbx
jae 0x16ab4
movq %rbp, %rdi
callq 0x1c0c8
movq %rax, %r12
movq (%r14,%rbx,8), %rdi
callq 0x1befe
movq %r12, %rdi
movq %rax, %rsi
callq 0x4230
testl %eax, %eax
je 0x1669b
incq %rbx
jmp 0x1662c
cmpl $0x16, %eax
jne 0x16b80
cmpl $0x9, 0x8(%r14)
jne 0x16bee
movq 0x30(%r14), %rbx
cmpq 0x70(%r15), %rbx
jae 0x16b9f
movq %rbp, %rdi
callq 0x19ae5
movq 0x68(%r15), %rcx
movq (%rcx,%rbx,8), %rdx
movq %rbp, %rdi
movq %rax, %rsi
jmp 0x16487
movq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0x19ae5
movq %rax, %r15
movq (%r14,%rbx,8), %rdi
callq 0x1bf2d
movq %r12, %rdi
movq %r15, %rsi
movq %rax, %rdx
jmp 0x16487
movq 0x20(%rsp), %rax
cmpq 0x18(%rsp), %rax
jne 0x161a7
leaq 0x47b9f(%rip), %r13     # 0x5e278
movq 0x90(%r13), %rdi
callq 0x1d890
movq 0x90(%r13), %rbx
movq 0x28(%rbx), %rdi
leaq 0x10(%rsp), %rsi
callq 0x2a529
movq %rax, %r14
xorl %r12d, %r12d
cmpq 0x10(%rsp), %r12
jae 0x16740
movq (%r14,%r12,8), %rsi
movq %rbx, %rdi
callq 0x1dda3
movq %rax, %rdi
callq 0x1589c
movq %rax, %r15
movq (%r14,%r12,8), %rsi
movq %rbx, %rdi
movq %rax, %rdx
callq 0x1e1ea
movq (%r14,%r12,8), %rdi
movq %r15, %rsi
xorl %edx, %edx
callq 0x185d2
incq %r12
jmp 0x16700
movq %r14, %rdi
callq 0x4040
movq 0x18(%rbx), %rdi
leaq 0x10(%rsp), %rsi
callq 0x2a529
movq %rax, %r14
xorl %r12d, %r12d
cmpq 0x10(%rsp), %r12
jae 0x167c9
movq (%r14,%r12,8), %rsi
movq %rbx, %rdi
callq 0x1dc67
movq %rax, %r15
movq 0x38(%rax), %rdi
callq 0x1d970
movq 0x28(%r15), %rsi
movq %r15, %rdi
xorl %edx, %edx
callq 0x185d2
movq %rax, 0x28(%r15)
movq 0x38(%r15), %rdi
callq 0x1d9bb
cmpb $0x0, 0x72(%r15)
jne 0x167a4
cmpb $0x0, 0x73(%r15)
je 0x167c4
cmpq $0x0, 0x40(%r15)
jne 0x167c4
cmpb $0x0, 0x77(%r15)
jne 0x167c4
cmpb $0x0, 0x74(%r15)
jne 0x167c4
cmpq $0x0, 0x30(%r15)
je 0x16c98
incq %r12
jmp 0x1675c
movq %r14, %rdi
callq 0x4040
xorl %ebx, %ebx
cmpq 0x48(%r13), %rbx
jae 0x167ed
movq 0x40(%r13), %rax
movq (%rax,%rbx,8), %rdi
xorl %esi, %esi
callq 0x17621
incq %rbx
jmp 0x167d3
callq 0x1d8d4
xorl %r12d, %r12d
leaq 0x40(%r13), %rbx
leaq 0x48(%r13), %r14
cmpq 0x4813c(%rip), %r12     # 0x5e940
jae 0x1682e
movq 0x4812b(%rip), %rax     # 0x5e938
movq (%rax,%r12,8), %r15
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x29b2d
movq %r15, %rdi
xorl %esi, %esi
callq 0x17621
incq %r12
jmp 0x167fd
xorl %r13d, %r13d
leaq 0x10(%rsp), %r14
cmpq 0x480d3(%rip), %r13     # 0x5e910
jae 0x16a12
movq 0x480ae(%rip), %rax     # 0x5e8f8
movq (%rax,%r13,8), %rdi
callq 0x1d890
movq 0x480ae(%rip), %rax     # 0x5e908
movq (%rax,%r13,8), %r15
movl 0x8(%r15), %eax
cmpl $0x8, %eax
jne 0x16942
movq %r15, %rdi
callq 0x1b5e6
cmpl $0x1, %eax
jne 0x168ea
leaq 0x48979(%rip), %rax     # 0x5f1f8
movq (%rax), %rax
movq 0x38(%rax), %rbx
cmpq $0x1, 0x38(%rbx)
jne 0x16c79
movq %r15, %rdi
callq 0x1bf90
movq %rax, %r12
movq (%r15), %rdi
pushq $0x1
popq %rsi
callq 0x1fdc2
movq (%r15), %rdi
xorl %esi, %esi
xorl %edx, %edx
movq %rax, %rcx
callq 0x2028c
movq %rax, %r15
leaq 0x68(%rax), %rdi
leaq 0x70(%rax), %rsi
movq %r12, %rdx
callq 0x29b2d
movq 0x30(%rbx), %rax
movq (%rax), %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %r14, %rcx
callq 0x1cd69
movq 0x30(%rbx), %rcx
movq (%rcx), %rcx
jmp 0x169f6
movl 0x8(%r15), %eax
cmpl $0x8, %eax
jne 0x16942
movq %r15, %rdi
callq 0x1b5e6
cmpl $0x33, %eax
jne 0x1693e
movq 0x48011(%rip), %rax     # 0x5e918
movq (%rax,%r13,8), %rdi
movq 0x20(%r15), %rdx
movq 0x28(%r15), %rsi
movq %r14, %rcx
callq 0x1cd69
movq 0x10(%rsp), %rcx
movq 0x50(%r15), %rdx
movq %rcx, (%rdx)
movq 0x18(%rax), %rcx
movq %rcx, 0x38(%r15)
movq %rax, %rdi
xorl %esi, %esi
callq 0x17621
jmp 0x16a05
movl 0x8(%r15), %eax
cmpl $0x4, %eax
jne 0x16b53
leaq 0x488a6(%rip), %rax     # 0x5f1f8
movq (%rax), %rax
movq 0x30(%rax), %rbx
cmpq $0x2, 0x38(%rbx)
jne 0x16b61
movq 0x20(%r15), %rdi
callq 0x1bf90
cmpl $0x1a, (%rax)
je 0x16a05
movq %rax, %r12
movq (%r15), %rdi
movq 0x20(%r15), %rbp
pushq $0x2
popq %rsi
callq 0x1fdc2
movq %rbp, %rdi
movq %rax, %rsi
callq 0x1b456
movq 0x30(%rbx), %rcx
movq (%rcx), %rdi
movq %r12, %rsi
movq %rax, %rdx
movq %r14, %rcx
callq 0x1cd69
movq 0x30(%rbx), %rcx
movq (%rcx), %rcx
movq 0x48(%rcx), %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x2a22a
movq (%r15), %rdi
movq 0x20(%r15), %r15
pushq $0x1
popq %rsi
callq 0x1fdc2
movq %r15, %rdi
movq %rax, %rsi
callq 0x1b456
movq 0x30(%rbx), %rcx
movq 0x8(%rcx), %rdi
movq %r12, %rsi
movq %rax, %rdx
movq %r14, %rcx
callq 0x1cd69
movq 0x30(%rbx), %rcx
movq 0x8(%rcx), %rcx
movq 0x48(%rcx), %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x2a22a
callq 0x1d8d4
incq %r13
jmp 0x16836
leaq 0x4785f(%rip), %rbx     # 0x5e278
movq 0x90(%rbx), %rdi
callq 0x1d890
movq 0x40(%rbx), %rax
movq 0x48(%rbx), %rcx
xorl %edx, %edx
cmpq %rdx, %rcx
je 0x16a4d
movq (%rax,%rdx,8), %rbx
cmpl $0xd, 0x8(%rbx)
jne 0x16a48
cmpb $0x0, 0x5c(%rbx)
jne 0x16c0d
incq %rdx
jmp 0x16a2f
xorl %r14d, %r14d
leaq 0x48791(%rip), %r15     # 0x5f1e8
leaq 0x4877a(%rip), %r12     # 0x5f1d8
pushq $0x1
popq %rbx
cmpq (%r15), %r14
jae 0x16aa5
movq (%r12), %rax
movq (%rax,%r14,8), %r13
cmpl $0x15, (%r13)
jne 0x16aa0
movq 0x88(%r13), %rdi
movl %ebx, %esi
callq 0x12bd3
movq %rax, 0x88(%r13)
testq %rax, %rax
je 0x16aa0
movq %rax, %rdi
callq 0x1b5e6
cmpl $0x35, %eax
jne 0x16c56
incq %r14
jmp 0x16a61
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq (%rsp), %r14
movq %r14, %rdi
callq 0x19ae5
movq %rax, %rdi
callq 0x21009
movq %rax, %r15
movq %rbp, %rdi
callq 0x17f9e
movq %rax, %rbx
movq %r14, %rdi
callq 0x17f9e
leaq 0x1bdd0(%rip), %rsi     # 0x328b5
movq %r14, %rdi
movq %r15, %rdx
movq %rbx, %rcx
movq %rax, %r8
xorl %eax, %eax
callq 0x120fd
movq %rbp, %rdi
callq 0x1b5e6
movl %eax, %eax
leaq 0x46897(%rip), %rcx     # 0x5d3a0
movq (%rcx,%rax,8), %rsi
leaq 0x1bc9a(%rip), %rdi     # 0x327ae
xorl %eax, %eax
callq 0x1205c
movq 0x20(%rbp), %rdi
callq 0x21009
leaq 0x1bdad(%rip), %rsi     # 0x328d8
movq %rbp, %rdi
jmp 0x16c6f
movq 0x18(%rbx), %rdi
callq 0x1c0c8
movq %rax, %r14
movq %rbx, %rdi
callq 0x17f9e
leaq 0x1b33a(%rip), %rsi     # 0x31e88
jmp 0x16c46
leaq 0x1bf1c(%rip), %rdi     # 0x32a76
xorl %eax, %eax
callq 0x1205c
leaq 0x1befe(%rip), %rdi     # 0x32a66
leaq 0x1b719(%rip), %rsi     # 0x32288
leaq 0x1beda(%rip), %rcx     # 0x32a50
movl $0xb16, %edx            # imm = 0xB16
callq 0x4180
movq %r15, %rdi
callq 0x21009
movq %rax, %rbx
movq %rbp, %rdi
callq 0x17f9e
leaq 0x1bc66(%rip), %rsi     # 0x32800
movq %rbp, %rdi
jmp 0x16be9
movq %r15, %rdi
callq 0x21009
movq %rax, %r14
movq %rbp, %rdi
callq 0x17f9e
leaq 0x1bcc3(%rip), %rsi     # 0x3287c
movq %rbp, %rdi
movq %rbx, %rdx
movq %r14, %rcx
jmp 0x16aee
movq %r15, %rdi
callq 0x21009
movq %rax, %rbx
movq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x17f9e
leaq 0x1bbe8(%rip), %rsi     # 0x327ce
movq %r14, %rdi
movq %rbx, %rdx
jmp 0x16c4c
leaq 0x1bc43(%rip), %rdi     # 0x32838
leaq 0x1b68c(%rip), %rsi     # 0x32288
leaq 0x1bc48(%rip), %rcx     # 0x3284b
movl $0x93a, %edx            # imm = 0x93A
callq 0x4180
movq 0x18(%rbx), %rdi
callq 0x1c0c8
movq %rax, %r14
movq 0x28(%rbx), %rdi
callq 0x21009
leaq 0x1be77(%rip), %rsi     # 0x32aa0
jmp 0x16c46
movq 0x18(%rbx), %rdi
callq 0x1c0c8
movq %rax, %r14
movq %rbx, %rdi
callq 0x17f9e
leaq 0x1b262(%rip), %rsi     # 0x31ea8
movq %rbx, %rdi
movq %r14, %rdx
movq %rax, %rcx
xorl %eax, %eax
callq 0x120fd
movq 0x88(%r13), %rbx
movq %rbx, %rdi
callq 0x17f9e
leaq 0x1be61(%rip), %rsi     # 0x32acd
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x120fd
leaq 0x1bcfd(%rip), %rdi     # 0x3297d
leaq 0x1b601(%rip), %rsi     # 0x32288
leaq 0x1bdc2(%rip), %rcx     # 0x32a50
movl $0xb06, %edx            # imm = 0xB06
callq 0x4180
cmpb $0x0, 0x73(%r15)
leaq 0x1a8f5(%rip), %rax     # 0x31599
leaq 0x1a8fa(%rip), %rbx     # 0x315a5
cmoveq %rax, %rbx
movq %r15, %rdi
callq 0x17f9e
leaq 0x1bc47(%rip), %rsi     # 0x32905
movq %r15, %rdi
jmp 0x16be9