5eedb2:	ab                   	stos   %eax,%es:(%edi)
5eedb3:	8b c1                	mov    %ecx,%eax
5eedb5:	8b bd a0 fb ff ff    	mov    -0x460(%ebp),%edi
5eedbb:	83 e0 02             	and    $0x2,%eax
5eedbe:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
5eedc4:	0b c2                	or     %edx,%eax
5eedc6:	89 bd 90 fb ff ff    	mov    %edi,-0x470(%ebp)
5eedcc:	89 9d 94 fb ff ff    	mov    %ebx,-0x46c(%ebp)
5eedd2:	89 95 98 fb ff ff    	mov    %edx,-0x468(%ebp)
5eedd8:	75 0a                	jne    0x5eede4
5eedda:	88 95 9c fb ff ff    	mov    %dl,-0x464(%ebp)
5eede0:	85 ff                	test   %edi,%edi
5eede2:	75 07                	jne    0x5eedeb
5eede4:	c6 85 9c fb ff ff 01 	movb   $0x1,-0x464(%ebp)
5eedeb:	ff 75 20             	push   0x20(%ebp)
5eedee:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
5eedf4:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
5eedfa:	8d 85 80 fb ff ff    	lea    -0x480(%ebp),%eax
5eee00:	50                   	push   %eax
5eee01:	ff 75 18             	push   0x18(%ebp)
5eee04:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
5eee0a:	ff 75 0c             	push   0xc(%ebp)
5eee0d:	51                   	push   %ecx
5eee0e:	50                   	push   %eax
5eee0f:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5eee15:	e8 ba 06 00 00       	call   0x5ef4d4
5eee1a:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
5eee1e:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5eee24:	e8 a0 0e 00 00       	call   0x5efcc9
5eee29:	8b f0                	mov    %eax,%esi
5eee2b:	85 ff                	test   %edi,%edi
5eee2d:	74 4b                	je     0x5eee7a
5eee2f:	8b 45 08             	mov    0x8(%ebp),%eax
5eee32:	33 c9                	xor    %ecx,%ecx
5eee34:	83 e0 01             	and    $0x1,%eax
5eee37:	0b c1                	or     %ecx,%eax
5eee39:	74 1c                	je     0x5eee57
5eee3b:	85 db                	test   %ebx,%ebx
5eee3d:	75 04                	jne    0x5eee43
5eee3f:	85 f6                	test   %esi,%esi
5eee41:	75 6d                	jne    0x5eeeb0
5eee43:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5eee49:	3b c3                	cmp    %ebx,%eax
5eee4b:	75 2a                	jne    0x5eee77
5eee4d:	85 f6                	test   %esi,%esi
5eee4f:	78 29                	js     0x5eee7a
5eee51:	3b f3                	cmp    %ebx,%esi
5eee53:	76 25                	jbe    0x5eee7a
5eee55:	eb 59                	jmp    0x5eeeb0
5eee57:	8b 85 8c fb ff ff    	mov    -0x474(%ebp),%eax
5eee5d:	0b c1                	or     %ecx,%eax
5eee5f:	74 4b                	je     0x5eeeac
5eee61:	85 db                	test   %ebx,%ebx
5eee63:	74 15                	je     0x5eee7a
5eee65:	85 f6                	test   %esi,%esi
5eee67:	79 04                	jns    0x5eee6d
5eee69:	88 0f                	mov    %cl,(%edi)
5eee6b:	eb 0d                	jmp    0x5eee7a
5eee6d:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5eee73:	3b c3                	cmp    %ebx,%eax
5eee75:	74 4b                	je     0x5eeec2
5eee77:	88 0c 07             	mov    %cl,(%edi,%eax,1)
5eee7a:	8d 8d e4 fb ff ff    	lea    -0x41c(%ebp),%ecx
5eee80:	e8 c7 06 00 00       	call   0x5ef54c
5eee85:	80 bd 88 fb ff ff 00 	cmpb   $0x0,-0x478(%ebp)
5eee8c:	74 0d                	je     0x5eee9b
5eee8e:	8b 8d 7c fb ff ff    	mov    -0x484(%ebp),%ecx
5eee94:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5eee9b:	5f                   	pop    %edi
5eee9c:	8b c6                	mov    %esi,%eax
5eee9e:	5e                   	pop    %esi
5eee9f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5eeea2:	33 cd                	xor    %ebp,%ecx
5eeea4:	5b                   	pop    %ebx
5eeea5:	e8 30 26 ff ff       	call   0x5e14da
5eeeaa:	c9                   	leave
5eeeab:	c3                   	ret
5eeeac:	85 db                	test   %ebx,%ebx
5eeeae:	75 05                	jne    0x5eeeb5
5eeeb0:	83 ce ff             	or     $0xffffffff,%esi
5eeeb3:	eb c5                	jmp    0x5eee7a
5eeeb5:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5eeebb:	3b c3                	cmp    %ebx,%eax
5eeebd:	75 b8                	jne    0x5eee77
5eeebf:	6a fe                	push   $0xfffffffe
5eeec1:	5e                   	pop    %esi
5eeec2:	88 4c 1f ff          	mov    %cl,-0x1(%edi,%ebx,1)
5eeec6:	eb b2                	jmp    0x5eee7a
5eeec8:	8b ff                	mov    %edi,%edi
5eeeca:	55                   	push   %ebp
5eeecb:	8b ec                	mov    %esp,%ebp
5eeecd:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
5eeed1:	75 15                	jne    0x5eeee8
5eeed3:	e8 21 e1 ff ff       	call   0x5ecff9
5eeed8:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5eeede:	e8 3c e0 ff ff       	call   0x5ecf1f
5eeee3:	83 c8 ff             	or     $0xffffffff,%eax
5eeee6:	5d                   	pop    %ebp
5eeee7:	c3                   	ret
5eeee8:	56                   	push   %esi
5eeee9:	8b 75 10             	mov    0x10(%ebp),%esi
5eeeec:	85 f6                	test   %esi,%esi
5eeeee:	74 3a                	je     0x5eef2a
5eeef0:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
5eeef4:	76 34                	jbe    0x5eef2a
5eeef6:	ff 75 20             	push   0x20(%ebp)
5eeef9:	ff 75 1c             	push   0x1c(%ebp)
5eeefc:	ff 75 18             	push   0x18(%ebp)
5eeeff:	ff 75 14             	push   0x14(%ebp)
5eef02:	56                   	push   %esi
5eef03:	ff 75 0c             	push   0xc(%ebp)
5eef06:	ff 75 08             	push   0x8(%ebp)
5eef09:	e8 37 fb ff ff       	call   0x5eea45
5eef0e:	83 c4 1c             	add    $0x1c,%esp
5eef11:	85 c0                	test   %eax,%eax
5eef13:	79 03                	jns    0x5eef18
5eef15:	c6 06 00             	movb   $0x0,(%esi)
5eef18:	83 f8 fe             	cmp    $0xfffffffe,%eax
5eef1b:	75 20                	jne    0x5eef3d
5eef1d:	e8 d7 e0 ff ff       	call   0x5ecff9
5eef22:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
5eef28:	eb 0b                	jmp    0x5eef35
5eef2a:	e8 ca e0 ff ff       	call   0x5ecff9
5eef2f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5eef35:	e8 e5 df ff ff       	call   0x5ecf1f
5eef3a:	83 c8 ff             	or     $0xffffffff,%eax
5eef3d:	5e                   	pop    %esi
5eef3e:	5d                   	pop    %ebp
5eef3f:	c3                   	ret
5eef40:	8b ff                	mov    %edi,%edi
5eef42:	55                   	push   %ebp
5eef43:	8b ec                	mov    %esp,%ebp
5eef45:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
5eef49:	75 15                	jne    0x5eef60
5eef4b:	e8 a9 e0 ff ff       	call   0x5ecff9
5eef50:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5eef56:	e8 c4 df ff ff       	call   0x5ecf1f
5eef5b:	83 c8 ff             	or     $0xffffffff,%eax
5eef5e:	5d                   	pop    %ebp
5eef5f:	c3                   	ret
5eef60:	56                   	push   %esi
5eef61:	8b 75 10             	mov    0x10(%ebp),%esi
5eef64:	85 f6                	test   %esi,%esi
5eef66:	74 3c                	je     0x5eefa4
5eef68:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
5eef6c:	76 36                	jbe    0x5eefa4
5eef6e:	ff 75 20             	push   0x20(%ebp)
5eef71:	ff 75 1c             	push   0x1c(%ebp)
5eef74:	ff 75 18             	push   0x18(%ebp)
5eef77:	ff 75 14             	push   0x14(%ebp)
5eef7a:	56                   	push   %esi
5eef7b:	ff 75 0c             	push   0xc(%ebp)
5eef7e:	ff 75 08             	push   0x8(%ebp)
5eef81:	e8 3d fc ff ff       	call   0x5eebc3
5eef86:	83 c4 1c             	add    $0x1c,%esp
5eef89:	85 c0                	test   %eax,%eax
5eef8b:	79 05                	jns    0x5eef92
5eef8d:	33 c9                	xor    %ecx,%ecx
5eef8f:	66 89 0e             	mov    %cx,(%esi)
5eef92:	83 f8 fe             	cmp    $0xfffffffe,%eax
5eef95:	75 20                	jne    0x5eefb7
5eef97:	e8 5d e0 ff ff       	call   0x5ecff9
5eef9c:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
5eefa2:	eb 0b                	jmp    0x5eefaf
5eefa4:	e8 50 e0 ff ff       	call   0x5ecff9
5eefa9:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5eefaf:	e8 6b df ff ff       	call   0x5ecf1f
5eefb4:	83 c8 ff             	or     $0xffffffff,%eax
5eefb7:	5e                   	pop    %esi
5eefb8:	5d                   	pop    %ebp
5eefb9:	c3                   	ret
5eefba:	83 b9 04 04 00 00 00 	cmpl   $0x0,0x404(%ecx)
5eefc1:	75 06                	jne    0x5eefc9
5eefc3:	b8 00 02 00 00       	mov    $0x200,%eax
5eefc8:	c3                   	ret
5eefc9:	8b 81 00 04 00 00    	mov    0x400(%ecx),%eax
5eefcf:	d1 e8                	shr    $1,%eax
5eefd1:	c3                   	ret
5eefd2:	83 b9 04 04 00 00 00 	cmpl   $0x0,0x404(%ecx)
5eefd9:	75 06                	jne    0x5eefe1
5eefdb:	b8 00 01 00 00       	mov    $0x100,%eax
5eefe0:	c3                   	ret
5eefe1:	8b 81 00 04 00 00    	mov    0x400(%ecx),%eax
5eefe7:	c1 e8 02             	shr    $0x2,%eax
5eefea:	c3                   	ret
5eefeb:	8b ff                	mov    %edi,%edi
5eefed:	55                   	push   %ebp
5eefee:	8b ec                	mov    %esp,%ebp
5eeff0:	51                   	push   %ecx
5eeff1:	56                   	push   %esi
5eeff2:	8b 75 08             	mov    0x8(%ebp),%esi
5eeff5:	57                   	push   %edi
5eeff6:	8b f9                	mov    %ecx,%edi
5eeff8:	81 fe ff ff ff 7f    	cmp    $0x7fffffff,%esi
5eeffe:	76 0f                	jbe    0x5ef00f
5ef000:	e8 f4 df ff ff       	call   0x5ecff9
5ef005:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
5ef00b:	32 c0                	xor    %al,%al
5ef00d:	eb 53                	jmp    0x5ef062
5ef00f:	53                   	push   %ebx
5ef010:	33 db                	xor    %ebx,%ebx
5ef012:	03 f6                	add    %esi,%esi
5ef014:	39 9f 04 04 00 00    	cmp    %ebx,0x404(%edi)
5ef01a:	75 08                	jne    0x5ef024
5ef01c:	81 fe 00 04 00 00    	cmp    $0x400,%esi
5ef022:	76 08                	jbe    0x5ef02c
5ef024:	3b b7 00 04 00 00    	cmp    0x400(%edi),%esi
5ef02a:	77 04                	ja     0x5ef030
5ef02c:	b0 01                	mov    $0x1,%al
5ef02e:	eb 31                	jmp    0x5ef061
5ef030:	56                   	push   %esi
5ef031:	e8 bf 6d 01 00       	call   0x605df5
5ef036:	89 45 fc             	mov    %eax,-0x4(%ebp)
5ef039:	59                   	pop    %ecx
5ef03a:	85 c0                	test   %eax,%eax
5ef03c:	74 1a                	je     0x5ef058
5ef03e:	8d 45 fc             	lea    -0x4(%ebp),%eax
5ef041:	50                   	push   %eax
5ef042:	8d 8f 04 04 00 00    	lea    0x404(%edi),%ecx
5ef048:	e8 19 05 00 00       	call   0x5ef566
5ef04d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5ef050:	b3 01                	mov    $0x1,%bl
5ef052:	89 b7 00 04 00 00    	mov    %esi,0x400(%edi)
5ef058:	50                   	push   %eax
5ef059:	e8 ca 57 01 00       	call   0x604828
5ef05e:	59                   	pop    %ecx
5ef05f:	8a c3                	mov    %bl,%al
5ef061:	5b                   	pop    %ebx
5ef062:	5f                   	pop    %edi
5ef063:	5e                   	pop    %esi
5ef064:	c9                   	leave
5ef065:	c2 04 00             	ret    $0x4
5ef068:	8b ff                	mov    %edi,%edi
5ef06a:	55                   	push   %ebp
5ef06b:	8b ec                	mov    %esp,%ebp
5ef06d:	51                   	push   %ecx
5ef06e:	56                   	push   %esi
5ef06f:	8b 75 08             	mov    0x8(%ebp),%esi
5ef072:	57                   	push   %edi
5ef073:	8b f9                	mov    %ecx,%edi
5ef075:	81 fe ff ff ff 3f    	cmp    $0x3fffffff,%esi
5ef07b:	76 0f                	jbe    0x5ef08c
5ef07d:	e8 77 df ff ff       	call   0x5ecff9
5ef082:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
5ef088:	32 c0                	xor    %al,%al
5ef08a:	eb 54                	jmp    0x5ef0e0
5ef08c:	53                   	push   %ebx
5ef08d:	33 db                	xor    %ebx,%ebx
5ef08f:	c1 e6 02             	shl    $0x2,%esi
5ef092:	39 9f 04 04 00 00    	cmp    %ebx,0x404(%edi)
5ef098:	75 08                	jne    0x5ef0a2
5ef09a:	81 fe 00 04 00 00    	cmp    $0x400,%esi
5ef0a0:	76 08                	jbe    0x5ef0aa
5ef0a2:	3b b7 00 04 00 00    	cmp    0x400(%edi),%esi
5ef0a8:	77 04                	ja     0x5ef0ae
5ef0aa:	b0 01                	mov    $0x1,%al
5ef0ac:	eb 31                	jmp    0x5ef0df
5ef0ae:	56                   	push   %esi
5ef0af:	e8 41 6d 01 00       	call   0x605df5
5ef0b4:	89 45 fc             	mov    %eax,-0x4(%ebp)
5ef0b7:	59                   	pop    %ecx
5ef0b8:	85 c0                	test   %eax,%eax
5ef0ba:	74 1a                	je     0x5ef0d6
5ef0bc:	8d 45 fc             	lea    -0x4(%ebp),%eax
5ef0bf:	50                   	push   %eax
5ef0c0:	8d 8f 04 04 00 00    	lea    0x404(%edi),%ecx
5ef0c6:	e8 9b 04 00 00       	call   0x5ef566
5ef0cb:	8b 45 fc             	mov    -0x4(%ebp),%eax
5ef0ce:	b3 01                	mov    $0x1,%bl
5ef0d0:	89 b7 00 04 00 00    	mov    %esi,0x400(%edi)
5ef0d6:	50                   	push   %eax
5ef0d7:	e8 4c 57 01 00       	call   0x604828
5ef0dc:	59                   	pop    %ecx
5ef0dd:	8a c3                	mov    %bl,%al
5ef0df:	5b                   	pop    %ebx
5ef0e0:	5f                   	pop    %edi
5ef0e1:	5e                   	pop    %esi
5ef0e2:	c9                   	leave
5ef0e3:	c2 04 00             	ret    $0x4
5ef0e6:	8b ff                	mov    %edi,%edi
5ef0e8:	55                   	push   %ebp
5ef0e9:	8b ec                	mov    %esp,%ebp
5ef0eb:	8b 45 14             	mov    0x14(%ebp),%eax
5ef0ee:	48                   	dec    %eax
5ef0ef:	83 e8 01             	sub    $0x1,%eax
5ef0f2:	74 1f                	je     0x5ef113
5ef0f4:	83 e8 01             	sub    $0x1,%eax
5ef0f7:	74 16                	je     0x5ef10f
5ef0f9:	83 e8 09             	sub    $0x9,%eax
5ef0fc:	74 11                	je     0x5ef10f
5ef0fe:	83 7d 14 0d          	cmpl   $0xd,0x14(%ebp)
5ef102:	74 0f                	je     0x5ef113
5ef104:	8a 45 10             	mov    0x10(%ebp),%al
5ef107:	3c 63                	cmp    $0x63,%al
5ef109:	74 08                	je     0x5ef113
5ef10b:	3c 73                	cmp    $0x73,%al
5ef10d:	74 04                	je     0x5ef113
5ef10f:	b0 01                	mov    $0x1,%al
5ef111:	5d                   	pop    %ebp
5ef112:	c3                   	ret
5ef113:	32 c0                	xor    %al,%al
5ef115:	5d                   	pop    %ebp
5ef116:	c3                   	ret
5ef117:	8b ff                	mov    %edi,%edi
5ef119:	55                   	push   %ebp
5ef11a:	8b ec                	mov    %esp,%ebp
5ef11c:	8b 45 14             	mov    0x14(%ebp),%eax
5ef11f:	48                   	dec    %eax
5ef120:	83 e8 01             	sub    $0x1,%eax
5ef123:	74 3c                	je     0x5ef161
5ef125:	83 e8 01             	sub    $0x1,%eax
5ef128:	74 33                	je     0x5ef15d
5ef12a:	83 e8 09             	sub    $0x9,%eax
5ef12d:	74 2e                	je     0x5ef15d
5ef12f:	83 7d 14 0d          	cmpl   $0xd,0x14(%ebp)
5ef133:	74 28                	je     0x5ef15d
5ef135:	8b 45 08             	mov    0x8(%ebp),%eax
5ef138:	83 e0 04             	and    $0x4,%eax
5ef13b:	83 c8 00             	or     $0x0,%eax
5ef13e:	6a 01                	push   $0x1
5ef140:	58                   	pop    %eax
5ef141:	74 04                	je     0x5ef147
5ef143:	8a c8                	mov    %al,%cl
5ef145:	eb 02                	jmp    0x5ef149
5ef147:	32 c9                	xor    %cl,%cl
5ef149:	66 83 7d 10 63       	cmpw   $0x63,0x10(%ebp)
5ef14e:	74 07                	je     0x5ef157
5ef150:	66 83 7d 10 73       	cmpw   $0x73,0x10(%ebp)
5ef155:	75 02                	jne    0x5ef159
5ef157:	32 c0                	xor    %al,%al
5ef159:	32 c1                	xor    %cl,%al
5ef15b:	5d                   	pop    %ebp
5ef15c:	c3                   	ret
5ef15d:	b0 01                	mov    $0x1,%al
5ef15f:	5d                   	pop    %ebp
5ef160:	c3                   	ret
5ef161:	32 c0                	xor    %al,%al
5ef163:	5d                   	pop    %ebp
5ef164:	c3                   	ret
5ef165:	8b ff                	mov    %edi,%edi
5ef167:	56                   	push   %esi
5ef168:	8b f1                	mov    %ecx,%esi
5ef16a:	57                   	push   %edi
5ef16b:	8b be 04 04 00 00    	mov    0x404(%esi),%edi
5ef171:	e8 44 fe ff ff       	call   0x5eefba
5ef176:	85 ff                	test   %edi,%edi
5ef178:	75 04                	jne    0x5ef17e
5ef17a:	03 c6                	add    %esi,%eax
5ef17c:	eb 02                	jmp    0x5ef180
5ef17e:	03 c7                	add    %edi,%eax