472748:	53                   	push   %ebx
472749:	68 ef be ad de       	push   $0xdeadbeef
47274e:	6a 21                	push   $0x21
472750:	eb 15                	jmp    0x472767
472752:	57                   	push   %edi
472753:	e8 14 e9 fa ff       	call   0x42106c
472758:	59                   	pop    %ecx
472759:	53                   	push   %ebx
47275a:	68 ef be ad de       	push   $0xdeadbeef
47275f:	6a 20                	push   $0x20
472761:	eb 04                	jmp    0x472767
472763:	6a 01                	push   $0x1
472765:	53                   	push   %ebx
472766:	53                   	push   %ebx
472767:	8b ce                	mov    %esi,%ecx
472769:	e8 09 00 00 00       	call   0x472777
47276e:	5f                   	pop    %edi
47276f:	5e                   	pop    %esi
472770:	5b                   	pop    %ebx
472771:	8b e5                	mov    %ebp,%esp
472773:	5d                   	pop    %ebp
472774:	c2 04 00             	ret    $0x4
472777:	55                   	push   %ebp
472778:	8b ec                	mov    %esp,%ebp
47277a:	81 7d 0c ef be ad de 	cmpl   $0xdeadbeef,0xc(%ebp)
472781:	8b 45 08             	mov    0x8(%ebp),%eax
472784:	56                   	push   %esi
472785:	8b f1                	mov    %ecx,%esi
472787:	89 46 18             	mov    %eax,0x18(%esi)
47278a:	75 09                	jne    0x472795
47278c:	ff 15 40 f3 48 00    	call   *0x48f340
472792:	89 46 1c             	mov    %eax,0x1c(%esi)
472795:	8b 86 d4 00 00 00    	mov    0xd4(%esi),%eax
47279b:	5e                   	pop    %esi
47279c:	85 c0                	test   %eax,%eax
47279e:	74 07                	je     0x4727a7
4727a0:	50                   	push   %eax
4727a1:	ff 15 d8 f2 48 00    	call   *0x48f2d8
4727a7:	8a 45 10             	mov    0x10(%ebp),%al
4727aa:	5d                   	pop    %ebp
4727ab:	c2 0c 00             	ret    $0xc
4727ae:	55                   	push   %ebp
4727af:	8b ec                	mov    %esp,%ebp
4727b1:	8b 45 0c             	mov    0xc(%ebp),%eax
4727b4:	8d 91 90 00 00 00    	lea    0x90(%ecx),%edx
4727ba:	83 78 70 01          	cmpl   $0x1,0x70(%eax)
4727be:	74 03                	je     0x4727c3
4727c0:	8d 51 5c             	lea    0x5c(%ecx),%edx
4727c3:	83 78 70 01          	cmpl   $0x1,0x70(%eax)
4727c7:	57                   	push   %edi
4727c8:	8d b9 a0 00 00 00    	lea    0xa0(%ecx),%edi
4727ce:	74 03                	je     0x4727d3
4727d0:	8d 79 6c             	lea    0x6c(%ecx),%edi
4727d3:	8b 42 04             	mov    0x4(%edx),%eax
4727d6:	85 c0                	test   %eax,%eax
4727d8:	74 21                	je     0x4727fb
4727da:	40                   	inc    %eax
4727db:	50                   	push   %eax
4727dc:	ff 32                	push   (%edx)
4727de:	6a 2b                	push   $0x2b
4727e0:	ff 75 08             	push   0x8(%ebp)
4727e3:	ff 15 88 f7 48 00    	call   *0x48f788
4727e9:	8b 47 04             	mov    0x4(%edi),%eax
4727ec:	40                   	inc    %eax
4727ed:	50                   	push   %eax
4727ee:	ff 37                	push   (%edi)
4727f0:	6a 2c                	push   $0x2c
4727f2:	ff 75 08             	push   0x8(%ebp)
4727f5:	ff 15 88 f7 48 00    	call   *0x48f788
4727fb:	5f                   	pop    %edi
4727fc:	5d                   	pop    %ebp
4727fd:	c2 08 00             	ret    $0x8
472800:	53                   	push   %ebx
472801:	8b da                	mov    %edx,%ebx
472803:	56                   	push   %esi
472804:	57                   	push   %edi
472805:	8b f9                	mov    %ecx,%edi
472807:	8b 43 04             	mov    0x4(%ebx),%eax
47280a:	8b 08                	mov    (%eax),%ecx
47280c:	e8 8b 74 f9 ff       	call   0x409c9c
472811:	6a 02                	push   $0x2
472813:	59                   	pop    %ecx
472814:	48                   	dec    %eax
472815:	74 0c                	je     0x472823
472817:	48                   	dec    %eax
472818:	74 04                	je     0x47281e
47281a:	33 c0                	xor    %eax,%eax
47281c:	eb 08                	jmp    0x472826
47281e:	66 89 0f             	mov    %cx,(%edi)
472821:	eb 06                	jmp    0x472829
472823:	33 c0                	xor    %eax,%eax
472825:	40                   	inc    %eax
472826:	66 89 07             	mov    %ax,(%edi)
472829:	8b 43 08             	mov    0x8(%ebx),%eax
47282c:	2b c1                	sub    %ecx,%eax
47282e:	74 36                	je     0x472866
472830:	48                   	dec    %eax
472831:	74 1b                	je     0x47284e
472833:	48                   	dec    %eax
472834:	75 48                	jne    0x47287e
472836:	8b 43 04             	mov    0x4(%ebx),%eax
472839:	8b 70 0c             	mov    0xc(%eax),%esi
47283c:	8b ce                	mov    %esi,%ecx
47283e:	e8 54 71 f9 ff       	call   0x409997
472843:	ff 76 08             	push   0x8(%esi)
472846:	8d 4f 14             	lea    0x14(%edi),%ecx
472849:	e8 59 59 f9 ff       	call   0x4081a7
47284e:	8b 43 04             	mov    0x4(%ebx),%eax
472851:	8b 70 08             	mov    0x8(%eax),%esi
472854:	8b ce                	mov    %esi,%ecx
472856:	e8 3c 71 f9 ff       	call   0x409997
47285b:	ff 76 08             	push   0x8(%esi)
47285e:	8d 4f 04             	lea    0x4(%edi),%ecx
472861:	e8 41 59 f9 ff       	call   0x4081a7
472866:	8b 43 04             	mov    0x4(%ebx),%eax
472869:	8b 70 04             	mov    0x4(%eax),%esi
47286c:	8b ce                	mov    %esi,%ecx
47286e:	e8 24 71 f9 ff       	call   0x409997
472873:	ff 76 08             	push   0x8(%esi)
472876:	8d 4f 24             	lea    0x24(%edi),%ecx
472879:	e8 29 59 f9 ff       	call   0x4081a7
47287e:	5f                   	pop    %edi
47287f:	5e                   	pop    %esi
472880:	5b                   	pop    %ebx
472881:	c3                   	ret
472882:	55                   	push   %ebp
472883:	8b ec                	mov    %esp,%ebp
472885:	83 ec 4c             	sub    $0x4c,%esp
472888:	56                   	push   %esi
472889:	6a 38                	push   $0x38
47288b:	33 f6                	xor    %esi,%esi
47288d:	8d 45 b8             	lea    -0x48(%ebp),%eax
472890:	56                   	push   %esi
472891:	50                   	push   %eax
472892:	e8 89 07 fb ff       	call   0x423020
472897:	33 c0                	xor    %eax,%eax
472899:	c7 45 b4 7c 00 00 00 	movl   $0x7c,-0x4c(%ebp)
4728a0:	40                   	inc    %eax
4728a1:	83 c4 0c             	add    $0xc,%esp
4728a4:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4728a7:	89 45 c8             	mov    %eax,-0x38(%ebp)
4728aa:	89 45 bc             	mov    %eax,-0x44(%ebp)
4728ad:	89 45 ec             	mov    %eax,-0x14(%ebp)
4728b0:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4728b3:	89 45 dc             	mov    %eax,-0x24(%ebp)
4728b6:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4728b9:	50                   	push   %eax
4728ba:	56                   	push   %esi
4728bb:	ff 75 08             	push   0x8(%ebp)
4728be:	e8 79 05 fb ff       	call   0x422e3c
4728c3:	59                   	pop    %ecx
4728c4:	50                   	push   %eax
4728c5:	ff 75 08             	push   0x8(%ebp)
4728c8:	ff 15 8c f7 48 00    	call   *0x48f78c
4728ce:	85 c0                	test   %eax,%eax
4728d0:	75 07                	jne    0x4728d9
4728d2:	32 c0                	xor    %al,%al
4728d4:	e9 b0 00 00 00       	jmp    0x472989
4728d9:	53                   	push   %ebx
4728da:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4728dd:	8b cb                	mov    %ebx,%ecx
4728df:	57                   	push   %edi
4728e0:	ff 75 bc             	push   -0x44(%ebp)
4728e3:	56                   	push   %esi
4728e4:	ff 75 b8             	push   -0x48(%ebp)
4728e7:	e8 c1 4f f9 ff       	call   0x4078ad
4728ec:	ff 75 c8             	push   -0x38(%ebp)
4728ef:	8d 4b 10             	lea    0x10(%ebx),%ecx
4728f2:	56                   	push   %esi
4728f3:	ff 75 c4             	push   -0x3c(%ebp)
4728f6:	e8 b2 4f f9 ff       	call   0x4078ad
4728fb:	ff 75 d4             	push   -0x2c(%ebp)
4728fe:	8d 4b 20             	lea    0x20(%ebx),%ecx
472901:	56                   	push   %esi
472902:	ff 75 d0             	push   -0x30(%ebp)
472905:	e8 a3 4f f9 ff       	call   0x4078ad
47290a:	ff 75 dc             	push   -0x24(%ebp)
47290d:	8d 4b 30             	lea    0x30(%ebx),%ecx
472910:	56                   	push   %esi
472911:	ff 75 d8             	push   -0x28(%ebp)
472914:	e8 94 4f f9 ff       	call   0x4078ad
472919:	ff 75 e4             	push   -0x1c(%ebp)
47291c:	8d 4b 40             	lea    0x40(%ebx),%ecx
47291f:	56                   	push   %esi
472920:	ff 75 e0             	push   -0x20(%ebp)
472923:	e8 85 4f f9 ff       	call   0x4078ad
472928:	ff 75 ec             	push   -0x14(%ebp)
47292b:	8d 73 50             	lea    0x50(%ebx),%esi
47292e:	6a 00                	push   $0x0
472930:	ff 75 e8             	push   -0x18(%ebp)
472933:	8b ce                	mov    %esi,%ecx
472935:	e8 73 4f f9 ff       	call   0x4078ad
47293a:	56                   	push   %esi
47293b:	8d 45 f0             	lea    -0x10(%ebp),%eax
47293e:	50                   	push   %eax
47293f:	8d 4b 40             	lea    0x40(%ebx),%ecx
472942:	e8 dc 57 fe ff       	call   0x458123
472947:	50                   	push   %eax
472948:	8d 4b 60             	lea    0x60(%ebx),%ecx
47294b:	e8 57 58 f9 ff       	call   0x4081a7
472950:	8d 4d f0             	lea    -0x10(%ebp),%ecx
472953:	e8 0c 31 f9 ff       	call   0x405a64
472958:	66 8b 45 cc          	mov    -0x34(%ebp),%ax
47295c:	66 89 43 78          	mov    %ax,0x78(%ebx)
472960:	8b 45 c0             	mov    -0x40(%ebp),%eax
472963:	89 43 74             	mov    %eax,0x74(%ebx)
472966:	48                   	dec    %eax
472967:	74 15                	je     0x47297e
472969:	48                   	dec    %eax
47296a:	74 09                	je     0x472975
47296c:	c7 43 70 03 00 00 00 	movl   $0x3,0x70(%ebx)
472973:	eb 10                	jmp    0x472985
472975:	c7 43 70 02 00 00 00 	movl   $0x2,0x70(%ebx)
47297c:	eb 07                	jmp    0x472985
47297e:	c7 43 70 01 00 00 00 	movl   $0x1,0x70(%ebx)
472985:	5f                   	pop    %edi
472986:	b0 01                	mov    $0x1,%al
472988:	5b                   	pop    %ebx
472989:	5e                   	pop    %esi
47298a:	8b e5                	mov    %ebp,%esp
47298c:	5d                   	pop    %ebp
47298d:	c2 08 00             	ret    $0x8
472990:	55                   	push   %ebp
472991:	8b ec                	mov    %esp,%ebp
472993:	56                   	push   %esi
472994:	8b f1                	mov    %ecx,%esi
472996:	80 be d0 00 00 00 00 	cmpb   $0x0,0xd0(%esi)
47299d:	74 2e                	je     0x4729cd
47299f:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
4729a3:	74 28                	je     0x4729cd
4729a5:	83 ec 10             	sub    $0x10,%esp
4729a8:	8d 8e d4 00 00 00    	lea    0xd4(%esi),%ecx
4729ae:	e8 7b f0 ff ff       	call   0x471a2e
4729b3:	56                   	push   %esi
4729b4:	6a 00                	push   $0x0
4729b6:	68 60 2a 47 00       	push   $0x472a60
4729bb:	e8 3c 35 fb ff       	call   0x425efc
4729c0:	33 c0                	xor    %eax,%eax
4729c2:	83 c4 0c             	add    $0xc,%esp
4729c5:	39 46 18             	cmp    %eax,0x18(%esi)
4729c8:	0f 94 c0             	sete   %al
4729cb:	eb 08                	jmp    0x4729d5
4729cd:	ff 75 08             	push   0x8(%ebp)
4729d0:	e8 2d f2 ff ff       	call   0x471c02
4729d5:	5e                   	pop    %esi
4729d6:	5d                   	pop    %ebp
4729d7:	c2 04 00             	ret    $0x4
4729da:	57                   	push   %edi
4729db:	8b f9                	mov    %ecx,%edi
4729dd:	ff 77 04             	push   0x4(%edi)
4729e0:	ff 15 80 f7 48 00    	call   *0x48f780
4729e6:	ff 37                	push   (%edi)
4729e8:	ff 15 80 f7 48 00    	call   *0x48f780
4729ee:	83 27 00             	andl   $0x0,(%edi)
4729f1:	8d 8f d4 00 00 00    	lea    0xd4(%edi),%ecx
4729f7:	83 67 04 00          	andl   $0x0,0x4(%edi)
4729fb:	68 10 27 00 00       	push   $0x2710
472a00:	e8 6a 00 00 00       	call   0x472a6f
472a05:	5f                   	pop    %edi
472a06:	c3                   	ret
472a07:	55                   	push   %ebp
472a08:	8b ec                	mov    %esp,%ebp
472a0a:	51                   	push   %ecx
472a0b:	51                   	push   %ecx
472a0c:	53                   	push   %ebx
472a0d:	8b 5d 08             	mov    0x8(%ebp),%ebx
472a10:	56                   	push   %esi
472a11:	57                   	push   %edi
472a12:	8b f9                	mov    %ecx,%edi
472a14:	85 db                	test   %ebx,%ebx
472a16:	74 3d                	je     0x472a55
472a18:	8b 75 0c             	mov    0xc(%ebp),%esi
472a1b:	85 f6                	test   %esi,%esi
472a1d:	74 36                	je     0x472a55
472a1f:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
472a23:	8d 45 f8             	lea    -0x8(%ebp),%eax
472a26:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
472a2a:	50                   	push   %eax
472a2b:	e8 1c 01 00 00       	call   0x472b4c
472a30:	6a 00                	push   $0x0
472a32:	e8 35 e6 fa ff       	call   0x42106c
472a37:	8b 47 04             	mov    0x4(%edi),%eax
472a3a:	59                   	pop    %ecx
472a3b:	8b 4f 08             	mov    0x8(%edi),%ecx
472a3e:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
472a42:	89 18                	mov    %ebx,(%eax)
472a44:	8b 4f 08             	mov    0x8(%edi),%ecx
472a47:	8b 47 04             	mov    0x4(%edi),%eax
472a4a:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
472a4e:	89 70 04             	mov    %esi,0x4(%eax)
472a51:	b0 01                	mov    $0x1,%al
472a53:	eb 02                	jmp    0x472a57
472a55:	32 c0                	xor    %al,%al
472a57:	5f                   	pop    %edi
472a58:	5e                   	pop    %esi
472a59:	5b                   	pop    %ebx
472a5a:	8b e5                	mov    %ebp,%esp
472a5c:	5d                   	pop    %ebp
472a5d:	c2 08 00             	ret    $0x8
472a60:	55                   	push   %ebp
472a61:	8b ec                	mov    %esp,%ebp
472a63:	8b 4d 08             	mov    0x8(%ebp),%ecx
472a66:	6a 01                	push   $0x1
472a68:	e8 95 f1 ff ff       	call   0x471c02
472a6d:	5d                   	pop    %ebp
472a6e:	c3                   	ret
472a6f:	55                   	push   %ebp
472a70:	8b ec                	mov    %esp,%ebp
472a72:	83 39 00             	cmpl   $0x0,(%ecx)
472a75:	74 12                	je     0x472a89
472a77:	ff 75 08             	push   0x8(%ebp)
472a7a:	ff 31                	push   (%ecx)
472a7c:	ff 15 6c f1 48 00    	call   *0x48f16c
472a82:	f7 d8                	neg    %eax
472a84:	1b c0                	sbb    %eax,%eax
472a86:	40                   	inc    %eax
472a87:	eb 02                	jmp    0x472a8b
472a89:	33 c0                	xor    %eax,%eax
472a8b:	5d                   	pop    %ebp
472a8c:	c2 04 00             	ret    $0x4
472a8f:	56                   	push   %esi
472a90:	8b f1                	mov    %ecx,%esi
472a92:	57                   	push   %edi
472a93:	33 ff                	xor    %edi,%edi
472a95:	39 7e 08             	cmp    %edi,0x8(%esi)
472a98:	76 28                	jbe    0x472ac2
472a9a:	53                   	push   %ebx
472a9b:	8b 46 04             	mov    0x4(%esi),%eax
472a9e:	8b 1c b8             	mov    (%eax,%edi,4),%ebx
472aa1:	85 db                	test   %ebx,%ebx
472aa3:	74 0f                	je     0x472ab4
472aa5:	ff 33                	push   (%ebx)
472aa7:	e8 c0 e5 fa ff       	call   0x42106c
472aac:	53                   	push   %ebx
472aad:	e8 ba e5 fa ff       	call   0x42106c
472ab2:	59                   	pop    %ecx
472ab3:	59                   	pop    %ecx
472ab4:	8b 46 04             	mov    0x4(%esi),%eax
472ab7:	83 24 b8 00          	andl   $0x0,(%eax,%edi,4)
472abb:	47                   	inc    %edi
472abc:	3b 7e 08             	cmp    0x8(%esi),%edi
472abf:	72 da                	jb     0x472a9b
472ac1:	5b                   	pop    %ebx
472ac2:	83 66 08 00          	andl   $0x0,0x8(%esi)
472ac6:	5f                   	pop    %edi
472ac7:	5e                   	pop    %esi
472ac8:	c3                   	ret
472ac9:	56                   	push   %esi
472aca:	8b f1                	mov    %ecx,%esi
472acc:	8b 4e 04             	mov    0x4(%esi),%ecx