140680fd1:	85 c0                	test   %eax,%eax
140680fd3:	7f 18                	jg     0x140680fed
140680fd5:	0f 88 b2 00 00 00    	js     0x14068108d
140680fdb:	48 8b 01             	mov    (%rcx),%rax
140680fde:	ba 01 00 00 00       	mov    $0x1,%edx
140680fe3:	48 8b 00             	mov    (%rax),%rax
140680fe6:	ff 15 34 2a 90 00    	call   *0x902a34(%rip)        # 0x140f83a20
140680fec:	90                   	nop
140680fed:	48 83 c3 08          	add    $0x8,%rbx
140680ff1:	48 3b df             	cmp    %rdi,%rbx
140680ff4:	75 cb                	jne    0x140680fc1
140680ff6:	48 8b 06             	mov    (%rsi),%rax
140680ff9:	48 89 46 08          	mov    %rax,0x8(%rsi)
140680ffd:	48 8b 4e 20          	mov    0x20(%rsi),%rcx
140681001:	48 8b 56 28          	mov    0x28(%rsi),%rdx
140681005:	48 3b ca             	cmp    %rdx,%rcx
140681008:	74 11                	je     0x14068101b
14068100a:	4c 8d 46 20          	lea    0x20(%rsi),%r8
14068100e:	e8 8d ec ff ff       	call   0x14067fca0
140681013:	48 8b 46 20          	mov    0x20(%rsi),%rax
140681017:	48 89 46 28          	mov    %rax,0x28(%rsi)
14068101b:	48 8b 5e 38          	mov    0x38(%rsi),%rbx
14068101f:	4c 8b 43 08          	mov    0x8(%rbx),%r8
140681023:	48 8d 56 38          	lea    0x38(%rsi),%rdx
140681027:	48 8d 4e 38          	lea    0x38(%rsi),%rcx
14068102b:	e8 40 f5 ff ff       	call   0x140680570
140681030:	48 89 5b 08          	mov    %rbx,0x8(%rbx)
140681034:	48 89 1b             	mov    %rbx,(%rbx)
140681037:	48 89 5b 10          	mov    %rbx,0x10(%rbx)
14068103b:	48 c7 46 40 00 00 00 	movq   $0x0,0x40(%rsi)
140681042:	00
140681043:	48 8b 46 48          	mov    0x48(%rsi),%rax
140681047:	48 3b 46 50          	cmp    0x50(%rsi),%rax
14068104b:	74 04                	je     0x140681051
14068104d:	48 89 46 50          	mov    %rax,0x50(%rsi)
140681051:	48 8b 0d 58 f0 da 00 	mov    0xdaf058(%rip),%rcx        # 0x1414300b0
140681058:	48 85 c9             	test   %rcx,%rcx
14068105b:	74 18                	je     0x140681075
14068105d:	48 8b 86 88 00 00 00 	mov    0x88(%rsi),%rax
140681064:	48 8b 50 28          	mov    0x28(%rax),%rdx
140681068:	e8 73 94 1e 00       	call   0x14086a4e0
14068106d:	84 c0                	test   %al,%al
14068106f:	74 04                	je     0x140681075
140681071:	b0 01                	mov    $0x1,%al
140681073:	eb 02                	jmp    0x140681077
140681075:	32 c0                	xor    %al,%al
140681077:	88 86 90 00 00 00    	mov    %al,0x90(%rsi)
14068107d:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140681082:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140681087:	48 83 c4 20          	add    $0x20,%rsp
14068108b:	5f                   	pop    %rdi
14068108c:	c3                   	ret
14068108d:	b9 02 00 00 00       	mov    $0x2,%ecx
140681092:	e8 69 96 10 00       	call   0x14078a700
140681097:	cc                   	int3
140681098:	cc                   	int3
140681099:	cc                   	int3
14068109a:	cc                   	int3
14068109b:	cc                   	int3
14068109c:	cc                   	int3
14068109d:	cc                   	int3
14068109e:	cc                   	int3
14068109f:	cc                   	int3
1406810a0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1406810a5:	55                   	push   %rbp
1406810a6:	56                   	push   %rsi
1406810a7:	57                   	push   %rdi
1406810a8:	41 54                	push   %r12
1406810aa:	41 55                	push   %r13
1406810ac:	41 56                	push   %r14
1406810ae:	41 57                	push   %r15
1406810b0:	48 8d 6c 24 d9       	lea    -0x27(%rsp),%rbp
1406810b5:	48 81 ec c0 00 00 00 	sub    $0xc0,%rsp
1406810bc:	48 8b 05 3d 7e d3 00 	mov    0xd37e3d(%rip),%rax        # 0x1413b8f00
1406810c3:	48 33 c4             	xor    %rsp,%rax
1406810c6:	48 89 45 17          	mov    %rax,0x17(%rbp)
1406810ca:	41 0f b6 f8          	movzbl %r8b,%edi
1406810ce:	48 8b da             	mov    %rdx,%rbx
1406810d1:	4c 8b f1             	mov    %rcx,%r14
1406810d4:	48 89 4d bf          	mov    %rcx,-0x41(%rbp)
1406810d8:	48 8b 42 38          	mov    0x38(%rdx),%rax
1406810dc:	8b 30                	mov    (%rax),%esi
1406810de:	89 75 af             	mov    %esi,-0x51(%rbp)
1406810e1:	89 75 d3             	mov    %esi,-0x2d(%rbp)
1406810e4:	48 8b 41 50          	mov    0x50(%rcx),%rax
1406810e8:	48 8b 48 f8          	mov    -0x8(%rax),%rcx
1406810ec:	48 89 4d c7          	mov    %rcx,-0x39(%rbp)
1406810f0:	49 8d 4e 38          	lea    0x38(%r14),%rcx
1406810f4:	48 8d 55 c7          	lea    -0x39(%rbp),%rdx
1406810f8:	e8 f3 f6 ff ff       	call   0x1406807f0
1406810fd:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
140681101:	48 8b 4d c7          	mov    -0x39(%rbp),%rcx
140681105:	4c 8b 41 38          	mov    0x38(%rcx),%r8
140681109:	45 8b 18             	mov    (%r8),%r11d
14068110c:	44 89 5d ab          	mov    %r11d,-0x55(%rbp)
140681110:	45 8b 78 04          	mov    0x4(%r8),%r15d
140681114:	44 89 7d cf          	mov    %r15d,-0x31(%rbp)
140681118:	41 80 be 90 00 00 00 	cmpb   $0x0,0x90(%r14)
14068111f:	00
140681120:	74 7d                	je     0x14068119f
140681122:	48 8b d3             	mov    %rbx,%rdx
140681125:	48 8d 4d f7          	lea    -0x9(%rbp),%rcx
140681129:	e8 92 3b 1a 00       	call   0x140824cc0
14068112e:	48 83 78 18 0f       	cmpq   $0xf,0x18(%rax)
140681133:	76 03                	jbe    0x140681138
140681135:	48 8b 00             	mov    (%rax),%rax
140681138:	44 8b c7             	mov    %edi,%r8d
14068113b:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140681140:	89 74 24 28          	mov    %esi,0x28(%rsp)
140681144:	44 89 7c 24 20       	mov    %r15d,0x20(%rsp)
140681149:	44 8b 4d ab          	mov    -0x55(%rbp),%r9d
14068114d:	48 8b 15 5c ef da 00 	mov    0xdaef5c(%rip),%rdx        # 0x1414300b0
140681154:	48 8d 0d b5 91 99 00 	lea    0x9991b5(%rip),%rcx        # 0x14101a310
14068115b:	e8 e0 66 f3 ff       	call   0x1405b7840
140681160:	48 8b 55 0f          	mov    0xf(%rbp),%rdx
140681164:	48 83 fa 0f          	cmp    $0xf,%rdx
140681168:	76 31                	jbe    0x14068119b
14068116a:	48 ff c2             	inc    %rdx
14068116d:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
140681171:	48 8b c1             	mov    %rcx,%rax
140681174:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14068117b:	72 19                	jb     0x140681196
14068117d:	48 83 c2 27          	add    $0x27,%rdx
140681181:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140681185:	48 2b c1             	sub    %rcx,%rax
140681188:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14068118c:	48 83 f8 1f          	cmp    $0x1f,%rax
140681190:	0f 87 ca 04 00 00    	ja     0x140681660
140681196:	e8 a9 9f 79 00       	call   0x140e1b144
14068119b:	44 8b 5d ab          	mov    -0x55(%rbp),%r11d
14068119f:	49 8b 4e 60          	mov    0x60(%r14),%rcx
1406811a3:	49 8b 56 78          	mov    0x78(%r14),%rdx
1406811a7:	48 85 d2             	test   %rdx,%rdx
1406811aa:	79 1f                	jns    0x1406811cb
1406811ac:	48 8b c2             	mov    %rdx,%rax
1406811af:	48 f7 d8             	neg    %rax
1406811b2:	74 17                	je     0x1406811cb
1406811b4:	48 8b c2             	mov    %rdx,%rax
1406811b7:	48 f7 d0             	not    %rax
1406811ba:	48 c1 e8 05          	shr    $0x5,%rax
1406811be:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
1406811c5:	00
1406811c6:	48 2b c8             	sub    %rax,%rcx
1406811c9:	eb 0b                	jmp    0x1406811d6
1406811cb:	48 8b c2             	mov    %rdx,%rax
1406811ce:	48 c1 e8 05          	shr    $0x5,%rax
1406811d2:	48 8d 0c 81          	lea    (%rcx,%rax,4),%rcx
1406811d6:	41 bf 1f 00 00 00    	mov    $0x1f,%r15d
1406811dc:	41 8b c7             	mov    %r15d,%eax
1406811df:	48 23 c2             	and    %rdx,%rax
1406811e2:	48 8d 50 ff          	lea    -0x1(%rax),%rdx
1406811e6:	48 83 f8 01          	cmp    $0x1,%rax
1406811ea:	48 8b c2             	mov    %rdx,%rax
1406811ed:	73 14                	jae    0x140681203
1406811ef:	48 f7 d0             	not    %rax
1406811f2:	48 c1 e8 05          	shr    $0x5,%rax
1406811f6:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
1406811fd:	00
1406811fe:	48 2b c8             	sub    %rax,%rcx
140681201:	eb 08                	jmp    0x14068120b
140681203:	48 c1 e8 05          	shr    $0x5,%rax
140681207:	48 8d 0c 81          	lea    (%rcx,%rax,4),%rcx
14068120b:	0f b6 c2             	movzbl %dl,%eax
14068120e:	24 1f                	and    $0x1f,%al
140681210:	0f b6 d0             	movzbl %al,%edx
140681213:	8b 09                	mov    (%rcx),%ecx
140681215:	45 33 c0             	xor    %r8d,%r8d
140681218:	0f a3 d1             	bt     %edx,%ecx
14068121b:	44 0f 43 c7          	cmovae %edi,%r8d
14068121f:	44 89 45 b7          	mov    %r8d,-0x49(%rbp)
140681223:	45 32 f6             	xor    %r14b,%r14b
140681226:	44 88 75 a8          	mov    %r14b,-0x58(%rbp)
14068122a:	c6 45 a7 01          	movb   $0x1,-0x59(%rbp)
14068122e:	45 32 c9             	xor    %r9b,%r9b
140681231:	be ff ff ff ff       	mov    $0xffffffff,%esi
140681236:	89 75 b3             	mov    %esi,-0x4d(%rbp)
140681239:	33 db                	xor    %ebx,%ebx
14068123b:	48 89 5d e7          	mov    %rbx,-0x19(%rbp)
14068123f:	45 32 e4             	xor    %r12b,%r12b
140681242:	45 33 ed             	xor    %r13d,%r13d
140681245:	33 ff                	xor    %edi,%edi
140681247:	4c 8b 55 bf          	mov    -0x41(%rbp),%r10
14068124b:	49 83 c2 20          	add    $0x20,%r10
14068124f:	4c 89 55 f7          	mov    %r10,-0x9(%rbp)
140681253:	49 8b 52 08          	mov    0x8(%r10),%rdx
140681257:	49 8b 0a             	mov    (%r10),%rcx
14068125a:	48 8b c2             	mov    %rdx,%rax
14068125d:	48 2b c1             	sub    %rcx,%rax
140681260:	48 c1 f8 05          	sar    $0x5,%rax
140681264:	48 85 c0             	test   %rax,%rax
140681267:	0f 84 7d 01 00 00    	je     0x1406813ea
14068126d:	33 d2                	xor    %edx,%edx
14068126f:	90                   	nop
140681270:	48 c1 e2 05          	shl    $0x5,%rdx
140681274:	48 03 d1             	add    %rcx,%rdx
140681277:	8b 45 cf             	mov    -0x31(%rbp),%eax
14068127a:	39 42 08             	cmp    %eax,0x8(%rdx)
14068127d:	0f 8c 22 01 00 00    	jl     0x1406813a5
140681283:	8b 42 04             	mov    0x4(%rdx),%eax
140681286:	83 f8 ff             	cmp    $0xffffffff,%eax
140681289:	75 3e                	jne    0x1406812c9
14068128b:	8b 45 af             	mov    -0x51(%rbp),%eax
14068128e:	89 42 04             	mov    %eax,0x4(%rdx)
140681291:	44 39 1a             	cmp    %r11d,(%rdx)
140681294:	7f 77                	jg     0x14068130d
140681296:	45 84 c0             	test   %r8b,%r8b
140681299:	74 72                	je     0x14068130d
14068129b:	48 8b 45 d7          	mov    -0x29(%rbp),%rax
14068129f:	48 8b 08             	mov    (%rax),%rcx
1406812a2:	48 8b 41 08          	mov    0x8(%rcx),%rax
1406812a6:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406812aa:	75 4e                	jne    0x1406812fa
1406812ac:	0f 1f 40 00          	nopl   0x0(%rax)
1406812b0:	39 78 1c             	cmp    %edi,0x1c(%rax)
1406812b3:	7d 06                	jge    0x1406812bb
1406812b5:	48 8b 40 10          	mov    0x10(%rax),%rax
1406812b9:	eb 06                	jmp    0x1406812c1
1406812bb:	48 8b c8             	mov    %rax,%rcx
1406812be:	48 8b 00             	mov    (%rax),%rax
1406812c1:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406812c5:	74 e9                	je     0x1406812b0
1406812c7:	eb 31                	jmp    0x1406812fa
1406812c9:	41 3b c3             	cmp    %r11d,%eax
1406812cc:	0f 8c d3 00 00 00    	jl     0x1406813a5
1406812d2:	48 8b 45 d7          	mov    -0x29(%rbp),%rax
1406812d6:	48 8b 08             	mov    (%rax),%rcx
1406812d9:	48 8b 41 08          	mov    0x8(%rcx),%rax
1406812dd:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406812e1:	75 17                	jne    0x1406812fa
1406812e3:	39 78 1c             	cmp    %edi,0x1c(%rax)
1406812e6:	7d 06                	jge    0x1406812ee
1406812e8:	48 8b 40 10          	mov    0x10(%rax),%rax
1406812ec:	eb 06                	jmp    0x1406812f4
1406812ee:	48 8b c8             	mov    %rax,%rcx
1406812f1:	48 8b 00             	mov    (%rax),%rax
1406812f4:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
1406812f8:	74 e9                	je     0x1406812e3
1406812fa:	80 79 19 00          	cmpb   $0x0,0x19(%rcx)
1406812fe:	0f 85 a1 00 00 00    	jne    0x1406813a5
140681304:	3b 79 1c             	cmp    0x1c(%rcx),%edi
140681307:	0f 8c 98 00 00 00    	jl     0x1406813a5
14068130d:	41 ff c5             	inc    %r13d
140681310:	45 84 f6             	test   %r14b,%r14b
140681313:	75 06                	jne    0x14068131b
140681315:	44 38 72 0c          	cmp    %r14b,0xc(%rdx)
140681319:	74 03                	je     0x14068131e
14068131b:	41 b6 01             	mov    $0x1,%r14b
14068131e:	44 88 75 a8          	mov    %r14b,-0x58(%rbp)
140681322:	8b 42 10             	mov    0x10(%rdx),%eax
140681325:	83 f8 ff             	cmp    $0xffffffff,%eax
140681328:	75 06                	jne    0x140681330
14068132a:	c6 45 a7 00          	movb   $0x0,-0x59(%rbp)
14068132e:	eb 75                	jmp    0x1406813a5
140681330:	45 84 c9             	test   %r9b,%r9b
140681333:	74 09                	je     0x14068133e
140681335:	3b f0                	cmp    %eax,%esi
140681337:	74 6c                	je     0x1406813a5
140681339:	41 b4 01             	mov    $0x1,%r12b
14068133c:	eb 67                	jmp    0x1406813a5
14068133e:	8b f0                	mov    %eax,%esi
140681340:	89 45 b3             	mov    %eax,-0x4d(%rbp)
140681343:	48 8b 52 18          	mov    0x18(%rdx),%rdx
140681347:	48 85 d2             	test   %rdx,%rdx
14068134a:	74 1c                	je     0x140681368
14068134c:	8b 42 10             	mov    0x10(%rdx),%eax
14068134f:	ff c0                	inc    %eax
140681351:	89 42 10             	mov    %eax,0x10(%rdx)
140681354:	83 f8 01             	cmp    $0x1,%eax
140681357:	0f 8e 14 03 00 00    	jle    0x140681671
14068135d:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140681362:	0f 84 fe 02 00 00    	je     0x140681666
140681368:	48 8b cb             	mov    %rbx,%rcx
14068136b:	48 8b da             	mov    %rdx,%rbx
14068136e:	48 89 55 e7          	mov    %rdx,-0x19(%rbp)
140681372:	48 85 c9             	test   %rcx,%rcx
140681375:	74 2b                	je     0x1406813a2
140681377:	8b 41 10             	mov    0x10(%rcx),%eax
14068137a:	ff c8                	dec    %eax
14068137c:	89 41 10             	mov    %eax,0x10(%rcx)
14068137f:	85 c0                	test   %eax,%eax
140681381:	7f 1f                	jg     0x1406813a2
140681383:	0f 88 f0 02 00 00    	js     0x140681679
140681389:	48 8b 01             	mov    (%rcx),%rax
14068138c:	ba 01 00 00 00       	mov    $0x1,%edx
140681391:	48 8b 00             	mov    (%rax),%rax
140681394:	ff 15 86 26 90 00    	call   *0x902686(%rip)        # 0x140f83a20
14068139a:	4c 8b 55 f7          	mov    -0x9(%rbp),%r10
14068139e:	44 8b 5d ab          	mov    -0x55(%rbp),%r11d
1406813a2:	41 b1 01             	mov    $0x1,%r9b
1406813a5:	ff c7                	inc    %edi
1406813a7:	4d 8b 42 08          	mov    0x8(%r10),%r8
1406813ab:	49 8b 0a             	mov    (%r10),%rcx
1406813ae:	8b d7                	mov    %edi,%edx
1406813b0:	49 8b c0             	mov    %r8,%rax
1406813b3:	48 2b c1             	sub    %rcx,%rax
1406813b6:	48 c1 f8 05          	sar    $0x5,%rax
1406813ba:	48 3b d0             	cmp    %rax,%rdx
1406813bd:	73 09                	jae    0x1406813c8
1406813bf:	44 8b 45 b7          	mov    -0x49(%rbp),%r8d
1406813c3:	e9 a8 fe ff ff       	jmp    0x140681270
1406813c8:	49 8b d0             	mov    %r8,%rdx
1406813cb:	33 c9                	xor    %ecx,%ecx
1406813cd:	0f b6 45 a7          	movzbl -0x59(%rbp),%eax
1406813d1:	45 85 ed             	test   %r13d,%r13d
1406813d4:	0f 45 c8             	cmovne %eax,%ecx
1406813d7:	84 c9                	test   %cl,%cl
1406813d9:	74 0f                	je     0x1406813ea
1406813db:	44 8b 4d af          	mov    -0x51(%rbp),%r9d
1406813df:	45 84 e4             	test   %r12b,%r12b
1406813e2:	74 15                	je     0x1406813f9
1406813e4:	41 8d 71 01          	lea    0x1(%r9),%esi
1406813e8:	eb 0c                	jmp    0x1406813f6
1406813ea:	be ff ff ff ff       	mov    $0xffffffff,%esi
1406813ef:	45 32 e4             	xor    %r12b,%r12b
1406813f2:	44 8b 4d af          	mov    -0x51(%rbp),%r9d
1406813f6:	89 75 b3             	mov    %esi,-0x4d(%rbp)
1406813f9:	48 8b 45 c7          	mov    -0x39(%rbp),%rax
1406813fd:	48 8b 48 38          	mov    0x38(%rax),%rcx
140681401:	8b 41 04             	mov    0x4(%rcx),%eax
140681404:	89 45 b7             	mov    %eax,-0x49(%rbp)
140681407:	49 3b 52 10          	cmp    0x10(%r10),%rdx
14068140b:	74 33                	je     0x140681440
14068140d:	c7 42 04 ff ff ff ff 	movl   $0xffffffff,0x4(%rdx)
140681414:	48 c7 42 18 00 00 00 	movq   $0x0,0x18(%rdx)
14068141b:	00
14068141c:	44 89 0a             	mov    %r9d,(%rdx)
14068141f:	89 42 08             	mov    %eax,0x8(%rdx)
140681422:	41 0f b6 c6          	movzbl %r14b,%eax
140681426:	83 fe ff             	cmp    $0xffffffff,%esi
140681429:	41 be 01 00 00 00    	mov    $0x1,%r14d
14068142f:	41 0f 45 c6          	cmovne %r14d,%eax
140681433:	88 42 0c             	mov    %al,0xc(%rdx)
140681436:	89 72 10             	mov    %esi,0x10(%rdx)
140681439:	49 83 42 08 20       	addq   $0x20,0x8(%r10)
14068143e:	eb 28                	jmp    0x140681468
140681440:	48 8d 45 b3          	lea    -0x4d(%rbp),%rax
140681444:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140681449:	48 8d 45 a8          	lea    -0x58(%rbp),%rax
14068144d:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140681452:	4c 8d 4d b7          	lea    -0x49(%rbp),%r9
140681456:	4c 8d 45 d3          	lea    -0x2d(%rbp),%r8
14068145a:	49 8b ca             	mov    %r10,%rcx
14068145d:	e8 fe e8 ff ff       	call   0x14067fd60
140681462:	41 be 01 00 00 00    	mov    $0x1,%r14d
140681468:	48 8b 7d bf          	mov    -0x41(%rbp),%rdi
14068146c:	83 fe ff             	cmp    $0xffffffff,%esi
14068146f:	74 66                	je     0x1406814d7
140681471:	45 84 e4             	test   %r12b,%r12b
140681474:	75 61                	jne    0x1406814d7
140681476:	48 8b 4f 28          	mov    0x28(%rdi),%rcx