583673:	3c 2d                	cmp    $0x2d,%al
583675:	75 5f                	jne    0x5836d6
583677:	3b 4d dc             	cmp    -0x24(%ebp),%ecx
58367a:	75 2e                	jne    0x5836aa
58367c:	3b 5d e4             	cmp    -0x1c(%ebp),%ebx
58367f:	75 29                	jne    0x5836aa
583681:	83 ec 18             	sub    $0x18,%esp
583684:	8b cc                	mov    %esp,%ecx
583686:	ff 35 2c 2f 6c 00    	push   0x6c2f2c
58368c:	ff 35 28 2f 6c 00    	push   0x6c2f28
583692:	e8 29 c8 ff ff       	call   0x57fec0
583697:	8b 4d 0c             	mov    0xc(%ebp),%ecx
58369a:	e8 b1 ca ff ff       	call   0x580150
58369f:	b0 01                	mov    $0x1,%al
5836a1:	5f                   	pop    %edi
5836a2:	5e                   	pop    %esi
5836a3:	5b                   	pop    %ebx
5836a4:	8b e5                	mov    %ebp,%esp
5836a6:	5d                   	pop    %ebp
5836a7:	c2 08 00             	ret    $0x8
5836aa:	3c 2d                	cmp    $0x2d,%al
5836ac:	75 28                	jne    0x5836d6
5836ae:	83 ec 18             	sub    $0x18,%esp
5836b1:	f7 d9                	neg    %ecx
5836b3:	8b c4                	mov    %esp,%eax
5836b5:	83 d3 00             	adc    $0x0,%ebx
5836b8:	f7 db                	neg    %ebx
5836ba:	53                   	push   %ebx
5836bb:	51                   	push   %ecx
5836bc:	8b c8                	mov    %eax,%ecx
5836be:	e8 fd c7 ff ff       	call   0x57fec0
5836c3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5836c6:	e8 85 ca ff ff       	call   0x580150
5836cb:	b0 01                	mov    $0x1,%al
5836cd:	5f                   	pop    %edi
5836ce:	5e                   	pop    %esi
5836cf:	5b                   	pop    %ebx
5836d0:	8b e5                	mov    %ebp,%esp
5836d2:	5d                   	pop    %ebp
5836d3:	c2 08 00             	ret    $0x8
5836d6:	a1 44 2f 6c 00       	mov    0x6c2f44,%eax
5836db:	99                   	cltd
5836dc:	3b da                	cmp    %edx,%ebx
5836de:	77 27                	ja     0x583707
5836e0:	72 04                	jb     0x5836e6
5836e2:	3b c8                	cmp    %eax,%ecx
5836e4:	77 21                	ja     0x583707
5836e6:	83 ec 18             	sub    $0x18,%esp
5836e9:	8b c4                	mov    %esp,%eax
5836eb:	53                   	push   %ebx
5836ec:	51                   	push   %ecx
5836ed:	8b c8                	mov    %eax,%ecx
5836ef:	e8 cc c7 ff ff       	call   0x57fec0
5836f4:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5836f7:	e8 54 ca ff ff       	call   0x580150
5836fc:	b0 01                	mov    $0x1,%al
5836fe:	5f                   	pop    %edi
5836ff:	5e                   	pop    %esi
583700:	5b                   	pop    %ebx
583701:	8b e5                	mov    %ebp,%esp
583703:	5d                   	pop    %ebp
583704:	c2 08 00             	ret    $0x8
583707:	83 ec 18             	sub    $0x18,%esp
58370a:	8b c4                	mov    %esp,%eax
58370c:	53                   	push   %ebx
58370d:	51                   	push   %ecx
58370e:	8b c8                	mov    %eax,%ecx
583710:	e8 eb c7 ff ff       	call   0x57ff00
583715:	8b 4d 0c             	mov    0xc(%ebp),%ecx
583718:	e8 33 ca ff ff       	call   0x580150
58371d:	5f                   	pop    %edi
58371e:	5e                   	pop    %esi
58371f:	b0 01                	mov    $0x1,%al
583721:	5b                   	pop    %ebx
583722:	8b e5                	mov    %ebp,%esp
583724:	5d                   	pop    %ebp
583725:	c2 08 00             	ret    $0x8
583728:	cc                   	int3
583729:	cc                   	int3
58372a:	cc                   	int3
58372b:	cc                   	int3
58372c:	cc                   	int3
58372d:	cc                   	int3
58372e:	cc                   	int3
58372f:	cc                   	int3
583730:	55                   	push   %ebp
583731:	8b ec                	mov    %esp,%ebp
583733:	6a ff                	push   $0xffffffff
583735:	68 10 d1 65 00       	push   $0x65d110
58373a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
583740:	50                   	push   %eax
583741:	83 ec 3c             	sub    $0x3c,%esp
583744:	a1 d4 89 72 00       	mov    0x7289d4,%eax
583749:	33 c5                	xor    %ebp,%eax
58374b:	89 45 f0             	mov    %eax,-0x10(%ebp)
58374e:	53                   	push   %ebx
58374f:	56                   	push   %esi
583750:	57                   	push   %edi
583751:	50                   	push   %eax
583752:	8d 45 f4             	lea    -0xc(%ebp),%eax
583755:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
58375b:	8b f9                	mov    %ecx,%edi
58375d:	8b 5d 08             	mov    0x8(%ebp),%ebx
583760:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
583767:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
58376e:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
583772:	8d 45 d8             	lea    -0x28(%ebp),%eax
583775:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
58377c:	50                   	push   %eax
58377d:	53                   	push   %ebx
58377e:	e8 fd 00 00 00       	call   0x583880
583783:	84 c0                	test   %al,%al
583785:	75 07                	jne    0x58378e
583787:	32 db                	xor    %bl,%bl
583789:	e9 9b 00 00 00       	jmp    0x583829
58378e:	8d 45 d8             	lea    -0x28(%ebp),%eax
583791:	50                   	push   %eax
583792:	8d 4d b8             	lea    -0x48(%ebp),%ecx
583795:	e8 46 c5 ff ff       	call   0x57fce0
58379a:	8b 47 0c             	mov    0xc(%edi),%eax
58379d:	03 47 10             	add    0x10(%edi),%eax
5837a0:	8b 4f 04             	mov    0x4(%edi),%ecx
5837a3:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5837a7:	8d 70 ff             	lea    -0x1(%eax),%esi
5837aa:	8d 45 b8             	lea    -0x48(%ebp),%eax
5837ad:	8b d6                	mov    %esi,%edx
5837af:	50                   	push   %eax
5837b0:	8b 47 08             	mov    0x8(%edi),%eax
5837b3:	83 e6 03             	and    $0x3,%esi
5837b6:	c1 ea 02             	shr    $0x2,%edx
5837b9:	48                   	dec    %eax
5837ba:	23 d0                	and    %eax,%edx
5837bc:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
5837bf:	8b 0c b1             	mov    (%ecx,%esi,4),%ecx
5837c2:	e8 a9 e8 ff ff       	call   0x582070
5837c7:	8b 47 0c             	mov    0xc(%edi),%eax
5837ca:	03 47 10             	add    0x10(%edi),%eax
5837cd:	8b 4f 04             	mov    0x4(%edi),%ecx
5837d0:	8d 70 ff             	lea    -0x1(%eax),%esi
5837d3:	8b 43 04             	mov    0x4(%ebx),%eax
5837d6:	2b 47 40             	sub    0x40(%edi),%eax
5837d9:	8b d6                	mov    %esi,%edx
5837db:	50                   	push   %eax
5837dc:	8b 47 08             	mov    0x8(%edi),%eax
5837df:	83 e6 03             	and    $0x3,%esi
5837e2:	c1 ea 02             	shr    $0x2,%edx
5837e5:	48                   	dec    %eax
5837e6:	23 d0                	and    %eax,%edx
5837e8:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
5837eb:	8b 0c b1             	mov    (%ecx,%esi,4),%ecx
5837ee:	e8 7d e7 ff ff       	call   0x581f70
5837f3:	8b 47 0c             	mov    0xc(%edi),%eax
5837f6:	03 47 10             	add    0x10(%edi),%eax
5837f9:	8b 4f 04             	mov    0x4(%edi),%ecx
5837fc:	8d 70 ff             	lea    -0x1(%eax),%esi
5837ff:	8b 43 08             	mov    0x8(%ebx),%eax
583802:	2b 47 40             	sub    0x40(%edi),%eax
583805:	8b d6                	mov    %esi,%edx
583807:	50                   	push   %eax
583808:	8b 47 08             	mov    0x8(%edi),%eax
58380b:	83 e6 03             	and    $0x3,%esi
58380e:	c1 ea 02             	shr    $0x2,%edx
583811:	48                   	dec    %eax
583812:	23 d0                	and    %eax,%edx
583814:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
583817:	8b 0c b1             	mov    (%ecx,%esi,4),%ecx
58381a:	e8 41 e7 ff ff       	call   0x581f60
58381f:	8d 4d b8             	lea    -0x48(%ebp),%ecx
583822:	b3 01                	mov    $0x1,%bl
583824:	e8 57 c8 ff ff       	call   0x580080
583829:	8b 55 ec             	mov    -0x14(%ebp),%edx
58382c:	83 fa 10             	cmp    $0x10,%edx
58382f:	72 28                	jb     0x583859
583831:	8b 4d d8             	mov    -0x28(%ebp),%ecx
583834:	42                   	inc    %edx
583835:	8b c1                	mov    %ecx,%eax
583837:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
58383d:	72 10                	jb     0x58384f
58383f:	8b 49 fc             	mov    -0x4(%ecx),%ecx
583842:	83 c2 23             	add    $0x23,%edx
583845:	2b c1                	sub    %ecx,%eax
583847:	83 c0 fc             	add    $0xfffffffc,%eax
58384a:	83 f8 1f             	cmp    $0x1f,%eax
58384d:	77 2a                	ja     0x583879
58384f:	52                   	push   %edx
583850:	51                   	push   %ecx
583851:	e8 1c d8 05 00       	call   0x5e1072
583856:	83 c4 08             	add    $0x8,%esp
583859:	8a c3                	mov    %bl,%al
58385b:	8b 4d f4             	mov    -0xc(%ebp),%ecx
58385e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
583865:	59                   	pop    %ecx
583866:	5f                   	pop    %edi
583867:	5e                   	pop    %esi
583868:	5b                   	pop    %ebx
583869:	8b 4d f0             	mov    -0x10(%ebp),%ecx
58386c:	33 cd                	xor    %ebp,%ecx
58386e:	e8 67 dc 05 00       	call   0x5e14da
583873:	8b e5                	mov    %ebp,%esp
583875:	5d                   	pop    %ebp
583876:	c2 04 00             	ret    $0x4
583879:	e8 b1 96 06 00       	call   0x5ecf2f
58387e:	cc                   	int3
58387f:	cc                   	int3
583880:	55                   	push   %ebp
583881:	8b ec                	mov    %esp,%ebp
583883:	6a ff                	push   $0xffffffff
583885:	68 58 d1 65 00       	push   $0x65d158
58388a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
583890:	50                   	push   %eax
583891:	83 ec 30             	sub    $0x30,%esp
583894:	a1 d4 89 72 00       	mov    0x7289d4,%eax
583899:	33 c5                	xor    %ebp,%eax
58389b:	89 45 f0             	mov    %eax,-0x10(%ebp)
58389e:	53                   	push   %ebx
58389f:	56                   	push   %esi
5838a0:	57                   	push   %edi
5838a1:	50                   	push   %eax
5838a2:	8d 45 f4             	lea    -0xc(%ebp),%eax
5838a5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
5838ab:	89 4d cc             	mov    %ecx,-0x34(%ebp)
5838ae:	8b 5d 08             	mov    0x8(%ebp),%ebx
5838b1:	8b 7d 0c             	mov    0xc(%ebp),%edi
5838b4:	8b cf                	mov    %edi,%ecx
5838b6:	89 5d d0             	mov    %ebx,-0x30(%ebp)
5838b9:	8b 43 08             	mov    0x8(%ebx),%eax
5838bc:	2b 43 04             	sub    0x4(%ebx),%eax
5838bf:	83 e8 02             	sub    $0x2,%eax
5838c2:	50                   	push   %eax
5838c3:	e8 a8 00 ed ff       	call   0x453970
5838c8:	8b 73 04             	mov    0x4(%ebx),%esi
5838cb:	8b 5b 08             	mov    0x8(%ebx),%ebx
5838ce:	46                   	inc    %esi
5838cf:	4b                   	dec    %ebx
5838d0:	3b f3                	cmp    %ebx,%esi
5838d2:	0f 84 12 01 00 00    	je     0x5839ea
5838d8:	8a 06                	mov    (%esi),%al
5838da:	46                   	inc    %esi
5838db:	88 45 c4             	mov    %al,-0x3c(%ebp)
5838de:	3c 22                	cmp    $0x22,%al
5838e0:	0f 84 04 01 00 00    	je     0x5839ea
5838e6:	3c 5c                	cmp    $0x5c,%al
5838e8:	0f 85 ea 00 00 00    	jne    0x5839d8
5838ee:	3b f3                	cmp    %ebx,%esi
5838f0:	0f 84 89 01 00 00    	je     0x583a7f
5838f6:	8a 06                	mov    (%esi),%al
5838f8:	46                   	inc    %esi
5838f9:	0f be c0             	movsbl %al,%eax
5838fc:	83 c0 de             	add    $0xffffffde,%eax
5838ff:	89 75 d4             	mov    %esi,-0x2c(%ebp)
583902:	83 f8 53             	cmp    $0x53,%eax
583905:	0f 87 03 01 00 00    	ja     0x583a0e
58390b:	0f b6 80 0c 3b 58 00 	movzbl 0x583b0c(%eax),%eax
583912:	ff 24 85 e4 3a 58 00 	jmp    *0x583ae4(,%eax,4)
583919:	6a 22                	push   $0x22
58391b:	e9 bb 00 00 00       	jmp    0x5839db
583920:	6a 2f                	push   $0x2f
583922:	e9 b4 00 00 00       	jmp    0x5839db
583927:	6a 5c                	push   $0x5c
583929:	e9 ad 00 00 00       	jmp    0x5839db
58392e:	6a 08                	push   $0x8
583930:	e9 a6 00 00 00       	jmp    0x5839db
583935:	6a 0c                	push   $0xc
583937:	e9 9f 00 00 00       	jmp    0x5839db
58393c:	6a 0a                	push   $0xa
58393e:	e9 98 00 00 00       	jmp    0x5839db
583943:	6a 0d                	push   $0xd
583945:	e9 91 00 00 00       	jmp    0x5839db
58394a:	6a 09                	push   $0x9
58394c:	e9 8a 00 00 00       	jmp    0x5839db
583951:	8b 4d cc             	mov    -0x34(%ebp),%ecx
583954:	8d 45 c8             	lea    -0x38(%ebp),%eax
583957:	50                   	push   %eax
583958:	53                   	push   %ebx
583959:	8d 45 d4             	lea    -0x2c(%ebp),%eax
58395c:	50                   	push   %eax
58395d:	ff 75 d0             	push   -0x30(%ebp)
583960:	e8 fb 01 00 00       	call   0x583b60
583965:	84 c0                	test   %al,%al
583967:	0f 84 9d 00 00 00    	je     0x583a0a
58396d:	ff 75 c8             	push   -0x38(%ebp)
583970:	8d 45 d8             	lea    -0x28(%ebp),%eax
583973:	50                   	push   %eax
583974:	e8 f7 f6 ff ff       	call   0x583070
583979:	83 c4 08             	add    $0x8,%esp
58397c:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
583980:	8b c8                	mov    %eax,%ecx
583982:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
583989:	72 02                	jb     0x58398d
58398b:	8b 08                	mov    (%eax),%ecx
58398d:	ff 70 10             	push   0x10(%eax)
583990:	51                   	push   %ecx
583991:	8b cf                	mov    %edi,%ecx
583993:	e8 28 17 ec ff       	call   0x4450c0
583998:	8b 55 ec             	mov    -0x14(%ebp),%edx
58399b:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5839a2:	83 fa 10             	cmp    $0x10,%edx
5839a5:	72 2c                	jb     0x5839d3
5839a7:	8b 4d d8             	mov    -0x28(%ebp),%ecx
5839aa:	42                   	inc    %edx
5839ab:	8b c1                	mov    %ecx,%eax
5839ad:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
5839b3:	72 14                	jb     0x5839c9
5839b5:	8b 49 fc             	mov    -0x4(%ecx),%ecx
5839b8:	83 c2 23             	add    $0x23,%edx
5839bb:	2b c1                	sub    %ecx,%eax
5839bd:	83 c0 fc             	add    $0xfffffffc,%eax
5839c0:	83 f8 1f             	cmp    $0x1f,%eax
5839c3:	0f 87 16 01 00 00    	ja     0x583adf
5839c9:	52                   	push   %edx
5839ca:	51                   	push   %ecx
5839cb:	e8 a2 d6 05 00       	call   0x5e1072
5839d0:	83 c4 08             	add    $0x8,%esp
5839d3:	8b 75 d4             	mov    -0x2c(%ebp),%esi
5839d6:	eb 0a                	jmp    0x5839e2
5839d8:	ff 75 c4             	push   -0x3c(%ebp)
5839db:	8b cf                	mov    %edi,%ecx
5839dd:	e8 be a3 ed ff       	call   0x45dda0
5839e2:	3b f3                	cmp    %ebx,%esi
5839e4:	0f 85 ee fe ff ff    	jne    0x5838d8
5839ea:	b0 01                	mov    $0x1,%al
5839ec:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5839ef:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5839f6:	59                   	pop    %ecx
5839f7:	5f                   	pop    %edi
5839f8:	5e                   	pop    %esi
5839f9:	5b                   	pop    %ebx
5839fa:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5839fd:	33 cd                	xor    %ebp,%ecx
5839ff:	e8 d6 da 05 00       	call   0x5e14da
583a04:	8b e5                	mov    %ebp,%esp
583a06:	5d                   	pop    %ebp
583a07:	c2 08 00             	ret    $0x8
583a0a:	32 c0                	xor    %al,%al
583a0c:	eb de                	jmp    0x5839ec
583a0e:	6a 1d                	push   $0x1d
583a10:	68 fc 35 6c 00       	push   $0x6c35fc
583a15:	8d 4d d8             	lea    -0x28(%ebp),%ecx
583a18:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
583a1f:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
583a26:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
583a2a:	e8 11 18 ec ff       	call   0x445240
583a2f:	8b 4d cc             	mov    -0x34(%ebp),%ecx
583a32:	8d 45 d8             	lea    -0x28(%ebp),%eax
583a35:	56                   	push   %esi
583a36:	ff 75 d0             	push   -0x30(%ebp)
583a39:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
583a40:	50                   	push   %eax
583a41:	e8 4a f5 ff ff       	call   0x582f90
583a46:	8b 55 ec             	mov    -0x14(%ebp),%edx