401b01:	bf 5d 04 00 00       	mov    $0x45d,%edi
401b06:	eb 21                	jmp    0x401b29
401b08:	bf 5b 04 00 00       	mov    $0x45b,%edi
401b0d:	eb 1a                	jmp    0x401b29
401b0f:	bf 5f 04 00 00       	mov    $0x45f,%edi
401b14:	eb 13                	jmp    0x401b29
401b16:	bf 5e 04 00 00       	mov    $0x45e,%edi
401b1b:	eb 0c                	jmp    0x401b29
401b1d:	bf 5a 04 00 00       	mov    $0x45a,%edi
401b22:	eb 05                	jmp    0x401b29
401b24:	bf 5c 04 00 00       	mov    $0x45c,%edi
401b29:	6a 01                	push   $0x1
401b2b:	57                   	push   %edi
401b2c:	ff b6 fc 01 00 00    	push   0x1fc(%esi)
401b32:	e8 24 73 00 00       	call   0x408e5b
401b37:	83 c4 0c             	add    $0xc,%esp
401b3a:	53                   	push   %ebx
401b3b:	ff 75 08             	push   0x8(%ebp)
401b3e:	53                   	push   %ebx
401b3f:	ff 75 fc             	push   -0x4(%ebp)
401b42:	ff 75 f8             	push   -0x8(%ebp)
401b45:	53                   	push   %ebx
401b46:	ff b6 fc 01 00 00    	push   0x1fc(%esi)
401b4c:	ff 15 d0 a2 40 00    	call   *0x40a2d0
401b52:	53                   	push   %ebx
401b53:	57                   	push   %edi
401b54:	ff b6 fc 01 00 00    	push   0x1fc(%esi)
401b5a:	e8 fc 72 00 00       	call   0x408e5b
401b5f:	83 c4 0c             	add    $0xc,%esp
401b62:	e9 d5 00 00 00       	jmp    0x401c3c
401b67:	83 7f 1c 08          	cmpl   $0x8,0x1c(%edi)
401b6b:	0f 85 cb 00 00 00    	jne    0x401c3c
401b71:	8b 35 d4 a2 40 00    	mov    0x40a2d4,%esi
401b77:	6a 26                	push   $0x26
401b79:	ff d6                	call   *%esi
401b7b:	84 c0                	test   %al,%al
401b7d:	75 0c                	jne    0x401b8b
401b7f:	6a 28                	push   $0x28
401b81:	ff d6                	call   *%esi
401b83:	84 c0                	test   %al,%al
401b85:	0f 84 b1 00 00 00    	je     0x401c3c
401b8b:	68 d8 d4 40 00       	push   $0x40d4d8
401b90:	89 1d e0 d4 40 00    	mov    %ebx,0x40d4e0
401b96:	ff 75 0c             	push   0xc(%ebp)
401b99:	8b 07                	mov    (%edi),%eax
401b9b:	a3 d8 d4 40 00       	mov    %eax,0x40d4d8
401ba0:	8b 47 04             	mov    0x4(%edi),%eax
401ba3:	6a 4e                	push   $0x4e
401ba5:	a3 dc d4 40 00       	mov    %eax,0x40d4dc
401baa:	ff 75 08             	push   0x8(%ebp)
401bad:	ff 15 d8 a2 40 00    	call   *0x40a2d8
401bb3:	e9 84 00 00 00       	jmp    0x401c3c
401bb8:	8b 4e 10             	mov    0x10(%esi),%ecx
401bbb:	49                   	dec    %ecx
401bbc:	74 22                	je     0x401be0
401bbe:	49                   	dec    %ecx
401bbf:	74 11                	je     0x401bd2
401bc1:	49                   	dec    %ecx
401bc2:	75 78                	jne    0x401c3c
401bc4:	8b 8e d4 00 00 00    	mov    0xd4(%esi),%ecx
401bca:	50                   	push   %eax
401bcb:	e8 d9 0c 00 00       	call   0x4028a9
401bd0:	eb 6a                	jmp    0x401c3c
401bd2:	8b 8e d0 00 00 00    	mov    0xd0(%esi),%ecx
401bd8:	50                   	push   %eax
401bd9:	e8 e0 1d 00 00       	call   0x4039be
401bde:	eb 5c                	jmp    0x401c3c
401be0:	8b 8e cc 00 00 00    	mov    0xcc(%esi),%ecx
401be6:	50                   	push   %eax
401be7:	e8 5b 33 00 00       	call   0x404f47
401bec:	eb 4e                	jmp    0x401c3c
401bee:	3b 86 c4 00 00 00    	cmp    0xc4(%esi),%eax
401bf4:	75 46                	jne    0x401c3c
401bf6:	8b 46 10             	mov    0x10(%esi),%eax
401bf9:	48                   	dec    %eax
401bfa:	74 2e                	je     0x401c2a
401bfc:	48                   	dec    %eax
401bfd:	74 17                	je     0x401c16
401bff:	48                   	dec    %eax
401c00:	75 3a                	jne    0x401c3c
401c02:	8b 8e d4 00 00 00    	mov    0xd4(%esi),%ecx
401c08:	57                   	push   %edi
401c09:	ff 75 0c             	push   0xc(%ebp)
401c0c:	ff 75 08             	push   0x8(%ebp)
401c0f:	e8 7d 0b 00 00       	call   0x402791
401c14:	eb 26                	jmp    0x401c3c
401c16:	8b 8e d0 00 00 00    	mov    0xd0(%esi),%ecx
401c1c:	57                   	push   %edi
401c1d:	ff 75 0c             	push   0xc(%ebp)
401c20:	ff 75 08             	push   0x8(%ebp)
401c23:	e8 43 18 00 00       	call   0x40346b
401c28:	eb 12                	jmp    0x401c3c
401c2a:	8b 8e cc 00 00 00    	mov    0xcc(%esi),%ecx
401c30:	57                   	push   %edi
401c31:	ff 75 0c             	push   0xc(%ebp)
401c34:	ff 75 08             	push   0x8(%ebp)
401c37:	e8 d3 2d 00 00       	call   0x404a0f
401c3c:	5f                   	pop    %edi
401c3d:	5e                   	pop    %esi
401c3e:	5b                   	pop    %ebx
401c3f:	c9                   	leave
401c40:	c2 0c 00             	ret    $0xc
401c43:	55                   	push   %ebp
401c44:	8b ec                	mov    %esp,%ebp
401c46:	51                   	push   %ecx
401c47:	51                   	push   %ecx
401c48:	81 7d 0c 04 02 00 00 	cmpl   $0x204,0xc(%ebp)
401c4f:	56                   	push   %esi
401c50:	8b f1                	mov    %ecx,%esi
401c52:	75 66                	jne    0x401cba
401c54:	53                   	push   %ebx
401c55:	33 db                	xor    %ebx,%ebx
401c57:	39 9e bc 00 00 00    	cmp    %ebx,0xbc(%esi)
401c5d:	57                   	push   %edi
401c5e:	75 1e                	jne    0x401c7e
401c60:	6a 15                	push   $0x15
401c62:	53                   	push   %ebx
401c63:	ff 15 f8 a0 40 00    	call   *0x40a0f8
401c69:	50                   	push   %eax
401c6a:	ff 15 c4 a2 40 00    	call   *0x40a2c4
401c70:	53                   	push   %ebx
401c71:	50                   	push   %eax
401c72:	ff 15 c8 a2 40 00    	call   *0x40a2c8
401c78:	89 86 bc 00 00 00    	mov    %eax,0xbc(%esi)
401c7e:	8d 45 f8             	lea    -0x8(%ebp),%eax
401c81:	50                   	push   %eax
401c82:	ff 15 cc a2 40 00    	call   *0x40a2cc
401c88:	53                   	push   %ebx
401c89:	8b 3d d0 a2 40 00    	mov    0x40a2d0,%edi
401c8f:	ff 75 08             	push   0x8(%ebp)
401c92:	53                   	push   %ebx
401c93:	ff 75 fc             	push   -0x4(%ebp)
401c96:	ff 75 f8             	push   -0x8(%ebp)
401c99:	6a 08                	push   $0x8
401c9b:	ff b6 bc 00 00 00    	push   0xbc(%esi)
401ca1:	ff d7                	call   *%edi
401ca3:	53                   	push   %ebx
401ca4:	ff 75 08             	push   0x8(%ebp)
401ca7:	53                   	push   %ebx
401ca8:	ff 75 fc             	push   -0x4(%ebp)
401cab:	ff 75 f8             	push   -0x8(%ebp)
401cae:	6a 08                	push   $0x8
401cb0:	ff b6 bc 00 00 00    	push   0xbc(%esi)
401cb6:	ff d7                	call   *%edi
401cb8:	5f                   	pop    %edi
401cb9:	5b                   	pop    %ebx
401cba:	81 7d 0c 01 02 00 00 	cmpl   $0x201,0xc(%ebp)
401cc1:	5e                   	pop    %esi
401cc2:	75 14                	jne    0x401cd8
401cc4:	6a 09                	push   $0x9
401cc6:	ff 75 08             	push   0x8(%ebp)
401cc9:	ff 15 e8 a1 40 00    	call   *0x40a1e8
401ccf:	ff 75 08             	push   0x8(%ebp)
401cd2:	ff 15 e0 a2 40 00    	call   *0x40a2e0
401cd8:	c9                   	leave
401cd9:	c2 0c 00             	ret    $0xc
401cdc:	55                   	push   %ebp
401cdd:	8b ec                	mov    %esp,%ebp
401cdf:	81 ec 90 00 00 00    	sub    $0x90,%esp
401ce5:	81 7d 0c 2c 01 00 00 	cmpl   $0x12c,0xc(%ebp)
401cec:	53                   	push   %ebx
401ced:	56                   	push   %esi
401cee:	8b d9                	mov    %ecx,%ebx
401cf0:	75 1e                	jne    0x401d10
401cf2:	80 3d b8 d7 40 00 01 	cmpb   $0x1,0x40d7b8
401cf9:	0f 85 ce 00 00 00    	jne    0x401dcd
401cff:	8b 8b e8 01 00 00    	mov    0x1e8(%ebx),%ecx
401d05:	53                   	push   %ebx
401d06:	e8 cd 44 00 00       	call   0x4061d8
401d0b:	e9 bd 00 00 00       	jmp    0x401dcd
401d10:	81 7d 0c 2d 01 00 00 	cmpl   $0x12d,0xc(%ebp)
401d17:	0f 85 b0 00 00 00    	jne    0x401dcd
401d1d:	6a 28                	push   $0x28
401d1f:	33 f6                	xor    %esi,%esi
401d21:	ff b3 b0 00 00 00    	push   0xb0(%ebx)
401d27:	68 14 c2 40 00       	push   $0x40c214
401d2c:	56                   	push   %esi
401d2d:	6a 08                	push   $0x8
401d2f:	68 00 04 00 00       	push   $0x400
401d34:	ff 15 f4 a0 40 00    	call   *0x40a0f4
401d3a:	8d 43 2d             	lea    0x2d(%ebx),%eax
401d3d:	50                   	push   %eax
401d3e:	56                   	push   %esi
401d3f:	6a 0c                	push   $0xc
401d41:	ff 75 08             	push   0x8(%ebp)
401d44:	ff 15 dc a2 40 00    	call   *0x40a2dc
401d4a:	e8 48 71 00 00       	call   0x408e97
401d4f:	8b c8                	mov    %eax,%ecx
401d51:	0b ca                	or     %edx,%ecx
401d53:	74 78                	je     0x401dcd
401d55:	57                   	push   %edi
401d56:	56                   	push   %esi
401d57:	68 80 96 98 00       	push   $0x989680
401d5c:	52                   	push   %edx
401d5d:	50                   	push   %eax
401d5e:	e8 7d 72 00 00       	call   0x408fe0
401d63:	bf 80 51 01 00       	mov    $0x15180,%edi
401d68:	56                   	push   %esi
401d69:	57                   	push   %edi
401d6a:	52                   	push   %edx
401d6b:	50                   	push   %eax
401d6c:	89 45 f8             	mov    %eax,-0x8(%ebp)
401d6f:	e8 ec 71 00 00       	call   0x408f60
401d74:	56                   	push   %esi
401d75:	be 10 0e 00 00       	mov    $0xe10,%esi
401d7a:	56                   	push   %esi
401d7b:	52                   	push   %edx
401d7c:	50                   	push   %eax
401d7d:	89 45 f0             	mov    %eax,-0x10(%ebp)
401d80:	e8 db 71 00 00       	call   0x408f60
401d85:	6a 3c                	push   $0x3c
401d87:	33 d2                	xor    %edx,%edx
401d89:	59                   	pop    %ecx
401d8a:	f7 f1                	div    %ecx
401d8c:	33 d2                	xor    %edx,%edx
401d8e:	50                   	push   %eax
401d8f:	8b 45 f0             	mov    -0x10(%ebp),%eax
401d92:	f7 f6                	div    %esi
401d94:	33 d2                	xor    %edx,%edx
401d96:	50                   	push   %eax
401d97:	8b 45 f8             	mov    -0x8(%ebp),%eax
401d9a:	f7 f7                	div    %edi
401d9c:	50                   	push   %eax
401d9d:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
401da3:	68 00 c2 40 00       	push   $0x40c200
401da8:	50                   	push   %eax
401da9:	ff 15 58 a1 40 00    	call   *0x40a158
401daf:	83 c4 14             	add    $0x14,%esp
401db2:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
401db8:	50                   	push   %eax
401db9:	6a 03                	push   $0x3
401dbb:	68 01 04 00 00       	push   $0x401
401dc0:	ff b3 f4 01 00 00    	push   0x1f4(%ebx)
401dc6:	ff 15 dc a2 40 00    	call   *0x40a2dc
401dcc:	5f                   	pop    %edi
401dcd:	5e                   	pop    %esi
401dce:	5b                   	pop    %ebx
401dcf:	c9                   	leave
401dd0:	c2 0c 00             	ret    $0xc
401dd3:	55                   	push   %ebp
401dd4:	8b ec                	mov    %esp,%ebp
401dd6:	8b 45 0c             	mov    0xc(%ebp),%eax
401dd9:	83 e8 10             	sub    $0x10,%eax
401ddc:	74 49                	je     0x401e27
401dde:	2d 00 01 00 00       	sub    $0x100,%eax
401de3:	74 32                	je     0x401e17
401de5:	48                   	dec    %eax
401de6:	75 2b                	jne    0x401e13
401de8:	0f b7 45 10          	movzwl 0x10(%ebp),%eax
401dec:	2d ea 03 00 00       	sub    $0x3ea,%eax
401df1:	74 07                	je     0x401dfa
401df3:	48                   	dec    %eax
401df4:	75 1d                	jne    0x401e13
401df6:	6a 02                	push   $0x2
401df8:	eb 10                	jmp    0x401e0a
401dfa:	ff 75 08             	push   0x8(%ebp)
401dfd:	8b 0d ec d4 40 00    	mov    0x40d4ec,%ecx
401e03:	e8 ea 01 00 00       	call   0x401ff2
401e08:	6a 01                	push   $0x1
401e0a:	ff 75 08             	push   0x8(%ebp)
401e0d:	ff 15 c0 a2 40 00    	call   *0x40a2c0
401e13:	33 c0                	xor    %eax,%eax
401e15:	eb 1e                	jmp    0x401e35
401e17:	ff 75 08             	push   0x8(%ebp)
401e1a:	8b 0d ec d4 40 00    	mov    0x40d4ec,%ecx
401e20:	e8 56 00 00 00       	call   0x401e7b
401e25:	eb 0b                	jmp    0x401e32
401e27:	6a 02                	push   $0x2
401e29:	ff 75 08             	push   0x8(%ebp)
401e2c:	ff 15 c0 a2 40 00    	call   *0x40a2c0
401e32:	6a 01                	push   $0x1
401e34:	58                   	pop    %eax
401e35:	5d                   	pop    %ebp
401e36:	c2 10 00             	ret    $0x10
401e39:	83 3d ec d4 40 00 00 	cmpl   $0x0,0x40d4ec
401e40:	74 05                	je     0x401e47
401e42:	83 c8 ff             	or     $0xffffffff,%eax
401e45:	eb 31                	jmp    0x401e78
401e47:	8b 44 24 08          	mov    0x8(%esp),%eax
401e4b:	6a 00                	push   $0x0
401e4d:	68 d3 1d 40 00       	push   $0x401dd3
401e52:	89 0d ec d4 40 00    	mov    %ecx,0x40d4ec
401e58:	ff 74 24 0c          	push   0xc(%esp)
401e5c:	89 01                	mov    %eax,(%ecx)
401e5e:	6a 67                	push   $0x67
401e60:	6a 00                	push   $0x0
401e62:	ff 15 f8 a0 40 00    	call   *0x40a0f8
401e68:	50                   	push   %eax
401e69:	ff 15 e4 a2 40 00    	call   *0x40a2e4
401e6f:	83 25 ec d4 40 00 00 	andl   $0x0,0x40d4ec
401e76:	33 c0                	xor    %eax,%eax
401e78:	c2 08 00             	ret    $0x8
401e7b:	81 ec 14 01 00 00    	sub    $0x114,%esp
401e81:	53                   	push   %ebx
401e82:	55                   	push   %ebp
401e83:	8b 1d dc a2 40 00    	mov    0x40a2dc,%ebx
401e89:	56                   	push   %esi
401e8a:	8d 44 24 1c          	lea    0x1c(%esp),%eax
401e8e:	57                   	push   %edi
401e8f:	50                   	push   %eax
401e90:	8b f1                	mov    %ecx,%esi
401e92:	68 04 01 00 00       	push   $0x104
401e97:	6a 0d                	push   $0xd
401e99:	ff 36                	push   (%esi)
401e9b:	89 74 24 2c          	mov    %esi,0x2c(%esp)
401e9f:	ff d3                	call   *%ebx
401ea1:	85 c0                	test   %eax,%eax
401ea3:	74 17                	je     0x401ebc
401ea5:	8d 44 24 20          	lea    0x20(%esp),%eax
401ea9:	50                   	push   %eax
401eaa:	68 e9 03 00 00       	push   $0x3e9
401eaf:	ff b4 24 30 01 00 00 	push   0x130(%esp)
401eb6:	ff 15 b4 a2 40 00    	call   *0x40a2b4
401ebc:	6a f0                	push   $0xfffffff0
401ebe:	ff 36                	push   (%esi)
401ec0:	ff 15 b8 a2 40 00    	call   *0x40a2b8
401ec6:	8b 3d bc a2 40 00    	mov    0x40a2bc,%edi
401ecc:	33 f6                	xor    %esi,%esi
401ece:	89 44 24 18          	mov    %eax,0x18(%esp)
401ed2:	89 74 24 14          	mov    %esi,0x14(%esp)
401ed6:	c7 44 24 10 24 c2 40 	movl   $0x40c224,0x10(%esp)
401edd:	00
401ede:	bd f1 00 00 00       	mov    $0xf1,%ebp
401ee3:	8b 44 24 10          	mov    0x10(%esp),%eax
401ee7:	8b 4c 24 18          	mov    0x18(%esp),%ecx
401eeb:	8b 00                	mov    (%eax),%eax
401eed:	85 c1                	test   %eax,%ecx
401eef:	74 1d                	je     0x401f0e
401ef1:	0b f0                	or     %eax,%esi
401ef3:	8b 44 24 14          	mov    0x14(%esp),%eax
401ef7:	6a 00                	push   $0x0
401ef9:	6a 01                	push   $0x1
401efb:	05 f2 03 00 00       	add    $0x3f2,%eax
401f00:	55                   	push   %ebp
401f01:	50                   	push   %eax
401f02:	ff b4 24 38 01 00 00 	push   0x138(%esp)
401f09:	ff d7                	call   *%edi
401f0b:	50                   	push   %eax
401f0c:	ff d3                	call   *%ebx
401f0e:	83 44 24 10 04       	addl   $0x4,0x10(%esp)
401f13:	ff 44 24 14          	incl   0x14(%esp)
401f17:	81 7c 24 10 6c c2 40 	cmpl   $0x40c26c,0x10(%esp)
401f1e:	00
401f1f:	7c c2                	jl     0x401ee3
401f21:	8b 44 24 1c          	mov    0x1c(%esp),%eax
401f25:	6a ec                	push   $0xffffffec
401f27:	f7 d6                	not    %esi
401f29:	23 74 24 1c          	and    0x1c(%esp),%esi
401f2d:	ff 30                	push   (%eax)
401f2f:	89 70 04             	mov    %esi,0x4(%eax)