505b69:	56                   	push   %esi
505b6a:	ff 74 24 1c          	push   0x1c(%esp)
505b6e:	68 0a 10 00 00       	push   $0x100a
505b73:	68 00 03 00 00       	push   $0x300
505b78:	6a 06                	push   $0x6
505b7a:	53                   	push   %ebx
505b7b:	e8 50 14 fe ff       	call   0x4e6fd0
505b80:	8b f8                	mov    %eax,%edi
505b82:	83 c4 18             	add    $0x18,%esp
505b85:	85 ff                	test   %edi,%edi
505b87:	7f 13                	jg     0x505b9c
505b89:	68 b6 02 00 00       	push   $0x2b6
505b8e:	68 6c a8 62 00       	push   $0x62a86c
505b93:	56                   	push   %esi
505b94:	e8 e7 ab fd ff       	call   0x4e0780
505b99:	83 c4 0c             	add    $0xc,%esp
505b9c:	5b                   	pop    %ebx
505b9d:	8b c7                	mov    %edi,%eax
505b9f:	5f                   	pop    %edi
505ba0:	5e                   	pop    %esi
505ba1:	c3                   	ret
505ba2:	5b                   	pop    %ebx
505ba3:	5f                   	pop    %edi
505ba4:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
505ba9:	5e                   	pop    %esi
505baa:	c3                   	ret
505bab:	cc                   	int3
505bac:	cc                   	int3
505bad:	cc                   	int3
505bae:	cc                   	int3
505baf:	cc                   	int3
505bb0:	55                   	push   %ebp
505bb1:	56                   	push   %esi
505bb2:	8b 74 24 0c          	mov    0xc(%esp),%esi
505bb6:	57                   	push   %edi
505bb7:	8b 6e 14             	mov    0x14(%esi),%ebp
505bba:	83 7d 04 00          	cmpl   $0x0,0x4(%ebp)
505bbe:	75 1e                	jne    0x505bde
505bc0:	e8 1b 42 fd ff       	call   0x4d9de0
505bc5:	89 45 04             	mov    %eax,0x4(%ebp)
505bc8:	85 c0                	test   %eax,%eax
505bca:	74 1d                	je     0x505be9
505bcc:	68 01 00 01 00       	push   $0x10001
505bd1:	50                   	push   %eax
505bd2:	e8 09 45 fd ff       	call   0x4da0e0
505bd7:	83 c4 08             	add    $0x8,%esp
505bda:	85 c0                	test   %eax,%eax
505bdc:	74 0b                	je     0x505be9
505bde:	e8 bd 4a fd ff       	call   0x4da6a0
505be3:	8b f8                	mov    %eax,%edi
505be5:	85 ff                	test   %edi,%edi
505be7:	75 06                	jne    0x505bef
505be9:	5f                   	pop    %edi
505bea:	5e                   	pop    %esi
505beb:	33 c0                	xor    %eax,%eax
505bed:	5d                   	pop    %ebp
505bee:	c3                   	ret
505bef:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
505bf3:	53                   	push   %ebx
505bf4:	74 17                	je     0x505c0d
505bf6:	e8 e5 39 fd ff       	call   0x4d95e0
505bfb:	8b d8                	mov    %eax,%ebx
505bfd:	85 db                	test   %ebx,%ebx
505bff:	74 6a                	je     0x505c6b
505c01:	56                   	push   %esi
505c02:	53                   	push   %ebx
505c03:	e8 68 60 01 00       	call   0x51bc70
505c08:	83 c4 08             	add    $0x8,%esp
505c0b:	eb 02                	jmp    0x505c0f
505c0d:	33 db                	xor    %ebx,%ebx
505c0f:	53                   	push   %ebx
505c10:	ff 75 04             	push   0x4(%ebp)
505c13:	ff 75 08             	push   0x8(%ebp)
505c16:	ff 75 00             	push   0x0(%ebp)
505c19:	57                   	push   %edi
505c1a:	e8 11 50 fd ff       	call   0x4dac30
505c1f:	53                   	push   %ebx
505c20:	8b e8                	mov    %eax,%ebp
505c22:	e8 89 39 fd ff       	call   0x4d95b0
505c27:	83 c4 18             	add    $0x18,%esp
505c2a:	85 ed                	test   %ebp,%ebp
505c2c:	7e 65                	jle    0x505c93
505c2e:	8b 0e                	mov    (%esi),%ecx
505c30:	8b 56 14             	mov    0x14(%esi),%edx
505c33:	81 39 90 03 00 00    	cmpl   $0x390,(%ecx)
505c39:	75 40                	jne    0x505c7b
505c3b:	8b 5a 18             	mov    0x18(%edx),%ebx
505c3e:	85 db                	test   %ebx,%ebx
505c40:	75 0b                	jne    0x505c4d
505c42:	39 5a 1c             	cmp    %ebx,0x1c(%edx)
505c45:	75 06                	jne    0x505c4d
505c47:	83 7a 20 fe          	cmpl   $0xfffffffe,0x20(%edx)
505c4b:	74 2e                	je     0x505c7b
505c4d:	33 c9                	xor    %ecx,%ecx
505c4f:	83 7a 20 fe          	cmpl   $0xfffffffe,0x20(%edx)
505c53:	0f 45 4a 20          	cmovne 0x20(%edx),%ecx
505c57:	51                   	push   %ecx
505c58:	ff 72 1c             	push   0x1c(%edx)
505c5b:	53                   	push   %ebx
505c5c:	e8 df c8 02 00       	call   0x532540
505c61:	83 c4 0c             	add    $0xc,%esp
505c64:	89 47 34             	mov    %eax,0x34(%edi)
505c67:	85 c0                	test   %eax,%eax
505c69:	75 10                	jne    0x505c7b
505c6b:	57                   	push   %edi
505c6c:	e8 4f 49 fd ff       	call   0x4da5c0
505c71:	83 c4 04             	add    $0x4,%esp
505c74:	33 c0                	xor    %eax,%eax
505c76:	5b                   	pop    %ebx
505c77:	5f                   	pop    %edi
505c78:	5e                   	pop    %esi
505c79:	5d                   	pop    %ebp
505c7a:	c3                   	ret
505c7b:	8b 06                	mov    (%esi),%eax
505c7d:	57                   	push   %edi
505c7e:	ff 30                	push   (%eax)
505c80:	ff 74 24 20          	push   0x20(%esp)
505c84:	e8 57 ae fe ff       	call   0x4f0ae0
505c89:	83 c4 0c             	add    $0xc,%esp
505c8c:	8b c5                	mov    %ebp,%eax
505c8e:	5b                   	pop    %ebx
505c8f:	5f                   	pop    %edi
505c90:	5e                   	pop    %esi
505c91:	5d                   	pop    %ebp
505c92:	c3                   	ret
505c93:	57                   	push   %edi
505c94:	e8 27 49 fd ff       	call   0x4da5c0
505c99:	83 c4 04             	add    $0x4,%esp
505c9c:	8b c5                	mov    %ebp,%eax
505c9e:	5b                   	pop    %ebx
505c9f:	5f                   	pop    %edi
505ca0:	5e                   	pop    %esi
505ca1:	5d                   	pop    %ebp
505ca2:	c3                   	ret
505ca3:	cc                   	int3
505ca4:	cc                   	int3
505ca5:	cc                   	int3
505ca6:	cc                   	int3
505ca7:	cc                   	int3
505ca8:	cc                   	int3
505ca9:	cc                   	int3
505caa:	cc                   	int3
505cab:	cc                   	int3
505cac:	cc                   	int3
505cad:	cc                   	int3
505cae:	cc                   	int3
505caf:	cc                   	int3
505cb0:	b8 08 00 00 00       	mov    $0x8,%eax
505cb5:	e8 f6 ba 0c 00       	call   0x5d17b0
505cba:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
505cbe:	53                   	push   %ebx
505cbf:	55                   	push   %ebp
505cc0:	8b 01                	mov    (%ecx),%eax
505cc2:	8b 59 14             	mov    0x14(%ecx),%ebx
505cc5:	81 38 90 03 00 00    	cmpl   $0x390,(%eax)
505ccb:	75 7f                	jne    0x505d4c
505ccd:	8b 41 08             	mov    0x8(%ecx),%eax
505cd0:	8b 68 18             	mov    0x18(%eax),%ebp
505cd3:	8b 45 34             	mov    0x34(%ebp),%eax
505cd6:	85 c0                	test   %eax,%eax
505cd8:	0f 84 8e 00 00 00    	je     0x505d6c
505cde:	8d 4c 24 08          	lea    0x8(%esp),%ecx
505ce2:	51                   	push   %ecx
505ce3:	8d 4c 24 10          	lea    0x10(%esp),%ecx
505ce7:	51                   	push   %ecx
505ce8:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
505cec:	51                   	push   %ecx
505ced:	50                   	push   %eax
505cee:	e8 6d c4 02 00       	call   0x532160
505cf3:	83 c4 10             	add    $0x10,%esp
505cf6:	85 c0                	test   %eax,%eax
505cf8:	74 52                	je     0x505d4c
505cfa:	56                   	push   %esi
505cfb:	57                   	push   %edi
505cfc:	ff 74 24 1c          	push   0x1c(%esp)
505d00:	e8 bb ab fe ff       	call   0x4f08c0
505d05:	55                   	push   %ebp
505d06:	8b f0                	mov    %eax,%esi
505d08:	e8 c3 4e fd ff       	call   0x4dabd0
505d0d:	8b f8                	mov    %eax,%edi
505d0f:	55                   	push   %ebp
505d10:	2b fe                	sub    %esi,%edi
505d12:	e8 49 4c fd ff       	call   0x4da960
505d17:	83 c4 0c             	add    $0xc,%esp
505d1a:	8d 4f ff             	lea    -0x1(%edi),%ecx
505d1d:	24 07                	and    $0x7,%al
505d1f:	3c 01                	cmp    $0x1,%al
505d21:	8b 44 24 10          	mov    0x10(%esp),%eax
505d25:	0f 45 cf             	cmovne %edi,%ecx
505d28:	5f                   	pop    %edi
505d29:	5e                   	pop    %esi
505d2a:	3b c1                	cmp    %ecx,%eax
505d2c:	7e 26                	jle    0x505d54
505d2e:	68 35 03 00 00       	push   $0x335
505d33:	68 6c a8 62 00       	push   $0x62a86c
505d38:	68 96 00 00 00       	push   $0x96
505d3d:	68 a5 00 00 00       	push   $0xa5
505d42:	6a 04                	push   $0x4
505d44:	e8 37 32 fd ff       	call   0x4d8f80
505d49:	83 c4 14             	add    $0x14,%esp
505d4c:	5d                   	pop    %ebp
505d4d:	33 c0                	xor    %eax,%eax
505d4f:	5b                   	pop    %ebx
505d50:	83 c4 08             	add    $0x8,%esp
505d53:	c3                   	ret
505d54:	89 43 24             	mov    %eax,0x24(%ebx)
505d57:	8b 44 24 14          	mov    0x14(%esp),%eax
505d5b:	89 43 18             	mov    %eax,0x18(%ebx)
505d5e:	8b 44 24 0c          	mov    0xc(%esp),%eax
505d62:	89 43 1c             	mov    %eax,0x1c(%ebx)
505d65:	8b 44 24 08          	mov    0x8(%esp),%eax
505d69:	89 43 20             	mov    %eax,0x20(%ebx)
505d6c:	5d                   	pop    %ebp
505d6d:	b8 01 00 00 00       	mov    $0x1,%eax
505d72:	5b                   	pop    %ebx
505d73:	83 c4 08             	add    $0x8,%esp
505d76:	c3                   	ret
505d77:	cc                   	int3
505d78:	cc                   	int3
505d79:	cc                   	int3
505d7a:	cc                   	int3
505d7b:	cc                   	int3
505d7c:	cc                   	int3
505d7d:	cc                   	int3
505d7e:	cc                   	int3
505d7f:	cc                   	int3
505d80:	8b 44 24 04          	mov    0x4(%esp),%eax
505d84:	85 c0                	test   %eax,%eax
505d86:	0f 84 99 00 00 00    	je     0x505e25
505d8c:	50                   	push   %eax
505d8d:	e8 2e a3 fe ff       	call   0x4f00c0
505d92:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
505d96:	83 c4 04             	add    $0x4,%esp
505d99:	83 f9 03             	cmp    $0x3,%ecx
505d9c:	75 21                	jne    0x505dbf
505d9e:	68 68 01 00 00       	push   $0x168
505da3:	68 6c a8 62 00       	push   $0x62a86c
505da8:	68 8d 00 00 00       	push   $0x8d
505dad:	68 8c 00 00 00       	push   $0x8c
505db2:	6a 04                	push   $0x4
505db4:	e8 c7 31 fd ff       	call   0x4d8f80
505db9:	83 c4 14             	add    $0x14,%esp
505dbc:	33 c0                	xor    %eax,%eax
505dbe:	c3                   	ret
505dbf:	83 f9 05             	cmp    $0x5,%ecx
505dc2:	75 2f                	jne    0x505df3
505dc4:	50                   	push   %eax
505dc5:	e8 d6 ad ff ff       	call   0x500ba0
505dca:	83 c4 04             	add    $0x4,%esp
505dcd:	83 f8 ff             	cmp    $0xffffffff,%eax
505dd0:	75 53                	jne    0x505e25
505dd2:	68 6e 01 00 00       	push   $0x16e
505dd7:	68 6c a8 62 00       	push   $0x62a86c
505ddc:	68 8e 00 00 00       	push   $0x8e
505de1:	68 8c 00 00 00       	push   $0x8c
505de6:	6a 04                	push   $0x4
505de8:	e8 93 31 fd ff       	call   0x4d8f80
505ded:	83 c4 14             	add    $0x14,%esp
505df0:	33 c0                	xor    %eax,%eax
505df2:	c3                   	ret
505df3:	83 f8 75             	cmp    $0x75,%eax
505df6:	7f 18                	jg     0x505e10
505df8:	74 2b                	je     0x505e25
505dfa:	83 c0 fd             	add    $0xfffffffd,%eax
505dfd:	83 f8 6f             	cmp    $0x6f,%eax
505e00:	77 33                	ja     0x505e35
505e02:	0f b6 80 60 5e 50 00 	movzbl 0x505e60(%eax),%eax
505e09:	ff 24 85 58 5e 50 00 	jmp    *0x505e58(,%eax,4)
505e10:	3d a3 02 00 00       	cmp    $0x2a3,%eax
505e15:	7f 14                	jg     0x505e2b
505e17:	3d a0 02 00 00       	cmp    $0x2a0,%eax
505e1c:	7d 07                	jge    0x505e25
505e1e:	3d 01 01 00 00       	cmp    $0x101,%eax
505e23:	75 10                	jne    0x505e35
505e25:	b8 01 00 00 00       	mov    $0x1,%eax
505e2a:	c3                   	ret
505e2b:	05 b8 fb ff ff       	add    $0xfffffbb8,%eax
505e30:	83 f8 03             	cmp    $0x3,%eax
505e33:	76 f0                	jbe    0x505e25
505e35:	68 86 01 00 00       	push   $0x186
505e3a:	68 6c a8 62 00       	push   $0x62a86c
505e3f:	68 9d 00 00 00       	push   $0x9d
505e44:	68 8c 00 00 00       	push   $0x8c
505e49:	6a 04                	push   $0x4
505e4b:	e8 30 31 fd ff       	call   0x4d8f80
505e50:	83 c4 14             	add    $0x14,%esp
505e53:	33 c0                	xor    %eax,%eax
505e55:	c3                   	ret
505e56:	66 90                	xchg   %ax,%ax
505e58:	25 5e 50 00 35       	and    $0x3500505e,%eax
505e5d:	5e                   	pop    %esi
505e5e:	50                   	push   %eax
505e5f:	00 00                	add    %al,(%eax)
505e61:	00 01                	add    %al,(%ecx)
505e63:	01 01                	add    %eax,(%ecx)
505e65:	01 01                	add    %eax,(%ecx)
505e67:	01 01                	add    %eax,(%ecx)
505e69:	01 01                	add    %eax,(%ecx)
505e6b:	01 01                	add    %eax,(%ecx)
505e6d:	01 01                	add    %eax,(%ecx)
505e6f:	01 01                	add    %eax,(%ecx)
505e71:	01 01                	add    %eax,(%ecx)
505e73:	01 01                	add    %eax,(%ecx)
505e75:	01 01                	add    %eax,(%ecx)
505e77:	01 01                	add    %eax,(%ecx)
505e79:	01 01                	add    %eax,(%ecx)
505e7b:	01 01                	add    %eax,(%ecx)
505e7d:	01 01                	add    %eax,(%ecx)
505e7f:	01 01                	add    %eax,(%ecx)
505e81:	01 01                	add    %eax,(%ecx)
505e83:	01 01                	add    %eax,(%ecx)
505e85:	01 01                	add    %eax,(%ecx)
505e87:	01 01                	add    %eax,(%ecx)
505e89:	01 01                	add    %eax,(%ecx)
505e8b:	01 01                	add    %eax,(%ecx)
505e8d:	01 01                	add    %eax,(%ecx)
505e8f:	01 01                	add    %eax,(%ecx)
505e91:	01 01                	add    %eax,(%ecx)
505e93:	01 01                	add    %eax,(%ecx)
505e95:	01 01                	add    %eax,(%ecx)
505e97:	01 01                	add    %eax,(%ecx)
505e99:	01 01                	add    %eax,(%ecx)
505e9b:	01 01                	add    %eax,(%ecx)
505e9d:	00 01                	add    %al,(%ecx)
505e9f:	01 01                	add    %eax,(%ecx)
505ea1:	01 01                	add    %eax,(%ecx)
505ea3:	01 01                	add    %eax,(%ecx)
505ea5:	01 01                	add    %eax,(%ecx)
505ea7:	01 01                	add    %eax,(%ecx)
505ea9:	01 01                	add    %eax,(%ecx)
505eab:	01 01                	add    %eax,(%ecx)
505ead:	01 01                	add    %eax,(%ecx)
505eaf:	01 01                	add    %eax,(%ecx)
505eb1:	01 01                	add    %eax,(%ecx)
505eb3:	01 01                	add    %eax,(%ecx)
505eb5:	01 01                	add    %eax,(%ecx)
505eb7:	01 01                	add    %eax,(%ecx)
505eb9:	01 01                	add    %eax,(%ecx)
505ebb:	01 00                	add    %eax,(%eax)
505ebd:	01 01                	add    %eax,(%ecx)
505ebf:	01 01                	add    %eax,(%ecx)
505ec1:	01 01                	add    %eax,(%ecx)
505ec3:	01 01                	add    %eax,(%ecx)
505ec5:	01 01                	add    %eax,(%ecx)
505ec7:	01 01                	add    %eax,(%ecx)
505ec9:	01 01                	add    %eax,(%ecx)
505ecb:	01 01                	add    %eax,(%ecx)
505ecd:	01 01                	add    %eax,(%ecx)
505ecf:	00 56 8b             	add    %dl,-0x75(%esi)
505ed2:	74 24                	je     0x505ef8