18012f191:	ba 00 02 00 00       	mov    $0x200,%edx
18012f196:	49 83 c5 08          	add    $0x8,%r13
18012f19a:	0f ba e7 0f          	bt     $0xf,%edi
18012f19e:	72 0a                	jb     0x18012f1aa
18012f1a0:	0f ba e7 0c          	bt     $0xc,%edi
18012f1a4:	0f 83 fd 01 00 00    	jae    0x18012f3a7
18012f1aa:	49 8b 45 f8          	mov    -0x8(%r13),%rax
18012f1ae:	e9 1f 02 00 00       	jmp    0x18012f3d2
18012f1b3:	49 8b 4d 00          	mov    0x0(%r13),%rcx
18012f1b7:	49 83 c5 08          	add    $0x8,%r13
18012f1bb:	48 85 c9             	test   %rcx,%rcx
18012f1be:	74 49                	je     0x18012f209
18012f1c0:	48 8b 59 08          	mov    0x8(%rcx),%rbx
18012f1c4:	48 85 db             	test   %rbx,%rbx
18012f1c7:	74 40                	je     0x18012f209
18012f1c9:	0f b7 01             	movzwl (%rcx),%eax
18012f1cc:	66 39 41 02          	cmp    %ax,0x2(%rcx)
18012f1d0:	0f 82 10 06 00 00    	jb     0x18012f7e6
18012f1d6:	44 8b e0             	mov    %eax,%r12d
18012f1d9:	0f ba e7 0b          	bt     $0xb,%edi
18012f1dd:	73 23                	jae    0x18012f202
18012f1df:	f7 d0                	not    %eax
18012f1e1:	a8 01                	test   $0x1,%al
18012f1e3:	0f 84 fd 05 00 00    	je     0x18012f7e6
18012f1e9:	8b c3                	mov    %ebx,%eax
18012f1eb:	f7 d0                	not    %eax
18012f1ed:	a8 01                	test   $0x1,%al
18012f1ef:	0f 84 f1 05 00 00    	je     0x18012f7e6
18012f1f5:	c7 44 24 44 01 00 00 	movl   $0x1,0x44(%rsp)
18012f1fc:	00
18012f1fd:	41 d1 ec             	shr    $1,%r12d
18012f200:	eb 1e                	jmp    0x18012f220
18012f202:	44 89 5c 24 44       	mov    %r11d,0x44(%rsp)
18012f207:	eb 17                	jmp    0x18012f220
18012f209:	48 8d 05 78 2e 01 00 	lea    0x12e78(%rip),%rax        # 0x180142088
18012f210:	49 83 cc ff          	or     $0xffffffffffffffff,%r12
18012f214:	48 8b d8             	mov    %rax,%rbx
18012f217:	49 ff c4             	inc    %r12
18012f21a:	46 38 1c 20          	cmp    %r11b,(%rax,%r12,1)
18012f21e:	75 f7                	jne    0x18012f217
18012f220:	44 89 64 24 40       	mov    %r12d,0x40(%rsp)
18012f225:	e9 6d 02 00 00       	jmp    0x18012f497
18012f22a:	f7 c7 30 08 00 00    	test   $0x830,%edi
18012f230:	75 04                	jne    0x18012f236
18012f232:	0f ba ef 0b          	bts    $0xb,%edi
18012f236:	49 8b 5d 00          	mov    0x0(%r13),%rbx
18012f23a:	83 fe ff             	cmp    $0xffffffff,%esi
18012f23d:	8b ce                	mov    %esi,%ecx
18012f23f:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
18012f244:	0f 44 c8             	cmove  %eax,%ecx
18012f247:	49 83 c5 08          	add    $0x8,%r13
18012f24b:	f7 c7 10 08 00 00    	test   $0x810,%edi
18012f251:	0f 84 d7 00 00 00    	je     0x18012f32e
18012f257:	48 8b c3             	mov    %rbx,%rax
18012f25a:	48 85 db             	test   %rbx,%rbx
18012f25d:	75 0e                	jne    0x18012f26d
18012f25f:	48 8d 1d 2a 2e 01 00 	lea    0x12e2a(%rip),%rbx        # 0x180142090
18012f266:	48 8d 05 23 2e 01 00 	lea    0x12e23(%rip),%rax        # 0x180142090
18012f26d:	c7 44 24 44 01 00 00 	movl   $0x1,0x44(%rsp)
18012f274:	00
18012f275:	e9 a8 00 00 00       	jmp    0x18012f322
18012f27a:	f7 c7 30 08 00 00    	test   $0x830,%edi
18012f280:	75 04                	jne    0x18012f286
18012f282:	0f ba ef 0b          	bts    $0xb,%edi
18012f286:	49 83 c5 08          	add    $0x8,%r13
18012f28a:	f7 c7 10 08 00 00    	test   $0x810,%edi
18012f290:	74 30                	je     0x18012f2c2
18012f292:	45 0f b7 4d f8       	movzwl -0x8(%r13),%r9d
18012f297:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
18012f29c:	41 b8 00 02 00 00    	mov    $0x200,%r8d
18012f2a2:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
18012f2a7:	e8 7c 05 00 00       	call   0x18012f828
18012f2ac:	44 8b 64 24 40       	mov    0x40(%rsp),%r12d
18012f2b1:	45 33 db             	xor    %r11d,%r11d
18012f2b4:	85 c0                	test   %eax,%eax
18012f2b6:	74 1d                	je     0x18012f2d5
18012f2b8:	c7 44 24 5c 01 00 00 	movl   $0x1,0x5c(%rsp)
18012f2bf:	00
18012f2c0:	eb 13                	jmp    0x18012f2d5
18012f2c2:	41 8a 45 f8          	mov    -0x8(%r13),%al
18012f2c6:	41 bc 01 00 00 00    	mov    $0x1,%r12d
18012f2cc:	88 44 24 70          	mov    %al,0x70(%rsp)
18012f2d0:	44 89 64 24 40       	mov    %r12d,0x40(%rsp)
18012f2d5:	48 8d 5c 24 70       	lea    0x70(%rsp),%rbx
18012f2da:	e9 b8 01 00 00       	jmp    0x18012f497
18012f2df:	83 e9 6e             	sub    $0x6e,%ecx
18012f2e2:	0f 84 fe 04 00 00    	je     0x18012f7e6
18012f2e8:	83 e9 01             	sub    $0x1,%ecx
18012f2eb:	0f 84 9b 00 00 00    	je     0x18012f38c
18012f2f1:	83 e9 01             	sub    $0x1,%ecx
18012f2f4:	74 67                	je     0x18012f35d
18012f2f6:	83 e9 03             	sub    $0x3,%ecx
18012f2f9:	0f 84 37 ff ff ff    	je     0x18012f236
18012f2ff:	83 e9 02             	sub    $0x2,%ecx
18012f302:	0f 84 83 fe ff ff    	je     0x18012f18b
18012f308:	83 f9 03             	cmp    $0x3,%ecx
18012f30b:	0f 85 86 01 00 00    	jne    0x18012f497
18012f311:	8d 41 24             	lea    0x24(%rcx),%eax
18012f314:	eb 53                	jmp    0x18012f369
18012f316:	ff c9                	dec    %ecx
18012f318:	66 44 39 18          	cmp    %r11w,(%rax)
18012f31c:	74 08                	je     0x18012f326
18012f31e:	48 83 c0 02          	add    $0x2,%rax
18012f322:	85 c9                	test   %ecx,%ecx
18012f324:	75 f0                	jne    0x18012f316
18012f326:	48 2b c3             	sub    %rbx,%rax
18012f329:	48 d1 f8             	sar    $1,%rax
18012f32c:	eb 23                	jmp    0x18012f351
18012f32e:	48 85 db             	test   %rbx,%rbx
18012f331:	48 8d 05 50 2d 01 00 	lea    0x12d50(%rip),%rax        # 0x180142088
18012f338:	48 0f 45 c3          	cmovne %rbx,%rax
18012f33c:	48 8b d8             	mov    %rax,%rbx
18012f33f:	eb 0a                	jmp    0x18012f34b
18012f341:	ff c9                	dec    %ecx
18012f343:	44 38 18             	cmp    %r11b,(%rax)
18012f346:	74 07                	je     0x18012f34f
18012f348:	48 ff c0             	inc    %rax
18012f34b:	85 c9                	test   %ecx,%ecx
18012f34d:	75 f2                	jne    0x18012f341
18012f34f:	2b c3                	sub    %ebx,%eax
18012f351:	44 8b e0             	mov    %eax,%r12d
18012f354:	89 44 24 40          	mov    %eax,0x40(%rsp)
18012f358:	e9 3a 01 00 00       	jmp    0x18012f497
18012f35d:	41 8b f2             	mov    %r10d,%esi
18012f360:	0f ba ef 0f          	bts    $0xf,%edi
18012f364:	b8 07 00 00 00       	mov    $0x7,%eax
18012f369:	89 44 24 58          	mov    %eax,0x58(%rsp)
18012f36d:	40 84 ff             	test   %dil,%dil
18012f370:	0f 89 1b fe ff ff    	jns    0x18012f191
18012f376:	04 51                	add    $0x51,%al
18012f378:	c6 44 24 34 30       	movb   $0x30,0x34(%rsp)
18012f37d:	88 44 24 35          	mov    %al,0x35(%rsp)
18012f381:	41 be 02 00 00 00    	mov    $0x2,%r14d
18012f387:	e9 05 fe ff ff       	jmp    0x18012f191
18012f38c:	41 ba 08 00 00 00    	mov    $0x8,%r10d
18012f392:	40 84 ff             	test   %dil,%dil
18012f395:	0f 89 f6 fd ff ff    	jns    0x18012f191
18012f39b:	ba 00 02 00 00       	mov    $0x200,%edx
18012f3a0:	0b fa                	or     %edx,%edi
18012f3a2:	e9 ef fd ff ff       	jmp    0x18012f196
18012f3a7:	8b c7                	mov    %edi,%eax
18012f3a9:	83 e0 40             	and    $0x40,%eax
18012f3ac:	40 f6 c7 20          	test   $0x20,%dil
18012f3b0:	74 12                	je     0x18012f3c4
18012f3b2:	85 c0                	test   %eax,%eax
18012f3b4:	74 07                	je     0x18012f3bd
18012f3b6:	49 0f bf 45 f8       	movswq -0x8(%r13),%rax
18012f3bb:	eb 15                	jmp    0x18012f3d2
18012f3bd:	41 0f b7 45 f8       	movzwl -0x8(%r13),%eax
18012f3c2:	eb 0e                	jmp    0x18012f3d2
18012f3c4:	85 c0                	test   %eax,%eax
18012f3c6:	74 06                	je     0x18012f3ce
18012f3c8:	49 63 45 f8          	movslq -0x8(%r13),%rax
18012f3cc:	eb 04                	jmp    0x18012f3d2
18012f3ce:	41 8b 45 f8          	mov    -0x8(%r13),%eax
18012f3d2:	40 f6 c7 40          	test   $0x40,%dil
18012f3d6:	74 0c                	je     0x18012f3e4
18012f3d8:	48 85 c0             	test   %rax,%rax
18012f3db:	79 07                	jns    0x18012f3e4
18012f3dd:	48 f7 d8             	neg    %rax
18012f3e0:	0f ba ef 08          	bts    $0x8,%edi
18012f3e4:	f7 c7 00 90 00 00    	test   $0x9000,%edi
18012f3ea:	44 8b c0             	mov    %eax,%r8d
18012f3ed:	4c 0f 45 c0          	cmovne %rax,%r8
18012f3f1:	85 f6                	test   %esi,%esi
18012f3f3:	79 07                	jns    0x18012f3fc
18012f3f5:	be 01 00 00 00       	mov    $0x1,%esi
18012f3fa:	eb 08                	jmp    0x18012f404
18012f3fc:	83 e7 f7             	and    $0xfffffff7,%edi
18012f3ff:	3b f2                	cmp    %edx,%esi
18012f401:	0f 4f f2             	cmovg  %edx,%esi
18012f404:	49 8b c0             	mov    %r8,%rax
18012f407:	48 8d 9d 6f 01 00 00 	lea    0x16f(%rbp),%rbx
18012f40e:	48 f7 d8             	neg    %rax
18012f411:	1b c9                	sbb    %ecx,%ecx
18012f413:	41 23 ce             	and    %r14d,%ecx
18012f416:	44 8b 74 24 58       	mov    0x58(%rsp),%r14d
18012f41b:	89 4c 24 30          	mov    %ecx,0x30(%rsp)
18012f41f:	44 8b c9             	mov    %ecx,%r9d
18012f422:	8b ce                	mov    %esi,%ecx
18012f424:	ff ce                	dec    %esi
18012f426:	85 c9                	test   %ecx,%ecx
18012f428:	7f 05                	jg     0x18012f42f
18012f42a:	4d 85 c0             	test   %r8,%r8
18012f42d:	74 20                	je     0x18012f44f
18012f42f:	33 d2                	xor    %edx,%edx
18012f431:	49 8b c0             	mov    %r8,%rax
18012f434:	49 f7 f2             	div    %r10
18012f437:	4c 8b c0             	mov    %rax,%r8
18012f43a:	8d 42 30             	lea    0x30(%rdx),%eax
18012f43d:	83 f8 39             	cmp    $0x39,%eax
18012f440:	7e 06                	jle    0x18012f448
18012f442:	41 8d 46 30          	lea    0x30(%r14),%eax
18012f446:	03 c2                	add    %edx,%eax
18012f448:	88 03                	mov    %al,(%rbx)
18012f44a:	48 ff cb             	dec    %rbx
18012f44d:	eb d3                	jmp    0x18012f422
18012f44f:	48 8d 85 6f 01 00 00 	lea    0x16f(%rbp),%rax
18012f456:	89 74 24 3c          	mov    %esi,0x3c(%rsp)
18012f45a:	2b c3                	sub    %ebx,%eax
18012f45c:	45 8b f1             	mov    %r9d,%r14d
18012f45f:	48 ff c3             	inc    %rbx
18012f462:	89 44 24 40          	mov    %eax,0x40(%rsp)
18012f466:	44 8b e0             	mov    %eax,%r12d
18012f469:	0f ba e7 09          	bt     $0x9,%edi
18012f46d:	73 25                	jae    0x18012f494
18012f46f:	85 c0                	test   %eax,%eax
18012f471:	74 0a                	je     0x18012f47d
18012f473:	80 3b 30             	cmpb   $0x30,(%rbx)
18012f476:	44 89 4c 24 30       	mov    %r9d,0x30(%rsp)
18012f47b:	74 17                	je     0x18012f494
18012f47d:	48 ff cb             	dec    %rbx
18012f480:	44 89 4c 24 30       	mov    %r9d,0x30(%rsp)
18012f485:	44 8d 60 01          	lea    0x1(%rax),%r12d
18012f489:	45 8b f1             	mov    %r9d,%r14d
18012f48c:	44 89 64 24 40       	mov    %r12d,0x40(%rsp)
18012f491:	c6 03 30             	movb   $0x30,(%rbx)
18012f494:	45 33 db             	xor    %r11d,%r11d
18012f497:	44 39 5c 24 5c       	cmp    %r11d,0x5c(%rsp)
18012f49c:	0f 85 15 03 00 00    	jne    0x18012f7b7
18012f4a2:	40 f6 c7 40          	test   $0x40,%dil
18012f4a6:	74 2d                	je     0x18012f4d5
18012f4a8:	0f ba e7 08          	bt     $0x8,%edi
18012f4ac:	73 07                	jae    0x18012f4b5
18012f4ae:	c6 44 24 34 2d       	movb   $0x2d,0x34(%rsp)
18012f4b3:	eb 18                	jmp    0x18012f4cd
18012f4b5:	40 f6 c7 01          	test   $0x1,%dil
18012f4b9:	74 07                	je     0x18012f4c2
18012f4bb:	c6 44 24 34 2b       	movb   $0x2b,0x34(%rsp)
18012f4c0:	eb 0b                	jmp    0x18012f4cd
18012f4c2:	40 f6 c7 02          	test   $0x2,%dil
18012f4c6:	74 0d                	je     0x18012f4d5
18012f4c8:	c6 44 24 34 20       	movb   $0x20,0x34(%rsp)
18012f4cd:	c7 44 24 30 01 00 00 	movl   $0x1,0x30(%rsp)
18012f4d4:	00
18012f4d5:	44 8b 74 24 4c       	mov    0x4c(%rsp),%r14d
18012f4da:	8b f7                	mov    %edi,%esi
18012f4dc:	8b 44 24 30          	mov    0x30(%rsp),%eax
18012f4e0:	45 2b f4             	sub    %r12d,%r14d
18012f4e3:	44 2b f0             	sub    %eax,%r14d
18012f4e6:	83 e6 0c             	and    $0xc,%esi
18012f4e9:	75 18                	jne    0x18012f503
18012f4eb:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
18012f4f0:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
18012f4f5:	41 8b d6             	mov    %r14d,%edx
18012f4f8:	b1 20                	mov    $0x20,%cl
18012f4fa:	e8 0d d4 ff ff       	call   0x18012c90c
18012f4ff:	8b 44 24 30          	mov    0x30(%rsp),%eax
18012f503:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
18012f508:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
18012f50d:	8b d0                	mov    %eax,%edx
18012f50f:	48 8d 4c 24 34       	lea    0x34(%rsp),%rcx
18012f514:	e8 d3 04 00 00       	call   0x18012f9ec
18012f519:	83 fe 08             	cmp    $0x8,%esi
18012f51c:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18012f521:	75 12                	jne    0x18012f535
18012f523:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
18012f528:	4c 8b c6             	mov    %rsi,%r8
18012f52b:	41 8b d6             	mov    %r14d,%edx
18012f52e:	b1 30                	mov    $0x30,%cl
18012f530:	e8 d7 d3 ff ff       	call   0x18012c90c
18012f535:	83 7c 24 44 00       	cmpl   $0x0,0x44(%rsp)
18012f53a:	74 70                	je     0x18012f5ac
18012f53c:	45 85 e4             	test   %r12d,%r12d
18012f53f:	7e 6b                	jle    0x18012f5ac
18012f541:	83 64 24 60 00       	andl   $0x0,0x60(%rsp)
18012f546:	4c 8b fb             	mov    %rbx,%r15
18012f549:	41 8b f4             	mov    %r12d,%esi
18012f54c:	45 0f b7 0f          	movzwl (%r15),%r9d
18012f550:	48 8d 95 70 01 00 00 	lea    0x170(%rbp),%rdx
18012f557:	41 b8 06 00 00 00    	mov    $0x6,%r8d
18012f55d:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
18012f562:	4d 8d 7f 02          	lea    0x2(%r15),%r15
18012f566:	ff ce                	dec    %esi
18012f568:	e8 bb 02 00 00       	call   0x18012f828
18012f56d:	45 33 db             	xor    %r11d,%r11d
18012f570:	85 c0                	test   %eax,%eax
18012f572:	75 27                	jne    0x18012f59b
18012f574:	8b 54 24 60          	mov    0x60(%rsp),%edx
18012f578:	85 d2                	test   %edx,%edx
18012f57a:	74 1f                	je     0x18012f59b
18012f57c:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
18012f581:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
18012f586:	48 8d 8d 70 01 00 00 	lea    0x170(%rbp),%rcx
18012f58d:	e8 5a 04 00 00       	call   0x18012f9ec
18012f592:	45 33 db             	xor    %r11d,%r11d
18012f595:	85 f6                	test   %esi,%esi
18012f597:	75 b3                	jne    0x18012f54c
18012f599:	eb 05                	jmp    0x18012f5a0
18012f59b:	83 4c 24 38 ff       	orl    $0xffffffff,0x38(%rsp)
18012f5a0:	4c 8b 7c 24 68       	mov    0x68(%rsp),%r15
18012f5a5:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18012f5aa:	eb 16                	jmp    0x18012f5c2
18012f5ac:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
18012f5b1:	4c 8b c6             	mov    %rsi,%r8
18012f5b4:	41 8b d4             	mov    %r12d,%edx
18012f5b7:	48 8b cb             	mov    %rbx,%rcx
18012f5ba:	e8 2d 04 00 00       	call   0x18012f9ec
18012f5bf:	45 33 db             	xor    %r11d,%r11d
18012f5c2:	44 39 5c 24 38       	cmp    %r11d,0x38(%rsp)
18012f5c7:	0f 8c e1 01 00 00    	jl     0x18012f7ae
18012f5cd:	40 f6 c7 04          	test   $0x4,%dil
18012f5d1:	0f 84 d7 01 00 00    	je     0x18012f7ae
18012f5d7:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
18012f5dc:	4c 8b c6             	mov    %rsi,%r8
18012f5df:	41 8b d6             	mov    %r14d,%edx
18012f5e2:	b1 20                	mov    $0x20,%cl
18012f5e4:	e8 23 d3 ff ff       	call   0x18012c90c
18012f5e9:	8b 74 24 3c          	mov    0x3c(%rsp),%esi
18012f5ed:	44 8b 74 24 30       	mov    0x30(%rsp),%r14d
18012f5f2:	45 33 db             	xor    %r11d,%r11d
18012f5f5:	e9 bd 01 00 00       	jmp    0x18012f7b7
18012f5fa:	41 80 f9 49          	cmp    $0x49,%r9b
18012f5fe:	74 29                	je     0x18012f629
18012f600:	41 80 f9 68          	cmp    $0x68,%r9b
18012f604:	74 69                	je     0x18012f66f
18012f606:	41 80 f9 6a          	cmp    $0x6a,%r9b
18012f60a:	74 1d                	je     0x18012f629
18012f60c:	b2 6c                	mov    $0x6c,%dl
18012f60e:	44 3a ca             	cmp    %dl,%r9b
18012f611:	74 40                	je     0x18012f653
18012f613:	41 80 f9 74          	cmp    $0x74,%r9b
18012f617:	74 10                	je     0x18012f629
18012f619:	41 80 f9 77          	cmp    $0x77,%r9b
18012f61d:	74 2b                	je     0x18012f64a
18012f61f:	41 80 f9 7a          	cmp    $0x7a,%r9b
18012f623:	0f 85 99 01 00 00    	jne    0x18012f7c2
18012f629:	0f ba ef 0f          	bts    $0xf,%edi
18012f62d:	41 80 f9 49          	cmp    $0x49,%r9b
18012f631:	75 5c                	jne    0x18012f68f
18012f633:	41 8a 07             	mov    (%r15),%al
18012f636:	3c 36                	cmp    $0x36,%al
18012f638:	75 3d                	jne    0x18012f677
18012f63a:	41 80 7f 01 34       	cmpb   $0x34,0x1(%r15)
18012f63f:	75 36                	jne    0x18012f677
18012f641:	49 83 c7 02          	add    $0x2,%r15
18012f645:	e9 78 01 00 00       	jmp    0x18012f7c2
18012f64a:	0f ba ef 0b          	bts    $0xb,%edi
18012f64e:	e9 6f 01 00 00       	jmp    0x18012f7c2
18012f653:	41 8a 0f             	mov    (%r15),%cl
18012f656:	3a ca                	cmp    %dl,%cl
18012f658:	75 03                	jne    0x18012f65d
18012f65a:	49 ff c7             	inc    %r15
18012f65d:	3a ca                	cmp    %dl,%cl
18012f65f:	b8 00 10 00 00       	mov    $0x1000,%eax
18012f664:	41 0f 45 c2          	cmovne %r10d,%eax
18012f668:	0b f8                	or     %eax,%edi
18012f66a:	e9 53 01 00 00       	jmp    0x18012f7c2
18012f66f:	83 cf 20             	or     $0x20,%edi
18012f672:	e9 4b 01 00 00       	jmp    0x18012f7c2