140049157:	79 16                	jns    0x14004916f
140049159:	45 33 c9             	xor    %r9d,%r9d
14004915c:	45 33 c0             	xor    %r8d,%r8d
14004915f:	41 8d 51 01          	lea    0x1(%r9),%edx
140049163:	b9 0d 00 00 c0       	mov    $0xc000000d,%ecx
140049168:	ff 15 6a 5f 01 00    	call   *0x15f6a(%rip)        # 0x14005f0d8
14004916e:	90                   	nop
14004916f:	4c 8b c7             	mov    %rdi,%r8
140049172:	48 8b 55 00          	mov    0x0(%rbp),%rdx
140049176:	48 8b cb             	mov    %rbx,%rcx
140049179:	ff d6                	call   *%rsi
14004917b:	8b d8                	mov    %eax,%ebx
14004917d:	48 8b 4d 00          	mov    0x0(%rbp),%rcx
140049181:	ff 15 71 5c 03 00    	call   *0x35c71(%rip)        # 0x14007edf8
140049187:	90                   	nop
140049188:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
14004918d:	48 83 fa 07          	cmp    $0x7,%rdx
140049191:	76 3a                	jbe    0x1400491cd
140049193:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
14004919a:	00
14004919b:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
1400491a0:	48 8b c1             	mov    %rcx,%rax
1400491a3:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1400491aa:	72 1c                	jb     0x1400491c8
1400491ac:	48 83 c2 27          	add    $0x27,%rdx
1400491b0:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1400491b4:	48 2b c1             	sub    %rcx,%rax
1400491b7:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1400491bb:	48 83 f8 1f          	cmp    $0x1f,%rax
1400491bf:	76 07                	jbe    0x1400491c8
1400491c1:	ff 15 d9 63 01 00    	call   *0x163d9(%rip)        # 0x14005f5a0
1400491c7:	cc                   	int3
1400491c8:	e8 c7 0a 01 00       	call   0x140059c94
1400491cd:	66 0f 6f 05 2b c6 01 	movdqa 0x1c62b(%rip),%xmm0        # 0x140065800
1400491d4:	00
1400491d5:	f3 0f 7f 44 24 30    	movdqu %xmm0,0x30(%rsp)
1400491db:	66 44 89 7c 24 20    	mov    %r15w,0x20(%rsp)
1400491e1:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
1400491e5:	ff 15 0d 5c 03 00    	call   *0x35c0d(%rip)        # 0x14007edf8
1400491eb:	90                   	nop
1400491ec:	85 db                	test   %ebx,%ebx
1400491ee:	78 61                	js     0x140049251
1400491f0:	4c 89 7d 50          	mov    %r15,0x50(%rbp)
1400491f4:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
1400491f8:	48 8b 01             	mov    (%rcx),%rax
1400491fb:	4c 8d 45 50          	lea    0x50(%rbp),%r8
1400491ff:	48 8d 15 7a 99 01 00 	lea    0x1997a(%rip),%rdx        # 0x140062b80
140049206:	ff 10                	call   *(%rax)
140049208:	8b d8                	mov    %eax,%ebx
14004920a:	85 c0                	test   %eax,%eax
14004920c:	78 2f                	js     0x14004923d
14004920e:	4c 89 7d 68          	mov    %r15,0x68(%rbp)
140049212:	48 8b 4d 58          	mov    0x58(%rbp),%rcx
140049216:	48 8b 01             	mov    (%rcx),%rax
140049219:	4c 8d 45 68          	lea    0x68(%rbp),%r8
14004921d:	48 8b 55 50          	mov    0x50(%rbp),%rdx
140049221:	ff 90 b0 00 00 00    	call   *0xb0(%rax)
140049227:	8b d8                	mov    %eax,%ebx
140049229:	48 8b 4d 68          	mov    0x68(%rbp),%rcx
14004922d:	48 85 c9             	test   %rcx,%rcx
140049230:	74 0b                	je     0x14004923d
140049232:	4c 89 7d 68          	mov    %r15,0x68(%rbp)
140049236:	48 8b 11             	mov    (%rcx),%rdx
140049239:	ff 52 10             	call   *0x10(%rdx)
14004923c:	90                   	nop
14004923d:	48 8b 4d 50          	mov    0x50(%rbp),%rcx
140049241:	48 85 c9             	test   %rcx,%rcx
140049244:	74 0b                	je     0x140049251
140049246:	4c 89 7d 50          	mov    %r15,0x50(%rbp)
14004924a:	48 8b 01             	mov    (%rcx),%rax
14004924d:	ff 50 10             	call   *0x10(%rax)
140049250:	90                   	nop
140049251:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
140049255:	48 85 c9             	test   %rcx,%rcx
140049258:	74 0b                	je     0x140049265
14004925a:	4c 89 7d 40          	mov    %r15,0x40(%rbp)
14004925e:	48 8b 01             	mov    (%rcx),%rax
140049261:	ff 50 10             	call   *0x10(%rax)
140049264:	90                   	nop
140049265:	48 8b 4d 58          	mov    0x58(%rbp),%rcx
140049269:	48 85 c9             	test   %rcx,%rcx
14004926c:	74 0b                	je     0x140049279
14004926e:	4c 89 7d 58          	mov    %r15,0x58(%rbp)
140049272:	48 8b 01             	mov    (%rcx),%rax
140049275:	ff 50 10             	call   *0x10(%rax)
140049278:	90                   	nop
140049279:	48 8b 4d 48          	mov    0x48(%rbp),%rcx
14004927d:	48 85 c9             	test   %rcx,%rcx
140049280:	74 0b                	je     0x14004928d
140049282:	4c 89 7d 48          	mov    %r15,0x48(%rbp)
140049286:	48 8b 01             	mov    (%rcx),%rax
140049289:	ff 50 10             	call   *0x10(%rax)
14004928c:	90                   	nop
14004928d:	8b c3                	mov    %ebx,%eax
14004928f:	48 8b 4d 70          	mov    0x70(%rbp),%rcx
140049293:	48 33 cc             	xor    %rsp,%rcx
140049296:	e8 65 05 01 00       	call   0x140059800
14004929b:	48 8b 9c 24 b0 01 00 	mov    0x1b0(%rsp),%rbx
1400492a2:	00
1400492a3:	48 81 c4 80 01 00 00 	add    $0x180,%rsp
1400492aa:	41 5f                	pop    %r15
1400492ac:	41 5e                	pop    %r14
1400492ae:	5f                   	pop    %rdi
1400492af:	5e                   	pop    %rsi
1400492b0:	5d                   	pop    %rbp
1400492b1:	c3                   	ret
1400492b2:	cc                   	int3
1400492b3:	cc                   	int3
1400492b4:	cc                   	int3
1400492b5:	cc                   	int3
1400492b6:	cc                   	int3
1400492b7:	cc                   	int3
1400492b8:	cc                   	int3
1400492b9:	cc                   	int3
1400492ba:	cc                   	int3
1400492bb:	cc                   	int3
1400492bc:	cc                   	int3
1400492bd:	cc                   	int3
1400492be:	cc                   	int3
1400492bf:	cc                   	int3
1400492c0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1400492c5:	56                   	push   %rsi
1400492c6:	48 83 ec 20          	sub    $0x20,%rsp
1400492ca:	48 8b 19             	mov    (%rcx),%rbx
1400492cd:	48 8b f1             	mov    %rcx,%rsi
1400492d0:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
1400492d4:	80 7b 19 00          	cmpb   $0x0,0x19(%rbx)
1400492d8:	75 3c                	jne    0x140049316
1400492da:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
1400492df:	90                   	nop
1400492e0:	4c 8b 43 10          	mov    0x10(%rbx),%r8
1400492e4:	48 8b d6             	mov    %rsi,%rdx
1400492e7:	48 8b ce             	mov    %rsi,%rcx
1400492ea:	e8 51 0c 00 00       	call   0x140049f40
1400492ef:	48 8b fb             	mov    %rbx,%rdi
1400492f2:	48 8b 1b             	mov    (%rbx),%rbx
1400492f5:	48 8d 4f 20          	lea    0x20(%rdi),%rcx
1400492f9:	e8 a2 0c 00 00       	call   0x140049fa0
1400492fe:	ba 50 00 00 00       	mov    $0x50,%edx
140049303:	48 8b cf             	mov    %rdi,%rcx
140049306:	e8 89 09 01 00       	call   0x140059c94
14004930b:	80 7b 19 00          	cmpb   $0x0,0x19(%rbx)
14004930f:	74 cf                	je     0x1400492e0
140049311:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
140049316:	48 8b 0e             	mov    (%rsi),%rcx
140049319:	ba 50 00 00 00       	mov    $0x50,%edx
14004931e:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140049323:	48 83 c4 20          	add    $0x20,%rsp
140049327:	5e                   	pop    %rsi
140049328:	e9 67 09 01 00       	jmp    0x140059c94
14004932d:	cc                   	int3
14004932e:	cc                   	int3
14004932f:	cc                   	int3
140049330:	e9 8b 00 00 00       	jmp    0x1400493c0
140049335:	cc                   	int3
140049336:	cc                   	int3
140049337:	cc                   	int3
140049338:	cc                   	int3
140049339:	cc                   	int3
14004933a:	cc                   	int3
14004933b:	cc                   	int3
14004933c:	cc                   	int3
14004933d:	cc                   	int3
14004933e:	cc                   	int3
14004933f:	cc                   	int3
140049340:	40 57                	rex push %rdi
140049342:	48 83 ec 20          	sub    $0x20,%rsp
140049346:	48 8b f9             	mov    %rcx,%rdi
140049349:	48 3b ca             	cmp    %rdx,%rcx
14004934c:	74 67                	je     0x1400493b5
14004934e:	48 83 7a 18 07       	cmpq   $0x7,0x18(%rdx)
140049353:	48 8b 42 10          	mov    0x10(%rdx),%rax
140049357:	76 03                	jbe    0x14004935c
140049359:	48 8b 12             	mov    (%rdx),%rdx
14004935c:	48 8b 49 18          	mov    0x18(%rcx),%rcx
140049360:	48 3b c1             	cmp    %rcx,%rax
140049363:	77 42                	ja     0x1400493a7
140049365:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14004936a:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
14004936f:	48 8b f7             	mov    %rdi,%rsi
140049372:	48 83 f9 07          	cmp    $0x7,%rcx
140049376:	76 03                	jbe    0x14004937b
140049378:	48 8b 37             	mov    (%rdi),%rsi
14004937b:	48 8d 1c 00          	lea    (%rax,%rax,1),%rbx
14004937f:	48 89 47 10          	mov    %rax,0x10(%rdi)
140049383:	4c 8b c3             	mov    %rbx,%r8
140049386:	48 8b ce             	mov    %rsi,%rcx
140049389:	e8 43 15 01 00       	call   0x14005a8d1
14004938e:	33 c0                	xor    %eax,%eax
140049390:	66 89 04 33          	mov    %ax,(%rbx,%rsi,1)
140049394:	48 8b c7             	mov    %rdi,%rax
140049397:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14004939c:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400493a1:	48 83 c4 20          	add    $0x20,%rsp
1400493a5:	5f                   	pop    %rdi
1400493a6:	c3                   	ret
1400493a7:	4c 8b ca             	mov    %rdx,%r9
1400493aa:	48 8b cf             	mov    %rdi,%rcx
1400493ad:	48 8b d0             	mov    %rax,%rdx
1400493b0:	e8 5b 01 00 00       	call   0x140049510
1400493b5:	48 8b c7             	mov    %rdi,%rax
1400493b8:	48 83 c4 20          	add    $0x20,%rsp
1400493bc:	5f                   	pop    %rdi
1400493bd:	c3                   	ret
1400493be:	cc                   	int3
1400493bf:	cc                   	int3
1400493c0:	40 53                	rex push %rbx
1400493c2:	48 83 ec 20          	sub    $0x20,%rsp
1400493c6:	48 8b d9             	mov    %rcx,%rbx
1400493c9:	48 8b 09             	mov    (%rcx),%rcx
1400493cc:	48 85 c9             	test   %rcx,%rcx
1400493cf:	74 4a                	je     0x14004941b
1400493d1:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1400493d5:	e8 a6 00 00 00       	call   0x140049480
1400493da:	48 8b 0b             	mov    (%rbx),%rcx
1400493dd:	48 8b 53 10          	mov    0x10(%rbx),%rdx
1400493e1:	48 2b d1             	sub    %rcx,%rdx
1400493e4:	48 83 e2 e0          	and    $0xffffffffffffffe0,%rdx
1400493e8:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1400493ef:	72 18                	jb     0x140049409
1400493f1:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1400493f5:	48 83 c2 27          	add    $0x27,%rdx
1400493f9:	49 2b c8             	sub    %r8,%rcx
1400493fc:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140049400:	48 83 f8 1f          	cmp    $0x1f,%rax
140049404:	77 1b                	ja     0x140049421
140049406:	49 8b c8             	mov    %r8,%rcx
140049409:	e8 86 08 01 00       	call   0x140059c94
14004940e:	33 c0                	xor    %eax,%eax
140049410:	48 89 03             	mov    %rax,(%rbx)
140049413:	48 89 43 08          	mov    %rax,0x8(%rbx)
140049417:	48 89 43 10          	mov    %rax,0x10(%rbx)
14004941b:	48 83 c4 20          	add    $0x20,%rsp
14004941f:	5b                   	pop    %rbx
140049420:	c3                   	ret
140049421:	ff 15 79 61 01 00    	call   *0x16179(%rip)        # 0x14005f5a0
140049427:	cc                   	int3
140049428:	cc                   	int3
140049429:	cc                   	int3
14004942a:	cc                   	int3
14004942b:	cc                   	int3
14004942c:	cc                   	int3
14004942d:	cc                   	int3
14004942e:	cc                   	int3
14004942f:	cc                   	int3
140049430:	48 83 ec 28          	sub    $0x28,%rsp
140049434:	49 c1 e0 05          	shl    $0x5,%r8
140049438:	48 8b c2             	mov    %rdx,%rax
14004943b:	49 81 f8 00 10 00 00 	cmp    $0x1000,%r8
140049442:	72 18                	jb     0x14004945c
140049444:	48 8b 4a f8          	mov    -0x8(%rdx),%rcx
140049448:	49 83 c0 27          	add    $0x27,%r8
14004944c:	48 2b c1             	sub    %rcx,%rax
14004944f:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140049453:	48 83 f8 1f          	cmp    $0x1f,%rax
140049457:	77 12                	ja     0x14004946b
140049459:	48 8b c1             	mov    %rcx,%rax
14004945c:	49 8b d0             	mov    %r8,%rdx
14004945f:	48 8b c8             	mov    %rax,%rcx
140049462:	48 83 c4 28          	add    $0x28,%rsp
140049466:	e9 29 08 01 00       	jmp    0x140059c94
14004946b:	ff 15 2f 61 01 00    	call   *0x1612f(%rip)        # 0x14005f5a0
140049471:	cc                   	int3
140049472:	cc                   	int3
140049473:	cc                   	int3
140049474:	cc                   	int3
140049475:	cc                   	int3
140049476:	cc                   	int3
140049477:	cc                   	int3
140049478:	cc                   	int3
140049479:	cc                   	int3
14004947a:	cc                   	int3
14004947b:	cc                   	int3
14004947c:	cc                   	int3
14004947d:	cc                   	int3
14004947e:	cc                   	int3
14004947f:	cc                   	int3
140049480:	48 3b ca             	cmp    %rdx,%rcx
140049483:	74 7d                	je     0x140049502
140049485:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
14004948a:	57                   	push   %rdi
14004948b:	48 83 ec 20          	sub    $0x20,%rsp
14004948f:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
140049494:	48 8b fa             	mov    %rdx,%rdi
140049497:	33 f6                	xor    %esi,%esi
140049499:	48 8b d9             	mov    %rcx,%rbx
14004949c:	0f 1f 40 00          	nopl   0x0(%rax)
1400494a0:	48 8b 53 18          	mov    0x18(%rbx),%rdx
1400494a4:	48 83 fa 07          	cmp    $0x7,%rdx
1400494a8:	76 31                	jbe    0x1400494db
1400494aa:	48 8b 0b             	mov    (%rbx),%rcx
1400494ad:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
1400494b4:	00
1400494b5:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1400494bc:	72 18                	jb     0x1400494d6
1400494be:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1400494c2:	48 83 c2 27          	add    $0x27,%rdx
1400494c6:	49 2b c8             	sub    %r8,%rcx
1400494c9:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1400494cd:	48 83 f8 1f          	cmp    $0x1f,%rax
1400494d1:	77 30                	ja     0x140049503
1400494d3:	49 8b c8             	mov    %r8,%rcx
1400494d6:	e8 b9 07 01 00       	call   0x140059c94
1400494db:	48 89 73 10          	mov    %rsi,0x10(%rbx)
1400494df:	48 c7 43 18 07 00 00 	movq   $0x7,0x18(%rbx)
1400494e6:	00
1400494e7:	66 89 33             	mov    %si,(%rbx)
1400494ea:	48 83 c3 20          	add    $0x20,%rbx
1400494ee:	48 3b df             	cmp    %rdi,%rbx
1400494f1:	75 ad                	jne    0x1400494a0
1400494f3:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1400494f8:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1400494fd:	48 83 c4 20          	add    $0x20,%rsp
140049501:	5f                   	pop    %rdi
140049502:	c3                   	ret
140049503:	ff 15 97 60 01 00    	call   *0x16097(%rip)        # 0x14005f5a0
140049509:	cc                   	int3
14004950a:	cc                   	int3
14004950b:	cc                   	int3
14004950c:	cc                   	int3
14004950d:	cc                   	int3
14004950e:	cc                   	int3
14004950f:	cc                   	int3
140049510:	40 53                	rex push %rbx
140049512:	56                   	push   %rsi
140049513:	41 56                	push   %r14
140049515:	41 57                	push   %r15
140049517:	48 83 ec 38          	sub    $0x38,%rsp
14004951b:	48 bb fe ff ff ff ff 	movabs $0x7ffffffffffffffe,%rbx
140049522:	ff ff 7f
140049525:	4d 8b f9             	mov    %r9,%r15
140049528:	4c 8b f2             	mov    %rdx,%r14
14004952b:	48 8b f1             	mov    %rcx,%rsi
14004952e:	48 3b d3             	cmp    %rbx,%rdx
140049531:	0f 87 3c 01 00 00    	ja     0x140049673
140049537:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
14004953c:	48 83 ca 07          	or     $0x7,%rdx
140049540:	48 8b 69 18          	mov    0x18(%rcx),%rbp
140049544:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140049549:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
14004954e:	45 33 e4             	xor    %r12d,%r12d
140049551:	48 3b d3             	cmp    %rbx,%rdx
140049554:	76 10                	jbe    0x140049566
140049556:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
14004955d:	ff ff 7f
140049560:	48 8d 0c 00          	lea    (%rax,%rax,1),%rcx
140049564:	eb 52                	jmp    0x1400495b8
140049566:	48 8b cd             	mov    %rbp,%rcx
140049569:	48 8b c3             	mov    %rbx,%rax
14004956c:	48 d1 e9             	shr    $1,%rcx