1404080d8:	ba e8 00 00 00       	mov    $0xe8,%edx
1404080dd:	48 8b ce             	mov    %rsi,%rcx
1404080e0:	e8 5f 30 a1 00       	call   0x140e1b144
1404080e5:	48 83 c7 08          	add    $0x8,%rdi
1404080e9:	48 3b fd             	cmp    %rbp,%rdi
1404080ec:	75 da                	jne    0x1404080c8
1404080ee:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1404080f3:	48 8b 6c 24 30       	mov    0x30(%rsp),%rbp
1404080f8:	48 8b 9b 88 00 00 00 	mov    0x88(%rbx),%rbx
1404080ff:	48 85 db             	test   %rbx,%rbx
140408102:	74 51                	je     0x140408155
140408104:	48 8b 0b             	mov    (%rbx),%rcx
140408107:	48 85 c9             	test   %rcx,%rcx
14040810a:	74 3c                	je     0x140408148
14040810c:	48 8b 53 10          	mov    0x10(%rbx),%rdx
140408110:	48 2b d1             	sub    %rcx,%rdx
140408113:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
140408117:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14040811e:	72 18                	jb     0x140408138
140408120:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140408124:	48 83 c2 27          	add    $0x27,%rdx
140408128:	49 2b c8             	sub    %r8,%rcx
14040812b:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14040812f:	48 83 f8 1f          	cmp    $0x1f,%rax
140408133:	77 31                	ja     0x140408166
140408135:	49 8b c8             	mov    %r8,%rcx
140408138:	e8 07 30 a1 00       	call   0x140e1b144
14040813d:	4c 89 33             	mov    %r14,(%rbx)
140408140:	4c 89 73 08          	mov    %r14,0x8(%rbx)
140408144:	4c 89 73 10          	mov    %r14,0x10(%rbx)
140408148:	ba 18 00 00 00       	mov    $0x18,%edx
14040814d:	48 8b cb             	mov    %rbx,%rcx
140408150:	e8 ef 2f a1 00       	call   0x140e1b144
140408155:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14040815a:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
14040815f:	48 83 c4 20          	add    $0x20,%rsp
140408163:	41 5e                	pop    %r14
140408165:	c3                   	ret
140408166:	e8 39 20 a2 00       	call   0x140e2a1a4
14040816b:	cc                   	int3
14040816c:	cc                   	int3
14040816d:	cc                   	int3
14040816e:	cc                   	int3
14040816f:	cc                   	int3
140408170:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140408175:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14040817a:	57                   	push   %rdi
14040817b:	48 83 ec 20          	sub    $0x20,%rsp
14040817f:	0f b6 01             	movzbl (%rcx),%eax
140408182:	48 8b f9             	mov    %rcx,%rdi
140408185:	83 f8 16             	cmp    $0x16,%eax
140408188:	0f 87 5c 04 00 00    	ja     0x1404085ea
14040818e:	48 8d 15 6b 7e bf ff 	lea    -0x408195(%rip),%rdx        # 0x140000000
140408195:	8b 84 82 1c 86 40 00 	mov    0x40861c(%rdx,%rax,4),%eax
14040819c:	48 03 c2             	add    %rdx,%rax
14040819f:	ff e0                	jmp    *%rax
1404081a1:	48 8b 71 08          	mov    0x8(%rcx),%rsi
1404081a5:	33 db                	xor    %ebx,%ebx
1404081a7:	48 85 f6             	test   %rsi,%rsi
1404081aa:	74 22                	je     0x1404081ce
1404081ac:	48 8b 0e             	mov    (%rsi),%rcx
1404081af:	48 85 c9             	test   %rcx,%rcx
1404081b2:	74 0a                	je     0x1404081be
1404081b4:	ba 18 00 00 00       	mov    $0x18,%edx
1404081b9:	e8 86 2f a1 00       	call   0x140e1b144
1404081be:	ba 10 00 00 00       	mov    $0x10,%edx
1404081c3:	48 89 1e             	mov    %rbx,(%rsi)
1404081c6:	48 8b ce             	mov    %rsi,%rcx
1404081c9:	e8 76 2f a1 00       	call   0x140e1b144
1404081ce:	48 89 5f 08          	mov    %rbx,0x8(%rdi)
1404081d2:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1404081d7:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1404081dc:	48 83 c4 20          	add    $0x20,%rsp
1404081e0:	5f                   	pop    %rdi
1404081e1:	c3                   	ret
1404081e2:	48 8b 59 10          	mov    0x10(%rcx),%rbx
1404081e6:	48 85 db             	test   %rbx,%rbx
1404081e9:	74 15                	je     0x140408200
1404081eb:	48 8b cb             	mov    %rbx,%rcx
1404081ee:	e8 7d fc ff ff       	call   0x140407e70
1404081f3:	ba a8 00 00 00       	mov    $0xa8,%edx
1404081f8:	48 8b cb             	mov    %rbx,%rcx
1404081fb:	e8 44 2f a1 00       	call   0x140e1b144
140408200:	33 db                	xor    %ebx,%ebx
140408202:	48 89 5f 10          	mov    %rbx,0x10(%rdi)
140408206:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14040820b:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140408210:	48 83 c4 20          	add    $0x20,%rsp
140408214:	5f                   	pop    %rdi
140408215:	c3                   	ret
140408216:	48 8b 71 18          	mov    0x18(%rcx),%rsi
14040821a:	33 db                	xor    %ebx,%ebx
14040821c:	48 85 f6             	test   %rsi,%rsi
14040821f:	0f 84 8a 00 00 00    	je     0x1404082af
140408225:	48 8b 0e             	mov    (%rsi),%rcx
140408228:	48 85 c9             	test   %rcx,%rcx
14040822b:	74 0a                	je     0x140408237
14040822d:	ba 18 00 00 00       	mov    $0x18,%edx
140408232:	e8 0d 2f a1 00       	call   0x140e1b144
140408237:	0f b7 46 0a          	movzwl 0xa(%rsi),%eax
14040823b:	b9 04 03 00 00       	mov    $0x304,%ecx
140408240:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
140408245:	48 89 1e             	mov    %rbx,(%rsi)
140408248:	66 3b c1             	cmp    %cx,%ax
14040824b:	74 2e                	je     0x14040827b
14040824d:	b9 00 7f 00 00       	mov    $0x7f00,%ecx
140408252:	66 3b c1             	cmp    %cx,%ax
140408255:	74 24                	je     0x14040827b
140408257:	48 8b 6e 18          	mov    0x18(%rsi),%rbp
14040825b:	48 85 ed             	test   %rbp,%rbp
14040825e:	74 15                	je     0x140408275
140408260:	48 8b cd             	mov    %rbp,%rcx
140408263:	e8 38 14 00 00       	call   0x1404096a0
140408268:	ba 68 00 00 00       	mov    $0x68,%edx
14040826d:	48 8b cd             	mov    %rbp,%rcx
140408270:	e8 cf 2e a1 00       	call   0x140e1b144
140408275:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
140408279:	eb 22                	jmp    0x14040829d
14040827b:	48 8b 6e 10          	mov    0x10(%rsi),%rbp
14040827f:	48 85 ed             	test   %rbp,%rbp
140408282:	74 15                	je     0x140408299
140408284:	48 8b cd             	mov    %rbp,%rcx
140408287:	e8 34 12 00 00       	call   0x1404094c0
14040828c:	ba 50 00 00 00       	mov    $0x50,%edx
140408291:	48 8b cd             	mov    %rbp,%rcx
140408294:	e8 ab 2e a1 00       	call   0x140e1b144
140408299:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
14040829d:	ba 30 00 00 00       	mov    $0x30,%edx
1404082a2:	48 8b ce             	mov    %rsi,%rcx
1404082a5:	e8 9a 2e a1 00       	call   0x140e1b144
1404082aa:	48 8b 6c 24 30       	mov    0x30(%rsp),%rbp
1404082af:	48 89 5f 18          	mov    %rbx,0x18(%rdi)
1404082b3:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1404082b8:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1404082bd:	48 83 c4 20          	add    $0x20,%rsp
1404082c1:	5f                   	pop    %rdi
1404082c2:	c3                   	ret
1404082c3:	48 8b 71 20          	mov    0x20(%rcx),%rsi
1404082c7:	33 db                	xor    %ebx,%ebx
1404082c9:	48 85 f6             	test   %rsi,%rsi
1404082cc:	74 22                	je     0x1404082f0
1404082ce:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1404082d2:	48 85 c9             	test   %rcx,%rcx
1404082d5:	74 05                	je     0x1404082dc
1404082d7:	e8 68 2e a1 00       	call   0x140e1b144
1404082dc:	ba 20 00 00 00       	mov    $0x20,%edx
1404082e1:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404082e5:	48 8b ce             	mov    %rsi,%rcx
1404082e8:	89 5e 10             	mov    %ebx,0x10(%rsi)
1404082eb:	e8 54 2e a1 00       	call   0x140e1b144
1404082f0:	48 89 5f 20          	mov    %rbx,0x20(%rdi)
1404082f4:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1404082f9:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1404082fe:	48 83 c4 20          	add    $0x20,%rsp
140408302:	5f                   	pop    %rdi
140408303:	c3                   	ret
140408304:	48 8b 71 28          	mov    0x28(%rcx),%rsi
140408308:	33 db                	xor    %ebx,%ebx
14040830a:	48 85 f6             	test   %rsi,%rsi
14040830d:	74 22                	je     0x140408331
14040830f:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140408313:	48 85 c9             	test   %rcx,%rcx
140408316:	74 05                	je     0x14040831d
140408318:	e8 27 2e a1 00       	call   0x140e1b144
14040831d:	ba 28 00 00 00       	mov    $0x28,%edx
140408322:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
140408326:	48 8b ce             	mov    %rsi,%rcx
140408329:	89 5e 10             	mov    %ebx,0x10(%rsi)
14040832c:	e8 13 2e a1 00       	call   0x140e1b144
140408331:	48 89 5f 28          	mov    %rbx,0x28(%rdi)
140408335:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14040833a:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14040833f:	48 83 c4 20          	add    $0x20,%rsp
140408343:	5f                   	pop    %rdi
140408344:	c3                   	ret
140408345:	48 8b 59 30          	mov    0x30(%rcx),%rbx
140408349:	48 85 db             	test   %rbx,%rbx
14040834c:	74 15                	je     0x140408363
14040834e:	48 8b cb             	mov    %rbx,%rcx
140408351:	e8 ba f9 ff ff       	call   0x140407d10
140408356:	ba 28 00 00 00       	mov    $0x28,%edx
14040835b:	48 8b cb             	mov    %rbx,%rcx
14040835e:	e8 e1 2d a1 00       	call   0x140e1b144
140408363:	33 db                	xor    %ebx,%ebx
140408365:	48 89 5f 30          	mov    %rbx,0x30(%rdi)
140408369:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14040836e:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140408373:	48 83 c4 20          	add    $0x20,%rsp
140408377:	5f                   	pop    %rdi
140408378:	c3                   	ret
140408379:	48 8b 59 38          	mov    0x38(%rcx),%rbx
14040837d:	48 85 db             	test   %rbx,%rbx
140408380:	74 15                	je     0x140408397
140408382:	48 8b cb             	mov    %rbx,%rcx
140408385:	e8 46 15 00 00       	call   0x1404098d0
14040838a:	ba 40 00 00 00       	mov    $0x40,%edx
14040838f:	48 8b cb             	mov    %rbx,%rcx
140408392:	e8 ad 2d a1 00       	call   0x140e1b144
140408397:	33 db                	xor    %ebx,%ebx
140408399:	48 89 5f 38          	mov    %rbx,0x38(%rdi)
14040839d:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1404083a2:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1404083a7:	48 83 c4 20          	add    $0x20,%rsp
1404083ab:	5f                   	pop    %rdi
1404083ac:	c3                   	ret
1404083ad:	48 8b 49 40          	mov    0x40(%rcx),%rcx
1404083b1:	48 85 c9             	test   %rcx,%rcx
1404083b4:	74 0a                	je     0x1404083c0
1404083b6:	ba 18 00 00 00       	mov    $0x18,%edx
1404083bb:	e8 84 2d a1 00       	call   0x140e1b144
1404083c0:	33 db                	xor    %ebx,%ebx
1404083c2:	48 89 5f 40          	mov    %rbx,0x40(%rdi)
1404083c6:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1404083cb:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1404083d0:	48 83 c4 20          	add    $0x20,%rsp
1404083d4:	5f                   	pop    %rdi
1404083d5:	c3                   	ret
1404083d6:	48 8b 49 48          	mov    0x48(%rcx),%rcx
1404083da:	48 85 c9             	test   %rcx,%rcx
1404083dd:	74 0a                	je     0x1404083e9
1404083df:	ba 08 00 00 00       	mov    $0x8,%edx
1404083e4:	e8 5b 2d a1 00       	call   0x140e1b144
1404083e9:	33 db                	xor    %ebx,%ebx
1404083eb:	48 89 5f 48          	mov    %rbx,0x48(%rdi)
1404083ef:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1404083f4:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1404083f9:	48 83 c4 20          	add    $0x20,%rsp
1404083fd:	5f                   	pop    %rdi
1404083fe:	c3                   	ret
1404083ff:	48 8b 49 50          	mov    0x50(%rcx),%rcx
140408403:	48 85 c9             	test   %rcx,%rcx
140408406:	74 0a                	je     0x140408412
140408408:	ba 18 00 00 00       	mov    $0x18,%edx
14040840d:	e8 32 2d a1 00       	call   0x140e1b144
140408412:	33 db                	xor    %ebx,%ebx
140408414:	48 89 5f 50          	mov    %rbx,0x50(%rdi)
140408418:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14040841d:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140408422:	48 83 c4 20          	add    $0x20,%rsp
140408426:	5f                   	pop    %rdi
140408427:	c3                   	ret
140408428:	48 8b 71 58          	mov    0x58(%rcx),%rsi
14040842c:	33 db                	xor    %ebx,%ebx
14040842e:	48 85 f6             	test   %rsi,%rsi
140408431:	0f 84 1e 01 00 00    	je     0x140408555
140408437:	8b 0e                	mov    (%rsi),%ecx
140408439:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14040843e:	81 f9 01 c0 00 00    	cmp    $0xc001,%ecx
140408444:	7f 2b                	jg     0x140408471
140408446:	0f 84 c9 00 00 00    	je     0x140408515
14040844c:	ff c9                	dec    %ecx
14040844e:	81 f9 c4 00 00 00    	cmp    $0xc4,%ecx
140408454:	0f 87 e9 00 00 00    	ja     0x140408543
14040845a:	48 63 c1             	movslq %ecx,%rax
14040845d:	0f b6 84 02 84 86 40 	movzbl 0x408684(%rdx,%rax,1),%eax
140408464:	00
140408465:	8b 8c 82 78 86 40 00 	mov    0x408678(%rdx,%rax,4),%ecx
14040846c:	48 03 ca             	add    %rdx,%rcx
14040846f:	ff e1                	jmp    *%rcx
140408471:	81 f9 13 cc 00 00    	cmp    $0xcc13,%ecx
140408477:	7f 5f                	jg     0x1404084d8
140408479:	0f 84 96 00 00 00    	je     0x140408515
14040847f:	81 e9 02 c0 00 00    	sub    $0xc002,%ecx
140408485:	81 f9 ad 00 00 00    	cmp    $0xad,%ecx
14040848b:	0f 87 b2 00 00 00    	ja     0x140408543
140408491:	48 63 c1             	movslq %ecx,%rax
140408494:	0f b6 84 02 5c 87 40 	movzbl 0x40875c(%rdx,%rax,1),%eax
14040849b:	00
14040849c:	8b 8c 82 4c 87 40 00 	mov    0x40874c(%rdx,%rax,4),%ecx
1404084a3:	48 03 ca             	add    %rdx,%rcx
1404084a6:	ff e1                	jmp    *%rcx
1404084a8:	4c 8b 76 08          	mov    0x8(%rsi),%r14
1404084ac:	4d 85 f6             	test   %r14,%r14
1404084af:	74 21                	je     0x1404084d2
1404084b1:	49 8b 0e             	mov    (%r14),%rcx
1404084b4:	48 85 c9             	test   %rcx,%rcx
1404084b7:	74 05                	je     0x1404084be
1404084b9:	e8 86 2c a1 00       	call   0x140e1b144
1404084be:	ba 20 00 00 00       	mov    $0x20,%edx
1404084c3:	49 89 1e             	mov    %rbx,(%r14)
1404084c6:	49 8b ce             	mov    %r14,%rcx
1404084c9:	41 89 5e 08          	mov    %ebx,0x8(%r14)
1404084cd:	e8 72 2c a1 00       	call   0x140e1b144
1404084d2:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404084d6:	eb 6b                	jmp    0x140408543
1404084d8:	81 e9 14 cc 00 00    	sub    $0xcc14,%ecx
1404084de:	74 35                	je     0x140408515
1404084e0:	83 f9 01             	cmp    $0x1,%ecx
1404084e3:	75 5e                	jne    0x140408543
1404084e5:	4c 8b 76 18          	mov    0x18(%rsi),%r14
1404084e9:	4d 85 f6             	test   %r14,%r14
1404084ec:	74 21                	je     0x14040850f
1404084ee:	49 8b 0e             	mov    (%r14),%rcx
1404084f1:	48 85 c9             	test   %rcx,%rcx
1404084f4:	74 05                	je     0x1404084fb
1404084f6:	e8 49 2c a1 00       	call   0x140e1b144
1404084fb:	ba 20 00 00 00       	mov    $0x20,%edx
140408500:	49 89 1e             	mov    %rbx,(%r14)
140408503:	49 8b ce             	mov    %r14,%rcx
140408506:	41 89 5e 08          	mov    %ebx,0x8(%r14)
14040850a:	e8 35 2c a1 00       	call   0x140e1b144
14040850f:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
140408513:	eb 2e                	jmp    0x140408543
140408515:	4c 8b 76 10          	mov    0x10(%rsi),%r14
140408519:	4d 85 f6             	test   %r14,%r14
14040851c:	74 21                	je     0x14040853f
14040851e:	49 8b 0e             	mov    (%r14),%rcx
140408521:	48 85 c9             	test   %rcx,%rcx
140408524:	74 05                	je     0x14040852b
140408526:	e8 19 2c a1 00       	call   0x140e1b144
14040852b:	ba 20 00 00 00       	mov    $0x20,%edx
140408530:	49 89 1e             	mov    %rbx,(%r14)
140408533:	49 8b ce             	mov    %r14,%rcx
140408536:	41 89 5e 08          	mov    %ebx,0x8(%r14)
14040853a:	e8 05 2c a1 00       	call   0x140e1b144
14040853f:	48 89 5e 10          	mov    %rbx,0x10(%rsi)
140408543:	ba 38 00 00 00       	mov    $0x38,%edx
140408548:	48 8b ce             	mov    %rsi,%rcx
14040854b:	e8 f4 2b a1 00       	call   0x140e1b144
140408550:	4c 8b 74 24 38       	mov    0x38(%rsp),%r14
140408555:	48 89 5f 58          	mov    %rbx,0x58(%rdi)
140408559:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14040855e:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140408563:	48 83 c4 20          	add    $0x20,%rsp
140408567:	5f                   	pop    %rdi
140408568:	c3                   	ret
140408569:	48 8b 49 60          	mov    0x60(%rcx),%rcx
14040856d:	48 85 c9             	test   %rcx,%rcx
140408570:	74 0a                	je     0x14040857c
140408572:	ba 18 00 00 00       	mov    $0x18,%edx
140408577:	e8 c8 2b a1 00       	call   0x140e1b144
14040857c:	33 db                	xor    %ebx,%ebx
14040857e:	48 89 5f 60          	mov    %rbx,0x60(%rdi)
140408582:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140408587:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14040858c:	48 83 c4 20          	add    $0x20,%rsp
140408590:	5f                   	pop    %rdi
140408591:	c3                   	ret
140408592:	48 8b 71 78          	mov    0x78(%rcx),%rsi
140408596:	33 db                	xor    %ebx,%ebx
140408598:	48 85 f6             	test   %rsi,%rsi
14040859b:	74 39                	je     0x1404085d6
14040859d:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1404085a1:	48 85 c9             	test   %rcx,%rcx
1404085a4:	74 0a                	je     0x1404085b0
1404085a6:	ba 03 00 00 00       	mov    $0x3,%edx
1404085ab:	e8 94 2b a1 00       	call   0x140e1b144
1404085b0:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1404085b4:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1404085b8:	48 85 c9             	test   %rcx,%rcx