7a32e0:	c1 e3 08             	shl    $0x8,%ebx
7a32e3:	c1 e7 08             	shl    $0x8,%edi
7a32e6:	0f b6 04 06          	movzbl (%esi,%eax,1),%eax
7a32ea:	0b d8                	or     %eax,%ebx
7a32ec:	46                   	inc    %esi
7a32ed:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a32f1:	8b 44 24 18          	mov    0x18(%esp),%eax
7a32f5:	8d 04 50             	lea    (%eax,%edx,2),%eax
7a32f8:	0f b7 10             	movzwl (%eax),%edx
7a32fb:	89 44 24 2c          	mov    %eax,0x2c(%esp)
7a32ff:	8b c7                	mov    %edi,%eax
7a3301:	c1 e8 0b             	shr    $0xb,%eax
7a3304:	0f af c2             	imul   %edx,%eax
7a3307:	89 54 24 34          	mov    %edx,0x34(%esp)
7a330b:	3b d8                	cmp    %eax,%ebx
7a330d:	73 1b                	jae    0x7a332a
7a330f:	8b f8                	mov    %eax,%edi
7a3311:	f7 d1                	not    %ecx
7a3313:	b8 00 08 00 00       	mov    $0x800,%eax
7a3318:	2b c2                	sub    %edx,%eax
7a331a:	c1 e8 05             	shr    $0x5,%eax
7a331d:	03 c2                	add    %edx,%eax
7a331f:	8b 54 24 2c          	mov    0x2c(%esp),%edx
7a3323:	03 ed                	add    %ebp,%ebp
7a3325:	66 89 02             	mov    %ax,(%edx)
7a3328:	eb 20                	jmp    0x7a334a
7a332a:	2b d8                	sub    %eax,%ebx
7a332c:	8d 2c 6d 01 00 00 00 	lea    0x1(,%ebp,2),%ebp
7a3333:	2b f8                	sub    %eax,%edi
7a3335:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a3339:	66 8b c2             	mov    %dx,%ax
7a333c:	66 c1 e8 05          	shr    $0x5,%ax
7a3340:	66 2b d0             	sub    %ax,%dx
7a3343:	8b 44 24 2c          	mov    0x2c(%esp),%eax
7a3347:	66 89 10             	mov    %dx,(%eax)
7a334a:	8b 44 24 20          	mov    0x20(%esp),%eax
7a334e:	d1 64 24 24          	shll   $1,0x24(%esp)
7a3352:	23 c1                	and    %ecx,%eax
7a3354:	89 7c 24 58          	mov    %edi,0x58(%esp)
7a3358:	89 44 24 20          	mov    %eax,0x20(%esp)
7a335c:	8b 4c 24 24          	mov    0x24(%esp),%ecx
7a3360:	23 c8                	and    %eax,%ecx
7a3362:	8d 14 01             	lea    (%ecx,%eax,1),%edx
7a3365:	03 d5                	add    %ebp,%edx
7a3367:	81 ff 00 00 00 01    	cmp    $0x1000000,%edi
7a336d:	73 25                	jae    0x7a3394
7a336f:	3b b4 24 90 00 00 00 	cmp    0x90(%esp),%esi
7a3376:	0f 84 38 21 00 00    	je     0x7a54b4
7a337c:	8b 84 24 88 00 00 00 	mov    0x88(%esp),%eax
7a3383:	c1 e3 08             	shl    $0x8,%ebx
7a3386:	c1 e7 08             	shl    $0x8,%edi
7a3389:	0f b6 04 06          	movzbl (%esi,%eax,1),%eax
7a338d:	0b d8                	or     %eax,%ebx
7a338f:	46                   	inc    %esi
7a3390:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a3394:	8b 44 24 18          	mov    0x18(%esp),%eax
7a3398:	8d 04 50             	lea    (%eax,%edx,2),%eax
7a339b:	0f b7 10             	movzwl (%eax),%edx
7a339e:	89 44 24 2c          	mov    %eax,0x2c(%esp)
7a33a2:	8b c7                	mov    %edi,%eax
7a33a4:	c1 e8 0b             	shr    $0xb,%eax
7a33a7:	0f af c2             	imul   %edx,%eax
7a33aa:	89 54 24 34          	mov    %edx,0x34(%esp)
7a33ae:	3b d8                	cmp    %eax,%ebx
7a33b0:	73 1b                	jae    0x7a33cd
7a33b2:	8b f8                	mov    %eax,%edi
7a33b4:	f7 d1                	not    %ecx
7a33b6:	b8 00 08 00 00       	mov    $0x800,%eax
7a33bb:	2b c2                	sub    %edx,%eax
7a33bd:	c1 e8 05             	shr    $0x5,%eax
7a33c0:	03 c2                	add    %edx,%eax
7a33c2:	8b 54 24 2c          	mov    0x2c(%esp),%edx
7a33c6:	03 ed                	add    %ebp,%ebp
7a33c8:	66 89 02             	mov    %ax,(%edx)
7a33cb:	eb 20                	jmp    0x7a33ed
7a33cd:	2b d8                	sub    %eax,%ebx
7a33cf:	8d 2c 6d 01 00 00 00 	lea    0x1(,%ebp,2),%ebp
7a33d6:	2b f8                	sub    %eax,%edi
7a33d8:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a33dc:	66 8b c2             	mov    %dx,%ax
7a33df:	66 c1 e8 05          	shr    $0x5,%ax
7a33e3:	66 2b d0             	sub    %ax,%dx
7a33e6:	8b 44 24 2c          	mov    0x2c(%esp),%eax
7a33ea:	66 89 10             	mov    %dx,(%eax)
7a33ed:	21 4c 24 20          	and    %ecx,0x20(%esp)
7a33f1:	8b 44 24 28          	mov    0x28(%esp),%eax
7a33f5:	89 7c 24 58          	mov    %edi,0x58(%esp)
7a33f9:	8b 04 85 b8 29 c2 00 	mov    0xc229b8(,%eax,4),%eax
7a3400:	89 44 24 28          	mov    %eax,0x28(%esp)
7a3404:	8d 44 24 64          	lea    0x64(%esp),%eax
7a3408:	55                   	push   %ebp
7a3409:	50                   	push   %eax
7a340a:	e8 61 ec ff ff       	call   0x7a2070
7a340f:	83 c4 08             	add    $0x8,%esp
7a3412:	84 c0                	test   %al,%al
7a3414:	0f 84 0e f5 ff ff    	je     0x7a2928
7a341a:	8b 84 24 80 00 00 00 	mov    0x80(%esp),%eax
7a3421:	c7 80 a0 6e 00 00 12 	movl   $0x12,0x6ea0(%eax)
7a3428:	00 00 00
7a342b:	8b 44 24 68          	mov    0x68(%esp),%eax
7a342f:	89 44 24 14          	mov    %eax,0x14(%esp)
7a3433:	e9 1f 24 00 00       	jmp    0x7a5857
7a3438:	2b f8                	sub    %eax,%edi
7a343a:	2b d8                	sub    %eax,%ebx
7a343c:	66 8b c1             	mov    %cx,%ax
7a343f:	89 7c 24 58          	mov    %edi,0x58(%esp)
7a3443:	66 c1 e8 05          	shr    $0x5,%ax
7a3447:	66 2b c8             	sub    %ax,%cx
7a344a:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a344e:	66 89 0a             	mov    %cx,(%edx)
7a3451:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a3458:	81 ff 00 00 00 01    	cmp    $0x1000000,%edi
7a345e:	73 25                	jae    0x7a3485
7a3460:	3b b4 24 90 00 00 00 	cmp    0x90(%esp),%esi
7a3467:	0f 84 5d 20 00 00    	je     0x7a54ca
7a346d:	8b 84 24 88 00 00 00 	mov    0x88(%esp),%eax
7a3474:	c1 e3 08             	shl    $0x8,%ebx
7a3477:	c1 e7 08             	shl    $0x8,%edi
7a347a:	0f b6 04 06          	movzbl (%esi,%eax,1),%eax
7a347e:	0b d8                	or     %eax,%ebx
7a3480:	46                   	inc    %esi
7a3481:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a3485:	8b 44 24 28          	mov    0x28(%esp),%eax
7a3489:	8b cf                	mov    %edi,%ecx
7a348b:	c1 e9 0b             	shr    $0xb,%ecx
7a348e:	0f b7 94 42 80 61 00 	movzwl 0x6180(%edx,%eax,2),%edx
7a3495:	00
7a3496:	0f af ca             	imul   %edx,%ecx
7a3499:	3b d9                	cmp    %ecx,%ebx
7a349b:	0f 82 d8 07 00 00    	jb     0x7a3c79
7a34a1:	66 8b c2             	mov    %dx,%ax
7a34a4:	2b f9                	sub    %ecx,%edi
7a34a6:	66 c1 e8 05          	shr    $0x5,%ax
7a34aa:	2b d9                	sub    %ecx,%ebx
7a34ac:	8b 4c 24 28          	mov    0x28(%esp),%ecx
7a34b0:	66 2b d0             	sub    %ax,%dx
7a34b3:	83 7c 24 6c 00       	cmpl   $0x0,0x6c(%esp)
7a34b8:	8b 84 24 80 00 00 00 	mov    0x80(%esp),%eax
7a34bf:	89 7c 24 58          	mov    %edi,0x58(%esp)
7a34c3:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a34c7:	66 89 94 48 80 61 00 	mov    %dx,0x6180(%eax,%ecx,2)
7a34ce:	00
7a34cf:	0f 86 92 1b 00 00    	jbe    0x7a5067
7a34d5:	8b d0                	mov    %eax,%edx
7a34d7:	81 ff 00 00 00 01    	cmp    $0x1000000,%edi
7a34dd:	73 25                	jae    0x7a3504
7a34df:	3b b4 24 90 00 00 00 	cmp    0x90(%esp),%esi
7a34e6:	0f 84 ed 1f 00 00    	je     0x7a54d9
7a34ec:	8b 84 24 88 00 00 00 	mov    0x88(%esp),%eax
7a34f3:	c1 e3 08             	shl    $0x8,%ebx
7a34f6:	c1 e7 08             	shl    $0x8,%edi
7a34f9:	0f b6 04 06          	movzbl (%esi,%eax,1),%eax
7a34fd:	0b d8                	or     %eax,%ebx
7a34ff:	46                   	inc    %esi
7a3500:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a3504:	0f b7 8c 4a 98 61 00 	movzwl 0x6198(%edx,%ecx,2),%ecx
7a350b:	00
7a350c:	8b c7                	mov    %edi,%eax
7a350e:	c1 e8 0b             	shr    $0xb,%eax
7a3511:	8b d1                	mov    %ecx,%edx
7a3513:	0f af c2             	imul   %edx,%eax
7a3516:	3b d8                	cmp    %eax,%ebx
7a3518:	0f 83 1b 01 00 00    	jae    0x7a3639
7a351e:	8b f8                	mov    %eax,%edi
7a3520:	b8 00 08 00 00       	mov    $0x800,%eax
7a3525:	2b c2                	sub    %edx,%eax
7a3527:	89 7c 24 58          	mov    %edi,0x58(%esp)
7a352b:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a3532:	c1 e8 05             	shr    $0x5,%eax
7a3535:	03 c1                	add    %ecx,%eax
7a3537:	8b 4c 24 28          	mov    0x28(%esp),%ecx
7a353b:	66 89 84 4a 98 61 00 	mov    %ax,0x6198(%edx,%ecx,2)
7a3542:	00
7a3543:	81 ff 00 00 00 01    	cmp    $0x1000000,%edi
7a3549:	73 25                	jae    0x7a3570
7a354b:	3b b4 24 90 00 00 00 	cmp    0x90(%esp),%esi
7a3552:	0f 84 90 1f 00 00    	je     0x7a54e8
7a3558:	8b 84 24 88 00 00 00 	mov    0x88(%esp),%eax
7a355f:	c1 e3 08             	shl    $0x8,%ebx
7a3562:	c1 e7 08             	shl    $0x8,%edi
7a3565:	0f b6 04 06          	movzbl (%esi,%eax,1),%eax
7a3569:	0b d8                	or     %eax,%ebx
7a356b:	46                   	inc    %esi
7a356c:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a3570:	8d 81 0f 03 00 00    	lea    0x30f(%ecx),%eax
7a3576:	c1 e0 04             	shl    $0x4,%eax
7a3579:	03 44 24 2c          	add    0x2c(%esp),%eax
7a357d:	8d 0c 42             	lea    (%edx,%eax,2),%ecx
7a3580:	8b c7                	mov    %edi,%eax
7a3582:	0f b7 11             	movzwl (%ecx),%edx
7a3585:	c1 e8 0b             	shr    $0xb,%eax
7a3588:	0f af c2             	imul   %edx,%eax
7a358b:	89 54 24 34          	mov    %edx,0x34(%esp)
7a358f:	3b d8                	cmp    %eax,%ebx
7a3591:	73 6b                	jae    0x7a35fe
7a3593:	8b f8                	mov    %eax,%edi
7a3595:	b8 00 08 00 00       	mov    $0x800,%eax
7a359a:	2b c2                	sub    %edx,%eax
7a359c:	89 7c 24 58          	mov    %edi,0x58(%esp)
7a35a0:	c1 e8 05             	shr    $0x5,%eax
7a35a3:	03 c2                	add    %edx,%eax
7a35a5:	83 7c 24 28 07       	cmpl   $0x7,0x28(%esp)
7a35aa:	66 89 01             	mov    %ax,(%ecx)
7a35ad:	1b c0                	sbb    %eax,%eax
7a35af:	83 e0 fe             	and    $0xfffffffe,%eax
7a35b2:	83 c0 0b             	add    $0xb,%eax
7a35b5:	89 44 24 28          	mov    %eax,0x28(%esp)
7a35b9:	ff 74 24 1c          	push   0x1c(%esp)
7a35bd:	8d 44 24 68          	lea    0x68(%esp),%eax
7a35c1:	50                   	push   %eax
7a35c2:	e8 49 ea ff ff       	call   0x7a2010
7a35c7:	0f b6 c0             	movzbl %al,%eax
7a35ca:	50                   	push   %eax
7a35cb:	8d 44 24 70          	lea    0x70(%esp),%eax
7a35cf:	50                   	push   %eax
7a35d0:	e8 9b ea ff ff       	call   0x7a2070
7a35d5:	83 c4 10             	add    $0x10,%esp
7a35d8:	84 c0                	test   %al,%al
7a35da:	0f 84 48 f3 ff ff    	je     0x7a2928
7a35e0:	8b 84 24 80 00 00 00 	mov    0x80(%esp),%eax
7a35e7:	c7 80 a0 6e 00 00 32 	movl   $0x32,0x6ea0(%eax)
7a35ee:	00 00 00
7a35f1:	8b 44 24 68          	mov    0x68(%esp),%eax
7a35f5:	89 44 24 14          	mov    %eax,0x14(%esp)
7a35f9:	e9 59 22 00 00       	jmp    0x7a5857
7a35fe:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a3605:	2b f8                	sub    %eax,%edi
7a3607:	2b d8                	sub    %eax,%ebx
7a3609:	8b 44 24 28          	mov    0x28(%esp),%eax
7a360d:	05 0f 03 00 00       	add    $0x30f,%eax
7a3612:	c1 e0 04             	shl    $0x4,%eax
7a3615:	03 44 24 2c          	add    0x2c(%esp),%eax
7a3619:	0f b7 0c 42          	movzwl (%edx,%eax,2),%ecx
7a361d:	8d 14 42             	lea    (%edx,%eax,2),%edx
7a3620:	66 8b c1             	mov    %cx,%ax
7a3623:	66 c1 e8 05          	shr    $0x5,%ax
7a3627:	66 2b c8             	sub    %ax,%cx
7a362a:	66 89 0a             	mov    %cx,(%edx)
7a362d:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a3634:	e9 96 01 00 00       	jmp    0x7a37cf
7a3639:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a3640:	2b f8                	sub    %eax,%edi
7a3642:	2b d8                	sub    %eax,%ebx
7a3644:	89 7c 24 58          	mov    %edi,0x58(%esp)
7a3648:	8b 44 24 28          	mov    0x28(%esp),%eax
7a364c:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a3650:	0f b7 8c 42 98 61 00 	movzwl 0x6198(%edx,%eax,2),%ecx
7a3657:	00
7a3658:	66 8b c1             	mov    %cx,%ax
7a365b:	66 c1 e8 05          	shr    $0x5,%ax
7a365f:	66 2b c8             	sub    %ax,%cx
7a3662:	8b 44 24 28          	mov    0x28(%esp),%eax
7a3666:	66 89 8c 42 98 61 00 	mov    %cx,0x6198(%edx,%eax,2)
7a366d:	00
7a366e:	81 ff 00 00 00 01    	cmp    $0x1000000,%edi
7a3674:	73 25                	jae    0x7a369b
7a3676:	3b b4 24 90 00 00 00 	cmp    0x90(%esp),%esi
7a367d:	0f 84 74 1e 00 00    	je     0x7a54f7
7a3683:	8b 84 24 88 00 00 00 	mov    0x88(%esp),%eax
7a368a:	c1 e3 08             	shl    $0x8,%ebx
7a368d:	c1 e7 08             	shl    $0x8,%edi
7a3690:	0f b6 04 06          	movzbl (%esi,%eax,1),%eax
7a3694:	0b d8                	or     %eax,%ebx
7a3696:	46                   	inc    %esi
7a3697:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a369b:	8b 44 24 28          	mov    0x28(%esp),%eax
7a369f:	0f b7 8c 42 b0 61 00 	movzwl 0x61b0(%edx,%eax,2),%ecx
7a36a6:	00
7a36a7:	8b c7                	mov    %edi,%eax
7a36a9:	c1 e8 0b             	shr    $0xb,%eax
7a36ac:	8b d1                	mov    %ecx,%edx
7a36ae:	0f af c2             	imul   %edx,%eax
7a36b1:	3b d8                	cmp    %eax,%ebx
7a36b3:	73 36                	jae    0x7a36eb
7a36b5:	8b f8                	mov    %eax,%edi
7a36b7:	b8 00 08 00 00       	mov    $0x800,%eax
7a36bc:	2b c2                	sub    %edx,%eax
7a36be:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a36c5:	c1 e8 05             	shr    $0x5,%eax
7a36c8:	03 c1                	add    %ecx,%eax
7a36ca:	8b 4c 24 28          	mov    0x28(%esp),%ecx
7a36ce:	66 89 84 4a b0 61 00 	mov    %ax,0x61b0(%edx,%ecx,2)
7a36d5:	00
7a36d6:	8b 44 24 38          	mov    0x38(%esp),%eax
7a36da:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
7a36de:	89 4c 24 38          	mov    %ecx,0x38(%esp)
7a36e2:	89 44 24 1c          	mov    %eax,0x1c(%esp)
7a36e6:	e9 e8 00 00 00       	jmp    0x7a37d3
7a36eb:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a36f2:	2b f8                	sub    %eax,%edi
7a36f4:	2b d8                	sub    %eax,%ebx
7a36f6:	89 7c 24 58          	mov    %edi,0x58(%esp)
7a36fa:	66 8b c1             	mov    %cx,%ax
7a36fd:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a3701:	66 c1 e8 05          	shr    $0x5,%ax
7a3705:	66 2b c8             	sub    %ax,%cx
7a3708:	8b 44 24 28          	mov    0x28(%esp),%eax
7a370c:	66 89 8c 42 b0 61 00 	mov    %cx,0x61b0(%edx,%eax,2)
7a3713:	00
7a3714:	81 ff 00 00 00 01    	cmp    $0x1000000,%edi
7a371a:	73 25                	jae    0x7a3741
7a371c:	3b b4 24 90 00 00 00 	cmp    0x90(%esp),%esi
7a3723:	0f 84 dd 1d 00 00    	je     0x7a5506
7a3729:	8b 84 24 88 00 00 00 	mov    0x88(%esp),%eax
7a3730:	c1 e3 08             	shl    $0x8,%ebx
7a3733:	c1 e7 08             	shl    $0x8,%edi
7a3736:	0f b6 04 06          	movzbl (%esi,%eax,1),%eax
7a373a:	0b d8                	or     %eax,%ebx
7a373c:	46                   	inc    %esi
7a373d:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
7a3741:	8b 6c 24 28          	mov    0x28(%esp),%ebp
7a3745:	8b c7                	mov    %edi,%eax
7a3747:	c1 e8 0b             	shr    $0xb,%eax
7a374a:	0f b7 8c 6a c8 61 00 	movzwl 0x61c8(%edx,%ebp,2),%ecx
7a3751:	00
7a3752:	8b d1                	mov    %ecx,%edx
7a3754:	0f af c2             	imul   %edx,%eax
7a3757:	3b d8                	cmp    %eax,%ebx
7a3759:	73 37                	jae    0x7a3792
7a375b:	8b f8                	mov    %eax,%edi
7a375d:	b8 00 08 00 00       	mov    $0x800,%eax
7a3762:	2b c2                	sub    %edx,%eax
7a3764:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a376b:	c1 e8 05             	shr    $0x5,%eax
7a376e:	03 c1                	add    %ecx,%eax
7a3770:	8b 4c 24 38          	mov    0x38(%esp),%ecx
7a3774:	66 89 84 6a c8 61 00 	mov    %ax,0x61c8(%edx,%ebp,2)
7a377b:	00
7a377c:	8b 44 24 3c          	mov    0x3c(%esp),%eax
7a3780:	89 4c 24 3c          	mov    %ecx,0x3c(%esp)
7a3784:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
7a3788:	89 4c 24 38          	mov    %ecx,0x38(%esp)
7a378c:	89 44 24 1c          	mov    %eax,0x1c(%esp)
7a3790:	eb 41                	jmp    0x7a37d3
7a3792:	8b 94 24 80 00 00 00 	mov    0x80(%esp),%edx
7a3799:	2b f8                	sub    %eax,%edi
7a379b:	2b d8                	sub    %eax,%ebx
7a379d:	66 8b c1             	mov    %cx,%ax
7a37a0:	66 c1 e8 05          	shr    $0x5,%ax
7a37a4:	66 2b c8             	sub    %ax,%cx
7a37a7:	8b 44 24 40          	mov    0x40(%esp),%eax
7a37ab:	66 89 8c 6a c8 61 00 	mov    %cx,0x61c8(%edx,%ebp,2)
7a37b2:	00
7a37b3:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
7a37b7:	89 4c 24 40          	mov    %ecx,0x40(%esp)
7a37bb:	8b 4c 24 38          	mov    0x38(%esp),%ecx
7a37bf:	89 4c 24 3c          	mov    %ecx,0x3c(%esp)
7a37c3:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
7a37c7:	89 4c 24 38          	mov    %ecx,0x38(%esp)
7a37cb:	89 44 24 1c          	mov    %eax,0x1c(%esp)