140298572:	41 8b e8             	mov    %r8d,%ebp
140298575:	48 8b f2             	mov    %rdx,%rsi
140298578:	4c 8b f1             	mov    %rcx,%r14
14029857b:	41 8b 1c 24          	mov    (%r12),%ebx
14029857f:	45 85 c0             	test   %r8d,%r8d
140298582:	0f 84 d7 01 00 00    	je     0x14029875f
140298588:	83 bc 24 80 00 00 00 	cmpl   $0x0,0x80(%rsp)
14029858f:	00
140298590:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
140298595:	4c 89 7c 24 58       	mov    %r15,0x58(%rsp)
14029859a:	4c 8b 7c 24 70       	mov    0x70(%rsp),%r15
14029859f:	0f 84 db 00 00 00    	je     0x140298680
1402985a5:	4c 2b f2             	sub    %rdx,%r14
1402985a8:	85 db                	test   %ebx,%ebx
1402985aa:	0f 85 a5 00 00 00    	jne    0x140298655
1402985b0:	41 0f b6 0f          	movzbl (%r15),%ecx
1402985b4:	41 0f b6 47 01       	movzbl 0x1(%r15),%eax
1402985b9:	41 0f b6 57 04       	movzbl 0x4(%r15),%edx
1402985be:	c1 e1 08             	shl    $0x8,%ecx
1402985c1:	0b c8                	or     %eax,%ecx
1402985c3:	c1 e2 18             	shl    $0x18,%edx
1402985c6:	41 0f b6 47 02       	movzbl 0x2(%r15),%eax
1402985cb:	c1 e1 10             	shl    $0x10,%ecx
1402985ce:	c1 e0 08             	shl    $0x8,%eax
1402985d1:	0b c8                	or     %eax,%ecx
1402985d3:	41 0f b6 47 03       	movzbl 0x3(%r15),%eax
1402985d8:	0b c8                	or     %eax,%ecx
1402985da:	41 0f b6 47 05       	movzbl 0x5(%r15),%eax
1402985df:	89 4c 24 70          	mov    %ecx,0x70(%rsp)
1402985e3:	41 0f b6 4f 06       	movzbl 0x6(%r15),%ecx
1402985e8:	c1 e1 08             	shl    $0x8,%ecx
1402985eb:	c1 e0 10             	shl    $0x10,%eax
1402985ee:	0b d0                	or     %eax,%edx
1402985f0:	41 0f b6 47 07       	movzbl 0x7(%r15),%eax
1402985f5:	0b c8                	or     %eax,%ecx
1402985f7:	0b ca                	or     %edx,%ecx
1402985f9:	49 8b d5             	mov    %r13,%rdx
1402985fc:	89 4c 24 74          	mov    %ecx,0x74(%rsp)
140298600:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140298605:	e8 46 f7 ff ff       	call   0x140297d50
14029860a:	8b 4c 24 70          	mov    0x70(%rsp),%ecx
14029860e:	8b c1                	mov    %ecx,%eax
140298610:	c1 e8 18             	shr    $0x18,%eax
140298613:	41 88 07             	mov    %al,(%r15)
140298616:	8b c1                	mov    %ecx,%eax
140298618:	c1 e8 10             	shr    $0x10,%eax
14029861b:	41 88 47 01          	mov    %al,0x1(%r15)
14029861f:	0f b6 44 24 70       	movzbl 0x70(%rsp),%eax
140298624:	41 88 47 03          	mov    %al,0x3(%r15)
140298628:	c1 e9 08             	shr    $0x8,%ecx
14029862b:	41 88 4f 02          	mov    %cl,0x2(%r15)
14029862f:	8b 4c 24 74          	mov    0x74(%rsp),%ecx
140298633:	8b c1                	mov    %ecx,%eax
140298635:	c1 e8 18             	shr    $0x18,%eax
140298638:	41 88 47 04          	mov    %al,0x4(%r15)
14029863c:	8b c1                	mov    %ecx,%eax
14029863e:	c1 e8 10             	shr    $0x10,%eax
140298641:	41 88 47 05          	mov    %al,0x5(%r15)
140298645:	0f b6 44 24 74       	movzbl 0x74(%rsp),%eax
14029864a:	c1 e9 08             	shr    $0x8,%ecx
14029864d:	41 88 47 07          	mov    %al,0x7(%r15)
140298651:	41 88 4f 06          	mov    %cl,0x6(%r15)
140298655:	41 0f b6 04 36       	movzbl (%r14,%rsi,1),%eax
14029865a:	48 63 cb             	movslq %ebx,%rcx
14029865d:	42 32 04 39          	xor    (%rcx,%r15,1),%al
140298661:	88 06                	mov    %al,(%rsi)
140298663:	48 ff c6             	inc    %rsi
140298666:	ff c3                	inc    %ebx
140298668:	42 88 04 39          	mov    %al,(%rcx,%r15,1)
14029866c:	83 e3 07             	and    $0x7,%ebx
14029866f:	83 ed 01             	sub    $0x1,%ebp
140298672:	0f 85 30 ff ff ff    	jne    0x1402985a8
140298678:	e9 d8 00 00 00       	jmp    0x140298755
14029867d:	0f 1f 00             	nopl   (%rax)
140298680:	85 db                	test   %ebx,%ebx
140298682:	0f 85 a5 00 00 00    	jne    0x14029872d
140298688:	41 0f b6 0f          	movzbl (%r15),%ecx
14029868c:	41 0f b6 47 01       	movzbl 0x1(%r15),%eax
140298691:	41 0f b6 57 04       	movzbl 0x4(%r15),%edx
140298696:	c1 e1 08             	shl    $0x8,%ecx
140298699:	0b c8                	or     %eax,%ecx
14029869b:	c1 e2 18             	shl    $0x18,%edx
14029869e:	41 0f b6 47 02       	movzbl 0x2(%r15),%eax
1402986a3:	c1 e1 10             	shl    $0x10,%ecx
1402986a6:	c1 e0 08             	shl    $0x8,%eax
1402986a9:	0b c8                	or     %eax,%ecx
1402986ab:	41 0f b6 47 03       	movzbl 0x3(%r15),%eax
1402986b0:	0b c8                	or     %eax,%ecx
1402986b2:	41 0f b6 47 05       	movzbl 0x5(%r15),%eax
1402986b7:	89 4c 24 70          	mov    %ecx,0x70(%rsp)
1402986bb:	41 0f b6 4f 06       	movzbl 0x6(%r15),%ecx
1402986c0:	c1 e1 08             	shl    $0x8,%ecx
1402986c3:	c1 e0 10             	shl    $0x10,%eax
1402986c6:	0b d0                	or     %eax,%edx
1402986c8:	41 0f b6 47 07       	movzbl 0x7(%r15),%eax
1402986cd:	0b c8                	or     %eax,%ecx
1402986cf:	0b ca                	or     %edx,%ecx
1402986d1:	49 8b d5             	mov    %r13,%rdx
1402986d4:	89 4c 24 74          	mov    %ecx,0x74(%rsp)
1402986d8:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
1402986dd:	e8 6e f6 ff ff       	call   0x140297d50
1402986e2:	8b 4c 24 70          	mov    0x70(%rsp),%ecx
1402986e6:	8b c1                	mov    %ecx,%eax
1402986e8:	c1 e8 18             	shr    $0x18,%eax
1402986eb:	41 88 07             	mov    %al,(%r15)
1402986ee:	8b c1                	mov    %ecx,%eax
1402986f0:	c1 e8 10             	shr    $0x10,%eax
1402986f3:	41 88 47 01          	mov    %al,0x1(%r15)
1402986f7:	0f b6 44 24 70       	movzbl 0x70(%rsp),%eax
1402986fc:	41 88 47 03          	mov    %al,0x3(%r15)
140298700:	c1 e9 08             	shr    $0x8,%ecx
140298703:	41 88 4f 02          	mov    %cl,0x2(%r15)
140298707:	8b 4c 24 74          	mov    0x74(%rsp),%ecx
14029870b:	8b c1                	mov    %ecx,%eax
14029870d:	c1 e8 18             	shr    $0x18,%eax
140298710:	41 88 47 04          	mov    %al,0x4(%r15)
140298714:	8b c1                	mov    %ecx,%eax
140298716:	c1 e8 10             	shr    $0x10,%eax
140298719:	41 88 47 05          	mov    %al,0x5(%r15)
14029871d:	0f b6 44 24 74       	movzbl 0x74(%rsp),%eax
140298722:	c1 e9 08             	shr    $0x8,%ecx
140298725:	41 88 47 07          	mov    %al,0x7(%r15)
140298729:	41 88 4f 06          	mov    %cl,0x6(%r15)
14029872d:	41 0f b6 16          	movzbl (%r14),%edx
140298731:	49 ff c6             	inc    %r14
140298734:	48 63 c3             	movslq %ebx,%rax
140298737:	42 0f b6 0c 38       	movzbl (%rax,%r15,1),%ecx
14029873c:	42 88 14 38          	mov    %dl,(%rax,%r15,1)
140298740:	32 d1                	xor    %cl,%dl
140298742:	88 16                	mov    %dl,(%rsi)
140298744:	48 ff c6             	inc    %rsi
140298747:	ff c3                	inc    %ebx
140298749:	83 e3 07             	and    $0x7,%ebx
14029874c:	83 ed 01             	sub    $0x1,%ebp
14029874f:	0f 85 2b ff ff ff    	jne    0x140298680
140298755:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
14029875a:	4c 8b 7c 24 58       	mov    0x58(%rsp),%r15
14029875f:	41 89 1c 24          	mov    %ebx,(%r12)
140298763:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140298768:	48 83 c4 20          	add    $0x20,%rsp
14029876c:	41 5e                	pop    %r14
14029876e:	41 5d                	pop    %r13
140298770:	41 5c                	pop    %r12
140298772:	5e                   	pop    %rsi
140298773:	5d                   	pop    %rbp
140298774:	c3                   	ret
140298775:	cc                   	int3
140298776:	cc                   	int3
140298777:	cc                   	int3
140298778:	cc                   	int3
140298779:	cc                   	int3
14029877a:	cc                   	int3
14029877b:	cc                   	int3
14029877c:	cc                   	int3
14029877d:	cc                   	int3
14029877e:	cc                   	int3
14029877f:	cc                   	int3
140298780:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140298785:	55                   	push   %rbp
140298786:	56                   	push   %rsi
140298787:	57                   	push   %rdi
140298788:	41 54                	push   %r12
14029878a:	41 55                	push   %r13
14029878c:	41 56                	push   %r14
14029878e:	41 57                	push   %r15
140298790:	48 8b ec             	mov    %rsp,%rbp
140298793:	b8 50 00 00 00       	mov    $0x50,%eax
140298798:	e8 43 1e 06 00       	call   0x1402fa5e0
14029879d:	48 2b e0             	sub    %rax,%rsp
1402987a0:	48 8b 05 d9 f9 16 00 	mov    0x16f9d9(%rip),%rax        # 0x140408180
1402987a7:	48 33 c4             	xor    %rsp,%rax
1402987aa:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
1402987ae:	4c 8b 7d 60          	mov    0x60(%rbp),%r15
1402987b2:	4c 8b e2             	mov    %rdx,%r12
1402987b5:	4c 8b 6d 68          	mov    0x68(%rbp),%r13
1402987b9:	48 8b f9             	mov    %rcx,%rdi
1402987bc:	45 33 f6             	xor    %r14d,%r14d
1402987bf:	4c 89 4d d8          	mov    %r9,-0x28(%rbp)
1402987c3:	41 8b f0             	mov    %r8d,%esi
1402987c6:	4c 89 6d e0          	mov    %r13,-0x20(%rbp)
1402987ca:	45 0f b6 17          	movzbl (%r15),%r10d
1402987ce:	41 0f b6 47 01       	movzbl 0x1(%r15),%eax
1402987d3:	41 0f b6 57 04       	movzbl 0x4(%r15),%edx
1402987d8:	41 0f b6 4f 06       	movzbl 0x6(%r15),%ecx
1402987dd:	41 8b 5d 00          	mov    0x0(%r13),%ebx
1402987e1:	c1 e0 10             	shl    $0x10,%eax
1402987e4:	41 c1 e2 18          	shl    $0x18,%r10d
1402987e8:	44 0b d0             	or     %eax,%r10d
1402987eb:	c1 e2 18             	shl    $0x18,%edx
1402987ee:	41 0f b6 47 02       	movzbl 0x2(%r15),%eax
1402987f3:	c1 e0 08             	shl    $0x8,%eax
1402987f6:	44 0b d0             	or     %eax,%r10d
1402987f9:	c1 e1 08             	shl    $0x8,%ecx
1402987fc:	41 0f b6 47 03       	movzbl 0x3(%r15),%eax
140298801:	44 0b d0             	or     %eax,%r10d
140298804:	41 0f b6 47 05       	movzbl 0x5(%r15),%eax
140298809:	c1 e0 10             	shl    $0x10,%eax
14029880c:	0b d0                	or     %eax,%edx
14029880e:	44 89 55 d0          	mov    %r10d,-0x30(%rbp)
140298812:	41 0f b6 47 07       	movzbl 0x7(%r15),%eax
140298817:	0b c8                	or     %eax,%ecx
140298819:	44 88 55 eb          	mov    %r10b,-0x15(%rbp)
14029881d:	0b d1                	or     %ecx,%edx
14029881f:	41 8b c2             	mov    %r10d,%eax
140298822:	c1 e8 18             	shr    $0x18,%eax
140298825:	88 45 e8             	mov    %al,-0x18(%rbp)
140298828:	41 8b c2             	mov    %r10d,%eax
14029882b:	c1 e8 10             	shr    $0x10,%eax
14029882e:	88 45 e9             	mov    %al,-0x17(%rbp)
140298831:	41 8b c2             	mov    %r10d,%eax
140298834:	c1 e8 08             	shr    $0x8,%eax
140298837:	88 45 ea             	mov    %al,-0x16(%rbp)
14029883a:	8b c2                	mov    %edx,%eax
14029883c:	c1 e8 18             	shr    $0x18,%eax
14029883f:	88 45 ec             	mov    %al,-0x14(%rbp)
140298842:	8b c2                	mov    %edx,%eax
140298844:	c1 e8 10             	shr    $0x10,%eax
140298847:	88 45 ed             	mov    %al,-0x13(%rbp)
14029884a:	8b c2                	mov    %edx,%eax
14029884c:	c1 e8 08             	shr    $0x8,%eax
14029884f:	89 55 d4             	mov    %edx,-0x2c(%rbp)
140298852:	88 45 ee             	mov    %al,-0x12(%rbp)
140298855:	88 55 ef             	mov    %dl,-0x11(%rbp)
140298858:	45 85 c0             	test   %r8d,%r8d
14029885b:	0f 84 cc 00 00 00    	je     0x14029892d
140298861:	4c 8b 6d d8          	mov    -0x28(%rbp),%r13
140298865:	4c 2b e7             	sub    %rdi,%r12
140298868:	44 0f b6 c2          	movzbl %dl,%r8d
14029886c:	45 0f b6 ca          	movzbl %r10b,%r9d
140298870:	ff ce                	dec    %esi
140298872:	85 db                	test   %ebx,%ebx
140298874:	75 58                	jne    0x1402988ce
140298876:	49 8b d5             	mov    %r13,%rdx
140298879:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
14029887d:	e8 ce f4 ff ff       	call   0x140297d50
140298882:	44 8b 55 d0          	mov    -0x30(%rbp),%r10d
140298886:	41 8b c2             	mov    %r10d,%eax
140298889:	8b 55 d4             	mov    -0x2c(%rbp),%edx
14029888c:	45 0f b6 ca          	movzbl %r10b,%r9d
140298890:	c1 e8 18             	shr    $0x18,%eax
140298893:	44 0f b6 c2          	movzbl %dl,%r8d
140298897:	88 45 e8             	mov    %al,-0x18(%rbp)
14029889a:	41 8b c2             	mov    %r10d,%eax
14029889d:	c1 e8 10             	shr    $0x10,%eax
1402988a0:	88 45 e9             	mov    %al,-0x17(%rbp)
1402988a3:	41 8b c2             	mov    %r10d,%eax
1402988a6:	c1 e8 08             	shr    $0x8,%eax
1402988a9:	88 45 ea             	mov    %al,-0x16(%rbp)
1402988ac:	8b c2                	mov    %edx,%eax
1402988ae:	c1 e8 18             	shr    $0x18,%eax
1402988b1:	88 45 ec             	mov    %al,-0x14(%rbp)
1402988b4:	8b c2                	mov    %edx,%eax
1402988b6:	c1 e8 10             	shr    $0x10,%eax
1402988b9:	88 45 ed             	mov    %al,-0x13(%rbp)
1402988bc:	8b c2                	mov    %edx,%eax
1402988be:	c1 e8 08             	shr    $0x8,%eax
1402988c1:	88 45 ee             	mov    %al,-0x12(%rbp)
1402988c4:	41 ff c6             	inc    %r14d
1402988c7:	44 88 55 eb          	mov    %r10b,-0x15(%rbp)
1402988cb:	88 55 ef             	mov    %dl,-0x11(%rbp)
1402988ce:	48 63 c3             	movslq %ebx,%rax
1402988d1:	0f b6 4c 05 e8       	movzbl -0x18(%rbp,%rax,1),%ecx
1402988d6:	32 0f                	xor    (%rdi),%cl
1402988d8:	41 88 0c 3c          	mov    %cl,(%r12,%rdi,1)
1402988dc:	48 ff c7             	inc    %rdi
1402988df:	ff c3                	inc    %ebx
1402988e1:	83 e3 07             	and    $0x7,%ebx
1402988e4:	85 f6                	test   %esi,%esi
1402988e6:	75 88                	jne    0x140298870
1402988e8:	4c 8b 6d e0          	mov    -0x20(%rbp),%r13
1402988ec:	45 85 f6             	test   %r14d,%r14d
1402988ef:	74 3c                	je     0x14029892d
1402988f1:	41 8b c2             	mov    %r10d,%eax
1402988f4:	45 88 4f 03          	mov    %r9b,0x3(%r15)
1402988f8:	c1 e8 18             	shr    $0x18,%eax
1402988fb:	41 88 07             	mov    %al,(%r15)
1402988fe:	41 8b c2             	mov    %r10d,%eax
140298901:	c1 e8 10             	shr    $0x10,%eax
140298904:	41 88 47 01          	mov    %al,0x1(%r15)
140298908:	8b c2                	mov    %edx,%eax
14029890a:	c1 e8 18             	shr    $0x18,%eax
14029890d:	41 88 47 04          	mov    %al,0x4(%r15)
140298911:	8b c2                	mov    %edx,%eax
140298913:	c1 e8 10             	shr    $0x10,%eax
140298916:	41 c1 ea 08          	shr    $0x8,%r10d
14029891a:	c1 ea 08             	shr    $0x8,%edx
14029891d:	41 88 57 06          	mov    %dl,0x6(%r15)
140298921:	45 88 57 02          	mov    %r10b,0x2(%r15)
140298925:	41 88 47 05          	mov    %al,0x5(%r15)
140298929:	45 88 47 07          	mov    %r8b,0x7(%r15)
14029892d:	41 89 5d 00          	mov    %ebx,0x0(%r13)
140298931:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
140298935:	48 33 cc             	xor    %rsp,%rcx
140298938:	e8 03 1d 06 00       	call   0x1402fa640
14029893d:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
140298944:	00
140298945:	48 83 c4 50          	add    $0x50,%rsp
140298949:	41 5f                	pop    %r15
14029894b:	41 5e                	pop    %r14
14029894d:	41 5d                	pop    %r13
14029894f:	41 5c                	pop    %r12
140298951:	5f                   	pop    %rdi
140298952:	5e                   	pop    %rsi
140298953:	5d                   	pop    %rbp
140298954:	c3                   	ret
140298955:	cc                   	int3
140298956:	cc                   	int3
140298957:	cc                   	int3
140298958:	cc                   	int3
140298959:	cc                   	int3
14029895a:	cc                   	int3
14029895b:	cc                   	int3
14029895c:	cc                   	int3
14029895d:	cc                   	int3
14029895e:	cc                   	int3
14029895f:	cc                   	int3
140298960:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140298965:	48 89 7c 24 10       	mov    %rdi,0x10(%rsp)
14029896a:	bb 80 00 00 00       	mov    $0x80,%ebx
14029896f:	c6 01 00             	movb   $0x0,(%rcx)
140298972:	3b d3                	cmp    %ebx,%edx
140298974:	8b c3                	mov    %ebx,%eax
140298976:	4c 8b d1             	mov    %rcx,%r10
140298979:	49 8b f8             	mov    %r8,%rdi
14029897c:	0f 4e c2             	cmovle %edx,%eax
14029897f:	b9 00 04 00 00       	mov    $0x400,%ecx
140298984:	45 85 c9             	test   %r9d,%r9d
140298987:	48 98                	cltq
140298989:	44 8b d9             	mov    %ecx,%r11d
14029898c:	45 0f 4f d9          	cmovg  %r9d,%r11d
140298990:	44 3b d9             	cmp    %ecx,%r11d
140298993:	44 0f 4f d9          	cmovg  %ecx,%r11d
140298997:	48 85 c0             	test   %rax,%rax
14029899a:	7e 24                	jle    0x1402989c0
14029899c:	49 8b d2             	mov    %r10,%rdx
14029899f:	49 2b fa             	sub    %r10,%rdi
1402989a2:	4c 8b c0             	mov    %rax,%r8
1402989a5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
1402989ac:	00 00 00 00
1402989b0:	0f b6 0c 17          	movzbl (%rdi,%rdx,1),%ecx
1402989b4:	88 0a                	mov    %cl,(%rdx)
1402989b6:	48 8d 52 01          	lea    0x1(%rdx),%rdx
1402989ba:	49 83 e8 01          	sub    $0x1,%r8
1402989be:	75 f0                	jne    0x1402989b0
1402989c0:	42 0f b6 54 10 ff    	movzbl -0x1(%rax,%r10,1),%edx
1402989c6:	48 8d 3d 03 4f 0f 00 	lea    0xf4f03(%rip),%rdi        # 0x14038d8d0
1402989cd:	48 3b c3             	cmp    %rbx,%rax
1402989d0:	7d 2b                	jge    0x1402989fd
1402989d2:	4d 8b c2             	mov    %r10,%r8
1402989d5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)