492bd0:	0d 00 10 00 00       	or     $0x1000,%eax
492bd5:	5d                   	pop    %ebp
492bd6:	c3                   	ret
492bd7:	8b ff                	mov    %edi,%edi
492bd9:	55                   	push   %ebp
492bda:	8b ec                	mov    %esp,%ebp
492bdc:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
492be0:	75 15                	jne    0x492bf7
492be2:	e8 4e 73 fe ff       	call   0x479f35
492be7:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
492bed:	e8 2f 6a fe ff       	call   0x479621
492bf2:	83 c8 ff             	or     $0xffffffff,%eax
492bf5:	5d                   	pop    %ebp
492bf6:	c3                   	ret
492bf7:	ff 75 08             	push   0x8(%ebp)
492bfa:	6a 00                	push   $0x0
492bfc:	ff 35 e8 8b 4c 00    	push   0x4c8be8
492c02:	ff 15 54 e1 49 00    	call   *0x49e154
492c08:	5d                   	pop    %ebp
492c09:	c3                   	ret
492c0a:	8b ff                	mov    %edi,%edi
492c0c:	55                   	push   %ebp
492c0d:	8b ec                	mov    %esp,%ebp
492c0f:	8b 55 08             	mov    0x8(%ebp),%edx
492c12:	85 d2                	test   %edx,%edx
492c14:	75 0f                	jne    0x492c25
492c16:	33 c9                	xor    %ecx,%ecx
492c18:	8b 45 10             	mov    0x10(%ebp),%eax
492c1b:	89 08                	mov    %ecx,(%eax)
492c1d:	89 48 04             	mov    %ecx,0x4(%eax)
492c20:	33 c0                	xor    %eax,%eax
492c22:	40                   	inc    %eax
492c23:	5d                   	pop    %ebp
492c24:	c3                   	ret
492c25:	8b 4d 0c             	mov    0xc(%ebp),%ecx
492c28:	85 c9                	test   %ecx,%ecx
492c2a:	75 04                	jne    0x492c30
492c2c:	88 0a                	mov    %cl,(%edx)
492c2e:	eb e8                	jmp    0x492c18
492c30:	f7 c1 80 ff ff ff    	test   $0xffffff80,%ecx
492c36:	75 04                	jne    0x492c3c
492c38:	88 0a                	mov    %cl,(%edx)
492c3a:	eb e4                	jmp    0x492c20
492c3c:	53                   	push   %ebx
492c3d:	56                   	push   %esi
492c3e:	f7 c1 00 f8 ff ff    	test   $0xfffff800,%ecx
492c44:	75 07                	jne    0x492c4d
492c46:	33 f6                	xor    %esi,%esi
492c48:	b3 c0                	mov    $0xc0,%bl
492c4a:	46                   	inc    %esi
492c4b:	eb 33                	jmp    0x492c80
492c4d:	f7 c1 00 00 ff ff    	test   $0xffff0000,%ecx
492c53:	75 16                	jne    0x492c6b
492c55:	81 f9 00 d8 00 00    	cmp    $0xd800,%ecx
492c5b:	72 08                	jb     0x492c65
492c5d:	81 f9 ff df 00 00    	cmp    $0xdfff,%ecx
492c63:	76 44                	jbe    0x492ca9
492c65:	6a 02                	push   $0x2
492c67:	b3 e0                	mov    $0xe0,%bl
492c69:	eb 14                	jmp    0x492c7f
492c6b:	f7 c1 00 00 e0 ff    	test   $0xffe00000,%ecx
492c71:	75 36                	jne    0x492ca9
492c73:	81 f9 ff ff 10 00    	cmp    $0x10ffff,%ecx
492c79:	77 2e                	ja     0x492ca9
492c7b:	6a 03                	push   $0x3
492c7d:	b3 f0                	mov    $0xf0,%bl
492c7f:	5e                   	pop    %esi
492c80:	57                   	push   %edi
492c81:	8b fe                	mov    %esi,%edi
492c83:	8a c1                	mov    %cl,%al
492c85:	c1 e9 06             	shr    $0x6,%ecx
492c88:	24 3f                	and    $0x3f,%al
492c8a:	0c 80                	or     $0x80,%al
492c8c:	88 04 17             	mov    %al,(%edi,%edx,1)
492c8f:	83 ef 01             	sub    $0x1,%edi
492c92:	75 ef                	jne    0x492c83
492c94:	ff 75 10             	push   0x10(%ebp)
492c97:	8d 46 01             	lea    0x1(%esi),%eax
492c9a:	0a cb                	or     %bl,%cl
492c9c:	50                   	push   %eax
492c9d:	88 0a                	mov    %cl,(%edx)
492c9f:	e8 f8 21 00 00       	call   0x494e9c
492ca4:	59                   	pop    %ecx
492ca5:	59                   	pop    %ecx
492ca6:	5f                   	pop    %edi
492ca7:	eb 0d                	jmp    0x492cb6
492ca9:	ff 75 14             	push   0x14(%ebp)
492cac:	ff 75 10             	push   0x10(%ebp)
492caf:	e8 fc 21 00 00       	call   0x494eb0
492cb4:	59                   	pop    %ecx
492cb5:	59                   	pop    %ecx
492cb6:	5e                   	pop    %esi
492cb7:	5b                   	pop    %ebx
492cb8:	5d                   	pop    %ebp
492cb9:	c3                   	ret
492cba:	8b ff                	mov    %edi,%edi
492cbc:	55                   	push   %ebp
492cbd:	8b ec                	mov    %esp,%ebp
492cbf:	8b 4d 08             	mov    0x8(%ebp),%ecx
492cc2:	80 39 00             	cmpb   $0x0,(%ecx)
492cc5:	75 05                	jne    0x492ccc
492cc7:	33 c0                	xor    %eax,%eax
492cc9:	40                   	inc    %eax
492cca:	eb 16                	jmp    0x492ce2
492ccc:	80 79 01 00          	cmpb   $0x0,0x1(%ecx)
492cd0:	75 05                	jne    0x492cd7
492cd2:	6a 02                	push   $0x2
492cd4:	58                   	pop    %eax
492cd5:	eb 0b                	jmp    0x492ce2
492cd7:	33 c0                	xor    %eax,%eax
492cd9:	38 41 02             	cmp    %al,0x2(%ecx)
492cdc:	0f 95 c0             	setne  %al
492cdf:	83 c0 03             	add    $0x3,%eax
492ce2:	5d                   	pop    %ebp
492ce3:	c2 04 00             	ret    $0x4
492ce6:	8b ff                	mov    %edi,%edi
492ce8:	55                   	push   %ebp
492ce9:	8b ec                	mov    %esp,%ebp
492ceb:	51                   	push   %ecx
492cec:	ff 75 18             	push   0x18(%ebp)
492cef:	8d 45 fc             	lea    -0x4(%ebp),%eax
492cf2:	ff 75 14             	push   0x14(%ebp)
492cf5:	ff 75 10             	push   0x10(%ebp)
492cf8:	ff 75 0c             	push   0xc(%ebp)
492cfb:	50                   	push   %eax
492cfc:	e8 d1 21 00 00       	call   0x494ed2
492d01:	8b d0                	mov    %eax,%edx
492d03:	83 c4 14             	add    $0x14,%esp
492d06:	83 fa 04             	cmp    $0x4,%edx
492d09:	77 1a                	ja     0x492d25
492d0b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
492d0e:	81 f9 ff ff 00 00    	cmp    $0xffff,%ecx
492d14:	76 05                	jbe    0x492d1b
492d16:	b9 fd ff 00 00       	mov    $0xfffd,%ecx
492d1b:	8b 45 08             	mov    0x8(%ebp),%eax
492d1e:	85 c0                	test   %eax,%eax
492d20:	74 03                	je     0x492d25
492d22:	66 89 08             	mov    %cx,(%eax)
492d25:	8b c2                	mov    %edx,%eax
492d27:	c9                   	leave
492d28:	c3                   	ret
492d29:	8b ff                	mov    %edi,%edi
492d2b:	55                   	push   %ebp
492d2c:	8b ec                	mov    %esp,%ebp
492d2e:	51                   	push   %ecx
492d2f:	51                   	push   %ecx
492d30:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
492d34:	53                   	push   %ebx
492d35:	56                   	push   %esi
492d36:	57                   	push   %edi
492d37:	8b 7d 0c             	mov    0xc(%ebp),%edi
492d3a:	8b 3f                	mov    (%edi),%edi
492d3c:	0f 84 a4 00 00 00    	je     0x492de6
492d42:	8b 5d 10             	mov    0x10(%ebp),%ebx
492d45:	8b 75 08             	mov    0x8(%ebp),%esi
492d48:	85 db                	test   %ebx,%ebx
492d4a:	74 6b                	je     0x492db7
492d4c:	57                   	push   %edi
492d4d:	8d 4d ff             	lea    -0x1(%ebp),%ecx
492d50:	e8 65 ff ff ff       	call   0x492cba
492d55:	ff 75 18             	push   0x18(%ebp)
492d58:	ff 75 14             	push   0x14(%ebp)
492d5b:	50                   	push   %eax
492d5c:	8d 45 f8             	lea    -0x8(%ebp),%eax
492d5f:	57                   	push   %edi
492d60:	50                   	push   %eax
492d61:	e8 6c 21 00 00       	call   0x494ed2
492d66:	8b d0                	mov    %eax,%edx
492d68:	83 c4 14             	add    $0x14,%esp
492d6b:	83 fa ff             	cmp    $0xffffffff,%edx
492d6e:	74 5e                	je     0x492dce
492d70:	85 d2                	test   %edx,%edx
492d72:	74 51                	je     0x492dc5
492d74:	8b 4d f8             	mov    -0x8(%ebp),%ecx
492d77:	81 f9 ff ff 00 00    	cmp    $0xffff,%ecx
492d7d:	76 2b                	jbe    0x492daa
492d7f:	83 fb 01             	cmp    $0x1,%ebx
492d82:	76 33                	jbe    0x492db7
492d84:	81 e9 00 00 01 00    	sub    $0x10000,%ecx
492d8a:	4b                   	dec    %ebx
492d8b:	8b c1                	mov    %ecx,%eax
492d8d:	89 4d f8             	mov    %ecx,-0x8(%ebp)
492d90:	c1 e8 0a             	shr    $0xa,%eax
492d93:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
492d99:	0d 00 d8 00 00       	or     $0xd800,%eax
492d9e:	66 89 06             	mov    %ax,(%esi)
492da1:	83 c6 02             	add    $0x2,%esi
492da4:	81 c9 00 dc 00 00    	or     $0xdc00,%ecx
492daa:	66 89 0e             	mov    %cx,(%esi)
492dad:	03 fa                	add    %edx,%edi
492daf:	83 c6 02             	add    $0x2,%esi
492db2:	83 eb 01             	sub    $0x1,%ebx
492db5:	75 95                	jne    0x492d4c
492db7:	8b 5d 0c             	mov    0xc(%ebp),%ebx
492dba:	2b 75 08             	sub    0x8(%ebp),%esi
492dbd:	d1 fe                	sar    $1,%esi
492dbf:	89 3b                	mov    %edi,(%ebx)
492dc1:	8b c6                	mov    %esi,%eax
492dc3:	eb 67                	jmp    0x492e2c
492dc5:	33 ff                	xor    %edi,%edi
492dc7:	33 c0                	xor    %eax,%eax
492dc9:	66 89 06             	mov    %ax,(%esi)
492dcc:	eb e9                	jmp    0x492db7
492dce:	8b 45 0c             	mov    0xc(%ebp),%eax
492dd1:	89 38                	mov    %edi,(%eax)
492dd3:	8b 45 18             	mov    0x18(%ebp),%eax
492dd6:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
492dda:	c7 40 18 2a 00 00 00 	movl   $0x2a,0x18(%eax)
492de1:	83 c8 ff             	or     $0xffffffff,%eax
492de4:	eb 46                	jmp    0x492e2c
492de6:	57                   	push   %edi
492de7:	8d 4d ff             	lea    -0x1(%ebp),%ecx
492dea:	33 f6                	xor    %esi,%esi
492dec:	e8 c9 fe ff ff       	call   0x492cba
492df1:	8b 5d 18             	mov    0x18(%ebp),%ebx
492df4:	eb 16                	jmp    0x492e0c
492df6:	85 c0                	test   %eax,%eax
492df8:	74 c7                	je     0x492dc1
492dfa:	83 f8 04             	cmp    $0x4,%eax
492dfd:	75 01                	jne    0x492e00
492dff:	46                   	inc    %esi
492e00:	03 f8                	add    %eax,%edi
492e02:	8d 4d ff             	lea    -0x1(%ebp),%ecx
492e05:	57                   	push   %edi
492e06:	46                   	inc    %esi
492e07:	e8 ae fe ff ff       	call   0x492cba
492e0c:	53                   	push   %ebx
492e0d:	ff 75 14             	push   0x14(%ebp)
492e10:	50                   	push   %eax
492e11:	57                   	push   %edi
492e12:	6a 00                	push   $0x0
492e14:	e8 b9 20 00 00       	call   0x494ed2
492e19:	83 c4 14             	add    $0x14,%esp
492e1c:	83 f8 ff             	cmp    $0xffffffff,%eax
492e1f:	75 d5                	jne    0x492df6
492e21:	c6 43 1c 01          	movb   $0x1,0x1c(%ebx)
492e25:	c7 43 18 2a 00 00 00 	movl   $0x2a,0x18(%ebx)
492e2c:	5f                   	pop    %edi
492e2d:	5e                   	pop    %esi
492e2e:	5b                   	pop    %ebx
492e2f:	c9                   	leave
492e30:	c3                   	ret
492e31:	8b ff                	mov    %edi,%edi
492e33:	55                   	push   %ebp
492e34:	8b ec                	mov    %esp,%ebp
492e36:	8b 4d 08             	mov    0x8(%ebp),%ecx
492e39:	83 f9 fe             	cmp    $0xfffffffe,%ecx
492e3c:	75 0d                	jne    0x492e4b
492e3e:	e8 f2 70 fe ff       	call   0x479f35
492e43:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
492e49:	eb 38                	jmp    0x492e83
492e4b:	85 c9                	test   %ecx,%ecx
492e4d:	78 24                	js     0x492e73
492e4f:	3b 0d 00 8a 4c 00    	cmp    0x4c8a00,%ecx
492e55:	73 1c                	jae    0x492e73
492e57:	8b c1                	mov    %ecx,%eax
492e59:	83 e1 3f             	and    $0x3f,%ecx
492e5c:	c1 e8 06             	shr    $0x6,%eax
492e5f:	6b c9 38             	imul   $0x38,%ecx,%ecx
492e62:	8b 04 85 00 88 4c 00 	mov    0x4c8800(,%eax,4),%eax
492e69:	0f b6 44 08 28       	movzbl 0x28(%eax,%ecx,1),%eax
492e6e:	83 e0 40             	and    $0x40,%eax
492e71:	5d                   	pop    %ebp
492e72:	c3                   	ret
492e73:	e8 bd 70 fe ff       	call   0x479f35
492e78:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
492e7e:	e8 9e 67 fe ff       	call   0x479621
492e83:	33 c0                	xor    %eax,%eax
492e85:	5d                   	pop    %ebp
492e86:	c3                   	ret
492e87:	8b ff                	mov    %edi,%edi
492e89:	55                   	push   %ebp
492e8a:	8b ec                	mov    %esp,%ebp
492e8c:	51                   	push   %ecx
492e8d:	e8 10 22 00 00       	call   0x4950a2
492e92:	85 c0                	test   %eax,%eax
492e94:	74 1c                	je     0x492eb2
492e96:	8d 45 fc             	lea    -0x4(%ebp),%eax
492e99:	50                   	push   %eax
492e9a:	8d 45 08             	lea    0x8(%ebp),%eax
492e9d:	6a 01                	push   $0x1
492e9f:	50                   	push   %eax
492ea0:	e8 42 22 00 00       	call   0x4950e7
492ea5:	83 c4 0c             	add    $0xc,%esp
492ea8:	85 c0                	test   %eax,%eax
492eaa:	74 06                	je     0x492eb2
492eac:	66 8b 45 08          	mov    0x8(%ebp),%ax
492eb0:	c9                   	leave
492eb1:	c3                   	ret
492eb2:	b8 ff ff 00 00       	mov    $0xffff,%eax
492eb7:	c9                   	leave
492eb8:	c3                   	ret
492eb9:	8b ff                	mov    %edi,%edi
492ebb:	55                   	push   %ebp
492ebc:	8b ec                	mov    %esp,%ebp
492ebe:	53                   	push   %ebx
492ebf:	56                   	push   %esi
492ec0:	57                   	push   %edi
492ec1:	33 ff                	xor    %edi,%edi
492ec3:	bb e3 00 00 00       	mov    $0xe3,%ebx
492ec8:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
492ecb:	99                   	cltd
492ecc:	2b c2                	sub    %edx,%eax
492ece:	8b f0                	mov    %eax,%esi
492ed0:	d1 fe                	sar    $1,%esi
492ed2:	6a 55                	push   $0x55
492ed4:	ff 34 f5 88 62 4a 00 	push   0x4a6288(,%esi,8)
492edb:	ff 75 08             	push   0x8(%ebp)
492ede:	e8 f6 74 fe ff       	call   0x47a3d9
492ee3:	83 c4 0c             	add    $0xc,%esp
492ee6:	85 c0                	test   %eax,%eax
492ee8:	74 13                	je     0x492efd
492eea:	79 05                	jns    0x492ef1
492eec:	8d 5e ff             	lea    -0x1(%esi),%ebx
492eef:	eb 03                	jmp    0x492ef4
492ef1:	8d 7e 01             	lea    0x1(%esi),%edi
492ef4:	3b fb                	cmp    %ebx,%edi
492ef6:	7e d0                	jle    0x492ec8
492ef8:	83 c8 ff             	or     $0xffffffff,%eax
492efb:	eb 07                	jmp    0x492f04
492efd:	8b 04 f5 8c 62 4a 00 	mov    0x4a628c(,%esi,8),%eax
492f04:	5f                   	pop    %edi
492f05:	5e                   	pop    %esi
492f06:	5b                   	pop    %ebx
492f07:	5d                   	pop    %ebp
492f08:	c3                   	ret
492f09:	8b ff                	mov    %edi,%edi
492f0b:	55                   	push   %ebp
492f0c:	8b ec                	mov    %esp,%ebp
492f0e:	8b 4d 08             	mov    0x8(%ebp),%ecx
492f11:	53                   	push   %ebx
492f12:	56                   	push   %esi
492f13:	57                   	push   %edi
492f14:	85 c9                	test   %ecx,%ecx
492f16:	74 4b                	je     0x492f63
492f18:	81 f9 00 04 00 00    	cmp    $0x400,%ecx
492f1e:	74 43                	je     0x492f63
492f20:	81 f9 00 08 00 00    	cmp    $0x800,%ecx
492f26:	74 3b                	je     0x492f63
492f28:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
492f2c:	8b 75 10             	mov    0x10(%ebp),%esi
492f2f:	75 04                	jne    0x492f35
492f31:	85 f6                	test   %esi,%esi
492f33:	7f 2e                	jg     0x492f63
492f35:	85 f6                	test   %esi,%esi
492f37:	78 2a                	js     0x492f63
492f39:	33 ff                	xor    %edi,%edi
492f3b:	bb e3 00 00 00       	mov    $0xe3,%ebx
492f40:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
492f43:	99                   	cltd