479a96:	8b f8                	mov    %eax,%edi
479a98:	8d 55 e8             	lea    -0x18(%ebp),%edx
479a9b:	8b 87 90 00 00 00    	mov    0x90(%edi),%eax
479aa1:	e8 42 ec ff ff       	call   0x4786e8
479aa6:	84 c0                	test   %al,%al
479aa8:	74 13                	je     0x479abd
479aaa:	8b 55 f0             	mov    -0x10(%ebp),%edx
479aad:	8b 45 fc             	mov    -0x4(%ebp),%eax
479ab0:	e8 4f ea f8 ff       	call   0x408504
479ab5:	85 c0                	test   %eax,%eax
479ab7:	75 04                	jne    0x479abd
479ab9:	8b f7                	mov    %edi,%esi
479abb:	eb 75                	jmp    0x479b32
479abd:	ff 45 f8             	incl   -0x8(%ebp)
479ac0:	ff 4d f4             	decl   -0xc(%ebp)
479ac3:	75 c3                	jne    0x479a88
479ac5:	85 f6                	test   %esi,%esi
479ac7:	75 0d                	jne    0x479ad6
479ac9:	8b 55 fc             	mov    -0x4(%ebp),%edx
479acc:	8b 43 04             	mov    0x4(%ebx),%eax
479acf:	e8 d4 bc ff ff       	call   0x4757a8
479ad4:	8b f0                	mov    %eax,%esi
479ad6:	85 f6                	test   %esi,%esi
479ad8:	74 34                	je     0x479b0e
479ada:	80 7e 42 01          	cmpb   $0x1,0x42(%esi)
479ade:	75 2e                	jne    0x479b0e
479ae0:	f6 43 2f 02          	testb  $0x2,0x2f(%ebx)
479ae4:	74 28                	je     0x479b0e
479ae6:	6a 00                	push   $0x0
479ae8:	8d 55 e4             	lea    -0x1c(%ebp),%edx
479aeb:	a1 d0 b1 49 00       	mov    0x49b1d0,%eax
479af0:	e8 43 c7 f8 ff       	call   0x406238
479af5:	8b 45 e4             	mov    -0x1c(%ebp),%eax
479af8:	50                   	push   %eax
479af9:	8b 46 38             	mov    0x38(%esi),%eax
479afc:	89 45 dc             	mov    %eax,-0x24(%ebp)
479aff:	c6 45 e0 0b          	movb   $0xb,-0x20(%ebp)
479b03:	8d 55 dc             	lea    -0x24(%ebp),%edx
479b06:	33 c9                	xor    %ecx,%ecx
479b08:	58                   	pop    %eax
479b09:	e8 1e 00 ff ff       	call   0x469b2c
479b0e:	f6 43 2f 20          	testb  $0x20,0x2f(%ebx)
479b12:	74 1e                	je     0x479b32
479b14:	85 f6                	test   %esi,%esi
479b16:	74 1a                	je     0x479b32
479b18:	83 7b 48 00          	cmpl   $0x0,0x48(%ebx)
479b1c:	74 14                	je     0x479b32
479b1e:	8b c6                	mov    %esi,%eax
479b20:	8b 10                	mov    (%eax),%edx
479b22:	ff 52 7c             	call   *0x7c(%edx)
479b25:	8b d0                	mov    %eax,%edx
479b27:	4a                   	dec    %edx
479b28:	b1 01                	mov    $0x1,%cl
479b2a:	8b 43 48             	mov    0x48(%ebx),%eax
479b2d:	e8 ea 27 fa ff       	call   0x41c31c
479b32:	33 c0                	xor    %eax,%eax
479b34:	5a                   	pop    %edx
479b35:	59                   	pop    %ecx
479b36:	59                   	pop    %ecx
479b37:	64 89 10             	mov    %edx,%fs:(%eax)
479b3a:	68 65 9b 47 00       	push   $0x479b65
479b3f:	8d 45 e4             	lea    -0x1c(%ebp),%eax
479b42:	e8 1d a6 f8 ff       	call   0x404164
479b47:	8d 45 e8             	lea    -0x18(%ebp),%eax
479b4a:	8b 15 d8 7c 47 00    	mov    0x477cd8,%edx
479b50:	e8 77 b0 f8 ff       	call   0x404bcc
479b55:	8d 45 fc             	lea    -0x4(%ebp),%eax
479b58:	e8 07 a6 f8 ff       	call   0x404164
479b5d:	c3                   	ret
479b5e:	e9 05 a0 f8 ff       	jmp    0x403b68
479b63:	eb da                	jmp    0x479b3f
479b65:	8b c6                	mov    %esi,%eax
479b67:	5f                   	pop    %edi
479b68:	5e                   	pop    %esi
479b69:	5b                   	pop    %ebx
479b6a:	8b e5                	mov    %ebp,%esp
479b6c:	5d                   	pop    %ebp
479b6d:	c3                   	ret
479b6e:	8b c0                	mov    %eax,%eax
479b70:	55                   	push   %ebp
479b71:	8b ec                	mov    %esp,%ebp
479b73:	83 c4 d8             	add    $0xffffffd8,%esp
479b76:	53                   	push   %ebx
479b77:	56                   	push   %esi
479b78:	57                   	push   %edi
479b79:	84 d2                	test   %dl,%dl
479b7b:	74 08                	je     0x479b85
479b7d:	83 c4 f0             	add    $0xfffffff0,%esp
479b80:	e8 b3 9b f8 ff       	call   0x403738
479b85:	8b 75 08             	mov    0x8(%ebp),%esi
479b88:	8d 7d d9             	lea    -0x27(%ebp),%edi
479b8b:	51                   	push   %ecx
479b8c:	b9 09 00 00 00       	mov    $0x9,%ecx
479b91:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
479b93:	59                   	pop    %ecx
479b94:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
479b96:	8b f1                	mov    %ecx,%esi
479b98:	88 55 ff             	mov    %dl,-0x1(%ebp)
479b9b:	8b d8                	mov    %eax,%ebx
479b9d:	8b 7d 0c             	mov    0xc(%ebp),%edi
479ba0:	a1 c4 b4 49 00       	mov    0x49b4c4,%eax
479ba5:	8a 00                	mov    (%eax),%al
479ba7:	88 43 04             	mov    %al,0x4(%ebx)
479baa:	56                   	push   %esi
479bab:	57                   	push   %edi
479bac:	8d 7b 0c             	lea    0xc(%ebx),%edi
479baf:	8d 75 d9             	lea    -0x27(%ebp),%esi
479bb2:	b9 09 00 00 00       	mov    $0x9,%ecx
479bb7:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
479bb9:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
479bbb:	5f                   	pop    %edi
479bbc:	5e                   	pop    %esi
479bbd:	8d 53 44             	lea    0x44(%ebx),%edx
479bc0:	a1 f8 b2 49 00       	mov    0x49b2f8,%eax
479bc5:	e8 6e c6 f8 ff       	call   0x406238
479bca:	8d 53 48             	lea    0x48(%ebx),%edx
479bcd:	a1 18 b0 49 00       	mov    0x49b018,%eax
479bd2:	e8 61 c6 f8 ff       	call   0x406238
479bd7:	89 73 64             	mov    %esi,0x64(%ebx)
479bda:	89 7b 68             	mov    %edi,0x68(%ebx)
479bdd:	8a 45 18             	mov    0x18(%ebp),%al
479be0:	50                   	push   %eax
479be1:	8a 45 14             	mov    0x14(%ebp),%al
479be4:	50                   	push   %eax
479be5:	8b 45 10             	mov    0x10(%ebp),%eax
479be8:	50                   	push   %eax
479be9:	57                   	push   %edi
479bea:	8d 45 d9             	lea    -0x27(%ebp),%eax
479bed:	50                   	push   %eax
479bee:	8b ce                	mov    %esi,%ecx
479bf0:	b2 01                	mov    $0x1,%dl
479bf2:	a1 d0 7b 47 00       	mov    0x477bd0,%eax
479bf7:	e8 44 ec ff ff       	call   0x478840
479bfc:	89 43 08             	mov    %eax,0x8(%ebx)
479bff:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
479c03:	74 15                	je     0x479c1a
479c05:	8a 45 14             	mov    0x14(%ebp),%al
479c08:	50                   	push   %eax
479c09:	8b 45 10             	mov    0x10(%ebp),%eax
479c0c:	50                   	push   %eax
479c0d:	8a 4d 18             	mov    0x18(%ebp),%cl
479c10:	8b 55 1c             	mov    0x1c(%ebp),%edx
479c13:	8b c3                	mov    %ebx,%eax
479c15:	e8 46 00 00 00       	call   0x479c60
479c1a:	8b c3                	mov    %ebx,%eax
479c1c:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
479c20:	74 0f                	je     0x479c31
479c22:	e8 69 9b f8 ff       	call   0x403790
479c27:	64 8f 05 00 00 00 00 	pop    %fs:0x0
479c2e:	83 c4 0c             	add    $0xc,%esp
479c31:	8b c3                	mov    %ebx,%eax
479c33:	5f                   	pop    %edi
479c34:	5e                   	pop    %esi
479c35:	5b                   	pop    %ebx
479c36:	8b e5                	mov    %ebp,%esp
479c38:	5d                   	pop    %ebp
479c39:	c2 18 00             	ret    $0x18
479c3c:	53                   	push   %ebx
479c3d:	56                   	push   %esi
479c3e:	e8 5d 9b f8 ff       	call   0x4037a0
479c43:	8b da                	mov    %edx,%ebx
479c45:	8b f0                	mov    %eax,%esi
479c47:	8b 46 08             	mov    0x8(%esi),%eax
479c4a:	e8 9d 97 f8 ff       	call   0x4033ec
479c4f:	84 db                	test   %bl,%bl
479c51:	7e 07                	jle    0x479c5a
479c53:	8b c6                	mov    %esi,%eax
479c55:	e8 2e 9b f8 ff       	call   0x403788
479c5a:	5e                   	pop    %esi
479c5b:	5b                   	pop    %ebx
479c5c:	c3                   	ret
479c5d:	8d 40 00             	lea    0x0(%eax),%eax
479c60:	55                   	push   %ebp
479c61:	8b ec                	mov    %esp,%ebp
479c63:	51                   	push   %ecx
479c64:	b9 07 00 00 00       	mov    $0x7,%ecx
479c69:	6a 00                	push   $0x0
479c6b:	6a 00                	push   $0x0
479c6d:	49                   	dec    %ecx
479c6e:	75 f9                	jne    0x479c69
479c70:	87 4d fc             	xchg   %ecx,-0x4(%ebp)
479c73:	53                   	push   %ebx
479c74:	56                   	push   %esi
479c75:	57                   	push   %edi
479c76:	88 4d ff             	mov    %cl,-0x1(%ebp)
479c79:	8b f2                	mov    %edx,%esi
479c7b:	8b d8                	mov    %eax,%ebx
479c7d:	8b 7d 08             	mov    0x8(%ebp),%edi
479c80:	33 c0                	xor    %eax,%eax
479c82:	55                   	push   %ebp
479c83:	68 e3 9e 47 00       	push   $0x479ee3
479c88:	64 ff 30             	push   %fs:(%eax)
479c8b:	64 89 20             	mov    %esp,%fs:(%eax)
479c8e:	8a 45 0c             	mov    0xc(%ebp),%al
479c91:	88 43 5c             	mov    %al,0x5c(%ebx)
479c94:	8b 43 08             	mov    0x8(%ebx),%eax
479c97:	85 c0                	test   %eax,%eax
479c99:	74 05                	je     0x479ca0
479c9b:	e8 4c 97 f8 ff       	call   0x4033ec
479ca0:	8a 45 ff             	mov    -0x1(%ebp),%al
479ca3:	50                   	push   %eax
479ca4:	8a 45 0c             	mov    0xc(%ebp),%al
479ca7:	50                   	push   %eax
479ca8:	57                   	push   %edi
479ca9:	8b 43 68             	mov    0x68(%ebx),%eax
479cac:	50                   	push   %eax
479cad:	8d 43 0c             	lea    0xc(%ebx),%eax
479cb0:	50                   	push   %eax
479cb1:	8b 4b 64             	mov    0x64(%ebx),%ecx
479cb4:	b2 01                	mov    $0x1,%dl
479cb6:	a1 d0 7b 47 00       	mov    0x477bd0,%eax
479cbb:	e8 80 eb ff ff       	call   0x478840
479cc0:	89 43 08             	mov    %eax,0x8(%ebx)
479cc3:	8d 43 34             	lea    0x34(%ebx),%eax
479cc6:	8b d6                	mov    %esi,%edx
479cc8:	e8 eb a4 f8 ff       	call   0x4041b8
479ccd:	8b c6                	mov    %esi,%eax
479ccf:	e8 50 a9 f8 ff       	call   0x404624
479cd4:	89 43 38             	mov    %eax,0x38(%ebx)
479cd7:	8d 43 60             	lea    0x60(%ebx),%eax
479cda:	8b d7                	mov    %edi,%edx
479cdc:	e8 d7 a4 f8 ff       	call   0x4041b8
479ce1:	8b c3                	mov    %ebx,%eax
479ce3:	e8 2c 03 00 00       	call   0x47a014
479ce8:	8b c3                	mov    %ebx,%eax
479cea:	e8 4d 09 00 00       	call   0x47a63c
479cef:	8b f0                	mov    %eax,%esi
479cf1:	80 7b 4c 00          	cmpb   $0x0,0x4c(%ebx)
479cf5:	74 17                	je     0x479d0e
479cf7:	8d 55 f8             	lea    -0x8(%ebp),%edx
479cfa:	a1 4c af 49 00       	mov    0x49af4c,%eax
479cff:	e8 34 c5 f8 ff       	call   0x406238
479d04:	8b 45 f8             	mov    -0x8(%ebp),%eax
479d07:	33 d2                	xor    %edx,%edx
479d09:	e8 72 fd fe ff       	call   0x469a80
479d0e:	f6 43 5c 02          	testb  $0x2,0x5c(%ebx)
479d12:	74 1d                	je     0x479d31
479d14:	80 7e 2c 01          	cmpb   $0x1,0x2c(%esi)
479d18:	74 17                	je     0x479d31
479d1a:	8d 55 f4             	lea    -0xc(%ebp),%edx
479d1d:	a1 2c b5 49 00       	mov    0x49b52c,%eax
479d22:	e8 11 c5 f8 ff       	call   0x406238
479d27:	8b 45 f4             	mov    -0xc(%ebp),%eax
479d2a:	33 d2                	xor    %edx,%edx
479d2c:	e8 4f fd fe ff       	call   0x469a80
479d31:	f6 43 5c 02          	testb  $0x2,0x5c(%ebx)
479d35:	75 1d                	jne    0x479d54
479d37:	80 7e 2c 01          	cmpb   $0x1,0x2c(%esi)
479d3b:	75 17                	jne    0x479d54
479d3d:	8d 55 f0             	lea    -0x10(%ebp),%edx
479d40:	a1 58 b1 49 00       	mov    0x49b158,%eax
479d45:	e8 ee c4 f8 ff       	call   0x406238
479d4a:	8b 45 f0             	mov    -0x10(%ebp),%eax
479d4d:	33 d2                	xor    %edx,%edx
479d4f:	e8 2c fd fe ff       	call   0x469a80
479d54:	f6 45 0c 04          	testb  $0x4,0xc(%ebp)
479d58:	0f 84 ec 00 00 00    	je     0x479e4a
479d5e:	8d 45 e0             	lea    -0x20(%ebp),%eax
479d61:	8b 53 60             	mov    0x60(%ebx),%edx
479d64:	e8 4f a8 f9 ff       	call   0x4145b8
479d69:	8d 45 e0             	lea    -0x20(%ebp),%eax
479d6c:	50                   	push   %eax
479d6d:	6a 00                	push   $0x0
479d6f:	6a 00                	push   $0x0
479d71:	33 c9                	xor    %ecx,%ecx
479d73:	33 d2                	xor    %edx,%edx
479d75:	8b 43 08             	mov    0x8(%ebx),%eax
479d78:	e8 cf ed ff ff       	call   0x478b4c
479d7d:	8b f8                	mov    %eax,%edi
479d7f:	8a 47 20             	mov    0x20(%edi),%al
479d82:	e8 a9 ea ff ff       	call   0x478830
479d87:	84 c0                	test   %al,%al
479d89:	74 11                	je     0x479d9c
479d8b:	8a 46 20             	mov    0x20(%esi),%al
479d8e:	2c 01                	sub    $0x1,%al
479d90:	74 21                	je     0x479db3
479d92:	04 ea                	add    $0xea,%al
479d94:	2c 02                	sub    $0x2,%al
479d96:	72 1b                	jb     0x479db3
479d98:	2c 0a                	sub    $0xa,%al
479d9a:	74 17                	je     0x479db3
479d9c:	80 7f 20 05          	cmpb   $0x5,0x20(%edi)
479da0:	75 17                	jne    0x479db9
479da2:	8a 46 20             	mov    0x20(%esi),%al
479da5:	2c 01                	sub    $0x1,%al
479da7:	74 0a                	je     0x479db3
479da9:	04 ea                	add    $0xea,%al
479dab:	2c 02                	sub    $0x2,%al
479dad:	72 04                	jb     0x479db3
479daf:	2c 0a                	sub    $0xa,%al
479db1:	75 06                	jne    0x479db9
479db3:	8a 47 20             	mov    0x20(%edi),%al
479db6:	88 46 20             	mov    %al,0x20(%esi)
479db9:	8a 47 20             	mov    0x20(%edi),%al
479dbc:	e8 6f ea ff ff       	call   0x478830
479dc1:	84 c0                	test   %al,%al
479dc3:	74 0c                	je     0x479dd1
479dc5:	8a 46 20             	mov    0x20(%esi),%al
479dc8:	e8 63 ea ff ff       	call   0x478830
479dcd:	84 c0                	test   %al,%al
479dcf:	75 5d                	jne    0x479e2e
479dd1:	8a 47 20             	mov    0x20(%edi),%al
479dd4:	e8 37 ea ff ff       	call   0x478810
479dd9:	84 c0                	test   %al,%al
479ddb:	74 0c                	je     0x479de9
479ddd:	8a 46 20             	mov    0x20(%esi),%al
479de0:	e8 2b ea ff ff       	call   0x478810
479de5:	84 c0                	test   %al,%al
479de7:	75 45                	jne    0x479e2e
479de9:	8a 47 20             	mov    0x20(%edi),%al
479dec:	2c 01                	sub    $0x1,%al
479dee:	74 0a                	je     0x479dfa
479df0:	04 ea                	add    $0xea,%al
479df2:	2c 02                	sub    $0x2,%al
479df4:	72 04                	jb     0x479dfa
479df6:	2c 0a                	sub    $0xa,%al
479df8:	75 11                	jne    0x479e0b
479dfa:	8a 46 20             	mov    0x20(%esi),%al
479dfd:	2c 01                	sub    $0x1,%al
479dff:	74 2d                	je     0x479e2e
479e01:	04 ea                	add    $0xea,%al
479e03:	2c 02                	sub    $0x2,%al
479e05:	72 27                	jb     0x479e2e
479e07:	2c 0a                	sub    $0xa,%al
479e09:	74 23                	je     0x479e2e
479e0b:	80 7f 20 05          	cmpb   $0x5,0x20(%edi)
479e0f:	75 06                	jne    0x479e17
479e11:	80 7e 20 05          	cmpb   $0x5,0x20(%esi)
479e15:	74 17                	je     0x479e2e
479e17:	8d 55 dc             	lea    -0x24(%ebp),%edx
479e1a:	a1 44 af 49 00       	mov    0x49af44,%eax
479e1f:	e8 14 c4 f8 ff       	call   0x406238
479e24:	8b 45 dc             	mov    -0x24(%ebp),%eax
479e27:	33 d2                	xor    %edx,%edx
479e29:	e8 52 fc fe ff       	call   0x469a80
479e2e:	8d 45 cc             	lea    -0x34(%ebp),%eax
479e31:	e8 06 d4 f9 ff       	call   0x41723c
479e36:	8d 45 cc             	lea    -0x34(%ebp),%eax
479e39:	50                   	push   %eax
479e3a:	56                   	push   %esi
479e3b:	57                   	push   %edi
479e3c:	b1 25                	mov    $0x25,%cl
479e3e:	b2 02                	mov    $0x2,%dl
479e40:	8b 43 08             	mov    0x8(%ebx),%eax
479e43:	e8 04 ed ff ff       	call   0x478b4c
479e48:	8b f0                	mov    %eax,%esi
479e4a:	f6 43 5c 02          	testb  $0x2,0x5c(%ebx)
479e4e:	75 23                	jne    0x479e73
479e50:	f6 45 0c 04          	testb  $0x4,0xc(%ebp)
479e54:	75 1d                	jne    0x479e73