140808555:	53                   	push   %rbx
140808556:	56                   	push   %rsi
140808557:	57                   	push   %rdi
140808558:	41 54                	push   %r12
14080855a:	41 55                	push   %r13
14080855c:	41 56                	push   %r14
14080855e:	41 57                	push   %r15
140808560:	48 83 ec 30          	sub    $0x30,%rsp
140808564:	4c 8b e2             	mov    %rdx,%r12
140808567:	48 8b f1             	mov    %rcx,%rsi
14080856a:	4c 8b 01             	mov    (%rcx),%r8
14080856d:	4c 8b f2             	mov    %rdx,%r14
140808570:	4d 2b f0             	sub    %r8,%r14
140808573:	48 8b 41 08          	mov    0x8(%rcx),%rax
140808577:	49 2b c0             	sub    %r8,%rax
14080857a:	48 c1 f8 04          	sar    $0x4,%rax
14080857e:	49 b9 ff ff ff ff ff 	movabs $0xfffffffffffffff,%r9
140808585:	ff ff 0f
140808588:	49 3b c1             	cmp    %r9,%rax
14080858b:	0f 84 22 01 00 00    	je     0x1408086b3
140808591:	4c 8d 68 01          	lea    0x1(%rax),%r13
140808595:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140808599:	49 2b c8             	sub    %r8,%rcx
14080859c:	48 c1 f9 04          	sar    $0x4,%rcx
1408085a0:	48 8b d1             	mov    %rcx,%rdx
1408085a3:	48 d1 ea             	shr    $1,%rdx
1408085a6:	49 8b c1             	mov    %r9,%rax
1408085a9:	48 2b c2             	sub    %rdx,%rax
1408085ac:	48 3b c8             	cmp    %rax,%rcx
1408085af:	0f 87 f8 00 00 00    	ja     0x1408086ad
1408085b5:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
1408085b9:	49 8b fd             	mov    %r13,%rdi
1408085bc:	49 3b c5             	cmp    %r13,%rax
1408085bf:	48 0f 43 f8          	cmovae %rax,%rdi
1408085c3:	49 3b f9             	cmp    %r9,%rdi
1408085c6:	0f 87 e1 00 00 00    	ja     0x1408086ad
1408085cc:	48 8b cf             	mov    %rdi,%rcx
1408085cf:	48 c1 e1 04          	shl    $0x4,%rcx
1408085d3:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1408085d8:	48 85 c9             	test   %rcx,%rcx
1408085db:	75 09                	jne    0x1408085e6
1408085dd:	33 db                	xor    %ebx,%ebx
1408085df:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1408085e4:	eb 3d                	jmp    0x140808623
1408085e6:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
1408085ed:	72 2c                	jb     0x14080861b
1408085ef:	48 8d 41 27          	lea    0x27(%rcx),%rax
1408085f3:	48 3b c1             	cmp    %rcx,%rax
1408085f6:	0f 86 b1 00 00 00    	jbe    0x1408086ad
1408085fc:	48 8b c8             	mov    %rax,%rcx
1408085ff:	e8 04 2b 61 00       	call   0x140e1b108
140808604:	48 85 c0             	test   %rax,%rax
140808607:	0f 84 ac 00 00 00    	je     0x1408086b9
14080860d:	48 8d 58 27          	lea    0x27(%rax),%rbx
140808611:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140808615:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140808619:	eb 08                	jmp    0x140808623
14080861b:	e8 e8 2a 61 00       	call   0x140e1b108
140808620:	48 8b d8             	mov    %rax,%rbx
140808623:	48 89 5c 24 78       	mov    %rbx,0x78(%rsp)
140808628:	49 83 e6 f0          	and    $0xfffffffffffffff0,%r14
14080862c:	4c 03 f3             	add    %rbx,%r14
14080862f:	4d 8d 7e 10          	lea    0x10(%r14),%r15
140808633:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
140808638:	49 c7 06 00 00 00 00 	movq   $0x0,(%r14)
14080863f:	49 c7 46 08 00 00 00 	movq   $0x0,0x8(%r14)
140808646:	00
140808647:	4c 89 b4 24 88 00 00 	mov    %r14,0x88(%rsp)
14080864e:	00
14080864f:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140808653:	48 8b 0e             	mov    (%rsi),%rcx
140808656:	4c 3b e2             	cmp    %rdx,%r12
140808659:	75 05                	jne    0x140808660
14080865b:	4c 8b fb             	mov    %rbx,%r15
14080865e:	eb 1d                	jmp    0x14080867d
140808660:	4c 8b ce             	mov    %rsi,%r9
140808663:	4c 8b c3             	mov    %rbx,%r8
140808666:	49 8b d4             	mov    %r12,%rdx
140808669:	e8 52 aa e6 ff       	call   0x1406730c0
14080866e:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
140808675:	00
140808676:	49 8b cc             	mov    %r12,%rcx
140808679:	48 8b 56 08          	mov    0x8(%rsi),%rdx
14080867d:	4c 8b ce             	mov    %rsi,%r9
140808680:	4d 8b c7             	mov    %r15,%r8
140808683:	e8 38 aa e6 ff       	call   0x1406730c0
140808688:	90                   	nop
140808689:	4c 8b cf             	mov    %rdi,%r9
14080868c:	4d 8b c5             	mov    %r13,%r8
14080868f:	48 8b d3             	mov    %rbx,%rdx
140808692:	48 8b ce             	mov    %rsi,%rcx
140808695:	e8 d6 a1 00 00       	call   0x140812870
14080869a:	49 8b c6             	mov    %r14,%rax
14080869d:	48 83 c4 30          	add    $0x30,%rsp
1408086a1:	41 5f                	pop    %r15
1408086a3:	41 5e                	pop    %r14
1408086a5:	41 5d                	pop    %r13
1408086a7:	41 5c                	pop    %r12
1408086a9:	5f                   	pop    %rdi
1408086aa:	5e                   	pop    %rsi
1408086ab:	5b                   	pop    %rbx
1408086ac:	c3                   	ret
1408086ad:	e8 de 4a 99 ff       	call   0x14019d190
1408086b2:	cc                   	int3
1408086b3:	e8 d8 4e 99 ff       	call   0x14019d590
1408086b8:	cc                   	int3
1408086b9:	e8 e6 1a 62 00       	call   0x140e2a1a4
1408086be:	cc                   	int3
1408086bf:	cc                   	int3
1408086c0:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1408086c5:	53                   	push   %rbx
1408086c6:	56                   	push   %rsi
1408086c7:	57                   	push   %rdi
1408086c8:	41 54                	push   %r12
1408086ca:	41 55                	push   %r13
1408086cc:	41 56                	push   %r14
1408086ce:	41 57                	push   %r15
1408086d0:	48 83 ec 40          	sub    $0x40,%rsp
1408086d4:	4d 8b e8             	mov    %r8,%r13
1408086d7:	4c 8b e2             	mov    %rdx,%r12
1408086da:	48 8b f1             	mov    %rcx,%rsi
1408086dd:	4c 8b 09             	mov    (%rcx),%r9
1408086e0:	4c 8b f2             	mov    %rdx,%r14
1408086e3:	4d 2b f1             	sub    %r9,%r14
1408086e6:	48 8b 41 08          	mov    0x8(%rcx),%rax
1408086ea:	49 2b c1             	sub    %r9,%rax
1408086ed:	48 c1 f8 04          	sar    $0x4,%rax
1408086f1:	49 ba ff ff ff ff ff 	movabs $0xfffffffffffffff,%r10
1408086f8:	ff ff 0f
1408086fb:	49 3b c2             	cmp    %r10,%rax
1408086fe:	0f 84 4e 01 00 00    	je     0x140808852
140808704:	4c 8d 40 01          	lea    0x1(%rax),%r8
140808708:	4c 89 44 24 28       	mov    %r8,0x28(%rsp)
14080870d:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140808711:	49 2b c9             	sub    %r9,%rcx
140808714:	48 c1 f9 04          	sar    $0x4,%rcx
140808718:	48 8b d1             	mov    %rcx,%rdx
14080871b:	48 d1 ea             	shr    $1,%rdx
14080871e:	49 8b c2             	mov    %r10,%rax
140808721:	48 2b c2             	sub    %rdx,%rax
140808724:	48 3b c8             	cmp    %rax,%rcx
140808727:	0f 87 1f 01 00 00    	ja     0x14080884c
14080872d:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
140808731:	49 8b f8             	mov    %r8,%rdi
140808734:	49 3b c0             	cmp    %r8,%rax
140808737:	48 0f 43 f8          	cmovae %rax,%rdi
14080873b:	49 3b fa             	cmp    %r10,%rdi
14080873e:	0f 87 08 01 00 00    	ja     0x14080884c
140808744:	48 8b cf             	mov    %rdi,%rcx
140808747:	48 c1 e1 04          	shl    $0x4,%rcx
14080874b:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140808750:	48 85 c9             	test   %rcx,%rcx
140808753:	75 12                	jne    0x140808767
140808755:	48 8b d9             	mov    %rcx,%rbx
140808758:	48 89 8c 24 88 00 00 	mov    %rcx,0x88(%rsp)
14080875f:	00
140808760:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140808765:	eb 4f                	jmp    0x1408087b6
140808767:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14080876e:	72 34                	jb     0x1408087a4
140808770:	48 8d 41 27          	lea    0x27(%rcx),%rax
140808774:	48 3b c1             	cmp    %rcx,%rax
140808777:	0f 86 cf 00 00 00    	jbe    0x14080884c
14080877d:	48 8b c8             	mov    %rax,%rcx
140808780:	e8 83 29 61 00       	call   0x140e1b108
140808785:	48 85 c0             	test   %rax,%rax
140808788:	0f 84 ca 00 00 00    	je     0x140808858
14080878e:	48 8d 58 27          	lea    0x27(%rax),%rbx
140808792:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140808796:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
14080879a:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
1408087a1:	00
1408087a2:	eb 10                	jmp    0x1408087b4
1408087a4:	e8 5f 29 61 00       	call   0x140e1b108
1408087a9:	48 8b d8             	mov    %rax,%rbx
1408087ac:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
1408087b3:	00
1408087b4:	33 c9                	xor    %ecx,%ecx
1408087b6:	49 83 e6 f0          	and    $0xfffffffffffffff0,%r14
1408087ba:	4c 03 f3             	add    %rbx,%r14
1408087bd:	4d 8d 7e 10          	lea    0x10(%r14),%r15
1408087c1:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
1408087c6:	49 89 0e             	mov    %rcx,(%r14)
1408087c9:	49 89 4e 08          	mov    %rcx,0x8(%r14)
1408087cd:	49 8b 45 00          	mov    0x0(%r13),%rax
1408087d1:	49 89 06             	mov    %rax,(%r14)
1408087d4:	49 8b 45 08          	mov    0x8(%r13),%rax
1408087d8:	49 89 46 08          	mov    %rax,0x8(%r14)
1408087dc:	49 89 4d 00          	mov    %rcx,0x0(%r13)
1408087e0:	49 89 4d 08          	mov    %rcx,0x8(%r13)
1408087e4:	4c 89 b4 24 98 00 00 	mov    %r14,0x98(%rsp)
1408087eb:	00
1408087ec:	48 8b 56 08          	mov    0x8(%rsi),%rdx
1408087f0:	48 8b 0e             	mov    (%rsi),%rcx
1408087f3:	4c 3b e2             	cmp    %rdx,%r12
1408087f6:	75 05                	jne    0x1408087fd
1408087f8:	4c 8b fb             	mov    %rbx,%r15
1408087fb:	eb 1d                	jmp    0x14080881a
1408087fd:	4c 8b ce             	mov    %rsi,%r9
140808800:	4c 8b c3             	mov    %rbx,%r8
140808803:	49 8b d4             	mov    %r12,%rdx
140808806:	e8 b5 a8 e6 ff       	call   0x1406730c0
14080880b:	48 89 9c 24 98 00 00 	mov    %rbx,0x98(%rsp)
140808812:	00
140808813:	49 8b cc             	mov    %r12,%rcx
140808816:	48 8b 56 08          	mov    0x8(%rsi),%rdx
14080881a:	4c 8b ce             	mov    %rsi,%r9
14080881d:	4d 8b c7             	mov    %r15,%r8
140808820:	e8 9b a8 e6 ff       	call   0x1406730c0
140808825:	90                   	nop
140808826:	4c 8b cf             	mov    %rdi,%r9
140808829:	4c 8b 44 24 28       	mov    0x28(%rsp),%r8
14080882e:	48 8b d3             	mov    %rbx,%rdx
140808831:	48 8b ce             	mov    %rsi,%rcx
140808834:	e8 37 a0 00 00       	call   0x140812870
140808839:	49 8b c6             	mov    %r14,%rax
14080883c:	48 83 c4 40          	add    $0x40,%rsp
140808840:	41 5f                	pop    %r15
140808842:	41 5e                	pop    %r14
140808844:	41 5d                	pop    %r13
140808846:	41 5c                	pop    %r12
140808848:	5f                   	pop    %rdi
140808849:	5e                   	pop    %rsi
14080884a:	5b                   	pop    %rbx
14080884b:	c3                   	ret
14080884c:	e8 3f 49 99 ff       	call   0x14019d190
140808851:	cc                   	int3
140808852:	e8 39 4d 99 ff       	call   0x14019d590
140808857:	cc                   	int3
140808858:	e8 47 19 62 00       	call   0x140e2a1a4
14080885d:	cc                   	int3
14080885e:	cc                   	int3
14080885f:	cc                   	int3
140808860:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140808865:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14080886a:	56                   	push   %rsi
14080886b:	57                   	push   %rdi
14080886c:	41 54                	push   %r12
14080886e:	41 56                	push   %r14
140808870:	41 57                	push   %r15
140808872:	48 83 ec 30          	sub    $0x30,%rsp
140808876:	4d 8b f8             	mov    %r8,%r15
140808879:	48 8b da             	mov    %rdx,%rbx
14080887c:	48 8b f1             	mov    %rcx,%rsi
14080887f:	48 8b 11             	mov    (%rcx),%rdx
140808882:	4c 8b f3             	mov    %rbx,%r14
140808885:	4c 2b f2             	sub    %rdx,%r14
140808888:	49 c1 fe 03          	sar    $0x3,%r14
14080888c:	48 8b 41 08          	mov    0x8(%rcx),%rax
140808890:	48 2b c2             	sub    %rdx,%rax
140808893:	48 c1 f8 03          	sar    $0x3,%rax
140808897:	49 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%r8
14080889e:	ff ff 1f
1408088a1:	49 3b c0             	cmp    %r8,%rax
1408088a4:	0f 84 76 01 00 00    	je     0x140808a20
1408088aa:	4c 8d 60 01          	lea    0x1(%rax),%r12
1408088ae:	48 8b 49 10          	mov    0x10(%rcx),%rcx
1408088b2:	48 2b ca             	sub    %rdx,%rcx
1408088b5:	48 c1 f9 03          	sar    $0x3,%rcx
1408088b9:	48 8b d1             	mov    %rcx,%rdx
1408088bc:	48 d1 ea             	shr    $1,%rdx
1408088bf:	49 8b c0             	mov    %r8,%rax
1408088c2:	48 2b c2             	sub    %rdx,%rax
1408088c5:	48 3b c8             	cmp    %rax,%rcx
1408088c8:	0f 87 4c 01 00 00    	ja     0x140808a1a
1408088ce:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
1408088d2:	49 8b fc             	mov    %r12,%rdi
1408088d5:	49 3b c4             	cmp    %r12,%rax
1408088d8:	48 0f 43 f8          	cmovae %rax,%rdi
1408088dc:	49 3b f8             	cmp    %r8,%rdi
1408088df:	0f 87 35 01 00 00    	ja     0x140808a1a
1408088e5:	48 8d 0c fd 00 00 00 	lea    0x0(,%rdi,8),%rcx
1408088ec:	00
1408088ed:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1408088f2:	48 85 c9             	test   %rcx,%rcx
1408088f5:	75 11                	jne    0x140808908
1408088f7:	33 d2                	xor    %edx,%edx
1408088f9:	44 8b d2             	mov    %edx,%r10d
1408088fc:	48 89 54 24 68       	mov    %rdx,0x68(%rsp)
140808901:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140808906:	eb 49                	jmp    0x140808951
140808908:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14080890f:	72 31                	jb     0x140808942
140808911:	48 8d 41 27          	lea    0x27(%rcx),%rax
140808915:	48 3b c1             	cmp    %rcx,%rax
140808918:	0f 86 fc 00 00 00    	jbe    0x140808a1a
14080891e:	48 8b c8             	mov    %rax,%rcx
140808921:	e8 e2 27 61 00       	call   0x140e1b108
140808926:	48 85 c0             	test   %rax,%rax
140808929:	0f 84 f7 00 00 00    	je     0x140808a26
14080892f:	4c 8d 50 27          	lea    0x27(%rax),%r10
140808933:	49 83 e2 e0          	and    $0xffffffffffffffe0,%r10
140808937:	49 89 42 f8          	mov    %rax,-0x8(%r10)
14080893b:	4c 89 54 24 68       	mov    %r10,0x68(%rsp)
140808940:	eb 0d                	jmp    0x14080894f
140808942:	e8 c1 27 61 00       	call   0x140e1b108
140808947:	4c 8b d0             	mov    %rax,%r10
14080894a:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
14080894f:	33 d2                	xor    %edx,%edx
140808951:	4e 8d 0c f5 00 00 00 	lea    0x0(,%r14,8),%r9
140808958:	00
140808959:	4f 8d 34 11          	lea    (%r9,%r10,1),%r14
14080895d:	49 8d 4e 08          	lea    0x8(%r14),%rcx
140808961:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140808966:	49 8b 07             	mov    (%r15),%rax
140808969:	49 89 17             	mov    %rdx,(%r15)
14080896c:	49 89 06             	mov    %rax,(%r14)
14080896f:	4c 89 74 24 78       	mov    %r14,0x78(%rsp)
140808974:	4c 8b 5e 08          	mov    0x8(%rsi),%r11
140808978:	48 8b 06             	mov    (%rsi),%rax
14080897b:	4d 8b c2             	mov    %r10,%r8
14080897e:	49 3b db             	cmp    %r11,%rbx
140808981:	75 25                	jne    0x1408089a8
140808983:	49 3b c3             	cmp    %r11,%rax
140808986:	74 6c                	je     0x1408089f4
140808988:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14080898f:	00
140808990:	48 8b 08             	mov    (%rax),%rcx
140808993:	48 89 10             	mov    %rdx,(%rax)
140808996:	49 89 08             	mov    %rcx,(%r8)
140808999:	4d 8d 40 08          	lea    0x8(%r8),%r8
14080899d:	48 83 c0 08          	add    $0x8,%rax
1408089a1:	49 3b c3             	cmp    %r11,%rax
1408089a4:	75 ea                	jne    0x140808990
1408089a6:	eb 4c                	jmp    0x1408089f4
1408089a8:	48 3b c3             	cmp    %rbx,%rax
1408089ab:	74 19                	je     0x1408089c6
1408089ad:	0f 1f 00             	nopl   (%rax)
1408089b0:	48 8b 08             	mov    (%rax),%rcx
1408089b3:	48 89 10             	mov    %rdx,(%rax)
1408089b6:	49 89 08             	mov    %rcx,(%r8)
1408089b9:	4d 8d 40 08          	lea    0x8(%r8),%r8
1408089bd:	48 83 c0 08          	add    $0x8,%rax
1408089c1:	48 3b c3             	cmp    %rbx,%rax
1408089c4:	75 ea                	jne    0x1408089b0
1408089c6:	4c 89 54 24 78       	mov    %r10,0x78(%rsp)
1408089cb:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1408089cf:	48 3b d9             	cmp    %rcx,%rbx
1408089d2:	74 20                	je     0x1408089f4
1408089d4:	4c 2b cb             	sub    %rbx,%r9
1408089d7:	4d 03 ca             	add    %r10,%r9
1408089da:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1408089e0:	48 8b 03             	mov    (%rbx),%rax
1408089e3:	48 89 13             	mov    %rdx,(%rbx)
1408089e6:	49 89 44 19 08       	mov    %rax,0x8(%r9,%rbx,1)
1408089eb:	48 83 c3 08          	add    $0x8,%rbx
1408089ef:	48 3b d9             	cmp    %rcx,%rbx
1408089f2:	75 ec                	jne    0x1408089e0
1408089f4:	4c 8b cf             	mov    %rdi,%r9
1408089f7:	4d 8b c4             	mov    %r12,%r8