4ad29f:	5f                   	pop    %edi
4ad2a0:	5e                   	pop    %esi
4ad2a1:	5b                   	pop    %ebx
4ad2a2:	c9                   	leave
4ad2a3:	c3                   	ret
4ad2a4:	8b 44 24 04          	mov    0x4(%esp),%eax
4ad2a8:	ba 90 a7 50 00       	mov    $0x50a790,%edx
4ad2ad:	56                   	push   %esi
4ad2ae:	8b ca                	mov    %edx,%ecx
4ad2b0:	3b 41 10             	cmp    0x10(%ecx),%eax
4ad2b3:	76 05                	jbe    0x4ad2ba
4ad2b5:	3b 41 14             	cmp    0x14(%ecx),%eax
4ad2b8:	72 08                	jb     0x4ad2c2
4ad2ba:	8b 09                	mov    (%ecx),%ecx
4ad2bc:	3b ca                	cmp    %edx,%ecx
4ad2be:	74 37                	je     0x4ad2f7
4ad2c0:	eb ee                	jmp    0x4ad2b0
4ad2c2:	a8 0f                	test   $0xf,%al
4ad2c4:	75 31                	jne    0x4ad2f7
4ad2c6:	8b f0                	mov    %eax,%esi
4ad2c8:	ba 00 01 00 00       	mov    $0x100,%edx
4ad2cd:	81 e6 ff 0f 00 00    	and    $0xfff,%esi
4ad2d3:	3b f2                	cmp    %edx,%esi
4ad2d5:	72 20                	jb     0x4ad2f7
4ad2d7:	8b 74 24 0c          	mov    0xc(%esp),%esi
4ad2db:	89 0e                	mov    %ecx,(%esi)
4ad2dd:	8b 74 24 10          	mov    0x10(%esp),%esi
4ad2e1:	8b c8                	mov    %eax,%ecx
4ad2e3:	66 81 e1 00 f0       	and    $0xf000,%cx
4ad2e8:	2b c1                	sub    %ecx,%eax
4ad2ea:	89 0e                	mov    %ecx,(%esi)
4ad2ec:	2b c2                	sub    %edx,%eax
4ad2ee:	5e                   	pop    %esi
4ad2ef:	c1 f8 04             	sar    $0x4,%eax
4ad2f2:	8d 44 08 08          	lea    0x8(%eax,%ecx,1),%eax
4ad2f6:	c3                   	ret
4ad2f7:	33 c0                	xor    %eax,%eax
4ad2f9:	5e                   	pop    %esi
4ad2fa:	c3                   	ret
4ad2fb:	8b 44 24 04          	mov    0x4(%esp),%eax
4ad2ff:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4ad303:	2b 48 10             	sub    0x10(%eax),%ecx
4ad306:	c1 f9 0c             	sar    $0xc,%ecx
4ad309:	8d 44 c8 18          	lea    0x18(%eax,%ecx,8),%eax
4ad30d:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4ad311:	0f b6 11             	movzbl (%ecx),%edx
4ad314:	01 10                	add    %edx,(%eax)
4ad316:	80 21 00             	andb   $0x0,(%ecx)
4ad319:	81 38 f0 00 00 00    	cmpl   $0xf0,(%eax)
4ad31f:	c7 40 04 f1 00 00 00 	movl   $0xf1,0x4(%eax)
4ad326:	75 17                	jne    0x4ad33f
4ad328:	ff 05 e4 ca 51 00    	incl   0x51cae4
4ad32e:	83 3d e4 ca 51 00 20 	cmpl   $0x20,0x51cae4
4ad335:	75 08                	jne    0x4ad33f
4ad337:	6a 10                	push   $0x10
4ad339:	e8 a4 fe ff ff       	call   0x4ad1e2
4ad33e:	59                   	pop    %ecx
4ad33f:	c3                   	ret
4ad340:	55                   	push   %ebp
4ad341:	8b ec                	mov    %esp,%ebp
4ad343:	51                   	push   %ecx
4ad344:	51                   	push   %ecx
4ad345:	53                   	push   %ebx
4ad346:	56                   	push   %esi
4ad347:	8b 35 b0 c7 50 00    	mov    0x50c7b0,%esi
4ad34d:	57                   	push   %edi
4ad34e:	8b 56 10             	mov    0x10(%esi),%edx
4ad351:	83 fa ff             	cmp    $0xffffffff,%edx
4ad354:	0f 84 9f 00 00 00    	je     0x4ad3f9
4ad35a:	8b 7e 08             	mov    0x8(%esi),%edi
4ad35d:	8d 8e 18 20 00 00    	lea    0x2018(%esi),%ecx
4ad363:	8b c7                	mov    %edi,%eax
4ad365:	2b c6                	sub    %esi,%eax
4ad367:	83 e8 18             	sub    $0x18,%eax
4ad36a:	c1 f8 03             	sar    $0x3,%eax
4ad36d:	c1 e0 0c             	shl    $0xc,%eax
4ad370:	03 c2                	add    %edx,%eax
4ad372:	3b f9                	cmp    %ecx,%edi
4ad374:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ad377:	73 3a                	jae    0x4ad3b3
4ad379:	8b 0f                	mov    (%edi),%ecx
4ad37b:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ad37e:	3b cb                	cmp    %ebx,%ecx
4ad380:	7c 1a                	jl     0x4ad39c
4ad382:	39 5f 04             	cmp    %ebx,0x4(%edi)
4ad385:	76 15                	jbe    0x4ad39c
4ad387:	53                   	push   %ebx
4ad388:	51                   	push   %ecx
4ad389:	50                   	push   %eax
4ad38a:	e8 b9 01 00 00       	call   0x4ad548
4ad38f:	83 c4 0c             	add    $0xc,%esp
4ad392:	85 c0                	test   %eax,%eax
4ad394:	75 75                	jne    0x4ad40b
4ad396:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ad399:	89 5f 04             	mov    %ebx,0x4(%edi)
4ad39c:	83 c7 08             	add    $0x8,%edi
4ad39f:	8d 8e 18 20 00 00    	lea    0x2018(%esi),%ecx
4ad3a5:	05 00 10 00 00       	add    $0x1000,%eax
4ad3aa:	3b f9                	cmp    %ecx,%edi
4ad3ac:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ad3af:	72 c8                	jb     0x4ad379
4ad3b1:	eb 03                	jmp    0x4ad3b6
4ad3b3:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ad3b6:	8b 46 08             	mov    0x8(%esi),%eax
4ad3b9:	8b 4e 10             	mov    0x10(%esi),%ecx
4ad3bc:	8d 7e 18             	lea    0x18(%esi),%edi
4ad3bf:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ad3c2:	3b f8                	cmp    %eax,%edi
4ad3c4:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4ad3c7:	73 33                	jae    0x4ad3fc
4ad3c9:	8b 07                	mov    (%edi),%eax
4ad3cb:	3b c3                	cmp    %ebx,%eax
4ad3cd:	7c 19                	jl     0x4ad3e8
4ad3cf:	39 5f 04             	cmp    %ebx,0x4(%edi)
4ad3d2:	76 14                	jbe    0x4ad3e8
4ad3d4:	53                   	push   %ebx
4ad3d5:	50                   	push   %eax
4ad3d6:	ff 75 fc             	push   -0x4(%ebp)
4ad3d9:	e8 6a 01 00 00       	call   0x4ad548
4ad3de:	83 c4 0c             	add    $0xc,%esp
4ad3e1:	85 c0                	test   %eax,%eax
4ad3e3:	75 26                	jne    0x4ad40b
4ad3e5:	89 5f 04             	mov    %ebx,0x4(%edi)
4ad3e8:	81 45 fc 00 10 00 00 	addl   $0x1000,-0x4(%ebp)
4ad3ef:	83 c7 08             	add    $0x8,%edi
4ad3f2:	3b 7d f8             	cmp    -0x8(%ebp),%edi
4ad3f5:	72 d2                	jb     0x4ad3c9
4ad3f7:	eb 03                	jmp    0x4ad3fc
4ad3f9:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ad3fc:	8b 36                	mov    (%esi),%esi
4ad3fe:	3b 35 b0 c7 50 00    	cmp    0x50c7b0,%esi
4ad404:	74 15                	je     0x4ad41b
4ad406:	e9 43 ff ff ff       	jmp    0x4ad34e
4ad40b:	89 35 b0 c7 50 00    	mov    %esi,0x50c7b0
4ad411:	29 1f                	sub    %ebx,(%edi)
4ad413:	89 7e 08             	mov    %edi,0x8(%esi)
4ad416:	e9 28 01 00 00       	jmp    0x4ad543
4ad41b:	b8 90 a7 50 00       	mov    $0x50a790,%eax
4ad420:	8b f8                	mov    %eax,%edi
4ad422:	83 7f 10 ff          	cmpl   $0xffffffff,0x10(%edi)
4ad426:	74 06                	je     0x4ad42e
4ad428:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
4ad42c:	75 0c                	jne    0x4ad43a
4ad42e:	8b 3f                	mov    (%edi),%edi
4ad430:	3b f8                	cmp    %eax,%edi
4ad432:	0f 84 d7 00 00 00    	je     0x4ad50f
4ad438:	eb e8                	jmp    0x4ad422
4ad43a:	8b 5f 0c             	mov    0xc(%edi),%ebx
4ad43d:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4ad441:	8b f3                	mov    %ebx,%esi
4ad443:	8b c3                	mov    %ebx,%eax
4ad445:	2b f7                	sub    %edi,%esi
4ad447:	83 ee 18             	sub    $0x18,%esi
4ad44a:	c1 fe 03             	sar    $0x3,%esi
4ad44d:	c1 e6 0c             	shl    $0xc,%esi
4ad450:	03 77 10             	add    0x10(%edi),%esi
4ad453:	83 3b ff             	cmpl   $0xffffffff,(%ebx)
4ad456:	75 11                	jne    0x4ad469
4ad458:	83 7d fc 10          	cmpl   $0x10,-0x4(%ebp)
4ad45c:	7d 0b                	jge    0x4ad469
4ad45e:	83 c0 08             	add    $0x8,%eax
4ad461:	ff 45 fc             	incl   -0x4(%ebp)
4ad464:	83 38 ff             	cmpl   $0xffffffff,(%eax)
4ad467:	74 ef                	je     0x4ad458
4ad469:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ad46c:	6a 04                	push   $0x4
4ad46e:	c1 e0 0c             	shl    $0xc,%eax
4ad471:	68 00 10 00 00       	push   $0x1000
4ad476:	50                   	push   %eax
4ad477:	56                   	push   %esi
4ad478:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ad47b:	ff 15 b4 31 4b 00    	call   *0x4b31b4
4ad481:	3b c6                	cmp    %esi,%eax
4ad483:	0f 85 b8 00 00 00    	jne    0x4ad541
4ad489:	6a 00                	push   $0x0
4ad48b:	ff 75 f8             	push   -0x8(%ebp)
4ad48e:	56                   	push   %esi
4ad48f:	e8 8c 3a 00 00       	call   0x4b0f20
4ad494:	8b 55 fc             	mov    -0x4(%ebp),%edx
4ad497:	83 c4 0c             	add    $0xc,%esp
4ad49a:	85 d2                	test   %edx,%edx
4ad49c:	8b cb                	mov    %ebx,%ecx
4ad49e:	7e 30                	jle    0x4ad4d0
4ad4a0:	8d 46 04             	lea    0x4(%esi),%eax
4ad4a3:	89 55 fc             	mov    %edx,-0x4(%ebp)
4ad4a6:	80 88 f4 00 00 00 ff 	orb    $0xff,0xf4(%eax)
4ad4ad:	8d 50 04             	lea    0x4(%eax),%edx
4ad4b0:	89 50 fc             	mov    %edx,-0x4(%eax)
4ad4b3:	ba f0 00 00 00       	mov    $0xf0,%edx
4ad4b8:	89 10                	mov    %edx,(%eax)
4ad4ba:	89 11                	mov    %edx,(%ecx)
4ad4bc:	c7 41 04 f1 00 00 00 	movl   $0xf1,0x4(%ecx)
4ad4c3:	05 00 10 00 00       	add    $0x1000,%eax
4ad4c8:	83 c1 08             	add    $0x8,%ecx
4ad4cb:	ff 4d fc             	decl   -0x4(%ebp)
4ad4ce:	75 d6                	jne    0x4ad4a6
4ad4d0:	89 3d b0 c7 50 00    	mov    %edi,0x50c7b0
4ad4d6:	8d 87 18 20 00 00    	lea    0x2018(%edi),%eax
4ad4dc:	3b c8                	cmp    %eax,%ecx
4ad4de:	73 0c                	jae    0x4ad4ec
4ad4e0:	83 39 ff             	cmpl   $0xffffffff,(%ecx)
4ad4e3:	74 05                	je     0x4ad4ea
4ad4e5:	83 c1 08             	add    $0x8,%ecx
4ad4e8:	eb f2                	jmp    0x4ad4dc
4ad4ea:	3b c8                	cmp    %eax,%ecx
4ad4ec:	1b c0                	sbb    %eax,%eax
4ad4ee:	23 c1                	and    %ecx,%eax
4ad4f0:	89 47 0c             	mov    %eax,0xc(%edi)
4ad4f3:	8b 45 08             	mov    0x8(%ebp),%eax
4ad4f6:	88 46 08             	mov    %al,0x8(%esi)
4ad4f9:	89 5f 08             	mov    %ebx,0x8(%edi)
4ad4fc:	29 03                	sub    %eax,(%ebx)
4ad4fe:	29 46 04             	sub    %eax,0x4(%esi)
4ad501:	8d 4c 06 08          	lea    0x8(%esi,%eax,1),%ecx
4ad505:	8d 86 00 01 00 00    	lea    0x100(%esi),%eax
4ad50b:	89 0e                	mov    %ecx,(%esi)
4ad50d:	eb 34                	jmp    0x4ad543
4ad50f:	e8 34 fb ff ff       	call   0x4ad048
4ad514:	85 c0                	test   %eax,%eax
4ad516:	74 29                	je     0x4ad541
4ad518:	8b 48 10             	mov    0x10(%eax),%ecx
4ad51b:	88 59 08             	mov    %bl,0x8(%ecx)
4ad51e:	8d 54 19 08          	lea    0x8(%ecx,%ebx,1),%edx
4ad522:	a3 b0 c7 50 00       	mov    %eax,0x50c7b0
4ad527:	89 11                	mov    %edx,(%ecx)
4ad529:	ba f0 00 00 00       	mov    $0xf0,%edx
4ad52e:	2b d3                	sub    %ebx,%edx
4ad530:	89 51 04             	mov    %edx,0x4(%ecx)
4ad533:	0f b6 d3             	movzbl %bl,%edx
4ad536:	29 50 18             	sub    %edx,0x18(%eax)
4ad539:	8d 81 00 01 00 00    	lea    0x100(%ecx),%eax
4ad53f:	eb 02                	jmp    0x4ad543
4ad541:	33 c0                	xor    %eax,%eax
4ad543:	5f                   	pop    %edi
4ad544:	5e                   	pop    %esi
4ad545:	5b                   	pop    %ebx
4ad546:	c9                   	leave
4ad547:	c3                   	ret
4ad548:	55                   	push   %ebp
4ad549:	8b ec                	mov    %esp,%ebp
4ad54b:	51                   	push   %ecx
4ad54c:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ad54f:	8b 55 10             	mov    0x10(%ebp),%edx
4ad552:	53                   	push   %ebx
4ad553:	56                   	push   %esi
4ad554:	8b 71 04             	mov    0x4(%ecx),%esi
4ad557:	57                   	push   %edi
4ad558:	8b 39                	mov    (%ecx),%edi
4ad55a:	8d 99 f8 00 00 00    	lea    0xf8(%ecx),%ebx
4ad560:	3b f2                	cmp    %edx,%esi
4ad562:	89 7d fc             	mov    %edi,-0x4(%ebp)
4ad565:	8b c7                	mov    %edi,%eax
4ad567:	89 5d 08             	mov    %ebx,0x8(%ebp)
4ad56a:	72 21                	jb     0x4ad58d
4ad56c:	8d 04 17             	lea    (%edi,%edx,1),%eax
4ad56f:	88 17                	mov    %dl,(%edi)
4ad571:	3b c3                	cmp    %ebx,%eax
4ad573:	73 07                	jae    0x4ad57c
4ad575:	01 11                	add    %edx,(%ecx)
4ad577:	29 51 04             	sub    %edx,0x4(%ecx)
4ad57a:	eb 09                	jmp    0x4ad585
4ad57c:	83 61 04 00          	andl   $0x0,0x4(%ecx)
4ad580:	8d 41 08             	lea    0x8(%ecx),%eax
4ad583:	89 01                	mov    %eax,(%ecx)
4ad585:	8d 47 08             	lea    0x8(%edi),%eax
4ad588:	e9 ce 00 00 00       	jmp    0x4ad65b
4ad58d:	03 f7                	add    %edi,%esi
4ad58f:	80 3e 00             	cmpb   $0x0,(%esi)
4ad592:	74 02                	je     0x4ad596
4ad594:	8b c6                	mov    %esi,%eax
4ad596:	8d 34 10             	lea    (%eax,%edx,1),%esi
4ad599:	3b f3                	cmp    %ebx,%esi
4ad59b:	73 43                	jae    0x4ad5e0
4ad59d:	8a 18                	mov    (%eax),%bl
4ad59f:	84 db                	test   %bl,%bl
4ad5a1:	75 30                	jne    0x4ad5d3
4ad5a3:	6a 01                	push   $0x1
4ad5a5:	8d 58 01             	lea    0x1(%eax),%ebx
4ad5a8:	5e                   	pop    %esi
4ad5a9:	80 3b 00             	cmpb   $0x0,(%ebx)
4ad5ac:	75 04                	jne    0x4ad5b2
4ad5ae:	43                   	inc    %ebx
4ad5af:	46                   	inc    %esi
4ad5b0:	eb f7                	jmp    0x4ad5a9
4ad5b2:	3b f2                	cmp    %edx,%esi
4ad5b4:	73 4e                	jae    0x4ad604
4ad5b6:	3b 45 fc             	cmp    -0x4(%ebp),%eax
4ad5b9:	75 05                	jne    0x4ad5c0
4ad5bb:	89 71 04             	mov    %esi,0x4(%ecx)
4ad5be:	eb 0c                	jmp    0x4ad5cc
4ad5c0:	29 75 0c             	sub    %esi,0xc(%ebp)
4ad5c3:	39 55 0c             	cmp    %edx,0xc(%ebp)
4ad5c6:	0f 82 99 00 00 00    	jb     0x4ad665
4ad5cc:	8b 7d fc             	mov    -0x4(%ebp),%edi
4ad5cf:	8b c3                	mov    %ebx,%eax
4ad5d1:	eb 05                	jmp    0x4ad5d8
4ad5d3:	0f b6 f3             	movzbl %bl,%esi
4ad5d6:	03 c6                	add    %esi,%eax
4ad5d8:	8d 34 10             	lea    (%eax,%edx,1),%esi
4ad5db:	3b 75 08             	cmp    0x8(%ebp),%esi
4ad5de:	72 bd                	jb     0x4ad59d
4ad5e0:	8d 71 08             	lea    0x8(%ecx),%esi
4ad5e3:	3b f7                	cmp    %edi,%esi
4ad5e5:	73 7e                	jae    0x4ad665
4ad5e7:	8d 04 16             	lea    (%esi,%edx,1),%eax
4ad5ea:	3b 45 08             	cmp    0x8(%ebp),%eax
4ad5ed:	73 76                	jae    0x4ad665
4ad5ef:	8a 06                	mov    (%esi),%al
4ad5f1:	84 c0                	test   %al,%al
4ad5f3:	75 40                	jne    0x4ad635
4ad5f5:	6a 01                	push   $0x1
4ad5f7:	8d 5e 01             	lea    0x1(%esi),%ebx
4ad5fa:	58                   	pop    %eax
4ad5fb:	80 3b 00             	cmpb   $0x0,(%ebx)
4ad5fe:	75 25                	jne    0x4ad625
4ad600:	43                   	inc    %ebx
4ad601:	40                   	inc    %eax
4ad602:	eb f7                	jmp    0x4ad5fb
4ad604:	8d 1c 10             	lea    (%eax,%edx,1),%ebx
4ad607:	3b 5d 08             	cmp    0x8(%ebp),%ebx
4ad60a:	73 09                	jae    0x4ad615
4ad60c:	2b f2                	sub    %edx,%esi
4ad60e:	89 19                	mov    %ebx,(%ecx)
4ad610:	89 71 04             	mov    %esi,0x4(%ecx)
4ad613:	eb 09                	jmp    0x4ad61e
4ad615:	83 61 04 00          	andl   $0x0,0x4(%ecx)
4ad619:	8d 71 08             	lea    0x8(%ecx),%esi
4ad61c:	89 31                	mov    %esi,(%ecx)
4ad61e:	88 10                	mov    %dl,(%eax)
4ad620:	83 c0 08             	add    $0x8,%eax
4ad623:	eb 36                	jmp    0x4ad65b
4ad625:	3b c2                	cmp    %edx,%eax
4ad627:	73 13                	jae    0x4ad63c
4ad629:	29 45 0c             	sub    %eax,0xc(%ebp)
4ad62c:	39 55 0c             	cmp    %edx,0xc(%ebp)
4ad62f:	72 34                	jb     0x4ad665
4ad631:	8b f3                	mov    %ebx,%esi
4ad633:	eb ae                	jmp    0x4ad5e3
4ad635:	0f b6 c0             	movzbl %al,%eax
4ad638:	03 f0                	add    %eax,%esi
4ad63a:	eb a7                	jmp    0x4ad5e3
4ad63c:	8d 1c 16             	lea    (%esi,%edx,1),%ebx
4ad63f:	3b 5d 08             	cmp    0x8(%ebp),%ebx
4ad642:	73 09                	jae    0x4ad64d
4ad644:	2b c2                	sub    %edx,%eax
4ad646:	89 19                	mov    %ebx,(%ecx)
4ad648:	89 41 04             	mov    %eax,0x4(%ecx)
4ad64b:	eb 09                	jmp    0x4ad656
4ad64d:	83 61 04 00          	andl   $0x0,0x4(%ecx)
4ad651:	8d 41 08             	lea    0x8(%ecx),%eax