1800445b0:	45 8d 65 01          	lea    0x1(%r13),%r12d
1800445b4:	44 89 6d b7          	mov    %r13d,-0x49(%rbp)
1800445b8:	41 8b d5             	mov    %r13d,%edx
1800445bb:	44 89 6d 67          	mov    %r13d,0x67(%rbp)
1800445bf:	4c 89 6d bf          	mov    %r13,-0x41(%rbp)
1800445c3:	4c 89 6d c7          	mov    %r13,-0x39(%rbp)
1800445c7:	4c 89 6d cf          	mov    %r13,-0x31(%rbp)
1800445cb:	89 45 d7             	mov    %eax,-0x29(%rbp)
1800445ce:	44 39 69 08          	cmp    %r13d,0x8(%rcx)
1800445d2:	76 29                	jbe    0x1800445fd
1800445d4:	8b 4b 0c             	mov    0xc(%rbx),%ecx
1800445d7:	48 8d 45 d7          	lea    -0x29(%rbp),%rax
1800445db:	03 ca                	add    %edx,%ecx
1800445dd:	0f a3 08             	bt     %ecx,(%rax)
1800445e0:	73 0f                	jae    0x1800445f1
1800445e2:	48 8b cb             	mov    %rbx,%rcx
1800445e5:	e8 26 fb ff ff       	call   0x180044110
1800445ea:	44 0b f0             	or     %eax,%r14d
1800445ed:	44 89 75 67          	mov    %r14d,0x67(%rbp)
1800445f1:	41 03 d4             	add    %r12d,%edx
1800445f4:	3b 53 08             	cmp    0x8(%rbx),%edx
1800445f7:	72 db                	jb     0x1800445d4
1800445f9:	44 89 75 b7          	mov    %r14d,-0x49(%rbp)
1800445fd:	8b cf                	mov    %edi,%ecx
1800445ff:	45 8b c5             	mov    %r13d,%r8d
180044602:	85 ff                	test   %edi,%edi
180044604:	74 0a                	je     0x180044610
180044606:	8d 41 ff             	lea    -0x1(%rcx),%eax
180044609:	45 03 c4             	add    %r12d,%r8d
18004460c:	23 c8                	and    %eax,%ecx
18004460e:	75 f6                	jne    0x180044606
180044610:	41 8b ce             	mov    %r14d,%ecx
180044613:	41 8b d5             	mov    %r13d,%edx
180044616:	45 85 f6             	test   %r14d,%r14d
180044619:	74 0a                	je     0x180044625
18004461b:	8d 41 ff             	lea    -0x1(%rcx),%eax
18004461e:	41 03 d4             	add    %r12d,%edx
180044621:	23 c8                	and    %eax,%ecx
180044623:	75 f6                	jne    0x18004461b
180044625:	41 3b d0             	cmp    %r8d,%edx
180044628:	74 0a                	je     0x180044634
18004462a:	bf 0d 00 00 c0       	mov    $0xc000000d,%edi
18004462f:	e9 82 03 00 00       	jmp    0x1800449b6
180044634:	48 8b 13             	mov    (%rbx),%rdx
180044637:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004463b:	45 8b c8             	mov    %r8d,%r9d
18004463e:	e8 95 f8 ff ff       	call   0x180043ed8
180044643:	8b f8                	mov    %eax,%edi
180044645:	85 c0                	test   %eax,%eax
180044647:	0f 88 58 03 00 00    	js     0x1800449a5
18004464d:	8b 4b 0c             	mov    0xc(%rbx),%ecx
180044650:	45 8b cd             	mov    %r13d,%r9d
180044653:	48 8b 75 cf          	mov    -0x31(%rbp),%rsi
180044657:	45 8b c5             	mov    %r13d,%r8d
18004465a:	41 8b d5             	mov    %r13d,%edx
18004465d:	85 c9                	test   %ecx,%ecx
18004465f:	74 38                	je     0x180044699
180044661:	48 8d 45 67          	lea    0x67(%rbp),%rax
180044665:	0f a3 10             	bt     %edx,(%rax)
180044668:	73 1d                	jae    0x180044687
18004466a:	48 8d 45 77          	lea    0x77(%rbp),%rax
18004466e:	0f a3 10             	bt     %edx,(%rax)
180044671:	73 11                	jae    0x180044684
180044673:	8b 45 cb             	mov    -0x35(%rbp),%eax
180044676:	41 0f af c1          	imul   %r9d,%eax
18004467a:	41 03 c0             	add    %r8d,%eax
18004467d:	45 03 cc             	add    %r12d,%r9d
180044680:	44 89 24 86          	mov    %r12d,(%rsi,%rax,4)
180044684:	45 03 c4             	add    %r12d,%r8d
180044687:	8b 4b 0c             	mov    0xc(%rbx),%ecx
18004468a:	41 03 d4             	add    %r12d,%edx
18004468d:	3b d1                	cmp    %ecx,%edx
18004468f:	72 d0                	jb     0x180044661
180044691:	44 8b 75 67          	mov    0x67(%rbp),%r14d
180044695:	44 89 75 b7          	mov    %r14d,-0x49(%rbp)
180044699:	45 8b d5             	mov    %r13d,%r10d
18004469c:	44 39 6b 08          	cmp    %r13d,0x8(%rbx)
1800446a0:	76 65                	jbe    0x180044707
1800446a2:	42 8d 04 11          	lea    (%rcx,%r10,1),%eax
1800446a6:	48 8d 55 77          	lea    0x77(%rbp),%rdx
1800446aa:	0f a3 02             	bt     %eax,(%rdx)
1800446ad:	73 47                	jae    0x1800446f6
1800446af:	41 8b fd             	mov    %r13d,%edi
1800446b2:	45 8b dd             	mov    %r13d,%r11d
1800446b5:	85 c9                	test   %ecx,%ecx
1800446b7:	74 3a                	je     0x1800446f3
1800446b9:	8b c1                	mov    %ecx,%eax
1800446bb:	4c 8d 45 67          	lea    0x67(%rbp),%r8
1800446bf:	8b d0                	mov    %eax,%edx
1800446c1:	45 0f a3 18          	bt     %r11d,(%r8)
1800446c5:	73 22                	jae    0x1800446e9
1800446c7:	48 8b 53 10          	mov    0x10(%rbx),%rdx
1800446cb:	8b 4d cb             	mov    -0x35(%rbp),%ecx
1800446ce:	41 0f af c9          	imul   %r9d,%ecx
1800446d2:	41 0f af c2          	imul   %r10d,%eax
1800446d6:	03 cf                	add    %edi,%ecx
1800446d8:	41 03 c3             	add    %r11d,%eax
1800446db:	41 03 fc             	add    %r12d,%edi
1800446de:	8b 04 82             	mov    (%rdx,%rax,4),%eax
1800446e1:	89 04 8e             	mov    %eax,(%rsi,%rcx,4)
1800446e4:	8b 4b 0c             	mov    0xc(%rbx),%ecx
1800446e7:	8b d1                	mov    %ecx,%edx
1800446e9:	45 03 dc             	add    %r12d,%r11d
1800446ec:	8b c2                	mov    %edx,%eax
1800446ee:	44 3b da             	cmp    %edx,%r11d
1800446f1:	72 c8                	jb     0x1800446bb
1800446f3:	45 03 cc             	add    %r12d,%r9d
1800446f6:	45 03 d4             	add    %r12d,%r10d
1800446f9:	44 3b 53 08          	cmp    0x8(%rbx),%r10d
1800446fd:	72 a3                	jb     0x1800446a2
1800446ff:	44 8b 75 67          	mov    0x67(%rbp),%r14d
180044703:	44 89 75 b7          	mov    %r14d,-0x49(%rbp)
180044707:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
18004470b:	e8 50 fa ff ff       	call   0x180044160
180044710:	8b f8                	mov    %eax,%edi
180044712:	85 c0                	test   %eax,%eax
180044714:	0f 88 8b 02 00 00    	js     0x1800449a5
18004471a:	8b 4b 0c             	mov    0xc(%rbx),%ecx
18004471d:	41 8b c7             	mov    %r15d,%eax
180044720:	44 8b 7d cb          	mov    -0x35(%rbp),%r15d
180044724:	44 8b 65 c7          	mov    -0x39(%rbp),%r12d
180044728:	d3 e8                	shr    %cl,%eax
18004472a:	85 c0                	test   %eax,%eax
18004472c:	0f 84 6e 01 00 00    	je     0x1800448a0
180044732:	44 8b 43 08          	mov    0x8(%rbx),%r8d
180044736:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
18004473a:	48 8b 55 bf          	mov    -0x41(%rbp),%rdx
18004473e:	45 03 c4             	add    %r12d,%r8d
180044741:	45 8b cf             	mov    %r15d,%r9d
180044744:	44 89 75 ff          	mov    %r14d,-0x1(%rbp)
180044748:	4c 89 6d e7          	mov    %r13,-0x19(%rbp)
18004474c:	4c 89 6d ef          	mov    %r13,-0x11(%rbp)
180044750:	4c 89 6d f7          	mov    %r13,-0x9(%rbp)
180044754:	e8 7f f7 ff ff       	call   0x180043ed8
180044759:	89 45 df             	mov    %eax,-0x21(%rbp)
18004475c:	8b f8                	mov    %eax,%edi
18004475e:	85 c0                	test   %eax,%eax
180044760:	0f 88 05 01 00 00    	js     0x18004486b
180044766:	48 8b 75 f7          	mov    -0x9(%rbp),%rsi
18004476a:	45 8b c5             	mov    %r13d,%r8d
18004476d:	4c 8b 6d cf          	mov    -0x31(%rbp),%r13
180044771:	4c 89 6d 0f          	mov    %r13,0xf(%rbp)
180044775:	45 85 e4             	test   %r12d,%r12d
180044778:	74 39                	je     0x1800447b3
18004477a:	45 85 ff             	test   %r15d,%r15d
18004477d:	74 2c                	je     0x1800447ab
18004477f:	44 8b 4d f3          	mov    -0xd(%rbp),%r9d
180044783:	45 8b d7             	mov    %r15d,%r10d
180044786:	44 2b 55 f3          	sub    -0xd(%rbp),%r10d
18004478a:	4d 8b df             	mov    %r15,%r11
18004478d:	45 0f af c8          	imul   %r8d,%r9d
180044791:	45 0f af d0          	imul   %r8d,%r10d
180044795:	43 8d 04 0a          	lea    (%r10,%r9,1),%eax
180044799:	41 8b 44 85 00       	mov    0x0(%r13,%rax,4),%eax
18004479e:	42 89 04 8e          	mov    %eax,(%rsi,%r9,4)
1800447a2:	41 ff c1             	inc    %r9d
1800447a5:	49 83 eb 01          	sub    $0x1,%r11
1800447a9:	75 ea                	jne    0x180044795
1800447ab:	41 ff c0             	inc    %r8d
1800447ae:	45 3b c4             	cmp    %r12d,%r8d
1800447b1:	72 c7                	jb     0x18004477a
1800447b3:	45 33 db             	xor    %r11d,%r11d
1800447b6:	44 39 5b 08          	cmp    %r11d,0x8(%rbx)
1800447ba:	0f 86 9d 00 00 00    	jbe    0x18004485d
1800447c0:	45 33 e4             	xor    %r12d,%r12d
1800447c3:	45 85 ff             	test   %r15d,%r15d
1800447c6:	74 7d                	je     0x180044845
1800447c8:	43 8d 3c 1f          	lea    (%r15,%r11,1),%edi
1800447cc:	0f af 7d f3          	imul   -0xd(%rbp),%edi
1800447d0:	89 7d 07             	mov    %edi,0x7(%rbp)
1800447d3:	8b 43 0c             	mov    0xc(%rbx),%eax
1800447d6:	33 d2                	xor    %edx,%edx
1800447d8:	45 33 f6             	xor    %r14d,%r14d
1800447db:	89 55 67             	mov    %edx,0x67(%rbp)
1800447de:	45 33 ed             	xor    %r13d,%r13d
1800447e1:	85 c0                	test   %eax,%eax
1800447e3:	74 51                	je     0x180044836
1800447e5:	48 8b 75 0f          	mov    0xf(%rbp),%rsi
1800447e9:	8b f8                	mov    %eax,%edi
1800447eb:	48 8d 45 ff          	lea    -0x1(%rbp),%rax
1800447ef:	44 0f a3 28          	bt     %r13d,(%rax)
1800447f3:	73 32                	jae    0x180044827
1800447f5:	48 8b 43 10          	mov    0x10(%rbx),%rax
1800447f9:	41 8b d7             	mov    %r15d,%edx
1800447fc:	41 0f af d6          	imul   %r14d,%edx
180044800:	8b cf                	mov    %edi,%ecx
180044802:	41 0f af cb          	imul   %r11d,%ecx
180044806:	41 03 d4             	add    %r12d,%edx
180044809:	41 03 cd             	add    %r13d,%ecx
18004480c:	44 8b 04 96          	mov    (%rsi,%rdx,4),%r8d
180044810:	8b 14 88             	mov    (%rax,%rcx,4),%edx
180044813:	48 8b 4d bf          	mov    -0x41(%rbp),%rcx
180044817:	e8 44 f6 ff ff       	call   0x180043e60
18004481c:	8b 55 67             	mov    0x67(%rbp),%edx
18004481f:	33 d0                	xor    %eax,%edx
180044821:	89 55 67             	mov    %edx,0x67(%rbp)
180044824:	41 ff c6             	inc    %r14d
180044827:	41 ff c5             	inc    %r13d
18004482a:	44 3b ef             	cmp    %edi,%r13d
18004482d:	72 bc                	jb     0x1800447eb
18004482f:	48 8b 75 f7          	mov    -0x9(%rbp),%rsi
180044833:	8b 7d 07             	mov    0x7(%rbp),%edi
180044836:	42 8d 04 27          	lea    (%rdi,%r12,1),%eax
18004483a:	41 ff c4             	inc    %r12d
18004483d:	89 14 86             	mov    %edx,(%rsi,%rax,4)
180044840:	45 3b e7             	cmp    %r15d,%r12d
180044843:	72 8e                	jb     0x1800447d3
180044845:	41 ff c3             	inc    %r11d
180044848:	44 3b 5b 08          	cmp    0x8(%rbx),%r11d
18004484c:	0f 82 6e ff ff ff    	jb     0x1800447c0
180044852:	8b 7d df             	mov    -0x21(%rbp),%edi
180044855:	44 8b 75 b7          	mov    -0x49(%rbp),%r14d
180044859:	4c 8b 6d 0f          	mov    0xf(%rbp),%r13
18004485d:	44 8b 65 ef          	mov    -0x11(%rbp),%r12d
180044861:	44 89 65 c7          	mov    %r12d,-0x39(%rbp)
180044865:	48 89 75 cf          	mov    %rsi,-0x31(%rbp)
180044869:	eb 08                	jmp    0x180044873
18004486b:	48 8b 75 cf          	mov    -0x31(%rbp),%rsi
18004486f:	4c 8b 6d f7          	mov    -0x9(%rbp),%r13
180044873:	4d 85 ed             	test   %r13,%r13
180044876:	74 08                	je     0x180044880
180044878:	49 8b cd             	mov    %r13,%rcx
18004487b:	e8 dc 20 00 00       	call   0x18004695c
180044880:	45 33 ed             	xor    %r13d,%r13d
180044883:	85 ff                	test   %edi,%edi
180044885:	0f 88 1e 01 00 00    	js     0x1800449a9
18004488b:	8b 4b 08             	mov    0x8(%rbx),%ecx
18004488e:	41 8d 45 01          	lea    0x1(%r13),%eax
180044892:	d3 e0                	shl    %cl,%eax
180044894:	8b 4b 0c             	mov    0xc(%rbx),%ecx
180044897:	ff c8                	dec    %eax
180044899:	d3 e0                	shl    %cl,%eax
18004489b:	44 0b f0             	or     %eax,%r14d
18004489e:	eb 04                	jmp    0x1800448a4
1800448a0:	48 8b 75 cf          	mov    -0x31(%rbp),%rsi
1800448a4:	8b 45 6f             	mov    0x6f(%rbp),%eax
1800448a7:	33 db                	xor    %ebx,%ebx
1800448a9:	48 83 65 e7 00       	andq   $0x0,-0x19(%rbp)
1800448ae:	83 65 ef 00          	andl   $0x0,-0x11(%rbp)
1800448b2:	83 65 f3 00          	andl   $0x0,-0xd(%rbp)
1800448b6:	48 83 65 f7 00       	andq   $0x0,-0x9(%rbp)
1800448bb:	89 45 df             	mov    %eax,-0x21(%rbp)
1800448be:	85 c0                	test   %eax,%eax
1800448c0:	74 0b                	je     0x1800448cd
1800448c2:	8b c8                	mov    %eax,%ecx
1800448c4:	8d 41 ff             	lea    -0x1(%rcx),%eax
1800448c7:	ff c3                	inc    %ebx
1800448c9:	23 c8                	and    %eax,%ecx
1800448cb:	75 f7                	jne    0x1800448c4
1800448cd:	48 8b 55 bf          	mov    -0x41(%rbp),%rdx
1800448d1:	48 8d 4d e7          	lea    -0x19(%rbp),%rcx
1800448d5:	45 8b cf             	mov    %r15d,%r9d
1800448d8:	44 8b c3             	mov    %ebx,%r8d
1800448db:	e8 f8 f5 ff ff       	call   0x180043ed8
1800448e0:	8b f8                	mov    %eax,%edi
1800448e2:	85 c0                	test   %eax,%eax
1800448e4:	0f 88 91 00 00 00    	js     0x18004497b
1800448ea:	45 33 c9             	xor    %r9d,%r9d
1800448ed:	45 85 e4             	test   %r12d,%r12d
1800448f0:	74 79                	je     0x18004496b
1800448f2:	45 33 db             	xor    %r11d,%r11d
1800448f5:	83 65 67 00          	andl   $0x0,0x67(%rbp)
1800448f9:	41 8b ce             	mov    %r14d,%ecx
1800448fc:	45 85 c9             	test   %r9d,%r9d
1800448ff:	74 12                	je     0x180044913
180044901:	49 8b d3             	mov    %r11,%rdx
180044904:	44 89 5d 67          	mov    %r11d,0x67(%rbp)
180044908:	8d 41 ff             	lea    -0x1(%rcx),%eax
18004490b:	23 c8                	and    %eax,%ecx
18004490d:	48 83 ea 01          	sub    $0x1,%rdx
180044911:	75 f5                	jne    0x180044908
180044913:	0f bc c1             	bsf    %ecx,%eax
180044916:	48 8d 4d df          	lea    -0x21(%rbp),%rcx
18004491a:	0f a3 01             	bt     %eax,(%rcx)
18004491d:	73 41                	jae    0x180044960
18004491f:	45 85 ff             	test   %r15d,%r15d
180044922:	74 39                	je     0x18004495d
180044924:	44 8b 45 f3          	mov    -0xd(%rbp),%r8d
180044928:	45 8b d7             	mov    %r15d,%r10d
18004492b:	4c 8b 65 f7          	mov    -0x9(%rbp),%r12
18004492f:	45 0f af c5          	imul   %r13d,%r8d
180044933:	45 0f af d1          	imul   %r9d,%r10d
180044937:	41 8b c7             	mov    %r15d,%eax
18004493a:	48 89 45 67          	mov    %rax,0x67(%rbp)
18004493e:	45 2b d0             	sub    %r8d,%r10d
180044941:	43 8d 04 02          	lea    (%r10,%r8,1),%eax
180044945:	8b 04 86             	mov    (%rsi,%rax,4),%eax
180044948:	43 89 04 84          	mov    %eax,(%r12,%r8,4)
18004494c:	41 ff c0             	inc    %r8d
18004494f:	49 83 ef 01          	sub    $0x1,%r15
180044953:	75 ec                	jne    0x180044941
180044955:	44 8b 7d cb          	mov    -0x35(%rbp),%r15d
180044959:	44 8b 65 c7          	mov    -0x39(%rbp),%r12d
18004495d:	41 ff c5             	inc    %r13d
180044960:	41 ff c1             	inc    %r9d
180044963:	49 ff c3             	inc    %r11
180044966:	45 3b cc             	cmp    %r12d,%r9d
180044969:	72 8a                	jb     0x1800448f5
18004496b:	48 8b ce             	mov    %rsi,%rcx
18004496e:	89 5d c7             	mov    %ebx,-0x39(%rbp)
180044971:	48 8b 75 f7          	mov    -0x9(%rbp),%rsi
180044975:	48 89 75 cf          	mov    %rsi,-0x31(%rbp)
180044979:	eb 04                	jmp    0x18004497f
18004497b:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
18004497f:	48 85 c9             	test   %rcx,%rcx
180044982:	74 05                	je     0x180044989
180044984:	e8 d3 1f 00 00       	call   0x18004695c
180044989:	85 ff                	test   %edi,%edi
18004498b:	78 1c                	js     0x1800449a9
18004498d:	4c 8b 4d 7f          	mov    0x7f(%rbp),%r9
180044991:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
180044995:	44 8b 45 77          	mov    0x77(%rbp),%r8d
180044999:	8b 55 6f             	mov    0x6f(%rbp),%edx
18004499c:	e8 2f 00 00 00       	call   0x1800449d0
1800449a1:	8b f8                	mov    %eax,%edi
1800449a3:	eb 04                	jmp    0x1800449a9
1800449a5:	48 8b 75 cf          	mov    -0x31(%rbp),%rsi
1800449a9:	48 85 f6             	test   %rsi,%rsi
1800449ac:	74 08                	je     0x1800449b6
1800449ae:	48 8b ce             	mov    %rsi,%rcx
1800449b1:	e8 a6 1f 00 00       	call   0x18004695c
1800449b6:	8b c7                	mov    %edi,%eax
1800449b8:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
1800449bf:	41 5f                	pop    %r15
1800449c1:	41 5e                	pop    %r14
1800449c3:	41 5d                	pop    %r13
1800449c5:	41 5c                	pop    %r12
1800449c7:	5f                   	pop    %rdi
1800449c8:	5e                   	pop    %rsi
1800449c9:	5b                   	pop    %rbx
1800449ca:	5d                   	pop    %rbp
1800449cb:	c3                   	ret
1800449cc:	cc                   	int3
1800449cd:	cc                   	int3
1800449ce:	cc                   	int3
1800449cf:	cc                   	int3
1800449d0:	48 8b c4             	mov    %rsp,%rax
1800449d3:	4c 89 48 20          	mov    %r9,0x20(%rax)
1800449d7:	44 89 40 18          	mov    %r8d,0x18(%rax)
1800449db:	89 50 10             	mov    %edx,0x10(%rax)
1800449de:	48 89 48 08          	mov    %rcx,0x8(%rax)
1800449e2:	53                   	push   %rbx
1800449e3:	55                   	push   %rbp
1800449e4:	56                   	push   %rsi
1800449e5:	57                   	push   %rdi
1800449e6:	41 54                	push   %r12
1800449e8:	41 55                	push   %r13
1800449ea:	41 56                	push   %r14
1800449ec:	41 57                	push   %r15
1800449ee:	48 83 ec 38          	sub    $0x38,%rsp