140ed714e:	c1 e8 05             	shr    $0x5,%eax
140ed7151:	66 03 c1             	add    %cx,%ax
140ed7154:	66 89 82 6c 6c 00 00 	mov    %ax,0x6c6c(%rdx)
140ed715b:	45 03 f6             	add    %r14d,%r14d
140ed715e:	eb 25                	jmp    0x140ed7185
140ed7160:	2b f0                	sub    %eax,%esi
140ed7162:	46 8d 34 75 01 00 00 	lea    0x1(,%r14,2),%r14d
140ed7169:	00
140ed716a:	2b f8                	sub    %eax,%edi
140ed716c:	89 74 24 20          	mov    %esi,0x20(%rsp)
140ed7170:	0f b7 c1             	movzwl %cx,%eax
140ed7173:	89 7c 24 24          	mov    %edi,0x24(%rsp)
140ed7177:	66 c1 e8 05          	shr    $0x5,%ax
140ed717b:	66 2b c8             	sub    %ax,%cx
140ed717e:	66 89 8a 6c 6c 00 00 	mov    %cx,0x6c6c(%rdx)
140ed7185:	81 fe 00 00 00 01    	cmp    $0x1000000,%esi
140ed718b:	73 1f                	jae    0x140ed71ac
140ed718d:	49 3b d8             	cmp    %r8,%rbx
140ed7190:	0f 84 8f 2b 00 00    	je     0x140ed9d25
140ed7196:	42 0f b6 04 0b       	movzbl (%rbx,%r9,1),%eax
140ed719b:	c1 e7 08             	shl    $0x8,%edi
140ed719e:	0b c7                	or     %edi,%eax
140ed71a0:	c1 e6 08             	shl    $0x8,%esi
140ed71a3:	8b f8                	mov    %eax,%edi
140ed71a5:	89 44 24 24          	mov    %eax,0x24(%rsp)
140ed71a9:	48 ff c3             	inc    %rbx
140ed71ac:	41 8b c6             	mov    %r14d,%eax
140ed71af:	49 8d 14 43          	lea    (%r11,%rax,2),%rdx
140ed71b3:	8b c6                	mov    %esi,%eax
140ed71b5:	0f b7 8a 6c 6c 00 00 	movzwl 0x6c6c(%rdx),%ecx
140ed71bc:	c1 e8 0b             	shr    $0xb,%eax
140ed71bf:	0f af c1             	imul   %ecx,%eax
140ed71c2:	3b f8                	cmp    %eax,%edi
140ed71c4:	73 2d                	jae    0x140ed71f3
140ed71c6:	8b f0                	mov    %eax,%esi
140ed71c8:	89 44 24 20          	mov    %eax,0x20(%rsp)
140ed71cc:	41 8b c6             	mov    %r14d,%eax
140ed71cf:	49 8d 14 43          	lea    (%r11,%rax,2),%rdx
140ed71d3:	b8 00 08 00 00       	mov    $0x800,%eax
140ed71d8:	0f b7 8a 6c 6c 00 00 	movzwl 0x6c6c(%rdx),%ecx
140ed71df:	2b c1                	sub    %ecx,%eax
140ed71e1:	c1 e8 05             	shr    $0x5,%eax
140ed71e4:	66 03 c1             	add    %cx,%ax
140ed71e7:	66 89 82 6c 6c 00 00 	mov    %ax,0x6c6c(%rdx)
140ed71ee:	45 03 f6             	add    %r14d,%r14d
140ed71f1:	eb 25                	jmp    0x140ed7218
140ed71f3:	2b f0                	sub    %eax,%esi
140ed71f5:	46 8d 34 75 01 00 00 	lea    0x1(,%r14,2),%r14d
140ed71fc:	00
140ed71fd:	2b f8                	sub    %eax,%edi
140ed71ff:	89 74 24 20          	mov    %esi,0x20(%rsp)
140ed7203:	0f b7 c1             	movzwl %cx,%eax
140ed7206:	89 7c 24 24          	mov    %edi,0x24(%rsp)
140ed720a:	66 c1 e8 05          	shr    $0x5,%ax
140ed720e:	66 2b c8             	sub    %ax,%cx
140ed7211:	66 89 8a 6c 6c 00 00 	mov    %cx,0x6c6c(%rdx)
140ed7218:	41 8d 86 12 ff ff ff 	lea    -0xee(%r14),%eax
140ed721f:	89 44 24 6c          	mov    %eax,0x6c(%rsp)
140ed7223:	44 8b 6c 24 30       	mov    0x30(%rsp),%r13d
140ed7228:	4c 8d 44 24 6c       	lea    0x6c(%rsp),%r8
140ed722d:	41 8b d5             	mov    %r13d,%edx
140ed7230:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
140ed7234:	e8 47 f4 ff ff       	call   0x140ed6680
140ed7239:	44 8b 7c 24 6c       	mov    0x6c(%rsp),%r15d
140ed723e:	84 c0                	test   %al,%al
140ed7240:	0f 85 99 30 00 00    	jne    0x140eda2df
140ed7246:	48 8b 45 98          	mov    -0x68(%rbp),%rax
140ed724a:	4c 8b 4d 88          	mov    -0x78(%rbp),%r9
140ed724e:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
140ed7253:	4c 89 4c 24 48       	mov    %r9,0x48(%rsp)
140ed7258:	44 89 7c 24 34       	mov    %r15d,0x34(%rsp)
140ed725d:	41 8b d1             	mov    %r9d,%edx
140ed7260:	23 55 b0             	and    -0x50(%rbp),%edx
140ed7263:	89 54 24 58          	mov    %edx,0x58(%rsp)
140ed7267:	80 7c 24 5c 00       	cmpb   $0x0,0x5c(%rsp)
140ed726c:	74 55                	je     0x140ed72c3
140ed726e:	4c 3b c8             	cmp    %rax,%r9
140ed7271:	75 50                	jne    0x140ed72c3
140ed7273:	81 fe 00 00 00 01    	cmp    $0x1000000,%esi
140ed7279:	73 27                	jae    0x140ed72a2
140ed727b:	48 3b 5d 40          	cmp    0x40(%rbp),%rbx
140ed727f:	0f 84 b6 2a 00 00    	je     0x140ed9d3b
140ed7285:	48 8b 45 30          	mov    0x30(%rbp),%rax
140ed7289:	c1 e7 08             	shl    $0x8,%edi
140ed728c:	c1 e6 08             	shl    $0x8,%esi
140ed728f:	89 74 24 20          	mov    %esi,0x20(%rsp)
140ed7293:	0f b6 04 03          	movzbl (%rbx,%rax,1),%eax
140ed7297:	0b c7                	or     %edi,%eax
140ed7299:	8b f8                	mov    %eax,%edi
140ed729b:	89 44 24 24          	mov    %eax,0x24(%rsp)
140ed729f:	48 ff c3             	inc    %rbx
140ed72a2:	4c 8b 5d 20          	mov    0x20(%rbp),%r11
140ed72a6:	85 ff                	test   %edi,%edi
140ed72a8:	0f 84 b2 2a 00 00    	je     0x140ed9d60
140ed72ae:	41 80 bb a0 6e 00 00 	cmpb   $0x0,0x6ea0(%r11)
140ed72b5:	00
140ed72b6:	0f 84 95 2a 00 00    	je     0x140ed9d51
140ed72bc:	c6 44 24 5d 01       	movb   $0x1,0x5d(%rsp)
140ed72c1:	eb 04                	jmp    0x140ed72c7
140ed72c3:	4c 8b 5d 20          	mov    0x20(%rbp),%r11
140ed72c7:	81 fe 00 00 00 01    	cmp    $0x1000000,%esi
140ed72cd:	73 23                	jae    0x140ed72f2
140ed72cf:	48 3b 5d 40          	cmp    0x40(%rbp),%rbx
140ed72d3:	0f 84 94 2a 00 00    	je     0x140ed9d6d
140ed72d9:	48 8b 45 30          	mov    0x30(%rbp),%rax
140ed72dd:	c1 e7 08             	shl    $0x8,%edi
140ed72e0:	c1 e6 08             	shl    $0x8,%esi
140ed72e3:	0f b6 04 03          	movzbl (%rbx,%rax,1),%eax
140ed72e7:	0b c7                	or     %edi,%eax
140ed72e9:	8b f8                	mov    %eax,%edi
140ed72eb:	89 44 24 24          	mov    %eax,0x24(%rsp)
140ed72ef:	48 ff c3             	inc    %rbx
140ed72f2:	44 8b 54 24 3c       	mov    0x3c(%rsp),%r10d
140ed72f7:	8b c2                	mov    %edx,%eax
140ed72f9:	49 8d 8a 00 03 00 00 	lea    0x300(%r10),%rcx
140ed7300:	48 c1 e1 04          	shl    $0x4,%rcx
140ed7304:	48 03 c8             	add    %rax,%rcx
140ed7307:	8b c6                	mov    %esi,%eax
140ed7309:	c1 e8 0b             	shr    $0xb,%eax
140ed730c:	49 8d 14 4b          	lea    (%r11,%rcx,2),%rdx
140ed7310:	41 0f b7 0c 4b       	movzwl (%r11,%rcx,2),%ecx
140ed7315:	0f af c1             	imul   %ecx,%eax
140ed7318:	3b f8                	cmp    %eax,%edi
140ed731a:	0f 83 44 0a 00 00    	jae    0x140ed7d64
140ed7320:	44 8b 75 b4          	mov    -0x4c(%rbp),%r14d
140ed7324:	8b f0                	mov    %eax,%esi
140ed7326:	89 44 24 20          	mov    %eax,0x20(%rsp)
140ed732a:	41 b8 00 00 00 00    	mov    $0x0,%r8d
140ed7330:	b8 00 08 00 00       	mov    $0x800,%eax
140ed7335:	2b c1                	sub    %ecx,%eax
140ed7337:	c1 e8 05             	shr    $0x5,%eax
140ed733a:	66 03 c1             	add    %cx,%ax
140ed733d:	48 8b 4d a0          	mov    -0x60(%rbp),%rcx
140ed7341:	66 89 02             	mov    %ax,(%rdx)
140ed7344:	4d 85 c9             	test   %r9,%r9
140ed7347:	8b 45 b8             	mov    -0x48(%rbp),%eax
140ed734a:	49 0f 45 c8          	cmovne %r8,%rcx
140ed734e:	49 23 c1             	and    %r9,%rax
140ed7351:	48 03 4d 80          	add    -0x80(%rbp),%rcx
140ed7355:	42 0f b6 54 09 ff    	movzbl -0x1(%rcx,%r9,1),%edx
140ed735b:	b9 08 00 00 00       	mov    $0x8,%ecx
140ed7360:	41 2a ce             	sub    %r14b,%cl
140ed7363:	48 d3 ea             	shr    %cl,%rdx
140ed7366:	41 8b ce             	mov    %r14d,%ecx
140ed7369:	48 d3 e0             	shl    %cl,%rax
140ed736c:	45 8d 70 01          	lea    0x1(%r8),%r14d
140ed7370:	48 03 d0             	add    %rax,%rdx
140ed7373:	4c 8d 24 52          	lea    (%rdx,%rdx,2),%r12
140ed7377:	49 c1 e4 09          	shl    $0x9,%r12
140ed737b:	4d 03 e3             	add    %r11,%r12
140ed737e:	4c 89 64 24 50       	mov    %r12,0x50(%rsp)
140ed7383:	41 83 fa 07          	cmp    $0x7,%r10d
140ed7387:	0f 83 65 04 00 00    	jae    0x140ed77f2
140ed738d:	81 fe 00 00 00 01    	cmp    $0x1000000,%esi
140ed7393:	73 23                	jae    0x140ed73b8
140ed7395:	48 3b 5d 40          	cmp    0x40(%rbp),%rbx
140ed7399:	0f 84 e4 29 00 00    	je     0x140ed9d83
140ed739f:	48 8b 45 30          	mov    0x30(%rbp),%rax
140ed73a3:	c1 e7 08             	shl    $0x8,%edi
140ed73a6:	c1 e6 08             	shl    $0x8,%esi
140ed73a9:	0f b6 04 03          	movzbl (%rbx,%rax,1),%eax
140ed73ad:	0b c7                	or     %edi,%eax
140ed73af:	8b f8                	mov    %eax,%edi
140ed73b1:	89 44 24 24          	mov    %eax,0x24(%rsp)
140ed73b5:	48 ff c3             	inc    %rbx
140ed73b8:	41 8b c6             	mov    %r14d,%eax
140ed73bb:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed73c0:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed73c4:	8b c6                	mov    %esi,%eax
140ed73c6:	c1 e8 0b             	shr    $0xb,%eax
140ed73c9:	0f af c1             	imul   %ecx,%eax
140ed73cc:	3b f8                	cmp    %eax,%edi
140ed73ce:	73 27                	jae    0x140ed73f7
140ed73d0:	8b f0                	mov    %eax,%esi
140ed73d2:	89 44 24 20          	mov    %eax,0x20(%rsp)
140ed73d6:	41 8b c6             	mov    %r14d,%eax
140ed73d9:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed73de:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed73e2:	b8 00 08 00 00       	mov    $0x800,%eax
140ed73e7:	2b c1                	sub    %ecx,%eax
140ed73e9:	c1 e8 05             	shr    $0x5,%eax
140ed73ec:	66 03 c1             	add    %cx,%ax
140ed73ef:	66 89 02             	mov    %ax,(%rdx)
140ed73f2:	45 03 f6             	add    %r14d,%r14d
140ed73f5:	eb 21                	jmp    0x140ed7418
140ed73f7:	2b f0                	sub    %eax,%esi
140ed73f9:	46 8d 34 75 01 00 00 	lea    0x1(,%r14,2),%r14d
140ed7400:	00
140ed7401:	2b f8                	sub    %eax,%edi
140ed7403:	89 74 24 20          	mov    %esi,0x20(%rsp)
140ed7407:	0f b7 c1             	movzwl %cx,%eax
140ed740a:	89 7c 24 24          	mov    %edi,0x24(%rsp)
140ed740e:	66 c1 e8 05          	shr    $0x5,%ax
140ed7412:	66 2b c8             	sub    %ax,%cx
140ed7415:	66 89 0a             	mov    %cx,(%rdx)
140ed7418:	81 fe 00 00 00 01    	cmp    $0x1000000,%esi
140ed741e:	73 23                	jae    0x140ed7443
140ed7420:	48 3b 5d 40          	cmp    0x40(%rbp),%rbx
140ed7424:	0f 84 7c 29 00 00    	je     0x140ed9da6
140ed742a:	48 8b 45 30          	mov    0x30(%rbp),%rax
140ed742e:	c1 e7 08             	shl    $0x8,%edi
140ed7431:	c1 e6 08             	shl    $0x8,%esi
140ed7434:	0f b6 04 03          	movzbl (%rbx,%rax,1),%eax
140ed7438:	0b c7                	or     %edi,%eax
140ed743a:	8b f8                	mov    %eax,%edi
140ed743c:	89 44 24 24          	mov    %eax,0x24(%rsp)
140ed7440:	48 ff c3             	inc    %rbx
140ed7443:	41 8b c6             	mov    %r14d,%eax
140ed7446:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed744b:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed744f:	8b c6                	mov    %esi,%eax
140ed7451:	c1 e8 0b             	shr    $0xb,%eax
140ed7454:	0f af c1             	imul   %ecx,%eax
140ed7457:	3b f8                	cmp    %eax,%edi
140ed7459:	73 27                	jae    0x140ed7482
140ed745b:	8b f0                	mov    %eax,%esi
140ed745d:	89 44 24 20          	mov    %eax,0x20(%rsp)
140ed7461:	41 8b c6             	mov    %r14d,%eax
140ed7464:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed7469:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed746d:	b8 00 08 00 00       	mov    $0x800,%eax
140ed7472:	2b c1                	sub    %ecx,%eax
140ed7474:	c1 e8 05             	shr    $0x5,%eax
140ed7477:	66 03 c1             	add    %cx,%ax
140ed747a:	66 89 02             	mov    %ax,(%rdx)
140ed747d:	45 03 f6             	add    %r14d,%r14d
140ed7480:	eb 21                	jmp    0x140ed74a3
140ed7482:	2b f0                	sub    %eax,%esi
140ed7484:	46 8d 34 75 01 00 00 	lea    0x1(,%r14,2),%r14d
140ed748b:	00
140ed748c:	2b f8                	sub    %eax,%edi
140ed748e:	89 74 24 20          	mov    %esi,0x20(%rsp)
140ed7492:	0f b7 c1             	movzwl %cx,%eax
140ed7495:	89 7c 24 24          	mov    %edi,0x24(%rsp)
140ed7499:	66 c1 e8 05          	shr    $0x5,%ax
140ed749d:	66 2b c8             	sub    %ax,%cx
140ed74a0:	66 89 0a             	mov    %cx,(%rdx)
140ed74a3:	81 fe 00 00 00 01    	cmp    $0x1000000,%esi
140ed74a9:	73 23                	jae    0x140ed74ce
140ed74ab:	48 3b 5d 40          	cmp    0x40(%rbp),%rbx
140ed74af:	0f 84 05 29 00 00    	je     0x140ed9dba
140ed74b5:	48 8b 45 30          	mov    0x30(%rbp),%rax
140ed74b9:	c1 e7 08             	shl    $0x8,%edi
140ed74bc:	c1 e6 08             	shl    $0x8,%esi
140ed74bf:	0f b6 04 03          	movzbl (%rbx,%rax,1),%eax
140ed74c3:	0b c7                	or     %edi,%eax
140ed74c5:	8b f8                	mov    %eax,%edi
140ed74c7:	89 44 24 24          	mov    %eax,0x24(%rsp)
140ed74cb:	48 ff c3             	inc    %rbx
140ed74ce:	41 8b c6             	mov    %r14d,%eax
140ed74d1:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed74d6:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed74da:	8b c6                	mov    %esi,%eax
140ed74dc:	c1 e8 0b             	shr    $0xb,%eax
140ed74df:	0f af c1             	imul   %ecx,%eax
140ed74e2:	3b f8                	cmp    %eax,%edi
140ed74e4:	73 27                	jae    0x140ed750d
140ed74e6:	8b f0                	mov    %eax,%esi
140ed74e8:	89 44 24 20          	mov    %eax,0x20(%rsp)
140ed74ec:	41 8b c6             	mov    %r14d,%eax
140ed74ef:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed74f4:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed74f8:	b8 00 08 00 00       	mov    $0x800,%eax
140ed74fd:	2b c1                	sub    %ecx,%eax
140ed74ff:	c1 e8 05             	shr    $0x5,%eax
140ed7502:	66 03 c1             	add    %cx,%ax
140ed7505:	66 89 02             	mov    %ax,(%rdx)
140ed7508:	45 03 f6             	add    %r14d,%r14d
140ed750b:	eb 21                	jmp    0x140ed752e
140ed750d:	2b f0                	sub    %eax,%esi
140ed750f:	46 8d 34 75 01 00 00 	lea    0x1(,%r14,2),%r14d
140ed7516:	00
140ed7517:	2b f8                	sub    %eax,%edi
140ed7519:	89 74 24 20          	mov    %esi,0x20(%rsp)
140ed751d:	0f b7 c1             	movzwl %cx,%eax
140ed7520:	89 7c 24 24          	mov    %edi,0x24(%rsp)
140ed7524:	66 c1 e8 05          	shr    $0x5,%ax
140ed7528:	66 2b c8             	sub    %ax,%cx
140ed752b:	66 89 0a             	mov    %cx,(%rdx)
140ed752e:	81 fe 00 00 00 01    	cmp    $0x1000000,%esi
140ed7534:	73 23                	jae    0x140ed7559
140ed7536:	48 3b 5d 40          	cmp    0x40(%rbp),%rbx
140ed753a:	0f 84 8e 28 00 00    	je     0x140ed9dce
140ed7540:	48 8b 45 30          	mov    0x30(%rbp),%rax
140ed7544:	c1 e7 08             	shl    $0x8,%edi
140ed7547:	c1 e6 08             	shl    $0x8,%esi
140ed754a:	0f b6 04 03          	movzbl (%rbx,%rax,1),%eax
140ed754e:	0b c7                	or     %edi,%eax
140ed7550:	8b f8                	mov    %eax,%edi
140ed7552:	89 44 24 24          	mov    %eax,0x24(%rsp)
140ed7556:	48 ff c3             	inc    %rbx
140ed7559:	41 8b c6             	mov    %r14d,%eax
140ed755c:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed7561:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed7565:	8b c6                	mov    %esi,%eax
140ed7567:	c1 e8 0b             	shr    $0xb,%eax
140ed756a:	0f af c1             	imul   %ecx,%eax
140ed756d:	3b f8                	cmp    %eax,%edi
140ed756f:	73 27                	jae    0x140ed7598
140ed7571:	8b f0                	mov    %eax,%esi
140ed7573:	89 44 24 20          	mov    %eax,0x20(%rsp)
140ed7577:	41 8b c6             	mov    %r14d,%eax
140ed757a:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed757f:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed7583:	b8 00 08 00 00       	mov    $0x800,%eax
140ed7588:	2b c1                	sub    %ecx,%eax
140ed758a:	c1 e8 05             	shr    $0x5,%eax
140ed758d:	66 03 c1             	add    %cx,%ax
140ed7590:	66 89 02             	mov    %ax,(%rdx)
140ed7593:	45 03 f6             	add    %r14d,%r14d
140ed7596:	eb 21                	jmp    0x140ed75b9
140ed7598:	2b f0                	sub    %eax,%esi
140ed759a:	46 8d 34 75 01 00 00 	lea    0x1(,%r14,2),%r14d
140ed75a1:	00
140ed75a2:	2b f8                	sub    %eax,%edi
140ed75a4:	89 74 24 20          	mov    %esi,0x20(%rsp)
140ed75a8:	0f b7 c1             	movzwl %cx,%eax
140ed75ab:	89 7c 24 24          	mov    %edi,0x24(%rsp)
140ed75af:	66 c1 e8 05          	shr    $0x5,%ax
140ed75b3:	66 2b c8             	sub    %ax,%cx
140ed75b6:	66 89 0a             	mov    %cx,(%rdx)
140ed75b9:	81 fe 00 00 00 01    	cmp    $0x1000000,%esi
140ed75bf:	73 23                	jae    0x140ed75e4
140ed75c1:	48 3b 5d 40          	cmp    0x40(%rbp),%rbx
140ed75c5:	0f 84 17 28 00 00    	je     0x140ed9de2
140ed75cb:	48 8b 45 30          	mov    0x30(%rbp),%rax
140ed75cf:	c1 e7 08             	shl    $0x8,%edi
140ed75d2:	c1 e6 08             	shl    $0x8,%esi
140ed75d5:	0f b6 04 03          	movzbl (%rbx,%rax,1),%eax
140ed75d9:	0b c7                	or     %edi,%eax
140ed75db:	8b f8                	mov    %eax,%edi
140ed75dd:	89 44 24 24          	mov    %eax,0x24(%rsp)
140ed75e1:	48 ff c3             	inc    %rbx
140ed75e4:	41 8b c6             	mov    %r14d,%eax
140ed75e7:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed75ec:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed75f0:	8b c6                	mov    %esi,%eax
140ed75f2:	c1 e8 0b             	shr    $0xb,%eax
140ed75f5:	0f af c1             	imul   %ecx,%eax
140ed75f8:	3b f8                	cmp    %eax,%edi
140ed75fa:	73 27                	jae    0x140ed7623
140ed75fc:	8b f0                	mov    %eax,%esi
140ed75fe:	89 44 24 20          	mov    %eax,0x20(%rsp)
140ed7602:	41 8b c6             	mov    %r14d,%eax
140ed7605:	41 0f b7 0c 44       	movzwl (%r12,%rax,2),%ecx
140ed760a:	49 8d 14 44          	lea    (%r12,%rax,2),%rdx
140ed760e:	b8 00 08 00 00       	mov    $0x800,%eax
140ed7613:	2b c1                	sub    %ecx,%eax
140ed7615:	c1 e8 05             	shr    $0x5,%eax
140ed7618:	66 03 c1             	add    %cx,%ax