140335561:	72 8e                	jb     0x1403354f1
140335563:	49 ff c0             	inc    %r8
140335566:	4c 3b c7             	cmp    %rdi,%r8
140335569:	0f 82 75 ff ff ff    	jb     0x1403354e4
14033556f:	e9 3d ff ff ff       	jmp    0x1403354b1
140335574:	ff 15 1e 74 7d 00    	call   *0x7d741e(%rip)        # 0x140b0c998
14033557a:	cc                   	int3
14033557b:	41 83 ff 03          	cmp    $0x3,%r15d
14033557f:	75 27                	jne    0x1403355a8
140335581:	48 89 6c 24 28       	mov    %rbp,0x28(%rsp)
140335586:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
14033558b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140335590:	4c 8b 4c 24 40       	mov    0x40(%rsp),%r9
140335595:	4c 8b c7             	mov    %rdi,%r8
140335598:	48 8b d6             	mov    %rsi,%rdx
14033559b:	49 8b ce             	mov    %r14,%rcx
14033559e:	e8 ed f7 ff ff       	call   0x140334d90
1403355a3:	e9 09 ff ff ff       	jmp    0x1403354b1
1403355a8:	0f 57 c0             	xorps  %xmm0,%xmm0
1403355ab:	f3 0f 7f 44 24 58    	movdqu %xmm0,0x58(%rsp)
1403355b1:	4c 21 64 24 68       	and    %r12,0x68(%rsp)
1403355b6:	49 8b d5             	mov    %r13,%rdx
1403355b9:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1403355be:	e8 ad 07 00 00       	call   0x140335d70
1403355c3:	33 c0                	xor    %eax,%eax
1403355c5:	89 44 24 34          	mov    %eax,0x34(%rsp)
1403355c9:	48 b9 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rcx
1403355d0:	aa aa aa
1403355d3:	45 85 ff             	test   %r15d,%r15d
1403355d6:	0f 8e fe 00 00 00    	jle    0x1403356da
1403355dc:	45 33 f6             	xor    %r14d,%r14d
1403355df:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1403355e4:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
1403355e9:	48 2b d9             	sub    %rcx,%rbx
1403355ec:	48 c1 fb 03          	sar    $0x3,%rbx
1403355f0:	48 ba ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rdx
1403355f7:	aa aa aa
1403355fa:	48 0f af da          	imul   %rdx,%rbx
1403355fe:	33 ed                	xor    %ebp,%ebp
140335600:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
140335605:	48 98                	cltq
140335607:	48 3b c3             	cmp    %rbx,%rax
14033560a:	0f 83 82 01 00 00    	jae    0x140335792
140335610:	48 8d 04 40          	lea    (%rax,%rax,2),%rax
140335614:	48 8d 0c c1          	lea    (%rcx,%rax,8),%rcx
140335618:	ba 00 01 00 00       	mov    $0x100,%edx
14033561d:	e8 02 02 d4 ff       	call   0x140075824
140335622:	33 d2                	xor    %edx,%edx
140335624:	45 33 c0             	xor    %r8d,%r8d
140335627:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14033562c:	4c 8b 08             	mov    (%rax),%r9
14033562f:	48 8b 48 08          	mov    0x8(%rax),%rcx
140335633:	49 2b c9             	sub    %r9,%rcx
140335636:	48 c1 f9 02          	sar    $0x2,%rcx
14033563a:	48 3b e9             	cmp    %rcx,%rbp
14033563d:	0f 83 4f 01 00 00    	jae    0x140335792
140335643:	41 3b 14 a9          	cmp    (%r9,%rbp,4),%edx
140335647:	72 4d                	jb     0x140335696
140335649:	48 8d 45 01          	lea    0x1(%rbp),%rax
14033564d:	48 3b c1             	cmp    %rcx,%rax
140335650:	0f 83 3c 01 00 00    	jae    0x140335792
140335656:	41 3b 54 a9 04       	cmp    0x4(%r9,%rbp,4),%edx
14033565b:	77 34                	ja     0x140335691
14033565d:	4c 3b f3             	cmp    %rbx,%r14
140335660:	0f 83 2c 01 00 00    	jae    0x140335792
140335666:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
14033566b:	4c 8b 09             	mov    (%rcx),%r9
14033566e:	48 8b 41 08          	mov    0x8(%rcx),%rax
140335672:	49 2b c1             	sub    %r9,%rax
140335675:	48 c1 f8 02          	sar    $0x2,%rax
140335679:	4c 3b c0             	cmp    %rax,%r8
14033567c:	0f 83 10 01 00 00    	jae    0x140335792
140335682:	43 c7 04 81 01 00 00 	movl   $0x1,(%r9,%r8,4)
140335689:	00
14033568a:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14033568f:	eb 0a                	jmp    0x14033569b
140335691:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140335696:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
14033569b:	ff c2                	inc    %edx
14033569d:	49 ff c0             	inc    %r8
1403356a0:	81 fa 00 01 00 00    	cmp    $0x100,%edx
1403356a6:	72 84                	jb     0x14033562c
1403356a8:	8b 44 24 34          	mov    0x34(%rsp),%eax
1403356ac:	ff c0                	inc    %eax
1403356ae:	89 44 24 34          	mov    %eax,0x34(%rsp)
1403356b2:	49 ff c6             	inc    %r14
1403356b5:	48 83 c5 02          	add    $0x2,%rbp
1403356b9:	48 83 c1 18          	add    $0x18,%rcx
1403356bd:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
1403356c2:	4d 3b f5             	cmp    %r13,%r14
1403356c5:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
1403356ca:	0f 8c 35 ff ff ff    	jl     0x140335605
1403356d0:	48 b9 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rcx
1403356d7:	aa aa aa
1403356da:	45 33 d2             	xor    %r10d,%r10d
1403356dd:	48 85 ff             	test   %rdi,%rdi
1403356e0:	0f 84 b3 00 00 00    	je     0x140335799
1403356e6:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1403356eb:	45 33 db             	xor    %r11d,%r11d
1403356ee:	48 85 f6             	test   %rsi,%rsi
1403356f1:	0f 84 84 00 00 00    	je     0x14033577b
1403356f7:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
1403356fc:	33 db                	xor    %ebx,%ebx
1403356fe:	45 33 c9             	xor    %r9d,%r9d
140335701:	45 85 ff             	test   %r15d,%r15d
140335704:	7e 56                	jle    0x14033575c
140335706:	4c 8b 44 24 60       	mov    0x60(%rsp),%r8
14033570b:	4c 2b 44 24 58       	sub    0x58(%rsp),%r8
140335710:	49 c1 f8 03          	sar    $0x3,%r8
140335714:	4c 0f af c1          	imul   %rcx,%r8
140335718:	4c 8b 74 24 58       	mov    0x58(%rsp),%r14
14033571d:	4d 3b c8             	cmp    %r8,%r9
140335720:	73 70                	jae    0x140335792
140335722:	8b 55 20             	mov    0x20(%rbp),%edx
140335725:	48 8b 45 10          	mov    0x10(%rbp),%rax
140335729:	0f b6 0c 02          	movzbl (%rdx,%rax,1),%ecx
14033572d:	8d 42 01             	lea    0x1(%rdx),%eax
140335730:	89 45 20             	mov    %eax,0x20(%rbp)
140335733:	8b d1                	mov    %ecx,%edx
140335735:	49 8b 0e             	mov    (%r14),%rcx
140335738:	49 8b 46 08          	mov    0x8(%r14),%rax
14033573c:	48 2b c1             	sub    %rcx,%rax
14033573f:	48 c1 f8 02          	sar    $0x2,%rax
140335743:	48 3b d0             	cmp    %rax,%rdx
140335746:	73 4a                	jae    0x140335792
140335748:	03 1c 91             	add    (%rcx,%rdx,4),%ebx
14033574b:	49 ff c1             	inc    %r9
14033574e:	49 83 c6 18          	add    $0x18,%r14
140335752:	4d 3b cd             	cmp    %r13,%r9
140335755:	7c c6                	jl     0x14033571d
140335757:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
14033575c:	41 3b df             	cmp    %r15d,%ebx
14033575f:	0f 94 c1             	sete   %cl
140335762:	41 88 0c 14          	mov    %cl,(%r12,%rdx,1)
140335766:	41 ff c4             	inc    %r12d
140335769:	49 ff c3             	inc    %r11
14033576c:	4c 3b de             	cmp    %rsi,%r11
14033576f:	48 b9 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rcx
140335776:	aa aa aa
140335779:	72 81                	jb     0x1403356fc
14033577b:	49 ff c2             	inc    %r10
14033577e:	4c 3b d7             	cmp    %rdi,%r10
140335781:	73 16                	jae    0x140335799
140335783:	48 b9 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rcx
14033578a:	aa aa aa
14033578d:	e9 59 ff ff ff       	jmp    0x1403356eb
140335792:	ff 15 00 72 7d 00    	call   *0x7d7200(%rip)        # 0x140b0c998
140335798:	90                   	nop
140335799:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
14033579e:	e8 b9 7f d2 ff       	call   0x14005d75c
1403357a3:	e9 09 fd ff ff       	jmp    0x1403354b1
1403357a8:	e8 93 7c fc ff       	call   0x1402fd440
1403357ad:	cc                   	int3
1403357ae:	e8 71 a5 fa ff       	call   0x1402dfd24
1403357b3:	cc                   	int3
1403357b4:	ba 03 84 04 80       	mov    $0x80048403,%edx
1403357b9:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
1403357be:	e8 d5 08 fc ff       	call   0x1402f6098
1403357c3:	48 8d 15 3e 0d 90 00 	lea    0x900d3e(%rip),%rdx        # 0x140c36508
1403357ca:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
1403357cf:	e8 aa ac 7b 00       	call   0x140af047e
1403357d4:	cc                   	int3
1403357d5:	90                   	nop
1403357d6:	90                   	nop
1403357d7:	90                   	nop
1403357d8:	90                   	nop
1403357d9:	90                   	nop
1403357da:	90                   	nop
1403357db:	90                   	nop
1403357dc:	90                   	nop
1403357dd:	90                   	nop
1403357de:	90                   	nop
1403357df:	90                   	nop
1403357e0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1403357e5:	55                   	push   %rbp
1403357e6:	56                   	push   %rsi
1403357e7:	57                   	push   %rdi
1403357e8:	41 54                	push   %r12
1403357ea:	41 55                	push   %r13
1403357ec:	41 56                	push   %r14
1403357ee:	41 57                	push   %r15
1403357f0:	48 81 ec c0 00 00 00 	sub    $0xc0,%rsp
1403357f7:	48 8b 05 42 98 98 00 	mov    0x989842(%rip),%rax        # 0x140cbf040
1403357fe:	48 33 c4             	xor    %rsp,%rax
140335801:	48 89 84 24 b0 00 00 	mov    %rax,0xb0(%rsp)
140335808:	00
140335809:	49 8b f9             	mov    %r9,%rdi
14033580c:	49 8b f0             	mov    %r8,%rsi
14033580f:	48 8b ea             	mov    %rdx,%rbp
140335812:	48 8b d9             	mov    %rcx,%rbx
140335815:	48 8b 94 24 20 01 00 	mov    0x120(%rsp),%rdx
14033581c:	00
14033581d:	48 8b 84 24 28 01 00 	mov    0x128(%rsp),%rax
140335824:	00
140335825:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14033582a:	48 8b 84 24 38 01 00 	mov    0x138(%rsp),%rax
140335831:	00
140335832:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140335837:	48 8b cd             	mov    %rbp,%rcx
14033583a:	49 0f af c8          	imul   %r8,%rcx
14033583e:	44 8b b4 24 40 01 00 	mov    0x140(%rsp),%r14d
140335845:	00
140335846:	4c 3b f1             	cmp    %rcx,%r14
140335849:	0f 82 b0 01 00 00    	jb     0x1403359ff
14033584f:	48 8b 0a             	mov    (%rdx),%rcx
140335852:	48 8b 01             	mov    (%rcx),%rax
140335855:	48 8b 40 20          	mov    0x20(%rax),%rax
140335859:	ff 15 d9 73 7d 00    	call   *0x7d73d9(%rip)        # 0x140b0cc38
14033585f:	4c 63 f8             	movslq %eax,%r15
140335862:	45 33 ed             	xor    %r13d,%r13d
140335865:	44 89 6c 24 48       	mov    %r13d,0x48(%rsp)
14033586a:	48 8b 03             	mov    (%rbx),%rax
14033586d:	41 b9 ff ff ff ff    	mov    $0xffffffff,%r9d
140335873:	49 3b e9             	cmp    %r9,%rbp
140335876:	0f 87 e6 04 00 00    	ja     0x140335d62
14033587c:	8b d5                	mov    %ebp,%edx
14033587e:	41 8b cf             	mov    %r15d,%ecx
140335881:	48 0f af d1          	imul   %rcx,%rdx
140335885:	49 3b d1             	cmp    %r9,%rdx
140335888:	0f 87 d4 04 00 00    	ja     0x140335d62
14033588e:	3b 50 10             	cmp    0x10(%rax),%edx
140335891:	0f 87 aa 04 00 00    	ja     0x140335d41
140335897:	8b 40 0c             	mov    0xc(%rax),%eax
14033589a:	48 3b f0             	cmp    %rax,%rsi
14033589d:	0f 87 9e 04 00 00    	ja     0x140335d41
1403358a3:	4d 8b c7             	mov    %r15,%r8
1403358a6:	4c 89 7c 24 50       	mov    %r15,0x50(%rsp)
1403358ab:	45 8d 65 08          	lea    0x8(%r13),%r12d
1403358af:	49 3b fc             	cmp    %r12,%rdi
1403358b2:	0f 84 27 02 00 00    	je     0x140335adf
1403358b8:	48 83 ff 10          	cmp    $0x10,%rdi
1403358bc:	0f 84 68 01 00 00    	je     0x140335a2a
1403358c2:	49 3b f9             	cmp    %r9,%rdi
1403358c5:	0f 87 97 04 00 00    	ja     0x140335d62
1403358cb:	85 ff                	test   %edi,%edi
1403358cd:	0f 84 95 04 00 00    	je     0x140335d68
1403358d3:	33 d2                	xor    %edx,%edx
1403358d5:	41 8b c4             	mov    %r12d,%eax
1403358d8:	f7 f7                	div    %edi
1403358da:	89 44 24 34          	mov    %eax,0x34(%rsp)
1403358de:	44 88 6c 24 30       	mov    %r13b,0x30(%rsp)
1403358e3:	45 33 c9             	xor    %r9d,%r9d
1403358e6:	48 85 f6             	test   %rsi,%rsi
1403358e9:	0f 84 10 01 00 00    	je     0x1403359ff
1403358ef:	44 2a e7             	sub    %dil,%r12b
1403358f2:	48 8b 13             	mov    (%rbx),%rdx
1403358f5:	41 8b c9             	mov    %r9d,%ecx
1403358f8:	0f af 4a 10          	imul   0x10(%rdx),%ecx
1403358fc:	48 03 4a 18          	add    0x18(%rdx),%rcx
140335900:	48 89 4b 10          	mov    %rcx,0x10(%rbx)
140335904:	83 63 18 00          	andl   $0x0,0x18(%rbx)
140335908:	45 33 f6             	xor    %r14d,%r14d
14033590b:	48 85 ed             	test   %rbp,%rbp
14033590e:	0f 84 df 00 00 00    	je     0x1403359f3
140335914:	45 33 d2             	xor    %r10d,%r10d
140335917:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14033591c:	b2 01                	mov    $0x1,%dl
14033591e:	88 54 24 31          	mov    %dl,0x31(%rsp)
140335922:	45 33 ff             	xor    %r15d,%r15d
140335925:	4d 85 c0             	test   %r8,%r8
140335928:	0f 8e b1 00 00 00    	jle    0x1403359df
14033592e:	45 33 c0             	xor    %r8d,%r8d
140335931:	4d 85 d2             	test   %r10,%r10
140335934:	75 14                	jne    0x14033594a
140335936:	8b 4b 18             	mov    0x18(%rbx),%ecx
140335939:	48 8b 43 10          	mov    0x10(%rbx),%rax
14033593d:	8a 04 08             	mov    (%rax,%rcx,1),%al
140335940:	88 44 24 30          	mov    %al,0x30(%rsp)
140335944:	8d 41 01             	lea    0x1(%rcx),%eax
140335947:	89 43 18             	mov    %eax,0x18(%rbx)
14033594a:	49 8b d2             	mov    %r10,%rdx
14033594d:	48 0f af d7          	imul   %rdi,%rdx
140335951:	b8 ff 00 00 00       	mov    $0xff,%eax
140335956:	48 8b ca             	mov    %rdx,%rcx
140335959:	d3 f8                	sar    %cl,%eax
14033595b:	44 0f b6 d8          	movzbl %al,%r11d
14033595f:	0f b6 44 24 30       	movzbl 0x30(%rsp),%eax
140335964:	44 23 d8             	and    %eax,%r11d
140335967:	41 8a cc             	mov    %r12b,%cl
14033596a:	2a ca                	sub    %dl,%cl
14033596c:	41 d3 eb             	shr    %cl,%r11d
14033596f:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140335974:	48 8b 08             	mov    (%rax),%rcx
140335977:	48 8b 50 08          	mov    0x8(%rax),%rdx
14033597b:	48 2b d1             	sub    %rcx,%rdx
14033597e:	48 c1 fa 02          	sar    $0x2,%rdx
140335982:	4c 3b c2             	cmp    %rdx,%r8
140335985:	0f 83 4d 01 00 00    	jae    0x140335ad8
14033598b:	46 3b 1c 81          	cmp    (%rcx,%r8,4),%r11d
14033598f:	72 14                	jb     0x1403359a5
140335991:	49 8d 40 01          	lea    0x1(%r8),%rax
140335995:	48 3b c2             	cmp    %rdx,%rax
140335998:	0f 83 3a 01 00 00    	jae    0x140335ad8
14033599e:	46 3b 5c 81 04       	cmp    0x4(%rcx,%r8,4),%r11d
1403359a3:	76 08                	jbe    0x1403359ad
1403359a5:	32 d2                	xor    %dl,%dl
1403359a7:	88 54 24 31          	mov    %dl,0x31(%rsp)
1403359ab:	eb 04                	jmp    0x1403359b1
1403359ad:	8a 54 24 31          	mov    0x31(%rsp),%dl
1403359b1:	49 8d 4a 01          	lea    0x1(%r10),%rcx
1403359b5:	49 ff c7             	inc    %r15
1403359b8:	49 83 c0 02          	add    $0x2,%r8
1403359bc:	8b 44 24 34          	mov    0x34(%rsp),%eax
1403359c0:	45 33 d2             	xor    %r10d,%r10d
1403359c3:	48 3b c8             	cmp    %rax,%rcx
1403359c6:	4c 0f 45 d1          	cmovne %rcx,%r10
1403359ca:	4c 3b 7c 24 50       	cmp    0x50(%rsp),%r15
1403359cf:	0f 8c 5c ff ff ff    	jl     0x140335931
1403359d5:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
1403359da:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
1403359df:	41 88 54 0d 00       	mov    %dl,0x0(%r13,%rcx,1)
1403359e4:	41 ff c5             	inc    %r13d
1403359e7:	49 ff c6             	inc    %r14
1403359ea:	4c 3b f5             	cmp    %rbp,%r14
1403359ed:	0f 82 29 ff ff ff    	jb     0x14033591c
1403359f3:	49 ff c1             	inc    %r9
1403359f6:	4c 3b ce             	cmp    %rsi,%r9
1403359f9:	0f 82 f3 fe ff ff    	jb     0x1403358f2
1403359ff:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
140335a06:	00
140335a07:	48 33 cc             	xor    %rsp,%rcx
140335a0a:	e8 d1 9b 7b 00       	call   0x140aef5e0
140335a0f:	48 8b 9c 24 10 01 00 	mov    0x110(%rsp),%rbx
140335a16:	00
140335a17:	48 81 c4 c0 00 00 00 	add    $0xc0,%rsp
140335a1e:	41 5f                	pop    %r15
140335a20:	41 5e                	pop    %r14
140335a22:	41 5d                	pop    %r13
140335a24:	41 5c                	pop    %r12
140335a26:	5f                   	pop    %rdi
140335a27:	5e                   	pop    %rsi
140335a28:	5d                   	pop    %rbp
140335a29:	c3                   	ret
140335a2a:	45 33 c0             	xor    %r8d,%r8d
140335a2d:	48 85 f6             	test   %rsi,%rsi
140335a30:	74 cd                	je     0x1403359ff
140335a32:	48 8b 13             	mov    (%rbx),%rdx
140335a35:	41 8b c8             	mov    %r8d,%ecx
140335a38:	0f af 4a 10          	imul   0x10(%rdx),%ecx
140335a3c:	48 03 4a 18          	add    0x18(%rdx),%rcx
140335a40:	48 89 4b 10          	mov    %rcx,0x10(%rbx)
140335a44:	83 63 18 00          	andl   $0x0,0x18(%rbx)
140335a48:	45 33 d2             	xor    %r10d,%r10d
140335a4b:	48 85 ed             	test   %rbp,%rbp
140335a4e:	74 77                	je     0x140335ac7
140335a50:	4c 8b 7c 24 50       	mov    0x50(%rsp),%r15
140335a55:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140335a5a:	41 b6 01             	mov    $0x1,%r14b
140335a5d:	45 33 db             	xor    %r11d,%r11d
140335a60:	4d 85 ff             	test   %r15,%r15