50ca5d:	72 0a                	jb     0x50ca69
50ca5f:	80 f9 05             	cmp    $0x5,%cl
50ca62:	74 05                	je     0x50ca69
50ca64:	33 c0                	xor    %eax,%eax
50ca66:	5e                   	pop    %esi
50ca67:	5d                   	pop    %ebp
50ca68:	c3                   	ret
50ca69:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
50ca6d:	57                   	push   %edi
50ca6e:	74 04                	je     0x50ca74
50ca70:	33 ff                	xor    %edi,%edi
50ca72:	eb 16                	jmp    0x50ca8a
50ca74:	8b 46 3c             	mov    0x3c(%esi),%eax
50ca77:	6a 04                	push   $0x4
50ca79:	50                   	push   %eax
50ca7a:	8b 08                	mov    (%eax),%ecx
50ca7c:	8b 41 1c             	mov    0x1c(%ecx),%eax
50ca7f:	ff d0                	call   *%eax
50ca81:	8b f8                	mov    %eax,%edi
50ca83:	83 c4 08             	add    $0x8,%esp
50ca86:	85 ff                	test   %edi,%edi
50ca88:	75 08                	jne    0x50ca92
50ca8a:	c6 46 11 04          	movb   $0x4,0x11(%esi)
50ca8e:	85 ff                	test   %edi,%edi
50ca90:	74 2b                	je     0x50cabd
50ca92:	8b 4e 3c             	mov    0x3c(%esi),%ecx
50ca95:	83 39 00             	cmpl   $0x0,(%ecx)
50ca98:	74 1d                	je     0x50cab7
50ca9a:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
50ca9e:	75 0d                	jne    0x50caad
50caa0:	8b 01                	mov    (%ecx),%eax
50caa2:	6a 01                	push   $0x1
50caa4:	51                   	push   %ecx
50caa5:	8b 40 20             	mov    0x20(%eax),%eax
50caa8:	ff d0                	call   *%eax
50caaa:	83 c4 08             	add    $0x8,%esp
50caad:	80 7e 11 05          	cmpb   $0x5,0x11(%esi)
50cab1:	74 04                	je     0x50cab7
50cab3:	c6 46 11 01          	movb   $0x1,0x11(%esi)
50cab7:	8a 46 0c             	mov    0xc(%esi),%al
50caba:	88 46 12             	mov    %al,0x12(%esi)
50cabd:	8b c7                	mov    %edi,%eax
50cabf:	5f                   	pop    %edi
50cac0:	5e                   	pop    %esi
50cac1:	5d                   	pop    %ebp
50cac2:	c3                   	ret
50cac3:	cc                   	int3
50cac4:	cc                   	int3
50cac5:	cc                   	int3
50cac6:	cc                   	int3
50cac7:	cc                   	int3
50cac8:	cc                   	int3
50cac9:	cc                   	int3
50caca:	cc                   	int3
50cacb:	cc                   	int3
50cacc:	cc                   	int3
50cacd:	cc                   	int3
50cace:	cc                   	int3
50cacf:	cc                   	int3
50cad0:	55                   	push   %ebp
50cad1:	8b ec                	mov    %esp,%ebp
50cad3:	83 ec 0c             	sub    $0xc,%esp
50cad6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
50cadb:	33 c5                	xor    %ebp,%eax
50cadd:	89 45 fc             	mov    %eax,-0x4(%ebp)
50cae0:	8b 4d 08             	mov    0x8(%ebp),%ecx
50cae3:	56                   	push   %esi
50cae4:	8b 71 3c             	mov    0x3c(%ecx),%esi
50cae7:	8b 06                	mov    (%esi),%eax
50cae9:	85 c0                	test   %eax,%eax
50caeb:	74 6b                	je     0x50cb58
50caed:	83 38 03             	cmpl   $0x3,(%eax)
50caf0:	7c 66                	jl     0x50cb58
50caf2:	8b 81 84 00 00 00    	mov    0x84(%ecx),%eax
50caf8:	8b 91 80 00 00 00    	mov    0x80(%ecx),%edx
50cafe:	89 55 f4             	mov    %edx,-0xc(%ebp)
50cb01:	89 45 f8             	mov    %eax,-0x8(%ebp)
50cb04:	85 c0                	test   %eax,%eax
50cb06:	7c 0d                	jl     0x50cb15
50cb08:	7f 04                	jg     0x50cb0e
50cb0a:	85 d2                	test   %edx,%edx
50cb0c:	74 07                	je     0x50cb15
50cb0e:	ba 01 00 00 00       	mov    $0x1,%edx
50cb13:	eb 02                	jmp    0x50cb17
50cb15:	33 d2                	xor    %edx,%edx
50cb17:	83 79 28 00          	cmpl   $0x0,0x28(%ecx)
50cb1b:	88 51 16             	mov    %dl,0x16(%ecx)
50cb1e:	74 0c                	je     0x50cb2c
50cb20:	c7 81 cc 00 00 00 60 	movl   $0x505f60,0xcc(%ecx)
50cb27:	5f 50 00
50cb2a:	eb 17                	jmp    0x50cb43
50cb2c:	57                   	push   %edi
50cb2d:	bf 80 5f 50 00       	mov    $0x505f80,%edi
50cb32:	84 d2                	test   %dl,%dl
50cb34:	b8 60 61 50 00       	mov    $0x506160,%eax
50cb39:	0f 45 c7             	cmovne %edi,%eax
50cb3c:	89 81 cc 00 00 00    	mov    %eax,0xcc(%ecx)
50cb42:	5f                   	pop    %edi
50cb43:	8b 06                	mov    (%esi),%eax
50cb45:	85 c0                	test   %eax,%eax
50cb47:	74 0f                	je     0x50cb58
50cb49:	8b 40 28             	mov    0x28(%eax),%eax
50cb4c:	8d 4d f4             	lea    -0xc(%ebp),%ecx
50cb4f:	51                   	push   %ecx
50cb50:	6a 12                	push   $0x12
50cb52:	56                   	push   %esi
50cb53:	ff d0                	call   *%eax
50cb55:	83 c4 0c             	add    $0xc,%esp
50cb58:	8b 4d fc             	mov    -0x4(%ebp),%ecx
50cb5b:	33 cd                	xor    %ebp,%ecx
50cb5d:	5e                   	pop    %esi
50cb5e:	e8 77 49 0d 00       	call   0x5e14da
50cb63:	8b e5                	mov    %ebp,%esp
50cb65:	5d                   	pop    %ebp
50cb66:	c3                   	ret
50cb67:	cc                   	int3
50cb68:	cc                   	int3
50cb69:	cc                   	int3
50cb6a:	cc                   	int3
50cb6b:	cc                   	int3
50cb6c:	cc                   	int3
50cb6d:	cc                   	int3
50cb6e:	cc                   	int3
50cb6f:	cc                   	int3
50cb70:	55                   	push   %ebp
50cb71:	8b ec                	mov    %esp,%ebp
50cb73:	8b 4d 08             	mov    0x8(%ebp),%ecx
50cb76:	80 79 0c 00          	cmpb   $0x0,0xc(%ecx)
50cb7a:	75 07                	jne    0x50cb83
50cb7c:	b8 01 00 00 00       	mov    $0x1,%eax
50cb81:	5d                   	pop    %ebp
50cb82:	c3                   	ret
50cb83:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
50cb87:	75 04                	jne    0x50cb8d
50cb89:	33 c0                	xor    %eax,%eax
50cb8b:	5d                   	pop    %ebp
50cb8c:	c3                   	ret
50cb8d:	8b 41 3c             	mov    0x3c(%ecx),%eax
50cb90:	83 38 00             	cmpl   $0x0,(%eax)
50cb93:	74 f4                	je     0x50cb89
50cb95:	ff b1 d4 00 00 00    	push   0xd4(%ecx)
50cb9b:	e8 00 54 02 00       	call   0x531fa0
50cba0:	33 c9                	xor    %ecx,%ecx
50cba2:	83 c4 04             	add    $0x4,%esp
50cba5:	83 f8 19             	cmp    $0x19,%eax
50cba8:	0f 9d c1             	setge  %cl
50cbab:	8b c1                	mov    %ecx,%eax
50cbad:	5d                   	pop    %ebp
50cbae:	c3                   	ret
50cbaf:	cc                   	int3
50cbb0:	55                   	push   %ebp
50cbb1:	8b ec                	mov    %esp,%ebp
50cbb3:	8b 45 08             	mov    0x8(%ebp),%eax
50cbb6:	56                   	push   %esi
50cbb7:	8b b0 88 00 00 00    	mov    0x88(%eax),%esi
50cbbd:	85 f6                	test   %esi,%esi
50cbbf:	74 6e                	je     0x50cc2f
50cbc1:	a1 90 ff 72 00       	mov    0x72ff90,%eax
50cbc6:	57                   	push   %edi
50cbc7:	66 0f 1f 84 00 00 00 	nopw   0x0(%eax,%eax,1)
50cbce:	00 00
50cbd0:	83 3d 10 18 72 00 00 	cmpl   $0x0,0x721810
50cbd7:	8b 7e 10             	mov    0x10(%esi),%edi
50cbda:	74 3d                	je     0x50cc19
50cbdc:	85 c0                	test   %eax,%eax
50cbde:	74 0a                	je     0x50cbea
50cbe0:	50                   	push   %eax
50cbe1:	ff 15 60 18 72 00    	call   *0x721860
50cbe7:	83 c4 04             	add    $0x4,%esp
50cbea:	56                   	push   %esi
50cbeb:	ff 15 3c 18 72 00    	call   *0x72183c
50cbf1:	29 05 20 00 73 00    	sub    %eax,0x730020
50cbf7:	ff 0d 44 00 73 00    	decl   0x730044
50cbfd:	56                   	push   %esi
50cbfe:	ff 15 34 18 72 00    	call   *0x721834
50cc04:	a1 90 ff 72 00       	mov    0x72ff90,%eax
50cc09:	83 c4 08             	add    $0x8,%esp
50cc0c:	85 c0                	test   %eax,%eax
50cc0e:	74 18                	je     0x50cc28
50cc10:	50                   	push   %eax
50cc11:	ff 15 68 18 72 00    	call   *0x721868
50cc17:	eb 07                	jmp    0x50cc20
50cc19:	56                   	push   %esi
50cc1a:	ff 15 34 18 72 00    	call   *0x721834
50cc20:	a1 90 ff 72 00       	mov    0x72ff90,%eax
50cc25:	83 c4 04             	add    $0x4,%esp
50cc28:	8b f7                	mov    %edi,%esi
50cc2a:	85 ff                	test   %edi,%edi
50cc2c:	75 a2                	jne    0x50cbd0
50cc2e:	5f                   	pop    %edi
50cc2f:	5e                   	pop    %esi
50cc30:	5d                   	pop    %ebp
50cc31:	c3                   	ret
50cc32:	cc                   	int3
50cc33:	cc                   	int3
50cc34:	cc                   	int3
50cc35:	cc                   	int3
50cc36:	cc                   	int3
50cc37:	cc                   	int3
50cc38:	cc                   	int3
50cc39:	cc                   	int3
50cc3a:	cc                   	int3
50cc3b:	cc                   	int3
50cc3c:	cc                   	int3
50cc3d:	cc                   	int3
50cc3e:	cc                   	int3
50cc3f:	cc                   	int3
50cc40:	55                   	push   %ebp
50cc41:	8b ec                	mov    %esp,%ebp
50cc43:	53                   	push   %ebx
50cc44:	8b 5d 0c             	mov    0xc(%ebp),%ebx
50cc47:	56                   	push   %esi
50cc48:	8b 75 08             	mov    0x8(%ebp),%esi
50cc4b:	8a 56 11             	mov    0x11(%esi),%dl
50cc4e:	0f b6 ca             	movzbl %dl,%ecx
50cc51:	3b cb                	cmp    %ebx,%ecx
50cc53:	7c 0b                	jl     0x50cc60
50cc55:	80 fa 05             	cmp    $0x5,%dl
50cc58:	74 06                	je     0x50cc60
50cc5a:	5e                   	pop    %esi
50cc5b:	33 c0                	xor    %eax,%eax
50cc5d:	5b                   	pop    %ebx
50cc5e:	5d                   	pop    %ebp
50cc5f:	c3                   	ret
50cc60:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
50cc64:	74 04                	je     0x50cc6a
50cc66:	33 c0                	xor    %eax,%eax
50cc68:	eb 13                	jmp    0x50cc7d
50cc6a:	8b 46 3c             	mov    0x3c(%esi),%eax
50cc6d:	53                   	push   %ebx
50cc6e:	50                   	push   %eax
50cc6f:	8b 08                	mov    (%eax),%ecx
50cc71:	8b 41 1c             	mov    0x1c(%ecx),%eax
50cc74:	ff d0                	call   *%eax
50cc76:	83 c4 08             	add    $0x8,%esp
50cc79:	85 c0                	test   %eax,%eax
50cc7b:	75 0e                	jne    0x50cc8b
50cc7d:	80 7e 11 05          	cmpb   $0x5,0x11(%esi)
50cc81:	75 05                	jne    0x50cc88
50cc83:	83 fb 04             	cmp    $0x4,%ebx
50cc86:	75 03                	jne    0x50cc8b
50cc88:	88 5e 11             	mov    %bl,0x11(%esi)
50cc8b:	5e                   	pop    %esi
50cc8c:	5b                   	pop    %ebx
50cc8d:	5d                   	pop    %ebp
50cc8e:	c3                   	ret
50cc8f:	cc                   	int3
50cc90:	55                   	push   %ebp
50cc91:	8b ec                	mov    %esp,%ebp
50cc93:	8b 45 0c             	mov    0xc(%ebp),%eax
50cc96:	53                   	push   %ebx
50cc97:	56                   	push   %esi
50cc98:	57                   	push   %edi
50cc99:	8b 7d 08             	mov    0x8(%ebp),%edi
50cc9c:	8d 04 40             	lea    (%eax,%eax,2),%eax
50cc9f:	c1 e0 04             	shl    $0x4,%eax
50cca2:	6a 00                	push   $0x0
50cca4:	50                   	push   %eax
50cca5:	ff 77 5c             	push   0x5c(%edi)
50cca8:	8b 5f 60             	mov    0x60(%edi),%ebx
50ccab:	e8 c0 a8 02 00       	call   0x537570
50ccb0:	8b f0                	mov    %eax,%esi
50ccb2:	83 c4 0c             	add    $0xc,%esp
50ccb5:	85 f6                	test   %esi,%esi
50ccb7:	75 0a                	jne    0x50ccc3
50ccb9:	5f                   	pop    %edi
50ccba:	5e                   	pop    %esi
50ccbb:	b8 07 00 00 00       	mov    $0x7,%eax
50ccc0:	5b                   	pop    %ebx
50ccc1:	5d                   	pop    %ebp
50ccc2:	c3                   	ret
50ccc3:	8b 45 0c             	mov    0xc(%ebp),%eax
50ccc6:	8d 0c 5b             	lea    (%ebx,%ebx,2),%ecx
50ccc9:	2b c3                	sub    %ebx,%eax
50cccb:	c1 e1 04             	shl    $0x4,%ecx
50ccce:	03 ce                	add    %esi,%ecx
50ccd0:	89 4d 08             	mov    %ecx,0x8(%ebp)
50ccd3:	8d 04 40             	lea    (%eax,%eax,2),%eax
50ccd6:	c1 e0 04             	shl    $0x4,%eax
50ccd9:	50                   	push   %eax
50ccda:	6a 00                	push   $0x0
50ccdc:	51                   	push   %ecx
50ccdd:	e8 1e 6d 0d 00       	call   0x5e3a00
50cce2:	83 c4 0c             	add    $0xc,%esp
50cce5:	89 77 5c             	mov    %esi,0x5c(%edi)
50cce8:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
50cceb:	0f 8d 82 00 00 00    	jge    0x50cd73
50ccf1:	8b 75 08             	mov    0x8(%ebp),%esi
50ccf4:	83 c6 24             	add    $0x24,%esi
50ccf7:	8b 47 18             	mov    0x18(%edi),%eax
50ccfa:	89 46 f0             	mov    %eax,-0x10(%esi)
50ccfd:	8b 47 40             	mov    0x40(%edi),%eax
50cd00:	83 38 00             	cmpl   $0x0,(%eax)
50cd03:	74 15                	je     0x50cd1a
50cd05:	8b 4f 4c             	mov    0x4c(%edi),%ecx
50cd08:	8b 47 48             	mov    0x48(%edi),%eax
50cd0b:	85 c9                	test   %ecx,%ecx
50cd0d:	7c 0b                	jl     0x50cd1a
50cd0f:	7f 04                	jg     0x50cd15
50cd11:	85 c0                	test   %eax,%eax
50cd13:	74 05                	je     0x50cd1a
50cd15:	89 4e e0             	mov    %ecx,-0x20(%esi)
50cd18:	eb 0d                	jmp    0x50cd27
50cd1a:	8b 87 94 00 00 00    	mov    0x94(%edi),%eax
50cd20:	c7 46 e0 00 00 00 00 	movl   $0x0,-0x20(%esi)
50cd27:	89 46 dc             	mov    %eax,-0x24(%esi)
50cd2a:	8b 47 34             	mov    0x34(%edi),%eax
50cd2d:	89 46 f4             	mov    %eax,-0xc(%esi)
50cd30:	ff 77 18             	push   0x18(%edi)
50cd33:	e8 f8 d8 00 00       	call   0x51a630
50cd38:	83 c4 04             	add    $0x4,%esp
50cd3b:	89 46 ec             	mov    %eax,-0x14(%esi)
50cd3e:	85 c0                	test   %eax,%eax
50cd40:	0f 84 73 ff ff ff    	je     0x50ccb9
50cd46:	8b 8f d8 00 00 00    	mov    0xd8(%edi),%ecx
50cd4c:	85 c9                	test   %ecx,%ecx
50cd4e:	74 17                	je     0x50cd67
50cd50:	8b 41 44             	mov    0x44(%ecx),%eax
50cd53:	89 46 f8             	mov    %eax,-0x8(%esi)
50cd56:	8b 41 4c             	mov    0x4c(%ecx),%eax
50cd59:	89 46 fc             	mov    %eax,-0x4(%esi)
50cd5c:	8b 41 50             	mov    0x50(%ecx),%eax
50cd5f:	89 06                	mov    %eax,(%esi)
50cd61:	8b 41 70             	mov    0x70(%ecx),%eax
50cd64:	89 46 04             	mov    %eax,0x4(%esi)
50cd67:	43                   	inc    %ebx
50cd68:	83 c6 30             	add    $0x30,%esi
50cd6b:	89 5f 60             	mov    %ebx,0x60(%edi)
50cd6e:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
50cd71:	7c 84                	jl     0x50ccf7
50cd73:	5f                   	pop    %edi
50cd74:	5e                   	pop    %esi
50cd75:	33 c0                	xor    %eax,%eax
50cd77:	5b                   	pop    %ebx
50cd78:	5d                   	pop    %ebp
50cd79:	c3                   	ret
50cd7a:	cc                   	int3
50cd7b:	cc                   	int3
50cd7c:	cc                   	int3
50cd7d:	cc                   	int3
50cd7e:	cc                   	int3
50cd7f:	cc                   	int3
50cd80:	55                   	push   %ebp
50cd81:	8b ec                	mov    %esp,%ebp
50cd83:	56                   	push   %esi
50cd84:	8b 75 08             	mov    0x8(%ebp),%esi
50cd87:	57                   	push   %edi
50cd88:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
50cd8c:	74 0f                	je     0x50cd9d
50cd8e:	56                   	push   %esi