534959:	8b 4d d8             	mov    -0x28(%ebp),%ecx
53495c:	c1 e0 04             	shl    $0x4,%eax
53495f:	89 45 bc             	mov    %eax,-0x44(%ebp)
534962:	8b 79 10             	mov    0x10(%ecx),%edi
534965:	03 f8                	add    %eax,%edi
534967:	89 7d 9c             	mov    %edi,-0x64(%ebp)
53496a:	83 fa 01             	cmp    $0x1,%edx
53496d:	75 14                	jne    0x534983
53496f:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
534972:	51                   	push   %ecx
534973:	e8 18 d3 ff ff       	call   0x531c90
534978:	83 c4 04             	add    $0x4,%esp
53497b:	85 c0                	test   %eax,%eax
53497d:	0f 85 cb 23 00 00    	jne    0x536d4e
534983:	ff 75 e8             	push   -0x18(%ebp)
534986:	ff 75 d8             	push   -0x28(%ebp)
534989:	e8 a2 cc ff ff       	call   0x531630
53498e:	83 c4 08             	add    $0x8,%esp
534991:	89 45 98             	mov    %eax,-0x68(%ebp)
534994:	85 c0                	test   %eax,%eax
534996:	0f 84 b2 23 00 00    	je     0x536d4e
53499c:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
5349a0:	ff 75 d0             	push   -0x30(%ebp)
5349a3:	74 12                	je     0x5349b7
5349a5:	68 44 ab 6b 00       	push   $0x6bab44
5349aa:	ff 75 d8             	push   -0x28(%ebp)
5349ad:	e8 8e c5 ff ff       	call   0x530f40
5349b2:	83 c4 0c             	add    $0xc,%esp
5349b5:	eb 0b                	jmp    0x5349c2
5349b7:	ff 75 d8             	push   -0x28(%ebp)
5349ba:	e8 71 cc ff ff       	call   0x531630
5349bf:	83 c4 08             	add    $0x8,%esp
5349c2:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
5349c6:	89 45 b8             	mov    %eax,-0x48(%ebp)
5349c9:	76 04                	jbe    0x5349cf
5349cb:	8b 1f                	mov    (%edi),%ebx
5349cd:	eb 02                	jmp    0x5349d1
5349cf:	33 db                	xor    %ebx,%ebx
5349d1:	53                   	push   %ebx
5349d2:	50                   	push   %eax
5349d3:	ff 75 98             	push   -0x68(%ebp)
5349d6:	89 5d ac             	mov    %ebx,-0x54(%ebp)
5349d9:	6a 13                	push   $0x13
5349db:	ff 75 d4             	push   -0x2c(%ebp)
5349de:	e8 bd 4d fe ff       	call   0x5197a0
5349e3:	83 c4 14             	add    $0x14,%esp
5349e6:	85 c0                	test   %eax,%eax
5349e8:	0f 85 3f 23 00 00    	jne    0x536d2d
5349ee:	89 45 ec             	mov    %eax,-0x14(%ebp)
5349f1:	8d 4d ec             	lea    -0x14(%ebp),%ecx
5349f4:	8b 45 98             	mov    -0x68(%ebp),%eax
5349f7:	89 45 f0             	mov    %eax,-0x10(%ebp)
5349fa:	8b 45 b8             	mov    -0x48(%ebp),%eax
5349fd:	51                   	push   %ecx
5349fe:	89 45 f4             	mov    %eax,-0xc(%ebp)
534a01:	8b 45 d8             	mov    -0x28(%ebp),%eax
534a04:	6a 0e                	push   $0xe
534a06:	53                   	push   %ebx
534a07:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
534a0e:	50                   	push   %eax
534a0f:	c7 80 ac 01 00 00 00 	movl   $0x0,0x1ac(%eax)
534a16:	00 00 00
534a19:	e8 02 84 fb ff       	call   0x4ece20
534a1e:	8b d8                	mov    %eax,%ebx
534a20:	83 c4 10             	add    $0x10,%esp
534a23:	85 db                	test   %ebx,%ebx
534a25:	75 2e                	jne    0x534a55
534a27:	6a 01                	push   $0x1
534a29:	56                   	push   %esi
534a2a:	e8 91 85 01 00       	call   0x54cfc0
534a2f:	6a ff                	push   $0xffffffff
534a31:	ff 75 ec             	push   -0x14(%ebp)
534a34:	53                   	push   %ebx
534a35:	53                   	push   %ebx
534a36:	56                   	push   %esi
534a37:	e8 34 85 01 00       	call   0x54cf70
534a3c:	ff 75 ec             	push   -0x14(%ebp)
534a3f:	56                   	push   %esi
534a40:	e8 5b 02 fe ff       	call   0x514ca0
534a45:	ff 75 ec             	push   -0x14(%ebp)
534a48:	e8 43 63 fb ff       	call   0x4ead90
534a4d:	83 c4 28             	add    $0x28,%esp
534a50:	e9 d8 22 00 00       	jmp    0x536d2d
534a55:	83 fb 0c             	cmp    $0xc,%ebx
534a58:	74 2e                	je     0x534a88
534a5a:	8b 45 ec             	mov    -0x14(%ebp),%eax
534a5d:	85 c0                	test   %eax,%eax
534a5f:	74 19                	je     0x534a7a
534a61:	50                   	push   %eax
534a62:	68 04 d0 6a 00       	push   $0x6ad004
534a67:	ff 75 d4             	push   -0x2c(%ebp)
534a6a:	e8 f1 e7 fe ff       	call   0x523260
534a6f:	ff 75 ec             	push   -0x14(%ebp)
534a72:	e8 19 63 fb ff       	call   0x4ead90
534a77:	83 c4 10             	add    $0x10,%esp
534a7a:	8b 45 d4             	mov    -0x2c(%ebp),%eax
534a7d:	ff 40 24             	incl   0x24(%eax)
534a80:	89 58 0c             	mov    %ebx,0xc(%eax)
534a83:	e9 a5 22 00 00       	jmp    0x536d2d
534a88:	ff 75 98             	push   -0x68(%ebp)
534a8b:	e8 90 b9 fd ff       	call   0x510420
534a90:	8b d8                	mov    %eax,%ebx
534a92:	83 c4 04             	add    $0x4,%esp
534a95:	85 db                	test   %ebx,%ebx
534a97:	0f 84 90 22 00 00    	je     0x536d2d
534a9d:	f6 43 05 01          	testb  $0x1,0x5(%ebx)
534aa1:	74 13                	je     0x534ab6
534aa3:	ff 75 d4             	push   -0x2c(%ebp)
534aa6:	e8 e5 29 00 00       	call   0x537490
534aab:	83 c4 04             	add    $0x4,%esp
534aae:	85 c0                	test   %eax,%eax
534ab0:	0f 85 77 22 00 00    	jne    0x536d2d
534ab6:	8a 43 05             	mov    0x5(%ebx),%al
534ab9:	a8 02                	test   $0x2,%al
534abb:	75 15                	jne    0x534ad2
534abd:	a8 04                	test   $0x4,%al
534abf:	74 07                	je     0x534ac8
534ac1:	8b 4d b8             	mov    -0x48(%ebp),%ecx
534ac4:	85 c9                	test   %ecx,%ecx
534ac6:	75 0d                	jne    0x534ad5
534ac8:	53                   	push   %ebx
534ac9:	56                   	push   %esi
534aca:	e8 41 26 fe ff       	call   0x517110
534acf:	83 c4 08             	add    $0x8,%esp
534ad2:	8b 4d b8             	mov    -0x48(%ebp),%ecx
534ad5:	0f b6 43 04          	movzbl 0x4(%ebx),%eax
534ad9:	83 f8 28             	cmp    $0x28,%eax
534adc:	0f 87 20 22 00 00    	ja     0x536d02
534ae2:	ff 24 85 60 6d 53 00 	jmp    *0x536d60(,%eax,4)
534ae9:	8b 5d c4             	mov    -0x3c(%ebp),%ebx
534aec:	53                   	push   %ebx
534aed:	56                   	push   %esi
534aee:	e8 fd 8f 01 00       	call   0x54daf0
534af3:	8b 45 b8             	mov    -0x48(%ebp),%eax
534af6:	83 c4 08             	add    $0x8,%esp
534af9:	85 c0                	test   %eax,%eax
534afb:	75 2b                	jne    0x534b28
534afd:	8b 45 d4             	mov    -0x2c(%ebp),%eax
534b00:	6a 00                	push   $0x0
534b02:	68 70 26 6b 00       	push   $0x6b2670
534b07:	6a 09                	push   $0x9
534b09:	83 40 2c 02          	addl   $0x2,0x2c(%eax)
534b0d:	56                   	push   %esi
534b0e:	e8 8d d1 00 00       	call   0x541ca0
534b13:	83 c4 10             	add    $0x10,%esp
534b16:	89 58 04             	mov    %ebx,0x4(%eax)
534b19:	89 58 18             	mov    %ebx,0x18(%eax)
534b1c:	c7 40 7c 30 f8 ff ff 	movl   $0xfffff830,0x7c(%eax)
534b23:	e9 05 22 00 00       	jmp    0x536d2d
534b28:	50                   	push   %eax
534b29:	e8 e2 49 fe ff       	call   0x519510
534b2e:	50                   	push   %eax
534b2f:	e8 2c 2c fe ff       	call   0x517760
534b34:	53                   	push   %ebx
534b35:	6a 00                	push   $0x0
534b37:	ff 75 d4             	push   -0x2c(%ebp)
534b3a:	8b f8                	mov    %eax,%edi
534b3c:	e8 0f 57 fe ff       	call   0x51a250
534b41:	57                   	push   %edi
534b42:	6a 03                	push   $0x3
534b44:	53                   	push   %ebx
534b45:	6a 5e                	push   $0x5e
534b47:	56                   	push   %esi
534b48:	e8 f3 cf 00 00       	call   0x541b40
534b4d:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
534b50:	8b 41 0c             	mov    0xc(%ecx),%eax
534b53:	89 78 50             	mov    %edi,0x50(%eax)
534b56:	8b 41 0c             	mov    0xc(%ecx),%eax
534b59:	ff 70 50             	push   0x50(%eax)
534b5c:	ff 71 04             	push   0x4(%ecx)
534b5f:	e8 dc 8e fe ff       	call   0x51da40
534b64:	83 c4 30             	add    $0x30,%esp
534b67:	e9 c1 21 00 00       	jmp    0x536d2d
534b6c:	8b 7f 04             	mov    0x4(%edi),%edi
534b6f:	85 c9                	test   %ecx,%ecx
534b71:	75 13                	jne    0x534b86
534b73:	85 ff                	test   %edi,%edi
534b75:	0f 84 62 04 00 00    	je     0x534fdd
534b7b:	8b 47 04             	mov    0x4(%edi),%eax
534b7e:	8b 40 20             	mov    0x20(%eax),%eax
534b81:	e9 9b 21 00 00       	jmp    0x536d21
534b86:	51                   	push   %ecx
534b87:	e8 84 49 fe ff       	call   0x519510
534b8c:	8b 4d d8             	mov    -0x28(%ebp),%ecx
534b8f:	6a 00                	push   $0x0
534b91:	6a ff                	push   $0xffffffff
534b93:	50                   	push   %eax
534b94:	57                   	push   %edi
534b95:	89 41 5c             	mov    %eax,0x5c(%ecx)
534b98:	e8 93 8f fe ff       	call   0x51db30
534b9d:	83 c4 14             	add    $0x14,%esp
534ba0:	83 f8 07             	cmp    $0x7,%eax
534ba3:	0f 85 84 21 00 00    	jne    0x536d2d
534ba9:	ff 75 d8             	push   -0x28(%ebp)
534bac:	e8 df cc ff ff       	call   0x531890
534bb1:	83 c4 04             	add    $0x4,%esp
534bb4:	e9 74 21 00 00       	jmp    0x536d2d
534bb9:	8b 5d b8             	mov    -0x48(%ebp),%ebx
534bbc:	83 c9 ff             	or     $0xffffffff,%ecx
534bbf:	8b 47 04             	mov    0x4(%edi),%eax
534bc2:	89 45 e8             	mov    %eax,-0x18(%ebp)
534bc5:	89 4d c8             	mov    %ecx,-0x38(%ebp)
534bc8:	85 db                	test   %ebx,%ebx
534bca:	74 28                	je     0x534bf4
534bcc:	68 48 ab 6b 00       	push   $0x6bab48
534bd1:	53                   	push   %ebx
534bd2:	e8 a9 ad fa ff       	call   0x4df980
534bd7:	83 c4 08             	add    $0x8,%esp
534bda:	85 c0                	test   %eax,%eax
534bdc:	75 05                	jne    0x534be3
534bde:	8d 48 02             	lea    0x2(%eax),%ecx
534be1:	eb 0e                	jmp    0x534bf1
534be3:	6a 00                	push   $0x0
534be5:	53                   	push   %ebx
534be6:	e8 c5 80 ff ff       	call   0x52ccb0
534beb:	83 c4 08             	add    $0x8,%esp
534bee:	0f b6 c8             	movzbl %al,%ecx
534bf1:	89 4d c8             	mov    %ecx,-0x38(%ebp)
534bf4:	8b 45 c0             	mov    -0x40(%ebp),%eax
534bf7:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
534bfb:	75 35                	jne    0x534c32
534bfd:	85 c9                	test   %ecx,%ecx
534bff:	78 31                	js     0x534c32
534c01:	8b 45 d8             	mov    -0x28(%ebp),%eax
534c04:	33 db                	xor    %ebx,%ebx
534c06:	39 58 14             	cmp    %ebx,0x14(%eax)
534c09:	7e 27                	jle    0x534c32
534c0b:	8b 75 c8             	mov    -0x38(%ebp),%esi
534c0e:	33 ff                	xor    %edi,%edi
534c10:	8b 40 10             	mov    0x10(%eax),%eax
534c13:	56                   	push   %esi
534c14:	ff 74 07 04          	push   0x4(%edi,%eax,1)
534c18:	e8 23 8d fe ff       	call   0x51d940
534c1d:	8b 45 d8             	mov    -0x28(%ebp),%eax
534c20:	8d 7f 10             	lea    0x10(%edi),%edi
534c23:	43                   	inc    %ebx
534c24:	83 c4 08             	add    $0x8,%esp
534c27:	3b 58 14             	cmp    0x14(%eax),%ebx
534c2a:	7c e4                	jl     0x534c10
534c2c:	8b 75 a4             	mov    -0x5c(%ebp),%esi
534c2f:	8b 4d c8             	mov    -0x38(%ebp),%ecx
534c32:	51                   	push   %ecx
534c33:	ff 75 e8             	push   -0x18(%ebp)
534c36:	e8 05 8d fe ff       	call   0x51d940
534c3b:	99                   	cltd
534c3c:	52                   	push   %edx
534c3d:	50                   	push   %eax
534c3e:	56                   	push   %esi
534c3f:	e8 cc ff fd ff       	call   0x514c10
534c44:	83 c4 14             	add    $0x14,%esp
534c47:	e9 e1 20 00 00       	jmp    0x536d2d
534c4c:	ff 75 c4             	push   -0x3c(%ebp)
534c4f:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
534c52:	53                   	push   %ebx
534c53:	e8 88 a6 fe ff       	call   0x51f2e0
534c58:	8b 45 98             	mov    -0x68(%ebp),%eax
534c5b:	83 c4 08             	add    $0x8,%esp
534c5e:	ff 43 2c             	incl   0x2c(%ebx)
534c61:	8b 7b 2c             	mov    0x2c(%ebx),%edi
534c64:	0f b6 00             	movzbl (%eax),%eax
534c67:	80 b8 20 2a 6b 00 70 	cmpb   $0x70,0x6b2a20(%eax)
534c6e:	75 25                	jne    0x534c95
534c70:	57                   	push   %edi
534c71:	ff 75 c4             	push   -0x3c(%ebp)
534c74:	68 a8 00 00 00       	push   $0xa8
534c79:	56                   	push   %esi
534c7a:	e8 61 ce 00 00       	call   0x541ae0
534c7f:	83 c4 10             	add    $0x10,%esp
534c82:	6a 01                	push   $0x1
534c84:	57                   	push   %edi
534c85:	6a 50                	push   $0x50
534c87:	56                   	push   %esi
534c88:	e8 53 ce 00 00       	call   0x541ae0
534c8d:	83 c4 10             	add    $0x10,%esp
534c90:	e9 98 20 00 00       	jmp    0x536d2d
534c95:	8b 45 b8             	mov    -0x48(%ebp),%eax
534c98:	50                   	push   %eax
534c99:	e8 72 48 fe ff       	call   0x519510
534c9e:	50                   	push   %eax
534c9f:	e8 bc 2a fe ff       	call   0x517760
534ca4:	50                   	push   %eax
534ca5:	57                   	push   %edi
534ca6:	ff 75 c4             	push   -0x3c(%ebp)
534ca9:	68 a9 00 00 00       	push   $0xa9
534cae:	56                   	push   %esi
534caf:	e8 8c ce 00 00       	call   0x541b40
534cb4:	83 c4 1c             	add    $0x1c,%esp
534cb7:	6a 01                	push   $0x1
534cb9:	57                   	push   %edi
534cba:	6a 50                	push   $0x50
534cbc:	56                   	push   %esi
534cbd:	e8 1e ce 00 00       	call   0x541ae0
534cc2:	83 c4 10             	add    $0x10,%esp
534cc5:	e9 63 20 00 00       	jmp    0x536d2d
534cca:	51                   	push   %ecx
534ccb:	bb 68 aa 6b 00       	mov    $0x6baa68,%ebx
534cd0:	e8 db 10 fd ff       	call   0x505db0
534cd5:	8b c8                	mov    %eax,%ecx
534cd7:	83 c4 04             	add    $0x4,%esp
534cda:	8b 45 c0             	mov    -0x40(%ebp),%eax
534cdd:	89 4d d0             	mov    %ecx,-0x30(%ebp)
534ce0:	8b 40 04             	mov    0x4(%eax),%eax
534ce3:	85 c0                	test   %eax,%eax
534ce5:	75 5b                	jne    0x534d42
534ce7:	83 f9 ff             	cmp    $0xffffffff,%ecx
534cea:	75 09                	jne    0x534cf5
534cec:	8b 45 d8             	mov    -0x28(%ebp),%eax
534cef:	0f b6 40 53          	movzbl 0x53(%eax),%eax
534cf3:	eb 5e                	jmp    0x534d53
534cf5:	85 c0                	test   %eax,%eax
534cf7:	75 49                	jne    0x534d42
534cf9:	8b 45 d8             	mov    -0x28(%ebp),%eax
534cfc:	83 78 14 02          	cmpl   $0x2,0x14(%eax)
534d00:	7e 3d                	jle    0x534d3f
534d02:	bb 20 00 00 00       	mov    $0x20,%ebx
534d07:	8b f8                	mov    %eax,%edi
534d09:	8d 73 e2             	lea    -0x1e(%ebx),%esi
534d0c:	0f 1f 40 00          	nopl   0x0(%eax)
534d10:	8b 47 10             	mov    0x10(%edi),%eax
534d13:	51                   	push   %ecx
534d14:	8b 44 03 04          	mov    0x4(%ebx,%eax,1),%eax
534d18:	8b 40 04             	mov    0x4(%eax),%eax
534d1b:	ff 30                	push   (%eax)
534d1d:	e8 0e db ff ff       	call   0x532830
534d22:	8b 4d d0             	mov    -0x30(%ebp),%ecx
534d25:	8d 5b 10             	lea    0x10(%ebx),%ebx
534d28:	46                   	inc    %esi
534d29:	83 c4 08             	add    $0x8,%esp
534d2c:	3b 77 14             	cmp    0x14(%edi),%esi
534d2f:	7c df                	jl     0x534d10
534d31:	8b 75 a4             	mov    -0x5c(%ebp),%esi
534d34:	bb 68 aa 6b 00       	mov    $0x6baa68,%ebx
534d39:	8b 7d 9c             	mov    -0x64(%ebp),%edi
534d3c:	8b 45 d8             	mov    -0x28(%ebp),%eax
534d3f:	88 48 53             	mov    %cl,0x53(%eax)
534d42:	8b 47 04             	mov    0x4(%edi),%eax
534d45:	51                   	push   %ecx
534d46:	8b 40 04             	mov    0x4(%eax),%eax
534d49:	ff 30                	push   (%eax)
534d4b:	e8 e0 da ff ff       	call   0x532830
534d50:	83 c4 08             	add    $0x8,%esp
534d53:	83 f8 01             	cmp    $0x1,%eax
534d56:	b9 5c aa 6b 00       	mov    $0x6baa5c,%ecx
534d5b:	0f 45 cb             	cmovne %ebx,%ecx
534d5e:	51                   	push   %ecx
534d5f:	56                   	push   %esi
534d60:	e8 3b ff fd ff       	call   0x514ca0
534d65:	83 c4 08             	add    $0x8,%esp
534d68:	e9 c0 1f 00 00       	jmp    0x536d2d
534d6d:	85 c9                	test   %ecx,%ecx