1404661b5:	57                   	push   %rdi
1404661b6:	48 83 ec 20          	sub    $0x20,%rsp
1404661ba:	48 8d 05 77 21 b9 00 	lea    0xb92177(%rip),%rax        # 0x140ff8338
1404661c1:	48 8b d9             	mov    %rcx,%rbx
1404661c4:	48 89 01             	mov    %rax,(%rcx)
1404661c7:	8b fa                	mov    %edx,%edi
1404661c9:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1404661cd:	48 85 c9             	test   %rcx,%rcx
1404661d0:	74 0a                	je     0x1404661dc
1404661d2:	ba 01 00 00 00       	mov    $0x1,%edx
1404661d7:	e8 54 00 00 00       	call   0x140466230
1404661dc:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1404661e0:	48 c7 43 08 00 00 00 	movq   $0x0,0x8(%rbx)
1404661e7:	00
1404661e8:	48 85 c9             	test   %rcx,%rcx
1404661eb:	74 0a                	je     0x1404661f7
1404661ed:	ba 01 00 00 00       	mov    $0x1,%edx
1404661f2:	e8 39 00 00 00       	call   0x140466230
1404661f7:	48 c7 43 10 00 00 00 	movq   $0x0,0x10(%rbx)
1404661fe:	00
1404661ff:	48 8d 05 3a e9 b3 00 	lea    0xb3e93a(%rip),%rax        # 0x140fa4b40
140466206:	48 89 03             	mov    %rax,(%rbx)
140466209:	40 f6 c7 01          	test   $0x1,%dil
14046620d:	74 0d                	je     0x14046621c
14046620f:	ba 20 00 00 00       	mov    $0x20,%edx
140466214:	48 8b cb             	mov    %rbx,%rcx
140466217:	e8 28 4f 9b 00       	call   0x140e1b144
14046621c:	48 8b c3             	mov    %rbx,%rax
14046621f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140466224:	48 83 c4 20          	add    $0x20,%rsp
140466228:	5f                   	pop    %rdi
140466229:	c3                   	ret
14046622a:	cc                   	int3
14046622b:	cc                   	int3
14046622c:	cc                   	int3
14046622d:	cc                   	int3
14046622e:	cc                   	int3
14046622f:	cc                   	int3
140466230:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140466235:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14046623a:	57                   	push   %rdi
14046623b:	48 83 ec 20          	sub    $0x20,%rsp
14046623f:	48 8b 79 08          	mov    0x8(%rcx),%rdi
140466243:	48 8d 05 06 21 b9 00 	lea    0xb92106(%rip),%rax        # 0x140ff8350
14046624a:	48 89 01             	mov    %rax,(%rcx)
14046624d:	8b f2                	mov    %edx,%esi
14046624f:	48 8b d9             	mov    %rcx,%rbx
140466252:	48 85 ff             	test   %rdi,%rdi
140466255:	74 15                	je     0x14046626c
140466257:	48 8b cf             	mov    %rdi,%rcx
14046625a:	e8 f1 fc ff ff       	call   0x140465f50
14046625f:	ba 20 00 00 00       	mov    $0x20,%edx
140466264:	48 8b cf             	mov    %rdi,%rcx
140466267:	e8 d8 4e 9b 00       	call   0x140e1b144
14046626c:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140466270:	33 ff                	xor    %edi,%edi
140466272:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140466276:	48 85 c9             	test   %rcx,%rcx
140466279:	74 0a                	je     0x140466285
14046627b:	ba 18 00 00 00       	mov    $0x18,%edx
140466280:	e8 bf 4e 9b 00       	call   0x140e1b144
140466285:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
140466289:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
14046628d:	48 85 c9             	test   %rcx,%rcx
140466290:	74 11                	je     0x1404662a3
140466292:	48 8b 01             	mov    (%rcx),%rax
140466295:	ba 01 00 00 00       	mov    $0x1,%edx
14046629a:	48 8b 00             	mov    (%rax),%rax
14046629d:	ff 15 7d d7 b1 00    	call   *0xb1d77d(%rip)        # 0x140f83a20
1404662a3:	48 8d 4b 20          	lea    0x20(%rbx),%rcx
1404662a7:	48 89 7b 38          	mov    %rdi,0x38(%rbx)
1404662ab:	e8 90 92 d3 ff       	call   0x14019f540
1404662b0:	48 8d 05 a1 e8 b3 00 	lea    0xb3e8a1(%rip),%rax        # 0x140fa4b58
1404662b7:	48 89 03             	mov    %rax,(%rbx)
1404662ba:	40 f6 c6 01          	test   $0x1,%sil
1404662be:	74 0d                	je     0x1404662cd
1404662c0:	ba 50 00 00 00       	mov    $0x50,%edx
1404662c5:	48 8b cb             	mov    %rbx,%rcx
1404662c8:	e8 77 4e 9b 00       	call   0x140e1b144
1404662cd:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1404662d2:	48 8b c3             	mov    %rbx,%rax
1404662d5:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1404662da:	48 83 c4 20          	add    $0x20,%rsp
1404662de:	5f                   	pop    %rdi
1404662df:	c3                   	ret
1404662e0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1404662e5:	56                   	push   %rsi
1404662e6:	41 56                	push   %r14
1404662e8:	41 57                	push   %r15
1404662ea:	48 83 ec 20          	sub    $0x20,%rsp
1404662ee:	48 8b 59 08          	mov    0x8(%rcx),%rbx
1404662f2:	45 33 ff             	xor    %r15d,%r15d
1404662f5:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
1404662fa:	44 8b f2             	mov    %edx,%r14d
1404662fd:	48 8b f1             	mov    %rcx,%rsi
140466300:	48 85 db             	test   %rbx,%rbx
140466303:	74 37                	je     0x14046633c
140466305:	48 8b 0b             	mov    (%rbx),%rcx
140466308:	48 85 c9             	test   %rcx,%rcx
14046630b:	74 05                	je     0x140466312
14046630d:	e8 32 4e 9b 00       	call   0x140e1b144
140466312:	4c 89 3b             	mov    %r15,(%rbx)
140466315:	44 89 7b 08          	mov    %r15d,0x8(%rbx)
140466319:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
14046631d:	48 85 c9             	test   %rcx,%rcx
140466320:	74 05                	je     0x140466327
140466322:	e8 1d 4e 9b 00       	call   0x140e1b144
140466327:	ba 58 00 00 00       	mov    $0x58,%edx
14046632c:	4c 89 7b 40          	mov    %r15,0x40(%rbx)
140466330:	48 8b cb             	mov    %rbx,%rcx
140466333:	44 89 7b 48          	mov    %r15d,0x48(%rbx)
140466337:	e8 08 4e 9b 00       	call   0x140e1b144
14046633c:	48 8b 3e             	mov    (%rsi),%rdi
14046633f:	4c 89 7e 08          	mov    %r15,0x8(%rsi)
140466343:	48 85 ff             	test   %rdi,%rdi
140466346:	74 65                	je     0x1404663ad
140466348:	48 89 6c 24 40       	mov    %rbp,0x40(%rsp)
14046634d:	48 8b 6f 08          	mov    0x8(%rdi),%rbp
140466351:	48 8b 3f             	mov    (%rdi),%rdi
140466354:	48 3b fd             	cmp    %rbp,%rdi
140466357:	74 4f                	je     0x1404663a8
140466359:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140466360:	48 8b 1f             	mov    (%rdi),%rbx
140466363:	48 85 db             	test   %rbx,%rbx
140466366:	74 37                	je     0x14046639f
140466368:	48 8b 0b             	mov    (%rbx),%rcx
14046636b:	48 85 c9             	test   %rcx,%rcx
14046636e:	74 05                	je     0x140466375
140466370:	e8 cf 4d 9b 00       	call   0x140e1b144
140466375:	4c 89 3b             	mov    %r15,(%rbx)
140466378:	44 89 7b 08          	mov    %r15d,0x8(%rbx)
14046637c:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
140466380:	48 85 c9             	test   %rcx,%rcx
140466383:	74 05                	je     0x14046638a
140466385:	e8 ba 4d 9b 00       	call   0x140e1b144
14046638a:	ba 58 00 00 00       	mov    $0x58,%edx
14046638f:	4c 89 7b 40          	mov    %r15,0x40(%rbx)
140466393:	48 8b cb             	mov    %rbx,%rcx
140466396:	44 89 7b 48          	mov    %r15d,0x48(%rbx)
14046639a:	e8 a5 4d 9b 00       	call   0x140e1b144
14046639f:	48 83 c7 08          	add    $0x8,%rdi
1404663a3:	48 3b fd             	cmp    %rbp,%rdi
1404663a6:	75 b8                	jne    0x140466360
1404663a8:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
1404663ad:	48 8b 1e             	mov    (%rsi),%rbx
1404663b0:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1404663b5:	48 85 db             	test   %rbx,%rbx
1404663b8:	74 51                	je     0x14046640b
1404663ba:	48 8b 0b             	mov    (%rbx),%rcx
1404663bd:	48 85 c9             	test   %rcx,%rcx
1404663c0:	74 3c                	je     0x1404663fe
1404663c2:	48 8b 53 10          	mov    0x10(%rbx),%rdx
1404663c6:	48 2b d1             	sub    %rcx,%rdx
1404663c9:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
1404663cd:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1404663d4:	72 18                	jb     0x1404663ee
1404663d6:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1404663da:	48 83 c2 27          	add    $0x27,%rdx
1404663de:	49 2b c8             	sub    %r8,%rcx
1404663e1:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1404663e5:	48 83 f8 1f          	cmp    $0x1f,%rax
1404663e9:	77 45                	ja     0x140466430
1404663eb:	49 8b c8             	mov    %r8,%rcx
1404663ee:	e8 51 4d 9b 00       	call   0x140e1b144
1404663f3:	4c 89 3b             	mov    %r15,(%rbx)
1404663f6:	4c 89 7b 08          	mov    %r15,0x8(%rbx)
1404663fa:	4c 89 7b 10          	mov    %r15,0x10(%rbx)
1404663fe:	ba 18 00 00 00       	mov    $0x18,%edx
140466403:	48 8b cb             	mov    %rbx,%rcx
140466406:	e8 39 4d 9b 00       	call   0x140e1b144
14046640b:	41 f6 c6 01          	test   $0x1,%r14b
14046640f:	74 0d                	je     0x14046641e
140466411:	ba 20 00 00 00       	mov    $0x20,%edx
140466416:	48 8b ce             	mov    %rsi,%rcx
140466419:	e8 26 4d 9b 00       	call   0x140e1b144
14046641e:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140466423:	48 8b c6             	mov    %rsi,%rax
140466426:	48 83 c4 20          	add    $0x20,%rsp
14046642a:	41 5f                	pop    %r15
14046642c:	41 5e                	pop    %r14
14046642e:	5e                   	pop    %rsi
14046642f:	c3                   	ret
140466430:	e8 6f 3d 9c 00       	call   0x140e2a1a4
140466435:	cc                   	int3
140466436:	cc                   	int3
140466437:	cc                   	int3
140466438:	cc                   	int3
140466439:	cc                   	int3
14046643a:	cc                   	int3
14046643b:	cc                   	int3
14046643c:	cc                   	int3
14046643d:	cc                   	int3
14046643e:	cc                   	int3
14046643f:	cc                   	int3
140466440:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140466445:	57                   	push   %rdi
140466446:	48 83 ec 20          	sub    $0x20,%rsp
14046644a:	8b da                	mov    %edx,%ebx
14046644c:	48 8b f9             	mov    %rcx,%rdi
14046644f:	e8 fc fa ff ff       	call   0x140465f50
140466454:	f6 c3 01             	test   $0x1,%bl
140466457:	74 0d                	je     0x140466466
140466459:	ba 20 00 00 00       	mov    $0x20,%edx
14046645e:	48 8b cf             	mov    %rdi,%rcx
140466461:	e8 de 4c 9b 00       	call   0x140e1b144
140466466:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14046646b:	48 8b c7             	mov    %rdi,%rax
14046646e:	48 83 c4 20          	add    $0x20,%rsp
140466472:	5f                   	pop    %rdi
140466473:	c3                   	ret
140466474:	cc                   	int3
140466475:	cc                   	int3
140466476:	cc                   	int3
140466477:	cc                   	int3
140466478:	cc                   	int3
140466479:	cc                   	int3
14046647a:	cc                   	int3
14046647b:	cc                   	int3
14046647c:	cc                   	int3
14046647d:	cc                   	int3
14046647e:	cc                   	int3
14046647f:	cc                   	int3
140466480:	49 8b c0             	mov    %r8,%rax
140466483:	84 d2                	test   %dl,%dl
140466485:	74 0f                	je     0x140466496
140466487:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14046648b:	4d 8b c1             	mov    %r9,%r8
14046648e:	48 8b d0             	mov    %rax,%rdx
140466491:	e9 1a 00 00 00       	jmp    0x1404664b0
140466496:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14046649a:	4d 8b c1             	mov    %r9,%r8
14046649d:	48 8b d0             	mov    %rax,%rdx
1404664a0:	e9 0b 00 00 00       	jmp    0x1404664b0
1404664a5:	cc                   	int3
1404664a6:	cc                   	int3
1404664a7:	cc                   	int3
1404664a8:	cc                   	int3
1404664a9:	cc                   	int3
1404664aa:	cc                   	int3
1404664ab:	cc                   	int3
1404664ac:	cc                   	int3
1404664ad:	cc                   	int3
1404664ae:	cc                   	int3
1404664af:	cc                   	int3
1404664b0:	40 53                	rex push %rbx
1404664b2:	56                   	push   %rsi
1404664b3:	57                   	push   %rdi
1404664b4:	41 56                	push   %r14
1404664b6:	41 57                	push   %r15
1404664b8:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
1404664bf:	48 8b 05 3a 2a f5 00 	mov    0xf52a3a(%rip),%rax        # 0x1413b8f00
1404664c6:	48 33 c4             	xor    %rsp,%rax
1404664c9:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
1404664d0:	00
1404664d1:	48 8b d9             	mov    %rcx,%rbx
1404664d4:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1404664d9:	48 8b 49 38          	mov    0x38(%rcx),%rcx
1404664dd:	e8 3e 83 55 00       	call   0x1409be820
1404664e2:	45 33 ff             	xor    %r15d,%r15d
1404664e5:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
1404664e9:	44 39 79 08          	cmp    %r15d,0x8(%rcx)
1404664ed:	7f 0e                	jg     0x1404664fd
1404664ef:	48 8b 41 28          	mov    0x28(%rcx),%rax
1404664f3:	48 39 41 30          	cmp    %rax,0x30(%rcx)
1404664f7:	0f 86 8a 01 00 00    	jbe    0x140466687
1404664fd:	44 38 79 51          	cmp    %r15b,0x51(%rcx)
140466501:	74 10                	je     0x140466513
140466503:	44 38 79 18          	cmp    %r15b,0x18(%rcx)
140466507:	75 0a                	jne    0x140466513
140466509:	44 39 79 44          	cmp    %r15d,0x44(%rcx)
14046650d:	0f 85 74 01 00 00    	jne    0x140466687
140466513:	4c 39 7b 08          	cmp    %r15,0x8(%rbx)
140466517:	75 5c                	jne    0x140466575
140466519:	b9 20 00 00 00       	mov    $0x20,%ecx
14046651e:	e8 e5 4b 9b 00       	call   0x140e1b108
140466523:	48 85 c0             	test   %rax,%rax
140466526:	74 1b                	je     0x140466543
140466528:	0f b6 4b 48          	movzbl 0x48(%rbx),%ecx
14046652c:	c7 00 ff ff ff ff    	movl   $0xffffffff,(%rax)
140466532:	4c 89 78 08          	mov    %r15,0x8(%rax)
140466536:	4c 89 78 10          	mov    %r15,0x10(%rax)
14046653a:	88 48 18             	mov    %cl,0x18(%rax)
14046653d:	44 88 78 19          	mov    %r15b,0x19(%rax)
140466541:	eb 03                	jmp    0x140466546
140466543:	49 8b c7             	mov    %r15,%rax
140466546:	48 89 43 08          	mov    %rax,0x8(%rbx)
14046654a:	b9 18 00 00 00       	mov    $0x18,%ecx
14046654f:	e8 b4 4b 9b 00       	call   0x140e1b108
140466554:	48 85 c0             	test   %rax,%rax
140466557:	74 15                	je     0x14046656e
140466559:	48 8b 53 38          	mov    0x38(%rbx),%rdx
14046655d:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
140466561:	48 89 08             	mov    %rcx,(%rax)
140466564:	48 89 58 08          	mov    %rbx,0x8(%rax)
140466568:	48 89 50 10          	mov    %rdx,0x10(%rax)
14046656c:	eb 03                	jmp    0x140466571
14046656e:	49 8b c7             	mov    %r15,%rax
140466571:	48 89 43 10          	mov    %rax,0x10(%rbx)
140466575:	48 8b 7b 08          	mov    0x8(%rbx),%rdi
140466579:	48 8b 73 10          	mov    0x10(%rbx),%rsi
14046657d:	4c 8b 73 38          	mov    0x38(%rbx),%r14
140466581:	0f b6 57 18          	movzbl 0x18(%rdi),%edx
140466585:	89 17                	mov    %edx,(%rdi)
140466587:	85 d2                	test   %edx,%edx
140466589:	74 49                	je     0x1404665d4
14046658b:	83 fa 01             	cmp    $0x1,%edx
14046658e:	0f 85 12 01 00 00    	jne    0x1404666a6
140466594:	48 8b 47 08          	mov    0x8(%rdi),%rax
140466598:	48 85 c0             	test   %rax,%rax
14046659b:	75 27                	jne    0x1404665c4
14046659d:	b9 20 00 00 00       	mov    $0x20,%ecx
1404665a2:	e8 61 4b 9b 00       	call   0x140e1b108
1404665a7:	48 85 c0             	test   %rax,%rax
1404665aa:	74 11                	je     0x1404665bd
1404665ac:	4c 89 38             	mov    %r15,(%rax)
1404665af:	44 89 78 08          	mov    %r15d,0x8(%rax)
1404665b3:	4c 89 78 10          	mov    %r15,0x10(%rax)
1404665b7:	44 89 78 18          	mov    %r15d,0x18(%rax)
1404665bb:	eb 03                	jmp    0x1404665c0
1404665bd:	49 8b c7             	mov    %r15,%rax
1404665c0:	48 89 47 08          	mov    %rax,0x8(%rdi)
1404665c4:	4c 8b c6             	mov    %rsi,%r8
1404665c7:	49 8b d6             	mov    %r14,%rdx
1404665ca:	48 8b c8             	mov    %rax,%rcx
1404665cd:	e8 7e 12 00 00       	call   0x140467850
1404665d2:	eb 3e                	jmp    0x140466612
1404665d4:	48 8b 47 10          	mov    0x10(%rdi),%rax
1404665d8:	48 85 c0             	test   %rax,%rax
1404665db:	75 27                	jne    0x140466604
1404665dd:	b9 20 00 00 00       	mov    $0x20,%ecx
1404665e2:	e8 21 4b 9b 00       	call   0x140e1b108
1404665e7:	48 85 c0             	test   %rax,%rax
1404665ea:	74 11                	je     0x1404665fd
1404665ec:	4c 89 38             	mov    %r15,(%rax)
1404665ef:	44 89 78 08          	mov    %r15d,0x8(%rax)
1404665f3:	4c 89 78 10          	mov    %r15,0x10(%rax)
1404665f7:	44 89 78 18          	mov    %r15d,0x18(%rax)
1404665fb:	eb 03                	jmp    0x140466600
1404665fd:	49 8b c7             	mov    %r15,%rax
140466600:	48 89 47 10          	mov    %rax,0x10(%rdi)
140466604:	4c 8b c6             	mov    %rsi,%r8
140466607:	49 8b d6             	mov    %r14,%rdx
14046660a:	48 8b c8             	mov    %rax,%rcx
14046660d:	e8 ee 10 00 00       	call   0x140467700
140466612:	84 c0                	test   %al,%al
140466614:	74 71                	je     0x140466687
140466616:	48 8b 76 08          	mov    0x8(%rsi),%rsi
14046661a:	48 8b 0d 3f 1d fc 00 	mov    0xfc1d3f(%rip),%rcx        # 0x141428360
140466621:	48 85 c9             	test   %rcx,%rcx
140466624:	74 1f                	je     0x140466645