5edb0c:	89 5d f8             	mov    %ebx,-0x8(%ebp)
5edb0f:	e8 0c 01 00 00       	call   0x5edc20
5edb14:	f6 c3 08             	test   $0x8,%bl
5edb17:	75 0a                	jne    0x5edb23
5edb19:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5edb1c:	8b f7                	mov    %edi,%esi
5edb1e:	89 45 0c             	mov    %eax,0xc(%ebp)
5edb21:	eb 41                	jmp    0x5edb64
5edb23:	8b 5d f0             	mov    -0x10(%ebp),%ebx
5edb26:	56                   	push   %esi
5edb27:	53                   	push   %ebx
5edb28:	ff 75 f8             	push   -0x8(%ebp)
5edb2b:	e8 2e f5 ff ff       	call   0x5ed05e
5edb30:	83 c4 0c             	add    $0xc,%esp
5edb33:	84 c0                	test   %al,%al
5edb35:	74 31                	je     0x5edb68
5edb37:	e8 bd f4 ff ff       	call   0x5ecff9
5edb3c:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
5edb42:	8b 45 f8             	mov    -0x8(%ebp),%eax
5edb45:	a8 01                	test   $0x1,%al
5edb47:	75 08                	jne    0x5edb51
5edb49:	83 cb ff             	or     $0xffffffff,%ebx
5edb4c:	83 ce ff             	or     $0xffffffff,%esi
5edb4f:	eb 23                	jmp    0x5edb74
5edb51:	a8 02                	test   $0x2,%al
5edb53:	74 07                	je     0x5edb5c
5edb55:	be 00 00 00 80       	mov    $0x80000000,%esi
5edb5a:	eb 08                	jmp    0x5edb64
5edb5c:	83 cf ff             	or     $0xffffffff,%edi
5edb5f:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
5edb64:	8b df                	mov    %edi,%ebx
5edb66:	eb 0c                	jmp    0x5edb74
5edb68:	f6 45 f8 02          	testb  $0x2,-0x8(%ebp)
5edb6c:	74 06                	je     0x5edb74
5edb6e:	f7 db                	neg    %ebx
5edb70:	13 f7                	adc    %edi,%esi
5edb72:	f7 de                	neg    %esi
5edb74:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
5edb78:	0f 84 a7 fd ff ff    	je     0x5ed925
5edb7e:	8b 45 c4             	mov    -0x3c(%ebp),%eax
5edb81:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
5edb88:	e9 98 fd ff ff       	jmp    0x5ed925
5edb8d:	8b ff                	mov    %edi,%edi
5edb8f:	55                   	push   %ebp
5edb90:	8b ec                	mov    %esp,%ebp
5edb92:	53                   	push   %ebx
5edb93:	57                   	push   %edi
5edb94:	8b f9                	mov    %ecx,%edi
5edb96:	8b 4d 08             	mov    0x8(%ebp),%ecx
5edb99:	c6 47 0c 00          	movb   $0x0,0xc(%edi)
5edb9d:	8d 5f 04             	lea    0x4(%edi),%ebx
5edba0:	85 c9                	test   %ecx,%ecx
5edba2:	74 09                	je     0x5edbad
5edba4:	8b 01                	mov    (%ecx),%eax
5edba6:	89 03                	mov    %eax,(%ebx)
5edba8:	8b 41 04             	mov    0x4(%ecx),%eax
5edbab:	eb 15                	jmp    0x5edbc2
5edbad:	83 3d a8 10 73 00 00 	cmpl   $0x0,0x7310a8
5edbb4:	75 11                	jne    0x5edbc7
5edbb6:	a1 38 8c 72 00       	mov    0x728c38,%eax
5edbbb:	89 03                	mov    %eax,(%ebx)
5edbbd:	a1 3c 8c 72 00       	mov    0x728c3c,%eax
5edbc2:	89 43 04             	mov    %eax,0x4(%ebx)
5edbc5:	eb 41                	jmp    0x5edc08
5edbc7:	56                   	push   %esi
5edbc8:	e8 6c 68 01 00       	call   0x604439
5edbcd:	89 07                	mov    %eax,(%edi)
5edbcf:	8d 77 08             	lea    0x8(%edi),%esi
5edbd2:	53                   	push   %ebx
5edbd3:	50                   	push   %eax
5edbd4:	8b 48 4c             	mov    0x4c(%eax),%ecx
5edbd7:	89 0b                	mov    %ecx,(%ebx)
5edbd9:	8b 48 48             	mov    0x48(%eax),%ecx
5edbdc:	89 0e                	mov    %ecx,(%esi)
5edbde:	e8 eb 6b 01 00       	call   0x6047ce
5edbe3:	56                   	push   %esi
5edbe4:	ff 37                	push   (%edi)
5edbe6:	e8 10 6c 01 00       	call   0x6047fb
5edbeb:	8b 0f                	mov    (%edi),%ecx
5edbed:	83 c4 10             	add    $0x10,%esp
5edbf0:	8b 81 50 03 00 00    	mov    0x350(%ecx),%eax
5edbf6:	5e                   	pop    %esi
5edbf7:	a8 02                	test   $0x2,%al
5edbf9:	75 0d                	jne    0x5edc08
5edbfb:	83 c8 02             	or     $0x2,%eax
5edbfe:	89 81 50 03 00 00    	mov    %eax,0x350(%ecx)
5edc04:	c6 47 0c 01          	movb   $0x1,0xc(%edi)
5edc08:	8b c7                	mov    %edi,%eax
5edc0a:	5f                   	pop    %edi
5edc0b:	5b                   	pop    %ebx
5edc0c:	5d                   	pop    %ebp
5edc0d:	c2 04 00             	ret    $0x4
5edc10:	80 79 0c 00          	cmpb   $0x0,0xc(%ecx)
5edc14:	74 09                	je     0x5edc1f
5edc16:	8b 01                	mov    (%ecx),%eax
5edc18:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
5edc1f:	c3                   	ret
5edc20:	8b ff                	mov    %edi,%edi
5edc22:	55                   	push   %ebp
5edc23:	8b ec                	mov    %esp,%ebp
5edc25:	8b 01                	mov    (%ecx),%eax
5edc27:	48                   	dec    %eax
5edc28:	89 01                	mov    %eax,(%ecx)
5edc2a:	8a 4d 08             	mov    0x8(%ebp),%cl
5edc2d:	84 c9                	test   %cl,%cl
5edc2f:	74 14                	je     0x5edc45
5edc31:	38 08                	cmp    %cl,(%eax)
5edc33:	74 10                	je     0x5edc45
5edc35:	e8 bf f3 ff ff       	call   0x5ecff9
5edc3a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5edc40:	e8 da f2 ff ff       	call   0x5ecf1f
5edc45:	5d                   	pop    %ebp
5edc46:	c2 04 00             	ret    $0x4
5edc49:	8b ff                	mov    %edi,%edi
5edc4b:	55                   	push   %ebp
5edc4c:	8b ec                	mov    %esp,%ebp
5edc4e:	8b 01                	mov    (%ecx),%eax
5edc50:	83 c0 fe             	add    $0xfffffffe,%eax
5edc53:	89 01                	mov    %eax,(%ecx)
5edc55:	66 8b 4d 08          	mov    0x8(%ebp),%cx
5edc59:	66 85 c9             	test   %cx,%cx
5edc5c:	74 15                	je     0x5edc73
5edc5e:	66 39 08             	cmp    %cx,(%eax)
5edc61:	74 10                	je     0x5edc73
5edc63:	e8 91 f3 ff ff       	call   0x5ecff9
5edc68:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5edc6e:	e8 ac f2 ff ff       	call   0x5ecf1f
5edc73:	5d                   	pop    %ebp
5edc74:	c2 04 00             	ret    $0x4
5edc77:	83 39 00             	cmpl   $0x0,(%ecx)
5edc7a:	75 13                	jne    0x5edc8f
5edc7c:	e8 78 f3 ff ff       	call   0x5ecff9
5edc81:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5edc87:	e8 93 f2 ff ff       	call   0x5ecf1f
5edc8c:	32 c0                	xor    %al,%al
5edc8e:	c3                   	ret
5edc8f:	b0 01                	mov    $0x1,%al
5edc91:	c3                   	ret
5edc92:	8b ff                	mov    %edi,%edi
5edc94:	55                   	push   %ebp
5edc95:	8b ec                	mov    %esp,%ebp
5edc97:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5edc9a:	8d 41 01             	lea    0x1(%ecx),%eax
5edc9d:	3d 00 01 00 00       	cmp    $0x100,%eax
5edca2:	77 0c                	ja     0x5edcb0
5edca4:	8b 45 08             	mov    0x8(%ebp),%eax
5edca7:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
5edcab:	23 45 10             	and    0x10(%ebp),%eax
5edcae:	5d                   	pop    %ebp
5edcaf:	c3                   	ret
5edcb0:	33 c0                	xor    %eax,%eax
5edcb2:	5d                   	pop    %ebp
5edcb3:	c3                   	ret
5edcb4:	8b ff                	mov    %edi,%edi
5edcb6:	55                   	push   %ebp
5edcb7:	8b ec                	mov    %esp,%ebp
5edcb9:	8b 4d 10             	mov    0x10(%ebp),%ecx
5edcbc:	56                   	push   %esi
5edcbd:	85 c9                	test   %ecx,%ecx
5edcbf:	74 30                	je     0x5edcf1
5edcc1:	8b 55 08             	mov    0x8(%ebp),%edx
5edcc4:	8b 31                	mov    (%ecx),%esi
5edcc6:	8d 42 01             	lea    0x1(%edx),%eax
5edcc9:	3d 00 01 00 00       	cmp    $0x100,%eax
5edcce:	77 0b                	ja     0x5edcdb
5edcd0:	8b 06                	mov    (%esi),%eax
5edcd2:	0f b7 04 50          	movzwl (%eax,%edx,2),%eax
5edcd6:	23 45 0c             	and    0xc(%ebp),%eax
5edcd9:	eb 2a                	jmp    0x5edd05
5edcdb:	83 7e 04 01          	cmpl   $0x1,0x4(%esi)
5edcdf:	7e 0c                	jle    0x5edced
5edce1:	51                   	push   %ecx
5edce2:	ff 75 0c             	push   0xc(%ebp)
5edce5:	52                   	push   %edx
5edce6:	e8 18 6a 01 00       	call   0x604703
5edceb:	eb 15                	jmp    0x5edd02
5edced:	33 c0                	xor    %eax,%eax
5edcef:	eb 14                	jmp    0x5edd05
5edcf1:	ff 75 0c             	push   0xc(%ebp)
5edcf4:	ff 75 08             	push   0x8(%ebp)
5edcf7:	e8 95 2c 01 00       	call   0x600991
5edcfc:	50                   	push   %eax
5edcfd:	e8 90 ff ff ff       	call   0x5edc92
5edd02:	83 c4 0c             	add    $0xc,%esp
5edd05:	5e                   	pop    %esi
5edd06:	5d                   	pop    %ebp
5edd07:	c3                   	ret
5edd08:	8b ff                	mov    %edi,%edi
5edd0a:	55                   	push   %ebp
5edd0b:	8b ec                	mov    %esp,%ebp
5edd0d:	51                   	push   %ecx
5edd0e:	6a 01                	push   $0x1
5edd10:	ff 75 10             	push   0x10(%ebp)
5edd13:	51                   	push   %ecx
5edd14:	51                   	push   %ecx
5edd15:	8b c4                	mov    %esp,%eax
5edd17:	ff 75 0c             	push   0xc(%ebp)
5edd1a:	ff 75 08             	push   0x8(%ebp)
5edd1d:	50                   	push   %eax
5edd1e:	e8 7c f3 ff ff       	call   0x5ed09f
5edd23:	83 c4 0c             	add    $0xc,%esp
5edd26:	6a 00                	push   $0x0
5edd28:	e8 8d f3 ff ff       	call   0x5ed0ba
5edd2d:	83 c4 14             	add    $0x14,%esp
5edd30:	c9                   	leave
5edd31:	c3                   	ret
5edd32:	8b ff                	mov    %edi,%edi
5edd34:	55                   	push   %ebp
5edd35:	8b ec                	mov    %esp,%ebp
5edd37:	51                   	push   %ecx
5edd38:	6a 00                	push   $0x0
5edd3a:	ff 75 10             	push   0x10(%ebp)
5edd3d:	51                   	push   %ecx
5edd3e:	51                   	push   %ecx
5edd3f:	8b c4                	mov    %esp,%eax
5edd41:	ff 75 0c             	push   0xc(%ebp)
5edd44:	ff 75 08             	push   0x8(%ebp)
5edd47:	50                   	push   %eax
5edd48:	e8 52 f3 ff ff       	call   0x5ed09f
5edd4d:	83 c4 0c             	add    $0xc,%esp
5edd50:	6a 00                	push   $0x0
5edd52:	e8 63 f3 ff ff       	call   0x5ed0ba
5edd57:	83 c4 14             	add    $0x14,%esp
5edd5a:	c9                   	leave
5edd5b:	c3                   	ret
5edd5c:	8b ff                	mov    %edi,%edi
5edd5e:	55                   	push   %ebp
5edd5f:	8b ec                	mov    %esp,%ebp
5edd61:	51                   	push   %ecx
5edd62:	6a 00                	push   $0x0
5edd64:	ff 75 10             	push   0x10(%ebp)
5edd67:	51                   	push   %ecx
5edd68:	51                   	push   %ecx
5edd69:	8b c4                	mov    %esp,%eax
5edd6b:	ff 75 0c             	push   0xc(%ebp)
5edd6e:	ff 75 08             	push   0x8(%ebp)
5edd71:	50                   	push   %eax
5edd72:	e8 28 f3 ff ff       	call   0x5ed09f
5edd77:	83 c4 0c             	add    $0xc,%esp
5edd7a:	6a 00                	push   $0x0
5edd7c:	e8 66 fb ff ff       	call   0x5ed8e7
5edd81:	83 c4 14             	add    $0x14,%esp
5edd84:	c9                   	leave
5edd85:	c3                   	ret
5edd86:	8b ff                	mov    %edi,%edi
5edd88:	55                   	push   %ebp
5edd89:	8b ec                	mov    %esp,%ebp
5edd8b:	51                   	push   %ecx
5edd8c:	6a 01                	push   $0x1
5edd8e:	ff 75 10             	push   0x10(%ebp)
5edd91:	51                   	push   %ecx
5edd92:	51                   	push   %ecx
5edd93:	8b c4                	mov    %esp,%eax
5edd95:	ff 75 0c             	push   0xc(%ebp)
5edd98:	ff 75 08             	push   0x8(%ebp)
5edd9b:	50                   	push   %eax
5edd9c:	e8 fe f2 ff ff       	call   0x5ed09f
5edda1:	83 c4 0c             	add    $0xc,%esp
5edda4:	6a 00                	push   $0x0
5edda6:	e8 34 f5 ff ff       	call   0x5ed2df
5eddab:	83 c4 14             	add    $0x14,%esp
5eddae:	c9                   	leave
5eddaf:	c3                   	ret
5eddb0:	8b ff                	mov    %edi,%edi
5eddb2:	55                   	push   %ebp
5eddb3:	8b ec                	mov    %esp,%ebp
5eddb5:	51                   	push   %ecx
5eddb6:	8b 45 08             	mov    0x8(%ebp),%eax
5eddb9:	6a 01                	push   $0x1
5eddbb:	6a 0a                	push   $0xa
5eddbd:	51                   	push   %ecx
5eddbe:	51                   	push   %ecx
5eddbf:	8b cc                	mov    %esp,%ecx
5eddc1:	6a 00                	push   $0x0
5eddc3:	83 61 04 00          	andl   $0x0,0x4(%ecx)
5eddc7:	89 01                	mov    %eax,(%ecx)
5eddc9:	e8 11 f5 ff ff       	call   0x5ed2df
5eddce:	83 c4 14             	add    $0x14,%esp
5eddd1:	c9                   	leave
5eddd2:	c3                   	ret
5eddd3:	8b ff                	mov    %edi,%edi
5eddd5:	55                   	push   %ebp
5eddd6:	8b ec                	mov    %esp,%ebp
5eddd8:	51                   	push   %ecx
5eddd9:	8b 45 08             	mov    0x8(%ebp),%eax
5edddc:	6a 01                	push   $0x1
5eddde:	6a 0a                	push   $0xa
5edde0:	51                   	push   %ecx
5edde1:	51                   	push   %ecx
5edde2:	8b cc                	mov    %esp,%ecx
5edde4:	6a 00                	push   $0x0
5edde6:	83 61 04 00          	andl   $0x0,0x4(%ecx)
5eddea:	89 01                	mov    %eax,(%ecx)
5eddec:	e8 c9 f2 ff ff       	call   0x5ed0ba
5eddf1:	83 c4 14             	add    $0x14,%esp
5eddf4:	c9                   	leave
5eddf5:	c3                   	ret
5eddf6:	8b ff                	mov    %edi,%edi
5eddf8:	55                   	push   %ebp
5eddf9:	8b ec                	mov    %esp,%ebp
5eddfb:	56                   	push   %esi
5eddfc:	8b 75 08             	mov    0x8(%ebp),%esi
5eddff:	85 f6                	test   %esi,%esi
5ede01:	75 15                	jne    0x5ede18
5ede03:	e8 f1 f1 ff ff       	call   0x5ecff9
5ede08:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5ede0e:	e8 0c f1 ff ff       	call   0x5ecf1f
5ede13:	83 c8 ff             	or     $0xffffffff,%eax
5ede16:	eb 52                	jmp    0x5ede6a
5ede18:	8b 46 0c             	mov    0xc(%esi),%eax
5ede1b:	57                   	push   %edi
5ede1c:	83 cf ff             	or     $0xffffffff,%edi
5ede1f:	90                   	nop
5ede20:	c1 e8 0d             	shr    $0xd,%eax
5ede23:	a8 01                	test   $0x1,%al
5ede25:	74 39                	je     0x5ede60
5ede27:	56                   	push   %esi
5ede28:	e8 2f d2 00 00       	call   0x5fb05c
5ede2d:	56                   	push   %esi
5ede2e:	8b f8                	mov    %eax,%edi
5ede30:	e8 48 6d 01 00       	call   0x604b7d
5ede35:	56                   	push   %esi
5ede36:	e8 6d 19 01 00       	call   0x5ff7a8
5ede3b:	50                   	push   %eax
5ede3c:	e8 ad 6a 01 00       	call   0x6048ee
5ede41:	83 c4 10             	add    $0x10,%esp
5ede44:	85 c0                	test   %eax,%eax
5ede46:	79 05                	jns    0x5ede4d
5ede48:	83 cf ff             	or     $0xffffffff,%edi
5ede4b:	eb 13                	jmp    0x5ede60
5ede4d:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
5ede51:	74 0d                	je     0x5ede60
5ede53:	ff 76 1c             	push   0x1c(%esi)
5ede56:	e8 cd 69 01 00       	call   0x604828
5ede5b:	83 66 1c 00          	andl   $0x0,0x1c(%esi)
5ede5f:	59                   	pop    %ecx
5ede60:	56                   	push   %esi
5ede61:	e8 1a 6c 01 00       	call   0x604a80
5ede66:	59                   	pop    %ecx
5ede67:	8b c7                	mov    %edi,%eax
5ede69:	5f                   	pop    %edi
5ede6a:	5e                   	pop    %esi
5ede6b:	5d                   	pop    %ebp
5ede6c:	c3                   	ret
5ede6d:	6a 10                	push   $0x10
5ede6f:	68 28 1a 70 00       	push   $0x701a28
5ede74:	e8 97 46 ff ff       	call   0x5e2510
5ede79:	8b 75 08             	mov    0x8(%ebp),%esi
5ede7c:	89 75 e0             	mov    %esi,-0x20(%ebp)
5ede7f:	85 f6                	test   %esi,%esi