4e8b3b:	ff 74 24 24          	push   0x24(%esp)
4e8b3f:	ff 74 24 1c          	push   0x1c(%esp)
4e8b43:	ff 74 24 40          	push   0x40(%esp)
4e8b47:	57                   	push   %edi
4e8b48:	e8 43 87 f2 ff       	call   0x411290
4e8b4d:	8b 4c 24 30          	mov    0x30(%esp),%ecx
4e8b51:	8b 44 24 2c          	mov    0x2c(%esp),%eax
4e8b55:	2b c1                	sub    %ecx,%eax
4e8b57:	50                   	push   %eax
4e8b58:	8b 44 24 54          	mov    0x54(%esp),%eax
4e8b5c:	51                   	push   %ecx
4e8b5d:	ff 74 24 2c          	push   0x2c(%esp)
4e8b61:	03 c7                	add    %edi,%eax
4e8b63:	ff 74 24 58          	push   0x58(%esp)
4e8b67:	50                   	push   %eax
4e8b68:	e8 23 87 f2 ff       	call   0x411290
4e8b6d:	c7 44 24 4c 01 00 00 	movl   $0x1,0x4c(%esp)
4e8b74:	00
4e8b75:	eb 2f                	jmp    0x4e8ba6
4e8b77:	ff 74 24 28          	push   0x28(%esp)
4e8b7b:	ff 74 24 24          	push   0x24(%esp)
4e8b7f:	ff 74 24 1c          	push   0x1c(%esp)
4e8b83:	ff 74 24 40          	push   0x40(%esp)
4e8b87:	57                   	push   %edi
4e8b88:	e8 03 87 f2 ff       	call   0x411290
4e8b8d:	8b 44 24 50          	mov    0x50(%esp),%eax
4e8b91:	55                   	push   %ebp
4e8b92:	ff 74 24 34          	push   0x34(%esp)
4e8b96:	03 c7                	add    %edi,%eax
4e8b98:	ff 74 24 54          	push   0x54(%esp)
4e8b9c:	ff 74 24 30          	push   0x30(%esp)
4e8ba0:	50                   	push   %eax
4e8ba1:	e8 ea 86 f2 ff       	call   0x411290
4e8ba6:	83 c4 28             	add    $0x28,%esp
4e8ba9:	8b 74 24 40          	mov    0x40(%esp),%esi
4e8bad:	33 d2                	xor    %edx,%edx
4e8baf:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4e8bb3:	83 f9 04             	cmp    $0x4,%ecx
4e8bb6:	75 65                	jne    0x4e8c1d
4e8bb8:	85 f6                	test   %esi,%esi
4e8bba:	0f 85 bc 00 00 00    	jne    0x4e8c7c
4e8bc0:	85 ed                	test   %ebp,%ebp
4e8bc2:	0f 85 b4 00 00 00    	jne    0x4e8c7c
4e8bc8:	8d 34 9d 00 00 00 00 	lea    0x0(,%ebx,4),%esi
4e8bcf:	8d 0c 3e             	lea    (%esi,%edi,1),%ecx
4e8bd2:	85 d2                	test   %edx,%edx
4e8bd4:	75 13                	jne    0x4e8be9
4e8bd6:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4e8bda:	03 c7                	add    %edi,%eax
4e8bdc:	50                   	push   %eax
4e8bdd:	57                   	push   %edi
4e8bde:	51                   	push   %ecx
4e8bdf:	e8 ec 96 f2 ff       	call   0x4122d0
4e8be4:	83 c4 0c             	add    $0xc,%esp
4e8be7:	eb 0a                	jmp    0x4e8bf3
4e8be9:	0f 57 c0             	xorps  %xmm0,%xmm0
4e8bec:	0f 11 01             	movups %xmm0,(%ecx)
4e8bef:	0f 11 41 10          	movups %xmm0,0x10(%ecx)
4e8bf3:	ff 74 24 38          	push   0x38(%esp)
4e8bf7:	8b 6c 24 34          	mov    0x34(%esp),%ebp
4e8bfb:	ff 74 24 38          	push   0x38(%esp)
4e8bff:	55                   	push   %ebp
4e8c00:	e8 cb 96 f2 ff       	call   0x4122d0
4e8c05:	ff 74 24 1c          	push   0x1c(%esp)
4e8c09:	03 f5                	add    %ebp,%esi
4e8c0b:	ff 74 24 24          	push   0x24(%esp)
4e8c0f:	56                   	push   %esi
4e8c10:	e8 bb 96 f2 ff       	call   0x4122d0
4e8c15:	83 c4 18             	add    $0x18,%esp
4e8c18:	e9 dc 00 00 00       	jmp    0x4e8cf9
4e8c1d:	83 f9 08             	cmp    $0x8,%ecx
4e8c20:	75 5a                	jne    0x4e8c7c
4e8c22:	85 f6                	test   %esi,%esi
4e8c24:	75 56                	jne    0x4e8c7c
4e8c26:	85 ed                	test   %ebp,%ebp
4e8c28:	75 52                	jne    0x4e8c7c
4e8c2a:	8d 34 9d 00 00 00 00 	lea    0x0(,%ebx,4),%esi
4e8c31:	8d 0c 3e             	lea    (%esi,%edi,1),%ecx
4e8c34:	85 d2                	test   %edx,%edx
4e8c36:	75 10                	jne    0x4e8c48
4e8c38:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4e8c3c:	03 c7                	add    %edi,%eax
4e8c3e:	50                   	push   %eax
4e8c3f:	57                   	push   %edi
4e8c40:	51                   	push   %ecx
4e8c41:	e8 3a 92 f2 ff       	call   0x411e80
4e8c46:	eb 0a                	jmp    0x4e8c52
4e8c48:	6a 40                	push   $0x40
4e8c4a:	6a 00                	push   $0x0
4e8c4c:	51                   	push   %ecx
4e8c4d:	e8 1e a0 0e 00       	call   0x5d2c70
4e8c52:	8b 6c 24 3c          	mov    0x3c(%esp),%ebp
4e8c56:	83 c4 0c             	add    $0xc,%esp
4e8c59:	ff 74 24 38          	push   0x38(%esp)
4e8c5d:	ff 74 24 38          	push   0x38(%esp)
4e8c61:	55                   	push   %ebp
4e8c62:	e8 19 92 f2 ff       	call   0x411e80
4e8c67:	ff 74 24 1c          	push   0x1c(%esp)
4e8c6b:	03 f5                	add    %ebp,%esi
4e8c6d:	ff 74 24 24          	push   0x24(%esp)
4e8c71:	56                   	push   %esi
4e8c72:	e8 09 92 f2 ff       	call   0x411e80
4e8c77:	83 c4 18             	add    $0x18,%esp
4e8c7a:	eb 7d                	jmp    0x4e8cf9
4e8c7c:	8d 04 9d 00 00 00 00 	lea    0x0(,%ebx,4),%eax
4e8c83:	8d 2c df             	lea    (%edi,%ebx,8),%ebp
4e8c86:	8d 34 38             	lea    (%eax,%edi,1),%esi
4e8c89:	85 d2                	test   %edx,%edx
4e8c8b:	75 1a                	jne    0x4e8ca7
4e8c8d:	55                   	push   %ebp
4e8c8e:	52                   	push   %edx
4e8c8f:	52                   	push   %edx
4e8c90:	51                   	push   %ecx
4e8c91:	8d 04 8d 00 00 00 00 	lea    0x0(,%ecx,4),%eax
4e8c98:	03 c7                	add    %edi,%eax
4e8c9a:	50                   	push   %eax
4e8c9b:	57                   	push   %edi
4e8c9c:	56                   	push   %esi
4e8c9d:	e8 fe fc ff ff       	call   0x4e89a0
4e8ca2:	83 c4 1c             	add    $0x1c,%esp
4e8ca5:	eb 0c                	jmp    0x4e8cb3
4e8ca7:	50                   	push   %eax
4e8ca8:	6a 00                	push   $0x0
4e8caa:	56                   	push   %esi
4e8cab:	e8 c0 9f 0e 00       	call   0x5d2c70
4e8cb0:	83 c4 0c             	add    $0xc,%esp
4e8cb3:	55                   	push   %ebp
4e8cb4:	8b 6c 24 34          	mov    0x34(%esp),%ebp
4e8cb8:	6a 00                	push   $0x0
4e8cba:	6a 00                	push   $0x0
4e8cbc:	ff 74 24 24          	push   0x24(%esp)
4e8cc0:	ff 74 24 48          	push   0x48(%esp)
4e8cc4:	ff 74 24 48          	push   0x48(%esp)
4e8cc8:	55                   	push   %ebp
4e8cc9:	e8 d2 fc ff ff       	call   0x4e89a0
4e8cce:	8b 74 24 5c          	mov    0x5c(%esp),%esi
4e8cd2:	8d 04 df             	lea    (%edi,%ebx,8),%eax
4e8cd5:	50                   	push   %eax
4e8cd6:	ff 74 24 64          	push   0x64(%esp)
4e8cda:	56                   	push   %esi
4e8cdb:	ff 74 24 40          	push   0x40(%esp)
4e8cdf:	8d 34 9d 00 00 00 00 	lea    0x0(,%ebx,4),%esi
4e8ce6:	ff 74 24 3c          	push   0x3c(%esp)
4e8cea:	03 f5                	add    %ebp,%esi
4e8cec:	ff 74 24 44          	push   0x44(%esp)
4e8cf0:	56                   	push   %esi
4e8cf1:	e8 aa fc ff ff       	call   0x4e89a0
4e8cf6:	83 c4 38             	add    $0x38,%esp
4e8cf9:	53                   	push   %ebx
4e8cfa:	56                   	push   %esi
4e8cfb:	55                   	push   %ebp
4e8cfc:	57                   	push   %edi
4e8cfd:	e8 0e 82 f2 ff       	call   0x410f10
4e8d02:	83 c4 10             	add    $0x10,%esp
4e8d05:	8b f0                	mov    %eax,%esi
4e8d07:	83 7c 24 24 00       	cmpl   $0x0,0x24(%esp)
4e8d0c:	8d 04 9f             	lea    (%edi,%ebx,4),%eax
4e8d0f:	89 44 24 40          	mov    %eax,0x40(%esp)
4e8d13:	53                   	push   %ebx
4e8d14:	74 0f                	je     0x4e8d25
4e8d16:	50                   	push   %eax
4e8d17:	57                   	push   %edi
4e8d18:	50                   	push   %eax
4e8d19:	e8 b2 83 f2 ff       	call   0x4110d0
4e8d1e:	83 c4 10             	add    $0x10,%esp
4e8d21:	2b f0                	sub    %eax,%esi
4e8d23:	eb 0d                	jmp    0x4e8d32
4e8d25:	57                   	push   %edi
4e8d26:	50                   	push   %eax
4e8d27:	50                   	push   %eax
4e8d28:	e8 e3 81 f2 ff       	call   0x410f10
4e8d2d:	83 c4 10             	add    $0x10,%esp
4e8d30:	03 f0                	add    %eax,%esi
4e8d32:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4e8d36:	53                   	push   %ebx
4e8d37:	ff 74 24 44          	push   0x44(%esp)
4e8d3b:	03 c5                	add    %ebp,%eax
4e8d3d:	50                   	push   %eax
4e8d3e:	50                   	push   %eax
4e8d3f:	e8 cc 81 f2 ff       	call   0x410f10
4e8d44:	83 c4 10             	add    $0x10,%esp
4e8d47:	03 f0                	add    %eax,%esi
4e8d49:	74 23                	je     0x4e8d6e
4e8d4b:	8b 44 24 18          	mov    0x18(%esp),%eax
4e8d4f:	03 c3                	add    %ebx,%eax
4e8d51:	8d 0c 85 00 00 00 00 	lea    0x0(,%eax,4),%ecx
4e8d58:	8b 04 29             	mov    (%ecx,%ebp,1),%eax
4e8d5b:	03 cd                	add    %ebp,%ecx
4e8d5d:	03 c6                	add    %esi,%eax
4e8d5f:	89 01                	mov    %eax,(%ecx)
4e8d61:	3b c6                	cmp    %esi,%eax
4e8d63:	73 09                	jae    0x4e8d6e
4e8d65:	83 41 04 01          	addl   $0x1,0x4(%ecx)
4e8d69:	8d 49 04             	lea    0x4(%ecx),%ecx
4e8d6c:	74 f7                	je     0x4e8d65
4e8d6e:	5f                   	pop    %edi
4e8d6f:	5e                   	pop    %esi
4e8d70:	5d                   	pop    %ebp
4e8d71:	5b                   	pop    %ebx
4e8d72:	83 c4 1c             	add    $0x1c,%esp
4e8d75:	c3                   	ret
4e8d76:	66 90                	xchg   %ax,%ax
4e8d78:	ad                   	lods   %ds:(%esi),%eax
4e8d79:	8a 4e 00             	mov    0x0(%esi),%cl
4e8d7c:	ec                   	in     (%dx),%al
4e8d7d:	8a 4e 00             	mov    0x0(%esi),%cl
4e8d80:	fa                   	cli
4e8d81:	8a 4e 00             	mov    0x0(%esi),%cl
4e8d84:	ec                   	in     (%dx),%al
4e8d85:	8a 4e 00             	mov    0x0(%esi),%cl
4e8d88:	ec                   	in     (%dx),%al
4e8d89:	8a 4e 00             	mov    0x0(%esi),%cl
4e8d8c:	ec                   	in     (%dx),%al
4e8d8d:	8a 4e 00             	mov    0x0(%esi),%cl
4e8d90:	37                   	aaa
4e8d91:	8b 4e 00             	mov    0x0(%esi),%ecx
4e8d94:	ec                   	in     (%dx),%al
4e8d95:	8a 4e 00             	mov    0x0(%esi),%cl
4e8d98:	77 8b                	ja     0x4e8d25
4e8d9a:	4e                   	dec    %esi
4e8d9b:	00 cc                	add    %cl,%ah
4e8d9d:	cc                   	int3
4e8d9e:	cc                   	int3
4e8d9f:	cc                   	int3
4e8da0:	b8 18 00 00 00       	mov    $0x18,%eax
4e8da5:	e8 06 8a 0e 00       	call   0x5d17b0
4e8daa:	53                   	push   %ebx
4e8dab:	56                   	push   %esi
4e8dac:	57                   	push   %edi
4e8dad:	8b 7c 24 30          	mov    0x30(%esp),%edi
4e8db1:	be 01 00 00 00       	mov    $0x1,%esi
4e8db6:	33 db                	xor    %ebx,%ebx
4e8db8:	89 74 24 0c          	mov    %esi,0xc(%esp)
4e8dbc:	57                   	push   %edi
4e8dbd:	89 5c 24 20          	mov    %ebx,0x20(%esp)
4e8dc1:	e8 9a 0f ff ff       	call   0x4d9d60
4e8dc6:	83 c4 04             	add    $0x4,%esp
4e8dc9:	ff 74 24 2c          	push   0x2c(%esp)
4e8dcd:	85 c0                	test   %eax,%eax
4e8dcf:	75 0d                	jne    0x4e8dde
4e8dd1:	e8 8a 0f ff ff       	call   0x4d9d60
4e8dd6:	83 c4 04             	add    $0x4,%esp
4e8dd9:	85 c0                	test   %eax,%eax
4e8ddb:	74 1e                	je     0x4e8dfb
4e8ddd:	57                   	push   %edi
4e8dde:	8b 74 24 2c          	mov    0x2c(%esp),%esi
4e8de2:	56                   	push   %esi
4e8de3:	e8 f8 0c ff ff       	call   0x4d9ae0
4e8de8:	83 c4 08             	add    $0x8,%esp
4e8deb:	89 5e 0c             	mov    %ebx,0xc(%esi)
4e8dee:	f7 d8                	neg    %eax
4e8df0:	1b c0                	sbb    %eax,%eax
4e8df2:	5f                   	pop    %edi
4e8df3:	5e                   	pop    %esi
4e8df4:	f7 d8                	neg    %eax
4e8df6:	5b                   	pop    %ebx
4e8df7:	83 c4 18             	add    $0x18,%esp
4e8dfa:	c3                   	ret
4e8dfb:	55                   	push   %ebp
4e8dfc:	8b 6c 24 38          	mov    0x38(%esp),%ebp
4e8e00:	55                   	push   %ebp
4e8e01:	e8 0a f0 ff ff       	call   0x4e7e10
4e8e06:	55                   	push   %ebp
4e8e07:	e8 c4 ed ff ff       	call   0x4e7bd0
4e8e0c:	55                   	push   %ebp
4e8e0d:	89 44 24 24          	mov    %eax,0x24(%esp)
4e8e11:	e8 ba ed ff ff       	call   0x4e7bd0
4e8e16:	8b e8                	mov    %eax,%ebp
4e8e18:	83 c4 0c             	add    $0xc,%esp
4e8e1b:	85 ed                	test   %ebp,%ebp
4e8e1d:	0f 84 ef 01 00 00    	je     0x4e9012
4e8e23:	57                   	push   %edi
4e8e24:	55                   	push   %ebp
4e8e25:	e8 26 1d 00 00       	call   0x4eab50
4e8e2a:	83 c4 08             	add    $0x8,%esp
4e8e2d:	85 c0                	test   %eax,%eax
4e8e2f:	0f 84 dd 01 00 00    	je     0x4e9012
4e8e35:	ff 74 24 30          	push   0x30(%esp)
4e8e39:	8b 7c 24 30          	mov    0x30(%esp),%edi
4e8e3d:	57                   	push   %edi
4e8e3e:	e8 0d 1d 00 00       	call   0x4eab50
4e8e43:	83 c4 08             	add    $0x8,%esp
4e8e46:	85 c0                	test   %eax,%eax
4e8e48:	0f 84 c4 01 00 00    	je     0x4e9012
4e8e4e:	33 d2                	xor    %edx,%edx
4e8e50:	89 54 24 14          	mov    %edx,0x14(%esp)
4e8e54:	39 57 08             	cmp    %edx,0x8(%edi)
4e8e57:	7e 3f                	jle    0x4e8e98
4e8e59:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
4e8e60:	3b 55 08             	cmp    0x8(%ebp),%edx
4e8e63:	7d 33                	jge    0x4e8e98
4e8e65:	8b 07                	mov    (%edi),%eax
4e8e67:	8b 4d 00             	mov    0x0(%ebp),%ecx
4e8e6a:	8b 04 90             	mov    (%eax,%edx,4),%eax
4e8e6d:	0b 04 91             	or     (%ecx,%edx,4),%eax
4e8e70:	33 c9                	xor    %ecx,%ecx
4e8e72:	f7 d0                	not    %eax
4e8e74:	8d 51 10             	lea    0x10(%ecx),%edx
4e8e77:	23 f0                	and    %eax,%esi
4e8e79:	d1 e8                	shr    $1,%eax
4e8e7b:	03 de                	add    %esi,%ebx
4e8e7d:	23 f0                	and    %eax,%esi
4e8e7f:	03 ce                	add    %esi,%ecx
4e8e81:	d1 e8                	shr    $1,%eax
4e8e83:	83 ea 01             	sub    $0x1,%edx
4e8e86:	75 ef                	jne    0x4e8e77
4e8e88:	8b 54 24 14          	mov    0x14(%esp),%edx
4e8e8c:	03 d9                	add    %ecx,%ebx
4e8e8e:	42                   	inc    %edx
4e8e8f:	89 54 24 14          	mov    %edx,0x14(%esp)
4e8e93:	3b 57 08             	cmp    0x8(%edi),%edx
4e8e96:	7c c8                	jl     0x4e8e60
4e8e98:	53                   	push   %ebx
4e8e99:	57                   	push   %edi
4e8e9a:	57                   	push   %edi
4e8e9b:	e8 40 1d 00 00       	call   0x4eabe0
4e8ea0:	83 c4 0c             	add    $0xc,%esp
4e8ea3:	85 c0                	test   %eax,%eax
4e8ea5:	0f 84 67 01 00 00    	je     0x4e9012
4e8eab:	53                   	push   %ebx
4e8eac:	55                   	push   %ebp
4e8ead:	55                   	push   %ebp
4e8eae:	e8 2d 1d 00 00       	call   0x4eabe0
4e8eb3:	83 c4 0c             	add    $0xc,%esp
4e8eb6:	85 c0                	test   %eax,%eax
4e8eb8:	0f 84 54 01 00 00    	je     0x4e9012
4e8ebe:	8b 77 04             	mov    0x4(%edi),%esi
4e8ec1:	3b 75 04             	cmp    0x4(%ebp),%esi
4e8ec4:	0f 4c 75 04          	cmovl  0x4(%ebp),%esi
4e8ec8:	46                   	inc    %esi
4e8ec9:	56                   	push   %esi
4e8eca:	57                   	push   %edi
4e8ecb:	89 74 24 1c          	mov    %esi,0x1c(%esp)
4e8ecf:	e8 cc 16 ff ff       	call   0x4da5a0
4e8ed4:	83 c4 08             	add    $0x8,%esp
4e8ed7:	85 c0                	test   %eax,%eax
4e8ed9:	0f 84 33 01 00 00    	je     0x4e9012
4e8edf:	56                   	push   %esi
4e8ee0:	55                   	push   %ebp
4e8ee1:	e8 ba 16 ff ff       	call   0x4da5a0
4e8ee6:	83 c4 08             	add    $0x8,%esp
4e8ee9:	85 c0                	test   %eax,%eax
4e8eeb:	0f 84 21 01 00 00    	je     0x4e9012
4e8ef1:	56                   	push   %esi
4e8ef2:	ff 74 24 1c          	push   0x1c(%esp)
4e8ef6:	e8 a5 16 ff ff       	call   0x4da5a0
4e8efb:	83 c4 08             	add    $0x8,%esp
4e8efe:	85 c0                	test   %eax,%eax
4e8f00:	0f 84 0c 01 00 00    	je     0x4e9012
4e8f06:	8b 07                	mov    (%edi),%eax