140a81fa9:	49 8b 40 08          	mov    0x8(%r8),%rax
140a81fad:	48 89 18             	mov    %rbx,(%rax)
140a81fb0:	49 89 48 08          	mov    %rcx,0x8(%r8)
140a81fb4:	48 89 57 08          	mov    %rdx,0x8(%rdi)
140a81fb8:	48 89 43 08          	mov    %rax,0x8(%rbx)
140a81fbc:	eb a0                	jmp    0x140a81f5e
140a81fbe:	48 8d 0d 2b c5 52 00 	lea    0x52c52b(%rip),%rcx        # 0x140fae4f0
140a81fc5:	e8 ea 93 37 00       	call   0x140dfb3b4
140a81fca:	cc                   	int3
140a81fcb:	cc                   	int3
140a81fcc:	cc                   	int3
140a81fcd:	cc                   	int3
140a81fce:	cc                   	int3
140a81fcf:	cc                   	int3
140a81fd0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140a81fd5:	57                   	push   %rdi
140a81fd6:	48 83 ec 60          	sub    $0x60,%rsp
140a81fda:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140a81fdf:	4c 8d 41 02          	lea    0x2(%rcx),%r8
140a81fe3:	0f b7 01             	movzwl (%rcx),%eax
140a81fe6:	4d 8d 0c 40          	lea    (%r8,%rax,2),%r9
140a81fea:	48 c7 44 24 50 00 00 	movq   $0x0,0x50(%rsp)
140a81ff1:	00 00
140a81ff3:	48 8d 05 3e 7e 5f 00 	lea    0x5f7e3e(%rip),%rax        # 0x141079e38
140a81ffa:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140a81fff:	48 ba 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rdx
140a82006:	9c f2 cb
140a82009:	48 89 54 24 58       	mov    %rdx,0x58(%rsp)
140a8200e:	4d 3b c1             	cmp    %r9,%r8
140a82011:	74 42                	je     0x140a82055
140a82013:	49 ba b3 01 00 00 00 	movabs $0x100000001b3,%r10
140a8201a:	01 00 00
140a8201d:	0f 1f 00             	nopl   (%rax)
140a82020:	41 0f b7 00          	movzwl (%r8),%eax
140a82024:	66 89 44 24 20       	mov    %ax,0x20(%rsp)
140a82029:	48 8d 44 24 20       	lea    0x20(%rsp),%rax
140a8202e:	66 90                	xchg   %ax,%ax
140a82030:	0f b6 08             	movzbl (%rax),%ecx
140a82033:	48 33 d1             	xor    %rcx,%rdx
140a82036:	49 0f af d2          	imul   %r10,%rdx
140a8203a:	48 ff c0             	inc    %rax
140a8203d:	48 8d 4c 24 22       	lea    0x22(%rsp),%rcx
140a82042:	48 3b c1             	cmp    %rcx,%rax
140a82045:	75 e9                	jne    0x140a82030
140a82047:	48 89 54 24 58       	mov    %rdx,0x58(%rsp)
140a8204c:	49 83 c0 02          	add    $0x2,%r8
140a82050:	4d 3b c1             	cmp    %r9,%r8
140a82053:	75 cb                	jne    0x140a82020
140a82055:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
140a8205a:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140a8205f:	e8 ec 53 f8 ff       	call   0x140a07450
140a82064:	90                   	nop
140a82065:	48 8d 3d 24 10 93 00 	lea    0x931024(%rip),%rdi        # 0x1413b3090
140a8206c:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140a82071:	c6 44 24 40 00       	movb   $0x0,0x40(%rsp)
140a82076:	48 8b cf             	mov    %rdi,%rcx
140a82079:	e8 c2 b0 37 00       	call   0x140dfd140
140a8207e:	85 c0                	test   %eax,%eax
140a82080:	75 64                	jne    0x140a820e6
140a82082:	81 3d 50 10 93 00 ff 	cmpl   $0x7fffffff,0x931050(%rip)        # 0x1413b30dc
140a82089:	ff ff 7f
140a8208c:	74 43                	je     0x140a820d1
140a8208e:	c6 44 24 40 01       	movb   $0x1,0x40(%rsp)
140a82093:	4c 8d 44 24 28       	lea    0x28(%rsp),%r8
140a82098:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
140a8209d:	48 8d 0d 1c 4d 9b 00 	lea    0x9b4d1c(%rip),%rcx        # 0x141436dc0
140a820a4:	e8 b7 f7 ff ff       	call   0x140a81860
140a820a9:	48 8b 00             	mov    (%rax),%rax
140a820ac:	48 8b 58 10          	mov    0x10(%rax),%rbx
140a820b0:	48 8b cf             	mov    %rdi,%rcx
140a820b3:	e8 b0 b0 37 00       	call   0x140dfd168
140a820b8:	90                   	nop
140a820b9:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140a820be:	e8 cd ef 3a 00       	call   0x140e31090
140a820c3:	48 8b c3             	mov    %rbx,%rax
140a820c6:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
140a820cb:	48 83 c4 60          	add    $0x60,%rsp
140a820cf:	5f                   	pop    %rdi
140a820d0:	c3                   	ret
140a820d1:	c7 05 01 10 93 00 fe 	movl   $0x7ffffffe,0x931001(%rip)        # 0x1413b30dc
140a820d8:	ff ff 7f
140a820db:	b9 06 00 00 00       	mov    $0x6,%ecx
140a820e0:	e8 f7 b2 37 00       	call   0x140dfd3dc
140a820e5:	cc                   	int3
140a820e6:	b9 05 00 00 00       	mov    $0x5,%ecx
140a820eb:	e8 ec b2 37 00       	call   0x140dfd3dc
140a820f0:	cc                   	int3
140a820f1:	cc                   	int3
140a820f2:	cc                   	int3
140a820f3:	cc                   	int3
140a820f4:	cc                   	int3
140a820f5:	cc                   	int3
140a820f6:	cc                   	int3
140a820f7:	cc                   	int3
140a820f8:	cc                   	int3
140a820f9:	cc                   	int3
140a820fa:	cc                   	int3
140a820fb:	cc                   	int3
140a820fc:	cc                   	int3
140a820fd:	cc                   	int3
140a820fe:	cc                   	int3
140a820ff:	cc                   	int3
140a82100:	40 53                	rex push %rbx
140a82102:	48 83 ec 20          	sub    $0x20,%rsp
140a82106:	48 8b da             	mov    %rdx,%rbx
140a82109:	4c 8b c1             	mov    %rcx,%r8
140a8210c:	48 8b 01             	mov    (%rcx),%rax
140a8210f:	48 8d 50 ff          	lea    -0x1(%rax),%rdx
140a82113:	45 33 c9             	xor    %r9d,%r9d
140a82116:	48 85 c0             	test   %rax,%rax
140a82119:	49 0f 44 d1          	cmove  %r9,%rdx
140a8211d:	48 85 d2             	test   %rdx,%rdx
140a82120:	75 13                	jne    0x140a82135
140a82122:	48 8d 05 3f 4c 9b 00 	lea    0x9b4c3f(%rip),%rax        # 0x141436d68
140a82129:	48 89 03             	mov    %rax,(%rbx)
140a8212c:	48 8b c3             	mov    %rbx,%rax
140a8212f:	48 83 c4 20          	add    $0x20,%rsp
140a82133:	5b                   	pop    %rbx
140a82134:	c3                   	ret
140a82135:	48 8b 41 10          	mov    0x10(%rcx),%rax
140a82139:	66 89 10             	mov    %dx,(%rax)
140a8213c:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140a82140:	4d 89 48 10          	mov    %r9,0x10(%r8)
140a82144:	e8 87 fe ff ff       	call   0x140a81fd0
140a82149:	48 89 03             	mov    %rax,(%rbx)
140a8214c:	48 8b c3             	mov    %rbx,%rax
140a8214f:	48 83 c4 20          	add    $0x20,%rsp
140a82153:	5b                   	pop    %rbx
140a82154:	c3                   	ret
140a82155:	cc                   	int3
140a82156:	cc                   	int3
140a82157:	cc                   	int3
140a82158:	cc                   	int3
140a82159:	cc                   	int3
140a8215a:	cc                   	int3
140a8215b:	cc                   	int3
140a8215c:	cc                   	int3
140a8215d:	cc                   	int3
140a8215e:	cc                   	int3
140a8215f:	cc                   	int3
140a82160:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140a82165:	57                   	push   %rdi
140a82166:	48 83 ec 20          	sub    $0x20,%rsp
140a8216a:	48 8b d9             	mov    %rcx,%rbx
140a8216d:	0f b7 fa             	movzwl %dx,%edi
140a82170:	48 8b 09             	mov    (%rcx),%rcx
140a82173:	4c 8b 43 08          	mov    0x8(%rbx),%r8
140a82177:	48 8d 41 01          	lea    0x1(%rcx),%rax
140a8217b:	49 3b c0             	cmp    %r8,%rax
140a8217e:	72 35                	jb     0x140a821b5
140a82180:	49 8d 50 09          	lea    0x9(%r8),%rdx
140a82184:	4c 3b c2             	cmp    %rdx,%r8
140a82187:	73 2c                	jae    0x140a821b5
140a82189:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140a8218d:	48 89 53 08          	mov    %rdx,0x8(%rbx)
140a82191:	48 03 d2             	add    %rdx,%rdx
140a82194:	e8 0f f0 3a 00       	call   0x140e311a8
140a82199:	48 85 c0             	test   %rax,%rax
140a8219c:	74 2d                	je     0x140a821cb
140a8219e:	48 8b 0b             	mov    (%rbx),%rcx
140a821a1:	48 89 43 10          	mov    %rax,0x10(%rbx)
140a821a5:	48 85 c9             	test   %rcx,%rcx
140a821a8:	75 0b                	jne    0x140a821b5
140a821aa:	66 89 08             	mov    %cx,(%rax)
140a821ad:	b9 01 00 00 00       	mov    $0x1,%ecx
140a821b2:	48 89 0b             	mov    %rcx,(%rbx)
140a821b5:	48 8b 43 10          	mov    0x10(%rbx),%rax
140a821b9:	66 89 3c 48          	mov    %di,(%rax,%rcx,2)
140a821bd:	48 ff 03             	incq   (%rbx)
140a821c0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140a821c5:	48 83 c4 20          	add    $0x20,%rsp
140a821c9:	5f                   	pop    %rdi
140a821ca:	c3                   	ret
140a821cb:	48 8d 0d 1e 7c 5f 00 	lea    0x5f7c1e(%rip),%rcx        # 0x141079df0
140a821d2:	e8 29 4d 71 ff       	call   0x140196f00
140a821d7:	48 8d 0d 12 7c 5f 00 	lea    0x5f7c12(%rip),%rcx        # 0x141079df0
140a821de:	e8 3d cc f3 ff       	call   0x1409bee20
140a821e3:	cc                   	int3
140a821e4:	cc                   	int3
140a821e5:	cc                   	int3
140a821e6:	cc                   	int3
140a821e7:	cc                   	int3
140a821e8:	cc                   	int3
140a821e9:	cc                   	int3
140a821ea:	cc                   	int3
140a821eb:	cc                   	int3
140a821ec:	cc                   	int3
140a821ed:	cc                   	int3
140a821ee:	cc                   	int3
140a821ef:	cc                   	int3
140a821f0:	40 53                	rex push %rbx
140a821f2:	48 83 ec 20          	sub    $0x20,%rsp
140a821f6:	48 ff c2             	inc    %rdx
140a821f9:	48 8b d9             	mov    %rcx,%rbx
140a821fc:	48 39 51 08          	cmp    %rdx,0x8(%rcx)
140a82200:	73 2b                	jae    0x140a8222d
140a82202:	48 89 51 08          	mov    %rdx,0x8(%rcx)
140a82206:	48 03 d2             	add    %rdx,%rdx
140a82209:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140a8220d:	e8 96 ef 3a 00       	call   0x140e311a8
140a82212:	48 85 c0             	test   %rax,%rax
140a82215:	74 1c                	je     0x140a82233
140a82217:	48 83 3b 00          	cmpq   $0x0,(%rbx)
140a8221b:	48 89 43 10          	mov    %rax,0x10(%rbx)
140a8221f:	75 0c                	jne    0x140a8222d
140a82221:	33 c9                	xor    %ecx,%ecx
140a82223:	66 89 08             	mov    %cx,(%rax)
140a82226:	48 c7 03 01 00 00 00 	movq   $0x1,(%rbx)
140a8222d:	48 83 c4 20          	add    $0x20,%rsp
140a82231:	5b                   	pop    %rbx
140a82232:	c3                   	ret
140a82233:	48 8d 0d b6 7b 5f 00 	lea    0x5f7bb6(%rip),%rcx        # 0x141079df0
140a8223a:	e8 c1 4c 71 ff       	call   0x140196f00
140a8223f:	48 8d 0d aa 7b 5f 00 	lea    0x5f7baa(%rip),%rcx        # 0x141079df0
140a82246:	e8 d5 cb f3 ff       	call   0x1409bee20
140a8224b:	cc                   	int3
140a8224c:	cc                   	int3
140a8224d:	cc                   	int3
140a8224e:	cc                   	int3
140a8224f:	cc                   	int3
140a82250:	48 8d 05 81 ae 5f 00 	lea    0x5fae81(%rip),%rax        # 0x14107d0d8
140a82257:	48 89 01             	mov    %rax,(%rcx)
140a8225a:	c3                   	ret
140a8225b:	cc                   	int3
140a8225c:	cc                   	int3
140a8225d:	cc                   	int3
140a8225e:	cc                   	int3
140a8225f:	cc                   	int3
140a82260:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140a82265:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140a8226a:	57                   	push   %rdi
140a8226b:	48 83 ec 40          	sub    $0x40,%rsp
140a8226f:	48 8b 05 8a 6c 93 00 	mov    0x936c8a(%rip),%rax        # 0x1413b8f00
140a82276:	48 33 c4             	xor    %rsp,%rax
140a82279:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140a8227e:	48 8d 35 2b c1 a1 00 	lea    0xa1c12b(%rip),%rsi        # 0x14149e3b0
140a82285:	48 63 fa             	movslq %edx,%rdi
140a82288:	48 8b d9             	mov    %rcx,%rbx
140a8228b:	48 3b ce             	cmp    %rsi,%rcx
140a8228e:	75 07                	jne    0x140a82297
140a82290:	b9 01 00 00 00       	mov    $0x1,%ecx
140a82295:	eb 21                	jmp    0x140a822b8
140a82297:	48 8d 05 32 c2 a1 00 	lea    0xa1c232(%rip),%rax        # 0x14149e4d0
140a8229e:	48 3b d8             	cmp    %rax,%rbx
140a822a1:	74 10                	je     0x140a822b3
140a822a3:	48 8d 05 26 c7 a1 00 	lea    0xa1c726(%rip),%rax        # 0x14149e9d0
140a822aa:	48 3b d8             	cmp    %rax,%rbx
140a822ad:	0f 85 8c 00 00 00    	jne    0x140a8233f
140a822b3:	b9 02 00 00 00       	mov    $0x2,%ecx
140a822b8:	e8 a3 db 7c ff       	call   0x14024fe60
140a822bd:	85 c0                	test   %eax,%eax
140a822bf:	0f 95 c0             	setne  %al
140a822c2:	84 c0                	test   %al,%al
140a822c4:	74 79                	je     0x140a8233f
140a822c6:	33 c9                	xor    %ecx,%ecx
140a822c8:	48 8b c7             	mov    %rdi,%rax
140a822cb:	48 3b de             	cmp    %rsi,%rbx
140a822ce:	48 8d 3d 0b 0e 93 00 	lea    0x930e0b(%rip),%rdi        # 0x1413b30e0
140a822d5:	0f 94 c1             	sete   %cl
140a822d8:	8b 3c 87             	mov    (%rdi,%rax,4),%edi
140a822db:	83 c1 f4             	add    $0xfffffff4,%ecx
140a822de:	ff 15 84 10 50 00    	call   *0x501084(%rip)        # 0x140f83368
140a822e4:	0f b7 15 3d 0e 93 00 	movzwl 0x930e3d(%rip),%edx        # 0x1413b3128
140a822eb:	48 8b f0             	mov    %rax,%rsi
140a822ee:	b8 ff ff 00 00       	mov    $0xffff,%eax
140a822f3:	66 3b d0             	cmp    %ax,%dx
140a822f6:	75 1e                	jne    0x140a82316
140a822f8:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140a822fd:	48 8b ce             	mov    %rsi,%rcx
140a82300:	ff 15 02 11 50 00    	call   *0x501102(%rip)        # 0x140f83408
140a82306:	85 c0                	test   %eax,%eax
140a82308:	74 44                	je     0x140a8234e
140a8230a:	0f b7 54 24 28       	movzwl 0x28(%rsp),%edx
140a8230f:	66 89 15 12 0e 93 00 	mov    %dx,0x930e12(%rip)        # 0x1413b3128
140a82316:	48 8b ce             	mov    %rsi,%rcx
140a82319:	85 ff                	test   %edi,%edi
140a8231b:	79 0b                	jns    0x140a82328
140a8231d:	ff 15 ed 10 50 00    	call   *0x5010ed(%rip)        # 0x140f83410
140a82323:	83 ff fe             	cmp    $0xfffffffe,%edi
140a82326:	eb 1a                	jmp    0x140a82342
140a82328:	b8 f0 00 00 00       	mov    $0xf0,%eax
140a8232d:	66 83 e7 0f          	and    $0xf,%di
140a82331:	66 23 d0             	and    %ax,%dx
140a82334:	66 0b d7             	or     %di,%dx
140a82337:	ff 15 d3 10 50 00    	call   *0x5010d3(%rip)        # 0x140f83410
140a8233d:	eb 0f                	jmp    0x140a8234e
140a8233f:	83 ff 01             	cmp    $0x1,%edi
140a82342:	75 0a                	jne    0x140a8234e
140a82344:	b2 0a                	mov    $0xa,%dl
140a82346:	48 8b cb             	mov    %rbx,%rcx
140a82349:	e8 e2 db 74 ff       	call   0x1401cff30
140a8234e:	48 8b c3             	mov    %rbx,%rax
140a82351:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140a82356:	48 33 cc             	xor    %rsp,%rcx
140a82359:	e8 a2 91 39 00       	call   0x140e1b500
140a8235e:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140a82363:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140a82368:	48 83 c4 40          	add    $0x40,%rsp
140a8236c:	5f                   	pop    %rdi
140a8236d:	c3                   	ret
140a8236e:	cc                   	int3
140a8236f:	cc                   	int3
140a82370:	40 55                	rex push %rbp
140a82372:	53                   	push   %rbx
140a82373:	56                   	push   %rsi
140a82374:	57                   	push   %rdi
140a82375:	41 54                	push   %r12
140a82377:	41 56                	push   %r14
140a82379:	41 57                	push   %r15
140a8237b:	48 8d 6c 24 d9       	lea    -0x27(%rsp),%rbp
140a82380:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
140a82387:	48 8b 05 72 6b 93 00 	mov    0x936b72(%rip),%rax        # 0x1413b8f00
140a8238e:	48 33 c4             	xor    %rsp,%rax
140a82391:	48 89 45 17          	mov    %rax,0x17(%rbp)
140a82395:	4d 8b f9             	mov    %r9,%r15
140a82398:	49 8b f8             	mov    %r8,%rdi
140a8239b:	4c 8b f2             	mov    %rdx,%r14
140a8239e:	48 8b f1             	mov    %rcx,%rsi
140a823a1:	48 89 55 bf          	mov    %rdx,-0x41(%rbp)
140a823a5:	45 33 e4             	xor    %r12d,%r12d
140a823a8:	4d 8b 40 10          	mov    0x10(%r8),%r8
140a823ac:	48 8b d7             	mov    %rdi,%rdx
140a823af:	48 83 7f 18 0f       	cmpq   $0xf,0x18(%rdi)
140a823b4:	76 03                	jbe    0x140a823b9
140a823b6:	48 8b 17             	mov    (%rdi),%rdx
140a823b9:	49 b9 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%r9
140a823c0:	9c f2 cb
140a823c3:	49 8b cc             	mov    %r12,%rcx
140a823c6:	4d 85 c0             	test   %r8,%r8
140a823c9:	74 28                	je     0x140a823f3
140a823cb:	49 ba b3 01 00 00 00 	movabs $0x100000001b3,%r10
140a823d2:	01 00 00
140a823d5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
140a823dc:	00 00 00 00
140a823e0:	0f b6 04 11          	movzbl (%rcx,%rdx,1),%eax
140a823e4:	4c 33 c8             	xor    %rax,%r9
140a823e7:	4d 0f af ca          	imul   %r10,%r9
140a823eb:	48 ff c1             	inc    %rcx
140a823ee:	49 3b c8             	cmp    %r8,%rcx
140a823f1:	72 ed                	jb     0x140a823e0
140a823f3:	4c 8b c7             	mov    %rdi,%r8
140a823f6:	48 8d 55 c7          	lea    -0x39(%rbp),%rdx
140a823fa:	48 8d 4e 40          	lea    0x40(%rsi),%rcx
140a823fe:	e8 fd 1d 79 ff       	call   0x140214200
140a82403:	48 8b 48 08          	mov    0x8(%rax),%rcx
140a82407:	48 85 c9             	test   %rcx,%rcx
140a8240a:	75 04                	jne    0x140a82410
140a8240c:	48 8b 4e 48          	mov    0x48(%rsi),%rcx
140a82410:	48 3b 4e 48          	cmp    0x48(%rsi),%rcx
140a82414:	74 1b                	je     0x140a82431