520a97:	50                   	push   %eax
520a98:	8d 44 24 1c          	lea    0x1c(%esp),%eax
520a9c:	50                   	push   %eax
520a9d:	53                   	push   %ebx
520a9e:	e8 dd a0 ff ff       	call   0x51ab80
520aa3:	83 c4 0c             	add    $0xc,%esp
520aa6:	53                   	push   %ebx
520aa7:	8b f0                	mov    %eax,%esi
520aa9:	e8 42 a6 ff ff       	call   0x51b0f0
520aae:	83 c4 04             	add    $0x4,%esp
520ab1:	85 ed                	test   %ebp,%ebp
520ab3:	75 23                	jne    0x520ad8
520ab5:	8b 5c 24 14          	mov    0x14(%esp),%ebx
520ab9:	85 f6                	test   %esi,%esi
520abb:	74 1b                	je     0x520ad8
520abd:	ff 74 24 10          	push   0x10(%esp)
520ac1:	8d 44 24 1c          	lea    0x1c(%esp),%eax
520ac5:	50                   	push   %eax
520ac6:	ff 74 24 70          	push   0x70(%esp)
520aca:	53                   	push   %ebx
520acb:	ff 77 10             	push   0x10(%edi)
520ace:	e8 2d a1 03 00       	call   0x55ac00
520ad3:	83 c4 14             	add    $0x14,%esp
520ad6:	8b f0                	mov    %eax,%esi
520ad8:	8b 4c 24 58          	mov    0x58(%esp),%ecx
520adc:	8b c6                	mov    %esi,%eax
520ade:	5e                   	pop    %esi
520adf:	5d                   	pop    %ebp
520ae0:	5f                   	pop    %edi
520ae1:	5b                   	pop    %ebx
520ae2:	33 cc                	xor    %esp,%ecx
520ae4:	e8 3d 0f 0b 00       	call   0x5d1a26
520ae9:	83 c4 4c             	add    $0x4c,%esp
520aec:	c3                   	ret
520aed:	cc                   	int3
520aee:	cc                   	int3
520aef:	cc                   	int3
520af0:	b8 4c 00 00 00       	mov    $0x4c,%eax
520af5:	e8 b6 0c 0b 00       	call   0x5d17b0
520afa:	a1 c0 14 69 00       	mov    0x6914c0,%eax
520aff:	33 c4                	xor    %esp,%eax
520b01:	89 44 24 48          	mov    %eax,0x48(%esp)
520b05:	53                   	push   %ebx
520b06:	8b 5c 24 54          	mov    0x54(%esp),%ebx
520b0a:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
520b11:	00
520b12:	55                   	push   %ebp
520b13:	56                   	push   %esi
520b14:	f7 43 08 00 02 00 00 	testl  $0x200,0x8(%ebx)
520b1b:	8b 4b 10             	mov    0x10(%ebx),%ecx
520b1e:	8b 74 24 60          	mov    0x60(%esp),%esi
520b22:	57                   	push   %edi
520b23:	89 74 24 14          	mov    %esi,0x14(%esp)
520b27:	8b 01                	mov    (%ecx),%eax
520b29:	8b 68 48             	mov    0x48(%eax),%ebp
520b2c:	74 3e                	je     0x520b6c
520b2e:	85 ed                	test   %ebp,%ebp
520b30:	74 23                	je     0x520b55
520b32:	53                   	push   %ebx
520b33:	ff 74 24 6c          	push   0x6c(%esp)
520b37:	56                   	push   %esi
520b38:	51                   	push   %ecx
520b39:	ff d5                	call   *%ebp
520b3b:	83 c4 10             	add    $0x10,%esp
520b3e:	8b f8                	mov    %eax,%edi
520b40:	8b c7                	mov    %edi,%eax
520b42:	5f                   	pop    %edi
520b43:	5e                   	pop    %esi
520b44:	5d                   	pop    %ebp
520b45:	5b                   	pop    %ebx
520b46:	8b 4c 24 48          	mov    0x48(%esp),%ecx
520b4a:	33 cc                	xor    %esp,%ecx
520b4c:	e8 d5 0e 0b 00       	call   0x5d1a26
520b51:	83 c4 4c             	add    $0x4c,%esp
520b54:	c3                   	ret
520b55:	8d 44 24 10          	lea    0x10(%esp),%eax
520b59:	50                   	push   %eax
520b5a:	8d 44 24 1c          	lea    0x1c(%esp),%eax
520b5e:	50                   	push   %eax
520b5f:	53                   	push   %ebx
520b60:	e8 1b a0 ff ff       	call   0x51ab80
520b65:	83 c4 0c             	add    $0xc,%esp
520b68:	8b f8                	mov    %eax,%edi
520b6a:	eb 7f                	jmp    0x520beb
520b6c:	e8 9f a5 ff ff       	call   0x51b110
520b71:	8b f0                	mov    %eax,%esi
520b73:	85 f6                	test   %esi,%esi
520b75:	74 17                	je     0x520b8e
520b77:	53                   	push   %ebx
520b78:	56                   	push   %esi
520b79:	e8 e2 a3 ff ff       	call   0x51af60
520b7e:	83 c4 08             	add    $0x8,%esp
520b81:	85 c0                	test   %eax,%eax
520b83:	75 1f                	jne    0x520ba4
520b85:	56                   	push   %esi
520b86:	e8 65 a5 ff ff       	call   0x51b0f0
520b8b:	83 c4 04             	add    $0x4,%esp
520b8e:	5f                   	pop    %edi
520b8f:	5e                   	pop    %esi
520b90:	5d                   	pop    %ebp
520b91:	83 c8 ff             	or     $0xffffffff,%eax
520b94:	5b                   	pop    %ebx
520b95:	8b 4c 24 48          	mov    0x48(%esp),%ecx
520b99:	33 cc                	xor    %esp,%ecx
520b9b:	e8 86 0e 0b 00       	call   0x5d1a26
520ba0:	83 c4 4c             	add    $0x4c,%esp
520ba3:	c3                   	ret
520ba4:	85 ed                	test   %ebp,%ebp
520ba6:	74 19                	je     0x520bc1
520ba8:	8b 46 10             	mov    0x10(%esi),%eax
520bab:	56                   	push   %esi
520bac:	ff 74 24 6c          	push   0x6c(%esp)
520bb0:	8b 08                	mov    (%eax),%ecx
520bb2:	ff 74 24 1c          	push   0x1c(%esp)
520bb6:	50                   	push   %eax
520bb7:	8b 41 48             	mov    0x48(%ecx),%eax
520bba:	ff d0                	call   *%eax
520bbc:	83 c4 10             	add    $0x10,%esp
520bbf:	eb 13                	jmp    0x520bd4
520bc1:	8d 44 24 10          	lea    0x10(%esp),%eax
520bc5:	50                   	push   %eax
520bc6:	8d 44 24 1c          	lea    0x1c(%esp),%eax
520bca:	50                   	push   %eax
520bcb:	56                   	push   %esi
520bcc:	e8 af 9f ff ff       	call   0x51ab80
520bd1:	83 c4 0c             	add    $0xc,%esp
520bd4:	56                   	push   %esi
520bd5:	8b f8                	mov    %eax,%edi
520bd7:	e8 14 a5 ff ff       	call   0x51b0f0
520bdc:	83 c4 04             	add    $0x4,%esp
520bdf:	85 ed                	test   %ebp,%ebp
520be1:	0f 85 59 ff ff ff    	jne    0x520b40
520be7:	8b 74 24 14          	mov    0x14(%esp),%esi
520beb:	85 ff                	test   %edi,%edi
520bed:	0f 84 4d ff ff ff    	je     0x520b40
520bf3:	ff 74 24 10          	push   0x10(%esp)
520bf7:	8d 44 24 1c          	lea    0x1c(%esp),%eax
520bfb:	50                   	push   %eax
520bfc:	ff 74 24 70          	push   0x70(%esp)
520c00:	56                   	push   %esi
520c01:	ff 73 10             	push   0x10(%ebx)
520c04:	e8 f7 9f 03 00       	call   0x55ac00
520c09:	8b 4c 24 6c          	mov    0x6c(%esp),%ecx
520c0d:	83 c4 14             	add    $0x14,%esp
520c10:	5f                   	pop    %edi
520c11:	5e                   	pop    %esi
520c12:	5d                   	pop    %ebp
520c13:	5b                   	pop    %ebx
520c14:	33 cc                	xor    %esp,%ecx
520c16:	e8 0b 0e 0b 00       	call   0x5d1a26
520c1b:	83 c4 4c             	add    $0x4c,%esp
520c1e:	c3                   	ret
520c1f:	cc                   	int3
520c20:	6a 01                	push   $0x1
520c22:	ff 74 24 18          	push   0x18(%esp)
520c26:	ff 74 24 18          	push   0x18(%esp)
520c2a:	ff 74 24 18          	push   0x18(%esp)
520c2e:	ff 74 24 18          	push   0x18(%esp)
520c32:	ff 74 24 18          	push   0x18(%esp)
520c36:	e8 05 00 00 00       	call   0x520c40
520c3b:	83 c4 18             	add    $0x18,%esp
520c3e:	c3                   	ret
520c3f:	cc                   	int3
520c40:	56                   	push   %esi
520c41:	8b 74 24 08          	mov    0x8(%esp),%esi
520c45:	57                   	push   %edi
520c46:	8b 46 10             	mov    0x10(%esi),%eax
520c49:	85 c0                	test   %eax,%eax
520c4b:	75 17                	jne    0x520c64
520c4d:	ff 74 24 18          	push   0x18(%esp)
520c51:	ff 74 24 20          	push   0x20(%esp)
520c55:	e8 c6 66 fc ff       	call   0x4e7320
520c5a:	83 c4 08             	add    $0x8,%esp
520c5d:	89 46 10             	mov    %eax,0x10(%esi)
520c60:	85 c0                	test   %eax,%eax
520c62:	74 58                	je     0x520cbc
520c64:	8b 00                	mov    (%eax),%eax
520c66:	8b 7c 24 14          	mov    0x14(%esp),%edi
520c6a:	f6 40 04 04          	testb  $0x4,0x4(%eax)
520c6e:	75 51                	jne    0x520cc1
520c70:	85 ff                	test   %edi,%edi
520c72:	75 4d                	jne    0x520cc1
520c74:	8d 44 24 0c          	lea    0xc(%esp),%eax
520c78:	50                   	push   %eax
520c79:	ff 74 24 20          	push   0x20(%esp)
520c7d:	e8 7e 02 fd ff       	call   0x4f0f00
520c82:	83 c4 08             	add    $0x8,%esp
520c85:	85 c0                	test   %eax,%eax
520c87:	7e 18                	jle    0x520ca1
520c89:	ff 74 24 0c          	push   0xc(%esp)
520c8d:	e8 de e8 fc ff       	call   0x4ef570
520c92:	50                   	push   %eax
520c93:	e8 58 fd fc ff       	call   0x4f09f0
520c98:	8b f8                	mov    %eax,%edi
520c9a:	83 c4 08             	add    $0x8,%esp
520c9d:	85 ff                	test   %edi,%edi
520c9f:	75 20                	jne    0x520cc1
520ca1:	6a 2a                	push   $0x2a
520ca3:	68 f4 10 64 00       	push   $0x6410f4
520ca8:	68 9e 00 00 00       	push   $0x9e
520cad:	68 a1 00 00 00       	push   $0xa1
520cb2:	6a 06                	push   $0x6
520cb4:	e8 c7 82 fb ff       	call   0x4d8f80
520cb9:	83 c4 14             	add    $0x14,%esp
520cbc:	5f                   	pop    %edi
520cbd:	33 c0                	xor    %eax,%eax
520cbf:	5e                   	pop    %esi
520cc0:	c3                   	ret
520cc1:	83 7c 24 20 00       	cmpl   $0x0,0x20(%esp)
520cc6:	8b 46 10             	mov    0x10(%esi),%eax
520cc9:	8b 08                	mov    (%eax),%ecx
520ccb:	74 46                	je     0x520d13
520ccd:	8b 51 44             	mov    0x44(%ecx),%edx
520cd0:	85 d2                	test   %edx,%edx
520cd2:	74 17                	je     0x520ceb
520cd4:	56                   	push   %esi
520cd5:	50                   	push   %eax
520cd6:	ff d2                	call   *%edx
520cd8:	83 c4 08             	add    $0x8,%esp
520cdb:	85 c0                	test   %eax,%eax
520cdd:	7e dd                	jle    0x520cbc
520cdf:	8b 46 10             	mov    0x10(%esi),%eax
520ce2:	c7 40 10 80 00 00 00 	movl   $0x80,0x10(%eax)
520ce9:	eb 6d                	jmp    0x520d58
520ceb:	83 79 70 00          	cmpl   $0x0,0x70(%ecx)
520cef:	74 10                	je     0x520d01
520cf1:	c7 40 10 10 00 00 00 	movl   $0x10,0x10(%eax)
520cf8:	c7 46 14 d0 0d 52 00 	movl   $0x520dd0,0x14(%esi)
520cff:	eb 57                	jmp    0x520d58
520d01:	50                   	push   %eax
520d02:	e8 69 9f 03 00       	call   0x55ac70
520d07:	83 c4 04             	add    $0x4,%esp
520d0a:	85 c0                	test   %eax,%eax
520d0c:	7f 4a                	jg     0x520d58
520d0e:	5f                   	pop    %edi
520d0f:	33 c0                	xor    %eax,%eax
520d11:	5e                   	pop    %esi
520d12:	c3                   	ret
520d13:	8b 51 3c             	mov    0x3c(%ecx),%edx
520d16:	85 d2                	test   %edx,%edx
520d18:	74 17                	je     0x520d31
520d1a:	56                   	push   %esi
520d1b:	50                   	push   %eax
520d1c:	ff d2                	call   *%edx
520d1e:	83 c4 08             	add    $0x8,%esp
520d21:	85 c0                	test   %eax,%eax
520d23:	7e 97                	jle    0x520cbc
520d25:	8b 46 10             	mov    0x10(%esi),%eax
520d28:	c7 40 10 40 00 00 00 	movl   $0x40,0x10(%eax)
520d2f:	eb 27                	jmp    0x520d58
520d31:	83 79 6c 00          	cmpl   $0x0,0x6c(%ecx)
520d35:	74 10                	je     0x520d47
520d37:	c7 40 10 08 00 00 00 	movl   $0x8,0x10(%eax)
520d3e:	c7 46 14 d0 0d 52 00 	movl   $0x520dd0,0x14(%esi)
520d45:	eb 11                	jmp    0x520d58
520d47:	50                   	push   %eax
520d48:	e8 53 9e 03 00       	call   0x55aba0
520d4d:	83 c4 04             	add    $0x4,%esp
520d50:	85 c0                	test   %eax,%eax
520d52:	0f 8e 64 ff ff ff    	jle    0x520cbc
520d58:	57                   	push   %edi
520d59:	6a 00                	push   $0x0
520d5b:	6a 01                	push   $0x1
520d5d:	68 f8 00 00 00       	push   $0xf8
520d62:	6a ff                	push   $0xffffffff
520d64:	ff 76 10             	push   0x10(%esi)
520d67:	e8 64 62 fc ff       	call   0x4e6fd0
520d6c:	83 c4 18             	add    $0x18,%esp
520d6f:	85 c0                	test   %eax,%eax
520d71:	0f 8e 45 ff ff ff    	jle    0x520cbc
520d77:	8b 4c 24 10          	mov    0x10(%esp),%ecx
520d7b:	85 c9                	test   %ecx,%ecx
520d7d:	74 05                	je     0x520d84
520d7f:	8b 46 10             	mov    0x10(%esi),%eax
520d82:	89 01                	mov    %eax,(%ecx)
520d84:	8b 46 10             	mov    0x10(%esi),%eax
520d87:	8b 00                	mov    (%eax),%eax
520d89:	f6 40 04 04          	testb  $0x4,0x4(%eax)
520d8d:	75 2f                	jne    0x520dbe
520d8f:	ff 74 24 18          	push   0x18(%esp)
520d93:	57                   	push   %edi
520d94:	56                   	push   %esi
520d95:	e8 86 9e ff ff       	call   0x51ac20
520d9a:	83 c4 0c             	add    $0xc,%esp
520d9d:	85 c0                	test   %eax,%eax
520d9f:	0f 84 17 ff ff ff    	je     0x520cbc
520da5:	8b 4e 10             	mov    0x10(%esi),%ecx
520da8:	8b 01                	mov    (%ecx),%eax
520daa:	8b 80 80 00 00 00    	mov    0x80(%eax),%eax
520db0:	85 c0                	test   %eax,%eax
520db2:	74 0a                	je     0x520dbe
520db4:	56                   	push   %esi
520db5:	51                   	push   %ecx
520db6:	ff d0                	call   *%eax
520db8:	83 c4 08             	add    $0x8,%esp
520dbb:	5f                   	pop    %edi
520dbc:	5e                   	pop    %esi
520dbd:	c3                   	ret
520dbe:	5f                   	pop    %edi
520dbf:	b8 01 00 00 00       	mov    $0x1,%eax
520dc4:	5e                   	pop    %esi
520dc5:	c3                   	ret
520dc6:	cc                   	int3
520dc7:	cc                   	int3
520dc8:	cc                   	int3
520dc9:	cc                   	int3
520dca:	cc                   	int3
520dcb:	cc                   	int3
520dcc:	cc                   	int3
520dcd:	cc                   	int3
520dce:	cc                   	int3
520dcf:	cc                   	int3
520dd0:	6a 14                	push   $0x14
520dd2:	68 f4 10 64 00       	push   $0x6410f4
520dd7:	68 b1 00 00 00       	push   $0xb1
520ddc:	68 ad 00 00 00       	push   $0xad
520de1:	6a 06                	push   $0x6
520de3:	e8 98 81 fb ff       	call   0x4d8f80
520de8:	83 c4 14             	add    $0x14,%esp
520deb:	33 c0                	xor    %eax,%eax
520ded:	c3                   	ret
520dee:	cc                   	int3
520def:	cc                   	int3
520df0:	b8 0c 11 64 00       	mov    $0x64110c,%eax
520df5:	c3                   	ret
520df6:	cc                   	int3
520df7:	cc                   	int3
520df8:	cc                   	int3
520df9:	cc                   	int3
520dfa:	cc                   	int3
520dfb:	cc                   	int3
520dfc:	cc                   	int3
520dfd:	cc                   	int3
520dfe:	cc                   	int3
520dff:	cc                   	int3
520e00:	8b 4c 24 04          	mov    0x4(%esp),%ecx
520e04:	8b 44 24 08          	mov    0x8(%esp),%eax
520e08:	89 01                	mov    %eax,(%ecx)
520e0a:	8b 44 24 0c          	mov    0xc(%esp),%eax
520e0e:	89 41 04             	mov    %eax,0x4(%ecx)
520e11:	8b 44 24 10          	mov    0x10(%esp),%eax
520e15:	89 41 08             	mov    %eax,0x8(%ecx)
520e18:	8b 44 24 14          	mov    0x14(%esp),%eax
520e1c:	89 41 0c             	mov    %eax,0xc(%ecx)
520e1f:	c3                   	ret
520e20:	8b 44 24 04          	mov    0x4(%esp),%eax
520e24:	8b 40 2c             	mov    0x2c(%eax),%eax
520e27:	c3                   	ret
520e28:	cc                   	int3
520e29:	cc                   	int3