4b1d61:	53                   	push   %ebx
4b1d62:	e8 38 ba ff ff       	call   0x4ad79f
4b1d67:	59                   	pop    %ecx
4b1d68:	e9 c8 00 00 00       	jmp    0x4b1e35
4b1d6d:	33 c9                	xor    %ecx,%ecx
4b1d6f:	3b d9                	cmp    %ecx,%ebx
4b1d71:	75 14                	jne    0x4b1d87
4b1d73:	39 4d fc             	cmp    %ecx,-0x4(%ebp)
4b1d76:	74 08                	je     0x4b1d80
4b1d78:	6a 01                	push   $0x1
4b1d7a:	e8 20 ba ff ff       	call   0x4ad79f
4b1d7f:	59                   	pop    %ecx
4b1d80:	6a 03                	push   $0x3
4b1d82:	e8 0f 7b ff ff       	call   0x4a9896
4b1d87:	8b 45 08             	mov    0x8(%ebp),%eax
4b1d8a:	83 f8 08             	cmp    $0x8,%eax
4b1d8d:	74 0a                	je     0x4b1d99
4b1d8f:	83 f8 0b             	cmp    $0xb,%eax
4b1d92:	74 05                	je     0x4b1d99
4b1d94:	83 f8 04             	cmp    $0x4,%eax
4b1d97:	75 1b                	jne    0x4b1db4
4b1d99:	8b 56 54             	mov    0x54(%esi),%edx
4b1d9c:	83 f8 08             	cmp    $0x8,%eax
4b1d9f:	89 55 f8             	mov    %edx,-0x8(%ebp)
4b1da2:	89 4e 54             	mov    %ecx,0x54(%esi)
4b1da5:	75 49                	jne    0x4b1df0
4b1da7:	8b 56 58             	mov    0x58(%esi),%edx
4b1daa:	c7 46 58 8c 00 00 00 	movl   $0x8c,0x58(%esi)
4b1db1:	89 55 f4             	mov    %edx,-0xc(%ebp)
4b1db4:	83 f8 08             	cmp    $0x8,%eax
4b1db7:	75 37                	jne    0x4b1df0
4b1db9:	8b 0d d8 a2 50 00    	mov    0x50a2d8,%ecx
4b1dbf:	a1 dc a2 50 00       	mov    0x50a2dc,%eax
4b1dc4:	03 c1                	add    %ecx,%eax
4b1dc6:	3b c8                	cmp    %eax,%ecx
4b1dc8:	7d 28                	jge    0x4b1df2
4b1dca:	8d 04 49             	lea    (%ecx,%ecx,2),%eax
4b1dcd:	c1 e0 02             	shl    $0x2,%eax
4b1dd0:	8b 56 50             	mov    0x50(%esi),%edx
4b1dd3:	83 c0 0c             	add    $0xc,%eax
4b1dd6:	83 64 02 fc 00       	andl   $0x0,-0x4(%edx,%eax,1)
4b1ddb:	8b 15 d8 a2 50 00    	mov    0x50a2d8,%edx
4b1de1:	8b 3d dc a2 50 00    	mov    0x50a2dc,%edi
4b1de7:	41                   	inc    %ecx
4b1de8:	03 fa                	add    %edx,%edi
4b1dea:	3b cf                	cmp    %edi,%ecx
4b1dec:	7c e2                	jl     0x4b1dd0
4b1dee:	eb 02                	jmp    0x4b1df2
4b1df0:	89 0f                	mov    %ecx,(%edi)
4b1df2:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4b1df6:	74 08                	je     0x4b1e00
4b1df8:	6a 01                	push   $0x1
4b1dfa:	e8 a0 b9 ff ff       	call   0x4ad79f
4b1dff:	59                   	pop    %ecx
4b1e00:	83 7d 08 08          	cmpl   $0x8,0x8(%ebp)
4b1e04:	75 0b                	jne    0x4b1e11
4b1e06:	ff 76 58             	push   0x58(%esi)
4b1e09:	6a 08                	push   $0x8
4b1e0b:	ff d3                	call   *%ebx
4b1e0d:	59                   	pop    %ecx
4b1e0e:	59                   	pop    %ecx
4b1e0f:	eb 12                	jmp    0x4b1e23
4b1e11:	ff 75 08             	push   0x8(%ebp)
4b1e14:	ff d3                	call   *%ebx
4b1e16:	83 7d 08 0b          	cmpl   $0xb,0x8(%ebp)
4b1e1a:	59                   	pop    %ecx
4b1e1b:	74 06                	je     0x4b1e23
4b1e1d:	83 7d 08 04          	cmpl   $0x4,0x8(%ebp)
4b1e21:	75 12                	jne    0x4b1e35
4b1e23:	8b 45 f8             	mov    -0x8(%ebp),%eax
4b1e26:	83 7d 08 08          	cmpl   $0x8,0x8(%ebp)
4b1e2a:	89 46 54             	mov    %eax,0x54(%esi)
4b1e2d:	75 06                	jne    0x4b1e35
4b1e2f:	8b 45 f4             	mov    -0xc(%ebp),%eax
4b1e32:	89 46 58             	mov    %eax,0x58(%esi)
4b1e35:	33 c0                	xor    %eax,%eax
4b1e37:	5f                   	pop    %edi
4b1e38:	5e                   	pop    %esi
4b1e39:	5b                   	pop    %ebx
4b1e3a:	c9                   	leave
4b1e3b:	c3                   	ret
4b1e3c:	8b 54 24 08          	mov    0x8(%esp),%edx
4b1e40:	8b 0d e4 a2 50 00    	mov    0x50a2e4,%ecx
4b1e46:	56                   	push   %esi
4b1e47:	8b 74 24 08          	mov    0x8(%esp),%esi
4b1e4b:	39 72 04             	cmp    %esi,0x4(%edx)
4b1e4e:	57                   	push   %edi
4b1e4f:	8b c2                	mov    %edx,%eax
4b1e51:	74 12                	je     0x4b1e65
4b1e53:	8d 3c 49             	lea    (%ecx,%ecx,2),%edi
4b1e56:	8d 3c ba             	lea    (%edx,%edi,4),%edi
4b1e59:	83 c0 0c             	add    $0xc,%eax
4b1e5c:	3b c7                	cmp    %edi,%eax
4b1e5e:	73 05                	jae    0x4b1e65
4b1e60:	39 70 04             	cmp    %esi,0x4(%eax)
4b1e63:	75 f4                	jne    0x4b1e59
4b1e65:	8d 0c 49             	lea    (%ecx,%ecx,2),%ecx
4b1e68:	8d 0c 8a             	lea    (%edx,%ecx,4),%ecx
4b1e6b:	3b c1                	cmp    %ecx,%eax
4b1e6d:	73 05                	jae    0x4b1e74
4b1e6f:	39 70 04             	cmp    %esi,0x4(%eax)
4b1e72:	74 02                	je     0x4b1e76
4b1e74:	33 c0                	xor    %eax,%eax
4b1e76:	5f                   	pop    %edi
4b1e77:	5e                   	pop    %esi
4b1e78:	c3                   	ret
4b1e79:	8b 54 24 04          	mov    0x4(%esp),%edx
4b1e7d:	56                   	push   %esi
4b1e7e:	8b 74 24 0c          	mov    0xc(%esp),%esi
4b1e82:	33 c0                	xor    %eax,%eax
4b1e84:	8d 0c 32             	lea    (%edx,%esi,1),%ecx
4b1e87:	3b ca                	cmp    %edx,%ecx
4b1e89:	72 04                	jb     0x4b1e8f
4b1e8b:	3b ce                	cmp    %esi,%ecx
4b1e8d:	73 03                	jae    0x4b1e92
4b1e8f:	6a 01                	push   $0x1
4b1e91:	58                   	pop    %eax
4b1e92:	8b 54 24 10          	mov    0x10(%esp),%edx
4b1e96:	5e                   	pop    %esi
4b1e97:	89 0a                	mov    %ecx,(%edx)
4b1e99:	c3                   	ret
4b1e9a:	56                   	push   %esi
4b1e9b:	8b 74 24 08          	mov    0x8(%esp),%esi
4b1e9f:	57                   	push   %edi
4b1ea0:	8b 7c 24 10          	mov    0x10(%esp),%edi
4b1ea4:	56                   	push   %esi
4b1ea5:	ff 37                	push   (%edi)
4b1ea7:	ff 36                	push   (%esi)
4b1ea9:	e8 cb ff ff ff       	call   0x4b1e79
4b1eae:	83 c4 0c             	add    $0xc,%esp
4b1eb1:	85 c0                	test   %eax,%eax
4b1eb3:	74 17                	je     0x4b1ecc
4b1eb5:	8d 46 04             	lea    0x4(%esi),%eax
4b1eb8:	50                   	push   %eax
4b1eb9:	6a 01                	push   $0x1
4b1ebb:	ff 30                	push   (%eax)
4b1ebd:	e8 b7 ff ff ff       	call   0x4b1e79
4b1ec2:	83 c4 0c             	add    $0xc,%esp
4b1ec5:	85 c0                	test   %eax,%eax
4b1ec7:	74 03                	je     0x4b1ecc
4b1ec9:	ff 46 08             	incl   0x8(%esi)
4b1ecc:	8d 46 04             	lea    0x4(%esi),%eax
4b1ecf:	50                   	push   %eax
4b1ed0:	ff 77 04             	push   0x4(%edi)
4b1ed3:	ff 30                	push   (%eax)
4b1ed5:	e8 9f ff ff ff       	call   0x4b1e79
4b1eda:	83 c4 0c             	add    $0xc,%esp
4b1edd:	85 c0                	test   %eax,%eax
4b1edf:	74 03                	je     0x4b1ee4
4b1ee1:	ff 46 08             	incl   0x8(%esi)
4b1ee4:	8d 46 08             	lea    0x8(%esi),%eax
4b1ee7:	50                   	push   %eax
4b1ee8:	ff 77 08             	push   0x8(%edi)
4b1eeb:	ff 30                	push   (%eax)
4b1eed:	e8 87 ff ff ff       	call   0x4b1e79
4b1ef2:	83 c4 0c             	add    $0xc,%esp
4b1ef5:	5f                   	pop    %edi
4b1ef6:	5e                   	pop    %esi
4b1ef7:	c3                   	ret
4b1ef8:	8b 44 24 04          	mov    0x4(%esp),%eax
4b1efc:	56                   	push   %esi
4b1efd:	57                   	push   %edi
4b1efe:	8b 30                	mov    (%eax),%esi
4b1f00:	8b 78 04             	mov    0x4(%eax),%edi
4b1f03:	8b ce                	mov    %esi,%ecx
4b1f05:	03 f6                	add    %esi,%esi
4b1f07:	89 30                	mov    %esi,(%eax)
4b1f09:	8d 34 3f             	lea    (%edi,%edi,1),%esi
4b1f0c:	c1 e9 1f             	shr    $0x1f,%ecx
4b1f0f:	0b f1                	or     %ecx,%esi
4b1f11:	8b 48 08             	mov    0x8(%eax),%ecx
4b1f14:	8b d7                	mov    %edi,%edx
4b1f16:	89 70 04             	mov    %esi,0x4(%eax)
4b1f19:	c1 ea 1f             	shr    $0x1f,%edx
4b1f1c:	d1 e1                	shl    $1,%ecx
4b1f1e:	0b ca                	or     %edx,%ecx
4b1f20:	5f                   	pop    %edi
4b1f21:	89 48 08             	mov    %ecx,0x8(%eax)
4b1f24:	5e                   	pop    %esi
4b1f25:	c3                   	ret
4b1f26:	8b 44 24 04          	mov    0x4(%esp),%eax
4b1f2a:	56                   	push   %esi
4b1f2b:	57                   	push   %edi
4b1f2c:	8b 50 08             	mov    0x8(%eax),%edx
4b1f2f:	8b 48 04             	mov    0x4(%eax),%ecx
4b1f32:	8b f2                	mov    %edx,%esi
4b1f34:	8b f9                	mov    %ecx,%edi
4b1f36:	c1 e6 1f             	shl    $0x1f,%esi
4b1f39:	d1 e9                	shr    $1,%ecx
4b1f3b:	0b ce                	or     %esi,%ecx
4b1f3d:	89 48 04             	mov    %ecx,0x4(%eax)
4b1f40:	8b 08                	mov    (%eax),%ecx
4b1f42:	c1 e7 1f             	shl    $0x1f,%edi
4b1f45:	d1 e9                	shr    $1,%ecx
4b1f47:	d1 ea                	shr    $1,%edx
4b1f49:	0b cf                	or     %edi,%ecx
4b1f4b:	5f                   	pop    %edi
4b1f4c:	89 50 08             	mov    %edx,0x8(%eax)
4b1f4f:	89 08                	mov    %ecx,(%eax)
4b1f51:	5e                   	pop    %esi
4b1f52:	c3                   	ret
4b1f53:	55                   	push   %ebp
4b1f54:	8b ec                	mov    %esp,%ebp
4b1f56:	83 ec 10             	sub    $0x10,%esp
4b1f59:	8b 45 0c             	mov    0xc(%ebp),%eax
4b1f5c:	53                   	push   %ebx
4b1f5d:	8b 5d 10             	mov    0x10(%ebp),%ebx
4b1f60:	33 d2                	xor    %edx,%edx
4b1f62:	3b c2                	cmp    %edx,%eax
4b1f64:	56                   	push   %esi
4b1f65:	c7 45 fc 4e 40 00 00 	movl   $0x404e,-0x4(%ebp)
4b1f6c:	89 13                	mov    %edx,(%ebx)
4b1f6e:	89 53 04             	mov    %edx,0x4(%ebx)
4b1f71:	89 53 08             	mov    %edx,0x8(%ebx)
4b1f74:	76 51                	jbe    0x4b1fc7
4b1f76:	57                   	push   %edi
4b1f77:	89 45 10             	mov    %eax,0x10(%ebp)
4b1f7a:	8b f3                	mov    %ebx,%esi
4b1f7c:	8d 7d f0             	lea    -0x10(%ebp),%edi
4b1f7f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4b1f80:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4b1f81:	53                   	push   %ebx
4b1f82:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4b1f83:	e8 70 ff ff ff       	call   0x4b1ef8
4b1f88:	53                   	push   %ebx
4b1f89:	e8 6a ff ff ff       	call   0x4b1ef8
4b1f8e:	8d 45 f0             	lea    -0x10(%ebp),%eax
4b1f91:	50                   	push   %eax
4b1f92:	53                   	push   %ebx
4b1f93:	e8 02 ff ff ff       	call   0x4b1e9a
4b1f98:	53                   	push   %ebx
4b1f99:	e8 5a ff ff ff       	call   0x4b1ef8
4b1f9e:	8b 45 08             	mov    0x8(%ebp),%eax
4b1fa1:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
4b1fa5:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4b1fa9:	0f be 00             	movsbl (%eax),%eax
4b1fac:	89 45 f0             	mov    %eax,-0x10(%ebp)
4b1faf:	8d 45 f0             	lea    -0x10(%ebp),%eax
4b1fb2:	50                   	push   %eax
4b1fb3:	53                   	push   %ebx
4b1fb4:	e8 e1 fe ff ff       	call   0x4b1e9a
4b1fb9:	83 c4 1c             	add    $0x1c,%esp
4b1fbc:	ff 45 08             	incl   0x8(%ebp)
4b1fbf:	ff 4d 10             	decl   0x10(%ebp)
4b1fc2:	75 b6                	jne    0x4b1f7a
4b1fc4:	33 d2                	xor    %edx,%edx
4b1fc6:	5f                   	pop    %edi
4b1fc7:	39 53 08             	cmp    %edx,0x8(%ebx)
4b1fca:	75 28                	jne    0x4b1ff4
4b1fcc:	8b 4b 04             	mov    0x4(%ebx),%ecx
4b1fcf:	8b c1                	mov    %ecx,%eax
4b1fd1:	c1 e8 10             	shr    $0x10,%eax
4b1fd4:	89 43 08             	mov    %eax,0x8(%ebx)
4b1fd7:	8b 03                	mov    (%ebx),%eax
4b1fd9:	8b f0                	mov    %eax,%esi
4b1fdb:	c1 ee 10             	shr    $0x10,%esi
4b1fde:	c1 e1 10             	shl    $0x10,%ecx
4b1fe1:	0b f1                	or     %ecx,%esi
4b1fe3:	c1 e0 10             	shl    $0x10,%eax
4b1fe6:	81 45 fc f0 ff 00 00 	addl   $0xfff0,-0x4(%ebp)
4b1fed:	89 73 04             	mov    %esi,0x4(%ebx)
4b1ff0:	89 03                	mov    %eax,(%ebx)
4b1ff2:	eb d3                	jmp    0x4b1fc7
4b1ff4:	be 00 80 00 00       	mov    $0x8000,%esi
4b1ff9:	85 73 08             	test   %esi,0x8(%ebx)
4b1ffc:	75 10                	jne    0x4b200e
4b1ffe:	53                   	push   %ebx
4b1fff:	e8 f4 fe ff ff       	call   0x4b1ef8
4b2004:	81 45 fc ff ff 00 00 	addl   $0xffff,-0x4(%ebp)
4b200b:	59                   	pop    %ecx
4b200c:	eb eb                	jmp    0x4b1ff9
4b200e:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
4b2012:	5e                   	pop    %esi
4b2013:	66 89 43 0a          	mov    %ax,0xa(%ebx)
4b2017:	5b                   	pop    %ebx
4b2018:	c9                   	leave
4b2019:	c3                   	ret
4b201a:	55                   	push   %ebp
4b201b:	8b ec                	mov    %esp,%ebp
4b201d:	83 ec 1c             	sub    $0x1c,%esp
4b2020:	8b 45 10             	mov    0x10(%ebp),%eax
4b2023:	53                   	push   %ebx
4b2024:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
4b2027:	56                   	push   %esi
4b2028:	8b c8                	mov    %eax,%ecx
4b202a:	be ff 7f 00 00       	mov    $0x7fff,%esi
4b202f:	81 e1 00 80 00 00    	and    $0x8000,%ecx
4b2035:	23 c6                	and    %esi,%eax
4b2037:	66 85 c9             	test   %cx,%cx
4b203a:	57                   	push   %edi
4b203b:	c6 45 e4 cc          	movb   $0xcc,-0x1c(%ebp)
4b203f:	c6 45 e5 cc          	movb   $0xcc,-0x1b(%ebp)
4b2043:	c6 45 e6 cc          	movb   $0xcc,-0x1a(%ebp)
4b2047:	c6 45 e7 cc          	movb   $0xcc,-0x19(%ebp)
4b204b:	c6 45 e8 cc          	movb   $0xcc,-0x18(%ebp)
4b204f:	c6 45 e9 cc          	movb   $0xcc,-0x17(%ebp)
4b2053:	c6 45 ea cc          	movb   $0xcc,-0x16(%ebp)
4b2057:	c6 45 eb cc          	movb   $0xcc,-0x15(%ebp)
4b205b:	c6 45 ec cc          	movb   $0xcc,-0x14(%ebp)
4b205f:	c6 45 ed cc          	movb   $0xcc,-0x13(%ebp)
4b2063:	c6 45 ee fb          	movb   $0xfb,-0x12(%ebp)
4b2067:	c6 45 ef 3f          	movb   $0x3f,-0x11(%ebp)
4b206b:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4b2072:	8b d0                	mov    %eax,%edx
4b2074:	74 06                	je     0x4b207c
4b2076:	c6 43 02 2d          	movb   $0x2d,0x2(%ebx)
4b207a:	eb 04                	jmp    0x4b2080
4b207c:	c6 43 02 20          	movb   $0x20,0x2(%ebx)
4b2080:	8b 7d 0c             	mov    0xc(%ebp),%edi
4b2083:	66 85 d2             	test   %dx,%dx
4b2086:	75 1e                	jne    0x4b20a6
4b2088:	85 ff                	test   %edi,%edi
4b208a:	75 1a                	jne    0x4b20a6
4b208c:	39 7d 08             	cmp    %edi,0x8(%ebp)
4b208f:	75 15                	jne    0x4b20a6
4b2091:	66 83 23 00          	andw   $0x0,(%ebx)
4b2095:	c6 43 02 20          	movb   $0x20,0x2(%ebx)
4b2099:	c6 43 03 01          	movb   $0x1,0x3(%ebx)
4b209d:	c6 43 04 30          	movb   $0x30,0x4(%ebx)
4b20a1:	e9 fe 01 00 00       	jmp    0x4b22a4
4b20a6:	66 3b d6             	cmp    %si,%dx
4b20a9:	75 7a                	jne    0x4b2125
4b20ab:	b8 00 00 00 80       	mov    $0x80000000,%eax
4b20b0:	66 c7 03 01 00       	movw   $0x1,(%ebx)
4b20b5:	3b f8                	cmp    %eax,%edi
4b20b7:	75 06                	jne    0x4b20bf
4b20b9:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4b20bd:	74 0f                	je     0x4b20ce
4b20bf:	f7 c7 00 00 00 40    	test   $0x40000000,%edi
4b20c5:	75 07                	jne    0x4b20ce
4b20c7:	68 4c 3c 4b 00       	push   $0x4b3c4c
4b20cc:	eb 46                	jmp    0x4b2114
4b20ce:	66 85 c9             	test   %cx,%cx
4b20d1:	74 15                	je     0x4b20e8
4b20d3:	81 ff 00 00 00 c0    	cmp    $0xc0000000,%edi
4b20d9:	75 0d                	jne    0x4b20e8
4b20db:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4b20df:	75 2e                	jne    0x4b210f
4b20e1:	68 44 3c 4b 00       	push   $0x4b3c44
4b20e6:	eb 0f                	jmp    0x4b20f7
4b20e8:	3b f8                	cmp    %eax,%edi
4b20ea:	75 23                	jne    0x4b210f
4b20ec:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4b20f0:	75 1d                	jne    0x4b210f
4b20f2:	68 3c 3c 4b 00       	push   $0x4b3c3c
4b20f7:	8d 43 04             	lea    0x4(%ebx),%eax
4b20fa:	50                   	push   %eax
4b20fb:	e8 b0 e1 ff ff       	call   0x4b02b0
4b2100:	59                   	pop    %ecx
4b2101:	c6 43 03 05          	movb   $0x5,0x3(%ebx)