14066b2b6:	48 8b ce             	mov    %rsi,%rcx
14066b2b9:	e8 a2 fc ff ff       	call   0x14066af60
14066b2be:	48 8b 18             	mov    (%rax),%rbx
14066b2c1:	48 89 5d d0          	mov    %rbx,-0x30(%rbp)
14066b2c5:	48 89 30             	mov    %rsi,(%rax)
14066b2c8:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
14066b2cc:	48 85 c9             	test   %rcx,%rcx
14066b2cf:	74 24                	je     0x14066b2f5
14066b2d1:	8b 41 10             	mov    0x10(%rcx),%eax
14066b2d4:	ff c8                	dec    %eax
14066b2d6:	89 41 10             	mov    %eax,0x10(%rcx)
14066b2d9:	85 c0                	test   %eax,%eax
14066b2db:	7f 18                	jg     0x14066b2f5
14066b2dd:	0f 88 4f 03 00 00    	js     0x14066b632
14066b2e3:	48 8b 01             	mov    (%rcx),%rax
14066b2e6:	ba 01 00 00 00       	mov    $0x1,%edx
14066b2eb:	48 8b 00             	mov    (%rax),%rax
14066b2ee:	ff 15 2c 87 91 00    	call   *0x91872c(%rip)        # 0x140f83a20
14066b2f4:	90                   	nop
14066b2f5:	48 3b de             	cmp    %rsi,%rbx
14066b2f8:	41 0f 95 c6          	setne  %r14b
14066b2fc:	49 83 bc 24 58 01 00 	cmpq   $0x0,0x158(%r12)
14066b303:	00 00
14066b305:	0f 87 00 02 00 00    	ja     0x14066b50b
14066b30b:	41 80 bc 24 20 02 00 	cmpb   $0x0,0x220(%r12)
14066b312:	00 00
14066b314:	0f 84 f1 01 00 00    	je     0x14066b50b
14066b31a:	83 7b 18 03          	cmpl   $0x3,0x18(%rbx)
14066b31e:	0f 85 e7 01 00 00    	jne    0x14066b50b
14066b324:	48 8b cb             	mov    %rbx,%rcx
14066b327:	e8 24 05 0f 00       	call   0x14075b850
14066b32c:	48 8b 48 40          	mov    0x40(%rax),%rcx
14066b330:	83 79 18 1f          	cmpl   $0x1f,0x18(%rcx)
14066b334:	75 50                	jne    0x14066b386
14066b336:	e8 45 ca 18 00       	call   0x1407f7d80
14066b33b:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
14066b33f:	48 8d 55 d8          	lea    -0x28(%rbp),%rdx
14066b343:	48 8b 48 38          	mov    0x38(%rax),%rcx
14066b347:	e8 b4 d0 18 00       	call   0x1407f8400
14066b34c:	48 8b 08             	mov    (%rax),%rcx
14066b34f:	48 8b 79 38          	mov    0x38(%rcx),%rdi
14066b353:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
14066b357:	48 85 c9             	test   %rcx,%rcx
14066b35a:	74 24                	je     0x14066b380
14066b35c:	8b 41 10             	mov    0x10(%rcx),%eax
14066b35f:	ff c8                	dec    %eax
14066b361:	89 41 10             	mov    %eax,0x10(%rcx)
14066b364:	85 c0                	test   %eax,%eax
14066b366:	7f 18                	jg     0x14066b380
14066b368:	0f 88 cf 02 00 00    	js     0x14066b63d
14066b36e:	48 8b 01             	mov    (%rcx),%rax
14066b371:	ba 01 00 00 00       	mov    $0x1,%edx
14066b376:	48 8b 00             	mov    (%rax),%rax
14066b379:	ff 15 a1 86 91 00    	call   *0x9186a1(%rip)        # 0x140f83a20
14066b37f:	90                   	nop
14066b380:	83 7f 18 00          	cmpl   $0x0,0x18(%rdi)
14066b384:	74 1e                	je     0x14066b3a4
14066b386:	48 89 5d 48          	mov    %rbx,0x48(%rbp)
14066b38a:	48 8d 55 48          	lea    0x48(%rbp),%rdx
14066b38e:	49 8b cf             	mov    %r15,%rcx
14066b391:	e8 ea d8 ec ff       	call   0x140538c80
14066b396:	33 db                	xor    %ebx,%ebx
14066b398:	48 89 5d d0          	mov    %rbx,-0x30(%rbp)
14066b39c:	45 32 f6             	xor    %r14b,%r14b
14066b39f:	e9 ed 01 00 00       	jmp    0x14066b591
14066b3a4:	48 8b cf             	mov    %rdi,%rcx
14066b3a7:	e8 14 cf 18 00       	call   0x1407f82c0
14066b3ac:	4c 8b e8             	mov    %rax,%r13
14066b3af:	48 8b 7d e0          	mov    -0x20(%rbp),%rdi
14066b3b3:	48 8b 7f 40          	mov    0x40(%rdi),%rdi
14066b3b7:	48 89 7d f0          	mov    %rdi,-0x10(%rbp)
14066b3bb:	48 85 ff             	test   %rdi,%rdi
14066b3be:	74 1d                	je     0x14066b3dd
14066b3c0:	8b 4f 10             	mov    0x10(%rdi),%ecx
14066b3c3:	ff c1                	inc    %ecx
14066b3c5:	89 4f 10             	mov    %ecx,0x10(%rdi)
14066b3c8:	83 f9 01             	cmp    $0x1,%ecx
14066b3cb:	0f 8e 77 02 00 00    	jle    0x14066b648
14066b3d1:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
14066b3d7:	0f 84 73 02 00 00    	je     0x14066b650
14066b3dd:	4c 8b 45 40          	mov    0x40(%rbp),%r8
14066b3e1:	4d 8b 40 40          	mov    0x40(%r8),%r8
14066b3e5:	48 8b 4d 48          	mov    0x48(%rbp),%rcx
14066b3e9:	48 63 09             	movslq (%rcx),%rcx
14066b3ec:	41 8b 40 0c          	mov    0xc(%r8),%eax
14066b3f0:	ff c8                	dec    %eax
14066b3f2:	3b c8                	cmp    %eax,%ecx
14066b3f4:	0f 8d 9b 00 00 00    	jge    0x14066b495
14066b3fa:	49 8b 00             	mov    (%r8),%rax
14066b3fd:	4c 8b 44 c8 08       	mov    0x8(%rax,%rcx,8),%r8
14066b402:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
14066b406:	48 85 ff             	test   %rdi,%rdi
14066b409:	74 1c                	je     0x14066b427
14066b40b:	8b 47 10             	mov    0x10(%rdi),%eax
14066b40e:	ff c0                	inc    %eax
14066b410:	89 47 10             	mov    %eax,0x10(%rdi)
14066b413:	83 f8 01             	cmp    $0x1,%eax
14066b416:	0f 8e 3f 02 00 00    	jle    0x14066b65b
14066b41c:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
14066b421:	0f 84 3c 02 00 00    	je     0x14066b663
14066b427:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
14066b42c:	4c 8d 4d d8          	lea    -0x28(%rbp),%r9
14066b430:	4d 8b c5             	mov    %r13,%r8
14066b433:	48 8d 55 40          	lea    0x40(%rbp),%rdx
14066b437:	49 8b cc             	mov    %r12,%rcx
14066b43a:	e8 51 a2 00 00       	call   0x140675690
14066b43f:	48 8b 45 40          	mov    0x40(%rbp),%rax
14066b443:	48 85 c0             	test   %rax,%rax
14066b446:	74 4d                	je     0x14066b495
14066b448:	48 c7 45 40 00 00 00 	movq   $0x0,0x40(%rbp)
14066b44f:	00
14066b450:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
14066b454:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
14066b458:	49 8b cf             	mov    %r15,%rcx
14066b45b:	e8 20 d8 ec ff       	call   0x140538c80
14066b460:	48 8b 45 48          	mov    0x48(%rbp),%rax
14066b464:	ff 00                	incl   (%rax)
14066b466:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
14066b46a:	48 85 c9             	test   %rcx,%rcx
14066b46d:	74 24                	je     0x14066b493
14066b46f:	8b 41 10             	mov    0x10(%rcx),%eax
14066b472:	ff c8                	dec    %eax
14066b474:	89 41 10             	mov    %eax,0x10(%rcx)
14066b477:	85 c0                	test   %eax,%eax
14066b479:	7f 18                	jg     0x14066b493
14066b47b:	0f 88 ed 01 00 00    	js     0x14066b66e
14066b481:	48 8b 01             	mov    (%rcx),%rax
14066b484:	ba 01 00 00 00       	mov    $0x1,%edx
14066b489:	48 8b 00             	mov    (%rax),%rax
14066b48c:	ff 15 8e 85 91 00    	call   *0x91858e(%rip)        # 0x140f83a20
14066b492:	90                   	nop
14066b493:	eb 16                	jmp    0x14066b4ab
14066b495:	4c 8b cf             	mov    %rdi,%r9
14066b498:	4d 8b c5             	mov    %r13,%r8
14066b49b:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
14066b49f:	49 8b cc             	mov    %r12,%rcx
14066b4a2:	e8 c9 9c 00 00       	call   0x140675170
14066b4a7:	84 c0                	test   %al,%al
14066b4a9:	74 34                	je     0x14066b4df
14066b4ab:	48 85 ff             	test   %rdi,%rdi
14066b4ae:	74 27                	je     0x14066b4d7
14066b4b0:	8b 47 10             	mov    0x10(%rdi),%eax
14066b4b3:	ff c8                	dec    %eax
14066b4b5:	89 47 10             	mov    %eax,0x10(%rdi)
14066b4b8:	85 c0                	test   %eax,%eax
14066b4ba:	7f 1b                	jg     0x14066b4d7
14066b4bc:	0f 88 b7 01 00 00    	js     0x14066b679
14066b4c2:	48 8b 07             	mov    (%rdi),%rax
14066b4c5:	ba 01 00 00 00       	mov    $0x1,%edx
14066b4ca:	48 8b cf             	mov    %rdi,%rcx
14066b4cd:	48 8b 00             	mov    (%rax),%rax
14066b4d0:	ff 15 4a 85 91 00    	call   *0x91854a(%rip)        # 0x140f83a20
14066b4d6:	90                   	nop
14066b4d7:	41 b6 01             	mov    $0x1,%r14b
14066b4da:	e9 b2 00 00 00       	jmp    0x14066b591
14066b4df:	48 85 ff             	test   %rdi,%rdi
14066b4e2:	74 27                	je     0x14066b50b
14066b4e4:	8b 47 10             	mov    0x10(%rdi),%eax
14066b4e7:	ff c8                	dec    %eax
14066b4e9:	89 47 10             	mov    %eax,0x10(%rdi)
14066b4ec:	85 c0                	test   %eax,%eax
14066b4ee:	7f 1b                	jg     0x14066b50b
14066b4f0:	0f 88 8e 01 00 00    	js     0x14066b684
14066b4f6:	48 8b 07             	mov    (%rdi),%rax
14066b4f9:	ba 01 00 00 00       	mov    $0x1,%edx
14066b4fe:	48 8b cf             	mov    %rdi,%rcx
14066b501:	48 8b 00             	mov    (%rax),%rax
14066b504:	ff 15 16 85 91 00    	call   *0x918516(%rip)        # 0x140f83a20
14066b50a:	90                   	nop
14066b50b:	8b 43 18             	mov    0x18(%rbx),%eax
14066b50e:	83 f8 0d             	cmp    $0xd,%eax
14066b511:	75 5a                	jne    0x14066b56d
14066b513:	48 8b cb             	mov    %rbx,%rcx
14066b516:	e8 f5 04 0f 00       	call   0x14075ba10
14066b51b:	48 8b 48 40          	mov    0x40(%rax),%rcx
14066b51f:	48 8b 39             	mov    (%rcx),%rdi
14066b522:	48 63 41 0c          	movslq 0xc(%rcx),%rax
14066b526:	4c 8d 34 c7          	lea    (%rdi,%rax,8),%r14
14066b52a:	49 3b fe             	cmp    %r14,%rdi
14066b52d:	74 a8                	je     0x14066b4d7
14066b52f:	90                   	nop
14066b530:	48 8b 0f             	mov    (%rdi),%rcx
14066b533:	8b 41 10             	mov    0x10(%rcx),%eax
14066b536:	ff c0                	inc    %eax
14066b538:	89 41 10             	mov    %eax,0x10(%rcx)
14066b53b:	83 f8 01             	cmp    $0x1,%eax
14066b53e:	0f 8e 56 01 00 00    	jle    0x14066b69a
14066b544:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
14066b549:	0f 84 40 01 00 00    	je     0x14066b68f
14066b54f:	48 89 4d 48          	mov    %rcx,0x48(%rbp)
14066b553:	48 8d 55 48          	lea    0x48(%rbp),%rdx
14066b557:	49 8b cf             	mov    %r15,%rcx
14066b55a:	e8 21 d7 ec ff       	call   0x140538c80
14066b55f:	48 83 c7 08          	add    $0x8,%rdi
14066b563:	49 3b fe             	cmp    %r14,%rdi
14066b566:	75 c8                	jne    0x14066b530
14066b568:	41 b6 01             	mov    $0x1,%r14b
14066b56b:	eb 24                	jmp    0x14066b591
14066b56d:	83 f8 17             	cmp    $0x17,%eax
14066b570:	75 05                	jne    0x14066b577
14066b572:	41 b6 01             	mov    $0x1,%r14b
14066b575:	eb 1a                	jmp    0x14066b591
14066b577:	48 8b c3             	mov    %rbx,%rax
14066b57a:	33 db                	xor    %ebx,%ebx
14066b57c:	48 89 5d d0          	mov    %rbx,-0x30(%rbp)
14066b580:	48 89 45 48          	mov    %rax,0x48(%rbp)
14066b584:	48 8d 55 48          	lea    0x48(%rbp),%rdx
14066b588:	49 8b cf             	mov    %r15,%rcx
14066b58b:	e8 f0 d6 ec ff       	call   0x140538c80
14066b590:	90                   	nop
14066b591:	48 85 f6             	test   %rsi,%rsi
14066b594:	74 27                	je     0x14066b5bd
14066b596:	8b 46 10             	mov    0x10(%rsi),%eax
14066b599:	ff c8                	dec    %eax
14066b59b:	89 46 10             	mov    %eax,0x10(%rsi)
14066b59e:	85 c0                	test   %eax,%eax
14066b5a0:	7f 1b                	jg     0x14066b5bd
14066b5a2:	0f 88 fa 00 00 00    	js     0x14066b6a2
14066b5a8:	48 8b 06             	mov    (%rsi),%rax
14066b5ab:	ba 01 00 00 00       	mov    $0x1,%edx
14066b5b0:	48 8b ce             	mov    %rsi,%rcx
14066b5b3:	48 8b 00             	mov    (%rax),%rax
14066b5b6:	ff 15 64 84 91 00    	call   *0x918464(%rip)        # 0x140f83a20
14066b5bc:	90                   	nop
14066b5bd:	48 85 db             	test   %rbx,%rbx
14066b5c0:	74 23                	je     0x14066b5e5
14066b5c2:	8b 43 10             	mov    0x10(%rbx),%eax
14066b5c5:	ff c8                	dec    %eax
14066b5c7:	89 43 10             	mov    %eax,0x10(%rbx)
14066b5ca:	85 c0                	test   %eax,%eax
14066b5cc:	7f 17                	jg     0x14066b5e5
14066b5ce:	78 31                	js     0x14066b601
14066b5d0:	48 8b 0b             	mov    (%rbx),%rcx
14066b5d3:	48 8b 01             	mov    (%rcx),%rax
14066b5d6:	ba 01 00 00 00       	mov    $0x1,%edx
14066b5db:	48 8b cb             	mov    %rbx,%rcx
14066b5de:	ff 15 3c 84 91 00    	call   *0x91843c(%rip)        # 0x140f83a20
14066b5e4:	90                   	nop
14066b5e5:	41 0f b6 c6          	movzbl %r14b,%eax
14066b5e9:	48 8b 9c 24 b0 00 00 	mov    0xb0(%rsp),%rbx
14066b5f0:	00
14066b5f1:	48 83 c4 60          	add    $0x60,%rsp
14066b5f5:	41 5f                	pop    %r15
14066b5f7:	41 5e                	pop    %r14
14066b5f9:	41 5d                	pop    %r13
14066b5fb:	41 5c                	pop    %r12
14066b5fd:	5f                   	pop    %rdi
14066b5fe:	5e                   	pop    %rsi
14066b5ff:	5d                   	pop    %rbp
14066b600:	c3                   	ret
14066b601:	b9 02 00 00 00       	mov    $0x2,%ecx
14066b606:	e8 f5 f0 11 00       	call   0x14078a700
14066b60b:	90                   	nop
14066b60c:	33 c9                	xor    %ecx,%ecx
14066b60e:	e8 ed f0 11 00       	call   0x14078a700
14066b613:	cc                   	int3
14066b614:	b9 01 00 00 00       	mov    $0x1,%ecx
14066b619:	e8 e2 f0 11 00       	call   0x14078a700
14066b61e:	90                   	nop
14066b61f:	33 c9                	xor    %ecx,%ecx
14066b621:	e8 da f0 11 00       	call   0x14078a700
14066b626:	cc                   	int3
14066b627:	b9 01 00 00 00       	mov    $0x1,%ecx
14066b62c:	e8 cf f0 11 00       	call   0x14078a700
14066b631:	90                   	nop
14066b632:	b9 02 00 00 00       	mov    $0x2,%ecx
14066b637:	e8 c4 f0 11 00       	call   0x14078a700
14066b63c:	90                   	nop
14066b63d:	b9 02 00 00 00       	mov    $0x2,%ecx
14066b642:	e8 b9 f0 11 00       	call   0x14078a700
14066b647:	90                   	nop
14066b648:	33 c9                	xor    %ecx,%ecx
14066b64a:	e8 b1 f0 11 00       	call   0x14078a700
14066b64f:	cc                   	int3
14066b650:	b9 01 00 00 00       	mov    $0x1,%ecx
14066b655:	e8 a6 f0 11 00       	call   0x14078a700
14066b65a:	90                   	nop
14066b65b:	33 c9                	xor    %ecx,%ecx
14066b65d:	e8 9e f0 11 00       	call   0x14078a700
14066b662:	cc                   	int3
14066b663:	b9 01 00 00 00       	mov    $0x1,%ecx
14066b668:	e8 93 f0 11 00       	call   0x14078a700
14066b66d:	90                   	nop
14066b66e:	b9 02 00 00 00       	mov    $0x2,%ecx
14066b673:	e8 88 f0 11 00       	call   0x14078a700
14066b678:	90                   	nop
14066b679:	b9 02 00 00 00       	mov    $0x2,%ecx
14066b67e:	e8 7d f0 11 00       	call   0x14078a700
14066b683:	90                   	nop
14066b684:	b9 02 00 00 00       	mov    $0x2,%ecx
14066b689:	e8 72 f0 11 00       	call   0x14078a700
14066b68e:	90                   	nop
14066b68f:	b9 01 00 00 00       	mov    $0x1,%ecx
14066b694:	e8 67 f0 11 00       	call   0x14078a700
14066b699:	cc                   	int3
14066b69a:	33 c9                	xor    %ecx,%ecx
14066b69c:	e8 5f f0 11 00       	call   0x14078a700
14066b6a1:	90                   	nop
14066b6a2:	b9 02 00 00 00       	mov    $0x2,%ecx
14066b6a7:	e8 54 f0 11 00       	call   0x14078a700
14066b6ac:	cc                   	int3
14066b6ad:	cc                   	int3
14066b6ae:	cc                   	int3
14066b6af:	cc                   	int3
14066b6b0:	48 83 ec 38          	sub    $0x38,%rsp
14066b6b4:	4c 8b c9             	mov    %rcx,%r9
14066b6b7:	4d 8b 10             	mov    (%r8),%r10
14066b6ba:	49 8b c2             	mov    %r10,%rax
14066b6bd:	48 c1 e8 08          	shr    $0x8,%rax
14066b6c1:	44 0f b6 c0          	movzbl %al,%r8d
14066b6c5:	41 0f b6 c2          	movzbl %r10b,%eax
14066b6c9:	48 b9 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rcx
14066b6d0:	9c f2 cb
14066b6d3:	48 33 c1             	xor    %rcx,%rax
14066b6d6:	49 bb b3 01 00 00 00 	movabs $0x100000001b3,%r11
14066b6dd:	01 00 00
14066b6e0:	49 0f af c3          	imul   %r11,%rax
14066b6e4:	4c 33 c0             	xor    %rax,%r8
14066b6e7:	4d 0f af c3          	imul   %r11,%r8
14066b6eb:	49 8b c2             	mov    %r10,%rax
14066b6ee:	48 c1 e8 10          	shr    $0x10,%rax
14066b6f2:	0f b6 c8             	movzbl %al,%ecx
14066b6f5:	4c 33 c1             	xor    %rcx,%r8
14066b6f8:	4d 0f af c3          	imul   %r11,%r8
14066b6fc:	49 8b c2             	mov    %r10,%rax
14066b6ff:	48 c1 e8 18          	shr    $0x18,%rax
14066b703:	0f b6 c8             	movzbl %al,%ecx
14066b706:	4c 33 c1             	xor    %rcx,%r8
14066b709:	4d 0f af c3          	imul   %r11,%r8
14066b70d:	49 8b c2             	mov    %r10,%rax
14066b710:	48 c1 e8 20          	shr    $0x20,%rax
14066b714:	0f b6 c8             	movzbl %al,%ecx
14066b717:	4c 33 c1             	xor    %rcx,%r8
14066b71a:	4d 0f af c3          	imul   %r11,%r8
14066b71e:	49 8b c2             	mov    %r10,%rax
14066b721:	48 c1 e8 28          	shr    $0x28,%rax
14066b725:	0f b6 c8             	movzbl %al,%ecx
14066b728:	4c 33 c1             	xor    %rcx,%r8
14066b72b:	4d 0f af c3          	imul   %r11,%r8
14066b72f:	49 8b c2             	mov    %r10,%rax
14066b732:	48 c1 e8 30          	shr    $0x30,%rax
14066b736:	0f b6 c8             	movzbl %al,%ecx
14066b739:	4c 33 c1             	xor    %rcx,%r8
14066b73c:	4d 0f af c3          	imul   %r11,%r8
14066b740:	49 8b c2             	mov    %r10,%rax
14066b743:	48 c1 e8 38          	shr    $0x38,%rax
14066b747:	4c 33 c0             	xor    %rax,%r8
14066b74a:	4d 0f af c3          	imul   %r11,%r8
14066b74e:	49 8b 89 b8 01 00 00 	mov    0x1b8(%r9),%rcx
14066b755:	49 23 c8             	and    %r8,%rcx