422dd3:	88 1f                	mov    %bl,(%edi)
422dd5:	eb 15                	jmp    0x422dec
422dd7:	ff 75 18             	push   0x18(%ebp)
422dda:	8d 45 d4             	lea    -0x2c(%ebp),%eax
422ddd:	53                   	push   %ebx
422dde:	56                   	push   %esi
422ddf:	ff 75 10             	push   0x10(%ebp)
422de2:	8b cf                	mov    %edi,%ecx
422de4:	e8 60 fe ff ff       	call   0x422c49
422de9:	83 c4 10             	add    $0x10,%esp
422dec:	8b 4d fc             	mov    -0x4(%ebp),%ecx
422def:	5f                   	pop    %edi
422df0:	5e                   	pop    %esi
422df1:	33 cd                	xor    %ebp,%ecx
422df3:	5b                   	pop    %ebx
422df4:	e8 d5 b3 ff ff       	call   0x41e1ce
422df9:	c9                   	leave
422dfa:	c3                   	ret
422dfb:	8b ff                	mov    %edi,%edi
422dfd:	55                   	push   %ebp
422dfe:	8b ec                	mov    %esp,%ebp
422e00:	83 ec 30             	sub    $0x30,%esp
422e03:	a1 98 f2 42 00       	mov    0x42f298,%eax
422e08:	33 c5                	xor    %ebp,%eax
422e0a:	89 45 fc             	mov    %eax,-0x4(%ebp)
422e0d:	8b 45 08             	mov    0x8(%ebp),%eax
422e10:	53                   	push   %ebx
422e11:	56                   	push   %esi
422e12:	8b 75 0c             	mov    0xc(%ebp),%esi
422e15:	57                   	push   %edi
422e16:	6a 16                	push   $0x16
422e18:	5f                   	pop    %edi
422e19:	57                   	push   %edi
422e1a:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
422e1d:	51                   	push   %ecx
422e1e:	8d 4d d0             	lea    -0x30(%ebp),%ecx
422e21:	51                   	push   %ecx
422e22:	ff 70 04             	push   0x4(%eax)
422e25:	ff 30                	push   (%eax)
422e27:	e8 ad 33 00 00       	call   0x4261d9
422e2c:	33 db                	xor    %ebx,%ebx
422e2e:	83 c4 14             	add    $0x14,%esp
422e31:	3b f3                	cmp    %ebx,%esi
422e33:	75 1b                	jne    0x422e50
422e35:	e8 64 ba ff ff       	call   0x41e89e
422e3a:	53                   	push   %ebx
422e3b:	53                   	push   %ebx
422e3c:	53                   	push   %ebx
422e3d:	53                   	push   %ebx
422e3e:	53                   	push   %ebx
422e3f:	89 38                	mov    %edi,(%eax)
422e41:	e8 ad cd ff ff       	call   0x41fbf3
422e46:	83 c4 14             	add    $0x14,%esp
422e49:	8b c7                	mov    %edi,%eax
422e4b:	e9 96 00 00 00       	jmp    0x422ee6
422e50:	8b 4d 10             	mov    0x10(%ebp),%ecx
422e53:	3b cb                	cmp    %ebx,%ecx
422e55:	76 de                	jbe    0x422e35
422e57:	8b 45 d4             	mov    -0x2c(%ebp),%eax
422e5a:	48                   	dec    %eax
422e5b:	89 45 e0             	mov    %eax,-0x20(%ebp)
422e5e:	33 c0                	xor    %eax,%eax
422e60:	83 7d d0 2d          	cmpl   $0x2d,-0x30(%ebp)
422e64:	0f 94 c0             	sete   %al
422e67:	8d 3c 30             	lea    (%eax,%esi,1),%edi
422e6a:	83 f9 ff             	cmp    $0xffffffff,%ecx
422e6d:	75 04                	jne    0x422e73
422e6f:	0b c9                	or     %ecx,%ecx
422e71:	eb 02                	jmp    0x422e75
422e73:	2b c8                	sub    %eax,%ecx
422e75:	8d 45 d0             	lea    -0x30(%ebp),%eax
422e78:	50                   	push   %eax
422e79:	ff 75 14             	push   0x14(%ebp)
422e7c:	51                   	push   %ecx
422e7d:	57                   	push   %edi
422e7e:	e8 da 31 00 00       	call   0x42605d
422e83:	83 c4 10             	add    $0x10,%esp
422e86:	3b c3                	cmp    %ebx,%eax
422e88:	74 04                	je     0x422e8e
422e8a:	88 1e                	mov    %bl,(%esi)
422e8c:	eb 58                	jmp    0x422ee6
422e8e:	8b 45 d4             	mov    -0x2c(%ebp),%eax
422e91:	48                   	dec    %eax
422e92:	39 45 e0             	cmp    %eax,-0x20(%ebp)
422e95:	0f 9c c1             	setl   %cl
422e98:	83 f8 fc             	cmp    $0xfffffffc,%eax
422e9b:	7c 2d                	jl     0x422eca
422e9d:	3b 45 14             	cmp    0x14(%ebp),%eax
422ea0:	7d 28                	jge    0x422eca
422ea2:	3a cb                	cmp    %bl,%cl
422ea4:	74 0a                	je     0x422eb0
422ea6:	8a 07                	mov    (%edi),%al
422ea8:	47                   	inc    %edi
422ea9:	84 c0                	test   %al,%al
422eab:	75 f9                	jne    0x422ea6
422ead:	88 5f fe             	mov    %bl,-0x2(%edi)
422eb0:	ff 75 1c             	push   0x1c(%ebp)
422eb3:	8d 45 d0             	lea    -0x30(%ebp),%eax
422eb6:	6a 01                	push   $0x1
422eb8:	ff 75 14             	push   0x14(%ebp)
422ebb:	8b ce                	mov    %esi,%ecx
422ebd:	ff 75 10             	push   0x10(%ebp)
422ec0:	e8 84 fd ff ff       	call   0x422c49
422ec5:	83 c4 10             	add    $0x10,%esp
422ec8:	eb 1c                	jmp    0x422ee6
422eca:	ff 75 1c             	push   0x1c(%ebp)
422ecd:	8d 45 d0             	lea    -0x30(%ebp),%eax
422ed0:	6a 01                	push   $0x1
422ed2:	50                   	push   %eax
422ed3:	ff 75 18             	push   0x18(%ebp)
422ed6:	8b c6                	mov    %esi,%eax
422ed8:	ff 75 14             	push   0x14(%ebp)
422edb:	ff 75 10             	push   0x10(%ebp)
422ede:	e8 94 f7 ff ff       	call   0x422677
422ee3:	83 c4 18             	add    $0x18,%esp
422ee6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
422ee9:	5f                   	pop    %edi
422eea:	5e                   	pop    %esi
422eeb:	33 cd                	xor    %ebp,%ecx
422eed:	5b                   	pop    %ebx
422eee:	e8 db b2 ff ff       	call   0x41e1ce
422ef3:	c9                   	leave
422ef4:	c3                   	ret
422ef5:	8b ff                	mov    %edi,%edi
422ef7:	55                   	push   %ebp
422ef8:	8b ec                	mov    %esp,%ebp
422efa:	8b 45 14             	mov    0x14(%ebp),%eax
422efd:	83 f8 65             	cmp    $0x65,%eax
422f00:	74 5f                	je     0x422f61
422f02:	83 f8 45             	cmp    $0x45,%eax
422f05:	74 5a                	je     0x422f61
422f07:	83 f8 66             	cmp    $0x66,%eax
422f0a:	75 19                	jne    0x422f25
422f0c:	ff 75 20             	push   0x20(%ebp)
422f0f:	ff 75 18             	push   0x18(%ebp)
422f12:	ff 75 10             	push   0x10(%ebp)
422f15:	ff 75 0c             	push   0xc(%ebp)
422f18:	ff 75 08             	push   0x8(%ebp)
422f1b:	e8 20 fe ff ff       	call   0x422d40
422f20:	83 c4 14             	add    $0x14,%esp
422f23:	5d                   	pop    %ebp
422f24:	c3                   	ret
422f25:	83 f8 61             	cmp    $0x61,%eax
422f28:	74 1e                	je     0x422f48
422f2a:	83 f8 41             	cmp    $0x41,%eax
422f2d:	74 19                	je     0x422f48
422f2f:	ff 75 20             	push   0x20(%ebp)
422f32:	ff 75 1c             	push   0x1c(%ebp)
422f35:	ff 75 18             	push   0x18(%ebp)
422f38:	ff 75 10             	push   0x10(%ebp)
422f3b:	ff 75 0c             	push   0xc(%ebp)
422f3e:	ff 75 08             	push   0x8(%ebp)
422f41:	e8 b5 fe ff ff       	call   0x422dfb
422f46:	eb 30                	jmp    0x422f78
422f48:	ff 75 20             	push   0x20(%ebp)
422f4b:	ff 75 1c             	push   0x1c(%ebp)
422f4e:	ff 75 18             	push   0x18(%ebp)
422f51:	ff 75 10             	push   0x10(%ebp)
422f54:	ff 75 0c             	push   0xc(%ebp)
422f57:	ff 75 08             	push   0x8(%ebp)
422f5a:	e8 77 f9 ff ff       	call   0x4228d6
422f5f:	eb 17                	jmp    0x422f78
422f61:	ff 75 20             	push   0x20(%ebp)
422f64:	ff 75 1c             	push   0x1c(%ebp)
422f67:	ff 75 18             	push   0x18(%ebp)
422f6a:	ff 75 10             	push   0x10(%ebp)
422f6d:	ff 75 0c             	push   0xc(%ebp)
422f70:	ff 75 08             	push   0x8(%ebp)
422f73:	e8 6e f8 ff ff       	call   0x4227e6
422f78:	83 c4 18             	add    $0x18,%esp
422f7b:	5d                   	pop    %ebp
422f7c:	c3                   	ret
422f7d:	8b ff                	mov    %edi,%edi
422f7f:	55                   	push   %ebp
422f80:	8b ec                	mov    %esp,%ebp
422f82:	6a 00                	push   $0x0
422f84:	ff 75 1c             	push   0x1c(%ebp)
422f87:	ff 75 18             	push   0x18(%ebp)
422f8a:	ff 75 14             	push   0x14(%ebp)
422f8d:	ff 75 10             	push   0x10(%ebp)
422f90:	ff 75 0c             	push   0xc(%ebp)
422f93:	ff 75 08             	push   0x8(%ebp)
422f96:	e8 5a ff ff ff       	call   0x422ef5
422f9b:	83 c4 1c             	add    $0x1c,%esp
422f9e:	5d                   	pop    %ebp
422f9f:	c3                   	ret
422fa0:	8b ff                	mov    %edi,%edi
422fa2:	56                   	push   %esi
422fa3:	57                   	push   %edi
422fa4:	33 ff                	xor    %edi,%edi
422fa6:	8d b7 90 fe 42 00    	lea    0x42fe90(%edi),%esi
422fac:	ff 36                	push   (%esi)
422fae:	e8 2a b2 ff ff       	call   0x41e1dd
422fb3:	83 c7 04             	add    $0x4,%edi
422fb6:	59                   	pop    %ecx
422fb7:	89 06                	mov    %eax,(%esi)
422fb9:	83 ff 28             	cmp    $0x28,%edi
422fbc:	72 e8                	jb     0x422fa6
422fbe:	5f                   	pop    %edi
422fbf:	5e                   	pop    %esi
422fc0:	c3                   	ret
422fc1:	8b ff                	mov    %edi,%edi
422fc3:	56                   	push   %esi
422fc4:	68 00 00 03 00       	push   $0x30000
422fc9:	68 00 00 01 00       	push   $0x10000
422fce:	33 f6                	xor    %esi,%esi
422fd0:	56                   	push   %esi
422fd1:	e8 9c 32 00 00       	call   0x426272
422fd6:	83 c4 0c             	add    $0xc,%esp
422fd9:	85 c0                	test   %eax,%eax
422fdb:	74 0d                	je     0x422fea
422fdd:	56                   	push   %esi
422fde:	56                   	push   %esi
422fdf:	56                   	push   %esi
422fe0:	56                   	push   %esi
422fe1:	56                   	push   %esi
422fe2:	e8 e4 ca ff ff       	call   0x41facb
422fe7:	83 c4 14             	add    $0x14,%esp
422fea:	5e                   	pop    %esi
422feb:	c3                   	ret
422fec:	8b ff                	mov    %edi,%edi
422fee:	55                   	push   %ebp
422fef:	8b ec                	mov    %esp,%ebp
422ff1:	83 ec 18             	sub    $0x18,%esp
422ff4:	dd 05 30 b9 42 00    	fldl   0x42b930
422ffa:	dd 5d f0             	fstpl  -0x10(%ebp)
422ffd:	dd 05 28 b9 42 00    	fldl   0x42b928
423003:	dd 5d e8             	fstpl  -0x18(%ebp)
423006:	dd 45 e8             	fldl   -0x18(%ebp)
423009:	dc 75 f0             	fdivl  -0x10(%ebp)
42300c:	dc 4d f0             	fmull  -0x10(%ebp)
42300f:	dc 6d e8             	fsubrl -0x18(%ebp)
423012:	dd 5d f8             	fstpl  -0x8(%ebp)
423015:	d9 e8                	fld1
423017:	dc 5d f8             	fcompl -0x8(%ebp)
42301a:	df e0                	fnstsw %ax
42301c:	f6 c4 05             	test   $0x5,%ah
42301f:	7a 05                	jp     0x423026
423021:	33 c0                	xor    %eax,%eax
423023:	40                   	inc    %eax
423024:	c9                   	leave
423025:	c3                   	ret
423026:	33 c0                	xor    %eax,%eax
423028:	c9                   	leave
423029:	c3                   	ret
42302a:	68 54 b9 42 00       	push   $0x42b954
42302f:	ff 15 80 a1 42 00    	call   *0x42a180
423035:	85 c0                	test   %eax,%eax
423037:	74 15                	je     0x42304e
423039:	68 38 b9 42 00       	push   $0x42b938
42303e:	50                   	push   %eax
42303f:	ff 15 88 a0 42 00    	call   *0x42a088
423045:	85 c0                	test   %eax,%eax
423047:	74 05                	je     0x42304e
423049:	6a 00                	push   $0x0
42304b:	ff d0                	call   *%eax
42304d:	c3                   	ret
42304e:	e9 99 ff ff ff       	jmp    0x422fec
423053:	8b ff                	mov    %edi,%edi
423055:	55                   	push   %ebp
423056:	8b ec                	mov    %esp,%ebp
423058:	8b 45 08             	mov    0x8(%ebp),%eax
42305b:	8b 00                	mov    (%eax),%eax
42305d:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
423063:	75 2a                	jne    0x42308f
423065:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
423069:	75 24                	jne    0x42308f
42306b:	8b 40 14             	mov    0x14(%eax),%eax
42306e:	3d 20 05 93 19       	cmp    $0x19930520,%eax
423073:	74 15                	je     0x42308a
423075:	3d 21 05 93 19       	cmp    $0x19930521,%eax
42307a:	74 0e                	je     0x42308a
42307c:	3d 22 05 93 19       	cmp    $0x19930522,%eax
423081:	74 07                	je     0x42308a
423083:	3d 00 40 99 01       	cmp    $0x1994000,%eax
423088:	75 05                	jne    0x42308f
42308a:	e8 eb b6 ff ff       	call   0x41e77a
42308f:	33 c0                	xor    %eax,%eax
423091:	5d                   	pop    %ebp
423092:	c2 04 00             	ret    $0x4
423095:	68 53 30 42 00       	push   $0x423053
42309a:	ff 15 a8 a1 42 00    	call   *0x42a1a8
4230a0:	33 c0                	xor    %eax,%eax
4230a2:	c3                   	ret
4230a3:	8b ff                	mov    %edi,%edi
4230a5:	55                   	push   %ebp
4230a6:	8b ec                	mov    %esp,%ebp
4230a8:	51                   	push   %ecx
4230a9:	51                   	push   %ecx
4230aa:	56                   	push   %esi
4230ab:	e8 7b b3 ff ff       	call   0x41e42b
4230b0:	8b f0                	mov    %eax,%esi
4230b2:	85 f6                	test   %esi,%esi
4230b4:	0f 84 46 01 00 00    	je     0x423200
4230ba:	8b 56 5c             	mov    0x5c(%esi),%edx
4230bd:	a1 c4 fe 42 00       	mov    0x42fec4,%eax
4230c2:	57                   	push   %edi
4230c3:	8b 7d 08             	mov    0x8(%ebp),%edi
4230c6:	8b ca                	mov    %edx,%ecx
4230c8:	53                   	push   %ebx
4230c9:	39 39                	cmp    %edi,(%ecx)
4230cb:	74 0e                	je     0x4230db
4230cd:	8b d8                	mov    %eax,%ebx
4230cf:	6b db 0c             	imul   $0xc,%ebx,%ebx
4230d2:	83 c1 0c             	add    $0xc,%ecx
4230d5:	03 da                	add    %edx,%ebx
4230d7:	3b cb                	cmp    %ebx,%ecx
4230d9:	72 ee                	jb     0x4230c9
4230db:	6b c0 0c             	imul   $0xc,%eax,%eax
4230de:	03 c2                	add    %edx,%eax
4230e0:	3b c8                	cmp    %eax,%ecx
4230e2:	73 08                	jae    0x4230ec
4230e4:	39 39                	cmp    %edi,(%ecx)
4230e6:	75 04                	jne    0x4230ec
4230e8:	8b c1                	mov    %ecx,%eax
4230ea:	eb 02                	jmp    0x4230ee
4230ec:	33 c0                	xor    %eax,%eax
4230ee:	85 c0                	test   %eax,%eax
4230f0:	74 0a                	je     0x4230fc
4230f2:	8b 58 08             	mov    0x8(%eax),%ebx
4230f5:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4230f8:	85 db                	test   %ebx,%ebx
4230fa:	75 07                	jne    0x423103
4230fc:	33 c0                	xor    %eax,%eax
4230fe:	e9 fb 00 00 00       	jmp    0x4231fe
423103:	83 fb 05             	cmp    $0x5,%ebx
423106:	75 0c                	jne    0x423114
423108:	83 60 08 00          	andl   $0x0,0x8(%eax)
42310c:	33 c0                	xor    %eax,%eax
42310e:	40                   	inc    %eax
42310f:	e9 ea 00 00 00       	jmp    0x4231fe
423114:	83 fb 01             	cmp    $0x1,%ebx
423117:	0f 84 de 00 00 00    	je     0x4231fb
42311d:	8b 4e 60             	mov    0x60(%esi),%ecx
423120:	89 4d f8             	mov    %ecx,-0x8(%ebp)
423123:	8b 4d 0c             	mov    0xc(%ebp),%ecx
423126:	89 4e 60             	mov    %ecx,0x60(%esi)
423129:	8b 48 04             	mov    0x4(%eax),%ecx
42312c:	83 f9 08             	cmp    $0x8,%ecx
42312f:	0f 85 b8 00 00 00    	jne    0x4231ed
423135:	8b 0d b8 fe 42 00    	mov    0x42feb8,%ecx
42313b:	8b 3d bc fe 42 00    	mov    0x42febc,%edi
423141:	8b d1                	mov    %ecx,%edx
423143:	03 f9                	add    %ecx,%edi
423145:	3b d7                	cmp    %edi,%edx
423147:	7d 24                	jge    0x42316d
423149:	6b c9 0c             	imul   $0xc,%ecx,%ecx
42314c:	8b 7e 5c             	mov    0x5c(%esi),%edi
42314f:	83 64 39 08 00       	andl   $0x0,0x8(%ecx,%edi,1)
423154:	8b 3d b8 fe 42 00    	mov    0x42feb8,%edi