140893f8c:	84 c0                	test   %al,%al
140893f8e:	79 08                	jns    0x140893f98
140893f90:	48 8b ca             	mov    %rdx,%rcx
140893f93:	49 3b d0             	cmp    %r8,%rdx
140893f96:	72 e9                	jb     0x140893f81
140893f98:	4c 8d 42 09          	lea    0x9(%rdx),%r8
140893f9c:	48 8b ca             	mov    %rdx,%rcx
140893f9f:	90                   	nop
140893fa0:	0f b6 02             	movzbl (%rdx),%eax
140893fa3:	48 8d 51 01          	lea    0x1(%rcx),%rdx
140893fa7:	88 03                	mov    %al,(%rbx)
140893fa9:	48 ff c3             	inc    %rbx
140893fac:	48 89 55 a7          	mov    %rdx,-0x59(%rbp)
140893fb0:	84 c0                	test   %al,%al
140893fb2:	79 08                	jns    0x140893fbc
140893fb4:	48 8b ca             	mov    %rdx,%rcx
140893fb7:	49 3b d0             	cmp    %r8,%rdx
140893fba:	72 e4                	jb     0x140893fa0
140893fbc:	85 ff                	test   %edi,%edi
140893fbe:	75 34                	jne    0x140893ff4
140893fc0:	4c 8b 45 77          	mov    0x77(%rbp),%r8
140893fc4:	48 8d 45 7f          	lea    0x7f(%rbp),%rax
140893fc8:	41 0f b7 55 18       	movzwl 0x18(%r13),%edx
140893fcd:	41 2b d8             	sub    %r8d,%ebx
140893fd0:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140893fd5:	44 8b cb             	mov    %ebx,%r9d
140893fd8:	41 8b 46 04          	mov    0x4(%r14),%eax
140893fdc:	49 8b cd             	mov    %r13,%rcx
140893fdf:	89 44 24 28          	mov    %eax,0x28(%rsp)
140893fe3:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
140893fea:	00 00
140893fec:	e8 4f 9d 01 00       	call   0x1408add40
140893ff1:	8b 7d 7f             	mov    0x7f(%rbp),%edi
140893ff4:	41 0f b6 4d 09       	movzbl 0x9(%r13),%ecx
140893ff9:	49 8b 45 50          	mov    0x50(%r13),%rax
140893ffd:	41 0f cc             	bswap  %r12d
140894000:	44 89 64 01 08       	mov    %r12d,0x8(%rcx,%rax,1)
140894005:	4c 8b a4 24 c0 00 00 	mov    0xc0(%rsp),%r12
14089400c:	00
14089400d:	4c 8b 46 70          	mov    0x70(%rsi),%r8
140894011:	41 f6 40 34 20       	testb  $0x20,0x34(%r8)
140894016:	74 45                	je     0x14089405d
140894018:	4d 8b 50 28          	mov    0x28(%r8),%r10
14089401c:	41 ff 8a 98 00 00 00 	decl   0x98(%r10)
140894023:	49 8b 82 a8 00 00 00 	mov    0xa8(%r10),%rax
14089402a:	49 89 40 20          	mov    %rax,0x20(%r8)
14089402e:	4d 89 82 a8 00 00 00 	mov    %r8,0xa8(%r10)
140894035:	41 8b 50 30          	mov    0x30(%r8),%edx
140894039:	49 8b 4a 48          	mov    0x48(%r10),%rcx
14089403d:	ff ca                	dec    %edx
14089403f:	49 0f af 92 c8 00 00 	imul   0xc8(%r10),%rdx
140894046:	00
140894047:	4c 8b 09             	mov    (%rcx),%r9
14089404a:	4d 8b 40 08          	mov    0x8(%r8),%r8
14089404e:	49 8b 81 90 00 00 00 	mov    0x90(%r9),%rax
140894055:	ff 15 c5 f9 6e 00    	call   *0x6ef9c5(%rip)        # 0x140f83a20
14089405b:	eb 08                	jmp    0x140894065
14089405d:	49 8b c8             	mov    %r8,%rcx
140894060:	e8 6b da 05 00       	call   0x1408f1ad0
140894065:	48 8b b4 24 00 01 00 	mov    0x100(%rsp),%rsi
14089406c:	00
14089406d:	8b c7                	mov    %edi,%eax
14089406f:	48 8b bc 24 c8 00 00 	mov    0xc8(%rsp),%rdi
140894076:	00
140894077:	48 81 c4 d0 00 00 00 	add    $0xd0,%rsp
14089407e:	41 5f                	pop    %r15
140894080:	41 5e                	pop    %r14
140894082:	41 5d                	pop    %r13
140894084:	5b                   	pop    %rbx
140894085:	5d                   	pop    %rbp
140894086:	c3                   	ret
140894087:	cc                   	int3
140894088:	cc                   	int3
140894089:	cc                   	int3
14089408a:	cc                   	int3
14089408b:	cc                   	int3
14089408c:	cc                   	int3
14089408d:	cc                   	int3
14089408e:	cc                   	int3
14089408f:	cc                   	int3
140894090:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140894095:	57                   	push   %rdi
140894096:	48 83 ec 20          	sub    $0x20,%rsp
14089409a:	41 3b d1             	cmp    %r9d,%edx
14089409d:	41 8b c1             	mov    %r9d,%eax
1408940a0:	49 8b c8             	mov    %r8,%rcx
1408940a3:	8b da                	mov    %edx,%ebx
1408940a5:	0f 4c c2             	cmovl  %edx,%eax
1408940a8:	41 8b f9             	mov    %r9d,%edi
1408940ab:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
1408940b0:	4c 63 c0             	movslq %eax,%r8
1408940b3:	e8 98 b9 64 00       	call   0x140edfa50
1408940b8:	85 c0                	test   %eax,%eax
1408940ba:	75 04                	jne    0x1408940c0
1408940bc:	2b df                	sub    %edi,%ebx
1408940be:	8b c3                	mov    %ebx,%eax
1408940c0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1408940c5:	48 83 c4 20          	add    $0x20,%rsp
1408940c9:	5f                   	pop    %rdi
1408940ca:	c3                   	ret
1408940cb:	cc                   	int3
1408940cc:	cc                   	int3
1408940cd:	cc                   	int3
1408940ce:	cc                   	int3
1408940cf:	cc                   	int3
1408940d0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1408940d5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1408940da:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1408940df:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1408940e4:	41 57                	push   %r15
1408940e6:	48 83 ec 30          	sub    $0x30,%rsp
1408940ea:	48 63 f2             	movslq %edx,%rsi
1408940ed:	4d 8b f9             	mov    %r9,%r15
1408940f0:	8b d6                	mov    %esi,%edx
1408940f2:	49 8b e8             	mov    %r8,%rbp
1408940f5:	48 8b f9             	mov    %rcx,%rdi
1408940f8:	e8 93 7b 09 00       	call   0x14092bc90
1408940fd:	8b d8                	mov    %eax,%ebx
1408940ff:	85 c0                	test   %eax,%eax
140894101:	0f 85 a1 00 00 00    	jne    0x1408941a8
140894107:	48 85 ed             	test   %rbp,%rbp
14089410a:	0f 84 83 00 00 00    	je     0x140894193
140894110:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
140894115:	4d 8b c7             	mov    %r15,%r8
140894118:	44 0f b6 4c 24 68    	movzbl 0x68(%rsp),%r9d
14089411e:	48 8b d5             	mov    %rbp,%rdx
140894121:	48 6b f6 38          	imul   $0x38,%rsi,%rsi
140894125:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14089412a:	48 03 b7 80 00 00 00 	add    0x80(%rdi),%rsi
140894131:	48 8d 4e c8          	lea    -0x38(%rsi),%rcx
140894135:	e8 e6 f4 07 00       	call   0x140913620
14089413a:	8b d8                	mov    %eax,%ebx
14089413c:	85 c0                	test   %eax,%eax
14089413e:	75 30                	jne    0x140894170
140894140:	38 44 24 68          	cmp    %al,0x68(%rsp)
140894144:	74 4d                	je     0x140894193
140894146:	f6 46 dc 02          	testb  $0x2,-0x24(%rsi)
14089414a:	48 8b 07             	mov    (%rdi),%rax
14089414d:	0f b6 50 64          	movzbl 0x64(%rax),%edx
140894151:	75 05                	jne    0x140894158
140894153:	88 56 de             	mov    %dl,-0x22(%rsi)
140894156:	eb 3b                	jmp    0x140894193
140894158:	38 56 de             	cmp    %dl,-0x22(%rsi)
14089415b:	75 04                	jne    0x140894161
14089415d:	33 db                	xor    %ebx,%ebx
14089415f:	eb 32                	jmp    0x140894193
140894161:	48 8d 4e c8          	lea    -0x38(%rsi),%rcx
140894165:	e8 46 fa 07 00       	call   0x140913bb0
14089416a:	8b d8                	mov    %eax,%ebx
14089416c:	85 c0                	test   %eax,%eax
14089416e:	74 23                	je     0x140894193
140894170:	48 8b 0f             	mov    (%rdi),%rcx
140894173:	8b d3                	mov    %ebx,%edx
140894175:	89 59 50             	mov    %ebx,0x50(%rcx)
140894178:	e8 73 56 04 00       	call   0x1408d97f0
14089417d:	48 8b 0f             	mov    (%rdi),%rcx
140894180:	80 79 67 00          	cmpb   $0x0,0x67(%rcx)
140894184:	75 04                	jne    0x14089418a
140894186:	85 db                	test   %ebx,%ebx
140894188:	74 09                	je     0x140894193
14089418a:	8b d3                	mov    %ebx,%edx
14089418c:	e8 5f d3 ff ff       	call   0x1408914f0
140894191:	8b d8                	mov    %eax,%ebx
140894193:	48 8b 07             	mov    (%rdi),%rax
140894196:	48 8b 48 18          	mov    0x18(%rax),%rcx
14089419a:	48 85 c9             	test   %rcx,%rcx
14089419d:	74 21                	je     0x1408941c0
14089419f:	48 8b 05 1a 95 b1 00 	mov    0xb1951a(%rip),%rax        # 0x1413ad6c0
1408941a6:	eb 12                	jmp    0x1408941ba
1408941a8:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
1408941ad:	48 8d 48 ff          	lea    -0x1(%rax),%rcx
1408941b1:	48 83 f9 fd          	cmp    $0xfffffffffffffffd,%rcx
1408941b5:	77 09                	ja     0x1408941c0
1408941b7:	48 8b cd             	mov    %rbp,%rcx
1408941ba:	ff 15 60 f8 6e 00    	call   *0x6ef860(%rip)        # 0x140f83a20
1408941c0:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1408941c5:	8b c3                	mov    %ebx,%eax
1408941c7:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1408941cc:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1408941d1:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1408941d6:	48 83 c4 30          	add    $0x30,%rsp
1408941da:	41 5f                	pop    %r15
1408941dc:	c3                   	ret
1408941dd:	cc                   	int3
1408941de:	cc                   	int3
1408941df:	cc                   	int3
1408941e0:	40 53                	rex push %rbx
1408941e2:	55                   	push   %rbp
1408941e3:	56                   	push   %rsi
1408941e4:	41 54                	push   %r12
1408941e6:	48 83 ec 38          	sub    $0x38,%rsp
1408941ea:	49 63 d9             	movslq %r9d,%rbx
1408941ed:	4c 8b e2             	mov    %rdx,%r12
1408941f0:	49 63 f0             	movslq %r8d,%rsi
1408941f3:	48 8b e9             	mov    %rcx,%rbp
1408941f6:	48 85 c9             	test   %rcx,%rcx
1408941f9:	75 39                	jne    0x140894234
1408941fb:	48 8d 05 42 f8 7b 00 	lea    0x7bf842(%rip),%rax        # 0x141053a44
140894202:	41 b9 d6 7c 01 00    	mov    $0x17cd6,%r9d
140894208:	4c 8d 05 75 f6 7b 00 	lea    0x7bf675(%rip),%r8        # 0x141053884
14089420f:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140894214:	48 8d 15 35 f6 7b 00 	lea    0x7bf635(%rip),%rdx        # 0x141053850
14089421b:	b9 15 00 00 00       	mov    $0x15,%ecx
140894220:	e8 1b 53 fe ff       	call   0x140879540
140894225:	b8 15 00 00 00       	mov    $0x15,%eax
14089422a:	48 83 c4 38          	add    $0x38,%rsp
14089422e:	41 5c                	pop    %r12
140894230:	5e                   	pop    %rsi
140894231:	5d                   	pop    %rbp
140894232:	5b                   	pop    %rbx
140894233:	c3                   	ret
140894234:	48 89 7c 24 68       	mov    %rdi,0x68(%rsp)
140894239:	48 8b 79 20          	mov    0x20(%rcx),%rdi
14089423d:	4c 89 74 24 70       	mov    %r14,0x70(%rsp)
140894242:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140894247:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
14089424b:	48 85 c9             	test   %rcx,%rcx
14089424e:	74 0d                	je     0x14089425d
140894250:	48 8b 05 59 94 b1 00 	mov    0xb19459(%rip),%rax        # 0x1413ad6b0
140894257:	ff 15 c3 f7 6e 00    	call   *0x6ef7c3(%rip)        # 0x140f83a20
14089425d:	4c 8b 7d 18          	mov    0x18(%rbp),%r15
140894261:	45 33 f6             	xor    %r14d,%r14d
140894264:	85 f6                	test   %esi,%esi
140894266:	0f 88 b1 00 00 00    	js     0x14089431d
14089426c:	85 db                	test   %ebx,%ebx
14089426e:	0f 88 a9 00 00 00    	js     0x14089431d
140894274:	48 63 45 00          	movslq 0x0(%rbp),%rax
140894278:	48 8d 0c 33          	lea    (%rbx,%rsi,1),%rcx
14089427c:	48 3b c8             	cmp    %rax,%rcx
14089427f:	0f 8f 98 00 00 00    	jg     0x14089431d
140894285:	4d 85 ff             	test   %r15,%r15
140894288:	75 0a                	jne    0x140894294
14089428a:	bb 04 00 00 00       	mov    $0x4,%ebx
14089428f:	e9 8e 00 00 00       	jmp    0x140894322
140894294:	48 8b 45 10          	mov    0x10(%rbp),%rax
140894298:	48 8b 48 08          	mov    0x8(%rax),%rcx
14089429c:	44 38 71 11          	cmp    %r14b,0x11(%rcx)
1408942a0:	74 0e                	je     0x1408942b0
1408942a2:	ff 41 14             	incl   0x14(%rcx)
1408942a5:	44 38 71 12          	cmp    %r14b,0x12(%rcx)
1408942a9:	75 05                	jne    0x1408942b0
1408942ab:	e8 00 13 00 00       	call   0x1408955b0
1408942b0:	8b 55 04             	mov    0x4(%rbp),%edx
1408942b3:	4d 8b cc             	mov    %r12,%r9
1408942b6:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
1408942ba:	03 d3                	add    %ebx,%edx
1408942bc:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
1408942c3:	00
1408942c4:	44 8b c6             	mov    %esi,%r8d
1408942c7:	ff 15 53 f7 6e 00    	call   *0x6ef753(%rip)        # 0x140f83a20
1408942cd:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
1408942d1:	8b d8                	mov    %eax,%ebx
1408942d3:	8b f0                	mov    %eax,%esi
1408942d5:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1408942d9:	44 38 71 11          	cmp    %r14b,0x11(%rcx)
1408942dd:	74 0b                	je     0x1408942ea
1408942df:	83 69 14 01          	subl   $0x1,0x14(%rcx)
1408942e3:	75 05                	jne    0x1408942ea
1408942e5:	e8 e6 15 09 00       	call   0x1409258d0
1408942ea:	83 fb 04             	cmp    $0x4,%ebx
1408942ed:	75 11                	jne    0x140894300
1408942ef:	49 8b cf             	mov    %r15,%rcx
1408942f2:	e8 99 d4 07 00       	call   0x140911790
1408942f7:	4c 89 75 18          	mov    %r14,0x18(%rbp)
1408942fb:	89 77 50             	mov    %esi,0x50(%rdi)
1408942fe:	eb 25                	jmp    0x140894325
140894300:	41 89 5f 34          	mov    %ebx,0x34(%r15)
140894304:	89 77 50             	mov    %esi,0x50(%rdi)
140894307:	85 f6                	test   %esi,%esi
140894309:	75 1a                	jne    0x140894325
14089430b:	4c 39 b7 90 01 00 00 	cmp    %r14,0x190(%rdi)
140894312:	75 11                	jne    0x140894325
140894314:	c7 47 54 ff ff ff ff 	movl   $0xffffffff,0x54(%rdi)
14089431b:	eb 12                	jmp    0x14089432f
14089431d:	bb 01 00 00 00       	mov    $0x1,%ebx
140894322:	89 5f 50             	mov    %ebx,0x50(%rdi)
140894325:	8b d3                	mov    %ebx,%edx
140894327:	48 8b cf             	mov    %rdi,%rcx
14089432a:	e8 c1 54 04 00       	call   0x1408d97f0
14089432f:	4c 8b 7c 24 30       	mov    0x30(%rsp),%r15
140894334:	44 38 77 67          	cmp    %r14b,0x67(%rdi)
140894338:	75 04                	jne    0x14089433e
14089433a:	85 db                	test   %ebx,%ebx
14089433c:	74 0d                	je     0x14089434b
14089433e:	8b d3                	mov    %ebx,%edx
140894340:	48 8b cf             	mov    %rdi,%rcx
140894343:	e8 a8 d1 ff ff       	call   0x1408914f0
140894348:	44 8b f0             	mov    %eax,%r14d
14089434b:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
14089434f:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
140894354:	48 85 c9             	test   %rcx,%rcx
140894357:	74 0d                	je     0x140894366
140894359:	48 8b 05 60 93 b1 00 	mov    0xb19360(%rip),%rax        # 0x1413ad6c0
140894360:	ff 15 ba f6 6e 00    	call   *0x6ef6ba(%rip)        # 0x140f83a20
140894366:	41 8b c6             	mov    %r14d,%eax
140894369:	4c 8b 74 24 70       	mov    0x70(%rsp),%r14
14089436e:	48 83 c4 38          	add    $0x38,%rsp
140894372:	41 5c                	pop    %r12
140894374:	5e                   	pop    %rsi
140894375:	5d                   	pop    %rbp
140894376:	5b                   	pop    %rbx
140894377:	c3                   	ret
140894378:	cc                   	int3
140894379:	cc                   	int3
14089437a:	cc                   	int3
14089437b:	cc                   	int3
14089437c:	cc                   	int3
14089437d:	cc                   	int3
14089437e:	cc                   	int3
14089437f:	cc                   	int3
140894380:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140894385:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14089438a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14089438f:	57                   	push   %rdi
140894390:	41 56                	push   %r14
140894392:	41 57                	push   %r15
140894394:	48 83 ec 30          	sub    $0x30,%rsp
140894398:	48 8b 79 18          	mov    0x18(%rcx),%rdi
14089439c:	48 8b d9             	mov    %rcx,%rbx
14089439f:	b9 04 00 00 00       	mov    $0x4,%ecx
1408943a4:	33 ed                	xor    %ebp,%ebp
1408943a6:	4d 8b f0             	mov    %r8,%r14
1408943a9:	4c 8b fa             	mov    %rdx,%r15
1408943ac:	48 8b 47 68          	mov    0x68(%rdi),%rax
1408943b0:	66 89 48 4c          	mov    %cx,0x4c(%rax)
1408943b4:	48 8b 47 68          	mov    0x68(%rdi),%rax
1408943b8:	48 89 50 38          	mov    %rdx,0x38(%rax)
1408943bc:	39 4f 30             	cmp    %ecx,0x30(%rdi)
1408943bf:	7e 0d                	jle    0x1408943ce
1408943c1:	89 4f 30             	mov    %ecx,0x30(%rdi)
1408943c4:	48 8b cf             	mov    %rdi,%rcx
1408943c7:	e8 f4 3c 07 00       	call   0x1409080c0
1408943cc:	eb 09                	jmp    0x1408943d7
1408943ce:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1408943d2:	e8 19 9a fd ff       	call   0x14086ddf0
1408943d7:	8b f0                	mov    %eax,%esi
1408943d9:	83 f8 64             	cmp    $0x64,%eax
1408943dc:	0f 85 b4 00 00 00    	jne    0x140894496
1408943e2:	48 8b 47 78          	mov    0x78(%rdi),%rax
1408943e6:	44 0f b7 4b 08       	movzwl 0x8(%rbx),%r9d
1408943eb:	4c 8b 00             	mov    (%rax),%r8
1408943ee:	66 45 39 48 4a       	cmp    %r9w,0x4a(%r8)
1408943f3:	76 71                	jbe    0x140894466
1408943f5:	43 8b 54 88 70       	mov    0x70(%r8,%r9,4),%edx
1408943fa:	83 fa 0c             	cmp    $0xc,%edx
1408943fd:	73 1b                	jae    0x14089441a
1408943ff:	85 d2                	test   %edx,%edx
140894401:	74 63                	je     0x140894466
140894403:	83 fa 07             	cmp    $0x7,%edx
140894406:	48 8d 05 b7 9f 7b 00 	lea    0x7b9fb7(%rip),%rax        # 0x14104e3c4