4c3b1b:	e8 40 97 f9 ff       	call   0x45d260
4c3b20:	8d 4e 6c             	lea    0x6c(%esi),%ecx
4c3b23:	e8 38 97 f9 ff       	call   0x45d260
4c3b28:	8b 5e 08             	mov    0x8(%esi),%ebx
4c3b2b:	f6 c3 1f             	test   $0x1f,%bl
4c3b2e:	74 7a                	je     0x4c3baa
4c3b30:	f6 c3 01             	test   $0x1,%bl
4c3b33:	74 18                	je     0x4c3b4d
4c3b35:	8b 46 78             	mov    0x78(%esi),%eax
4c3b38:	83 e0 fe             	and    $0xfffffffe,%eax
4c3b3b:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
4c3b42:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
4c3b46:	72 02                	jb     0x4c3b4a
4c3b48:	8b 00                	mov    (%eax),%eax
4c3b4a:	c6 00 00             	movb   $0x0,(%eax)
4c3b4d:	f6 c3 02             	test   $0x2,%bl
4c3b50:	74 18                	je     0x4c3b6a
4c3b52:	8b 46 7c             	mov    0x7c(%esi),%eax
4c3b55:	83 e0 fe             	and    $0xfffffffe,%eax
4c3b58:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
4c3b5f:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
4c3b63:	72 02                	jb     0x4c3b67
4c3b65:	8b 00                	mov    (%eax),%eax
4c3b67:	c6 00 00             	movb   $0x0,(%eax)
4c3b6a:	f6 c3 04             	test   $0x4,%bl
4c3b6d:	74 1b                	je     0x4c3b8a
4c3b6f:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
4c3b75:	83 e0 fe             	and    $0xfffffffe,%eax
4c3b78:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
4c3b7f:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
4c3b83:	72 02                	jb     0x4c3b87
4c3b85:	8b 00                	mov    (%eax),%eax
4c3b87:	c6 00 00             	movb   $0x0,(%eax)
4c3b8a:	f6 c3 08             	test   $0x8,%bl
4c3b8d:	74 0b                	je     0x4c3b9a
4c3b8f:	8b 8e 84 00 00 00    	mov    0x84(%esi),%ecx
4c3b95:	e8 46 8e ff ff       	call   0x4bc9e0
4c3b9a:	f6 c3 10             	test   $0x10,%bl
4c3b9d:	74 0b                	je     0x4c3baa
4c3b9f:	8b 8e 88 00 00 00    	mov    0x88(%esi),%ecx
4c3ba5:	e8 46 e7 ff ff       	call   0x4c22f0
4c3baa:	5f                   	pop    %edi
4c3bab:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
4c3bb2:	8d 4e 04             	lea    0x4(%esi),%ecx
4c3bb5:	f6 01 01             	testb  $0x1,(%ecx)
4c3bb8:	5e                   	pop    %esi
4c3bb9:	5b                   	pop    %ebx
4c3bba:	74 05                	je     0x4c3bc1
4c3bbc:	e8 ef ca f8 ff       	call   0x4506b0
4c3bc1:	8b e5                	mov    %ebp,%esp
4c3bc3:	5d                   	pop    %ebp
4c3bc4:	c3                   	ret
4c3bc5:	cc                   	int3
4c3bc6:	cc                   	int3
4c3bc7:	cc                   	int3
4c3bc8:	cc                   	int3
4c3bc9:	cc                   	int3
4c3bca:	cc                   	int3
4c3bcb:	cc                   	int3
4c3bcc:	cc                   	int3
4c3bcd:	cc                   	int3
4c3bce:	cc                   	int3
4c3bcf:	cc                   	int3
4c3bd0:	55                   	push   %ebp
4c3bd1:	8b ec                	mov    %esp,%ebp
4c3bd3:	83 ec 08             	sub    $0x8,%esp
4c3bd6:	53                   	push   %ebx
4c3bd7:	8b d9                	mov    %ecx,%ebx
4c3bd9:	56                   	push   %esi
4c3bda:	57                   	push   %edi
4c3bdb:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4c3bde:	8d 43 20             	lea    0x20(%ebx),%eax
4c3be1:	50                   	push   %eax
4c3be2:	e8 f9 2d 00 00       	call   0x4c69e0
4c3be7:	83 c4 04             	add    $0x4,%esp
4c3bea:	84 c0                	test   %al,%al
4c3bec:	0f 84 ee 00 00 00    	je     0x4c3ce0
4c3bf2:	8d 43 30             	lea    0x30(%ebx),%eax
4c3bf5:	50                   	push   %eax
4c3bf6:	e8 35 2f 00 00       	call   0x4c6b30
4c3bfb:	83 c4 04             	add    $0x4,%esp
4c3bfe:	84 c0                	test   %al,%al
4c3c00:	0f 84 da 00 00 00    	je     0x4c3ce0
4c3c06:	8b 7b 44             	mov    0x44(%ebx),%edi
4c3c09:	83 ef 01             	sub    $0x1,%edi
4c3c0c:	89 7d fc             	mov    %edi,-0x4(%ebp)
4c3c0f:	0f 88 86 00 00 00    	js     0x4c3c9b
4c3c15:	8b 43 4c             	mov    0x4c(%ebx),%eax
4c3c18:	8b 5c b8 04          	mov    0x4(%eax,%edi,4),%ebx
4c3c1c:	8b 73 14             	mov    0x14(%ebx),%esi
4c3c1f:	83 ee 01             	sub    $0x1,%esi
4c3c22:	78 40                	js     0x4c3c64
4c3c24:	8b 43 1c             	mov    0x1c(%ebx),%eax
4c3c27:	8b 4c b0 04          	mov    0x4(%eax,%esi,4),%ecx
4c3c2b:	8b 41 08             	mov    0x8(%ecx),%eax
4c3c2e:	c1 e8 03             	shr    $0x3,%eax
4c3c31:	a8 01                	test   $0x1,%al
4c3c33:	74 27                	je     0x4c3c5c
4c3c35:	8b 79 1c             	mov    0x1c(%ecx),%edi
4c3c38:	8d 4f 08             	lea    0x8(%edi),%ecx
4c3c3b:	e8 d0 66 fe ff       	call   0x4aa310
4c3c40:	84 c0                	test   %al,%al
4c3c42:	0f 84 98 00 00 00    	je     0x4c3ce0
4c3c48:	8d 47 1c             	lea    0x1c(%edi),%eax
4c3c4b:	50                   	push   %eax
4c3c4c:	e8 3f 31 00 00       	call   0x4c6d90
4c3c51:	83 c4 04             	add    $0x4,%esp
4c3c54:	84 c0                	test   %al,%al
4c3c56:	0f 84 84 00 00 00    	je     0x4c3ce0
4c3c5c:	83 ee 01             	sub    $0x1,%esi
4c3c5f:	79 c3                	jns    0x4c3c24
4c3c61:	8b 7d fc             	mov    -0x4(%ebp),%edi
4c3c64:	8b 43 08             	mov    0x8(%ebx),%eax
4c3c67:	d1 e8                	shr    $1,%eax
4c3c69:	a8 01                	test   $0x1,%al
4c3c6b:	74 1f                	je     0x4c3c8c
4c3c6d:	8b 73 24             	mov    0x24(%ebx),%esi
4c3c70:	8d 4e 08             	lea    0x8(%esi),%ecx
4c3c73:	e8 98 66 fe ff       	call   0x4aa310
4c3c78:	84 c0                	test   %al,%al
4c3c7a:	74 64                	je     0x4c3ce0
4c3c7c:	8d 46 1c             	lea    0x1c(%esi),%eax
4c3c7f:	50                   	push   %eax
4c3c80:	e8 0b 31 00 00       	call   0x4c6d90
4c3c85:	83 c4 04             	add    $0x4,%esp
4c3c88:	84 c0                	test   %al,%al
4c3c8a:	74 54                	je     0x4c3ce0
4c3c8c:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4c3c8f:	83 ef 01             	sub    $0x1,%edi
4c3c92:	89 7d fc             	mov    %edi,-0x4(%ebp)
4c3c95:	0f 89 7a ff ff ff    	jns    0x4c3c15
4c3c9b:	8d 43 50             	lea    0x50(%ebx),%eax
4c3c9e:	50                   	push   %eax
4c3c9f:	e8 3c 2f 00 00       	call   0x4c6be0
4c3ca4:	83 c4 04             	add    $0x4,%esp
4c3ca7:	84 c0                	test   %al,%al
4c3ca9:	74 35                	je     0x4c3ce0
4c3cab:	8b 43 08             	mov    0x8(%ebx),%eax
4c3cae:	c1 e8 03             	shr    $0x3,%eax
4c3cb1:	a8 01                	test   $0x1,%al
4c3cb3:	74 22                	je     0x4c3cd7
4c3cb5:	8b b3 84 00 00 00    	mov    0x84(%ebx),%esi
4c3cbb:	8d 4e 08             	lea    0x8(%esi),%ecx
4c3cbe:	e8 4d 66 fe ff       	call   0x4aa310
4c3cc3:	84 c0                	test   %al,%al
4c3cc5:	74 19                	je     0x4c3ce0
4c3cc7:	8d 46 2c             	lea    0x2c(%esi),%eax
4c3cca:	50                   	push   %eax
4c3ccb:	e8 c0 30 00 00       	call   0x4c6d90
4c3cd0:	83 c4 04             	add    $0x4,%esp
4c3cd3:	84 c0                	test   %al,%al
4c3cd5:	74 09                	je     0x4c3ce0
4c3cd7:	5f                   	pop    %edi
4c3cd8:	5e                   	pop    %esi
4c3cd9:	b0 01                	mov    $0x1,%al
4c3cdb:	5b                   	pop    %ebx
4c3cdc:	8b e5                	mov    %ebp,%esp
4c3cde:	5d                   	pop    %ebp
4c3cdf:	c3                   	ret
4c3ce0:	5f                   	pop    %edi
4c3ce1:	5e                   	pop    %esi
4c3ce2:	32 c0                	xor    %al,%al
4c3ce4:	5b                   	pop    %ebx
4c3ce5:	8b e5                	mov    %ebp,%esp
4c3ce7:	5d                   	pop    %ebp
4c3ce8:	c3                   	ret
4c3ce9:	cc                   	int3
4c3cea:	cc                   	int3
4c3ceb:	cc                   	int3
4c3cec:	cc                   	int3
4c3ced:	cc                   	int3
4c3cee:	cc                   	int3
4c3cef:	cc                   	int3
4c3cf0:	55                   	push   %ebp
4c3cf1:	8b ec                	mov    %esp,%ebp
4c3cf3:	83 ec 38             	sub    $0x38,%esp
4c3cf6:	53                   	push   %ebx
4c3cf7:	56                   	push   %esi
4c3cf8:	57                   	push   %edi
4c3cf9:	8d 79 10             	lea    0x10(%ecx),%edi
4c3cfc:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c3cff:	8b cf                	mov    %edi,%ecx
4c3d01:	e8 ba a2 f9 ff       	call   0x45dfc0
4c3d06:	8b cf                	mov    %edi,%ecx
4c3d08:	8b d8                	mov    %eax,%ebx
4c3d0a:	e8 b1 a2 f9 ff       	call   0x45dfc0
4c3d0f:	33 f6                	xor    %esi,%esi
4c3d11:	89 45 f0             	mov    %eax,-0x10(%ebp)
4c3d14:	85 c0                	test   %eax,%eax
4c3d16:	7e 29                	jle    0x4c3d41
4c3d18:	56                   	push   %esi
4c3d19:	8b cf                	mov    %edi,%ecx
4c3d1b:	e8 c0 95 f9 ff       	call   0x45d2e0
4c3d20:	46                   	inc    %esi
4c3d21:	8b 48 10             	mov    0x10(%eax),%ecx
4c3d24:	8b c1                	mov    %ecx,%eax
4c3d26:	83 c8 01             	or     $0x1,%eax
4c3d29:	0f bd c0             	bsr    %eax,%eax
4c3d2c:	89 45 e8             	mov    %eax,-0x18(%ebp)
4c3d2f:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c3d32:	83 c0 49             	add    $0x49,%eax
4c3d35:	c1 e8 06             	shr    $0x6,%eax
4c3d38:	03 c1                	add    %ecx,%eax
4c3d3a:	03 d8                	add    %eax,%ebx
4c3d3c:	3b 75 f0             	cmp    -0x10(%ebp),%esi
4c3d3f:	7c d7                	jl     0x4c3d18
4c3d41:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c3d44:	8b 50 24             	mov    0x24(%eax),%edx
4c3d47:	03 da                	add    %edx,%ebx
4c3d49:	8b 48 2c             	mov    0x2c(%eax),%ecx
4c3d4c:	85 c9                	test   %ecx,%ecx
4c3d4e:	74 0a                	je     0x4c3d5a
4c3d50:	83 c1 04             	add    $0x4,%ecx
4c3d53:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4c3d56:	8b f1                	mov    %ecx,%esi
4c3d58:	eb 0b                	jmp    0x4c3d65
4c3d5a:	33 f6                	xor    %esi,%esi
4c3d5c:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
4c3d63:	33 c9                	xor    %ecx,%ecx
4c3d65:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c3d68:	39 7d f4             	cmp    %edi,-0xc(%ebp)
4c3d6b:	74 2c                	je     0x4c3d99
4c3d6d:	0f 1f 00             	nopl   (%eax)
4c3d70:	8b 0e                	mov    (%esi),%ecx
4c3d72:	e8 e9 1c 00 00       	call   0x4c5a60
4c3d77:	8b c8                	mov    %eax,%ecx
4c3d79:	83 c6 04             	add    $0x4,%esi
4c3d7c:	83 c9 01             	or     $0x1,%ecx
4c3d7f:	0f bd c9             	bsr    %ecx,%ecx
4c3d82:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4c3d85:	8d 0c c9             	lea    (%ecx,%ecx,8),%ecx
4c3d88:	83 c1 49             	add    $0x49,%ecx
4c3d8b:	c1 e9 06             	shr    $0x6,%ecx
4c3d8e:	03 c8                	add    %eax,%ecx
4c3d90:	03 d9                	add    %ecx,%ebx
4c3d92:	3b f7                	cmp    %edi,%esi
4c3d94:	75 da                	jne    0x4c3d70
4c3d96:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c3d99:	8b 50 34             	mov    0x34(%eax),%edx
4c3d9c:	03 da                	add    %edx,%ebx
4c3d9e:	8b 48 3c             	mov    0x3c(%eax),%ecx
4c3da1:	85 c9                	test   %ecx,%ecx
4c3da3:	74 0a                	je     0x4c3daf
4c3da5:	83 c1 04             	add    $0x4,%ecx
4c3da8:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4c3dab:	8b f1                	mov    %ecx,%esi
4c3dad:	eb 0b                	jmp    0x4c3dba
4c3daf:	33 f6                	xor    %esi,%esi
4c3db1:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
4c3db8:	33 c9                	xor    %ecx,%ecx
4c3dba:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c3dbd:	39 7d f4             	cmp    %edi,-0xc(%ebp)
4c3dc0:	74 29                	je     0x4c3deb
4c3dc2:	8b 0e                	mov    (%esi),%ecx
4c3dc4:	e8 f7 67 ff ff       	call   0x4ba5c0
4c3dc9:	8b c8                	mov    %eax,%ecx
4c3dcb:	83 c6 04             	add    $0x4,%esi
4c3dce:	83 c9 01             	or     $0x1,%ecx
4c3dd1:	0f bd c9             	bsr    %ecx,%ecx
4c3dd4:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4c3dd7:	8d 0c c9             	lea    (%ecx,%ecx,8),%ecx
4c3dda:	83 c1 49             	add    $0x49,%ecx
4c3ddd:	c1 e9 06             	shr    $0x6,%ecx
4c3de0:	03 c8                	add    %eax,%ecx
4c3de2:	03 d9                	add    %ecx,%ebx
4c3de4:	3b f7                	cmp    %edi,%esi
4c3de6:	75 da                	jne    0x4c3dc2
4c3de8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c3deb:	8b 50 44             	mov    0x44(%eax),%edx
4c3dee:	03 da                	add    %edx,%ebx
4c3df0:	8b 48 4c             	mov    0x4c(%eax),%ecx
4c3df3:	85 c9                	test   %ecx,%ecx
4c3df5:	74 0a                	je     0x4c3e01
4c3df7:	83 c1 04             	add    $0x4,%ecx
4c3dfa:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4c3dfd:	8b f1                	mov    %ecx,%esi
4c3dff:	eb 0b                	jmp    0x4c3e0c
4c3e01:	33 f6                	xor    %esi,%esi
4c3e03:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
4c3e0a:	33 c9                	xor    %ecx,%ecx
4c3e0c:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c3e0f:	39 7d f4             	cmp    %edi,-0xc(%ebp)
4c3e12:	74 29                	je     0x4c3e3d
4c3e14:	8b 0e                	mov    (%esi),%ecx
4c3e16:	e8 25 7b ff ff       	call   0x4bb940
4c3e1b:	8b c8                	mov    %eax,%ecx
4c3e1d:	83 c6 04             	add    $0x4,%esi
4c3e20:	83 c9 01             	or     $0x1,%ecx
4c3e23:	0f bd c9             	bsr    %ecx,%ecx
4c3e26:	89 4d dc             	mov    %ecx,-0x24(%ebp)
4c3e29:	8d 0c c9             	lea    (%ecx,%ecx,8),%ecx
4c3e2c:	83 c1 49             	add    $0x49,%ecx
4c3e2f:	c1 e9 06             	shr    $0x6,%ecx
4c3e32:	03 c8                	add    %eax,%ecx
4c3e34:	03 d9                	add    %ecx,%ebx
4c3e36:	3b f7                	cmp    %edi,%esi
4c3e38:	75 da                	jne    0x4c3e14
4c3e3a:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c3e3d:	8b 50 54             	mov    0x54(%eax),%edx
4c3e40:	03 da                	add    %edx,%ebx
4c3e42:	8b 48 5c             	mov    0x5c(%eax),%ecx
4c3e45:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4c3e48:	85 c9                	test   %ecx,%ecx
4c3e4a:	74 0a                	je     0x4c3e56
4c3e4c:	83 c1 04             	add    $0x4,%ecx
4c3e4f:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4c3e52:	8b f1                	mov    %ecx,%esi
4c3e54:	eb 0b                	jmp    0x4c3e61
4c3e56:	33 f6                	xor    %esi,%esi
4c3e58:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
4c3e5f:	33 c9                	xor    %ecx,%ecx
4c3e61:	8d 3c 91             	lea    (%ecx,%edx,4),%edi
4c3e64:	39 7d f4             	cmp    %edi,-0xc(%ebp)
4c3e67:	74 33                	je     0x4c3e9c
4c3e69:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
4c3e70:	8b 0e                	mov    (%esi),%ecx
4c3e72:	e8 59 4e ff ff       	call   0x4b8cd0
4c3e77:	8b c8                	mov    %eax,%ecx
4c3e79:	83 c6 04             	add    $0x4,%esi
4c3e7c:	83 c9 01             	or     $0x1,%ecx
4c3e7f:	0f bd c9             	bsr    %ecx,%ecx
4c3e82:	89 4d d8             	mov    %ecx,-0x28(%ebp)
4c3e85:	8d 0c c9             	lea    (%ecx,%ecx,8),%ecx
4c3e88:	83 c1 49             	add    $0x49,%ecx
4c3e8b:	c1 e9 06             	shr    $0x6,%ecx
4c3e8e:	03 c8                	add    %eax,%ecx
4c3e90:	03 d9                	add    %ecx,%ebx
4c3e92:	3b f7                	cmp    %edi,%esi
4c3e94:	75 da                	jne    0x4c3e70
4c3e96:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c3e99:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4c3e9c:	8d 70 60             	lea    0x60(%eax),%esi
4c3e9f:	56                   	push   %esi
4c3ea0:	e8 9b 71 fe ff       	call   0x4ab040
4c3ea5:	83 c4 04             	add    $0x4,%esp
4c3ea8:	89 45 f0             	mov    %eax,-0x10(%ebp)
4c3eab:	8b ce                	mov    %esi,%ecx
4c3ead:	e8 fe a0 f9 ff       	call   0x45dfb0
4c3eb2:	8b 75 f8             	mov    -0x8(%ebp),%esi
4c3eb5:	8b d8                	mov    %eax,%ebx
4c3eb7:	83 c6 6c             	add    $0x6c,%esi
4c3eba:	56                   	push   %esi
4c3ebb:	e8 80 71 fe ff       	call   0x4ab040
4c3ec0:	83 c4 04             	add    $0x4,%esp
4c3ec3:	8b ce                	mov    %esi,%ecx
4c3ec5:	8b f8                	mov    %eax,%edi
4c3ec7:	e8 e4 a0 f9 ff       	call   0x45dfb0
4c3ecc:	8b 75 f8             	mov    -0x8(%ebp),%esi
4c3ecf:	03 c3                	add    %ebx,%eax
4c3ed1:	8b 5d fc             	mov    -0x4(%ebp),%ebx