4a3cbe:	0f af d6             	imul   %esi,%edx
4a3cc1:	8b 74 24 1c          	mov    0x1c(%esp),%esi
4a3cc5:	8d 7d 08             	lea    0x8(%ebp),%edi
4a3cc8:	03 f2                	add    %edx,%esi
4a3cca:	53                   	push   %ebx
4a3ccb:	c1 e9 02             	shr    $0x2,%ecx
4a3cce:	89 74 24 20          	mov    %esi,0x20(%esp)
4a3cd2:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4a3cd4:	8b c8                	mov    %eax,%ecx
4a3cd6:	83 e1 03             	and    $0x3,%ecx
4a3cd9:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
4a3cdb:	ff 15 f8 31 4b 00    	call   *0x4b31f8
4a3ce1:	66 81 65 00 ff df    	andw   $0xdfff,0x0(%ebp)
4a3ce7:	5f                   	pop    %edi
4a3ce8:	5e                   	pop    %esi
4a3ce9:	5d                   	pop    %ebp
4a3cea:	b8 01 00 00 00       	mov    $0x1,%eax
4a3cef:	5b                   	pop    %ebx
4a3cf0:	83 c4 08             	add    $0x8,%esp
4a3cf3:	c3                   	ret
4a3cf4:	90                   	nop
4a3cf5:	90                   	nop
4a3cf6:	90                   	nop
4a3cf7:	90                   	nop
4a3cf8:	90                   	nop
4a3cf9:	90                   	nop
4a3cfa:	90                   	nop
4a3cfb:	90                   	nop
4a3cfc:	90                   	nop
4a3cfd:	90                   	nop
4a3cfe:	90                   	nop
4a3cff:	90                   	nop
4a3d00:	53                   	push   %ebx
4a3d01:	8b 5c 24 08          	mov    0x8(%esp),%ebx
4a3d05:	55                   	push   %ebp
4a3d06:	56                   	push   %esi
4a3d07:	85 db                	test   %ebx,%ebx
4a3d09:	75 06                	jne    0x4a3d11
4a3d0b:	5e                   	pop    %esi
4a3d0c:	5d                   	pop    %ebp
4a3d0d:	33 c0                	xor    %eax,%eax
4a3d0f:	5b                   	pop    %ebx
4a3d10:	c3                   	ret
4a3d11:	8b 2d a4 31 4b 00    	mov    0x4b31a4,%ebp
4a3d17:	6a 00                	push   $0x0
4a3d19:	6a 00                	push   $0x0
4a3d1b:	6a ff                	push   $0xffffffff
4a3d1d:	53                   	push   %ebx
4a3d1e:	6a 00                	push   $0x0
4a3d20:	6a 00                	push   $0x0
4a3d22:	ff d5                	call   *%ebp
4a3d24:	8b f0                	mov    %eax,%esi
4a3d26:	85 f6                	test   %esi,%esi
4a3d28:	75 04                	jne    0x4a3d2e
4a3d2a:	5e                   	pop    %esi
4a3d2b:	5d                   	pop    %ebp
4a3d2c:	5b                   	pop    %ebx
4a3d2d:	c3                   	ret
4a3d2e:	8d 04 36             	lea    (%esi,%esi,1),%eax
4a3d31:	57                   	push   %edi
4a3d32:	50                   	push   %eax
4a3d33:	e8 b8 49 00 00       	call   0x4a86f0
4a3d38:	83 c4 04             	add    $0x4,%esp
4a3d3b:	8b f8                	mov    %eax,%edi
4a3d3d:	56                   	push   %esi
4a3d3e:	57                   	push   %edi
4a3d3f:	6a ff                	push   $0xffffffff
4a3d41:	53                   	push   %ebx
4a3d42:	6a 00                	push   $0x0
4a3d44:	6a 00                	push   $0x0
4a3d46:	ff d5                	call   *%ebp
4a3d48:	8b c7                	mov    %edi,%eax
4a3d4a:	5f                   	pop    %edi
4a3d4b:	5e                   	pop    %esi
4a3d4c:	5d                   	pop    %ebp
4a3d4d:	5b                   	pop    %ebx
4a3d4e:	c3                   	ret
4a3d4f:	90                   	nop
4a3d50:	83 ec 10             	sub    $0x10,%esp
4a3d53:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4a3d57:	33 c0                	xor    %eax,%eax
4a3d59:	89 44 24 00          	mov    %eax,0x0(%esp)
4a3d5d:	56                   	push   %esi
4a3d5e:	89 44 24 08          	mov    %eax,0x8(%esp)
4a3d62:	89 44 24 0c          	mov    %eax,0xc(%esp)
4a3d66:	89 44 24 10          	mov    %eax,0x10(%esp)
4a3d6a:	8b 41 08             	mov    0x8(%ecx),%eax
4a3d6d:	3d 01 01 00 80       	cmp    $0x80000101,%eax
4a3d72:	0f 87 f5 00 00 00    	ja     0x4a3e6d
4a3d78:	0f 84 e6 00 00 00    	je     0x4a3e64
4a3d7e:	3d 03 00 00 80       	cmp    $0x80000003,%eax
4a3d83:	0f 87 8a 00 00 00    	ja     0x4a3e13
4a3d89:	74 6f                	je     0x4a3dfa
4a3d8b:	3d 30 00 01 00       	cmp    $0x10030,%eax
4a3d90:	74 46                	je     0x4a3dd8
4a3d92:	3d 31 00 01 00       	cmp    $0x10031,%eax
4a3d97:	74 22                	je     0x4a3dbb
4a3d99:	3d 02 00 00 80       	cmp    $0x80000002,%eax
4a3d9e:	0f 85 22 01 00 00    	jne    0x4a3ec6
4a3da4:	8b 09                	mov    (%ecx),%ecx
4a3da6:	66 c7 44 24 04 0b 00 	movw   $0xb,0x4(%esp)
4a3dad:	f7 d9                	neg    %ecx
4a3daf:	1b c9                	sbb    %ecx,%ecx
4a3db1:	66 89 4c 24 0c       	mov    %cx,0xc(%esp)
4a3db6:	e9 35 01 00 00       	jmp    0x4a3ef0
4a3dbb:	8b 11                	mov    (%ecx),%edx
4a3dbd:	8d 44 24 04          	lea    0x4(%esp),%eax
4a3dc1:	52                   	push   %edx
4a3dc2:	50                   	push   %eax
4a3dc3:	ff 15 d8 31 4b 00    	call   *0x4b31d8
4a3dc9:	85 c0                	test   %eax,%eax
4a3dcb:	0f 8d 1f 01 00 00    	jge    0x4a3ef0
4a3dd1:	33 c0                	xor    %eax,%eax
4a3dd3:	5e                   	pop    %esi
4a3dd4:	83 c4 10             	add    $0x10,%esp
4a3dd7:	c3                   	ret
4a3dd8:	8b 09                	mov    (%ecx),%ecx
4a3dda:	66 c7 44 24 04 0d 00 	movw   $0xd,0x4(%esp)
4a3de1:	8b 01                	mov    (%ecx),%eax
4a3de3:	85 c0                	test   %eax,%eax
4a3de5:	89 44 24 0c          	mov    %eax,0xc(%esp)
4a3de9:	0f 84 01 01 00 00    	je     0x4a3ef0
4a3def:	8b 10                	mov    (%eax),%edx
4a3df1:	50                   	push   %eax
4a3df2:	ff 52 04             	call   *0x4(%edx)
4a3df5:	e9 f6 00 00 00       	jmp    0x4a3ef0
4a3dfa:	8b 01                	mov    (%ecx),%eax
4a3dfc:	8b 49 04             	mov    0x4(%ecx),%ecx
4a3dff:	66 c7 44 24 04 07 00 	movw   $0x7,0x4(%esp)
4a3e06:	89 44 24 0c          	mov    %eax,0xc(%esp)
4a3e0a:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4a3e0e:	e9 dd 00 00 00       	jmp    0x4a3ef0
4a3e13:	3d 04 00 00 80       	cmp    $0x80000004,%eax
4a3e18:	74 1d                	je     0x4a3e37
4a3e1a:	3d 06 00 00 80       	cmp    $0x80000006,%eax
4a3e1f:	0f 85 a1 00 00 00    	jne    0x4a3ec6
4a3e25:	8b 11                	mov    (%ecx),%edx
4a3e27:	66 c7 44 24 04 13 00 	movw   $0x13,0x4(%esp)
4a3e2e:	89 54 24 0c          	mov    %edx,0xc(%esp)
4a3e32:	e9 b9 00 00 00       	jmp    0x4a3ef0
4a3e37:	8b 01                	mov    (%ecx),%eax
4a3e39:	66 c7 44 24 04 08 00 	movw   $0x8,0x4(%esp)
4a3e40:	50                   	push   %eax
4a3e41:	e8 ba fe ff ff       	call   0x4a3d00
4a3e46:	83 c4 04             	add    $0x4,%esp
4a3e49:	8b f0                	mov    %eax,%esi
4a3e4b:	56                   	push   %esi
4a3e4c:	ff 15 d0 31 4b 00    	call   *0x4b31d0
4a3e52:	56                   	push   %esi
4a3e53:	89 44 24 10          	mov    %eax,0x10(%esp)
4a3e57:	e8 a2 48 00 00       	call   0x4a86fe
4a3e5c:	83 c4 04             	add    $0x4,%esp
4a3e5f:	e9 8c 00 00 00       	jmp    0x4a3ef0
4a3e64:	66 c7 44 24 04 11 00 	movw   $0x11,0x4(%esp)
4a3e6b:	eb 7d                	jmp    0x4a3eea
4a3e6d:	3d 01 04 00 80       	cmp    $0x80000401,%eax
4a3e72:	77 44                	ja     0x4a3eb8
4a3e74:	74 2c                	je     0x4a3ea2
4a3e76:	3d 01 02 00 80       	cmp    $0x80000201,%eax
4a3e7b:	74 16                	je     0x4a3e93
4a3e7d:	3d 01 03 00 80       	cmp    $0x80000301,%eax
4a3e82:	75 42                	jne    0x4a3ec6
4a3e84:	8b 11                	mov    (%ecx),%edx
4a3e86:	66 c7 44 24 04 03 00 	movw   $0x3,0x4(%esp)
4a3e8d:	89 54 24 0c          	mov    %edx,0xc(%esp)
4a3e91:	eb 5d                	jmp    0x4a3ef0
4a3e93:	8b 01                	mov    (%ecx),%eax
4a3e95:	66 c7 44 24 04 02 00 	movw   $0x2,0x4(%esp)
4a3e9c:	89 44 24 0c          	mov    %eax,0xc(%esp)
4a3ea0:	eb 4e                	jmp    0x4a3ef0
4a3ea2:	8b 11                	mov    (%ecx),%edx
4a3ea4:	8b 41 04             	mov    0x4(%ecx),%eax
4a3ea7:	66 c7 44 24 04 14 00 	movw   $0x14,0x4(%esp)
4a3eae:	89 54 24 0c          	mov    %edx,0xc(%esp)
4a3eb2:	89 44 24 10          	mov    %eax,0x10(%esp)
4a3eb6:	eb 38                	jmp    0x4a3ef0
4a3eb8:	3d 01 05 00 80       	cmp    $0x80000501,%eax
4a3ebd:	74 24                	je     0x4a3ee3
4a3ebf:	3d 01 06 00 80       	cmp    $0x80000601,%eax
4a3ec4:	74 07                	je     0x4a3ecd
4a3ec6:	33 c0                	xor    %eax,%eax
4a3ec8:	5e                   	pop    %esi
4a3ec9:	83 c4 10             	add    $0x10,%esp
4a3ecc:	c3                   	ret
4a3ecd:	8b 11                	mov    (%ecx),%edx
4a3ecf:	8b 41 04             	mov    0x4(%ecx),%eax
4a3ed2:	66 c7 44 24 04 05 00 	movw   $0x5,0x4(%esp)
4a3ed9:	89 54 24 0c          	mov    %edx,0xc(%esp)
4a3edd:	89 44 24 10          	mov    %eax,0x10(%esp)
4a3ee1:	eb 0d                	jmp    0x4a3ef0
4a3ee3:	66 c7 44 24 04 04 00 	movw   $0x4,0x4(%esp)
4a3eea:	8b 09                	mov    (%ecx),%ecx
4a3eec:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
4a3ef0:	8b 74 24 18          	mov    0x18(%esp),%esi
4a3ef4:	56                   	push   %esi
4a3ef5:	ff 15 cc 31 4b 00    	call   *0x4b31cc
4a3efb:	8b 54 24 04          	mov    0x4(%esp),%edx
4a3eff:	8b 44 24 08          	mov    0x8(%esp),%eax
4a3f03:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4a3f07:	89 16                	mov    %edx,(%esi)
4a3f09:	8b 54 24 10          	mov    0x10(%esp),%edx
4a3f0d:	89 46 04             	mov    %eax,0x4(%esi)
4a3f10:	89 4e 08             	mov    %ecx,0x8(%esi)
4a3f13:	89 56 0c             	mov    %edx,0xc(%esi)
4a3f16:	b8 01 00 00 00       	mov    $0x1,%eax
4a3f1b:	5e                   	pop    %esi
4a3f1c:	83 c4 10             	add    $0x10,%esp
4a3f1f:	c3                   	ret
4a3f20:	83 ec 0c             	sub    $0xc,%esp
4a3f23:	8b 44 24 14          	mov    0x14(%esp),%eax
4a3f27:	53                   	push   %ebx
4a3f28:	55                   	push   %ebp
4a3f29:	56                   	push   %esi
4a3f2a:	8b 10                	mov    (%eax),%edx
4a3f2c:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
4a3f30:	57                   	push   %edi
4a3f31:	8b 78 08             	mov    0x8(%eax),%edi
4a3f34:	33 ed                	xor    %ebp,%ebp
4a3f36:	51                   	push   %ecx
4a3f37:	52                   	push   %edx
4a3f38:	89 6c 24 18          	mov    %ebp,0x18(%esp)
4a3f3c:	e8 df 27 00 00       	call   0x4a6720
4a3f41:	8b f0                	mov    %eax,%esi
4a3f43:	83 c4 08             	add    $0x8,%esp
4a3f46:	3b f5                	cmp    %ebp,%esi
4a3f48:	0f 84 48 01 00 00    	je     0x4a4096
4a3f4e:	39 6c 24 10          	cmp    %ebp,0x10(%esp)
4a3f52:	0f 84 3e 01 00 00    	je     0x4a4096
4a3f58:	81 ff 05 00 00 80    	cmp    $0x80000005,%edi
4a3f5e:	75 0f                	jne    0x4a3f6f
4a3f60:	bb 11 00 00 00       	mov    $0x11,%ebx
4a3f65:	bf 01 00 00 00       	mov    $0x1,%edi
4a3f6a:	e9 cb 00 00 00       	jmp    0x4a403a
4a3f6f:	8b c7                	mov    %edi,%eax
4a3f71:	25 ff ff ff df       	and    $0xdfffffff,%eax
4a3f76:	3d 01 02 00 80       	cmp    $0x80000201,%eax
4a3f7b:	7f 75                	jg     0x4a3ff2
4a3f7d:	74 6a                	je     0x4a3fe9
4a3f7f:	3d 04 00 00 80       	cmp    $0x80000004,%eax
4a3f84:	7f 39                	jg     0x4a3fbf
4a3f86:	74 2b                	je     0x4a3fb3
4a3f88:	3d 02 00 00 80       	cmp    $0x80000002,%eax
4a3f8d:	74 15                	je     0x4a3fa4
4a3f8f:	3d 03 00 00 80       	cmp    $0x80000003,%eax
4a3f94:	0f 85 fc 00 00 00    	jne    0x4a4096
4a3f9a:	bb 07 00 00 00       	mov    $0x7,%ebx
4a3f9f:	e9 91 00 00 00       	jmp    0x4a4035
4a3fa4:	bb 0b 00 00 00       	mov    $0xb,%ebx
4a3fa9:	bf 04 00 00 00       	mov    $0x4,%edi
4a3fae:	e9 87 00 00 00       	jmp    0x4a403a
4a3fb3:	bb 08 00 00 00       	mov    $0x8,%ebx
4a3fb8:	bf 04 00 00 00       	mov    $0x4,%edi
4a3fbd:	eb 7b                	jmp    0x4a403a
4a3fbf:	3d 06 00 00 80       	cmp    $0x80000006,%eax
4a3fc4:	74 17                	je     0x4a3fdd
4a3fc6:	3d 01 01 00 80       	cmp    $0x80000101,%eax
4a3fcb:	0f 85 c5 00 00 00    	jne    0x4a4096
4a3fd1:	bb 11 00 00 00       	mov    $0x11,%ebx
4a3fd6:	bf 01 00 00 00       	mov    $0x1,%edi
4a3fdb:	eb 5d                	jmp    0x4a403a
4a3fdd:	bb 13 00 00 00       	mov    $0x13,%ebx
4a3fe2:	bf 04 00 00 00       	mov    $0x4,%edi
4a3fe7:	eb 51                	jmp    0x4a403a
4a3fe9:	bb 02 00 00 00       	mov    $0x2,%ebx
4a3fee:	8b fb                	mov    %ebx,%edi
4a3ff0:	eb 48                	jmp    0x4a403a
4a3ff2:	3d 01 05 00 80       	cmp    $0x80000501,%eax
4a3ff7:	7f 30                	jg     0x4a4029
4a3ff9:	74 25                	je     0x4a4020
4a3ffb:	3d 01 03 00 80       	cmp    $0x80000301,%eax
4a4000:	74 12                	je     0x4a4014
4a4002:	3d 01 04 00 80       	cmp    $0x80000401,%eax
4a4007:	0f 85 89 00 00 00    	jne    0x4a4096
4a400d:	bb 14 00 00 00       	mov    $0x14,%ebx
4a4012:	eb 21                	jmp    0x4a4035
4a4014:	bb 03 00 00 00       	mov    $0x3,%ebx
4a4019:	bf 04 00 00 00       	mov    $0x4,%edi
4a401e:	eb 1a                	jmp    0x4a403a
4a4020:	bb 04 00 00 00       	mov    $0x4,%ebx
4a4025:	8b fb                	mov    %ebx,%edi
4a4027:	eb 11                	jmp    0x4a403a
4a4029:	3d 01 06 00 80       	cmp    $0x80000601,%eax
4a402e:	75 66                	jne    0x4a4096
4a4030:	bb 05 00 00 00       	mov    $0x5,%ebx
4a4035:	bf 08 00 00 00       	mov    $0x8,%edi
4a403a:	8d 44 24 24          	lea    0x24(%esp),%eax
4a403e:	89 6c 24 24          	mov    %ebp,0x24(%esp)
4a4042:	50                   	push   %eax
4a4043:	6a 01                	push   $0x1
4a4045:	ff 15 10 32 4b 00    	call   *0x4b3210
4a404b:	85 c0                	test   %eax,%eax
4a404d:	7c 47                	jl     0x4a4096
4a404f:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4a4053:	89 79 04             	mov    %edi,0x4(%ecx)
4a4056:	8b 54 24 24          	mov    0x24(%esp),%edx
4a405a:	8b 44 24 10          	mov    0x10(%esp),%eax
4a405e:	89 42 10             	mov    %eax,0x10(%edx)
4a4061:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4a4065:	89 69 14             	mov    %ebp,0x14(%ecx)
4a4068:	8b 54 24 24          	mov    0x24(%esp),%edx
4a406c:	52                   	push   %edx
4a406d:	ff 15 0c 32 4b 00    	call   *0x4b320c
4a4073:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4a4077:	8d 44 24 14          	lea    0x14(%esp),%eax
4a407b:	50                   	push   %eax
4a407c:	51                   	push   %ecx
4a407d:	89 6c 24 1c          	mov    %ebp,0x1c(%esp)
4a4081:	ff 15 fc 31 4b 00    	call   *0x4b31fc
4a4087:	85 c0                	test   %eax,%eax
4a4089:	7d 15                	jge    0x4a40a0
4a408b:	8b 54 24 24          	mov    0x24(%esp),%edx
4a408f:	52                   	push   %edx
4a4090:	ff 15 c8 31 4b 00    	call   *0x4b31c8
4a4096:	5f                   	pop    %edi
4a4097:	5e                   	pop    %esi
4a4098:	5d                   	pop    %ebp
4a4099:	33 c0                	xor    %eax,%eax
4a409b:	5b                   	pop    %ebx
4a409c:	83 c4 0c             	add    $0xc,%esp
4a409f:	c3                   	ret
4a40a0:	83 fb 08             	cmp    $0x8,%ebx
4a40a3:	75 4f                	jne    0x4a40f4
4a40a5:	8b 44 24 10          	mov    0x10(%esp),%eax
4a40a9:	89 6c 24 18          	mov    %ebp,0x18(%esp)
4a40ad:	3b c5                	cmp    %ebp,%eax
4a40af:	0f 8e 86 00 00 00    	jle    0x4a413b
4a40b5:	8b 6c 24 14          	mov    0x14(%esp),%ebp
4a40b9:	8b fe                	mov    %esi,%edi
4a40bb:	8b 07                	mov    (%edi),%eax
4a40bd:	50                   	push   %eax
4a40be:	e8 3d fc ff ff       	call   0x4a3d00
4a40c3:	83 c4 04             	add    $0x4,%esp
4a40c6:	8b f0                	mov    %eax,%esi
4a40c8:	56                   	push   %esi
4a40c9:	ff 15 d0 31 4b 00    	call   *0x4b31d0
4a40cf:	56                   	push   %esi
4a40d0:	89 45 00             	mov    %eax,0x0(%ebp)
4a40d3:	e8 26 46 00 00       	call   0x4a86fe
4a40d8:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a40dc:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4a40e0:	83 c4 04             	add    $0x4,%esp
4a40e3:	40                   	inc    %eax
4a40e4:	83 c7 04             	add    $0x4,%edi
4a40e7:	83 c5 04             	add    $0x4,%ebp
4a40ea:	3b c1                	cmp    %ecx,%eax
4a40ec:	89 44 24 18          	mov    %eax,0x18(%esp)
4a40f0:	7c c9                	jl     0x4a40bb
4a40f2:	eb 47                	jmp    0x4a413b
4a40f4:	83 fb 0b             	cmp    $0xb,%ebx
4a40f7:	75 29                	jne    0x4a4122