423d7c:	55                   	push   %ebp
423d7d:	8b ec                	mov    %esp,%ebp
423d7f:	83 ec 14             	sub    $0x14,%esp
423d82:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
423d87:	89 45 fc             	mov    %eax,-0x4(%ebp)
423d8a:	33 c0                	xor    %eax,%eax
423d8c:	50                   	push   %eax
423d8d:	50                   	push   %eax
423d8e:	50                   	push   %eax
423d8f:	6a 01                	push   $0x1
423d91:	ff 75 0c             	push   0xc(%ebp)
423d94:	8d 45 ec             	lea    -0x14(%ebp),%eax
423d97:	50                   	push   %eax
423d98:	8d 45 f0             	lea    -0x10(%ebp),%eax
423d9b:	50                   	push   %eax
423d9c:	e8 c2 41 00 00       	call   0x427f63
423da1:	ff 75 08             	push   0x8(%ebp)
423da4:	8d 45 f0             	lea    -0x10(%ebp),%eax
423da7:	50                   	push   %eax
423da8:	e8 16 ff ff ff       	call   0x423cc3
423dad:	8b 4d fc             	mov    -0x4(%ebp),%ecx
423db0:	83 c4 24             	add    $0x24,%esp
423db3:	e8 26 3e ff ff       	call   0x417bde
423db8:	c9                   	leave
423db9:	c3                   	ret
423dba:	55                   	push   %ebp
423dbb:	8b ec                	mov    %esp,%ebp
423dbd:	83 ec 14             	sub    $0x14,%esp
423dc0:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
423dc5:	89 45 fc             	mov    %eax,-0x4(%ebp)
423dc8:	33 c0                	xor    %eax,%eax
423dca:	50                   	push   %eax
423dcb:	50                   	push   %eax
423dcc:	50                   	push   %eax
423dcd:	50                   	push   %eax
423dce:	ff 75 0c             	push   0xc(%ebp)
423dd1:	8d 45 ec             	lea    -0x14(%ebp),%eax
423dd4:	50                   	push   %eax
423dd5:	8d 45 f0             	lea    -0x10(%ebp),%eax
423dd8:	50                   	push   %eax
423dd9:	e8 85 41 00 00       	call   0x427f63
423dde:	ff 75 08             	push   0x8(%ebp)
423de1:	8d 45 f0             	lea    -0x10(%ebp),%eax
423de4:	50                   	push   %eax
423de5:	e8 c3 fe ff ff       	call   0x423cad
423dea:	8b 4d fc             	mov    -0x4(%ebp),%ecx
423ded:	83 c4 24             	add    $0x24,%esp
423df0:	e8 e9 3d ff ff       	call   0x417bde
423df5:	c9                   	leave
423df6:	c3                   	ret
423df7:	55                   	push   %ebp
423df8:	8b ec                	mov    %esp,%ebp
423dfa:	8b 55 10             	mov    0x10(%ebp),%edx
423dfd:	8b 4a 0c             	mov    0xc(%edx),%ecx
423e00:	53                   	push   %ebx
423e01:	8b 5d 0c             	mov    0xc(%ebp),%ebx
423e04:	85 db                	test   %ebx,%ebx
423e06:	56                   	push   %esi
423e07:	8b 75 08             	mov    0x8(%ebp),%esi
423e0a:	57                   	push   %edi
423e0b:	8d 7e 01             	lea    0x1(%esi),%edi
423e0e:	c6 06 30             	movb   $0x30,(%esi)
423e11:	8b c7                	mov    %edi,%eax
423e13:	7e 1f                	jle    0x423e34
423e15:	89 5d 08             	mov    %ebx,0x8(%ebp)
423e18:	33 db                	xor    %ebx,%ebx
423e1a:	8a 11                	mov    (%ecx),%dl
423e1c:	84 d2                	test   %dl,%dl
423e1e:	74 06                	je     0x423e26
423e20:	0f be d2             	movsbl %dl,%edx
423e23:	41                   	inc    %ecx
423e24:	eb 03                	jmp    0x423e29
423e26:	6a 30                	push   $0x30
423e28:	5a                   	pop    %edx
423e29:	88 10                	mov    %dl,(%eax)
423e2b:	40                   	inc    %eax
423e2c:	ff 4d 08             	decl   0x8(%ebp)
423e2f:	75 e9                	jne    0x423e1a
423e31:	8b 55 10             	mov    0x10(%ebp),%edx
423e34:	85 db                	test   %ebx,%ebx
423e36:	c6 00 00             	movb   $0x0,(%eax)
423e39:	7c 12                	jl     0x423e4d
423e3b:	80 39 35             	cmpb   $0x35,(%ecx)
423e3e:	7c 0d                	jl     0x423e4d
423e40:	eb 03                	jmp    0x423e45
423e42:	c6 00 30             	movb   $0x30,(%eax)
423e45:	48                   	dec    %eax
423e46:	80 38 39             	cmpb   $0x39,(%eax)
423e49:	74 f7                	je     0x423e42
423e4b:	fe 00                	incb   (%eax)
423e4d:	80 3e 31             	cmpb   $0x31,(%esi)
423e50:	75 05                	jne    0x423e57
423e52:	ff 42 04             	incl   0x4(%edx)
423e55:	eb 12                	jmp    0x423e69
423e57:	57                   	push   %edi
423e58:	e8 93 3d ff ff       	call   0x417bf0
423e5d:	40                   	inc    %eax
423e5e:	50                   	push   %eax
423e5f:	57                   	push   %edi
423e60:	56                   	push   %esi
423e61:	e8 ba 31 ff ff       	call   0x417020
423e66:	83 c4 10             	add    $0x10,%esp
423e69:	5f                   	pop    %edi
423e6a:	5e                   	pop    %esi
423e6b:	5b                   	pop    %ebx
423e6c:	5d                   	pop    %ebp
423e6d:	c3                   	ret
423e6e:	55                   	push   %ebp
423e6f:	8b ec                	mov    %esp,%ebp
423e71:	51                   	push   %ecx
423e72:	8b 55 0c             	mov    0xc(%ebp),%edx
423e75:	33 c0                	xor    %eax,%eax
423e77:	66 8b 42 06          	mov    0x6(%edx),%ax
423e7b:	53                   	push   %ebx
423e7c:	56                   	push   %esi
423e7d:	57                   	push   %edi
423e7e:	bf ff 07 00 00       	mov    $0x7ff,%edi
423e83:	be 00 00 00 80       	mov    $0x80000000,%esi
423e88:	89 75 fc             	mov    %esi,-0x4(%ebp)
423e8b:	8b c8                	mov    %eax,%ecx
423e8d:	c1 e9 04             	shr    $0x4,%ecx
423e90:	25 00 80 00 00       	and    $0x8000,%eax
423e95:	23 cf                	and    %edi,%ecx
423e97:	89 45 0c             	mov    %eax,0xc(%ebp)
423e9a:	8b 42 04             	mov    0x4(%edx),%eax
423e9d:	8b 12                	mov    (%edx),%edx
423e9f:	0f b7 d9             	movzwl %cx,%ebx
423ea2:	25 ff ff 0f 00       	and    $0xfffff,%eax
423ea7:	85 db                	test   %ebx,%ebx
423ea9:	74 13                	je     0x423ebe
423eab:	3b df                	cmp    %edi,%ebx
423ead:	74 08                	je     0x423eb7
423eaf:	8d b9 00 3c 00 00    	lea    0x3c00(%ecx),%edi
423eb5:	eb 28                	jmp    0x423edf
423eb7:	bf ff 7f 00 00       	mov    $0x7fff,%edi
423ebc:	eb 21                	jmp    0x423edf
423ebe:	33 db                	xor    %ebx,%ebx
423ec0:	3b c3                	cmp    %ebx,%eax
423ec2:	75 12                	jne    0x423ed6
423ec4:	3b d3                	cmp    %ebx,%edx
423ec6:	75 0e                	jne    0x423ed6
423ec8:	8b 45 08             	mov    0x8(%ebp),%eax
423ecb:	89 58 04             	mov    %ebx,0x4(%eax)
423ece:	89 18                	mov    %ebx,(%eax)
423ed0:	66 89 58 08          	mov    %bx,0x8(%eax)
423ed4:	eb 4d                	jmp    0x423f23
423ed6:	8d b9 01 3c 00 00    	lea    0x3c01(%ecx),%edi
423edc:	89 5d fc             	mov    %ebx,-0x4(%ebp)
423edf:	8b ca                	mov    %edx,%ecx
423ee1:	c1 e9 15             	shr    $0x15,%ecx
423ee4:	c1 e0 0b             	shl    $0xb,%eax
423ee7:	0b c8                	or     %eax,%ecx
423ee9:	0b 4d fc             	or     -0x4(%ebp),%ecx
423eec:	8b 45 08             	mov    0x8(%ebp),%eax
423eef:	c1 e2 0b             	shl    $0xb,%edx
423ef2:	85 ce                	test   %ecx,%esi
423ef4:	89 48 04             	mov    %ecx,0x4(%eax)
423ef7:	89 10                	mov    %edx,(%eax)
423ef9:	75 1f                	jne    0x423f1a
423efb:	8b 08                	mov    (%eax),%ecx
423efd:	8b 50 04             	mov    0x4(%eax),%edx
423f00:	8b d9                	mov    %ecx,%ebx
423f02:	d1 e2                	shl    $1,%edx
423f04:	c1 eb 1f             	shr    $0x1f,%ebx
423f07:	0b d3                	or     %ebx,%edx
423f09:	03 c9                	add    %ecx,%ecx
423f0b:	81 c7 ff ff 00 00    	add    $0xffff,%edi
423f11:	85 d6                	test   %edx,%esi
423f13:	89 50 04             	mov    %edx,0x4(%eax)
423f16:	89 08                	mov    %ecx,(%eax)
423f18:	74 e1                	je     0x423efb
423f1a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
423f1d:	0b cf                	or     %edi,%ecx
423f1f:	66 89 48 08          	mov    %cx,0x8(%eax)
423f23:	5f                   	pop    %edi
423f24:	5e                   	pop    %esi
423f25:	5b                   	pop    %ebx
423f26:	c9                   	leave
423f27:	c3                   	ret
423f28:	55                   	push   %ebp
423f29:	8b ec                	mov    %esp,%ebp
423f2b:	83 ec 2c             	sub    $0x2c,%esp
423f2e:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
423f33:	89 45 fc             	mov    %eax,-0x4(%ebp)
423f36:	56                   	push   %esi
423f37:	57                   	push   %edi
423f38:	8d 45 08             	lea    0x8(%ebp),%eax
423f3b:	50                   	push   %eax
423f3c:	8d 45 f0             	lea    -0x10(%ebp),%eax
423f3f:	50                   	push   %eax
423f40:	e8 29 ff ff ff       	call   0x423e6e
423f45:	59                   	pop    %ecx
423f46:	59                   	pop    %ecx
423f47:	8d 45 d4             	lea    -0x2c(%ebp),%eax
423f4a:	50                   	push   %eax
423f4b:	6a 00                	push   $0x0
423f4d:	6a 11                	push   $0x11
423f4f:	83 ec 0c             	sub    $0xc,%esp
423f52:	8d 75 f0             	lea    -0x10(%ebp),%esi
423f55:	8b fc                	mov    %esp,%edi
423f57:	a5                   	movsl  %ds:(%esi),%es:(%edi)
423f58:	a5                   	movsl  %ds:(%esi),%es:(%edi)
423f59:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
423f5b:	e8 83 44 00 00       	call   0x4283e3
423f60:	8b 75 10             	mov    0x10(%ebp),%esi
423f63:	8b 7d 14             	mov    0x14(%ebp),%edi
423f66:	89 46 08             	mov    %eax,0x8(%esi)
423f69:	0f be 45 d6          	movsbl -0x2a(%ebp),%eax
423f6d:	89 06                	mov    %eax,(%esi)
423f6f:	0f bf 45 d4          	movswl -0x2c(%ebp),%eax
423f73:	89 46 04             	mov    %eax,0x4(%esi)
423f76:	8d 45 d8             	lea    -0x28(%ebp),%eax
423f79:	50                   	push   %eax
423f7a:	57                   	push   %edi
423f7b:	e8 c0 e0 ff ff       	call   0x422040
423f80:	8b 4d fc             	mov    -0x4(%ebp),%ecx
423f83:	83 c4 20             	add    $0x20,%esp
423f86:	89 7e 0c             	mov    %edi,0xc(%esi)
423f89:	8b c6                	mov    %esi,%eax
423f8b:	e8 4e 3c ff ff       	call   0x417bde
423f90:	5f                   	pop    %edi
423f91:	5e                   	pop    %esi
423f92:	c9                   	leave
423f93:	c3                   	ret
423f94:	6a 02                	push   $0x2
423f96:	e8 5c 36 ff ff       	call   0x4175f7
423f9b:	59                   	pop    %ecx
423f9c:	c3                   	ret
423f9d:	56                   	push   %esi
423f9e:	e8 e5 3a 00 00       	call   0x427a88
423fa3:	8b 30                	mov    (%eax),%esi
423fa5:	db e3                	fninit
423fa7:	e8 af 94 ff ff       	call   0x41d45b
423fac:	85 f6                	test   %esi,%esi
423fae:	74 16                	je     0x423fc6
423fb0:	8b 46 04             	mov    0x4(%esi),%eax
423fb3:	f7 00 08 00 01 00    	testl  $0x10008,(%eax)
423fb9:	74 0b                	je     0x423fc6
423fbb:	83 60 20 00          	andl   $0x0,0x20(%eax)
423fbf:	c7 40 24 ff ff 00 00 	movl   $0xffff,0x24(%eax)
423fc6:	5e                   	pop    %esi
423fc7:	c3                   	ret
423fc8:	33 c0                	xor    %eax,%eax
423fca:	f6 c3 01             	test   $0x1,%bl
423fcd:	74 03                	je     0x423fd2
423fcf:	6a 10                	push   $0x10
423fd1:	58                   	pop    %eax
423fd2:	f6 c3 04             	test   $0x4,%bl
423fd5:	74 03                	je     0x423fda
423fd7:	83 c8 08             	or     $0x8,%eax
423fda:	f6 c3 08             	test   $0x8,%bl
423fdd:	74 03                	je     0x423fe2
423fdf:	83 c8 04             	or     $0x4,%eax
423fe2:	f6 c3 10             	test   $0x10,%bl
423fe5:	74 03                	je     0x423fea
423fe7:	83 c8 02             	or     $0x2,%eax
423fea:	f6 c3 20             	test   $0x20,%bl
423fed:	74 03                	je     0x423ff2
423fef:	83 c8 01             	or     $0x1,%eax
423ff2:	f6 c3 02             	test   $0x2,%bl
423ff5:	74 05                	je     0x423ffc
423ff7:	0d 00 00 08 00       	or     $0x80000,%eax
423ffc:	55                   	push   %ebp
423ffd:	0f b7 d3             	movzwl %bx,%edx
424000:	56                   	push   %esi
424001:	8b ca                	mov    %edx,%ecx
424003:	be 00 0c 00 00       	mov    $0xc00,%esi
424008:	23 ce                	and    %esi,%ecx
42400a:	57                   	push   %edi
42400b:	bf 00 03 00 00       	mov    $0x300,%edi
424010:	bd 00 02 00 00       	mov    $0x200,%ebp
424015:	74 21                	je     0x424038
424017:	81 f9 00 04 00 00    	cmp    $0x400,%ecx
42401d:	74 14                	je     0x424033
42401f:	81 f9 00 08 00 00    	cmp    $0x800,%ecx
424025:	74 08                	je     0x42402f
424027:	3b ce                	cmp    %esi,%ecx
424029:	75 0d                	jne    0x424038
42402b:	0b c7                	or     %edi,%eax
42402d:	eb 09                	jmp    0x424038
42402f:	0b c5                	or     %ebp,%eax
424031:	eb 05                	jmp    0x424038
424033:	0d 00 01 00 00       	or     $0x100,%eax
424038:	23 d7                	and    %edi,%edx
42403a:	74 0b                	je     0x424047
42403c:	3b d5                	cmp    %ebp,%edx
42403e:	75 0c                	jne    0x42404c
424040:	0d 00 00 01 00       	or     $0x10000,%eax
424045:	eb 05                	jmp    0x42404c
424047:	0d 00 00 02 00       	or     $0x20000,%eax
42404c:	f6 c7 10             	test   $0x10,%bh
42404f:	5f                   	pop    %edi
424050:	5e                   	pop    %esi
424051:	5d                   	pop    %ebp
424052:	74 05                	je     0x424059
424054:	0d 00 00 04 00       	or     $0x40000,%eax
424059:	c3                   	ret
42405a:	33 c0                	xor    %eax,%eax
42405c:	f6 c3 10             	test   $0x10,%bl
42405f:	74 01                	je     0x424062
424061:	40                   	inc    %eax
424062:	f6 c3 08             	test   $0x8,%bl
424065:	74 03                	je     0x42406a
424067:	83 c8 04             	or     $0x4,%eax
42406a:	f6 c3 04             	test   $0x4,%bl
42406d:	74 03                	je     0x424072
42406f:	83 c8 08             	or     $0x8,%eax
424072:	f6 c3 02             	test   $0x2,%bl
424075:	74 03                	je     0x42407a
424077:	83 c8 10             	or     $0x10,%eax
42407a:	f6 c3 01             	test   $0x1,%bl
42407d:	74 03                	je     0x424082
42407f:	83 c8 20             	or     $0x20,%eax
424082:	f7 c3 00 00 08 00    	test   $0x80000,%ebx
424088:	74 03                	je     0x42408d
42408a:	83 c8 02             	or     $0x2,%eax
42408d:	8b cb                	mov    %ebx,%ecx
42408f:	ba 00 03 00 00       	mov    $0x300,%edx
424094:	23 ca                	and    %edx,%ecx
424096:	56                   	push   %esi
424097:	be 00 02 00 00       	mov    $0x200,%esi
42409c:	74 23                	je     0x4240c1
42409e:	81 f9 00 01 00 00    	cmp    $0x100,%ecx
4240a4:	74 16                	je     0x4240bc
4240a6:	3b ce                	cmp    %esi,%ecx
4240a8:	74 0b                	je     0x4240b5
4240aa:	3b ca                	cmp    %edx,%ecx
4240ac:	75 13                	jne    0x4240c1
4240ae:	0d 00 0c 00 00       	or     $0xc00,%eax
4240b3:	eb 0c                	jmp    0x4240c1
4240b5:	0d 00 08 00 00       	or     $0x800,%eax
4240ba:	eb 05                	jmp    0x4240c1
4240bc:	0d 00 04 00 00       	or     $0x400,%eax
4240c1:	8b cb                	mov    %ebx,%ecx
4240c3:	81 e1 00 00 03 00    	and    $0x30000,%ecx
4240c9:	74 0c                	je     0x4240d7
4240cb:	81 f9 00 00 01 00    	cmp    $0x10000,%ecx
4240d1:	75 06                	jne    0x4240d9
4240d3:	0b c6                	or     %esi,%eax
4240d5:	eb 02                	jmp    0x4240d9
4240d7:	0b c2                	or     %edx,%eax
4240d9:	f7 c3 00 00 04 00    	test   $0x40000,%ebx
4240df:	5e                   	pop    %esi
4240e0:	74 05                	je     0x4240e7
4240e2:	0d 00 10 00 00       	or     $0x1000,%eax
4240e7:	c3                   	ret
4240e8:	8a 4c 24 04          	mov    0x4(%esp),%cl
4240ec:	33 c0                	xor    %eax,%eax
4240ee:	f6 c1 01             	test   $0x1,%cl
4240f1:	74 03                	je     0x4240f6