603c62:	89 45 fc             	mov    %eax,-0x4(%ebp)
603c65:	8b 45 0c             	mov    0xc(%ebp),%eax
603c68:	53                   	push   %ebx
603c69:	56                   	push   %esi
603c6a:	8b 75 08             	mov    0x8(%ebp),%esi
603c6d:	33 db                	xor    %ebx,%ebx
603c6f:	57                   	push   %edi
603c70:	68 ca 01 00 00       	push   $0x1ca
603c75:	53                   	push   %ebx
603c76:	56                   	push   %esi
603c77:	89 75 b8             	mov    %esi,-0x48(%ebp)
603c7a:	89 45 c0             	mov    %eax,-0x40(%ebp)
603c7d:	89 5d bc             	mov    %ebx,-0x44(%ebp)
603c80:	e8 7b fd fd ff       	call   0x5e3a00
603c85:	8b 55 c0             	mov    -0x40(%ebp),%edx
603c88:	8d 4d d0             	lea    -0x30(%ebp),%ecx
603c8b:	8b c3                	mov    %ebx,%eax
603c8d:	89 4d c8             	mov    %ecx,-0x38(%ebp)
603c90:	83 c4 0c             	add    $0xc,%esp
603c93:	89 45 c4             	mov    %eax,-0x3c(%ebp)
603c96:	8b fb                	mov    %ebx,%edi
603c98:	43                   	inc    %ebx
603c99:	83 ff 04             	cmp    $0x4,%edi
603c9c:	0f 83 8a 01 00 00    	jae    0x603e2c
603ca2:	83 f8 02             	cmp    $0x2,%eax
603ca5:	74 14                	je     0x603cbb
603ca7:	68 c0 45 6d 00       	push   $0x6d45c0
603cac:	52                   	push   %edx
603cad:	e8 39 ad 00 00       	call   0x60e9eb
603cb2:	8b 55 c0             	mov    -0x40(%ebp),%edx
603cb5:	59                   	pop    %ecx
603cb6:	59                   	pop    %ecx
603cb7:	8b c8                	mov    %eax,%ecx
603cb9:	eb 15                	jmp    0x603cd0
603cbb:	8b ca                	mov    %edx,%ecx
603cbd:	8d 71 02             	lea    0x2(%ecx),%esi
603cc0:	66 8b 01             	mov    (%ecx),%ax
603cc3:	83 c1 02             	add    $0x2,%ecx
603cc6:	66 3b 45 bc          	cmp    -0x44(%ebp),%ax
603cca:	75 f4                	jne    0x603cc0
603ccc:	2b ce                	sub    %esi,%ecx
603cce:	d1 f9                	sar    $1,%ecx
603cd0:	8b 45 c8             	mov    -0x38(%ebp),%eax
603cd3:	47                   	inc    %edi
603cd4:	8b 75 c8             	mov    -0x38(%ebp),%esi
603cd7:	83 45 c8 0c          	addl   $0xc,-0x38(%ebp)
603cdb:	89 50 fc             	mov    %edx,-0x4(%eax)
603cde:	8d 14 4a             	lea    (%edx,%ecx,2),%edx
603ce1:	89 08                	mov    %ecx,(%eax)
603ce3:	8b 45 c4             	mov    -0x3c(%ebp),%eax
603ce6:	89 46 04             	mov    %eax,0x4(%esi)
603ce9:	0f b7 02             	movzwl (%edx),%eax
603cec:	8b 75 b8             	mov    -0x48(%ebp),%esi
603cef:	83 e8 2d             	sub    $0x2d,%eax
603cf2:	74 16                	je     0x603d0a
603cf4:	83 e8 01             	sub    $0x1,%eax
603cf7:	74 0c                	je     0x603d05
603cf9:	83 e8 31             	sub    $0x31,%eax
603cfc:	74 0c                	je     0x603d0a
603cfe:	8b c3                	mov    %ebx,%eax
603d00:	89 5d c4             	mov    %ebx,-0x3c(%ebp)
603d03:	eb 0a                	jmp    0x603d0f
603d05:	6a 02                	push   $0x2
603d07:	58                   	pop    %eax
603d08:	eb 02                	jmp    0x603d0c
603d0a:	33 c0                	xor    %eax,%eax
603d0c:	89 45 c4             	mov    %eax,-0x3c(%ebp)
603d0f:	83 c2 02             	add    $0x2,%edx
603d12:	89 55 c0             	mov    %edx,-0x40(%ebp)
603d15:	3b c3                	cmp    %ebx,%eax
603d17:	75 80                	jne    0x603c99
603d19:	83 ef 01             	sub    $0x1,%edi
603d1c:	0f 84 fc 00 00 00    	je     0x603e1e
603d22:	83 ef 01             	sub    $0x1,%edi
603d25:	0f 84 ab 00 00 00    	je     0x603dd6
603d2b:	83 ef 01             	sub    $0x1,%edi
603d2e:	74 4d                	je     0x603d7d
603d30:	83 ef 01             	sub    $0x1,%edi
603d33:	0f 85 f3 00 00 00    	jne    0x603e2c
603d39:	8d 45 cc             	lea    -0x34(%ebp),%eax
603d3c:	50                   	push   %eax
603d3d:	56                   	push   %esi
603d3e:	e8 39 01 00 00       	call   0x603e7c
603d43:	59                   	pop    %ecx
603d44:	59                   	pop    %ecx
603d45:	84 c0                	test   %al,%al
603d47:	0f 84 c9 00 00 00    	je     0x603e16
603d4d:	8d 45 d8             	lea    -0x28(%ebp),%eax
603d50:	50                   	push   %eax
603d51:	56                   	push   %esi
603d52:	e8 50 02 00 00       	call   0x603fa7
603d57:	59                   	pop    %ecx
603d58:	59                   	pop    %ecx
603d59:	84 c0                	test   %al,%al
603d5b:	0f 84 b5 00 00 00    	je     0x603e16
603d61:	8d 45 e4             	lea    -0x1c(%ebp),%eax
603d64:	50                   	push   %eax
603d65:	56                   	push   %esi
603d66:	e8 83 01 00 00       	call   0x603eee
603d6b:	59                   	pop    %ecx
603d6c:	59                   	pop    %ecx
603d6d:	84 c0                	test   %al,%al
603d6f:	0f 84 a1 00 00 00    	je     0x603e16
603d75:	8d 45 f0             	lea    -0x10(%ebp),%eax
603d78:	e9 8c 00 00 00       	jmp    0x603e09
603d7d:	8d 45 cc             	lea    -0x34(%ebp),%eax
603d80:	50                   	push   %eax
603d81:	56                   	push   %esi
603d82:	e8 f5 00 00 00       	call   0x603e7c
603d87:	59                   	pop    %ecx
603d88:	59                   	pop    %ecx
603d89:	84 c0                	test   %al,%al
603d8b:	0f 84 85 00 00 00    	je     0x603e16
603d91:	8d 45 d8             	lea    -0x28(%ebp),%eax
603d94:	50                   	push   %eax
603d95:	56                   	push   %esi
603d96:	e8 0c 02 00 00       	call   0x603fa7
603d9b:	59                   	pop    %ecx
603d9c:	59                   	pop    %ecx
603d9d:	84 c0                	test   %al,%al
603d9f:	74 20                	je     0x603dc1
603da1:	8d 45 e4             	lea    -0x1c(%ebp),%eax
603da4:	50                   	push   %eax
603da5:	56                   	push   %esi
603da6:	e8 43 01 00 00       	call   0x603eee
603dab:	59                   	pop    %ecx
603dac:	59                   	pop    %ecx
603dad:	84 c0                	test   %al,%al
603daf:	75 69                	jne    0x603e1a
603db1:	8d 45 e4             	lea    -0x1c(%ebp),%eax
603db4:	50                   	push   %eax
603db5:	56                   	push   %esi
603db6:	e8 82 00 00 00       	call   0x603e3d
603dbb:	59                   	pop    %ecx
603dbc:	59                   	pop    %ecx
603dbd:	84 c0                	test   %al,%al
603dbf:	75 59                	jne    0x603e1a
603dc1:	8d 45 d8             	lea    -0x28(%ebp),%eax
603dc4:	50                   	push   %eax
603dc5:	56                   	push   %esi
603dc6:	e8 23 01 00 00       	call   0x603eee
603dcb:	59                   	pop    %ecx
603dcc:	59                   	pop    %ecx
603dcd:	84 c0                	test   %al,%al
603dcf:	74 45                	je     0x603e16
603dd1:	8d 45 e4             	lea    -0x1c(%ebp),%eax
603dd4:	eb 33                	jmp    0x603e09
603dd6:	8d 45 cc             	lea    -0x34(%ebp),%eax
603dd9:	50                   	push   %eax
603dda:	56                   	push   %esi
603ddb:	e8 9c 00 00 00       	call   0x603e7c
603de0:	59                   	pop    %ecx
603de1:	59                   	pop    %ecx
603de2:	84 c0                	test   %al,%al
603de4:	74 30                	je     0x603e16
603de6:	8d 45 d8             	lea    -0x28(%ebp),%eax
603de9:	50                   	push   %eax
603dea:	56                   	push   %esi
603deb:	e8 b7 01 00 00       	call   0x603fa7
603df0:	59                   	pop    %ecx
603df1:	59                   	pop    %ecx
603df2:	84 c0                	test   %al,%al
603df4:	75 24                	jne    0x603e1a
603df6:	8d 45 d8             	lea    -0x28(%ebp),%eax
603df9:	50                   	push   %eax
603dfa:	56                   	push   %esi
603dfb:	e8 ee 00 00 00       	call   0x603eee
603e00:	59                   	pop    %ecx
603e01:	59                   	pop    %ecx
603e02:	84 c0                	test   %al,%al
603e04:	75 14                	jne    0x603e1a
603e06:	8d 45 d8             	lea    -0x28(%ebp),%eax
603e09:	50                   	push   %eax
603e0a:	56                   	push   %esi
603e0b:	e8 2d 00 00 00       	call   0x603e3d
603e10:	59                   	pop    %ecx
603e11:	59                   	pop    %ecx
603e12:	84 c0                	test   %al,%al
603e14:	75 04                	jne    0x603e1a
603e16:	33 c0                	xor    %eax,%eax
603e18:	8a d8                	mov    %al,%bl
603e1a:	8a c3                	mov    %bl,%al
603e1c:	eb 10                	jmp    0x603e2e
603e1e:	8d 45 cc             	lea    -0x34(%ebp),%eax
603e21:	50                   	push   %eax
603e22:	56                   	push   %esi
603e23:	e8 54 00 00 00       	call   0x603e7c
603e28:	59                   	pop    %ecx
603e29:	59                   	pop    %ecx
603e2a:	eb 02                	jmp    0x603e2e
603e2c:	32 c0                	xor    %al,%al
603e2e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
603e31:	5f                   	pop    %edi
603e32:	5e                   	pop    %esi
603e33:	33 cd                	xor    %ebp,%ecx
603e35:	5b                   	pop    %ebx
603e36:	e8 9f d6 fd ff       	call   0x5e14da
603e3b:	c9                   	leave
603e3c:	c3                   	ret
603e3d:	8b ff                	mov    %edi,%edi
603e3f:	55                   	push   %ebp
603e40:	8b ec                	mov    %esp,%ebp
603e42:	8b 45 0c             	mov    0xc(%ebp),%eax
603e45:	83 78 08 02          	cmpl   $0x2,0x8(%eax)
603e49:	74 04                	je     0x603e4f
603e4b:	32 c0                	xor    %al,%al
603e4d:	5d                   	pop    %ebp
603e4e:	c3                   	ret
603e4f:	ff 70 04             	push   0x4(%eax)
603e52:	ff 30                	push   (%eax)
603e54:	8b 45 08             	mov    0x8(%ebp),%eax
603e57:	05 00 01 00 00       	add    $0x100,%eax
603e5c:	6a 10                	push   $0x10
603e5e:	50                   	push   %eax
603e5f:	e8 13 32 ff ff       	call   0x5f7077
603e64:	83 c4 10             	add    $0x10,%esp
603e67:	85 c0                	test   %eax,%eax
603e69:	75 04                	jne    0x603e6f
603e6b:	b0 01                	mov    $0x1,%al
603e6d:	5d                   	pop    %ebp
603e6e:	c3                   	ret
603e6f:	33 c0                	xor    %eax,%eax
603e71:	50                   	push   %eax
603e72:	50                   	push   %eax
603e73:	50                   	push   %eax
603e74:	50                   	push   %eax
603e75:	50                   	push   %eax
603e76:	e8 d1 90 fe ff       	call   0x5ecf4c
603e7b:	cc                   	int3
603e7c:	8b ff                	mov    %edi,%edi
603e7e:	55                   	push   %ebp
603e7f:	8b ec                	mov    %esp,%ebp
603e81:	53                   	push   %ebx
603e82:	56                   	push   %esi
603e83:	8b 75 0c             	mov    0xc(%ebp),%esi
603e86:	33 db                	xor    %ebx,%ebx
603e88:	39 5e 08             	cmp    %ebx,0x8(%esi)
603e8b:	75 50                	jne    0x603edd
603e8d:	8b 4e 04             	mov    0x4(%esi),%ecx
603e90:	8d 41 fe             	lea    -0x2(%ecx),%eax
603e93:	83 f8 01             	cmp    $0x1,%eax
603e96:	77 45                	ja     0x603edd
603e98:	51                   	push   %ecx
603e99:	ff 36                	push   (%esi)
603e9b:	e8 77 01 00 00       	call   0x604017
603ea0:	59                   	pop    %ecx
603ea1:	59                   	pop    %ecx
603ea2:	84 c0                	test   %al,%al
603ea4:	74 37                	je     0x603edd
603ea6:	57                   	push   %edi
603ea7:	ff 76 04             	push   0x4(%esi)
603eaa:	8b 7d 08             	mov    0x8(%ebp),%edi
603ead:	ff 36                	push   (%esi)
603eaf:	6a 40                	push   $0x40
603eb1:	57                   	push   %edi
603eb2:	e8 c0 31 ff ff       	call   0x5f7077
603eb7:	83 c4 10             	add    $0x10,%esp
603eba:	85 c0                	test   %eax,%eax
603ebc:	75 25                	jne    0x603ee3
603ebe:	ff 76 04             	push   0x4(%esi)
603ec1:	8d 8f 20 01 00 00    	lea    0x120(%edi),%ecx
603ec7:	ff 36                	push   (%esi)
603ec9:	6a 55                	push   $0x55
603ecb:	51                   	push   %ecx
603ecc:	e8 a6 31 ff ff       	call   0x5f7077
603ed1:	83 c4 10             	add    $0x10,%esp
603ed4:	5f                   	pop    %edi
603ed5:	85 c0                	test   %eax,%eax
603ed7:	75 0a                	jne    0x603ee3
603ed9:	b0 01                	mov    $0x1,%al
603edb:	eb 02                	jmp    0x603edf
603edd:	32 c0                	xor    %al,%al
603edf:	5e                   	pop    %esi
603ee0:	5b                   	pop    %ebx
603ee1:	5d                   	pop    %ebp
603ee2:	c3                   	ret
603ee3:	53                   	push   %ebx
603ee4:	53                   	push   %ebx
603ee5:	53                   	push   %ebx
603ee6:	53                   	push   %ebx
603ee7:	53                   	push   %ebx
603ee8:	e8 5f 90 fe ff       	call   0x5ecf4c
603eed:	cc                   	int3
603eee:	8b ff                	mov    %edi,%edi
603ef0:	55                   	push   %ebp
603ef1:	8b ec                	mov    %esp,%ebp
603ef3:	53                   	push   %ebx
603ef4:	56                   	push   %esi
603ef5:	8b 75 0c             	mov    0xc(%ebp),%esi
603ef8:	33 db                	xor    %ebx,%ebx
603efa:	57                   	push   %edi
603efb:	39 5e 08             	cmp    %ebx,0x8(%esi)
603efe:	0f 85 91 00 00 00    	jne    0x603f95
603f04:	83 7e 04 02          	cmpl   $0x2,0x4(%esi)
603f08:	75 0f                	jne    0x603f19
603f0a:	6a 02                	push   $0x2
603f0c:	ff 36                	push   (%esi)
603f0e:	e8 04 01 00 00       	call   0x604017
603f13:	59                   	pop    %ecx
603f14:	59                   	pop    %ecx
603f15:	84 c0                	test   %al,%al
603f17:	75 2b                	jne    0x603f44
603f19:	83 7e 04 03          	cmpl   $0x3,0x4(%esi)
603f1d:	75 76                	jne    0x603f95
603f1f:	8b 1e                	mov    (%esi),%ebx
603f21:	33 ff                	xor    %edi,%edi
603f23:	0f b7 04 7b          	movzwl (%ebx,%edi,2),%eax
603f27:	6a 04                	push   $0x4
603f29:	50                   	push   %eax
603f2a:	e8 62 ca ff ff       	call   0x600991
603f2f:	50                   	push   %eax
603f30:	e8 5d 9d fe ff       	call   0x5edc92
603f35:	83 c4 0c             	add    $0xc,%esp
603f38:	85 c0                	test   %eax,%eax
603f3a:	74 59                	je     0x603f95
603f3c:	47                   	inc    %edi
603f3d:	83 ff 03             	cmp    $0x3,%edi
603f40:	72 e1                	jb     0x603f23
603f42:	33 db                	xor    %ebx,%ebx
603f44:	ff 76 04             	push   0x4(%esi)
603f47:	8b 7d 08             	mov    0x8(%ebp),%edi
603f4a:	ff 36                	push   (%esi)
603f4c:	6a 40                	push   $0x40
603f4e:	8d 87 80 00 00 00    	lea    0x80(%edi),%eax
603f54:	50                   	push   %eax
603f55:	e8 1d 31 ff ff       	call   0x5f7077
603f5a:	83 c4 10             	add    $0x10,%esp
603f5d:	85 c0                	test   %eax,%eax
603f5f:	75 3b                	jne    0x603f9c
603f61:	6a 01                	push   $0x1
603f63:	68 d4 04 6d 00       	push   $0x6d04d4
603f68:	81 c7 20 01 00 00    	add    $0x120,%edi
603f6e:	6a 55                	push   $0x55
603f70:	57                   	push   %edi
603f71:	e8 49 5d ff ff       	call   0x5f9cbf
603f76:	83 c4 10             	add    $0x10,%esp
603f79:	85 c0                	test   %eax,%eax
603f7b:	75 1f                	jne    0x603f9c
603f7d:	ff 76 04             	push   0x4(%esi)
603f80:	ff 36                	push   (%esi)
603f82:	6a 55                	push   $0x55
603f84:	57                   	push   %edi
603f85:	e8 35 5d ff ff       	call   0x5f9cbf
603f8a:	83 c4 10             	add    $0x10,%esp
603f8d:	85 c0                	test   %eax,%eax
603f8f:	75 0b                	jne    0x603f9c
603f91:	b0 01                	mov    $0x1,%al
603f93:	eb 02                	jmp    0x603f97
603f95:	32 c0                	xor    %al,%al
603f97:	5f                   	pop    %edi