140ae50ca:	5f                   	pop    %rdi
140ae50cb:	c3                   	ret
140ae50cc:	ff 15 c6 78 02 00    	call   *0x278c6(%rip)        # 0x140b0c998
140ae50d2:	cc                   	int3
140ae50d3:	90                   	nop
140ae50d4:	48 8b c4             	mov    %rsp,%rax
140ae50d7:	48 89 58 08          	mov    %rbx,0x8(%rax)
140ae50db:	48 89 68 10          	mov    %rbp,0x10(%rax)
140ae50df:	48 89 70 18          	mov    %rsi,0x18(%rax)
140ae50e3:	57                   	push   %rdi
140ae50e4:	41 54                	push   %r12
140ae50e6:	41 55                	push   %r13
140ae50e8:	41 56                	push   %r14
140ae50ea:	41 57                	push   %r15
140ae50ec:	48 83 ec 40          	sub    $0x40,%rsp
140ae50f0:	4c 8b 3a             	mov    (%rdx),%r15
140ae50f3:	4d 8b e9             	mov    %r9,%r13
140ae50f6:	45 8b e0             	mov    %r8d,%r12d
140ae50f9:	4c 8b f1             	mov    %rcx,%r14
140ae50fc:	4c 39 7a 08          	cmp    %r15,0x8(%rdx)
140ae5100:	0f 84 07 02 00 00    	je     0x140ae530d
140ae5106:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
140ae510d:	00
140ae510e:	48 8d 48 b8          	lea    -0x48(%rax),%rcx
140ae5112:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140ae5116:	48 2b 13             	sub    (%rbx),%rdx
140ae5119:	48 c1 fa 02          	sar    $0x2,%rdx
140ae511d:	e8 f6 3d 69 ff       	call   0x140178f18
140ae5122:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140ae5126:	45 33 d2             	xor    %r10d,%r10d
140ae5129:	4c 8b 0b             	mov    (%rbx),%r9
140ae512c:	48 8b c1             	mov    %rcx,%rax
140ae512f:	4c 8b 44 24 20       	mov    0x20(%rsp),%r8
140ae5134:	49 2b c1             	sub    %r9,%rax
140ae5137:	48 c1 f8 02          	sar    $0x2,%rax
140ae513b:	48 85 c0             	test   %rax,%rax
140ae513e:	74 52                	je     0x140ae5192
140ae5140:	33 d2                	xor    %edx,%edx
140ae5142:	49 2b c9             	sub    %r9,%rcx
140ae5145:	48 c1 f9 02          	sar    $0x2,%rcx
140ae5149:	48 3b d1             	cmp    %rcx,%rdx
140ae514c:	0f 83 bb 01 00 00    	jae    0x140ae530d
140ae5152:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140ae5157:	66 41 0f 6e 04 91    	movd   (%r9,%rdx,4),%xmm0
140ae515d:	49 2b c0             	sub    %r8,%rax
140ae5160:	48 c1 f8 02          	sar    $0x2,%rax
140ae5164:	0f 5b c0             	cvtdq2ps %xmm0,%xmm0
140ae5167:	48 3b d0             	cmp    %rax,%rdx
140ae516a:	0f 83 9d 01 00 00    	jae    0x140ae530d
140ae5170:	f3 41 0f 11 04 90    	movss  %xmm0,(%r8,%rdx,4)
140ae5176:	41 ff c2             	inc    %r10d
140ae5179:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140ae517d:	4c 8b 0b             	mov    (%rbx),%r9
140ae5180:	48 8b c1             	mov    %rcx,%rax
140ae5183:	49 2b c1             	sub    %r9,%rax
140ae5186:	41 8b d2             	mov    %r10d,%edx
140ae5189:	48 c1 f8 02          	sar    $0x2,%rax
140ae518d:	48 3b d0             	cmp    %rax,%rdx
140ae5190:	72 b0                	jb     0x140ae5142
140ae5192:	49 8b 0e             	mov    (%r14),%rcx
140ae5195:	48 be ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rsi
140ae519c:	aa aa aa
140ae519f:	49 8b 46 08          	mov    0x8(%r14),%rax
140ae51a3:	48 2b c1             	sub    %rcx,%rax
140ae51a6:	48 c1 f8 03          	sar    $0x3,%rax
140ae51aa:	48 0f af c6          	imul   %rsi,%rax
140ae51ae:	48 85 c0             	test   %rax,%rax
140ae51b1:	0f 84 56 01 00 00    	je     0x140ae530d
140ae51b7:	4c 8b 49 08          	mov    0x8(%rcx),%r9
140ae51bb:	33 ed                	xor    %ebp,%ebp
140ae51bd:	4c 2b 09             	sub    (%rcx),%r9
140ae51c0:	45 33 d2             	xor    %r10d,%r10d
140ae51c3:	49 c1 f9 02          	sar    $0x2,%r9
140ae51c7:	4d 85 c9             	test   %r9,%r9
140ae51ca:	0f 84 e9 00 00 00    	je     0x140ae52b9
140ae51d0:	33 ff                	xor    %edi,%edi
140ae51d2:	45 85 e4             	test   %r12d,%r12d
140ae51d5:	0f 84 d2 00 00 00    	je     0x140ae52ad
140ae51db:	33 d2                	xor    %edx,%edx
140ae51dd:	45 33 db             	xor    %r11d,%r11d
140ae51e0:	49 8b 0e             	mov    (%r14),%rcx
140ae51e3:	49 8b 46 08          	mov    0x8(%r14),%rax
140ae51e7:	48 2b c1             	sub    %rcx,%rax
140ae51ea:	48 c1 f8 03          	sar    $0x3,%rax
140ae51ee:	48 0f af c6          	imul   %rsi,%rax
140ae51f2:	48 3b d0             	cmp    %rax,%rdx
140ae51f5:	0f 83 12 01 00 00    	jae    0x140ae530d
140ae51fb:	49 8b 34 0b          	mov    (%r11,%rcx,1),%rsi
140ae51ff:	4a 8b 44 19 08       	mov    0x8(%rcx,%r11,1),%rax
140ae5204:	48 2b c6             	sub    %rsi,%rax
140ae5207:	48 c1 f8 02          	sar    $0x2,%rax
140ae520b:	4c 3b d0             	cmp    %rax,%r10
140ae520e:	0f 83 f9 00 00 00    	jae    0x140ae530d
140ae5214:	49 8b 4d 00          	mov    0x0(%r13),%rcx
140ae5218:	49 8b 45 08          	mov    0x8(%r13),%rax
140ae521c:	48 2b c1             	sub    %rcx,%rax
140ae521f:	48 c1 f8 02          	sar    $0x2,%rax
140ae5223:	48 3b d0             	cmp    %rax,%rdx
140ae5226:	0f 83 e1 00 00 00    	jae    0x140ae530d
140ae522c:	66 0f 6e 0c 91       	movd   (%rcx,%rdx,4),%xmm1
140ae5231:	48 8b 0b             	mov    (%rbx),%rcx
140ae5234:	48 8b 43 08          	mov    0x8(%rbx),%rax
140ae5238:	48 2b c1             	sub    %rcx,%rax
140ae523b:	0f 5b c9             	cvtdq2ps %xmm1,%xmm1
140ae523e:	48 c1 f8 02          	sar    $0x2,%rax
140ae5242:	f3 42 0f 58 0c 96    	addss  (%rsi,%r10,4),%xmm1
140ae5248:	48 3b d0             	cmp    %rax,%rdx
140ae524b:	0f 83 bc 00 00 00    	jae    0x140ae530d
140ae5251:	66 0f 6e 04 91       	movd   (%rcx,%rdx,4),%xmm0
140ae5256:	0f 5b c0             	cvtdq2ps %xmm0,%xmm0
140ae5259:	0f 2f c8             	comiss %xmm0,%xmm1
140ae525c:	76 1d                	jbe    0x140ae527b
140ae525e:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140ae5263:	49 2b c0             	sub    %r8,%rax
140ae5266:	48 c1 f8 02          	sar    $0x2,%rax
140ae526a:	48 3b d0             	cmp    %rax,%rdx
140ae526d:	0f 83 9a 00 00 00    	jae    0x140ae530d
140ae5273:	f3 41 0f 10 04 90    	movss  (%r8,%rdx,4),%xmm0
140ae5279:	eb 07                	jmp    0x140ae5282
140ae527b:	0f 57 c0             	xorps  %xmm0,%xmm0
140ae527e:	f3 0f 5f c1          	maxss  %xmm1,%xmm0
140ae5282:	f3 0f 2c c8          	cvttss2si %xmm0,%ecx
140ae5286:	ff c7                	inc    %edi
140ae5288:	48 ff c2             	inc    %rdx
140ae528b:	49 83 c3 18          	add    $0x18,%r11
140ae528f:	48 be ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rsi
140ae5296:	aa aa aa
140ae5299:	66 c1 c9 08          	ror    $0x8,%cx
140ae529d:	66 41 89 0c 6f       	mov    %cx,(%r15,%rbp,2)
140ae52a2:	ff c5                	inc    %ebp
140ae52a4:	41 3b fc             	cmp    %r12d,%edi
140ae52a7:	0f 82 33 ff ff ff    	jb     0x140ae51e0
140ae52ad:	49 ff c2             	inc    %r10
140ae52b0:	4d 3b d1             	cmp    %r9,%r10
140ae52b3:	0f 82 17 ff ff ff    	jb     0x140ae51d0
140ae52b9:	4d 85 c0             	test   %r8,%r8
140ae52bc:	74 31                	je     0x140ae52ef
140ae52be:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140ae52c3:	49 8b d0             	mov    %r8,%rdx
140ae52c6:	49 2b c0             	sub    %r8,%rax
140ae52c9:	48 83 e0 fc          	and    $0xfffffffffffffffc,%rax
140ae52cd:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140ae52d3:	72 11                	jb     0x140ae52e6
140ae52d5:	4d 8b 40 f8          	mov    -0x8(%r8),%r8
140ae52d9:	49 2b d0             	sub    %r8,%rdx
140ae52dc:	48 8d 42 f8          	lea    -0x8(%rdx),%rax
140ae52e0:	48 83 f8 1f          	cmp    $0x1f,%rax
140ae52e4:	77 27                	ja     0x140ae530d
140ae52e6:	49 8b c8             	mov    %r8,%rcx
140ae52e9:	ff 15 d1 75 02 00    	call   *0x275d1(%rip)        # 0x140b0c8c0
140ae52ef:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
140ae52f4:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140ae52f8:	49 8b 6b 38          	mov    0x38(%r11),%rbp
140ae52fc:	49 8b 73 40          	mov    0x40(%r11),%rsi
140ae5300:	49 8b e3             	mov    %r11,%rsp
140ae5303:	41 5f                	pop    %r15
140ae5305:	41 5e                	pop    %r14
140ae5307:	41 5d                	pop    %r13
140ae5309:	41 5c                	pop    %r12
140ae530b:	5f                   	pop    %rdi
140ae530c:	c3                   	ret
140ae530d:	ff 15 85 76 02 00    	call   *0x27685(%rip)        # 0x140b0c998
140ae5313:	cc                   	int3
140ae5314:	48 83 ec 28          	sub    $0x28,%rsp
140ae5318:	48 8b 09             	mov    (%rcx),%rcx
140ae531b:	48 85 c9             	test   %rcx,%rcx
140ae531e:	74 05                	je     0x140ae5325
140ae5320:	e8 bb 9d ff ff       	call   0x140adf0e0
140ae5325:	48 83 c4 28          	add    $0x28,%rsp
140ae5329:	c3                   	ret
140ae532a:	90                   	nop
140ae532b:	90                   	nop
140ae532c:	48 83 ec 28          	sub    $0x28,%rsp
140ae5330:	48 8b 09             	mov    (%rcx),%rcx
140ae5333:	48 85 c9             	test   %rcx,%rcx
140ae5336:	74 05                	je     0x140ae533d
140ae5338:	e8 0b 9d ff ff       	call   0x140adf048
140ae533d:	48 83 c4 28          	add    $0x28,%rsp
140ae5341:	c3                   	ret
140ae5342:	90                   	nop
140ae5343:	90                   	nop
140ae5344:	48 83 ec 28          	sub    $0x28,%rsp
140ae5348:	48 8b 09             	mov    (%rcx),%rcx
140ae534b:	48 85 c9             	test   %rcx,%rcx
140ae534e:	74 05                	je     0x140ae5355
140ae5350:	e8 57 9c ff ff       	call   0x140adefac
140ae5355:	48 83 c4 28          	add    $0x28,%rsp
140ae5359:	c3                   	ret
140ae535a:	90                   	nop
140ae535b:	90                   	nop
140ae535c:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140ae5361:	53                   	push   %rbx
140ae5362:	56                   	push   %rsi
140ae5363:	57                   	push   %rdi
140ae5364:	41 54                	push   %r12
140ae5366:	41 55                	push   %r13
140ae5368:	41 56                	push   %r14
140ae536a:	41 57                	push   %r15
140ae536c:	48 83 ec 30          	sub    $0x30,%rsp
140ae5370:	4c 8b fa             	mov    %rdx,%r15
140ae5373:	48 8b f9             	mov    %rcx,%rdi
140ae5376:	49 b8 8e e3 38 8e e3 	movabs $0x38e38e38e38e38e,%r8
140ae537d:	38 8e 03
140ae5380:	49 3b d0             	cmp    %r8,%rdx
140ae5383:	0f 87 c3 01 00 00    	ja     0x140ae554c
140ae5389:	48 8b 71 08          	mov    0x8(%rcx),%rsi
140ae538d:	48 2b 31             	sub    (%rcx),%rsi
140ae5390:	48 c1 fe 03          	sar    $0x3,%rsi
140ae5394:	49 bd 39 8e e3 38 8e 	movabs $0x8e38e38e38e38e39,%r13
140ae539b:	e3 38 8e
140ae539e:	49 0f af f5          	imul   %r13,%rsi
140ae53a2:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140ae53a6:	48 2b 0f             	sub    (%rdi),%rcx
140ae53a9:	48 c1 f9 03          	sar    $0x3,%rcx
140ae53ad:	49 0f af cd          	imul   %r13,%rcx
140ae53b1:	48 8b d1             	mov    %rcx,%rdx
140ae53b4:	48 d1 ea             	shr    $1,%rdx
140ae53b7:	49 8b c0             	mov    %r8,%rax
140ae53ba:	48 2b c2             	sub    %rdx,%rax
140ae53bd:	48 3b c8             	cmp    %rax,%rcx
140ae53c0:	76 05                	jbe    0x140ae53c7
140ae53c2:	49 8b c0             	mov    %r8,%rax
140ae53c5:	eb 0b                	jmp    0x140ae53d2
140ae53c7:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140ae53cb:	49 3b c7             	cmp    %r15,%rax
140ae53ce:	49 0f 42 c7          	cmovb  %r15,%rax
140ae53d2:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
140ae53d9:	00
140ae53da:	49 3b c0             	cmp    %r8,%rax
140ae53dd:	0f 87 63 01 00 00    	ja     0x140ae5546
140ae53e3:	48 8d 04 c0          	lea    (%rax,%rax,8),%rax
140ae53e7:	4c 8d 34 c5 00 00 00 	lea    0x0(,%rax,8),%r14
140ae53ee:	00
140ae53ef:	45 33 e4             	xor    %r12d,%r12d
140ae53f2:	4d 85 f6             	test   %r14,%r14
140ae53f5:	0f 85 82 00 00 00    	jne    0x140ae547d
140ae53fb:	41 8b dc             	mov    %r12d,%ebx
140ae53fe:	48 89 9c 24 80 00 00 	mov    %rbx,0x80(%rsp)
140ae5405:	00
140ae5406:	48 8d 04 f6          	lea    (%rsi,%rsi,8),%rax
140ae540a:	48 8d 0c c3          	lea    (%rbx,%rax,8),%rcx
140ae540e:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140ae5413:	48 89 4c 24 78       	mov    %rcx,0x78(%rsp)
140ae5418:	49 8b d7             	mov    %r15,%rdx
140ae541b:	48 2b d6             	sub    %rsi,%rdx
140ae541e:	74 39                	je     0x140ae5459
140ae5420:	48 8d 41 40          	lea    0x40(%rcx),%rax
140ae5424:	4c 89 60 f0          	mov    %r12,-0x10(%rax)
140ae5428:	4c 89 60 f8          	mov    %r12,-0x8(%rax)
140ae542c:	4c 89 20             	mov    %r12,(%rax)
140ae542f:	44 88 60 e8          	mov    %r12b,-0x18(%rax)
140ae5433:	4c 89 21             	mov    %r12,(%rcx)
140ae5436:	4c 89 60 c8          	mov    %r12,-0x38(%rax)
140ae543a:	4c 89 60 d8          	mov    %r12,-0x28(%rax)
140ae543e:	4c 89 60 d0          	mov    %r12,-0x30(%rax)
140ae5442:	4c 89 60 e0          	mov    %r12,-0x20(%rax)
140ae5446:	48 83 c1 48          	add    $0x48,%rcx
140ae544a:	48 89 4c 24 78       	mov    %rcx,0x78(%rsp)
140ae544f:	48 8d 40 48          	lea    0x48(%rax),%rax
140ae5453:	48 83 ea 01          	sub    $0x1,%rdx
140ae5457:	75 cb                	jne    0x140ae5424
140ae5459:	4c 8b cf             	mov    %rdi,%r9
140ae545c:	4c 8b c3             	mov    %rbx,%r8
140ae545f:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140ae5463:	48 8b 0f             	mov    (%rdi),%rcx
140ae5466:	e8 e1 08 00 00       	call   0x140ae5d4c
140ae546b:	48 8b 37             	mov    (%rdi),%rsi
140ae546e:	48 85 f6             	test   %rsi,%rsi
140ae5471:	0f 84 a1 00 00 00    	je     0x140ae5518
140ae5477:	4c 8b 67 08          	mov    0x8(%rdi),%r12
140ae547b:	eb 5a                	jmp    0x140ae54d7
140ae547d:	49 81 fe 00 10 00 00 	cmp    $0x1000,%r14
140ae5484:	72 29                	jb     0x140ae54af
140ae5486:	49 8d 4e 27          	lea    0x27(%r14),%rcx
140ae548a:	49 3b ce             	cmp    %r14,%rcx
140ae548d:	0f 86 b3 00 00 00    	jbe    0x140ae5546
140ae5493:	ff 15 2f 74 02 00    	call   *0x2742f(%rip)        # 0x140b0c8c8
140ae5499:	48 85 c0             	test   %rax,%rax
140ae549c:	74 26                	je     0x140ae54c4
140ae549e:	48 8d 58 27          	lea    0x27(%rax),%rbx
140ae54a2:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
140ae54a6:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140ae54aa:	e9 4f ff ff ff       	jmp    0x140ae53fe
140ae54af:	49 8b ce             	mov    %r14,%rcx
140ae54b2:	ff 15 10 74 02 00    	call   *0x27410(%rip)        # 0x140b0c8c8
140ae54b8:	48 8b d8             	mov    %rax,%rbx
140ae54bb:	48 85 c0             	test   %rax,%rax
140ae54be:	0f 85 3a ff ff ff    	jne    0x140ae53fe
140ae54c4:	ff 15 ce 6f 02 00    	call   *0x26fce(%rip)        # 0x140b0c498
140ae54ca:	cc                   	int3
140ae54cb:	48 8b ce             	mov    %rsi,%rcx
140ae54ce:	e8 e9 b1 ff ff       	call   0x140ae06bc
140ae54d3:	48 83 c6 48          	add    $0x48,%rsi
140ae54d7:	49 3b f4             	cmp    %r12,%rsi
140ae54da:	75 ef                	jne    0x140ae54cb
140ae54dc:	48 8b 0f             	mov    (%rdi),%rcx
140ae54df:	48 8b 47 10          	mov    0x10(%rdi),%rax
140ae54e3:	48 2b c1             	sub    %rcx,%rax
140ae54e6:	48 c1 f8 03          	sar    $0x3,%rax
140ae54ea:	49 0f af c5          	imul   %r13,%rax
140ae54ee:	48 8d 04 c0          	lea    (%rax,%rax,8),%rax
140ae54f2:	48 c1 e0 03          	shl    $0x3,%rax
140ae54f6:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140ae54fc:	72 14                	jb     0x140ae5512
140ae54fe:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
140ae5502:	48 2b ca             	sub    %rdx,%rcx
140ae5505:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140ae5509:	48 83 f8 1f          	cmp    $0x1f,%rax
140ae550d:	77 30                	ja     0x140ae553f
140ae550f:	48 8b ca             	mov    %rdx,%rcx
140ae5512:	ff 15 a8 73 02 00    	call   *0x273a8(%rip)        # 0x140b0c8c0
140ae5518:	48 89 1f             	mov    %rbx,(%rdi)
140ae551b:	4b 8d 04 ff          	lea    (%r15,%r15,8),%rax
140ae551f:	48 8d 0c c3          	lea    (%rbx,%rax,8),%rcx
140ae5523:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
140ae5527:	4a 8d 04 33          	lea    (%rbx,%r14,1),%rax
140ae552b:	48 89 47 10          	mov    %rax,0x10(%rdi)
140ae552f:	48 83 c4 30          	add    $0x30,%rsp
140ae5533:	41 5f                	pop    %r15
140ae5535:	41 5e                	pop    %r14
140ae5537:	41 5d                	pop    %r13
140ae5539:	41 5c                	pop    %r12
140ae553b:	5f                   	pop    %rdi
140ae553c:	5e                   	pop    %rsi
140ae553d:	5b                   	pop    %rbx
140ae553e:	c3                   	ret
140ae553f:	ff 15 53 74 02 00    	call   *0x27453(%rip)        # 0x140b0c998
140ae5545:	cc                   	int3
140ae5546:	e8 85 e7 51 ff       	call   0x140003cd0
140ae554b:	cc                   	int3
140ae554c:	e8 17 68 53 ff       	call   0x14001bd68
140ae5551:	cc                   	int3
140ae5552:	90                   	nop
140ae5553:	90                   	nop
140ae5554:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140ae5559:	53                   	push   %rbx
140ae555a:	56                   	push   %rsi
140ae555b:	57                   	push   %rdi
140ae555c:	41 54                	push   %r12
140ae555e:	41 55                	push   %r13
140ae5560:	41 56                	push   %r14
140ae5562:	41 57                	push   %r15
140ae5564:	48 83 ec 30          	sub    $0x30,%rsp
140ae5568:	4c 8b fa             	mov    %rdx,%r15
140ae556b:	48 8b f9             	mov    %rcx,%rdi
140ae556e:	49 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r8
140ae5575:	aa aa 0a
140ae5578:	49 3b d0             	cmp    %r8,%rdx
140ae557b:	0f 87 bc 01 00 00    	ja     0x140ae573d
140ae5581:	48 8b 71 08          	mov    0x8(%rcx),%rsi