47b805:	85 c0                	test   %eax,%eax
47b807:	78 1a                	js     0x47b823
47b809:	8b cf                	mov    %edi,%ecx
47b80b:	e8 e7 0a 00 00       	call   0x47c2f7
47b810:	8b f0                	mov    %eax,%esi
47b812:	8b c8                	mov    %eax,%ecx
47b814:	e8 2a ad fd ff       	call   0x456543
47b819:	84 c0                	test   %al,%al
47b81b:	74 06                	je     0x47b823
47b81d:	83 7e 0c 0f          	cmpl   $0xf,0xc(%esi)
47b821:	75 25                	jne    0x47b848
47b823:	8b cf                	mov    %edi,%ecx
47b825:	e8 2c ec ff ff       	call   0x47a456
47b82a:	8b 45 08             	mov    0x8(%ebp),%eax
47b82d:	8b 0b                	mov    (%ebx),%ecx
47b82f:	8b 40 04             	mov    0x4(%eax),%eax
47b832:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
47b836:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47b839:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47b83d:	50                   	push   %eax
47b83e:	68 a5 00 00 00       	push   $0xa5
47b843:	e8 6d e8 fe ff       	call   0x46a0b5
47b848:	5f                   	pop    %edi
47b849:	5e                   	pop    %esi
47b84a:	5b                   	pop    %ebx
47b84b:	8b e5                	mov    %ebp,%esp
47b84d:	5d                   	pop    %ebp
47b84e:	c2 08 00             	ret    $0x8
47b851:	55                   	push   %ebp
47b852:	8b ec                	mov    %esp,%ebp
47b854:	83 e4 f8             	and    $0xfffffff8,%esp
47b857:	83 ec 5c             	sub    $0x5c,%esp
47b85a:	53                   	push   %ebx
47b85b:	8b 5d 10             	mov    0x10(%ebp),%ebx
47b85e:	56                   	push   %esi
47b85f:	57                   	push   %edi
47b860:	8b f9                	mov    %ecx,%edi
47b862:	83 7b 0c 0f          	cmpl   $0xf,0xc(%ebx)
47b866:	75 11                	jne    0x47b879
47b868:	53                   	push   %ebx
47b869:	ff 75 0c             	push   0xc(%ebp)
47b86c:	ff 75 08             	push   0x8(%ebp)
47b86f:	e8 6f 03 00 00       	call   0x47bbe3
47b874:	e9 61 03 00 00       	jmp    0x47bbda
47b879:	33 f6                	xor    %esi,%esi
47b87b:	c7 44 24 18 84 fb 48 	movl   $0x48fb84,0x18(%esp)
47b882:	00
47b883:	8d 44 24 48          	lea    0x48(%esp),%eax
47b887:	89 74 24 1c          	mov    %esi,0x1c(%esp)
47b88b:	8d 4c 24 38          	lea    0x38(%esp),%ecx
47b88f:	89 74 24 20          	mov    %esi,0x20(%esp)
47b893:	89 74 24 24          	mov    %esi,0x24(%esp)
47b897:	89 74 24 48          	mov    %esi,0x48(%esp)
47b89b:	89 74 24 50          	mov    %esi,0x50(%esp)
47b89f:	c7 44 24 54 01 00 00 	movl   $0x1,0x54(%esp)
47b8a6:	00
47b8a7:	89 44 24 10          	mov    %eax,0x10(%esp)
47b8ab:	e8 17 bf f8 ff       	call   0x4077c7
47b8b0:	8b cb                	mov    %ebx,%ecx
47b8b2:	89 74 24 14          	mov    %esi,0x14(%esp)
47b8b6:	e8 88 ac fd ff       	call   0x456543
47b8bb:	84 c0                	test   %al,%al
47b8bd:	75 42                	jne    0x47b901
47b8bf:	8b 45 0c             	mov    0xc(%ebp),%eax
47b8c2:	8b 08                	mov    (%eax),%ecx
47b8c4:	8b 45 08             	mov    0x8(%ebp),%eax
47b8c7:	8b 40 04             	mov    0x4(%eax),%eax
47b8ca:	8b 04 88             	mov    (%eax,%ecx,4),%eax
47b8cd:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47b8d1:	50                   	push   %eax
47b8d2:	68 a9 00 00 00       	push   $0xa9
47b8d7:	8b cf                	mov    %edi,%ecx
47b8d9:	e8 d7 e7 fe ff       	call   0x46a0b5
47b8de:	8d 4c 24 38          	lea    0x38(%esp),%ecx
47b8e2:	e8 7d a1 f8 ff       	call   0x405a64
47b8e7:	8d 4c 24 48          	lea    0x48(%esp),%ecx
47b8eb:	e8 30 e1 f8 ff       	call   0x409a20
47b8f0:	8d 4c 24 18          	lea    0x18(%esp),%ecx
47b8f4:	e8 fb ad fd ff       	call   0x4566f4
47b8f9:	83 c8 ff             	or     $0xffffffff,%eax
47b8fc:	e9 d9 02 00 00       	jmp    0x47bbda
47b901:	8b 5d 0c             	mov    0xc(%ebp),%ebx
47b904:	8b 55 08             	mov    0x8(%ebp),%edx
47b907:	6a 35                	push   $0x35
47b909:	8b 0b                	mov    (%ebx),%ecx
47b90b:	8b 42 04             	mov    0x4(%edx),%eax
47b90e:	8b 04 88             	mov    (%eax,%ecx,4),%eax
47b911:	59                   	pop    %ecx
47b912:	66 39 48 08          	cmp    %cx,0x8(%eax)
47b916:	75 10                	jne    0x47b928
47b918:	ff 30                	push   (%eax)
47b91a:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
47b91e:	e8 84 c8 f8 ff       	call   0x4081a7
47b923:	ff 03                	incl   (%ebx)
47b925:	8b 55 08             	mov    0x8(%ebp),%edx
47b928:	8b 42 04             	mov    0x4(%edx),%eax
47b92b:	8b 0b                	mov    (%ebx),%ecx
47b92d:	6a 47                	push   $0x47
47b92f:	5a                   	pop    %edx
47b930:	8b 04 88             	mov    (%eax,%ecx,4),%eax
47b933:	66 39 50 08          	cmp    %dx,0x8(%eax)
47b937:	8b 55 08             	mov    0x8(%ebp),%edx
47b93a:	0f 85 ba 00 00 00    	jne    0x47b9fa
47b940:	8d 41 ff             	lea    -0x1(%ecx),%eax
47b943:	8b cf                	mov    %edi,%ecx
47b945:	89 03                	mov    %eax,(%ebx)
47b947:	8d 44 24 18          	lea    0x18(%esp),%eax
47b94b:	50                   	push   %eax
47b94c:	53                   	push   %ebx
47b94d:	52                   	push   %edx
47b94e:	e8 7f e9 ff ff       	call   0x47a2d2
47b953:	85 c0                	test   %eax,%eax
47b955:	78 87                	js     0x47b8de
47b957:	8b 55 08             	mov    0x8(%ebp),%edx
47b95a:	c7 44 24 14 01 00 00 	movl   $0x1,0x14(%esp)
47b961:	00
47b962:	8b 42 04             	mov    0x4(%edx),%eax
47b965:	8b 0b                	mov    (%ebx),%ecx
47b967:	6a 35                	push   $0x35
47b969:	8b 0c 88             	mov    (%eax,%ecx,4),%ecx
47b96c:	58                   	pop    %eax
47b96d:	66 39 41 08          	cmp    %ax,0x8(%ecx)
47b971:	0f 84 f1 01 00 00    	je     0x47bb68
47b977:	6a 47                	push   $0x47
47b979:	58                   	pop    %eax
47b97a:	66 39 41 08          	cmp    %ax,0x8(%ecx)
47b97e:	0f 84 e4 01 00 00    	je     0x47bb68
47b984:	e8 d6 b1 fd ff       	call   0x456b5f
47b989:	84 c0                	test   %al,%al
47b98b:	0f 85 82 00 00 00    	jne    0x47ba13
47b991:	ff 74 24 38          	push   0x38(%esp)
47b995:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
47b999:	e8 a3 c5 f8 ff       	call   0x407f41
47b99e:	8d 44 24 10          	lea    0x10(%esp),%eax
47b9a2:	8b cf                	mov    %edi,%ecx
47b9a4:	50                   	push   %eax
47b9a5:	8d 44 24 1c          	lea    0x1c(%esp),%eax
47b9a9:	50                   	push   %eax
47b9aa:	8d 44 24 60          	lea    0x60(%esp),%eax
47b9ae:	50                   	push   %eax
47b9af:	ff 75 10             	push   0x10(%ebp)
47b9b2:	ff 74 24 24          	push   0x24(%esp)
47b9b6:	e8 37 e8 ff ff       	call   0x47a1f2
47b9bb:	85 c0                	test   %eax,%eax
47b9bd:	8d 4c 24 58          	lea    0x58(%esp),%ecx
47b9c1:	0f 98 c3             	sets   %bl
47b9c4:	e8 9b a0 f8 ff       	call   0x405a64
47b9c9:	84 db                	test   %bl,%bl
47b9cb:	0f 85 0d ff ff ff    	jne    0x47b8de
47b9d1:	8b 45 0c             	mov    0xc(%ebp),%eax
47b9d4:	8b 08                	mov    (%eax),%ecx
47b9d6:	8b 45 08             	mov    0x8(%ebp),%eax
47b9d9:	8b 40 04             	mov    0x4(%eax),%eax
47b9dc:	8b 04 88             	mov    (%eax,%ecx,4),%eax
47b9df:	66 83 78 08 7f       	cmpw   $0x7f,0x8(%eax)
47b9e4:	0f 84 d3 01 00 00    	je     0x47bbbd
47b9ea:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47b9ee:	8b cf                	mov    %edi,%ecx
47b9f0:	50                   	push   %eax
47b9f1:	6a 72                	push   $0x72
47b9f3:	e8 bd e6 fe ff       	call   0x46a0b5
47b9f8:	eb 70                	jmp    0x47ba6a
47b9fa:	39 74 24 3c          	cmp    %esi,0x3c(%esp)
47b9fe:	0f 85 5e ff ff ff    	jne    0x47b962
47ba04:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47ba08:	50                   	push   %eax
47ba09:	68 80 00 00 00       	push   $0x80
47ba0e:	e9 c4 fe ff ff       	jmp    0x47b8d7
47ba13:	0f b7 41 08          	movzwl 0x8(%ecx),%eax
47ba17:	8b cf                	mov    %edi,%ecx
47ba19:	ff 03                	incl   (%ebx)
47ba1b:	6a ff                	push   $0xffffffff
47ba1d:	89 44 24 18          	mov    %eax,0x18(%esp)
47ba21:	8d 44 24 2c          	lea    0x2c(%esp),%eax
47ba25:	50                   	push   %eax
47ba26:	53                   	push   %ebx
47ba27:	52                   	push   %edx
47ba28:	89 74 24 38          	mov    %esi,0x38(%esp)
47ba2c:	89 74 24 40          	mov    %esi,0x40(%esp)
47ba30:	c7 44 24 44 01 00 00 	movl   $0x1,0x44(%esp)
47ba37:	00
47ba38:	e8 c3 e5 f8 ff       	call   0x40a000
47ba3d:	85 c0                	test   %eax,%eax
47ba3f:	78 20                	js     0x47ba61
47ba41:	8b 45 08             	mov    0x8(%ebp),%eax
47ba44:	8b 0b                	mov    (%ebx),%ecx
47ba46:	8b 40 04             	mov    0x4(%eax),%eax
47ba49:	8b 04 88             	mov    (%eax,%ecx,4),%eax
47ba4c:	66 83 78 08 7f       	cmpw   $0x7f,0x8(%eax)
47ba51:	74 1f                	je     0x47ba72
47ba53:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47ba57:	8b cf                	mov    %edi,%ecx
47ba59:	50                   	push   %eax
47ba5a:	6a 72                	push   $0x72
47ba5c:	e8 54 e6 fe ff       	call   0x46a0b5
47ba61:	8d 4c 24 28          	lea    0x28(%esp),%ecx
47ba65:	e8 b6 df f8 ff       	call   0x409a20
47ba6a:	83 ce ff             	or     $0xffffffff,%esi
47ba6d:	e9 4b 01 00 00       	jmp    0x47bbbd
47ba72:	66 83 7c 24 14 41    	cmpw   $0x41,0x14(%esp)
47ba78:	0f 84 a5 00 00 00    	je     0x47bb23
47ba7e:	ff 74 24 38          	push   0x38(%esp)
47ba82:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
47ba86:	e8 b6 c4 f8 ff       	call   0x407f41
47ba8b:	8d 44 24 10          	lea    0x10(%esp),%eax
47ba8f:	8b cf                	mov    %edi,%ecx
47ba91:	50                   	push   %eax
47ba92:	8d 44 24 1c          	lea    0x1c(%esp),%eax
47ba96:	50                   	push   %eax
47ba97:	8d 44 24 60          	lea    0x60(%esp),%eax
47ba9b:	50                   	push   %eax
47ba9c:	ff 75 10             	push   0x10(%ebp)
47ba9f:	56                   	push   %esi
47baa0:	e8 4d e7 ff ff       	call   0x47a1f2
47baa5:	85 c0                	test   %eax,%eax
47baa7:	8d 4c 24 58          	lea    0x58(%esp),%ecx
47baab:	0f 99 c3             	setns  %bl
47baae:	e8 b1 9f f8 ff       	call   0x405a64
47bab3:	84 db                	test   %bl,%bl
47bab5:	74 6c                	je     0x47bb23
47bab7:	8b 44 24 14          	mov    0x14(%esp),%eax
47babb:	98                   	cwtl
47babc:	83 e8 52             	sub    $0x52,%eax
47babf:	74 55                	je     0x47bb16
47bac1:	48                   	dec    %eax
47bac2:	74 35                	je     0x47baf9
47bac4:	48                   	dec    %eax
47bac5:	74 22                	je     0x47bae9
47bac7:	48                   	dec    %eax
47bac8:	74 10                	je     0x47bada
47baca:	8b 4c 24 10          	mov    0x10(%esp),%ecx
47bace:	8d 44 24 28          	lea    0x28(%esp),%eax
47bad2:	50                   	push   %eax
47bad3:	e8 84 aa fd ff       	call   0x45655c
47bad8:	eb 2d                	jmp    0x47bb07
47bada:	ff 74 24 10          	push   0x10(%esp)
47bade:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
47bae2:	e8 55 db f8 ff       	call   0x40963c
47bae7:	eb 3a                	jmp    0x47bb23
47bae9:	8b 4c 24 10          	mov    0x10(%esp),%ecx
47baed:	8d 44 24 28          	lea    0x28(%esp),%eax
47baf1:	50                   	push   %eax
47baf2:	e8 be aa fd ff       	call   0x4565b5
47baf7:	eb 0e                	jmp    0x47bb07
47baf9:	8b 4c 24 10          	mov    0x10(%esp),%ecx
47bafd:	8d 44 24 28          	lea    0x28(%esp),%eax
47bb01:	50                   	push   %eax
47bb02:	e8 80 db f8 ff       	call   0x409687
47bb07:	ff 74 24 10          	push   0x10(%esp)
47bb0b:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
47bb0f:	e8 88 e3 f8 ff       	call   0x409e9c
47bb14:	eb 0d                	jmp    0x47bb23
47bb16:	ff 74 24 10          	push   0x10(%esp)
47bb1a:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
47bb1e:	e8 dd db f8 ff       	call   0x409700
47bb23:	8d 44 24 28          	lea    0x28(%esp),%eax
47bb27:	50                   	push   %eax
47bb28:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
47bb2c:	e8 34 ab fd ff       	call   0x456665
47bb31:	ff 74 24 38          	push   0x38(%esp)
47bb35:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
47bb39:	e8 03 c4 f8 ff       	call   0x407f41
47bb3e:	8d 44 24 18          	lea    0x18(%esp),%eax
47bb42:	8b cf                	mov    %edi,%ecx
47bb44:	50                   	push   %eax
47bb45:	8d 44 24 5c          	lea    0x5c(%esp),%eax
47bb49:	50                   	push   %eax
47bb4a:	ff 75 10             	push   0x10(%ebp)
47bb4d:	e8 0e e7 ff ff       	call   0x47a260
47bb52:	8d 4c 24 58          	lea    0x58(%esp),%ecx
47bb56:	8b f0                	mov    %eax,%esi
47bb58:	e8 07 9f f8 ff       	call   0x405a64
47bb5d:	8d 4c 24 28          	lea    0x28(%esp),%ecx
47bb61:	e8 ba de f8 ff       	call   0x409a20
47bb66:	eb 55                	jmp    0x47bbbd
47bb68:	ff 74 24 38          	push   0x38(%esp)
47bb6c:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
47bb70:	e8 cc c3 f8 ff       	call   0x407f41
47bb75:	8d 44 24 10          	lea    0x10(%esp),%eax
47bb79:	8b cf                	mov    %edi,%ecx
47bb7b:	50                   	push   %eax
47bb7c:	8d 44 24 1c          	lea    0x1c(%esp),%eax
47bb80:	50                   	push   %eax
47bb81:	8d 44 24 60          	lea    0x60(%esp),%eax
47bb85:	50                   	push   %eax
47bb86:	ff 75 10             	push   0x10(%ebp)
47bb89:	ff 74 24 24          	push   0x24(%esp)
47bb8d:	e8 60 e6 ff ff       	call   0x47a1f2
47bb92:	85 c0                	test   %eax,%eax
47bb94:	8d 4c 24 58          	lea    0x58(%esp),%ecx
47bb98:	0f 98 c3             	sets   %bl
47bb9b:	e8 c4 9e f8 ff       	call   0x405a64
47bba0:	84 db                	test   %bl,%bl
47bba2:	0f 85 36 fd ff ff    	jne    0x47b8de
47bba8:	ff 74 24 10          	push   0x10(%esp)
47bbac:	8b 45 0c             	mov    0xc(%ebp),%eax
47bbaf:	8b cf                	mov    %edi,%ecx
47bbb1:	50                   	push   %eax
47bbb2:	8b 45 08             	mov    0x8(%ebp),%eax
47bbb5:	50                   	push   %eax
47bbb6:	e8 96 fc ff ff       	call   0x47b851
47bbbb:	8b f0                	mov    %eax,%esi
47bbbd:	8d 4c 24 38          	lea    0x38(%esp),%ecx
47bbc1:	e8 9e 9e f8 ff       	call   0x405a64
47bbc6:	8d 4c 24 48          	lea    0x48(%esp),%ecx
47bbca:	e8 51 de f8 ff       	call   0x409a20
47bbcf:	8d 4c 24 18          	lea    0x18(%esp),%ecx
47bbd3:	e8 1c ab fd ff       	call   0x4566f4
47bbd8:	8b c6                	mov    %esi,%eax
47bbda:	5f                   	pop    %edi
47bbdb:	5e                   	pop    %esi
47bbdc:	5b                   	pop    %ebx
47bbdd:	8b e5                	mov    %ebp,%esp
47bbdf:	5d                   	pop    %ebp
47bbe0:	c2 0c 00             	ret    $0xc
47bbe3:	55                   	push   %ebp
47bbe4:	8b ec                	mov    %esp,%ebp
47bbe6:	83 ec 68             	sub    $0x68,%esp
47bbe9:	33 c0                	xor    %eax,%eax
47bbeb:	53                   	push   %ebx
47bbec:	56                   	push   %esi
47bbed:	8b 75 10             	mov    0x10(%ebp),%esi
47bbf0:	57                   	push   %edi
47bbf1:	8b f9                	mov    %ecx,%edi
47bbf3:	83 7e 0c 0f          	cmpl   $0xf,0xc(%esi)
47bbf7:	75 07                	jne    0x47bc00
47bbf9:	8b 1e                	mov    (%esi),%ebx
47bbfb:	89 5d f4             	mov    %ebx,-0xc(%ebp)
47bbfe:	eb 03                	jmp    0x47bc03
47bc00:	89 45 f4             	mov    %eax,-0xc(%ebp)
47bc03:	89 45 c0             	mov    %eax,-0x40(%ebp)
47bc06:	8d 4d cc             	lea    -0x34(%ebp),%ecx
47bc09:	89 45 c4             	mov    %eax,-0x3c(%ebp)
47bc0c:	89 45 c8             	mov    %eax,-0x38(%ebp)
47bc0f:	89 45 ac             	mov    %eax,-0x54(%ebp)
47bc12:	89 45 b4             	mov    %eax,-0x4c(%ebp)
47bc15:	8d 45 ac             	lea    -0x54(%ebp),%eax
47bc18:	c7 45 bc 84 fb 48 00 	movl   $0x48fb84,-0x44(%ebp)
47bc1f:	c7 45 b8 01 00 00 00 	movl   $0x1,-0x48(%ebp)
47bc26:	89 45 f8             	mov    %eax,-0x8(%ebp)
47bc29:	e8 99 bb f8 ff       	call   0x4077c7
47bc2e:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
47bc32:	8b ce                	mov    %esi,%ecx
47bc34:	e8 0a a9 fd ff       	call   0x456543
47bc39:	84 c0                	test   %al,%al
47bc3b:	75 3f                	jne    0x47bc7c
47bc3d:	8b 45 0c             	mov    0xc(%ebp),%eax
47bc40:	8b 08                	mov    (%eax),%ecx
47bc42:	8b 45 08             	mov    0x8(%ebp),%eax
47bc45:	8b 40 04             	mov    0x4(%eax),%eax