180072362:	f2 0f 11 47 70       	movsd  %xmm0,0x70(%rdi)
180072367:	e8 e4 7a 02 00       	call   0x180099e50
18007236c:	4c 8b f0             	mov    %rax,%r14
18007236f:	48 85 c0             	test   %rax,%rax
180072372:	74 8d                	je     0x180072301
180072374:	44 8b c3             	mov    %ebx,%r8d
180072377:	33 d2                	xor    %edx,%edx
180072379:	48 8b c8             	mov    %rax,%rcx
18007237c:	e8 ff 38 0c 00       	call   0x180135c80
180072381:	83 64 24 20 00       	andl   $0x0,0x20(%rsp)
180072386:	41 b9 00 08 00 00    	mov    $0x800,%r9d
18007238c:	4c 89 77 78          	mov    %r14,0x78(%rdi)
180072390:	41 8b cf             	mov    %r15d,%ecx
180072393:	45 89 7e 40          	mov    %r15d,0x40(%r14)
180072397:	44 8b 46 0c          	mov    0xc(%rsi),%r8d
18007239b:	48 8b 56 10          	mov    0x10(%rsi),%rdx
18007239f:	49 c1 e0 0b          	shl    $0xb,%r8
1800723a3:	e8 28 0c 00 00       	call   0x180072fd0
1800723a8:	8b d8                	mov    %eax,%ebx
1800723aa:	85 c0                	test   %eax,%eax
1800723ac:	0f 88 a7 00 00 00    	js     0x180072459
1800723b2:	48 8b 6e 10          	mov    0x10(%rsi),%rbp
1800723b6:	8b 8d a8 00 00 00    	mov    0xa8(%rbp),%ecx
1800723bc:	81 c1 b0 00 00 00    	add    $0xb0,%ecx
1800723c2:	81 f9 b0 00 00 00    	cmp    $0xb0,%ecx
1800723c8:	0f 82 86 00 00 00    	jb     0x180072454
1800723ce:	8b 95 ac 00 00 00    	mov    0xac(%rbp),%edx
1800723d4:	03 d1                	add    %ecx,%edx
1800723d6:	3b d1                	cmp    %ecx,%edx
1800723d8:	72 7a                	jb     0x180072454
1800723da:	81 fa 00 08 00 00    	cmp    $0x800,%edx
1800723e0:	77 72                	ja     0x180072454
1800723e2:	48 8b 45 38          	mov    0x38(%rbp),%rax
1800723e6:	33 db                	xor    %ebx,%ebx
1800723e8:	49 21 5e 28          	and    %rbx,0x28(%r14)
1800723ec:	49 89 46 20          	mov    %rax,0x20(%r14)
1800723f0:	48 8d 05 c1 d2 0d 00 	lea    0xdd2c1(%rip),%rax        # 0x18014f6b8
1800723f7:	49 89 46 30          	mov    %rax,0x30(%r14)
1800723fb:	41 c7 46 38 01 00 00 	movl   $0x1,0x38(%r14)
180072402:	00
180072403:	8b 8d ac 00 00 00    	mov    0xac(%rbp),%ecx
180072409:	c1 e9 03             	shr    $0x3,%ecx
18007240c:	41 89 4e 08          	mov    %ecx,0x8(%r14)
180072410:	48 c1 e1 03          	shl    $0x3,%rcx
180072414:	e8 37 7a 02 00       	call   0x180099e50
180072419:	49 89 06             	mov    %rax,(%r14)
18007241c:	48 8b c8             	mov    %rax,%rcx
18007241f:	48 85 c0             	test   %rax,%rax
180072422:	0f 84 d9 fe ff ff    	je     0x180072301
180072428:	8b 95 a8 00 00 00    	mov    0xa8(%rbp),%edx
18007242e:	45 8b 46 08          	mov    0x8(%r14),%r8d
180072432:	81 c2 b0 00 00 00    	add    $0xb0,%edx
180072438:	48 03 d5             	add    %rbp,%rdx
18007243b:	49 c1 e0 03          	shl    $0x3,%r8
18007243f:	e8 7c 35 0c 00       	call   0x1801359c0
180072444:	49 8b 06             	mov    (%r14),%rax
180072447:	8b 48 04             	mov    0x4(%rax),%ecx
18007244a:	41 89 4e 18          	mov    %ecx,0x18(%r14)
18007244e:	49 89 3c 24          	mov    %rdi,(%r12)
180072452:	eb 3c                	jmp    0x180072490
180072454:	bb 02 01 00 c0       	mov    $0xc0000102,%ebx
180072459:	48 8b 0f             	mov    (%rdi),%rcx
18007245c:	48 85 c9             	test   %rcx,%rcx
18007245f:	74 05                	je     0x180072466
180072461:	e8 96 7b 02 00       	call   0x180099ffc
180072466:	48 8b 4f 78          	mov    0x78(%rdi),%rcx
18007246a:	48 85 c9             	test   %rcx,%rcx
18007246d:	74 05                	je     0x180072474
18007246f:	e8 88 7b 02 00       	call   0x180099ffc
180072474:	48 8b cf             	mov    %rdi,%rcx
180072477:	e8 80 7b 02 00       	call   0x180099ffc
18007247c:	48 8b ce             	mov    %rsi,%rcx
18007247f:	e8 78 7b 02 00       	call   0x180099ffc
180072484:	48 8b 05 5d 26 13 00 	mov    0x13265d(%rip),%rax        # 0x1801a4ae8
18007248b:	4a 83 24 f8 00       	andq   $0x0,(%rax,%r15,8)
180072490:	8b c3                	mov    %ebx,%eax
180072492:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
180072497:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
18007249c:	48 83 c4 40          	add    $0x40,%rsp
1800724a0:	41 5f                	pop    %r15
1800724a2:	41 5e                	pop    %r14
1800724a4:	41 5c                	pop    %r12
1800724a6:	5f                   	pop    %rdi
1800724a7:	5e                   	pop    %rsi
1800724a8:	c3                   	ret
1800724a9:	cc                   	int3
1800724aa:	cc                   	int3
1800724ab:	cc                   	int3
1800724ac:	48 8b c4             	mov    %rsp,%rax
1800724af:	4c 89 48 20          	mov    %r9,0x20(%rax)
1800724b3:	48 89 50 10          	mov    %rdx,0x10(%rax)
1800724b7:	53                   	push   %rbx
1800724b8:	55                   	push   %rbp
1800724b9:	56                   	push   %rsi
1800724ba:	57                   	push   %rdi
1800724bb:	41 54                	push   %r12
1800724bd:	41 55                	push   %r13
1800724bf:	41 56                	push   %r14
1800724c1:	48 83 ec 40          	sub    $0x40,%rsp
1800724c5:	48 8b 71 78          	mov    0x78(%rcx),%rsi
1800724c9:	4c 8d 40 b8          	lea    -0x48(%rax),%r8
1800724cd:	45 33 e4             	xor    %r12d,%r12d
1800724d0:	4c 8b e9             	mov    %rcx,%r13
1800724d3:	48 8b ce             	mov    %rsi,%rcx
1800724d6:	4c 89 60 b8          	mov    %r12,-0x48(%rax)
1800724da:	4c 8b f2             	mov    %rdx,%r14
1800724dd:	4c 89 60 c0          	mov    %r12,-0x40(%rax)
1800724e1:	4c 89 60 08          	mov    %r12,0x8(%rax)
1800724e5:	e8 d2 06 00 00       	call   0x180072bbc
1800724ea:	8b d8                	mov    %eax,%ebx
1800724ec:	85 c0                	test   %eax,%eax
1800724ee:	0f 88 6a 01 00 00    	js     0x18007265e
1800724f4:	bb 80 00 00 00       	mov    $0x80,%ebx
1800724f9:	8b cb                	mov    %ebx,%ecx
1800724fb:	e8 50 79 02 00       	call   0x180099e50
180072500:	48 8b f8             	mov    %rax,%rdi
180072503:	48 85 c0             	test   %rax,%rax
180072506:	75 0a                	jne    0x180072512
180072508:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18007250d:	e9 4c 01 00 00       	jmp    0x18007265e
180072512:	4c 8b c3             	mov    %rbx,%r8
180072515:	33 d2                	xor    %edx,%edx
180072517:	48 8b cf             	mov    %rdi,%rcx
18007251a:	e8 61 37 0c 00       	call   0x180135c80
18007251f:	48 8b 54 24 30       	mov    0x30(%rsp),%rdx
180072524:	4c 8d 84 24 80 00 00 	lea    0x80(%rsp),%r8
18007252b:	00
18007252c:	48 8b ce             	mov    %rsi,%rcx
18007252f:	e8 30 05 00 00       	call   0x180072a64
180072534:	48 8b ac 24 80 00 00 	mov    0x80(%rsp),%rbp
18007253b:	00
18007253c:	8b d8                	mov    %eax,%ebx
18007253e:	85 c0                	test   %eax,%eax
180072540:	0f 88 03 01 00 00    	js     0x180072649
180072546:	48 89 6f 78          	mov    %rbp,0x78(%rdi)
18007254a:	f6 45 38 01          	testb  $0x1,0x38(%rbp)
18007254e:	74 05                	je     0x180072555
180072550:	0f ba 6f 10 10       	btsl   $0x10,0x10(%rdi)
180072555:	49 8b 4d 00          	mov    0x0(%r13),%rcx
180072559:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
18007255d:	48 8b f0             	mov    %rax,%rsi
180072560:	48 ff c6             	inc    %rsi
180072563:	66 44 39 24 71       	cmp    %r12w,(%rcx,%rsi,2)
180072568:	75 f6                	jne    0x180072560
18007256a:	48 ff c0             	inc    %rax
18007256d:	66 45 39 24 46       	cmp    %r12w,(%r14,%rax,2)
180072572:	75 f6                	jne    0x18007256a
180072574:	48 8d 0c 30          	lea    (%rax,%rsi,1),%rcx
180072578:	48 3b ce             	cmp    %rsi,%rcx
18007257b:	0f 82 c3 00 00 00    	jb     0x180072644
180072581:	4c 8d 71 02          	lea    0x2(%rcx),%r14
180072585:	4c 3b f1             	cmp    %rcx,%r14
180072588:	0f 82 b6 00 00 00    	jb     0x180072644
18007258e:	b8 02 00 00 00       	mov    $0x2,%eax
180072593:	49 f7 e6             	mul    %r14
180072596:	48 85 d2             	test   %rdx,%rdx
180072599:	0f 85 a5 00 00 00    	jne    0x180072644
18007259f:	48 8b c8             	mov    %rax,%rcx
1800725a2:	41 8b dc             	mov    %r12d,%ebx
1800725a5:	e8 a6 78 02 00       	call   0x180099e50
1800725aa:	4c 8b e0             	mov    %rax,%r12
1800725ad:	48 85 c0             	test   %rax,%rax
1800725b0:	75 0a                	jne    0x1800725bc
1800725b2:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
1800725b7:	e9 8d 00 00 00       	jmp    0x180072649
1800725bc:	4d 8b 4d 00          	mov    0x0(%r13),%r9
1800725c0:	48 8d 05 11 cd 0d 00 	lea    0xdcd11(%rip),%rax        # 0x18014f2d8
1800725c7:	4c 8d 05 1a cd 0d 00 	lea    0xdcd1a(%rip),%r8        # 0x18014f2e8
1800725ce:	49 8b d6             	mov    %r14,%rdx
1800725d1:	49 8b cc             	mov    %r12,%rcx
1800725d4:	66 41 83 7c 71 fe 5c 	cmpw   $0x5c,-0x2(%r9,%rsi,2)
1800725db:	4c 0f 44 c0          	cmove  %rax,%r8
1800725df:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
1800725e6:	00
1800725e7:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1800725ec:	e8 4b b5 0b 00       	call   0x18012db3c
1800725f1:	4c 89 27             	mov    %r12,(%rdi)
1800725f4:	41 8b 45 08          	mov    0x8(%r13),%eax
1800725f8:	89 47 08             	mov    %eax,0x8(%rdi)
1800725fb:	0f 28 05 8e 19 0d 00 	movaps 0xd198e(%rip),%xmm0        # 0x180143f90
180072602:	48 8b 84 24 98 00 00 	mov    0x98(%rsp),%rax
180072609:	00
18007260a:	0f 11 47 30          	movups %xmm0,0x30(%rdi)
18007260e:	0f 28 0d 8b 19 0d 00 	movaps 0xd198b(%rip),%xmm1        # 0x180143fa0
180072615:	0f 11 4f 40          	movups %xmm1,0x40(%rdi)
180072619:	0f 28 05 90 19 0d 00 	movaps 0xd1990(%rip),%xmm0        # 0x180143fb0
180072620:	0f 11 47 50          	movups %xmm0,0x50(%rdi)
180072624:	0f 28 0d 95 19 0d 00 	movaps 0xd1995(%rip),%xmm1        # 0x180143fc0
18007262b:	0f 11 4f 60          	movups %xmm1,0x60(%rdi)
18007262f:	f2 0f 10 05 99 19 0d 	movsd  0xd1999(%rip),%xmm0        # 0x180143fd0
180072636:	00
180072637:	f2 0f 11 47 70       	movsd  %xmm0,0x70(%rdi)
18007263c:	48 89 38             	mov    %rdi,(%rax)
18007263f:	45 33 e4             	xor    %r12d,%r12d
180072642:	eb 1a                	jmp    0x18007265e
180072644:	bb 95 00 00 c0       	mov    $0xc0000095,%ebx
180072649:	48 8b cf             	mov    %rdi,%rcx
18007264c:	e8 ab 79 02 00       	call   0x180099ffc
180072651:	48 85 ed             	test   %rbp,%rbp
180072654:	74 08                	je     0x18007265e
180072656:	48 8b cd             	mov    %rbp,%rcx
180072659:	e8 9e 79 02 00       	call   0x180099ffc
18007265e:	4c 39 64 24 30       	cmp    %r12,0x30(%rsp)
180072663:	74 0a                	je     0x18007266f
180072665:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
18007266a:	e8 8d 79 02 00       	call   0x180099ffc
18007266f:	8b c3                	mov    %ebx,%eax
180072671:	48 83 c4 40          	add    $0x40,%rsp
180072675:	41 5e                	pop    %r14
180072677:	41 5d                	pop    %r13
180072679:	41 5c                	pop    %r12
18007267b:	5f                   	pop    %rdi
18007267c:	5e                   	pop    %rsi
18007267d:	5d                   	pop    %rbp
18007267e:	5b                   	pop    %rbx
18007267f:	c3                   	ret
180072680:	cc                   	int3
180072681:	cc                   	int3
180072682:	cc                   	int3
180072683:	cc                   	int3
180072684:	40 53                	rex push %rbx
180072686:	48 83 ec 20          	sub    $0x20,%rsp
18007268a:	48 8b d9             	mov    %rcx,%rbx
18007268d:	48 8b 49 78          	mov    0x78(%rcx),%rcx
180072691:	e8 66 79 02 00       	call   0x180099ffc
180072696:	48 8b 0b             	mov    (%rbx),%rcx
180072699:	e8 5e 79 02 00       	call   0x180099ffc
18007269e:	48 83 63 78 00       	andq   $0x0,0x78(%rbx)
1800726a3:	48 83 23 00          	andq   $0x0,(%rbx)
1800726a7:	33 c0                	xor    %eax,%eax
1800726a9:	48 83 c4 20          	add    $0x20,%rsp
1800726ad:	5b                   	pop    %rbx
1800726ae:	c3                   	ret
1800726af:	cc                   	int3
1800726b0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800726b5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1800726ba:	57                   	push   %rdi
1800726bb:	48 83 ec 20          	sub    $0x20,%rsp
1800726bf:	48 8b 59 78          	mov    0x78(%rcx),%rbx
1800726c3:	49 8b f1             	mov    %r9,%rsi
1800726c6:	41 8b f8             	mov    %r8d,%edi
1800726c9:	45 8b c8             	mov    %r8d,%r9d
1800726cc:	48 8b cb             	mov    %rbx,%rcx
1800726cf:	4c 8b 43 28          	mov    0x28(%rbx),%r8
1800726d3:	e8 d8 07 00 00       	call   0x180072eb0
1800726d8:	85 c0                	test   %eax,%eax
1800726da:	78 0b                	js     0x1800726e7
1800726dc:	48 01 7b 28          	add    %rdi,0x28(%rbx)
1800726e0:	48 85 f6             	test   %rsi,%rsi
1800726e3:	74 02                	je     0x1800726e7
1800726e5:	89 3e                	mov    %edi,(%rsi)
1800726e7:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800726ec:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1800726f1:	48 83 c4 20          	add    $0x20,%rsp
1800726f5:	5f                   	pop    %rdi
1800726f6:	c3                   	ret
1800726f7:	cc                   	int3
1800726f8:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1800726fd:	55                   	push   %rbp
1800726fe:	56                   	push   %rsi
1800726ff:	57                   	push   %rdi
180072700:	41 54                	push   %r12
180072702:	41 55                	push   %r13
180072704:	41 56                	push   %r14
180072706:	41 57                	push   %r15
180072708:	48 8b ec             	mov    %rsp,%rbp
18007270b:	48 83 ec 30          	sub    $0x30,%rsp
18007270f:	4c 8b 71 78          	mov    0x78(%rcx),%r14
180072713:	45 33 ed             	xor    %r13d,%r13d
180072716:	4c 89 6d f0          	mov    %r13,-0x10(%rbp)
18007271a:	4d 8b e0             	mov    %r8,%r12
18007271d:	4c 89 6d f8          	mov    %r13,-0x8(%rbp)
180072721:	4c 8b fa             	mov    %rdx,%r15
180072724:	4c 89 6d 48          	mov    %r13,0x48(%rbp)
180072728:	41 8b f5             	mov    %r13d,%esi
18007272b:	48 85 d2             	test   %rdx,%rdx
18007272e:	74 1d                	je     0x18007274d
180072730:	66 44 39 2a          	cmp    %r13w,(%rdx)
180072734:	74 17                	je     0x18007274d
180072736:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
18007273a:	49 8b ce             	mov    %r14,%rcx
18007273d:	e8 7a 04 00 00       	call   0x180072bbc
180072742:	8b f8                	mov    %eax,%edi
180072744:	85 c0                	test   %eax,%eax
180072746:	79 09                	jns    0x180072751
180072748:	e9 8b 00 00 00       	jmp    0x1800727d8
18007274d:	4d 89 6e 28          	mov    %r13,0x28(%r14)
180072751:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
180072755:	49 8b ce             	mov    %r14,%rcx
180072758:	e8 3b 05 00 00       	call   0x180072c98
18007275d:	85 c0                	test   %eax,%eax
18007275f:	78 72                	js     0x1800727d3
180072761:	48 8b 5d f0          	mov    -0x10(%rbp),%rbx
180072765:	f6 43 12 0d          	testb  $0xd,0x12(%rbx)
180072769:	75 e6                	jne    0x180072751
18007276b:	0f b7 43 24          	movzwl 0x24(%rbx),%eax
18007276f:	48 8d 4b 26          	lea    0x26(%rbx),%rcx
180072773:	0f b6 53 13          	movzbl 0x13(%rbx),%edx
180072777:	48 03 c8             	add    %rax,%rcx
18007277a:	74 15                	je     0x180072791
18007277c:	4c 8d 4d 40          	lea    0x40(%rbp),%r9
180072780:	4c 8d 45 48          	lea    0x48(%rbp),%r8
180072784:	e8 ef 05 00 00       	call   0x180072d78
180072789:	48 8b 75 48          	mov    0x48(%rbp),%rsi
18007278d:	8b f8                	mov    %eax,%edi
18007278f:	eb 05                	jmp    0x180072796
180072791:	bf 0d 00 00 c0       	mov    $0xc000000d,%edi
180072796:	85 ff                	test   %edi,%edi
180072798:	78 2a                	js     0x1800727c4
18007279a:	44 8b 75 40          	mov    0x40(%rbp),%r14d
18007279e:	45 39 34 24          	cmp    %r14d,(%r12)
1800727a2:	73 07                	jae    0x1800727ab
1800727a4:	bf 23 00 00 c0       	mov    $0xc0000023,%edi
1800727a9:	eb 15                	jmp    0x1800727c0
1800727ab:	41 8b 14 24          	mov    (%r12),%edx
1800727af:	4d 8b ce             	mov    %r14,%r9
1800727b2:	4c 8b c6             	mov    %rsi,%r8
1800727b5:	49 8b cf             	mov    %r15,%rcx
1800727b8:	e8 c7 b8 0b 00       	call   0x18012e084
1800727bd:	41 8b fd             	mov    %r13d,%edi
1800727c0:	45 89 34 24          	mov    %r14d,(%r12)
1800727c4:	48 85 f6             	test   %rsi,%rsi
1800727c7:	74 13                	je     0x1800727dc
1800727c9:	48 8b ce             	mov    %rsi,%rcx
1800727cc:	e8 2b 78 02 00       	call   0x180099ffc
1800727d1:	eb 09                	jmp    0x1800727dc
1800727d3:	bf 25 02 00 c0       	mov    $0xc0000225,%edi
1800727d8:	48 8b 5d f0          	mov    -0x10(%rbp),%rbx
1800727dc:	48 85 db             	test   %rbx,%rbx
1800727df:	74 08                	je     0x1800727e9
1800727e1:	48 8b cb             	mov    %rbx,%rcx
1800727e4:	e8 13 78 02 00       	call   0x180099ffc
1800727e9:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
1800727f0:	00
1800727f1:	8b c7                	mov    %edi,%eax
1800727f3:	48 83 c4 30          	add    $0x30,%rsp
1800727f7:	41 5f                	pop    %r15
1800727f9:	41 5e                	pop    %r14
1800727fb:	41 5d                	pop    %r13
1800727fd:	41 5c                	pop    %r12
1800727ff:	5f                   	pop    %rdi
180072800:	5e                   	pop    %rsi
180072801:	5d                   	pop    %rbp
180072802:	c3                   	ret
180072803:	cc                   	int3
180072804:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180072809:	57                   	push   %rdi
18007280a:	48 83 ec 40          	sub    $0x40,%rsp
18007280e:	48 8b 59 78          	mov    0x78(%rcx),%rbx
180072812:	41 b8 20 00 00 00    	mov    $0x20,%r8d