a63d49:	8b 0e                	mov    (%esi),%ecx
a63d4b:	85 c9                	test   %ecx,%ecx
a63d4d:	74 18                	je     0xa63d67
a63d4f:	e8 75 e4 9b ff       	call   0x4221c9
a63d54:	0f b7 c0             	movzwl %ax,%eax
a63d57:	b9 ff ff 00 00       	mov    $0xffff,%ecx
a63d5c:	66 3b c8             	cmp    %ax,%cx
a63d5f:	74 06                	je     0xa63d67
a63d61:	66 89 46 06          	mov    %ax,0x6(%esi)
a63d65:	eb 03                	jmp    0xa63d6a
a63d67:	83 26 00             	andl   $0x0,(%esi)
a63d6a:	66 8b 46 06          	mov    0x6(%esi),%ax
a63d6e:	c6 46 04 01          	movb   $0x1,0x4(%esi)
a63d72:	5e                   	pop    %esi
a63d73:	c3                   	ret
a63d74:	cc                   	int3
a63d75:	cc                   	int3
a63d76:	cc                   	int3
a63d77:	cc                   	int3
a63d78:	cc                   	int3
a63d79:	cc                   	int3
a63d7a:	cc                   	int3
a63d7b:	cc                   	int3
a63d7c:	cc                   	int3
a63d7d:	cc                   	int3
a63d7e:	cc                   	int3
a63d7f:	8b 41 20             	mov    0x20(%ecx),%eax
a63d82:	33 d2                	xor    %edx,%edx
a63d84:	39 10                	cmp    %edx,(%eax)
a63d86:	74 05                	je     0xa63d8d
a63d88:	8b 41 30             	mov    0x30(%ecx),%eax
a63d8b:	8b 10                	mov    (%eax),%edx
a63d8d:	8b c2                	mov    %edx,%eax
a63d8f:	99                   	cltd
a63d90:	c3                   	ret
a63d91:	cc                   	int3
a63d92:	cc                   	int3
a63d93:	cc                   	int3
a63d94:	cc                   	int3
a63d95:	8b 41 30             	mov    0x30(%ecx),%eax
a63d98:	ff 08                	decl   (%eax)
a63d9a:	8b 51 20             	mov    0x20(%ecx),%edx
a63d9d:	8b 02                	mov    (%edx),%eax
a63d9f:	8d 48 02             	lea    0x2(%eax),%ecx
a63da2:	89 0a                	mov    %ecx,(%edx)
a63da4:	c3                   	ret
a63da5:	cc                   	int3
a63da6:	cc                   	int3
a63da7:	cc                   	int3
a63da8:	cc                   	int3
a63da9:	55                   	push   %ebp
a63daa:	8b ec                	mov    %esp,%ebp
a63dac:	56                   	push   %esi
a63dad:	8b 75 18             	mov    0x18(%ebp),%esi
a63db0:	85 f6                	test   %esi,%esi
a63db2:	74 1d                	je     0xa63dd1
a63db4:	8b 45 14             	mov    0x14(%ebp),%eax
a63db7:	0f b7 00             	movzwl (%eax),%eax
a63dba:	8d 4d 0c             	lea    0xc(%ebp),%ecx
a63dbd:	50                   	push   %eax
a63dbe:	e8 2e 6c 9b ff       	call   0x41a9f1
a63dc3:	8b 45 14             	mov    0x14(%ebp),%eax
a63dc6:	83 c0 02             	add    $0x2,%eax
a63dc9:	89 45 14             	mov    %eax,0x14(%ebp)
a63dcc:	83 ee 01             	sub    $0x1,%esi
a63dcf:	75 e6                	jne    0xa63db7
a63dd1:	8b 45 08             	mov    0x8(%ebp),%eax
a63dd4:	8b 4d 0c             	mov    0xc(%ebp),%ecx
a63dd7:	5e                   	pop    %esi
a63dd8:	89 08                	mov    %ecx,(%eax)
a63dda:	8b 4d 10             	mov    0x10(%ebp),%ecx
a63ddd:	89 48 04             	mov    %ecx,0x4(%eax)
a63de0:	5d                   	pop    %ebp
a63de1:	c3                   	ret
a63de2:	cc                   	int3
a63de3:	cc                   	int3
a63de4:	cc                   	int3
a63de5:	cc                   	int3
a63de6:	cc                   	int3
a63de7:	cc                   	int3
a63de8:	cc                   	int3
a63de9:	cc                   	int3
a63dea:	cc                   	int3
a63deb:	cc                   	int3
a63dec:	cc                   	int3
a63ded:	cc                   	int3
a63dee:	cc                   	int3
a63def:	cc                   	int3
a63df0:	55                   	push   %ebp
a63df1:	8b ec                	mov    %esp,%ebp
a63df3:	56                   	push   %esi
a63df4:	8b 75 18             	mov    0x18(%ebp),%esi
a63df7:	85 f6                	test   %esi,%esi
a63df9:	74 1d                	je     0xa63e18
a63dfb:	8b 45 14             	mov    0x14(%ebp),%eax
a63dfe:	0f b7 00             	movzwl (%eax),%eax
a63e01:	8d 4d 0c             	lea    0xc(%ebp),%ecx
a63e04:	50                   	push   %eax
a63e05:	e8 a5 97 9d ff       	call   0x43d5af
a63e0a:	8b 45 14             	mov    0x14(%ebp),%eax
a63e0d:	83 c0 02             	add    $0x2,%eax
a63e10:	89 45 14             	mov    %eax,0x14(%ebp)
a63e13:	83 ee 01             	sub    $0x1,%esi
a63e16:	75 e6                	jne    0xa63dfe
a63e18:	8b 45 08             	mov    0x8(%ebp),%eax
a63e1b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
a63e1e:	5e                   	pop    %esi
a63e1f:	89 08                	mov    %ecx,(%eax)
a63e21:	8b 4d 10             	mov    0x10(%ebp),%ecx
a63e24:	89 48 04             	mov    %ecx,0x4(%eax)
a63e27:	5d                   	pop    %ebp
a63e28:	c3                   	ret
a63e29:	cc                   	int3
a63e2a:	cc                   	int3
a63e2b:	cc                   	int3
a63e2c:	cc                   	int3
a63e2d:	cc                   	int3
a63e2e:	cc                   	int3
a63e2f:	cc                   	int3
a63e30:	cc                   	int3
a63e31:	cc                   	int3
a63e32:	cc                   	int3
a63e33:	cc                   	int3
a63e34:	cc                   	int3
a63e35:	cc                   	int3
a63e36:	cc                   	int3
a63e37:	55                   	push   %ebp
a63e38:	8b ec                	mov    %esp,%ebp
a63e3a:	56                   	push   %esi
a63e3b:	8b 75 1c             	mov    0x1c(%ebp),%esi
a63e3e:	85 f6                	test   %esi,%esi
a63e40:	74 19                	je     0xa63e5b
a63e42:	57                   	push   %edi
a63e43:	8b 7d 18             	mov    0x18(%ebp),%edi
a63e46:	0f b7 07             	movzwl (%edi),%eax
a63e49:	8d 4d 10             	lea    0x10(%ebp),%ecx
a63e4c:	50                   	push   %eax
a63e4d:	e8 9f 6b 9b ff       	call   0x41a9f1
a63e52:	8d 7f 02             	lea    0x2(%edi),%edi
a63e55:	83 ee 01             	sub    $0x1,%esi
a63e58:	75 ec                	jne    0xa63e46
a63e5a:	5f                   	pop    %edi
a63e5b:	8b 45 0c             	mov    0xc(%ebp),%eax
a63e5e:	8b 4d 10             	mov    0x10(%ebp),%ecx
a63e61:	5e                   	pop    %esi
a63e62:	89 08                	mov    %ecx,(%eax)
a63e64:	8b 4d 14             	mov    0x14(%ebp),%ecx
a63e67:	89 48 04             	mov    %ecx,0x4(%eax)
a63e6a:	5d                   	pop    %ebp
a63e6b:	c3                   	ret
a63e6c:	cc                   	int3
a63e6d:	cc                   	int3
a63e6e:	cc                   	int3
a63e6f:	cc                   	int3
a63e70:	cc                   	int3
a63e71:	cc                   	int3
a63e72:	cc                   	int3
a63e73:	cc                   	int3
a63e74:	cc                   	int3
a63e75:	cc                   	int3
a63e76:	cc                   	int3
a63e77:	cc                   	int3
a63e78:	cc                   	int3
a63e79:	68 e4 00 00 00       	push   $0xe4
a63e7e:	b8 70 cd bb 00       	mov    $0xbbcd70,%eax
a63e83:	e8 dd e1 9c ff       	call   0x432065
a63e88:	0f b7 4d 1c          	movzwl 0x1c(%ebp),%ecx
a63e8c:	8b 45 08             	mov    0x8(%ebp),%eax
a63e8f:	89 4d 80             	mov    %ecx,-0x80(%ebp)
a63e92:	0f b7 4d 3c          	movzwl 0x3c(%ebp),%ecx
a63e96:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
a63e9c:	8b 45 18             	mov    0x18(%ebp),%eax
a63e9f:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
a63ea5:	89 8d 74 ff ff ff    	mov    %ecx,-0x8c(%ebp)
a63eab:	33 db                	xor    %ebx,%ebx
a63ead:	89 5d fc             	mov    %ebx,-0x4(%ebp)
a63eb0:	38 5d 14             	cmp    %bl,0x14(%ebp)
a63eb3:	74 26                	je     0xa63edb
a63eb5:	8d 8d 60 ff ff ff    	lea    -0xa0(%ebp),%ecx
a63ebb:	51                   	push   %ecx
a63ebc:	8b c8                	mov    %eax,%ecx
a63ebe:	e8 2f f3 99 ff       	call   0x4031f2
a63ec3:	50                   	push   %eax
a63ec4:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
a63ec8:	e8 1e 75 9c ff       	call   0x42b3eb
a63ecd:	59                   	pop    %ecx
a63ece:	8b f8                	mov    %eax,%edi
a63ed0:	8d 8d 60 ff ff ff    	lea    -0xa0(%ebp),%ecx
a63ed6:	89 7d 88             	mov    %edi,-0x78(%ebp)
a63ed9:	eb 24                	jmp    0xa63eff
a63edb:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
a63ee1:	51                   	push   %ecx
a63ee2:	8b c8                	mov    %eax,%ecx
a63ee4:	e8 09 f3 99 ff       	call   0x4031f2
a63ee9:	50                   	push   %eax
a63eea:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
a63eee:	e8 8f 85 9a ff       	call   0x40c482
a63ef3:	59                   	pop    %ecx
a63ef4:	8b f8                	mov    %eax,%edi
a63ef6:	89 45 88             	mov    %eax,-0x78(%ebp)
a63ef9:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
a63eff:	88 5d fc             	mov    %bl,-0x4(%ebp)
a63f02:	e8 3f dd 9c ff       	call   0x431c46
a63f07:	8d 45 a8             	lea    -0x58(%ebp),%eax
a63f0a:	8b cf                	mov    %edi,%ecx
a63f0c:	50                   	push   %eax
a63f0d:	e8 7e b0 9d ff       	call   0x43ef90
a63f12:	8b 07                	mov    (%edi),%eax
a63f14:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
a63f18:	8b 70 24             	mov    0x24(%eax),%esi
a63f1b:	8b ce                	mov    %esi,%ecx
a63f1d:	e8 43 87 9c ff       	call   0x42c665
a63f22:	8b cf                	mov    %edi,%ecx
a63f24:	ff d6                	call   *%esi
a63f26:	99                   	cltd
a63f27:	8b d8                	mov    %eax,%ebx
a63f29:	33 da                	xor    %edx,%ebx
a63f2b:	2b da                	sub    %edx,%ebx
a63f2d:	89 5d 84             	mov    %ebx,-0x7c(%ebp)
a63f30:	39 5d 34             	cmp    %ebx,0x34(%ebp)
a63f33:	77 1c                	ja     0xa63f51
a63f35:	ff b5 74 ff ff ff    	push   -0x8c(%ebp)
a63f3b:	8b cb                	mov    %ebx,%ecx
a63f3d:	2b 4d 34             	sub    0x34(%ebp),%ecx
a63f40:	41                   	inc    %ecx
a63f41:	51                   	push   %ecx
a63f42:	6a 00                	push   $0x0
a63f44:	8d 4d 24             	lea    0x24(%ebp),%ecx
a63f47:	e8 29 13 9c ff       	call   0x425275
a63f4c:	e9 86 00 00 00       	jmp    0xa63fd7
a63f51:	83 7d bc 10          	cmpl   $0x10,-0x44(%ebp)
a63f55:	8b 45 a8             	mov    -0x58(%ebp),%eax
a63f58:	8b c8                	mov    %eax,%ecx
a63f5a:	73 03                	jae    0xa63f5f
a63f5c:	8d 4d a8             	lea    -0x58(%ebp),%ecx
a63f5f:	80 39 7f             	cmpb   $0x7f,(%ecx)
a63f62:	74 73                	je     0xa63fd7
a63f64:	83 7d bc 10          	cmpl   $0x10,-0x44(%ebp)
a63f68:	73 03                	jae    0xa63f6d
a63f6a:	8d 45 a8             	lea    -0x58(%ebp),%eax
a63f6d:	80 38 00             	cmpb   $0x0,(%eax)
a63f70:	7e 65                	jle    0xa63fd7
a63f72:	8b 07                	mov    (%edi),%eax
a63f74:	8b 70 10             	mov    0x10(%eax),%esi
a63f77:	8b ce                	mov    %esi,%ecx
a63f79:	e8 e7 86 9c ff       	call   0x42c665
a63f7e:	8b cf                	mov    %edi,%ecx
a63f80:	ff d6                	call   *%esi
a63f82:	83 7d bc 10          	cmpl   $0x10,-0x44(%ebp)
a63f86:	8b 7d a8             	mov    -0x58(%ebp),%edi
a63f89:	0f b7 c0             	movzwl %ax,%eax
a63f8c:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
a63f92:	73 03                	jae    0xa63f97
a63f94:	8d 7d a8             	lea    -0x58(%ebp),%edi
a63f97:	8b 75 34             	mov    0x34(%ebp),%esi
a63f9a:	8a 07                	mov    (%edi),%al
a63f9c:	2b f3                	sub    %ebx,%esi
a63f9e:	3c 7f                	cmp    $0x7f,%al
a63fa0:	74 32                	je     0xa63fd4
a63fa2:	8b 9d 7c ff ff ff    	mov    -0x84(%ebp),%ebx
a63fa8:	84 c0                	test   %al,%al
a63faa:	7e 25                	jle    0xa63fd1
a63fac:	0f be c0             	movsbl %al,%eax
a63faf:	3b c6                	cmp    %esi,%eax
a63fb1:	73 1e                	jae    0xa63fd1
a63fb3:	53                   	push   %ebx
a63fb4:	2b f0                	sub    %eax,%esi
a63fb6:	8d 4d 24             	lea    0x24(%ebp),%ecx
a63fb9:	6a 01                	push   $0x1
a63fbb:	56                   	push   %esi
a63fbc:	e8 b4 12 9c ff       	call   0x425275
a63fc1:	8d 47 01             	lea    0x1(%edi),%eax
a63fc4:	80 38 00             	cmpb   $0x0,(%eax)
a63fc7:	7e 02                	jle    0xa63fcb
a63fc9:	8b f8                	mov    %eax,%edi
a63fcb:	8a 07                	mov    (%edi),%al
a63fcd:	3c 7f                	cmp    $0x7f,%al
a63fcf:	75 d7                	jne    0xa63fa8
a63fd1:	8b 5d 84             	mov    -0x7c(%ebp),%ebx
a63fd4:	8b 7d 88             	mov    -0x78(%ebp),%edi
a63fd7:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
a63fdb:	33 c0                	xor    %eax,%eax
a63fdd:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
a63fe4:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
a63fe8:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
a63fec:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
a63ff2:	8b 07                	mov    (%edi),%eax
a63ff4:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
a63ff8:	51                   	push   %ecx
a63ff9:	74 24                	je     0xa6401f
a63ffb:	8b 70 2c             	mov    0x2c(%eax),%esi
a63ffe:	8b ce                	mov    %esi,%ecx
a64000:	e8 60 86 9c ff       	call   0x42c665
a64005:	8b cf                	mov    %edi,%ecx
a64007:	ff d6                	call   *%esi
a64009:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
a6400f:	8b cf                	mov    %edi,%ecx
a64011:	89 45 84             	mov    %eax,-0x7c(%ebp)
a64014:	8d 45 90             	lea    -0x70(%ebp),%eax
a64017:	50                   	push   %eax
a64018:	e8 b2 09 9b ff       	call   0x4149cf
a6401d:	eb 22                	jmp    0xa64041
a6401f:	8b 70 28             	mov    0x28(%eax),%esi
a64022:	8b ce                	mov    %esi,%ecx
a64024:	e8 3c 86 9c ff       	call   0x42c665
a64029:	8b cf                	mov    %edi,%ecx
a6402b:	ff d6                	call   *%esi
a6402d:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
a64033:	8b cf                	mov    %edi,%ecx
a64035:	89 45 84             	mov    %eax,-0x7c(%ebp)
a64038:	8d 45 90             	lea    -0x70(%ebp),%eax
a6403b:	50                   	push   %eax
a6403c:	e8 9d c8 9a ff       	call   0x4108de
a64041:	50                   	push   %eax
a64042:	8d 4d d8             	lea    -0x28(%ebp),%ecx
a64045:	e8 74 64 9c ff       	call   0x42a4be
a6404a:	6a 00                	push   $0x0
a6404c:	6a 01                	push   $0x1
a6404e:	8d 4d 90             	lea    -0x70(%ebp),%ecx
a64051:	e8 77 48 9a ff       	call   0x4088cd
a64056:	83 65 d0 00          	andl   $0x0,-0x30(%ebp)
a6405a:	33 c0                	xor    %eax,%eax
a6405c:	c7 45 d4 07 00 00 00 	movl   $0x7,-0x2c(%ebp)
a64063:	66 89 45 c0          	mov    %ax,-0x40(%ebp)
a64067:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
a6406d:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
a64071:	f6 40 14 08          	testb  $0x8,0x14(%eax)
a64075:	74 20                	je     0xa64097
a64077:	8d 45 90             	lea    -0x70(%ebp),%eax
a6407a:	8b cf                	mov    %edi,%ecx
a6407c:	50                   	push   %eax
a6407d:	e8 5c 1c 9c ff       	call   0x425cde
a64082:	50                   	push   %eax
a64083:	8d 4d c0             	lea    -0x40(%ebp),%ecx
a64086:	e8 33 64 9c ff       	call   0x42a4be
a6408b:	6a 00                	push   $0x0
a6408d:	6a 01                	push   $0x1
a6408f:	8d 4d 90             	lea    -0x70(%ebp),%ecx
a64092:	e8 36 48 9a ff       	call   0x4088cd
a64097:	32 d2                	xor    %dl,%dl
a64099:	33 c9                	xor    %ecx,%ecx
a6409b:	88 55 8f             	mov    %dl,-0x71(%ebp)
a6409e:	33 f6                	xor    %esi,%esi
a640a0:	0f be 44 35 84       	movsbl -0x7c(%ebp,%esi,1),%eax
a640a5:	83 e8 20             	sub    $0x20,%eax
a640a8:	74 44                	je     0xa640ee
a640aa:	83 e8 04             	sub    $0x4,%eax
a640ad:	74 3a                	je     0xa640e9
a640af:	83 e8 07             	sub    $0x7,%eax
a640b2:	74 30                	je     0xa640e4