1409410a0:	48 ff c0             	inc    %rax
1409410a3:	41 c1 e1 08          	shl    $0x8,%r9d
1409410a7:	41 ff ca             	dec    %r10d
1409410aa:	41 8b ca             	mov    %r10d,%ecx
1409410ad:	41 83 ea 20          	sub    $0x20,%r10d
1409410b1:	0f 88 84 00 00 00    	js     0x14094113b
1409410b7:	44 8b c1             	mov    %ecx,%r8d
1409410ba:	49 c1 e8 05          	shr    $0x5,%r8
1409410be:	41 8b c8             	mov    %r8d,%ecx
1409410c1:	f7 d9                	neg    %ecx
1409410c3:	c1 e1 05             	shl    $0x5,%ecx
1409410c6:	44 03 d1             	add    %ecx,%r10d
1409410c9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
1409410d0:	0f b7 48 1c          	movzwl 0x1c(%rax),%ecx
1409410d4:	0f b7 50 1e          	movzwl 0x1e(%rax),%edx
1409410d8:	03 d1                	add    %ecx,%edx
1409410da:	0f b7 48 1a          	movzwl 0x1a(%rax),%ecx
1409410de:	03 d1                	add    %ecx,%edx
1409410e0:	0f b7 48 18          	movzwl 0x18(%rax),%ecx
1409410e4:	03 d1                	add    %ecx,%edx
1409410e6:	0f b7 48 16          	movzwl 0x16(%rax),%ecx
1409410ea:	03 d1                	add    %ecx,%edx
1409410ec:	0f b7 48 14          	movzwl 0x14(%rax),%ecx
1409410f0:	03 d1                	add    %ecx,%edx
1409410f2:	0f b7 48 12          	movzwl 0x12(%rax),%ecx
1409410f6:	03 d1                	add    %ecx,%edx
1409410f8:	0f b7 48 10          	movzwl 0x10(%rax),%ecx
1409410fc:	03 d1                	add    %ecx,%edx
1409410fe:	0f b7 48 0e          	movzwl 0xe(%rax),%ecx
140941102:	03 d1                	add    %ecx,%edx
140941104:	0f b7 48 0c          	movzwl 0xc(%rax),%ecx
140941108:	03 d1                	add    %ecx,%edx
14094110a:	0f b7 48 0a          	movzwl 0xa(%rax),%ecx
14094110e:	03 d1                	add    %ecx,%edx
140941110:	0f b7 48 08          	movzwl 0x8(%rax),%ecx
140941114:	03 d1                	add    %ecx,%edx
140941116:	0f b7 48 06          	movzwl 0x6(%rax),%ecx
14094111a:	03 d1                	add    %ecx,%edx
14094111c:	0f b7 48 04          	movzwl 0x4(%rax),%ecx
140941120:	03 d1                	add    %ecx,%edx
140941122:	0f b7 48 02          	movzwl 0x2(%rax),%ecx
140941126:	03 d1                	add    %ecx,%edx
140941128:	0f b7 08             	movzwl (%rax),%ecx
14094112b:	44 03 c9             	add    %ecx,%r9d
14094112e:	48 83 c0 20          	add    $0x20,%rax
140941132:	44 03 ca             	add    %edx,%r9d
140941135:	49 83 e8 01          	sub    $0x1,%r8
140941139:	75 95                	jne    0x1409410d0
14094113b:	41 83 c2 18          	add    $0x18,%r10d
14094113f:	78 42                	js     0x140941183
140941141:	45 8d 42 08          	lea    0x8(%r10),%r8d
140941145:	49 c1 e8 03          	shr    $0x3,%r8
140941149:	41 8b c8             	mov    %r8d,%ecx
14094114c:	f7 d9                	neg    %ecx
14094114e:	45 8d 14 ca          	lea    (%r10,%rcx,8),%r10d
140941152:	0f 1f 40 00          	nopl   0x0(%rax)
140941156:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14094115d:	00 00 00
140941160:	0f b7 48 04          	movzwl 0x4(%rax),%ecx
140941164:	0f b7 50 06          	movzwl 0x6(%rax),%edx
140941168:	03 d1                	add    %ecx,%edx
14094116a:	0f b7 48 02          	movzwl 0x2(%rax),%ecx
14094116e:	03 d1                	add    %ecx,%edx
140941170:	0f b7 08             	movzwl (%rax),%ecx
140941173:	44 03 c9             	add    %ecx,%r9d
140941176:	48 83 c0 08          	add    $0x8,%rax
14094117a:	44 03 ca             	add    %edx,%r9d
14094117d:	49 83 e8 01          	sub    $0x1,%r8
140941181:	75 dd                	jne    0x140941160
140941183:	45 8d 5a 08          	lea    0x8(%r10),%r11d
140941187:	45 8b d3             	mov    %r11d,%r10d
14094118a:	45 85 db             	test   %r11d,%r11d
14094118d:	75 08                	jne    0x140941197
14094118f:	85 ff                	test   %edi,%edi
140941191:	0f 84 a2 00 00 00    	je     0x140941239
140941197:	45 8b c1             	mov    %r9d,%r8d
14094119a:	41 0f b7 c9          	movzwl %r9w,%ecx
14094119e:	41 c1 e8 10          	shr    $0x10,%r8d
1409411a2:	44 03 c1             	add    %ecx,%r8d
1409411a5:	41 81 f8 ff ff 00 00 	cmp    $0xffff,%r8d
1409411ac:	45 8d 88 01 00 ff ff 	lea    -0xffff(%r8),%r9d
1409411b3:	45 0f 46 c8          	cmovbe %r8d,%r9d
1409411b7:	41 83 eb 02          	sub    $0x2,%r11d
1409411bb:	78 23                	js     0x1409411e0
1409411bd:	49 8b d2             	mov    %r10,%rdx
1409411c0:	48 d1 ea             	shr    $1,%rdx
1409411c3:	8b ca                	mov    %edx,%ecx
1409411c5:	f7 d9                	neg    %ecx
1409411c7:	45 8d 1c 4b          	lea    (%r11,%rcx,2),%r11d
1409411cb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1409411d0:	0f b7 08             	movzwl (%rax),%ecx
1409411d3:	48 83 c0 02          	add    $0x2,%rax
1409411d7:	44 03 c9             	add    %ecx,%r9d
1409411da:	48 83 ea 01          	sub    $0x1,%rdx
1409411de:	75 f0                	jne    0x1409411d0
1409411e0:	85 ff                	test   %edi,%edi
1409411e2:	74 48                	je     0x14094122c
1409411e4:	45 8b c1             	mov    %r9d,%r8d
1409411e7:	41 0f b7 c9          	movzwl %r9w,%ecx
1409411eb:	41 c1 e8 10          	shr    $0x10,%r8d
1409411ef:	44 03 c1             	add    %ecx,%r8d
1409411f2:	41 81 f8 ff ff 00 00 	cmp    $0xffff,%r8d
1409411f9:	45 8d 88 01 00 ff ff 	lea    -0xffff(%r8),%r9d
140941200:	45 0f 46 c8          	cmovbe %r8d,%r9d
140941204:	33 ff                	xor    %edi,%edi
140941206:	41 c1 e1 08          	shl    $0x8,%r9d
14094120a:	41 83 fb ff          	cmp    $0xffffffff,%r11d
14094120e:	75 14                	jne    0x140941224
140941210:	0f b6 08             	movzbl (%rax),%ecx
140941213:	88 4c 24 19          	mov    %cl,0x19(%rsp)
140941217:	0f b7 44 24 18       	movzwl 0x18(%rsp),%eax
14094121c:	44 03 c8             	add    %eax,%r9d
14094121f:	45 33 db             	xor    %r11d,%r11d
140941222:	eb 15                	jmp    0x140941239
140941224:	41 bb ff ff ff ff    	mov    $0xffffffff,%r11d
14094122a:	eb 0d                	jmp    0x140941239
14094122c:	41 83 fb ff          	cmp    $0xffffffff,%r11d
140941230:	75 07                	jne    0x140941239
140941232:	0f b6 08             	movzbl (%rax),%ecx
140941235:	88 4c 24 18          	mov    %cl,0x18(%rsp)
140941239:	48 83 c3 10          	add    $0x10,%rbx
14094123d:	83 ee 01             	sub    $0x1,%esi
140941240:	0f 85 fa fd ff ff    	jne    0x140941040
140941246:	41 83 fb ff          	cmp    $0xffffffff,%r11d
14094124a:	75 0d                	jne    0x140941259
14094124c:	40 88 74 24 19       	mov    %sil,0x19(%rsp)
140941251:	0f b7 44 24 18       	movzwl 0x18(%rsp),%eax
140941256:	44 03 c8             	add    %eax,%r9d
140941259:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
14094125e:	41 8b d1             	mov    %r9d,%edx
140941261:	48 8b 74 24 28       	mov    0x28(%rsp),%rsi
140941266:	c1 ea 10             	shr    $0x10,%edx
140941269:	41 0f b7 c1          	movzwl %r9w,%eax
14094126d:	03 d0                	add    %eax,%edx
14094126f:	81 fa ff ff 00 00    	cmp    $0xffff,%edx
140941275:	8d 42 01             	lea    0x1(%rdx),%eax
140941278:	66 0f 46 c2          	cmovbe %dx,%ax
14094127c:	5f                   	pop    %rdi
14094127d:	c3                   	ret
14094127e:	cc                   	int3
14094127f:	cc                   	int3
140941280:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140941285:	57                   	push   %rdi
140941286:	41 54                	push   %r12
140941288:	41 56                	push   %r14
14094128a:	41 57                	push   %r15
14094128c:	4c 8b 19             	mov    (%rcx),%r11
14094128f:	33 ff                	xor    %edi,%edi
140941291:	4d 8b 10             	mov    (%r8),%r10
140941294:	4d 8b e1             	mov    %r9,%r12
140941297:	4d 8b f0             	mov    %r8,%r14
14094129a:	48 8b f2             	mov    %rdx,%rsi
14094129d:	4c 8b f9             	mov    %rcx,%r15
1409412a0:	4c 3b da             	cmp    %rdx,%r11
1409412a3:	0f 83 53 01 00 00    	jae    0x1409413fc
1409412a9:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
1409412ae:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
1409412b3:	8b 6c 24 48          	mov    0x48(%rsp),%ebp
1409412b7:	4c 89 6c 24 38       	mov    %r13,0x38(%rsp)
1409412bc:	4c 8d 2d 95 2b 71 00 	lea    0x712b95(%rip),%r13        # 0x141053e58
1409412c3:	41 0f b7 03          	movzwl (%r11),%eax
1409412c7:	4d 8b c3             	mov    %r11,%r8
1409412ca:	49 8b db             	mov    %r11,%rbx
1409412cd:	4d 8b ca             	mov    %r10,%r9
1409412d0:	49 83 c3 02          	add    $0x2,%r11
1409412d4:	8d 88 00 28 ff ff    	lea    -0xd800(%rax),%ecx
1409412da:	81 f9 ff 03 00 00    	cmp    $0x3ff,%ecx
1409412e0:	77 3c                	ja     0x14094131e
1409412e2:	4c 3b de             	cmp    %rsi,%r11
1409412e5:	0f 83 ed 00 00 00    	jae    0x1409413d8
1409412eb:	41 0f b7 13          	movzwl (%r11),%edx
1409412ef:	8d 8a 00 24 ff ff    	lea    -0xdc00(%rdx),%ecx
1409412f5:	81 f9 ff 03 00 00    	cmp    $0x3ff,%ecx
1409412fb:	77 10                	ja     0x14094130d
1409412fd:	c1 e0 0a             	shl    $0xa,%eax
140941300:	05 00 24 a0 fc       	add    $0xfca02400,%eax
140941305:	03 c2                	add    %edx,%eax
140941307:	49 83 c3 02          	add    $0x2,%r11
14094130b:	eb 23                	jmp    0x140941330
14094130d:	85 ed                	test   %ebp,%ebp
14094130f:	75 1f                	jne    0x140941330
140941311:	4d 8b d8             	mov    %r8,%r11
140941314:	bf 03 00 00 00       	mov    $0x3,%edi
140941319:	e9 cf 00 00 00       	jmp    0x1409413ed
14094131e:	85 ed                	test   %ebp,%ebp
140941320:	75 0e                	jne    0x140941330
140941322:	8d 88 00 24 ff ff    	lea    -0xdc00(%rax),%ecx
140941328:	81 f9 ff 03 00 00    	cmp    $0x3ff,%ecx
14094132e:	76 e1                	jbe    0x140941311
140941330:	3d 80 00 00 00       	cmp    $0x80,%eax
140941335:	73 07                	jae    0x14094133e
140941337:	ba 01 00 00 00       	mov    $0x1,%edx
14094133c:	eb 2d                	jmp    0x14094136b
14094133e:	3d 00 08 00 00       	cmp    $0x800,%eax
140941343:	73 07                	jae    0x14094134c
140941345:	ba 02 00 00 00       	mov    $0x2,%edx
14094134a:	eb 1f                	jmp    0x14094136b
14094134c:	3d 00 00 01 00       	cmp    $0x10000,%eax
140941351:	72 13                	jb     0x140941366
140941353:	3d 00 00 11 00       	cmp    $0x110000,%eax
140941358:	73 07                	jae    0x140941361
14094135a:	ba 04 00 00 00       	mov    $0x4,%edx
14094135f:	eb 0a                	jmp    0x14094136b
140941361:	b8 fd ff 00 00       	mov    $0xfffd,%eax
140941366:	ba 03 00 00 00       	mov    $0x3,%edx
14094136b:	4c 03 d2             	add    %rdx,%r10
14094136e:	4c 8b c2             	mov    %rdx,%r8
140941371:	4d 3b d4             	cmp    %r12,%r10
140941374:	77 6c                	ja     0x1409413e2
140941376:	83 ea 01             	sub    $0x1,%edx
140941379:	74 45                	je     0x1409413c0
14094137b:	83 ea 01             	sub    $0x1,%edx
14094137e:	74 2e                	je     0x1409413ae
140941380:	83 ea 01             	sub    $0x1,%edx
140941383:	74 17                	je     0x14094139c
140941385:	83 fa 01             	cmp    $0x1,%edx
140941388:	75 40                	jne    0x1409413ca
14094138a:	0f b6 c8             	movzbl %al,%ecx
14094138d:	49 ff ca             	dec    %r10
140941390:	80 e1 3f             	and    $0x3f,%cl
140941393:	80 c9 80             	or     $0x80,%cl
140941396:	c1 e8 06             	shr    $0x6,%eax
140941399:	41 88 0a             	mov    %cl,(%r10)
14094139c:	0f b6 c8             	movzbl %al,%ecx
14094139f:	49 ff ca             	dec    %r10
1409413a2:	80 e1 3f             	and    $0x3f,%cl
1409413a5:	80 c9 80             	or     $0x80,%cl
1409413a8:	c1 e8 06             	shr    $0x6,%eax
1409413ab:	41 88 0a             	mov    %cl,(%r10)
1409413ae:	0f b6 c8             	movzbl %al,%ecx
1409413b1:	49 ff ca             	dec    %r10
1409413b4:	80 e1 3f             	and    $0x3f,%cl
1409413b7:	80 c9 80             	or     $0x80,%cl
1409413ba:	c1 e8 06             	shr    $0x6,%eax
1409413bd:	41 88 0a             	mov    %cl,(%r10)
1409413c0:	49 ff ca             	dec    %r10
1409413c3:	43 0a 04 28          	or     (%r8,%r13,1),%al
1409413c7:	41 88 02             	mov    %al,(%r10)
1409413ca:	4d 03 d0             	add    %r8,%r10
1409413cd:	4c 3b de             	cmp    %rsi,%r11
1409413d0:	0f 82 ed fe ff ff    	jb     0x1409412c3
1409413d6:	eb 15                	jmp    0x1409413ed
1409413d8:	4d 8b d8             	mov    %r8,%r11
1409413db:	bf 01 00 00 00       	mov    $0x1,%edi
1409413e0:	eb 0b                	jmp    0x1409413ed
1409413e2:	4c 8b db             	mov    %rbx,%r11
1409413e5:	4d 8b d1             	mov    %r9,%r10
1409413e8:	bf 02 00 00 00       	mov    $0x2,%edi
1409413ed:	48 8b 6c 24 30       	mov    0x30(%rsp),%rbp
1409413f2:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
1409413f7:	4c 8b 6c 24 38       	mov    0x38(%rsp),%r13
1409413fc:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140941401:	8b c7                	mov    %edi,%eax
140941403:	4d 89 1f             	mov    %r11,(%r15)
140941406:	4d 89 16             	mov    %r10,(%r14)
140941409:	41 5f                	pop    %r15
14094140b:	41 5e                	pop    %r14
14094140d:	41 5c                	pop    %r12
14094140f:	5f                   	pop    %rdi
140941410:	c3                   	ret
140941411:	cc                   	int3
140941412:	cc                   	int3
140941413:	cc                   	int3
140941414:	cc                   	int3
140941415:	cc                   	int3
140941416:	cc                   	int3
140941417:	cc                   	int3
140941418:	cc                   	int3
140941419:	cc                   	int3
14094141a:	cc                   	int3
14094141b:	cc                   	int3
14094141c:	cc                   	int3
14094141d:	cc                   	int3
14094141e:	cc                   	int3
14094141f:	cc                   	int3
140941420:	48 83 ec 38          	sub    $0x38,%rsp
140941424:	8b 44 24 60          	mov    0x60(%rsp),%eax
140941428:	c6 44 24 28 00       	movb   $0x0,0x28(%rsp)
14094142d:	89 44 24 20          	mov    %eax,0x20(%rsp)
140941431:	e8 0a 00 00 00       	call   0x140941440
140941436:	48 83 c4 38          	add    $0x38,%rsp
14094143a:	c3                   	ret
14094143b:	cc                   	int3
14094143c:	cc                   	int3
14094143d:	cc                   	int3
14094143e:	cc                   	int3
14094143f:	cc                   	int3
140941440:	48 8b c4             	mov    %rsp,%rax
140941443:	4c 89 48 20          	mov    %r9,0x20(%rax)
140941447:	4c 89 40 18          	mov    %r8,0x18(%rax)
14094144b:	48 89 48 08          	mov    %rcx,0x8(%rax)
14094144f:	53                   	push   %rbx
140941450:	57                   	push   %rdi
140941451:	41 56                	push   %r14
140941453:	48 83 ec 50          	sub    $0x50,%rsp
140941457:	4c 8b 19             	mov    (%rcx),%r11
14094145a:	33 ff                	xor    %edi,%edi
14094145c:	49 8b 18             	mov    (%r8),%rbx
14094145f:	4c 8b f2             	mov    %rdx,%r14
140941462:	4c 3b da             	cmp    %rdx,%r11
140941465:	0f 83 ab 01 00 00    	jae    0x140941616
14094146b:	48 89 68 e0          	mov    %rbp,-0x20(%rax)
14094146f:	48 8d 15 8a eb 6b ff 	lea    -0x941476(%rip),%rdx        # 0x140000000
140941476:	4c 89 60 d0          	mov    %r12,-0x30(%rax)
14094147a:	44 8b a4 24 90 00 00 	mov    0x90(%rsp),%r12d
140941481:	00
140941482:	4c 89 78 c0          	mov    %r15,-0x40(%rax)
140941486:	48 89 70 d8          	mov    %rsi,-0x28(%rax)
14094148a:	4c 89 68 c8          	mov    %r13,-0x38(%rax)
14094148e:	66 90                	xchg   %ax,%ax
140941490:	41 0f b6 2b          	movzbl (%r11),%ebp
140941494:	49 8b c6             	mov    %r14,%rax
140941497:	45 33 d2             	xor    %r10d,%r10d
14094149a:	48 89 5c 24 78       	mov    %rbx,0x78(%rsp)
14094149f:	49 2b c3             	sub    %r11,%rax
1409414a2:	0f be 8c 2a 40 3d 05 	movsbl 0x1053d40(%rdx,%rbp,1),%ecx
1409414a9:	01
1409414aa:	44 0f b7 f9          	movzwl %cx,%r15d
1409414ae:	4c 3b f8             	cmp    %rax,%r15
1409414b1:	7c 39                	jl     0x1409414ec
1409414b3:	45 85 e4             	test   %r12d,%r12d
1409414b6:	0f 84 35 01 00 00    	je     0x1409415f1
1409414bc:	44 38 94 24 98 00 00 	cmp    %r10b,0x98(%rsp)
1409414c3:	00
1409414c4:	0f 85 27 01 00 00    	jne    0x1409415f1
1409414ca:	bf 03 00 00 00       	mov    $0x3,%edi
1409414cf:	49 8b d6             	mov    %r14,%rdx
1409414d2:	49 8b cb             	mov    %r11,%rcx
1409414d5:	e8 76 01 00 00       	call   0x140941650
1409414da:	44 8b d0             	mov    %eax,%r10d
1409414dd:	48 8d 15 1c eb 6b ff 	lea    -0x9414e4(%rip),%rdx        # 0x140000000
1409414e4:	4d 03 da             	add    %r10,%r11
1409414e7:	e9 dd 00 00 00       	jmp    0x1409415c9
1409414ec:	49 3b d9             	cmp    %r9,%rbx
1409414ef:	0f 83 03 01 00 00    	jae    0x1409415f8
1409414f5:	0f b7 f1             	movzwl %cx,%esi
1409414f8:	49 8b cb             	mov    %r11,%rcx
1409414fb:	44 8d 6e 01          	lea    0x1(%rsi),%r13d
1409414ff:	41 8b d5             	mov    %r13d,%edx
140941502:	e8 59 02 00 00       	call   0x140941760
140941507:	84 c0                	test   %al,%al
140941509:	75 10                	jne    0x14094151b
14094150b:	bf 03 00 00 00       	mov    $0x3,%edi
140941510:	45 85 e4             	test   %r12d,%r12d
140941513:	0f 84 e4 00 00 00    	je     0x1409415fd
140941519:	eb b4                	jmp    0x1409414cf
14094151b:	48 8d 15 de ea 6b ff 	lea    -0x941522(%rip),%rdx        # 0x140000000
140941522:	83 fe 05             	cmp    $0x5,%esi
140941525:	77 6c                	ja     0x140941593
140941527:	8b 8c b2 34 16 94 00 	mov    0x941634(%rdx,%rsi,4),%ecx