140297471:	c1 e0 10             	shl    $0x10,%eax
140297474:	41 c1 e1 18          	shl    $0x18,%r9d
140297478:	44 0b c8             	or     %eax,%r9d
14029747b:	c1 e2 18             	shl    $0x18,%edx
14029747e:	0f b6 41 02          	movzbl 0x2(%rcx),%eax
140297482:	c1 e0 08             	shl    $0x8,%eax
140297485:	44 0b c8             	or     %eax,%r9d
140297488:	0f b6 41 03          	movzbl 0x3(%rcx),%eax
14029748c:	44 0b c8             	or     %eax,%r9d
14029748f:	0f b6 41 05          	movzbl 0x5(%rcx),%eax
140297493:	0f b6 49 06          	movzbl 0x6(%rcx),%ecx
140297497:	c1 e1 08             	shl    $0x8,%ecx
14029749a:	c1 e0 10             	shl    $0x10,%eax
14029749d:	0b d0                	or     %eax,%edx
14029749f:	44 89 4c 24 30       	mov    %r9d,0x30(%rsp)
1402974a4:	41 0f b6 42 07       	movzbl 0x7(%r10),%eax
1402974a9:	0b c8                	or     %eax,%ecx
1402974ab:	0b ca                	or     %edx,%ecx
1402974ad:	49 8b d0             	mov    %r8,%rdx
1402974b0:	89 4c 24 34          	mov    %ecx,0x34(%rsp)
1402974b4:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1402974b9:	e8 92 08 00 00       	call   0x140297d50
1402974be:	8b 4c 24 30          	mov    0x30(%rsp),%ecx
1402974c2:	8b c1                	mov    %ecx,%eax
1402974c4:	c1 e8 18             	shr    $0x18,%eax
1402974c7:	88 03                	mov    %al,(%rbx)
1402974c9:	8b c1                	mov    %ecx,%eax
1402974cb:	c1 e8 10             	shr    $0x10,%eax
1402974ce:	88 43 01             	mov    %al,0x1(%rbx)
1402974d1:	0f b6 44 24 30       	movzbl 0x30(%rsp),%eax
1402974d6:	88 43 03             	mov    %al,0x3(%rbx)
1402974d9:	c1 e9 08             	shr    $0x8,%ecx
1402974dc:	88 4b 02             	mov    %cl,0x2(%rbx)
1402974df:	8b 4c 24 34          	mov    0x34(%rsp),%ecx
1402974e3:	8b c1                	mov    %ecx,%eax
1402974e5:	c1 e8 18             	shr    $0x18,%eax
1402974e8:	88 43 04             	mov    %al,0x4(%rbx)
1402974eb:	8b c1                	mov    %ecx,%eax
1402974ed:	c1 e8 10             	shr    $0x10,%eax
1402974f0:	88 43 05             	mov    %al,0x5(%rbx)
1402974f3:	0f b6 44 24 34       	movzbl 0x34(%rsp),%eax
1402974f8:	c1 e9 08             	shr    $0x8,%ecx
1402974fb:	88 43 07             	mov    %al,0x7(%rbx)
1402974fe:	88 4b 06             	mov    %cl,0x6(%rbx)
140297501:	48 83 c4 20          	add    $0x20,%rsp
140297505:	5b                   	pop    %rbx
140297506:	c3                   	ret
140297507:	cc                   	int3
140297508:	cc                   	int3
140297509:	cc                   	int3
14029750a:	cc                   	int3
14029750b:	cc                   	int3
14029750c:	cc                   	int3
14029750d:	cc                   	int3
14029750e:	cc                   	int3
14029750f:	cc                   	int3
140297510:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140297515:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14029751a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14029751f:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140297524:	48 8b ea             	mov    %rdx,%rbp
140297527:	48 8d 99 c0 00 00 00 	lea    0xc0(%rcx),%rbx
14029752e:	4c 8b c2             	mov    %rdx,%r8
140297531:	33 f6                	xor    %esi,%esi
140297533:	44 8b 13             	mov    (%rbx),%r10d
140297536:	45 85 d2             	test   %r10d,%r10d
140297539:	75 04                	jne    0x14029753f
14029753b:	33 c0                	xor    %eax,%eax
14029753d:	eb 4d                	jmp    0x14029758c
14029753f:	33 ff                	xor    %edi,%edi
140297541:	41 bb 01 00 01 00    	mov    $0x10001,%r11d
140297547:	44 8d 4f 01          	lea    0x1(%rdi),%r9d
14029754b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140297550:	41 8b c3             	mov    %r11d,%eax
140297553:	99                   	cltd
140297554:	41 f7 fa             	idiv   %r10d
140297557:	44 2b da             	sub    %edx,%r11d
14029755a:	8b ca                	mov    %edx,%ecx
14029755c:	41 8b c3             	mov    %r11d,%eax
14029755f:	99                   	cltd
140297560:	41 f7 fa             	idiv   %r10d
140297563:	85 c9                	test   %ecx,%ecx
140297565:	74 17                	je     0x14029757e
140297567:	41 0f af c1          	imul   %r9d,%eax
14029756b:	45 8b da             	mov    %r10d,%r11d
14029756e:	44 8b d1             	mov    %ecx,%r10d
140297571:	41 8b c9             	mov    %r9d,%ecx
140297574:	44 8b cf             	mov    %edi,%r9d
140297577:	8b f9                	mov    %ecx,%edi
140297579:	44 2b c8             	sub    %eax,%r9d
14029757c:	eb d2                	jmp    0x140297550
14029757e:	45 85 c9             	test   %r9d,%r9d
140297581:	41 8d 81 01 00 01 00 	lea    0x10001(%r9),%eax
140297588:	41 0f 49 c1          	cmovns %r9d,%eax
14029758c:	41 89 00             	mov    %eax,(%r8)
14029758f:	8b 43 08             	mov    0x8(%rbx),%eax
140297592:	f7 d8                	neg    %eax
140297594:	0f b7 c0             	movzwl %ax,%eax
140297597:	41 89 40 04          	mov    %eax,0x4(%r8)
14029759b:	8b 43 04             	mov    0x4(%rbx),%eax
14029759e:	f7 d8                	neg    %eax
1402975a0:	0f b7 c0             	movzwl %ax,%eax
1402975a3:	41 89 40 08          	mov    %eax,0x8(%r8)
1402975a7:	44 8b 53 0c          	mov    0xc(%rbx),%r10d
1402975ab:	45 85 d2             	test   %r10d,%r10d
1402975ae:	75 04                	jne    0x1402975b4
1402975b0:	33 c0                	xor    %eax,%eax
1402975b2:	eb 48                	jmp    0x1402975fc
1402975b4:	33 ff                	xor    %edi,%edi
1402975b6:	41 bb 01 00 01 00    	mov    $0x10001,%r11d
1402975bc:	44 8d 4f 01          	lea    0x1(%rdi),%r9d
1402975c0:	41 8b c3             	mov    %r11d,%eax
1402975c3:	99                   	cltd
1402975c4:	41 f7 fa             	idiv   %r10d
1402975c7:	44 2b da             	sub    %edx,%r11d
1402975ca:	8b ca                	mov    %edx,%ecx
1402975cc:	41 8b c3             	mov    %r11d,%eax
1402975cf:	99                   	cltd
1402975d0:	41 f7 fa             	idiv   %r10d
1402975d3:	85 c9                	test   %ecx,%ecx
1402975d5:	74 17                	je     0x1402975ee
1402975d7:	41 0f af c1          	imul   %r9d,%eax
1402975db:	45 8b da             	mov    %r10d,%r11d
1402975de:	44 8b d1             	mov    %ecx,%r10d
1402975e1:	41 8b c9             	mov    %r9d,%ecx
1402975e4:	44 8b cf             	mov    %edi,%r9d
1402975e7:	8b f9                	mov    %ecx,%edi
1402975e9:	44 2b c8             	sub    %eax,%r9d
1402975ec:	eb d2                	jmp    0x1402975c0
1402975ee:	45 85 c9             	test   %r9d,%r9d
1402975f1:	41 8d 81 01 00 01 00 	lea    0x10001(%r9),%eax
1402975f8:	41 0f 49 c1          	cmovns %r9d,%eax
1402975fc:	41 89 40 0c          	mov    %eax,0xc(%r8)
140297600:	83 fe 08             	cmp    $0x8,%esi
140297603:	74 21                	je     0x140297626
140297605:	8b 43 f8             	mov    -0x8(%rbx),%eax
140297608:	48 83 eb 18          	sub    $0x18,%rbx
14029760c:	41 89 40 10          	mov    %eax,0x10(%r8)
140297610:	ff c6                	inc    %esi
140297612:	8b 43 14             	mov    0x14(%rbx),%eax
140297615:	41 89 40 14          	mov    %eax,0x14(%r8)
140297619:	49 83 c0 18          	add    $0x18,%r8
14029761d:	83 fe 09             	cmp    $0x9,%esi
140297620:	0f 8c 0d ff ff ff    	jl     0x140297533
140297626:	8b 4d 04             	mov    0x4(%rbp),%ecx
140297629:	8b 45 08             	mov    0x8(%rbp),%eax
14029762c:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140297631:	48 8b 74 24 18       	mov    0x18(%rsp),%rsi
140297636:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
14029763b:	89 45 04             	mov    %eax,0x4(%rbp)
14029763e:	8b 85 c8 00 00 00    	mov    0xc8(%rbp),%eax
140297644:	89 4d 08             	mov    %ecx,0x8(%rbp)
140297647:	8b 8d c4 00 00 00    	mov    0xc4(%rbp),%ecx
14029764d:	89 85 c4 00 00 00    	mov    %eax,0xc4(%rbp)
140297653:	89 8d c8 00 00 00    	mov    %ecx,0xc8(%rbp)
140297659:	48 8b 6c 24 10       	mov    0x10(%rsp),%rbp
14029765e:	c3                   	ret
14029765f:	cc                   	int3
140297660:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140297665:	44 0f b6 01          	movzbl (%rcx),%r8d
140297669:	4c 8d 52 08          	lea    0x8(%rdx),%r10
14029766d:	4c 8b c9             	mov    %rcx,%r9
140297670:	41 c1 e0 08          	shl    $0x8,%r8d
140297674:	44 89 02             	mov    %r8d,(%rdx)
140297677:	0f b6 41 01          	movzbl 0x1(%rcx),%eax
14029767b:	41 0b c0             	or     %r8d,%eax
14029767e:	89 02                	mov    %eax,(%rdx)
140297680:	44 0f b6 41 02       	movzbl 0x2(%rcx),%r8d
140297685:	41 c1 e0 08          	shl    $0x8,%r8d
140297689:	44 89 42 04          	mov    %r8d,0x4(%rdx)
14029768d:	0f b6 41 03          	movzbl 0x3(%rcx),%eax
140297691:	41 0b c0             	or     %r8d,%eax
140297694:	89 42 04             	mov    %eax,0x4(%rdx)
140297697:	0f b6 49 04          	movzbl 0x4(%rcx),%ecx
14029769b:	c1 e1 08             	shl    $0x8,%ecx
14029769e:	41 89 0a             	mov    %ecx,(%r10)
1402976a1:	41 0f b6 41 05       	movzbl 0x5(%r9),%eax
1402976a6:	0b c1                	or     %ecx,%eax
1402976a8:	41 89 02             	mov    %eax,(%r10)
1402976ab:	41 0f b6 49 06       	movzbl 0x6(%r9),%ecx
1402976b0:	c1 e1 08             	shl    $0x8,%ecx
1402976b3:	89 4a 0c             	mov    %ecx,0xc(%rdx)
1402976b6:	41 0f b6 41 07       	movzbl 0x7(%r9),%eax
1402976bb:	0b c1                	or     %ecx,%eax
1402976bd:	89 42 0c             	mov    %eax,0xc(%rdx)
1402976c0:	41 0f b6 49 08       	movzbl 0x8(%r9),%ecx
1402976c5:	c1 e1 08             	shl    $0x8,%ecx
1402976c8:	89 4a 10             	mov    %ecx,0x10(%rdx)
1402976cb:	41 0f b6 41 09       	movzbl 0x9(%r9),%eax
1402976d0:	0b c1                	or     %ecx,%eax
1402976d2:	89 42 10             	mov    %eax,0x10(%rdx)
1402976d5:	41 0f b6 49 0a       	movzbl 0xa(%r9),%ecx
1402976da:	c1 e1 08             	shl    $0x8,%ecx
1402976dd:	89 4a 14             	mov    %ecx,0x14(%rdx)
1402976e0:	41 0f b6 41 0b       	movzbl 0xb(%r9),%eax
1402976e5:	0b c1                	or     %ecx,%eax
1402976e7:	89 42 14             	mov    %eax,0x14(%rdx)
1402976ea:	41 0f b6 49 0c       	movzbl 0xc(%r9),%ecx
1402976ef:	c1 e1 08             	shl    $0x8,%ecx
1402976f2:	89 4a 18             	mov    %ecx,0x18(%rdx)
1402976f5:	41 0f b6 41 0d       	movzbl 0xd(%r9),%eax
1402976fa:	0b c1                	or     %ecx,%eax
1402976fc:	89 42 18             	mov    %eax,0x18(%rdx)
1402976ff:	41 0f b6 49 0e       	movzbl 0xe(%r9),%ecx
140297704:	c1 e1 08             	shl    $0x8,%ecx
140297707:	89 4a 1c             	mov    %ecx,0x1c(%rdx)
14029770a:	41 0f b6 41 0f       	movzbl 0xf(%r9),%eax
14029770f:	0b c1                	or     %ecx,%eax
140297711:	89 42 1c             	mov    %eax,0x1c(%rdx)
140297714:	33 db                	xor    %ebx,%ebx
140297716:	48 8d 42 20          	lea    0x20(%rdx),%rax
14029771a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140297720:	45 8b 02             	mov    (%r10),%r8d
140297723:	41 8b d0             	mov    %r8d,%edx
140297726:	45 8b 5a fc          	mov    -0x4(%r10),%r11d
14029772a:	41 8b cb             	mov    %r11d,%ecx
14029772d:	c1 e1 09             	shl    $0x9,%ecx
140297730:	c1 ea 07             	shr    $0x7,%edx
140297733:	0b d1                	or     %ecx,%edx
140297735:	41 c1 e0 09          	shl    $0x9,%r8d
140297739:	0f b7 ca             	movzwl %dx,%ecx
14029773c:	89 08                	mov    %ecx,(%rax)
14029773e:	45 8b 4a 04          	mov    0x4(%r10),%r9d
140297742:	41 8b c9             	mov    %r9d,%ecx
140297745:	c1 e9 07             	shr    $0x7,%ecx
140297748:	41 0b c8             	or     %r8d,%ecx
14029774b:	41 c1 e1 09          	shl    $0x9,%r9d
14029774f:	0f b7 c9             	movzwl %cx,%ecx
140297752:	89 48 04             	mov    %ecx,0x4(%rax)
140297755:	41 8b 52 08          	mov    0x8(%r10),%edx
140297759:	8b ca                	mov    %edx,%ecx
14029775b:	c1 e9 07             	shr    $0x7,%ecx
14029775e:	44 0b c9             	or     %ecx,%r9d
140297761:	c1 e2 09             	shl    $0x9,%edx
140297764:	41 0f b7 c9          	movzwl %r9w,%ecx
140297768:	89 48 08             	mov    %ecx,0x8(%rax)
14029776b:	45 8b 42 0c          	mov    0xc(%r10),%r8d
14029776f:	41 8b c8             	mov    %r8d,%ecx
140297772:	c1 e9 07             	shr    $0x7,%ecx
140297775:	0b ca                	or     %edx,%ecx
140297777:	41 c1 e0 09          	shl    $0x9,%r8d
14029777b:	0f b7 c9             	movzwl %cx,%ecx
14029777e:	89 48 0c             	mov    %ecx,0xc(%rax)
140297781:	41 8b 52 10          	mov    0x10(%r10),%edx
140297785:	8b ca                	mov    %edx,%ecx
140297787:	c1 e9 07             	shr    $0x7,%ecx
14029778a:	44 0b c1             	or     %ecx,%r8d
14029778d:	c1 e2 09             	shl    $0x9,%edx
140297790:	41 0f b7 c8          	movzwl %r8w,%ecx
140297794:	89 48 10             	mov    %ecx,0x10(%rax)
140297797:	45 8b 42 14          	mov    0x14(%r10),%r8d
14029779b:	41 8b c8             	mov    %r8d,%ecx
14029779e:	c1 e9 07             	shr    $0x7,%ecx
1402977a1:	0b ca                	or     %edx,%ecx
1402977a3:	0f b7 c9             	movzwl %cx,%ecx
1402977a6:	89 48 14             	mov    %ecx,0x14(%rax)
1402977a9:	83 fb 05             	cmp    $0x5,%ebx
1402977ac:	7d 3a                	jge    0x1402977e8
1402977ae:	41 8b 52 f8          	mov    -0x8(%r10),%edx
1402977b2:	ff c3                	inc    %ebx
1402977b4:	8b ca                	mov    %edx,%ecx
1402977b6:	41 c1 e0 09          	shl    $0x9,%r8d
1402977ba:	c1 e9 07             	shr    $0x7,%ecx
1402977bd:	49 83 c2 20          	add    $0x20,%r10
1402977c1:	44 0b c1             	or     %ecx,%r8d
1402977c4:	c1 e2 09             	shl    $0x9,%edx
1402977c7:	41 c1 eb 07          	shr    $0x7,%r11d
1402977cb:	41 0f b7 c8          	movzwl %r8w,%ecx
1402977cf:	41 0b d3             	or     %r11d,%edx
1402977d2:	89 48 18             	mov    %ecx,0x18(%rax)
1402977d5:	0f b7 ca             	movzwl %dx,%ecx
1402977d8:	89 48 1c             	mov    %ecx,0x1c(%rax)
1402977db:	48 83 c0 20          	add    $0x20,%rax
1402977df:	83 fb 06             	cmp    $0x6,%ebx
1402977e2:	0f 8c 38 ff ff ff    	jl     0x140297720
1402977e8:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
1402977ed:	c3                   	ret
1402977ee:	cc                   	int3
1402977ef:	cc                   	int3
1402977f0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1402977f5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1402977fa:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
1402977ff:	56                   	push   %rsi
140297800:	57                   	push   %rdi
140297801:	41 54                	push   %r12
140297803:	41 56                	push   %r14
140297805:	41 57                	push   %r15
140297807:	b8 40 00 00 00       	mov    $0x40,%eax
14029780c:	e8 cf 2d 06 00       	call   0x1402fa5e0
140297811:	48 2b e0             	sub    %rax,%rsp
140297814:	48 8b 84 24 90 00 00 	mov    0x90(%rsp),%rax
14029781b:	00
14029781c:	48 8b da             	mov    %rdx,%rbx
14029781f:	44 0f b6 78 01       	movzbl 0x1(%rax),%r15d
140297824:	48 8b e9             	mov    %rcx,%rbp
140297827:	44 0f b6 70 04       	movzbl 0x4(%rax),%r14d
14029782c:	48 8d 48 01          	lea    0x1(%rax),%rcx
140297830:	41 c1 e6 18          	shl    $0x18,%r14d
140297834:	4d 8b d1             	mov    %r9,%r10
140297837:	0f b6 10             	movzbl (%rax),%edx
14029783a:	0f b6 41 01          	movzbl 0x1(%rcx),%eax
14029783e:	c1 e0 08             	shl    $0x8,%eax
140297841:	c1 e2 08             	shl    $0x8,%edx
140297844:	44 0b fa             	or     %edx,%r15d
140297847:	41 c1 e7 10          	shl    $0x10,%r15d
14029784b:	44 0b f8             	or     %eax,%r15d
14029784e:	0f b6 41 02          	movzbl 0x2(%rcx),%eax
140297852:	44 0b f8             	or     %eax,%r15d
140297855:	83 bc 24 98 00 00 00 	cmpl   $0x0,0x98(%rsp)
14029785c:	00
14029785d:	0f 84 12 02 00 00    	je     0x140297a75
140297863:	0f b6 41 04          	movzbl 0x4(%rcx),%eax
140297867:	48 8d 79 06          	lea    0x6(%rcx),%rdi
14029786b:	c1 e0 10             	shl    $0x10,%eax
14029786e:	41 8d 70 f8          	lea    -0x8(%r8),%esi
140297872:	44 0b f0             	or     %eax,%r14d
140297875:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
14029787a:	0f b6 41 05          	movzbl 0x5(%rcx),%eax
14029787e:	c1 e0 08             	shl    $0x8,%eax
140297881:	44 0b f0             	or     %eax,%r14d
140297884:	0f b6 07             	movzbl (%rdi),%eax
140297887:	44 0b f0             	or     %eax,%r14d
14029788a:	85 f6                	test   %esi,%esi
14029788c:	0f 88 e4 00 00 00    	js     0x140297976
140297892:	41 8b f8             	mov    %r8d,%edi
140297895:	48 c1 ef 03          	shr    $0x3,%rdi
140297899:	8b c7                	mov    %edi,%eax
14029789b:	f7 d8                	neg    %eax
14029789d:	8d 34 c6             	lea    (%rsi,%rax,8),%esi
1402978a0:	89 b4 24 98 00 00 00 	mov    %esi,0x98(%rsp)
1402978a7:	48 8b b4 24 88 00 00 	mov    0x88(%rsp),%rsi
1402978ae:	00
1402978af:	90                   	nop
1402978b0:	0f b6 55 00          	movzbl 0x0(%rbp),%edx
1402978b4:	0f b6 4d 04          	movzbl 0x4(%rbp),%ecx
1402978b8:	0f b6 45 01          	movzbl 0x1(%rbp),%eax
1402978bc:	c1 e0 10             	shl    $0x10,%eax
1402978bf:	c1 e2 18             	shl    $0x18,%edx
1402978c2:	0b d0                	or     %eax,%edx
1402978c4:	c1 e1 18             	shl    $0x18,%ecx
1402978c7:	0f b6 45 02          	movzbl 0x2(%rbp),%eax
1402978cb:	c1 e0 08             	shl    $0x8,%eax
1402978ce:	0b d0                	or     %eax,%edx
1402978d0:	0f b6 45 03          	movzbl 0x3(%rbp),%eax
1402978d4:	0b d0                	or     %eax,%edx
1402978d6:	0f b6 45 05          	movzbl 0x5(%rbp),%eax
1402978da:	c1 e0 10             	shl    $0x10,%eax
1402978dd:	41 33 d7             	xor    %r15d,%edx
1402978e0:	0b c8                	or     %eax,%ecx
1402978e2:	89 54 24 20          	mov    %edx,0x20(%rsp)