416be7:	57                   	push   %edi
416be8:	ff 75 0c             	push   0xc(%ebp)
416beb:	ff 75 08             	push   0x8(%ebp)
416bee:	e8 d6 e8 ff ff       	call   0x4154c9
416bf3:	83 c4 0c             	add    $0xc,%esp
416bf6:	33 f6                	xor    %esi,%esi
416bf8:	85 c0                	test   %eax,%eax
416bfa:	75 46                	jne    0x416c42
416bfc:	8d 87 80 00 00 00    	lea    0x80(%edi),%eax
416c02:	66 39 30             	cmp    %si,(%eax)
416c05:	74 16                	je     0x416c1d
416c07:	50                   	push   %eax
416c08:	68 a4 c7 42 00       	push   $0x42c7a4
416c0d:	6a 02                	push   $0x2
416c0f:	ff 75 0c             	push   0xc(%ebp)
416c12:	ff 75 08             	push   0x8(%ebp)
416c15:	e8 6a 05 00 00       	call   0x417184
416c1a:	83 c4 14             	add    $0x14,%esp
416c1d:	81 c7 00 01 00 00    	add    $0x100,%edi
416c23:	66 39 37             	cmp    %si,(%edi)
416c26:	74 16                	je     0x416c3e
416c28:	57                   	push   %edi
416c29:	68 a8 c7 42 00       	push   $0x42c7a8
416c2e:	6a 02                	push   $0x2
416c30:	ff 75 0c             	push   0xc(%ebp)
416c33:	ff 75 08             	push   0x8(%ebp)
416c36:	e8 49 05 00 00       	call   0x417184
416c3b:	83 c4 14             	add    $0x14,%esp
416c3e:	5f                   	pop    %edi
416c3f:	5e                   	pop    %esi
416c40:	5d                   	pop    %ebp
416c41:	c3                   	ret
416c42:	56                   	push   %esi
416c43:	56                   	push   %esi
416c44:	56                   	push   %esi
416c45:	56                   	push   %esi
416c46:	56                   	push   %esi
416c47:	e8 c3 50 ff ff       	call   0x40bd0f
416c4c:	cc                   	int3
416c4d:	8b ff                	mov    %edi,%edi
416c4f:	55                   	push   %ebp
416c50:	8b ec                	mov    %esp,%ebp
416c52:	51                   	push   %ecx
416c53:	51                   	push   %ecx
416c54:	53                   	push   %ebx
416c55:	56                   	push   %esi
416c56:	57                   	push   %edi
416c57:	8b 7d 08             	mov    0x8(%ebp),%edi
416c5a:	33 db                	xor    %ebx,%ebx
416c5c:	68 ca 01 00 00       	push   $0x1ca
416c61:	53                   	push   %ebx
416c62:	57                   	push   %edi
416c63:	e8 78 1d ff ff       	call   0x4089e0
416c68:	8b 75 0c             	mov    0xc(%ebp),%esi
416c6b:	83 c4 0c             	add    $0xc,%esp
416c6e:	0f b7 06             	movzwl (%esi),%eax
416c71:	66 85 c0             	test   %ax,%ax
416c74:	75 07                	jne    0x416c7d
416c76:	33 c0                	xor    %eax,%eax
416c78:	e9 ed 00 00 00       	jmp    0x416d6a
416c7d:	6a 2e                	push   $0x2e
416c7f:	59                   	pop    %ecx
416c80:	66 3b c1             	cmp    %cx,%ax
416c83:	75 2d                	jne    0x416cb2
416c85:	8d 46 02             	lea    0x2(%esi),%eax
416c88:	66 39 18             	cmp    %bx,(%eax)
416c8b:	74 25                	je     0x416cb2
416c8d:	6a 0f                	push   $0xf
416c8f:	50                   	push   %eax
416c90:	8d 87 00 01 00 00    	lea    0x100(%edi),%eax
416c96:	6a 10                	push   $0x10
416c98:	50                   	push   %eax
416c99:	e8 7f 8c 00 00       	call   0x41f91d
416c9e:	83 c4 10             	add    $0x10,%esp
416ca1:	85 c0                	test   %eax,%eax
416ca3:	0f 85 c8 00 00 00    	jne    0x416d71
416ca9:	66 89 87 1e 01 00 00 	mov    %ax,0x11e(%edi)
416cb0:	eb c4                	jmp    0x416c76
416cb2:	89 5d fc             	mov    %ebx,-0x4(%ebp)
416cb5:	68 9c c7 42 00       	push   $0x42c79c
416cba:	56                   	push   %esi
416cbb:	e8 4b 9a 00 00       	call   0x42070b
416cc0:	59                   	pop    %ecx
416cc1:	59                   	pop    %ecx
416cc2:	85 c0                	test   %eax,%eax
416cc4:	0f 84 9d 00 00 00    	je     0x416d67
416cca:	8d 0c 46             	lea    (%esi,%eax,2),%ecx
416ccd:	0f b7 19             	movzwl (%ecx),%ebx
416cd0:	89 4d f8             	mov    %ecx,-0x8(%ebp)
416cd3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
416cd6:	6a 2c                	push   $0x2c
416cd8:	5a                   	pop    %edx
416cd9:	85 c9                	test   %ecx,%ecx
416cdb:	75 18                	jne    0x416cf5
416cdd:	83 f8 40             	cmp    $0x40,%eax
416ce0:	0f 83 81 00 00 00    	jae    0x416d67
416ce6:	6a 2e                	push   $0x2e
416ce8:	59                   	pop    %ecx
416ce9:	66 3b d9             	cmp    %cx,%bx
416cec:	74 79                	je     0x416d67
416cee:	50                   	push   %eax
416cef:	56                   	push   %esi
416cf0:	6a 40                	push   $0x40
416cf2:	57                   	push   %edi
416cf3:	eb 3a                	jmp    0x416d2f
416cf5:	83 f9 01             	cmp    $0x1,%ecx
416cf8:	75 16                	jne    0x416d10
416cfa:	83 f8 40             	cmp    $0x40,%eax
416cfd:	73 68                	jae    0x416d67
416cff:	83 fb 5f             	cmp    $0x5f,%ebx
416d02:	74 63                	je     0x416d67
416d04:	50                   	push   %eax
416d05:	56                   	push   %esi
416d06:	6a 40                	push   $0x40
416d08:	8d 87 80 00 00 00    	lea    0x80(%edi),%eax
416d0e:	eb 1e                	jmp    0x416d2e
416d10:	83 f9 02             	cmp    $0x2,%ecx
416d13:	75 52                	jne    0x416d67
416d15:	83 f8 10             	cmp    $0x10,%eax
416d18:	73 4d                	jae    0x416d67
416d1a:	66 85 db             	test   %bx,%bx
416d1d:	74 05                	je     0x416d24
416d1f:	66 3b da             	cmp    %dx,%bx
416d22:	75 43                	jne    0x416d67
416d24:	50                   	push   %eax
416d25:	56                   	push   %esi
416d26:	6a 10                	push   $0x10
416d28:	8d 87 00 01 00 00    	lea    0x100(%edi),%eax
416d2e:	50                   	push   %eax
416d2f:	e8 e9 8b 00 00       	call   0x41f91d
416d34:	83 c4 10             	add    $0x10,%esp
416d37:	85 c0                	test   %eax,%eax
416d39:	75 23                	jne    0x416d5e
416d3b:	6a 2c                	push   $0x2c
416d3d:	58                   	pop    %eax
416d3e:	66 3b d8             	cmp    %ax,%bx
416d41:	0f 84 2f ff ff ff    	je     0x416c76
416d47:	66 85 db             	test   %bx,%bx
416d4a:	0f 84 26 ff ff ff    	je     0x416c76
416d50:	8b 75 f8             	mov    -0x8(%ebp),%esi
416d53:	83 c6 02             	add    $0x2,%esi
416d56:	ff 45 fc             	incl   -0x4(%ebp)
416d59:	e9 57 ff ff ff       	jmp    0x416cb5
416d5e:	33 c0                	xor    %eax,%eax
416d60:	50                   	push   %eax
416d61:	50                   	push   %eax
416d62:	50                   	push   %eax
416d63:	50                   	push   %eax
416d64:	50                   	push   %eax
416d65:	eb 0f                	jmp    0x416d76
416d67:	83 c8 ff             	or     $0xffffffff,%eax
416d6a:	5f                   	pop    %edi
416d6b:	5e                   	pop    %esi
416d6c:	5b                   	pop    %ebx
416d6d:	8b e5                	mov    %ebp,%esp
416d6f:	5d                   	pop    %ebp
416d70:	c3                   	ret
416d71:	53                   	push   %ebx
416d72:	53                   	push   %ebx
416d73:	53                   	push   %ebx
416d74:	53                   	push   %ebx
416d75:	53                   	push   %ebx
416d76:	e8 94 4f ff ff       	call   0x40bd0f
416d7b:	cc                   	int3
416d7c:	8b ff                	mov    %edi,%edi
416d7e:	55                   	push   %ebp
416d7f:	8b ec                	mov    %esp,%ebp
416d81:	56                   	push   %esi
416d82:	e8 d5 1d 00 00       	call   0x418b5c
416d87:	8b 55 08             	mov    0x8(%ebp),%edx
416d8a:	8b f0                	mov    %eax,%esi
416d8c:	6a 00                	push   $0x0
416d8e:	58                   	pop    %eax
416d8f:	8b 8e 50 03 00 00    	mov    0x350(%esi),%ecx
416d95:	f6 c1 02             	test   $0x2,%cl
416d98:	0f 94 c0             	sete   %al
416d9b:	40                   	inc    %eax
416d9c:	83 fa ff             	cmp    $0xffffffff,%edx
416d9f:	74 33                	je     0x416dd4
416da1:	85 d2                	test   %edx,%edx
416da3:	74 36                	je     0x416ddb
416da5:	83 fa 01             	cmp    $0x1,%edx
416da8:	74 1f                	je     0x416dc9
416daa:	83 fa 02             	cmp    $0x2,%edx
416dad:	74 15                	je     0x416dc4
416daf:	e8 b7 dc ff ff       	call   0x414a6b
416db4:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
416dba:	e8 23 4f ff ff       	call   0x40bce2
416dbf:	83 c8 ff             	or     $0xffffffff,%eax
416dc2:	eb 17                	jmp    0x416ddb
416dc4:	83 e1 fd             	and    $0xfffffffd,%ecx
416dc7:	eb 03                	jmp    0x416dcc
416dc9:	83 c9 02             	or     $0x2,%ecx
416dcc:	89 8e 50 03 00 00    	mov    %ecx,0x350(%esi)
416dd2:	eb 07                	jmp    0x416ddb
416dd4:	83 0d b0 bc 43 00 ff 	orl    $0xffffffff,0x43bcb0
416ddb:	5e                   	pop    %esi
416ddc:	5d                   	pop    %ebp
416ddd:	c3                   	ret
416dde:	8b ff                	mov    %edi,%edi
416de0:	55                   	push   %ebp
416de1:	8b ec                	mov    %esp,%ebp
416de3:	56                   	push   %esi
416de4:	8b 75 0c             	mov    0xc(%ebp),%esi
416de7:	85 f6                	test   %esi,%esi
416de9:	74 1f                	je     0x416e0a
416deb:	8b 45 08             	mov    0x8(%ebp),%eax
416dee:	85 c0                	test   %eax,%eax
416df0:	74 18                	je     0x416e0a
416df2:	3b c6                	cmp    %esi,%eax
416df4:	74 14                	je     0x416e0a
416df6:	57                   	push   %edi
416df7:	6a 2e                	push   $0x2e
416df9:	59                   	pop    %ecx
416dfa:	8b f8                	mov    %eax,%edi
416dfc:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
416dfe:	83 60 0c 00          	andl   $0x0,0xc(%eax)
416e02:	50                   	push   %eax
416e03:	e8 d2 99 00 00       	call   0x4207da
416e08:	59                   	pop    %ecx
416e09:	5f                   	pop    %edi
416e0a:	5e                   	pop    %esi
416e0b:	5d                   	pop    %ebp
416e0c:	c3                   	ret
416e0d:	8b ff                	mov    %edi,%edi
416e0f:	55                   	push   %ebp
416e10:	8b ec                	mov    %esp,%ebp
416e12:	81 ec f4 01 00 00    	sub    $0x1f4,%esp
416e18:	a1 28 ba 43 00       	mov    0x43ba28,%eax
416e1d:	33 c5                	xor    %ebp,%eax
416e1f:	89 45 fc             	mov    %eax,-0x4(%ebp)
416e22:	8b 45 0c             	mov    0xc(%ebp),%eax
416e25:	53                   	push   %ebx
416e26:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
416e29:	56                   	push   %esi
416e2a:	8b 75 08             	mov    0x8(%ebp),%esi
416e2d:	89 85 18 fe ff ff    	mov    %eax,-0x1e8(%ebp)
416e33:	89 9d 14 fe ff ff    	mov    %ebx,-0x1ec(%ebp)
416e39:	57                   	push   %edi
416e3a:	8b 7d 14             	mov    0x14(%ebp),%edi
416e3d:	89 bd 24 fe ff ff    	mov    %edi,-0x1dc(%ebp)
416e43:	85 f6                	test   %esi,%esi
416e45:	75 13                	jne    0x416e5a
416e47:	33 c0                	xor    %eax,%eax
416e49:	8b 4d fc             	mov    -0x4(%ebp),%ecx
416e4c:	5f                   	pop    %edi
416e4d:	5e                   	pop    %esi
416e4e:	33 cd                	xor    %ebp,%ecx
416e50:	5b                   	pop    %ebx
416e51:	e8 0a 02 ff ff       	call   0x407060
416e56:	8b e5                	mov    %ebp,%esp
416e58:	5d                   	pop    %ebp
416e59:	c3                   	ret
416e5a:	e8 fd 1c 00 00       	call   0x418b5c
416e5f:	6a 55                	push   $0x55
416e61:	8d 48 68             	lea    0x68(%eax),%ecx
416e64:	89 8d 28 fe ff ff    	mov    %ecx,-0x1d8(%ebp)
416e6a:	8d 48 6c             	lea    0x6c(%eax),%ecx
416e6d:	89 8d 20 fe ff ff    	mov    %ecx,-0x1e0(%ebp)
416e73:	8d 88 72 01 00 00    	lea    0x172(%eax),%ecx
416e79:	05 a0 02 00 00       	add    $0x2a0,%eax
416e7e:	89 8d 2c fe ff ff    	mov    %ecx,-0x1d4(%ebp)
416e84:	50                   	push   %eax
416e85:	ff 75 18             	push   0x18(%ebp)
416e88:	33 c9                	xor    %ecx,%ecx
416e8a:	89 85 10 fe ff ff    	mov    %eax,-0x1f0(%ebp)
416e90:	57                   	push   %edi
416e91:	89 8d 0c fe ff ff    	mov    %ecx,-0x1f4(%ebp)
416e97:	89 8d 1c fe ff ff    	mov    %ecx,-0x1e4(%ebp)
416e9d:	e8 7b 8a 00 00       	call   0x41f91d
416ea2:	83 c4 10             	add    $0x10,%esp
416ea5:	85 c0                	test   %eax,%eax
416ea7:	0f 85 6f 01 00 00    	jne    0x41701c
416ead:	66 83 3e 43          	cmpw   $0x43,(%esi)
416eb1:	75 34                	jne    0x416ee7
416eb3:	33 ff                	xor    %edi,%edi
416eb5:	66 39 7e 02          	cmp    %di,0x2(%esi)
416eb9:	75 2c                	jne    0x416ee7
416ebb:	8b b5 18 fe ff ff    	mov    -0x1e8(%ebp),%esi
416ec1:	68 98 c7 42 00       	push   $0x42c798
416ec6:	ff 75 10             	push   0x10(%ebp)
416ec9:	56                   	push   %esi
416eca:	e8 fa e5 ff ff       	call   0x4154c9
416ecf:	83 c4 0c             	add    $0xc,%esp
416ed2:	85 c0                	test   %eax,%eax
416ed4:	0f 85 9f 02 00 00    	jne    0x417179
416eda:	85 db                	test   %ebx,%ebx
416edc:	74 02                	je     0x416ee0
416ede:	89 3b                	mov    %edi,(%ebx)
416ee0:	8b c6                	mov    %esi,%eax
416ee2:	e9 62 ff ff ff       	jmp    0x416e49
416ee7:	8b fe                	mov    %esi,%edi
416ee9:	33 d2                	xor    %edx,%edx
416eeb:	8d 4f 02             	lea    0x2(%edi),%ecx
416eee:	66 8b 07             	mov    (%edi),%ax
416ef1:	83 c7 02             	add    $0x2,%edi
416ef4:	66 3b c2             	cmp    %dx,%ax
416ef7:	75 f5                	jne    0x416eee
416ef9:	2b f9                	sub    %ecx,%edi
416efb:	d1 ff                	sar    $1,%edi
416efd:	81 ff 83 00 00 00    	cmp    $0x83,%edi
416f03:	73 76                	jae    0x416f7b
416f05:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
416f0b:	8b ce                	mov    %esi,%ecx
416f0d:	66 8b 10             	mov    (%eax),%dx
416f10:	66 3b 11             	cmp    (%ecx),%dx
416f13:	75 1e                	jne    0x416f33
416f15:	66 85 d2             	test   %dx,%dx
416f18:	74 15                	je     0x416f2f
416f1a:	66 8b 50 02          	mov    0x2(%eax),%dx
416f1e:	66 3b 51 02          	cmp    0x2(%ecx),%dx
416f22:	75 0f                	jne    0x416f33
416f24:	83 c0 04             	add    $0x4,%eax
416f27:	83 c1 04             	add    $0x4,%ecx
416f2a:	66 85 d2             	test   %dx,%dx
416f2d:	75 de                	jne    0x416f0d
416f2f:	33 c0                	xor    %eax,%eax
416f31:	eb 05                	jmp    0x416f38
416f33:	1b c0                	sbb    %eax,%eax
416f35:	83 c8 01             	or     $0x1,%eax
416f38:	85 c0                	test   %eax,%eax
416f3a:	0f 84 c3 01 00 00    	je     0x417103
416f40:	8b 85 20 fe ff ff    	mov    -0x1e0(%ebp),%eax
416f46:	8b ce                	mov    %esi,%ecx
416f48:	66 8b 10             	mov    (%eax),%dx
416f4b:	66 3b 11             	cmp    (%ecx),%dx
416f4e:	75 1e                	jne    0x416f6e
416f50:	66 85 d2             	test   %dx,%dx
416f53:	74 15                	je     0x416f6a
416f55:	66 8b 50 02          	mov    0x2(%eax),%dx
416f59:	66 3b 51 02          	cmp    0x2(%ecx),%dx
416f5d:	75 0f                	jne    0x416f6e
416f5f:	83 c0 04             	add    $0x4,%eax
416f62:	83 c1 04             	add    $0x4,%ecx
416f65:	66 85 d2             	test   %dx,%dx
416f68:	75 de                	jne    0x416f48
416f6a:	33 c0                	xor    %eax,%eax
416f6c:	eb 05                	jmp    0x416f73
416f6e:	1b c0                	sbb    %eax,%eax
416f70:	83 c8 01             	or     $0x1,%eax
416f73:	85 c0                	test   %eax,%eax
416f75:	0f 84 88 01 00 00    	je     0x417103
416f7b:	e8 19 24 00 00       	call   0x419399
416f80:	33 db                	xor    %ebx,%ebx
416f82:	84 c0                	test   %al,%al
416f84:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
416f8a:	56                   	push   %esi
416f8b:	50                   	push   %eax
416f8c:	0f 94 c3             	sete   %bl
416f8f:	e8 b9 fc ff ff       	call   0x416c4d