1406aff51:	48 8b 0f             	mov    (%rdi),%rcx
1406aff54:	4e 63 04 a9          	movslq (%rcx,%r13,4),%r8
1406aff58:	41 ff c5             	inc    %r13d
1406aff5b:	49 8b 4c 24 28       	mov    0x28(%r12),%rcx
1406aff60:	48 8b 09             	mov    (%rcx),%rcx
1406aff63:	4e 8b 34 c1          	mov    (%rcx,%r8,8),%r14
1406aff67:	4c 89 75 e8          	mov    %r14,-0x18(%rbp)
1406aff6b:	4d 85 f6             	test   %r14,%r14
1406aff6e:	74 1e                	je     0x1406aff8e
1406aff70:	41 8b 46 10          	mov    0x10(%r14),%eax
1406aff74:	ff c0                	inc    %eax
1406aff76:	41 89 46 10          	mov    %eax,0x10(%r14)
1406aff7a:	83 f8 01             	cmp    $0x1,%eax
1406aff7d:	0f 8e 20 02 00 00    	jle    0x1406b01a3
1406aff83:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406aff88:	0f 84 0a 02 00 00    	je     0x1406b0198
1406aff8e:	48 8b 07             	mov    (%rdi),%rax
1406aff91:	4a 63 14 a8          	movslq (%rax,%r13,4),%rdx
1406aff95:	41 ff c5             	inc    %r13d
1406aff98:	33 db                	xor    %ebx,%ebx
1406aff9a:	48 89 5d c8          	mov    %rbx,-0x38(%rbp)
1406aff9e:	33 ff                	xor    %edi,%edi
1406affa0:	33 f6                	xor    %esi,%esi
1406affa2:	85 d2                	test   %edx,%edx
1406affa4:	78 37                	js     0x1406affdd
1406affa6:	49 8b 5c 24 30       	mov    0x30(%r12),%rbx
1406affab:	48 8b 1b             	mov    (%rbx),%rbx
1406affae:	48 8b 1c d3          	mov    (%rbx,%rdx,8),%rbx
1406affb2:	48 85 db             	test   %rbx,%rbx
1406affb5:	74 1c                	je     0x1406affd3
1406affb7:	8b 43 10             	mov    0x10(%rbx),%eax
1406affba:	ff c0                	inc    %eax
1406affbc:	89 43 10             	mov    %eax,0x10(%rbx)
1406affbf:	83 f8 01             	cmp    $0x1,%eax
1406affc2:	0f 8e ee 01 00 00    	jle    0x1406b01b6
1406affc8:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406affcd:	0f 84 d8 01 00 00    	je     0x1406b01ab
1406affd3:	48 8b fb             	mov    %rbx,%rdi
1406affd6:	48 89 5d c8          	mov    %rbx,-0x38(%rbp)
1406affda:	48 8b f3             	mov    %rbx,%rsi
1406affdd:	b9 18 00 00 00       	mov    $0x18,%ecx
1406affe2:	e8 21 b1 76 00       	call   0x140e1b108
1406affe7:	48 8b c8             	mov    %rax,%rcx
1406affea:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
1406affee:	48 85 c0             	test   %rax,%rax
1406afff1:	74 61                	je     0x1406b0054
1406afff3:	48 89 5d 48          	mov    %rbx,0x48(%rbp)
1406afff7:	48 85 ff             	test   %rdi,%rdi
1406afffa:	74 1c                	je     0x1406b0018
1406afffc:	8b 46 10             	mov    0x10(%rsi),%eax
1406affff:	ff c0                	inc    %eax
1406b0001:	89 46 10             	mov    %eax,0x10(%rsi)
1406b0004:	83 f8 01             	cmp    $0x1,%eax
1406b0007:	0f 8e bc 01 00 00    	jle    0x1406b01c9
1406b000d:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b0012:	0f 84 a6 01 00 00    	je     0x1406b01be
1406b0018:	4c 89 75 b8          	mov    %r14,-0x48(%rbp)
1406b001c:	4d 85 f6             	test   %r14,%r14
1406b001f:	74 1e                	je     0x1406b003f
1406b0021:	41 8b 46 10          	mov    0x10(%r14),%eax
1406b0025:	ff c0                	inc    %eax
1406b0027:	41 89 46 10          	mov    %eax,0x10(%r14)
1406b002b:	83 f8 01             	cmp    $0x1,%eax
1406b002e:	0f 8e a8 01 00 00    	jle    0x1406b01dc
1406b0034:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b0039:	0f 84 92 01 00 00    	je     0x1406b01d1
1406b003f:	4c 8d 4d 48          	lea    0x48(%rbp),%r9
1406b0043:	4c 8d 45 b8          	lea    -0x48(%rbp),%r8
1406b0047:	49 8b d7             	mov    %r15,%rdx
1406b004a:	e8 b1 83 09 00       	call   0x140748400
1406b004f:	4c 8b e0             	mov    %rax,%r12
1406b0052:	eb 03                	jmp    0x1406b0057
1406b0054:	45 33 e4             	xor    %r12d,%r12d
1406b0057:	8b 45 b4             	mov    -0x4c(%rbp),%eax
1406b005a:	8b 4d b0             	mov    -0x50(%rbp),%ecx
1406b005d:	3b c1                	cmp    %ecx,%eax
1406b005f:	75 68                	jne    0x1406b00c9
1406b0061:	85 c9                	test   %ecx,%ecx
1406b0063:	44 8d 3c 09          	lea    (%rcx,%rcx,1),%r15d
1406b0067:	75 06                	jne    0x1406b006f
1406b0069:	41 bf 0a 00 00 00    	mov    $0xa,%r15d
1406b006f:	44 3b f8             	cmp    %eax,%r15d
1406b0072:	44 0f 4c f8          	cmovl  %eax,%r15d
1406b0076:	44 3b f9             	cmp    %ecx,%r15d
1406b0079:	74 4e                	je     0x1406b00c9
1406b007b:	49 63 ff             	movslq %r15d,%rdi
1406b007e:	48 c1 e7 03          	shl    $0x3,%rdi
1406b0082:	48 8b d7             	mov    %rdi,%rdx
1406b0085:	48 8b 4d a8          	mov    -0x58(%rbp),%rcx
1406b0089:	e8 1a 11 78 00       	call   0x140e311a8
1406b008e:	48 8b f0             	mov    %rax,%rsi
1406b0091:	48 85 ff             	test   %rdi,%rdi
1406b0094:	74 21                	je     0x1406b00b7
1406b0096:	48 85 c0             	test   %rax,%rax
1406b0099:	75 1c                	jne    0x1406b00b7
1406b009b:	48 8d 0d c6 4a 95 00 	lea    0x954ac6(%rip),%rcx        # 0x141004b68
1406b00a2:	e8 79 b4 1b 00       	call   0x14086b520
1406b00a7:	48 89 75 a8          	mov    %rsi,-0x58(%rbp)
1406b00ab:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%rbp)
1406b00b2:	8b 45 b4             	mov    -0x4c(%rbp),%eax
1406b00b5:	eb 16                	jmp    0x1406b00cd
1406b00b7:	48 89 75 a8          	mov    %rsi,-0x58(%rbp)
1406b00bb:	48 85 f6             	test   %rsi,%rsi
1406b00be:	74 eb                	je     0x1406b00ab
1406b00c0:	44 89 7d b0          	mov    %r15d,-0x50(%rbp)
1406b00c4:	8b 45 b4             	mov    -0x4c(%rbp),%eax
1406b00c7:	eb 04                	jmp    0x1406b00cd
1406b00c9:	48 8b 75 a8          	mov    -0x58(%rbp),%rsi
1406b00cd:	48 98                	cltq
1406b00cf:	4c 89 24 c6          	mov    %r12,(%rsi,%rax,8)
1406b00d3:	ff 45 b4             	incl   -0x4c(%rbp)
1406b00d6:	48 85 db             	test   %rbx,%rbx
1406b00d9:	74 27                	je     0x1406b0102
1406b00db:	8b 43 10             	mov    0x10(%rbx),%eax
1406b00de:	ff c8                	dec    %eax
1406b00e0:	89 43 10             	mov    %eax,0x10(%rbx)
1406b00e3:	85 c0                	test   %eax,%eax
1406b00e5:	7f 1b                	jg     0x1406b0102
1406b00e7:	0f 88 f7 00 00 00    	js     0x1406b01e4
1406b00ed:	48 8b 03             	mov    (%rbx),%rax
1406b00f0:	ba 01 00 00 00       	mov    $0x1,%edx
1406b00f5:	48 8b cb             	mov    %rbx,%rcx
1406b00f8:	48 8b 00             	mov    (%rax),%rax
1406b00fb:	ff 15 1f 39 8d 00    	call   *0x8d391f(%rip)        # 0x140f83a20
1406b0101:	90                   	nop
1406b0102:	4d 85 f6             	test   %r14,%r14
1406b0105:	74 25                	je     0x1406b012c
1406b0107:	41 8b 46 10          	mov    0x10(%r14),%eax
1406b010b:	ff c8                	dec    %eax
1406b010d:	41 89 46 10          	mov    %eax,0x10(%r14)
1406b0111:	85 c0                	test   %eax,%eax
1406b0113:	7f 17                	jg     0x1406b012c
1406b0115:	78 63                	js     0x1406b017a
1406b0117:	49 8b 06             	mov    (%r14),%rax
1406b011a:	ba 01 00 00 00       	mov    $0x1,%edx
1406b011f:	49 8b ce             	mov    %r14,%rcx
1406b0122:	48 8b 00             	mov    (%rax),%rax
1406b0125:	ff 15 f5 38 8d 00    	call   *0x8d38f5(%rip)        # 0x140f83a20
1406b012b:	90                   	nop
1406b012c:	41 8b c5             	mov    %r13d,%eax
1406b012f:	48 3b 45 d0          	cmp    -0x30(%rbp),%rax
1406b0133:	73 0d                	jae    0x1406b0142
1406b0135:	48 8b 7d 60          	mov    0x60(%rbp),%rdi
1406b0139:	4c 8b 65 58          	mov    0x58(%rbp),%r12
1406b013d:	e9 ee fd ff ff       	jmp    0x1406aff30
1406b0142:	48 8b 5d d8          	mov    -0x28(%rbp),%rbx
1406b0146:	48 8b 75 50          	mov    0x50(%rbp),%rsi
1406b014a:	45 33 c0             	xor    %r8d,%r8d
1406b014d:	48 8d 55 a8          	lea    -0x58(%rbp),%rdx
1406b0151:	48 8b cb             	mov    %rbx,%rcx
1406b0154:	e8 97 99 09 00       	call   0x140749af0
1406b0159:	90                   	nop
1406b015a:	48 8b 4d a8          	mov    -0x58(%rbp),%rcx
1406b015e:	e8 2d 0f 78 00       	call   0x140e31090
1406b0163:	48 89 1e             	mov    %rbx,(%rsi)
1406b0166:	48 8b c6             	mov    %rsi,%rax
1406b0169:	48 83 c4 78          	add    $0x78,%rsp
1406b016d:	41 5f                	pop    %r15
1406b016f:	41 5e                	pop    %r14
1406b0171:	41 5d                	pop    %r13
1406b0173:	41 5c                	pop    %r12
1406b0175:	5f                   	pop    %rdi
1406b0176:	5e                   	pop    %rsi
1406b0177:	5b                   	pop    %rbx
1406b0178:	5d                   	pop    %rbp
1406b0179:	c3                   	ret
1406b017a:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b017f:	e8 7c a5 0d 00       	call   0x14078a700
1406b0184:	90                   	nop
1406b0185:	33 c9                	xor    %ecx,%ecx
1406b0187:	e8 74 a5 0d 00       	call   0x14078a700
1406b018c:	cc                   	int3
1406b018d:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b0192:	e8 69 a5 0d 00       	call   0x14078a700
1406b0197:	90                   	nop
1406b0198:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b019d:	e8 5e a5 0d 00       	call   0x14078a700
1406b01a2:	cc                   	int3
1406b01a3:	33 c9                	xor    %ecx,%ecx
1406b01a5:	e8 56 a5 0d 00       	call   0x14078a700
1406b01aa:	90                   	nop
1406b01ab:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b01b0:	e8 4b a5 0d 00       	call   0x14078a700
1406b01b5:	cc                   	int3
1406b01b6:	33 c9                	xor    %ecx,%ecx
1406b01b8:	e8 43 a5 0d 00       	call   0x14078a700
1406b01bd:	90                   	nop
1406b01be:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b01c3:	e8 38 a5 0d 00       	call   0x14078a700
1406b01c8:	cc                   	int3
1406b01c9:	33 c9                	xor    %ecx,%ecx
1406b01cb:	e8 30 a5 0d 00       	call   0x14078a700
1406b01d0:	90                   	nop
1406b01d1:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b01d6:	e8 25 a5 0d 00       	call   0x14078a700
1406b01db:	cc                   	int3
1406b01dc:	33 c9                	xor    %ecx,%ecx
1406b01de:	e8 1d a5 0d 00       	call   0x14078a700
1406b01e3:	90                   	nop
1406b01e4:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b01e9:	e8 12 a5 0d 00       	call   0x14078a700
1406b01ee:	cc                   	int3
1406b01ef:	cc                   	int3
1406b01f0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1406b01f5:	55                   	push   %rbp
1406b01f6:	56                   	push   %rsi
1406b01f7:	57                   	push   %rdi
1406b01f8:	41 56                	push   %r14
1406b01fa:	41 57                	push   %r15
1406b01fc:	48 83 ec 40          	sub    $0x40,%rsp
1406b0200:	4c 8b fa             	mov    %rdx,%r15
1406b0203:	45 33 f6             	xor    %r14d,%r14d
1406b0206:	44 89 74 24 20       	mov    %r14d,0x20(%rsp)
1406b020b:	4d 8b 50 28          	mov    0x28(%r8),%r10
1406b020f:	49 8b 01             	mov    (%r9),%rax
1406b0212:	48 63 48 04          	movslq 0x4(%rax),%rcx
1406b0216:	49 8b 02             	mov    (%r10),%rax
1406b0219:	48 8b 34 c8          	mov    (%rax,%rcx,8),%rsi
1406b021d:	48 85 f6             	test   %rsi,%rsi
1406b0220:	74 1c                	je     0x1406b023e
1406b0222:	8b 46 10             	mov    0x10(%rsi),%eax
1406b0225:	ff c0                	inc    %eax
1406b0227:	89 46 10             	mov    %eax,0x10(%rsi)
1406b022a:	83 f8 01             	cmp    $0x1,%eax
1406b022d:	0f 8e ed 01 00 00    	jle    0x1406b0420
1406b0233:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b0238:	0f 84 ea 01 00 00    	je     0x1406b0428
1406b023e:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
1406b0243:	49 8b 01             	mov    (%r9),%rax
1406b0246:	48 63 48 08          	movslq 0x8(%rax),%rcx
1406b024a:	85 c9                	test   %ecx,%ecx
1406b024c:	78 3e                	js     0x1406b028c
1406b024e:	49 8b 78 28          	mov    0x28(%r8),%rdi
1406b0252:	48 8b 3f             	mov    (%rdi),%rdi
1406b0255:	48 8b 3c cf          	mov    (%rdi,%rcx,8),%rdi
1406b0259:	48 85 ff             	test   %rdi,%rdi
1406b025c:	74 1c                	je     0x1406b027a
1406b025e:	8b 47 10             	mov    0x10(%rdi),%eax
1406b0261:	ff c0                	inc    %eax
1406b0263:	89 47 10             	mov    %eax,0x10(%rdi)
1406b0266:	83 f8 01             	cmp    $0x1,%eax
1406b0269:	0f 8e c4 01 00 00    	jle    0x1406b0433
1406b026f:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b0274:	0f 84 c1 01 00 00    	je     0x1406b043b
1406b027a:	bd 01 00 00 00       	mov    $0x1,%ebp
1406b027f:	48 8b df             	mov    %rdi,%rbx
1406b0282:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
1406b0289:	00
1406b028a:	eb 13                	jmp    0x1406b029f
1406b028c:	49 8b ce             	mov    %r14,%rcx
1406b028f:	bd 02 00 00 00       	mov    $0x2,%ebp
1406b0294:	49 8b de             	mov    %r14,%rbx
1406b0297:	48 8b bc 24 80 00 00 	mov    0x80(%rsp),%rdi
1406b029e:	00
1406b029f:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
1406b02a4:	48 85 db             	test   %rbx,%rbx
1406b02a7:	74 1c                	je     0x1406b02c5
1406b02a9:	8b 43 10             	mov    0x10(%rbx),%eax
1406b02ac:	ff c0                	inc    %eax
1406b02ae:	89 43 10             	mov    %eax,0x10(%rbx)
1406b02b1:	83 f8 01             	cmp    $0x1,%eax
1406b02b4:	0f 8e 8c 01 00 00    	jle    0x1406b0446
1406b02ba:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b02bf:	0f 84 89 01 00 00    	je     0x1406b044e
1406b02c5:	40 f6 c5 02          	test   $0x2,%bpl
1406b02c9:	74 2c                	je     0x1406b02f7
1406b02cb:	83 e5 fd             	and    $0xfffffffd,%ebp
1406b02ce:	48 85 c9             	test   %rcx,%rcx
1406b02d1:	74 24                	je     0x1406b02f7
1406b02d3:	8b 41 10             	mov    0x10(%rcx),%eax
1406b02d6:	ff c8                	dec    %eax
1406b02d8:	89 41 10             	mov    %eax,0x10(%rcx)
1406b02db:	85 c0                	test   %eax,%eax
1406b02dd:	7f 18                	jg     0x1406b02f7
1406b02df:	0f 88 74 01 00 00    	js     0x1406b0459
1406b02e5:	48 8b 01             	mov    (%rcx),%rax
1406b02e8:	ba 01 00 00 00       	mov    $0x1,%edx
1406b02ed:	48 8b 00             	mov    (%rax),%rax
1406b02f0:	ff 15 2a 37 8d 00    	call   *0x8d372a(%rip)        # 0x140f83a20
1406b02f6:	90                   	nop
1406b02f7:	40 f6 c5 01          	test   $0x1,%bpl
1406b02fb:	74 2c                	je     0x1406b0329
1406b02fd:	48 85 ff             	test   %rdi,%rdi
1406b0300:	74 27                	je     0x1406b0329
1406b0302:	8b 47 10             	mov    0x10(%rdi),%eax
1406b0305:	ff c8                	dec    %eax
1406b0307:	89 47 10             	mov    %eax,0x10(%rdi)
1406b030a:	85 c0                	test   %eax,%eax
1406b030c:	7f 1b                	jg     0x1406b0329
1406b030e:	0f 88 50 01 00 00    	js     0x1406b0464
1406b0314:	48 8b 07             	mov    (%rdi),%rax
1406b0317:	ba 01 00 00 00       	mov    $0x1,%edx
1406b031c:	48 8b cf             	mov    %rdi,%rcx
1406b031f:	48 8b 00             	mov    (%rax),%rax
1406b0322:	ff 15 f8 36 8d 00    	call   *0x8d36f8(%rip)        # 0x140f83a20
1406b0328:	90                   	nop
1406b0329:	b9 58 00 00 00       	mov    $0x58,%ecx
1406b032e:	e8 d5 ad 76 00       	call   0x140e1b108
1406b0333:	48 8b c8             	mov    %rax,%rcx
1406b0336:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
1406b033b:	48 85 c0             	test   %rax,%rax
1406b033e:	74 6a                	je     0x1406b03aa
1406b0340:	48 89 9c 24 80 00 00 	mov    %rbx,0x80(%rsp)
1406b0347:	00
1406b0348:	48 85 db             	test   %rbx,%rbx
1406b034b:	74 1c                	je     0x1406b0369
1406b034d:	8b 43 10             	mov    0x10(%rbx),%eax
1406b0350:	ff c0                	inc    %eax
1406b0352:	89 43 10             	mov    %eax,0x10(%rbx)
1406b0355:	83 f8 01             	cmp    $0x1,%eax
1406b0358:	0f 8e 11 01 00 00    	jle    0x1406b046f
1406b035e:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b0363:	0f 84 0e 01 00 00    	je     0x1406b0477
1406b0369:	48 89 b4 24 88 00 00 	mov    %rsi,0x88(%rsp)
1406b0370:	00
1406b0371:	48 85 f6             	test   %rsi,%rsi
1406b0374:	74 1c                	je     0x1406b0392
1406b0376:	8b 46 10             	mov    0x10(%rsi),%eax
1406b0379:	ff c0                	inc    %eax
1406b037b:	89 46 10             	mov    %eax,0x10(%rsi)
1406b037e:	83 f8 01             	cmp    $0x1,%eax
1406b0381:	0f 8e fb 00 00 00    	jle    0x1406b0482
1406b0387:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b038c:	0f 84 f8 00 00 00    	je     0x1406b048a
1406b0392:	4c 8d 84 24 80 00 00 	lea    0x80(%rsp),%r8
1406b0399:	00
1406b039a:	48 8d 94 24 88 00 00 	lea    0x88(%rsp),%rdx
1406b03a1:	00
1406b03a2:	e8 09 7c 09 00       	call   0x140747fb0
1406b03a7:	4c 8b f0             	mov    %rax,%r14
1406b03aa:	4d 89 37             	mov    %r14,(%r15)
1406b03ad:	48 85 db             	test   %rbx,%rbx
1406b03b0:	74 27                	je     0x1406b03d9
1406b03b2:	8b 43 10             	mov    0x10(%rbx),%eax
1406b03b5:	ff c8                	dec    %eax
1406b03b7:	89 43 10             	mov    %eax,0x10(%rbx)
1406b03ba:	85 c0                	test   %eax,%eax
1406b03bc:	7f 1b                	jg     0x1406b03d9
1406b03be:	0f 88 d1 00 00 00    	js     0x1406b0495
1406b03c4:	48 8b 03             	mov    (%rbx),%rax
1406b03c7:	ba 01 00 00 00       	mov    $0x1,%edx
1406b03cc:	48 8b cb             	mov    %rbx,%rcx
1406b03cf:	48 8b 00             	mov    (%rax),%rax
1406b03d2:	ff 15 48 36 8d 00    	call   *0x8d3648(%rip)        # 0x140f83a20
1406b03d8:	90                   	nop
1406b03d9:	48 85 f6             	test   %rsi,%rsi
1406b03dc:	74 23                	je     0x1406b0401
1406b03de:	8b 46 10             	mov    0x10(%rsi),%eax
1406b03e1:	ff c8                	dec    %eax
1406b03e3:	89 46 10             	mov    %eax,0x10(%rsi)