14018608b:	48 8b ce             	mov    %rsi,%rcx
14018608e:	e8 91 71 00 00       	call   0x14018d224
140186093:	f3 0f 10 40 08       	movss  0x8(%rax),%xmm0
140186098:	f3 0f 5f 45 d8       	maxss  -0x28(%rbp),%xmm0
14018609d:	f3 0f 11 45 d8       	movss  %xmm0,-0x28(%rbp)
1401860a2:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
1401860a6:	48 85 c9             	test   %rcx,%rcx
1401860a9:	74 3d                	je     0x1401860e8
1401860ab:	83 ce ff             	or     $0xffffffff,%esi
1401860ae:	8b c6                	mov    %esi,%eax
1401860b0:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
1401860b5:	03 c6                	add    %esi,%eax
1401860b7:	75 2f                	jne    0x1401860e8
1401860b9:	48 8b 5d e8          	mov    -0x18(%rbp),%rbx
1401860bd:	48 8b 03             	mov    (%rbx),%rax
1401860c0:	48 8b cb             	mov    %rbx,%rcx
1401860c3:	48 8b 00             	mov    (%rax),%rax
1401860c6:	ff 15 6c 6b 98 00    	call   *0x986b6c(%rip)        # 0x140b0cc38
1401860cc:	8b c6                	mov    %esi,%eax
1401860ce:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
1401860d3:	03 c6                	add    %esi,%eax
1401860d5:	75 11                	jne    0x1401860e8
1401860d7:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
1401860db:	48 8b 01             	mov    (%rcx),%rax
1401860de:	48 8b 40 08          	mov    0x8(%rax),%rax
1401860e2:	ff 15 50 6b 98 00    	call   *0x986b50(%rip)        # 0x140b0cc38
1401860e8:	48 85 ff             	test   %rdi,%rdi
1401860eb:	0f 85 c8 fd ff ff    	jne    0x140185eb9
1401860f1:	44 8a 45 50          	mov    0x50(%rbp),%r8b
1401860f5:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
1401860f9:	45 84 c0             	test   %r8b,%r8b
1401860fc:	49 0f 44 c4          	cmove  %r12,%rax
140186100:	0f 10 00             	movups (%rax),%xmm0
140186103:	48 8b 45 48          	mov    0x48(%rbp),%rax
140186107:	f3 0f 7f 00          	movdqu %xmm0,(%rax)
14018610b:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
140186112:	00
140186113:	0f 28 74 24 40       	movaps 0x40(%rsp),%xmm6
140186118:	48 83 c4 50          	add    $0x50,%rsp
14018611c:	41 5f                	pop    %r15
14018611e:	41 5e                	pop    %r14
140186120:	41 5d                	pop    %r13
140186122:	41 5c                	pop    %r12
140186124:	5f                   	pop    %rdi
140186125:	5e                   	pop    %rsi
140186126:	5d                   	pop    %rbp
140186127:	c3                   	ret
140186128:	48 2b c1             	sub    %rcx,%rax
14018612b:	48 c1 f8 04          	sar    $0x4,%rax
14018612f:	48 3b f8             	cmp    %rax,%rdi
140186132:	73 28                	jae    0x14018615c
140186134:	48 03 ff             	add    %rdi,%rdi
140186137:	48 8b 0c f9          	mov    (%rcx,%rdi,8),%rcx
14018613b:	48 8b 01             	mov    (%rcx),%rax
14018613e:	48 8b 80 a8 00 00 00 	mov    0xa8(%rax),%rax
140186145:	ff 15 ed 6a 98 00    	call   *0x986aed(%rip)        # 0x140b0cc38
14018614b:	f3 0f 10 40 08       	movss  0x8(%rax),%xmm0
140186150:	f3 0f 5f 45 d8       	maxss  -0x28(%rbp),%xmm0
140186155:	f3 0f 11 45 d8       	movss  %xmm0,-0x28(%rbp)
14018615a:	eb 95                	jmp    0x1401860f1
14018615c:	ff 15 36 68 98 00    	call   *0x986836(%rip)        # 0x140b0c998
140186162:	cc                   	int3
140186163:	90                   	nop
140186164:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140186169:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14018616e:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140186173:	55                   	push   %rbp
140186174:	41 56                	push   %r14
140186176:	41 57                	push   %r15
140186178:	48 8b ec             	mov    %rsp,%rbp
14018617b:	48 83 ec 50          	sub    $0x50,%rsp
14018617f:	48 8b f9             	mov    %rcx,%rdi
140186182:	33 f6                	xor    %esi,%esi
140186184:	48 8b 51 38          	mov    0x38(%rcx),%rdx
140186188:	4c 8b 41 30          	mov    0x30(%rcx),%r8
14018618c:	48 8b c2             	mov    %rdx,%rax
14018618f:	49 2b c0             	sub    %r8,%rax
140186192:	48 c1 f8 04          	sar    $0x4,%rax
140186196:	48 85 c0             	test   %rax,%rax
140186199:	0f 84 d2 01 00 00    	je     0x140186371
14018619f:	45 33 f6             	xor    %r14d,%r14d
1401861a2:	41 83 cf ff          	or     $0xffffffff,%r15d
1401861a6:	49 2b d0             	sub    %r8,%rdx
1401861a9:	48 c1 fa 04          	sar    $0x4,%rdx
1401861ad:	48 3b f2             	cmp    %rdx,%rsi
1401861b0:	0f 83 e3 01 00 00    	jae    0x140186399
1401861b6:	4b 8d 14 30          	lea    (%r8,%r14,1),%rdx
1401861ba:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
1401861be:	e8 8d 64 e9 ff       	call   0x14001c650
1401861c3:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
1401861c7:	48 85 d2             	test   %rdx,%rdx
1401861ca:	74 1a                	je     0x1401861e6
1401861cc:	48 8d 8a 20 01 00 00 	lea    0x120(%rdx),%rcx
1401861d3:	48 8b 01             	mov    (%rcx),%rax
1401861d6:	8b 92 10 02 00 00    	mov    0x210(%rdx),%edx
1401861dc:	48 8b 40 08          	mov    0x8(%rax),%rax
1401861e0:	ff 15 52 6a 98 00    	call   *0x986a52(%rip)        # 0x140b0cc38
1401861e6:	48 8b 4f 30          	mov    0x30(%rdi),%rcx
1401861ea:	48 8b 47 38          	mov    0x38(%rdi),%rax
1401861ee:	48 2b c1             	sub    %rcx,%rax
1401861f1:	48 c1 f8 04          	sar    $0x4,%rax
1401861f5:	48 3b f0             	cmp    %rax,%rsi
1401861f8:	0f 83 94 01 00 00    	jae    0x140186392
1401861fe:	4a 8d 14 31          	lea    (%rcx,%r14,1),%rdx
140186202:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140186206:	e8 e5 71 eb ff       	call   0x14003d3f0
14018620b:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
14018620f:	48 85 c9             	test   %rcx,%rcx
140186212:	74 19                	je     0x14018622d
140186214:	48 81 c1 88 00 00 00 	add    $0x88,%rcx
14018621b:	48 8b 01             	mov    (%rcx),%rax
14018621e:	ba 01 00 00 00       	mov    $0x1,%edx
140186223:	48 8b 40 08          	mov    0x8(%rax),%rax
140186227:	ff 15 0b 6a 98 00    	call   *0x986a0b(%rip)        # 0x140b0cc38
14018622d:	48 8b 4f 30          	mov    0x30(%rdi),%rcx
140186231:	48 8b 47 38          	mov    0x38(%rdi),%rax
140186235:	48 2b c1             	sub    %rcx,%rax
140186238:	48 c1 f8 04          	sar    $0x4,%rax
14018623c:	48 3b f0             	cmp    %rax,%rsi
14018623f:	0f 83 46 01 00 00    	jae    0x14018638b
140186245:	4a 8d 14 31          	lea    (%rcx,%r14,1),%rdx
140186249:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
14018624d:	e8 0a d9 fa ff       	call   0x140133b5c
140186252:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
140186256:	48 85 c9             	test   %rcx,%rcx
140186259:	74 1a                	je     0x140186275
14018625b:	48 81 c1 88 00 00 00 	add    $0x88,%rcx
140186262:	48 8b 01             	mov    (%rcx),%rax
140186265:	ba 01 00 00 00       	mov    $0x1,%edx
14018626a:	48 8b 40 08          	mov    0x8(%rax),%rax
14018626e:	ff 15 c4 69 98 00    	call   *0x9869c4(%rip)        # 0x140b0cc38
140186274:	90                   	nop
140186275:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
140186279:	48 85 c9             	test   %rcx,%rcx
14018627c:	74 42                	je     0x1401862c0
14018627e:	41 8b c7             	mov    %r15d,%eax
140186281:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
140186286:	41 03 c7             	add    %r15d,%eax
140186289:	75 35                	jne    0x1401862c0
14018628b:	48 8b 5d d8          	mov    -0x28(%rbp),%rbx
14018628f:	48 8b 03             	mov    (%rbx),%rax
140186292:	48 8b cb             	mov    %rbx,%rcx
140186295:	48 8b 00             	mov    (%rax),%rax
140186298:	ff 15 9a 69 98 00    	call   *0x98699a(%rip)        # 0x140b0cc38
14018629e:	41 8b c7             	mov    %r15d,%eax
1401862a1:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
1401862a6:	41 03 c7             	add    %r15d,%eax
1401862a9:	75 15                	jne    0x1401862c0
1401862ab:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
1401862af:	48 8b 01             	mov    (%rcx),%rax
1401862b2:	48 8b 40 08          	mov    0x8(%rax),%rax
1401862b6:	ff 15 7c 69 98 00    	call   *0x98697c(%rip)        # 0x140b0cc38
1401862bc:	90                   	nop
1401862bd:	0f 1f 00             	nopl   (%rax)
1401862c0:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
1401862c4:	48 85 c9             	test   %rcx,%rcx
1401862c7:	74 3f                	je     0x140186308
1401862c9:	41 8b c7             	mov    %r15d,%eax
1401862cc:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
1401862d1:	41 03 c7             	add    %r15d,%eax
1401862d4:	75 32                	jne    0x140186308
1401862d6:	48 8b 5d e8          	mov    -0x18(%rbp),%rbx
1401862da:	48 8b 03             	mov    (%rbx),%rax
1401862dd:	48 8b cb             	mov    %rbx,%rcx
1401862e0:	48 8b 00             	mov    (%rax),%rax
1401862e3:	ff 15 4f 69 98 00    	call   *0x98694f(%rip)        # 0x140b0cc38
1401862e9:	41 8b c7             	mov    %r15d,%eax
1401862ec:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
1401862f1:	41 03 c7             	add    %r15d,%eax
1401862f4:	75 12                	jne    0x140186308
1401862f6:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
1401862fa:	48 8b 01             	mov    (%rcx),%rax
1401862fd:	48 8b 40 08          	mov    0x8(%rax),%rax
140186301:	ff 15 31 69 98 00    	call   *0x986931(%rip)        # 0x140b0cc38
140186307:	90                   	nop
140186308:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
14018630c:	48 85 c9             	test   %rcx,%rcx
14018630f:	74 3e                	je     0x14018634f
140186311:	41 8b c7             	mov    %r15d,%eax
140186314:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
140186319:	41 03 c7             	add    %r15d,%eax
14018631c:	75 31                	jne    0x14018634f
14018631e:	48 8b 5d f8          	mov    -0x8(%rbp),%rbx
140186322:	48 8b 03             	mov    (%rbx),%rax
140186325:	48 8b cb             	mov    %rbx,%rcx
140186328:	48 8b 00             	mov    (%rax),%rax
14018632b:	ff 15 07 69 98 00    	call   *0x986907(%rip)        # 0x140b0cc38
140186331:	41 8b c7             	mov    %r15d,%eax
140186334:	f0 0f c1 43 0c       	lock xadd %eax,0xc(%rbx)
140186339:	41 03 c7             	add    %r15d,%eax
14018633c:	75 11                	jne    0x14018634f
14018633e:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
140186342:	48 8b 01             	mov    (%rcx),%rax
140186345:	48 8b 40 08          	mov    0x8(%rax),%rax
140186349:	ff 15 e9 68 98 00    	call   *0x9868e9(%rip)        # 0x140b0cc38
14018634f:	48 ff c6             	inc    %rsi
140186352:	49 83 c6 10          	add    $0x10,%r14
140186356:	48 8b 57 38          	mov    0x38(%rdi),%rdx
14018635a:	4c 8b 47 30          	mov    0x30(%rdi),%r8
14018635e:	48 8b c2             	mov    %rdx,%rax
140186361:	49 2b c0             	sub    %r8,%rax
140186364:	48 c1 f8 04          	sar    $0x4,%rax
140186368:	48 3b f0             	cmp    %rax,%rsi
14018636b:	0f 82 35 fe ff ff    	jb     0x1401861a6
140186371:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
140186376:	49 8b 5b 20          	mov    0x20(%r11),%rbx
14018637a:	49 8b 73 28          	mov    0x28(%r11),%rsi
14018637e:	49 8b 7b 30          	mov    0x30(%r11),%rdi
140186382:	49 8b e3             	mov    %r11,%rsp
140186385:	41 5f                	pop    %r15
140186387:	41 5e                	pop    %r14
140186389:	5d                   	pop    %rbp
14018638a:	c3                   	ret
14018638b:	ff 15 07 66 98 00    	call   *0x986607(%rip)        # 0x140b0c998
140186391:	90                   	nop
140186392:	ff 15 00 66 98 00    	call   *0x986600(%rip)        # 0x140b0c998
140186398:	90                   	nop
140186399:	ff 15 f9 65 98 00    	call   *0x9865f9(%rip)        # 0x140b0c998
14018639f:	cc                   	int3
1401863a0:	48 8b c4             	mov    %rsp,%rax
1401863a3:	48 89 58 08          	mov    %rbx,0x8(%rax)
1401863a7:	48 89 68 10          	mov    %rbp,0x10(%rax)
1401863ab:	48 89 70 18          	mov    %rsi,0x18(%rax)
1401863af:	48 89 78 20          	mov    %rdi,0x20(%rax)
1401863b3:	41 54                	push   %r12
1401863b5:	41 56                	push   %r14
1401863b7:	41 57                	push   %r15
1401863b9:	48 83 ec 30          	sub    $0x30,%rsp
1401863bd:	49 8b f8             	mov    %r8,%rdi
1401863c0:	8b ea                	mov    %edx,%ebp
1401863c2:	4c 8b f9             	mov    %rcx,%r15
1401863c5:	45 33 f6             	xor    %r14d,%r14d
1401863c8:	83 fa 03             	cmp    $0x3,%edx
1401863cb:	41 0f 95 c6          	setne  %r14b
1401863cf:	41 83 c6 02          	add    $0x2,%r14d
1401863d3:	45 32 e4             	xor    %r12b,%r12b
1401863d6:	33 f6                	xor    %esi,%esi
1401863d8:	48 8b 49 38          	mov    0x38(%rcx),%rcx
1401863dc:	4d 8b 47 30          	mov    0x30(%r15),%r8
1401863e0:	48 8b c1             	mov    %rcx,%rax
1401863e3:	49 2b c0             	sub    %r8,%rax
1401863e6:	48 c1 f8 04          	sar    $0x4,%rax
1401863ea:	48 85 c0             	test   %rax,%rax
1401863ed:	0f 84 c5 01 00 00    	je     0x1401865b8
1401863f3:	49 2b c8             	sub    %r8,%rcx
1401863f6:	83 fd 03             	cmp    $0x3,%ebp
1401863f9:	75 0f                	jne    0x14018640a
1401863fb:	48 8b d1             	mov    %rcx,%rdx
1401863fe:	48 c1 fa 04          	sar    $0x4,%rdx
140186402:	48 2b d6             	sub    %rsi,%rdx
140186405:	48 ff ca             	dec    %rdx
140186408:	eb 03                	jmp    0x14018640d
14018640a:	48 8b d6             	mov    %rsi,%rdx
14018640d:	48 c1 f9 04          	sar    $0x4,%rcx
140186411:	48 3b d1             	cmp    %rcx,%rdx
140186414:	0f 83 bd 01 00 00    	jae    0x1401865d7
14018641a:	48 c1 e2 04          	shl    $0x4,%rdx
14018641e:	49 03 d0             	add    %r8,%rdx
140186421:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140186426:	e8 95 16 00 00       	call   0x140187ac0
14018642b:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
140186430:	48 8b 03             	mov    (%rbx),%rax
140186433:	48 8b cb             	mov    %rbx,%rcx
140186436:	48 8b 00             	mov    (%rax),%rax
140186439:	ff 15 f9 67 98 00    	call   *0x9867f9(%rip)        # 0x140b0cc38
14018643f:	45 84 e4             	test   %r12b,%r12b
140186442:	0f 84 b3 00 00 00    	je     0x1401864fb
140186448:	3b c5                	cmp    %ebp,%eax
14018644a:	75 2c                	jne    0x140186478
14018644c:	45 32 e4             	xor    %r12b,%r12b
14018644f:	48 8b 1f             	mov    (%rdi),%rbx
140186452:	eb 16                	jmp    0x14018646a
140186454:	48 8b 0b             	mov    (%rbx),%rcx
140186457:	48 8b 01             	mov    (%rcx),%rax
14018645a:	8b d5                	mov    %ebp,%edx
14018645c:	48 8b 40 08          	mov    0x8(%rax),%rax
140186460:	ff 15 d2 67 98 00    	call   *0x9867d2(%rip)        # 0x140b0cc38
140186466:	48 83 c3 10          	add    $0x10,%rbx
14018646a:	48 8b 57 08          	mov    0x8(%rdi),%rdx
14018646e:	48 3b da             	cmp    %rdx,%rbx
140186471:	75 e1                	jne    0x140186454
140186473:	e9 af 00 00 00       	jmp    0x140186527
140186478:	48 8b 03             	mov    (%rbx),%rax
14018647b:	48 8b cb             	mov    %rbx,%rcx
14018647e:	48 8b 00             	mov    (%rax),%rax
140186481:	ff 15 b1 67 98 00    	call   *0x9867b1(%rip)        # 0x140b0cc38
140186487:	48 8b 57 08          	mov    0x8(%rdi),%rdx
14018648b:	41 3b c6             	cmp    %r14d,%eax
14018648e:	75 27                	jne    0x1401864b7
140186490:	48 8b 1f             	mov    (%rdi),%rbx
140186493:	eb 1b                	jmp    0x1401864b0
140186495:	48 8b 0b             	mov    (%rbx),%rcx
140186498:	48 8b 01             	mov    (%rcx),%rax
14018649b:	41 8b d6             	mov    %r14d,%edx
14018649e:	48 8b 40 08          	mov    0x8(%rax),%rax
1401864a2:	ff 15 90 67 98 00    	call   *0x986790(%rip)        # 0x140b0cc38
1401864a8:	48 83 c3 10          	add    $0x10,%rbx
1401864ac:	48 8b 57 08          	mov    0x8(%rdi),%rdx
1401864b0:	48 3b da             	cmp    %rdx,%rbx
1401864b3:	75 e0                	jne    0x140186495
1401864b5:	eb 70                	jmp    0x140186527
1401864b7:	48 3b 57 10          	cmp    0x10(%rdi),%rdx
1401864bb:	74 2f                	je     0x1401864ec
1401864bd:	48 83 22 00          	andq   $0x0,(%rdx)
1401864c1:	48 83 62 08 00       	andq   $0x0,0x8(%rdx)
1401864c6:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
1401864cb:	48 85 c9             	test   %rcx,%rcx
1401864ce:	74 09                	je     0x1401864d9
1401864d0:	f0 ff 41 08          	lock incl 0x8(%rcx)
1401864d4:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
1401864d9:	48 89 1a             	mov    %rbx,(%rdx)
1401864dc:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
1401864e1:	48 89 42 08          	mov    %rax,0x8(%rdx)
1401864e5:	48 83 47 08 10       	addq   $0x10,0x8(%rdi)
1401864ea:	eb 64                	jmp    0x140186550
1401864ec:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
1401864f1:	48 8b cf             	mov    %rdi,%rcx
1401864f4:	e8 f7 a1 e9 ff       	call   0x1400206f0
1401864f9:	eb 55                	jmp    0x140186550
1401864fb:	41 3b c6             	cmp    %r14d,%eax
1401864fe:	75 3d                	jne    0x14018653d
140186500:	41 b4 01             	mov    $0x1,%r12b
140186503:	48 8b 1f             	mov    (%rdi),%rbx
140186506:	eb 16                	jmp    0x14018651e
140186508:	48 8b 0b             	mov    (%rbx),%rcx
14018650b:	48 8b 01             	mov    (%rcx),%rax
14018650e:	8b d5                	mov    %ebp,%edx
140186510:	48 8b 40 08          	mov    0x8(%rax),%rax
140186514:	ff 15 1e 67 98 00    	call   *0x98671e(%rip)        # 0x140b0cc38
14018651a:	48 83 c3 10          	add    $0x10,%rbx
14018651e:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140186522:	48 3b da             	cmp    %rdx,%rbx
140186525:	75 e1                	jne    0x140186508
140186527:	48 39 17             	cmp    %rdx,(%rdi)
14018652a:	74 24                	je     0x140186550
14018652c:	48 8b 0f             	mov    (%rdi),%rcx
14018652f:	e8 3c 7d e9 ff       	call   0x14001e270
140186534:	48 8b 07             	mov    (%rdi),%rax
140186537:	48 89 47 08          	mov    %rax,0x8(%rdi)
14018653b:	eb 13                	jmp    0x140186550
14018653d:	48 8b 03             	mov    (%rbx),%rax
140186540:	8b d5                	mov    %ebp,%edx
140186542:	48 8b cb             	mov    %rbx,%rcx
140186545:	48 8b 40 08          	mov    0x8(%rax),%rax
140186549:	ff 15 e9 66 98 00    	call   *0x9866e9(%rip)        # 0x140b0cc38
14018654f:	90                   	nop
140186550:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140186555:	48 85 c9             	test   %rcx,%rcx
140186558:	74 40                	je     0x14018659a
14018655a:	83 c8 ff             	or     $0xffffffff,%eax