1402fd373:	74 31                	je     0x1402fd3a6
1402fd375:	48 89 9c 24 a8 00 00 	mov    %rbx,0xa8(%rsp)
1402fd37c:	00
1402fd37d:	48 8b d7             	mov    %rdi,%rdx
1402fd380:	48 8b cb             	mov    %rbx,%rcx
1402fd383:	e8 48 8a d8 ff       	call   0x140085dd0
1402fd388:	90                   	nop
1402fd389:	48 8d 4b 20          	lea    0x20(%rbx),%rcx
1402fd38d:	48 8d 57 20          	lea    0x20(%rdi),%rdx
1402fd391:	e8 aa 84 d9 ff       	call   0x140095840
1402fd396:	90                   	nop
1402fd397:	48 83 c3 38          	add    $0x38,%rbx
1402fd39b:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
1402fd3a0:	48 83 c7 38          	add    $0x38,%rdi
1402fd3a4:	eb ca                	jmp    0x1402fd370
1402fd3a6:	eb 31                	jmp    0x1402fd3d9
1402fd3a8:	4d 8b ce             	mov    %r14,%r9
1402fd3ab:	4c 8b c6             	mov    %rsi,%r8
1402fd3ae:	48 8b d0             	mov    %rax,%rdx
1402fd3b1:	48 8b cf             	mov    %rdi,%rcx
1402fd3b4:	e8 47 0b 00 00       	call   0x1402fdf00
1402fd3b9:	48 89 b4 24 a0 00 00 	mov    %rsi,0xa0(%rsp)
1402fd3c0:	00
1402fd3c1:	4d 8b ce             	mov    %r14,%r9
1402fd3c4:	4c 8b c3             	mov    %rbx,%r8
1402fd3c7:	49 8b 56 08          	mov    0x8(%r14),%rdx
1402fd3cb:	48 8b 8c 24 a8 00 00 	mov    0xa8(%rsp),%rcx
1402fd3d2:	00
1402fd3d3:	e8 28 0b 00 00       	call   0x1402fdf00
1402fd3d8:	90                   	nop
1402fd3d9:	49 8b 1e             	mov    (%r14),%rbx
1402fd3dc:	48 85 db             	test   %rbx,%rbx
1402fd3df:	74 72                	je     0x1402fd453
1402fd3e1:	49 8b 7e 08          	mov    0x8(%r14),%rdi
1402fd3e5:	48 3b df             	cmp    %rdi,%rbx
1402fd3e8:	74 17                	je     0x1402fd401
1402fd3ea:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1402fd3f0:	48 8b cb             	mov    %rbx,%rcx
1402fd3f3:	e8 88 b6 d9 ff       	call   0x140098a80
1402fd3f8:	48 83 c3 38          	add    $0x38,%rbx
1402fd3fc:	48 3b df             	cmp    %rdi,%rbx
1402fd3ff:	75 ef                	jne    0x1402fd3f0
1402fd401:	4d 8b 06             	mov    (%r14),%r8
1402fd404:	49 8b 4e 10          	mov    0x10(%r14),%rcx
1402fd408:	49 2b c8             	sub    %r8,%rcx
1402fd40b:	48 b8 25 49 92 24 49 	movabs $0x4924924924924925,%rax
1402fd412:	92 24 49
1402fd415:	48 f7 e9             	imul   %rcx
1402fd418:	48 c1 fa 04          	sar    $0x4,%rdx
1402fd41c:	48 8b c2             	mov    %rdx,%rax
1402fd41f:	48 c1 e8 3f          	shr    $0x3f,%rax
1402fd423:	48 03 d0             	add    %rax,%rdx
1402fd426:	48 6b d2 38          	imul   $0x38,%rdx,%rdx
1402fd42a:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1402fd431:	72 18                	jb     0x1402fd44b
1402fd433:	48 83 c2 27          	add    $0x27,%rdx
1402fd437:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
1402fd43b:	4c 2b c1             	sub    %rcx,%r8
1402fd43e:	49 8d 40 f8          	lea    -0x8(%r8),%rax
1402fd442:	48 83 f8 1f          	cmp    $0x1f,%rax
1402fd446:	77 36                	ja     0x1402fd47e
1402fd448:	4c 8b c1             	mov    %rcx,%r8
1402fd44b:	49 8b c8             	mov    %r8,%rcx
1402fd44e:	e8 31 ce ff ff       	call   0x1402fa284
1402fd453:	49 89 36             	mov    %rsi,(%r14)
1402fd456:	48 6b 4c 24 20 38    	imul   $0x38,0x20(%rsp),%rcx
1402fd45c:	48 03 ce             	add    %rsi,%rcx
1402fd45f:	49 89 4e 08          	mov    %rcx,0x8(%r14)
1402fd463:	49 8d 0c 34          	lea    (%r12,%rsi,1),%rcx
1402fd467:	49 89 4e 10          	mov    %rcx,0x10(%r14)
1402fd46b:	49 8b c5             	mov    %r13,%rax
1402fd46e:	48 83 c4 60          	add    $0x60,%rsp
1402fd472:	41 5f                	pop    %r15
1402fd474:	41 5e                	pop    %r14
1402fd476:	41 5d                	pop    %r13
1402fd478:	41 5c                	pop    %r12
1402fd47a:	5f                   	pop    %rdi
1402fd47b:	5e                   	pop    %rsi
1402fd47c:	5b                   	pop    %rbx
1402fd47d:	c3                   	ret
1402fd47e:	ff 15 74 cb 02 00    	call   *0x2cb74(%rip)        # 0x140329ff8
1402fd484:	cc                   	int3
1402fd485:	e8 26 ab d8 ff       	call   0x140087fb0
1402fd48a:	cc                   	int3
1402fd48b:	e8 50 41 dc ff       	call   0x1400c15e0
1402fd490:	cc                   	int3
1402fd491:	cc                   	int3
1402fd492:	cc                   	int3
1402fd493:	cc                   	int3
1402fd494:	cc                   	int3
1402fd495:	cc                   	int3
1402fd496:	cc                   	int3
1402fd497:	cc                   	int3
1402fd498:	cc                   	int3
1402fd499:	cc                   	int3
1402fd49a:	cc                   	int3
1402fd49b:	cc                   	int3
1402fd49c:	cc                   	int3
1402fd49d:	cc                   	int3
1402fd49e:	cc                   	int3
1402fd49f:	cc                   	int3
1402fd4a0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1402fd4a5:	55                   	push   %rbp
1402fd4a6:	56                   	push   %rsi
1402fd4a7:	57                   	push   %rdi
1402fd4a8:	41 54                	push   %r12
1402fd4aa:	41 55                	push   %r13
1402fd4ac:	41 56                	push   %r14
1402fd4ae:	41 57                	push   %r15
1402fd4b0:	48 83 ec 40          	sub    $0x40,%rsp
1402fd4b4:	4d 8b e0             	mov    %r8,%r12
1402fd4b7:	4c 8b f2             	mov    %rdx,%r14
1402fd4ba:	48 8b f1             	mov    %rcx,%rsi
1402fd4bd:	45 0f b6 28          	movzbl (%r8),%r13d
1402fd4c1:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
1402fd4c8:	9c f2 cb
1402fd4cb:	4c 33 e8             	xor    %rax,%r13
1402fd4ce:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
1402fd4d5:	01 00 00
1402fd4d8:	4c 0f af e9          	imul   %rcx,%r13
1402fd4dc:	41 0f b6 40 01       	movzbl 0x1(%r8),%eax
1402fd4e1:	4c 33 e8             	xor    %rax,%r13
1402fd4e4:	4c 0f af e9          	imul   %rcx,%r13
1402fd4e8:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
1402fd4ed:	4c 33 e8             	xor    %rax,%r13
1402fd4f0:	4c 0f af e9          	imul   %rcx,%r13
1402fd4f4:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
1402fd4f9:	4c 33 e8             	xor    %rax,%r13
1402fd4fc:	4c 0f af e9          	imul   %rcx,%r13
1402fd500:	49 8b cd             	mov    %r13,%rcx
1402fd503:	48 23 4e 30          	and    0x30(%rsi),%rcx
1402fd507:	48 03 c9             	add    %rcx,%rcx
1402fd50a:	48 8b 46 18          	mov    0x18(%rsi),%rax
1402fd50e:	48 8b 5c c8 08       	mov    0x8(%rax,%rcx,8),%rbx
1402fd513:	48 8d 56 08          	lea    0x8(%rsi),%rdx
1402fd517:	4c 8b 3a             	mov    (%rdx),%r15
1402fd51a:	49 3b df             	cmp    %r15,%rbx
1402fd51d:	75 08                	jne    0x1402fd527
1402fd51f:	49 8b df             	mov    %r15,%rbx
1402fd522:	49 8b ef             	mov    %r15,%rbp
1402fd525:	eb 43                	jmp    0x1402fd56a
1402fd527:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
1402fd52b:	41 8b 00             	mov    (%r8),%eax
1402fd52e:	3b 43 10             	cmp    0x10(%rbx),%eax
1402fd531:	74 0e                	je     0x1402fd541
1402fd533:	48 3b d9             	cmp    %rcx,%rbx
1402fd536:	74 2c                	je     0x1402fd564
1402fd538:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
1402fd53c:	3b 43 10             	cmp    0x10(%rbx),%eax
1402fd53f:	75 f2                	jne    0x1402fd533
1402fd541:	49 89 1e             	mov    %rbx,(%r14)
1402fd544:	41 c6 46 08 00       	movb   $0x0,0x8(%r14)
1402fd549:	49 8b c6             	mov    %r14,%rax
1402fd54c:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
1402fd553:	00
1402fd554:	48 83 c4 40          	add    $0x40,%rsp
1402fd558:	41 5f                	pop    %r15
1402fd55a:	41 5e                	pop    %r14
1402fd55c:	41 5d                	pop    %r13
1402fd55e:	41 5c                	pop    %r12
1402fd560:	5f                   	pop    %rdi
1402fd561:	5e                   	pop    %rsi
1402fd562:	5d                   	pop    %rbp
1402fd563:	c3                   	ret
1402fd564:	4c 8b fb             	mov    %rbx,%r15
1402fd567:	48 8b eb             	mov    %rbx,%rbp
1402fd56a:	48 b8 c7 71 1c c7 71 	movabs $0x1c71c71c71c71c7,%rax
1402fd571:	1c c7 01
1402fd574:	48 39 46 10          	cmp    %rax,0x10(%rsi)
1402fd578:	0f 84 fe 01 00 00    	je     0x1402fd77c
1402fd57e:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
1402fd583:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
1402fd58a:	00 00
1402fd58c:	b9 90 00 00 00       	mov    $0x90,%ecx
1402fd591:	e8 b2 cc ff ff       	call   0x1402fa248
1402fd596:	48 8b f8             	mov    %rax,%rdi
1402fd599:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
1402fd59e:	48 8d 48 10          	lea    0x10(%rax),%rcx
1402fd5a2:	4c 89 a4 24 90 00 00 	mov    %r12,0x90(%rsp)
1402fd5a9:	00
1402fd5aa:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
1402fd5af:	45 33 c9             	xor    %r9d,%r9d
1402fd5b2:	4c 8d 84 24 80 00 00 	lea    0x80(%rsp),%r8
1402fd5b9:	00
1402fd5ba:	48 8d 94 24 90 00 00 	lea    0x90(%rsp),%rdx
1402fd5c1:	00
1402fd5c2:	e8 a9 f6 ff ff       	call   0x1402fcc70
1402fd5c7:	90                   	nop
1402fd5c8:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1402fd5cc:	48 83 c1 01          	add    $0x1,%rcx
1402fd5d0:	0f 57 c9             	xorps  %xmm1,%xmm1
1402fd5d3:	78 07                	js     0x1402fd5dc
1402fd5d5:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
1402fd5da:	eb 15                	jmp    0x1402fd5f1
1402fd5dc:	48 8b c1             	mov    %rcx,%rax
1402fd5df:	48 d1 e8             	shr    $1,%rax
1402fd5e2:	83 e1 01             	and    $0x1,%ecx
1402fd5e5:	48 0b c1             	or     %rcx,%rax
1402fd5e8:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
1402fd5ed:	f3 0f 58 c9          	addss  %xmm1,%xmm1
1402fd5f1:	48 8b 56 38          	mov    0x38(%rsi),%rdx
1402fd5f5:	f3 0f 10 1e          	movss  (%rsi),%xmm3
1402fd5f9:	0f 57 d2             	xorps  %xmm2,%xmm2
1402fd5fc:	48 85 d2             	test   %rdx,%rdx
1402fd5ff:	78 07                	js     0x1402fd608
1402fd601:	f3 48 0f 2a d2       	cvtsi2ss %rdx,%xmm2
1402fd606:	eb 18                	jmp    0x1402fd620
1402fd608:	48 8b ca             	mov    %rdx,%rcx
1402fd60b:	48 d1 e9             	shr    $1,%rcx
1402fd60e:	48 8b c2             	mov    %rdx,%rax
1402fd611:	83 e0 01             	and    $0x1,%eax
1402fd614:	48 0b c8             	or     %rax,%rcx
1402fd617:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
1402fd61c:	f3 0f 58 d2          	addss  %xmm2,%xmm2
1402fd620:	0f 28 c1             	movaps %xmm1,%xmm0
1402fd623:	f3 0f 5e c2          	divss  %xmm2,%xmm0
1402fd627:	0f 2f d8             	comiss %xmm0,%xmm3
1402fd62a:	0f 83 e4 00 00 00    	jae    0x1402fd714
1402fd630:	f3 0f 5e cb          	divss  %xmm3,%xmm1
1402fd634:	f3 0f 2c c9          	cvttss2si %xmm1,%ecx
1402fd638:	81 f9 00 00 00 80    	cmp    $0x80000000,%ecx
1402fd63e:	74 21                	je     0x1402fd661
1402fd640:	66 0f 6e c1          	movd   %ecx,%xmm0
1402fd644:	0f 5b c0             	cvtdq2ps %xmm0,%xmm0
1402fd647:	0f 2e c1             	ucomiss %xmm1,%xmm0
1402fd64a:	74 15                	je     0x1402fd661
1402fd64c:	0f 14 c9             	unpcklps %xmm1,%xmm1
1402fd64f:	0f 50 c1             	movmskps %xmm1,%eax
1402fd652:	83 e0 01             	and    $0x1,%eax
1402fd655:	83 f0 01             	xor    $0x1,%eax
1402fd658:	03 c8                	add    %eax,%ecx
1402fd65a:	66 0f 6e c9          	movd   %ecx,%xmm1
1402fd65e:	0f 5b c9             	cvtdq2ps %xmm1,%xmm1
1402fd661:	33 c9                	xor    %ecx,%ecx
1402fd663:	f3 0f 10 05 69 0e 03 	movss  0x30e69(%rip),%xmm0        # 0x14032e4d4
1402fd66a:	00
1402fd66b:	0f 2f c8             	comiss %xmm0,%xmm1
1402fd66e:	72 16                	jb     0x1402fd686
1402fd670:	f3 0f 5c c8          	subss  %xmm0,%xmm1
1402fd674:	0f 2f c8             	comiss %xmm0,%xmm1
1402fd677:	73 0d                	jae    0x1402fd686
1402fd679:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
1402fd680:	00 00 80
1402fd683:	48 8b c8             	mov    %rax,%rcx
1402fd686:	f3 48 0f 2c c1       	cvttss2si %xmm1,%rax
1402fd68b:	48 03 c1             	add    %rcx,%rax
1402fd68e:	b9 08 00 00 00       	mov    $0x8,%ecx
1402fd693:	48 3b c1             	cmp    %rcx,%rax
1402fd696:	48 0f 47 c8          	cmova  %rax,%rcx
1402fd69a:	48 3b d1             	cmp    %rcx,%rdx
1402fd69d:	73 19                	jae    0x1402fd6b8
1402fd69f:	48 81 fa 00 02 00 00 	cmp    $0x200,%rdx
1402fd6a6:	73 0d                	jae    0x1402fd6b5
1402fd6a8:	48 8d 14 d5 00 00 00 	lea    0x0(,%rdx,8),%rdx
1402fd6af:	00
1402fd6b0:	48 3b d1             	cmp    %rcx,%rdx
1402fd6b3:	73 03                	jae    0x1402fd6b8
1402fd6b5:	48 8b d1             	mov    %rcx,%rdx
1402fd6b8:	48 8b ce             	mov    %rsi,%rcx
1402fd6bb:	e8 60 91 00 00       	call   0x140306820
1402fd6c0:	48 8b 4e 30          	mov    0x30(%rsi),%rcx
1402fd6c4:	49 23 cd             	and    %r13,%rcx
1402fd6c7:	48 03 c9             	add    %rcx,%rcx
1402fd6ca:	48 8b 56 18          	mov    0x18(%rsi),%rdx
1402fd6ce:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
1402fd6d3:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
1402fd6d7:	48 3b c3             	cmp    %rbx,%rax
1402fd6da:	75 0b                	jne    0x1402fd6e7
1402fd6dc:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
1402fd6e3:	00 00
1402fd6e5:	eb 20                	jmp    0x1402fd707
1402fd6e7:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
1402fd6eb:	8b 4f 10             	mov    0x10(%rdi),%ecx
1402fd6ee:	3b 48 10             	cmp    0x10(%rax),%ecx
1402fd6f1:	74 11                	je     0x1402fd704
1402fd6f3:	48 8b d8             	mov    %rax,%rbx
1402fd6f6:	48 3b c2             	cmp    %rdx,%rax
1402fd6f9:	74 4d                	je     0x1402fd748
1402fd6fb:	48 8b 40 08          	mov    0x8(%rax),%rax
1402fd6ff:	3b 48 10             	cmp    0x10(%rax),%ecx
1402fd702:	75 ef                	jne    0x1402fd6f3
1402fd704:	48 8b 18             	mov    (%rax),%rbx
1402fd707:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
1402fd70c:	48 8b eb             	mov    %rbx,%rbp
1402fd70f:	4c 8b 7c 24 30       	mov    0x30(%rsp),%r15
1402fd714:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1402fd718:	48 ff 46 10          	incq   0x10(%rsi)
1402fd71c:	4c 89 3f             	mov    %r15,(%rdi)
1402fd71f:	48 89 57 08          	mov    %rdx,0x8(%rdi)
1402fd723:	48 89 3a             	mov    %rdi,(%rdx)
1402fd726:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
1402fd72a:	48 8b 4e 18          	mov    0x18(%rsi),%rcx
1402fd72e:	48 8b 46 30          	mov    0x30(%rsi),%rax
1402fd732:	49 23 c5             	and    %r13,%rax
1402fd735:	48 03 c0             	add    %rax,%rax
1402fd738:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
1402fd73c:	4c 3b 46 08          	cmp    0x8(%rsi),%r8
1402fd740:	75 16                	jne    0x1402fd758
1402fd742:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
1402fd746:	eb 22                	jmp    0x1402fd76a
1402fd748:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1402fd74d:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
1402fd754:	00 00
1402fd756:	eb b4                	jmp    0x1402fd70c
1402fd758:	4c 3b c5             	cmp    %rbp,%r8
1402fd75b:	75 06                	jne    0x1402fd763
1402fd75d:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
1402fd761:	eb 0c                	jmp    0x1402fd76f
1402fd763:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
1402fd768:	75 05                	jne    0x1402fd76f
1402fd76a:	48 89 7c c1 08       	mov    %rdi,0x8(%rcx,%rax,8)
1402fd76f:	49 89 3e             	mov    %rdi,(%r14)
1402fd772:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
1402fd777:	e9 cd fd ff ff       	jmp    0x1402fd549
1402fd77c:	48 8d 0d 9d 0b 03 00 	lea    0x30b9d(%rip),%rcx        # 0x14032e320
1402fd783:	e8 28 ee ff ff       	call   0x1402fc5b0
1402fd788:	cc                   	int3
1402fd789:	cc                   	int3
1402fd78a:	cc                   	int3
1402fd78b:	cc                   	int3
1402fd78c:	cc                   	int3
1402fd78d:	cc                   	int3
1402fd78e:	cc                   	int3
1402fd78f:	cc                   	int3
1402fd790:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402fd795:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1402fd79a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1402fd79f:	57                   	push   %rdi
1402fd7a0:	41 54                	push   %r12
1402fd7a2:	41 55                	push   %r13
1402fd7a4:	41 56                	push   %r14
1402fd7a6:	41 57                	push   %r15
1402fd7a8:	48 83 ec 40          	sub    $0x40,%rsp
1402fd7ac:	49 8b d8             	mov    %r8,%rbx
1402fd7af:	4c 8b fa             	mov    %rdx,%r15
1402fd7b2:	48 8b e9             	mov    %rcx,%rbp
1402fd7b5:	4d 8b 48 10          	mov    0x10(%r8),%r9
1402fd7b9:	49 83 78 18 0f       	cmpq   $0xf,0x18(%r8)
1402fd7be:	76 03                	jbe    0x1402fd7c3
1402fd7c0:	4d 8b 00             	mov    (%r8),%r8
1402fd7c3:	48 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rdi
1402fd7ca:	9c f2 cb
1402fd7cd:	45 33 ed             	xor    %r13d,%r13d
1402fd7d0:	41 8b d5             	mov    %r13d,%edx
1402fd7d3:	4d 85 c9             	test   %r9,%r9
1402fd7d6:	74 2c                	je     0x1402fd804
1402fd7d8:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
1402fd7df:	01 00 00
1402fd7e2:	0f 1f 40 00          	nopl   0x0(%rax)
1402fd7e6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)