420d3e:	8b 4b 20             	mov    0x20(%ebx),%ecx
420d41:	0f b6 7d df          	movzbl -0x21(%ebp),%edi
420d45:	33 c0                	xor    %eax,%eax
420d47:	8a 87 00 57 45 00    	mov    0x455700(%edi),%al
420d4d:	0f af c8             	imul   %eax,%ecx
420d50:	8b 55 e4             	mov    -0x1c(%ebp),%edx
420d53:	8b 45 f8             	mov    -0x8(%ebp),%eax
420d56:	e8 79 51 ff ff       	call   0x415ed4
420d5b:	8b 43 20             	mov    0x20(%ebx),%eax
420d5e:	33 d2                	xor    %edx,%edx
420d60:	8a 97 00 57 45 00    	mov    0x455700(%edi),%dl
420d66:	f7 ea                	imul   %edx
420d68:	2b f0                	sub    %eax,%esi
420d6a:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
420d6e:	75 21                	jne    0x420d91
420d70:	0f b7 53 0e          	movzwl 0xe(%ebx),%edx
420d74:	8b 43 04             	mov    0x4(%ebx),%eax
420d77:	b9 20 00 00 00       	mov    $0x20,%ecx
420d7c:	e8 0b d1 ff ff       	call   0x41de8c
420d81:	8b c8                	mov    %eax,%ecx
420d83:	8b 43 08             	mov    0x8(%ebx),%eax
420d86:	99                   	cltd
420d87:	33 c2                	xor    %edx,%eax
420d89:	2b c2                	sub    %edx,%eax
420d8b:	0f af c8             	imul   %eax,%ecx
420d8e:	89 4b 14             	mov    %ecx,0x14(%ebx)
420d91:	8b 43 14             	mov    0x14(%ebx),%eax
420d94:	3b f0                	cmp    %eax,%esi
420d96:	76 02                	jbe    0x420d9a
420d98:	8b f0                	mov    %eax,%esi
420d9a:	80 7d df 00          	cmpb   $0x0,-0x21(%ebp)
420d9e:	74 08                	je     0x420da8
420da0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
420da3:	e8 8c d3 ff ff       	call   0x41e134
420da8:	6a 00                	push   $0x0
420daa:	e8 9d 5d fe ff       	call   0x406b4c
420daf:	e8 48 cf ff ff       	call   0x41dcfc
420db4:	89 45 f4             	mov    %eax,-0xc(%ebp)
420db7:	33 d2                	xor    %edx,%edx
420db9:	55                   	push   %ebp
420dba:	68 ab 0f 42 00       	push   $0x420fab
420dbf:	64 ff 32             	push   %fs:(%edx)
420dc2:	64 89 22             	mov    %esp,%fs:(%edx)
420dc5:	8b 45 c4             	mov    -0x3c(%ebp),%eax
420dc8:	8b 40 10             	mov    0x10(%eax),%eax
420dcb:	85 c0                	test   %eax,%eax
420dcd:	74 05                	je     0x420dd4
420dcf:	83 f8 03             	cmp    $0x3,%eax
420dd2:	75 0d                	jne    0x420de1
420dd4:	80 3d 70 54 45 00 00 	cmpb   $0x0,0x455470
420ddb:	0f 84 39 01 00 00    	je     0x420f1a
420de1:	33 c0                	xor    %eax,%eax
420de3:	89 45 f0             	mov    %eax,-0x10(%ebp)
420de6:	8b c6                	mov    %esi,%eax
420de8:	e8 4b 1c fe ff       	call   0x402a38
420ded:	89 45 ec             	mov    %eax,-0x14(%ebp)
420df0:	33 d2                	xor    %edx,%edx
420df2:	55                   	push   %ebp
420df3:	68 13 0f 42 00       	push   $0x420f13
420df8:	64 ff 32             	push   %fs:(%edx)
420dfb:	64 89 22             	mov    %esp,%fs:(%edx)
420dfe:	8b 55 ec             	mov    -0x14(%ebp),%edx
420e01:	8b ce                	mov    %esi,%ecx
420e03:	8b 45 f8             	mov    -0x8(%ebp),%eax
420e06:	e8 c9 50 ff ff       	call   0x415ed4
420e0b:	8b 45 f4             	mov    -0xc(%ebp),%eax
420e0e:	50                   	push   %eax
420e0f:	e8 18 5a fe ff       	call   0x40682c
420e14:	e8 e3 ce ff ff       	call   0x41dcfc
420e19:	89 45 f0             	mov    %eax,-0x10(%ebp)
420e1c:	6a 01                	push   $0x1
420e1e:	6a 01                	push   $0x1
420e20:	8b 45 f4             	mov    -0xc(%ebp),%eax
420e23:	50                   	push   %eax
420e24:	e8 fb 59 fe ff       	call   0x406824
420e29:	50                   	push   %eax
420e2a:	8b 45 f0             	mov    -0x10(%ebp),%eax
420e2d:	50                   	push   %eax
420e2e:	e8 29 5b fe ff       	call   0x40695c
420e33:	89 45 d4             	mov    %eax,-0x2c(%ebp)
420e36:	33 c0                	xor    %eax,%eax
420e38:	89 45 cc             	mov    %eax,-0x34(%ebp)
420e3b:	8b 45 c4             	mov    -0x3c(%ebp),%eax
420e3e:	8b 40 20             	mov    0x20(%eax),%eax
420e41:	85 c0                	test   %eax,%eax
420e43:	76 2a                	jbe    0x420e6f
420e45:	8b c8                	mov    %eax,%ecx
420e47:	8b 55 e4             	mov    -0x1c(%ebp),%edx
420e4a:	33 c0                	xor    %eax,%eax
420e4c:	e8 a7 d5 ff ff       	call   0x41e3f8
420e51:	89 45 d0             	mov    %eax,-0x30(%ebp)
420e54:	6a 00                	push   $0x0
420e56:	8b 45 d0             	mov    -0x30(%ebp),%eax
420e59:	50                   	push   %eax
420e5a:	8b 45 f0             	mov    -0x10(%ebp),%eax
420e5d:	50                   	push   %eax
420e5e:	e8 01 5b fe ff       	call   0x406964
420e63:	89 45 cc             	mov    %eax,-0x34(%ebp)
420e66:	8b 45 f0             	mov    -0x10(%ebp),%eax
420e69:	50                   	push   %eax
420e6a:	e8 cd 5a fe ff       	call   0x40693c
420e6f:	33 d2                	xor    %edx,%edx
420e71:	55                   	push   %ebp
420e72:	68 e7 0e 42 00       	push   $0x420ee7
420e77:	64 ff 32             	push   %fs:(%edx)
420e7a:	64 89 22             	mov    %esp,%fs:(%edx)
420e7d:	6a 00                	push   $0x0
420e7f:	8b 45 e8             	mov    -0x18(%ebp),%eax
420e82:	50                   	push   %eax
420e83:	8b 55 ec             	mov    -0x14(%ebp),%edx
420e86:	52                   	push   %edx
420e87:	6a 04                	push   $0x4
420e89:	50                   	push   %eax
420e8a:	8b 45 f0             	mov    -0x10(%ebp),%eax
420e8d:	50                   	push   %eax
420e8e:	e8 a9 59 fe ff       	call   0x40683c
420e93:	89 45 d8             	mov    %eax,-0x28(%ebp)
420e96:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
420e9a:	75 15                	jne    0x420eb1
420e9c:	e8 fb 57 fe ff       	call   0x40669c
420ea1:	85 c0                	test   %eax,%eax
420ea3:	75 07                	jne    0x420eac
420ea5:	e8 3e cd ff ff       	call   0x41dbe8
420eaa:	eb 05                	jmp    0x420eb1
420eac:	e8 4f bf fe ff       	call   0x40ce00
420eb1:	33 c0                	xor    %eax,%eax
420eb3:	5a                   	pop    %edx
420eb4:	59                   	pop    %ecx
420eb5:	59                   	pop    %ecx
420eb6:	64 89 10             	mov    %edx,%fs:(%eax)
420eb9:	68 ee 0e 42 00       	push   $0x420eee
420ebe:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
420ec2:	74 0f                	je     0x420ed3
420ec4:	6a ff                	push   $0xffffffff
420ec6:	8b 45 cc             	mov    -0x34(%ebp),%eax
420ec9:	50                   	push   %eax
420eca:	8b 45 f0             	mov    -0x10(%ebp),%eax
420ecd:	50                   	push   %eax
420ece:	e8 91 5a fe ff       	call   0x406964
420ed3:	8b 45 d4             	mov    -0x2c(%ebp),%eax
420ed6:	50                   	push   %eax
420ed7:	8b 45 f0             	mov    -0x10(%ebp),%eax
420eda:	50                   	push   %eax
420edb:	e8 7c 5a fe ff       	call   0x40695c
420ee0:	50                   	push   %eax
420ee1:	e8 96 59 fe ff       	call   0x40687c
420ee6:	c3                   	ret
420ee7:	e9 60 30 fe ff       	jmp    0x403f4c
420eec:	eb d0                	jmp    0x420ebe
420eee:	33 c0                	xor    %eax,%eax
420ef0:	5a                   	pop    %edx
420ef1:	59                   	pop    %ecx
420ef2:	59                   	pop    %ecx
420ef3:	64 89 10             	mov    %edx,%fs:(%eax)
420ef6:	68 92 0f 42 00       	push   $0x420f92
420efb:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
420eff:	74 09                	je     0x420f0a
420f01:	8b 45 f0             	mov    -0x10(%ebp),%eax
420f04:	50                   	push   %eax
420f05:	e8 6a 59 fe ff       	call   0x406874
420f0a:	8b 45 ec             	mov    -0x14(%ebp),%eax
420f0d:	e8 56 1b fe ff       	call   0x402a68
420f12:	c3                   	ret
420f13:	e9 34 30 fe ff       	jmp    0x403f4c
420f18:	eb e1                	jmp    0x420efb
420f1a:	6a 00                	push   $0x0
420f1c:	6a 00                	push   $0x0
420f1e:	8d 45 ec             	lea    -0x14(%ebp),%eax
420f21:	50                   	push   %eax
420f22:	6a 00                	push   $0x0
420f24:	8b 45 e8             	mov    -0x18(%ebp),%eax
420f27:	50                   	push   %eax
420f28:	8b 45 f4             	mov    -0xc(%ebp),%eax
420f2b:	50                   	push   %eax
420f2c:	e8 03 59 fe ff       	call   0x406834
420f31:	89 45 d8             	mov    %eax,-0x28(%ebp)
420f34:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
420f38:	74 06                	je     0x420f40
420f3a:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
420f3e:	75 15                	jne    0x420f55
420f40:	e8 57 57 fe ff       	call   0x40669c
420f45:	85 c0                	test   %eax,%eax
420f47:	75 07                	jne    0x420f50
420f49:	e8 9a cc ff ff       	call   0x41dbe8
420f4e:	eb 05                	jmp    0x420f55
420f50:	e8 ab be fe ff       	call   0x40ce00
420f55:	33 c0                	xor    %eax,%eax
420f57:	55                   	push   %ebp
420f58:	68 7a 0f 42 00       	push   $0x420f7a
420f5d:	64 ff 30             	push   %fs:(%eax)
420f60:	64 89 20             	mov    %esp,%fs:(%eax)
420f63:	8b 55 ec             	mov    -0x14(%ebp),%edx
420f66:	8b ce                	mov    %esi,%ecx
420f68:	8b 45 f8             	mov    -0x8(%ebp),%eax
420f6b:	e8 64 4f ff ff       	call   0x415ed4
420f70:	33 c0                	xor    %eax,%eax
420f72:	5a                   	pop    %edx
420f73:	59                   	pop    %ecx
420f74:	59                   	pop    %ecx
420f75:	64 89 10             	mov    %edx,%fs:(%eax)
420f78:	eb 18                	jmp    0x420f92
420f7a:	e9 19 2d fe ff       	jmp    0x403c98
420f7f:	8b 45 d8             	mov    -0x28(%ebp),%eax
420f82:	50                   	push   %eax
420f83:	e8 f4 58 fe ff       	call   0x40687c
420f88:	e8 1f 30 fe ff       	call   0x403fac
420f8d:	e8 6e 30 fe ff       	call   0x404000
420f92:	33 c0                	xor    %eax,%eax
420f94:	5a                   	pop    %edx
420f95:	59                   	pop    %ecx
420f96:	59                   	pop    %ecx
420f97:	64 89 10             	mov    %edx,%fs:(%eax)
420f9a:	68 b2 0f 42 00       	push   $0x420fb2
420f9f:	8b 45 f4             	mov    -0xc(%ebp),%eax
420fa2:	50                   	push   %eax
420fa3:	6a 00                	push   $0x0
420fa5:	e8 ea 5d fe ff       	call   0x406d94
420faa:	c3                   	ret
420fab:	e9 9c 2f fe ff       	jmp    0x403f4c
420fb0:	eb ed                	jmp    0x420f9f
420fb2:	8b 45 c4             	mov    -0x3c(%ebp),%eax
420fb5:	66 83 78 0e 08       	cmpw   $0x8,0xe(%eax)
420fba:	76 22                	jbe    0x420fde
420fbc:	8b 45 c4             	mov    -0x3c(%ebp),%eax
420fbf:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
420fc3:	76 19                	jbe    0x420fde
420fc5:	83 7d d0 00          	cmpl   $0x0,-0x30(%ebp)
420fc9:	75 13                	jne    0x420fde
420fcb:	8b 45 c4             	mov    -0x3c(%ebp),%eax
420fce:	8b 48 20             	mov    0x20(%eax),%ecx
420fd1:	8b 55 e4             	mov    -0x1c(%ebp),%edx
420fd4:	33 c0                	xor    %eax,%eax
420fd6:	e8 1d d4 ff ff       	call   0x41e3f8
420fdb:	89 45 d0             	mov    %eax,-0x30(%ebp)
420fde:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
420fe4:	33 c9                	xor    %ecx,%ecx
420fe6:	ba 54 00 00 00       	mov    $0x54,%edx
420feb:	e8 2c 1f fe ff       	call   0x402f1c
420ff0:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
420ff6:	50                   	push   %eax
420ff7:	6a 54                	push   $0x54
420ff9:	8b 45 d8             	mov    -0x28(%ebp),%eax
420ffc:	50                   	push   %eax
420ffd:	e8 d2 58 fe ff       	call   0x4068d4
421002:	8b 45 c4             	mov    -0x3c(%ebp),%eax
421005:	8b 40 18             	mov    0x18(%eax),%eax
421008:	89 45 94             	mov    %eax,-0x6c(%ebp)
42100b:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42100e:	8b 40 1c             	mov    0x1c(%eax),%eax
421011:	89 45 98             	mov    %eax,-0x68(%ebp)
421014:	8b 45 c4             	mov    -0x3c(%ebp),%eax
421017:	8b 40 20             	mov    0x20(%eax),%eax
42101a:	89 45 9c             	mov    %eax,-0x64(%ebp)
42101d:	8b 45 c4             	mov    -0x3c(%ebp),%eax
421020:	8b 40 24             	mov    0x24(%eax),%eax
421023:	89 45 a0             	mov    %eax,-0x60(%ebp)
421026:	33 c0                	xor    %eax,%eax
421028:	5a                   	pop    %edx
421029:	59                   	pop    %ecx
42102a:	59                   	pop    %ecx
42102b:	64 89 10             	mov    %edx,%fs:(%eax)
42102e:	eb 17                	jmp    0x421047
421030:	e9 63 2c fe ff       	jmp    0x403c98
421035:	8b 45 c8             	mov    -0x38(%ebp),%eax
421038:	e8 bf 27 fe ff       	call   0x4037fc
42103d:	e8 6a 2f fe ff       	call   0x403fac
421042:	e8 b9 2f fe ff       	call   0x404000
421047:	33 c0                	xor    %eax,%eax
421049:	5a                   	pop    %edx
42104a:	59                   	pop    %ecx
42104b:	59                   	pop    %ecx
42104c:	64 89 10             	mov    %edx,%fs:(%eax)
42104f:	68 64 10 42 00       	push   $0x421064
421054:	8b 45 e8             	mov    -0x18(%ebp),%eax
421057:	e8 0c 1a fe ff       	call   0x402a68
42105c:	c3                   	ret
42105d:	e9 ea 2e fe ff       	jmp    0x403f4c
421062:	eb f0                	jmp    0x421054
421064:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
42106a:	50                   	push   %eax
42106b:	8a 45 df             	mov    -0x21(%ebp),%al
42106e:	50                   	push   %eax
42106f:	8b 45 c8             	mov    -0x38(%ebp),%eax
421072:	50                   	push   %eax
421073:	8b 4d d0             	mov    -0x30(%ebp),%ecx
421076:	8b 55 d8             	mov    -0x28(%ebp),%edx
421079:	8b 45 fc             	mov    -0x4(%ebp),%eax
42107c:	e8 97 f9 ff ff       	call   0x420a18
421081:	8b 45 fc             	mov    -0x4(%ebp),%eax
421084:	8b 10                	mov    (%eax),%edx
421086:	ff 52 24             	call   *0x24(%edx)
421089:	85 c0                	test   %eax,%eax
42108b:	0f 95 c0             	setne  %al
42108e:	8b 55 fc             	mov    -0x4(%ebp),%edx
421091:	88 42 22             	mov    %al,0x22(%edx)
421094:	8b 55 fc             	mov    -0x4(%ebp),%edx
421097:	8b 45 fc             	mov    -0x4(%ebp),%eax
42109a:	8b 08                	mov    (%eax),%ecx
42109c:	ff 51 10             	call   *0x10(%ecx)
42109f:	5f                   	pop    %edi
4210a0:	5e                   	pop    %esi
4210a1:	5b                   	pop    %ebx
4210a2:	8b e5                	mov    %ebp,%esp
4210a4:	5d                   	pop    %ebp
4210a5:	c2 04 00             	ret    $0x4
4210a8:	53                   	push   %ebx
4210a9:	56                   	push   %esi
4210aa:	57                   	push   %edi
4210ab:	83 c4 9c             	add    $0xffffff9c,%esp
4210ae:	8b f1                	mov    %ecx,%esi
4210b0:	8b fa                	mov    %edx,%edi
4210b2:	8b d8                	mov    %eax,%ebx
4210b4:	8b c3                	mov    %ebx,%eax
4210b6:	e8 ed f6 ff ff       	call   0x4207a8
4210bb:	85 f6                	test   %esi,%esi
4210bd:	75 26                	jne    0x4210e5
4210bf:	8d 44 24 0e          	lea    0xe(%esp),%eax
4210c3:	33 c9                	xor    %ecx,%ecx
4210c5:	ba 54 00 00 00       	mov    $0x54,%edx
4210ca:	e8 4d 1e fe ff       	call   0x402f1c
4210cf:	8d 44 24 0e          	lea    0xe(%esp),%eax
4210d3:	50                   	push   %eax
4210d4:	6a 00                	push   $0x0
4210d6:	6a 00                	push   $0x0
4210d8:	33 c9                	xor    %ecx,%ecx
4210da:	33 d2                	xor    %edx,%edx
4210dc:	8b c3                	mov    %ebx,%eax
4210de:	e8 35 f9 ff ff       	call   0x420a18
4210e3:	eb 2a                	jmp    0x42110f
4210e5:	8b d4                	mov    %esp,%edx
4210e7:	b9 0e 00 00 00       	mov    $0xe,%ecx
4210ec:	8b c7                	mov    %edi,%eax
4210ee:	e8 e1 4d ff ff       	call   0x415ed4
4210f3:	66 81 3c 24 42 4d    	cmpw   $0x4d42,(%esp)
4210f9:	74 05                	je     0x421100
4210fb:	e8 e8 ca ff ff       	call   0x41dbe8
421100:	54                   	push   %esp
421101:	8b ce                	mov    %esi,%ecx
421103:	83 e9 0e             	sub    $0xe,%ecx
421106:	8b d7                	mov    %edi,%edx
421108:	8b c3                	mov    %ebx,%eax
42110a:	e8 31 fa ff ff       	call   0x420b40
42110f:	83 c4 64             	add    $0x64,%esp
421112:	5f                   	pop    %edi
421113:	5e                   	pop    %esi
421114:	5b                   	pop    %ebx
421115:	c3                   	ret
421116:	8b c0                	mov    %eax,%eax
421118:	55                   	push   %ebp
421119:	8b ec                	mov    %esp,%ebp