140768095:	57                   	push   %rdi
140768096:	48 83 ec 20          	sub    $0x20,%rsp
14076809a:	48 8b f9             	mov    %rcx,%rdi
14076809d:	48 8b da             	mov    %rdx,%rbx
1407680a0:	48 8b ca             	mov    %rdx,%rcx
1407680a3:	48 c1 e9 20          	shr    $0x20,%rcx
1407680a7:	ff 15 c3 b7 81 00    	call   *0x81b7c3(%rip)        # 0x140f83870
1407680ad:	8b cb                	mov    %ebx,%ecx
1407680af:	89 44 24 38          	mov    %eax,0x38(%rsp)
1407680b3:	ff 15 b7 b7 81 00    	call   *0x81b7b7(%rip)        # 0x140f83870
1407680b9:	41 b8 08 00 00 00    	mov    $0x8,%r8d
1407680bf:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
1407680c4:	48 8b cf             	mov    %rdi,%rcx
1407680c7:	89 44 24 3c          	mov    %eax,0x3c(%rsp)
1407680cb:	e8 30 00 00 00       	call   0x140768100
1407680d0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1407680d5:	48 83 c4 20          	add    $0x20,%rsp
1407680d9:	5f                   	pop    %rdi
1407680da:	c3                   	ret
1407680db:	cc                   	int3
1407680dc:	cc                   	int3
1407680dd:	cc                   	int3
1407680de:	cc                   	int3
1407680df:	cc                   	int3
1407680e0:	48 83 ec 28          	sub    $0x28,%rsp
1407680e4:	88 54 24 38          	mov    %dl,0x38(%rsp)
1407680e8:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1407680ee:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
1407680f3:	e8 08 00 00 00       	call   0x140768100
1407680f8:	48 83 c4 28          	add    $0x28,%rsp
1407680fc:	c3                   	ret
1407680fd:	cc                   	int3
1407680fe:	cc                   	int3
1407680ff:	cc                   	int3
140768100:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140768105:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14076810a:	57                   	push   %rdi
14076810b:	41 56                	push   %r14
14076810d:	41 57                	push   %r15
14076810f:	48 83 ec 20          	sub    $0x20,%rsp
140768113:	44 8b 49 14          	mov    0x14(%rcx),%r9d
140768117:	48 8b d9             	mov    %rcx,%rbx
14076811a:	8b 49 10             	mov    0x10(%rcx),%ecx
14076811d:	4d 03 c8             	add    %r8,%r9
140768120:	49 8b e8             	mov    %r8,%rbp
140768123:	4c 8b fa             	mov    %rdx,%r15
140768126:	4c 3b c9             	cmp    %rcx,%r9
140768129:	76 61                	jbe    0x14076818c
14076812b:	f3 0f 10 0d e5 ea 8b 	movss  0x8beae5(%rip),%xmm1        # 0x141026c18
140768132:	00
140768133:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
140768138:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14076813f:	00
140768140:	8b c1                	mov    %ecx,%eax
140768142:	0f 57 c0             	xorps  %xmm0,%xmm0
140768145:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
14076814a:	f3 0f 59 c1          	mulss  %xmm1,%xmm0
14076814e:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
140768153:	8b f8                	mov    %eax,%edi
140768155:	8b c8                	mov    %eax,%ecx
140768157:	4c 3b cf             	cmp    %rdi,%r9
14076815a:	77 e4                	ja     0x140768140
14076815c:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140768160:	8b d7                	mov    %edi,%edx
140768162:	89 43 10             	mov    %eax,0x10(%rbx)
140768165:	e8 3e 90 6c 00       	call   0x140e311a8
14076816a:	48 8b f0             	mov    %rax,%rsi
14076816d:	48 85 ff             	test   %rdi,%rdi
140768170:	74 11                	je     0x140768183
140768172:	48 85 c0             	test   %rax,%rax
140768175:	75 0c                	jne    0x140768183
140768177:	48 8d 0d ea c9 89 00 	lea    0x89c9ea(%rip),%rcx        # 0x141004b68
14076817e:	e8 9d 33 10 00       	call   0x14086b520
140768183:	48 89 73 08          	mov    %rsi,0x8(%rbx)
140768187:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14076818c:	8b 4b 14             	mov    0x14(%rbx),%ecx
14076818f:	48 8d 7b 14          	lea    0x14(%rbx),%rdi
140768193:	48 03 4b 08          	add    0x8(%rbx),%rcx
140768197:	4c 8b c5             	mov    %rbp,%r8
14076819a:	49 8b d7             	mov    %r15,%rdx
14076819d:	e8 6e 6e 77 00       	call   0x140edf010
1407681a2:	01 2f                	add    %ebp,(%rdi)
1407681a4:	b0 01                	mov    $0x1,%al
1407681a6:	01 6b 28             	add    %ebp,0x28(%rbx)
1407681a9:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1407681ae:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1407681b3:	48 83 c4 20          	add    $0x20,%rsp
1407681b7:	41 5f                	pop    %r15
1407681b9:	41 5e                	pop    %r14
1407681bb:	5f                   	pop    %rdi
1407681bc:	c3                   	ret
1407681bd:	cc                   	int3
1407681be:	cc                   	int3
1407681bf:	cc                   	int3
1407681c0:	40 53                	rex push %rbx
1407681c2:	48 83 ec 20          	sub    $0x20,%rsp
1407681c6:	48 8b d9             	mov    %rcx,%rbx
1407681c9:	48 83 c1 10          	add    $0x10,%rcx
1407681cd:	e8 9e 23 e4 ff       	call   0x1405aa570
1407681d2:	48 8d 05 4f 06 8b 00 	lea    0x8b064f(%rip),%rax        # 0x141018828
1407681d9:	48 89 03             	mov    %rax,(%rbx)
1407681dc:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1407681e0:	48 85 c9             	test   %rcx,%rcx
1407681e3:	74 20                	je     0x140768205
1407681e5:	8b 41 10             	mov    0x10(%rcx),%eax
1407681e8:	ff c8                	dec    %eax
1407681ea:	89 41 10             	mov    %eax,0x10(%rcx)
1407681ed:	85 c0                	test   %eax,%eax
1407681ef:	7f 14                	jg     0x140768205
1407681f1:	78 18                	js     0x14076820b
1407681f3:	48 8b 01             	mov    (%rcx),%rax
1407681f6:	ba 01 00 00 00       	mov    $0x1,%edx
1407681fb:	48 8b 00             	mov    (%rax),%rax
1407681fe:	ff 15 1c b8 81 00    	call   *0x81b81c(%rip)        # 0x140f83a20
140768204:	90                   	nop
140768205:	48 83 c4 20          	add    $0x20,%rsp
140768209:	5b                   	pop    %rbx
14076820a:	c3                   	ret
14076820b:	b9 02 00 00 00       	mov    $0x2,%ecx
140768210:	e8 eb 24 02 00       	call   0x14078a700
140768215:	cc                   	int3
140768216:	cc                   	int3
140768217:	cc                   	int3
140768218:	cc                   	int3
140768219:	cc                   	int3
14076821a:	cc                   	int3
14076821b:	cc                   	int3
14076821c:	cc                   	int3
14076821d:	cc                   	int3
14076821e:	cc                   	int3
14076821f:	cc                   	int3
140768220:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140768225:	57                   	push   %rdi
140768226:	48 83 ec 20          	sub    $0x20,%rsp
14076822a:	8b fa                	mov    %edx,%edi
14076822c:	48 8b d9             	mov    %rcx,%rbx
14076822f:	48 83 c1 10          	add    $0x10,%rcx
140768233:	e8 38 23 e4 ff       	call   0x1405aa570
140768238:	48 8d 05 e9 05 8b 00 	lea    0x8b05e9(%rip),%rax        # 0x141018828
14076823f:	48 89 03             	mov    %rax,(%rbx)
140768242:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140768246:	48 85 c9             	test   %rcx,%rcx
140768249:	74 20                	je     0x14076826b
14076824b:	8b 41 10             	mov    0x10(%rcx),%eax
14076824e:	ff c8                	dec    %eax
140768250:	89 41 10             	mov    %eax,0x10(%rcx)
140768253:	85 c0                	test   %eax,%eax
140768255:	7f 14                	jg     0x14076826b
140768257:	78 33                	js     0x14076828c
140768259:	48 8b 01             	mov    (%rcx),%rax
14076825c:	ba 01 00 00 00       	mov    $0x1,%edx
140768261:	48 8b 00             	mov    (%rax),%rax
140768264:	ff 15 b6 b7 81 00    	call   *0x81b7b6(%rip)        # 0x140f83a20
14076826a:	90                   	nop
14076826b:	40 f6 c7 01          	test   $0x1,%dil
14076826f:	74 0d                	je     0x14076827e
140768271:	ba 58 00 00 00       	mov    $0x58,%edx
140768276:	48 8b cb             	mov    %rbx,%rcx
140768279:	e8 c6 2e 6b 00       	call   0x140e1b144
14076827e:	48 8b c3             	mov    %rbx,%rax
140768281:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140768286:	48 83 c4 20          	add    $0x20,%rsp
14076828a:	5f                   	pop    %rdi
14076828b:	c3                   	ret
14076828c:	b9 02 00 00 00       	mov    $0x2,%ecx
140768291:	e8 6a 24 02 00       	call   0x14078a700
140768296:	cc                   	int3
140768297:	cc                   	int3
140768298:	cc                   	int3
140768299:	cc                   	int3
14076829a:	cc                   	int3
14076829b:	cc                   	int3
14076829c:	cc                   	int3
14076829d:	cc                   	int3
14076829e:	cc                   	int3
14076829f:	cc                   	int3
1407682a0:	48 8b 42 40          	mov    0x40(%rdx),%rax
1407682a4:	83 78 58 02          	cmpl   $0x2,0x58(%rax)
1407682a8:	75 03                	jne    0x1407682ad
1407682aa:	ff 49 50             	decl   0x50(%rcx)
1407682ad:	33 c0                	xor    %eax,%eax
1407682af:	c3                   	ret
1407682b0:	48 83 ec 38          	sub    $0x38,%rsp
1407682b4:	44 8b 42 18          	mov    0x18(%rdx),%r8d
1407682b8:	41 8d 40 fa          	lea    -0x6(%r8),%eax
1407682bc:	83 f8 03             	cmp    $0x3,%eax
1407682bf:	76 06                	jbe    0x1407682c7
1407682c1:	41 83 f8 11          	cmp    $0x11,%r8d
1407682c5:	75 1e                	jne    0x1407682e5
1407682c7:	44 89 44 24 48       	mov    %r8d,0x48(%rsp)
1407682cc:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1407682d1:	4c 8d 44 24 48       	lea    0x48(%rsp),%r8
1407682d6:	48 83 c1 10          	add    $0x10,%rcx
1407682da:	e8 51 1f e4 ff       	call   0x1405aa230
1407682df:	48 8b 08             	mov    (%rax),%rcx
1407682e2:	ff 49 14             	decl   0x14(%rcx)
1407682e5:	33 c0                	xor    %eax,%eax
1407682e7:	48 83 c4 38          	add    $0x38,%rsp
1407682eb:	c3                   	ret
1407682ec:	cc                   	int3
1407682ed:	cc                   	int3
1407682ee:	cc                   	int3
1407682ef:	cc                   	int3
1407682f0:	48 8b 42 40          	mov    0x40(%rdx),%rax
1407682f4:	83 78 58 02          	cmpl   $0x2,0x58(%rax)
1407682f8:	75 03                	jne    0x1407682fd
1407682fa:	ff 41 50             	incl   0x50(%rcx)
1407682fd:	33 c0                	xor    %eax,%eax
1407682ff:	c3                   	ret
140768300:	40 56                	rex push %rsi
140768302:	57                   	push   %rdi
140768303:	48 83 ec 38          	sub    $0x38,%rsp
140768307:	48 8b fa             	mov    %rdx,%rdi
14076830a:	48 8b f1             	mov    %rcx,%rsi
14076830d:	8b 52 18             	mov    0x18(%rdx),%edx
140768310:	8d 42 fa             	lea    -0x6(%rdx),%eax
140768313:	83 f8 03             	cmp    $0x3,%eax
140768316:	76 09                	jbe    0x140768321
140768318:	83 fa 11             	cmp    $0x11,%edx
14076831b:	0f 85 c7 01 00 00    	jne    0x1407684e8
140768321:	89 54 24 58          	mov    %edx,0x58(%rsp)
140768325:	4c 8d 44 24 58       	lea    0x58(%rsp),%r8
14076832a:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14076832f:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140768334:	48 83 c1 10          	add    $0x10,%rcx
140768338:	e8 f3 1e e4 ff       	call   0x1405aa230
14076833d:	48 8b 08             	mov    (%rax),%rcx
140768340:	ff 41 14             	incl   0x14(%rcx)
140768343:	83 7f 18 09          	cmpl   $0x9,0x18(%rdi)
140768347:	0f 85 df 00 00 00    	jne    0x14076842c
14076834d:	83 7e 50 00          	cmpl   $0x0,0x50(%rsi)
140768351:	0f 8f d5 00 00 00    	jg     0x14076842c
140768357:	4c 8d 44 24 58       	lea    0x58(%rsp),%r8
14076835c:	c7 44 24 58 07 00 00 	movl   $0x7,0x58(%rsp)
140768363:	00
140768364:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140768369:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
14076836d:	e8 be 1e e4 ff       	call   0x1405aa230
140768372:	48 8b 08             	mov    (%rax),%rcx
140768375:	83 79 14 00          	cmpl   $0x0,0x14(%rcx)
140768379:	0f 8f ad 00 00 00    	jg     0x14076842c
14076837f:	4c 8d 44 24 60       	lea    0x60(%rsp),%r8
140768384:	c7 44 24 60 11 00 00 	movl   $0x11,0x60(%rsp)
14076838b:	00
14076838c:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140768391:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
140768395:	e8 96 1e e4 ff       	call   0x1405aa230
14076839a:	48 8b 08             	mov    (%rax),%rcx
14076839d:	83 79 14 00          	cmpl   $0x0,0x14(%rcx)
1407683a1:	0f 8f 85 00 00 00    	jg     0x14076842c
1407683a7:	4c 8d 44 24 68       	lea    0x68(%rsp),%r8
1407683ac:	c7 44 24 68 06 00 00 	movl   $0x6,0x68(%rsp)
1407683b3:	00
1407683b4:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1407683b9:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
1407683bd:	e8 6e 1e e4 ff       	call   0x1405aa230
1407683c2:	48 8b 08             	mov    (%rax),%rcx
1407683c5:	83 79 14 00          	cmpl   $0x0,0x14(%rcx)
1407683c9:	7f 61                	jg     0x14076842c
1407683cb:	48 8b 07             	mov    (%rdi),%rax
1407683ce:	48 8b cf             	mov    %rdi,%rcx
1407683d1:	48 8b 40 10          	mov    0x10(%rax),%rax
1407683d5:	ff 15 45 b6 81 00    	call   *0x81b645(%rip)        # 0x140f83a20
1407683db:	48 8b 0d 16 91 cc 00 	mov    0xcc9116(%rip),%rcx        # 0x1414314f8
1407683e2:	48 8b d0             	mov    %rax,%rdx
1407683e5:	e8 16 92 c1 ff       	call   0x140381600
1407683ea:	48 8b 0d 07 91 cc 00 	mov    0xcc9107(%rip),%rcx        # 0x1414314f8
1407683f1:	48 8d 15 c8 e8 8b 00 	lea    0x8be8c8(%rip),%rdx        # 0x141026cc0
1407683f8:	e8 c3 b1 02 00       	call   0x1407935c0
1407683fd:	48 8b 15 f4 90 cc 00 	mov    0xcc90f4(%rip),%rdx        # 0x1414314f8
140768404:	48 8b 42 10          	mov    0x10(%rdx),%rax
140768408:	48 8b 48 08          	mov    0x8(%rax),%rcx
14076840c:	4c 8b 01             	mov    (%rcx),%r8
14076840f:	48 ff 4a 18          	decq   0x18(%rdx)
140768413:	ba 20 00 00 00       	mov    $0x20,%edx
140768418:	48 8b 41 08          	mov    0x8(%rcx),%rax
14076841c:	4c 89 00             	mov    %r8,(%rax)
14076841f:	48 8b 41 08          	mov    0x8(%rcx),%rax
140768423:	49 89 40 08          	mov    %rax,0x8(%r8)
140768427:	e8 18 2d 6b 00       	call   0x140e1b144
14076842c:	83 7f 18 08          	cmpl   $0x8,0x18(%rdi)
140768430:	0f 85 ad 00 00 00    	jne    0x1407684e3
140768436:	4c 8d 44 24 58       	lea    0x58(%rsp),%r8
14076843b:	c7 44 24 58 07 00 00 	movl   $0x7,0x58(%rsp)
140768442:	00
140768443:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140768448:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
14076844c:	e8 df 1d e4 ff       	call   0x1405aa230
140768451:	48 8b 10             	mov    (%rax),%rdx
140768454:	83 7a 14 00          	cmpl   $0x0,0x14(%rdx)
140768458:	0f 8f 85 00 00 00    	jg     0x1407684e3
14076845e:	4c 8d 44 24 60       	lea    0x60(%rsp),%r8
140768463:	c7 44 24 60 11 00 00 	movl   $0x11,0x60(%rsp)
14076846a:	00
14076846b:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140768470:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
140768474:	e8 b7 1d e4 ff       	call   0x1405aa230
140768479:	48 8b 08             	mov    (%rax),%rcx
14076847c:	83 79 14 00          	cmpl   $0x0,0x14(%rcx)
140768480:	7f 61                	jg     0x1407684e3
140768482:	48 8b 07             	mov    (%rdi),%rax
140768485:	48 8b cf             	mov    %rdi,%rcx
140768488:	48 8b 40 10          	mov    0x10(%rax),%rax
14076848c:	ff 15 8e b5 81 00    	call   *0x81b58e(%rip)        # 0x140f83a20
140768492:	48 8b 0d 5f 90 cc 00 	mov    0xcc905f(%rip),%rcx        # 0x1414314f8
140768499:	48 8b d0             	mov    %rax,%rdx
14076849c:	e8 5f 91 c1 ff       	call   0x140381600
1407684a1:	48 8b 0d 50 90 cc 00 	mov    0xcc9050(%rip),%rcx        # 0x1414314f8
1407684a8:	48 8d 15 69 e8 8b 00 	lea    0x8be869(%rip),%rdx        # 0x141026d18
1407684af:	e8 0c b1 02 00       	call   0x1407935c0
1407684b4:	4c 8b 05 3d 90 cc 00 	mov    0xcc903d(%rip),%r8        # 0x1414314f8
1407684bb:	ba 20 00 00 00       	mov    $0x20,%edx
1407684c0:	49 8b 40 10          	mov    0x10(%r8),%rax
1407684c4:	48 8b 48 08          	mov    0x8(%rax),%rcx
1407684c8:	4c 8b 09             	mov    (%rcx),%r9
1407684cb:	49 ff 48 18          	decq   0x18(%r8)
1407684cf:	48 8b 41 08          	mov    0x8(%rcx),%rax
1407684d3:	4c 89 08             	mov    %r9,(%rax)
1407684d6:	48 8b 41 08          	mov    0x8(%rcx),%rax
1407684da:	49 89 41 08          	mov    %rax,0x8(%r9)
1407684de:	e8 61 2c 6b 00       	call   0x140e1b144
1407684e3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1407684e8:	33 c0                	xor    %eax,%eax
1407684ea:	48 83 c4 38          	add    $0x38,%rsp
1407684ee:	5f                   	pop    %rdi
1407684ef:	5e                   	pop    %rsi
1407684f0:	c3                   	ret
1407684f1:	cc                   	int3
1407684f2:	cc                   	int3
1407684f3:	cc                   	int3
1407684f4:	cc                   	int3
1407684f5:	cc                   	int3
1407684f6:	cc                   	int3
1407684f7:	cc                   	int3
1407684f8:	cc                   	int3
1407684f9:	cc                   	int3
1407684fa:	cc                   	int3
1407684fb:	cc                   	int3
1407684fc:	cc                   	int3
1407684fd:	cc                   	int3
1407684fe:	cc                   	int3
1407684ff:	cc                   	int3
140768500:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140768505:	55                   	push   %rbp
140768506:	48 8b ec             	mov    %rsp,%rbp
140768509:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
140768510:	33 db                	xor    %ebx,%ebx
140768512:	48 89 5d a8          	mov    %rbx,-0x58(%rbp)
140768516:	48 8d 05 0b e7 8b 00 	lea    0x8be70b(%rip),%rax        # 0x141026c28
14076851d:	48 89 45 a0          	mov    %rax,-0x60(%rbp)