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
18011a1ee:	cc                   	int3
18011a1ef:	cc                   	int3
18011a1f0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18011a1f5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18011a1fa:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18011a1ff:	57                   	push   %rdi
18011a200:	41 55                	push   %r13
18011a202:	41 56                	push   %r14
18011a204:	48 83 ec 20          	sub    $0x20,%rsp
18011a208:	8b 6c 24 60          	mov    0x60(%rsp),%ebp
18011a20c:	33 ff                	xor    %edi,%edi
18011a20e:	8b c2                	mov    %edx,%eax
18011a210:	49 03 e9             	add    %r9,%rbp
18011a213:	48 d1 e8             	shr    $1,%rax
18011a216:	33 d2                	xor    %edx,%edx
18011a218:	49 8b d8             	mov    %r8,%rbx
18011a21b:	48 8b f1             	mov    %rcx,%rsi
18011a21e:	4c 8b d1             	mov    %rcx,%r10
18011a221:	4c 8d 34 41          	lea    (%rcx,%rax,2),%r14
18011a225:	4d 85 c9             	test   %r9,%r9
18011a228:	75 0a                	jne    0x18011a234
18011a22a:	b8 f2 00 00 c0       	mov    $0xc00000f2,%eax
18011a22f:	e9 2c 04 00 00       	jmp    0x18011a660
18011a234:	48 85 f6             	test   %rsi,%rsi
18011a237:	75 20                	jne    0x18011a259
18011a239:	48 85 db             	test   %rbx,%rbx
18011a23c:	75 0a                	jne    0x18011a248
18011a23e:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18011a243:	e9 18 04 00 00       	jmp    0x18011a660
18011a248:	8b 54 24 60          	mov    0x60(%rsp),%edx
18011a24c:	49 8b c9             	mov    %r9,%rcx
18011a24f:	e8 20 fd ff ff       	call   0x180119f74
18011a254:	e9 07 04 00 00       	jmp    0x18011a660
18011a259:	41 bd 7f 00 00 00    	mov    $0x7f,%r13d
18011a25f:	41 b8 fd ff 00 00    	mov    $0xfffd,%r8d
18011a265:	41 bb ff 07 00 00    	mov    $0x7ff,%r11d
18011a26b:	4c 3b cd             	cmp    %rbp,%r9
18011a26e:	0f 83 a4 03 00 00    	jae    0x18011a618
18011a274:	41 0f be 09          	movsbl (%r9),%ecx
18011a278:	49 ff c1             	inc    %r9
18011a27b:	85 d2                	test   %edx,%edx
18011a27d:	75 3e                	jne    0x18011a2bd
18011a27f:	8b d1                	mov    %ecx,%edx
18011a281:	41 3b cd             	cmp    %r13d,%ecx
18011a284:	0f 86 d5 00 00 00    	jbe    0x18011a35f
18011a28a:	f6 c2 40             	test   $0x40,%dl
18011a28d:	0f 84 22 01 00 00    	je     0x18011a3b5
18011a293:	f6 c2 20             	test   $0x20,%dl
18011a296:	0f 84 11 01 00 00    	je     0x18011a3ad
18011a29c:	8b c2                	mov    %edx,%eax
18011a29e:	83 e0 0f             	and    $0xf,%eax
18011a2a1:	f6 c2 10             	test   $0x10,%dl
18011a2a4:	8b d0                	mov    %eax,%edx
18011a2a6:	0f 84 13 01 00 00    	je     0x18011a3bf
18011a2ac:	83 f8 04             	cmp    $0x4,%eax
18011a2af:	0f 87 00 01 00 00    	ja     0x18011a3b5
18011a2b5:	81 ca 00 0c 4d 50    	or     $0x504d0c00,%edx
18011a2bb:	eb ae                	jmp    0x18011a26b
18011a2bd:	8b c1                	mov    %ecx,%eax
18011a2bf:	24 c0                	and    $0xc0,%al
18011a2c1:	3c 80                	cmp    $0x80,%al
18011a2c3:	74 08                	je     0x18011a2cd
18011a2c5:	49 ff c9             	dec    %r9
18011a2c8:	e9 e8 00 00 00       	jmp    0x18011a3b5
18011a2cd:	8b c2                	mov    %edx,%eax
18011a2cf:	83 e1 3f             	and    $0x3f,%ecx
18011a2d2:	c1 e0 06             	shl    $0x6,%eax
18011a2d5:	8b d1                	mov    %ecx,%edx
18011a2d7:	0b d0                	or     %eax,%edx
18011a2d9:	0f ba e2 1d          	bt     $0x1d,%edx
18011a2dd:	72 43                	jb     0x18011a322
18011a2df:	0f ba e2 1c          	bt     $0x1c,%edx
18011a2e3:	73 20                	jae    0x18011a305
18011a2e5:	0f ba e2 17          	bt     $0x17,%edx
18011a2e9:	72 80                	jb     0x18011a26b
18011a2eb:	8b c2                	mov    %edx,%eax
18011a2ed:	25 f0 01 00 00       	and    $0x1f0,%eax
18011a2f2:	83 e8 10             	sub    $0x10,%eax
18011a2f5:	3d f0 00 00 00       	cmp    $0xf0,%eax
18011a2fa:	0f 87 b5 00 00 00    	ja     0x18011a3b5
18011a300:	e9 66 ff ff ff       	jmp    0x18011a26b
18011a305:	8b c2                	mov    %edx,%eax
18011a307:	25 e0 03 00 00       	and    $0x3e0,%eax
18011a30c:	0f 84 a3 00 00 00    	je     0x18011a3b5
18011a312:	3d 60 03 00 00       	cmp    $0x360,%eax
18011a317:	0f 84 98 00 00 00    	je     0x18011a3b5
18011a31d:	e9 49 ff ff ff       	jmp    0x18011a26b
18011a322:	8b c2                	mov    %edx,%eax
18011a324:	25 00 00 1f 10       	and    $0x101f0000,%eax
18011a329:	3d 00 00 00 10       	cmp    $0x10000000,%eax
18011a32e:	76 2f                	jbe    0x18011a35f
18011a330:	4d 3b d6             	cmp    %r14,%r10
18011a333:	0f 83 f4 02 00 00    	jae    0x18011a62d
18011a339:	8b c2                	mov    %edx,%eax
18011a33b:	b9 40 28 00 00       	mov    $0x2840,%ecx
18011a340:	c1 e8 0a             	shr    $0xa,%eax
18011a343:	66 41 23 c3          	and    %r11w,%ax
18011a347:	66 2b c1             	sub    %cx,%ax
18011a34a:	66 41 89 02          	mov    %ax,(%r10)
18011a34e:	b8 ff 03 00 00       	mov    $0x3ff,%eax
18011a353:	23 d0                	and    %eax,%edx
18011a355:	49 83 c2 02          	add    $0x2,%r10
18011a359:	81 c2 00 dc 00 00    	add    $0xdc00,%edx
18011a35f:	4d 3b d6             	cmp    %r14,%r10
18011a362:	0f 83 c5 02 00 00    	jae    0x18011a62d
18011a368:	66 41 89 12          	mov    %dx,(%r10)
18011a36c:	49 8b c6             	mov    %r14,%rax
18011a36f:	49 83 c2 02          	add    $0x2,%r10
18011a373:	48 8b cd             	mov    %rbp,%rcx
18011a376:	49 2b c2             	sub    %r10,%rax
18011a379:	49 2b c9             	sub    %r9,%rcx
18011a37c:	48 d1 f8             	sar    $1,%rax
18011a37f:	48 83 f9 0d          	cmp    $0xd,%rcx
18011a383:	77 55                	ja     0x18011a3da
18011a385:	48 3b c1             	cmp    %rcx,%rax
18011a388:	72 49                	jb     0x18011a3d3
18011a38a:	4c 3b cd             	cmp    %rbp,%r9
18011a38d:	0f 83 83 02 00 00    	jae    0x18011a616
18011a393:	41 0f be 11          	movsbl (%r9),%edx
18011a397:	49 ff c1             	inc    %r9
18011a39a:	41 3b d5             	cmp    %r13d,%edx
18011a39d:	0f 87 e7 fe ff ff    	ja     0x18011a28a
18011a3a3:	66 41 89 12          	mov    %dx,(%r10)
18011a3a7:	49 83 c2 02          	add    $0x2,%r10
18011a3ab:	eb dd                	jmp    0x18011a38a
18011a3ad:	83 e2 1f             	and    $0x1f,%edx
18011a3b0:	83 fa 01             	cmp    $0x1,%edx
18011a3b3:	77 15                	ja     0x18011a3ca
18011a3b5:	bf 07 01 00 00       	mov    $0x107,%edi
18011a3ba:	41 8b d0             	mov    %r8d,%edx
18011a3bd:	eb a0                	jmp    0x18011a35f
18011a3bf:	81 ca 00 80 22 48    	or     $0x48228000,%edx
18011a3c5:	e9 a1 fe ff ff       	jmp    0x18011a26b
18011a3ca:	0f ba ea 17          	bts    $0x17,%edx
18011a3ce:	e9 98 fe ff ff       	jmp    0x18011a26b
18011a3d3:	33 d2                	xor    %edx,%edx
18011a3d5:	e9 91 fe ff ff       	jmp    0x18011a26b
18011a3da:	48 3b c8             	cmp    %rax,%rcx
18011a3dd:	48 0f 42 c1          	cmovb  %rcx,%rax
18011a3e1:	4c 8d 58 f9          	lea    -0x7(%rax),%r11
18011a3e5:	4f 8d 1c 5a          	lea    (%r10,%r11,2),%r11
18011a3e9:	4d 3b d3             	cmp    %r11,%r10
18011a3ec:	0f 83 1d 02 00 00    	jae    0x18011a60f
18011a3f2:	41 0f be 09          	movsbl (%r9),%ecx
18011a3f6:	49 ff c1             	inc    %r9
18011a3f9:	41 3b cd             	cmp    %r13d,%ecx
18011a3fc:	0f 87 fe 00 00 00    	ja     0x18011a500
18011a402:	66 41 89 0a          	mov    %cx,(%r10)
18011a406:	49 83 c2 02          	add    $0x2,%r10
18011a40a:	41 f6 c1 01          	test   $0x1,%r9b
18011a40e:	74 18                	je     0x18011a428
18011a410:	41 0f be 09          	movsbl (%r9),%ecx
18011a414:	49 ff c1             	inc    %r9
18011a417:	41 3b cd             	cmp    %r13d,%ecx
18011a41a:	0f 87 e0 00 00 00    	ja     0x18011a500
18011a420:	66 41 89 0a          	mov    %cx,(%r10)
18011a424:	49 83 c2 02          	add    $0x2,%r10
18011a428:	41 f6 c1 02          	test   $0x2,%r9b
18011a42c:	74 2f                	je     0x18011a45d
18011a42e:	41 0f b7 09          	movzwl (%r9),%ecx
18011a432:	f7 c1 80 80 00 00    	test   $0x8080,%ecx
18011a438:	0f 85 ae 00 00 00    	jne    0x18011a4ec
18011a43e:	0f b7 c1             	movzwl %cx,%eax
18011a441:	49 83 c1 02          	add    $0x2,%r9
18011a445:	c1 e9 08             	shr    $0x8,%ecx
18011a448:	66 41 23 c5          	and    %r13w,%ax
18011a44c:	66 41 23 cd          	and    %r13w,%cx
18011a450:	66 41 89 02          	mov    %ax,(%r10)
18011a454:	66 41 89 4a 02       	mov    %cx,0x2(%r10)
18011a459:	49 83 c2 04          	add    $0x4,%r10
18011a45d:	4d 3b d3             	cmp    %r11,%r10
18011a460:	0f 83 a3 01 00 00    	jae    0x18011a609
18011a466:	41 8b 51 04          	mov    0x4(%r9),%edx
18011a46a:	8b c2                	mov    %edx,%eax
18011a46c:	41 8b 09             	mov    (%r9),%ecx