180073fe5:	b8 01 00 00 00       	mov    $0x1,%eax
180073fea:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
180073ff0:	4d 8b cd             	mov    %r13,%r9
180073ff3:	48 d3 e0             	shl    %cl,%rax
180073ff6:	41 8b 4f 08          	mov    0x8(%r15),%ecx
180073ffa:	48 8b d0             	mov    %rax,%rdx
180073ffd:	48 0f af d7          	imul   %rdi,%rdx
180074001:	44 8b c0             	mov    %eax,%r8d
180074004:	48 03 d6             	add    %rsi,%rdx
180074007:	e8 dc 2f fb ff       	call   0x180026fe8
18007400c:	8b d8                	mov    %eax,%ebx
18007400e:	85 c0                	test   %eax,%eax
180074010:	78 2a                	js     0x18007403c
180074012:	41 8a 4e 6d          	mov    0x6d(%r14),%cl
180074016:	ba 01 00 00 00       	mov    $0x1,%edx
18007401b:	48 d3 e2             	shl    %cl,%rdx
18007401e:	48 ff c7             	inc    %rdi
180074021:	48 3b fa             	cmp    %rdx,%rdi
180074024:	72 bb                	jb     0x180073fe1
180074026:	49 ff c4             	inc    %r12
180074029:	8b fd                	mov    %ebp,%edi
18007402b:	4c 3b 64 24 30       	cmp    0x30(%rsp),%r12
180074030:	73 0a                	jae    0x18007403c
180074032:	e9 bb fe ff ff       	jmp    0x180073ef2
180074037:	bb 7f 00 00 c0       	mov    $0xc000007f,%ebx
18007403c:	49 8b cd             	mov    %r13,%rcx
18007403f:	e8 b8 5f 02 00       	call   0x180099ffc
180074044:	8b c3                	mov    %ebx,%eax
180074046:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
18007404d:	00
18007404e:	48 83 c4 40          	add    $0x40,%rsp
180074052:	41 5f                	pop    %r15
180074054:	41 5e                	pop    %r14
180074056:	41 5d                	pop    %r13
180074058:	41 5c                	pop    %r12
18007405a:	5f                   	pop    %rdi
18007405b:	5e                   	pop    %rsi
18007405c:	5d                   	pop    %rbp
18007405d:	c3                   	ret
18007405e:	cc                   	int3
18007405f:	cc                   	int3
180074060:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180074065:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18007406a:	57                   	push   %rdi
18007406b:	48 83 ec 20          	sub    $0x20,%rsp
18007406f:	48 8b 41 78          	mov    0x78(%rcx),%rax
180074073:	41 8b d9             	mov    %r9d,%ebx
180074076:	44 8b 90 80 00 00 00 	mov    0x80(%rax),%r10d
18007407d:	48 8b 05 54 0a 13 00 	mov    0x130a54(%rip),%rax        # 0x1801a4ad8
180074084:	4a 8b 34 d0          	mov    (%rax,%r10,8),%rsi
180074088:	41 83 f8 01          	cmp    $0x1,%r8d
18007408c:	72 6c                	jb     0x1800740fa
18007408e:	8b 46 5c             	mov    0x5c(%rsi),%eax
180074091:	83 c0 02             	add    $0x2,%eax
180074094:	44 3b c0             	cmp    %eax,%r8d
180074097:	73 61                	jae    0x1800740fa
180074099:	41 b9 f7 ff ff ff    	mov    $0xfffffff7,%r9d
18007409f:	45 3b c1             	cmp    %r9d,%r8d
1800740a2:	74 56                	je     0x1800740fa
1800740a4:	41 8d 40 08          	lea    0x8(%r8),%eax
1800740a8:	83 f8 07             	cmp    $0x7,%eax
1800740ab:	76 4d                	jbe    0x1800740fa
1800740ad:	85 d2                	test   %edx,%edx
1800740af:	74 20                	je     0x1800740d1
1800740b1:	83 ea 01             	sub    $0x1,%edx
1800740b4:	74 14                	je     0x1800740ca
1800740b6:	83 ea 01             	sub    $0x1,%edx
1800740b9:	74 0a                	je     0x1800740c5
1800740bb:	83 fa 01             	cmp    $0x1,%edx
1800740be:	75 13                	jne    0x1800740d3
1800740c0:	83 cb ff             	or     $0xffffffff,%ebx
1800740c3:	eb 0e                	jmp    0x1800740d3
1800740c5:	41 8b d9             	mov    %r9d,%ebx
1800740c8:	eb 09                	jmp    0x1800740d3
1800740ca:	bb f0 ff ff ff       	mov    $0xfffffff0,%ebx
1800740cf:	eb 02                	jmp    0x1800740d3
1800740d1:	33 db                	xor    %ebx,%ebx
1800740d3:	41 8b f8             	mov    %r8d,%edi
1800740d6:	c1 e7 02             	shl    $0x2,%edi
1800740d9:	8b d7                	mov    %edi,%edx
1800740db:	e8 30 01 00 00       	call   0x180074210
1800740e0:	85 c0                	test   %eax,%eax
1800740e2:	78 1b                	js     0x1800740ff
1800740e4:	2b be 14 02 00 00    	sub    0x214(%rsi),%edi
1800740ea:	89 9c 37 18 02 00 00 	mov    %ebx,0x218(%rdi,%rsi,1)
1800740f1:	c6 86 10 02 00 00 01 	movb   $0x1,0x210(%rsi)
1800740f8:	eb 05                	jmp    0x1800740ff
1800740fa:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
1800740ff:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180074104:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
180074109:	48 83 c4 20          	add    $0x20,%rsp
18007410d:	5f                   	pop    %rdi
18007410e:	c3                   	ret
18007410f:	cc                   	int3
180074110:	48 8b c4             	mov    %rsp,%rax
180074113:	44 89 48 20          	mov    %r9d,0x20(%rax)
180074117:	4c 89 40 18          	mov    %r8,0x18(%rax)
18007411b:	48 89 50 10          	mov    %rdx,0x10(%rax)
18007411f:	48 89 48 08          	mov    %rcx,0x8(%rax)
180074123:	53                   	push   %rbx
180074124:	55                   	push   %rbp
180074125:	56                   	push   %rsi
180074126:	57                   	push   %rdi
180074127:	41 54                	push   %r12
180074129:	41 55                	push   %r13
18007412b:	41 56                	push   %r14
18007412d:	41 57                	push   %r15
18007412f:	48 83 ec 28          	sub    $0x28,%rsp
180074133:	48 8b d9             	mov    %rcx,%rbx
180074136:	45 8d 51 0e          	lea    0xe(%r9),%r10d
18007413a:	b8 89 88 88 88       	mov    $0x88888889,%eax
18007413f:	4d 8b e8             	mov    %r8,%r13
180074142:	41 f7 e2             	mul    %r10d
180074145:	8b ea                	mov    %edx,%ebp
180074147:	c1 ed 03             	shr    $0x3,%ebp
18007414a:	8b cd                	mov    %ebp,%ecx
18007414c:	48 c1 e1 05          	shl    $0x5,%rcx
180074150:	e8 fb 5c 02 00       	call   0x180099e50
180074155:	33 f6                	xor    %esi,%esi
180074157:	4c 8b f8             	mov    %rax,%r15
18007415a:	85 ed                	test   %ebp,%ebp
18007415c:	0f 84 8c 00 00 00    	je     0x1800741ee
180074162:	44 8b ac 24 88 00 00 	mov    0x88(%rsp),%r13d
180074169:	00
18007416a:	44 8d 65 ff          	lea    -0x1(%rbp),%r12d
18007416e:	48 8d 78 02          	lea    0x2(%rax),%rdi
180074172:	6b ce 0f             	imul   $0xf,%esi,%ecx
180074175:	c6 47 fe c1          	movb   $0xc1,-0x2(%rdi)
180074179:	44 8b f1             	mov    %ecx,%r14d
18007417c:	4d 03 f6             	add    %r14,%r14
18007417f:	41 3b f4             	cmp    %r12d,%esi
180074182:	73 2c                	jae    0x1800741b0
180074184:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
180074188:	42 0f 10 04 31       	movups (%rcx,%r14,1),%xmm0
18007418d:	0f 11 07             	movups %xmm0,(%rdi)
180074190:	f2 42 0f 10 4c 31 10 	movsd  0x10(%rcx,%r14,1),%xmm1
180074197:	f2 0f 11 4f 10       	movsd  %xmm1,0x10(%rdi)
18007419c:	42 8b 44 31 18       	mov    0x18(%rcx,%r14,1),%eax
1800741a1:	89 47 18             	mov    %eax,0x18(%rdi)
1800741a4:	42 0f b7 44 31 1c    	movzwl 0x1c(%rcx,%r14,1),%eax
1800741aa:	66 89 47 1c          	mov    %ax,0x1c(%rdi)
1800741ae:	eb 2c                	jmp    0x1800741dc
1800741b0:	41 8b c5             	mov    %r13d,%eax
1800741b3:	33 d2                	xor    %edx,%edx
1800741b5:	2b c1                	sub    %ecx,%eax
1800741b7:	48 8b cf             	mov    %rdi,%rcx
1800741ba:	44 8b c0             	mov    %eax,%r8d
1800741bd:	8b d8                	mov    %eax,%ebx
1800741bf:	e8 bc 1a 0c 00       	call   0x180135c80
1800741c4:	4c 8d 04 1b          	lea    (%rbx,%rbx,1),%r8
1800741c8:	48 8b cf             	mov    %rdi,%rcx
1800741cb:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
1800741d0:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1800741d4:	49 03 d6             	add    %r14,%rdx
1800741d7:	e8 e4 17 0c 00       	call   0x1801359c0
1800741dc:	ff c6                	inc    %esi
1800741de:	48 83 c7 20          	add    $0x20,%rdi
1800741e2:	3b f5                	cmp    %ebp,%esi
1800741e4:	72 8c                	jb     0x180074172
1800741e6:	4c 8b ac 24 80 00 00 	mov    0x80(%rsp),%r13
1800741ed:	00
1800741ee:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
1800741f3:	41 89 6d 00          	mov    %ebp,0x0(%r13)
1800741f7:	4c 89 38             	mov    %r15,(%rax)
1800741fa:	33 c0                	xor    %eax,%eax
1800741fc:	48 83 c4 28          	add    $0x28,%rsp
180074200:	41 5f                	pop    %r15
180074202:	41 5e                	pop    %r14
180074204:	41 5d                	pop    %r13
180074206:	41 5c                	pop    %r12
180074208:	5f                   	pop    %rdi
180074209:	5e                   	pop    %rsi
18007420a:	5d                   	pop    %rbp
18007420b:	5b                   	pop    %rbx
18007420c:	c3                   	ret
18007420d:	cc                   	int3
18007420e:	cc                   	int3
18007420f:	cc                   	int3
180074210:	48 8b c4             	mov    %rsp,%rax
180074213:	48 89 58 08          	mov    %rbx,0x8(%rax)
180074217:	48 89 68 10          	mov    %rbp,0x10(%rax)
18007421b:	48 89 70 18          	mov    %rsi,0x18(%rax)
18007421f:	48 89 78 20          	mov    %rdi,0x20(%rax)
180074223:	41 56                	push   %r14
180074225:	48 81 ec 50 01 00 00 	sub    $0x150,%rsp
18007422c:	48 8b 41 78          	mov    0x78(%rcx),%rax
180074230:	33 f6                	xor    %esi,%esi
180074232:	44 8b f2             	mov    %edx,%r14d
180074235:	48 8b e9             	mov    %rcx,%rbp
180074238:	44 8b 80 80 00 00 00 	mov    0x80(%rax),%r8d
18007423f:	48 8b 05 92 08 13 00 	mov    0x130892(%rip),%rax        # 0x1801a4ad8
180074246:	4a 8b 3c c0          	mov    (%rax,%r8,8),%rdi
18007424a:	8b 87 14 02 00 00    	mov    0x214(%rdi),%eax
180074250:	3b d0                	cmp    %eax,%edx
180074252:	72 0e                	jb     0x180074262
180074254:	05 fc 05 00 00       	add    $0x5fc,%eax
180074259:	41 3b c6             	cmp    %r14d,%eax
18007425c:	0f 87 9d 00 00 00    	ja     0x1800742ff
180074262:	40 38 b7 10 02 00 00 	cmp    %sil,0x210(%rdi)
180074269:	74 0d                	je     0x180074278
18007426b:	e8 84 07 00 00       	call   0x1800749f4
180074270:	85 c0                	test   %eax,%eax
180074272:	0f 88 89 00 00 00    	js     0x180074301
180074278:	8b 4d 08             	mov    0x8(%rbp),%ecx
18007427b:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
180074280:	e8 a3 2a fb ff       	call   0x180026d28
180074285:	8b f0                	mov    %eax,%esi
180074287:	85 c0                	test   %eax,%eax
180074289:	78 74                	js     0x1800742ff
18007428b:	8b 5c 24 40          	mov    0x40(%rsp),%ebx
18007428f:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
180074294:	8b 4d 08             	mov    0x8(%rbp),%ecx
180074297:	8b c3                	mov    %ebx,%eax
180074299:	83 e0 fe             	and    $0xfffffffe,%eax
18007429c:	89 44 24 40          	mov    %eax,0x40(%rsp)
1800742a0:	e8 eb 2a fb ff       	call   0x180026d90
1800742a5:	8a 4f 6c             	mov    0x6c(%rdi),%cl
1800742a8:	4c 8d 8f 18 02 00 00 	lea    0x218(%rdi),%r9
1800742af:	8b 47 50             	mov    0x50(%rdi),%eax
1800742b2:	ba 01 00 00 00       	mov    $0x1,%edx
1800742b7:	83 64 24 28 00       	andl   $0x0,0x28(%rsp)
1800742bc:	41 b8 00 06 00 00    	mov    $0x600,%r8d
1800742c2:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
1800742c8:	48 d3 e2             	shl    %cl,%rdx
1800742cb:	8b 4d 08             	mov    0x8(%rbp),%ecx
1800742ce:	48 0f af d0          	imul   %rax,%rdx
1800742d2:	49 03 d6             	add    %r14,%rdx
1800742d5:	e8 42 2c fb ff       	call   0x180026f1c
1800742da:	8b 4d 08             	mov    0x8(%rbp),%ecx
1800742dd:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1800742e2:	8b f0                	mov    %eax,%esi
1800742e4:	89 5c 24 40          	mov    %ebx,0x40(%rsp)
1800742e8:	e8 a3 2a fb ff       	call   0x180026d90
1800742ed:	85 f6                	test   %esi,%esi
1800742ef:	78 0e                	js     0x1800742ff
1800742f1:	44 89 b7 14 02 00 00 	mov    %r14d,0x214(%rdi)
1800742f8:	c6 87 10 02 00 00 00 	movb   $0x0,0x210(%rdi)
1800742ff:	8b c6                	mov    %esi,%eax
180074301:	4c 8d 9c 24 50 01 00 	lea    0x150(%rsp),%r11
180074308:	00
180074309:	49 8b 5b 10          	mov    0x10(%r11),%rbx
18007430d:	49 8b 6b 18          	mov    0x18(%r11),%rbp
180074311:	49 8b 73 20          	mov    0x20(%r11),%rsi
180074315:	49 8b 7b 28          	mov    0x28(%r11),%rdi
180074319:	49 8b e3             	mov    %r11,%rsp
18007431c:	41 5e                	pop    %r14
18007431e:	c3                   	ret
18007431f:	cc                   	int3
180074320:	48 8b c4             	mov    %rsp,%rax
180074323:	48 89 58 08          	mov    %rbx,0x8(%rax)
180074327:	48 89 70 10          	mov    %rsi,0x10(%rax)
18007432b:	48 89 78 18          	mov    %rdi,0x18(%rax)
18007432f:	55                   	push   %rbp
180074330:	41 54                	push   %r12
180074332:	41 55                	push   %r13
180074334:	41 56                	push   %r14
180074336:	41 57                	push   %r15
180074338:	48 8d a8 a8 fc ff ff 	lea    -0x358(%rax),%rbp
18007433f:	48 81 ec 30 04 00 00 	sub    $0x430,%rsp
180074346:	4d 8b f0             	mov    %r8,%r14
180074349:	4c 8b e2             	mov    %rdx,%r12
18007434c:	48 8b f9             	mov    %rcx,%rdi
18007434f:	bb 00 02 00 00       	mov    $0x200,%ebx
180074354:	44 8b c3             	mov    %ebx,%r8d
180074357:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
18007435c:	33 d2                	xor    %edx,%edx
18007435e:	49 8b f1             	mov    %r9,%rsi
180074361:	e8 1a 19 0c 00       	call   0x180135c80
180074366:	44 8b c3             	mov    %ebx,%r8d
180074369:	48 8d 8d 30 01 00 00 	lea    0x130(%rbp),%rcx
180074370:	33 d2                	xor    %edx,%edx
180074372:	e8 09 19 0c 00       	call   0x180135c80
180074377:	4c 8b 4f 78          	mov    0x78(%rdi),%r9
18007437b:	45 33 ed             	xor    %r13d,%r13d
18007437e:	48 8b 05 53 07 13 00 	mov    0x130753(%rip),%rax        # 0x1801a4ad8
180074385:	4c 8b bd 80 03 00 00 	mov    0x380(%rbp),%r15
18007438c:	45 8b 81 80 00 00 00 	mov    0x80(%r9),%r8d
180074393:	4a 8b 1c c0          	mov    (%rax,%r8,8),%rbx
180074397:	49 8b 41 48          	mov    0x48(%r9),%rax
18007439b:	49 89 41 50          	mov    %rax,0x50(%r9)
18007439f:	4d 89 69 68          	mov    %r13,0x68(%r9)
1800743a3:	4d 89 69 58          	mov    %r13,0x58(%r9)
1800743a7:	e9 fb 00 00 00       	jmp    0x1800744a7
1800743ac:	41 b9 ff 00 00 00    	mov    $0xff,%r9d
1800743b2:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1800743b7:	4d 8b c4             	mov    %r12,%r8
1800743ba:	41 8d 51 01          	lea    0x1(%r9),%edx
1800743be:	e8 c1 9c 0b 00       	call   0x18012e084
1800743c3:	45 8b c5             	mov    %r13d,%r8d
1800743c6:	4c 39 ab 18 08 00 00 	cmp    %r13,0x818(%rbx)
1800743cd:	75 0c                	jne    0x1800743db
1800743cf:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1800743d4:	e8 67 6d 0b 00       	call   0x18012b140
1800743d9:	eb 34                	jmp    0x18007440f
1800743db:	0f b7 44 24 30       	movzwl 0x30(%rsp),%eax
1800743e0:	66 85 c0             	test   %ax,%ax
1800743e3:	74 2a                	je     0x18007440f
1800743e5:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1800743ea:	0f b7 c8             	movzwl %ax,%ecx
1800743ed:	41 ff c0             	inc    %r8d
1800743f0:	48 8b 83 18 08 00 00 	mov    0x818(%rbx),%rax
1800743f7:	0f b7 0c 48          	movzwl (%rax,%rcx,2),%ecx
1800743fb:	66 89 0a             	mov    %cx,(%rdx)
1800743fe:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
180074403:	4a 8d 14 42          	lea    (%rdx,%r8,2),%rdx
180074407:	0f b7 02             	movzwl (%rdx),%eax
18007440a:	66 85 c0             	test   %ax,%ax
18007440d:	75 db                	jne    0x1800743ea
18007440f:	4c 8b 05 da 0f 12 00 	mov    0x120fda(%rip),%r8        # 0x1801953f0
180074416:	48 8d 8d 30 01 00 00 	lea    0x130(%rbp),%rcx
18007441d:	41 b9 ff 00 00 00    	mov    $0xff,%r9d
180074423:	41 8d 51 01          	lea    0x1(%r9),%edx
180074427:	e8 58 9c 0b 00       	call   0x18012e084
18007442c:	45 8b c5             	mov    %r13d,%r8d
18007442f:	4c 39 ab 18 08 00 00 	cmp    %r13,0x818(%rbx)
180074436:	75 0e                	jne    0x180074446
180074438:	48 8d 8d 30 01 00 00 	lea    0x130(%rbp),%rcx
18007443f:	e8 fc 6c 0b 00       	call   0x18012b140
180074444:	eb 3a                	jmp    0x180074480
180074446:	0f b7 85 30 01 00 00 	movzwl 0x130(%rbp),%eax
18007444d:	66 85 c0             	test   %ax,%ax
180074450:	74 2e                	je     0x180074480
180074452:	48 8d 95 30 01 00 00 	lea    0x130(%rbp),%rdx
180074459:	0f b7 c8             	movzwl %ax,%ecx
18007445c:	41 ff c0             	inc    %r8d
18007445f:	48 8b 83 18 08 00 00 	mov    0x818(%rbx),%rax
180074466:	0f b7 0c 48          	movzwl (%rax,%rcx,2),%ecx
18007446a:	66 89 0a             	mov    %cx,(%rdx)
18007446d:	48 8d 95 30 01 00 00 	lea    0x130(%rbp),%rdx
180074474:	4a 8d 14 42          	lea    (%rdx,%r8,2),%rdx
180074478:	0f b7 02             	movzwl (%rdx),%eax
18007447b:	66 85 c0             	test   %ax,%ax
18007447e:	75 d9                	jne    0x180074459
180074480:	48 8d 44 24 30       	lea    0x30(%rsp),%rax
180074485:	4c 8d 85 30 01 00 00 	lea    0x130(%rbp),%r8
18007448c:	4c 2b c0             	sub    %rax,%r8
18007448f:	0f b7 08             	movzwl (%rax),%ecx
180074492:	42 0f b7 14 00       	movzwl (%rax,%r8,1),%edx
180074497:	2b ca                	sub    %edx,%ecx
180074499:	75 08                	jne    0x1800744a3
18007449b:	48 83 c0 02          	add    $0x2,%rax
18007449f:	85 d2                	test   %edx,%edx
1800744a1:	75 ec                	jne    0x18007448f
1800744a3:	85 c9                	test   %ecx,%ecx
1800744a5:	74 1d                	je     0x1800744c4
1800744a7:	4c 8b c6             	mov    %rsi,%r8
1800744aa:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1800744af:	49 8b d6             	mov    %r14,%rdx
1800744b2:	48 8b cf             	mov    %rdi,%rcx
1800744b5:	e8 8e 00 00 00       	call   0x180074548