4c5aa8:	83 c0 49             	add    $0x49,%eax
4c5aab:	c1 e8 06             	shr    $0x6,%eax
4c5aae:	03 c1                	add    %ecx,%eax
4c5ab0:	03 d8                	add    %eax,%ebx
4c5ab2:	3b f7                	cmp    %edi,%esi
4c5ab4:	75 da                	jne    0x4c5a90
4c5ab6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5ab9:	8b 50 24             	mov    0x24(%eax),%edx
4c5abc:	03 da                	add    %edx,%ebx
4c5abe:	8b 48 2c             	mov    0x2c(%eax),%ecx
4c5ac1:	85 c9                	test   %ecx,%ecx
4c5ac3:	74 07                	je     0x4c5acc
4c5ac5:	83 c1 04             	add    $0x4,%ecx
4c5ac8:	8b f1                	mov    %ecx,%esi
4c5aca:	eb 04                	jmp    0x4c5ad0
4c5acc:	33 c9                	xor    %ecx,%ecx
4c5ace:	33 f6                	xor    %esi,%esi
4c5ad0:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c5ad3:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c5ad6:	3b cf                	cmp    %edi,%ecx
4c5ad8:	74 1c                	je     0x4c5af6
4c5ada:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4c5ae0:	ff 36                	push   (%esi)
4c5ae2:	e8 a9 2e 00 00       	call   0x4c8990
4c5ae7:	83 c6 04             	add    $0x4,%esi
4c5aea:	83 c4 04             	add    $0x4,%esp
4c5aed:	03 d8                	add    %eax,%ebx
4c5aef:	3b f7                	cmp    %edi,%esi
4c5af1:	75 ed                	jne    0x4c5ae0
4c5af3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5af6:	8b 50 34             	mov    0x34(%eax),%edx
4c5af9:	03 da                	add    %edx,%ebx
4c5afb:	8b 48 3c             	mov    0x3c(%eax),%ecx
4c5afe:	85 c9                	test   %ecx,%ecx
4c5b00:	74 07                	je     0x4c5b09
4c5b02:	83 c1 04             	add    $0x4,%ecx
4c5b05:	8b f1                	mov    %ecx,%esi
4c5b07:	eb 04                	jmp    0x4c5b0d
4c5b09:	33 c9                	xor    %ecx,%ecx
4c5b0b:	33 f6                	xor    %esi,%esi
4c5b0d:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c5b10:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c5b13:	3b cf                	cmp    %edi,%ecx
4c5b15:	74 29                	je     0x4c5b40
4c5b17:	8b 0e                	mov    (%esi),%ecx
4c5b19:	e8 a2 4a ff ff       	call   0x4ba5c0
4c5b1e:	8b c8                	mov    %eax,%ecx
4c5b20:	83 c6 04             	add    $0x4,%esi
4c5b23:	83 c8 01             	or     $0x1,%eax
4c5b26:	0f bd c0             	bsr    %eax,%eax
4c5b29:	89 45 f0             	mov    %eax,-0x10(%ebp)
4c5b2c:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c5b2f:	83 c0 49             	add    $0x49,%eax
4c5b32:	c1 e8 06             	shr    $0x6,%eax
4c5b35:	03 c1                	add    %ecx,%eax
4c5b37:	03 d8                	add    %eax,%ebx
4c5b39:	3b f7                	cmp    %edi,%esi
4c5b3b:	75 da                	jne    0x4c5b17
4c5b3d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5b40:	8b 50 44             	mov    0x44(%eax),%edx
4c5b43:	03 da                	add    %edx,%ebx
4c5b45:	8b 48 4c             	mov    0x4c(%eax),%ecx
4c5b48:	85 c9                	test   %ecx,%ecx
4c5b4a:	74 07                	je     0x4c5b53
4c5b4c:	83 c1 04             	add    $0x4,%ecx
4c5b4f:	8b f1                	mov    %ecx,%esi
4c5b51:	eb 04                	jmp    0x4c5b57
4c5b53:	33 c9                	xor    %ecx,%ecx
4c5b55:	33 f6                	xor    %esi,%esi
4c5b57:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c5b5a:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c5b5d:	3b cf                	cmp    %edi,%ecx
4c5b5f:	74 29                	je     0x4c5b8a
4c5b61:	8b 0e                	mov    (%esi),%ecx
4c5b63:	e8 88 f2 ff ff       	call   0x4c4df0
4c5b68:	8b c8                	mov    %eax,%ecx
4c5b6a:	83 c6 04             	add    $0x4,%esi
4c5b6d:	83 c8 01             	or     $0x1,%eax
4c5b70:	0f bd c0             	bsr    %eax,%eax
4c5b73:	89 45 ec             	mov    %eax,-0x14(%ebp)
4c5b76:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c5b79:	83 c0 49             	add    $0x49,%eax
4c5b7c:	c1 e8 06             	shr    $0x6,%eax
4c5b7f:	03 c1                	add    %ecx,%eax
4c5b81:	03 d8                	add    %eax,%ebx
4c5b83:	3b f7                	cmp    %edi,%esi
4c5b85:	75 da                	jne    0x4c5b61
4c5b87:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5b8a:	8b 50 54             	mov    0x54(%eax),%edx
4c5b8d:	03 da                	add    %edx,%ebx
4c5b8f:	8b 48 5c             	mov    0x5c(%eax),%ecx
4c5b92:	85 c9                	test   %ecx,%ecx
4c5b94:	74 07                	je     0x4c5b9d
4c5b96:	83 c1 04             	add    $0x4,%ecx
4c5b99:	8b f1                	mov    %ecx,%esi
4c5b9b:	eb 04                	jmp    0x4c5ba1
4c5b9d:	33 c9                	xor    %ecx,%ecx
4c5b9f:	33 f6                	xor    %esi,%esi
4c5ba1:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c5ba4:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c5ba7:	3b cf                	cmp    %edi,%ecx
4c5ba9:	74 2e                	je     0x4c5bd9
4c5bab:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4c5bb0:	8b 0e                	mov    (%esi),%ecx
4c5bb2:	e8 19 31 ff ff       	call   0x4b8cd0
4c5bb7:	8b c8                	mov    %eax,%ecx
4c5bb9:	83 c6 04             	add    $0x4,%esi
4c5bbc:	83 c8 01             	or     $0x1,%eax
4c5bbf:	0f bd c0             	bsr    %eax,%eax
4c5bc2:	89 45 e8             	mov    %eax,-0x18(%ebp)
4c5bc5:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c5bc8:	83 c0 49             	add    $0x49,%eax
4c5bcb:	c1 e8 06             	shr    $0x6,%eax
4c5bce:	03 c1                	add    %ecx,%eax
4c5bd0:	03 d8                	add    %eax,%ebx
4c5bd2:	3b f7                	cmp    %edi,%esi
4c5bd4:	75 da                	jne    0x4c5bb0
4c5bd6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5bd9:	8b 50 64             	mov    0x64(%eax),%edx
4c5bdc:	03 da                	add    %edx,%ebx
4c5bde:	8b 48 6c             	mov    0x6c(%eax),%ecx
4c5be1:	85 c9                	test   %ecx,%ecx
4c5be3:	74 07                	je     0x4c5bec
4c5be5:	83 c1 04             	add    $0x4,%ecx
4c5be8:	8b f1                	mov    %ecx,%esi
4c5bea:	eb 04                	jmp    0x4c5bf0
4c5bec:	33 c9                	xor    %ecx,%ecx
4c5bee:	33 f6                	xor    %esi,%esi
4c5bf0:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c5bf3:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c5bf6:	3b cf                	cmp    %edi,%ecx
4c5bf8:	74 2f                	je     0x4c5c29
4c5bfa:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4c5c00:	8b 0e                	mov    (%esi),%ecx
4c5c02:	e8 d9 3c ff ff       	call   0x4b98e0
4c5c07:	8b c8                	mov    %eax,%ecx
4c5c09:	83 c6 04             	add    $0x4,%esi
4c5c0c:	83 c8 01             	or     $0x1,%eax
4c5c0f:	0f bd c0             	bsr    %eax,%eax
4c5c12:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c5c15:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c5c18:	83 c0 49             	add    $0x49,%eax
4c5c1b:	c1 e8 06             	shr    $0x6,%eax
4c5c1e:	03 c1                	add    %ecx,%eax
4c5c20:	03 d8                	add    %eax,%ebx
4c5c22:	3b f7                	cmp    %edi,%esi
4c5c24:	75 da                	jne    0x4c5c00
4c5c26:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5c29:	8b 50 74             	mov    0x74(%eax),%edx
4c5c2c:	03 da                	add    %edx,%ebx
4c5c2e:	8b 48 7c             	mov    0x7c(%eax),%ecx
4c5c31:	85 c9                	test   %ecx,%ecx
4c5c33:	74 07                	je     0x4c5c3c
4c5c35:	83 c1 04             	add    $0x4,%ecx
4c5c38:	8b f1                	mov    %ecx,%esi
4c5c3a:	eb 04                	jmp    0x4c5c40
4c5c3c:	33 c9                	xor    %ecx,%ecx
4c5c3e:	33 f6                	xor    %esi,%esi
4c5c40:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c5c43:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c5c46:	3b cf                	cmp    %edi,%ecx
4c5c48:	0f 84 a1 00 00 00    	je     0x4c5cef
4c5c4e:	66 90                	xchg   %ax,%ax
4c5c50:	8b 16                	mov    (%esi),%edx
4c5c52:	33 c9                	xor    %ecx,%ecx
4c5c54:	8b 42 08             	mov    0x8(%edx),%eax
4c5c57:	a8 03                	test   $0x3,%al
4c5c59:	74 52                	je     0x4c5cad
4c5c5b:	a8 01                	test   $0x1,%al
4c5c5d:	74 27                	je     0x4c5c86
4c5c5f:	8b 4a 10             	mov    0x10(%edx),%ecx
4c5c62:	85 c9                	test   %ecx,%ecx
4c5c64:	79 07                	jns    0x4c5c6d
4c5c66:	b9 0a 00 00 00       	mov    $0xa,%ecx
4c5c6b:	eb 18                	jmp    0x4c5c85
4c5c6d:	83 c9 01             	or     $0x1,%ecx
4c5c70:	0f bd c1             	bsr    %ecx,%eax
4c5c73:	89 45 e0             	mov    %eax,-0x20(%ebp)
4c5c76:	8d 0c c5 49 00 00 00 	lea    0x49(,%eax,8),%ecx
4c5c7d:	03 c8                	add    %eax,%ecx
4c5c7f:	8b 42 08             	mov    0x8(%edx),%eax
4c5c82:	c1 e9 06             	shr    $0x6,%ecx
4c5c85:	41                   	inc    %ecx
4c5c86:	a8 02                	test   $0x2,%al
4c5c88:	74 23                	je     0x4c5cad
4c5c8a:	8b 42 14             	mov    0x14(%edx),%eax
4c5c8d:	85 c0                	test   %eax,%eax
4c5c8f:	79 07                	jns    0x4c5c98
4c5c91:	b8 0a 00 00 00       	mov    $0xa,%eax
4c5c96:	eb 12                	jmp    0x4c5caa
4c5c98:	83 c8 01             	or     $0x1,%eax
4c5c9b:	0f bd c0             	bsr    %eax,%eax
4c5c9e:	89 45 dc             	mov    %eax,-0x24(%ebp)
4c5ca1:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c5ca4:	83 c0 49             	add    $0x49,%eax
4c5ca7:	c1 e8 06             	shr    $0x6,%eax
4c5caa:	41                   	inc    %ecx
4c5cab:	03 c8                	add    %eax,%ecx
4c5cad:	8d 42 04             	lea    0x4(%edx),%eax
4c5cb0:	83 c2 0c             	add    $0xc,%edx
4c5cb3:	f6 00 01             	testb  $0x1,(%eax)
4c5cb6:	74 0f                	je     0x4c5cc7
4c5cb8:	52                   	push   %edx
4c5cb9:	51                   	push   %ecx
4c5cba:	50                   	push   %eax
4c5cbb:	e8 f0 97 fa ff       	call   0x46f4b0
4c5cc0:	83 c4 0c             	add    $0xc,%esp
4c5cc3:	8b c8                	mov    %eax,%ecx
4c5cc5:	eb 02                	jmp    0x4c5cc9
4c5cc7:	89 0a                	mov    %ecx,(%edx)
4c5cc9:	8b c1                	mov    %ecx,%eax
4c5ccb:	83 c6 04             	add    $0x4,%esi
4c5cce:	83 c8 01             	or     $0x1,%eax
4c5cd1:	0f bd c0             	bsr    %eax,%eax
4c5cd4:	89 45 d8             	mov    %eax,-0x28(%ebp)
4c5cd7:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c5cda:	83 c0 49             	add    $0x49,%eax
4c5cdd:	c1 e8 06             	shr    $0x6,%eax
4c5ce0:	03 c1                	add    %ecx,%eax
4c5ce2:	03 d8                	add    %eax,%ebx
4c5ce4:	3b f7                	cmp    %edi,%esi
4c5ce6:	0f 85 64 ff ff ff    	jne    0x4c5c50
4c5cec:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5cef:	8d b8 80 00 00 00    	lea    0x80(%eax),%edi
4c5cf5:	8b cf                	mov    %edi,%ecx
4c5cf7:	e8 c4 82 f9 ff       	call   0x45dfc0
4c5cfc:	8b cf                	mov    %edi,%ecx
4c5cfe:	03 d8                	add    %eax,%ebx
4c5d00:	e8 bb 82 f9 ff       	call   0x45dfc0
4c5d05:	33 f6                	xor    %esi,%esi
4c5d07:	89 45 f8             	mov    %eax,-0x8(%ebp)
4c5d0a:	85 c0                	test   %eax,%eax
4c5d0c:	7e 2b                	jle    0x4c5d39
4c5d0e:	66 90                	xchg   %ax,%ax
4c5d10:	56                   	push   %esi
4c5d11:	8b cf                	mov    %edi,%ecx
4c5d13:	e8 c8 75 f9 ff       	call   0x45d2e0
4c5d18:	46                   	inc    %esi
4c5d19:	8b 48 10             	mov    0x10(%eax),%ecx
4c5d1c:	8b c1                	mov    %ecx,%eax
4c5d1e:	83 c8 01             	or     $0x1,%eax
4c5d21:	0f bd c0             	bsr    %eax,%eax
4c5d24:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4c5d27:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c5d2a:	83 c0 49             	add    $0x49,%eax
4c5d2d:	c1 e8 06             	shr    $0x6,%eax
4c5d30:	03 c1                	add    %ecx,%eax
4c5d32:	03 d8                	add    %eax,%ebx
4c5d34:	3b 75 f8             	cmp    -0x8(%ebp),%esi
4c5d37:	7c d7                	jl     0x4c5d10
4c5d39:	8b 75 fc             	mov    -0x4(%ebp),%esi
4c5d3c:	5f                   	pop    %edi
4c5d3d:	8b 56 08             	mov    0x8(%esi),%edx
4c5d40:	f6 c2 03             	test   $0x3,%dl
4c5d43:	74 40                	je     0x4c5d85
4c5d45:	f6 c2 01             	test   $0x1,%dl
4c5d48:	74 25                	je     0x4c5d6f
4c5d4a:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
4c5d50:	83 e0 fe             	and    $0xfffffffe,%eax
4c5d53:	8b 48 10             	mov    0x10(%eax),%ecx
4c5d56:	8b c1                	mov    %ecx,%eax
4c5d58:	83 c8 01             	or     $0x1,%eax
4c5d5b:	0f bd c0             	bsr    %eax,%eax
4c5d5e:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c5d61:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c5d64:	83 c0 49             	add    $0x49,%eax
4c5d67:	c1 e8 06             	shr    $0x6,%eax
4c5d6a:	40                   	inc    %eax
4c5d6b:	03 c1                	add    %ecx,%eax
4c5d6d:	03 d8                	add    %eax,%ebx
4c5d6f:	f6 c2 02             	test   $0x2,%dl
4c5d72:	74 11                	je     0x4c5d85
4c5d74:	ff b6 94 00 00 00    	push   0x94(%esi)
4c5d7a:	e8 41 2c 00 00       	call   0x4c89c0
4c5d7f:	43                   	inc    %ebx
4c5d80:	83 c4 04             	add    $0x4,%esp
4c5d83:	03 d8                	add    %eax,%ebx
4c5d85:	8d 46 04             	lea    0x4(%esi),%eax
4c5d88:	83 c6 0c             	add    $0xc,%esi
4c5d8b:	f6 00 01             	testb  $0x1,(%eax)
4c5d8e:	74 11                	je     0x4c5da1
4c5d90:	56                   	push   %esi
4c5d91:	53                   	push   %ebx
4c5d92:	50                   	push   %eax
4c5d93:	e8 18 97 fa ff       	call   0x46f4b0
4c5d98:	83 c4 0c             	add    $0xc,%esp
4c5d9b:	5e                   	pop    %esi
4c5d9c:	5b                   	pop    %ebx
4c5d9d:	8b e5                	mov    %ebp,%esp
4c5d9f:	5d                   	pop    %ebp
4c5da0:	c3                   	ret
4c5da1:	89 1e                	mov    %ebx,(%esi)
4c5da3:	8b c3                	mov    %ebx,%eax
4c5da5:	5e                   	pop    %esi
4c5da6:	5b                   	pop    %ebx
4c5da7:	8b e5                	mov    %ebp,%esp
4c5da9:	5d                   	pop    %ebp
4c5daa:	c3                   	ret
4c5dab:	cc                   	int3
4c5dac:	cc                   	int3
4c5dad:	cc                   	int3
4c5dae:	cc                   	int3
4c5daf:	cc                   	int3
4c5db0:	55                   	push   %ebp
4c5db1:	8b ec                	mov    %esp,%ebp
4c5db3:	83 ec 44             	sub    $0x44,%esp
4c5db6:	53                   	push   %ebx
4c5db7:	56                   	push   %esi
4c5db8:	8b 75 08             	mov    0x8(%ebp),%esi
4c5dbb:	57                   	push   %edi
4c5dbc:	8b 7d 0c             	mov    0xc(%ebp),%edi
4c5dbf:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c5dc2:	3b 37                	cmp    (%edi),%esi
4c5dc4:	72 2a                	jb     0x4c5df0
4c5dc6:	8b c6                	mov    %esi,%eax
4c5dc8:	2b 47 04             	sub    0x4(%edi),%eax
4c5dcb:	3b 47 10             	cmp    0x10(%edi),%eax
4c5dce:	0f 84 29 07 00 00    	je     0x4c64fd
4c5dd4:	ff 77 48             	push   0x48(%edi)
4c5dd7:	8b cf                	mov    %edi,%ecx
4c5dd9:	50                   	push   %eax
4c5dda:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4c5ddd:	50                   	push   %eax
4c5dde:	e8 4d 91 f9 ff       	call   0x45ef30
4c5de3:	80 7d e8 00          	cmpb   $0x0,-0x18(%ebp)
4c5de7:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4c5dea:	0f 85 af 00 00 00    	jne    0x4c5e9f
4c5df0:	0f b6 1e             	movzbl (%esi),%ebx
4c5df3:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
4c5df9:	73 03                	jae    0x4c5dfe
4c5dfb:	46                   	inc    %esi
4c5dfc:	eb 2f                	jmp    0x4c5e2d
4c5dfe:	0f b6 4e 01          	movzbl 0x1(%esi),%ecx
4c5e02:	83 c3 80             	add    $0xffffff80,%ebx
4c5e05:	8b c1                	mov    %ecx,%eax
4c5e07:	c1 e0 07             	shl    $0x7,%eax
4c5e0a:	03 d8                	add    %eax,%ebx
4c5e0c:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
4c5e12:	73 05                	jae    0x4c5e19
4c5e14:	83 c6 02             	add    $0x2,%esi
4c5e17:	eb 14                	jmp    0x4c5e2d
4c5e19:	53                   	push   %ebx
4c5e1a:	8d 45 dc             	lea    -0x24(%ebp),%eax
4c5e1d:	56                   	push   %esi
4c5e1e:	50                   	push   %eax
4c5e1f:	e8 bc 9b f9 ff       	call   0x45f9e0
4c5e24:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4c5e27:	83 c4 0c             	add    $0xc,%esp
4c5e2a:	8b 75 dc             	mov    -0x24(%ebp),%esi
4c5e2d:	85 f6                	test   %esi,%esi