5a9bfe:	cc                   	int3
5a9bff:	cc                   	int3
5a9c00:	b8 0c 00 00 00       	mov    $0xc,%eax
5a9c05:	e8 e6 78 03 00       	call   0x5e14f0
5a9c0a:	53                   	push   %ebx
5a9c0b:	56                   	push   %esi
5a9c0c:	8b 74 24 30          	mov    0x30(%esp),%esi
5a9c10:	56                   	push   %esi
5a9c11:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
5a9c18:	00
5a9c19:	e8 82 e2 f2 ff       	call   0x4d7ea0
5a9c1e:	56                   	push   %esi
5a9c1f:	e8 9c e1 f2 ff       	call   0x4d7dc0
5a9c24:	8b d8                	mov    %eax,%ebx
5a9c26:	56                   	push   %esi
5a9c27:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
5a9c2b:	e8 90 e1 f2 ff       	call   0x4d7dc0
5a9c30:	83 c4 0c             	add    $0xc,%esp
5a9c33:	89 44 24 08          	mov    %eax,0x8(%esp)
5a9c37:	85 c0                	test   %eax,%eax
5a9c39:	0f 84 cf 00 00 00    	je     0x5a9d0e
5a9c3f:	ff 74 24 1c          	push   0x1c(%esp)
5a9c43:	53                   	push   %ebx
5a9c44:	e8 87 94 f0 ff       	call   0x4b30d0
5a9c49:	83 c4 08             	add    $0x8,%esp
5a9c4c:	85 c0                	test   %eax,%eax
5a9c4e:	0f 84 ba 00 00 00    	je     0x5a9d0e
5a9c54:	55                   	push   %ebp
5a9c55:	8b 6c 24 24          	mov    0x24(%esp),%ebp
5a9c59:	57                   	push   %edi
5a9c5a:	8b 7c 24 20          	mov    0x20(%esp),%edi
5a9c5e:	56                   	push   %esi
5a9c5f:	ff 74 24 38          	push   0x38(%esp)
5a9c63:	8b 07                	mov    (%edi),%eax
5a9c65:	55                   	push   %ebp
5a9c66:	55                   	push   %ebp
5a9c67:	57                   	push   %edi
5a9c68:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a9c6e:	ff d0                	call   *%eax
5a9c70:	83 c4 14             	add    $0x14,%esp
5a9c73:	85 c0                	test   %eax,%eax
5a9c75:	0f 84 91 00 00 00    	je     0x5a9d0c
5a9c7b:	8b 07                	mov    (%edi),%eax
5a9c7d:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
5a9c81:	56                   	push   %esi
5a9c82:	ff 74 24 34          	push   0x34(%esp)
5a9c86:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a9c8c:	53                   	push   %ebx
5a9c8d:	53                   	push   %ebx
5a9c8e:	57                   	push   %edi
5a9c8f:	ff d0                	call   *%eax
5a9c91:	83 c4 14             	add    $0x14,%esp
5a9c94:	85 c0                	test   %eax,%eax
5a9c96:	74 74                	je     0x5a9d0c
5a9c98:	8b 07                	mov    (%edi),%eax
5a9c9a:	56                   	push   %esi
5a9c9b:	53                   	push   %ebx
5a9c9c:	55                   	push   %ebp
5a9c9d:	ff 74 24 1c          	push   0x1c(%esp)
5a9ca1:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a9ca7:	57                   	push   %edi
5a9ca8:	ff d0                	call   *%eax
5a9caa:	83 c4 14             	add    $0x14,%esp
5a9cad:	85 c0                	test   %eax,%eax
5a9caf:	74 5b                	je     0x5a9d0c
5a9cb1:	55                   	push   %ebp
5a9cb2:	53                   	push   %ebx
5a9cb3:	53                   	push   %ebx
5a9cb4:	e8 47 04 00 00       	call   0x5aa100
5a9cb9:	83 c4 0c             	add    $0xc,%esp
5a9cbc:	85 c0                	test   %eax,%eax
5a9cbe:	74 4c                	je     0x5a9d0c
5a9cc0:	8b 07                	mov    (%edi),%eax
5a9cc2:	56                   	push   %esi
5a9cc3:	53                   	push   %ebx
5a9cc4:	53                   	push   %ebx
5a9cc5:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5a9ccb:	57                   	push   %edi
5a9ccc:	ff d0                	call   *%eax
5a9cce:	83 c4 10             	add    $0x10,%esp
5a9cd1:	85 c0                	test   %eax,%eax
5a9cd3:	74 37                	je     0x5a9d0c
5a9cd5:	8b 07                	mov    (%edi),%eax
5a9cd7:	56                   	push   %esi
5a9cd8:	ff 74 24 1c          	push   0x1c(%esp)
5a9cdc:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a9ce2:	53                   	push   %ebx
5a9ce3:	55                   	push   %ebp
5a9ce4:	57                   	push   %edi
5a9ce5:	ff d0                	call   *%eax
5a9ce7:	83 c4 14             	add    $0x14,%esp
5a9cea:	85 c0                	test   %eax,%eax
5a9cec:	74 1e                	je     0x5a9d0c
5a9cee:	ff 74 24 10          	push   0x10(%esp)
5a9cf2:	55                   	push   %ebp
5a9cf3:	55                   	push   %ebp
5a9cf4:	e8 07 04 00 00       	call   0x5aa100
5a9cf9:	33 c9                	xor    %ecx,%ecx
5a9cfb:	83 c4 0c             	add    $0xc,%esp
5a9cfe:	85 c0                	test   %eax,%eax
5a9d00:	ba 01 00 00 00       	mov    $0x1,%edx
5a9d05:	0f 45 ca             	cmovne %edx,%ecx
5a9d08:	89 4c 24 14          	mov    %ecx,0x14(%esp)
5a9d0c:	5f                   	pop    %edi
5a9d0d:	5d                   	pop    %ebp
5a9d0e:	56                   	push   %esi
5a9d0f:	e8 3c e0 f2 ff       	call   0x4d7d50
5a9d14:	8b 44 24 10          	mov    0x10(%esp),%eax
5a9d18:	83 c4 04             	add    $0x4,%esp
5a9d1b:	5e                   	pop    %esi
5a9d1c:	5b                   	pop    %ebx
5a9d1d:	83 c4 0c             	add    $0xc,%esp
5a9d20:	c3                   	ret
5a9d21:	cc                   	int3
5a9d22:	cc                   	int3
5a9d23:	cc                   	int3
5a9d24:	cc                   	int3
5a9d25:	cc                   	int3
5a9d26:	cc                   	int3
5a9d27:	cc                   	int3
5a9d28:	cc                   	int3
5a9d29:	cc                   	int3
5a9d2a:	cc                   	int3
5a9d2b:	cc                   	int3
5a9d2c:	cc                   	int3
5a9d2d:	cc                   	int3
5a9d2e:	cc                   	int3
5a9d2f:	cc                   	int3
5a9d30:	b8 04 00 00 00       	mov    $0x4,%eax
5a9d35:	e8 b6 77 03 00       	call   0x5e14f0
5a9d3a:	53                   	push   %ebx
5a9d3b:	56                   	push   %esi
5a9d3c:	8b 74 24 1c          	mov    0x1c(%esp),%esi
5a9d40:	56                   	push   %esi
5a9d41:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
5a9d48:	00
5a9d49:	e8 52 e1 f2 ff       	call   0x4d7ea0
5a9d4e:	56                   	push   %esi
5a9d4f:	e8 6c e0 f2 ff       	call   0x4d7dc0
5a9d54:	8b d8                	mov    %eax,%ebx
5a9d56:	83 c4 08             	add    $0x8,%esp
5a9d59:	85 db                	test   %ebx,%ebx
5a9d5b:	0f 84 b7 00 00 00    	je     0x5a9e18
5a9d61:	55                   	push   %ebp
5a9d62:	8b 6c 24 18          	mov    0x18(%esp),%ebp
5a9d66:	57                   	push   %edi
5a9d67:	8b 7c 24 18          	mov    0x18(%esp),%edi
5a9d6b:	56                   	push   %esi
5a9d6c:	55                   	push   %ebp
5a9d6d:	55                   	push   %ebp
5a9d6e:	8b 07                	mov    (%edi),%eax
5a9d70:	57                   	push   %edi
5a9d71:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5a9d77:	ff d0                	call   *%eax
5a9d79:	83 c4 10             	add    $0x10,%esp
5a9d7c:	85 c0                	test   %eax,%eax
5a9d7e:	0f 84 92 00 00 00    	je     0x5a9e16
5a9d84:	8b 07                	mov    (%edi),%eax
5a9d86:	56                   	push   %esi
5a9d87:	ff 74 24 24          	push   0x24(%esp)
5a9d8b:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5a9d91:	53                   	push   %ebx
5a9d92:	57                   	push   %edi
5a9d93:	ff d0                	call   *%eax
5a9d95:	83 c4 10             	add    $0x10,%esp
5a9d98:	85 c0                	test   %eax,%eax
5a9d9a:	74 7a                	je     0x5a9e16
5a9d9c:	8b 07                	mov    (%edi),%eax
5a9d9e:	56                   	push   %esi
5a9d9f:	53                   	push   %ebx
5a9da0:	55                   	push   %ebp
5a9da1:	ff 74 24 2c          	push   0x2c(%esp)
5a9da5:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a9dab:	57                   	push   %edi
5a9dac:	ff d0                	call   *%eax
5a9dae:	83 c4 14             	add    $0x14,%esp
5a9db1:	85 c0                	test   %eax,%eax
5a9db3:	74 61                	je     0x5a9e16
5a9db5:	8b 07                	mov    (%edi),%eax
5a9db7:	56                   	push   %esi
5a9db8:	55                   	push   %ebp
5a9db9:	55                   	push   %ebp
5a9dba:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5a9dc0:	57                   	push   %edi
5a9dc1:	ff d0                	call   *%eax
5a9dc3:	83 c4 10             	add    $0x10,%esp
5a9dc6:	85 c0                	test   %eax,%eax
5a9dc8:	74 4c                	je     0x5a9e16
5a9dca:	8b 07                	mov    (%edi),%eax
5a9dcc:	56                   	push   %esi
5a9dcd:	53                   	push   %ebx
5a9dce:	53                   	push   %ebx
5a9dcf:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5a9dd5:	57                   	push   %edi
5a9dd6:	ff d0                	call   *%eax
5a9dd8:	83 c4 10             	add    $0x10,%esp
5a9ddb:	85 c0                	test   %eax,%eax
5a9ddd:	74 37                	je     0x5a9e16
5a9ddf:	8b 0f                	mov    (%edi),%ecx
5a9de1:	8d 87 88 00 00 00    	lea    0x88(%edi),%eax
5a9de7:	56                   	push   %esi
5a9de8:	53                   	push   %ebx
5a9de9:	50                   	push   %eax
5a9dea:	8b 81 84 00 00 00    	mov    0x84(%ecx),%eax
5a9df0:	53                   	push   %ebx
5a9df1:	57                   	push   %edi
5a9df2:	ff d0                	call   *%eax
5a9df4:	83 c4 14             	add    $0x14,%esp
5a9df7:	85 c0                	test   %eax,%eax
5a9df9:	74 1b                	je     0x5a9e16
5a9dfb:	53                   	push   %ebx
5a9dfc:	55                   	push   %ebp
5a9dfd:	55                   	push   %ebp
5a9dfe:	e8 fd 02 00 00       	call   0x5aa100
5a9e03:	33 c9                	xor    %ecx,%ecx
5a9e05:	83 c4 0c             	add    $0xc,%esp
5a9e08:	85 c0                	test   %eax,%eax
5a9e0a:	ba 01 00 00 00       	mov    $0x1,%edx
5a9e0f:	0f 45 ca             	cmovne %edx,%ecx
5a9e12:	89 4c 24 10          	mov    %ecx,0x10(%esp)
5a9e16:	5f                   	pop    %edi
5a9e17:	5d                   	pop    %ebp
5a9e18:	56                   	push   %esi
5a9e19:	e8 32 df f2 ff       	call   0x4d7d50
5a9e1e:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a9e22:	83 c4 04             	add    $0x4,%esp
5a9e25:	5e                   	pop    %esi
5a9e26:	5b                   	pop    %ebx
5a9e27:	59                   	pop    %ecx
5a9e28:	c3                   	ret
5a9e29:	cc                   	int3
5a9e2a:	cc                   	int3
5a9e2b:	cc                   	int3
5a9e2c:	cc                   	int3
5a9e2d:	cc                   	int3
5a9e2e:	cc                   	int3
5a9e2f:	cc                   	int3
5a9e30:	b8 0c 00 00 00       	mov    $0xc,%eax
5a9e35:	e8 b6 76 03 00       	call   0x5e14f0
5a9e3a:	55                   	push   %ebp
5a9e3b:	8b 6c 24 24          	mov    0x24(%esp),%ebp
5a9e3f:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
5a9e46:	00
5a9e47:	83 7d 04 00          	cmpl   $0x0,0x4(%ebp)
5a9e4b:	75 23                	jne    0x5a9e70
5a9e4d:	6a 00                	push   $0x0
5a9e4f:	ff 74 24 2c          	push   0x2c(%esp)
5a9e53:	e8 98 96 f0 ff       	call   0x4b34f0
5a9e58:	6a 00                	push   $0x0
5a9e5a:	ff 74 24 38          	push   0x38(%esp)
5a9e5e:	e8 8d 96 f0 ff       	call   0x4b34f0
5a9e63:	83 c4 10             	add    $0x10,%esp
5a9e66:	b8 01 00 00 00       	mov    $0x1,%eax
5a9e6b:	5d                   	pop    %ebp
5a9e6c:	83 c4 0c             	add    $0xc,%esp
5a9e6f:	c3                   	ret
5a9e70:	56                   	push   %esi
5a9e71:	57                   	push   %edi
5a9e72:	8b 7c 24 34          	mov    0x34(%esp),%edi
5a9e76:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
5a9e7a:	75 38                	jne    0x5a9eb4
5a9e7c:	8b 74 24 20          	mov    0x20(%esp),%esi
5a9e80:	56                   	push   %esi
5a9e81:	ff 74 24 34          	push   0x34(%esp)
5a9e85:	e8 46 92 f0 ff       	call   0x4b30d0
5a9e8a:	83 c4 08             	add    $0x8,%esp
5a9e8d:	85 c0                	test   %eax,%eax
5a9e8f:	75 07                	jne    0x5a9e98
5a9e91:	5f                   	pop    %edi
5a9e92:	5e                   	pop    %esi
5a9e93:	5d                   	pop    %ebp
5a9e94:	83 c4 0c             	add    $0xc,%esp
5a9e97:	c3                   	ret
5a9e98:	ff 74 24 24          	push   0x24(%esp)
5a9e9c:	56                   	push   %esi
5a9e9d:	57                   	push   %edi
5a9e9e:	e8 5d 02 00 00       	call   0x5aa100
5a9ea3:	83 c4 0c             	add    $0xc,%esp
5a9ea6:	f7 d8                	neg    %eax
5a9ea8:	1b c0                	sbb    %eax,%eax
5a9eaa:	83 e0 02             	and    $0x2,%eax
5a9ead:	5f                   	pop    %edi
5a9eae:	5e                   	pop    %esi
5a9eaf:	5d                   	pop    %ebp
5a9eb0:	83 c4 0c             	add    $0xc,%esp
5a9eb3:	c3                   	ret
5a9eb4:	53                   	push   %ebx
5a9eb5:	8b 5c 24 3c          	mov    0x3c(%esp),%ebx
5a9eb9:	53                   	push   %ebx
5a9eba:	e8 e1 df f2 ff       	call   0x4d7ea0
5a9ebf:	53                   	push   %ebx
5a9ec0:	e8 fb de f2 ff       	call   0x4d7dc0
5a9ec5:	53                   	push   %ebx
5a9ec6:	89 44 24 3c          	mov    %eax,0x3c(%esp)
5a9eca:	e8 f1 de f2 ff       	call   0x4d7dc0
5a9ecf:	53                   	push   %ebx
5a9ed0:	89 44 24 24          	mov    %eax,0x24(%esp)
5a9ed4:	e8 e7 de f2 ff       	call   0x4d7dc0
5a9ed9:	83 c4 10             	add    $0x10,%esp
5a9edc:	89 44 24 18          	mov    %eax,0x18(%esp)
5a9ee0:	85 c0                	test   %eax,%eax
5a9ee2:	0f 84 fb 01 00 00    	je     0x5aa0e3
5a9ee8:	6a 01                	push   $0x1
5a9eea:	50                   	push   %eax
5a9eeb:	e8 00 96 f0 ff       	call   0x4b34f0
5a9ef0:	83 c4 08             	add    $0x8,%esp
5a9ef3:	85 c0                	test   %eax,%eax
5a9ef5:	0f 84 e8 01 00 00    	je     0x5aa0e3
5a9efb:	8b 74 24 20          	mov    0x20(%esp),%esi
5a9eff:	53                   	push   %ebx
5a9f00:	57                   	push   %edi
5a9f01:	55                   	push   %ebp
5a9f02:	8b 06                	mov    (%esi),%eax
5a9f04:	ff 74 24 3c          	push   0x3c(%esp)
5a9f08:	56                   	push   %esi
5a9f09:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a9f0f:	ff d0                	call   *%eax
5a9f11:	83 c4 14             	add    $0x14,%esp
5a9f14:	85 c0                	test   %eax,%eax
5a9f16:	0f 84 c7 01 00 00    	je     0x5aa0e3
5a9f1c:	8b 06                	mov    (%esi),%eax
5a9f1e:	53                   	push   %ebx
5a9f1f:	ff 74 24 28          	push   0x28(%esp)
5a9f23:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a9f29:	55                   	push   %ebp
5a9f2a:	55                   	push   %ebp
5a9f2b:	56                   	push   %esi
5a9f2c:	ff d0                	call   *%eax
5a9f2e:	83 c4 14             	add    $0x14,%esp
5a9f31:	85 c0                	test   %eax,%eax
5a9f33:	0f 84 aa 01 00 00    	je     0x5aa0e3
5a9f39:	ff 74 24 2c          	push   0x2c(%esp)
5a9f3d:	55                   	push   %ebp
5a9f3e:	55                   	push   %ebp
5a9f3f:	e8 bc 01 00 00       	call   0x5aa100
5a9f44:	83 c4 0c             	add    $0xc,%esp
5a9f47:	85 c0                	test   %eax,%eax
5a9f49:	0f 84 94 01 00 00    	je     0x5aa0e3
5a9f4f:	8b 06                	mov    (%esi),%eax
5a9f51:	53                   	push   %ebx
5a9f52:	ff 74 24 28          	push   0x28(%esp)
5a9f56:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a9f5c:	57                   	push   %edi
5a9f5d:	57                   	push   %edi
5a9f5e:	56                   	push   %esi
5a9f5f:	ff d0                	call   *%eax
5a9f61:	83 c4 14             	add    $0x14,%esp
5a9f64:	85 c0                	test   %eax,%eax
5a9f66:	0f 84 77 01 00 00    	je     0x5aa0e3
5a9f6c:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx