584689:	ff 77 1c             	push   0x1c(%edi)
58468c:	e8 9f 6e fe ff       	call   0x56b530
584691:	6a 67                	push   $0x67
584693:	68 b8 d1 65 00       	push   $0x65d1b8
584698:	57                   	push   %edi
584699:	e8 e2 c0 f5 ff       	call   0x4e0780
58469e:	6a 00                	push   $0x0
5846a0:	56                   	push   %esi
5846a1:	e8 ca 4d f7 ff       	call   0x4f9470
5846a6:	6a 00                	push   $0x0
5846a8:	56                   	push   %esi
5846a9:	e8 e2 4d f7 ff       	call   0x4f9490
5846ae:	83 c4 20             	add    $0x20,%esp
5846b1:	b8 01 00 00 00       	mov    $0x1,%eax
5846b6:	5f                   	pop    %edi
5846b7:	5e                   	pop    %esi
5846b8:	c3                   	ret
5846b9:	5f                   	pop    %edi
5846ba:	33 c0                	xor    %eax,%eax
5846bc:	5e                   	pop    %esi
5846bd:	c3                   	ret
5846be:	cc                   	int3
5846bf:	cc                   	int3
5846c0:	8b 44 24 04          	mov    0x4(%esp),%eax
5846c4:	85 c0                	test   %eax,%eax
5846c6:	75 01                	jne    0x5846c9
5846c8:	c3                   	ret
5846c9:	f6 40 14 02          	testb  $0x2,0x14(%eax)
5846cd:	74 04                	je     0x5846d3
5846cf:	8b 40 0c             	mov    0xc(%eax),%eax
5846d2:	c3                   	ret
5846d3:	8b 40 10             	mov    0x10(%eax),%eax
5846d6:	c3                   	ret
5846d7:	cc                   	int3
5846d8:	cc                   	int3
5846d9:	cc                   	int3
5846da:	cc                   	int3
5846db:	cc                   	int3
5846dc:	cc                   	int3
5846dd:	cc                   	int3
5846de:	cc                   	int3
5846df:	cc                   	int3
5846e0:	56                   	push   %esi
5846e1:	6a 42                	push   $0x42
5846e3:	68 24 d3 65 00       	push   $0x65d324
5846e8:	6a 0c                	push   $0xc
5846ea:	e8 51 c3 f5 ff       	call   0x4e0a40
5846ef:	8b f0                	mov    %eax,%esi
5846f1:	83 c4 0c             	add    $0xc,%esp
5846f4:	85 f6                	test   %esi,%esi
5846f6:	75 1c                	jne    0x584714
5846f8:	6a 44                	push   $0x44
5846fa:	68 24 d3 65 00       	push   $0x65d324
5846ff:	6a 41                	push   $0x41
584701:	68 a8 00 00 00       	push   $0xa8
584706:	6a 22                	push   $0x22
584708:	e8 73 48 f5 ff       	call   0x4d8f80
58470d:	83 c4 14             	add    $0x14,%esp
584710:	33 c0                	xor    %eax,%eax
584712:	5e                   	pop    %esi
584713:	c3                   	ret
584714:	53                   	push   %ebx
584715:	8b 5c 24 14          	mov    0x14(%esp),%ebx
584719:	55                   	push   %ebp
58471a:	8b 6c 24 14          	mov    0x14(%esp),%ebp
58471e:	57                   	push   %edi
58471f:	8b 7c 24 14          	mov    0x14(%esp),%edi
584723:	89 2e                	mov    %ebp,(%esi)
584725:	89 5e 04             	mov    %ebx,0x4(%esi)
584728:	85 ff                	test   %edi,%edi
58472a:	74 1b                	je     0x584747
58472c:	ff 75 04             	push   0x4(%ebp)
58472f:	e8 cc ae f6 ff       	call   0x4ef600
584734:	83 c4 04             	add    $0x4,%esp
584737:	3d ea 02 00 00       	cmp    $0x2ea,%eax
58473c:	75 2c                	jne    0x58476a
58473e:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
584742:	75 7d                	jne    0x5847c1
584744:	89 77 08             	mov    %esi,0x8(%edi)
584747:	8b 7c 24 20          	mov    0x20(%esp),%edi
58474b:	85 ff                	test   %edi,%edi
58474d:	0f 84 85 00 00 00    	je     0x5847d8
584753:	8b 47 08             	mov    0x8(%edi),%eax
584756:	85 c0                	test   %eax,%eax
584758:	75 41                	jne    0x58479b
58475a:	e8 c1 08 f6 ff       	call   0x4e5020
58475f:	89 47 08             	mov    %eax,0x8(%edi)
584762:	85 c0                	test   %eax,%eax
584764:	75 35                	jne    0x58479b
584766:	6a 61                	push   $0x61
584768:	eb 41                	jmp    0x5847ab
58476a:	8b 47 04             	mov    0x4(%edi),%eax
58476d:	85 c0                	test   %eax,%eax
58476f:	75 18                	jne    0x584789
584771:	68 60 48 58 00       	push   $0x584860
584776:	e8 75 08 f6 ff       	call   0x4e4ff0
58477b:	83 c4 04             	add    $0x4,%esp
58477e:	89 47 04             	mov    %eax,0x4(%edi)
584781:	85 c0                	test   %eax,%eax
584783:	75 04                	jne    0x584789
584785:	6a 53                	push   $0x53
584787:	eb 22                	jmp    0x5847ab
584789:	56                   	push   %esi
58478a:	50                   	push   %eax
58478b:	e8 c0 09 f6 ff       	call   0x4e5150
584790:	83 c4 08             	add    $0x8,%esp
584793:	85 c0                	test   %eax,%eax
584795:	75 b0                	jne    0x584747
584797:	6a 57                	push   $0x57
584799:	eb 10                	jmp    0x5847ab
58479b:	55                   	push   %ebp
58479c:	50                   	push   %eax
58479d:	e8 ae 09 f6 ff       	call   0x4e5150
5847a2:	83 c4 08             	add    $0x8,%esp
5847a5:	85 c0                	test   %eax,%eax
5847a7:	75 2f                	jne    0x5847d8
5847a9:	6a 65                	push   $0x65
5847ab:	68 24 d3 65 00       	push   $0x65d324
5847b0:	6a 41                	push   $0x41
5847b2:	68 a8 00 00 00       	push   $0xa8
5847b7:	6a 22                	push   $0x22
5847b9:	e8 c2 47 f5 ff       	call   0x4d8f80
5847be:	83 c4 14             	add    $0x14,%esp
5847c1:	6a 76                	push   $0x76
5847c3:	68 24 d3 65 00       	push   $0x65d324
5847c8:	56                   	push   %esi
5847c9:	e8 b2 bf f5 ff       	call   0x4e0780
5847ce:	83 c4 0c             	add    $0xc,%esp
5847d1:	33 c0                	xor    %eax,%eax
5847d3:	5f                   	pop    %edi
5847d4:	5d                   	pop    %ebp
5847d5:	5b                   	pop    %ebx
5847d6:	5e                   	pop    %esi
5847d7:	c3                   	ret
5847d8:	85 db                	test   %ebx,%ebx
5847da:	74 03                	je     0x5847df
5847dc:	ff 43 08             	incl   0x8(%ebx)
5847df:	5f                   	pop    %edi
5847e0:	5d                   	pop    %ebp
5847e1:	5b                   	pop    %ebx
5847e2:	8b c6                	mov    %esi,%eax
5847e4:	5e                   	pop    %esi
5847e5:	c3                   	ret
5847e6:	cc                   	int3
5847e7:	cc                   	int3
5847e8:	cc                   	int3
5847e9:	cc                   	int3
5847ea:	cc                   	int3
5847eb:	cc                   	int3
5847ec:	cc                   	int3
5847ed:	cc                   	int3
5847ee:	cc                   	int3
5847ef:	cc                   	int3
5847f0:	53                   	push   %ebx
5847f1:	8b 5c 24 08          	mov    0x8(%esp),%ebx
5847f5:	55                   	push   %ebp
5847f6:	56                   	push   %esi
5847f7:	57                   	push   %edi
5847f8:	ff 73 04             	push   0x4(%ebx)
5847fb:	33 f6                	xor    %esi,%esi
5847fd:	e8 be 08 f6 ff       	call   0x4e50c0
584802:	83 c4 04             	add    $0x4,%esp
584805:	85 c0                	test   %eax,%eax
584807:	7e 3f                	jle    0x584848
584809:	8b 6c 24 18          	mov    0x18(%esp),%ebp
58480d:	0f 1f 00             	nopl   (%eax)
584810:	56                   	push   %esi
584811:	ff 73 04             	push   0x4(%ebx)
584814:	e8 67 0a f6 ff       	call   0x4e5280
584819:	8b f8                	mov    %eax,%edi
58481b:	83 c4 08             	add    $0x8,%esp
58481e:	39 6f 04             	cmp    %ebp,0x4(%edi)
584821:	75 15                	jne    0x584838
584823:	8b 0f                	mov    (%edi),%ecx
584825:	ff 74 24 1c          	push   0x1c(%esp)
584829:	ff 71 04             	push   0x4(%ecx)
58482c:	e8 8f 68 f8 ff       	call   0x50b0c0
584831:	83 c4 08             	add    $0x8,%esp
584834:	85 c0                	test   %eax,%eax
584836:	74 17                	je     0x58484f
584838:	ff 73 04             	push   0x4(%ebx)
58483b:	46                   	inc    %esi
58483c:	e8 7f 08 f6 ff       	call   0x4e50c0
584841:	83 c4 04             	add    $0x4,%esp
584844:	3b f0                	cmp    %eax,%esi
584846:	7c c8                	jl     0x584810
584848:	5f                   	pop    %edi
584849:	5e                   	pop    %esi
58484a:	5d                   	pop    %ebp
58484b:	33 c0                	xor    %eax,%eax
58484d:	5b                   	pop    %ebx
58484e:	c3                   	ret
58484f:	8b c7                	mov    %edi,%eax
584851:	5f                   	pop    %edi
584852:	5e                   	pop    %esi
584853:	5d                   	pop    %ebp
584854:	5b                   	pop    %ebx
584855:	c3                   	ret
584856:	cc                   	int3
584857:	cc                   	int3
584858:	cc                   	int3
584859:	cc                   	int3
58485a:	cc                   	int3
58485b:	cc                   	int3
58485c:	cc                   	int3
58485d:	cc                   	int3
58485e:	cc                   	int3
58485f:	cc                   	int3
584860:	8b 44 24 08          	mov    0x8(%esp),%eax
584864:	8b 00                	mov    (%eax),%eax
584866:	8b 00                	mov    (%eax),%eax
584868:	ff 70 04             	push   0x4(%eax)
58486b:	8b 44 24 08          	mov    0x8(%esp),%eax
58486f:	8b 00                	mov    (%eax),%eax
584871:	8b 00                	mov    (%eax),%eax
584873:	ff 70 04             	push   0x4(%eax)
584876:	e8 45 68 f8 ff       	call   0x50b0c0
58487b:	83 c4 08             	add    $0x8,%esp
58487e:	c3                   	ret
58487f:	cc                   	int3
584880:	68 60 48 58 00       	push   $0x584860
584885:	e8 66 07 f6 ff       	call   0x4e4ff0
58488a:	83 c4 04             	add    $0x4,%esp
58488d:	c3                   	ret
58488e:	cc                   	int3
58488f:	cc                   	int3
584890:	6a 76                	push   $0x76
584892:	68 24 d3 65 00       	push   $0x65d324
584897:	ff 74 24 0c          	push   0xc(%esp)
58489b:	e8 e0 be f5 ff       	call   0x4e0780
5848a0:	83 c4 0c             	add    $0xc,%esp
5848a3:	c3                   	ret
5848a4:	cc                   	int3
5848a5:	cc                   	int3
5848a6:	cc                   	int3
5848a7:	cc                   	int3
5848a8:	cc                   	int3
5848a9:	cc                   	int3
5848aa:	cc                   	int3
5848ab:	cc                   	int3
5848ac:	cc                   	int3
5848ad:	cc                   	int3
5848ae:	cc                   	int3
5848af:	cc                   	int3
5848b0:	8b 44 24 08          	mov    0x8(%esp),%eax
5848b4:	53                   	push   %ebx
5848b5:	56                   	push   %esi
5848b6:	57                   	push   %edi
5848b7:	8b 38                	mov    (%eax),%edi
5848b9:	8b 44 24 10          	mov    0x10(%esp),%eax
5848bd:	f7 40 0c 00 04 00 00 	testl  $0x400,0xc(%eax)
5848c4:	75 47                	jne    0x58490d
5848c6:	f6 07 03             	testb  $0x3,(%edi)
5848c9:	74 42                	je     0x58490d
5848cb:	ff 77 0c             	push   0xc(%edi)
5848ce:	33 f6                	xor    %esi,%esi
5848d0:	e8 eb 07 f6 ff       	call   0x4e50c0
5848d5:	83 c4 04             	add    $0x4,%esp
5848d8:	85 c0                	test   %eax,%eax
5848da:	7e 2b                	jle    0x584907
5848dc:	8b 5c 24 18          	mov    0x18(%esp),%ebx
5848e0:	56                   	push   %esi
5848e1:	ff 77 0c             	push   0xc(%edi)
5848e4:	e8 97 09 f6 ff       	call   0x4e5280
5848e9:	53                   	push   %ebx
5848ea:	50                   	push   %eax
5848eb:	e8 d0 67 f8 ff       	call   0x50b0c0
5848f0:	83 c4 10             	add    $0x10,%esp
5848f3:	85 c0                	test   %eax,%eax
5848f5:	74 29                	je     0x584920
5848f7:	ff 77 0c             	push   0xc(%edi)
5848fa:	46                   	inc    %esi
5848fb:	e8 c0 07 f6 ff       	call   0x4e50c0
584900:	83 c4 04             	add    $0x4,%esp
584903:	3b f0                	cmp    %eax,%esi
584905:	7c d9                	jl     0x5848e0
584907:	5f                   	pop    %edi
584908:	5e                   	pop    %esi
584909:	33 c0                	xor    %eax,%eax
58490b:	5b                   	pop    %ebx
58490c:	c3                   	ret
58490d:	ff 74 24 18          	push   0x18(%esp)
584911:	ff 77 04             	push   0x4(%edi)
584914:	e8 a7 67 f8 ff       	call   0x50b0c0
584919:	83 c4 08             	add    $0x8,%esp
58491c:	85 c0                	test   %eax,%eax
58491e:	75 e7                	jne    0x584907
584920:	5f                   	pop    %edi
584921:	5e                   	pop    %esi
584922:	b8 01 00 00 00       	mov    $0x1,%eax
584927:	5b                   	pop    %ebx
584928:	c3                   	ret
584929:	cc                   	int3
58492a:	cc                   	int3
58492b:	cc                   	int3
58492c:	cc                   	int3
58492d:	cc                   	int3
58492e:	cc                   	int3
58492f:	cc                   	int3
584930:	b8 1c 00 00 00       	mov    $0x1c,%eax
584935:	e8 76 ce 04 00       	call   0x5d17b0
58493a:	8b 44 24 24          	mov    0x24(%esp),%eax
58493e:	89 44 24 10          	mov    %eax,0x10(%esp)
584942:	8d 44 24 0c          	lea    0xc(%esp),%eax
584946:	89 04 24             	mov    %eax,(%esp)
584949:	8d 04 24             	lea    (%esp),%eax
58494c:	50                   	push   %eax
58494d:	ff 74 24 24          	push   0x24(%esp)
584951:	e8 3a 05 f6 ff       	call   0x4e4e90
584956:	50                   	push   %eax
584957:	ff 74 24 2c          	push   0x2c(%esp)
58495b:	e8 20 09 f6 ff       	call   0x4e5280
584960:	83 c4 2c             	add    $0x2c,%esp
584963:	c3                   	ret
584964:	cc                   	int3
584965:	cc                   	int3
584966:	cc                   	int3
584967:	cc                   	int3
584968:	cc                   	int3
584969:	cc                   	int3
58496a:	cc                   	int3
58496b:	cc                   	int3
58496c:	cc                   	int3
58496d:	cc                   	int3
58496e:	cc                   	int3
58496f:	cc                   	int3
584970:	53                   	push   %ebx
584971:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
584975:	57                   	push   %edi
584976:	33 ff                	xor    %edi,%edi
584978:	85 db                	test   %ebx,%ebx
58497a:	75 05                	jne    0x584981
58497c:	5f                   	pop    %edi
58497d:	33 c0                	xor    %eax,%eax
58497f:	5b                   	pop    %ebx
584980:	c3                   	ret
584981:	8b 03                	mov    (%ebx),%eax
584983:	55                   	push   %ebp
584984:	56                   	push   %esi
584985:	85 c0                	test   %eax,%eax
584987:	75 25                	jne    0x5849ae
584989:	6a 01                	push   $0x1
58498b:	68 b8 25 60 00       	push   $0x6025b8
584990:	ff 74 24 1c          	push   0x1c(%esp)
584994:	e8 27 4b f7 ff       	call   0x4f94c0
584999:	83 c4 0c             	add    $0xc,%esp
58499c:	83 f8 01             	cmp    $0x1,%eax
58499f:	0f 85 94 00 00 00    	jne    0x584a39
5849a5:	8b f8                	mov    %eax,%edi
5849a7:	5e                   	pop    %esi