1400514ad:	0f 2f 44 81 08       	comiss 0x8(%rcx,%rax,4),%xmm0
1400514b2:	41 0f 96 c2          	setbe  %r10b
1400514b6:	49 ff c2             	inc    %r10
1400514b9:	4c 03 d0             	add    %rax,%r10
1400514bc:	42 8b 04 91          	mov    (%rcx,%r10,4),%eax
1400514c0:	89 04 91             	mov    %eax,(%rcx,%rdx,4)
1400514c3:	49 8b d2             	mov    %r10,%rdx
1400514c6:	4d 3b d3             	cmp    %r11,%r10
1400514c9:	7c d5                	jl     0x1400514a0
1400514cb:	4d 3b d3             	cmp    %r11,%r10
1400514ce:	75 12                	jne    0x1400514e2
1400514d0:	41 f6 c0 01          	test   $0x1,%r8b
1400514d4:	75 0c                	jne    0x1400514e2
1400514d6:	42 8b 44 81 fc       	mov    -0x4(%rcx,%r8,4),%eax
1400514db:	89 04 91             	mov    %eax,(%rcx,%rdx,4)
1400514de:	49 8d 50 ff          	lea    -0x1(%r8),%rdx
1400514e2:	48 8d 42 ff          	lea    -0x1(%rdx),%rax
1400514e6:	48 d1 f8             	sar    $1,%rax
1400514e9:	48 3b da             	cmp    %rdx,%rbx
1400514ec:	7d 22                	jge    0x140051510
1400514ee:	f3 41 0f 10 09       	movss  (%r9),%xmm1
1400514f3:	f3 0f 10 04 81       	movss  (%rcx,%rax,4),%xmm0
1400514f8:	0f 2f c8             	comiss %xmm0,%xmm1
1400514fb:	76 13                	jbe    0x140051510
1400514fd:	f3 0f 11 04 91       	movss  %xmm0,(%rcx,%rdx,4)
140051502:	48 8b d0             	mov    %rax,%rdx
140051505:	48 ff c8             	dec    %rax
140051508:	48 d1 f8             	sar    $1,%rax
14005150b:	48 3b da             	cmp    %rdx,%rbx
14005150e:	7c e3                	jl     0x1400514f3
140051510:	41 8b 01             	mov    (%r9),%eax
140051513:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140051518:	48 8b 7c 24 10       	mov    0x10(%rsp),%rdi
14005151d:	89 04 91             	mov    %eax,(%rcx,%rdx,4)
140051520:	c3                   	ret
140051521:	90                   	nop
140051522:	90                   	nop
140051523:	90                   	nop
140051524:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140051529:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14005152e:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140051533:	57                   	push   %rdi
140051534:	41 54                	push   %r12
140051536:	41 55                	push   %r13
140051538:	41 56                	push   %r14
14005153a:	41 57                	push   %r15
14005153c:	48 83 ec 30          	sub    $0x30,%rsp
140051540:	4d 8d 60 ff          	lea    -0x1(%r8),%r12
140051544:	4d 8b f9             	mov    %r9,%r15
140051547:	4d 8b f4             	mov    %r12,%r14
14005154a:	49 8b e8             	mov    %r8,%rbp
14005154d:	49 d1 fe             	sar    $1,%r14
140051550:	48 8b da             	mov    %rdx,%rbx
140051553:	48 8b f9             	mov    %rcx,%rdi
140051556:	4c 8b ea             	mov    %rdx,%r13
140051559:	48 8b f2             	mov    %rdx,%rsi
14005155c:	49 3b d6             	cmp    %r14,%rdx
14005155f:	7d 6b                	jge    0x1400515cc
140051561:	48 03 f6             	add    %rsi,%rsi
140051564:	0f 57 c0             	xorps  %xmm0,%xmm0
140051567:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
14005156d:	48 8d 56 02          	lea    0x2(%rsi),%rdx
140051571:	48 c1 e2 04          	shl    $0x4,%rdx
140051575:	48 03 d7             	add    %rdi,%rdx
140051578:	48 8b 42 f8          	mov    -0x8(%rdx),%rax
14005157c:	48 85 c0             	test   %rax,%rax
14005157f:	74 04                	je     0x140051585
140051581:	f0 ff 40 08          	lock incl 0x8(%rax)
140051585:	48 8b 42 f0          	mov    -0x10(%rdx),%rax
140051589:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
14005158e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140051593:	48 8b 42 f8          	mov    -0x8(%rdx),%rax
140051597:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14005159c:	e8 57 17 ff ff       	call   0x140042cf8
1400515a1:	0f b6 c0             	movzbl %al,%eax
1400515a4:	48 03 db             	add    %rbx,%rbx
1400515a7:	48 83 f0 01          	xor    $0x1,%rax
1400515ab:	48 ff c0             	inc    %rax
1400515ae:	48 03 f0             	add    %rax,%rsi
1400515b1:	48 8b d6             	mov    %rsi,%rdx
1400515b4:	48 8d 0c df          	lea    (%rdi,%rbx,8),%rcx
1400515b8:	48 c1 e2 04          	shl    $0x4,%rdx
1400515bc:	48 03 d7             	add    %rdi,%rdx
1400515bf:	e8 20 4d fb ff       	call   0x1400062e4
1400515c4:	48 8b de             	mov    %rsi,%rbx
1400515c7:	49 3b f6             	cmp    %r14,%rsi
1400515ca:	7c 95                	jl     0x140051561
1400515cc:	49 3b f6             	cmp    %r14,%rsi
1400515cf:	75 20                	jne    0x1400515f1
1400515d1:	40 f6 c5 01          	test   $0x1,%bpl
1400515d5:	75 1a                	jne    0x1400515f1
1400515d7:	48 03 db             	add    %rbx,%rbx
1400515da:	48 c1 e5 04          	shl    $0x4,%rbp
1400515de:	48 8d 57 f0          	lea    -0x10(%rdi),%rdx
1400515e2:	48 03 d5             	add    %rbp,%rdx
1400515e5:	48 8d 0c df          	lea    (%rdi,%rbx,8),%rcx
1400515e9:	e8 f6 4c fb ff       	call   0x1400062e4
1400515ee:	49 8b dc             	mov    %r12,%rbx
1400515f1:	4c 3b eb             	cmp    %rbx,%r13
1400515f4:	7d 60                	jge    0x140051656
1400515f6:	49 8b 47 08          	mov    0x8(%r15),%rax
1400515fa:	48 8d 73 ff          	lea    -0x1(%rbx),%rsi
1400515fe:	48 d1 fe             	sar    $1,%rsi
140051601:	0f 57 c0             	xorps  %xmm0,%xmm0
140051604:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
14005160a:	48 85 c0             	test   %rax,%rax
14005160d:	74 04                	je     0x140051613
14005160f:	f0 ff 40 08          	lock incl 0x8(%rax)
140051613:	49 8b 07             	mov    (%r15),%rax
140051616:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
14005161b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140051620:	48 8b ee             	mov    %rsi,%rbp
140051623:	49 8b 47 08          	mov    0x8(%r15),%rax
140051627:	48 c1 e5 04          	shl    $0x4,%rbp
14005162b:	48 03 ef             	add    %rdi,%rbp
14005162e:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140051633:	48 8b d5             	mov    %rbp,%rdx
140051636:	e8 bd 16 ff ff       	call   0x140042cf8
14005163b:	84 c0                	test   %al,%al
14005163d:	74 17                	je     0x140051656
14005163f:	48 03 db             	add    %rbx,%rbx
140051642:	48 8b d5             	mov    %rbp,%rdx
140051645:	48 8d 0c df          	lea    (%rdi,%rbx,8),%rcx
140051649:	e8 96 4c fb ff       	call   0x1400062e4
14005164e:	48 8b de             	mov    %rsi,%rbx
140051651:	4c 3b ee             	cmp    %rsi,%r13
140051654:	7c a0                	jl     0x1400515f6
140051656:	48 03 db             	add    %rbx,%rbx
140051659:	49 8b d7             	mov    %r15,%rdx
14005165c:	48 8d 0c df          	lea    (%rdi,%rbx,8),%rcx
140051660:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
140051665:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
14005166a:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
14005166f:	48 83 c4 30          	add    $0x30,%rsp
140051673:	41 5f                	pop    %r15
140051675:	41 5e                	pop    %r14
140051677:	41 5d                	pop    %r13
140051679:	41 5c                	pop    %r12
14005167b:	5f                   	pop    %rdi
14005167c:	e9 63 4c fb ff       	jmp    0x1400062e4
140051681:	cc                   	int3
140051682:	90                   	nop
140051683:	90                   	nop
140051684:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140051689:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14005168e:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140051693:	57                   	push   %rdi
140051694:	41 54                	push   %r12
140051696:	41 55                	push   %r13
140051698:	41 56                	push   %r14
14005169a:	41 57                	push   %r15
14005169c:	48 83 ec 30          	sub    $0x30,%rsp
1400516a0:	4d 8d 60 ff          	lea    -0x1(%r8),%r12
1400516a4:	4d 8b f9             	mov    %r9,%r15
1400516a7:	4d 8b f4             	mov    %r12,%r14
1400516aa:	49 8b e8             	mov    %r8,%rbp
1400516ad:	49 d1 fe             	sar    $1,%r14
1400516b0:	48 8b da             	mov    %rdx,%rbx
1400516b3:	48 8b f9             	mov    %rcx,%rdi
1400516b6:	4c 8b ea             	mov    %rdx,%r13
1400516b9:	48 8b f2             	mov    %rdx,%rsi
1400516bc:	49 3b d6             	cmp    %r14,%rdx
1400516bf:	7d 6b                	jge    0x14005172c
1400516c1:	48 03 f6             	add    %rsi,%rsi
1400516c4:	0f 57 c0             	xorps  %xmm0,%xmm0
1400516c7:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
1400516cd:	48 8d 56 02          	lea    0x2(%rsi),%rdx
1400516d1:	48 c1 e2 04          	shl    $0x4,%rdx
1400516d5:	48 03 d7             	add    %rdi,%rdx
1400516d8:	48 8b 42 f8          	mov    -0x8(%rdx),%rax
1400516dc:	48 85 c0             	test   %rax,%rax
1400516df:	74 04                	je     0x1400516e5
1400516e1:	f0 ff 40 08          	lock incl 0x8(%rax)
1400516e5:	48 8b 42 f0          	mov    -0x10(%rdx),%rax
1400516e9:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
1400516ee:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400516f3:	48 8b 42 f8          	mov    -0x8(%rdx),%rax
1400516f7:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1400516fc:	e8 9b 16 ff ff       	call   0x140042d9c
140051701:	0f b6 c0             	movzbl %al,%eax
140051704:	48 03 db             	add    %rbx,%rbx
140051707:	48 83 f0 01          	xor    $0x1,%rax
14005170b:	48 ff c0             	inc    %rax
14005170e:	48 03 f0             	add    %rax,%rsi
140051711:	48 8b d6             	mov    %rsi,%rdx
140051714:	48 8d 0c df          	lea    (%rdi,%rbx,8),%rcx
140051718:	48 c1 e2 04          	shl    $0x4,%rdx
14005171c:	48 03 d7             	add    %rdi,%rdx
14005171f:	e8 c0 4b fb ff       	call   0x1400062e4
140051724:	48 8b de             	mov    %rsi,%rbx
140051727:	49 3b f6             	cmp    %r14,%rsi
14005172a:	7c 95                	jl     0x1400516c1
14005172c:	49 3b f6             	cmp    %r14,%rsi
14005172f:	75 20                	jne    0x140051751
140051731:	40 f6 c5 01          	test   $0x1,%bpl
140051735:	75 1a                	jne    0x140051751
140051737:	48 03 db             	add    %rbx,%rbx
14005173a:	48 c1 e5 04          	shl    $0x4,%rbp
14005173e:	48 8d 57 f0          	lea    -0x10(%rdi),%rdx
140051742:	48 03 d5             	add    %rbp,%rdx
140051745:	48 8d 0c df          	lea    (%rdi,%rbx,8),%rcx
140051749:	e8 96 4b fb ff       	call   0x1400062e4
14005174e:	49 8b dc             	mov    %r12,%rbx
140051751:	4c 3b eb             	cmp    %rbx,%r13
140051754:	7d 60                	jge    0x1400517b6
140051756:	49 8b 47 08          	mov    0x8(%r15),%rax
14005175a:	48 8d 73 ff          	lea    -0x1(%rbx),%rsi
14005175e:	48 d1 fe             	sar    $1,%rsi
140051761:	0f 57 c0             	xorps  %xmm0,%xmm0
140051764:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
14005176a:	48 85 c0             	test   %rax,%rax
14005176d:	74 04                	je     0x140051773
14005176f:	f0 ff 40 08          	lock incl 0x8(%rax)
140051773:	49 8b 07             	mov    (%r15),%rax
140051776:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
14005177b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140051780:	48 8b ee             	mov    %rsi,%rbp
140051783:	49 8b 47 08          	mov    0x8(%r15),%rax
140051787:	48 c1 e5 04          	shl    $0x4,%rbp
14005178b:	48 03 ef             	add    %rdi,%rbp
14005178e:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140051793:	48 8b d5             	mov    %rbp,%rdx
140051796:	e8 01 16 ff ff       	call   0x140042d9c
14005179b:	84 c0                	test   %al,%al
14005179d:	74 17                	je     0x1400517b6
14005179f:	48 03 db             	add    %rbx,%rbx
1400517a2:	48 8b d5             	mov    %rbp,%rdx
1400517a5:	48 8d 0c df          	lea    (%rdi,%rbx,8),%rcx
1400517a9:	e8 36 4b fb ff       	call   0x1400062e4
1400517ae:	48 8b de             	mov    %rsi,%rbx
1400517b1:	4c 3b ee             	cmp    %rsi,%r13
1400517b4:	7c a0                	jl     0x140051756
1400517b6:	48 03 db             	add    %rbx,%rbx
1400517b9:	49 8b d7             	mov    %r15,%rdx
1400517bc:	48 8d 0c df          	lea    (%rdi,%rbx,8),%rcx
1400517c0:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
1400517c5:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
1400517ca:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
1400517cf:	48 83 c4 30          	add    $0x30,%rsp
1400517d3:	41 5f                	pop    %r15
1400517d5:	41 5e                	pop    %r14
1400517d7:	41 5d                	pop    %r13
1400517d9:	41 5c                	pop    %r12
1400517db:	5f                   	pop    %rdi
1400517dc:	e9 03 4b fb ff       	jmp    0x1400062e4
1400517e1:	cc                   	int3
1400517e2:	90                   	nop
1400517e3:	90                   	nop
1400517e4:	48 83 ec 28          	sub    $0x28,%rsp
1400517e8:	48 8b 09             	mov    (%rcx),%rcx
1400517eb:	48 85 c9             	test   %rcx,%rcx
1400517ee:	74 06                	je     0x1400517f6
1400517f0:	ff 15 ca b0 ab 00    	call   *0xabb0ca(%rip)        # 0x140b0c8c0
1400517f6:	48 83 c4 28          	add    $0x28,%rsp
1400517fa:	c3                   	ret
1400517fb:	90                   	nop
1400517fc:	48 8b c4             	mov    %rsp,%rax
1400517ff:	48 89 58 08          	mov    %rbx,0x8(%rax)
140051803:	48 89 68 10          	mov    %rbp,0x10(%rax)
140051807:	48 89 70 18          	mov    %rsi,0x18(%rax)
14005180b:	48 89 78 20          	mov    %rdi,0x20(%rax)
14005180f:	41 54                	push   %r12
140051811:	41 56                	push   %r14
140051813:	41 57                	push   %r15
140051815:	48 83 ec 20          	sub    $0x20,%rsp
140051819:	49 8d 70 ff          	lea    -0x1(%r8),%rsi
14005181d:	4d 8b f9             	mov    %r9,%r15
140051820:	48 d1 fe             	sar    $1,%rsi
140051823:	4d 8b f0             	mov    %r8,%r14
140051826:	4c 8b d2             	mov    %rdx,%r10
140051829:	48 8b f9             	mov    %rcx,%rdi
14005182c:	48 8b ea             	mov    %rdx,%rbp
14005182f:	48 8b da             	mov    %rdx,%rbx
140051832:	48 3b d6             	cmp    %rsi,%rdx
140051835:	7d 44                	jge    0x14005187b
140051837:	48 8d 14 1b          	lea    (%rbx,%rbx,1),%rdx
14005183b:	33 db                	xor    %ebx,%ebx
14005183d:	48 8d 04 52          	lea    (%rdx,%rdx,2),%rax
140051841:	48 03 c0             	add    %rax,%rax
140051844:	4b 8d 0c 52          	lea    (%r10,%r10,2),%rcx
140051848:	f3 0f 10 44 c7 48    	movss  0x48(%rdi,%rax,8),%xmm0
14005184e:	0f 2f 44 c7 78       	comiss 0x78(%rdi,%rax,8),%xmm0
140051853:	0f 96 c3             	setbe  %bl
140051856:	48 ff c2             	inc    %rdx
140051859:	48 03 da             	add    %rdx,%rbx
14005185c:	48 c1 e1 04          	shl    $0x4,%rcx
140051860:	48 03 cf             	add    %rdi,%rcx
140051863:	48 8d 14 5b          	lea    (%rbx,%rbx,2),%rdx
140051867:	48 c1 e2 04          	shl    $0x4,%rdx
14005186b:	48 03 d7             	add    %rdi,%rdx
14005186e:	e8 61 d6 ff ff       	call   0x14004eed4
140051873:	4c 8b d3             	mov    %rbx,%r10
140051876:	48 3b de             	cmp    %rsi,%rbx
140051879:	7c bc                	jl     0x140051837
14005187b:	48 3b de             	cmp    %rsi,%rbx
14005187e:	75 29                	jne    0x1400518a9
140051880:	41 f6 c6 01          	test   $0x1,%r14b
140051884:	75 23                	jne    0x1400518a9
140051886:	4b 8d 0c 52          	lea    (%r10,%r10,2),%rcx
14005188a:	48 c1 e1 04          	shl    $0x4,%rcx
14005188e:	4b 8d 14 76          	lea    (%r14,%r14,2),%rdx
140051892:	48 c1 e2 04          	shl    $0x4,%rdx
140051896:	48 03 cf             	add    %rdi,%rcx
140051899:	48 83 c2 d0          	add    $0xffffffffffffffd0,%rdx
14005189d:	48 03 d7             	add    %rdi,%rdx
1400518a0:	e8 2f d6 ff ff       	call   0x14004eed4
1400518a5:	4d 8d 56 ff          	lea    -0x1(%r14),%r10
1400518a9:	49 3b ea             	cmp    %r10,%rbp
1400518ac:	7d 36                	jge    0x1400518e4
1400518ae:	f3 41 0f 10 47 18    	movss  0x18(%r15),%xmm0
1400518b4:	49 8d 5a ff          	lea    -0x1(%r10),%rbx
1400518b8:	48 d1 fb             	sar    $1,%rbx
1400518bb:	48 8d 14 5b          	lea    (%rbx,%rbx,2),%rdx
1400518bf:	48 c1 e2 04          	shl    $0x4,%rdx
1400518c3:	48 03 d7             	add    %rdi,%rdx
1400518c6:	0f 2f 42 18          	comiss 0x18(%rdx),%xmm0
1400518ca:	76 18                	jbe    0x1400518e4
1400518cc:	4b 8d 0c 52          	lea    (%r10,%r10,2),%rcx
1400518d0:	48 c1 e1 04          	shl    $0x4,%rcx
1400518d4:	48 03 cf             	add    %rdi,%rcx
1400518d7:	e8 f8 d5 ff ff       	call   0x14004eed4
1400518dc:	4c 8b d3             	mov    %rbx,%r10
1400518df:	48 3b eb             	cmp    %rbx,%rbp
1400518e2:	7c ca                	jl     0x1400518ae
1400518e4:	4b 8d 0c 52          	lea    (%r10,%r10,2),%rcx
1400518e8:	49 8b d7             	mov    %r15,%rdx
1400518eb:	48 c1 e1 04          	shl    $0x4,%rcx
1400518ef:	48 03 cf             	add    %rdi,%rcx
1400518f2:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1400518f7:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1400518fc:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140051901:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140051906:	48 83 c4 20          	add    $0x20,%rsp
14005190a:	41 5f                	pop    %r15
14005190c:	41 5e                	pop    %r14
14005190e:	41 5c                	pop    %r12
140051910:	e9 bf d5 ff ff       	jmp    0x14004eed4
140051915:	cc                   	int3
140051916:	90                   	nop
140051917:	90                   	nop
140051918:	48 8b c4             	mov    %rsp,%rax
14005191b:	48 89 58 10          	mov    %rbx,0x10(%rax)
14005191f:	44 88 40 18          	mov    %r8b,0x18(%rax)
140051923:	55                   	push   %rbp
140051924:	56                   	push   %rsi
140051925:	57                   	push   %rdi
140051926:	41 54                	push   %r12
140051928:	41 55                	push   %r13
14005192a:	41 56                	push   %r14
14005192c:	41 57                	push   %r15