1400307bc:	48 89 7c 24 10       	mov    %rdi,0x10(%rsp)
1400307c1:	41 ba 40 80 00 00    	mov    $0x8040,%r10d
1400307c7:	33 d2                	xor    %edx,%edx
1400307c9:	0f ae 5c 24 08       	stmxcsr 0x8(%rsp)
1400307ce:	44 8b 4c 24 08       	mov    0x8(%rsp),%r9d
1400307d3:	bf 00 04 00 00       	mov    $0x400,%edi
1400307d8:	41 0f b7 c1          	movzwl %r9w,%eax
1400307dc:	66 41 23 c2          	and    %r10w,%ax
1400307e0:	41 8d 4a c0          	lea    -0x40(%r10),%ecx
1400307e4:	66 3b c1             	cmp    %cx,%ax
1400307e7:	75 08                	jne    0x1400307f1
1400307e9:	41 b8 00 0c 00 00    	mov    $0xc00,%r8d
1400307ef:	eb 19                	jmp    0x14003080a
1400307f1:	66 83 f8 40          	cmp    $0x40,%ax
1400307f5:	75 08                	jne    0x1400307ff
1400307f7:	41 b8 00 08 00 00    	mov    $0x800,%r8d
1400307fd:	eb 0b                	jmp    0x14003080a
1400307ff:	66 41 3b c2          	cmp    %r10w,%ax
140030803:	44 8b c2             	mov    %edx,%r8d
140030806:	44 0f 44 c7          	cmove  %edi,%r8d
14003080a:	41 8b c1             	mov    %r9d,%eax
14003080d:	41 ba 00 60 00 00    	mov    $0x6000,%r10d
140030813:	41 bb 00 02 00 00    	mov    $0x200,%r11d
140030819:	41 23 c2             	and    %r10d,%eax
14003081c:	74 27                	je     0x140030845
14003081e:	3d 00 20 00 00       	cmp    $0x2000,%eax
140030823:	74 19                	je     0x14003083e
140030825:	3d 00 40 00 00       	cmp    $0x4000,%eax
14003082a:	74 0d                	je     0x140030839
14003082c:	41 3b c2             	cmp    %r10d,%eax
14003082f:	b9 00 03 00 00       	mov    $0x300,%ecx
140030834:	0f 45 ca             	cmovne %edx,%ecx
140030837:	eb 0e                	jmp    0x140030847
140030839:	41 8b cb             	mov    %r11d,%ecx
14003083c:	eb 09                	jmp    0x140030847
14003083e:	b9 00 01 00 00       	mov    $0x100,%ecx
140030843:	eb 02                	jmp    0x140030847
140030845:	8b ca                	mov    %edx,%ecx
140030847:	41 8b d1             	mov    %r9d,%edx
14003084a:	41 8b c1             	mov    %r9d,%eax
14003084d:	c1 ea 02             	shr    $0x2,%edx
140030850:	25 00 08 00 00       	and    $0x800,%eax
140030855:	23 d7                	and    %edi,%edx
140030857:	0b d0                	or     %eax,%edx
140030859:	41 8b c1             	mov    %r9d,%eax
14003085c:	23 c7                	and    %edi,%eax
14003085e:	c1 ea 02             	shr    $0x2,%edx
140030861:	48 8b 7c 24 10       	mov    0x10(%rsp),%rdi
140030866:	0b d0                	or     %eax,%edx
140030868:	c1 ea 02             	shr    $0x2,%edx
14003086b:	41 8b c1             	mov    %r9d,%eax
14003086e:	41 23 c3             	and    %r11d,%eax
140030871:	41 81 e1 80 01 00 00 	and    $0x180,%r9d
140030878:	0b d0                	or     %eax,%edx
14003087a:	c1 ea 03             	shr    $0x3,%edx
14003087d:	41 0b d1             	or     %r9d,%edx
140030880:	c1 ea 03             	shr    $0x3,%edx
140030883:	41 0b d0             	or     %r8d,%edx
140030886:	0b d1                	or     %ecx,%edx
140030888:	8b c2                	mov    %edx,%eax
14003088a:	25 00 ff ff ff       	and    $0xffffff00,%eax
14003088f:	8d 0c 95 00 00 00 00 	lea    0x0(,%rdx,4),%ecx
140030896:	0b c1                	or     %ecx,%eax
140030898:	c1 e0 16             	shl    $0x16,%eax
14003089b:	0b c2                	or     %edx,%eax
14003089d:	c3                   	ret
14003089e:	cc                   	int3
14003089f:	cc                   	int3
1400308a0:	0f ae 5c 24 08       	stmxcsr 0x8(%rsp)
1400308a5:	8b 54 24 08          	mov    0x8(%rsp),%edx
1400308a9:	83 e2 3f             	and    $0x3f,%edx
1400308ac:	44 8b c2             	mov    %edx,%r8d
1400308af:	8b c2                	mov    %edx,%eax
1400308b1:	83 e0 10             	and    $0x10,%eax
1400308b4:	41 c1 e8 02          	shr    $0x2,%r8d
1400308b8:	41 83 e0 08          	and    $0x8,%r8d
1400308bc:	8b ca                	mov    %edx,%ecx
1400308be:	44 0b c0             	or     %eax,%r8d
1400308c1:	83 e1 02             	and    $0x2,%ecx
1400308c4:	41 c1 e8 02          	shr    $0x2,%r8d
1400308c8:	8b c2                	mov    %edx,%eax
1400308ca:	83 e0 08             	and    $0x8,%eax
1400308cd:	c1 e1 03             	shl    $0x3,%ecx
1400308d0:	44 0b c0             	or     %eax,%r8d
1400308d3:	8b c2                	mov    %edx,%eax
1400308d5:	83 e0 04             	and    $0x4,%eax
1400308d8:	41 d1 e8             	shr    $1,%r8d
1400308db:	0b c8                	or     %eax,%ecx
1400308dd:	83 e2 01             	and    $0x1,%edx
1400308e0:	03 c9                	add    %ecx,%ecx
1400308e2:	c1 e2 04             	shl    $0x4,%edx
1400308e5:	44 0b c1             	or     %ecx,%r8d
1400308e8:	44 0b c2             	or     %edx,%r8d
1400308eb:	41 8b c0             	mov    %r8d,%eax
1400308ee:	c1 e0 18             	shl    $0x18,%eax
1400308f1:	41 0b c0             	or     %r8d,%eax
1400308f4:	c3                   	ret
1400308f5:	cc                   	int3
1400308f6:	cc                   	int3
1400308f7:	cc                   	int3
1400308f8:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400308fd:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140030902:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140030907:	8b c1                	mov    %ecx,%eax
140030909:	8b d1                	mov    %ecx,%edx
14003090b:	c1 e8 16             	shr    $0x16,%eax
14003090e:	41 b8 00 03 00 00    	mov    $0x300,%r8d
140030914:	c1 ea 18             	shr    $0x18,%edx
140030917:	41 23 c0             	and    %r8d,%eax
14003091a:	83 e2 3f             	and    $0x3f,%edx
14003091d:	33 f6                	xor    %esi,%esi
14003091f:	0b d0                	or     %eax,%edx
140030921:	bf 00 04 00 00       	mov    $0x400,%edi
140030926:	b8 00 0c 00 00       	mov    $0xc00,%eax
14003092b:	41 bb 00 08 00 00    	mov    $0x800,%r11d
140030931:	23 c8                	and    %eax,%ecx
140030933:	3b cf                	cmp    %edi,%ecx
140030935:	74 1f                	je     0x140030956
140030937:	41 3b cb             	cmp    %r11d,%ecx
14003093a:	74 12                	je     0x14003094e
14003093c:	3b c8                	cmp    %eax,%ecx
14003093e:	74 06                	je     0x140030946
140030940:	44 0f b7 ce          	movzwl %si,%r9d
140030944:	eb 16                	jmp    0x14003095c
140030946:	41 b9 00 80 00 00    	mov    $0x8000,%r9d
14003094c:	eb 0e                	jmp    0x14003095c
14003094e:	41 b9 40 00 00 00    	mov    $0x40,%r9d
140030954:	eb 06                	jmp    0x14003095c
140030956:	41 b9 40 80 00 00    	mov    $0x8040,%r9d
14003095c:	8b c2                	mov    %edx,%eax
14003095e:	bb 00 01 00 00       	mov    $0x100,%ebx
140030963:	41 ba 00 02 00 00    	mov    $0x200,%r10d
140030969:	41 23 c0             	and    %r8d,%eax
14003096c:	74 26                	je     0x140030994
14003096e:	3b c3                	cmp    %ebx,%eax
140030970:	74 1a                	je     0x14003098c
140030972:	41 3b c2             	cmp    %r10d,%eax
140030975:	74 0d                	je     0x140030984
140030977:	41 3b c0             	cmp    %r8d,%eax
14003097a:	75 18                	jne    0x140030994
14003097c:	41 b8 00 60 00 00    	mov    $0x6000,%r8d
140030982:	eb 14                	jmp    0x140030998
140030984:	41 b8 00 40 00 00    	mov    $0x4000,%r8d
14003098a:	eb 0c                	jmp    0x140030998
14003098c:	41 b8 00 20 00 00    	mov    $0x2000,%r8d
140030992:	eb 04                	jmp    0x140030998
140030994:	44 0f b7 c6          	movzwl %si,%r8d
140030998:	0f ba e2 00          	bt     $0x0,%edx
14003099c:	73 07                	jae    0x1400309a5
14003099e:	b9 00 10 00 00       	mov    $0x1000,%ecx
1400309a3:	eb 03                	jmp    0x1400309a8
1400309a5:	0f b7 ce             	movzwl %si,%ecx
1400309a8:	0f ba e2 01          	bt     $0x1,%edx
1400309ac:	72 04                	jb     0x1400309b2
1400309ae:	44 0f b7 de          	movzwl %si,%r11d
1400309b2:	66 41 0b cb          	or     %r11w,%cx
1400309b6:	0f ba e2 02          	bt     $0x2,%edx
1400309ba:	72 03                	jb     0x1400309bf
1400309bc:	0f b7 fe             	movzwl %si,%edi
1400309bf:	66 0b cf             	or     %di,%cx
1400309c2:	0f ba e2 03          	bt     $0x3,%edx
1400309c6:	72 04                	jb     0x1400309cc
1400309c8:	44 0f b7 d6          	movzwl %si,%r10d
1400309cc:	66 41 0b ca          	or     %r10w,%cx
1400309d0:	0f ba e2 04          	bt     $0x4,%edx
1400309d4:	73 07                	jae    0x1400309dd
1400309d6:	b8 80 00 00 00       	mov    $0x80,%eax
1400309db:	eb 03                	jmp    0x1400309e0
1400309dd:	0f b7 c6             	movzwl %si,%eax
1400309e0:	66 0b c8             	or     %ax,%cx
1400309e3:	0f ba e2 05          	bt     $0x5,%edx
1400309e7:	72 03                	jb     0x1400309ec
1400309e9:	0f b7 de             	movzwl %si,%ebx
1400309ec:	48 8b 74 24 18       	mov    0x18(%rsp),%rsi
1400309f1:	66 0b cb             	or     %bx,%cx
1400309f4:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
1400309f9:	66 44 0b c1          	or     %cx,%r8w
1400309fd:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
140030a02:	b8 c0 ff 00 00       	mov    $0xffc0,%eax
140030a07:	0f ae 5c 24 08       	stmxcsr 0x8(%rsp)
140030a0c:	66 45 0b c1          	or     %r9w,%r8w
140030a10:	66 44 23 c0          	and    %ax,%r8w
140030a14:	8b 44 24 08          	mov    0x8(%rsp),%eax
140030a18:	25 3f 00 ff ff       	and    $0xffff003f,%eax
140030a1d:	41 0f b7 c8          	movzwl %r8w,%ecx
140030a21:	0b c1                	or     %ecx,%eax
140030a23:	89 44 24 08          	mov    %eax,0x8(%rsp)
140030a27:	0f ae 54 24 08       	ldmxcsr 0x8(%rsp)
140030a2c:	c3                   	ret
140030a2d:	cc                   	int3
140030a2e:	cc                   	int3
140030a2f:	cc                   	int3
140030a30:	8b d1                	mov    %ecx,%edx
140030a32:	c1 ea 18             	shr    $0x18,%edx
140030a35:	83 e2 3f             	and    $0x3f,%edx
140030a38:	8b c2                	mov    %edx,%eax
140030a3a:	83 e0 01             	and    $0x1,%eax
140030a3d:	f7 d8                	neg    %eax
140030a3f:	8b c2                	mov    %edx,%eax
140030a41:	1b c9                	sbb    %ecx,%ecx
140030a43:	83 e0 02             	and    $0x2,%eax
140030a46:	83 e1 20             	and    $0x20,%ecx
140030a49:	f7 d8                	neg    %eax
140030a4b:	0f ae 5c 24 08       	stmxcsr 0x8(%rsp)
140030a50:	1b c0                	sbb    %eax,%eax
140030a52:	83 e0 10             	and    $0x10,%eax
140030a55:	0b c8                	or     %eax,%ecx
140030a57:	8b c2                	mov    %edx,%eax
140030a59:	83 e0 04             	and    $0x4,%eax
140030a5c:	f7 d8                	neg    %eax
140030a5e:	1b c0                	sbb    %eax,%eax
140030a60:	83 e0 08             	and    $0x8,%eax
140030a63:	0b c8                	or     %eax,%ecx
140030a65:	8b c2                	mov    %edx,%eax
140030a67:	83 e0 08             	and    $0x8,%eax
140030a6a:	f7 d8                	neg    %eax
140030a6c:	1b c0                	sbb    %eax,%eax
140030a6e:	83 e0 04             	and    $0x4,%eax
140030a71:	0b c8                	or     %eax,%ecx
140030a73:	b8 00 00 00 00       	mov    $0x0,%eax
140030a78:	0f ba e2 04          	bt     $0x4,%edx
140030a7c:	0f 92 c0             	setb   %al
140030a7f:	83 e2 20             	and    $0x20,%edx
140030a82:	0b c8                	or     %eax,%ecx
140030a84:	f7 da                	neg    %edx
140030a86:	1b c0                	sbb    %eax,%eax
140030a88:	83 e0 02             	and    $0x2,%eax
140030a8b:	0b c8                	or     %eax,%ecx
140030a8d:	8b 44 24 08          	mov    0x8(%rsp),%eax
140030a91:	83 e0 c0             	and    $0xffffffc0,%eax
140030a94:	83 e1 3f             	and    $0x3f,%ecx
140030a97:	0b c1                	or     %ecx,%eax
140030a99:	89 44 24 08          	mov    %eax,0x8(%rsp)
140030a9d:	0f ae 54 24 08       	ldmxcsr 0x8(%rsp)
140030aa2:	c3                   	ret
140030aa3:	cc                   	int3
140030aa4:	33 c0                	xor    %eax,%eax
140030aa6:	38 01                	cmp    %al,(%rcx)
140030aa8:	74 0e                	je     0x140030ab8
140030aaa:	48 3b c2             	cmp    %rdx,%rax
140030aad:	74 09                	je     0x140030ab8
140030aaf:	48 ff c0             	inc    %rax
140030ab2:	80 3c 08 00          	cmpb   $0x0,(%rax,%rcx,1)
140030ab6:	75 f2                	jne    0x140030aaa
140030ab8:	c3                   	ret
140030ab9:	cc                   	int3
140030aba:	cc                   	int3
140030abb:	cc                   	int3
140030abc:	cc                   	int3
140030abd:	cc                   	int3
140030abe:	cc                   	int3
140030abf:	cc                   	int3
140030ac0:	41 54                	push   %r12
140030ac2:	41 55                	push   %r13
140030ac4:	41 56                	push   %r14
140030ac6:	48 81 ec 50 04 00 00 	sub    $0x450,%rsp
140030acd:	48 8b 05 ec d6 01 00 	mov    0x1d6ec(%rip),%rax        # 0x14004e1c0
140030ad4:	48 33 c4             	xor    %rsp,%rax
140030ad7:	48 89 84 24 10 04 00 	mov    %rax,0x410(%rsp)
140030ade:	00
140030adf:	4d 8b e1             	mov    %r9,%r12
140030ae2:	4d 8b f0             	mov    %r8,%r14
140030ae5:	4c 8b e9             	mov    %rcx,%r13
140030ae8:	48 85 c9             	test   %rcx,%rcx
140030aeb:	75 1a                	jne    0x140030b07
140030aed:	48 85 d2             	test   %rdx,%rdx
140030af0:	74 15                	je     0x140030b07
140030af2:	e8 e5 05 ff ff       	call   0x1400210dc
140030af7:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140030afd:	e8 52 e4 fd ff       	call   0x14000ef54
140030b02:	e9 a9 03 00 00       	jmp    0x140030eb0
140030b07:	4d 85 f6             	test   %r14,%r14
140030b0a:	74 e6                	je     0x140030af2
140030b0c:	4d 85 e4             	test   %r12,%r12
140030b0f:	74 e1                	je     0x140030af2
140030b11:	48 83 fa 02          	cmp    $0x2,%rdx
140030b15:	0f 82 95 03 00 00    	jb     0x140030eb0
140030b1b:	48 89 9c 24 48 04 00 	mov    %rbx,0x448(%rsp)
140030b22:	00
140030b23:	48 89 ac 24 40 04 00 	mov    %rbp,0x440(%rsp)
140030b2a:	00
140030b2b:	48 89 b4 24 38 04 00 	mov    %rsi,0x438(%rsp)
140030b32:	00
140030b33:	48 89 bc 24 30 04 00 	mov    %rdi,0x430(%rsp)
140030b3a:	00
140030b3b:	4c 89 bc 24 28 04 00 	mov    %r15,0x428(%rsp)
140030b42:	00
140030b43:	4c 8d 7a ff          	lea    -0x1(%rdx),%r15
140030b47:	4d 0f af fe          	imul   %r14,%r15
140030b4b:	4c 03 f9             	add    %rcx,%r15
140030b4e:	33 c9                	xor    %ecx,%ecx
140030b50:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140030b55:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
140030b5c:	00 00 00 00
140030b60:	33 d2                	xor    %edx,%edx
140030b62:	49 8b c7             	mov    %r15,%rax
140030b65:	49 2b c5             	sub    %r13,%rax
140030b68:	49 f7 f6             	div    %r14
140030b6b:	48 8d 58 01          	lea    0x1(%rax),%rbx
140030b6f:	48 83 fb 08          	cmp    $0x8,%rbx
140030b73:	0f 87 9b 00 00 00    	ja     0x140030c14
140030b79:	4d 3b fd             	cmp    %r13,%r15
140030b7c:	76 75                	jbe    0x140030bf3
140030b7e:	4b 8d 34 2e          	lea    (%r14,%r13,1),%rsi
140030b82:	49 8b dd             	mov    %r13,%rbx
140030b85:	48 8b fe             	mov    %rsi,%rdi
140030b88:	49 3b f7             	cmp    %r15,%rsi
140030b8b:	77 2a                	ja     0x140030bb7
140030b8d:	0f 1f 00             	nopl   (%rax)
140030b90:	49 ba 70 89 de 5e 95 	movabs $0x9375b7955ede8970,%r10
140030b97:	b7 75 93
140030b9a:	48 8b d3             	mov    %rbx,%rdx
140030b9d:	48 8b cf             	mov    %rdi,%rcx
140030ba0:	49 8b c4             	mov    %r12,%rax
140030ba3:	ff 15 8f b9 00 00    	call   *0xb98f(%rip)        # 0x14003c538
140030ba9:	85 c0                	test   %eax,%eax
140030bab:	48 0f 4f df          	cmovg  %rdi,%rbx
140030baf:	49 03 fe             	add    %r14,%rdi
140030bb2:	49 3b ff             	cmp    %r15,%rdi
140030bb5:	76 d9                	jbe    0x140030b90
140030bb7:	4d 8b c6             	mov    %r14,%r8
140030bba:	49 8b d7             	mov    %r15,%rdx
140030bbd:	49 3b df             	cmp    %r15,%rbx
140030bc0:	74 24                	je     0x140030be6
140030bc2:	49 2b df             	sub    %r15,%rbx
140030bc5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
140030bcc:	00 00 00 00
140030bd0:	0f b6 02             	movzbl (%rdx),%eax
140030bd3:	0f b6 0c 13          	movzbl (%rbx,%rdx,1),%ecx
140030bd7:	88 04 13             	mov    %al,(%rbx,%rdx,1)
140030bda:	88 0a                	mov    %cl,(%rdx)
140030bdc:	48 8d 52 01          	lea    0x1(%rdx),%rdx
140030be0:	49 83 e8 01          	sub    $0x1,%r8
140030be4:	75 ea                	jne    0x140030bd0
140030be6:	4d 2b fe             	sub    %r14,%r15
140030be9:	4d 3b fd             	cmp    %r13,%r15
140030bec:	77 94                	ja     0x140030b82
140030bee:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
140030bf3:	48 83 e9 01          	sub    $0x1,%rcx
140030bf7:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140030bfc:	0f 88 86 02 00 00    	js     0x140030e88
140030c02:	4c 8b 6c cc 30       	mov    0x30(%rsp,%rcx,8),%r13
140030c07:	4c 8b bc cc 20 02 00 	mov    0x220(%rsp,%rcx,8),%r15
140030c0e:	00
140030c0f:	e9 4c ff ff ff       	jmp    0x140030b60
140030c14:	48 d1 eb             	shr    $1,%rbx
140030c17:	49 0f af de          	imul   %r14,%rbx
140030c1b:	4a 8d 34 2b          	lea    (%rbx,%r13,1),%rsi
140030c1f:	49 ba 70 89 de 5e 95 	movabs $0x9375b7955ede8970,%r10
140030c26:	b7 75 93