14005dc28:	48 bb f7 ff ff ff ff 	movabs $0x7ffffffffffffff7,%rbx
14005dc2f:	ff ff 7f
14005dc32:	48 8b 46 10          	mov    0x10(%rsi),%rax
14005dc36:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
14005dc3a:	48 21 c1             	and    %rax,%rcx
14005dc3d:	4c 8d 69 ff          	lea    -0x1(%rcx),%r13
14005dc41:	4c 89 fa             	mov    %r15,%rdx
14005dc44:	4c 29 ea             	sub    %r13,%rdx
14005dc47:	77 11                	ja     0x14005dc5a
14005dc49:	48 89 f7             	mov    %rsi,%rdi
14005dc4c:	48 85 c0             	test   %rax,%rax
14005dc4f:	0f 89 38 fc ff ff    	jns    0x14005d88d
14005dc55:	e9 e3 00 00 00       	jmp    0x14005dd3d
14005dc5a:	48 89 d8             	mov    %rbx,%rax
14005dc5d:	48 29 c8             	sub    %rcx,%rax
14005dc60:	48 ff c0             	inc    %rax
14005dc63:	48 39 c2             	cmp    %rax,%rdx
14005dc66:	77 38                	ja     0x14005dca0
14005dc68:	4c 8b 36             	mov    (%rsi),%r14
14005dc6b:	48 b8 f3 ff ff ff ff 	movabs $0x3ffffffffffffff3,%rax
14005dc72:	ff ff 3f
14005dc75:	49 39 c5             	cmp    %rax,%r13
14005dc78:	0f 82 97 fc ff ff    	jb     0x14005d915
14005dc7e:	48 89 d9             	mov    %rbx,%rcx
14005dc81:	e8 0e 02 01 00       	call   0x14006de94
14005dc86:	48 89 c7             	mov    %rax,%rdi
14005dc89:	4c 89 f1             	mov    %r14,%rcx
14005dc8c:	e8 3f 02 01 00       	call   0x14006ded0
14005dc91:	e9 c8 fc ff ff       	jmp    0x14005d95e
14005dc96:	45 31 c0             	xor    %r8d,%r8d
14005dc99:	e9 c4 fd ff ff       	jmp    0x14005da62
14005dc9e:	0f 0b                	ud2
14005dca0:	48 89 f1             	mov    %rsi,%rcx
14005dca3:	e8 98 16 04 00       	call   0x14009f340
14005dca8:	41 89 d0             	mov    %edx,%r8d
14005dcab:	41 c1 e8 06          	shr    $0x6,%r8d
14005dcaf:	41 80 c8 c0          	or     $0xc0,%r8b
14005dcb3:	e9 88 fd ff ff       	jmp    0x14005da40
14005dcb8:	45 0f b7 14 4c       	movzwl (%r12,%rcx,2),%r10d
14005dcbd:	45 89 d1             	mov    %r10d,%r9d
14005dcc0:	41 81 e1 00 fc 00 00 	and    $0xfc00,%r9d
14005dcc7:	41 81 f9 00 dc 00 00 	cmp    $0xdc00,%r9d
14005dcce:	0f 85 fc fc ff ff    	jne    0x14005d9d0
14005dcd4:	c1 e2 0a             	shl    $0xa,%edx
14005dcd7:	42 8d 0c 12          	lea    (%rdx,%r10,1),%ecx
14005dcdb:	81 c1 00 44 9f fc    	add    $0xfc9f4400,%ecx
14005dce1:	49 83 c0 02          	add    $0x2,%r8
14005dce5:	41 b9 fd ff 00 00    	mov    $0xfffd,%r9d
14005dceb:	81 f9 00 20 10 00    	cmp    $0x102000,%ecx
14005dcf1:	72 08                	jb     0x14005dcfb
14005dcf3:	4c 89 c1             	mov    %r8,%rcx
14005dcf6:	e9 24 fd ff ff       	jmp    0x14005da1f
14005dcfb:	44 01 d2             	add    %r10d,%edx
14005dcfe:	81 c2 00 24 a0 fc    	add    $0xfca02400,%edx
14005dd04:	89 d1                	mov    %edx,%ecx
14005dd06:	c1 e9 12             	shr    $0x12,%ecx
14005dd09:	80 c9 f0             	or     $0xf0,%cl
14005dd0c:	88 0c 38             	mov    %cl,(%rax,%rdi,1)
14005dd0f:	89 d1                	mov    %edx,%ecx
14005dd11:	c1 e9 0c             	shr    $0xc,%ecx
14005dd14:	80 e1 3f             	and    $0x3f,%cl
14005dd17:	80 c9 80             	or     $0x80,%cl
14005dd1a:	88 4c 38 01          	mov    %cl,0x1(%rax,%rdi,1)
14005dd1e:	48 83 c7 02          	add    $0x2,%rdi
14005dd22:	41 89 d1             	mov    %edx,%r9d
14005dd25:	4c 89 c1             	mov    %r8,%rcx
14005dd28:	e9 01 fd ff ff       	jmp    0x14005da2e
14005dd2d:	41 89 c8             	mov    %ecx,%r8d
14005dd30:	41 c1 e8 06          	shr    $0x6,%r8d
14005dd34:	41 80 c8 c0          	or     $0xc0,%r8b
14005dd38:	e9 9f fd ff ff       	jmp    0x14005dadc
14005dd3d:	48 8b 3e             	mov    (%rsi),%rdi
14005dd40:	e9 48 fb ff ff       	jmp    0x14005d88d
14005dd45:	cc                   	int3
14005dd46:	cc                   	int3
14005dd47:	cc                   	int3
14005dd48:	cc                   	int3
14005dd49:	cc                   	int3
14005dd4a:	cc                   	int3
14005dd4b:	cc                   	int3
14005dd4c:	cc                   	int3
14005dd4d:	cc                   	int3
14005dd4e:	cc                   	int3
14005dd4f:	cc                   	int3
14005dd50:	41 57                	push   %r15
14005dd52:	41 56                	push   %r14
14005dd54:	41 55                	push   %r13
14005dd56:	41 54                	push   %r12
14005dd58:	56                   	push   %rsi
14005dd59:	57                   	push   %rdi
14005dd5a:	55                   	push   %rbp
14005dd5b:	53                   	push   %rbx
14005dd5c:	48 83 ec 38          	sub    $0x38,%rsp
14005dd60:	48 89 ce             	mov    %rcx,%rsi
14005dd63:	49 b8 f7 ff ff ff ff 	movabs $0x7ffffffffffffff7,%r8
14005dd6a:	ff ff 7f
14005dd6d:	4c 8b 2a             	mov    (%rdx),%r13
14005dd70:	48 8b 6a 08          	mov    0x8(%rdx),%rbp
14005dd74:	0f 57 c0             	xorps  %xmm0,%xmm0
14005dd77:	0f 11 01             	movups %xmm0,(%rcx)
14005dd7a:	48 c7 41 10 00 00 00 	movq   $0x0,0x10(%rcx)
14005dd81:	00
14005dd82:	4c 39 c5             	cmp    %r8,%rbp
14005dd85:	0f 87 de 01 00 00    	ja     0x14005df69
14005dd8b:	48 83 fd 17          	cmp    $0x17,%rbp
14005dd8f:	73 0a                	jae    0x14005dd9b
14005dd91:	48 85 ed             	test   %rbp,%rbp
14005dd94:	75 5c                	jne    0x14005ddf2
14005dd96:	e9 e0 00 00 00       	jmp    0x14005de7b
14005dd9b:	4c 89 c3             	mov    %r8,%rbx
14005dd9e:	48 89 e8             	mov    %rbp,%rax
14005dda1:	48 83 c8 07          	or     $0x7,%rax
14005dda5:	48 8d 48 01          	lea    0x1(%rax),%rcx
14005dda9:	48 83 f8 17          	cmp    $0x17,%rax
14005ddad:	bf 19 00 00 00       	mov    $0x19,%edi
14005ddb2:	48 0f 45 f9          	cmovne %rcx,%rdi
14005ddb6:	48 89 f9             	mov    %rdi,%rcx
14005ddb9:	e8 d6 00 01 00       	call   0x14006de94
14005ddbe:	48 8d 48 01          	lea    0x1(%rax),%rcx
14005ddc2:	48 39 c6             	cmp    %rax,%rsi
14005ddc5:	0f 92 c2             	setb   %dl
14005ddc8:	48 39 ce             	cmp    %rcx,%rsi
14005ddcb:	0f 93 c1             	setae  %cl
14005ddce:	08 d1                	or     %dl,%cl
14005ddd0:	0f 84 91 01 00 00    	je     0x14005df67
14005ddd6:	c6 00 00             	movb   $0x0,(%rax)
14005ddd9:	49 89 d8             	mov    %rbx,%r8
14005dddc:	48 8d 4b 09          	lea    0x9(%rbx),%rcx
14005dde0:	48 09 cf             	or     %rcx,%rdi
14005dde3:	48 89 7e 10          	mov    %rdi,0x10(%rsi)
14005dde7:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
14005ddee:	00
14005ddef:	48 89 06             	mov    %rax,(%rsi)
14005ddf2:	31 db                	xor    %ebx,%ebx
14005ddf4:	41 b9 19 00 00 00    	mov    $0x19,%r9d
14005ddfa:	41 ba 17 00 00 00    	mov    $0x17,%r10d
14005de00:	4d 8d 58 09          	lea    0x9(%r8),%r11
14005de04:	4d 8d 70 08          	lea    0x8(%r8),%r14
14005de08:	eb 2d                	jmp    0x14005de37
14005de0a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
14005de10:	40 80 ff 16          	cmp    $0x16,%dil
14005de14:	0f 84 9c 00 00 00    	je     0x14005deb6
14005de1a:	8d 47 01             	lea    0x1(%rdi),%eax
14005de1d:	24 7f                	and    $0x7f,%al
14005de1f:	88 46 17             	mov    %al,0x17(%rsi)
14005de22:	49 89 f7             	mov    %rsi,%r15
14005de25:	45 88 24 3f          	mov    %r12b,(%r15,%rdi,1)
14005de29:	41 c6 44 3f 01 00    	movb   $0x0,0x1(%r15,%rdi,1)
14005de2f:	48 ff c3             	inc    %rbx
14005de32:	48 39 dd             	cmp    %rbx,%rbp
14005de35:	74 44                	je     0x14005de7b
14005de37:	41 0f b6 44 1d 00    	movzbl 0x0(%r13,%rbx,1),%eax
14005de3d:	8d 48 bf             	lea    -0x41(%rax),%ecx
14005de40:	8d 50 20             	lea    0x20(%rax),%edx
14005de43:	80 f9 1a             	cmp    $0x1a,%cl
14005de46:	44 0f b6 e2          	movzbl %dl,%r12d
14005de4a:	44 0f 43 e0          	cmovae %eax,%r12d
14005de4e:	48 0f be 7e 17       	movsbq 0x17(%rsi),%rdi
14005de53:	48 85 ff             	test   %rdi,%rdi
14005de56:	79 b8                	jns    0x14005de10
14005de58:	48 8b 7e 10          	mov    0x10(%rsi),%rdi
14005de5c:	4c 21 f7             	and    %r14,%rdi
14005de5f:	48 ff cf             	dec    %rdi
14005de62:	48 8b 46 08          	mov    0x8(%rsi),%rax
14005de66:	48 39 f8             	cmp    %rdi,%rax
14005de69:	74 24                	je     0x14005de8f
14005de6b:	4c 8b 3e             	mov    (%rsi),%r15
14005de6e:	48 89 c7             	mov    %rax,%rdi
14005de71:	48 8d 47 01          	lea    0x1(%rdi),%rax
14005de75:	48 89 46 08          	mov    %rax,0x8(%rsi)
14005de79:	eb aa                	jmp    0x14005de25
14005de7b:	48 89 f0             	mov    %rsi,%rax
14005de7e:	48 83 c4 38          	add    $0x38,%rsp
14005de82:	5b                   	pop    %rbx
14005de83:	5d                   	pop    %rbp
14005de84:	5f                   	pop    %rdi
14005de85:	5e                   	pop    %rsi
14005de86:	41 5c                	pop    %r12
14005de88:	41 5d                	pop    %r13
14005de8a:	41 5e                	pop    %r14
14005de8c:	41 5f                	pop    %r15
14005de8e:	c3                   	ret
14005de8f:	4c 89 5c 24 28       	mov    %r11,0x28(%rsp)
14005de94:	4c 39 c7             	cmp    %r8,%rdi
14005de97:	0f 84 cc 00 00 00    	je     0x14005df69
14005de9d:	48 8b 06             	mov    (%rsi),%rax
14005dea0:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14005dea5:	48 b8 f2 ff ff ff ff 	movabs $0x3ffffffffffffff2,%rax
14005deac:	ff ff 3f
14005deaf:	48 39 c7             	cmp    %rax,%rdi
14005deb2:	76 11                	jbe    0x14005dec5
14005deb4:	eb 39                	jmp    0x14005deef
14005deb6:	4c 89 5c 24 28       	mov    %r11,0x28(%rsp)
14005debb:	bf 16 00 00 00       	mov    $0x16,%edi
14005dec0:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14005dec5:	48 8d 04 3f          	lea    (%rdi,%rdi,1),%rax
14005dec9:	48 8d 4f 01          	lea    0x1(%rdi),%rcx
14005decd:	48 39 c1             	cmp    %rax,%rcx
14005ded0:	48 0f 47 c1          	cmova  %rcx,%rax
14005ded4:	48 89 c1             	mov    %rax,%rcx
14005ded7:	48 83 c9 07          	or     $0x7,%rcx
14005dedb:	4c 8d 41 01          	lea    0x1(%rcx),%r8
14005dedf:	48 83 f9 17          	cmp    $0x17,%rcx
14005dee3:	4d 0f 44 c1          	cmove  %r9,%r8
14005dee7:	48 83 f8 17          	cmp    $0x17,%rax
14005deeb:	4d 0f 42 c2          	cmovb  %r10,%r8
14005deef:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
14005def4:	4c 89 c1             	mov    %r8,%rcx
14005def7:	e8 98 ff 00 00       	call   0x14006de94
14005defc:	49 89 c7             	mov    %rax,%r15
14005deff:	48 85 ff             	test   %rdi,%rdi
14005df02:	75 39                	jne    0x14005df3d
14005df04:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
14005df09:	e8 c2 ff 00 00       	call   0x14006ded0
14005df0e:	4c 89 3e             	mov    %r15,(%rsi)
14005df11:	4c 8b 5c 24 28       	mov    0x28(%rsp),%r11
14005df16:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
14005df1b:	4c 09 d8             	or     %r11,%rax
14005df1e:	48 89 46 10          	mov    %rax,0x10(%rsi)
14005df22:	49 b8 f7 ff ff ff ff 	movabs $0x7ffffffffffffff7,%r8
14005df29:	ff ff 7f
14005df2c:	41 b9 19 00 00 00    	mov    $0x19,%r9d
14005df32:	41 ba 17 00 00 00    	mov    $0x17,%r10d
14005df38:	e9 34 ff ff ff       	jmp    0x14005de71
14005df3d:	78 28                	js     0x14005df67
14005df3f:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
14005df44:	4c 39 fa             	cmp    %r15,%rdx
14005df47:	72 0b                	jb     0x14005df54
14005df49:	4c 89 f8             	mov    %r15,%rax
14005df4c:	48 01 f8             	add    %rdi,%rax
14005df4f:	48 39 c2             	cmp    %rax,%rdx
14005df52:	72 13                	jb     0x14005df67
14005df54:	4c 89 f9             	mov    %r15,%rcx
14005df57:	49 89 f8             	mov    %rdi,%r8
14005df5a:	e8 11 fc 03 00       	call   0x14009db70
14005df5f:	48 83 ff 16          	cmp    $0x16,%rdi
14005df63:	74 a9                	je     0x14005df0e
14005df65:	eb 9d                	jmp    0x14005df04
14005df67:	0f 0b                	ud2
14005df69:	48 89 f1             	mov    %rsi,%rcx
14005df6c:	e8 cf 13 04 00       	call   0x14009f340
14005df71:	cc                   	int3
14005df72:	cc                   	int3
14005df73:	cc                   	int3
14005df74:	cc                   	int3
14005df75:	cc                   	int3
14005df76:	cc                   	int3
14005df77:	cc                   	int3
14005df78:	cc                   	int3
14005df79:	cc                   	int3
14005df7a:	cc                   	int3
14005df7b:	cc                   	int3
14005df7c:	cc                   	int3
14005df7d:	cc                   	int3
14005df7e:	cc                   	int3
14005df7f:	cc                   	int3
14005df80:	41 57                	push   %r15
14005df82:	41 56                	push   %r14
14005df84:	41 55                	push   %r13
14005df86:	41 54                	push   %r12
14005df88:	56                   	push   %rsi
14005df89:	57                   	push   %rdi
14005df8a:	55                   	push   %rbp
14005df8b:	53                   	push   %rbx
14005df8c:	48 83 ec 28          	sub    $0x28,%rsp
14005df90:	48 89 ce             	mov    %rcx,%rsi
14005df93:	49 8b 38             	mov    (%r8),%rdi
14005df96:	49 8b 58 08          	mov    0x8(%r8),%rbx
14005df9a:	4c 8b 32             	mov    (%rdx),%r14
14005df9d:	4c 8b 7a 08          	mov    0x8(%rdx),%r15
14005dfa1:	41 f6 c1 01          	test   $0x1,%r9b
14005dfa5:	0f 84 ef 00 00 00    	je     0x14005e09a
14005dfab:	48 85 db             	test   %rbx,%rbx
14005dfae:	0f 84 fe 00 00 00    	je     0x14005e0b2
14005dfb4:	48 85 ff             	test   %rdi,%rdi
14005dfb7:	0f 84 e5 00 00 00    	je     0x14005e0a2
14005dfbd:	49 c7 c4 ff ff ff ff 	mov    $0xffffffffffffffff,%r12
14005dfc4:	4d 85 ff             	test   %r15,%r15
14005dfc7:	74 35                	je     0x14005dffe
14005dfc9:	44 89 4c 24 24       	mov    %r9d,0x24(%rsp)
14005dfce:	48 89 f5             	mov    %rsi,%rbp
14005dfd1:	4c 89 fe             	mov    %r15,%rsi
14005dfd4:	4d 89 f5             	mov    %r14,%r13
14005dfd7:	41 0f be 55 00       	movsbl 0x0(%r13),%edx
14005dfdc:	48 89 f9             	mov    %rdi,%rcx
14005dfdf:	49 89 d8             	mov    %rbx,%r8
14005dfe2:	e8 e9 f9 03 00       	call   0x14009d9d0
14005dfe7:	48 85 c0             	test   %rax,%rax
14005dfea:	0f 85 8c 00 00 00    	jne    0x14005e07c
14005dff0:	48 89 ee             	mov    %rbp,%rsi
14005dff3:	44 8b 4c 24 24       	mov    0x24(%rsp),%r9d
14005dff8:	4d 29 f5             	sub    %r14,%r13
14005dffb:	4d 89 ec             	mov    %r13,%r12
14005dffe:	41 f6 c1 02          	test   $0x2,%r9b
14005e002:	0f 84 8d 00 00 00    	je     0x14005e095
14005e008:	48 85 db             	test   %rbx,%rbx
14005e00b:	0f 84 93 00 00 00    	je     0x14005e0a4
14005e011:	48 85 ff             	test   %rdi,%rdi
14005e014:	0f 84 88 00 00 00    	je     0x14005e0a2
14005e01a:	45 31 ed             	xor    %r13d,%r13d
14005e01d:	4c 89 fd             	mov    %r15,%rbp
14005e020:	48 85 ed             	test   %rbp,%rbp
14005e023:	74 25                	je     0x14005e04a
14005e025:	41 0f be 54 2e ff    	movsbl -0x1(%r14,%rbp,1),%edx
14005e02b:	48 89 f9             	mov    %rdi,%rcx
14005e02e:	49 89 d8             	mov    %rbx,%r8
14005e031:	e8 9a f9 03 00       	call   0x14009d9d0
14005e036:	48 ff cd             	dec    %rbp
14005e039:	48 85 c0             	test   %rax,%rax
14005e03c:	75 e2                	jne    0x14005e020
14005e03e:	4c 01 f5             	add    %r14,%rbp
14005e041:	49 89 ed             	mov    %rbp,%r13
14005e044:	4d 29 f5             	sub    %r14,%r13
14005e047:	49 ff c5             	inc    %r13
14005e04a:	4d 29 e5             	sub    %r12,%r13
14005e04d:	4d 39 e7             	cmp    %r12,%r15
14005e050:	4d 0f 42 e7          	cmovb  %r15,%r12
14005e054:	4d 29 e7             	sub    %r12,%r15
14005e057:	4d 39 ef             	cmp    %r13,%r15
14005e05a:	4d 0f 43 fd          	cmovae %r13,%r15
14005e05e:	4d 01 e6             	add    %r12,%r14
14005e061:	4c 89 36             	mov    %r14,(%rsi)
14005e064:	4c 89 7e 08          	mov    %r15,0x8(%rsi)
14005e068:	48 89 f0             	mov    %rsi,%rax
14005e06b:	48 83 c4 28          	add    $0x28,%rsp
14005e06f:	5b                   	pop    %rbx
14005e070:	5d                   	pop    %rbp
14005e071:	5f                   	pop    %rdi
14005e072:	5e                   	pop    %rsi
14005e073:	41 5c                	pop    %r12
14005e075:	41 5d                	pop    %r13
14005e077:	41 5e                	pop    %r14
14005e079:	41 5f                	pop    %r15
14005e07b:	c3                   	ret
14005e07c:	49 ff c5             	inc    %r13
14005e07f:	48 ff ce             	dec    %rsi
14005e082:	0f 85 4f ff ff ff    	jne    0x14005dfd7
14005e088:	48 89 ee             	mov    %rbp,%rsi
14005e08b:	44 8b 4c 24 24       	mov    0x24(%rsp),%r9d
14005e090:	e9 69 ff ff ff       	jmp    0x14005dffe
14005e095:	4d 89 fd             	mov    %r15,%r13
14005e098:	eb b0                	jmp    0x14005e04a
14005e09a:	45 31 e4             	xor    %r12d,%r12d
14005e09d:	e9 5c ff ff ff       	jmp    0x14005dffe
14005e0a2:	0f 0b                	ud2
14005e0a4:	4d 85 ff             	test   %r15,%r15
14005e0a7:	74 1c                	je     0x14005e0c5
14005e0a9:	4f 8d 2c 3e          	lea    (%r14,%r15,1),%r13
14005e0ad:	49 ff cd             	dec    %r13
14005e0b0:	eb 92                	jmp    0x14005e044