140309135:	33 c9                	xor    %ecx,%ecx
140309137:	33 d2                	xor    %edx,%edx
140309139:	3b 4f 50             	cmp    0x50(%rdi),%ecx
14030913c:	0f 8f 98 00 00 00    	jg     0x1403091da
140309142:	0f 28 d4             	movaps %xmm4,%xmm2
140309145:	f3 0f 5c d3          	subss  %xmm3,%xmm2
140309149:	0f 57 c0             	xorps  %xmm0,%xmm0
14030914c:	f3 0f 2a c1          	cvtsi2ss %ecx,%xmm0
140309150:	f3 0f 59 d0          	mulss  %xmm0,%xmm2
140309154:	0f 57 c9             	xorps  %xmm1,%xmm1
140309157:	f3 41 0f 2a cd       	cvtsi2ss %r13d,%xmm1
14030915c:	f3 0f 5e d1          	divss  %xmm1,%xmm2
140309160:	f3 0f 58 d3          	addss  %xmm3,%xmm2
140309164:	f3 0f 5c d5          	subss  %xmm5,%xmm2
140309168:	0f 28 c6             	movaps %xmm6,%xmm0
14030916b:	f3 0f 5c c5          	subss  %xmm5,%xmm0
14030916f:	f3 0f 5e d0          	divss  %xmm0,%xmm2
140309173:	0f 57 c9             	xorps  %xmm1,%xmm1
140309176:	f3 0f 5f ca          	maxss  %xmm2,%xmm1
14030917a:	f3 0f 10 15 b2 7f 8a 	movss  0x8a7fb2(%rip),%xmm2        # 0x140bb1134
140309181:	00
140309182:	f3 0f 5d d1          	minss  %xmm1,%xmm2
140309186:	0f 57 c0             	xorps  %xmm0,%xmm0
140309189:	f3 0f 2a 47 54       	cvtsi2ssl 0x54(%rdi),%xmm0
14030918e:	f3 0f 59 c2          	mulss  %xmm2,%xmm0
140309192:	f3 44 0f 2c d0       	cvttss2si %xmm0,%r10d
140309197:	4d 8b 0c 24          	mov    (%r12),%r9
14030919b:	49 8b 44 24 08       	mov    0x8(%r12),%rax
1403091a0:	49 2b c1             	sub    %r9,%rax
1403091a3:	48 c1 f8 03          	sar    $0x3,%rax
1403091a7:	49 0f af c6          	imul   %r14,%rax
1403091ab:	48 3b d8             	cmp    %rax,%rbx
1403091ae:	73 5c                	jae    0x14030920c
1403091b0:	48 8d 04 5b          	lea    (%rbx,%rbx,2),%rax
1403091b4:	4d 8b 04 c1          	mov    (%r9,%rax,8),%r8
1403091b8:	49 8b 44 c1 08       	mov    0x8(%r9,%rax,8),%rax
1403091bd:	49 2b c0             	sub    %r8,%rax
1403091c0:	48 3b d0             	cmp    %rax,%rdx
1403091c3:	73 47                	jae    0x14030920c
1403091c5:	45 88 14 10          	mov    %r10b,(%r8,%rdx,1)
1403091c9:	ff c1                	inc    %ecx
1403091cb:	48 ff c2             	inc    %rdx
1403091ce:	81 f9 ff 00 00 00    	cmp    $0xff,%ecx
1403091d4:	0f 8e 5f ff ff ff    	jle    0x140309139
1403091da:	ff c5                	inc    %ebp
1403091dc:	8b dd                	mov    %ebp,%ebx
1403091de:	48 3b de             	cmp    %rsi,%rbx
1403091e1:	0f 82 d3 fe ff ff    	jb     0x1403090ba
1403091e7:	48 8b c7             	mov    %rdi,%rax
1403091ea:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
1403091ef:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
1403091f4:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
1403091f9:	0f 28 74 24 20       	movaps 0x20(%rsp),%xmm6
1403091fe:	48 83 c4 30          	add    $0x30,%rsp
140309202:	41 5f                	pop    %r15
140309204:	41 5e                	pop    %r14
140309206:	41 5d                	pop    %r13
140309208:	41 5c                	pop    %r12
14030920a:	5f                   	pop    %rdi
14030920b:	c3                   	ret
14030920c:	ff 15 86 37 80 00    	call   *0x803786(%rip)        # 0x140b0c998
140309212:	90                   	nop
140309213:	90                   	nop
140309214:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140309219:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14030921e:	57                   	push   %rdi
14030921f:	48 83 ec 20          	sub    $0x20,%rsp
140309223:	48 8b 71 08          	mov    0x8(%rcx),%rsi
140309227:	48 8b f9             	mov    %rcx,%rdi
14030922a:	4c 8b 01             	mov    (%rcx),%r8
14030922d:	48 8b ce             	mov    %rsi,%rcx
140309230:	49 2b c8             	sub    %r8,%rcx
140309233:	48 c1 f9 03          	sar    $0x3,%rcx
140309237:	48 3b d1             	cmp    %rcx,%rdx
14030923a:	73 0a                	jae    0x140309246
14030923c:	49 8d 04 d0          	lea    (%r8,%rdx,8),%rax
140309240:	48 89 47 08          	mov    %rax,0x8(%rdi)
140309244:	eb 3d                	jmp    0x140309283
140309246:	76 3b                	jbe    0x140309283
140309248:	48 8b 47 10          	mov    0x10(%rdi),%rax
14030924c:	49 2b c0             	sub    %r8,%rax
14030924f:	48 c1 f8 03          	sar    $0x3,%rax
140309253:	48 3b d0             	cmp    %rax,%rdx
140309256:	76 0a                	jbe    0x140309262
140309258:	48 8b cf             	mov    %rdi,%rcx
14030925b:	e8 a8 18 00 00       	call   0x14030ab08
140309260:	eb 21                	jmp    0x140309283
140309262:	48 2b d1             	sub    %rcx,%rdx
140309265:	74 18                	je     0x14030927f
140309267:	48 8d 1c d5 00 00 00 	lea    0x0(,%rdx,8),%rbx
14030926e:	00
14030926f:	48 8b ce             	mov    %rsi,%rcx
140309272:	4c 8b c3             	mov    %rbx,%r8
140309275:	33 d2                	xor    %edx,%edx
140309277:	e8 f0 71 7e 00       	call   0x140af046c
14030927c:	48 03 f3             	add    %rbx,%rsi
14030927f:	48 89 77 08          	mov    %rsi,0x8(%rdi)
140309283:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140309288:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14030928d:	48 83 c4 20          	add    $0x20,%rsp
140309291:	5f                   	pop    %rdi
140309292:	c3                   	ret
140309293:	90                   	nop
140309294:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140309299:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14030929e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1403092a3:	57                   	push   %rdi
1403092a4:	41 56                	push   %r14
1403092a6:	41 57                	push   %r15
1403092a8:	48 83 ec 20          	sub    $0x20,%rsp
1403092ac:	48 8b f1             	mov    %rcx,%rsi
1403092af:	48 3b ca             	cmp    %rdx,%rcx
1403092b2:	0f 84 93 00 00 00    	je     0x14030934b
1403092b8:	4c 8b 3a             	mov    (%rdx),%r15
1403092bb:	48 8b 6a 08          	mov    0x8(%rdx),%rbp
1403092bf:	48 8b 39             	mov    (%rcx),%rdi
1403092c2:	49 2b ef             	sub    %r15,%rbp
1403092c5:	48 8b 41 10          	mov    0x10(%rcx),%rax
1403092c9:	48 2b c7             	sub    %rdi,%rax
1403092cc:	48 c1 fd 03          	sar    $0x3,%rbp
1403092d0:	48 c1 f8 03          	sar    $0x3,%rax
1403092d4:	48 3b e8             	cmp    %rax,%rbp
1403092d7:	76 10                	jbe    0x1403092e9
1403092d9:	48 8b d5             	mov    %rbp,%rdx
1403092dc:	e8 a7 15 00 00       	call   0x14030a888
1403092e1:	48 8b 3e             	mov    (%rsi),%rdi
1403092e4:	49 8b d7             	mov    %r15,%rdx
1403092e7:	eb 31                	jmp    0x14030931a
1403092e9:	4c 8b 71 08          	mov    0x8(%rcx),%r14
1403092ed:	49 8b d7             	mov    %r15,%rdx
1403092f0:	4c 2b f7             	sub    %rdi,%r14
1403092f3:	48 8b cf             	mov    %rdi,%rcx
1403092f6:	49 c1 fe 03          	sar    $0x3,%r14
1403092fa:	49 3b ee             	cmp    %r14,%rbp
1403092fd:	76 34                	jbe    0x140309333
1403092ff:	4a 8d 1c f5 00 00 00 	lea    0x0(,%r14,8),%rbx
140309306:	00
140309307:	4c 8b c3             	mov    %rbx,%r8
14030930a:	e8 57 71 7e 00       	call   0x140af0466
14030930f:	48 8b 7e 08          	mov    0x8(%rsi),%rdi
140309313:	4a 8d 14 3b          	lea    (%rbx,%r15,1),%rdx
140309317:	49 2b ee             	sub    %r14,%rbp
14030931a:	48 8d 1c ed 00 00 00 	lea    0x0(,%rbp,8),%rbx
140309321:	00
140309322:	48 8b cf             	mov    %rdi,%rcx
140309325:	4c 8b c3             	mov    %rbx,%r8
140309328:	e8 39 71 7e 00       	call   0x140af0466
14030932d:	48 8d 04 3b          	lea    (%rbx,%rdi,1),%rax
140309331:	eb 14                	jmp    0x140309347
140309333:	48 8d 1c ed 00 00 00 	lea    0x0(,%rbp,8),%rbx
14030933a:	00
14030933b:	4c 8b c3             	mov    %rbx,%r8
14030933e:	e8 23 71 7e 00       	call   0x140af0466
140309343:	48 8d 04 3b          	lea    (%rbx,%rdi,1),%rax
140309347:	48 89 46 08          	mov    %rax,0x8(%rsi)
14030934b:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140309350:	48 8b c6             	mov    %rsi,%rax
140309353:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140309358:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14030935d:	48 83 c4 20          	add    $0x20,%rsp
140309361:	41 5f                	pop    %r15
140309363:	41 5e                	pop    %r14
140309365:	5f                   	pop    %rdi
140309366:	c3                   	ret
140309367:	90                   	nop
140309368:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14030936d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140309372:	57                   	push   %rdi
140309373:	48 83 ec 50          	sub    $0x50,%rsp
140309377:	48 8b f2             	mov    %rdx,%rsi
14030937a:	48 8b d9             	mov    %rcx,%rbx
14030937d:	48 8b 39             	mov    (%rcx),%rdi
140309380:	48 8b 47 08          	mov    0x8(%rdi),%rax
140309384:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140309389:	83 64 24 38 00       	andl   $0x0,0x38(%rsp)
14030938e:	4c 8b c7             	mov    %rdi,%r8
140309391:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140309395:	75 2d                	jne    0x1403093c4
140309397:	48 8b 0a             	mov    (%rdx),%rcx
14030939a:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14030939f:	48 39 48 20          	cmp    %rcx,0x20(%rax)
1403093a3:	73 0b                	jae    0x1403093b0
1403093a5:	83 64 24 38 00       	andl   $0x0,0x38(%rsp)
1403093aa:	48 8b 40 10          	mov    0x10(%rax),%rax
1403093ae:	eb 0e                	jmp    0x1403093be
1403093b0:	c7 44 24 38 01 00 00 	movl   $0x1,0x38(%rsp)
1403093b7:	00
1403093b8:	4c 8b c0             	mov    %rax,%r8
1403093bb:	48 8b 00             	mov    (%rax),%rax
1403093be:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1403093c2:	74 d6                	je     0x14030939a
1403093c4:	41 80 78 19 00       	cmpb   $0x0,0x19(%r8)
1403093c9:	75 09                	jne    0x1403093d4
1403093cb:	49 8b 40 20          	mov    0x20(%r8),%rax
1403093cf:	48 39 02             	cmp    %rax,(%rdx)
1403093d2:	73 72                	jae    0x140309446
1403093d4:	48 b8 92 24 49 92 24 	movabs $0x492492492492492,%rax
1403093db:	49 92 04
1403093de:	48 39 43 08          	cmp    %rax,0x8(%rbx)
1403093e2:	74 76                	je     0x14030945a
1403093e4:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1403093e9:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
1403093ef:	b9 38 00 00 00       	mov    $0x38,%ecx
1403093f4:	ff 15 ce 34 80 00    	call   *0x8034ce(%rip)        # 0x140b0c8c8
1403093fa:	4c 8b c0             	mov    %rax,%r8
1403093fd:	48 85 c0             	test   %rax,%rax
140309400:	75 07                	jne    0x140309409
140309402:	ff 15 90 30 80 00    	call   *0x803090(%rip)        # 0x140b0c498
140309408:	90                   	nop
140309409:	48 8b 06             	mov    (%rsi),%rax
14030940c:	49 89 40 20          	mov    %rax,0x20(%r8)
140309410:	49 83 60 28 00       	andq   $0x0,0x28(%r8)
140309415:	49 83 60 30 00       	andq   $0x0,0x30(%r8)
14030941a:	49 89 38             	mov    %rdi,(%r8)
14030941d:	49 89 78 08          	mov    %rdi,0x8(%r8)
140309421:	49 89 78 10          	mov    %rdi,0x10(%r8)
140309425:	66 41 83 60 18 00    	andw   $0x0,0x18(%r8)
14030942b:	0f 10 44 24 30       	movups 0x30(%rsp),%xmm0
140309430:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
140309436:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14030943b:	48 8b cb             	mov    %rbx,%rcx
14030943e:	e8 9d da cf ff       	call   0x140006ee0
140309443:	4c 8b c0             	mov    %rax,%r8
140309446:	49 8d 40 28          	lea    0x28(%r8),%rax
14030944a:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14030944f:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140309454:	48 83 c4 50          	add    $0x50,%rsp
140309458:	5f                   	pop    %rdi
140309459:	c3                   	ret
14030945a:	e8 75 a9 cf ff       	call   0x140003dd4
14030945f:	cc                   	int3
140309460:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140309465:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14030946a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14030946f:	57                   	push   %rdi
140309470:	41 56                	push   %r14
140309472:	41 57                	push   %r15
140309474:	48 83 ec 20          	sub    $0x20,%rsp
140309478:	48 8b 39             	mov    (%rcx),%rdi
14030947b:	45 33 ff             	xor    %r15d,%r15d
14030947e:	4c 8b f1             	mov    %rcx,%r14
140309481:	48 8b df             	mov    %rdi,%rbx
140309484:	48 8b f7             	mov    %rdi,%rsi
140309487:	4c 8b 47 08          	mov    0x8(%rdi),%r8
14030948b:	49 8b c0             	mov    %r8,%rax
14030948e:	45 38 78 19          	cmp    %r15b,0x19(%r8)
140309492:	75 29                	jne    0x1403094bd
140309494:	48 8b 0a             	mov    (%rdx),%rcx
140309497:	48 39 48 20          	cmp    %rcx,0x20(%rax)
14030949b:	73 06                	jae    0x1403094a3
14030949d:	48 8b 40 10          	mov    0x10(%rax),%rax
1403094a1:	eb 14                	jmp    0x1403094b7
1403094a3:	44 38 7e 19          	cmp    %r15b,0x19(%rsi)
1403094a7:	74 08                	je     0x1403094b1
1403094a9:	48 3b 48 20          	cmp    0x20(%rax),%rcx
1403094ad:	48 0f 42 f0          	cmovb  %rax,%rsi
1403094b1:	48 8b d8             	mov    %rax,%rbx
1403094b4:	48 8b 00             	mov    (%rax),%rax
1403094b7:	44 38 78 19          	cmp    %r15b,0x19(%rax)
1403094bb:	74 da                	je     0x140309497
1403094bd:	49 8b c0             	mov    %r8,%rax
1403094c0:	44 38 7e 19          	cmp    %r15b,0x19(%rsi)
1403094c4:	75 03                	jne    0x1403094c9
1403094c6:	48 8b 06             	mov    (%rsi),%rax
1403094c9:	44 38 78 19          	cmp    %r15b,0x19(%rax)
1403094cd:	75 1b                	jne    0x1403094ea
1403094cf:	48 8b 0a             	mov    (%rdx),%rcx
1403094d2:	48 3b 48 20          	cmp    0x20(%rax),%rcx
1403094d6:	73 08                	jae    0x1403094e0
1403094d8:	48 8b f0             	mov    %rax,%rsi
1403094db:	48 8b 00             	mov    (%rax),%rax
1403094de:	eb 04                	jmp    0x1403094e4
1403094e0:	48 8b 40 10          	mov    0x10(%rax),%rax
1403094e4:	44 38 78 19          	cmp    %r15b,0x19(%rax)
1403094e8:	74 e8                	je     0x1403094d2
1403094ea:	49 8b ef             	mov    %r15,%rbp
1403094ed:	48 3b de             	cmp    %rsi,%rbx
1403094f0:	74 4e                	je     0x140309540
1403094f2:	48 8b c3             	mov    %rbx,%rax
1403094f5:	48 8b 48 10          	mov    0x10(%rax),%rcx
1403094f9:	48 ff c5             	inc    %rbp
1403094fc:	44 38 79 19          	cmp    %r15b,0x19(%rcx)
140309500:	74 1e                	je     0x140309520
140309502:	48 8b 48 08          	mov    0x8(%rax),%rcx
140309506:	eb 0d                	jmp    0x140309515
140309508:	48 3b 41 10          	cmp    0x10(%rcx),%rax
14030950c:	75 0d                	jne    0x14030951b
14030950e:	48 8b c1             	mov    %rcx,%rax
140309511:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140309515:	44 38 79 19          	cmp    %r15b,0x19(%rcx)
140309519:	74 ed                	je     0x140309508
14030951b:	48 8b c1             	mov    %rcx,%rax
14030951e:	eb 1b                	jmp    0x14030953b
140309520:	48 8b 11             	mov    (%rcx),%rdx
140309523:	48 8b c1             	mov    %rcx,%rax
140309526:	44 38 7a 19          	cmp    %r15b,0x19(%rdx)
14030952a:	75 0f                	jne    0x14030953b
14030952c:	48 8b 0a             	mov    (%rdx),%rcx
14030952f:	48 8b c2             	mov    %rdx,%rax
140309532:	48 8b d1             	mov    %rcx,%rdx
140309535:	44 38 79 19          	cmp    %r15b,0x19(%rcx)
140309539:	74 f1                	je     0x14030952c
14030953b:	48 3b c6             	cmp    %rsi,%rax
14030953e:	75 b5                	jne    0x1403094f5
140309540:	48 3b 1f             	cmp    (%rdi),%rbx
140309543:	0f 85 b7 00 00 00    	jne    0x140309600
140309549:	44 38 7e 19          	cmp    %r15b,0x19(%rsi)
14030954d:	0f 84 ad 00 00 00    	je     0x140309600
140309553:	49 8b d6             	mov    %r14,%rdx
140309556:	49 8b ce             	mov    %r14,%rcx
140309559:	e8 62 12 00 00       	call   0x14030a7c0
14030955e:	48 89 7f 08          	mov    %rdi,0x8(%rdi)
140309562:	48 89 3f             	mov    %rdi,(%rdi)
140309565:	48 89 7f 10          	mov    %rdi,0x10(%rdi)
140309569:	4d 89 7e 08          	mov    %r15,0x8(%r14)
14030956d:	e9 97 00 00 00       	jmp    0x140309609
140309572:	48 8b 43 10          	mov    0x10(%rbx),%rax
140309576:	48 8b d3             	mov    %rbx,%rdx
140309579:	44 38 78 19          	cmp    %r15b,0x19(%rax)
14030957d:	74 1e                	je     0x14030959d
14030957f:	48 8b 43 08          	mov    0x8(%rbx),%rax
140309583:	eb 0d                	jmp    0x140309592
140309585:	48 3b 58 10          	cmp    0x10(%rax),%rbx
140309589:	75 0d                	jne    0x140309598
14030958b:	48 8b d8             	mov    %rax,%rbx
14030958e:	48 8b 40 08          	mov    0x8(%rax),%rax
140309592:	44 38 78 19          	cmp    %r15b,0x19(%rax)
140309596:	74 ed                	je     0x140309585
140309598:	48 8b d8             	mov    %rax,%rbx
14030959b:	eb 1b                	jmp    0x1403095b8
14030959d:	48 8b 08             	mov    (%rax),%rcx
1403095a0:	48 8b d8             	mov    %rax,%rbx
1403095a3:	44 38 79 19          	cmp    %r15b,0x19(%rcx)
1403095a7:	75 0f                	jne    0x1403095b8
1403095a9:	48 8b 01             	mov    (%rcx),%rax
1403095ac:	48 8b d9             	mov    %rcx,%rbx
1403095af:	48 8b c8             	mov    %rax,%rcx
1403095b2:	44 38 78 19          	cmp    %r15b,0x19(%rax)
1403095b6:	74 f1                	je     0x1403095a9
1403095b8:	49 8b ce             	mov    %r14,%rcx
1403095bb:	e8 88 d5 d2 ff       	call   0x140036b48
1403095c0:	48 8b f8             	mov    %rax,%rdi
1403095c3:	48 8b 48 30          	mov    0x30(%rax),%rcx
1403095c7:	48 85 c9             	test   %rcx,%rcx
1403095ca:	74 11                	je     0x1403095dd
1403095cc:	4c 89 78 30          	mov    %r15,0x30(%rax)
1403095d0:	48 8b 01             	mov    (%rcx),%rax
1403095d3:	48 8b 40 10          	mov    0x10(%rax),%rax
1403095d7:	ff 15 5b 36 80 00    	call   *0x80365b(%rip)        # 0x140b0cc38
1403095dd:	48 8b 4f 28          	mov    0x28(%rdi),%rcx