1801185fe:	e8 4d 18 f8 ff       	call   0x180099e50
180118603:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
180118608:	48 89 45 9f          	mov    %rax,-0x61(%rbp)
18011860c:	48 85 c0             	test   %rax,%rax
18011860f:	0f 84 ee 03 00 00    	je     0x180118a03
180118615:	45 8b c6             	mov    %r14d,%r8d
180118618:	33 d2                	xor    %edx,%edx
18011861a:	48 8b c8             	mov    %rax,%rcx
18011861d:	e8 5e d6 01 00       	call   0x180135c80
180118622:	41 8b ce             	mov    %r14d,%ecx
180118625:	e8 26 18 f8 ff       	call   0x180099e50
18011862a:	48 89 45 97          	mov    %rax,-0x69(%rbp)
18011862e:	4c 8b e0             	mov    %rax,%r12
180118631:	48 85 c0             	test   %rax,%rax
180118634:	0f 84 c9 03 00 00    	je     0x180118a03
18011863a:	45 8b c6             	mov    %r14d,%r8d
18011863d:	33 d2                	xor    %edx,%edx
18011863f:	48 8b c8             	mov    %rax,%rcx
180118642:	e8 39 d6 01 00       	call   0x180135c80
180118647:	48 8b 7d b7          	mov    -0x49(%rbp),%rdi
18011864b:	41 be 34 00 00 c0    	mov    $0xc0000034,%r14d
180118651:	4c 8b 07             	mov    (%rdi),%r8
180118654:	4d 85 c0             	test   %r8,%r8
180118657:	0f 84 ec 00 00 00    	je     0x180118749
18011865d:	4c 8d 0d e4 4f 04 00 	lea    0x44fe4(%rip),%r9        # 0x18015d648
180118664:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
180118669:	e8 7a 34 f0 ff       	call   0x18001bae8
18011866e:	4c 8b 6c 24 58       	mov    0x58(%rsp),%r13
180118673:	8b d8                	mov    %eax,%ebx
180118675:	85 c0                	test   %eax,%eax
180118677:	0f 89 88 00 00 00    	jns    0x180118705
18011867d:	41 3b c6             	cmp    %r14d,%eax
180118680:	0f 84 c3 00 00 00    	je     0x180118749
180118686:	3d 7c 01 00 c0       	cmp    $0xc000017c,%eax
18011868b:	0f 84 b8 00 00 00    	je     0x180118749
180118691:	4c 8b 7c 24 48       	mov    0x48(%rsp),%r15
180118696:	4d 85 ff             	test   %r15,%r15
180118699:	74 08                	je     0x1801186a3
18011869b:	49 8b cf             	mov    %r15,%rcx
18011869e:	e8 59 19 f8 ff       	call   0x180099ffc
1801186a3:	48 8b 45 a7          	mov    -0x59(%rbp),%rax
1801186a7:	48 85 c0             	test   %rax,%rax
1801186aa:	74 08                	je     0x1801186b4
1801186ac:	48 8b c8             	mov    %rax,%rcx
1801186af:	e8 48 19 f8 ff       	call   0x180099ffc
1801186b4:	4d 85 e4             	test   %r12,%r12
1801186b7:	74 08                	je     0x1801186c1
1801186b9:	49 8b cc             	mov    %r12,%rcx
1801186bc:	e8 3b 19 f8 ff       	call   0x180099ffc
1801186c1:	48 85 f6             	test   %rsi,%rsi
1801186c4:	74 08                	je     0x1801186ce
1801186c6:	48 8b ce             	mov    %rsi,%rcx
1801186c9:	e8 2e 19 f8 ff       	call   0x180099ffc
1801186ce:	4d 85 ed             	test   %r13,%r13
1801186d1:	74 08                	je     0x1801186db
1801186d3:	49 8b cd             	mov    %r13,%rcx
1801186d6:	e8 21 19 f8 ff       	call   0x180099ffc
1801186db:	8b c3                	mov    %ebx,%eax
1801186dd:	48 8b 4d 1f          	mov    0x1f(%rbp),%rcx
1801186e1:	48 33 cc             	xor    %rsp,%rcx
1801186e4:	e8 43 d4 ef ff       	call   0x180015b2c
1801186e9:	48 8b 9c 24 58 01 00 	mov    0x158(%rsp),%rbx
1801186f0:	00
1801186f1:	48 81 c4 00 01 00 00 	add    $0x100,%rsp
1801186f8:	41 5f                	pop    %r15
1801186fa:	41 5e                	pop    %r14
1801186fc:	41 5d                	pop    %r13
1801186fe:	41 5c                	pop    %r12
180118700:	5f                   	pop    %rdi
180118701:	5e                   	pop    %rsi
180118702:	5d                   	pop    %rbp
180118703:	c3                   	ret
180118704:	cc                   	int3
180118705:	0f 10 05 cc 4f 04 00 	movups 0x44fcc(%rip),%xmm0        # 0x18015d6d8
18011870c:	f3 0f 7f 45 b7       	movdqu %xmm0,-0x49(%rbp)
180118711:	4d 85 ed             	test   %r13,%r13
180118714:	74 21                	je     0x180118737
180118716:	4c 8d 4c 24 50       	lea    0x50(%rsp),%r9
18011871b:	49 8b cd             	mov    %r13,%rcx
18011871e:	4c 8d 45 c7          	lea    -0x39(%rbp),%r8
180118722:	48 8d 55 b7          	lea    -0x49(%rbp),%rdx
180118726:	e8 2d ee ff ff       	call   0x180117558
18011872b:	8b d8                	mov    %eax,%ebx
18011872d:	48 8b 45 c7          	mov    -0x39(%rbp),%rax
180118731:	48 89 45 a7          	mov    %rax,-0x59(%rbp)
180118735:	eb 05                	jmp    0x18011873c
180118737:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18011873c:	85 db                	test   %ebx,%ebx
18011873e:	79 52                	jns    0x180118792
180118740:	41 3b de             	cmp    %r14d,%ebx
180118743:	0f 85 48 ff ff ff    	jne    0x180118691
180118749:	44 8b 7c 24 40       	mov    0x40(%rsp),%r15d
18011874e:	4c 8b 47 08          	mov    0x8(%rdi),%r8
180118752:	4d 85 c0             	test   %r8,%r8
180118755:	0f 84 12 01 00 00    	je     0x18011886d
18011875b:	4c 8d 0d f6 4e 04 00 	lea    0x44ef6(%rip),%r9        # 0x18015d658
180118762:	48 8d 4d 87          	lea    -0x79(%rbp),%rcx
180118766:	e8 7d 33 f0 ff       	call   0x18001bae8
18011876b:	48 8b 75 87          	mov    -0x79(%rbp),%rsi
18011876f:	8b d8                	mov    %eax,%ebx
180118771:	85 c0                	test   %eax,%eax
180118773:	0f 89 99 00 00 00    	jns    0x180118812
180118779:	41 3b c6             	cmp    %r14d,%eax
18011877c:	0f 84 eb 00 00 00    	je     0x18011886d
180118782:	3d 7c 01 00 c0       	cmp    $0xc000017c,%eax
180118787:	0f 84 e0 00 00 00    	je     0x18011886d
18011878d:	e9 ff fe ff ff       	jmp    0x180118691
180118792:	48 8b 5d a7          	mov    -0x59(%rbp),%rbx
180118796:	8b 43 08             	mov    0x8(%rbx),%eax
180118799:	83 f8 10             	cmp    $0x10,%eax
18011879c:	72 ab                	jb     0x180118749
18011879e:	4c 8d 43 0c          	lea    0xc(%rbx),%r8
1801187a2:	41 39 30             	cmp    %esi,(%r8)
1801187a5:	75 a2                	jne    0x180118749
1801187a7:	83 c0 fc             	add    $0xfffffffc,%eax
1801187aa:	45 33 d2             	xor    %r10d,%r10d
1801187ad:	8b c8                	mov    %eax,%ecx
1801187af:	48 b8 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rax
1801187b6:	aa aa aa
1801187b9:	48 f7 e1             	mul    %rcx
1801187bc:	48 c1 ea 03          	shr    $0x3,%rdx
1801187c0:	44 8b da             	mov    %edx,%r11d
1801187c3:	85 d2                	test   %edx,%edx
1801187c5:	74 3b                	je     0x180118802
1801187c7:	4d 8d 48 04          	lea    0x4(%r8),%r9
1801187cb:	b3 30                	mov    $0x30,%bl
1801187cd:	f2 41 0f 10 01       	movsd  (%r9),%xmm0
1801187d2:	f2 0f 11 45 b7       	movsd  %xmm0,-0x49(%rbp)
1801187d7:	48 8b 4d b7          	mov    -0x49(%rbp),%rcx
1801187db:	48 c1 e9 20          	shr    $0x20,%rcx
1801187df:	84 cb                	test   %cl,%bl
1801187e1:	74 13                	je     0x1801187f6
1801187e3:	8b c1                	mov    %ecx,%eax
1801187e5:	22 c3                	and    %bl,%al
1801187e7:	3c 10                	cmp    $0x10,%al
1801187e9:	74 0b                	je     0x1801187f6
1801187eb:	22 cb                	and    %bl,%cl
1801187ed:	80 f9 20             	cmp    $0x20,%cl
1801187f0:	0f 85 53 ff ff ff    	jne    0x180118749
1801187f6:	49 ff c2             	inc    %r10
1801187f9:	49 83 c1 0c          	add    $0xc,%r9
1801187fd:	4d 3b d3             	cmp    %r11,%r10
180118800:	72 cb                	jb     0x1801187cd
180118802:	4c 89 45 cf          	mov    %r8,-0x31(%rbp)
180118806:	44 8b fa             	mov    %edx,%r15d
180118809:	89 54 24 40          	mov    %edx,0x40(%rsp)
18011880d:	e9 3c ff ff ff       	jmp    0x18011874e
180118812:	8b 4c 24 44          	mov    0x44(%rsp),%ecx
180118816:	4c 8d 75 0f          	lea    0xf(%rbp),%r14
18011881a:	33 ff                	xor    %edi,%edi
18011881c:	33 c0                	xor    %eax,%eax
18011881e:	0f 57 c0             	xorps  %xmm0,%xmm0
180118821:	48 89 45 07          	mov    %rax,0x7(%rbp)
180118825:	89 44 24 50          	mov    %eax,0x50(%rsp)
180118829:	0f 11 45 e7          	movups %xmm0,-0x19(%rbp)
18011882d:	0f 11 45 f7          	movups %xmm0,-0x9(%rbp)
180118831:	48 85 f6             	test   %rsi,%rsi
180118834:	74 26                	je     0x18011885c
180118836:	41 8b 16             	mov    (%r14),%edx
180118839:	4c 8d 4d e7          	lea    -0x19(%rbp),%r9
18011883d:	4c 8d 44 24 50       	lea    0x50(%rsp),%r8
180118842:	48 8b ce             	mov    %rsi,%rcx
180118845:	e8 26 fc ff ff       	call   0x180118470
18011884a:	8b d8                	mov    %eax,%ebx
18011884c:	85 c0                	test   %eax,%eax
18011884e:	0f 88 3d fe ff ff    	js     0x180118691
180118854:	8b 44 24 50          	mov    0x50(%rsp),%eax
180118858:	8b 4c 24 44          	mov    0x44(%rsp),%ecx
18011885c:	03 c8                	add    %eax,%ecx
18011885e:	ff c7                	inc    %edi
180118860:	49 83 c6 04          	add    $0x4,%r14
180118864:	89 4c 24 44          	mov    %ecx,0x44(%rsp)
180118868:	83 ff 03             	cmp    $0x3,%edi
18011886b:	72 af                	jb     0x18011881c
18011886d:	8b 44 24 44          	mov    0x44(%rsp),%eax
180118871:	41 03 c7             	add    %r15d,%eax
180118874:	75 07                	jne    0x18011887d
180118876:	33 db                	xor    %ebx,%ebx
180118878:	e9 14 fe ff ff       	jmp    0x180118691
18011887d:	33 db                	xor    %ebx,%ebx
18011887f:	41 be 95 00 00 c0    	mov    $0xc0000095,%r14d
180118885:	85 c0                	test   %eax,%eax
180118887:	74 2e                	je     0x1801188b7
180118889:	8b c8                	mov    %eax,%ecx
18011888b:	8d 43 0c             	lea    0xc(%rbx),%eax
18011888e:	48 f7 e1             	mul    %rcx
180118891:	48 8b c8             	mov    %rax,%rcx
180118894:	48 85 d2             	test   %rdx,%rdx
180118897:	74 08                	je     0x1801188a1
180118899:	41 8b de             	mov    %r14d,%ebx
18011889c:	e9 f0 fd ff ff       	jmp    0x180118691
1801188a1:	48 83 c0 04          	add    $0x4,%rax
1801188a5:	49 83 cf ff          	or     $0xffffffffffffffff,%r15
1801188a9:	48 3b c1             	cmp    %rcx,%rax
1801188ac:	4c 0f 43 f8          	cmovae %rax,%r15
1801188b0:	1b db                	sbb    %ebx,%ebx
1801188b2:	41 23 de             	and    %r14d,%ebx
1801188b5:	eb 03                	jmp    0x1801188ba
1801188b7:	45 33 ff             	xor    %r15d,%r15d
1801188ba:	85 db                	test   %ebx,%ebx
1801188bc:	0f 88 cf fd ff ff    	js     0x180118691
1801188c2:	49 8b cf             	mov    %r15,%rcx
1801188c5:	e8 86 15 f8 ff       	call   0x180099e50
1801188ca:	48 8b f8             	mov    %rax,%rdi
1801188cd:	48 85 c0             	test   %rax,%rax
1801188d0:	0f 84 2d 01 00 00    	je     0x180118a03
1801188d6:	4d 8b c7             	mov    %r15,%r8
1801188d9:	33 d2                	xor    %edx,%edx
1801188db:	48 8b c8             	mov    %rax,%rcx
1801188de:	e8 9d d3 01 00       	call   0x180135c80
1801188e3:	8b 4c 24 40          	mov    0x40(%rsp),%ecx
1801188e7:	85 c9                	test   %ecx,%ecx
1801188e9:	74 47                	je     0x180118932
1801188eb:	48 8b 55 cf          	mov    -0x31(%rbp),%rdx
1801188ef:	44 8b c1             	mov    %ecx,%r8d
1801188f2:	48 83 c2 04          	add    $0x4,%rdx
1801188f6:	8b 42 04             	mov    0x4(%rdx),%eax
1801188f9:	83 e0 0f             	and    $0xf,%eax
1801188fc:	83 f8 0f             	cmp    $0xf,%eax
1801188ff:	77 0a                	ja     0x18011890b
180118901:	b9 01 82 00 00       	mov    $0x8201,%ecx
180118906:	0f a3 c1             	bt     %eax,%ecx
180118909:	72 19                	jb     0x180118924
18011890b:	8b 07                	mov    (%rdi),%eax
18011890d:	f2 0f 10 02          	movsd  (%rdx),%xmm0
180118911:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
180118915:	f2 0f 11 44 8f 04    	movsd  %xmm0,0x4(%rdi,%rcx,4)
18011891b:	8b 42 08             	mov    0x8(%rdx),%eax
18011891e:	89 44 8f 0c          	mov    %eax,0xc(%rdi,%rcx,4)
180118922:	ff 07                	incl   (%rdi)
180118924:	48 83 c2 0c          	add    $0xc,%rdx
180118928:	49 83 e8 01          	sub    $0x1,%r8
18011892c:	75 c8                	jne    0x1801188f6
18011892e:	8b 4c 24 40          	mov    0x40(%rsp),%ecx
180118932:	8b 54 24 44          	mov    0x44(%rsp),%edx
180118936:	85 d2                	test   %edx,%edx
180118938:	74 73                	je     0x1801189ad
18011893a:	45 33 ff             	xor    %r15d,%r15d
18011893d:	4c 8d 65 0f          	lea    0xf(%rbp),%r12
180118941:	48 85 f6             	test   %rsi,%rsi
180118944:	74 3c                	je     0x180118982
180118946:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
18011894b:	44 8d 04 0a          	lea    (%rdx,%rcx,1),%r8d
18011894f:	41 8b 14 24          	mov    (%r12),%edx
180118953:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
180118957:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
18011895c:	4c 8d 4d 97          	lea    -0x69(%rbp),%r9
180118960:	48 8d 45 9f          	lea    -0x61(%rbp),%rax
180118964:	48 8b ce             	mov    %rsi,%rcx
180118967:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
18011896c:	48 8d 45 93          	lea    -0x6d(%rbp),%rax
180118970:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180118975:	e8 be ef ff ff       	call   0x180117938
18011897a:	8b 54 24 44          	mov    0x44(%rsp),%edx
18011897e:	8b d8                	mov    %eax,%ebx
180118980:	eb 02                	jmp    0x180118984
180118982:	33 db                	xor    %ebx,%ebx
180118984:	85 db                	test   %ebx,%ebx
180118986:	78 1b                	js     0x1801189a3
180118988:	8b 4c 24 40          	mov    0x40(%rsp),%ecx
18011898c:	41 ff c7             	inc    %r15d
18011898f:	49 83 c4 04          	add    $0x4,%r12
180118993:	41 83 ff 03          	cmp    $0x3,%r15d
180118997:	72 a8                	jb     0x180118941
180118999:	4c 8b 65 97          	mov    -0x69(%rbp),%r12
18011899d:	4c 8b 7d 9f          	mov    -0x61(%rbp),%r15
1801189a1:	eb 0f                	jmp    0x1801189b2
1801189a3:	4c 8b 65 97          	mov    -0x69(%rbp),%r12
1801189a7:	4c 8b 7d 9f          	mov    -0x61(%rbp),%r15
1801189ab:	eb 60                	jmp    0x180118a0d
1801189ad:	4c 8b 7c 24 48       	mov    0x48(%rsp),%r15
1801189b2:	8b 0f                	mov    (%rdi),%ecx
1801189b4:	85 c9                	test   %ecx,%ecx
1801189b6:	74 55                	je     0x180118a0d
1801189b8:	b8 0c 00 00 00       	mov    $0xc,%eax
1801189bd:	48 f7 e1             	mul    %rcx
1801189c0:	48 8b c8             	mov    %rax,%rcx
1801189c3:	48 85 d2             	test   %rdx,%rdx
1801189c6:	74 09                	je     0x1801189d1
1801189c8:	48 8b 45 d7          	mov    -0x29(%rbp),%rax
1801189cc:	41 8b de             	mov    %r14d,%ebx
1801189cf:	eb 20                	jmp    0x1801189f1
1801189d1:	48 83 c0 04          	add    $0x4,%rax
1801189d5:	48 c7 c2 ff ff ff ff 	mov    $0xffffffffffffffff,%rdx
1801189dc:	48 3b c1             	cmp    %rcx,%rax
1801189df:	48 0f 43 d0          	cmovae %rax,%rdx
1801189e3:	48 8b 45 d7          	mov    -0x29(%rbp),%rax
1801189e7:	1b db                	sbb    %ebx,%ebx
1801189e9:	48 89 10             	mov    %rdx,(%rax)
1801189ec:	41 23 de             	and    %r14d,%ebx
1801189ef:	7d 06                	jge    0x1801189f7
1801189f1:	48 83 20 00          	andq   $0x0,(%rax)
1801189f5:	eb 16                	jmp    0x180118a0d
1801189f7:	48 8b 45 df          	mov    -0x21(%rbp),%rax
1801189fb:	48 89 38             	mov    %rdi,(%rax)
1801189fe:	e9 93 fc ff ff       	jmp    0x180118696
180118a03:	4c 8b 7c 24 48       	mov    0x48(%rsp),%r15
180118a08:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
180118a0d:	48 85 ff             	test   %rdi,%rdi
180118a10:	0f 84 80 fc ff ff    	je     0x180118696
180118a16:	48 8b cf             	mov    %rdi,%rcx
180118a19:	e8 de 15 f8 ff       	call   0x180099ffc
180118a1e:	e9 73 fc ff ff       	jmp    0x180118696
180118a23:	cc                   	int3
180118a24:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
180118a29:	55                   	push   %rbp
180118a2a:	56                   	push   %rsi
180118a2b:	57                   	push   %rdi
180118a2c:	41 54                	push   %r12
180118a2e:	41 55                	push   %r13
180118a30:	41 56                	push   %r14
180118a32:	41 57                	push   %r15
180118a34:	48 8d 6c 24 d9       	lea    -0x27(%rsp),%rbp
180118a39:	48 81 ec b0 00 00 00 	sub    $0xb0,%rsp
180118a40:	48 8b 05 29 3f 05 00 	mov    0x53f29(%rip),%rax        # 0x18016c970
180118a47:	48 33 c4             	xor    %rsp,%rax
180118a4a:	48 89 45 1f          	mov    %rax,0x1f(%rbp)
180118a4e:	4c 89 45 9f          	mov    %r8,-0x61(%rbp)
180118a52:	4c 8b e2             	mov    %rdx,%r12
180118a55:	4c 8b f1             	mov    %rcx,%r14
180118a58:	41 bd 05 00 00 00    	mov    $0x5,%r13d
180118a5e:	41 bb 01 82 00 00    	mov    $0x8201,%r11d
180118a64:	33 ff                	xor    %edi,%edi
180118a66:	45 33 ff             	xor    %r15d,%r15d
180118a69:	33 f6                	xor    %esi,%esi
180118a6b:	33 db                	xor    %ebx,%ebx
180118a6d:	83 fb 0f             	cmp    $0xf,%ebx
180118a70:	77 0c                	ja     0x180118a7e
180118a72:	41 0f a3 db          	bt     %ebx,%r11d
180118a76:	73 06                	jae    0x180118a7e
180118a78:	49 8b 4e 08          	mov    0x8(%r14),%rcx
180118a7c:	eb 0e                	jmp    0x180118a8c
180118a7e:	83 fb 0a             	cmp    $0xa,%ebx
180118a81:	75 06                	jne    0x180118a89
180118a83:	49 8b 4e 10          	mov    0x10(%r14),%rcx
180118a87:	eb 03                	jmp    0x180118a8c
180118a89:	49 8b 0e             	mov    (%r14),%rcx
180118a8c:	48 85 c9             	test   %rcx,%rcx
180118a8f:	0f 84 96 00 00 00    	je     0x180118b2b
180118a95:	44 21 7d 97          	and    %r15d,-0x69(%rbp)
180118a99:	4c 8d 45 97          	lea    -0x69(%rbp),%r8
180118a9d:	33 c0                	xor    %eax,%eax
180118a9f:	0f 57 c0             	xorps  %xmm0,%xmm0
180118aa2:	83 fb 0a             	cmp    $0xa,%ebx
180118aa5:	75 1c                	jne    0x180118ac3
180118aa7:	21 45 97             	and    %eax,-0x69(%rbp)
180118aaa:	48 8d 55 a7          	lea    -0x59(%rbp),%rdx
180118aae:	0f 11 45 b7          	movups %xmm0,-0x49(%rbp)
180118ab2:	e8 d1 30 f0 ff       	call   0x18001bb88
180118ab7:	8b f8                	mov    %eax,%edi