140903370:	48 ff c6             	inc    %rsi
140903373:	44 3b f0             	cmp    %eax,%r14d
140903376:	0f 8c b4 fe ff ff    	jl     0x140903230
14090337c:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140903381:	48 8b 9c 24 a0 00 00 	mov    0xa0(%rsp),%rbx
140903388:	00
140903389:	4c 8b 65 38          	mov    0x38(%rbp),%r12
14090338d:	44 8b 6d 40          	mov    0x40(%rbp),%r13d
140903391:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
140903395:	48 85 c9             	test   %rcx,%rcx
140903398:	74 21                	je     0x1409033bb
14090339a:	8b 45 f0             	mov    -0x10(%rbp),%eax
14090339d:	c6 04 08 00          	movb   $0x0,(%rax,%rcx,1)
1409033a1:	83 7d ec 00          	cmpl   $0x0,-0x14(%rbp)
1409033a5:	76 14                	jbe    0x1409033bb
1409033a7:	f6 45 f5 04          	testb  $0x4,-0xb(%rbp)
1409033ab:	75 0e                	jne    0x1409033bb
1409033ad:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
1409033b1:	e8 2a 12 02 00       	call   0x1409245e0
1409033b6:	4c 8b c8             	mov    %rax,%r9
1409033b9:	eb 04                	jmp    0x1409033bf
1409033bb:	4c 8b 4d e0          	mov    -0x20(%rbp),%r9
1409033bf:	8b 47 64             	mov    0x64(%rdi),%eax
1409033c2:	ba 13 08 00 00       	mov    $0x813,%edx
1409033c7:	24 03                	and    $0x3,%al
1409033c9:	c6 44 24 28 02       	movb   $0x2,0x28(%rsp)
1409033ce:	3c 02                	cmp    $0x2,%al
1409033d0:	c6 44 24 20 fa       	movb   $0xfa,0x20(%rsp)
1409033d5:	b9 13 06 00 00       	mov    $0x613,%ecx
1409033da:	45 8b c5             	mov    %r13d,%r8d
1409033dd:	0f 44 d1             	cmove  %ecx,%edx
1409033e0:	49 8b cc             	mov    %r12,%rcx
1409033e3:	e8 28 52 fe ff       	call   0x1408e8610
1409033e8:	48 83 c4 58          	add    $0x58,%rsp
1409033ec:	41 5f                	pop    %r15
1409033ee:	41 5e                	pop    %r14
1409033f0:	41 5d                	pop    %r13
1409033f2:	41 5c                	pop    %r12
1409033f4:	5f                   	pop    %rdi
1409033f5:	5d                   	pop    %rbp
1409033f6:	c3                   	ret
1409033f7:	cc                   	int3
1409033f8:	cc                   	int3
1409033f9:	cc                   	int3
1409033fa:	cc                   	int3
1409033fb:	cc                   	int3
1409033fc:	cc                   	int3
1409033fd:	cc                   	int3
1409033fe:	cc                   	int3
1409033ff:	cc                   	int3
140903400:	48 8b c4             	mov    %rsp,%rax
140903403:	4c 89 48 20          	mov    %r9,0x20(%rax)
140903407:	4c 89 40 18          	mov    %r8,0x18(%rax)
14090340b:	48 89 50 10          	mov    %rdx,0x10(%rax)
14090340f:	48 89 48 08          	mov    %rcx,0x8(%rax)
140903413:	55                   	push   %rbp
140903414:	57                   	push   %rdi
140903415:	41 56                	push   %r14
140903417:	48 8d a8 e8 fe ff ff 	lea    -0x118(%rax),%rbp
14090341e:	48 81 ec 00 02 00 00 	sub    $0x200,%rsp
140903425:	4c 8b 31             	mov    (%rcx),%r14
140903428:	49 8b f9             	mov    %r9,%rdi
14090342b:	48 89 58 e0          	mov    %rbx,-0x20(%rax)
14090342f:	48 8b da             	mov    %rdx,%rbx
140903432:	48 89 70 d8          	mov    %rsi,-0x28(%rax)
140903436:	33 f6                	xor    %esi,%esi
140903438:	4c 89 68 c8          	mov    %r13,-0x38(%rax)
14090343c:	4c 8b e9             	mov    %rcx,%r13
14090343f:	4c 89 78 c0          	mov    %r15,-0x40(%rax)
140903443:	4d 8b f8             	mov    %r8,%r15
140903446:	89 75 0c             	mov    %esi,0xc(%rbp)
140903449:	48 89 75 68          	mov    %rsi,0x68(%rbp)
14090344d:	48 89 75 60          	mov    %rsi,0x60(%rbp)
140903451:	c7 45 04 ff ff ff ff 	movl   $0xffffffff,0x4(%rbp)
140903458:	89 75 b4             	mov    %esi,-0x4c(%rbp)
14090345b:	89 75 d8             	mov    %esi,-0x28(%rbp)
14090345e:	66 89 75 dc          	mov    %si,-0x24(%rbp)
140903462:	89 75 e8             	mov    %esi,-0x18(%rbp)
140903465:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%rbp)
14090346c:	89 75 14             	mov    %esi,0x14(%rbp)
14090346f:	89 74 24 7c          	mov    %esi,0x7c(%rsp)
140903473:	89 75 84             	mov    %esi,-0x7c(%rbp)
140903476:	89 75 e4             	mov    %esi,-0x1c(%rbp)
140903479:	89 75 58             	mov    %esi,0x58(%rbp)
14090347c:	89 75 f8             	mov    %esi,-0x8(%rbp)
14090347f:	89 75 98             	mov    %esi,-0x68(%rbp)
140903482:	48 89 b5 90 00 00 00 	mov    %rsi,0x90(%rbp)
140903489:	48 89 b5 88 00 00 00 	mov    %rsi,0x88(%rbp)
140903490:	4c 89 75 70          	mov    %r14,0x70(%rbp)
140903494:	39 71 30             	cmp    %esi,0x30(%rcx)
140903497:	0f 85 09 26 00 00    	jne    0x140905aa6
14090349d:	4c 89 60 d0          	mov    %r12,-0x30(%rax)
1409034a1:	e8 1a d5 ff ff       	call   0x1409009c0
1409034a6:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
1409034aa:	4c 8b e0             	mov    %rax,%r12
1409034ad:	48 85 c0             	test   %rax,%rax
1409034b0:	0f 84 e8 25 00 00    	je     0x140905a9e
1409034b6:	48 8b 50 60          	mov    0x60(%rax),%rdx
1409034ba:	bf 00 80 ff ff       	mov    $0xffff8000,%edi
1409034bf:	89 7d b0             	mov    %edi,-0x50(%rbp)
1409034c2:	48 85 d2             	test   %rdx,%rdx
1409034c5:	74 27                	je     0x1409034ee
1409034c7:	49 8b 45 00          	mov    0x0(%r13),%rax
1409034cb:	8b fe                	mov    %esi,%edi
1409034cd:	89 75 b0             	mov    %esi,-0x50(%rbp)
1409034d0:	48 8b 48 20          	mov    0x20(%rax),%rcx
1409034d4:	48 83 c1 18          	add    $0x18,%rcx
1409034d8:	48 39 11             	cmp    %rdx,(%rcx)
1409034db:	74 11                	je     0x1409034ee
1409034dd:	0f 1f 00             	nopl   (%rax)
1409034e0:	ff c7                	inc    %edi
1409034e2:	48 8d 49 20          	lea    0x20(%rcx),%rcx
1409034e6:	48 39 11             	cmp    %rdx,(%rcx)
1409034e9:	75 f5                	jne    0x1409034e0
1409034eb:	89 7d b0             	mov    %edi,-0x50(%rbp)
1409034ee:	49 39 74 24 58       	cmp    %rsi,0x58(%r12)
1409034f3:	75 17                	jne    0x14090350c
1409034f5:	49 8b 45 00          	mov    0x0(%r13),%rax
1409034f9:	48 8b 48 20          	mov    0x20(%rax),%rcx
1409034fd:	48 8b 41 38          	mov    0x38(%rcx),%rax
140903501:	48 85 c0             	test   %rax,%rax
140903504:	74 0f                	je     0x140903515
140903506:	48 39 70 40          	cmp    %rsi,0x40(%rax)
14090350a:	74 09                	je     0x140903515
14090350c:	41 38 b5 d7 00 00 00 	cmp    %sil,0xd7(%r13)
140903513:	74 08                	je     0x14090351d
140903515:	33 c9                	xor    %ecx,%ecx
140903517:	48 89 4d f0          	mov    %rcx,-0x10(%rbp)
14090351b:	eb 26                	jmp    0x140903543
14090351d:	48 8d 45 00          	lea    0x0(%rbp),%rax
140903521:	4d 8b cf             	mov    %r15,%r9
140903524:	41 b8 81 00 00 00    	mov    $0x81,%r8d
14090352a:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14090352f:	49 8b d4             	mov    %r12,%rdx
140903532:	49 8b cd             	mov    %r13,%rcx
140903535:	e8 16 22 02 00       	call   0x140925750
14090353a:	8b 75 00             	mov    0x0(%rbp),%esi
14090353d:	33 c9                	xor    %ecx,%ecx
14090353f:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140903543:	83 3b 01             	cmpl   $0x1,(%rbx)
140903546:	41 0f b6 44 24 3f    	movzbl 0x3f(%r12),%eax
14090354c:	88 44 24 70          	mov    %al,0x70(%rsp)
140903550:	89 75 00             	mov    %esi,0x0(%rbp)
140903553:	7e 0f                	jle    0x140903564
140903555:	41 8b 1f             	mov    (%r15),%ebx
140903558:	89 5d a8             	mov    %ebx,-0x58(%rbp)
14090355b:	48 8b 9d 28 01 00 00 	mov    0x128(%rbp),%rbx
140903562:	eb 03                	jmp    0x140903567
140903564:	89 4d a8             	mov    %ecx,-0x58(%rbp)
140903567:	49 8b d4             	mov    %r12,%rdx
14090356a:	49 8b cd             	mov    %r13,%rcx
14090356d:	e8 de 2b 01 00       	call   0x140916150
140903572:	85 c0                	test   %eax,%eax
140903574:	0f 85 1d 25 00 00    	jne    0x140905a97
14090357a:	44 8b c6             	mov    %esi,%r8d
14090357d:	49 8b d4             	mov    %r12,%rdx
140903580:	49 8b cd             	mov    %r13,%rcx
140903583:	e8 08 84 fe ff       	call   0x1408eb990
140903588:	85 c0                	test   %eax,%eax
14090358a:	0f 85 07 25 00 00    	jne    0x140905a97
140903590:	45 8b 4d 34          	mov    0x34(%r13),%r9d
140903594:	41 8b d1             	mov    %r9d,%edx
140903597:	44 89 4c 24 74       	mov    %r9d,0x74(%rsp)
14090359c:	89 55 fc             	mov    %edx,-0x4(%rbp)
14090359f:	41 8d 41 01          	lea    0x1(%r9),%eax
1409035a3:	41 89 45 34          	mov    %eax,0x34(%r13)
1409035a7:	41 f6 44 24 30 80    	testb  $0x80,0x30(%r12)
1409035ad:	89 45 ec             	mov    %eax,-0x14(%rbp)
1409035b0:	75 09                	jne    0x1409035bb
1409035b2:	45 33 d2             	xor    %r10d,%r10d
1409035b5:	4c 89 55 c0          	mov    %r10,-0x40(%rbp)
1409035b9:	eb 12                	jmp    0x1409035cd
1409035bb:	49 8b cc             	mov    %r12,%rcx
1409035be:	e8 6d 38 ff ff       	call   0x1408f6e30
1409035c3:	4c 8b d0             	mov    %rax,%r10
1409035c6:	48 89 45 c0          	mov    %rax,-0x40(%rbp)
1409035ca:	8b 45 ec             	mov    -0x14(%rbp),%eax
1409035cd:	49 8b 4c 24 10       	mov    0x10(%r12),%rcx
1409035d2:	45 33 c0             	xor    %r8d,%r8d
1409035d5:	44 89 45 10          	mov    %r8d,0x10(%rbp)
1409035d9:	48 85 c9             	test   %rcx,%rcx
1409035dc:	74 2b                	je     0x140903609
1409035de:	8b d0                	mov    %eax,%edx
1409035e0:	4c 3b d1             	cmp    %rcx,%r10
1409035e3:	8b c2                	mov    %edx,%eax
1409035e5:	41 0f 45 c1          	cmovne %r9d,%eax
1409035e9:	ff c2                	inc    %edx
1409035eb:	41 89 55 34          	mov    %edx,0x34(%r13)
1409035ef:	41 ff c0             	inc    %r8d
1409035f2:	48 8b 49 28          	mov    0x28(%rcx),%rcx
1409035f6:	44 8b c8             	mov    %eax,%r9d
1409035f9:	48 85 c9             	test   %rcx,%rcx
1409035fc:	75 e2                	jne    0x1409035e0
1409035fe:	8b 55 fc             	mov    -0x4(%rbp),%edx
140903601:	44 89 45 10          	mov    %r8d,0x10(%rbp)
140903605:	89 44 24 74          	mov    %eax,0x74(%rsp)
140903609:	48 8b 85 58 01 00 00 	mov    0x158(%rbp),%rax
140903610:	48 85 c0             	test   %rax,%rax
140903613:	74 13                	je     0x140903628
140903615:	44 8b 48 4c          	mov    0x4c(%rax),%r9d
140903619:	8b 40 50             	mov    0x50(%rax),%eax
14090361c:	89 45 ec             	mov    %eax,-0x14(%rbp)
14090361f:	41 89 55 34          	mov    %edx,0x34(%r13)
140903623:	44 89 4c 24 74       	mov    %r9d,0x74(%rsp)
140903628:	44 89 4b 4c          	mov    %r9d,0x4c(%rbx)
14090362c:	49 8b ce             	mov    %r14,%rcx
14090362f:	41 0f bf 44 24 36    	movswl 0x36(%r12),%eax
140903635:	41 03 c0             	add    %r8d,%eax
140903638:	49 63 d8             	movslq %r8d,%rbx
14090363b:	48 98                	cltq
14090363d:	48 8d 14 85 06 00 00 	lea    0x6(,%rax,4),%rdx
140903644:	00
140903645:	48 03 d3             	add    %rbx,%rdx
140903648:	e8 b3 2f fd ff       	call   0x1408d6600
14090364d:	48 89 45 a0          	mov    %rax,-0x60(%rbp)
140903651:	48 8b f0             	mov    %rax,%rsi
140903654:	48 85 c0             	test   %rax,%rax
140903657:	0f 84 3a 24 00 00    	je     0x140905a97
14090365d:	49 0f bf 44 24 36    	movswq 0x36(%r12),%rax
140903663:	4c 8d 43 01          	lea    0x1(%rbx),%r8
140903667:	ba 01 00 00 00       	mov    $0x1,%edx
14090366c:	48 8d 04 86          	lea    (%rsi,%rax,4),%rax
140903670:	4c 8d 70 04          	lea    0x4(%rax),%r14
140903674:	48 89 45 18          	mov    %rax,0x18(%rbp)
140903678:	4d 8d 34 9e          	lea    (%r14,%rbx,4),%r14
14090367c:	49 8b ce             	mov    %r14,%rcx
14090367f:	4c 89 75 20          	mov    %r14,0x20(%rbp)
140903683:	e8 28 c0 5d 00       	call   0x140edf6b0
140903688:	45 33 c9             	xor    %r9d,%r9d
14090368b:	42 c6 44 33 01 00    	movb   $0x0,0x1(%rbx,%r14,1)
140903691:	41 8b c9             	mov    %r9d,%ecx
140903694:	66 45 3b 4c 24 36    	cmp    0x36(%r12),%r9w
14090369a:	7d 1a                	jge    0x1409036b6
14090369c:	0f 1f 40 00          	nopl   0x0(%rax)
1409036a0:	48 63 c1             	movslq %ecx,%rax
1409036a3:	ff c1                	inc    %ecx
1409036a5:	c7 04 86 ff ff ff ff 	movl   $0xffffffff,(%rsi,%rax,4)
1409036ac:	41 0f bf 44 24 36    	movswl 0x36(%r12),%eax
1409036b2:	3b c8                	cmp    %eax,%ecx
1409036b4:	7c ea                	jl     0x1409036a0
1409036b6:	48 8b 85 28 01 00 00 	mov    0x128(%rbp),%rax
1409036bd:	0f 57 c0             	xorps  %xmm0,%xmm0
1409036c0:	48 89 85 a0 00 00 00 	mov    %rax,0xa0(%rbp)
1409036c7:	48 8b 85 58 01 00 00 	mov    0x158(%rbp),%rax
1409036ce:	48 89 85 a8 00 00 00 	mov    %rax,0xa8(%rbp)
1409036d5:	49 8b 45 10          	mov    0x10(%r13),%rax
1409036d9:	4c 89 8d c4 00 00 00 	mov    %r9,0xc4(%rbp)
1409036e0:	44 89 8d cc 00 00 00 	mov    %r9d,0xcc(%rbp)
1409036e7:	4c 89 ad 98 00 00 00 	mov    %r13,0x98(%rbp)
1409036ee:	c7 85 c0 00 00 00 00 	movl   $0x200,0xc0(%rbp)
1409036f5:	02 00 00
1409036f8:	48 89 45 90          	mov    %rax,-0x70(%rbp)
1409036fc:	f3 0f 7f 85 b0 00 00 	movdqu %xmm0,0xb0(%rbp)
140903703:	00
140903704:	48 85 c0             	test   %rax,%rax
140903707:	75 30                	jne    0x140903739
140903709:	4d 39 8d a0 00 00 00 	cmp    %r9,0xa0(%r13)
140903710:	75 0f                	jne    0x140903721
140903712:	49 8b 45 00          	mov    0x0(%r13),%rax
140903716:	f6 40 60 08          	testb  $0x8,0x60(%rax)
14090371a:	75 05                	jne    0x140903721
14090371c:	41 c6 45 23 01       	movb   $0x1,0x23(%r13)
140903721:	49 8b cd             	mov    %r13,%rcx
140903724:	e8 97 41 00 00       	call   0x1409078c0
140903729:	48 89 45 90          	mov    %rax,-0x70(%rbp)
14090372d:	48 85 c0             	test   %rax,%rax
140903730:	0f 84 1a 03 00 00    	je     0x140903a50
140903736:	45 33 c9             	xor    %r9d,%r9d
140903739:	4c 8b 85 30 01 00 00 	mov    0x130(%rbp),%r8
140903740:	32 d2                	xor    %dl,%dl
140903742:	45 32 ff             	xor    %r15b,%r15b
140903745:	88 55 80             	mov    %dl,-0x80(%rbp)
140903748:	44 88 7c 24 71       	mov    %r15b,0x71(%rsp)
14090374d:	45 8b f1             	mov    %r9d,%r14d
140903750:	41 83 38 00          	cmpl   $0x0,(%r8)
140903754:	0f 8e 61 02 00 00    	jle    0x1409039bb
14090375a:	4c 63 ff             	movslq %edi,%r15
14090375d:	49 63 de             	movslq %r14d,%rbx
140903760:	48 8d 15 b9 45 74 00 	lea    0x7445b9(%rip),%rdx        # 0x141047d20
140903767:	48 8b c3             	mov    %rbx,%rax
14090376a:	40 32 f6             	xor    %sil,%sil
14090376d:	48 c1 e0 05          	shl    $0x5,%rax
140903771:	4a 8b 4c 00 10       	mov    0x10(%rax,%r8,1),%rcx
140903776:	48 85 c9             	test   %rcx,%rcx
140903779:	74 27                	je     0x1409037a2
14090377b:	0f b6 01             	movzbl (%rcx),%eax
14090377e:	84 c0                	test   %al,%al
140903780:	74 20                	je     0x1409037a2
140903782:	0f 1f 40 00          	nopl   0x0(%rax)
140903786:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14090378d:	00 00 00
140903790:	0f b6 c0             	movzbl %al,%eax
140903793:	48 8d 49 01          	lea    0x1(%rcx),%rcx
140903797:	40 02 34 10          	add    (%rax,%rdx,1),%sil
14090379b:	0f b6 01             	movzbl (%rcx),%eax
14090379e:	84 c0                	test   %al,%al
1409037a0:	75 ee                	jne    0x140903790
1409037a2:	83 7d a8 00          	cmpl   $0x0,-0x58(%rbp)
1409037a6:	75 31                	jne    0x1409037d9
1409037a8:	48 8b d3             	mov    %rbx,%rdx
1409037ab:	48 8d 8d 98 00 00 00 	lea    0x98(%rbp),%rcx
1409037b2:	48 c1 e2 05          	shl    $0x5,%rdx
1409037b6:	4a 8b 54 02 08       	mov    0x8(%rdx,%r8,1),%rdx
1409037bb:	e8 50 5c ff ff       	call   0x1408f9410
1409037c0:	85 c0                	test   %eax,%eax
1409037c2:	0f 85 7d 02 00 00    	jne    0x140903a45
1409037c8:	4c 8b 85 30 01 00 00 	mov    0x130(%rbp),%r8
1409037cf:	48 8d 15 4a 45 74 00 	lea    0x74454a(%rip),%rdx        # 0x141047d20
1409037d6:	45 33 c9             	xor    %r9d,%r9d
1409037d9:	45 8b d9             	mov    %r9d,%r11d
1409037dc:	49 8b f9             	mov    %r9,%rdi
1409037df:	66 45 3b 4c 24 36    	cmp    0x36(%r12),%r9w
1409037e5:	0f 8d f4 00 00 00    	jge    0x1409038df
1409037eb:	4d 8b 54 24 08       	mov    0x8(%r12),%r10
1409037f0:	48 c1 e3 05          	shl    $0x5,%rbx
1409037f4:	49 03 d8             	add    %r8,%rbx
1409037f7:	41 38 72 0e          	cmp    %sil,0xe(%r10)
1409037fb:	75 7e                	jne    0x14090387b
1409037fd:	4c 8b 43 10          	mov    0x10(%rbx),%r8
140903801:	4d 8b 0a             	mov    (%r10),%r9
140903804:	4d 2b c8             	sub    %r8,%r9
140903807:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14090380e:	00 00
140903810:	43 0f b6 0c 08       	movzbl (%r8,%r9,1),%ecx
140903815:	41 0f b6 00          	movzbl (%r8),%eax
140903819:	3b c8                	cmp    %eax,%ecx
14090381b:	75 3c                	jne    0x140903859
14090381d:	85 c9                	test   %ecx,%ecx
14090381f:	75 4e                	jne    0x14090386f
140903821:	41 0f bf 44 24 34    	movswl 0x34(%r12),%eax
140903827:	44 3b d8             	cmp    %eax,%r11d
14090382a:	75 70                	jne    0x14090389c
14090382c:	48 8b 8d 30 01 00 00 	mov    0x130(%rbp),%rcx
140903833:	48 8b 75 a0          	mov    -0x60(%rbp),%rsi
140903837:	49 63 c6             	movslq %r14d,%rax
14090383a:	48 c1 e0 05          	shl    $0x5,%rax
14090383e:	c6 44 24 71 01       	movb   $0x1,0x71(%rsp)
140903843:	44 89 75 04          	mov    %r14d,0x4(%rbp)
140903847:	48 8b 44 08 08       	mov    0x8(%rax,%rcx,1),%rax
14090384c:	48 89 45 60          	mov    %rax,0x60(%rbp)
140903850:	44 89 34 be          	mov    %r14d,(%rsi,%rdi,4)
140903854:	e9 8a 00 00 00       	jmp    0x1409038e3
140903859:	0f b6 14 10          	movzbl (%rax,%rdx,1),%edx
14090385d:	48 8b c1             	mov    %rcx,%rax
140903860:	48 8d 0d b9 44 74 00 	lea    0x7444b9(%rip),%rcx        # 0x141047d20
140903867:	0f b6 0c 08          	movzbl (%rax,%rcx,1),%ecx
14090386b:	3b ca                	cmp    %edx,%ecx
14090386d:	75 0c                	jne    0x14090387b
14090386f:	49 ff c0             	inc    %r8
140903872:	48 8d 15 a7 44 74 00 	lea    0x7444a7(%rip),%rdx        # 0x141047d20