47b835:	ff 15 f0 04 4b 00    	call   *0x4b04f0
47b83b:	3b c6                	cmp    %esi,%eax
47b83d:	89 45 fc             	mov    %eax,-0x4(%ebp)
47b840:	7d 0a                	jge    0x47b84c
47b842:	8b 4d 10             	mov    0x10(%ebp),%ecx
47b845:	89 31                	mov    %esi,(%ecx)
47b847:	e9 ac 00 00 00       	jmp    0x47b8f8
47b84c:	8d 7d e8             	lea    -0x18(%ebp),%edi
47b84f:	0f b7 43 0c          	movzwl 0xc(%ebx),%eax
47b853:	8b 73 18             	mov    0x18(%ebx),%esi
47b856:	03 75 f8             	add    -0x8(%ebp),%esi
47b859:	83 c0 fe             	add    $0xfffffffe,%eax
47b85c:	83 f8 13             	cmp    $0x13,%eax
47b85f:	77 6b                	ja     0x47b8cc
47b861:	ff 24 85 ff b8 47 00 	jmp    *0x47b8ff(,%eax,4)
47b868:	8a 47 08             	mov    0x8(%edi),%al
47b86b:	88 06                	mov    %al,(%esi)
47b86d:	eb 6a                	jmp    0x47b8d9
47b86f:	66 8b 47 08          	mov    0x8(%edi),%ax
47b873:	66 89 06             	mov    %ax,(%esi)
47b876:	eb 61                	jmp    0x47b8d9
47b878:	dd 47 08             	fldl   0x8(%edi)
47b87b:	dd 1e                	fstpl  (%esi)
47b87d:	eb 5a                	jmp    0x47b8d9
47b87f:	8b 47 08             	mov    0x8(%edi),%eax
47b882:	89 06                	mov    %eax,(%esi)
47b884:	8b 47 0c             	mov    0xc(%edi),%eax
47b887:	89 46 04             	mov    %eax,0x4(%esi)
47b88a:	eb 4d                	jmp    0x47b8d9
47b88c:	ff 77 08             	push   0x8(%edi)
47b88f:	56                   	push   %esi
47b890:	e8 d6 24 ff ff       	call   0x46dd6b
47b895:	eb 42                	jmp    0x47b8d9
47b897:	33 c0                	xor    %eax,%eax
47b899:	66 39 47 08          	cmp    %ax,0x8(%edi)
47b89d:	0f 95 c0             	setne  %al
47b8a0:	eb 26                	jmp    0x47b8c8
47b8a2:	57                   	push   %edi
47b8a3:	56                   	push   %esi
47b8a4:	ff 15 c8 04 4b 00    	call   *0x4b04c8
47b8aa:	85 c0                	test   %eax,%eax
47b8ac:	74 2b                	je     0x47b8d9
47b8ae:	eb 23                	jmp    0x47b8d3
47b8b0:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
47b8b4:	74 09                	je     0x47b8bf
47b8b6:	8b 47 08             	mov    0x8(%edi),%eax
47b8b9:	8b 08                	mov    (%eax),%ecx
47b8bb:	50                   	push   %eax
47b8bc:	ff 51 04             	call   *0x4(%ecx)
47b8bf:	56                   	push   %esi
47b8c0:	e8 5e 86 ff ff       	call   0x473f23
47b8c5:	8b 47 08             	mov    0x8(%edi),%eax
47b8c8:	89 06                	mov    %eax,(%esi)
47b8ca:	eb 0d                	jmp    0x47b8d9
47b8cc:	c7 45 fc 08 00 02 80 	movl   $0x80020008,-0x4(%ebp)
47b8d3:	8b 45 10             	mov    0x10(%ebp),%eax
47b8d6:	83 20 00             	andl   $0x0,(%eax)
47b8d9:	8d 45 e8             	lea    -0x18(%ebp),%eax
47b8dc:	50                   	push   %eax
47b8dd:	ff 15 f4 04 4b 00    	call   *0x4b04f4
47b8e3:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
47b8e7:	7c 0c                	jl     0x47b8f5
47b8e9:	8b 43 14             	mov    0x14(%ebx),%eax
47b8ec:	85 c0                	test   %eax,%eax
47b8ee:	74 05                	je     0x47b8f5
47b8f0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
47b8f3:	ff d0                	call   *%eax
47b8f5:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b8f8:	5f                   	pop    %edi
47b8f9:	5e                   	pop    %esi
47b8fa:	5b                   	pop    %ebx
47b8fb:	c9                   	leave
47b8fc:	c2 0c 00             	ret    $0xc
47b8ff:	6f                   	outsl  %ds:(%esi),(%dx)
47b900:	b8 47 00 c5 b8       	mov    $0xb8c50047,%eax
47b905:	47                   	inc    %edi
47b906:	00 c5                	add    %al,%ch
47b908:	b8 47 00 78 b8       	mov    $0xb8780047,%eax
47b90d:	47                   	inc    %edi
47b90e:	00 7f b8             	add    %bh,-0x48(%edi)
47b911:	47                   	inc    %edi
47b912:	00 78 b8             	add    %bh,-0x48(%eax)
47b915:	47                   	inc    %edi
47b916:	00 8c b8 47 00 b0 b8 	add    %cl,-0x474fffb9(%eax,%edi,4)
47b91d:	47                   	inc    %edi
47b91e:	00 c5                	add    %al,%ch
47b920:	b8 47 00 97 b8       	mov    $0xb8970047,%eax
47b925:	47                   	inc    %edi
47b926:	00 a2 b8 47 00 b0    	add    %ah,-0x4fffb848(%edx)
47b92c:	b8 47 00 cc b8       	mov    $0xb8cc0047,%eax
47b931:	47                   	inc    %edi
47b932:	00 cc                	add    %cl,%ah
47b934:	b8 47 00 68 b8       	mov    $0xb8680047,%eax
47b939:	47                   	inc    %edi
47b93a:	00 68 b8             	add    %ch,-0x48(%eax)
47b93d:	47                   	inc    %edi
47b93e:	00 6f b8             	add    %ch,-0x48(%edi)
47b941:	47                   	inc    %edi
47b942:	00 c5                	add    %al,%ch
47b944:	b8 47 00 7f b8       	mov    $0xb87f0047,%eax
47b949:	47                   	inc    %edi
47b94a:	00 7f b8             	add    %bh,-0x48(%edi)
47b94d:	47                   	inc    %edi
47b94e:	00 56 8b             	add    %dl,-0x75(%esi)
47b951:	74 24                	je     0x47b977
47b953:	08 8b 4e 08 83 39    	or     %cl,0x3983084e(%ebx)
47b959:	ff 75 17             	push   0x17(%ebp)
47b95c:	8b 56 04             	mov    0x4(%esi),%edx
47b95f:	8b c2                	mov    %edx,%eax
47b961:	eb 03                	jmp    0x47b966
47b963:	83 c0 20             	add    $0x20,%eax
47b966:	83 78 18 ff          	cmpl   $0xffffffff,0x18(%eax)
47b96a:	75 f7                	jne    0x47b963
47b96c:	2b c2                	sub    %edx,%eax
47b96e:	c1 f8 05             	sar    $0x5,%eax
47b971:	89 01                	mov    %eax,(%ecx)
47b973:	8b 46 08             	mov    0x8(%esi),%eax
47b976:	8b 00                	mov    (%eax),%eax
47b978:	5e                   	pop    %esi
47b979:	c2 04 00             	ret    $0x4
47b97c:	55                   	push   %ebp
47b97d:	8b ec                	mov    %esp,%ebp
47b97f:	51                   	push   %ecx
47b980:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
47b984:	53                   	push   %ebx
47b985:	56                   	push   %esi
47b986:	57                   	push   %edi
47b987:	8b 7d 08             	mov    0x8(%ebp),%edi
47b98a:	eb 37                	jmp    0x47b9c3
47b98c:	8b 77 04             	mov    0x4(%edi),%esi
47b98f:	57                   	push   %edi
47b990:	e8 ba ff ff ff       	call   0x47b94f
47b995:	33 db                	xor    %ebx,%ebx
47b997:	85 c0                	test   %eax,%eax
47b999:	89 45 08             	mov    %eax,0x8(%ebp)
47b99c:	76 20                	jbe    0x47b9be
47b99e:	66 81 7e 0c ff 0f    	cmpw   $0xfff,0xc(%esi)
47b9a4:	74 0f                	je     0x47b9b5
47b9a6:	ff 75 0c             	push   0xc(%ebp)
47b9a9:	ff 36                	push   (%esi)
47b9ab:	ff 15 94 03 4b 00    	call   *0x4b0394
47b9b1:	85 c0                	test   %eax,%eax
47b9b3:	74 1c                	je     0x47b9d1
47b9b5:	83 c6 20             	add    $0x20,%esi
47b9b8:	43                   	inc    %ebx
47b9b9:	3b 5d 08             	cmp    0x8(%ebp),%ebx
47b9bc:	72 e0                	jb     0x47b99e
47b9be:	8b 3f                	mov    (%edi),%edi
47b9c0:	ff 45 fc             	incl   -0x4(%ebp)
47b9c3:	85 ff                	test   %edi,%edi
47b9c5:	75 c5                	jne    0x47b98c
47b9c7:	83 c8 ff             	or     $0xffffffff,%eax
47b9ca:	5f                   	pop    %edi
47b9cb:	5e                   	pop    %esi
47b9cc:	5b                   	pop    %ebx
47b9cd:	c9                   	leave
47b9ce:	c2 08 00             	ret    $0x8
47b9d1:	8b 46 04             	mov    0x4(%esi),%eax
47b9d4:	83 f8 ff             	cmp    $0xffffffff,%eax
47b9d7:	75 f1                	jne    0x47b9ca
47b9d9:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
47b9dd:	c1 e0 10             	shl    $0x10,%eax
47b9e0:	43                   	inc    %ebx
47b9e1:	0f b7 cb             	movzwl %bx,%ecx
47b9e4:	0b c1                	or     %ecx,%eax
47b9e6:	eb e2                	jmp    0x47b9ca
47b9e8:	55                   	push   %ebp
47b9e9:	8b ec                	mov    %esp,%ebp
47b9eb:	8b 4d 08             	mov    0x8(%ebp),%ecx
47b9ee:	8b 01                	mov    (%ecx),%eax
47b9f0:	53                   	push   %ebx
47b9f1:	56                   	push   %esi
47b9f2:	57                   	push   %edi
47b9f3:	ff 50 30             	call   *0x30(%eax)
47b9f6:	8b 5d 0c             	mov    0xc(%ebp),%ebx
47b9f9:	85 db                	test   %ebx,%ebx
47b9fb:	8b f0                	mov    %eax,%esi
47b9fd:	89 75 08             	mov    %esi,0x8(%ebp)
47ba00:	75 3d                	jne    0x47ba3f
47ba02:	85 f6                	test   %esi,%esi
47ba04:	8b ce                	mov    %esi,%ecx
47ba06:	74 7e                	je     0x47ba86
47ba08:	8b 41 04             	mov    0x4(%ecx),%eax
47ba0b:	83 cf ff             	or     $0xffffffff,%edi
47ba0e:	eb 0b                	jmp    0x47ba1b
47ba10:	66 81 78 0c ff 0f    	cmpw   $0xfff,0xc(%eax)
47ba16:	74 10                	je     0x47ba28
47ba18:	83 c0 20             	add    $0x20,%eax
47ba1b:	39 78 18             	cmp    %edi,0x18(%eax)
47ba1e:	75 f0                	jne    0x47ba10
47ba20:	8b 09                	mov    (%ecx),%ecx
47ba22:	85 c9                	test   %ecx,%ecx
47ba24:	75 e2                	jne    0x47ba08
47ba26:	eb 5e                	jmp    0x47ba86
47ba28:	8b 58 04             	mov    0x4(%eax),%ebx
47ba2b:	3b df                	cmp    %edi,%ebx
47ba2d:	75 0e                	jne    0x47ba3d
47ba2f:	ff 30                	push   (%eax)
47ba31:	56                   	push   %esi
47ba32:	e8 45 ff ff ff       	call   0x47b97c
47ba37:	8b d8                	mov    %eax,%ebx
47ba39:	3b df                	cmp    %edi,%ebx
47ba3b:	74 68                	je     0x47baa5
47ba3d:	85 db                	test   %ebx,%ebx
47ba3f:	7e 45                	jle    0x47ba86
47ba41:	33 c0                	xor    %eax,%eax
47ba43:	85 f6                	test   %esi,%esi
47ba45:	8b fe                	mov    %esi,%edi
47ba47:	74 3d                	je     0x47ba86
47ba49:	8b cb                	mov    %ebx,%ecx
47ba4b:	c1 e9 10             	shr    $0x10,%ecx
47ba4e:	0f b7 d1             	movzwl %cx,%edx
47ba51:	3b c2                	cmp    %edx,%eax
47ba53:	73 07                	jae    0x47ba5c
47ba55:	8b 3f                	mov    (%edi),%edi
47ba57:	40                   	inc    %eax
47ba58:	85 ff                	test   %edi,%edi
47ba5a:	75 f2                	jne    0x47ba4e
47ba5c:	85 ff                	test   %edi,%edi
47ba5e:	74 26                	je     0x47ba86
47ba60:	57                   	push   %edi
47ba61:	0f b7 f3             	movzwl %bx,%esi
47ba64:	e8 e6 fe ff ff       	call   0x47b94f
47ba69:	3b f0                	cmp    %eax,%esi
47ba6b:	77 16                	ja     0x47ba83
47ba6d:	8b 47 04             	mov    0x4(%edi),%eax
47ba70:	c1 e6 05             	shl    $0x5,%esi
47ba73:	8d 44 06 e0          	lea    -0x20(%esi,%eax,1),%eax
47ba77:	8b 48 04             	mov    0x4(%eax),%ecx
47ba7a:	83 f9 ff             	cmp    $0xffffffff,%ecx
47ba7d:	74 28                	je     0x47baa7
47ba7f:	3b cb                	cmp    %ebx,%ecx
47ba81:	74 24                	je     0x47baa7
47ba83:	8b 75 08             	mov    0x8(%ebp),%esi
47ba86:	85 f6                	test   %esi,%esi
47ba88:	8b ce                	mov    %esi,%ecx
47ba8a:	74 19                	je     0x47baa5
47ba8c:	8b 41 04             	mov    0x4(%ecx),%eax
47ba8f:	eb 08                	jmp    0x47ba99
47ba91:	39 58 04             	cmp    %ebx,0x4(%eax)
47ba94:	74 11                	je     0x47baa7
47ba96:	83 c0 20             	add    $0x20,%eax
47ba99:	83 78 18 ff          	cmpl   $0xffffffff,0x18(%eax)
47ba9d:	75 f2                	jne    0x47ba91
47ba9f:	8b 09                	mov    (%ecx),%ecx
47baa1:	85 c9                	test   %ecx,%ecx
47baa3:	75 e7                	jne    0x47ba8c
47baa5:	33 c0                	xor    %eax,%eax
47baa7:	5f                   	pop    %edi
47baa8:	5e                   	pop    %esi
47baa9:	5b                   	pop    %ebx
47baaa:	5d                   	pop    %ebp
47baab:	c2 08 00             	ret    $0x8
47baae:	8b c1                	mov    %ecx,%eax
47bab0:	c2 04 00             	ret    $0x4
47bab3:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
47bab8:	56                   	push   %esi
47bab9:	8b f1                	mov    %ecx,%esi
47babb:	74 05                	je     0x47bac2
47babd:	e8 1f 86 ff ff       	call   0x4740e1
47bac2:	68 0c 4e 49 00       	push   $0x494e0c
47bac7:	8b ce                	mov    %esi,%ecx
47bac9:	e8 af 84 ff ff       	call   0x473f7d
47bace:	5e                   	pop    %esi
47bacf:	c2 04 00             	ret    $0x4
47bad2:	8b 41 14             	mov    0x14(%ecx),%eax
47bad5:	c7 41 14 01 00 00 00 	movl   $0x1,0x14(%ecx)
47badc:	c3                   	ret
47badd:	83 c1 f0             	add    $0xfffffff0,%ecx
47bae0:	e9 b5 85 ff ff       	jmp    0x47409a
47bae5:	0f b7 44 24 08       	movzwl 0x8(%esp),%eax
47baea:	8b 54 24 04          	mov    0x4(%esp),%edx
47baee:	8b 04 85 b0 d2 48 00 	mov    0x48d2b0(,%eax,4),%eax
47baf5:	8a 0a                	mov    (%edx),%cl
47baf7:	83 c0 04             	add    $0x4,%eax
47bafa:	84 c9                	test   %cl,%cl
47bafc:	74 26                	je     0x47bb24
47bafe:	56                   	push   %esi
47baff:	80 f9 ff             	cmp    $0xff,%cl
47bb02:	74 18                	je     0x47bb1c
47bb04:	f6 c1 40             	test   $0x40,%cl
47bb07:	be 08 d3 48 00       	mov    $0x48d308,%esi
47bb0c:	75 05                	jne    0x47bb13
47bb0e:	be 60 d3 48 00       	mov    $0x48d360,%esi
47bb13:	0f b6 c9             	movzbl %cl,%ecx
47bb16:	83 e1 bf             	and    $0xffffffbf,%ecx
47bb19:	03 04 8e             	add    (%esi,%ecx,4),%eax
47bb1c:	42                   	inc    %edx
47bb1d:	8a 0a                	mov    (%edx),%cl
47bb1f:	84 c9                	test   %cl,%cl
47bb21:	75 dc                	jne    0x47baff
47bb23:	5e                   	pop    %esi
47bb24:	c2 08 00             	ret    $0x8
47bb27:	55                   	push   %ebp
47bb28:	8b ec                	mov    %esp,%ebp
47bb2a:	83 ec 0c             	sub    $0xc,%esp
47bb2d:	53                   	push   %ebx
47bb2e:	56                   	push   %esi
47bb2f:	57                   	push   %edi
47bb30:	8b 7d 08             	mov    0x8(%ebp),%edi
47bb33:	89 0f                	mov    %ecx,(%edi)
47bb35:	83 c7 04             	add    $0x4,%edi
47bb38:	66 83 7d 14 06       	cmpw   $0x6,0x14(%ebp)
47bb3d:	74 07                	je     0x47bb46
47bb3f:	66 83 7d 14 0c       	cmpw   $0xc,0x14(%ebp)
47bb44:	75 08                	jne    0x47bb4e
47bb46:	8b 45 10             	mov    0x10(%ebp),%eax
47bb49:	89 07                	mov    %eax,(%edi)
47bb4b:	83 c7 04             	add    $0x4,%edi
47bb4e:	8b 5d 18             	mov    0x18(%ebp),%ebx
47bb51:	8b 03                	mov    (%ebx),%eax
47bb53:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
47bb57:	89 45 f4             	mov    %eax,-0xc(%ebp)
47bb5a:	8b 43 08             	mov    0x8(%ebx),%eax
47bb5d:	89 45 14             	mov    %eax,0x14(%ebp)
47bb60:	8b 43 0c             	mov    0xc(%ebx),%eax
47bb63:	89 45 fc             	mov    %eax,-0x4(%ebp)
47bb66:	8b 45 0c             	mov    0xc(%ebp),%eax
47bb69:	80 38 00             	cmpb   $0x0,(%eax)
47bb6c:	8b d0                	mov    %eax,%edx
47bb6e:	e9 82 01 00 00       	jmp    0x47bcf5
47bb73:	66 0f b6 0a          	movzbw (%edx),%cx
47bb77:	ff 4d 14             	decl   0x14(%ebp)
47bb7a:	b8 ff 00 00 00       	mov    $0xff,%eax
47bb7f:	66 3b c8             	cmp    %ax,%cx
47bb82:	89 4d 08             	mov    %ecx,0x8(%ebp)
47bb85:	74 14                	je     0x47bb9b
47bb87:	f6 c1 40             	test   $0x40,%cl
47bb8a:	74 0f                	je     0x47bb9b
47bb8c:	81 e1 bf ff 00 00    	and    $0xffbf,%ecx
47bb92:	81 c9 00 40 00 00    	or     $0x4000,%ecx
47bb98:	89 4d 08             	mov    %ecx,0x8(%ebp)
47bb9b:	8b 75 fc             	mov    -0x4(%ebp),%esi
47bb9e:	39 75 14             	cmp    %esi,0x14(%ebp)
47bba1:	0f 8c a3 00 00 00    	jl     0x47bc4a
47bba7:	66 3b c8             	cmp    %ax,%cx
47bbaa:	0f 84 4e 01 00 00    	je     0x47bcfe
47bbb0:	8b 45 14             	mov    0x14(%ebp),%eax
47bbb3:	8b 55 f4             	mov    -0xc(%ebp),%edx
47bbb6:	c1 e0 04             	shl    $0x4,%eax
47bbb9:	66 83 f9 0c          	cmp    $0xc,%cx
47bbbd:	8d 34 10             	lea    (%eax,%edx,1),%esi
47bbc0:	0f 84 cb 00 00 00    	je     0x47bc91
47bbc6:	66 8b 16             	mov    (%esi),%dx
47bbc9:	66 3b ca             	cmp    %dx,%cx
47bbcc:	0f 84 bf 00 00 00    	je     0x47bc91
47bbd2:	8b 5d 20             	mov    0x20(%ebp),%ebx
47bbd5:	03 d8                	add    %eax,%ebx
47bbd7:	66 83 f9 0e          	cmp    $0xe,%cx
47bbdb:	c7 45 10 08 00 00 00 	movl   $0x8,0x10(%ebp)