1400160d4:	48 8b cb             	mov    %rbx,%rcx
1400160d7:	8b 03                	mov    (%rbx),%eax
1400160d9:	eb 0b                	jmp    0x1400160e6
1400160db:	48 03 c8             	add    %rax,%rcx
1400160de:	8b 41 08             	mov    0x8(%rcx),%eax
1400160e1:	48 03 f8             	add    %rax,%rdi
1400160e4:	8b 01                	mov    (%rcx),%eax
1400160e6:	85 c0                	test   %eax,%eax
1400160e8:	75 f1                	jne    0x1400160db
1400160ea:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
1400160f1:	00 00
1400160f3:	4c 8b c3             	mov    %rbx,%r8
1400160f6:	33 d2                	xor    %edx,%edx
1400160f8:	48 8b 49 30          	mov    0x30(%rcx),%rcx
1400160fc:	48 ff 15 b5 4c 00 00 	rex.W call *0x4cb5(%rip)        # 0x14001adb8
140016103:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016108:	4c 8b 8c 24 08 01 00 	mov    0x108(%rsp),%r9
14001610f:	00
140016110:	48 8d 0c b6          	lea    (%rsi,%rsi,4),%rcx
140016114:	48 03 c9             	add    %rcx,%rcx
140016117:	48 b8 8f e3 38 8e e3 	movabs $0xe38e38e38e38e38f,%rax
14001611e:	38 8e e3
140016121:	48 f7 e1             	mul    %rcx
140016124:	8b 0d 7e 3a 01 00    	mov    0x13a7e(%rip),%ecx        # 0x140029ba8
14001612a:	48 b8 00 00 00 00 04 	movabs $0x400000000,%rax
140016131:	00 00 00
140016134:	4c 8b c2             	mov    %rdx,%r8
140016137:	4c 03 cf             	add    %rdi,%r9
14001613a:	33 d2                	xor    %edx,%edx
14001613c:	49 c1 e8 03          	shr    $0x3,%r8
140016140:	48 f7 f1             	div    %rcx
140016143:	48 8d 0c 30          	lea    (%rax,%rsi,1),%rcx
140016147:	4c 3b c1             	cmp    %rcx,%r8
14001614a:	49 0f 46 c8          	cmovbe %r8,%rcx
14001614e:	48 3b cd             	cmp    %rbp,%rcx
140016151:	76 0a                	jbe    0x14001615d
140016153:	48 2b cd             	sub    %rbp,%rcx
140016156:	49 3b c9             	cmp    %r9,%rcx
140016159:	4c 0f 47 c9          	cmova  %rcx,%r9
14001615d:	8b 0d 8d 3d 01 00    	mov    0x13d8d(%rip),%ecx        # 0x140029ef0
140016163:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140016168:	4c 3b c8             	cmp    %rax,%r9
14001616b:	4c 0f 47 c8          	cmova  %rax,%r9
14001616f:	b8 89 88 88 88       	mov    $0x88888889,%eax
140016174:	f7 e1                	mul    %ecx
140016176:	c1 ea 07             	shr    $0x7,%edx
140016179:	69 c2 f0 00 00 00    	imul   $0xf0,%edx,%eax
14001617f:	2b c8                	sub    %eax,%ecx
140016181:	8b c1                	mov    %ecx,%eax
140016183:	48 8d 0d 6a 3d 01 00 	lea    0x13d6a(%rip),%rcx        # 0x140029ef4
14001618a:	44 89 0c 81          	mov    %r9d,(%rcx,%rax,4)
14001618e:	b9 07 00 00 00       	mov    $0x7,%ecx
140016193:	8b 15 47 3d 01 00    	mov    0x13d47(%rip),%edx        # 0x140029ee0
140016199:	ff 05 51 3d 01 00    	incl   0x13d51(%rip)        # 0x140029ef0
14001619f:	ff c2                	inc    %edx
1400161a1:	89 15 39 3d 01 00    	mov    %edx,0x13d39(%rip)        # 0x140029ee0
1400161a7:	8d 42 ff             	lea    -0x1(%rdx),%eax
1400161aa:	3b c1                	cmp    %ecx,%eax
1400161ac:	0f 42 c8             	cmovb  %eax,%ecx
1400161af:	85 d1                	test   %edx,%ecx
1400161b1:	75 37                	jne    0x1400161ea
1400161b3:	48 8b 0d d6 3c 01 00 	mov    0x13cd6(%rip),%rcx        # 0x140029e90
1400161ba:	48 8d 05 2f 3d 01 00 	lea    0x13d2f(%rip),%rax        # 0x140029ef0
1400161c1:	c7 44 24 28 c4 03 00 	movl   $0x3c4,0x28(%rsp)
1400161c8:	00
1400161c9:	48 8d 15 b0 4a 00 00 	lea    0x4ab0(%rip),%rdx        # 0x14001ac80
1400161d0:	41 b9 03 00 00 00    	mov    $0x3,%r9d
1400161d6:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400161db:	45 33 c0             	xor    %r8d,%r8d
1400161de:	48 ff 15 db 4b 00 00 	rex.W call *0x4bdb(%rip)        # 0x14001adc0
1400161e5:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400161ea:	48 8b 8c 24 10 01 00 	mov    0x110(%rsp),%rcx
1400161f1:	00
1400161f2:	48 33 cc             	xor    %rsp,%rcx
1400161f5:	e8 86 87 ff ff       	call   0x14000e980
1400161fa:	4c 8d 9c 24 20 01 00 	lea    0x120(%rsp),%r11
140016201:	00
140016202:	49 8b 5b 10          	mov    0x10(%r11),%rbx
140016206:	49 8b 6b 18          	mov    0x18(%r11),%rbp
14001620a:	49 8b 73 20          	mov    0x20(%r11),%rsi
14001620e:	49 8b e3             	mov    %r11,%rsp
140016211:	5f                   	pop    %rdi
140016212:	c3                   	ret
140016213:	cc                   	int3
140016214:	cc                   	int3
140016215:	cc                   	int3
140016216:	cc                   	int3
140016217:	cc                   	int3
140016218:	cc                   	int3
140016219:	cc                   	int3
14001621a:	cc                   	int3
14001621b:	cc                   	int3
14001621c:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140016221:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140016226:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14001622b:	53                   	push   %rbx
14001622c:	55                   	push   %rbp
14001622d:	56                   	push   %rsi
14001622e:	57                   	push   %rdi
14001622f:	48 83 ec 28          	sub    $0x28,%rsp
140016233:	33 ed                	xor    %ebp,%ebp
140016235:	48 8b f1             	mov    %rcx,%rsi
140016238:	8b cd                	mov    %ebp,%ecx
14001623a:	8b fd                	mov    %ebp,%edi
14001623c:	8b dd                	mov    %ebp,%ebx
14001623e:	f6 06 01             	testb  $0x1,(%rsi)
140016241:	75 72                	jne    0x1400162b5
140016243:	0f b7 46 02          	movzwl 0x2(%rsi),%eax
140016247:	a8 01                	test   $0x1,%al
140016249:	75 6a                	jne    0x1400162b5
14001624b:	66 39 06             	cmp    %ax,(%rsi)
14001624e:	77 65                	ja     0x1400162b5
140016250:	41 b8 fe ff 00 00    	mov    $0xfffe,%r8d
140016256:	66 41 3b c0          	cmp    %r8w,%ax
14001625a:	77 59                	ja     0x1400162b5
14001625c:	48 39 6e 08          	cmp    %rbp,0x8(%rsi)
140016260:	75 11                	jne    0x140016273
140016262:	66 39 2e             	cmp    %bp,(%rsi)
140016265:	75 05                	jne    0x14001626c
140016267:	66 85 c0             	test   %ax,%ax
14001626a:	74 07                	je     0x140016273
14001626c:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
140016271:	eb 0a                	jmp    0x14001627d
140016273:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140016277:	48 8b f8             	mov    %rax,%rdi
14001627a:	48 d1 ef             	shr    $1,%rdi
14001627d:	85 db                	test   %ebx,%ebx
14001627f:	78 39                	js     0x1400162ba
140016281:	4c 8b c2             	mov    %rdx,%r8
140016284:	4c 8d 4c 24 60       	lea    0x60(%rsp),%r9
140016289:	48 8b d7             	mov    %rdi,%rdx
14001628c:	8b dd                	mov    %ebp,%ebx
14001628e:	48 ff 15 8b 4c 00 00 	rex.W call *0x4c8b(%rip)        # 0x14001af20
140016295:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14001629a:	85 c0                	test   %eax,%eax
14001629c:	78 07                	js     0x1400162a5
14001629e:	48 98                	cltq
1400162a0:	48 3b c7             	cmp    %rdi,%rax
1400162a3:	76 08                	jbe    0x1400162ad
1400162a5:	48 8b c7             	mov    %rdi,%rax
1400162a8:	bb 05 00 00 80       	mov    $0x80000005,%ebx
1400162ad:	66 03 c0             	add    %ax,%ax
1400162b0:	66 89 06             	mov    %ax,(%rsi)
1400162b3:	eb 05                	jmp    0x1400162ba
1400162b5:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
1400162ba:	8b c3                	mov    %ebx,%eax
1400162bc:	48 83 c4 28          	add    $0x28,%rsp
1400162c0:	5f                   	pop    %rdi
1400162c1:	5e                   	pop    %rsi
1400162c2:	5d                   	pop    %rbp
1400162c3:	5b                   	pop    %rbx
1400162c4:	c3                   	ret
1400162c5:	cc                   	int3
1400162c6:	cc                   	int3
1400162c7:	cc                   	int3
1400162c8:	cc                   	int3
1400162c9:	cc                   	int3
1400162ca:	cc                   	int3
1400162cb:	cc                   	int3
1400162cc:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400162d1:	55                   	push   %rbp
1400162d2:	56                   	push   %rsi
1400162d3:	57                   	push   %rdi
1400162d4:	41 54                	push   %r12
1400162d6:	41 55                	push   %r13
1400162d8:	41 56                	push   %r14
1400162da:	41 57                	push   %r15
1400162dc:	48 8d 6c 24 d0       	lea    -0x30(%rsp),%rbp
1400162e1:	48 81 ec 30 01 00 00 	sub    $0x130,%rsp
1400162e8:	48 8b 05 81 2b 01 00 	mov    0x12b81(%rip),%rax        # 0x140028e70
1400162ef:	48 33 c4             	xor    %rsp,%rax
1400162f2:	48 89 45 20          	mov    %rax,0x20(%rbp)
1400162f6:	48 83 64 24 70 00    	andq   $0x0,0x70(%rsp)
1400162fc:	4c 8d 4d 80          	lea    -0x80(%rbp),%r9
140016300:	48 83 64 24 78 00    	andq   $0x0,0x78(%rsp)
140016306:	33 ff                	xor    %edi,%edi
140016308:	49 8b f0             	mov    %r8,%rsi
14001630b:	c7 44 24 28 04 00 00 	movl   $0x4,0x28(%rsp)
140016312:	00
140016313:	4c 8b ea             	mov    %rdx,%r13
140016316:	48 89 7c 24 68       	mov    %rdi,0x68(%rsp)
14001631b:	4c 8b e1             	mov    %rcx,%r12
14001631e:	c7 44 24 20 00 30 00 	movl   $0x3000,0x20(%rsp)
140016325:	00
140016326:	41 be 00 00 10 00    	mov    $0x100000,%r14d
14001632c:	48 8d 54 24 78       	lea    0x78(%rsp),%rdx
140016331:	45 33 c0             	xor    %r8d,%r8d
140016334:	4c 89 75 80          	mov    %r14,-0x80(%rbp)
140016338:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
14001633c:	44 8d 7f 01          	lea    0x1(%rdi),%r15d
140016340:	48 ff 15 a1 4b 00 00 	rex.W call *0x4ba1(%rip)        # 0x14001aee8
140016347:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14001634c:	8b d8                	mov    %eax,%ebx
14001634e:	85 c0                	test   %eax,%eax
140016350:	78 30                	js     0x140016382
140016352:	48 85 f6             	test   %rsi,%rsi
140016355:	74 05                	je     0x14001635c
140016357:	48 8b fe             	mov    %rsi,%rdi
14001635a:	eb 18                	jmp    0x140016374
14001635c:	48 8d 54 24 68       	lea    0x68(%rsp),%rdx
140016361:	49 8b cc             	mov    %r12,%rcx
140016364:	e8 cf 07 00 00       	call   0x140016b38
140016369:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
14001636e:	8b d8                	mov    %eax,%ebx
140016370:	85 c0                	test   %eax,%eax
140016372:	78 0e                	js     0x140016382
140016374:	48 85 ff             	test   %rdi,%rdi
140016377:	0f 85 38 01 00 00    	jne    0x1400164b5
14001637d:	bb 98 00 00 c0       	mov    $0xc0000098,%ebx
140016382:	45 33 ed             	xor    %r13d,%r13d
140016385:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
14001638a:	48 85 c9             	test   %rcx,%rcx
14001638d:	0f 84 ce 00 00 00    	je     0x140016461
140016393:	be 08 00 00 00       	mov    $0x8,%esi
140016398:	85 db                	test   %ebx,%ebx
14001639a:	78 3b                	js     0x1400163d7
14001639c:	48 85 ff             	test   %rdi,%rdi
14001639f:	74 32                	je     0x1400163d3
1400163a1:	41 83 ff 01          	cmp    $0x1,%r15d
1400163a5:	74 2c                	je     0x1400163d3
1400163a7:	44 8b ce             	mov    %esi,%r9d
1400163aa:	48 89 7c 24 68       	mov    %rdi,0x68(%rsp)
1400163af:	4c 8d 44 24 68       	lea    0x68(%rsp),%r8
1400163b4:	c7 44 24 20 14 00 00 	movl   $0x14,0x20(%rsp)
1400163bb:	00
1400163bc:	48 8d 55 88          	lea    -0x78(%rbp),%rdx
1400163c0:	48 ff 15 69 4a 00 00 	rex.W call *0x4a69(%rip)        # 0x14001ae30
1400163c7:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400163cc:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
1400163d1:	8b d8                	mov    %eax,%ebx
1400163d3:	85 db                	test   %ebx,%ebx
1400163d5:	79 7e                	jns    0x140016455
1400163d7:	41 b9 01 00 00 00    	mov    $0x1,%r9d
1400163dd:	c6 44 24 60 01       	movb   $0x1,0x60(%rsp)
1400163e2:	4c 8d 44 24 60       	lea    0x60(%rsp),%r8
1400163e7:	c7 44 24 20 0d 00 00 	movl   $0xd,0x20(%rsp)
1400163ee:	00
1400163ef:	48 8d 55 88          	lea    -0x78(%rbp),%rdx
1400163f3:	48 ff 15 36 4a 00 00 	rex.W call *0x4a36(%rip)        # 0x14001ae30
1400163fa:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400163ff:	83 3d 12 1c 01 00 05 	cmpl   $0x5,0x11c12(%rip)        # 0x140028018
140016406:	76 48                	jbe    0x140016450
140016408:	e8 fb ab fe ff       	call   0x140001008
14001640d:	84 c0                	test   %al,%al
14001640f:	74 3f                	je     0x140016450
140016411:	b9 04 00 00 00       	mov    $0x4,%ecx
140016416:	89 5c 24 68          	mov    %ebx,0x68(%rsp)
14001641a:	48 8d 44 24 68       	lea    0x68(%rsp),%rax
14001641f:	48 89 4d 08          	mov    %rcx,0x8(%rbp)
140016423:	48 89 45 00          	mov    %rax,0x0(%rbp)
140016427:	48 8d 15 0b cf 00 00 	lea    0xcf0b(%rip),%rdx        # 0x140023339
14001642e:	48 8d 45 a0          	lea    -0x60(%rbp),%rax
140016432:	48 89 7d a0          	mov    %rdi,-0x60(%rbp)
140016436:	48 89 45 10          	mov    %rax,0x10(%rbp)
14001643a:	48 8d 45 e0          	lea    -0x20(%rbp),%rax
14001643e:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140016443:	89 4c 24 20          	mov    %ecx,0x20(%rsp)
140016447:	48 89 75 18          	mov    %rsi,0x18(%rbp)
14001644b:	e8 c4 ab fe ff       	call   0x140001014
140016450:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
140016455:	48 ff 15 14 49 00 00 	rex.W call *0x4914(%rip)        # 0x14001ad70
14001645c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016461:	4c 39 6c 24 78       	cmp    %r13,0x78(%rsp)
140016466:	74 23                	je     0x14001648b
140016468:	41 b9 00 80 00 00    	mov    $0x8000,%r9d
14001646e:	4c 89 6d 80          	mov    %r13,-0x80(%rbp)
140016472:	4c 8d 45 80          	lea    -0x80(%rbp),%r8
140016476:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
14001647a:	48 8d 54 24 78       	lea    0x78(%rsp),%rdx
14001647f:	48 ff 15 7a 4a 00 00 	rex.W call *0x4a7a(%rip)        # 0x14001af00
140016486:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14001648b:	8b c3                	mov    %ebx,%eax
14001648d:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
140016491:	48 33 cc             	xor    %rsp,%rcx
140016494:	e8 e7 84 ff ff       	call   0x14000e980
140016499:	48 8b 9c 24 88 01 00 	mov    0x188(%rsp),%rbx
1400164a0:	00
1400164a1:	48 81 c4 30 01 00 00 	add    $0x130,%rsp
1400164a8:	41 5f                	pop    %r15
1400164aa:	41 5e                	pop    %r14
1400164ac:	41 5d                	pop    %r13
1400164ae:	41 5c                	pop    %r12
1400164b0:	5f                   	pop    %rdi
1400164b1:	5e                   	pop    %rsi
1400164b2:	5d                   	pop    %rbp
1400164b3:	c3                   	ret
1400164b4:	cc                   	int3
1400164b5:	44 8b 05 ec 36 01 00 	mov    0x136ec(%rip),%r8d        # 0x140029ba8
1400164bc:	4c 8d 4d 88          	lea    -0x78(%rbp),%r9
1400164c0:	33 d2                	xor    %edx,%edx
1400164c2:	4c 89 6d b8          	mov    %r13,-0x48(%rbp)
1400164c6:	48 8b c7             	mov    %rdi,%rax
1400164c9:	c7 45 a8 30 00 00 00 	movl   $0x30,-0x58(%rbp)
1400164d0:	49 f7 f0             	div    %r8
1400164d3:	0f 57 c0             	xorps  %xmm0,%xmm0
1400164d6:	c7 45 c0 40 00 00 00 	movl   $0x40,-0x40(%rbp)
1400164dd:	48 85 d2             	test   %rdx,%rdx
1400164e0:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
1400164e5:	ba 00 00 15 c0       	mov    $0xc0150000,%edx
1400164ea:	45 0f 45 f8          	cmovne %r8d,%r15d
1400164ee:	48 83 65 b0 00       	andq   $0x0,-0x50(%rbp)
1400164f3:	45 33 ed             	xor    %r13d,%r13d
1400164f6:	4c 8d 45 a8          	lea    -0x58(%rbp),%r8
1400164fa:	44 89 6c 24 50       	mov    %r13d,0x50(%rsp)
1400164ff:	4c 89 6c 24 48       	mov    %r13,0x48(%rsp)
140016504:	c7 44 24 40 68 00 00 	movl   $0x68,0x40(%rsp)
14001650b:	00
14001650c:	44 89 6c 24 38       	mov    %r13d,0x38(%rsp)
140016511:	44 89 6c 24 30       	mov    %r13d,0x30(%rsp)
140016516:	c7 44 24 28 80 00 00 	movl   $0x80,0x28(%rsp)
14001651d:	00
14001651e:	4c 89 6c 24 20       	mov    %r13,0x20(%rsp)
140016523:	f3 0f 7f 45 c8       	movdqu %xmm0,-0x38(%rbp)
140016528:	48 ff 15 a1 49 00 00 	rex.W call *0x49a1(%rip)        # 0x14001aed0
14001652f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016534:	8b d8                	mov    %eax,%ebx
140016536:	85 c0                	test   %eax,%eax
140016538:	0f 88 47 fe ff ff    	js     0x140016385
14001653e:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
140016543:	e8 84 0d 00 00       	call   0x1400172cc
140016548:	8b d8                	mov    %eax,%ebx
14001654a:	85 c0                	test   %eax,%eax
14001654c:	0f 88 33 fe ff ff    	js     0x140016385
140016552:	41 8b f5             	mov    %r13d,%esi
140016555:	48 85 ff             	test   %rdi,%rdi
140016558:	0f 84 27 fe ff ff    	je     0x140016385
14001655e:	4c 89 6c 24 40       	mov    %r13,0x40(%rsp)
140016563:	48 8d 45 98          	lea    -0x68(%rbp),%rax
140016567:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14001656c:	45 33 c9             	xor    %r9d,%r9d
14001656f:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
140016574:	45 33 c0             	xor    %r8d,%r8d
140016577:	44 89 74 24 30       	mov    %r14d,0x30(%rsp)
14001657c:	33 d2                	xor    %edx,%edx
14001657e:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140016583:	49 8b cc             	mov    %r12,%rcx
140016586:	48 8d 45 88          	lea    -0x78(%rbp),%rax
14001658a:	48 89 75 98          	mov    %rsi,-0x68(%rbp)
14001658e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140016593:	48 ff 15 3e 49 00 00 	rex.W call *0x493e(%rip)        # 0x14001aed8
14001659a:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14001659f:	8b d8                	mov    %eax,%ebx
1400165a1:	85 c0                	test   %eax,%eax
1400165a3:	0f 88 dc fd ff ff    	js     0x140016385
1400165a9:	41 8b ce             	mov    %r14d,%ecx
1400165ac:	48 39 4d 90          	cmp    %rcx,-0x70(%rbp)
1400165b0:	74 25                	je     0x1400165d7
1400165b2:	48 8b c7             	mov    %rdi,%rax
1400165b5:	48 2b c6             	sub    %rsi,%rax
1400165b8:	48 3b c8             	cmp    %rax,%rcx