140309174:	48 85 ff             	test   %rdi,%rdi
140309177:	74 23                	je     0x14030919c
140309179:	8b 47 10             	mov    0x10(%rdi),%eax
14030917c:	ff c8                	dec    %eax
14030917e:	89 47 10             	mov    %eax,0x10(%rdi)
140309181:	85 c0                	test   %eax,%eax
140309183:	7f 17                	jg     0x14030919c
140309185:	78 2c                	js     0x1403091b3
140309187:	48 8b 07             	mov    (%rdi),%rax
14030918a:	ba 01 00 00 00       	mov    $0x1,%edx
14030918f:	48 8b cf             	mov    %rdi,%rcx
140309192:	48 8b 00             	mov    (%rax),%rax
140309195:	ff 15 85 a8 c7 00    	call   *0xc7a885(%rip)        # 0x140f83a20
14030919b:	90                   	nop
14030919c:	48 8b 9c 24 80 01 00 	mov    0x180(%rsp),%rbx
1403091a3:	00
1403091a4:	48 81 c4 40 01 00 00 	add    $0x140,%rsp
1403091ab:	41 5f                	pop    %r15
1403091ad:	41 5e                	pop    %r14
1403091af:	5f                   	pop    %rdi
1403091b0:	5e                   	pop    %rsi
1403091b1:	5d                   	pop    %rbp
1403091b2:	c3                   	ret
1403091b3:	b9 02 00 00 00       	mov    $0x2,%ecx
1403091b8:	e8 43 15 48 00       	call   0x14078a700
1403091bd:	90                   	nop
1403091be:	b9 02 00 00 00       	mov    $0x2,%ecx
1403091c3:	e8 38 15 48 00       	call   0x14078a700
1403091c8:	90                   	nop
1403091c9:	33 c9                	xor    %ecx,%ecx
1403091cb:	e8 30 15 48 00       	call   0x14078a700
1403091d0:	cc                   	int3
1403091d1:	b9 01 00 00 00       	mov    $0x1,%ecx
1403091d6:	e8 25 15 48 00       	call   0x14078a700
1403091db:	90                   	nop
1403091dc:	33 c9                	xor    %ecx,%ecx
1403091de:	e8 1d 15 48 00       	call   0x14078a700
1403091e3:	cc                   	int3
1403091e4:	b9 01 00 00 00       	mov    $0x1,%ecx
1403091e9:	e8 12 15 48 00       	call   0x14078a700
1403091ee:	90                   	nop
1403091ef:	b9 02 00 00 00       	mov    $0x2,%ecx
1403091f4:	e8 07 15 48 00       	call   0x14078a700
1403091f9:	90                   	nop
1403091fa:	b9 02 00 00 00       	mov    $0x2,%ecx
1403091ff:	e8 fc 14 48 00       	call   0x14078a700
140309204:	90                   	nop
140309205:	e8 9a 0f b2 00       	call   0x140e2a1a4
14030920a:	90                   	nop
14030920b:	33 c9                	xor    %ecx,%ecx
14030920d:	e8 ee 14 48 00       	call   0x14078a700
140309212:	cc                   	int3
140309213:	b9 01 00 00 00       	mov    $0x1,%ecx
140309218:	e8 e3 14 48 00       	call   0x14078a700
14030921d:	cc                   	int3
14030921e:	cc                   	int3
14030921f:	cc                   	int3
140309220:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140309225:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14030922a:	55                   	push   %rbp
14030922b:	57                   	push   %rdi
14030922c:	41 54                	push   %r12
14030922e:	41 56                	push   %r14
140309230:	41 57                	push   %r15
140309232:	48 8b ec             	mov    %rsp,%rbp
140309235:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
14030923c:	4c 8b f2             	mov    %rdx,%r14
14030923f:	4c 8b f9             	mov    %rcx,%r15
140309242:	45 33 e4             	xor    %r12d,%r12d
140309245:	44 89 65 48          	mov    %r12d,0x48(%rbp)
140309249:	4c 8b 11             	mov    (%rcx),%r10
14030924c:	4c 8b 0d 15 2c 11 01 	mov    0x1112c15(%rip),%r9        # 0x14141be68
140309253:	49 8b 42 40          	mov    0x40(%r10),%rax
140309257:	4d 63 59 74          	movslq 0x74(%r9),%r11
14030925b:	49 8b cb             	mov    %r11,%rcx
14030925e:	48 c1 e1 04          	shl    $0x4,%rcx
140309262:	48 03 08             	add    (%rax),%rcx
140309265:	41 8b fc             	mov    %r12d,%edi
140309268:	83 cf 20             	or     $0x20,%edi
14030926b:	44 38 61 08          	cmp    %r12b,0x8(%rcx)
14030926f:	75 09                	jne    0x14030927a
140309271:	4c 89 65 c8          	mov    %r12,-0x38(%rbp)
140309275:	41 8b c4             	mov    %r12d,%eax
140309278:	eb 26                	jmp    0x1403092a0
14030927a:	49 8b 42 38          	mov    0x38(%r10),%rax
14030927e:	48 8b 90 80 00 00 00 	mov    0x80(%rax),%rdx
140309285:	48 8b 02             	mov    (%rdx),%rax
140309288:	4e 8b 04 d8          	mov    (%rax,%r11,8),%r8
14030928c:	48 8d 55 c8          	lea    -0x38(%rbp),%rdx
140309290:	e8 3b ee 40 00       	call   0x1407180d0
140309295:	48 8b 45 c8          	mov    -0x38(%rbp),%rax
140309299:	4c 8b 0d c8 2b 11 01 	mov    0x1112bc8(%rip),%r9        # 0x14141be68
1403092a0:	83 cf 01             	or     $0x1,%edi
1403092a3:	89 7d 48             	mov    %edi,0x48(%rbp)
1403092a6:	48 85 c0             	test   %rax,%rax
1403092a9:	0f 84 da 00 00 00    	je     0x140309389
1403092af:	45 8b 41 74          	mov    0x74(%r9),%r8d
1403092b3:	49 8b d7             	mov    %r15,%rdx
1403092b6:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
1403092ba:	e8 e1 98 06 00       	call   0x140372ba0
1403092bf:	48 8b 18             	mov    (%rax),%rbx
1403092c2:	4c 89 20             	mov    %r12,(%rax)
1403092c5:	48 89 5d d8          	mov    %rbx,-0x28(%rbp)
1403092c9:	83 cf 02             	or     $0x2,%edi
1403092cc:	89 7d 48             	mov    %edi,0x48(%rbp)
1403092cf:	49 8b 0e             	mov    (%r14),%rcx
1403092d2:	48 85 c9             	test   %rcx,%rcx
1403092d5:	74 1c                	je     0x1403092f3
1403092d7:	8b 41 10             	mov    0x10(%rcx),%eax
1403092da:	ff c0                	inc    %eax
1403092dc:	89 41 10             	mov    %eax,0x10(%rcx)
1403092df:	83 f8 01             	cmp    $0x1,%eax
1403092e2:	0f 8e 7e 02 00 00    	jle    0x140309566
1403092e8:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1403092ed:	0f 84 7b 02 00 00    	je     0x14030956e
1403092f3:	48 89 4d c0          	mov    %rcx,-0x40(%rbp)
1403092f7:	83 cf 04             	or     $0x4,%edi
1403092fa:	83 cf 08             	or     $0x8,%edi
1403092fd:	89 7d 48             	mov    %edi,0x48(%rbp)
140309300:	48 8d 45 c0          	lea    -0x40(%rbp),%rax
140309304:	48 89 45 b0          	mov    %rax,-0x50(%rbp)
140309308:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
14030930c:	48 89 45 b8          	mov    %rax,-0x48(%rbp)
140309310:	0f 28 45 b0          	movaps -0x50(%rbp),%xmm0
140309314:	66 0f 7f 45 b0       	movdqa %xmm0,-0x50(%rbp)
140309319:	4c 8d 45 30          	lea    0x30(%rbp),%r8
14030931d:	48 8d 55 b0          	lea    -0x50(%rbp),%rdx
140309321:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
140309325:	e8 26 6b e9 ff       	call   0x14019fe50
14030932a:	48 8b d0             	mov    %rax,%rdx
14030932d:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140309331:	e8 ba 35 3a 00       	call   0x1406ac8f0
140309336:	48 8b 08             	mov    (%rax),%rcx
140309339:	4c 89 20             	mov    %r12,(%rax)
14030933c:	48 89 4d a0          	mov    %rcx,-0x60(%rbp)
140309340:	48 8b 08             	mov    (%rax),%rcx
140309343:	48 85 c9             	test   %rcx,%rcx
140309346:	74 24                	je     0x14030936c
140309348:	8b 41 10             	mov    0x10(%rcx),%eax
14030934b:	ff c8                	dec    %eax
14030934d:	89 41 10             	mov    %eax,0x10(%rcx)
140309350:	85 c0                	test   %eax,%eax
140309352:	7f 18                	jg     0x14030936c
140309354:	0f 88 1f 02 00 00    	js     0x140309579
14030935a:	48 8b 01             	mov    (%rcx),%rax
14030935d:	ba 01 00 00 00       	mov    $0x1,%edx
140309362:	48 8b 00             	mov    (%rax),%rax
140309365:	ff 15 b5 a6 c7 00    	call   *0xc7a6b5(%rip)        # 0x140f83a20
14030936b:	90                   	nop
14030936c:	83 cf 10             	or     $0x10,%edi
14030936f:	89 7d 48             	mov    %edi,0x48(%rbp)
140309372:	48 8d 55 a0          	lea    -0x60(%rbp),%rdx
140309376:	48 8b cb             	mov    %rbx,%rcx
140309379:	e8 02 33 43 00       	call   0x14073c680
14030937e:	48 83 38 00          	cmpq   $0x0,(%rax)
140309382:	74 09                	je     0x14030938d
140309384:	40 b6 01             	mov    $0x1,%sil
140309387:	eb 07                	jmp    0x140309390
140309389:	48 8b 5d d8          	mov    -0x28(%rbp),%rbx
14030938d:	40 32 f6             	xor    %sil,%sil
140309390:	40 f6 c7 10          	test   $0x10,%dil
140309394:	74 33                	je     0x1403093c9
140309396:	83 e7 ef             	and    $0xffffffef,%edi
140309399:	89 7d 48             	mov    %edi,0x48(%rbp)
14030939c:	48 8b 4d a0          	mov    -0x60(%rbp),%rcx
1403093a0:	48 85 c9             	test   %rcx,%rcx
1403093a3:	74 24                	je     0x1403093c9
1403093a5:	8b 41 10             	mov    0x10(%rcx),%eax
1403093a8:	ff c8                	dec    %eax
1403093aa:	89 41 10             	mov    %eax,0x10(%rcx)
1403093ad:	85 c0                	test   %eax,%eax
1403093af:	7f 18                	jg     0x1403093c9
1403093b1:	0f 88 cd 01 00 00    	js     0x140309584
1403093b7:	48 8b 01             	mov    (%rcx),%rax
1403093ba:	ba 01 00 00 00       	mov    $0x1,%edx
1403093bf:	48 8b 00             	mov    (%rax),%rax
1403093c2:	ff 15 58 a6 c7 00    	call   *0xc7a658(%rip)        # 0x140f83a20
1403093c8:	90                   	nop
1403093c9:	40 f6 c7 08          	test   $0x8,%dil
1403093cd:	74 22                	je     0x1403093f1
1403093cf:	83 e7 f7             	and    $0xfffffff7,%edi
1403093d2:	89 7d 48             	mov    %edi,0x48(%rbp)
1403093d5:	4c 8d 0d 14 51 e9 ff 	lea    -0x16aeec(%rip),%r9        # 0x14019e4f0
1403093dc:	ba 08 00 00 00       	mov    $0x8,%edx
1403093e1:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1403093e7:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
1403093eb:	e8 5c 21 b1 00       	call   0x140e1b54c
1403093f0:	90                   	nop
1403093f1:	40 f6 c7 02          	test   $0x2,%dil
1403093f5:	74 32                	je     0x140309429
1403093f7:	83 e7 fd             	and    $0xfffffffd,%edi
1403093fa:	89 7d 48             	mov    %edi,0x48(%rbp)
1403093fd:	48 85 db             	test   %rbx,%rbx
140309400:	74 27                	je     0x140309429
140309402:	8b 43 10             	mov    0x10(%rbx),%eax
140309405:	ff c8                	dec    %eax
140309407:	89 43 10             	mov    %eax,0x10(%rbx)
14030940a:	85 c0                	test   %eax,%eax
14030940c:	7f 1b                	jg     0x140309429
14030940e:	0f 88 7b 01 00 00    	js     0x14030958f
140309414:	48 8b 03             	mov    (%rbx),%rax
140309417:	ba 01 00 00 00       	mov    $0x1,%edx
14030941c:	48 8b cb             	mov    %rbx,%rcx
14030941f:	48 8b 00             	mov    (%rax),%rax
140309422:	ff 15 f8 a5 c7 00    	call   *0xc7a5f8(%rip)        # 0x140f83a20
140309428:	90                   	nop
140309429:	40 f6 c7 01          	test   $0x1,%dil
14030942d:	74 2d                	je     0x14030945c
14030942f:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
140309433:	48 85 c9             	test   %rcx,%rcx
140309436:	74 24                	je     0x14030945c
140309438:	8b 41 10             	mov    0x10(%rcx),%eax
14030943b:	ff c8                	dec    %eax
14030943d:	89 41 10             	mov    %eax,0x10(%rcx)
140309440:	85 c0                	test   %eax,%eax
140309442:	7f 18                	jg     0x14030945c
140309444:	0f 88 50 01 00 00    	js     0x14030959a
14030944a:	48 8b 01             	mov    (%rcx),%rax
14030944d:	ba 01 00 00 00       	mov    $0x1,%edx
140309452:	48 8b 00             	mov    (%rax),%rax
140309455:	ff 15 c5 a5 c7 00    	call   *0xc7a5c5(%rip)        # 0x140f83a20
14030945b:	90                   	nop
14030945c:	40 84 f6             	test   %sil,%sil
14030945f:	0f 84 da 00 00 00    	je     0x14030953f
140309465:	48 8d 45 d8          	lea    -0x28(%rbp),%rax
140309469:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
14030946d:	49 8b 0e             	mov    (%r14),%rcx
140309470:	48 85 c9             	test   %rcx,%rcx
140309473:	74 1c                	je     0x140309491
140309475:	8b 41 10             	mov    0x10(%rcx),%eax
140309478:	ff c0                	inc    %eax
14030947a:	89 41 10             	mov    %eax,0x10(%rcx)
14030947d:	83 f8 01             	cmp    $0x1,%eax
140309480:	0f 8e 1f 01 00 00    	jle    0x1403095a5
140309486:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
14030948b:	0f 84 1c 01 00 00    	je     0x1403095ad
140309491:	48 89 4d 48          	mov    %rcx,0x48(%rbp)
140309495:	48 8d 45 48          	lea    0x48(%rbp),%rax
140309499:	48 89 45 b0          	mov    %rax,-0x50(%rbp)
14030949d:	48 8d 45 50          	lea    0x50(%rbp),%rax
1403094a1:	48 89 45 b8          	mov    %rax,-0x48(%rbp)
1403094a5:	0f 28 45 b0          	movaps -0x50(%rbp),%xmm0
1403094a9:	66 0f 7f 45 b0       	movdqa %xmm0,-0x50(%rbp)
1403094ae:	4c 8d 45 30          	lea    0x30(%rbp),%r8
1403094b2:	48 8d 55 b0          	lea    -0x50(%rbp),%rdx
1403094b6:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
1403094ba:	e8 91 69 e9 ff       	call   0x14019fe50
1403094bf:	48 8b d0             	mov    %rax,%rdx
1403094c2:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
1403094c6:	e8 25 34 3a 00       	call   0x1406ac8f0
1403094cb:	48 8b d8             	mov    %rax,%rbx
1403094ce:	4c 8b 05 93 29 11 01 	mov    0x1112993(%rip),%r8        # 0x14141be68
1403094d5:	45 8b 40 74          	mov    0x74(%r8),%r8d
1403094d9:	49 8b d7             	mov    %r15,%rdx
1403094dc:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
1403094e0:	e8 bb 96 06 00       	call   0x140372ba0
1403094e5:	48 8b 08             	mov    (%rax),%rcx
1403094e8:	4c 89 20             	mov    %r12,(%rax)
1403094eb:	48 89 4d a0          	mov    %rcx,-0x60(%rbp)
1403094ef:	48 8b 08             	mov    (%rax),%rcx
1403094f2:	48 85 c9             	test   %rcx,%rcx
1403094f5:	74 20                	je     0x140309517
1403094f7:	8b 41 10             	mov    0x10(%rcx),%eax
1403094fa:	ff c8                	dec    %eax
1403094fc:	89 41 10             	mov    %eax,0x10(%rcx)
1403094ff:	85 c0                	test   %eax,%eax
140309501:	7f 14                	jg     0x140309517
140309503:	78 56                	js     0x14030955b
140309505:	48 8b 01             	mov    (%rcx),%rax
140309508:	ba 01 00 00 00       	mov    $0x1,%edx
14030950d:	48 8b 00             	mov    (%rax),%rax
140309510:	ff 15 0a a5 c7 00    	call   *0xc7a50a(%rip)        # 0x140f83a20
140309516:	90                   	nop
140309517:	48 8b d3             	mov    %rbx,%rdx
14030951a:	48 8d 4d a0          	lea    -0x60(%rbp),%rcx
14030951e:	e8 5d 38 3a 00       	call   0x1406acd80
140309523:	90                   	nop
140309524:	4c 8d 0d c5 4f e9 ff 	lea    -0x16b03b(%rip),%r9        # 0x14019e4f0
14030952b:	ba 08 00 00 00       	mov    $0x8,%edx
140309530:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140309536:	48 8d 4d 48          	lea    0x48(%rbp),%rcx
14030953a:	e8 0d 20 b1 00       	call   0x140e1b54c
14030953f:	4c 8d 9c 24 80 00 00 	lea    0x80(%rsp),%r11
140309546:	00
140309547:	49 8b 5b 38          	mov    0x38(%r11),%rbx
14030954b:	49 8b 73 40          	mov    0x40(%r11),%rsi
14030954f:	49 8b e3             	mov    %r11,%rsp
140309552:	41 5f                	pop    %r15
140309554:	41 5e                	pop    %r14
140309556:	41 5c                	pop    %r12
140309558:	5f                   	pop    %rdi
140309559:	5d                   	pop    %rbp
14030955a:	c3                   	ret
14030955b:	b9 02 00 00 00       	mov    $0x2,%ecx
140309560:	e8 9b 11 48 00       	call   0x14078a700
140309565:	90                   	nop
140309566:	33 c9                	xor    %ecx,%ecx
140309568:	e8 93 11 48 00       	call   0x14078a700
14030956d:	cc                   	int3
14030956e:	b9 01 00 00 00       	mov    $0x1,%ecx
140309573:	e8 88 11 48 00       	call   0x14078a700
140309578:	90                   	nop
140309579:	b9 02 00 00 00       	mov    $0x2,%ecx
14030957e:	e8 7d 11 48 00       	call   0x14078a700
140309583:	90                   	nop
140309584:	b9 02 00 00 00       	mov    $0x2,%ecx
140309589:	e8 72 11 48 00       	call   0x14078a700
14030958e:	90                   	nop
14030958f:	b9 02 00 00 00       	mov    $0x2,%ecx
140309594:	e8 67 11 48 00       	call   0x14078a700
140309599:	90                   	nop
14030959a:	b9 02 00 00 00       	mov    $0x2,%ecx
14030959f:	e8 5c 11 48 00       	call   0x14078a700
1403095a4:	90                   	nop
1403095a5:	33 c9                	xor    %ecx,%ecx
1403095a7:	e8 54 11 48 00       	call   0x14078a700
1403095ac:	cc                   	int3
1403095ad:	b9 01 00 00 00       	mov    $0x1,%ecx
1403095b2:	e8 49 11 48 00       	call   0x14078a700
1403095b7:	cc                   	int3
1403095b8:	cc                   	int3
1403095b9:	cc                   	int3
1403095ba:	cc                   	int3
1403095bb:	cc                   	int3
1403095bc:	cc                   	int3
1403095bd:	cc                   	int3
1403095be:	cc                   	int3
1403095bf:	cc                   	int3
1403095c0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1403095c5:	55                   	push   %rbp
1403095c6:	56                   	push   %rsi
1403095c7:	57                   	push   %rdi
1403095c8:	48 83 ec 50          	sub    $0x50,%rsp
1403095cc:	49 8b d8             	mov    %r8,%rbx
1403095cf:	48 8b f2             	mov    %rdx,%rsi
1403095d2:	33 ed                	xor    %ebp,%ebp
1403095d4:	8d 41 9d             	lea    -0x63(%rcx),%eax
1403095d7:	83 f8 01             	cmp    $0x1,%eax
1403095da:	0f 87 26 01 00 00    	ja     0x140309706
1403095e0:	45 33 c0             	xor    %r8d,%r8d
1403095e3:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1403095e8:	e8 b3 95 06 00       	call   0x140372ba0
1403095ed:	48 8b 08             	mov    (%rax),%rcx
1403095f0:	48 89 28             	mov    %rbp,(%rax)
1403095f3:	48 89 8c 24 88 00 00 	mov    %rcx,0x88(%rsp)
1403095fa:	00
1403095fb:	48 8b d3             	mov    %rbx,%rdx
1403095fe:	48 8d 8c 24 88 00 00 	lea    0x88(%rsp),%rcx
140309605:	00
140309606:	e8 d5 f7 ff ff       	call   0x140308de0