4169e0:	8d 7d cc             	lea    -0x34(%ebp),%edi
4169e3:	89 45 e0             	mov    %eax,-0x20(%ebp)
4169e6:	8b d9                	mov    %ecx,%ebx
4169e8:	33 c0                	xor    %eax,%eax
4169ea:	89 4d d8             	mov    %ecx,-0x28(%ebp)
4169ed:	ab                   	stos   %eax,%es:(%edi)
4169ee:	68 2c 01 00 20       	push   $0x2000012c
4169f3:	6a 02                	push   $0x2
4169f5:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4169f8:	ab                   	stos   %eax,%es:(%edi)
4169f9:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4169fc:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4169ff:	89 4d dc             	mov    %ecx,-0x24(%ebp)
416a02:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
416a05:	89 4d f4             	mov    %ecx,-0xc(%ebp)
416a08:	89 4d ec             	mov    %ecx,-0x14(%ebp)
416a0b:	89 4d f8             	mov    %ecx,-0x8(%ebp)
416a0e:	ab                   	stos   %eax,%es:(%edi)
416a0f:	e8 fb ea fe ff       	call   0x40550f
416a14:	8b 7d 08             	mov    0x8(%ebp),%edi
416a17:	59                   	pop    %ecx
416a18:	59                   	pop    %ecx
416a19:	8d 4d d8             	lea    -0x28(%ebp),%ecx
416a1c:	8d 87 b8 00 00 00    	lea    0xb8(%edi),%eax
416a22:	51                   	push   %ecx
416a23:	50                   	push   %eax
416a24:	e8 74 69 ff ff       	call   0x40d39d
416a29:	8b f0                	mov    %eax,%esi
416a2b:	85 f6                	test   %esi,%esi
416a2d:	79 12                	jns    0x416a41
416a2f:	68 88 51 45 00       	push   $0x455188
416a34:	56                   	push   %esi
416a35:	e8 f5 96 02 00       	call   0x44012f
416a3a:	59                   	pop    %ecx
416a3b:	59                   	pop    %ecx
416a3c:	e9 44 03 00 00       	jmp    0x416d85
416a41:	8d 87 c0 02 00 00    	lea    0x2c0(%edi),%eax
416a47:	50                   	push   %eax
416a48:	8d b7 b8 00 00 00    	lea    0xb8(%edi),%esi
416a4e:	56                   	push   %esi
416a4f:	e8 3b 52 01 00       	call   0x42bc8f
416a54:	8b 8f c8 00 00 00    	mov    0xc8(%edi),%ecx
416a5a:	33 db                	xor    %ebx,%ebx
416a5c:	39 9f 60 04 00 00    	cmp    %ebx,0x460(%edi)
416a62:	0f 95 c3             	setne  %bl
416a65:	83 bf 70 04 00 00 00 	cmpl   $0x0,0x470(%edi)
416a6c:	8b 11                	mov    (%ecx),%edx
416a6e:	8d 43 01             	lea    0x1(%ebx),%eax
416a71:	0f 44 c3             	cmove  %ebx,%eax
416a74:	50                   	push   %eax
416a75:	51                   	push   %ecx
416a76:	ff 52 70             	call   *0x70(%edx)
416a79:	8b 87 c8 00 00 00    	mov    0xc8(%edi),%eax
416a7f:	50                   	push   %eax
416a80:	8b 08                	mov    (%eax),%ecx
416a82:	ff 51 6c             	call   *0x6c(%ecx)
416a85:	50                   	push   %eax
416a86:	33 db                	xor    %ebx,%ebx
416a88:	43                   	inc    %ebx
416a89:	53                   	push   %ebx
416a8a:	56                   	push   %esi
416a8b:	e8 fb 6a ff ff       	call   0x40d58b
416a90:	8b f0                	mov    %eax,%esi
416a92:	85 f6                	test   %esi,%esi
416a94:	79 25                	jns    0x416abb
416a96:	56                   	push   %esi
416a97:	68 3e 02 00 00       	push   $0x23e
416a9c:	68 9c 4d 45 00       	push   $0x454d9c
416aa1:	e8 2d cd fe ff       	call   0x4037d3
416aa6:	68 cc 51 45 00       	push   $0x4551cc
416aab:	56                   	push   %esi
416aac:	e8 7e 96 02 00       	call   0x44012f
416ab1:	59                   	pop    %ecx
416ab2:	59                   	pop    %ecx
416ab3:	8b 5d fc             	mov    -0x4(%ebp),%ebx
416ab6:	e9 ca 02 00 00       	jmp    0x416d85
416abb:	83 7f 30 03          	cmpl   $0x3,0x30(%edi)
416abf:	75 1f                	jne    0x416ae0
416ac1:	33 c0                	xor    %eax,%eax
416ac3:	89 5d f8             	mov    %ebx,-0x8(%ebp)
416ac6:	50                   	push   %eax
416ac7:	6a 10                	push   $0x10
416ac9:	50                   	push   %eax
416aca:	be 5e 01 07 80       	mov    $0x8007015e,%esi
416acf:	56                   	push   %esi
416ad0:	50                   	push   %eax
416ad1:	6a 05                	push   $0x5
416ad3:	ff b7 c8 00 00 00    	push   0xc8(%edi)
416ad9:	e8 64 6c ff ff       	call   0x40d742
416ade:	eb d3                	jmp    0x416ab3
416ae0:	8d 45 f0             	lea    -0x10(%ebp),%eax
416ae3:	50                   	push   %eax
416ae4:	6a 00                	push   $0x0
416ae6:	e8 f4 4f 01 00       	call   0x42badf
416aeb:	8b f0                	mov    %eax,%esi
416aed:	85 f6                	test   %esi,%esi
416aef:	79 07                	jns    0x416af8
416af1:	68 e4 51 45 00       	push   $0x4551e4
416af6:	eb b3                	jmp    0x416aab
416af8:	e8 d6 4f 01 00       	call   0x42bad3
416afd:	8b 45 0c             	mov    0xc(%ebp),%eax
416b00:	8d 9f 88 00 00 00    	lea    0x88(%edi),%ebx
416b06:	53                   	push   %ebx
416b07:	89 87 f0 00 00 00    	mov    %eax,0xf0(%edi)
416b0d:	e8 ae 51 01 00       	call   0x42bcc0
416b12:	8b f0                	mov    %eax,%esi
416b14:	85 f6                	test   %esi,%esi
416b16:	79 07                	jns    0x416b1f
416b18:	68 14 52 45 00       	push   $0x455214
416b1d:	eb 8c                	jmp    0x416aab
416b1f:	33 c9                	xor    %ecx,%ecx
416b21:	39 8f 50 04 00 00    	cmp    %ecx,0x450(%edi)
416b27:	75 29                	jne    0x416b52
416b29:	39 8f 60 04 00 00    	cmp    %ecx,0x460(%edi)
416b2f:	75 21                	jne    0x416b52
416b31:	39 8f 70 04 00 00    	cmp    %ecx,0x470(%edi)
416b37:	75 19                	jne    0x416b52
416b39:	39 8f 80 04 00 00    	cmp    %ecx,0x480(%edi)
416b3f:	75 11                	jne    0x416b52
416b41:	68 7c 01 00 a0       	push   $0xa000017c
416b46:	6a 02                	push   $0x2
416b48:	e8 c2 e9 fe ff       	call   0x40550f
416b4d:	e9 5f ff ff ff       	jmp    0x416ab1
416b52:	8d 87 9c 04 00 00    	lea    0x49c(%edi),%eax
416b58:	39 08                	cmp    %ecx,(%eax)
416b5a:	75 2f                	jne    0x416b8b
416b5c:	50                   	push   %eax
416b5d:	8d 47 48             	lea    0x48(%edi),%eax
416b60:	50                   	push   %eax
416b61:	8d 87 bc 00 00 00    	lea    0xbc(%edi),%eax
416b67:	50                   	push   %eax
416b68:	ff b7 48 01 00 00    	push   0x148(%edi)
416b6e:	ff b7 10 01 00 00    	push   0x110(%edi)
416b74:	e8 e9 2b 00 00       	call   0x419762
416b79:	8b f0                	mov    %eax,%esi
416b7b:	85 f6                	test   %esi,%esi
416b7d:	79 0a                	jns    0x416b89
416b7f:	68 3c 51 45 00       	push   $0x45513c
416b84:	e9 22 ff ff ff       	jmp    0x416aab
416b89:	33 c9                	xor    %ecx,%ecx
416b8b:	39 8f 1c 04 00 00    	cmp    %ecx,0x41c(%edi)
416b91:	74 59                	je     0x416bec
416b93:	ff b7 f0 00 00 00    	push   0xf0(%edi)
416b99:	57                   	push   %edi
416b9a:	e8 f8 06 00 00       	call   0x417297
416b9f:	8b f0                	mov    %eax,%esi
416ba1:	85 f6                	test   %esi,%esi
416ba3:	79 0a                	jns    0x416baf
416ba5:	68 3c 52 45 00       	push   $0x45523c
416baa:	e9 fc fe ff ff       	jmp    0x416aab
416baf:	33 c0                	xor    %eax,%eax
416bb1:	39 87 ec 03 00 00    	cmp    %eax,0x3ec(%edi)
416bb7:	0f 94 c0             	sete   %al
416bba:	50                   	push   %eax
416bbb:	ff b7 94 04 00 00    	push   0x494(%edi)
416bc1:	ff b7 10 04 00 00    	push   0x410(%edi)
416bc7:	53                   	push   %ebx
416bc8:	ff b7 b0 04 00 00    	push   0x4b0(%edi)
416bce:	e8 c7 61 00 00       	call   0x41cd9a
416bd3:	8b f0                	mov    %eax,%esi
416bd5:	85 f6                	test   %esi,%esi
416bd7:	79 0a                	jns    0x416be3
416bd9:	68 50 52 45 00       	push   $0x455250
416bde:	e9 c8 fe ff ff       	jmp    0x416aab
416be3:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
416bea:	33 c9                	xor    %ecx,%ecx
416bec:	39 8f 20 04 00 00    	cmp    %ecx,0x420(%edi)
416bf2:	74 2a                	je     0x416c1e
416bf4:	57                   	push   %edi
416bf5:	e8 ea 4e 01 00       	call   0x42bae4
416bfa:	8b f0                	mov    %eax,%esi
416bfc:	85 f6                	test   %esi,%esi
416bfe:	79 15                	jns    0x416c15
416c00:	68 80 52 45 00       	push   $0x455280
416c05:	56                   	push   %esi
416c06:	e8 24 95 02 00       	call   0x44012f
416c0b:	8b 5d fc             	mov    -0x4(%ebp),%ebx
416c0e:	59                   	pop    %ecx
416c0f:	59                   	pop    %ecx
416c10:	e9 5f 01 00 00       	jmp    0x416d74
416c15:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
416c1c:	33 c9                	xor    %ecx,%ecx
416c1e:	39 8f 60 04 00 00    	cmp    %ecx,0x460(%edi)
416c24:	0f 84 92 00 00 00    	je     0x416cbc
416c2a:	8d 45 e8             	lea    -0x18(%ebp),%eax
416c2d:	89 7d cc             	mov    %edi,-0x34(%ebp)
416c30:	51                   	push   %ecx
416c31:	89 45 d0             	mov    %eax,-0x30(%ebp)
416c34:	8d 45 f4             	lea    -0xc(%ebp),%eax
416c37:	51                   	push   %ecx
416c38:	89 45 d4             	mov    %eax,-0x2c(%ebp)
416c3b:	8d 45 cc             	lea    -0x34(%ebp),%eax
416c3e:	50                   	push   %eax
416c3f:	68 bd 55 41 00       	push   $0x4155bd
416c44:	51                   	push   %ecx
416c45:	51                   	push   %ecx
416c46:	ff 15 20 b2 44 00    	call   *0x44b220
416c4c:	8b d8                	mov    %eax,%ebx
416c4e:	85 db                	test   %ebx,%ebx
416c50:	75 40                	jne    0x416c92
416c52:	ff 15 e8 b0 44 00    	call   *0x44b0e8
416c58:	0f b7 f0             	movzwl %ax,%esi
416c5b:	81 ce 00 00 07 80    	or     $0x80070000,%esi
416c61:	85 c0                	test   %eax,%eax
416c63:	0f 4e f0             	cmovle %eax,%esi
416c66:	b8 05 40 00 80       	mov    $0x80004005,%eax
416c6b:	85 f6                	test   %esi,%esi
416c6d:	0f 49 f0             	cmovns %eax,%esi
416c70:	56                   	push   %esi
416c71:	68 80 02 00 00       	push   $0x280
416c76:	68 9c 4d 45 00       	push   $0x454d9c
416c7b:	e8 53 cb fe ff       	call   0x4037d3
416c80:	68 9c 52 45 00       	push   $0x45529c
416c85:	56                   	push   %esi
416c86:	e8 a4 94 02 00       	call   0x44012f
416c8b:	59                   	pop    %ecx
416c8c:	59                   	pop    %ecx
416c8d:	e9 a7 00 00 00       	jmp    0x416d39
416c92:	33 c9                	xor    %ecx,%ecx
416c94:	39 8f f0 03 00 00    	cmp    %ecx,0x3f0(%edi)
416c9a:	75 23                	jne    0x416cbf
416c9c:	53                   	push   %ebx
416c9d:	e8 0e fb ff ff       	call   0x4167b0
416ca2:	8b f0                	mov    %eax,%esi
416ca4:	85 f6                	test   %esi,%esi
416ca6:	79 07                	jns    0x416caf
416ca8:	68 bc 52 45 00       	push   $0x4552bc
416cad:	eb d6                	jmp    0x416c85
416caf:	53                   	push   %ebx
416cb0:	ff 15 d4 b0 44 00    	call   *0x44b0d4
416cb6:	33 c9                	xor    %ecx,%ecx
416cb8:	8b d9                	mov    %ecx,%ebx
416cba:	eb 03                	jmp    0x416cbf
416cbc:	8b 5d fc             	mov    -0x4(%ebp),%ebx
416cbf:	39 8f 70 04 00 00    	cmp    %ecx,0x470(%edi)
416cc5:	74 2a                	je     0x416cf1
416cc7:	8d 45 f8             	lea    -0x8(%ebp),%eax
416cca:	50                   	push   %eax
416ccb:	8d 45 ec             	lea    -0x14(%ebp),%eax
416cce:	50                   	push   %eax
416ccf:	8d 45 f4             	lea    -0xc(%ebp),%eax
416cd2:	50                   	push   %eax
416cd3:	8d 45 e0             	lea    -0x20(%ebp),%eax
416cd6:	50                   	push   %eax
416cd7:	8d 45 e8             	lea    -0x18(%ebp),%eax
416cda:	50                   	push   %eax
416cdb:	53                   	push   %ebx
416cdc:	57                   	push   %edi
416cdd:	e8 a9 4c 01 00       	call   0x42b98b
416ce2:	8b f0                	mov    %eax,%esi
416ce4:	8d 87 b8 00 00 00    	lea    0xb8(%edi),%eax
416cea:	56                   	push   %esi
416ceb:	50                   	push   %eax
416cec:	e8 2b 68 ff ff       	call   0x40d51c
416cf1:	85 db                	test   %ebx,%ebx
416cf3:	74 0c                	je     0x416d01
416cf5:	53                   	push   %ebx
416cf6:	e8 b5 fa ff ff       	call   0x4167b0
416cfb:	85 f6                	test   %esi,%esi
416cfd:	78 3a                	js     0x416d39
416cff:	8b f0                	mov    %eax,%esi
416d01:	85 f6                	test   %esi,%esi
416d03:	78 34                	js     0x416d39
416d05:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
416d09:	75 2e                	jne    0x416d39
416d0b:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
416d0f:	75 28                	jne    0x416d39
416d11:	83 7d f8 02          	cmpl   $0x2,-0x8(%ebp)
416d15:	74 22                	je     0x416d39
416d17:	83 bf 80 04 00 00 00 	cmpl   $0x0,0x480(%edi)
416d1e:	74 19                	je     0x416d39
416d20:	ff b7 b0 04 00 00    	push   0x4b0(%edi)
416d26:	8d 87 10 04 00 00    	lea    0x410(%edi),%eax
416d2c:	50                   	push   %eax
416d2d:	8d 87 b8 00 00 00    	lea    0xb8(%edi),%eax
416d33:	50                   	push   %eax
416d34:	e8 29 4c 01 00       	call   0x42b962
416d39:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
416d3d:	74 35                	je     0x416d74
416d3f:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
416d43:	75 0d                	jne    0x416d52
416d45:	83 bf 2c 04 00 00 00 	cmpl   $0x0,0x42c(%edi)
416d4c:	75 04                	jne    0x416d52
416d4e:	33 c9                	xor    %ecx,%ecx
416d50:	eb 03                	jmp    0x416d55
416d52:	33 c9                	xor    %ecx,%ecx
416d54:	41                   	inc    %ecx
416d55:	85 f6                	test   %esi,%esi
416d57:	78 0a                	js     0x416d63
416d59:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
416d5d:	75 04                	jne    0x416d63
416d5f:	33 c0                	xor    %eax,%eax
416d61:	eb 03                	jmp    0x416d66
416d63:	33 c0                	xor    %eax,%eax
416d65:	40                   	inc    %eax
416d66:	ff 75 f8             	push   -0x8(%ebp)
416d69:	ff 75 ec             	push   -0x14(%ebp)
416d6c:	51                   	push   %ecx
416d6d:	50                   	push   %eax
416d6e:	57                   	push   %edi
416d6f:	e8 87 4f 01 00       	call   0x42bcfb
416d74:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
416d78:	74 0b                	je     0x416d85
416d7a:	ff b7 b0 04 00 00    	push   0x4b0(%edi)
416d80:	e8 e8 60 00 00       	call   0x41ce6d
416d85:	83 a7 f0 00 00 00 00 	andl   $0x0,0xf0(%edi)
416d8c:	e8 5e 4f 01 00       	call   0x42bcef
416d91:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
416d95:	74 12                	je     0x416da9
416d97:	ff 75 f0             	push   -0x10(%ebp)
416d9a:	ff 15 90 b1 44 00    	call   *0x44b190
416da0:	ff 75 f0             	push   -0x10(%ebp)
416da3:	ff 15 d4 b0 44 00    	call   *0x44b0d4
416da9:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
416dad:	74 0c                	je     0x416dbb
416daf:	8d 87 b8 00 00 00    	lea    0xb8(%edi),%eax
416db5:	50                   	push   %eax
416db6:	e8 88 66 ff ff       	call   0x40d443
416dbb:	85 db                	test   %ebx,%ebx
416dbd:	74 07                	je     0x416dc6
416dbf:	53                   	push   %ebx
416dc0:	ff 15 d4 b0 44 00    	call   *0x44b0d4
416dc6:	8b 87 c8 00 00 00    	mov    0xc8(%edi),%eax
416dcc:	ff 75 f8             	push   -0x8(%ebp)
416dcf:	56                   	push   %esi
416dd0:	8b 08                	mov    (%eax),%ecx
416dd2:	50                   	push   %eax
416dd3:	ff 91 d8 00 00 00    	call   *0xd8(%ecx)
416dd9:	83 f8 66             	cmp    $0x66,%eax
416ddc:	75 07                	jne    0x416de5
416dde:	c7 47 18 01 00 00 00 	movl   $0x1,0x18(%edi)
416de5:	ff 77 18             	push   0x18(%edi)
416de8:	e8 43 ce ff ff       	call   0x413c30
416ded:	50                   	push   %eax
416dee:	ff 75 f8             	push   -0x8(%ebp)
416df1:	e8 2e d4 ff ff       	call   0x414224
416df6:	50                   	push   %eax
416df7:	56                   	push   %esi
416df8:	68 8f 01 00 20       	push   $0x2000018f
416dfd:	6a 02                	push   $0x2
416dff:	e8 0b e7 fe ff       	call   0x40550f
416e04:	83 c4 14             	add    $0x14,%esp
416e07:	8b c6                	mov    %esi,%eax
416e09:	5f                   	pop    %edi
416e0a:	5e                   	pop    %esi
416e0b:	5b                   	pop    %ebx
416e0c:	8b e5                	mov    %ebp,%esp
416e0e:	5d                   	pop    %ebp
416e0f:	c2 08 00             	ret    $0x8
416e12:	55                   	push   %ebp