14001716f:	44 2b d5             	sub    %ebp,%r10d
140017172:	44 8b c0             	mov    %eax,%r8d
140017175:	45 2b d4             	sub    %r12d,%r10d
140017178:	8b c5                	mov    %ebp,%eax
14001717a:	49 c1 e0 02          	shl    $0x2,%r8
14001717e:	49 c1 e2 02          	shl    $0x2,%r10
140017182:	4c 8d 0c 82          	lea    (%rdx,%rax,4),%r9
140017186:	8d 45 01             	lea    0x1(%rbp),%eax
140017189:	48 8d 0c 82          	lea    (%rdx,%rax,4),%rcx
14001718d:	4d 85 c0             	test   %r8,%r8
140017190:	74 59                	je     0x1400171eb
140017192:	48 85 c9             	test   %rcx,%rcx
140017195:	75 14                	jne    0x1400171ab
140017197:	48 ff 15 0a 90 00 00 	rex.W call *0x900a(%rip)        # 0x1400201a8
14001719e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400171a3:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
1400171a9:	eb 1c                	jmp    0x1400171c7
1400171ab:	4d 85 c9             	test   %r9,%r9
1400171ae:	74 e7                	je     0x140017197
1400171b0:	4d 3b d0             	cmp    %r8,%r10
1400171b3:	73 2e                	jae    0x1400171e3
1400171b5:	48 ff 15 ec 8f 00 00 	rex.W call *0x8fec(%rip)        # 0x1400201a8
1400171bc:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400171c1:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
1400171c7:	e8 9a 52 00 00       	call   0x14001c466
1400171cc:	be ff ff 00 80       	mov    $0x8000ffff,%esi
1400171d1:	33 d2                	xor    %edx,%edx
1400171d3:	8b ce                	mov    %esi,%ecx
1400171d5:	48 ff 15 6c 8e 00 00 	rex.W call *0x8e6c(%rip)        # 0x140020048
1400171dc:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400171e1:	eb 08                	jmp    0x1400171eb
1400171e3:	49 8b d1             	mov    %r9,%rdx
1400171e6:	e8 f4 57 00 00       	call   0x14001c9df
1400171eb:	85 f6                	test   %esi,%esi
1400171ed:	78 12                	js     0x140017201
1400171ef:	48 8b 47 38          	mov    0x38(%rdi),%rax
1400171f3:	8b cd                	mov    %ebp,%ecx
1400171f5:	44 89 3c 88          	mov    %r15d,(%rax,%rcx,4)
1400171f9:	44 01 67 28          	add    %r12d,0x28(%rdi)
1400171fd:	44 01 67 58          	add    %r12d,0x58(%rdi)
140017201:	48 85 db             	test   %rbx,%rbx
140017204:	74 1d                	je     0x140017223
140017206:	44 39 23             	cmp    %r12d,(%rbx)
140017209:	75 09                	jne    0x140017214
14001720b:	41 81 06 00 00 00 10 	addl   $0x10000000,(%r14)
140017212:	eb 0f                	jmp    0x140017223
140017214:	49 8b ce             	mov    %r14,%rcx
140017217:	48 ff 15 e2 8c 00 00 	rex.W call *0x8ce2(%rip)        # 0x14001ff00
14001721e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017223:	85 f6                	test   %esi,%esi
140017225:	78 1a                	js     0x140017241
140017227:	0f b6 57 5c          	movzbl 0x5c(%rdi),%edx
14001722b:	45 8b cc             	mov    %r12d,%r9d
14001722e:	0f b6 4c 24 70       	movzbl 0x70(%rsp),%ecx
140017233:	4c 8b c7             	mov    %rdi,%r8
140017236:	89 6c 24 20          	mov    %ebp,0x20(%rsp)
14001723a:	e8 7d fc ff ff       	call   0x140016ebc
14001723f:	8b f0                	mov    %eax,%esi
140017241:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140017246:	8b c6                	mov    %esi,%eax
140017248:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
14001724d:	48 83 c4 30          	add    $0x30,%rsp
140017251:	41 5f                	pop    %r15
140017253:	41 5e                	pop    %r14
140017255:	41 5c                	pop    %r12
140017257:	5f                   	pop    %rdi
140017258:	5e                   	pop    %rsi
140017259:	c3                   	ret
14001725a:	cc                   	int3
14001725b:	cc                   	int3
14001725c:	cc                   	int3
14001725d:	cc                   	int3
14001725e:	cc                   	int3
14001725f:	cc                   	int3
140017260:	cc                   	int3
140017261:	cc                   	int3
140017262:	cc                   	int3
140017263:	cc                   	int3
140017264:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140017269:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14001726e:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140017273:	57                   	push   %rdi
140017274:	41 56                	push   %r14
140017276:	41 57                	push   %r15
140017278:	48 83 ec 30          	sub    $0x30,%rsp
14001727c:	48 8d 59 48          	lea    0x48(%rcx),%rbx
140017280:	41 bf 01 00 00 00    	mov    $0x1,%r15d
140017286:	4c 8d 73 08          	lea    0x8(%rbx),%r14
14001728a:	41 8a f0             	mov    %r8b,%sil
14001728d:	8b ea                	mov    %edx,%ebp
14001728f:	48 8b f9             	mov    %rcx,%rdi
140017292:	44 39 3b             	cmp    %r15d,(%rbx)
140017295:	75 0f                	jne    0x1400172a6
140017297:	41 83 3e 00          	cmpl   $0x0,(%r14)
14001729b:	75 18                	jne    0x1400172b5
14001729d:	41 c7 06 00 00 00 f0 	movl   $0xf0000000,(%r14)
1400172a4:	eb 0f                	jmp    0x1400172b5
1400172a6:	49 8b ce             	mov    %r14,%rcx
1400172a9:	48 ff 15 68 8c 00 00 	rex.W call *0x8c68(%rip)        # 0x14001ff18
1400172b0:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400172b5:	8b 47 28             	mov    0x28(%rdi),%eax
1400172b8:	40 84 f6             	test   %sil,%sil
1400172bb:	74 03                	je     0x1400172c0
1400172bd:	8d 68 ff             	lea    -0x1(%rax),%ebp
1400172c0:	3b e8                	cmp    %eax,%ebp
1400172c2:	72 07                	jb     0x1400172cb
1400172c4:	be 0b 00 00 80       	mov    $0x8000000b,%esi
1400172c9:	eb 69                	jmp    0x140017334
1400172cb:	0f b6 57 5d          	movzbl 0x5d(%rdi),%edx
1400172cf:	4c 8d 47 60          	lea    0x60(%rdi),%r8
1400172d3:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
1400172d8:	e8 0b fd ff ff       	call   0x140016fe8
1400172dd:	44 8b 47 28          	mov    0x28(%rdi),%r8d
1400172e1:	33 f6                	xor    %esi,%esi
1400172e3:	41 8d 40 ff          	lea    -0x1(%r8),%eax
1400172e7:	3b e8                	cmp    %eax,%ebp
1400172e9:	73 6a                	jae    0x140017355
1400172eb:	48 8b 57 38          	mov    0x38(%rdi),%rdx
1400172ef:	8d 45 01             	lea    0x1(%rbp),%eax
1400172f2:	45 8b d0             	mov    %r8d,%r10d
1400172f5:	44 2b d5             	sub    %ebp,%r10d
1400172f8:	45 2b d7             	sub    %r15d,%r10d
1400172fb:	4c 8d 0c 82          	lea    (%rdx,%rax,4),%r9
1400172ff:	49 c1 e2 02          	shl    $0x2,%r10
140017303:	8b c5                	mov    %ebp,%eax
140017305:	48 8d 0c 82          	lea    (%rdx,%rax,4),%rcx
140017309:	4d 85 d2             	test   %r10,%r10
14001730c:	74 47                	je     0x140017355
14001730e:	48 85 c9             	test   %rcx,%rcx
140017311:	74 05                	je     0x140017318
140017313:	4d 85 c9             	test   %r9,%r9
140017316:	75 2e                	jne    0x140017346
140017318:	48 ff 15 89 8e 00 00 	rex.W call *0x8e89(%rip)        # 0x1400201a8
14001731f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017324:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14001732a:	e8 37 51 00 00       	call   0x14001c466
14001732f:	be ff ff 00 80       	mov    $0x8000ffff,%esi
140017334:	33 d2                	xor    %edx,%edx
140017336:	8b ce                	mov    %esi,%ecx
140017338:	48 ff 15 09 8d 00 00 	rex.W call *0x8d09(%rip)        # 0x140020048
14001733f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017344:	eb 4b                	jmp    0x140017391
140017346:	4d 8b c2             	mov    %r10,%r8
140017349:	49 8b d1             	mov    %r9,%rdx
14001734c:	e8 8e 56 00 00       	call   0x14001c9df
140017351:	44 8b 47 28          	mov    0x28(%rdi),%r8d
140017355:	44 01 7f 58          	add    %r15d,0x58(%rdi)
140017359:	41 8d 48 ff          	lea    -0x1(%r8),%ecx
14001735d:	44 8b 47 2c          	mov    0x2c(%rdi),%r8d
140017361:	b8 ab aa aa aa       	mov    $0xaaaaaaab,%eax
140017366:	41 f7 e0             	mul    %r8d
140017369:	89 4f 28             	mov    %ecx,0x28(%rdi)
14001736c:	d1 ea                	shr    $1,%edx
14001736e:	3b ca                	cmp    %edx,%ecx
140017370:	73 1f                	jae    0x140017391
140017372:	41 8b c8             	mov    %r8d,%ecx
140017375:	41 8d 40 ff          	lea    -0x1(%r8),%eax
140017379:	2b ca                	sub    %edx,%ecx
14001737b:	3b c1                	cmp    %ecx,%eax
14001737d:	48 8b cf             	mov    %rdi,%rcx
140017380:	41 0f 42 d7          	cmovb  %r15d,%edx
140017384:	44 2b c2             	sub    %edx,%r8d
140017387:	41 8b d0             	mov    %r8d,%edx
14001738a:	e8 69 10 00 00       	call   0x1400183f8
14001738f:	8b f0                	mov    %eax,%esi
140017391:	48 85 db             	test   %rbx,%rbx
140017394:	74 1d                	je     0x1400173b3
140017396:	44 39 3b             	cmp    %r15d,(%rbx)
140017399:	75 09                	jne    0x1400173a4
14001739b:	41 81 06 00 00 00 10 	addl   $0x10000000,(%r14)
1400173a2:	eb 0f                	jmp    0x1400173b3
1400173a4:	49 8b ce             	mov    %r14,%rcx
1400173a7:	48 ff 15 52 8b 00 00 	rex.W call *0x8b52(%rip)        # 0x14001ff00
1400173ae:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400173b3:	85 f6                	test   %esi,%esi
1400173b5:	78 1d                	js     0x1400173d4
1400173b7:	0f b6 57 5c          	movzbl 0x5c(%rdi),%edx
1400173bb:	41 b9 02 00 00 00    	mov    $0x2,%r9d
1400173c1:	0f b6 4c 24 50       	movzbl 0x50(%rsp),%ecx
1400173c6:	4c 8b c7             	mov    %rdi,%r8
1400173c9:	89 6c 24 20          	mov    %ebp,0x20(%rsp)
1400173cd:	e8 ea fa ff ff       	call   0x140016ebc
1400173d2:	8b f0                	mov    %eax,%esi
1400173d4:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1400173d9:	8b c6                	mov    %esi,%eax
1400173db:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
1400173e0:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
1400173e5:	48 83 c4 30          	add    $0x30,%rsp
1400173e9:	41 5f                	pop    %r15
1400173eb:	41 5e                	pop    %r14
1400173ed:	5f                   	pop    %rdi
1400173ee:	c3                   	ret
1400173ef:	cc                   	int3
1400173f0:	cc                   	int3
1400173f1:	cc                   	int3
1400173f2:	cc                   	int3
1400173f3:	cc                   	int3
1400173f4:	cc                   	int3
1400173f5:	cc                   	int3
1400173f6:	cc                   	int3
1400173f7:	cc                   	int3
1400173f8:	48 89 11             	mov    %rdx,(%rcx)
1400173fb:	48 8b c1             	mov    %rcx,%rax
1400173fe:	c3                   	ret
1400173ff:	cc                   	int3
140017400:	cc                   	int3
140017401:	cc                   	int3
140017402:	cc                   	int3
140017403:	cc                   	int3
140017404:	cc                   	int3
140017405:	cc                   	int3
140017406:	cc                   	int3
140017407:	cc                   	int3
140017408:	48 8b c4             	mov    %rsp,%rax
14001740b:	48 89 58 08          	mov    %rbx,0x8(%rax)
14001740f:	48 89 68 10          	mov    %rbp,0x10(%rax)
140017413:	48 89 70 18          	mov    %rsi,0x18(%rax)
140017417:	48 89 78 20          	mov    %rdi,0x20(%rax)
14001741b:	41 54                	push   %r12
14001741d:	41 56                	push   %r14
14001741f:	41 57                	push   %r15
140017421:	48 83 ec 50          	sub    $0x50,%rsp
140017425:	48 8b c2             	mov    %rdx,%rax
140017428:	49 8b d9             	mov    %r9,%rbx
14001742b:	48 2b c1             	sub    %rcx,%rax
14001742e:	49 8b f8             	mov    %r8,%rdi
140017431:	48 c1 f8 04          	sar    $0x4,%rax
140017435:	4c 8b f2             	mov    %rdx,%r14
140017438:	48 8b f1             	mov    %rcx,%rsi
14001743b:	48 83 f8 20          	cmp    $0x20,%rax
14001743f:	0f 8e 4a 01 00 00    	jle    0x14001758f
140017445:	48 85 ff             	test   %rdi,%rdi
140017448:	7e 77                	jle    0x1400174c1
14001744a:	4c 8b cb             	mov    %rbx,%r9
14001744d:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140017452:	4d 8b c6             	mov    %r14,%r8
140017455:	48 8b d6             	mov    %rsi,%rdx
140017458:	e8 df 10 00 00       	call   0x14001853c
14001745d:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
140017462:	48 8b cf             	mov    %rdi,%rcx
140017465:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
14001746a:	49 8b c7             	mov    %r15,%rax
14001746d:	48 c1 f9 02          	sar    $0x2,%rcx
140017471:	48 2b c6             	sub    %rsi,%rax
140017474:	48 d1 ff             	sar    $1,%rdi
140017477:	48 83 e0 f0          	and    $0xfffffffffffffff0,%rax
14001747b:	48 03 f9             	add    %rcx,%rdi
14001747e:	4c 8b cb             	mov    %rbx,%r9
140017481:	49 8b ce             	mov    %r14,%rcx
140017484:	4c 8b c7             	mov    %rdi,%r8
140017487:	48 2b cd             	sub    %rbp,%rcx
14001748a:	48 83 e1 f0          	and    $0xfffffffffffffff0,%rcx
14001748e:	48 3b c1             	cmp    %rcx,%rax
140017491:	7d 10                	jge    0x1400174a3
140017493:	49 8b d7             	mov    %r15,%rdx
140017496:	48 8b ce             	mov    %rsi,%rcx
140017499:	e8 6a ff ff ff       	call   0x140017408
14001749e:	48 8b f5             	mov    %rbp,%rsi
1400174a1:	eb 0e                	jmp    0x1400174b1
1400174a3:	49 8b d6             	mov    %r14,%rdx
1400174a6:	48 8b cd             	mov    %rbp,%rcx
1400174a9:	e8 5a ff ff ff       	call   0x140017408
1400174ae:	4d 8b f7             	mov    %r15,%r14
1400174b1:	49 8b c6             	mov    %r14,%rax
1400174b4:	48 2b c6             	sub    %rsi,%rax
1400174b7:	48 c1 f8 04          	sar    $0x4,%rax
1400174bb:	48 83 f8 20          	cmp    $0x20,%rax
1400174bf:	7f 84                	jg     0x140017445
1400174c1:	48 83 f8 20          	cmp    $0x20,%rax
1400174c5:	0f 8e c4 00 00 00    	jle    0x14001758f
1400174cb:	4d 8b fe             	mov    %r14,%r15
1400174ce:	4c 2b fe             	sub    %rsi,%r15
1400174d1:	49 c1 ff 04          	sar    $0x4,%r15
1400174d5:	49 8b ef             	mov    %r15,%rbp
1400174d8:	48 d1 fd             	sar    $1,%rbp
1400174db:	48 85 ed             	test   %rbp,%rbp
1400174de:	0f 8e 9b 00 00 00    	jle    0x14001757f
1400174e4:	4c 8b e5             	mov    %rbp,%r12
1400174e7:	49 c1 e4 04          	shl    $0x4,%r12
1400174eb:	4c 03 e6             	add    %rsi,%r12
1400174ee:	4d 8d 64 24 f0       	lea    -0x10(%r12),%r12
1400174f3:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400174f8:	49 8b 04 24          	mov    (%r12),%rax
1400174fc:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
140017501:	49 83 24 24 00       	andq   $0x0,(%r12)
140017506:	48 ff cd             	dec    %rbp
140017509:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14001750e:	4d 8b c7             	mov    %r15,%r8
140017511:	49 8b 44 24 08       	mov    0x8(%r12),%rax
140017516:	48 8b d5             	mov    %rbp,%rdx
140017519:	49 83 64 24 08 00    	andq   $0x0,0x8(%r12)
14001751f:	48 8b ce             	mov    %rsi,%rcx
140017522:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140017527:	e8 ac 17 00 00       	call   0x140018cd8
14001752c:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140017531:	48 85 c9             	test   %rcx,%rcx
140017534:	74 40                	je     0x140017576
140017536:	83 c8 ff             	or     $0xffffffff,%eax
140017539:	f0 0f c1 41 08       	lock xadd %eax,0x8(%rcx)
14001753e:	83 f8 01             	cmp    $0x1,%eax
140017541:	75 33                	jne    0x140017576
140017543:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
140017548:	48 8b cf             	mov    %rdi,%rcx
14001754b:	48 8b 07             	mov    (%rdi),%rax
14001754e:	48 8b 00             	mov    (%rax),%rax
140017551:	ff 15 81 8e 00 00    	call   *0x8e81(%rip)        # 0x1400203d8
140017557:	83 c8 ff             	or     $0xffffffff,%eax
14001755a:	f0 0f c1 47 0c       	lock xadd %eax,0xc(%rdi)
14001755f:	83 f8 01             	cmp    $0x1,%eax
140017562:	75 12                	jne    0x140017576
140017564:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140017569:	48 8b 01             	mov    (%rcx),%rax
14001756c:	48 8b 40 08          	mov    0x8(%rax),%rax
140017570:	ff 15 62 8e 00 00    	call   *0x8e62(%rip)        # 0x1400203d8
140017576:	48 85 ed             	test   %rbp,%rbp
140017579:	0f 8f 6f ff ff ff    	jg     0x1400174ee
14001757f:	4c 8b c3             	mov    %rbx,%r8
140017582:	49 8b d6             	mov    %r14,%rdx
140017585:	48 8b ce             	mov    %rsi,%rcx
140017588:	e8 47 13 00 00       	call   0x1400188d4
14001758d:	eb 14                	jmp    0x1400175a3
14001758f:	48 83 f8 02          	cmp    $0x2,%rax
140017593:	7c 0e                	jl     0x1400175a3
140017595:	4c 8b c3             	mov    %rbx,%r8
140017598:	49 8b d6             	mov    %r14,%rdx
14001759b:	48 8b ce             	mov    %rsi,%rcx
14001759e:	e8 49 14 00 00       	call   0x1400189ec
1400175a3:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
1400175a8:	49 8b 5b 20          	mov    0x20(%r11),%rbx
1400175ac:	49 8b 6b 28          	mov    0x28(%r11),%rbp
1400175b0:	49 8b 73 30          	mov    0x30(%r11),%rsi
1400175b4:	49 8b 7b 38          	mov    0x38(%r11),%rdi
1400175b8:	49 8b e3             	mov    %r11,%rsp
1400175bb:	41 5f                	pop    %r15
1400175bd:	41 5e                	pop    %r14
1400175bf:	41 5c                	pop    %r12
1400175c1:	c3                   	ret
1400175c2:	cc                   	int3
1400175c3:	cc                   	int3
1400175c4:	cc                   	int3
1400175c5:	cc                   	int3
1400175c6:	cc                   	int3
1400175c7:	cc                   	int3
1400175c8:	cc                   	int3
1400175c9:	cc                   	int3
1400175ca:	cc                   	int3
1400175cb:	cc                   	int3
1400175cc:	cc                   	int3
1400175cd:	cc                   	int3
1400175ce:	cc                   	int3