1402556c8:	49 83 ee 10          	sub    $0x10,%r14
1402556cc:	4c 3b e6             	cmp    %rsi,%r12
1402556cf:	72 a6                	jb     0x140255677
1402556d1:	49 3b f4             	cmp    %r12,%rsi
1402556d4:	75 53                	jne    0x140255729
1402556d6:	49 3b fd             	cmp    %r13,%rdi
1402556d9:	0f 84 be 00 00 00    	je     0x14025579d
1402556df:	48 3b df             	cmp    %rdi,%rbx
1402556e2:	74 1c                	je     0x140255700
1402556e4:	48 8b 03             	mov    (%rbx),%rax
1402556e7:	49 8b 0f             	mov    (%r15),%rcx
1402556ea:	49 89 07             	mov    %rax,(%r15)
1402556ed:	48 8b 43 08          	mov    0x8(%rbx),%rax
1402556f1:	48 89 0b             	mov    %rcx,(%rbx)
1402556f4:	49 8b 4f 08          	mov    0x8(%r15),%rcx
1402556f8:	49 89 47 08          	mov    %rax,0x8(%r15)
1402556fc:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
140255700:	49 8b 0f             	mov    (%r15),%rcx
140255703:	48 83 c3 10          	add    $0x10,%rbx
140255707:	48 8b 07             	mov    (%rdi),%rax
14025570a:	49 89 07             	mov    %rax,(%r15)
14025570d:	48 8b 47 08          	mov    0x8(%rdi),%rax
140255711:	48 89 0f             	mov    %rcx,(%rdi)
140255714:	49 8b 4f 08          	mov    0x8(%r15),%rcx
140255718:	49 89 47 08          	mov    %rax,0x8(%r15)
14025571c:	49 83 c7 10          	add    $0x10,%r15
140255720:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
140255724:	e9 3c ff ff ff       	jmp    0x140255665
140255729:	48 83 c6 f0          	add    $0xfffffffffffffff0,%rsi
14025572d:	49 3b fd             	cmp    %r13,%rdi
140255730:	75 4a                	jne    0x14025577c
140255732:	49 83 ef 10          	sub    $0x10,%r15
140255736:	49 8d 57 08          	lea    0x8(%r15),%rdx
14025573a:	49 3b f7             	cmp    %r15,%rsi
14025573d:	74 1a                	je     0x140255759
14025573f:	49 8b 07             	mov    (%r15),%rax
140255742:	48 8b 0e             	mov    (%rsi),%rcx
140255745:	48 89 06             	mov    %rax,(%rsi)
140255748:	48 8b 02             	mov    (%rdx),%rax
14025574b:	49 89 0f             	mov    %rcx,(%r15)
14025574e:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140255752:	48 89 46 08          	mov    %rax,0x8(%rsi)
140255756:	48 89 0a             	mov    %rcx,(%rdx)
140255759:	49 8b 0f             	mov    (%r15),%rcx
14025575c:	48 83 eb 10          	sub    $0x10,%rbx
140255760:	48 8b 03             	mov    (%rbx),%rax
140255763:	49 89 07             	mov    %rax,(%r15)
140255766:	48 8b 43 08          	mov    0x8(%rbx),%rax
14025576a:	48 89 0b             	mov    %rcx,(%rbx)
14025576d:	48 8b 0a             	mov    (%rdx),%rcx
140255770:	48 89 02             	mov    %rax,(%rdx)
140255773:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
140255777:	e9 ed fe ff ff       	jmp    0x140255669
14025577c:	48 8b 06             	mov    (%rsi),%rax
14025577f:	48 8b 0f             	mov    (%rdi),%rcx
140255782:	48 89 07             	mov    %rax,(%rdi)
140255785:	48 8b 46 08          	mov    0x8(%rsi),%rax
140255789:	48 89 0e             	mov    %rcx,(%rsi)
14025578c:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140255790:	48 89 47 08          	mov    %rax,0x8(%rdi)
140255794:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
140255798:	e9 c8 fe ff ff       	jmp    0x140255665
14025579d:	48 89 5d 08          	mov    %rbx,0x8(%rbp)
1402557a1:	48 8b c5             	mov    %rbp,%rax
1402557a4:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
1402557a9:	4c 89 7d 00          	mov    %r15,0x0(%rbp)
1402557ad:	48 83 c4 20          	add    $0x20,%rsp
1402557b1:	41 5f                	pop    %r15
1402557b3:	41 5e                	pop    %r14
1402557b5:	41 5d                	pop    %r13
1402557b7:	41 5c                	pop    %r12
1402557b9:	5f                   	pop    %rdi
1402557ba:	5e                   	pop    %rsi
1402557bb:	5d                   	pop    %rbp
1402557bc:	c3                   	ret
1402557bd:	90                   	nop
1402557be:	90                   	nop
1402557bf:	90                   	nop
1402557c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402557c5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1402557ca:	57                   	push   %rdi
1402557cb:	48 83 ec 20          	sub    $0x20,%rsp
1402557cf:	49 8b f8             	mov    %r8,%rdi
1402557d2:	48 8b f2             	mov    %rdx,%rsi
1402557d5:	48 8b d9             	mov    %rcx,%rbx
1402557d8:	48 3b ca             	cmp    %rdx,%rcx
1402557db:	74 47                	je     0x140255824
1402557dd:	48 8b 03             	mov    (%rbx),%rax
1402557e0:	48 83 23 00          	andq   $0x0,(%rbx)
1402557e4:	4c 8b 43 08          	mov    0x8(%rbx),%r8
1402557e8:	48 83 63 08 00       	andq   $0x0,0x8(%rbx)
1402557ed:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1402557f1:	48 89 07             	mov    %rax,(%rdi)
1402557f4:	4c 89 47 08          	mov    %r8,0x8(%rdi)
1402557f8:	48 85 c9             	test   %rcx,%rcx
1402557fb:	74 1a                	je     0x140255817
1402557fd:	83 c8 ff             	or     $0xffffffff,%eax
140255800:	f0 0f c1 41 0c       	lock xadd %eax,0xc(%rcx)
140255805:	83 f8 01             	cmp    $0x1,%eax
140255808:	75 0d                	jne    0x140255817
14025580a:	48 8b 01             	mov    (%rcx),%rax
14025580d:	48 8b 40 08          	mov    0x8(%rax),%rax
140255811:	ff 15 21 74 8b 00    	call   *0x8b7421(%rip)        # 0x140b0cc38
140255817:	48 83 c7 10          	add    $0x10,%rdi
14025581b:	48 83 c3 10          	add    $0x10,%rbx
14025581f:	48 3b de             	cmp    %rsi,%rbx
140255822:	75 b9                	jne    0x1402557dd
140255824:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140255829:	48 8b c7             	mov    %rdi,%rax
14025582c:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140255831:	48 83 c4 20          	add    $0x20,%rsp
140255835:	5f                   	pop    %rdi
140255836:	c3                   	ret
140255837:	90                   	nop
140255838:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14025583d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140255842:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140255847:	57                   	push   %rdi
140255848:	41 54                	push   %r12
14025584a:	41 55                	push   %r13
14025584c:	41 56                	push   %r14
14025584e:	41 57                	push   %r15
140255850:	48 83 ec 20          	sub    $0x20,%rsp
140255854:	4d 8d 68 ff          	lea    -0x1(%r8),%r13
140255858:	4d 8b e1             	mov    %r9,%r12
14025585b:	4d 8b f5             	mov    %r13,%r14
14025585e:	49 8b e8             	mov    %r8,%rbp
140255861:	49 d1 fe             	sar    $1,%r14
140255864:	48 8b fa             	mov    %rdx,%rdi
140255867:	48 8b f1             	mov    %rcx,%rsi
14025586a:	4c 8b fa             	mov    %rdx,%r15
14025586d:	48 8b da             	mov    %rdx,%rbx
140255870:	49 3b d6             	cmp    %r14,%rdx
140255873:	7d 47                	jge    0x1402558bc
140255875:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
14025587a:	48 03 db             	add    %rbx,%rbx
14025587d:	48 8d 53 02          	lea    0x2(%rbx),%rdx
140255881:	48 c1 e2 04          	shl    $0x4,%rdx
140255885:	48 03 d6             	add    %rsi,%rdx
140255888:	4c 8d 42 f0          	lea    -0x10(%rdx),%r8
14025588c:	e8 9b bd ff ff       	call   0x14025162c
140255891:	0f b6 c0             	movzbl %al,%eax
140255894:	48 03 ff             	add    %rdi,%rdi
140255897:	48 83 f0 01          	xor    $0x1,%rax
14025589b:	48 ff c0             	inc    %rax
14025589e:	48 03 d8             	add    %rax,%rbx
1402558a1:	48 8b d3             	mov    %rbx,%rdx
1402558a4:	48 8d 0c fe          	lea    (%rsi,%rdi,8),%rcx
1402558a8:	48 c1 e2 04          	shl    $0x4,%rdx
1402558ac:	48 03 d6             	add    %rsi,%rdx
1402558af:	e8 30 0a db ff       	call   0x1400062e4
1402558b4:	48 8b fb             	mov    %rbx,%rdi
1402558b7:	49 3b de             	cmp    %r14,%rbx
1402558ba:	7c b9                	jl     0x140255875
1402558bc:	49 3b de             	cmp    %r14,%rbx
1402558bf:	75 20                	jne    0x1402558e1
1402558c1:	40 f6 c5 01          	test   $0x1,%bpl
1402558c5:	75 1a                	jne    0x1402558e1
1402558c7:	48 03 ff             	add    %rdi,%rdi
1402558ca:	48 c1 e5 04          	shl    $0x4,%rbp
1402558ce:	48 8d 56 f0          	lea    -0x10(%rsi),%rdx
1402558d2:	48 03 d5             	add    %rbp,%rdx
1402558d5:	48 8d 0c fe          	lea    (%rsi,%rdi,8),%rcx
1402558d9:	e8 06 0a db ff       	call   0x1400062e4
1402558de:	49 8b fd             	mov    %r13,%rdi
1402558e1:	4c 3b ff             	cmp    %rdi,%r15
1402558e4:	7d 3c                	jge    0x140255922
1402558e6:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
1402558eb:	48 8d 5f ff          	lea    -0x1(%rdi),%rbx
1402558ef:	48 d1 fb             	sar    $1,%rbx
1402558f2:	4d 8b c4             	mov    %r12,%r8
1402558f5:	48 8b eb             	mov    %rbx,%rbp
1402558f8:	48 c1 e5 04          	shl    $0x4,%rbp
1402558fc:	48 03 ee             	add    %rsi,%rbp
1402558ff:	48 8b d5             	mov    %rbp,%rdx
140255902:	e8 25 bd ff ff       	call   0x14025162c
140255907:	84 c0                	test   %al,%al
140255909:	74 17                	je     0x140255922
14025590b:	48 03 ff             	add    %rdi,%rdi
14025590e:	48 8b d5             	mov    %rbp,%rdx
140255911:	48 8d 0c fe          	lea    (%rsi,%rdi,8),%rcx
140255915:	e8 ca 09 db ff       	call   0x1400062e4
14025591a:	48 8b fb             	mov    %rbx,%rdi
14025591d:	4c 3b fb             	cmp    %rbx,%r15
140255920:	7c c4                	jl     0x1402558e6
140255922:	48 03 ff             	add    %rdi,%rdi
140255925:	49 8b d4             	mov    %r12,%rdx
140255928:	48 8d 0c fe          	lea    (%rsi,%rdi,8),%rcx
14025592c:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140255931:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140255936:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
14025593b:	48 83 c4 20          	add    $0x20,%rsp
14025593f:	41 5f                	pop    %r15
140255941:	41 5e                	pop    %r14
140255943:	41 5d                	pop    %r13
140255945:	41 5c                	pop    %r12
140255947:	5f                   	pop    %rdi
140255948:	e9 97 09 db ff       	jmp    0x1400062e4
14025594d:	cc                   	int3
14025594e:	90                   	nop
14025594f:	90                   	nop
140255950:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140255955:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14025595a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14025595f:	57                   	push   %rdi
140255960:	41 54                	push   %r12
140255962:	41 55                	push   %r13
140255964:	41 56                	push   %r14
140255966:	41 57                	push   %r15
140255968:	48 83 ec 20          	sub    $0x20,%rsp
14025596c:	4d 8d 60 ff          	lea    -0x1(%r8),%r12
140255970:	4d 8b f9             	mov    %r9,%r15
140255973:	4d 8b f4             	mov    %r12,%r14
140255976:	49 8b e8             	mov    %r8,%rbp
140255979:	49 d1 fe             	sar    $1,%r14
14025597c:	48 8b fa             	mov    %rdx,%rdi
14025597f:	48 8b f1             	mov    %rcx,%rsi
140255982:	4c 8b ea             	mov    %rdx,%r13
140255985:	48 8b da             	mov    %rdx,%rbx
140255988:	49 3b d6             	cmp    %r14,%rdx
14025598b:	7d 7b                	jge    0x140255a08
14025598d:	48 03 db             	add    %rbx,%rbx
140255990:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140255995:	48 8d 53 02          	lea    0x2(%rbx),%rdx
140255999:	48 c1 e2 04          	shl    $0x4,%rdx
14025599d:	48 03 d6             	add    %rsi,%rdx
1402559a0:	4c 8d 42 f0          	lea    -0x10(%rdx),%r8
1402559a4:	e8 03 c0 ff ff       	call   0x1402519ac
1402559a9:	48 03 ff             	add    %rdi,%rdi
1402559ac:	0f b6 c0             	movzbl %al,%eax
1402559af:	48 83 f0 01          	xor    $0x1,%rax
1402559b3:	48 ff c0             	inc    %rax
1402559b6:	48 03 d8             	add    %rax,%rbx
1402559b9:	48 8b cb             	mov    %rbx,%rcx
1402559bc:	48 c1 e1 04          	shl    $0x4,%rcx
1402559c0:	48 03 ce             	add    %rsi,%rcx
1402559c3:	48 8b 01             	mov    (%rcx),%rax
1402559c6:	48 8b 51 08          	mov    0x8(%rcx),%rdx
1402559ca:	48 83 21 00          	andq   $0x0,(%rcx)
1402559ce:	48 83 61 08 00       	andq   $0x0,0x8(%rcx)
1402559d3:	48 89 04 fe          	mov    %rax,(%rsi,%rdi,8)
1402559d7:	48 8b 4c fe 08       	mov    0x8(%rsi,%rdi,8),%rcx
1402559dc:	48 89 54 fe 08       	mov    %rdx,0x8(%rsi,%rdi,8)
1402559e1:	48 85 c9             	test   %rcx,%rcx
1402559e4:	74 1a                	je     0x140255a00
1402559e6:	83 c8 ff             	or     $0xffffffff,%eax
1402559e9:	f0 0f c1 41 0c       	lock xadd %eax,0xc(%rcx)
1402559ee:	83 f8 01             	cmp    $0x1,%eax
1402559f1:	75 0d                	jne    0x140255a00
1402559f3:	48 8b 01             	mov    (%rcx),%rax
1402559f6:	48 8b 40 08          	mov    0x8(%rax),%rax
1402559fa:	ff 15 38 72 8b 00    	call   *0x8b7238(%rip)        # 0x140b0cc38
140255a00:	48 8b fb             	mov    %rbx,%rdi
140255a03:	49 3b de             	cmp    %r14,%rbx
140255a06:	7c 85                	jl     0x14025598d
140255a08:	49 3b de             	cmp    %r14,%rbx
140255a0b:	75 52                	jne    0x140255a5f
140255a0d:	40 f6 c5 01          	test   $0x1,%bpl
140255a11:	75 4c                	jne    0x140255a5f
140255a13:	48 03 ed             	add    %rbp,%rbp
140255a16:	48 03 ff             	add    %rdi,%rdi
140255a19:	48 8b 44 ee f0       	mov    -0x10(%rsi,%rbp,8),%rax
140255a1e:	48 83 64 ee f0 00    	andq   $0x0,-0x10(%rsi,%rbp,8)
140255a24:	48 8b 54 ee f8       	mov    -0x8(%rsi,%rbp,8),%rdx
140255a29:	48 83 64 ee f8 00    	andq   $0x0,-0x8(%rsi,%rbp,8)
140255a2f:	48 89 04 fe          	mov    %rax,(%rsi,%rdi,8)
140255a33:	48 8b 4c fe 08       	mov    0x8(%rsi,%rdi,8),%rcx
140255a38:	48 89 54 fe 08       	mov    %rdx,0x8(%rsi,%rdi,8)
140255a3d:	48 85 c9             	test   %rcx,%rcx
140255a40:	74 1a                	je     0x140255a5c
140255a42:	83 c8 ff             	or     $0xffffffff,%eax
140255a45:	f0 0f c1 41 0c       	lock xadd %eax,0xc(%rcx)
140255a4a:	83 f8 01             	cmp    $0x1,%eax
140255a4d:	75 0d                	jne    0x140255a5c
140255a4f:	48 8b 01             	mov    (%rcx),%rax
140255a52:	48 8b 40 08          	mov    0x8(%rax),%rax
140255a56:	ff 15 dc 71 8b 00    	call   *0x8b71dc(%rip)        # 0x140b0cc38
140255a5c:	49 8b fc             	mov    %r12,%rdi
140255a5f:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
140255a64:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
140255a69:	4c 3b ef             	cmp    %rdi,%r13
140255a6c:	7d 6d                	jge    0x140255adb
140255a6e:	48 8d 5f ff          	lea    -0x1(%rdi),%rbx
140255a72:	4d 8b c7             	mov    %r15,%r8
140255a75:	48 d1 fb             	sar    $1,%rbx
140255a78:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140255a7d:	4c 8b f3             	mov    %rbx,%r14
140255a80:	49 c1 e6 04          	shl    $0x4,%r14
140255a84:	4c 03 f6             	add    %rsi,%r14
140255a87:	49 8b d6             	mov    %r14,%rdx
140255a8a:	e8 1d bf ff ff       	call   0x1402519ac
140255a8f:	84 c0                	test   %al,%al
140255a91:	74 48                	je     0x140255adb
140255a93:	49 8b 06             	mov    (%r14),%rax
140255a96:	48 03 ff             	add    %rdi,%rdi
140255a99:	49 83 26 00          	andq   $0x0,(%r14)
140255a9d:	49 8b 56 08          	mov    0x8(%r14),%rdx
140255aa1:	49 83 66 08 00       	andq   $0x0,0x8(%r14)
140255aa6:	48 89 04 fe          	mov    %rax,(%rsi,%rdi,8)
140255aaa:	48 8b 4c fe 08       	mov    0x8(%rsi,%rdi,8),%rcx
140255aaf:	48 89 54 fe 08       	mov    %rdx,0x8(%rsi,%rdi,8)
140255ab4:	48 85 c9             	test   %rcx,%rcx
140255ab7:	74 1a                	je     0x140255ad3
140255ab9:	83 c8 ff             	or     $0xffffffff,%eax
140255abc:	f0 0f c1 41 0c       	lock xadd %eax,0xc(%rcx)
140255ac1:	83 f8 01             	cmp    $0x1,%eax
140255ac4:	75 0d                	jne    0x140255ad3
140255ac6:	48 8b 01             	mov    (%rcx),%rax
140255ac9:	48 8b 40 08          	mov    0x8(%rax),%rax
140255acd:	ff 15 65 71 8b 00    	call   *0x8b7165(%rip)        # 0x140b0cc38
140255ad3:	48 8b fb             	mov    %rbx,%rdi
140255ad6:	4c 3b eb             	cmp    %rbx,%r13
140255ad9:	7c 93                	jl     0x140255a6e
140255adb:	49 8b 07             	mov    (%r15),%rax
140255ade:	48 03 ff             	add    %rdi,%rdi
140255ae1:	49 83 27 00          	andq   $0x0,(%r15)
140255ae5:	49 8b 57 08          	mov    0x8(%r15),%rdx
140255ae9:	49 83 67 08 00       	andq   $0x0,0x8(%r15)
140255aee:	48 89 04 fe          	mov    %rax,(%rsi,%rdi,8)
140255af2:	48 8b 4c fe 08       	mov    0x8(%rsi,%rdi,8),%rcx
140255af7:	48 89 54 fe 08       	mov    %rdx,0x8(%rsi,%rdi,8)
140255afc:	48 85 c9             	test   %rcx,%rcx
140255aff:	74 1a                	je     0x140255b1b
140255b01:	83 c8 ff             	or     $0xffffffff,%eax
140255b04:	f0 0f c1 41 0c       	lock xadd %eax,0xc(%rcx)
140255b09:	83 f8 01             	cmp    $0x1,%eax
140255b0c:	75 0d                	jne    0x140255b1b
140255b0e:	48 8b 01             	mov    (%rcx),%rax
140255b11:	48 8b 40 08          	mov    0x8(%rax),%rax
140255b15:	ff 15 1d 71 8b 00    	call   *0x8b711d(%rip)        # 0x140b0cc38
140255b1b:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140255b20:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140255b25:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140255b2a:	48 83 c4 20          	add    $0x20,%rsp
140255b2e:	41 5f                	pop    %r15
140255b30:	41 5e                	pop    %r14
140255b32:	41 5d                	pop    %r13
140255b34:	41 5c                	pop    %r12
140255b36:	5f                   	pop    %rdi
140255b37:	c3                   	ret
140255b38:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140255b3d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140255b42:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140255b47:	57                   	push   %rdi
140255b48:	41 54                	push   %r12
140255b4a:	41 55                	push   %r13
140255b4c:	41 56                	push   %r14
140255b4e:	41 57                	push   %r15
140255b50:	48 83 ec 20          	sub    $0x20,%rsp
140255b54:	4d 8d 68 ff          	lea    -0x1(%r8),%r13