417ad4:	51                   	push   %ecx
417ad5:	52                   	push   %edx
417ad6:	8b ce                	mov    %esi,%ecx
417ad8:	e8 83 a5 fe ff       	call   0x402060
417add:	5f                   	pop    %edi
417ade:	8b c6                	mov    %esi,%eax
417ae0:	5e                   	pop    %esi
417ae1:	8b e5                	mov    %ebp,%esp
417ae3:	5d                   	pop    %ebp
417ae4:	c2 04 00             	ret    $0x4
417ae7:	cc                   	int3
417ae8:	cc                   	int3
417ae9:	cc                   	int3
417aea:	cc                   	int3
417aeb:	cc                   	int3
417aec:	cc                   	int3
417aed:	cc                   	int3
417aee:	cc                   	int3
417aef:	cc                   	int3
417af0:	55                   	push   %ebp
417af1:	8b ec                	mov    %esp,%ebp
417af3:	51                   	push   %ecx
417af4:	8b 51 10             	mov    0x10(%ecx),%edx
417af7:	8b ca                	mov    %edx,%ecx
417af9:	56                   	push   %esi
417afa:	8b 75 08             	mov    0x8(%ebp),%esi
417afd:	57                   	push   %edi
417afe:	8d 79 02             	lea    0x2(%ecx),%edi
417b01:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
417b07:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
417b0e:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
417b15:	66 8b 01             	mov    (%ecx),%ax
417b18:	83 c1 02             	add    $0x2,%ecx
417b1b:	66 85 c0             	test   %ax,%ax
417b1e:	75 f5                	jne    0x417b15
417b20:	2b cf                	sub    %edi,%ecx
417b22:	d1 f9                	sar    $1,%ecx
417b24:	51                   	push   %ecx
417b25:	52                   	push   %edx
417b26:	8b ce                	mov    %esi,%ecx
417b28:	e8 33 a5 fe ff       	call   0x402060
417b2d:	5f                   	pop    %edi
417b2e:	8b c6                	mov    %esi,%eax
417b30:	5e                   	pop    %esi
417b31:	8b e5                	mov    %ebp,%esp
417b33:	5d                   	pop    %ebp
417b34:	c2 04 00             	ret    $0x4
417b37:	cc                   	int3
417b38:	cc                   	int3
417b39:	cc                   	int3
417b3a:	cc                   	int3
417b3b:	cc                   	int3
417b3c:	cc                   	int3
417b3d:	cc                   	int3
417b3e:	cc                   	int3
417b3f:	cc                   	int3
417b40:	55                   	push   %ebp
417b41:	8b ec                	mov    %esp,%ebp
417b43:	51                   	push   %ecx
417b44:	8b 51 08             	mov    0x8(%ecx),%edx
417b47:	8b ca                	mov    %edx,%ecx
417b49:	56                   	push   %esi
417b4a:	8b 75 08             	mov    0x8(%ebp),%esi
417b4d:	57                   	push   %edi
417b4e:	8d 79 01             	lea    0x1(%ecx),%edi
417b51:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
417b57:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
417b5e:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
417b65:	8a 01                	mov    (%ecx),%al
417b67:	41                   	inc    %ecx
417b68:	84 c0                	test   %al,%al
417b6a:	75 f9                	jne    0x417b65
417b6c:	2b cf                	sub    %edi,%ecx
417b6e:	51                   	push   %ecx
417b6f:	52                   	push   %edx
417b70:	8b ce                	mov    %esi,%ecx
417b72:	e8 09 35 ff ff       	call   0x40b080
417b77:	5f                   	pop    %edi
417b78:	8b c6                	mov    %esi,%eax
417b7a:	5e                   	pop    %esi
417b7b:	8b e5                	mov    %ebp,%esp
417b7d:	5d                   	pop    %ebp
417b7e:	c2 04 00             	ret    $0x4
417b81:	cc                   	int3
417b82:	cc                   	int3
417b83:	cc                   	int3
417b84:	cc                   	int3
417b85:	cc                   	int3
417b86:	cc                   	int3
417b87:	cc                   	int3
417b88:	cc                   	int3
417b89:	cc                   	int3
417b8a:	cc                   	int3
417b8b:	cc                   	int3
417b8c:	cc                   	int3
417b8d:	cc                   	int3
417b8e:	cc                   	int3
417b8f:	cc                   	int3
417b90:	66 8b 41 0e          	mov    0xe(%ecx),%ax
417b94:	c3                   	ret
417b95:	cc                   	int3
417b96:	cc                   	int3
417b97:	cc                   	int3
417b98:	cc                   	int3
417b99:	cc                   	int3
417b9a:	cc                   	int3
417b9b:	cc                   	int3
417b9c:	cc                   	int3
417b9d:	cc                   	int3
417b9e:	cc                   	int3
417b9f:	cc                   	int3
417ba0:	66 8b 41 0c          	mov    0xc(%ecx),%ax
417ba4:	c3                   	ret
417ba5:	cc                   	int3
417ba6:	cc                   	int3
417ba7:	cc                   	int3
417ba8:	cc                   	int3
417ba9:	cc                   	int3
417baa:	cc                   	int3
417bab:	cc                   	int3
417bac:	cc                   	int3
417bad:	cc                   	int3
417bae:	cc                   	int3
417baf:	cc                   	int3
417bb0:	55                   	push   %ebp
417bb1:	8b ec                	mov    %esp,%ebp
417bb3:	51                   	push   %ecx
417bb4:	8b 45 0c             	mov    0xc(%ebp),%eax
417bb7:	53                   	push   %ebx
417bb8:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
417bbb:	89 45 fc             	mov    %eax,-0x4(%ebp)
417bbe:	56                   	push   %esi
417bbf:	8b 75 14             	mov    0x14(%ebp),%esi
417bc2:	85 db                	test   %ebx,%ebx
417bc4:	74 5c                	je     0x417c22
417bc6:	57                   	push   %edi
417bc7:	85 f6                	test   %esi,%esi
417bc9:	74 4a                	je     0x417c15
417bcb:	8b 46 20             	mov    0x20(%esi),%eax
417bce:	83 38 00             	cmpl   $0x0,(%eax)
417bd1:	74 1e                	je     0x417bf1
417bd3:	8b 46 30             	mov    0x30(%esi),%eax
417bd6:	8b 08                	mov    (%eax),%ecx
417bd8:	85 c9                	test   %ecx,%ecx
417bda:	7e 15                	jle    0x417bf1
417bdc:	49                   	dec    %ecx
417bdd:	89 08                	mov    %ecx,(%eax)
417bdf:	8b 4e 20             	mov    0x20(%esi),%ecx
417be2:	8b 11                	mov    (%ecx),%edx
417be4:	8d 42 02             	lea    0x2(%edx),%eax
417be7:	89 01                	mov    %eax,(%ecx)
417be9:	8b 45 18             	mov    0x18(%ebp),%eax
417bec:	66 89 02             	mov    %ax,(%edx)
417bef:	eb 14                	jmp    0x417c05
417bf1:	8b 06                	mov    (%esi),%eax
417bf3:	ff 75 18             	push   0x18(%ebp)
417bf6:	8b 78 0c             	mov    0xc(%eax),%edi
417bf9:	8b cf                	mov    %edi,%ecx
417bfb:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417c01:	8b ce                	mov    %esi,%ecx
417c03:	ff d7                	call   *%edi
417c05:	8b 75 14             	mov    0x14(%ebp),%esi
417c08:	b9 ff ff 00 00       	mov    $0xffff,%ecx
417c0d:	0f b7 c0             	movzwl %ax,%eax
417c10:	66 3b c8             	cmp    %ax,%cx
417c13:	75 04                	jne    0x417c19
417c15:	c6 45 10 01          	movb   $0x1,0x10(%ebp)
417c19:	83 eb 01             	sub    $0x1,%ebx
417c1c:	75 a9                	jne    0x417bc7
417c1e:	8b 45 fc             	mov    -0x4(%ebp),%eax
417c21:	5f                   	pop    %edi
417c22:	8b 4d 10             	mov    0x10(%ebp),%ecx
417c25:	89 70 04             	mov    %esi,0x4(%eax)
417c28:	5e                   	pop    %esi
417c29:	89 08                	mov    %ecx,(%eax)
417c2b:	5b                   	pop    %ebx
417c2c:	8b e5                	mov    %ebp,%esp
417c2e:	5d                   	pop    %ebp
417c2f:	c3                   	ret
417c30:	55                   	push   %ebp
417c31:	8b ec                	mov    %esp,%ebp
417c33:	83 ec 0c             	sub    $0xc,%esp
417c36:	8b 45 0c             	mov    0xc(%ebp),%eax
417c39:	53                   	push   %ebx
417c3a:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
417c3d:	89 45 f4             	mov    %eax,-0xc(%ebp)
417c40:	56                   	push   %esi
417c41:	8b 75 14             	mov    0x14(%ebp),%esi
417c44:	57                   	push   %edi
417c45:	8b 7d 18             	mov    0x18(%ebp),%edi
417c48:	89 7d fc             	mov    %edi,-0x4(%ebp)
417c4b:	85 db                	test   %ebx,%ebx
417c4d:	74 6d                	je     0x417cbc
417c4f:	90                   	nop
417c50:	85 f6                	test   %esi,%esi
417c52:	74 56                	je     0x417caa
417c54:	8b 46 20             	mov    0x20(%esi),%eax
417c57:	0f b7 0f             	movzwl (%edi),%ecx
417c5a:	89 4d f8             	mov    %ecx,-0x8(%ebp)
417c5d:	83 38 00             	cmpl   $0x0,(%eax)
417c60:	74 23                	je     0x417c85
417c62:	8b 46 30             	mov    0x30(%esi),%eax
417c65:	8b 00                	mov    (%eax),%eax
417c67:	85 c0                	test   %eax,%eax
417c69:	7e 1a                	jle    0x417c85
417c6b:	8d 48 ff             	lea    -0x1(%eax),%ecx
417c6e:	8b 46 30             	mov    0x30(%esi),%eax
417c71:	89 08                	mov    %ecx,(%eax)
417c73:	8b 4e 20             	mov    0x20(%esi),%ecx
417c76:	8b 11                	mov    (%ecx),%edx
417c78:	8d 42 02             	lea    0x2(%edx),%eax
417c7b:	89 01                	mov    %eax,(%ecx)
417c7d:	8b 45 f8             	mov    -0x8(%ebp),%eax
417c80:	66 89 02             	mov    %ax,(%edx)
417c83:	eb 15                	jmp    0x417c9a
417c85:	8b 06                	mov    (%esi),%eax
417c87:	51                   	push   %ecx
417c88:	8b 78 0c             	mov    0xc(%eax),%edi
417c8b:	8b cf                	mov    %edi,%ecx
417c8d:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417c93:	8b ce                	mov    %esi,%ecx
417c95:	ff d7                	call   *%edi
417c97:	8b 7d fc             	mov    -0x4(%ebp),%edi
417c9a:	8b 75 14             	mov    0x14(%ebp),%esi
417c9d:	b9 ff ff 00 00       	mov    $0xffff,%ecx
417ca2:	0f b7 c0             	movzwl %ax,%eax
417ca5:	66 3b c8             	cmp    %ax,%cx
417ca8:	75 04                	jne    0x417cae
417caa:	c6 45 10 01          	movb   $0x1,0x10(%ebp)
417cae:	83 c7 02             	add    $0x2,%edi
417cb1:	89 7d fc             	mov    %edi,-0x4(%ebp)
417cb4:	83 eb 01             	sub    $0x1,%ebx
417cb7:	75 97                	jne    0x417c50
417cb9:	8b 45 f4             	mov    -0xc(%ebp),%eax
417cbc:	8b 4d 10             	mov    0x10(%ebp),%ecx
417cbf:	5f                   	pop    %edi
417cc0:	89 70 04             	mov    %esi,0x4(%eax)
417cc3:	5e                   	pop    %esi
417cc4:	89 08                	mov    %ecx,(%eax)
417cc6:	5b                   	pop    %ebx
417cc7:	8b e5                	mov    %ebp,%esp
417cc9:	5d                   	pop    %ebp
417cca:	c3                   	ret
417ccb:	cc                   	int3
417ccc:	cc                   	int3
417ccd:	cc                   	int3
417cce:	cc                   	int3
417ccf:	cc                   	int3
417cd0:	55                   	push   %ebp
417cd1:	8b ec                	mov    %esp,%ebp
417cd3:	6a ff                	push   $0xffffffff
417cd5:	68 f5 8c 49 00       	push   $0x498cf5
417cda:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
417ce0:	50                   	push   %eax
417ce1:	83 ec 54             	sub    $0x54,%esp
417ce4:	a1 14 40 4c 00       	mov    0x4c4014,%eax
417ce9:	33 c5                	xor    %ebp,%eax
417ceb:	89 45 f0             	mov    %eax,-0x10(%ebp)
417cee:	53                   	push   %ebx
417cef:	56                   	push   %esi
417cf0:	57                   	push   %edi
417cf1:	50                   	push   %eax
417cf2:	8d 45 f4             	lea    -0xc(%ebp),%eax
417cf5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
417cfb:	8b 5d 24             	mov    0x24(%ebp),%ebx
417cfe:	8b 45 0c             	mov    0xc(%ebp),%eax
417d01:	8b 7d 18             	mov    0x18(%ebp),%edi
417d04:	8b 55 20             	mov    0x20(%ebp),%edx
417d07:	89 45 a0             	mov    %eax,-0x60(%ebp)
417d0a:	89 7d ac             	mov    %edi,-0x54(%ebp)
417d0d:	89 55 a8             	mov    %edx,-0x58(%ebp)
417d10:	85 db                	test   %ebx,%ebx
417d12:	74 11                	je     0x417d25
417d14:	8a 02                	mov    (%edx),%al
417d16:	3c 2b                	cmp    $0x2b,%al
417d18:	74 04                	je     0x417d1e
417d1a:	3c 2d                	cmp    $0x2d,%al
417d1c:	75 07                	jne    0x417d25
417d1e:	b9 01 00 00 00       	mov    $0x1,%ecx
417d23:	eb 02                	jmp    0x417d27
417d25:	33 c9                	xor    %ecx,%ecx
417d27:	8b 47 14             	mov    0x14(%edi),%eax
417d2a:	25 00 0e 00 00       	and    $0xe00,%eax
417d2f:	89 4d b8             	mov    %ecx,-0x48(%ebp)
417d32:	3d 00 08 00 00       	cmp    $0x800,%eax
417d37:	75 1c                	jne    0x417d55
417d39:	8d 71 02             	lea    0x2(%ecx),%esi
417d3c:	3b f3                	cmp    %ebx,%esi
417d3e:	77 15                	ja     0x417d55
417d40:	80 3c 0a 30          	cmpb   $0x30,(%edx,%ecx,1)
417d44:	75 0f                	jne    0x417d55
417d46:	8a 44 0a 01          	mov    0x1(%edx,%ecx,1),%al
417d4a:	3c 78                	cmp    $0x78,%al
417d4c:	74 04                	je     0x417d52
417d4e:	3c 58                	cmp    $0x58,%al
417d50:	75 03                	jne    0x417d55
417d52:	89 75 b8             	mov    %esi,-0x48(%ebp)
417d55:	8b 47 30             	mov    0x30(%edi),%eax
417d58:	8b 78 04             	mov    0x4(%eax),%edi
417d5b:	89 7d b4             	mov    %edi,-0x4c(%ebp)
417d5e:	8b 07                	mov    (%edi),%eax
417d60:	8b 70 04             	mov    0x4(%eax),%esi
417d63:	8b ce                	mov    %esi,%ecx
417d65:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417d6b:	8b cf                	mov    %edi,%ecx
417d6d:	ff d6                	call   *%esi
417d6f:	8d 45 b0             	lea    -0x50(%ebp),%eax
417d72:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
417d79:	50                   	push   %eax
417d7a:	e8 b1 c7 ff ff       	call   0x414530
417d7f:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
417d86:	83 c4 04             	add    $0x4,%esp
417d89:	8b 7d b4             	mov    -0x4c(%ebp),%edi
417d8c:	89 45 bc             	mov    %eax,-0x44(%ebp)
417d8f:	85 ff                	test   %edi,%edi
417d91:	74 29                	je     0x417dbc
417d93:	8b 07                	mov    (%edi),%eax
417d95:	8b 70 08             	mov    0x8(%eax),%esi
417d98:	8b ce                	mov    %esi,%ecx
417d9a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417da0:	8b cf                	mov    %edi,%ecx
417da2:	ff d6                	call   *%esi
417da4:	8b f8                	mov    %eax,%edi
417da6:	85 ff                	test   %edi,%edi
417da8:	74 12                	je     0x417dbc
417daa:	8b 07                	mov    (%edi),%eax
417dac:	6a 01                	push   $0x1
417dae:	8b 30                	mov    (%eax),%esi
417db0:	8b ce                	mov    %esi,%ecx
417db2:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417db8:	8b cf                	mov    %edi,%ecx
417dba:	ff d6                	call   *%esi
417dbc:	6a 00                	push   $0x0
417dbe:	53                   	push   %ebx
417dbf:	8d 4d d8             	lea    -0x28(%ebp),%ecx
417dc2:	e8 e9 ee ff ff       	call   0x416cb0
417dc7:	8b 7d bc             	mov    -0x44(%ebp),%edi
417dca:	8d 45 d8             	lea    -0x28(%ebp),%eax
417dcd:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
417dd4:	8b 55 a8             	mov    -0x58(%ebp),%edx
417dd7:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
417ddb:	8b 0f                	mov    (%edi),%ecx
417ddd:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
417de1:	50                   	push   %eax
417de2:	8d 04 13             	lea    (%ebx,%edx,1),%eax
417de5:	8b 71 2c             	mov    0x2c(%ecx),%esi
417de8:	8b ce                	mov    %esi,%ecx
417dea:	50                   	push   %eax
417deb:	52                   	push   %edx
417dec:	ff 15 d4 e2 49 00    	call   *0x49e2d4