5ebcd3:	33 db                	xor    %ebx,%ebx
5ebcd5:	39 5d 18             	cmp    %ebx,0x18(%ebp)
5ebcd8:	77 10                	ja     0x5ebcea
5ebcda:	8b 45 30             	mov    0x30(%ebp),%eax
5ebcdd:	6a 16                	push   $0x16
5ebcdf:	5e                   	pop    %esi
5ebce0:	50                   	push   %eax
5ebce1:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5ebce5:	89 70 18             	mov    %esi,0x18(%eax)
5ebce8:	eb b9                	jmp    0x5ebca3
5ebcea:	8b 75 1c             	mov    0x1c(%ebp),%esi
5ebced:	83 fe 41             	cmp    $0x41,%esi
5ebcf0:	74 12                	je     0x5ebd04
5ebcf2:	83 fe 45             	cmp    $0x45,%esi
5ebcf5:	74 0d                	je     0x5ebd04
5ebcf7:	83 fe 46             	cmp    $0x46,%esi
5ebcfa:	74 08                	je     0x5ebd04
5ebcfc:	88 5d fc             	mov    %bl,-0x4(%ebp)
5ebcff:	83 fe 47             	cmp    $0x47,%esi
5ebd02:	75 04                	jne    0x5ebd08
5ebd04:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5ebd08:	8b 4d 24             	mov    0x24(%ebp),%ecx
5ebd0b:	8b c1                	mov    %ecx,%eax
5ebd0d:	83 e0 08             	and    $0x8,%eax
5ebd10:	0b c3                	or     %ebx,%eax
5ebd12:	75 41                	jne    0x5ebd55
5ebd14:	ff 75 08             	push   0x8(%ebp)
5ebd17:	e8 8e f5 ff ff       	call   0x5eb2aa
5ebd1c:	59                   	pop    %ecx
5ebd1d:	8b c8                	mov    %eax,%ecx
5ebd1f:	85 c9                	test   %ecx,%ecx
5ebd21:	74 2f                	je     0x5ebd52
5ebd23:	8b 45 08             	mov    0x8(%ebp),%eax
5ebd26:	39 58 04             	cmp    %ebx,0x4(%eax)
5ebd29:	7f 0c                	jg     0x5ebd37
5ebd2b:	7c 04                	jl     0x5ebd31
5ebd2d:	39 18                	cmp    %ebx,(%eax)
5ebd2f:	73 06                	jae    0x5ebd37
5ebd31:	c6 45 f8 01          	movb   $0x1,-0x8(%ebp)
5ebd35:	eb 03                	jmp    0x5ebd3a
5ebd37:	88 5d f8             	mov    %bl,-0x8(%ebp)
5ebd3a:	ff 75 fc             	push   -0x4(%ebp)
5ebd3d:	ff 75 10             	push   0x10(%ebp)
5ebd40:	57                   	push   %edi
5ebd41:	ff 75 f8             	push   -0x8(%ebp)
5ebd44:	51                   	push   %ecx
5ebd45:	e8 dc fd ff ff       	call   0x5ebb26
5ebd4a:	83 c4 14             	add    $0x14,%esp
5ebd4d:	e9 ac 00 00 00       	jmp    0x5ebdfe
5ebd52:	8b 4d 24             	mov    0x24(%ebp),%ecx
5ebd55:	8b c1                	mov    %ecx,%eax
5ebd57:	83 e0 10             	and    $0x10,%eax
5ebd5a:	0b c3                	or     %ebx,%eax
5ebd5c:	74 04                	je     0x5ebd62
5ebd5e:	6a 03                	push   $0x3
5ebd60:	eb 02                	jmp    0x5ebd64
5ebd62:	6a 02                	push   $0x2
5ebd64:	83 e1 20             	and    $0x20,%ecx
5ebd67:	0b cb                	or     %ebx,%ecx
5ebd69:	58                   	pop    %eax
5ebd6a:	74 03                	je     0x5ebd6f
5ebd6c:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
5ebd6f:	83 fe 61             	cmp    $0x61,%esi
5ebd72:	7f 2b                	jg     0x5ebd9f
5ebd74:	74 0a                	je     0x5ebd80
5ebd76:	83 ee 41             	sub    $0x41,%esi
5ebd79:	74 05                	je     0x5ebd80
5ebd7b:	83 ee 04             	sub    $0x4,%esi
5ebd7e:	eb 22                	jmp    0x5ebda2
5ebd80:	ff 75 30             	push   0x30(%ebp)
5ebd83:	53                   	push   %ebx
5ebd84:	50                   	push   %eax
5ebd85:	ff 75 fc             	push   -0x4(%ebp)
5ebd88:	ff 75 20             	push   0x20(%ebp)
5ebd8b:	ff 75 18             	push   0x18(%ebp)
5ebd8e:	ff 75 14             	push   0x14(%ebp)
5ebd91:	ff 75 10             	push   0x10(%ebp)
5ebd94:	57                   	push   %edi
5ebd95:	ff 75 08             	push   0x8(%ebp)
5ebd98:	e8 12 f6 ff ff       	call   0x5eb3af
5ebd9d:	eb 5c                	jmp    0x5ebdfb
5ebd9f:	83 ee 65             	sub    $0x65,%esi
5ebda2:	ff 75 30             	push   0x30(%ebp)
5ebda5:	53                   	push   %ebx
5ebda6:	74 3a                	je     0x5ebde2
5ebda8:	83 ee 01             	sub    $0x1,%esi
5ebdab:	74 1b                	je     0x5ebdc8
5ebdad:	50                   	push   %eax
5ebdae:	ff 75 fc             	push   -0x4(%ebp)
5ebdb1:	ff 75 20             	push   0x20(%ebp)
5ebdb4:	ff 75 18             	push   0x18(%ebp)
5ebdb7:	ff 75 14             	push   0x14(%ebp)
5ebdba:	ff 75 10             	push   0x10(%ebp)
5ebdbd:	57                   	push   %edi
5ebdbe:	ff 75 08             	push   0x8(%ebp)
5ebdc1:	e8 91 fc ff ff       	call   0x5eba57
5ebdc6:	eb 33                	jmp    0x5ebdfb
5ebdc8:	ff 75 20             	push   0x20(%ebp)
5ebdcb:	ff 75 18             	push   0x18(%ebp)
5ebdce:	ff 75 14             	push   0x14(%ebp)
5ebdd1:	ff 75 10             	push   0x10(%ebp)
5ebdd4:	57                   	push   %edi
5ebdd5:	ff 75 08             	push   0x8(%ebp)
5ebdd8:	e8 f6 fa ff ff       	call   0x5eb8d3
5ebddd:	83 c4 20             	add    $0x20,%esp
5ebde0:	eb 1c                	jmp    0x5ebdfe
5ebde2:	50                   	push   %eax
5ebde3:	ff 75 fc             	push   -0x4(%ebp)
5ebde6:	ff 75 20             	push   0x20(%ebp)
5ebde9:	ff 75 18             	push   0x18(%ebp)
5ebdec:	ff 75 14             	push   0x14(%ebp)
5ebdef:	ff 75 10             	push   0x10(%ebp)
5ebdf2:	57                   	push   %edi
5ebdf3:	ff 75 08             	push   0x8(%ebp)
5ebdf6:	e8 e1 f8 ff ff       	call   0x5eb6dc
5ebdfb:	83 c4 28             	add    $0x28,%esp
5ebdfe:	5f                   	pop    %edi
5ebdff:	5e                   	pop    %esi
5ebe00:	5b                   	pop    %ebx
5ebe01:	c9                   	leave
5ebe02:	c3                   	ret
5ebe03:	8b ff                	mov    %edi,%edi
5ebe05:	55                   	push   %ebp
5ebe06:	8b ec                	mov    %esp,%ebp
5ebe08:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5ebe0b:	83 ec 0c             	sub    $0xc,%esp
5ebe0e:	8b 45 10             	mov    0x10(%ebp),%eax
5ebe11:	53                   	push   %ebx
5ebe12:	56                   	push   %esi
5ebe13:	57                   	push   %edi
5ebe14:	85 c9                	test   %ecx,%ecx
5ebe16:	75 17                	jne    0x5ebe2f
5ebe18:	85 c0                	test   %eax,%eax
5ebe1a:	74 13                	je     0x5ebe2f
5ebe1c:	8b 45 08             	mov    0x8(%ebp),%eax
5ebe1f:	85 c0                	test   %eax,%eax
5ebe21:	0f 84 ff 00 00 00    	je     0x5ebf26
5ebe27:	83 20 00             	andl   $0x0,(%eax)
5ebe2a:	e9 f7 00 00 00       	jmp    0x5ebf26
5ebe2f:	8b 5d 08             	mov    0x8(%ebp),%ebx
5ebe32:	85 db                	test   %ebx,%ebx
5ebe34:	74 03                	je     0x5ebe39
5ebe36:	83 0b ff             	orl    $0xffffffff,(%ebx)
5ebe39:	8b 75 18             	mov    0x18(%ebp),%esi
5ebe3c:	33 ff                	xor    %edi,%edi
5ebe3e:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
5ebe43:	76 07                	jbe    0x5ebe4c
5ebe45:	6a 16                	push   $0x16
5ebe47:	e9 04 01 00 00       	jmp    0x5ebf50
5ebe4c:	80 7e 14 00          	cmpb   $0x0,0x14(%esi)
5ebe50:	75 0d                	jne    0x5ebe5f
5ebe52:	8b ce                	mov    %esi,%ecx
5ebe54:	e8 27 e9 fe ff       	call   0x5da780
5ebe59:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5ebe5c:	8b 45 10             	mov    0x10(%ebp),%eax
5ebe5f:	8b 56 0c             	mov    0xc(%esi),%edx
5ebe62:	8b 5a 08             	mov    0x8(%edx),%ebx
5ebe65:	81 fb e9 fd 00 00    	cmp    $0xfde9,%ebx
5ebe6b:	89 5d f8             	mov    %ebx,-0x8(%ebp)
5ebe6e:	8b 5d 08             	mov    0x8(%ebp),%ebx
5ebe71:	75 37                	jne    0x5ebeaa
5ebe73:	56                   	push   %esi
5ebe74:	8d 45 f4             	lea    -0xc(%ebp),%eax
5ebe77:	33 ff                	xor    %edi,%edi
5ebe79:	50                   	push   %eax
5ebe7a:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
5ebe7e:	50                   	push   %eax
5ebe7f:	51                   	push   %ecx
5ebe80:	89 7d f4             	mov    %edi,-0xc(%ebp)
5ebe83:	89 7d f8             	mov    %edi,-0x8(%ebp)
5ebe86:	e8 5e 91 00 00       	call   0x5f4fe9
5ebe8b:	83 c4 10             	add    $0x10,%esp
5ebe8e:	85 db                	test   %ebx,%ebx
5ebe90:	74 02                	je     0x5ebe94
5ebe92:	89 03                	mov    %eax,(%ebx)
5ebe94:	83 f8 04             	cmp    $0x4,%eax
5ebe97:	0f 8e 89 00 00 00    	jle    0x5ebf26
5ebe9d:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
5ebea1:	74 03                	je     0x5ebea6
5ebea3:	8b 7e 18             	mov    0x18(%esi),%edi
5ebea6:	8b c7                	mov    %edi,%eax
5ebea8:	eb 36                	jmp    0x5ebee0
5ebeaa:	39 ba a8 00 00 00    	cmp    %edi,0xa8(%edx)
5ebeb0:	75 49                	jne    0x5ebefb
5ebeb2:	66 8b 55 14          	mov    0x14(%ebp),%dx
5ebeb6:	c7 45 fc ff 00 00 00 	movl   $0xff,-0x4(%ebp)
5ebebd:	66 3b 55 fc          	cmp    -0x4(%ebp),%dx
5ebec1:	76 22                	jbe    0x5ebee5
5ebec3:	85 c9                	test   %ecx,%ecx
5ebec5:	74 0f                	je     0x5ebed6
5ebec7:	85 c0                	test   %eax,%eax
5ebec9:	74 0b                	je     0x5ebed6
5ebecb:	50                   	push   %eax
5ebecc:	57                   	push   %edi
5ebecd:	51                   	push   %ecx
5ebece:	e8 9d 6d fe ff       	call   0x5d2c70
5ebed3:	83 c4 0c             	add    $0xc,%esp
5ebed6:	6a 2a                	push   $0x2a
5ebed8:	58                   	pop    %eax
5ebed9:	89 46 18             	mov    %eax,0x18(%esi)
5ebedc:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
5ebee0:	5f                   	pop    %edi
5ebee1:	5e                   	pop    %esi
5ebee2:	5b                   	pop    %ebx
5ebee3:	c9                   	leave
5ebee4:	c3                   	ret
5ebee5:	85 c9                	test   %ecx,%ecx
5ebee7:	74 06                	je     0x5ebeef
5ebee9:	85 c0                	test   %eax,%eax
5ebeeb:	74 61                	je     0x5ebf4e
5ebeed:	88 11                	mov    %dl,(%ecx)
5ebeef:	85 db                	test   %ebx,%ebx
5ebef1:	74 33                	je     0x5ebf26
5ebef3:	c7 03 01 00 00 00    	movl   $0x1,(%ebx)
5ebef9:	eb 2b                	jmp    0x5ebf26
5ebefb:	8d 55 fc             	lea    -0x4(%ebp),%edx
5ebefe:	89 7d fc             	mov    %edi,-0x4(%ebp)
5ebf01:	52                   	push   %edx
5ebf02:	57                   	push   %edi
5ebf03:	50                   	push   %eax
5ebf04:	51                   	push   %ecx
5ebf05:	6a 01                	push   $0x1
5ebf07:	8d 45 14             	lea    0x14(%ebp),%eax
5ebf0a:	50                   	push   %eax
5ebf0b:	57                   	push   %edi
5ebf0c:	ff 75 f8             	push   -0x8(%ebp)
5ebf0f:	e8 29 2b 00 00       	call   0x5eea3d
5ebf14:	83 c4 20             	add    $0x20,%esp
5ebf17:	85 c0                	test   %eax,%eax
5ebf19:	74 0f                	je     0x5ebf2a
5ebf1b:	39 7d fc             	cmp    %edi,-0x4(%ebp)
5ebf1e:	75 b6                	jne    0x5ebed6
5ebf20:	85 db                	test   %ebx,%ebx
5ebf22:	74 02                	je     0x5ebf26
5ebf24:	89 03                	mov    %eax,(%ebx)
5ebf26:	33 c0                	xor    %eax,%eax
5ebf28:	eb b6                	jmp    0x5ebee0
5ebf2a:	ff 15 58 21 60 00    	call   *0x602158
5ebf30:	83 f8 7a             	cmp    $0x7a,%eax
5ebf33:	75 a1                	jne    0x5ebed6
5ebf35:	8b 45 0c             	mov    0xc(%ebp),%eax
5ebf38:	85 c0                	test   %eax,%eax
5ebf3a:	74 12                	je     0x5ebf4e
5ebf3c:	39 7d 10             	cmp    %edi,0x10(%ebp)
5ebf3f:	76 0d                	jbe    0x5ebf4e
5ebf41:	ff 75 10             	push   0x10(%ebp)
5ebf44:	57                   	push   %edi
5ebf45:	50                   	push   %eax
5ebf46:	e8 25 6d fe ff       	call   0x5d2c70
5ebf4b:	83 c4 0c             	add    $0xc,%esp
5ebf4e:	6a 22                	push   $0x22
5ebf50:	5b                   	pop    %ebx
5ebf51:	56                   	push   %esi
5ebf52:	57                   	push   %edi
5ebf53:	57                   	push   %edi
5ebf54:	57                   	push   %edi
5ebf55:	57                   	push   %edi
5ebf56:	89 5e 18             	mov    %ebx,0x18(%esi)
5ebf59:	57                   	push   %edi
5ebf5a:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
5ebf5e:	e8 00 a2 fe ff       	call   0x5d6163
5ebf63:	83 c4 18             	add    $0x18,%esp
5ebf66:	8b c3                	mov    %ebx,%eax
5ebf68:	e9 73 ff ff ff       	jmp    0x5ebee0
5ebf6d:	8b ff                	mov    %edi,%edi
5ebf6f:	55                   	push   %ebp
5ebf70:	8b ec                	mov    %esp,%ebp
5ebf72:	51                   	push   %ecx
5ebf73:	53                   	push   %ebx
5ebf74:	56                   	push   %esi
5ebf75:	57                   	push   %edi
5ebf76:	8b 7d 0c             	mov    0xc(%ebp),%edi
5ebf79:	85 ff                	test   %edi,%edi
5ebf7b:	0f 84 0a 01 00 00    	je     0x5ec08b
5ebf81:	8b 5d 10             	mov    0x10(%ebp),%ebx
5ebf84:	85 db                	test   %ebx,%ebx
5ebf86:	0f 84 ff 00 00 00    	je     0x5ec08b
5ebf8c:	80 3f 00             	cmpb   $0x0,(%edi)
5ebf8f:	75 15                	jne    0x5ebfa6
5ebf91:	8b 45 08             	mov    0x8(%ebp),%eax
5ebf94:	85 c0                	test   %eax,%eax
5ebf96:	0f 84 fd 00 00 00    	je     0x5ec099
5ebf9c:	33 c9                	xor    %ecx,%ecx
5ebf9e:	66 89 08             	mov    %cx,(%eax)
5ebfa1:	e9 f3 00 00 00       	jmp    0x5ec099
5ebfa6:	8b 75 14             	mov    0x14(%ebp),%esi
5ebfa9:	80 7e 14 00          	cmpb   $0x0,0x14(%esi)
5ebfad:	75 07                	jne    0x5ebfb6
5ebfaf:	8b ce                	mov    %esi,%ecx
5ebfb1:	e8 ca e7 fe ff       	call   0x5da780
5ebfb6:	8b 46 0c             	mov    0xc(%esi),%eax
5ebfb9:	8b 48 08             	mov    0x8(%eax),%ecx
5ebfbc:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5ebfbf:	81 f9 e9 fd 00 00    	cmp    $0xfde9,%ecx
5ebfc5:	75 23                	jne    0x5ebfea
5ebfc7:	56                   	push   %esi
5ebfc8:	68 94 70 71 00       	push   $0x717094
5ebfcd:	53                   	push   %ebx
5ebfce:	57                   	push   %edi
5ebfcf:	ff 75 08             	push   0x8(%ebp)
5ebfd2:	e8 8c 38 00 00       	call   0x5ef863
5ebfd7:	83 c4 14             	add    $0x14,%esp
5ebfda:	85 c0                	test   %eax,%eax
5ebfdc:	0f 89 b9 00 00 00    	jns    0x5ec09b
5ebfe2:	83 c8 ff             	or     $0xffffffff,%eax
5ebfe5:	e9 b1 00 00 00       	jmp    0x5ec09b
5ebfea:	33 d2                	xor    %edx,%edx
5ebfec:	39 90 a8 00 00 00    	cmp    %edx,0xa8(%eax)
5ebff2:	75 13                	jne    0x5ec007
5ebff4:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ebff7:	85 c9                	test   %ecx,%ecx
5ebff9:	0f 84 87 00 00 00    	je     0x5ec086
5ebfff:	0f b6 07             	movzbl (%edi),%eax
5ec002:	66 89 01             	mov    %ax,(%ecx)
5ec005:	eb 7f                	jmp    0x5ec086
5ec007:	0f b6 0f             	movzbl (%edi),%ecx
5ec00a:	8b 00                	mov    (%eax),%eax
5ec00c:	66 39 14 48          	cmp    %dx,(%eax,%ecx,2)
5ec010:	7d 54                	jge    0x5ec066
5ec012:	8b 46 0c             	mov    0xc(%esi),%eax
5ec015:	8b 48 04             	mov    0x4(%eax),%ecx
5ec018:	83 f9 01             	cmp    $0x1,%ecx
5ec01b:	7e 23                	jle    0x5ec040
5ec01d:	3b d9                	cmp    %ecx,%ebx
5ec01f:	7c 1f                	jl     0x5ec040
5ec021:	33 c0                	xor    %eax,%eax
5ec023:	39 45 08             	cmp    %eax,0x8(%ebp)
5ec026:	0f 95 c0             	setne  %al
5ec029:	50                   	push   %eax
5ec02a:	ff 75 08             	push   0x8(%ebp)
5ec02d:	51                   	push   %ecx
5ec02e:	57                   	push   %edi
5ec02f:	6a 09                	push   $0x9
5ec031:	ff 75 fc             	push   -0x4(%ebp)
5ec034:	e8 08 2b 00 00       	call   0x5eeb41
5ec039:	83 c4 18             	add    $0x18,%esp
5ec03c:	85 c0                	test   %eax,%eax
5ec03e:	75 0e                	jne    0x5ec04e
5ec040:	8b 46 0c             	mov    0xc(%esi),%eax
5ec043:	3b 58 04             	cmp    0x4(%eax),%ebx
5ec046:	72 0e                	jb     0x5ec056
5ec048:	80 7f 01 00          	cmpb   $0x0,0x1(%edi)
5ec04c:	74 08                	je     0x5ec056
5ec04e:	8b 46 0c             	mov    0xc(%esi),%eax
5ec051:	8b 40 04             	mov    0x4(%eax),%eax
5ec054:	eb 45                	jmp    0x5ec09b
5ec056:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
5ec05a:	c7 46 18 2a 00 00 00 	movl   $0x2a,0x18(%esi)
5ec061:	e9 7c ff ff ff       	jmp    0x5ebfe2
5ec066:	33 c0                	xor    %eax,%eax