180119d6f:	76 52                	jbe    0x180119dc3
180119d71:	45 3b d5             	cmp    %r13d,%r10d
180119d74:	77 0a                	ja     0x180119d80
180119d76:	41 8b c2             	mov    %r10d,%eax
180119d79:	c1 e8 06             	shr    $0x6,%eax
180119d7c:	0c c0                	or     $0xc0,%al
180119d7e:	eb 36                	jmp    0x180119db6
180119d80:	41 8b d2             	mov    %r10d,%edx
180119d83:	c1 ea 0c             	shr    $0xc,%edx
180119d86:	41 81 fa ff ff 00 00 	cmp    $0xffff,%r10d
180119d8d:	77 05                	ja     0x180119d94
180119d8f:	80 ca e0             	or     $0xe0,%dl
180119d92:	eb 13                	jmp    0x180119da7
180119d94:	41 8b c2             	mov    %r10d,%eax
180119d97:	80 e2 3f             	and    $0x3f,%dl
180119d9a:	c1 e8 12             	shr    $0x12,%eax
180119d9d:	0c f0                	or     $0xf0,%al
180119d9f:	88 01                	mov    %al,(%rcx)
180119da1:	49 03 ce             	add    %r14,%rcx
180119da4:	80 ca 80             	or     $0x80,%dl
180119da7:	41 8b c2             	mov    %r10d,%eax
180119daa:	88 11                	mov    %dl,(%rcx)
180119dac:	c1 e8 06             	shr    $0x6,%eax
180119daf:	49 03 ce             	add    %r14,%rcx
180119db2:	24 3f                	and    $0x3f,%al
180119db4:	0c 80                	or     $0x80,%al
180119db6:	88 01                	mov    %al,(%rcx)
180119db8:	41 80 e2 3f          	and    $0x3f,%r10b
180119dbc:	49 03 ce             	add    %r14,%rcx
180119dbf:	41 80 ca 80          	or     $0x80,%r10b
180119dc3:	48 8b c6             	mov    %rsi,%rax
180119dc6:	44 88 11             	mov    %r10b,(%rcx)
180119dc9:	49 2b c1             	sub    %r9,%rax
180119dcc:	49 03 ce             	add    %r14,%rcx
180119dcf:	48 8b d5             	mov    %rbp,%rdx
180119dd2:	48 d1 f8             	sar    $1,%rax
180119dd5:	48 2b d1             	sub    %rcx,%rdx
180119dd8:	48 83 f8 0d          	cmp    $0xd,%rax
180119ddc:	77 2c                	ja     0x180119e0a
180119dde:	48 3b d0             	cmp    %rax,%rdx
180119de1:	0f 82 53 01 00 00    	jb     0x180119f3a
180119de7:	4c 3b ce             	cmp    %rsi,%r9
180119dea:	0f 83 63 01 00 00    	jae    0x180119f53
180119df0:	45 0f b7 11          	movzwl (%r9),%r10d
180119df4:	49 83 c1 02          	add    $0x2,%r9
180119df8:	41 83 fa 7f          	cmp    $0x7f,%r10d
180119dfc:	0f 87 10 ff ff ff    	ja     0x180119d12
180119e02:	44 88 11             	mov    %r10b,(%rcx)
180119e05:	49 03 ce             	add    %r14,%rcx
180119e08:	eb dd                	jmp    0x180119de7
180119e0a:	48 3b d0             	cmp    %rax,%rdx
180119e0d:	48 0f 42 c2          	cmovb  %rdx,%rax
180119e11:	4c 8d 50 fb          	lea    -0x5(%rax),%r10
180119e15:	4f 8d 14 51          	lea    (%r9,%r10,2),%r10
180119e19:	e9 13 01 00 00       	jmp    0x180119f31
180119e1e:	41 0f b7 11          	movzwl (%r9),%edx
180119e22:	49 83 c1 02          	add    $0x2,%r9
180119e26:	83 fa 7f             	cmp    $0x7f,%edx
180119e29:	77 75                	ja     0x180119ea0
180119e2b:	88 11                	mov    %dl,(%rcx)
180119e2d:	48 ff c1             	inc    %rcx
180119e30:	41 f6 c1 02          	test   $0x2,%r9b
180119e34:	74 12                	je     0x180119e48
180119e36:	41 0f b7 11          	movzwl (%r9),%edx
180119e3a:	49 83 c1 02          	add    $0x2,%r9
180119e3e:	83 fa 7f             	cmp    $0x7f,%edx
180119e41:	77 5d                	ja     0x180119ea0
180119e43:	88 11                	mov    %dl,(%rcx)
180119e45:	48 ff c1             	inc    %rcx
180119e48:	4d 3b ca             	cmp    %r10,%r9
180119e4b:	0f 83 e9 00 00 00    	jae    0x180119f3a
180119e51:	45 8b 41 04          	mov    0x4(%r9),%r8d
180119e55:	41 8b c0             	mov    %r8d,%eax
180119e58:	41 8b 11             	mov    (%r9),%edx
180119e5b:	0b c2                	or     %edx,%eax
180119e5d:	a9 80 ff 80 ff       	test   $0xff80ff80,%eax
180119e62:	75 26                	jne    0x180119e8a
180119e64:	88 11                	mov    %dl,(%rcx)
180119e66:	49 83 c1 08          	add    $0x8,%r9
180119e6a:	44 88 41 02          	mov    %r8b,0x2(%rcx)
180119e6e:	c1 ea 10             	shr    $0x10,%edx
180119e71:	41 c1 e8 10          	shr    $0x10,%r8d
180119e75:	88 51 01             	mov    %dl,0x1(%rcx)
180119e78:	44 88 41 03          	mov    %r8b,0x3(%rcx)
180119e7c:	48 83 c1 04          	add    $0x4,%rcx
180119e80:	4d 3b ca             	cmp    %r10,%r9
180119e83:	72 cc                	jb     0x180119e51
180119e85:	e9 a7 00 00 00       	jmp    0x180119f31
180119e8a:	0f b7 d2             	movzwl %dx,%edx
180119e8d:	49 83 c1 02          	add    $0x2,%r9
180119e91:	83 fa 7f             	cmp    $0x7f,%edx
180119e94:	77 0a                	ja     0x180119ea0
180119e96:	88 11                	mov    %dl,(%rcx)
180119e98:	49 03 ce             	add    %r14,%rcx
180119e9b:	e9 91 00 00 00       	jmp    0x180119f31
180119ea0:	41 3b d5             	cmp    %r13d,%edx
180119ea3:	77 09                	ja     0x180119eae
180119ea5:	8b c2                	mov    %edx,%eax
180119ea7:	0d 00 30 00 00       	or     $0x3000,%eax
180119eac:	eb 6c                	jmp    0x180119f1a
180119eae:	8d 82 00 28 ff ff    	lea    -0xd800(%rdx),%eax
180119eb4:	41 3b c5             	cmp    %r13d,%eax
180119eb7:	76 09                	jbe    0x180119ec2
180119eb9:	8b c2                	mov    %edx,%eax
180119ebb:	0d 00 00 0e 00       	or     $0xe0000,%eax
180119ec0:	eb 41                	jmp    0x180119f03
180119ec2:	81 fa ff db 00 00    	cmp    $0xdbff,%edx
180119ec8:	77 7e                	ja     0x180119f48
180119eca:	45 0f b7 01          	movzwl (%r9),%r8d
180119ece:	49 83 c1 02          	add    $0x2,%r9
180119ed2:	41 8d 80 00 24 ff ff 	lea    -0xdc00(%r8),%eax
180119ed9:	3d ff 03 00 00       	cmp    $0x3ff,%eax
180119ede:	77 62                	ja     0x180119f42
180119ee0:	c1 e2 0a             	shl    $0xa,%edx
180119ee3:	81 c2 00 24 a0 fc    	add    $0xfca02400,%edx
180119ee9:	41 03 d0             	add    %r8d,%edx
180119eec:	8b c2                	mov    %edx,%eax
180119eee:	c1 e8 12             	shr    $0x12,%eax
180119ef1:	0c f0                	or     $0xf0,%al
180119ef3:	88 01                	mov    %al,(%rcx)
180119ef5:	8b c2                	mov    %edx,%eax
180119ef7:	25 00 f0 03 00       	and    $0x3f000,%eax
180119efc:	49 03 ce             	add    %r14,%rcx
180119eff:	0f ba e8 13          	bts    $0x13,%eax
180119f03:	c1 e8 0c             	shr    $0xc,%eax
180119f06:	49 83 ea 02          	sub    $0x2,%r10
180119f0a:	88 01                	mov    %al,(%rcx)
180119f0c:	8b c2                	mov    %edx,%eax
180119f0e:	25 c0 0f 00 00       	and    $0xfc0,%eax
180119f13:	49 03 ce             	add    %r14,%rcx
180119f16:	0f ba e8 0d          	bts    $0xd,%eax
180119f1a:	c1 e8 06             	shr    $0x6,%eax
180119f1d:	80 e2 3f             	and    $0x3f,%dl
180119f20:	88 01                	mov    %al,(%rcx)
180119f22:	80 ca 80             	or     $0x80,%dl
180119f25:	49 03 ce             	add    %r14,%rcx
180119f28:	49 83 ea 02          	sub    $0x2,%r10
180119f2c:	88 11                	mov    %dl,(%rcx)
180119f2e:	48 ff c1             	inc    %rcx
180119f31:	4d 3b ca             	cmp    %r10,%r9
180119f34:	0f 82 e4 fe ff ff    	jb     0x180119e1e
180119f3a:	45 33 d2             	xor    %r10d,%r10d
180119f3d:	e9 8f fd ff ff       	jmp    0x180119cd1
180119f42:	49 83 e9 04          	sub    $0x4,%r9
180119f46:	eb f2                	jmp    0x180119f3a
180119f48:	49 83 e9 02          	sub    $0x2,%r9
180119f4c:	eb ec                	jmp    0x180119f3a
180119f4e:	bb 23 00 00 c0       	mov    $0xc0000023,%ebx
180119f53:	2b cf                	sub    %edi,%ecx
180119f55:	8b c3                	mov    %ebx,%eax
180119f57:	41 89 0b             	mov    %ecx,(%r11)
180119f5a:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
180119f5f:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
180119f64:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
180119f69:	48 83 c4 20          	add    $0x20,%rsp
180119f6d:	41 5e                	pop    %r14
180119f6f:	41 5d                	pop    %r13
180119f71:	5f                   	pop    %rdi
180119f72:	c3                   	ret
180119f73:	cc                   	int3
180119f74:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180119f79:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180119f7e:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
180119f83:	8b da                	mov    %edx,%ebx
180119f85:	45 33 c9             	xor    %r9d,%r9d
180119f88:	48 03 d9             	add    %rcx,%rbx
180119f8b:	45 33 db             	xor    %r11d,%r11d
180119f8e:	83 cd ff             	or     $0xffffffff,%ebp
180119f91:	49 8b f8             	mov    %r8,%rdi
180119f94:	48 3b cb             	cmp    %rbx,%rcx
180119f97:	0f 83 25 02 00 00    	jae    0x18011a1c2
180119f9d:	44 0f be 01          	movsbl (%rcx),%r8d
180119fa1:	48 ff c1             	inc    %rcx
180119fa4:	45 85 c9             	test   %r9d,%r9d
180119fa7:	75 08                	jne    0x180119fb1
180119fa9:	45 8b c8             	mov    %r8d,%r9d
180119fac:	e9 91 00 00 00       	jmp    0x18011a042
180119fb1:	41 8b c0             	mov    %r8d,%eax
180119fb4:	24 c0                	and    $0xc0,%al
180119fb6:	3c 80                	cmp    $0x80,%al
180119fb8:	74 17                	je     0x180119fd1
180119fba:	48 ff c9             	dec    %rcx
180119fbd:	41 c1 f9 1e          	sar    $0x1e,%r9d
180119fc1:	41 03 d1             	add    %r9d,%edx
180119fc4:	41 bb 07 01 00 00    	mov    $0x107,%r11d
180119fca:	ff c2                	inc    %edx
180119fcc:	45 33 c9             	xor    %r9d,%r9d
180119fcf:	eb c3                	jmp    0x180119f94
180119fd1:	41 8b c1             	mov    %r9d,%eax
180119fd4:	41 83 e0 3f          	and    $0x3f,%r8d
180119fd8:	c1 e0 06             	shl    $0x6,%eax
180119fdb:	45 8b c8             	mov    %r8d,%r9d
180119fde:	44 0b c8             	or     %eax,%r9d
180119fe1:	41 0f ba e1 1d       	bt     $0x1d,%r9d
180119fe6:	72 38                	jb     0x18011a020
180119fe8:	41 0f ba e1 1c       	bt     $0x1c,%r9d
180119fed:	73 1b                	jae    0x18011a00a
180119fef:	41 0f ba e1 17       	bt     $0x17,%r9d
180119ff4:	72 9e                	jb     0x180119f94
180119ff6:	41 8b c1             	mov    %r9d,%eax
180119ff9:	25 f0 01 00 00       	and    $0x1f0,%eax
180119ffe:	83 e8 10             	sub    $0x10,%eax
18011a001:	3d f0 00 00 00       	cmp    $0xf0,%eax
18011a006:	77 bc                	ja     0x180119fc4
18011a008:	eb 8a                	jmp    0x180119f94
18011a00a:	41 8b c1             	mov    %r9d,%eax
18011a00d:	25 e0 03 00 00       	and    $0x3e0,%eax
18011a012:	74 b0                	je     0x180119fc4
18011a014:	3d 60 03 00 00       	cmp    $0x360,%eax
18011a019:	74 a9                	je     0x180119fc4
18011a01b:	e9 74 ff ff ff       	jmp    0x180119f94
18011a020:	48 8b c3             	mov    %rbx,%rax
18011a023:	48 2b c1             	sub    %rcx,%rax
18011a026:	48 83 f8 0d          	cmp    $0xd,%rax
18011a02a:	77 75                	ja     0x18011a0a1
18011a02c:	48 3b cb             	cmp    %rbx,%rcx
18011a02f:	0f 83 8a 01 00 00    	jae    0x18011a1bf
18011a035:	44 0f be 09          	movsbl (%rcx),%r9d
18011a039:	48 ff c1             	inc    %rcx
18011a03c:	41 83 f9 7f          	cmp    $0x7f,%r9d
18011a040:	76 ea                	jbe    0x18011a02c
18011a042:	41 83 f9 7f          	cmp    $0x7f,%r9d
18011a046:	76 d8                	jbe    0x18011a020
18011a048:	03 d5                	add    %ebp,%edx
18011a04a:	41 f6 c1 40          	test   $0x40,%r9b
18011a04e:	0f 84 70 ff ff ff    	je     0x180119fc4
18011a054:	41 f6 c1 20          	test   $0x20,%r9b
18011a058:	74 2f                	je     0x18011a089
18011a05a:	41 8b c1             	mov    %r9d,%eax
18011a05d:	83 e0 0f             	and    $0xf,%eax
18011a060:	41 f6 c1 10          	test   $0x10,%r9b
18011a064:	44 8b c8             	mov    %eax,%r9d
18011a067:	74 17                	je     0x18011a080
18011a069:	83 f8 04             	cmp    $0x4,%eax
18011a06c:	0f 87 52 ff ff ff    	ja     0x180119fc4
18011a072:	41 81 c9 00 0c 4d 50 	or     $0x504d0c00,%r9d
18011a079:	03 d5                	add    %ebp,%edx
18011a07b:	e9 14 ff ff ff       	jmp    0x180119f94
18011a080:	41 81 c9 00 80 22 48 	or     $0x48228000,%r9d
18011a087:	eb f0                	jmp    0x18011a079
18011a089:	41 83 e1 1f          	and    $0x1f,%r9d
18011a08d:	41 83 f9 01          	cmp    $0x1,%r9d
18011a091:	0f 86 2d ff ff ff    	jbe    0x180119fc4
18011a097:	41 0f ba e9 17       	bts    $0x17,%r9d
18011a09c:	e9 f3 fe ff ff       	jmp    0x180119f94
18011a0a1:	4c 8d 53 f9          	lea    -0x7(%rbx),%r10
18011a0a5:	e9 fe 00 00 00       	jmp    0x18011a1a8
18011a0aa:	44 0f be 01          	movsbl (%rcx),%r8d
18011a0ae:	48 ff c1             	inc    %rcx
18011a0b1:	41 83 f8 7f          	cmp    $0x7f,%r8d
18011a0b5:	77 73                	ja     0x18011a12a
18011a0b7:	f6 c1 01             	test   $0x1,%cl
18011a0ba:	74 0d                	je     0x18011a0c9
18011a0bc:	44 0f be 01          	movsbl (%rcx),%r8d
18011a0c0:	48 ff c1             	inc    %rcx
18011a0c3:	41 83 f8 7f          	cmp    $0x7f,%r8d
18011a0c7:	77 61                	ja     0x18011a12a
18011a0c9:	f6 c1 02             	test   $0x2,%cl
18011a0cc:	74 11                	je     0x18011a0df
18011a0ce:	44 0f b7 01          	movzwl (%rcx),%r8d
18011a0d2:	41 f7 c0 80 80 00 00 	test   $0x8080,%r8d
18011a0d9:	75 42                	jne    0x18011a11d
18011a0db:	48 83 c1 02          	add    $0x2,%rcx
18011a0df:	41 b9 80 80 80 80    	mov    $0x80808080,%r9d
18011a0e5:	49 3b ca             	cmp    %r10,%rcx
18011a0e8:	0f 83 de fe ff ff    	jae    0x180119fcc
18011a0ee:	8b 41 04             	mov    0x4(%rcx),%eax
18011a0f1:	44 8b 01             	mov    (%rcx),%r8d
18011a0f4:	41 0b c0             	or     %r8d,%eax
18011a0f7:	41 85 c1             	test   %eax,%r9d
18011a0fa:	75 21                	jne    0x18011a11d
18011a0fc:	48 83 c1 08          	add    $0x8,%rcx
18011a100:	49 3b ca             	cmp    %r10,%rcx
18011a103:	0f 83 c3 fe ff ff    	jae    0x180119fcc
18011a109:	8b 41 04             	mov    0x4(%rcx),%eax
18011a10c:	44 8b 01             	mov    (%rcx),%r8d
18011a10f:	41 0b c0             	or     %r8d,%eax
18011a112:	41 85 c1             	test   %eax,%r9d
18011a115:	75 06                	jne    0x18011a11d
18011a117:	48 83 c1 08          	add    $0x8,%rcx
18011a11b:	eb c8                	jmp    0x18011a0e5
18011a11d:	45 0f b6 c0          	movzbl %r8b,%r8d
18011a121:	48 ff c1             	inc    %rcx
18011a124:	41 83 f8 7f          	cmp    $0x7f,%r8d
18011a128:	76 7e                	jbe    0x18011a1a8
18011a12a:	44 0f be 09          	movsbl (%rcx),%r9d
18011a12e:	48 ff c1             	inc    %rcx
18011a131:	41 f6 c0 40          	test   $0x40,%r8b
18011a135:	74 7f                	je     0x18011a1b6
18011a137:	41 8b c1             	mov    %r9d,%eax
18011a13a:	24 c0                	and    $0xc0,%al
18011a13c:	3c 80                	cmp    $0x80,%al
18011a13e:	75 76                	jne    0x18011a1b6
18011a140:	41 f6 c0 20          	test   $0x20,%r8b
18011a144:	74 5a                	je     0x18011a1a0
18011a146:	41 83 e1 3f          	and    $0x3f,%r9d
18011a14a:	41 8b c0             	mov    %r8d,%eax
18011a14d:	83 e0 0f             	and    $0xf,%eax
18011a150:	c1 e0 06             	shl    $0x6,%eax
18011a153:	41 0b c1             	or     %r9d,%eax
18011a156:	41 f6 c0 10          	test   $0x10,%r8b
18011a15a:	74 22                	je     0x18011a17e
18011a15c:	c1 e8 04             	shr    $0x4,%eax
18011a15f:	ff c8                	dec    %eax
18011a161:	83 f8 0f             	cmp    $0xf,%eax
18011a164:	77 50                	ja     0x18011a1b6
18011a166:	8a 01                	mov    (%rcx),%al
18011a168:	24 c0                	and    $0xc0,%al
18011a16a:	3c 80                	cmp    $0x80,%al
18011a16c:	75 48                	jne    0x18011a1b6
18011a16e:	8a 41 01             	mov    0x1(%rcx),%al
18011a171:	24 c0                	and    $0xc0,%al
18011a173:	3c 80                	cmp    $0x80,%al
18011a175:	75 3f                	jne    0x18011a1b6
18011a177:	b8 02 00 00 00       	mov    $0x2,%eax
18011a17c:	eb 1b                	jmp    0x18011a199
18011a17e:	25 e0 03 00 00       	and    $0x3e0,%eax
18011a183:	74 31                	je     0x18011a1b6
18011a185:	3d 60 03 00 00       	cmp    $0x360,%eax
18011a18a:	74 2a                	je     0x18011a1b6
18011a18c:	8a 01                	mov    (%rcx),%al
18011a18e:	24 c0                	and    $0xc0,%al
18011a190:	3c 80                	cmp    $0x80,%al
18011a192:	75 22                	jne    0x18011a1b6
18011a194:	b8 01 00 00 00       	mov    $0x1,%eax
18011a199:	03 d5                	add    %ebp,%edx
18011a19b:	48 03 c8             	add    %rax,%rcx
18011a19e:	eb 06                	jmp    0x18011a1a6
18011a1a0:	41 f6 c0 1e          	test   $0x1e,%r8b
18011a1a4:	74 10                	je     0x18011a1b6
18011a1a6:	03 d5                	add    %ebp,%edx
18011a1a8:	49 3b ca             	cmp    %r10,%rcx
18011a1ab:	0f 82 f9 fe ff ff    	jb     0x18011a0aa
18011a1b1:	e9 16 fe ff ff       	jmp    0x180119fcc
18011a1b6:	48 83 e9 02          	sub    $0x2,%rcx
18011a1ba:	e9 0d fe ff ff       	jmp    0x180119fcc
18011a1bf:	45 33 c9             	xor    %r9d,%r9d
18011a1c2:	45 85 c9             	test   %r9d,%r9d
18011a1c5:	74 0f                	je     0x18011a1d6
18011a1c7:	41 c1 f9 1e          	sar    $0x1e,%r9d
18011a1cb:	ff c2                	inc    %edx
18011a1cd:	41 03 d1             	add    %r9d,%edx
18011a1d0:	41 bb 07 01 00 00    	mov    $0x107,%r11d
18011a1d6:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
18011a1db:	8d 0c 12             	lea    (%rdx,%rdx,1),%ecx
18011a1de:	48 8b 6c 24 10       	mov    0x10(%rsp),%rbp
18011a1e3:	41 8b c3             	mov    %r11d,%eax
18011a1e6:	89 0f                	mov    %ecx,(%rdi)
18011a1e8:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
18011a1ed:	c3                   	ret