1403e508b:	0f b7 c6             	movzwl %si,%eax
1403e508e:	44 2b f0             	sub    %eax,%r14d
1403e5091:	49 8b 0c 24          	mov    (%r12),%rcx
1403e5095:	48 c7 44 24 30 00 00 	movq   $0x0,0x30(%rsp)
1403e509c:	00 00
1403e509e:	4c 89 6d 30          	mov    %r13,0x30(%rbp)
1403e50a2:	48 8b 41 30          	mov    0x30(%rcx),%rax
1403e50a6:	48 8b 50 08          	mov    0x8(%rax),%rdx
1403e50aa:	48 2b 10             	sub    (%rax),%rdx
1403e50ad:	48 c1 fa 04          	sar    $0x4,%rdx
1403e50b1:	4c 8d 45 30          	lea    0x30(%rbp),%r8
1403e50b5:	e8 46 03 35 00       	call   0x140735400
1403e50ba:	90                   	nop
1403e50bb:	45 85 f6             	test   %r14d,%r14d
1403e50be:	0f 8f 51 fa ff ff    	jg     0x1403e4b15
1403e50c4:	eb 20                	jmp    0x1403e50e6
1403e50c6:	48 8d 15 73 6a c0 00 	lea    0xc06a73(%rip),%rdx        # 0x140febb40
1403e50cd:	eb 07                	jmp    0x1403e50d6
1403e50cf:	48 8d 15 4a 6a c0 00 	lea    0xc06a4a(%rip),%rdx        # 0x140febb20
1403e50d6:	4c 8d 05 af e6 bb 00 	lea    0xbbe6af(%rip),%r8        # 0x140fa378c
1403e50dd:	48 8b 4d a8          	mov    -0x58(%rbp),%rcx
1403e50e1:	e8 da 3a 15 00       	call   0x140538bc0
1403e50e6:	49 8b c4             	mov    %r12,%rax
1403e50e9:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
1403e50ed:	48 33 cc             	xor    %rsp,%rcx
1403e50f0:	e8 0b 64 a3 00       	call   0x140e1b500
1403e50f5:	0f 28 b4 24 60 01 00 	movaps 0x160(%rsp),%xmm6
1403e50fc:	00
1403e50fd:	0f 28 bc 24 50 01 00 	movaps 0x150(%rsp),%xmm7
1403e5104:	00
1403e5105:	48 81 c4 78 01 00 00 	add    $0x178,%rsp
1403e510c:	41 5f                	pop    %r15
1403e510e:	41 5e                	pop    %r14
1403e5110:	41 5d                	pop    %r13
1403e5112:	41 5c                	pop    %r12
1403e5114:	5f                   	pop    %rdi
1403e5115:	5e                   	pop    %rsi
1403e5116:	5b                   	pop    %rbx
1403e5117:	5d                   	pop    %rbp
1403e5118:	c3                   	ret
1403e5119:	33 c9                	xor    %ecx,%ecx
1403e511b:	e8 e0 55 3a 00       	call   0x14078a700
1403e5120:	90                   	nop
1403e5121:	48 8d 0d 60 fb 03 01 	lea    0x103fb60(%rip),%rcx        # 0x141424c88
1403e5128:	e8 9f 65 a3 00       	call   0x140e1b6cc
1403e512d:	83 3d 54 fb 03 01 ff 	cmpl   $0xffffffff,0x103fb54(%rip)        # 0x141424c88
1403e5134:	0f 85 f4 f8 ff ff    	jne    0x1403e4a2e
1403e513a:	48 8d 05 9f 69 c0 00 	lea    0xc0699f(%rip),%rax        # 0x140febae0
1403e5141:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1403e5146:	48 c7 44 24 48 0f 00 	movq   $0xf,0x48(%rsp)
1403e514d:	00 00
1403e514f:	0f 28 44 24 40       	movaps 0x40(%rsp),%xmm0
1403e5154:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
1403e515a:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1403e515f:	e8 2c bc 3b 00       	call   0x1407a0d90
1403e5164:	48 8b 08             	mov    (%rax),%rcx
1403e5167:	48 85 c9             	test   %rcx,%rcx
1403e516a:	74 27                	je     0x1403e5193
1403e516c:	8b 41 10             	mov    0x10(%rcx),%eax
1403e516f:	ff c0                	inc    %eax
1403e5171:	89 41 10             	mov    %eax,0x10(%rcx)
1403e5174:	83 f8 01             	cmp    $0x1,%eax
1403e5177:	7f 08                	jg     0x1403e5181
1403e5179:	33 c9                	xor    %ecx,%ecx
1403e517b:	e8 80 55 3a 00       	call   0x14078a700
1403e5180:	cc                   	int3
1403e5181:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1403e5186:	75 0b                	jne    0x1403e5193
1403e5188:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e518d:	e8 6e 55 3a 00       	call   0x14078a700
1403e5192:	90                   	nop
1403e5193:	48 89 0d e6 fa 03 01 	mov    %rcx,0x103fae6(%rip)        # 0x141424c80
1403e519a:	bf 00 00 02 00       	mov    $0x20000,%edi
1403e519f:	89 7c 24 20          	mov    %edi,0x20(%rsp)
1403e51a3:	48 8d 0d 36 ae b8 00 	lea    0xb8ae36(%rip),%rcx        # 0x140f6ffe0
1403e51aa:	e8 c5 61 a3 00       	call   0x140e1b374
1403e51af:	90                   	nop
1403e51b0:	48 8d 0d d1 fa 03 01 	lea    0x103fad1(%rip),%rcx        # 0x141424c88
1403e51b7:	e8 a4 64 a3 00       	call   0x140e1b660
1403e51bc:	e9 6d f8 ff ff       	jmp    0x1403e4a2e
1403e51c1:	48 8d 0d d0 fa 03 01 	lea    0x103fad0(%rip),%rcx        # 0x141424c98
1403e51c8:	e8 ff 64 a3 00       	call   0x140e1b6cc
1403e51cd:	83 3d c4 fa 03 01 ff 	cmpl   $0xffffffff,0x103fac4(%rip)        # 0x141424c98
1403e51d4:	0f 85 63 f8 ff ff    	jne    0x1403e4a3d
1403e51da:	48 8d 05 0f 69 c0 00 	lea    0xc0690f(%rip),%rax        # 0x140febaf0
1403e51e1:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1403e51e6:	48 c7 44 24 48 14 00 	movq   $0x14,0x48(%rsp)
1403e51ed:	00 00
1403e51ef:	0f 28 44 24 40       	movaps 0x40(%rsp),%xmm0
1403e51f4:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
1403e51fa:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1403e51ff:	e8 8c bb 3b 00       	call   0x1407a0d90
1403e5204:	48 8b 08             	mov    (%rax),%rcx
1403e5207:	48 85 c9             	test   %rcx,%rcx
1403e520a:	74 27                	je     0x1403e5233
1403e520c:	8b 41 10             	mov    0x10(%rcx),%eax
1403e520f:	ff c0                	inc    %eax
1403e5211:	89 41 10             	mov    %eax,0x10(%rcx)
1403e5214:	83 f8 01             	cmp    $0x1,%eax
1403e5217:	7f 08                	jg     0x1403e5221
1403e5219:	33 c9                	xor    %ecx,%ecx
1403e521b:	e8 e0 54 3a 00       	call   0x14078a700
1403e5220:	cc                   	int3
1403e5221:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1403e5226:	75 0b                	jne    0x1403e5233
1403e5228:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e522d:	e8 ce 54 3a 00       	call   0x14078a700
1403e5232:	90                   	nop
1403e5233:	48 89 0d 56 fa 03 01 	mov    %rcx,0x103fa56(%rip)        # 0x141424c90
1403e523a:	0f ba ef 10          	bts    $0x10,%edi
1403e523e:	89 7c 24 20          	mov    %edi,0x20(%rsp)
1403e5242:	48 8d 0d d7 ad b8 00 	lea    0xb8add7(%rip),%rcx        # 0x140f70020
1403e5249:	e8 26 61 a3 00       	call   0x140e1b374
1403e524e:	90                   	nop
1403e524f:	48 8d 0d 42 fa 03 01 	lea    0x103fa42(%rip),%rcx        # 0x141424c98
1403e5256:	e8 05 64 a3 00       	call   0x140e1b660
1403e525b:	e9 dd f7 ff ff       	jmp    0x1403e4a3d
1403e5260:	33 c9                	xor    %ecx,%ecx
1403e5262:	e8 99 54 3a 00       	call   0x14078a700
1403e5267:	cc                   	int3
1403e5268:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e526d:	e8 8e 54 3a 00       	call   0x14078a700
1403e5272:	90                   	nop
1403e5273:	b9 02 00 00 00       	mov    $0x2,%ecx
1403e5278:	e8 83 54 3a 00       	call   0x14078a700
1403e527d:	90                   	nop
1403e527e:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e5283:	e8 78 54 3a 00       	call   0x14078a700
1403e5288:	cc                   	int3
1403e5289:	33 c9                	xor    %ecx,%ecx
1403e528b:	e8 70 54 3a 00       	call   0x14078a700
1403e5290:	90                   	nop
1403e5291:	b9 02 00 00 00       	mov    $0x2,%ecx
1403e5296:	e8 65 54 3a 00       	call   0x14078a700
1403e529b:	90                   	nop
1403e529c:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e52a1:	e8 5a 54 3a 00       	call   0x14078a700
1403e52a6:	cc                   	int3
1403e52a7:	33 c9                	xor    %ecx,%ecx
1403e52a9:	e8 52 54 3a 00       	call   0x14078a700
1403e52ae:	90                   	nop
1403e52af:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e52b4:	e8 47 54 3a 00       	call   0x14078a700
1403e52b9:	cc                   	int3
1403e52ba:	33 c9                	xor    %ecx,%ecx
1403e52bc:	e8 3f 54 3a 00       	call   0x14078a700
1403e52c1:	90                   	nop
1403e52c2:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e52c7:	e8 34 54 3a 00       	call   0x14078a700
1403e52cc:	cc                   	int3
1403e52cd:	33 c9                	xor    %ecx,%ecx
1403e52cf:	e8 2c 54 3a 00       	call   0x14078a700
1403e52d4:	90                   	nop
1403e52d5:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e52da:	e8 21 54 3a 00       	call   0x14078a700
1403e52df:	cc                   	int3
1403e52e0:	33 c9                	xor    %ecx,%ecx
1403e52e2:	e8 19 54 3a 00       	call   0x14078a700
1403e52e7:	90                   	nop
1403e52e8:	b9 01 00 00 00       	mov    $0x1,%ecx
1403e52ed:	e8 0e 54 3a 00       	call   0x14078a700
1403e52f2:	cc                   	int3
1403e52f3:	cc                   	int3
1403e52f4:	cc                   	int3
1403e52f5:	cc                   	int3
1403e52f6:	cc                   	int3
1403e52f7:	cc                   	int3
1403e52f8:	cc                   	int3
1403e52f9:	cc                   	int3
1403e52fa:	cc                   	int3
1403e52fb:	cc                   	int3
1403e52fc:	cc                   	int3
1403e52fd:	cc                   	int3
1403e52fe:	cc                   	int3
1403e52ff:	cc                   	int3
1403e5300:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403e5305:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1403e530a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1403e530f:	57                   	push   %rdi
1403e5310:	41 56                	push   %r14
1403e5312:	41 57                	push   %r15
1403e5314:	48 83 ec 50          	sub    $0x50,%rsp
1403e5318:	45 8b f9             	mov    %r9d,%r15d
1403e531b:	49 8b f8             	mov    %r8,%rdi
1403e531e:	48 8b f1             	mov    %rcx,%rsi
1403e5321:	41 0f b6 00          	movzbl (%r8),%eax
1403e5325:	3c 03                	cmp    $0x3,%al
1403e5327:	74 11                	je     0x1403e533a
1403e5329:	3c 0b                	cmp    $0xb,%al
1403e532b:	0f 85 47 01 00 00    	jne    0x1403e5478
1403e5331:	48 8b 1d b0 f7 03 01 	mov    0x103f7b0(%rip),%rbx        # 0x141424ae8
1403e5338:	eb 07                	jmp    0x1403e5341
1403e533a:	48 8b 1d 57 f7 03 01 	mov    0x103f757(%rip),%rbx        # 0x141424a98
1403e5341:	48 85 db             	test   %rbx,%rbx
1403e5344:	0f 84 2e 01 00 00    	je     0x1403e5478
1403e534a:	48 8b cb             	mov    %rbx,%rcx
1403e534d:	e8 de 01 43 00       	call   0x140815530
1403e5352:	84 c0                	test   %al,%al
1403e5354:	0f 84 1e 01 00 00    	je     0x1403e5478
1403e535a:	4c 8b 8c 24 98 00 00 	mov    0x98(%rsp),%r9
1403e5361:	00
1403e5362:	44 8b 84 24 90 00 00 	mov    0x90(%rsp),%r8d
1403e5369:	00
1403e536a:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1403e536f:	48 8b ce             	mov    %rsi,%rcx
1403e5372:	e8 39 0c 00 00       	call   0x1403e5fb0
1403e5377:	4c 8b f0             	mov    %rax,%r14
1403e537a:	44 0f b6 47 01       	movzbl 0x1(%rdi),%r8d
1403e537f:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
1403e5384:	48 8b 0d ed da 04 01 	mov    0x104daed(%rip),%rcx        # 0x141432e78
1403e538b:	e8 90 ab db ff       	call   0x14019ff20
1403e5390:	48 8b e8             	mov    %rax,%rbp
1403e5393:	48 8b 8c 24 a0 00 00 	mov    0xa0(%rsp),%rcx
1403e539a:	00
1403e539b:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1403e53a0:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
1403e53a5:	45 8b cf             	mov    %r15d,%r9d
1403e53a8:	4c 8b c7             	mov    %rdi,%r8
1403e53ab:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1403e53b0:	48 8b ce             	mov    %rsi,%rcx
1403e53b3:	e8 58 f3 ff ff       	call   0x1403e4710
1403e53b8:	48 8b f8             	mov    %rax,%rdi
1403e53bb:	48 8b 8c 24 a8 00 00 	mov    0xa8(%rsp),%rcx
1403e53c2:	00
1403e53c3:	e8 78 12 15 00       	call   0x140536640
1403e53c8:	48 89 9c 24 80 00 00 	mov    %rbx,0x80(%rsp)
1403e53cf:	00
1403e53d0:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
1403e53d5:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1403e53da:	4c 8b cf             	mov    %rdi,%r9
1403e53dd:	4c 8b c0             	mov    %rax,%r8
1403e53e0:	48 8d 94 24 80 00 00 	lea    0x80(%rsp),%rdx
1403e53e7:	00
1403e53e8:	48 8b 8c 24 a8 00 00 	mov    0xa8(%rsp),%rcx
1403e53ef:	00
1403e53f0:	e8 db ef ff ff       	call   0x1403e43d0
1403e53f5:	90                   	nop
1403e53f6:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1403e53fb:	48 85 c9             	test   %rcx,%rcx
1403e53fe:	74 24                	je     0x1403e5424
1403e5400:	8b 41 10             	mov    0x10(%rcx),%eax
1403e5403:	ff c8                	dec    %eax
1403e5405:	89 41 10             	mov    %eax,0x10(%rcx)
1403e5408:	85 c0                	test   %eax,%eax
1403e540a:	7f 18                	jg     0x1403e5424
1403e540c:	0f 88 8d 00 00 00    	js     0x1403e549f
1403e5412:	48 8b 01             	mov    (%rcx),%rax
1403e5415:	ba 01 00 00 00       	mov    $0x1,%edx
1403e541a:	48 8b 00             	mov    (%rax),%rax
1403e541d:	ff 15 fd e5 b9 00    	call   *0xb9e5fd(%rip)        # 0x140f83a20
1403e5423:	90                   	nop
1403e5424:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
1403e5429:	48 85 c9             	test   %rcx,%rcx
1403e542c:	74 20                	je     0x1403e544e
1403e542e:	8b 41 10             	mov    0x10(%rcx),%eax
1403e5431:	ff c8                	dec    %eax
1403e5433:	89 41 10             	mov    %eax,0x10(%rcx)
1403e5436:	85 c0                	test   %eax,%eax
1403e5438:	7f 14                	jg     0x1403e544e
1403e543a:	78 6e                	js     0x1403e54aa
1403e543c:	48 8b 01             	mov    (%rcx),%rax
1403e543f:	ba 01 00 00 00       	mov    $0x1,%edx
1403e5444:	48 8b 00             	mov    (%rax),%rax
1403e5447:	ff 15 d3 e5 b9 00    	call   *0xb9e5d3(%rip)        # 0x140f83a20
1403e544d:	90                   	nop
1403e544e:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
1403e5453:	48 85 c9             	test   %rcx,%rcx
1403e5456:	74 20                	je     0x1403e5478
1403e5458:	8b 41 10             	mov    0x10(%rcx),%eax
1403e545b:	ff c8                	dec    %eax
1403e545d:	89 41 10             	mov    %eax,0x10(%rcx)
1403e5460:	85 c0                	test   %eax,%eax
1403e5462:	7f 14                	jg     0x1403e5478
1403e5464:	78 2e                	js     0x1403e5494
1403e5466:	48 8b 01             	mov    (%rcx),%rax
1403e5469:	ba 01 00 00 00       	mov    $0x1,%edx
1403e546e:	48 8b 00             	mov    (%rax),%rax
1403e5471:	ff 15 a9 e5 b9 00    	call   *0xb9e5a9(%rip)        # 0x140f83a20
1403e5477:	90                   	nop
1403e5478:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
1403e547d:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
1403e5482:	48 8b b4 24 88 00 00 	mov    0x88(%rsp),%rsi
1403e5489:	00
1403e548a:	48 83 c4 50          	add    $0x50,%rsp
1403e548e:	41 5f                	pop    %r15
1403e5490:	41 5e                	pop    %r14
1403e5492:	5f                   	pop    %rdi
1403e5493:	c3                   	ret
1403e5494:	b9 02 00 00 00       	mov    $0x2,%ecx
1403e5499:	e8 62 52 3a 00       	call   0x14078a700
1403e549e:	90                   	nop
1403e549f:	b9 02 00 00 00       	mov    $0x2,%ecx
1403e54a4:	e8 57 52 3a 00       	call   0x14078a700
1403e54a9:	90                   	nop
1403e54aa:	b9 02 00 00 00       	mov    $0x2,%ecx
1403e54af:	e8 4c 52 3a 00       	call   0x14078a700
1403e54b4:	cc                   	int3
1403e54b5:	cc                   	int3
1403e54b6:	cc                   	int3
1403e54b7:	cc                   	int3
1403e54b8:	cc                   	int3
1403e54b9:	cc                   	int3
1403e54ba:	cc                   	int3
1403e54bb:	cc                   	int3
1403e54bc:	cc                   	int3
1403e54bd:	cc                   	int3
1403e54be:	cc                   	int3
1403e54bf:	cc                   	int3
1403e54c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403e54c5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1403e54ca:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1403e54cf:	57                   	push   %rdi
1403e54d0:	41 56                	push   %r14
1403e54d2:	41 57                	push   %r15
1403e54d4:	48 83 ec 50          	sub    $0x50,%rsp
1403e54d8:	45 8b f9             	mov    %r9d,%r15d
1403e54db:	49 8b f8             	mov    %r8,%rdi
1403e54de:	48 8b f1             	mov    %rcx,%rsi
1403e54e1:	41 0f b6 10          	movzbl (%r8),%edx
1403e54e5:	83 ea 01             	sub    $0x1,%edx
1403e54e8:	74 33                	je     0x1403e551d
1403e54ea:	83 ea 01             	sub    $0x1,%edx
1403e54ed:	74 25                	je     0x1403e5514
1403e54ef:	83 ea 01             	sub    $0x1,%edx
1403e54f2:	74 17                	je     0x1403e550b
1403e54f4:	83 fa 01             	cmp    $0x1,%edx
1403e54f7:	74 09                	je     0x1403e5502
1403e54f9:	48 8b 1d d0 f5 03 01 	mov    0x103f5d0(%rip),%rbx        # 0x141424ad0
1403e5500:	eb 22                	jmp    0x1403e5524
1403e5502:	48 8b 1d cf f5 03 01 	mov    0x103f5cf(%rip),%rbx        # 0x141424ad8
1403e5509:	eb 19                	jmp    0x1403e5524
1403e550b:	48 8b 1d d6 f5 03 01 	mov    0x103f5d6(%rip),%rbx        # 0x141424ae8
1403e5512:	eb 10                	jmp    0x1403e5524
1403e5514:	48 8b 1d ad f5 03 01 	mov    0x103f5ad(%rip),%rbx        # 0x141424ac8
1403e551b:	eb 07                	jmp    0x1403e5524
1403e551d:	48 8b 1d 74 f5 03 01 	mov    0x103f574(%rip),%rbx        # 0x141424a98
1403e5524:	48 85 db             	test   %rbx,%rbx
1403e5527:	0f 84 2e 01 00 00    	je     0x1403e565b
1403e552d:	48 8b cb             	mov    %rbx,%rcx
1403e5530:	e8 fb ff 42 00       	call   0x140815530
1403e5535:	84 c0                	test   %al,%al
1403e5537:	0f 84 1e 01 00 00    	je     0x1403e565b
1403e553d:	4c 8b 8c 24 98 00 00 	mov    0x98(%rsp),%r9
1403e5544:	00
1403e5545:	44 8b 84 24 90 00 00 	mov    0x90(%rsp),%r8d
1403e554c:	00
1403e554d:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1403e5552:	48 8b ce             	mov    %rsi,%rcx
1403e5555:	e8 76 11 00 00       	call   0x1403e66d0
1403e555a:	4c 8b f0             	mov    %rax,%r14