4b4c32:	c3                   	ret
4b4c33:	8b 38                	mov    (%eax),%edi
4b4c35:	85 ff                	test   %edi,%edi
4b4c37:	75 11                	jne    0x4b4c4a
4b4c39:	e8 d2 e6 ff ff       	call   0x4b3310
4b4c3e:	8b f8                	mov    %eax,%edi
4b4c40:	85 ff                	test   %edi,%edi
4b4c42:	75 11                	jne    0x4b4c55
4b4c44:	5e                   	pop    %esi
4b4c45:	5f                   	pop    %edi
4b4c46:	5d                   	pop    %ebp
4b4c47:	5b                   	pop    %ebx
4b4c48:	59                   	pop    %ecx
4b4c49:	c3                   	ret
4b4c4a:	6a 00                	push   $0x0
4b4c4c:	57                   	push   %edi
4b4c4d:	e8 9e e8 ff ff       	call   0x4b34f0
4b4c52:	83 c4 08             	add    $0x8,%esp
4b4c55:	8d 04 b5 00 00 00 00 	lea    0x0(,%esi,4),%eax
4b4c5c:	3d e0 ff ff 7f       	cmp    $0x7fffffe0,%eax
4b4c61:	7f 97                	jg     0x4b4bfa
4b4c63:	83 c0 1f             	add    $0x1f,%eax
4b4c66:	99                   	cltd
4b4c67:	83 e2 1f             	and    $0x1f,%edx
4b4c6a:	03 c2                	add    %edx,%eax
4b4c6c:	c1 f8 05             	sar    $0x5,%eax
4b4c6f:	3b 47 08             	cmp    0x8(%edi),%eax
4b4c72:	7f 04                	jg     0x4b4c78
4b4c74:	8b c7                	mov    %edi,%eax
4b4c76:	eb 0a                	jmp    0x4b4c82
4b4c78:	50                   	push   %eax
4b4c79:	57                   	push   %edi
4b4c7a:	e8 21 ea ff ff       	call   0x4b36a0
4b4c7f:	83 c4 08             	add    $0x8,%esp
4b4c82:	85 c0                	test   %eax,%eax
4b4c84:	0f 84 70 ff ff ff    	je     0x4b4bfa
4b4c8a:	b8 39 8e e3 38       	mov    $0x38e38e39,%eax
4b4c8f:	f7 ee                	imul   %esi
4b4c91:	d1 fa                	sar    $1,%edx
4b4c93:	8b c2                	mov    %edx,%eax
4b4c95:	42                   	inc    %edx
4b4c96:	c1 e8 1f             	shr    $0x1f,%eax
4b4c99:	03 c2                	add    %edx,%eax
4b4c9b:	8d 14 c0             	lea    (%eax,%eax,8),%edx
4b4c9e:	33 c0                	xor    %eax,%eax
4b4ca0:	2b d6                	sub    %esi,%edx
4b4ca2:	83 fa 09             	cmp    $0x9,%edx
4b4ca5:	0f 44 d0             	cmove  %eax,%edx
4b4ca8:	33 ed                	xor    %ebp,%ebp
4b4caa:	83 ee 01             	sub    $0x1,%esi
4b4cad:	78 35                	js     0x4b4ce4
4b4caf:	90                   	nop
4b4cb0:	0f be 03             	movsbl (%ebx),%eax
4b4cb3:	8d 6c ad 00          	lea    0x0(%ebp,%ebp,4),%ebp
4b4cb7:	42                   	inc    %edx
4b4cb8:	8d 6d e8             	lea    -0x18(%ebp),%ebp
4b4cbb:	8d 5b 01             	lea    0x1(%ebx),%ebx
4b4cbe:	8d 2c 68             	lea    (%eax,%ebp,2),%ebp
4b4cc1:	83 fa 09             	cmp    $0x9,%edx
4b4cc4:	75 19                	jne    0x4b4cdf
4b4cc6:	68 00 ca 9a 3b       	push   $0x3b9aca00
4b4ccb:	57                   	push   %edi
4b4ccc:	e8 ef ec ff ff       	call   0x4b39c0
4b4cd1:	55                   	push   %ebp
4b4cd2:	57                   	push   %edi
4b4cd3:	e8 08 eb ff ff       	call   0x4b37e0
4b4cd8:	83 c4 10             	add    $0x10,%esp
4b4cdb:	33 ed                	xor    %ebp,%ebp
4b4cdd:	33 d2                	xor    %edx,%edx
4b4cdf:	83 ee 01             	sub    $0x1,%esi
4b4ce2:	79 cc                	jns    0x4b4cb0
4b4ce4:	8b 4f 04             	mov    0x4(%edi),%ecx
4b4ce7:	85 c9                	test   %ecx,%ecx
4b4ce9:	7e 19                	jle    0x4b4d04
4b4ceb:	8b 07                	mov    (%edi),%eax
4b4ced:	8d 51 ff             	lea    -0x1(%ecx),%edx
4b4cf0:	8d 14 90             	lea    (%eax,%edx,4),%edx
4b4cf3:	8b 02                	mov    (%edx),%eax
4b4cf5:	8d 52 fc             	lea    -0x4(%edx),%edx
4b4cf8:	85 c0                	test   %eax,%eax
4b4cfa:	75 05                	jne    0x4b4d01
4b4cfc:	49                   	dec    %ecx
4b4cfd:	85 c9                	test   %ecx,%ecx
4b4cff:	7f f2                	jg     0x4b4cf3
4b4d01:	89 4f 04             	mov    %ecx,0x4(%edi)
4b4d04:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
4b4d08:	75 07                	jne    0x4b4d11
4b4d0a:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
4b4d11:	8b 44 24 18          	mov    0x18(%esp),%eax
4b4d15:	89 38                	mov    %edi,(%eax)
4b4d17:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
4b4d1b:	74 07                	je     0x4b4d24
4b4d1d:	8b 44 24 10          	mov    0x10(%esp),%eax
4b4d21:	89 47 0c             	mov    %eax,0xc(%edi)
4b4d24:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4b4d28:	5e                   	pop    %esi
4b4d29:	5f                   	pop    %edi
4b4d2a:	5d                   	pop    %ebp
4b4d2b:	5b                   	pop    %ebx
4b4d2c:	59                   	pop    %ecx
4b4d2d:	c3                   	ret
4b4d2e:	5f                   	pop    %edi
4b4d2f:	5d                   	pop    %ebp
4b4d30:	33 c0                	xor    %eax,%eax
4b4d32:	5b                   	pop    %ebx
4b4d33:	59                   	pop    %ecx
4b4d34:	c3                   	ret
4b4d35:	cc                   	int3
4b4d36:	cc                   	int3
4b4d37:	cc                   	int3
4b4d38:	cc                   	int3
4b4d39:	cc                   	int3
4b4d3a:	cc                   	int3
4b4d3b:	cc                   	int3
4b4d3c:	cc                   	int3
4b4d3d:	cc                   	int3
4b4d3e:	cc                   	int3
4b4d3f:	cc                   	int3
4b4d40:	b8 0c 00 00 00       	mov    $0xc,%eax
4b4d45:	e8 a6 c7 12 00       	call   0x5e14f0
4b4d4a:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4b4d4e:	53                   	push   %ebx
4b4d4f:	57                   	push   %edi
4b4d50:	33 ff                	xor    %edi,%edi
4b4d52:	33 db                	xor    %ebx,%ebx
4b4d54:	89 7c 24 0c          	mov    %edi,0xc(%esp)
4b4d58:	85 c9                	test   %ecx,%ecx
4b4d5a:	0f 84 8b 01 00 00    	je     0x4b4eeb
4b4d60:	8a 01                	mov    (%ecx),%al
4b4d62:	84 c0                	test   %al,%al
4b4d64:	0f 84 81 01 00 00    	je     0x4b4eeb
4b4d6a:	3c 2d                	cmp    $0x2d,%al
4b4d6c:	75 0e                	jne    0x4b4d7c
4b4d6e:	bf 01 00 00 00       	mov    $0x1,%edi
4b4d73:	41                   	inc    %ecx
4b4d74:	89 7c 24 0c          	mov    %edi,0xc(%esp)
4b4d78:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
4b4d7c:	56                   	push   %esi
4b4d7d:	33 f6                	xor    %esi,%esi
4b4d7f:	90                   	nop
4b4d80:	0f b6 04 0e          	movzbl (%esi,%ecx,1),%eax
4b4d84:	50                   	push   %eax
4b4d85:	e8 bb 21 14 00       	call   0x5f6f45
4b4d8a:	83 c4 04             	add    $0x4,%esp
4b4d8d:	85 c0                	test   %eax,%eax
4b4d8f:	74 28                	je     0x4b4db9
4b4d91:	8b 4c 24 20          	mov    0x20(%esp),%ecx
4b4d95:	46                   	inc    %esi
4b4d96:	81 fe ff ff ff 1f    	cmp    $0x1fffffff,%esi
4b4d9c:	7e e2                	jle    0x4b4d80
4b4d9e:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4b4da2:	83 38 00             	cmpl   $0x0,(%eax)
4b4da5:	75 09                	jne    0x4b4db0
4b4da7:	53                   	push   %ebx
4b4da8:	e8 33 e4 ff ff       	call   0x4b31e0
4b4dad:	83 c4 04             	add    $0x4,%esp
4b4db0:	5e                   	pop    %esi
4b4db1:	5f                   	pop    %edi
4b4db2:	33 c0                	xor    %eax,%eax
4b4db4:	5b                   	pop    %ebx
4b4db5:	83 c4 0c             	add    $0xc,%esp
4b4db8:	c3                   	ret
4b4db9:	81 fe ff ff ff 1f    	cmp    $0x1fffffff,%esi
4b4dbf:	7f dd                	jg     0x4b4d9e
4b4dc1:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4b4dc5:	8d 0c 3e             	lea    (%esi,%edi,1),%ecx
4b4dc8:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4b4dcc:	85 c0                	test   %eax,%eax
4b4dce:	75 09                	jne    0x4b4dd9
4b4dd0:	5e                   	pop    %esi
4b4dd1:	5f                   	pop    %edi
4b4dd2:	8b c1                	mov    %ecx,%eax
4b4dd4:	5b                   	pop    %ebx
4b4dd5:	83 c4 0c             	add    $0xc,%esp
4b4dd8:	c3                   	ret
4b4dd9:	8b 18                	mov    (%eax),%ebx
4b4ddb:	89 5c 24 0c          	mov    %ebx,0xc(%esp)
4b4ddf:	85 db                	test   %ebx,%ebx
4b4de1:	75 16                	jne    0x4b4df9
4b4de3:	e8 28 e5 ff ff       	call   0x4b3310
4b4de8:	8b d8                	mov    %eax,%ebx
4b4dea:	89 44 24 0c          	mov    %eax,0xc(%esp)
4b4dee:	85 db                	test   %ebx,%ebx
4b4df0:	75 12                	jne    0x4b4e04
4b4df2:	5e                   	pop    %esi
4b4df3:	5f                   	pop    %edi
4b4df4:	5b                   	pop    %ebx
4b4df5:	83 c4 0c             	add    $0xc,%esp
4b4df8:	c3                   	ret
4b4df9:	6a 00                	push   $0x0
4b4dfb:	53                   	push   %ebx
4b4dfc:	e8 ef e6 ff ff       	call   0x4b34f0
4b4e01:	83 c4 08             	add    $0x8,%esp
4b4e04:	8d 04 b5 00 00 00 00 	lea    0x0(,%esi,4),%eax
4b4e0b:	3d e0 ff ff 7f       	cmp    $0x7fffffe0,%eax
4b4e10:	7f 8c                	jg     0x4b4d9e
4b4e12:	83 c0 1f             	add    $0x1f,%eax
4b4e15:	99                   	cltd
4b4e16:	83 e2 1f             	and    $0x1f,%edx
4b4e19:	03 c2                	add    %edx,%eax
4b4e1b:	c1 f8 05             	sar    $0x5,%eax
4b4e1e:	3b 43 08             	cmp    0x8(%ebx),%eax
4b4e21:	7f 04                	jg     0x4b4e27
4b4e23:	8b c3                	mov    %ebx,%eax
4b4e25:	eb 0a                	jmp    0x4b4e31
4b4e27:	50                   	push   %eax
4b4e28:	53                   	push   %ebx
4b4e29:	e8 72 e8 ff ff       	call   0x4b36a0
4b4e2e:	83 c4 08             	add    $0x8,%esp
4b4e31:	85 c0                	test   %eax,%eax
4b4e33:	0f 84 65 ff ff ff    	je     0x4b4d9e
4b4e39:	55                   	push   %ebp
4b4e3a:	33 ed                	xor    %ebp,%ebp
4b4e3c:	85 f6                	test   %esi,%esi
4b4e3e:	7e 63                	jle    0x4b4ea3
4b4e40:	b8 08 00 00 00       	mov    $0x8,%eax
4b4e45:	83 fe 08             	cmp    $0x8,%esi
4b4e48:	8b de                	mov    %esi,%ebx
4b4e4a:	8b fe                	mov    %esi,%edi
4b4e4c:	0f 4d d8             	cmovge %eax,%ebx
4b4e4f:	33 d2                	xor    %edx,%edx
4b4e51:	2b fb                	sub    %ebx,%edi
4b4e53:	03 7c 24 24          	add    0x24(%esp),%edi
4b4e57:	0f be 0f             	movsbl (%edi),%ecx
4b4e5a:	8d 41 d0             	lea    -0x30(%ecx),%eax
4b4e5d:	83 f8 09             	cmp    $0x9,%eax
4b4e60:	76 1c                	jbe    0x4b4e7e
4b4e62:	8d 41 9f             	lea    -0x61(%ecx),%eax
4b4e65:	83 f8 05             	cmp    $0x5,%eax
4b4e68:	77 05                	ja     0x4b4e6f
4b4e6a:	8d 41 a9             	lea    -0x57(%ecx),%eax
4b4e6d:	eb 0f                	jmp    0x4b4e7e
4b4e6f:	8d 41 bf             	lea    -0x41(%ecx),%eax
4b4e72:	83 f8 05             	cmp    $0x5,%eax
4b4e75:	77 05                	ja     0x4b4e7c
4b4e77:	8d 41 c9             	lea    -0x37(%ecx),%eax
4b4e7a:	eb 02                	jmp    0x4b4e7e
4b4e7c:	33 c0                	xor    %eax,%eax
4b4e7e:	c1 e2 04             	shl    $0x4,%edx
4b4e81:	4b                   	dec    %ebx
4b4e82:	0b d0                	or     %eax,%edx
4b4e84:	47                   	inc    %edi
4b4e85:	85 db                	test   %ebx,%ebx
4b4e87:	7f ce                	jg     0x4b4e57
4b4e89:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4b4e8d:	83 ee 08             	sub    $0x8,%esi
4b4e90:	8b 03                	mov    (%ebx),%eax
4b4e92:	89 14 a8             	mov    %edx,(%eax,%ebp,4)
4b4e95:	45                   	inc    %ebp
4b4e96:	b8 08 00 00 00       	mov    $0x8,%eax
4b4e9b:	85 f6                	test   %esi,%esi
4b4e9d:	7f a6                	jg     0x4b4e45
4b4e9f:	8b 7c 24 14          	mov    0x14(%esp),%edi
4b4ea3:	89 6b 04             	mov    %ebp,0x4(%ebx)
4b4ea6:	85 ed                	test   %ebp,%ebp
4b4ea8:	7e 19                	jle    0x4b4ec3
4b4eaa:	8b 03                	mov    (%ebx),%eax
4b4eac:	8d 4d ff             	lea    -0x1(%ebp),%ecx
4b4eaf:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
4b4eb2:	8b 01                	mov    (%ecx),%eax
4b4eb4:	8d 49 fc             	lea    -0x4(%ecx),%ecx
4b4eb7:	85 c0                	test   %eax,%eax
4b4eb9:	75 05                	jne    0x4b4ec0
4b4ebb:	4d                   	dec    %ebp
4b4ebc:	85 ed                	test   %ebp,%ebp
4b4ebe:	7f f2                	jg     0x4b4eb2
4b4ec0:	89 6b 04             	mov    %ebp,0x4(%ebx)
4b4ec3:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
4b4ec7:	5d                   	pop    %ebp
4b4ec8:	75 07                	jne    0x4b4ed1
4b4eca:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
4b4ed1:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4b4ed5:	89 18                	mov    %ebx,(%eax)
4b4ed7:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
4b4edb:	74 03                	je     0x4b4ee0
4b4edd:	89 7b 0c             	mov    %edi,0xc(%ebx)
4b4ee0:	8b 44 24 14          	mov    0x14(%esp),%eax
4b4ee4:	5e                   	pop    %esi
4b4ee5:	5f                   	pop    %edi
4b4ee6:	5b                   	pop    %ebx
4b4ee7:	83 c4 0c             	add    $0xc,%esp
4b4eea:	c3                   	ret
4b4eeb:	5f                   	pop    %edi
4b4eec:	33 c0                	xor    %eax,%eax
4b4eee:	5b                   	pop    %ebx
4b4eef:	83 c4 0c             	add    $0xc,%esp
4b4ef2:	c3                   	ret
4b4ef3:	cc                   	int3
4b4ef4:	cc                   	int3
4b4ef5:	cc                   	int3
4b4ef6:	cc                   	int3
4b4ef7:	cc                   	int3
4b4ef8:	cc                   	int3
4b4ef9:	cc                   	int3
4b4efa:	cc                   	int3
4b4efb:	cc                   	int3
4b4efc:	cc                   	int3
4b4efd:	cc                   	int3
4b4efe:	cc                   	int3
4b4eff:	cc                   	int3
4b4f00:	8b 44 24 08          	mov    0x8(%esp),%eax
4b4f04:	55                   	push   %ebp
4b4f05:	8b 6c 24 08          	mov    0x8(%esp),%ebp
4b4f09:	57                   	push   %edi
4b4f0a:	33 ff                	xor    %edi,%edi
4b4f0c:	39 78 0c             	cmp    %edi,0xc(%eax)
4b4f0f:	74 1e                	je     0x4b4f2f
4b4f11:	6a 01                	push   $0x1
4b4f13:	68 2c a8 6a 00       	push   $0x6aa82c
4b4f18:	55                   	push   %ebp
4b4f19:	e8 32 dc ff ff       	call   0x4b2b50
4b4f1e:	83 c4 0c             	add    $0xc,%esp
4b4f21:	83 f8 01             	cmp    $0x1,%eax
4b4f24:	74 05                	je     0x4b4f2b
4b4f26:	5f                   	pop    %edi
4b4f27:	33 c0                	xor    %eax,%eax
4b4f29:	5d                   	pop    %ebp
4b4f2a:	c3                   	ret
4b4f2b:	8b 44 24 10          	mov    0x10(%esp),%eax
4b4f2f:	39 78 04             	cmp    %edi,0x4(%eax)
4b4f32:	75 19                	jne    0x4b4f4d
4b4f34:	6a 01                	push   $0x1
4b4f36:	68 9c 9b 6a 00       	push   $0x6a9b9c
4b4f3b:	55                   	push   %ebp
4b4f3c:	e8 0f dc ff ff       	call   0x4b2b50
4b4f41:	83 c4 0c             	add    $0xc,%esp
4b4f44:	83 f8 01             	cmp    $0x1,%eax
4b4f47:	75 dd                	jne    0x4b4f26
4b4f49:	8b 44 24 10          	mov    0x10(%esp),%eax
4b4f4d:	53                   	push   %ebx
4b4f4e:	8b 58 04             	mov    0x4(%eax),%ebx
4b4f51:	83 eb 01             	sub    $0x1,%ebx
4b4f54:	56                   	push   %esi
4b4f55:	78 44                	js     0x4b4f9b
4b4f57:	be 1c 00 00 00       	mov    $0x1c,%esi
4b4f5c:	0f 1f 40 00          	nopl   0x0(%eax)
4b4f60:	8b 00                	mov    (%eax),%eax
4b4f62:	8b ce                	mov    %esi,%ecx
4b4f64:	8b 04 98             	mov    (%eax,%ebx,4),%eax
4b4f67:	d3 e8                	shr    %cl,%eax
4b4f69:	83 e0 0f             	and    $0xf,%eax
4b4f6c:	85 ff                	test   %edi,%edi
4b4f6e:	75 04                	jne    0x4b4f74
4b4f70:	85 c0                	test   %eax,%eax
4b4f72:	74 19                	je     0x4b4f8d
4b4f74:	6a 01                	push   $0x1
4b4f76:	8d 80 f4 a7 6a 00    	lea    0x6aa7f4(%eax),%eax
4b4f7c:	50                   	push   %eax
4b4f7d:	55                   	push   %ebp
4b4f7e:	e8 cd db ff ff       	call   0x4b2b50