4e2c46:	8b 44 24 30          	mov    0x30(%esp),%eax
4e2c4a:	8b d0                	mov    %eax,%edx
4e2c4c:	2b d1                	sub    %ecx,%edx
4e2c4e:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4e2c52:	85 c0                	test   %eax,%eax
4e2c54:	78 04                	js     0x4e2c5a
4e2c56:	85 d2                	test   %edx,%edx
4e2c58:	79 02                	jns    0x4e2c5c
4e2c5a:	33 d2                	xor    %edx,%edx
4e2c5c:	85 ff                	test   %edi,%edi
4e2c5e:	78 14                	js     0x4e2c74
4e2c60:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
4e2c65:	2b c2                	sub    %edx,%eax
4e2c67:	3b f8                	cmp    %eax,%edi
4e2c69:	7d 04                	jge    0x4e2c6f
4e2c6b:	03 fa                	add    %edx,%edi
4e2c6d:	eb 05                	jmp    0x4e2c74
4e2c6f:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
4e2c74:	8b 44 24 24          	mov    0x24(%esp),%eax
4e2c78:	8b da                	mov    %edx,%ebx
4e2c7a:	f7 db                	neg    %ebx
4e2c7c:	24 01                	and    $0x1,%al
4e2c7e:	0f 44 da             	cmove  %edx,%ebx
4e2c81:	85 db                	test   %ebx,%ebx
4e2c83:	7e 32                	jle    0x4e2cb7
4e2c85:	85 ff                	test   %edi,%edi
4e2c87:	78 04                	js     0x4e2c8d
4e2c89:	3b f7                	cmp    %edi,%esi
4e2c8b:	7d 26                	jge    0x4e2cb3
4e2c8d:	6a 20                	push   $0x20
4e2c8f:	ff 75 10             	push   0x10(%ebp)
4e2c92:	8d 44 24 30          	lea    0x30(%esp),%eax
4e2c96:	50                   	push   %eax
4e2c97:	ff 75 0c             	push   0xc(%ebp)
4e2c9a:	ff 75 08             	push   0x8(%ebp)
4e2c9d:	e8 5e 02 00 00       	call   0x4e2f00
4e2ca2:	83 c4 14             	add    $0x14,%esp
4e2ca5:	85 c0                	test   %eax,%eax
4e2ca7:	0f 84 ea fa ff ff    	je     0x4e2797
4e2cad:	4b                   	dec    %ebx
4e2cae:	46                   	inc    %esi
4e2caf:	85 db                	test   %ebx,%ebx
4e2cb1:	7f d2                	jg     0x4e2c85
4e2cb3:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
4e2cb7:	85 c9                	test   %ecx,%ecx
4e2cb9:	74 45                	je     0x4e2d00
4e2cbb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4e2cc0:	85 ff                	test   %edi,%edi
4e2cc2:	78 04                	js     0x4e2cc8
4e2cc4:	3b f7                	cmp    %edi,%esi
4e2cc6:	7d 38                	jge    0x4e2d00
4e2cc8:	8b 44 24 34          	mov    0x34(%esp),%eax
4e2ccc:	0f be 00             	movsbl (%eax),%eax
4e2ccf:	50                   	push   %eax
4e2cd0:	ff 75 10             	push   0x10(%ebp)
4e2cd3:	8d 44 24 30          	lea    0x30(%esp),%eax
4e2cd7:	50                   	push   %eax
4e2cd8:	ff 75 0c             	push   0xc(%ebp)
4e2cdb:	ff 75 08             	push   0x8(%ebp)
4e2cde:	e8 1d 02 00 00       	call   0x4e2f00
4e2ce3:	ff 44 24 48          	incl   0x48(%esp)
4e2ce7:	83 c4 14             	add    $0x14,%esp
4e2cea:	85 c0                	test   %eax,%eax
4e2cec:	0f 84 a5 fa ff ff    	je     0x4e2797
4e2cf2:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
4e2cf6:	46                   	inc    %esi
4e2cf7:	49                   	dec    %ecx
4e2cf8:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4e2cfc:	85 c9                	test   %ecx,%ecx
4e2cfe:	75 c0                	jne    0x4e2cc0
4e2d00:	85 db                	test   %ebx,%ebx
4e2d02:	79 2e                	jns    0x4e2d32
4e2d04:	85 ff                	test   %edi,%edi
4e2d06:	78 04                	js     0x4e2d0c
4e2d08:	3b f7                	cmp    %edi,%esi
4e2d0a:	7d 26                	jge    0x4e2d32
4e2d0c:	6a 20                	push   $0x20
4e2d0e:	ff 75 10             	push   0x10(%ebp)
4e2d11:	8d 44 24 30          	lea    0x30(%esp),%eax
4e2d15:	50                   	push   %eax
4e2d16:	ff 75 0c             	push   0xc(%ebp)
4e2d19:	ff 75 08             	push   0x8(%ebp)
4e2d1c:	e8 df 01 00 00       	call   0x4e2f00
4e2d21:	83 c4 14             	add    $0x14,%esp
4e2d24:	85 c0                	test   %eax,%eax
4e2d26:	0f 84 6b fa ff ff    	je     0x4e2797
4e2d2c:	46                   	inc    %esi
4e2d2d:	83 c3 01             	add    $0x1,%ebx
4e2d30:	78 d2                	js     0x4e2d04
4e2d32:	8b 75 0c             	mov    0xc(%ebp),%esi
4e2d35:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
4e2d38:	33 d2                	xor    %edx,%edx
4e2d3a:	8a 19                	mov    (%ecx),%bl
4e2d3c:	41                   	inc    %ecx
4e2d3d:	83 cf ff             	or     $0xffffffff,%edi
4e2d40:	e9 88 f9 ff ff       	jmp    0x4e26cd
4e2d45:	8b 55 20             	mov    0x20(%ebp),%edx
4e2d48:	8b 44 24 24          	mov    0x24(%esp),%eax
4e2d4c:	83 c2 04             	add    $0x4,%edx
4e2d4f:	83 c8 08             	or     $0x8,%eax
4e2d52:	89 55 20             	mov    %edx,0x20(%ebp)
4e2d55:	50                   	push   %eax
4e2d56:	57                   	push   %edi
4e2d57:	ff 74 24 38          	push   0x38(%esp)
4e2d5b:	6a 10                	push   $0x10
4e2d5d:	6a 00                	push   $0x0
4e2d5f:	ff 72 fc             	push   -0x4(%edx)
4e2d62:	e9 fb fc ff ff       	jmp    0x4e2a62
4e2d67:	8b 55 20             	mov    0x20(%ebp),%edx
4e2d6a:	8b 44 24 28          	mov    0x28(%esp),%eax
4e2d6e:	83 c2 04             	add    $0x4,%edx
4e2d71:	89 55 20             	mov    %edx,0x20(%ebp)
4e2d74:	8b 4a fc             	mov    -0x4(%edx),%ecx
4e2d77:	33 d2                	xor    %edx,%edx
4e2d79:	89 01                	mov    %eax,(%ecx)
4e2d7b:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
4e2d7e:	8a 19                	mov    (%ecx),%bl
4e2d80:	41                   	inc    %ecx
4e2d81:	83 cf ff             	or     $0xffffffff,%edi
4e2d84:	e9 44 f9 ff ff       	jmp    0x4e26cd
4e2d89:	52                   	push   %edx
4e2d8a:	e9 5d fe ff ff       	jmp    0x4e2bec
4e2d8f:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
4e2d92:	33 d2                	xor    %edx,%edx
4e2d94:	41                   	inc    %ecx
4e2d95:	8a 19                	mov    (%ecx),%bl
4e2d97:	41                   	inc    %ecx
4e2d98:	83 cf ff             	or     $0xffffffff,%edi
4e2d9b:	e9 2d f9 ff ff       	jmp    0x4e26cd
4e2da0:	8b 45 14             	mov    0x14(%ebp),%eax
4e2da3:	8b 4c 24 28          	mov    0x28(%esp),%ecx
4e2da7:	5f                   	pop    %edi
4e2da8:	49                   	dec    %ecx
4e2da9:	5e                   	pop    %esi
4e2daa:	89 08                	mov    %ecx,(%eax)
4e2dac:	b8 01 00 00 00       	mov    $0x1,%eax
4e2db1:	5b                   	pop    %ebx
4e2db2:	8b e5                	mov    %ebp,%esp
4e2db4:	5d                   	pop    %ebp
4e2db5:	c3                   	ret
4e2db6:	66 90                	xchg   %ax,%ax
4e2db8:	10 27                	adc    %ah,(%edi)
4e2dba:	4e                   	dec    %esi
4e2dbb:	00 a0 27 4e 00 22    	add    %ah,0x22004e27(%eax)
4e2dc1:	28 4e 00             	sub    %cl,0x0(%esi)
4e2dc4:	8e 28                	mov    (%eax),%gs
4e2dc6:	4e                   	dec    %esi
4e2dc7:	00 b4 28 4e 00 1c 29 	add    %dh,0x291c004e(%eax,%ebp,1)
4e2dce:	4e                   	dec    %esi
4e2dcf:	00 df                	add    %bl,%bh
4e2dd1:	29 4e 00             	sub    %ecx,0x0(%esi)
4e2dd4:	df 27                	fbld   (%edi)
4e2dd6:	4e                   	dec    %esi
4e2dd7:	00 f2                	add    %dh,%dl
4e2dd9:	27                   	daa
4e2dda:	4e                   	dec    %esi
4e2ddb:	00 cc                	add    %cl,%ah
4e2ddd:	27                   	daa
4e2dde:	4e                   	dec    %esi
4e2ddf:	00 b9 27 4e 00 05    	add    %bh,0x5004e27(%ecx)
4e2de5:	28 4e 00             	sub    %cl,0x0(%esi)
4e2de8:	18 28                	sbb    %ch,(%eax)
4e2dea:	4e                   	dec    %esi
4e2deb:	00 00                	add    %al,(%eax)
4e2ded:	05 05 01 05 05       	add    $0x5050105,%eax
4e2df2:	05 05 05 05 05       	add    $0x5050505,%eax
4e2df7:	02 05 03 05 05 04    	add    0x4050503,%al
4e2dfd:	0f 1f 00             	nopl   (%eax)
4e2e00:	a9 29 4e 00 39       	test   $0x39004e29,%eax
4e2e05:	29 4e 00             	sub    %ecx,0x0(%esi)
4e2e08:	8e 29                	mov    (%ecx),%gs
4e2e0a:	4e                   	dec    %esi
4e2e0b:	00 54 29 4e          	add    %dl,0x4e(%ecx,%ebp,1)
4e2e0f:	00 c4                	add    %al,%ah
4e2e11:	29 4e 00             	sub    %ecx,0x0(%esi)
4e2e14:	d5 29                	aad    $0x29
4e2e16:	4e                   	dec    %esi
4e2e17:	00 00                	add    %al,(%eax)
4e2e19:	05 05 05 05 05       	add    $0x5050505,%eax
4e2e1e:	05 05 05 05 05       	add    $0x5050505,%eax
4e2e23:	05 05 05 05 05       	add    $0x5050505,%eax
4e2e28:	05 05 05 05 05       	add    $0x5050505,%eax
4e2e2d:	05 05 05 05 05       	add    $0x5050505,%eax
4e2e32:	05 05 01 05 02       	add    $0x2050105,%eax
4e2e37:	05 03 05 05 05       	add    $0x5050503,%eax
4e2e3c:	05 02 05 05 05       	add    $0x5050502,%eax
4e2e41:	05 05 05 05 05       	add    $0x5050505,%eax
4e2e46:	04 90                	add    $0x90,%al
4e2e48:	89 2d 4e 00 82 2b    	mov    %ebp,0x2b82004e
4e2e4e:	4e                   	dec    %esi
4e2e4f:	00 b1 2b 4e 00 8c    	add    %dh,-0x73ffb1d5(%ecx)
4e2e55:	2a 4e 00             	sub    0x0(%esi),%cl
4e2e58:	e0 2b                	loopne 0x4e2e85
4e2e5a:	4e                   	dec    %esi
4e2e5b:	00 fc                	add    %bh,%ah
4e2e5d:	29 4e 00             	sub    %ecx,0x0(%esi)
4e2e60:	8b 2b                	mov    (%ebx),%ebp
4e2e62:	4e                   	dec    %esi
4e2e63:	00 45 2b             	add    %al,0x2b(%ebp)
4e2e66:	4e                   	dec    %esi
4e2e67:	00 ba 2b 4e 00 67    	add    %bh,0x67004e2b(%edx)
4e2e6d:	2d 4e 00 95 2a       	sub    $0x2a95004e,%eax
4e2e72:	4e                   	dec    %esi
4e2e73:	00 45 2d             	add    %al,0x2d(%ebp)
4e2e76:	4e                   	dec    %esi
4e2e77:	00 03                	add    %al,(%ebx)
4e2e79:	2c 4e                	sub    $0x4e,%al
4e2e7b:	00 8f 2d 4e 00 35    	add    %cl,0x35004e2d(%edi)
4e2e81:	2d 4e 00 00 0e       	sub    $0xe00004e,%eax
4e2e86:	0e                   	push   %cs
4e2e87:	0e                   	push   %cs
4e2e88:	0e                   	push   %cs
4e2e89:	0e                   	push   %cs
4e2e8a:	0e                   	push   %cs
4e2e8b:	0e                   	push   %cs
4e2e8c:	0e                   	push   %cs
4e2e8d:	0e                   	push   %cs
4e2e8e:	0e                   	push   %cs
4e2e8f:	0e                   	push   %cs
4e2e90:	0e                   	push   %cs
4e2e91:	0e                   	push   %cs
4e2e92:	0e                   	push   %cs
4e2e93:	0e                   	push   %cs
4e2e94:	0e                   	push   %cs
4e2e95:	0e                   	push   %cs
4e2e96:	0e                   	push   %cs
4e2e97:	0e                   	push   %cs
4e2e98:	0e                   	push   %cs
4e2e99:	0e                   	push   %cs
4e2e9a:	0e                   	push   %cs
4e2e9b:	0e                   	push   %cs
4e2e9c:	0e                   	push   %cs
4e2e9d:	0e                   	push   %cs
4e2e9e:	0e                   	push   %cs
4e2e9f:	0e                   	push   %cs
4e2ea0:	0e                   	push   %cs
4e2ea1:	0e                   	push   %cs
4e2ea2:	0e                   	push   %cs
4e2ea3:	0e                   	push   %cs
4e2ea4:	01 0e                	add    %ecx,(%esi)
4e2ea6:	02 0e                	add    (%esi),%cl
4e2ea8:	0e                   	push   %cs
4e2ea9:	0e                   	push   %cs
4e2eaa:	0e                   	push   %cs
4e2eab:	0e                   	push   %cs
4e2eac:	0e                   	push   %cs
4e2ead:	0e                   	push   %cs
4e2eae:	0e                   	push   %cs
4e2eaf:	0e                   	push   %cs
4e2eb0:	0e                   	push   %cs
4e2eb1:	0e                   	push   %cs
4e2eb2:	0e                   	push   %cs
4e2eb3:	0e                   	push   %cs
4e2eb4:	0e                   	push   %cs
4e2eb5:	0e                   	push   %cs
4e2eb6:	0e                   	push   %cs
4e2eb7:	03 0e                	add    (%esi),%ecx
4e2eb9:	0e                   	push   %cs
4e2eba:	0e                   	push   %cs
4e2ebb:	0e                   	push   %cs
4e2ebc:	0e                   	push   %cs
4e2ebd:	0e                   	push   %cs
4e2ebe:	0e                   	push   %cs
4e2ebf:	0e                   	push   %cs
4e2ec0:	0e                   	push   %cs
4e2ec1:	0e                   	push   %cs
4e2ec2:	04 05                	add    $0x5,%al
4e2ec4:	06                   	push   %es
4e2ec5:	07                   	pop    %es
4e2ec6:	08 0e                	or     %cl,(%esi)
4e2ec8:	05 0e 0e 0e 0e       	add    $0xe0e0e0e,%eax
4e2ecd:	09 0a                	or     %ecx,(%edx)
4e2ecf:	0b 0e                	or     (%esi),%ecx
4e2ed1:	0e                   	push   %cs
4e2ed2:	0c 0e                	or     $0xe,%al
4e2ed4:	0a 0e                	or     (%esi),%cl
4e2ed6:	0d 0a 0d 2a 4e       	or     $0x4e2a0d0a,%eax
4e2edb:	00 1f                	add    %bl,(%edi)
4e2edd:	2a 4e 00             	sub    0x0(%esi),%cl
4e2ee0:	41                   	inc    %ecx
4e2ee1:	2a 4e 00             	sub    0x0(%esi),%cl
4e2ee4:	30 2a                	xor    %ch,(%edx)
4e2ee6:	4e                   	dec    %esi
4e2ee7:	00 41 2a             	add    %al,0x2a(%ecx)
4e2eea:	4e                   	dec    %esi
4e2eeb:	00 b1 2a 4e 00 f1    	add    %dh,-0xeffb1d6(%ecx)
4e2ef1:	2a 4e 00             	sub    0x0(%esi),%cl
4e2ef4:	f1                   	int1
4e2ef5:	2a 4e 00             	sub    0x0(%esi),%cl
4e2ef8:	d1 2a                	shrl   $1,(%edx)
4e2efa:	4e                   	dec    %esi
4e2efb:	00 f1                	add    %dh,%cl
4e2efd:	2a 4e 00             	sub    0x0(%esi),%cl
4e2f00:	53                   	push   %ebx
4e2f01:	8b 5c 24 08          	mov    0x8(%esp),%ebx
4e2f05:	55                   	push   %ebp
4e2f06:	56                   	push   %esi
4e2f07:	57                   	push   %edi
4e2f08:	83 3b 00             	cmpl   $0x0,(%ebx)
4e2f0b:	8b 7c 24 18          	mov    0x18(%esp),%edi
4e2f0f:	75 04                	jne    0x4e2f15
4e2f11:	85 ff                	test   %edi,%edi
4e2f13:	74 6a                	je     0x4e2f7f
4e2f15:	8b 74 24 1c          	mov    0x1c(%esp),%esi
4e2f19:	8b 6c 24 20          	mov    0x20(%esp),%ebp
4e2f1d:	8b 0e                	mov    (%esi),%ecx
4e2f1f:	8b 45 00             	mov    0x0(%ebp),%eax
4e2f22:	3b c8                	cmp    %eax,%ecx
4e2f24:	77 59                	ja     0x4e2f7f
4e2f26:	85 ff                	test   %edi,%edi
4e2f28:	0f 84 91 00 00 00    	je     0x4e2fbf
4e2f2e:	3b c8                	cmp    %eax,%ecx
4e2f30:	0f 85 89 00 00 00    	jne    0x4e2fbf
4e2f36:	3d ff fb ff 7f       	cmp    $0x7ffffbff,%eax
4e2f3b:	77 42                	ja     0x4e2f7f
4e2f3d:	05 00 04 00 00       	add    $0x400,%eax
4e2f42:	89 45 00             	mov    %eax,0x0(%ebp)
4e2f45:	8b 0f                	mov    (%edi),%ecx
4e2f47:	85 c9                	test   %ecx,%ecx
4e2f49:	75 5a                	jne    0x4e2fa5
4e2f4b:	68 3a 03 00 00       	push   $0x33a
4e2f50:	68 58 3e 61 00       	push   $0x613e58
4e2f55:	50                   	push   %eax
4e2f56:	e8 f5 d7 ff ff       	call   0x4e0750
4e2f5b:	83 c4 0c             	add    $0xc,%esp
4e2f5e:	89 07                	mov    %eax,(%edi)
4e2f60:	85 c0                	test   %eax,%eax
4e2f62:	75 22                	jne    0x4e2f86
4e2f64:	68 3b 03 00 00       	push   $0x33b
4e2f69:	68 58 3e 61 00       	push   $0x613e58
4e2f6e:	6a 41                	push   $0x41
4e2f70:	68 96 00 00 00       	push   $0x96
4e2f75:	6a 20                	push   $0x20
4e2f77:	e8 04 60 ff ff       	call   0x4d8f80
4e2f7c:	83 c4 14             	add    $0x14,%esp
4e2f7f:	5f                   	pop    %edi
4e2f80:	5e                   	pop    %esi
4e2f81:	5d                   	pop    %ebp
4e2f82:	33 c0                	xor    %eax,%eax
4e2f84:	5b                   	pop    %ebx
4e2f85:	c3                   	ret
4e2f86:	8b 0e                	mov    (%esi),%ecx
4e2f88:	85 c9                	test   %ecx,%ecx
4e2f8a:	74 11                	je     0x4e2f9d
4e2f8c:	8b 13                	mov    (%ebx),%edx
4e2f8e:	85 d2                	test   %edx,%edx
4e2f90:	74 ed                	je     0x4e2f7f
4e2f92:	51                   	push   %ecx
4e2f93:	52                   	push   %edx
4e2f94:	50                   	push   %eax