18011569b:	44 8d 42 7e          	lea    0x7e(%rdx),%r8d
18011569f:	4c 89 7d af          	mov    %r15,-0x51(%rbp)
1801156a3:	48 c7 45 b7 20 00 00 	movq   $0x20,-0x49(%rbp)
1801156aa:	00
1801156ab:	0f 10 01             	movups (%rcx),%xmm0
1801156ae:	0f 11 00             	movups %xmm0,(%rax)
1801156b1:	0f 10 49 10          	movups 0x10(%rcx),%xmm1
1801156b5:	0f 11 48 10          	movups %xmm1,0x10(%rax)
1801156b9:	0f 10 41 20          	movups 0x20(%rcx),%xmm0
1801156bd:	0f 11 40 20          	movups %xmm0,0x20(%rax)
1801156c1:	0f 10 49 30          	movups 0x30(%rcx),%xmm1
1801156c5:	0f 11 48 30          	movups %xmm1,0x30(%rax)
1801156c9:	0f 10 41 40          	movups 0x40(%rcx),%xmm0
1801156cd:	0f 11 40 40          	movups %xmm0,0x40(%rax)
1801156d1:	0f 10 49 50          	movups 0x50(%rcx),%xmm1
1801156d5:	0f 11 48 50          	movups %xmm1,0x50(%rax)
1801156d9:	0f 10 41 60          	movups 0x60(%rcx),%xmm0
1801156dd:	0f 11 40 60          	movups %xmm0,0x60(%rax)
1801156e1:	49 03 c0             	add    %r8,%rax
1801156e4:	0f 10 49 70          	movups 0x70(%rcx),%xmm1
1801156e8:	49 03 c8             	add    %r8,%rcx
1801156eb:	0f 11 48 f0          	movups %xmm1,-0x10(%rax)
1801156ef:	48 83 ea 01          	sub    $0x1,%rdx
1801156f3:	75 b6                	jne    0x1801156ab
1801156f5:	4c 8b 75 e7          	mov    -0x19(%rbp),%r14
1801156f9:	8d 42 01             	lea    0x1(%rdx),%eax
1801156fc:	4c 8b 64 24 38       	mov    0x38(%rsp),%r12
180115701:	49 8d 77 ff          	lea    -0x1(%r15),%rsi
180115705:	33 db                	xor    %ebx,%ebx
180115707:	85 c0                	test   %eax,%eax
180115709:	74 1d                	je     0x180115728
18011570b:	4d 8b cd             	mov    %r13,%r9
18011570e:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
180115712:	4c 8b c7             	mov    %rdi,%r8
180115715:	48 8b d3             	mov    %rbx,%rdx
180115718:	e8 13 10 00 00       	call   0x180116730
18011571d:	85 c0                	test   %eax,%eax
18011571f:	74 07                	je     0x180115728
180115721:	b8 01 00 00 00       	mov    $0x1,%eax
180115726:	eb 02                	jmp    0x18011572a
180115728:	33 c0                	xor    %eax,%eax
18011572a:	48 3b de             	cmp    %rsi,%rbx
18011572d:	74 36                	je     0x180115765
18011572f:	49 ff c6             	inc    %r14
180115732:	85 c0                	test   %eax,%eax
180115734:	74 2d                	je     0x180115763
180115736:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
18011573b:	4d 8b cc             	mov    %r12,%r9
18011573e:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
180115743:	4c 8b c7             	mov    %rdi,%r8
180115746:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
18011574b:	48 8b cf             	mov    %rdi,%rcx
18011574e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180115753:	e8 48 d8 01 00       	call   0x180132fa0
180115758:	85 c0                	test   %eax,%eax
18011575a:	74 07                	je     0x180115763
18011575c:	b8 01 00 00 00       	mov    $0x1,%eax
180115761:	eb 02                	jmp    0x180115765
180115763:	33 c0                	xor    %eax,%eax
180115765:	48 ff c3             	inc    %rbx
180115768:	49 3b df             	cmp    %r15,%rbx
18011576b:	75 9a                	jne    0x180115707
18011576d:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
180115772:	4c 8b 74 24 48       	mov    0x48(%rsp),%r14
180115777:	85 c0                	test   %eax,%eax
180115779:	74 22                	je     0x18011579d
18011577b:	49 8b 54 f6 f8       	mov    -0x8(%r14,%rsi,8),%rdx
180115780:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
180115784:	48 ff ca             	dec    %rdx
180115787:	4d 8b cd             	mov    %r13,%r9
18011578a:	4c 8b c7             	mov    %rdi,%r8
18011578d:	e8 a6 10 00 00       	call   0x180116838
180115792:	85 c0                	test   %eax,%eax
180115794:	74 07                	je     0x18011579d
180115796:	bb 01 00 00 00       	mov    $0x1,%ebx
18011579b:	eb 02                	jmp    0x18011579f
18011579d:	33 db                	xor    %ebx,%ebx
18011579f:	48 83 ee 01          	sub    $0x1,%rsi
1801157a3:	48 89 74 24 60       	mov    %rsi,0x60(%rsp)
1801157a8:	0f 84 b9 00 00 00    	je     0x180115867
1801157ae:	4d 8d 34 f6          	lea    (%r14,%rsi,8),%r14
1801157b2:	49 83 c6 f8          	add    $0xfffffffffffffff8,%r14
1801157b6:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
1801157bb:	4c 8b 7d 8f          	mov    -0x71(%rbp),%r15
1801157bf:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1801157c4:	85 db                	test   %ebx,%ebx
1801157c6:	74 26                	je     0x1801157ee
1801157c8:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
1801157cd:	4d 8b cc             	mov    %r12,%r9
1801157d0:	4c 8b c7             	mov    %rdi,%r8
1801157d3:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1801157d8:	48 8b d7             	mov    %rdi,%rdx
1801157db:	48 8b cf             	mov    %rdi,%rcx
1801157de:	e8 bd d7 01 00       	call   0x180132fa0
1801157e3:	85 c0                	test   %eax,%eax
1801157e5:	74 07                	je     0x1801157ee
1801157e7:	bb 01 00 00 00       	mov    $0x1,%ebx
1801157ec:	eb 02                	jmp    0x1801157f0
1801157ee:	33 db                	xor    %ebx,%ebx
1801157f0:	49 83 ef 01          	sub    $0x1,%r15
1801157f4:	75 ce                	jne    0x1801157c4
1801157f6:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
1801157fb:	4c 8b 74 24 48       	mov    0x48(%rsp),%r14
180115800:	85 db                	test   %ebx,%ebx
180115802:	74 47                	je     0x18011584b
180115804:	49 8b 16             	mov    (%r14),%rdx
180115807:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
18011580b:	48 8b 5d 87          	mov    -0x79(%rbp),%rbx
18011580f:	48 ff ca             	dec    %rdx
180115812:	4c 8b c3             	mov    %rbx,%r8
180115815:	4d 8b cd             	mov    %r13,%r9
180115818:	e8 1b 10 00 00       	call   0x180116838
18011581d:	85 c0                	test   %eax,%eax
18011581f:	74 2a                	je     0x18011584b
180115821:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
180115826:	4d 8b cc             	mov    %r12,%r9
180115829:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
18011582e:	4c 8b c7             	mov    %rdi,%r8
180115831:	48 8b d3             	mov    %rbx,%rdx
180115834:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180115839:	48 8b cf             	mov    %rdi,%rcx
18011583c:	e8 5f d7 01 00       	call   0x180132fa0
180115841:	85 c0                	test   %eax,%eax
180115843:	74 06                	je     0x18011584b
180115845:	41 8d 5f 01          	lea    0x1(%r15),%ebx
180115849:	eb 02                	jmp    0x18011584d
18011584b:	33 db                	xor    %ebx,%ebx
18011584d:	48 ff ce             	dec    %rsi
180115850:	49 83 ee 08          	sub    $0x8,%r14
180115854:	48 89 74 24 60       	mov    %rsi,0x60(%rsp)
180115859:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
18011585e:	48 85 f6             	test   %rsi,%rsi
180115861:	0f 85 54 ff ff ff    	jne    0x1801157bb
180115867:	4c 8b 74 24 30       	mov    0x30(%rsp),%r14
18011586c:	e9 23 fb ff ff       	jmp    0x180115394
180115871:	48 8b 45 87          	mov    -0x79(%rbp),%rax
180115875:	41 b8 02 00 00 00    	mov    $0x2,%r8d
18011587b:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
180115880:	41 8b d0             	mov    %r8d,%edx
180115883:	48 89 45 a7          	mov    %rax,-0x59(%rbp)
180115887:	48 8b c7             	mov    %rdi,%rax
18011588a:	48 89 7d 9f          	mov    %rdi,-0x61(%rbp)
18011588e:	0f 10 01             	movups (%rcx),%xmm0
180115891:	48 8d 89 80 00 00 00 	lea    0x80(%rcx),%rcx
180115898:	0f 11 00             	movups %xmm0,(%rax)
18011589b:	48 8d 80 80 00 00 00 	lea    0x80(%rax),%rax
1801158a2:	0f 10 49 90          	movups -0x70(%rcx),%xmm1
1801158a6:	0f 11 48 90          	movups %xmm1,-0x70(%rax)
1801158aa:	0f 10 41 a0          	movups -0x60(%rcx),%xmm0
1801158ae:	0f 11 40 a0          	movups %xmm0,-0x60(%rax)
1801158b2:	0f 10 49 b0          	movups -0x50(%rcx),%xmm1
1801158b6:	0f 11 48 b0          	movups %xmm1,-0x50(%rax)
1801158ba:	0f 10 41 c0          	movups -0x40(%rcx),%xmm0
1801158be:	0f 11 40 c0          	movups %xmm0,-0x40(%rax)
1801158c2:	0f 10 49 d0          	movups -0x30(%rcx),%xmm1
1801158c6:	0f 11 48 d0          	movups %xmm1,-0x30(%rax)
1801158ca:	0f 10 41 e0          	movups -0x20(%rcx),%xmm0
1801158ce:	0f 11 40 e0          	movups %xmm0,-0x20(%rax)
1801158d2:	0f 10 49 f0          	movups -0x10(%rcx),%xmm1
1801158d6:	0f 11 48 f0          	movups %xmm1,-0x10(%rax)
1801158da:	48 83 ea 01          	sub    $0x1,%rdx
1801158de:	75 ae                	jne    0x18011588e
1801158e0:	48 8b 75 e7          	mov    -0x19(%rbp),%rsi
1801158e4:	44 8b 7c 24 58       	mov    0x58(%rsp),%r15d
1801158e9:	bb 01 00 00 00       	mov    $0x1,%ebx
1801158ee:	49 8b c4             	mov    %r12,%rax
1801158f1:	49 ff cc             	dec    %r12
1801158f4:	48 85 c0             	test   %rax,%rax
1801158f7:	0f 84 4f 01 00 00    	je     0x180115a4c
1801158fd:	48 8b 45 bf          	mov    -0x41(%rbp),%rax
180115901:	4c 0f a3 20          	bt     %r12,(%rax)
180115905:	48 ff c6             	inc    %rsi
180115908:	0f 92 c0             	setb   %al
18011590b:	44 0f b6 f0          	movzbl %al,%r14d
18011590f:	85 db                	test   %ebx,%ebx
180115911:	74 2d                	je     0x180115940
180115913:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
180115918:	4c 8b c7             	mov    %rdi,%r8
18011591b:	4c 8b 4c 24 38       	mov    0x38(%rsp),%r9
180115920:	48 8b d7             	mov    %rdi,%rdx
180115923:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
180115928:	48 8b cf             	mov    %rdi,%rcx
18011592b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180115930:	e8 6b d6 01 00       	call   0x180132fa0
180115935:	85 c0                	test   %eax,%eax
180115937:	74 07                	je     0x180115940
180115939:	bb 01 00 00 00       	mov    $0x1,%ebx
18011593e:	eb 02                	jmp    0x180115942
180115940:	33 db                	xor    %ebx,%ebx
180115942:	45 85 ff             	test   %r15d,%r15d
180115945:	0f 84 aa 00 00 00    	je     0x1801159f5
18011594b:	48 ff 45 c7          	incq   -0x39(%rbp)
18011594f:	85 db                	test   %ebx,%ebx
180115951:	0f 84 ee 00 00 00    	je     0x180115a45
180115957:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
18011595c:	48 8b d7             	mov    %rdi,%rdx
18011595f:	4c 8b 45 87          	mov    -0x79(%rbp),%r8
180115963:	48 8b 01             	mov    (%rcx),%rax
180115966:	4c 8b 49 38          	mov    0x38(%rcx),%r9
18011596a:	48 8b cf             	mov    %rdi,%rcx
18011596d:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180115972:	e8 0d aa ff ff       	call   0x180110384
180115977:	85 c0                	test   %eax,%eax
180115979:	0f 84 c6 00 00 00    	je     0x180115a45
18011597f:	49 8b ce             	mov    %r14,%rcx
180115982:	48 8d 45 a7          	lea    -0x59(%rbp),%rax
180115986:	48 c1 e1 03          	shl    $0x3,%rcx
18011598a:	41 b8 02 00 00 00    	mov    $0x2,%r8d
180115990:	48 2b c1             	sub    %rcx,%rax
180115993:	48 8b 54 0d 9f       	mov    -0x61(%rbp,%rcx,1),%rdx
180115998:	48 8b 08             	mov    (%rax),%rcx
18011599b:	41 8b c0             	mov    %r8d,%eax
18011599e:	0f 10 02             	movups (%rdx),%xmm0
1801159a1:	48 8d 92 80 00 00 00 	lea    0x80(%rdx),%rdx
1801159a8:	0f 11 01             	movups %xmm0,(%rcx)
1801159ab:	48 8d 89 80 00 00 00 	lea    0x80(%rcx),%rcx
1801159b2:	0f 10 4a 90          	movups -0x70(%rdx),%xmm1
1801159b6:	0f 11 49 90          	movups %xmm1,-0x70(%rcx)
1801159ba:	0f 10 42 a0          	movups -0x60(%rdx),%xmm0
1801159be:	0f 11 41 a0          	movups %xmm0,-0x60(%rcx)
1801159c2:	0f 10 4a b0          	movups -0x50(%rdx),%xmm1
1801159c6:	0f 11 49 b0          	movups %xmm1,-0x50(%rcx)
1801159ca:	0f 10 42 c0          	movups -0x40(%rdx),%xmm0
1801159ce:	0f 11 41 c0          	movups %xmm0,-0x40(%rcx)
1801159d2:	0f 10 4a d0          	movups -0x30(%rdx),%xmm1
1801159d6:	0f 11 49 d0          	movups %xmm1,-0x30(%rcx)
1801159da:	0f 10 42 e0          	movups -0x20(%rdx),%xmm0
1801159de:	0f 11 41 e0          	movups %xmm0,-0x20(%rcx)
1801159e2:	0f 10 4a f0          	movups -0x10(%rdx),%xmm1
1801159e6:	0f 11 49 f0          	movups %xmm1,-0x10(%rcx)
1801159ea:	48 83 e8 01          	sub    $0x1,%rax
1801159ee:	75 ae                	jne    0x18011599e
1801159f0:	e9 f4 fe ff ff       	jmp    0x1801158e9
1801159f5:	4d 85 f6             	test   %r14,%r14
1801159f8:	74 41                	je     0x180115a3b
1801159fa:	48 ff c6             	inc    %rsi
1801159fd:	85 db                	test   %ebx,%ebx
1801159ff:	74 38                	je     0x180115a39
180115a01:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
180115a06:	4c 8b c7             	mov    %rdi,%r8
180115a09:	4c 8b 4c 24 38       	mov    0x38(%rsp),%r9
180115a0e:	48 8b cf             	mov    %rdi,%rcx
180115a11:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
180115a16:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
180115a1b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180115a20:	e8 7b d5 01 00       	call   0x180132fa0
180115a25:	85 c0                	test   %eax,%eax
180115a27:	74 10                	je     0x180115a39
180115a29:	bb 01 00 00 00       	mov    $0x1,%ebx
180115a2e:	41 b8 02 00 00 00    	mov    $0x2,%r8d
180115a34:	e9 b5 fe ff ff       	jmp    0x1801158ee
180115a39:	33 db                	xor    %ebx,%ebx
180115a3b:	85 db                	test   %ebx,%ebx
180115a3d:	0f 84 24 fe ff ff    	je     0x180115867
180115a43:	eb e9                	jmp    0x180115a2e
180115a45:	33 db                	xor    %ebx,%ebx
180115a47:	e9 1b fe ff ff       	jmp    0x180115867
180115a4c:	4c 8b 74 24 30       	mov    0x30(%rsp),%r14
180115a51:	e9 44 f9 ff ff       	jmp    0x18011539a
180115a56:	33 db                	xor    %ebx,%ebx
180115a58:	48 8b c8             	mov    %rax,%rcx
180115a5b:	e8 9c 45 f8 ff       	call   0x180099ffc
180115a60:	8b c3                	mov    %ebx,%eax
180115a62:	48 8b 4d ff          	mov    -0x1(%rbp),%rcx
180115a66:	48 33 cc             	xor    %rsp,%rcx
180115a69:	e8 be 00 f0 ff       	call   0x180015b2c
180115a6e:	48 81 c4 f8 00 00 00 	add    $0xf8,%rsp
180115a75:	41 5f                	pop    %r15
180115a77:	41 5e                	pop    %r14
180115a79:	41 5d                	pop    %r13
180115a7b:	41 5c                	pop    %r12
180115a7d:	5f                   	pop    %rdi
180115a7e:	5e                   	pop    %rsi
180115a7f:	5b                   	pop    %rbx
180115a80:	5d                   	pop    %rbp
180115a81:	c3                   	ret
180115a82:	cc                   	int3
180115a83:	cc                   	int3
180115a84:	40 55                	rex push %rbp
180115a86:	53                   	push   %rbx
180115a87:	56                   	push   %rsi
180115a88:	57                   	push   %rdi
180115a89:	41 54                	push   %r12
180115a8b:	41 55                	push   %r13
180115a8d:	41 56                	push   %r14
180115a8f:	41 57                	push   %r15
180115a91:	48 8d 6c 24 f8       	lea    -0x8(%rsp),%rbp
180115a96:	48 81 ec 08 01 00 00 	sub    $0x108,%rsp
180115a9d:	48 8b 05 cc 6e 05 00 	mov    0x56ecc(%rip),%rax        # 0x18016c970
180115aa4:	48 33 c4             	xor    %rsp,%rax
180115aa7:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
180115aab:	4c 8b 65 70          	mov    0x70(%rbp),%r12
180115aaf:	4c 8b d2             	mov    %rdx,%r10
180115ab2:	4c 8b 6d 78          	mov    0x78(%rbp),%r13
180115ab6:	0f 57 c0             	xorps  %xmm0,%xmm0
180115ab9:	48 89 55 a8          	mov    %rdx,-0x58(%rbp)
180115abd:	49 8b d0             	mov    %r8,%rdx
180115ac0:	48 89 4c 24 50       	mov    %rcx,0x50(%rsp)
180115ac5:	49 8b ca             	mov    %r10,%rcx
180115ac8:	4c 89 4d d0          	mov    %r9,-0x30(%rbp)
180115acc:	4d 8b c8             	mov    %r8,%r9
180115acf:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
180115ad4:	4c 89 6d c0          	mov    %r13,-0x40(%rbp)
180115ad8:	0f 11 45 d8          	movups %xmm0,-0x28(%rbp)
180115adc:	e8 5f b8 ff ff       	call   0x180111340
180115ae1:	49 8b d1             	mov    %r9,%rdx
180115ae4:	48 89 45 b0          	mov    %rax,-0x50(%rbp)
180115ae8:	49 8b ca             	mov    %r10,%rcx
180115aeb:	4c 8b f0             	mov    %rax,%r14
180115aee:	e8 ed b5 ff ff       	call   0x1801110e0
180115af3:	49 8b 0c 24          	mov    (%r12),%rcx
180115af7:	ba 01 00 00 00       	mov    $0x1,%edx
180115afc:	4c 8b c9             	mov    %rcx,%r9
180115aff:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
180115b04:	48 b8 ff ff ff ff ff 	movabs $0x3ffffffffffffff,%rax
180115b0b:	ff ff 03
180115b0e:	4c 23 c8             	and    %rax,%r9
180115b11:	48 8d 1c 09          	lea    (%rcx,%rcx,1),%rbx
180115b15:	4c 89 4c 24 30       	mov    %r9,0x30(%rsp)
180115b1a:	8b ca                	mov    %edx,%ecx
180115b1c:	33 ff                	xor    %edi,%edi
180115b1e:	48 8d 05 2b 78 04 00 	lea    0x4782b(%rip),%rax        # 0x18015d350
180115b25:	0f b7 04 48          	movzwl (%rax,%rcx,2),%eax
180115b29:	4c 3b f0             	cmp    %rax,%r14
180115b2c:	76 09                	jbe    0x180115b37
180115b2e:	48 03 ca             	add    %rdx,%rcx
180115b31:	48 83 f9 06          	cmp    $0x6,%rcx
180115b35:	72 e7                	jb     0x180115b1e
180115b37:	4c 8b c2             	mov    %rdx,%r8
180115b3a:	48 89 4d 80          	mov    %rcx,-0x80(%rbp)
180115b3e:	33 d2                	xor    %edx,%edx
180115b40:	49 d3 e0             	shl    %cl,%r8
180115b43:	4d 8d 7e ff          	lea    -0x1(%r14),%r15
180115b47:	4c 89 44 24 58       	mov    %r8,0x58(%rsp)
180115b4c:	49 8b c7             	mov    %r15,%rax
180115b4f:	48 f7 f1             	div    %rcx
180115b52:	49 8d 48 02          	lea    0x2(%r8),%rcx
180115b56:	49 0f af c9          	imul   %r9,%rcx
180115b5a:	48 8d 70 02          	lea    0x2(%rax),%rsi
180115b5e:	48 03 ce             	add    %rsi,%rcx
180115b61:	48 89 74 24 60       	mov    %rsi,0x60(%rsp)
180115b66:	48 03 cb             	add    %rbx,%rcx
180115b69:	48 c1 e1 03          	shl    $0x3,%rcx
180115b6d:	e8 de 42 f8 ff       	call   0x180099e50
180115b72:	4d 8b 04 24          	mov    (%r12),%r8
180115b76:	49 8b 54 24 38       	mov    0x38(%r12),%rdx
180115b7b:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
180115b80:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
180115b85:	4c 89 6c 24 20       	mov    %r13,0x20(%rsp)
180115b8a:	e8 29 ac ff ff       	call   0x1801107b8