5854d2:	83 c7 05             	add    $0x5,%edi
5854d5:	8b 74 24 28          	mov    0x28(%esp),%esi
5854d9:	3b f3                	cmp    %ebx,%esi
5854db:	73 07                	jae    0x5854e4
5854dd:	6a 72                	push   $0x72
5854df:	e9 22 01 00 00       	jmp    0x585606
5854e4:	85 db                	test   %ebx,%ebx
5854e6:	74 1c                	je     0x585504
5854e8:	6a 76                	push   $0x76
5854ea:	68 54 d3 65 00       	push   $0x65d354
5854ef:	53                   	push   %ebx
5854f0:	57                   	push   %edi
5854f1:	e8 7a cb f5 ff       	call   0x4e2070
5854f6:	83 c4 10             	add    $0x10,%esp
5854f9:	89 45 20             	mov    %eax,0x20(%ebp)
5854fc:	85 c0                	test   %eax,%eax
5854fe:	0f 84 15 01 00 00    	je     0x585619
585504:	03 fb                	add    %ebx,%edi
585506:	89 5d 24             	mov    %ebx,0x24(%ebp)
585509:	2b f3                	sub    %ebx,%esi
58550b:	83 7d 00 00          	cmpl   $0x0,0x0(%ebp)
58550f:	74 1f                	je     0x585530
585511:	6a 1f                	push   $0x1f
585513:	68 54 d3 65 00       	push   $0x65d354
585518:	6a 67                	push   $0x67
58551a:	6a 70                	push   $0x70
58551c:	6a 32                	push   $0x32
58551e:	e8 5d 3a f5 ff       	call   0x4d8f80
585523:	83 c4 14             	add    $0x14,%esp
585526:	68 80 00 00 00       	push   $0x80
58552b:	e9 d6 00 00 00       	jmp    0x585606
585530:	83 fe 04             	cmp    $0x4,%esi
585533:	77 0b                	ja     0x585540
585535:	6a 2a                	push   $0x2a
585537:	68 54 d3 65 00       	push   $0x65d354
58553c:	6a 6b                	push   $0x6b
58553e:	eb da                	jmp    0x58551a
585540:	0f b6 07             	movzbl (%edi),%eax
585543:	8d 4f 01             	lea    0x1(%edi),%ecx
585546:	88 45 28             	mov    %al,0x28(%ebp)
585549:	0f b6 01             	movzbl (%ecx),%eax
58554c:	41                   	inc    %ecx
58554d:	55                   	push   %ebp
58554e:	88 45 29             	mov    %al,0x29(%ebp)
585551:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
585555:	e8 66 f7 ff ff       	call   0x584cc0
58555a:	83 c4 04             	add    $0x4,%esp
58555d:	85 c0                	test   %eax,%eax
58555f:	75 0b                	jne    0x58556c
585561:	6a 33                	push   $0x33
585563:	68 54 d3 65 00       	push   $0x65d354
585568:	6a 6b                	push   $0x6b
58556a:	eb ae                	jmp    0x58551a
58556c:	8b 4c 24 28          	mov    0x28(%esp),%ecx
585570:	0f b6 19             	movzbl (%ecx),%ebx
585573:	0f b6 41 01          	movzbl 0x1(%ecx),%eax
585577:	83 c1 02             	add    $0x2,%ecx
58557a:	c1 e3 08             	shl    $0x8,%ebx
58557d:	0b d8                	or     %eax,%ebx
58557f:	8b c7                	mov    %edi,%eax
585581:	2b c1                	sub    %ecx,%eax
585583:	03 c6                	add    %esi,%eax
585585:	89 44 24 28          	mov    %eax,0x28(%esp)
585589:	3b d8                	cmp    %eax,%ebx
58558b:	76 0b                	jbe    0x585598
58558d:	6a 3a                	push   $0x3a
58558f:	68 54 d3 65 00       	push   $0x65d354
585594:	6a 6b                	push   $0x6b
585596:	eb 82                	jmp    0x58551a
585598:	53                   	push   %ebx
585599:	51                   	push   %ecx
58559a:	55                   	push   %ebp
58559b:	e8 e0 f7 ff ff       	call   0x584d80
5855a0:	83 c4 0c             	add    $0xc,%esp
5855a3:	83 f8 01             	cmp    $0x1,%eax
5855a6:	0f 85 7a ff ff ff    	jne    0x585526
5855ac:	2b 5c 24 28          	sub    0x28(%esp),%ebx
5855b0:	03 de                	add    %esi,%ebx
5855b2:	85 db                	test   %ebx,%ebx
5855b4:	0f 8e 6c ff ff ff    	jle    0x585526
5855ba:	8d 04 37             	lea    (%edi,%esi,1),%eax
5855bd:	eb 21                	jmp    0x5855e0
5855bf:	68 87 00 00 00       	push   $0x87
5855c4:	68 54 d3 65 00       	push   $0x65d354
5855c9:	53                   	push   %ebx
5855ca:	57                   	push   %edi
5855cb:	e8 a0 ca f5 ff       	call   0x4e2070
5855d0:	83 c4 10             	add    $0x10,%esp
5855d3:	89 45 04             	mov    %eax,0x4(%ebp)
5855d6:	85 c0                	test   %eax,%eax
5855d8:	74 3f                	je     0x585619
5855da:	89 5d 08             	mov    %ebx,0x8(%ebp)
5855dd:	8d 04 1f             	lea    (%edi,%ebx,1),%eax
5855e0:	8b 4c 24 24          	mov    0x24(%esp),%ecx
5855e4:	8b 74 24 20          	mov    0x20(%esp),%esi
5855e8:	89 01                	mov    %eax,(%ecx)
5855ea:	85 f6                	test   %esi,%esi
5855ec:	74 0c                	je     0x5855fa
5855ee:	ff 36                	push   (%esi)
5855f0:	e8 6b f6 ff ff       	call   0x584c60
5855f5:	83 c4 04             	add    $0x4,%esp
5855f8:	89 2e                	mov    %ebp,(%esi)
5855fa:	5f                   	pop    %edi
5855fb:	5e                   	pop    %esi
5855fc:	8b c5                	mov    %ebp,%eax
5855fe:	5d                   	pop    %ebp
5855ff:	5b                   	pop    %ebx
585600:	83 c4 0c             	add    $0xc,%esp
585603:	c3                   	ret
585604:	6a 4c                	push   $0x4c
585606:	68 54 d3 65 00       	push   $0x65d354
58560b:	6a 68                	push   $0x68
58560d:	6a 6e                	push   $0x6e
58560f:	6a 32                	push   $0x32
585611:	e8 6a 39 f5 ff       	call   0x4d8f80
585616:	83 c4 14             	add    $0x14,%esp
585619:	55                   	push   %ebp
58561a:	e8 41 f6 ff ff       	call   0x584c60
58561f:	83 c4 04             	add    $0x4,%esp
585622:	33 c0                	xor    %eax,%eax
585624:	5f                   	pop    %edi
585625:	5e                   	pop    %esi
585626:	5d                   	pop    %ebp
585627:	5b                   	pop    %ebx
585628:	83 c4 0c             	add    $0xc,%esp
58562b:	c3                   	ret
58562c:	cc                   	int3
58562d:	cc                   	int3
58562e:	cc                   	int3
58562f:	cc                   	int3
585630:	8b 54 24 0c          	mov    0xc(%esp),%edx
585634:	83 c2 fe             	add    $0xfffffffe,%edx
585637:	81 fa fd ff 00 00    	cmp    $0xfffd,%edx
58563d:	0f 87 2a 01 00 00    	ja     0x58576d
585643:	53                   	push   %ebx
585644:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
585648:	56                   	push   %esi
585649:	8b 0b                	mov    (%ebx),%ecx
58564b:	0f b6 31             	movzbl (%ecx),%esi
58564e:	0f b6 41 01          	movzbl 0x1(%ecx),%eax
585652:	c1 e6 08             	shl    $0x8,%esi
585655:	0b f0                	or     %eax,%esi
585657:	8d 41 02             	lea    0x2(%ecx),%eax
58565a:	89 03                	mov    %eax,(%ebx)
58565c:	3b f2                	cmp    %edx,%esi
58565e:	74 1d                	je     0x58567d
585660:	68 0e 01 00 00       	push   $0x10e
585665:	68 54 d3 65 00       	push   $0x65d354
58566a:	6a 69                	push   $0x69
58566c:	6a 6f                	push   $0x6f
58566e:	6a 32                	push   $0x32
585670:	e8 0b 39 f5 ff       	call   0x4d8f80
585675:	83 c4 14             	add    $0x14,%esp
585678:	33 c0                	xor    %eax,%eax
58567a:	5e                   	pop    %esi
58567b:	5b                   	pop    %ebx
58567c:	c3                   	ret
58567d:	55                   	push   %ebp
58567e:	8b 6c 24 10          	mov    0x10(%esp),%ebp
585682:	57                   	push   %edi
585683:	85 ed                	test   %ebp,%ebp
585685:	74 2e                	je     0x5856b5
585687:	8b 7d 00             	mov    0x0(%ebp),%edi
58568a:	85 ff                	test   %edi,%edi
58568c:	74 27                	je     0x5856b5
58568e:	57                   	push   %edi
58568f:	e8 3c fa f5 ff       	call   0x4e50d0
585694:	83 c4 04             	add    $0x4,%esp
585697:	85 c0                	test   %eax,%eax
585699:	74 29                	je     0x5856c4
58569b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
5856a0:	50                   	push   %eax
5856a1:	e8 ba f5 ff ff       	call   0x584c60
5856a6:	57                   	push   %edi
5856a7:	e8 24 fa f5 ff       	call   0x4e50d0
5856ac:	83 c4 08             	add    $0x8,%esp
5856af:	85 c0                	test   %eax,%eax
5856b1:	75 ed                	jne    0x5856a0
5856b3:	eb 0f                	jmp    0x5856c4
5856b5:	e8 66 f9 f5 ff       	call   0x4e5020
5856ba:	8b f8                	mov    %eax,%edi
5856bc:	85 ff                	test   %edi,%edi
5856be:	0f 84 a2 00 00 00    	je     0x585766
5856c4:	85 f6                	test   %esi,%esi
5856c6:	74 4d                	je     0x585715
5856c8:	83 fe 02             	cmp    $0x2,%esi
5856cb:	72 6e                	jb     0x58573b
5856cd:	8b 0b                	mov    (%ebx),%ecx
5856cf:	83 ee 02             	sub    $0x2,%esi
5856d2:	0f b6 11             	movzbl (%ecx),%edx
5856d5:	0f b6 41 01          	movzbl 0x1(%ecx),%eax
5856d9:	c1 e2 08             	shl    $0x8,%edx
5856dc:	0b d0                	or     %eax,%edx
5856de:	8d 41 02             	lea    0x2(%ecx),%eax
5856e1:	89 03                	mov    %eax,(%ebx)
5856e3:	85 d2                	test   %edx,%edx
5856e5:	74 4d                	je     0x585734
5856e7:	3b d6                	cmp    %esi,%edx
5856e9:	77 49                	ja     0x585734
5856eb:	52                   	push   %edx
5856ec:	53                   	push   %ebx
5856ed:	6a 00                	push   $0x0
5856ef:	2b f2                	sub    %edx,%esi
5856f1:	e8 7a fc ff ff       	call   0x585370
5856f6:	8b d8                	mov    %eax,%ebx
5856f8:	83 c4 0c             	add    $0xc,%esp
5856fb:	85 db                	test   %ebx,%ebx
5856fd:	74 54                	je     0x585753
5856ff:	53                   	push   %ebx
585700:	57                   	push   %edi
585701:	e8 4a fa f5 ff       	call   0x4e5150
585706:	83 c4 08             	add    $0x8,%esp
585709:	85 c0                	test   %eax,%eax
58570b:	74 1c                	je     0x585729
58570d:	8b 5c 24 18          	mov    0x18(%esp),%ebx
585711:	85 f6                	test   %esi,%esi
585713:	75 b3                	jne    0x5856c8
585715:	85 ed                	test   %ebp,%ebp
585717:	74 09                	je     0x585722
585719:	83 7d 00 00          	cmpl   $0x0,0x0(%ebp)
58571d:	75 03                	jne    0x585722
58571f:	89 7d 00             	mov    %edi,0x0(%ebp)
585722:	8b c7                	mov    %edi,%eax
585724:	5f                   	pop    %edi
585725:	5d                   	pop    %ebp
585726:	5e                   	pop    %esi
585727:	5b                   	pop    %ebx
585728:	c3                   	ret
585729:	53                   	push   %ebx
58572a:	e8 31 f5 ff ff       	call   0x584c60
58572f:	83 c4 04             	add    $0x4,%esp
585732:	eb 1f                	jmp    0x585753
585734:	68 2a 01 00 00       	push   $0x12a
585739:	eb 05                	jmp    0x585740
58573b:	68 23 01 00 00       	push   $0x123
585740:	68 54 d3 65 00       	push   $0x65d354
585745:	6a 69                	push   $0x69
585747:	6a 6f                	push   $0x6f
585749:	6a 32                	push   $0x32
58574b:	e8 30 38 f5 ff       	call   0x4d8f80
585750:	83 c4 14             	add    $0x14,%esp
585753:	85 ed                	test   %ebp,%ebp
585755:	74 06                	je     0x58575d
585757:	83 7d 00 00          	cmpl   $0x0,0x0(%ebp)
58575b:	75 09                	jne    0x585766
58575d:	57                   	push   %edi
58575e:	e8 ed f2 ff ff       	call   0x584a50
585763:	83 c4 04             	add    $0x4,%esp
585766:	5f                   	pop    %edi
585767:	5d                   	pop    %ebp
585768:	5e                   	pop    %esi
585769:	33 c0                	xor    %eax,%eax
58576b:	5b                   	pop    %ebx
58576c:	c3                   	ret
58576d:	68 08 01 00 00       	push   $0x108
585772:	68 54 d3 65 00       	push   $0x65d354
585777:	6a 69                	push   $0x69
585779:	6a 6f                	push   $0x6f
58577b:	6a 32                	push   $0x32
58577d:	e8 fe 37 f5 ff       	call   0x4d8f80
585782:	83 c4 14             	add    $0x14,%esp
585785:	33 c0                	xor    %eax,%eax
585787:	c3                   	ret
585788:	cc                   	int3
585789:	cc                   	int3
58578a:	cc                   	int3
58578b:	cc                   	int3
58578c:	cc                   	int3
58578d:	cc                   	int3
58578e:	cc                   	int3
58578f:	cc                   	int3
585790:	b8 64 00 00 00       	mov    $0x64,%eax
585795:	e8 16 c0 04 00       	call   0x5d17b0
58579a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
58579f:	33 c4                	xor    %esp,%eax
5857a1:	89 44 24 60          	mov    %eax,0x60(%esp)
5857a5:	8b 44 24 74          	mov    0x74(%esp),%eax
5857a9:	53                   	push   %ebx
5857aa:	8b 5c 24 6c          	mov    0x6c(%esp),%ebx
5857ae:	56                   	push   %esi
5857af:	8b 74 24 74          	mov    0x74(%esp),%esi
5857b3:	57                   	push   %edi
5857b4:	89 44 24 40          	mov    %eax,0x40(%esp)
5857b8:	8b 84 24 84 00 00 00 	mov    0x84(%esp),%eax
5857bf:	53                   	push   %ebx
5857c0:	89 5c 24 40          	mov    %ebx,0x40(%esp)
5857c4:	89 44 24 34          	mov    %eax,0x34(%esp)
5857c8:	e8 f3 f8 f5 ff       	call   0x4e50c0
5857cd:	33 ff                	xor    %edi,%edi
5857cf:	89 44 24 48          	mov    %eax,0x48(%esp)
5857d3:	83 c4 04             	add    $0x4,%esp
5857d6:	89 7c 24 24          	mov    %edi,0x24(%esp)
5857da:	85 c0                	test   %eax,%eax
5857dc:	0f 8e 06 04 00 00    	jle    0x585be8
5857e2:	55                   	push   %ebp
5857e3:	8b ac 24 80 00 00 00 	mov    0x80(%esp),%ebp
5857ea:	83 c5 04             	add    $0x4,%ebp
5857ed:	89 6c 24 3c          	mov    %ebp,0x3c(%esp)
5857f1:	57                   	push   %edi
5857f2:	53                   	push   %ebx
5857f3:	e8 88 fa f5 ff       	call   0x4e5280
5857f8:	8b d8                	mov    %eax,%ebx
5857fa:	83 c4 08             	add    $0x8,%esp
5857fd:	33 c0                	xor    %eax,%eax
5857ff:	89 5c 24 38          	mov    %ebx,0x38(%esp)
585803:	89 44 24 10          	mov    %eax,0x10(%esp)
585807:	8b 44 24 34          	mov    0x34(%esp),%eax
58580b:	85 c0                	test   %eax,%eax
58580d:	74 13                	je     0x585822
58580f:	ff 73 10             	push   0x10(%ebx)
585812:	ff 73 0c             	push   0xc(%ebx)
585815:	50                   	push   %eax
585816:	e8 e5 03 00 00       	call   0x585c00
58581b:	83 c4 0c             	add    $0xc,%esp
58581e:	89 44 24 10          	mov    %eax,0x10(%esp)
585822:	68 64 25 60 00       	push   $0x602564
585827:	ff b4 24 84 00 00 00 	push   0x84(%esp)
58582e:	68 80 d3 65 00       	push   $0x65d380
585833:	56                   	push   %esi
585834:	e8 07 cd f5 ff       	call   0x4e2540
585839:	68 64 25 60 00       	push   $0x602564
58583e:	55                   	push   %ebp
58583f:	68 a4 d3 65 00       	push   $0x65d3a4
585844:	56                   	push   %esi
585845:	e8 f6 cc f5 ff       	call   0x4e2540
58584a:	83 c4 20             	add    $0x20,%esp
58584d:	83 3b 00             	cmpl   $0x0,(%ebx)
585850:	74 26                	je     0x585878
585852:	8b 84 24 80 00 00 00 	mov    0x80(%esp),%eax
585859:	68 64 25 60 00       	push   $0x602564
58585e:	83 c0 10             	add    $0x10,%eax
585861:	50                   	push   %eax
585862:	68 b8 d3 65 00       	push   $0x65d3b8
585867:	56                   	push   %esi
585868:	e8 d3 cc f5 ff       	call   0x4e2540
58586d:	8b 43 04             	mov    0x4(%ebx),%eax
585870:	8b 4b 08             	mov    0x8(%ebx),%ecx
585873:	e9 24 03 00 00       	jmp    0x585b9c
585878:	68 c4 d3 65 00       	push   $0x65d3c4
58587d:	56                   	push   %esi
58587e:	e8 bd cc f5 ff       	call   0x4e2540
585883:	8b 44 24 18          	mov    0x18(%esp),%eax
585887:	83 c4 08             	add    $0x8,%esp
58588a:	85 c0                	test   %eax,%eax
58588c:	74 1b                	je     0x5858a9
58588e:	50                   	push   %eax
58588f:	e8 2c a8 f6 ff       	call   0x4f00c0
585894:	50                   	push   %eax
585895:	68 64 25 60 00       	push   $0x602564
58589a:	55                   	push   %ebp