4ab2e3:	5f                   	pop    %edi
4ab2e4:	5e                   	pop    %esi
4ab2e5:	5b                   	pop    %ebx
4ab2e6:	c9                   	leave
4ab2e7:	c3                   	ret
4ab2e8:	55                   	push   %ebp
4ab2e9:	8b ec                	mov    %esp,%ebp
4ab2eb:	83 7d 10 65          	cmpl   $0x65,0x10(%ebp)
4ab2ef:	74 32                	je     0x4ab323
4ab2f1:	83 7d 10 45          	cmpl   $0x45,0x10(%ebp)
4ab2f5:	74 2c                	je     0x4ab323
4ab2f7:	83 7d 10 66          	cmpl   $0x66,0x10(%ebp)
4ab2fb:	75 13                	jne    0x4ab310
4ab2fd:	ff 75 14             	push   0x14(%ebp)
4ab300:	ff 75 0c             	push   0xc(%ebp)
4ab303:	ff 75 08             	push   0x8(%ebp)
4ab306:	e8 4e fe ff ff       	call   0x4ab159
4ab30b:	83 c4 0c             	add    $0xc,%esp
4ab30e:	5d                   	pop    %ebp
4ab30f:	c3                   	ret
4ab310:	ff 75 18             	push   0x18(%ebp)
4ab313:	ff 75 14             	push   0x14(%ebp)
4ab316:	ff 75 0c             	push   0xc(%ebp)
4ab319:	ff 75 08             	push   0x8(%ebp)
4ab31c:	e8 34 ff ff ff       	call   0x4ab255
4ab321:	eb 11                	jmp    0x4ab334
4ab323:	ff 75 18             	push   0x18(%ebp)
4ab326:	ff 75 14             	push   0x14(%ebp)
4ab329:	ff 75 0c             	push   0xc(%ebp)
4ab32c:	ff 75 08             	push   0x8(%ebp)
4ab32f:	e8 02 fd ff ff       	call   0x4ab036
4ab334:	83 c4 10             	add    $0x10,%esp
4ab337:	5d                   	pop    %ebp
4ab338:	c3                   	ret
4ab339:	57                   	push   %edi
4ab33a:	8b 7c 24 0c          	mov    0xc(%esp),%edi
4ab33e:	85 ff                	test   %edi,%edi
4ab340:	74 1a                	je     0x4ab35c
4ab342:	56                   	push   %esi
4ab343:	8b 74 24 0c          	mov    0xc(%esp),%esi
4ab347:	56                   	push   %esi
4ab348:	e8 b3 3e 00 00       	call   0x4af200
4ab34d:	40                   	inc    %eax
4ab34e:	50                   	push   %eax
4ab34f:	56                   	push   %esi
4ab350:	03 f7                	add    %edi,%esi
4ab352:	56                   	push   %esi
4ab353:	e8 f8 dd ff ff       	call   0x4a9150
4ab358:	83 c4 10             	add    $0x10,%esp
4ab35b:	5e                   	pop    %esi
4ab35c:	5f                   	pop    %edi
4ab35d:	c3                   	ret
4ab35e:	55                   	push   %ebp
4ab35f:	8b ec                	mov    %esp,%ebp
4ab361:	53                   	push   %ebx
4ab362:	56                   	push   %esi
4ab363:	8b 75 0c             	mov    0xc(%ebp),%esi
4ab366:	8b 46 0c             	mov    0xc(%esi),%eax
4ab369:	8b 5e 10             	mov    0x10(%esi),%ebx
4ab36c:	a8 82                	test   $0x82,%al
4ab36e:	0f 84 f6 00 00 00    	je     0x4ab46a
4ab374:	a8 40                	test   $0x40,%al
4ab376:	0f 85 ee 00 00 00    	jne    0x4ab46a
4ab37c:	a8 01                	test   $0x1,%al
4ab37e:	74 16                	je     0x4ab396
4ab380:	83 66 04 00          	andl   $0x0,0x4(%esi)
4ab384:	a8 10                	test   $0x10,%al
4ab386:	0f 84 de 00 00 00    	je     0x4ab46a
4ab38c:	8b 4e 08             	mov    0x8(%esi),%ecx
4ab38f:	24 fe                	and    $0xfe,%al
4ab391:	89 0e                	mov    %ecx,(%esi)
4ab393:	89 46 0c             	mov    %eax,0xc(%esi)
4ab396:	8b 46 0c             	mov    0xc(%esi),%eax
4ab399:	83 66 04 00          	andl   $0x0,0x4(%esi)
4ab39d:	83 65 0c 00          	andl   $0x0,0xc(%ebp)
4ab3a1:	24 ef                	and    $0xef,%al
4ab3a3:	0c 02                	or     $0x2,%al
4ab3a5:	66 a9 0c 01          	test   $0x10c,%ax
4ab3a9:	89 46 0c             	mov    %eax,0xc(%esi)
4ab3ac:	75 22                	jne    0x4ab3d0
4ab3ae:	81 fe 80 cb 50 00    	cmp    $0x50cb80,%esi
4ab3b4:	74 08                	je     0x4ab3be
4ab3b6:	81 fe a0 cb 50 00    	cmp    $0x50cba0,%esi
4ab3bc:	75 0b                	jne    0x4ab3c9
4ab3be:	53                   	push   %ebx
4ab3bf:	e8 01 5c 00 00       	call   0x4b0fc5
4ab3c4:	85 c0                	test   %eax,%eax
4ab3c6:	59                   	pop    %ecx
4ab3c7:	75 07                	jne    0x4ab3d0
4ab3c9:	56                   	push   %esi
4ab3ca:	e8 b2 5b 00 00       	call   0x4b0f81
4ab3cf:	59                   	pop    %ecx
4ab3d0:	66 f7 46 0c 08 01    	testw  $0x108,0xc(%esi)
4ab3d6:	57                   	push   %edi
4ab3d7:	74 67                	je     0x4ab440
4ab3d9:	8b 46 08             	mov    0x8(%esi),%eax
4ab3dc:	8b 3e                	mov    (%esi),%edi
4ab3de:	2b f8                	sub    %eax,%edi
4ab3e0:	8d 48 01             	lea    0x1(%eax),%ecx
4ab3e3:	89 0e                	mov    %ecx,(%esi)
4ab3e5:	8b 4e 18             	mov    0x18(%esi),%ecx
4ab3e8:	49                   	dec    %ecx
4ab3e9:	85 ff                	test   %edi,%edi
4ab3eb:	89 4e 04             	mov    %ecx,0x4(%esi)
4ab3ee:	7e 10                	jle    0x4ab400
4ab3f0:	57                   	push   %edi
4ab3f1:	50                   	push   %eax
4ab3f2:	53                   	push   %ebx
4ab3f3:	e8 37 46 00 00       	call   0x4afa2f
4ab3f8:	83 c4 0c             	add    $0xc,%esp
4ab3fb:	89 45 0c             	mov    %eax,0xc(%ebp)
4ab3fe:	eb 36                	jmp    0x4ab436
4ab400:	83 fb ff             	cmp    $0xffffffff,%ebx
4ab403:	74 19                	je     0x4ab41e
4ab405:	8b cb                	mov    %ebx,%ecx
4ab407:	8b c3                	mov    %ebx,%eax
4ab409:	c1 f9 05             	sar    $0x5,%ecx
4ab40c:	83 e0 1f             	and    $0x1f,%eax
4ab40f:	8b 0c 8d 80 df 51 00 	mov    0x51df80(,%ecx,4),%ecx
4ab416:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4ab419:	8d 04 81             	lea    (%ecx,%eax,4),%eax
4ab41c:	eb 05                	jmp    0x4ab423
4ab41e:	b8 e8 a2 50 00       	mov    $0x50a2e8,%eax
4ab423:	f6 40 04 20          	testb  $0x20,0x4(%eax)
4ab427:	74 0d                	je     0x4ab436
4ab429:	6a 02                	push   $0x2
4ab42b:	6a 00                	push   $0x0
4ab42d:	53                   	push   %ebx
4ab42e:	e8 24 45 00 00       	call   0x4af957
4ab433:	83 c4 0c             	add    $0xc,%esp
4ab436:	8b 46 08             	mov    0x8(%esi),%eax
4ab439:	8a 4d 08             	mov    0x8(%ebp),%cl
4ab43c:	88 08                	mov    %cl,(%eax)
4ab43e:	eb 14                	jmp    0x4ab454
4ab440:	6a 01                	push   $0x1
4ab442:	8d 45 08             	lea    0x8(%ebp),%eax
4ab445:	5f                   	pop    %edi
4ab446:	57                   	push   %edi
4ab447:	50                   	push   %eax
4ab448:	53                   	push   %ebx
4ab449:	e8 e1 45 00 00       	call   0x4afa2f
4ab44e:	83 c4 0c             	add    $0xc,%esp
4ab451:	89 45 0c             	mov    %eax,0xc(%ebp)
4ab454:	39 7d 0c             	cmp    %edi,0xc(%ebp)
4ab457:	5f                   	pop    %edi
4ab458:	74 06                	je     0x4ab460
4ab45a:	83 4e 0c 20          	orl    $0x20,0xc(%esi)
4ab45e:	eb 0f                	jmp    0x4ab46f
4ab460:	8b 45 08             	mov    0x8(%ebp),%eax
4ab463:	25 ff 00 00 00       	and    $0xff,%eax
4ab468:	eb 08                	jmp    0x4ab472
4ab46a:	0c 20                	or     $0x20,%al
4ab46c:	89 46 0c             	mov    %eax,0xc(%esi)
4ab46f:	83 c8 ff             	or     $0xffffffff,%eax
4ab472:	5e                   	pop    %esi
4ab473:	5b                   	pop    %ebx
4ab474:	5d                   	pop    %ebp
4ab475:	c3                   	ret
4ab476:	55                   	push   %ebp
4ab477:	8b ec                	mov    %esp,%ebp
4ab479:	81 ec 4c 02 00 00    	sub    $0x24c,%esp
4ab47f:	53                   	push   %ebx
4ab480:	56                   	push   %esi
4ab481:	8b 75 0c             	mov    0xc(%ebp),%esi
4ab484:	33 c9                	xor    %ecx,%ecx
4ab486:	57                   	push   %edi
4ab487:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4ab48a:	8a 1e                	mov    (%esi),%bl
4ab48c:	46                   	inc    %esi
4ab48d:	84 db                	test   %bl,%bl
4ab48f:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4ab492:	89 4d d0             	mov    %ecx,-0x30(%ebp)
4ab495:	89 75 0c             	mov    %esi,0xc(%ebp)
4ab498:	0f 84 4e 07 00 00    	je     0x4abbec
4ab49e:	bf 00 08 00 00       	mov    $0x800,%edi
4ab4a3:	ba 00 02 00 00       	mov    $0x200,%edx
4ab4a8:	eb 0d                	jmp    0x4ab4b7
4ab4aa:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
4ab4ad:	ba 00 02 00 00       	mov    $0x200,%edx
4ab4b2:	bf 00 08 00 00       	mov    $0x800,%edi
4ab4b7:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
4ab4bb:	0f 8c 2b 07 00 00    	jl     0x4abbec
4ab4c1:	80 fb 20             	cmp    $0x20,%bl
4ab4c4:	7c 13                	jl     0x4ab4d9
4ab4c6:	80 fb 78             	cmp    $0x78,%bl
4ab4c9:	7f 0e                	jg     0x4ab4d9
4ab4cb:	0f be c3             	movsbl %bl,%eax
4ab4ce:	8a 80 10 3a 4b 00    	mov    0x4b3a10(%eax),%al
4ab4d4:	83 e0 0f             	and    $0xf,%eax
4ab4d7:	eb 02                	jmp    0x4ab4db
4ab4d9:	33 c0                	xor    %eax,%eax
4ab4db:	0f be 84 c1 30 3a 4b 	movsbl 0x4b3a30(%ecx,%eax,8),%eax
4ab4e2:	00
4ab4e3:	c1 f8 04             	sar    $0x4,%eax
4ab4e6:	83 f8 07             	cmp    $0x7,%eax
4ab4e9:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4ab4ec:	0f 87 e9 06 00 00    	ja     0x4abbdb
4ab4f2:	ff 24 85 f4 bb 4a 00 	jmp    *0x4abbf4(,%eax,4)
4ab4f9:	33 c0                	xor    %eax,%eax
4ab4fb:	83 4d f8 ff          	orl    $0xffffffff,-0x8(%ebp)
4ab4ff:	89 45 c0             	mov    %eax,-0x40(%ebp)
4ab502:	89 45 c8             	mov    %eax,-0x38(%ebp)
4ab505:	89 45 d8             	mov    %eax,-0x28(%ebp)
4ab508:	89 45 dc             	mov    %eax,-0x24(%ebp)
4ab50b:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ab50e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4ab511:	e9 c5 06 00 00       	jmp    0x4abbdb
4ab516:	0f be c3             	movsbl %bl,%eax
4ab519:	83 e8 20             	sub    $0x20,%eax
4ab51c:	74 3b                	je     0x4ab559
4ab51e:	83 e8 03             	sub    $0x3,%eax
4ab521:	74 2d                	je     0x4ab550
4ab523:	83 e8 08             	sub    $0x8,%eax
4ab526:	74 1f                	je     0x4ab547
4ab528:	48                   	dec    %eax
4ab529:	48                   	dec    %eax
4ab52a:	74 12                	je     0x4ab53e
4ab52c:	83 e8 03             	sub    $0x3,%eax
4ab52f:	0f 85 a6 06 00 00    	jne    0x4abbdb
4ab535:	83 4d fc 08          	orl    $0x8,-0x4(%ebp)
4ab539:	e9 9d 06 00 00       	jmp    0x4abbdb
4ab53e:	83 4d fc 04          	orl    $0x4,-0x4(%ebp)
4ab542:	e9 94 06 00 00       	jmp    0x4abbdb
4ab547:	83 4d fc 01          	orl    $0x1,-0x4(%ebp)
4ab54b:	e9 8b 06 00 00       	jmp    0x4abbdb
4ab550:	80 4d fc 80          	orb    $0x80,-0x4(%ebp)
4ab554:	e9 82 06 00 00       	jmp    0x4abbdb
4ab559:	83 4d fc 02          	orl    $0x2,-0x4(%ebp)
4ab55d:	e9 79 06 00 00       	jmp    0x4abbdb
4ab562:	80 fb 2a             	cmp    $0x2a,%bl
4ab565:	75 23                	jne    0x4ab58a
4ab567:	8d 45 10             	lea    0x10(%ebp),%eax
4ab56a:	50                   	push   %eax
4ab56b:	e8 42 07 00 00       	call   0x4abcb2
4ab570:	85 c0                	test   %eax,%eax
4ab572:	59                   	pop    %ecx
4ab573:	89 45 d8             	mov    %eax,-0x28(%ebp)
4ab576:	0f 8d 5f 06 00 00    	jge    0x4abbdb
4ab57c:	83 4d fc 04          	orl    $0x4,-0x4(%ebp)
4ab580:	f7 d8                	neg    %eax
4ab582:	89 45 d8             	mov    %eax,-0x28(%ebp)
4ab585:	e9 51 06 00 00       	jmp    0x4abbdb
4ab58a:	8b 45 d8             	mov    -0x28(%ebp),%eax
4ab58d:	0f be cb             	movsbl %bl,%ecx
4ab590:	8d 04 80             	lea    (%eax,%eax,4),%eax
4ab593:	8d 44 41 d0          	lea    -0x30(%ecx,%eax,2),%eax
4ab597:	eb e9                	jmp    0x4ab582
4ab599:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4ab59d:	e9 39 06 00 00       	jmp    0x4abbdb
4ab5a2:	80 fb 2a             	cmp    $0x2a,%bl
4ab5a5:	75 1e                	jne    0x4ab5c5
4ab5a7:	8d 45 10             	lea    0x10(%ebp),%eax
4ab5aa:	50                   	push   %eax
4ab5ab:	e8 02 07 00 00       	call   0x4abcb2
4ab5b0:	85 c0                	test   %eax,%eax
4ab5b2:	59                   	pop    %ecx
4ab5b3:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ab5b6:	0f 8d 1f 06 00 00    	jge    0x4abbdb
4ab5bc:	83 4d f8 ff          	orl    $0xffffffff,-0x8(%ebp)
4ab5c0:	e9 16 06 00 00       	jmp    0x4abbdb
4ab5c5:	8b 45 f8             	mov    -0x8(%ebp),%eax
4ab5c8:	0f be cb             	movsbl %bl,%ecx
4ab5cb:	8d 04 80             	lea    (%eax,%eax,4),%eax
4ab5ce:	8d 44 41 d0          	lea    -0x30(%ecx,%eax,2),%eax
4ab5d2:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ab5d5:	e9 01 06 00 00       	jmp    0x4abbdb
4ab5da:	80 fb 49             	cmp    $0x49,%bl
4ab5dd:	74 2d                	je     0x4ab60c
4ab5df:	80 fb 68             	cmp    $0x68,%bl
4ab5e2:	74 1f                	je     0x4ab603
4ab5e4:	80 fb 6c             	cmp    $0x6c,%bl
4ab5e7:	74 11                	je     0x4ab5fa
4ab5e9:	80 fb 77             	cmp    $0x77,%bl
4ab5ec:	0f 85 e9 05 00 00    	jne    0x4abbdb
4ab5f2:	09 7d fc             	or     %edi,-0x4(%ebp)
4ab5f5:	e9 e1 05 00 00       	jmp    0x4abbdb
4ab5fa:	83 4d fc 10          	orl    $0x10,-0x4(%ebp)
4ab5fe:	e9 d8 05 00 00       	jmp    0x4abbdb
4ab603:	83 4d fc 20          	orl    $0x20,-0x4(%ebp)
4ab607:	e9 cf 05 00 00       	jmp    0x4abbdb
4ab60c:	80 3e 36             	cmpb   $0x36,(%esi)
4ab60f:	75 14                	jne    0x4ab625
4ab611:	80 7e 01 34          	cmpb   $0x34,0x1(%esi)
4ab615:	75 0e                	jne    0x4ab625
4ab617:	46                   	inc    %esi
4ab618:	46                   	inc    %esi
4ab619:	80 4d fd 80          	orb    $0x80,-0x3(%ebp)
4ab61d:	89 75 0c             	mov    %esi,0xc(%ebp)
4ab620:	e9 b6 05 00 00       	jmp    0x4abbdb
4ab625:	83 65 c4 00          	andl   $0x0,-0x3c(%ebp)
4ab629:	8b 0d e0 a4 50 00    	mov    0x50a4e0,%ecx
4ab62f:	83 65 d4 00          	andl   $0x0,-0x2c(%ebp)
4ab633:	0f b6 c3             	movzbl %bl,%eax
4ab636:	f6 44 41 01 80       	testb  $0x80,0x1(%ecx,%eax,2)
4ab63b:	74 19                	je     0x4ab656
4ab63d:	8d 45 ec             	lea    -0x14(%ebp),%eax
4ab640:	50                   	push   %eax
4ab641:	ff 75 08             	push   0x8(%ebp)
4ab644:	0f be c3             	movsbl %bl,%eax
4ab647:	50                   	push   %eax
4ab648:	e8 c7 05 00 00       	call   0x4abc14
4ab64d:	8a 1e                	mov    (%esi),%bl
4ab64f:	83 c4 0c             	add    $0xc,%esp
4ab652:	46                   	inc    %esi
4ab653:	89 75 0c             	mov    %esi,0xc(%ebp)
4ab656:	8d 45 ec             	lea    -0x14(%ebp),%eax
4ab659:	50                   	push   %eax
4ab65a:	ff 75 08             	push   0x8(%ebp)
4ab65d:	0f be c3             	movsbl %bl,%eax
4ab660:	50                   	push   %eax
4ab661:	e8 ae 05 00 00       	call   0x4abc14
4ab666:	83 c4 0c             	add    $0xc,%esp
4ab669:	e9 6d 05 00 00       	jmp    0x4abbdb
4ab66e:	0f be c3             	movsbl %bl,%eax
4ab671:	83 f8 67             	cmp    $0x67,%eax
4ab674:	0f 8f 38 02 00 00    	jg     0x4ab8b2
4ab67a:	83 f8 65             	cmp    $0x65,%eax
4ab67d:	0f 8d 96 00 00 00    	jge    0x4ab719
4ab683:	83 f8 58             	cmp    $0x58,%eax
4ab686:	0f 8f ec 00 00 00    	jg     0x4ab778
4ab68c:	0f 84 94 02 00 00    	je     0x4ab926
4ab692:	83 e8 43             	sub    $0x43,%eax
4ab695:	0f 84 a1 00 00 00    	je     0x4ab73c
4ab69b:	48                   	dec    %eax
4ab69c:	48                   	dec    %eax
4ab69d:	74 70                	je     0x4ab70f
4ab69f:	48                   	dec    %eax
4ab6a0:	48                   	dec    %eax
4ab6a1:	74 6c                	je     0x4ab70f
4ab6a3:	83 e8 0c             	sub    $0xc,%eax
4ab6a6:	0f 85 1e 04 00 00    	jne    0x4abaca
4ab6ac:	66 f7 45 fc 30 08    	testw  $0x830,-0x4(%ebp)
4ab6b2:	75 03                	jne    0x4ab6b7
4ab6b4:	09 7d fc             	or     %edi,-0x4(%ebp)
4ab6b7:	83 7d f8 ff          	cmpl   $0xffffffff,-0x8(%ebp)
4ab6bb:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
4ab6c0:	74 03                	je     0x4ab6c5
4ab6c2:	8b 75 f8             	mov    -0x8(%ebp),%esi
4ab6c5:	8d 45 10             	lea    0x10(%ebp),%eax
4ab6c8:	50                   	push   %eax
4ab6c9:	e8 e4 05 00 00       	call   0x4abcb2
4ab6ce:	66 f7 45 fc 10 08    	testw  $0x810,-0x4(%ebp)
4ab6d4:	59                   	pop    %ecx
4ab6d5:	8b c8                	mov    %eax,%ecx
4ab6d7:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4ab6da:	0f 84 1a 02 00 00    	je     0x4ab8fa
4ab6e0:	85 c9                	test   %ecx,%ecx
4ab6e2:	75 09                	jne    0x4ab6ed
4ab6e4:	8b 0d dc a4 50 00    	mov    0x50a4dc,%ecx
4ab6ea:	89 4d f4             	mov    %ecx,-0xc(%ebp)