1401955e1:	41 89 00             	mov    %eax,(%r8)
1401955e4:	e9 c3 00 00 00       	jmp    0x1401956ac
1401955e9:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
1401955ef:	0f 95 c0             	setne  %al
1401955f2:	c1 e0 1f             	shl    $0x1f,%eax
1401955f5:	0d 00 00 80 7f       	or     $0x7f800000,%eax
1401955fa:	eb e5                	jmp    0x1401955e1
1401955fc:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
140195602:	0f 95 c0             	setne  %al
140195605:	c1 e0 1f             	shl    $0x1f,%eax
140195608:	eb d7                	jmp    0x1401955e1
14019560a:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14019560f:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
140195614:	49 8b c9             	mov    %r9,%rcx
140195617:	88 44 24 28          	mov    %al,0x28(%rsp)
14019561b:	e8 84 25 00 00       	call   0x140197ba4
140195620:	e9 89 00 00 00       	jmp    0x1401956ae
140195625:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14019562a:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
14019562f:	49 8b c9             	mov    %r9,%rcx
140195632:	88 44 24 28          	mov    %al,0x28(%rsp)
140195636:	e8 a5 07 00 00       	call   0x140195de0
14019563b:	eb 71                	jmp    0x1401956ae
14019563d:	33 c0                	xor    %eax,%eax
14019563f:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
140195645:	0f 95 c0             	setne  %al
140195648:	c1 e0 1f             	shl    $0x1f,%eax
14019564b:	0d 01 00 80 7f       	or     $0x7f800001,%eax
140195650:	eb 8f                	jmp    0x1401955e1
140195652:	83 e9 06             	sub    $0x6,%ecx
140195655:	74 4e                	je     0x1401956a5
140195657:	83 e9 01             	sub    $0x1,%ecx
14019565a:	74 3d                	je     0x140195699
14019565c:	83 e9 01             	sub    $0x1,%ecx
14019565f:	74 20                	je     0x140195681
140195661:	83 f9 01             	cmp    $0x1,%ecx
140195664:	75 38                	jne    0x14019569e
140195666:	33 c0                	xor    %eax,%eax
140195668:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
14019566e:	0f 95 c0             	setne  %al
140195671:	c1 e0 1f             	shl    $0x1f,%eax
140195674:	0d 00 00 80 7f       	or     $0x7f800000,%eax
140195679:	41 89 00             	mov    %eax,(%r8)
14019567c:	8d 41 02             	lea    0x2(%rcx),%eax
14019567f:	eb 2d                	jmp    0x1401956ae
140195681:	33 c0                	xor    %eax,%eax
140195683:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
140195689:	0f 95 c0             	setne  %al
14019568c:	c1 e0 1f             	shl    $0x1f,%eax
14019568f:	41 89 00             	mov    %eax,(%r8)
140195692:	b8 02 00 00 00       	mov    $0x2,%eax
140195697:	eb 15                	jmp    0x1401956ae
140195699:	33 c0                	xor    %eax,%eax
14019569b:	41 89 00             	mov    %eax,(%r8)
14019569e:	b8 01 00 00 00       	mov    $0x1,%eax
1401956a3:	eb 09                	jmp    0x1401956ae
1401956a5:	41 c7 00 00 00 c0 ff 	movl   $0xffc00000,(%r8)
1401956ac:	33 c0                	xor    %eax,%eax
1401956ae:	48 83 c4 38          	add    $0x38,%rsp
1401956b2:	c3                   	ret
1401956b3:	cc                   	int3
1401956b4:	48 83 ec 38          	sub    $0x38,%rsp
1401956b8:	4c 8b ca             	mov    %rdx,%r9
1401956bb:	83 f9 05             	cmp    $0x5,%ecx
1401956be:	0f 8f a4 00 00 00    	jg     0x140195768
1401956c4:	0f 84 90 00 00 00    	je     0x14019575a
1401956ca:	33 c0                	xor    %eax,%eax
1401956cc:	85 c9                	test   %ecx,%ecx
1401956ce:	74 71                	je     0x140195741
1401956d0:	83 e9 01             	sub    $0x1,%ecx
1401956d3:	74 50                	je     0x140195725
1401956d5:	83 e9 01             	sub    $0x1,%ecx
1401956d8:	74 39                	je     0x140195713
1401956da:	83 e9 01             	sub    $0x1,%ecx
1401956dd:	74 28                	je     0x140195707
1401956df:	83 f9 01             	cmp    $0x1,%ecx
1401956e2:	0f 85 d8 00 00 00    	jne    0x1401957c0
1401956e8:	48 b9 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rcx
1401956ef:	ff ff 7f
1401956f2:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
1401956f8:	0f 95 c0             	setne  %al
1401956fb:	48 c1 e0 3f          	shl    $0x3f,%rax
1401956ff:	48 0b c1             	or     %rcx,%rax
140195702:	e9 ca 00 00 00       	jmp    0x1401957d1
140195707:	48 b9 00 00 00 00 00 	movabs $0x7ff0000000000000,%rcx
14019570e:	00 f0 7f
140195711:	eb df                	jmp    0x1401956f2
140195713:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
140195719:	0f 95 c0             	setne  %al
14019571c:	48 c1 e0 3f          	shl    $0x3f,%rax
140195720:	e9 ac 00 00 00       	jmp    0x1401957d1
140195725:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14019572a:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
14019572f:	49 8b c9             	mov    %r9,%rcx
140195732:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
140195737:	e8 68 24 00 00       	call   0x140197ba4
14019573c:	e9 95 00 00 00       	jmp    0x1401957d6
140195741:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140195746:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
14019574b:	49 8b c9             	mov    %r9,%rcx
14019574e:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
140195753:	e8 88 06 00 00       	call   0x140195de0
140195758:	eb 7c                	jmp    0x1401957d6
14019575a:	33 c0                	xor    %eax,%eax
14019575c:	48 b9 01 00 00 00 00 	movabs $0x7ff0000000000001,%rcx
140195763:	00 f0 7f
140195766:	eb 8a                	jmp    0x1401956f2
140195768:	83 e9 06             	sub    $0x6,%ecx
14019576b:	74 5a                	je     0x1401957c7
14019576d:	83 e9 01             	sub    $0x1,%ecx
140195770:	74 49                	je     0x1401957bb
140195772:	83 e9 01             	sub    $0x1,%ecx
140195775:	74 2b                	je     0x1401957a2
140195777:	83 f9 01             	cmp    $0x1,%ecx
14019577a:	75 44                	jne    0x1401957c0
14019577c:	33 c0                	xor    %eax,%eax
14019577e:	48 b9 00 00 00 00 00 	movabs $0x7ff0000000000000,%rcx
140195785:	00 f0 7f
140195788:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
14019578e:	0f 95 c0             	setne  %al
140195791:	48 c1 e0 3f          	shl    $0x3f,%rax
140195795:	48 0b c1             	or     %rcx,%rax
140195798:	49 89 00             	mov    %rax,(%r8)
14019579b:	b8 03 00 00 00       	mov    $0x3,%eax
1401957a0:	eb 34                	jmp    0x1401957d6
1401957a2:	33 c0                	xor    %eax,%eax
1401957a4:	38 82 08 03 00 00    	cmp    %al,0x308(%rdx)
1401957aa:	0f 95 c0             	setne  %al
1401957ad:	48 c1 e0 3f          	shl    $0x3f,%rax
1401957b1:	49 89 00             	mov    %rax,(%r8)
1401957b4:	b8 02 00 00 00       	mov    $0x2,%eax
1401957b9:	eb 1b                	jmp    0x1401957d6
1401957bb:	33 c0                	xor    %eax,%eax
1401957bd:	49 89 00             	mov    %rax,(%r8)
1401957c0:	b8 01 00 00 00       	mov    $0x1,%eax
1401957c5:	eb 0f                	jmp    0x1401957d6
1401957c7:	48 b8 00 00 00 00 00 	movabs $0xfff8000000000000,%rax
1401957ce:	00 f8 ff
1401957d1:	49 89 00             	mov    %rax,(%r8)
1401957d4:	33 c0                	xor    %eax,%eax
1401957d6:	48 83 c4 38          	add    $0x38,%rsp
1401957da:	c3                   	ret
1401957db:	cc                   	int3
1401957dc:	40 53                	rex push %rbx
1401957de:	48 83 ec 20          	sub    $0x20,%rsp
1401957e2:	48 8b 41 08          	mov    0x8(%rcx),%rax
1401957e6:	48 8b d9             	mov    %rcx,%rbx
1401957e9:	8a 08                	mov    (%rax),%cl
1401957eb:	48 8b 03             	mov    (%rbx),%rax
1401957ee:	48 ff 08             	decq   (%rax)
1401957f1:	48 8b 10             	mov    (%rax),%rdx
1401957f4:	84 c9                	test   %cl,%cl
1401957f6:	74 14                	je     0x14019580c
1401957f8:	38 0a                	cmp    %cl,(%rdx)
1401957fa:	74 10                	je     0x14019580c
1401957fc:	e8 0b a7 ff ff       	call   0x14018ff0c
140195801:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140195807:	e8 58 5d ff ff       	call   0x14018b564
14019580c:	48 8b 43 08          	mov    0x8(%rbx),%rax
140195810:	c6 00 00             	movb   $0x0,(%rax)
140195813:	48 8b 43 10          	mov    0x10(%rbx),%rax
140195817:	48 8b 0b             	mov    (%rbx),%rcx
14019581a:	48 8b 00             	mov    (%rax),%rax
14019581d:	48 89 01             	mov    %rax,(%rcx)
140195820:	b0 01                	mov    $0x1,%al
140195822:	48 83 c4 20          	add    $0x20,%rsp
140195826:	5b                   	pop    %rbx
140195827:	c3                   	ret
140195828:	48 83 ec 38          	sub    $0x38,%rsp
14019582c:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
140195830:	74 08                	je     0x14019583a
140195832:	48 8b 01             	mov    (%rcx),%rax
140195835:	48 83 c4 38          	add    $0x38,%rsp
140195839:	c3                   	ret
14019583a:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140195840:	4c 8d 05 19 cf 08 00 	lea    0x8cf19(%rip),%r8        # 0x140222760
140195847:	41 b9 9f 01 00 00    	mov    $0x19f,%r9d
14019584d:	48 8d 15 7c cf 08 00 	lea    0x8cf7c(%rip),%rdx        # 0x1402227d0
140195854:	48 8d 0d d5 cf 08 00 	lea    0x8cfd5(%rip),%rcx        # 0x140222830
14019585b:	e8 54 5d ff ff       	call   0x14018b5b4
140195860:	cc                   	int3
140195861:	cc                   	int3
140195862:	cc                   	int3
140195863:	cc                   	int3
140195864:	48 83 ec 38          	sub    $0x38,%rsp
140195868:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
14019586c:	75 08                	jne    0x140195876
14019586e:	48 8b 01             	mov    (%rcx),%rax
140195871:	48 83 c4 38          	add    $0x38,%rsp
140195875:	c3                   	ret
140195876:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14019587c:	4c 8d 05 dd ce 08 00 	lea    0x8cedd(%rip),%r8        # 0x140222760
140195883:	41 b9 a5 01 00 00    	mov    $0x1a5,%r9d
140195889:	48 8d 15 c0 cf 08 00 	lea    0x8cfc0(%rip),%rdx        # 0x140222850
140195890:	48 8d 0d 19 d0 08 00 	lea    0x8d019(%rip),%rcx        # 0x1402228b0
140195897:	e8 18 5d ff ff       	call   0x14018b5b4
14019589c:	cc                   	int3
14019589d:	cc                   	int3
14019589e:	cc                   	int3
14019589f:	cc                   	int3
1401958a0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1401958a5:	89 54 24 10          	mov    %edx,0x10(%rsp)
1401958a9:	55                   	push   %rbp
1401958aa:	56                   	push   %rsi
1401958ab:	57                   	push   %rdi
1401958ac:	41 54                	push   %r12
1401958ae:	41 55                	push   %r13
1401958b0:	41 56                	push   %r14
1401958b2:	41 57                	push   %r15
1401958b4:	48 83 ec 30          	sub    $0x30,%rsp
1401958b8:	33 db                	xor    %ebx,%ebx
1401958ba:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1401958bf:	89 5c 24 70          	mov    %ebx,0x70(%rsp)
1401958c3:	45 8a d1             	mov    %r9b,%r10b
1401958c6:	41 8a e8             	mov    %r8b,%bpl
1401958c9:	44 8b da             	mov    %edx,%r11d
1401958cc:	48 8b f9             	mov    %rcx,%rdi
1401958cf:	48 3b c8             	cmp    %rax,%rcx
1401958d2:	76 17                	jbe    0x1401958eb
1401958d4:	48 8b c1             	mov    %rcx,%rax
1401958d7:	48 c1 e8 20          	shr    $0x20,%rax
1401958db:	0f bd c8             	bsr    %eax,%ecx
1401958de:	74 04                	je     0x1401958e4
1401958e0:	ff c1                	inc    %ecx
1401958e2:	eb 02                	jmp    0x1401958e6
1401958e4:	8b cb                	mov    %ebx,%ecx
1401958e6:	83 c1 20             	add    $0x20,%ecx
1401958e9:	eb 0b                	jmp    0x1401958f6
1401958eb:	0f bd c9             	bsr    %ecx,%ecx
1401958ee:	74 04                	je     0x1401958f4
1401958f0:	ff c1                	inc    %ecx
1401958f2:	eb 02                	jmp    0x1401958f6
1401958f4:	8b cb                	mov    %ebx,%ecx
1401958f6:	4c 8b b4 24 90 00 00 	mov    0x90(%rsp),%r14
1401958fd:	00
1401958fe:	41 8b f3             	mov    %r11d,%esi
140195901:	41 8a 56 08          	mov    0x8(%r14),%dl
140195905:	8a c2                	mov    %dl,%al
140195907:	f6 d8                	neg    %al
140195909:	8a c2                	mov    %dl,%al
14019590b:	45 1b ed             	sbb    %r13d,%r13d
14019590e:	41 83 e5 1d          	and    $0x1d,%r13d
140195912:	41 83 c5 18          	add    $0x18,%r13d
140195916:	44 2b e9             	sub    %ecx,%r13d
140195919:	41 2b f5             	sub    %r13d,%esi
14019591c:	f6 d8                	neg    %al
14019591e:	45 1b c0             	sbb    %r8d,%r8d
140195921:	41 81 e0 80 03 00 00 	and    $0x380,%r8d
140195928:	41 83 c0 7f          	add    $0x7f,%r8d
14019592c:	41 3b f0             	cmp    %r8d,%esi
14019592f:	7e 3e                	jle    0x14019596f
140195931:	49 8b 06             	mov    (%r14),%rax
140195934:	84 d2                	test   %dl,%dl
140195936:	74 1c                	je     0x140195954
140195938:	40 84 ed             	test   %bpl,%bpl
14019593b:	48 b9 00 00 00 00 00 	movabs $0x7ff0000000000000,%rcx
140195942:	00 f0 7f
140195945:	0f 95 c3             	setne  %bl
140195948:	48 c1 e3 3f          	shl    $0x3f,%rbx
14019594c:	48 0b d9             	or     %rcx,%rbx
14019594f:	48 89 18             	mov    %rbx,(%rax)
140195952:	eb 11                	jmp    0x140195965
140195954:	40 84 ed             	test   %bpl,%bpl
140195957:	0f 95 c3             	setne  %bl
14019595a:	c1 e3 1f             	shl    $0x1f,%ebx
14019595d:	81 cb 00 00 80 7f    	or     $0x7f800000,%ebx
140195963:	89 18                	mov    %ebx,(%rax)
140195965:	b8 03 00 00 00       	mov    $0x3,%eax
14019596a:	e9 cc 02 00 00       	jmp    0x140195c3b
14019596f:	8a c2                	mov    %dl,%al
140195971:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12
140195978:	ff 0f 00
14019597b:	f6 d8                	neg    %al
14019597d:	1b c9                	sbb    %ecx,%ecx
14019597f:	81 e1 80 fc ff ff    	and    $0xfffffc80,%ecx
140195985:	83 c1 82             	add    $0xffffff82,%ecx
140195988:	3b f1                	cmp    %ecx,%esi
14019598a:	0f 8d 44 01 00 00    	jge    0x140195ad4
140195990:	41 8d 04 30          	lea    (%r8,%rsi,1),%eax
140195994:	41 8b f0             	mov    %r8d,%esi
140195997:	45 8d 4d ff          	lea    -0x1(%r13),%r9d
14019599b:	f7 de                	neg    %esi
14019599d:	44 03 c8             	add    %eax,%r9d
1401959a0:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
1401959a5:	41 8b c9             	mov    %r9d,%ecx
1401959a8:	45 85 c9             	test   %r9d,%r9d
1401959ab:	0f 89 1b 02 00 00    	jns    0x140195bcc
1401959b1:	f7 d9                	neg    %ecx
1401959b3:	89 4c 24 24          	mov    %ecx,0x24(%rsp)
1401959b7:	83 f9 40             	cmp    $0x40,%ecx
1401959ba:	0f 83 e7 00 00 00    	jae    0x140195aa7
1401959c0:	8b c1                	mov    %ecx,%eax
1401959c2:	41 bf 01 00 00 00    	mov    $0x1,%r15d
1401959c8:	48 0f a3 c7          	bt     %rax,%rdi
1401959cc:	41 8b c7             	mov    %r15d,%eax
1401959cf:	ff c9                	dec    %ecx
1401959d1:	0f 92 44 24 70       	setb   0x70(%rsp)
1401959d6:	48 d3 e0             	shl    %cl,%rax
1401959d9:	48 85 c7             	test   %rax,%rdi
1401959dc:	0f 95 c1             	setne  %cl
1401959df:	88 8c 24 90 00 00 00 	mov    %cl,0x90(%rsp)
1401959e6:	45 84 d2             	test   %r10b,%r10b
1401959e9:	74 0b                	je     0x1401959f6
1401959eb:	48 ff c8             	dec    %rax
1401959ee:	44 8a e3             	mov    %bl,%r12b
1401959f1:	48 85 c7             	test   %rax,%rdi
1401959f4:	74 03                	je     0x1401959f9
1401959f6:	45 8a e7             	mov    %r15b,%r12b
1401959f9:	84 c9                	test   %cl,%cl
1401959fb:	75 05                	jne    0x140195a02
1401959fd:	45 84 e4             	test   %r12b,%r12b
140195a00:	74 5b                	je     0x140195a5d
140195a02:	e8 d9 68 01 00       	call   0x1401ac2e0
140195a07:	85 c0                	test   %eax,%eax
140195a09:	74 25                	je     0x140195a30
140195a0b:	3d 00 01 00 00       	cmp    $0x100,%eax
140195a10:	74 16                	je     0x140195a28
140195a12:	44 8b 4c 24 20       	mov    0x20(%rsp),%r9d
140195a17:	44 8b 5c 24 78       	mov    0x78(%rsp),%r11d
140195a1c:	3d 00 02 00 00       	cmp    $0x200,%eax
140195a21:	75 3a                	jne    0x140195a5d
140195a23:	40 8a c5             	mov    %bpl,%al
140195a26:	eb 37                	jmp    0x140195a5f
140195a28:	40 84 ed             	test   %bpl,%bpl
140195a2b:	0f 94 c0             	sete   %al
140195a2e:	eb 17                	jmp    0x140195a47
140195a30:	38 9c 24 90 00 00 00 	cmp    %bl,0x90(%rsp)
140195a37:	74 1a                	je     0x140195a53
140195a39:	45 84 e4             	test   %r12b,%r12b
140195a3c:	75 06                	jne    0x140195a44
140195a3e:	38 5c 24 70          	cmp    %bl,0x70(%rsp)
140195a42:	74 0f                	je     0x140195a53
140195a44:	41 8a c7             	mov    %r15b,%al
140195a47:	44 8b 4c 24 20       	mov    0x20(%rsp),%r9d
140195a4c:	44 8b 5c 24 78       	mov    0x78(%rsp),%r11d
140195a51:	eb 0c                	jmp    0x140195a5f
140195a53:	44 8b 4c 24 20       	mov    0x20(%rsp),%r9d
140195a58:	44 8b 5c 24 78       	mov    0x78(%rsp),%r11d
140195a5d:	8a c3                	mov    %bl,%al
140195a5f:	8b 4c 24 24          	mov    0x24(%rsp),%ecx
140195a63:	48 d3 ef             	shr    %cl,%rdi
140195a66:	0f b6 c0             	movzbl %al,%eax
140195a69:	48 03 f8             	add    %rax,%rdi
140195a6c:	74 39                	je     0x140195aa7
140195a6e:	41 8a 56 08          	mov    0x8(%r14),%dl
140195a72:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12
140195a79:	ff 0f 00
140195a7c:	8a c2                	mov    %dl,%al
140195a7e:	f6 d8                	neg    %al
140195a80:	48 1b c9             	sbb    %rcx,%rcx