48118b:	75 ec                	jne    0x481179
48118d:	8b 45 0c             	mov    0xc(%ebp),%eax
481190:	c7 00 12 00 00 00    	movl   $0x12,(%eax)
481196:	8b 45 08             	mov    0x8(%ebp),%eax
481199:	89 38                	mov    %edi,(%eax)
48119b:	33 c0                	xor    %eax,%eax
48119d:	e9 90 68 f8 ff       	jmp    0x407a32
4811a2:	66 83 3f 00          	cmpw   $0x0,(%edi)
4811a6:	0f 85 bd e6 ff ff    	jne    0x47f869
4811ac:	eb df                	jmp    0x48118d
4811ae:	c7 45 b0 01 00 00 00 	movl   $0x1,-0x50(%ebp)
4811b5:	83 c7 02             	add    $0x2,%edi
4811b8:	be 83 00 00 00       	mov    $0x83,%esi
4811bd:	89 7d fc             	mov    %edi,-0x4(%ebp)
4811c0:	8b 55 f8             	mov    -0x8(%ebp),%edx
4811c3:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
4811c6:	e9 91 70 f8 ff       	jmp    0x40825c
4811cb:	66 83 7f 02 3f       	cmpw   $0x3f,0x2(%edi)
4811d0:	be 87 00 00 00       	mov    $0x87,%esi
4811d5:	8b cf                	mov    %edi,%ecx
4811d7:	89 75 88             	mov    %esi,-0x78(%ebp)
4811da:	89 4d 80             	mov    %ecx,-0x80(%ebp)
4811dd:	75 36                	jne    0x481215
4811df:	66 83 7f 04 43       	cmpw   $0x43,0x4(%edi)
4811e4:	75 2f                	jne    0x481215
4811e6:	0f b7 57 06          	movzwl 0x6(%edi),%edx
4811ea:	b8 03 00 00 00       	mov    $0x3,%eax
4811ef:	83 fa 30             	cmp    $0x30,%edx
4811f2:	72 11                	jb     0x481205
4811f4:	66 83 fa 39          	cmp    $0x39,%dx
4811f8:	77 0b                	ja     0x481205
4811fa:	0f b7 54 47 02       	movzwl 0x2(%edi,%eax,2),%edx
4811ff:	40                   	inc    %eax
481200:	83 fa 30             	cmp    $0x30,%edx
481203:	73 ef                	jae    0x4811f4
481205:	66 83 3c 47 29       	cmpw   $0x29,(%edi,%eax,2)
48120a:	75 09                	jne    0x481215
48120c:	8d 48 01             	lea    0x1(%eax),%ecx
48120f:	8d 0c 4f             	lea    (%edi,%ecx,2),%ecx
481212:	89 4d 80             	mov    %ecx,-0x80(%ebp)
481215:	66 83 79 02 3f       	cmpw   $0x3f,0x2(%ecx)
48121a:	75 13                	jne    0x48122f
48121c:	0f b7 41 04          	movzwl 0x4(%ecx),%eax
481220:	83 f8 3d             	cmp    $0x3d,%eax
481223:	74 9b                	je     0x4811c0
481225:	83 f8 21             	cmp    $0x21,%eax
481228:	74 96                	je     0x4811c0
48122a:	83 f8 3c             	cmp    $0x3c,%eax
48122d:	74 91                	je     0x4811c0
48122f:	8b 55 f8             	mov    -0x8(%ebp),%edx
481232:	b8 8d 00 00 00       	mov    $0x8d,%eax
481237:	66 89 42 04          	mov    %ax,0x4(%edx)
48123b:	8b 7d fc             	mov    -0x4(%ebp),%edi
48123e:	83 c7 02             	add    $0x2,%edi
481241:	89 7d fc             	mov    %edi,-0x4(%ebp)
481244:	0f b7 07             	movzwl (%edi),%eax
481247:	c7 45 f0 02 00 00 00 	movl   $0x2,-0x10(%ebp)
48124e:	c7 45 e4 ff ff ff ff 	movl   $0xffffffff,-0x1c(%ebp)
481255:	83 f8 52             	cmp    $0x52,%eax
481258:	75 21                	jne    0x48127b
48125a:	66 83 7f 02 26       	cmpw   $0x26,0x2(%edi)
48125f:	75 1a                	jne    0x48127b
481261:	83 c9 ff             	or     $0xffffffff,%ecx
481264:	83 c7 04             	add    $0x4,%edi
481267:	89 7d fc             	mov    %edi,-0x4(%ebp)
48126a:	b8 8f 00 00 00       	mov    $0x8f,%eax
48126f:	66 89 42 04          	mov    %ax,0x4(%edx)
481273:	8b 7d fc             	mov    -0x4(%ebp),%edi
481276:	89 4d ec             	mov    %ecx,-0x14(%ebp)
481279:	eb 16                	jmp    0x481291
48127b:	83 f8 3c             	cmp    $0x3c,%eax
48127e:	0f 85 fc 00 00 00    	jne    0x481380
481284:	c7 45 ec 3e 00 00 00 	movl   $0x3e,-0x14(%ebp)
48128b:	83 c7 02             	add    $0x2,%edi
48128e:	89 7d fc             	mov    %edi,-0x4(%ebp)
481291:	0f b7 07             	movzwl (%edi),%eax
481294:	83 f8 30             	cmp    $0x30,%eax
481297:	72 09                	jb     0x4812a2
481299:	83 f8 39             	cmp    $0x39,%eax
48129c:	0f 86 8d 0e 00 00    	jbe    0x48212f
4812a2:	b9 ff 00 00 00       	mov    $0xff,%ecx
4812a7:	66 3b c1             	cmp    %cx,%ax
4812aa:	0f 87 c1 0e 00 00    	ja     0x482171
4812b0:	8b 4d 28             	mov    0x28(%ebp),%ecx
4812b3:	0f b7 c0             	movzwl %ax,%eax
4812b6:	8b 49 0c             	mov    0xc(%ecx),%ecx
4812b9:	f6 04 08 10          	testb  $0x10,(%eax,%ecx,1)
4812bd:	0f 84 ae 0e 00 00    	je     0x482171
4812c3:	89 7d 94             	mov    %edi,-0x6c(%ebp)
4812c6:	83 c7 02             	add    $0x2,%edi
4812c9:	89 7d fc             	mov    %edi,-0x4(%ebp)
4812cc:	0f b7 07             	movzwl (%edi),%eax
4812cf:	c7 45 d4 ff 00 00 00 	movl   $0xff,-0x2c(%ebp)
4812d6:	66 3b 45 d4          	cmp    -0x2c(%ebp),%ax
4812da:	77 1f                	ja     0x4812fb
4812dc:	0f b7 c0             	movzwl %ax,%eax
4812df:	f6 04 08 10          	testb  $0x10,(%eax,%ecx,1)
4812e3:	74 16                	je     0x4812fb
4812e5:	83 c7 02             	add    $0x2,%edi
4812e8:	89 7d fc             	mov    %edi,-0x4(%ebp)
4812eb:	0f b7 07             	movzwl (%edi),%eax
4812ee:	c7 45 d4 ff 00 00 00 	movl   $0xff,-0x2c(%ebp)
4812f5:	66 3b 45 d4          	cmp    -0x2c(%ebp),%ax
4812f9:	76 e1                	jbe    0x4812dc
4812fb:	8b c7                	mov    %edi,%eax
4812fd:	2b 45 94             	sub    -0x6c(%ebp),%eax
481300:	d1 f8                	sar    $1,%eax
481302:	89 45 9c             	mov    %eax,-0x64(%ebp)
481305:	8b 45 2c             	mov    0x2c(%ebp),%eax
481308:	85 c0                	test   %eax,%eax
48130a:	74 02                	je     0x48130e
48130c:	ff 00                	incl   (%eax)
48130e:	8b 4d ec             	mov    -0x14(%ebp),%ecx
481311:	85 c9                	test   %ecx,%ecx
481313:	7e 12                	jle    0x481327
481315:	66 8b 07             	mov    (%edi),%ax
481318:	83 c7 02             	add    $0x2,%edi
48131b:	89 7d fc             	mov    %edi,-0x4(%ebp)
48131e:	66 3b c1             	cmp    %cx,%ax
481321:	0f 85 32 0e 00 00    	jne    0x482159
481327:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
48132a:	66 8b 07             	mov    (%edi),%ax
48132d:	83 c7 02             	add    $0x2,%edi
481330:	89 7d e8             	mov    %edi,-0x18(%ebp)
481333:	89 7d fc             	mov    %edi,-0x4(%ebp)
481336:	66 83 f8 29          	cmp    $0x29,%ax
48133a:	0f 85 19 0e 00 00    	jne    0x482159
481340:	83 7d 2c 00          	cmpl   $0x0,0x2c(%ebp)
481344:	0f 85 79 fe ff ff    	jne    0x4811c3
48134a:	85 c9                	test   %ecx,%ecx
48134c:	0f 88 e5 00 00 00    	js     0x481437
481352:	8b 45 c8             	mov    -0x38(%ebp),%eax
481355:	85 c0                	test   %eax,%eax
481357:	0f 8e e7 0d 00 00    	jle    0x482144
48135d:	85 c9                	test   %ecx,%ecx
48135f:	0f 84 af 00 00 00    	je     0x481414
481365:	83 f9 2d             	cmp    $0x2d,%ecx
481368:	8b 4d 28             	mov    0x28(%ebp),%ecx
48136b:	0f 85 9b 00 00 00    	jne    0x48140c
481371:	8b 41 40             	mov    0x40(%ecx),%eax
481374:	2b 45 c8             	sub    -0x38(%ebp),%eax
481377:	40                   	inc    %eax
481378:	89 45 c8             	mov    %eax,-0x38(%ebp)
48137b:	e9 97 00 00 00       	jmp    0x481417
481380:	83 f8 27             	cmp    $0x27,%eax
481383:	75 08                	jne    0x48138d
481385:	89 45 ec             	mov    %eax,-0x14(%ebp)
481388:	e9 fe fe ff ff       	jmp    0x48128b
48138d:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
481394:	83 f8 2d             	cmp    $0x2d,%eax
481397:	74 1e                	je     0x4813b7
481399:	83 f8 2b             	cmp    $0x2b,%eax
48139c:	74 19                	je     0x4813b7
48139e:	83 f8 30             	cmp    $0x30,%eax
4813a1:	0f 82 fb fe ff ff    	jb     0x4812a2
4813a7:	83 f8 39             	cmp    $0x39,%eax
4813aa:	0f 87 e1 fe ff ff    	ja     0x481291
4813b0:	33 c9                	xor    %ecx,%ecx
4813b2:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4813b5:	eb 13                	jmp    0x4813ca
4813b7:	8b c8                	mov    %eax,%ecx
4813b9:	83 c7 02             	add    $0x2,%edi
4813bc:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4813bf:	89 7d fc             	mov    %edi,-0x4(%ebp)
4813c2:	85 c9                	test   %ecx,%ecx
4813c4:	0f 88 c7 fe ff ff    	js     0x481291
4813ca:	0f b7 07             	movzwl (%edi),%eax
4813cd:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
4813d4:	83 f8 30             	cmp    $0x30,%eax
4813d7:	0f 82 4d ff ff ff    	jb     0x48132a
4813dd:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4813e0:	66 83 f8 39          	cmp    $0x39,%ax
4813e4:	0f 87 3d ff ff ff    	ja     0x481327
4813ea:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
4813ed:	0f b7 c0             	movzwl %ax,%eax
4813f0:	83 c7 02             	add    $0x2,%edi
4813f3:	8d 49 e8             	lea    -0x18(%ecx),%ecx
4813f6:	89 7d fc             	mov    %edi,-0x4(%ebp)
4813f9:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
4813fc:	0f b7 07             	movzwl (%edi),%eax
4813ff:	89 4d c8             	mov    %ecx,-0x38(%ebp)
481402:	83 f8 30             	cmp    $0x30,%eax
481405:	73 d9                	jae    0x4813e0
481407:	e9 1b ff ff ff       	jmp    0x481327
48140c:	03 41 40             	add    0x40(%ecx),%eax
48140f:	89 45 c8             	mov    %eax,-0x38(%ebp)
481412:	eb 03                	jmp    0x481417
481414:	8b 4d 28             	mov    0x28(%ebp),%ecx
481417:	85 c0                	test   %eax,%eax
481419:	0f 8e 3a 09 00 00    	jle    0x481d59
48141f:	3b 41 44             	cmp    0x44(%ecx),%eax
481422:	0f 8f 31 09 00 00    	jg     0x481d59
481428:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
48142b:	66 89 42 06          	mov    %ax,0x6(%edx)
48142f:	8b 7d fc             	mov    -0x4(%ebp),%edi
481432:	e9 25 6e f8 ff       	jmp    0x40825c
481437:	8b 45 28             	mov    0x28(%ebp),%eax
48143a:	8b 48 2c             	mov    0x2c(%eax),%ecx
48143d:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
481440:	8b 4d 28             	mov    0x28(%ebp),%ecx
481443:	33 c0                	xor    %eax,%eax
481445:	89 45 e4             	mov    %eax,-0x1c(%ebp)
481448:	39 41 30             	cmp    %eax,0x30(%ecx)
48144b:	7e 3d                	jle    0x48148a
48144d:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
481450:	8b f0                	mov    %eax,%esi
481452:	8b f9                	mov    %ecx,%edi
481454:	ff 75 9c             	push   -0x64(%ebp)
481457:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
48145a:	8d 53 02             	lea    0x2(%ebx),%edx
48145d:	e8 c5 fe fe ff       	call   0x471327
481462:	83 c4 04             	add    $0x4,%esp
481465:	85 c0                	test   %eax,%eax
481467:	74 0c                	je     0x481475
481469:	8b 47 34             	mov    0x34(%edi),%eax
48146c:	46                   	inc    %esi
48146d:	8d 1c 43             	lea    (%ebx,%eax,2),%ebx
481470:	3b 77 30             	cmp    0x30(%edi),%esi
481473:	7c df                	jl     0x481454
481475:	8b 7d e8             	mov    -0x18(%ebp),%edi
481478:	8b 55 f8             	mov    -0x8(%ebp),%edx
48147b:	89 75 e4             	mov    %esi,-0x1c(%ebp)
48147e:	8b 75 88             	mov    -0x78(%ebp),%esi
481481:	8b 45 e4             	mov    -0x1c(%ebp),%eax
481484:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
481487:	8b 5d bc             	mov    -0x44(%ebp),%ebx
48148a:	8b 4d 28             	mov    0x28(%ebp),%ecx
48148d:	3b 41 30             	cmp    0x30(%ecx),%eax
481490:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
481493:	0f 8d 96 00 00 00    	jge    0x48152f
481499:	8b 7d e4             	mov    -0x1c(%ebp),%edi
48149c:	b8 01 00 00 00       	mov    $0x1,%eax
4814a1:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4814a4:	0f b7 01             	movzwl (%ecx),%eax
4814a7:	8b 4d 28             	mov    0x28(%ebp),%ecx
4814aa:	89 7d e8             	mov    %edi,-0x18(%ebp)
4814ad:	47                   	inc    %edi
4814ae:	89 45 c8             	mov    %eax,-0x38(%ebp)
4814b1:	3b 79 30             	cmp    0x30(%ecx),%edi
4814b4:	7d 6a                	jge    0x481520
4814b6:	8b 41 34             	mov    0x34(%ecx),%eax
4814b9:	8b 75 d4             	mov    -0x2c(%ebp),%esi
4814bc:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
4814bf:	03 c0                	add    %eax,%eax
4814c1:	89 45 ec             	mov    %eax,-0x14(%ebp)
4814c4:	ff 75 9c             	push   -0x64(%ebp)
4814c7:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
4814ca:	03 f0                	add    %eax,%esi
4814cc:	8d 56 02             	lea    0x2(%esi),%edx
4814cf:	e8 53 fe fe ff       	call   0x471327
4814d4:	83 c4 04             	add    $0x4,%esp
4814d7:	85 c0                	test   %eax,%eax
4814d9:	75 0d                	jne    0x4814e8
4814db:	8b 45 28             	mov    0x28(%ebp),%eax
4814de:	47                   	inc    %edi
4814df:	43                   	inc    %ebx
4814e0:	3b 78 30             	cmp    0x30(%eax),%edi
4814e3:	8b 45 ec             	mov    -0x14(%ebp),%eax
4814e6:	7c dc                	jl     0x4814c4
4814e8:	8b 75 88             	mov    -0x78(%ebp),%esi
4814eb:	8b 55 f8             	mov    -0x8(%ebp),%edx
4814ee:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
4814f1:	83 fb 01             	cmp    $0x1,%ebx
4814f4:	8b 5d bc             	mov    -0x44(%ebp),%ebx
4814f7:	7e 24                	jle    0x48151d
4814f9:	8b 45 e8             	mov    -0x18(%ebp),%eax
4814fc:	66 ff 42 04          	incw   0x4(%edx)
481500:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
481503:	66 89 42 06          	mov    %ax,0x6(%edx)
481507:	8b 45 e4             	mov    -0x1c(%ebp),%eax
48150a:	66 89 42 08          	mov    %ax,0x8(%edx)
48150e:	8b 7d fc             	mov    -0x4(%ebp),%edi
481511:	c7 45 f0 03 00 00 00 	movl   $0x3,-0x10(%ebp)
481518:	e9 3f 6d f8 ff       	jmp    0x40825c
48151d:	8b 45 c8             	mov    -0x38(%ebp),%eax
481520:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
481523:	66 89 42 06          	mov    %ax,0x6(%edx)
481527:	8b 7d fc             	mov    -0x4(%ebp),%edi
48152a:	e9 2d 6d f8 ff       	jmp    0x40825c
48152f:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
481533:	0f 85 20 08 00 00    	jne    0x481d59
481539:	8b 45 94             	mov    -0x6c(%ebp),%eax
48153c:	66 83 38 52          	cmpw   $0x52,(%eax)
481540:	75 6d                	jne    0x4815af
481542:	33 c9                	xor    %ecx,%ecx
481544:	83 7d 9c 01          	cmpl   $0x1,-0x64(%ebp)
481548:	89 4d c8             	mov    %ecx,-0x38(%ebp)
48154b:	c7 45 bc 01 00 00 00 	movl   $0x1,-0x44(%ebp)
481552:	8d 41 01             	lea    0x1(%ecx),%eax
481555:	7e 38                	jle    0x48158f
481557:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
48155a:	0f b7 04 41          	movzwl (%ecx,%eax,2),%eax
48155e:	8b 4d c8             	mov    -0x38(%ebp),%ecx
481561:	83 f8 30             	cmp    $0x30,%eax
481564:	0f 82 ef 07 00 00    	jb     0x481d59
48156a:	83 f8 39             	cmp    $0x39,%eax
48156d:	0f 87 e6 07 00 00    	ja     0x481d59
481573:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
481576:	8d 49 e8             	lea    -0x18(%ecx),%ecx
481579:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
48157c:	8b 45 bc             	mov    -0x44(%ebp),%eax
48157f:	40                   	inc    %eax
481580:	89 4d c8             	mov    %ecx,-0x38(%ebp)
481583:	89 45 bc             	mov    %eax,-0x44(%ebp)
481586:	3b 45 9c             	cmp    -0x64(%ebp),%eax
481589:	7c cc                	jl     0x481557
48158b:	85 c9                	test   %ecx,%ecx
48158d:	75 08                	jne    0x481597
48158f:	b9 ff ff 00 00       	mov    $0xffff,%ecx
481594:	89 4d c8             	mov    %ecx,-0x38(%ebp)
481597:	b8 8f 00 00 00       	mov    $0x8f,%eax
48159c:	66 89 4a 06          	mov    %cx,0x6(%edx)
4815a0:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
4815a3:	66 89 42 04          	mov    %ax,0x4(%edx)
4815a7:	8b 7d fc             	mov    -0x4(%ebp),%edi
4815aa:	e9 ad 6c f8 ff       	jmp    0x40825c
4815af:	83 7d 9c 06          	cmpl   $0x6,-0x64(%ebp)
4815b3:	0f 85 a0 07 00 00    	jne    0x481d59
4815b9:	6a 06                	push   $0x6
4815bb:	ba c8 4c 4b 00       	mov    $0x4b4cc8,%edx
4815c0:	8b c8                	mov    %eax,%ecx
4815c2:	e8 2c 73 f8 ff       	call   0x4088f3
4815c7:	83 c4 04             	add    $0x4,%esp
4815ca:	85 c0                	test   %eax,%eax
4815cc:	0f 85 87 07 00 00    	jne    0x481d59
4815d2:	8b 55 f8             	mov    -0x8(%ebp),%edx
4815d5:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
4815d8:	b8 91 00 00 00       	mov    $0x91,%eax
4815dd:	66 89 42 04          	mov    %ax,0x4(%edx)
4815e1:	8b 7d fc             	mov    -0x4(%ebp),%edi
4815e4:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
4815eb:	e9 6c 6c f8 ff       	jmp    0x40825c
4815f0:	ff 41 5c             	incl   0x5c(%ecx)
4815f3:	8b 55 f8             	mov    -0x8(%ebp),%edx
4815f6:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
4815f9:	83 c7 02             	add    $0x2,%edi
4815fc:	be 7d 00 00 00       	mov    $0x7d,%esi
481601:	89 7d fc             	mov    %edi,-0x4(%ebp)
481604:	e9 53 6c f8 ff       	jmp    0x40825c
481609:	83 c7 02             	add    $0x2,%edi
48160c:	89 7d fc             	mov    %edi,-0x4(%ebp)
48160f:	66 83 3f 29          	cmpw   $0x29,(%edi)
481613:	75 27                	jne    0x48163c
481615:	0f b7 47 02          	movzwl 0x2(%edi),%eax
481619:	83 f8 2a             	cmp    $0x2a,%eax
48161c:	74 1e                	je     0x48163c
48161e:	83 f8 2b             	cmp    $0x2b,%eax
481621:	74 19                	je     0x48163c
481623:	83 f8 3f             	cmp    $0x3f,%eax
481626:	74 14                	je     0x48163c