140681236:	89 75 b3             	mov    %esi,-0x4d(%rbp)
140681239:	33 db                	xor    %ebx,%ebx
14068123b:	48 89 5d e7          	mov    %rbx,-0x19(%rbp)
14068123f:	45 32 e4             	xor    %r12b,%r12b
140681242:	45 33 ed             	xor    %r13d,%r13d
140681245:	33 ff                	xor    %edi,%edi
140681247:	4c 8b 55 bf          	mov    -0x41(%rbp),%r10
14068124b:	49 83 c2 20          	add    $0x20,%r10
14068124f:	4c 89 55 f7          	mov    %r10,-0x9(%rbp)
140681253:	49 8b 52 08          	mov    0x8(%r10),%rdx
140681257:	49 8b 0a             	mov    (%r10),%rcx
14068125a:	48 8b c2             	mov    %rdx,%rax
14068125d:	48 2b c1             	sub    %rcx,%rax
140681260:	48 c1 f8 05          	sar    $0x5,%rax
140681264:	48 85 c0             	test   %rax,%rax
140681267:	0f 84 7d 01 00 00    	je     0x1406813ea
14068126d:	33 d2                	xor    %edx,%edx
14068126f:	90                   	nop
140681270:	48 c1 e2 05          	shl    $0x5,%rdx
140681274:	48 03 d1             	add    %rcx,%rdx
140681277:	8b 45 cf             	mov    -0x31(%rbp),%eax
14068127a:	39 42 08             	cmp    %eax,0x8(%rdx)
14068127d:	0f 8c 22 01 00 00    	jl     0x1406813a5
140681283:	8b 42 04             	mov    0x4(%rdx),%eax
140681286:	83 f8 ff             	cmp    $0xffffffff,%eax
140681289:	75 3e                	jne    0x1406812c9
14068128b:	8b 45 af             	mov    -0x51(%rbp),%eax
14068128e:	89 42 04             	mov    %eax,0x4(%rdx)
140681291:	44 39 1a             	cmp    %r11d,(%rdx)
140681294:	7f 77                	jg     0x14068130d
140681296:	45 84 c0             	test   %r8b,%r8b
140681299:	74 72                	je     0x14068130d
14068129b:	48 8b 45 d7          	mov    -0x29(%rbp),%rax
14068129f:	48 8b 08             	mov    (%rax),%rcx
1406812a2:	48 8b 41 08          	mov    0x8(%rcx),%rax
1406812a6:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406812aa:	75 4e                	jne    0x1406812fa
1406812ac:	0f 1f 40 00          	nopl   0x0(%rax)
1406812b0:	39 78 1c             	cmp    %edi,0x1c(%rax)
1406812b3:	7d 06                	jge    0x1406812bb
1406812b5:	48 8b 40 10          	mov    0x10(%rax),%rax
1406812b9:	eb 06                	jmp    0x1406812c1
1406812bb:	48 8b c8             	mov    %rax,%rcx
1406812be:	48 8b 00             	mov    (%rax),%rax
1406812c1:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406812c5:	74 e9                	je     0x1406812b0
1406812c7:	eb 31                	jmp    0x1406812fa
1406812c9:	41 3b c3             	cmp    %r11d,%eax
1406812cc:	0f 8c d3 00 00 00    	jl     0x1406813a5
1406812d2:	48 8b 45 d7          	mov    -0x29(%rbp),%rax
1406812d6:	48 8b 08             	mov    (%rax),%rcx
1406812d9:	48 8b 41 08          	mov    0x8(%rcx),%rax
1406812dd:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406812e1:	75 17                	jne    0x1406812fa
1406812e3:	39 78 1c             	cmp    %edi,0x1c(%rax)
1406812e6:	7d 06                	jge    0x1406812ee
1406812e8:	48 8b 40 10          	mov    0x10(%rax),%rax
1406812ec:	eb 06                	jmp    0x1406812f4
1406812ee:	48 8b c8             	mov    %rax,%rcx
1406812f1:	48 8b 00             	mov    (%rax),%rax
1406812f4:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406812f8:	74 e9                	je     0x1406812e3
1406812fa:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
1406812fe:	0f 85 a1 00 00 00    	jne    0x1406813a5
140681304:	3b 79 1c             	cmp    0x1c(%rcx),%edi
140681307:	0f 8c 98 00 00 00    	jl     0x1406813a5
14068130d:	41 ff c5             	inc    %r13d
140681310:	45 84 f6             	test   %r14b,%r14b
140681313:	75 06                	jne    0x14068131b
140681315:	44 38 72 0c          	cmp    %r14b,0xc(%rdx)
140681319:	74 03                	je     0x14068131e
14068131b:	41 b6 01             	mov    $0x1,%r14b
14068131e:	44 88 75 a8          	mov    %r14b,-0x58(%rbp)
140681322:	8b 42 10             	mov    0x10(%rdx),%eax
140681325:	83 f8 ff             	cmp    $0xffffffff,%eax
140681328:	75 06                	jne    0x140681330
14068132a:	c6 45 a7 00          	movb   $0x0,-0x59(%rbp)
14068132e:	eb 75                	jmp    0x1406813a5
140681330:	45 84 c9             	test   %r9b,%r9b
140681333:	74 09                	je     0x14068133e
140681335:	3b f0                	cmp    %eax,%esi
140681337:	74 6c                	je     0x1406813a5
140681339:	41 b4 01             	mov    $0x1,%r12b
14068133c:	eb 67                	jmp    0x1406813a5
14068133e:	8b f0                	mov    %eax,%esi
140681340:	89 45 b3             	mov    %eax,-0x4d(%rbp)
140681343:	48 8b 52 18          	mov    0x18(%rdx),%rdx
140681347:	48 85 d2             	test   %rdx,%rdx
14068134a:	74 1c                	je     0x140681368
14068134c:	8b 42 10             	mov    0x10(%rdx),%eax
14068134f:	ff c0                	inc    %eax
140681351:	89 42 10             	mov    %eax,0x10(%rdx)
140681354:	83 f8 01             	cmp    $0x1,%eax
140681357:	0f 8e 14 03 00 00    	jle    0x140681671
14068135d:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140681362:	0f 84 fe 02 00 00    	je     0x140681666
140681368:	48 8b cb             	mov    %rbx,%rcx
14068136b:	48 8b da             	mov    %rdx,%rbx
14068136e:	48 89 55 e7          	mov    %rdx,-0x19(%rbp)
140681372:	48 85 c9             	test   %rcx,%rcx
140681375:	74 2b                	je     0x1406813a2
140681377:	8b 41 10             	mov    0x10(%rcx),%eax
14068137a:	ff c8                	dec    %eax
14068137c:	89 41 10             	mov    %eax,0x10(%rcx)
14068137f:	85 c0                	test   %eax,%eax
140681381:	7f 1f                	jg     0x1406813a2
140681383:	0f 88 f0 02 00 00    	js     0x140681679
140681389:	48 8b 01             	mov    (%rcx),%rax
14068138c:	ba 01 00 00 00       	mov    $0x1,%edx
140681391:	48 8b 00             	mov    (%rax),%rax
140681394:	ff 15 86 26 90 00    	call   *0x902686(%rip)        # 0x140f83a20
14068139a:	4c 8b 55 f7          	mov    -0x9(%rbp),%r10
14068139e:	44 8b 5d ab          	mov    -0x55(%rbp),%r11d
1406813a2:	41 b1 01             	mov    $0x1,%r9b
1406813a5:	ff c7                	inc    %edi
1406813a7:	4d 8b 42 08          	mov    0x8(%r10),%r8
1406813ab:	49 8b 0a             	mov    (%r10),%rcx
1406813ae:	8b d7                	mov    %edi,%edx
1406813b0:	49 8b c0             	mov    %r8,%rax
1406813b3:	48 2b c1             	sub    %rcx,%rax
1406813b6:	48 c1 f8 05          	sar    $0x5,%rax
1406813ba:	48 3b d0             	cmp    %rax,%rdx
1406813bd:	73 09                	jae    0x1406813c8
1406813bf:	44 8b 45 b7          	mov    -0x49(%rbp),%r8d
1406813c3:	e9 a8 fe ff ff       	jmp    0x140681270
1406813c8:	49 8b d0             	mov    %r8,%rdx
1406813cb:	33 c9                	xor    %ecx,%ecx
1406813cd:	0f b6 45 a7          	movzbl -0x59(%rbp),%eax
1406813d1:	45 85 ed             	test   %r13d,%r13d
1406813d4:	0f 45 c8             	cmovne %eax,%ecx
1406813d7:	84 c9                	test   %cl,%cl
1406813d9:	74 0f                	je     0x1406813ea
1406813db:	44 8b 4d af          	mov    -0x51(%rbp),%r9d
1406813df:	45 84 e4             	test   %r12b,%r12b
1406813e2:	74 15                	je     0x1406813f9
1406813e4:	41 8d 71 01          	lea    0x1(%r9),%esi
1406813e8:	eb 0c                	jmp    0x1406813f6
1406813ea:	be ff ff ff ff       	mov    $0xffffffff,%esi
1406813ef:	45 32 e4             	xor    %r12b,%r12b
1406813f2:	44 8b 4d af          	mov    -0x51(%rbp),%r9d
1406813f6:	89 75 b3             	mov    %esi,-0x4d(%rbp)
1406813f9:	48 8b 45 c7          	mov    -0x39(%rbp),%rax
1406813fd:	48 8b 48 38          	mov    0x38(%rax),%rcx
140681401:	8b 41 04             	mov    0x4(%rcx),%eax
140681404:	89 45 b7             	mov    %eax,-0x49(%rbp)
140681407:	49 3b 52 10          	cmp    0x10(%r10),%rdx
14068140b:	74 33                	je     0x140681440
14068140d:	c7 42 04 ff ff ff ff 	movl   $0xffffffff,0x4(%rdx)
140681414:	48 c7 42 18 00 00 00 	movq   $0x0,0x18(%rdx)
14068141b:	00
14068141c:	44 89 0a             	mov    %r9d,(%rdx)
14068141f:	89 42 08             	mov    %eax,0x8(%rdx)
140681422:	41 0f b6 c6          	movzbl %r14b,%eax
140681426:	83 fe ff             	cmp    $0xffffffff,%esi
140681429:	41 be 01 00 00 00    	mov    $0x1,%r14d
14068142f:	41 0f 45 c6          	cmovne %r14d,%eax
140681433:	88 42 0c             	mov    %al,0xc(%rdx)
140681436:	89 72 10             	mov    %esi,0x10(%rdx)
140681439:	49 83 42 08 20       	addq   $0x20,0x8(%r10)
14068143e:	eb 28                	jmp    0x140681468
140681440:	48 8d 45 b3          	lea    -0x4d(%rbp),%rax
140681444:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140681449:	48 8d 45 a8          	lea    -0x58(%rbp),%rax
14068144d:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140681452:	4c 8d 4d b7          	lea    -0x49(%rbp),%r9
140681456:	4c 8d 45 d3          	lea    -0x2d(%rbp),%r8
14068145a:	49 8b ca             	mov    %r10,%rcx
14068145d:	e8 fe e8 ff ff       	call   0x14067fd60
140681462:	41 be 01 00 00 00    	mov    $0x1,%r14d
140681468:	48 8b 7d bf          	mov    -0x41(%rbp),%rdi
14068146c:	83 fe ff             	cmp    $0xffffffff,%esi
14068146f:	74 66                	je     0x1406814d7
140681471:	45 84 e4             	test   %r12b,%r12b
140681474:	75 61                	jne    0x1406814d7
140681476:	48 8b 4f 28          	mov    0x28(%rdi),%rcx
14068147a:	48 89 5d d7          	mov    %rbx,-0x29(%rbp)
14068147e:	48 85 db             	test   %rbx,%rbx
140681481:	74 1c                	je     0x14068149f
140681483:	8b 43 10             	mov    0x10(%rbx),%eax
140681486:	ff c0                	inc    %eax
140681488:	89 43 10             	mov    %eax,0x10(%rbx)
14068148b:	83 f8 01             	cmp    $0x1,%eax
14068148e:	0f 8e f0 01 00 00    	jle    0x140681684
140681494:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140681499:	0f 84 ed 01 00 00    	je     0x14068168c
14068149f:	48 83 c1 f8          	add    $0xfffffffffffffff8,%rcx
1406814a3:	48 8d 55 d7          	lea    -0x29(%rbp),%rdx
1406814a7:	e8 d4 b2 bd ff       	call   0x14025c780
1406814ac:	90                   	nop
1406814ad:	48 85 db             	test   %rbx,%rbx
1406814b0:	74 25                	je     0x1406814d7
1406814b2:	8b 43 10             	mov    0x10(%rbx),%eax
1406814b5:	ff c8                	dec    %eax
1406814b7:	89 43 10             	mov    %eax,0x10(%rbx)
1406814ba:	85 c0                	test   %eax,%eax
1406814bc:	7f 19                	jg     0x1406814d7
1406814be:	0f 88 d1 01 00 00    	js     0x140681695
1406814c4:	48 8b 03             	mov    (%rbx),%rax
1406814c7:	41 8b d6             	mov    %r14d,%edx
1406814ca:	48 8b cb             	mov    %rbx,%rcx
1406814cd:	48 8b 00             	mov    (%rax),%rax
1406814d0:	ff 15 4a 25 90 00    	call   *0x90254a(%rip)        # 0x140f83a20
1406814d6:	90                   	nop
1406814d7:	48 83 47 50 f8       	addq   $0xfffffffffffffff8,0x50(%rdi)
1406814dc:	48 8b 57 60          	mov    0x60(%rdi),%rdx
1406814e0:	48 8b 4f 78          	mov    0x78(%rdi),%rcx
1406814e4:	48 85 c9             	test   %rcx,%rcx
1406814e7:	79 1f                	jns    0x140681508
1406814e9:	48 8b c1             	mov    %rcx,%rax
1406814ec:	48 f7 d8             	neg    %rax
1406814ef:	74 17                	je     0x140681508
1406814f1:	48 8b c1             	mov    %rcx,%rax
1406814f4:	48 f7 d0             	not    %rax
1406814f7:	48 c1 e8 05          	shr    $0x5,%rax
1406814fb:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140681502:	00
140681503:	48 2b d0             	sub    %rax,%rdx
140681506:	eb 0b                	jmp    0x140681513
140681508:	48 8b c1             	mov    %rcx,%rax
14068150b:	48 c1 e8 05          	shr    $0x5,%rax
14068150f:	48 8d 14 82          	lea    (%rdx,%rax,4),%rdx
140681513:	4c 23 f9             	and    %rcx,%r15
140681516:	49 8d 4f ff          	lea    -0x1(%r15),%rcx
14068151a:	48 8b c1             	mov    %rcx,%rax
14068151d:	49 83 ff 01          	cmp    $0x1,%r15
140681521:	73 18                	jae    0x14068153b
140681523:	48 f7 d0             	not    %rax
140681526:	48 c1 e8 05          	shr    $0x5,%rax
14068152a:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140681531:	00
140681532:	48 2b d0             	sub    %rax,%rdx
140681535:	48 89 55 f7          	mov    %rdx,-0x9(%rbp)
140681539:	eb 0c                	jmp    0x140681547
14068153b:	48 c1 e8 05          	shr    $0x5,%rax
14068153f:	48 8d 04 82          	lea    (%rdx,%rax,4),%rax
140681543:	48 89 45 f7          	mov    %rax,-0x9(%rbp)
140681547:	83 e1 1f             	and    $0x1f,%ecx
14068154a:	48 89 4d ff          	mov    %rcx,-0x1(%rbp)
14068154e:	0f 28 45 f7          	movaps -0x9(%rbp),%xmm0
140681552:	66 0f 7f 45 f7       	movdqa %xmm0,-0x9(%rbp)
140681557:	4c 8d 45 f7          	lea    -0x9(%rbp),%r8
14068155b:	48 8d 55 d7          	lea    -0x29(%rbp),%rdx
14068155f:	48 8d 4f 60          	lea    0x60(%rdi),%rcx
140681563:	e8 58 0f 00 00       	call   0x1406824c0
140681568:	4c 8b 4f 38          	mov    0x38(%rdi),%r9
14068156c:	4d 8d 51 08          	lea    0x8(%r9),%r10
140681570:	49 8b 02             	mov    (%r10),%rax
140681573:	49 8b d1             	mov    %r9,%rdx
140681576:	4c 8b 45 c7          	mov    -0x39(%rbp),%r8
14068157a:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
14068157e:	75 28                	jne    0x1406815a8
140681580:	48 8b 48 20          	mov    0x20(%rax),%rcx
140681584:	49 3b c8             	cmp    %r8,%rcx
140681587:	73 06                	jae    0x14068158f
140681589:	48 8b 40 10          	mov    0x10(%rax),%rax
14068158d:	eb 13                	jmp    0x1406815a2
14068158f:	80 7a 19 00          	cmpb   $0x0,0x19(%rdx)
140681593:	74 07                	je     0x14068159c
140681595:	4c 3b c1             	cmp    %rcx,%r8
140681598:	48 0f 42 d0          	cmovb  %rax,%rdx
14068159c:	4c 8b c8             	mov    %rax,%r9
14068159f:	48 8b 00             	mov    (%rax),%rax
1406815a2:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406815a6:	74 d8                	je     0x140681580
1406815a8:	48 8b c2             	mov    %rdx,%rax
1406815ab:	80 7a 19 00          	cmpb   $0x0,0x19(%rdx)
1406815af:	49 0f 45 c2          	cmovne %r10,%rax
1406815b3:	48 8b 08             	mov    (%rax),%rcx
1406815b6:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
1406815ba:	75 1c                	jne    0x1406815d8
1406815bc:	0f 1f 40 00          	nopl   0x0(%rax)
1406815c0:	4c 3b 41 20          	cmp    0x20(%rcx),%r8
1406815c4:	73 08                	jae    0x1406815ce
1406815c6:	48 8b d1             	mov    %rcx,%rdx
1406815c9:	48 8b 09             	mov    (%rcx),%rcx
1406815cc:	eb 04                	jmp    0x1406815d2
1406815ce:	48 8b 49 10          	mov    0x10(%rcx),%rcx
1406815d2:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
1406815d6:	74 e8                	je     0x1406815c0
1406815d8:	4c 89 4d f7          	mov    %r9,-0x9(%rbp)
1406815dc:	48 89 55 ff          	mov    %rdx,-0x1(%rbp)
1406815e0:	0f 28 45 f7          	movaps -0x9(%rbp),%xmm0
1406815e4:	66 0f 7f 45 f7       	movdqa %xmm0,-0x9(%rbp)
1406815e9:	48 8d 55 f7          	lea    -0x9(%rbp),%rdx
1406815ed:	48 8d 4f 38          	lea    0x38(%rdi),%rcx
1406815f1:	e8 aa 0c 00 00       	call   0x1406822a0
1406815f6:	80 bf 90 00 00 00 00 	cmpb   $0x0,0x90(%rdi)
1406815fd:	74 09                	je     0x140681608
1406815ff:	48 8b cf             	mov    %rdi,%rcx
140681602:	e8 19 05 00 00       	call   0x140681b20
140681607:	90                   	nop
140681608:	48 85 db             	test   %rbx,%rbx
14068160b:	74 21                	je     0x14068162e
14068160d:	8b 43 10             	mov    0x10(%rbx),%eax
140681610:	ff c8                	dec    %eax
140681612:	89 43 10             	mov    %eax,0x10(%rbx)
140681615:	85 c0                	test   %eax,%eax
140681617:	7f 15                	jg     0x14068162e
140681619:	78 3a                	js     0x140681655
14068161b:	48 8b 03             	mov    (%rbx),%rax
14068161e:	41 8b d6             	mov    %r14d,%edx
140681621:	48 8b cb             	mov    %rbx,%rcx
140681624:	48 8b 00             	mov    (%rax),%rax
140681627:	ff 15 f3 23 90 00    	call   *0x9023f3(%rip)        # 0x140f83a20
14068162d:	90                   	nop
14068162e:	48 8b 4d 17          	mov    0x17(%rbp),%rcx
140681632:	48 33 cc             	xor    %rsp,%rcx
140681635:	e8 c6 9e 79 00       	call   0x140e1b500
14068163a:	48 8b 9c 24 18 01 00 	mov    0x118(%rsp),%rbx
140681641:	00
140681642:	48 81 c4 c0 00 00 00 	add    $0xc0,%rsp
140681649:	41 5f                	pop    %r15
14068164b:	41 5e                	pop    %r14
14068164d:	41 5d                	pop    %r13
14068164f:	41 5c                	pop    %r12
140681651:	5f                   	pop    %rdi
140681652:	5e                   	pop    %rsi
140681653:	5d                   	pop    %rbp
140681654:	c3                   	ret
140681655:	b9 02 00 00 00       	mov    $0x2,%ecx
14068165a:	e8 a1 90 10 00       	call   0x14078a700
14068165f:	90                   	nop
140681660:	e8 3f 8b 7a 00       	call   0x140e2a1a4
140681665:	90                   	nop
140681666:	b9 01 00 00 00       	mov    $0x1,%ecx
14068166b:	e8 90 90 10 00       	call   0x14078a700
140681670:	cc                   	int3
140681671:	33 c9                	xor    %ecx,%ecx
140681673:	e8 88 90 10 00       	call   0x14078a700
140681678:	90                   	nop
140681679:	b9 02 00 00 00       	mov    $0x2,%ecx
14068167e:	e8 7d 90 10 00       	call   0x14078a700
140681683:	90                   	nop
140681684:	33 c9                	xor    %ecx,%ecx
140681686:	e8 75 90 10 00       	call   0x14078a700
14068168b:	cc                   	int3
14068168c:	41 8b ce             	mov    %r14d,%ecx
14068168f:	e8 6c 90 10 00       	call   0x14078a700
140681694:	90                   	nop
140681695:	b9 02 00 00 00       	mov    $0x2,%ecx
14068169a:	e8 61 90 10 00       	call   0x14078a700
14068169f:	cc                   	int3
1406816a0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1406816a5:	57                   	push   %rdi
1406816a6:	48 83 ec 30          	sub    $0x30,%rsp
1406816aa:	48 8b da             	mov    %rdx,%rbx
1406816ad:	48 8b f9             	mov    %rcx,%rdi
1406816b0:	33 c9                	xor    %ecx,%ecx
1406816b2:	48 8b 47 28          	mov    0x28(%rdi),%rax
1406816b6:	48 39 47 20          	cmp    %rax,0x20(%rdi)