4919ed:	33 c0                	xor    %eax,%eax
4919ef:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4919f2:	33 cd                	xor    %ebp,%ecx
4919f4:	5e                   	pop    %esi
4919f5:	e8 d0 7f fd ff       	call   0x4699ca
4919fa:	c9                   	leave
4919fb:	c3                   	ret
4919fc:	8b ff                	mov    %edi,%edi
4919fe:	55                   	push   %ebp
4919ff:	8b ec                	mov    %esp,%ebp
491a01:	51                   	push   %ecx
491a02:	56                   	push   %esi
491a03:	8b 75 0c             	mov    0xc(%ebp),%esi
491a06:	33 d2                	xor    %edx,%edx
491a08:	57                   	push   %edi
491a09:	42                   	inc    %edx
491a0a:	33 ff                	xor    %edi,%edi
491a0c:	85 f6                	test   %esi,%esi
491a0e:	78 4e                	js     0x491a5e
491a10:	53                   	push   %ebx
491a11:	85 d2                	test   %edx,%edx
491a13:	74 48                	je     0x491a5d
491a15:	8d 04 37             	lea    (%edi,%esi,1),%eax
491a18:	99                   	cltd
491a19:	2b c2                	sub    %edx,%eax
491a1b:	8b d8                	mov    %eax,%ebx
491a1d:	8b 45 08             	mov    0x8(%ebp),%eax
491a20:	d1 fb                	sar    $1,%ebx
491a22:	6b cb 0c             	imul   $0xc,%ebx,%ecx
491a25:	89 4d fc             	mov    %ecx,-0x4(%ebp)
491a28:	ff 34 01             	push   (%ecx,%eax,1)
491a2b:	8b 45 10             	mov    0x10(%ebp),%eax
491a2e:	ff 30                	push   (%eax)
491a30:	e8 a3 88 fe ff       	call   0x47a2d8
491a35:	8b d0                	mov    %eax,%edx
491a37:	59                   	pop    %ecx
491a38:	59                   	pop    %ecx
491a39:	85 d2                	test   %edx,%edx
491a3b:	75 12                	jne    0x491a4f
491a3d:	8b 45 08             	mov    0x8(%ebp),%eax
491a40:	8b 4d fc             	mov    -0x4(%ebp),%ecx
491a43:	83 c0 04             	add    $0x4,%eax
491a46:	03 c8                	add    %eax,%ecx
491a48:	8b 45 10             	mov    0x10(%ebp),%eax
491a4b:	89 08                	mov    %ecx,(%eax)
491a4d:	eb 0a                	jmp    0x491a59
491a4f:	79 05                	jns    0x491a56
491a51:	8d 73 ff             	lea    -0x1(%ebx),%esi
491a54:	eb 03                	jmp    0x491a59
491a56:	8d 7b 01             	lea    0x1(%ebx),%edi
491a59:	3b fe                	cmp    %esi,%edi
491a5b:	7e b4                	jle    0x491a11
491a5d:	5b                   	pop    %ebx
491a5e:	33 c0                	xor    %eax,%eax
491a60:	85 d2                	test   %edx,%edx
491a62:	5f                   	pop    %edi
491a63:	0f 94 c0             	sete   %al
491a66:	5e                   	pop    %esi
491a67:	c9                   	leave
491a68:	c3                   	ret
491a69:	8b ff                	mov    %edi,%edi
491a6b:	55                   	push   %ebp
491a6c:	8b ec                	mov    %esp,%ebp
491a6e:	51                   	push   %ecx
491a6f:	51                   	push   %ecx
491a70:	53                   	push   %ebx
491a71:	56                   	push   %esi
491a72:	57                   	push   %edi
491a73:	e8 41 50 ff ff       	call   0x486ab9
491a78:	8b 7d 08             	mov    0x8(%ebp),%edi
491a7b:	33 c9                	xor    %ecx,%ecx
491a7d:	89 4d f8             	mov    %ecx,-0x8(%ebp)
491a80:	8d 70 50             	lea    0x50(%eax),%esi
491a83:	8d 86 50 02 00 00    	lea    0x250(%esi),%eax
491a89:	89 4e 08             	mov    %ecx,0x8(%esi)
491a8c:	66 89 08             	mov    %cx,(%eax)
491a8f:	8d 5e 04             	lea    0x4(%esi),%ebx
491a92:	89 45 fc             	mov    %eax,-0x4(%ebp)
491a95:	8d 87 80 00 00 00    	lea    0x80(%edi),%eax
491a9b:	89 3e                	mov    %edi,(%esi)
491a9d:	89 03                	mov    %eax,(%ebx)
491a9f:	66 39 08             	cmp    %cx,(%eax)
491aa2:	74 12                	je     0x491ab6
491aa4:	53                   	push   %ebx
491aa5:	6a 16                	push   $0x16
491aa7:	68 b8 46 4a 00       	push   $0x4a46b8
491aac:	e8 4b ff ff ff       	call   0x4919fc
491ab1:	83 c4 0c             	add    $0xc,%esp
491ab4:	33 c9                	xor    %ecx,%ecx
491ab6:	8b 06                	mov    (%esi),%eax
491ab8:	56                   	push   %esi
491ab9:	66 39 08             	cmp    %cx,(%eax)
491abc:	74 47                	je     0x491b05
491abe:	8b 03                	mov    (%ebx),%eax
491ac0:	66 39 08             	cmp    %cx,(%eax)
491ac3:	74 07                	je     0x491acc
491ac5:	e8 1c f9 ff ff       	call   0x4913e6
491aca:	eb 05                	jmp    0x491ad1
491acc:	e8 ae f9 ff ff       	call   0x49147f
491ad1:	33 c0                	xor    %eax,%eax
491ad3:	59                   	pop    %ecx
491ad4:	39 46 08             	cmp    %eax,0x8(%esi)
491ad7:	75 32                	jne    0x491b0b
491ad9:	56                   	push   %esi
491ada:	6a 40                	push   $0x40
491adc:	68 a8 43 4a 00       	push   $0x4a43a8
491ae1:	e8 16 ff ff ff       	call   0x4919fc
491ae6:	83 c4 0c             	add    $0xc,%esp
491ae9:	85 c0                	test   %eax,%eax
491aeb:	74 1e                	je     0x491b0b
491aed:	8b 03                	mov    (%ebx),%eax
491aef:	33 c9                	xor    %ecx,%ecx
491af1:	56                   	push   %esi
491af2:	66 39 08             	cmp    %cx,(%eax)
491af5:	74 07                	je     0x491afe
491af7:	e8 ea f8 ff ff       	call   0x4913e6
491afc:	eb 0c                	jmp    0x491b0a
491afe:	e8 7c f9 ff ff       	call   0x49147f
491b03:	eb 05                	jmp    0x491b0a
491b05:	e8 55 f8 ff ff       	call   0x49135f
491b0a:	59                   	pop    %ecx
491b0b:	33 db                	xor    %ebx,%ebx
491b0d:	39 5e 08             	cmp    %ebx,0x8(%esi)
491b10:	0f 84 44 01 00 00    	je     0x491c5a
491b16:	85 ff                	test   %edi,%edi
491b18:	74 16                	je     0x491b30
491b1a:	66 39 1f             	cmp    %bx,(%edi)
491b1d:	75 11                	jne    0x491b30
491b1f:	66 39 9f 00 01 00 00 	cmp    %bx,0x100(%edi)
491b26:	75 08                	jne    0x491b30
491b28:	ff 15 d8 e0 49 00    	call   *0x49e0d8
491b2e:	eb 15                	jmp    0x491b45
491b30:	8d 87 00 01 00 00    	lea    0x100(%edi),%eax
491b36:	f7 df                	neg    %edi
491b38:	56                   	push   %esi
491b39:	1b ff                	sbb    %edi,%edi
491b3b:	23 f8                	and    %eax,%edi
491b3d:	57                   	push   %edi
491b3e:	e8 7c fd ff ff       	call   0x4918bf
491b43:	59                   	pop    %ecx
491b44:	59                   	pop    %ecx
491b45:	8b f0                	mov    %eax,%esi
491b47:	85 f6                	test   %esi,%esi
491b49:	0f 84 0b 01 00 00    	je     0x491c5a
491b4f:	81 fe e8 fd 00 00    	cmp    $0xfde8,%esi
491b55:	0f 84 ff 00 00 00    	je     0x491c5a
491b5b:	0f b7 c6             	movzwl %si,%eax
491b5e:	50                   	push   %eax
491b5f:	ff 15 dc e0 49 00    	call   *0x49e0dc
491b65:	85 c0                	test   %eax,%eax
491b67:	0f 84 ed 00 00 00    	je     0x491c5a
491b6d:	8b 45 0c             	mov    0xc(%ebp),%eax
491b70:	85 c0                	test   %eax,%eax
491b72:	74 02                	je     0x491b76
491b74:	89 30                	mov    %esi,(%eax)
491b76:	8b 7d 10             	mov    0x10(%ebp),%edi
491b79:	85 ff                	test   %edi,%edi
491b7b:	0f 84 c4 00 00 00    	je     0x491c45
491b81:	8b 4d fc             	mov    -0x4(%ebp),%ecx
491b84:	8d 9f 20 01 00 00    	lea    0x120(%edi),%ebx
491b8a:	33 c0                	xor    %eax,%eax
491b8c:	66 89 03             	mov    %ax,(%ebx)
491b8f:	8d 51 02             	lea    0x2(%ecx),%edx
491b92:	66 8b 01             	mov    (%ecx),%ax
491b95:	83 c1 02             	add    $0x2,%ecx
491b98:	66 3b 45 f8          	cmp    -0x8(%ebp),%ax
491b9c:	75 f4                	jne    0x491b92
491b9e:	2b ca                	sub    %edx,%ecx
491ba0:	d1 f9                	sar    $1,%ecx
491ba2:	8d 41 01             	lea    0x1(%ecx),%eax
491ba5:	50                   	push   %eax
491ba6:	ff 75 fc             	push   -0x4(%ebp)
491ba9:	6a 55                	push   $0x55
491bab:	53                   	push   %ebx
491bac:	e8 5d e3 fe ff       	call   0x47ff0e
491bb1:	83 c4 10             	add    $0x10,%esp
491bb4:	85 c0                	test   %eax,%eax
491bb6:	0f 85 a5 00 00 00    	jne    0x491c61
491bbc:	6a 40                	push   $0x40
491bbe:	57                   	push   %edi
491bbf:	68 01 10 00 00       	push   $0x1001
491bc4:	53                   	push   %ebx
491bc5:	e8 66 6d ff ff       	call   0x488930
491bca:	85 c0                	test   %eax,%eax
491bcc:	0f 84 88 00 00 00    	je     0x491c5a
491bd2:	6a 40                	push   $0x40
491bd4:	8d 9f 80 00 00 00    	lea    0x80(%edi),%ebx
491bda:	53                   	push   %ebx
491bdb:	68 02 10 00 00       	push   $0x1002
491be0:	8d 87 20 01 00 00    	lea    0x120(%edi),%eax
491be6:	50                   	push   %eax
491be7:	e8 44 6d ff ff       	call   0x488930
491bec:	85 c0                	test   %eax,%eax
491bee:	74 6a                	je     0x491c5a
491bf0:	6a 5f                	push   $0x5f
491bf2:	53                   	push   %ebx
491bf3:	e8 06 99 fd ff       	call   0x46b4fe
491bf8:	59                   	pop    %ecx
491bf9:	59                   	pop    %ecx
491bfa:	85 c0                	test   %eax,%eax
491bfc:	75 0e                	jne    0x491c0c
491bfe:	6a 2e                	push   $0x2e
491c00:	53                   	push   %ebx
491c01:	e8 f8 98 fd ff       	call   0x46b4fe
491c06:	59                   	pop    %ecx
491c07:	59                   	pop    %ecx
491c08:	85 c0                	test   %eax,%eax
491c0a:	74 15                	je     0x491c21
491c0c:	6a 40                	push   $0x40
491c0e:	53                   	push   %ebx
491c0f:	6a 07                	push   $0x7
491c11:	8d 87 20 01 00 00    	lea    0x120(%edi),%eax
491c17:	50                   	push   %eax
491c18:	e8 13 6d ff ff       	call   0x488930
491c1d:	85 c0                	test   %eax,%eax
491c1f:	74 39                	je     0x491c5a
491c21:	81 c7 00 01 00 00    	add    $0x100,%edi
491c27:	81 fe e9 fd 00 00    	cmp    $0xfde9,%esi
491c2d:	75 1b                	jne    0x491c4a
491c2f:	6a 05                	push   $0x5
491c31:	68 3c 51 4a 00       	push   $0x4a513c
491c36:	6a 10                	push   $0x10
491c38:	57                   	push   %edi
491c39:	e8 d0 e2 fe ff       	call   0x47ff0e
491c3e:	83 c4 10             	add    $0x10,%esp
491c41:	85 c0                	test   %eax,%eax
491c43:	75 1c                	jne    0x491c61
491c45:	33 c0                	xor    %eax,%eax
491c47:	40                   	inc    %eax
491c48:	eb 12                	jmp    0x491c5c
491c4a:	6a 0a                	push   $0xa
491c4c:	6a 10                	push   $0x10
491c4e:	57                   	push   %edi
491c4f:	56                   	push   %esi
491c50:	e8 3f fd fe ff       	call   0x481994
491c55:	83 c4 10             	add    $0x10,%esp
491c58:	eb eb                	jmp    0x491c45
491c5a:	33 c0                	xor    %eax,%eax
491c5c:	5f                   	pop    %edi
491c5d:	5e                   	pop    %esi
491c5e:	5b                   	pop    %ebx
491c5f:	c9                   	leave
491c60:	c3                   	ret
491c61:	33 c0                	xor    %eax,%eax
491c63:	50                   	push   %eax
491c64:	50                   	push   %eax
491c65:	50                   	push   %eax
491c66:	50                   	push   %eax
491c67:	50                   	push   %eax
491c68:	e8 e1 79 fe ff       	call   0x47964e
491c6d:	cc                   	int3
491c6e:	cc                   	int3
491c6f:	cc                   	int3
491c70:	8b ff                	mov    %edi,%edi
491c72:	55                   	push   %ebp
491c73:	8b ec                	mov    %esp,%ebp
491c75:	81 ec f4 00 00 00    	sub    $0xf4,%esp
491c7b:	a1 14 40 4c 00       	mov    0x4c4014,%eax
491c80:	33 c5                	xor    %ebp,%eax
491c82:	89 45 fc             	mov    %eax,-0x4(%ebp)
491c85:	53                   	push   %ebx
491c86:	56                   	push   %esi
491c87:	8b 75 08             	mov    0x8(%ebp),%esi
491c8a:	57                   	push   %edi
491c8b:	e8 29 4e ff ff       	call   0x486ab9
491c90:	8b d8                	mov    %eax,%ebx
491c92:	e8 22 4e ff ff       	call   0x486ab9
491c97:	56                   	push   %esi
491c98:	8b b8 4c 03 00 00    	mov    0x34c(%eax),%edi
491c9e:	e8 22 05 00 00       	call   0x4921c5
491ca3:	59                   	pop    %ecx
491ca4:	8b 4b 64             	mov    0x64(%ebx),%ecx
491ca7:	8b f0                	mov    %eax,%esi
491ca9:	f7 d9                	neg    %ecx
491cab:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
491cb1:	6a 78                	push   $0x78
491cb3:	1b c9                	sbb    %ecx,%ecx
491cb5:	81 e1 05 f0 ff ff    	and    $0xfffff005,%ecx
491cbb:	50                   	push   %eax
491cbc:	81 c1 02 10 00 00    	add    $0x1002,%ecx
491cc2:	51                   	push   %ecx
491cc3:	56                   	push   %esi
491cc4:	ff 15 f4 e0 49 00    	call   *0x49e0f4
491cca:	85 c0                	test   %eax,%eax
491ccc:	75 05                	jne    0x491cd3
491cce:	21 07                	and    %eax,(%edi)
491cd0:	40                   	inc    %eax
491cd1:	eb 33                	jmp    0x491d06
491cd3:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
491cd9:	50                   	push   %eax
491cda:	ff 73 54             	push   0x54(%ebx)
491cdd:	e8 f6 85 fe ff       	call   0x47a2d8
491ce2:	59                   	pop    %ecx
491ce3:	59                   	pop    %ecx
491ce4:	85 c0                	test   %eax,%eax
491ce6:	75 14                	jne    0x491cfc
491ce8:	56                   	push   %esi
491ce9:	e8 0c 06 00 00       	call   0x4922fa
491cee:	59                   	pop    %ecx
491cef:	85 c0                	test   %eax,%eax
491cf1:	74 09                	je     0x491cfc
491cf3:	83 0f 04             	orl    $0x4,(%edi)
491cf6:	89 77 08             	mov    %esi,0x8(%edi)
491cf9:	89 77 04             	mov    %esi,0x4(%edi)
491cfc:	8b 07                	mov    (%edi),%eax
491cfe:	c1 e8 02             	shr    $0x2,%eax
491d01:	f7 d0                	not    %eax
491d03:	83 e0 01             	and    $0x1,%eax
491d06:	8b 4d fc             	mov    -0x4(%ebp),%ecx
491d09:	5f                   	pop    %edi
491d0a:	5e                   	pop    %esi
491d0b:	33 cd                	xor    %ebp,%ecx
491d0d:	5b                   	pop    %ebx
491d0e:	e8 b7 7c fd ff       	call   0x4699ca
491d13:	c9                   	leave
491d14:	c2 04 00             	ret    $0x4
491d17:	8b ff                	mov    %edi,%edi
491d19:	55                   	push   %ebp
491d1a:	8b ec                	mov    %esp,%ebp
491d1c:	56                   	push   %esi
491d1d:	57                   	push   %edi
491d1e:	e8 96 4d ff ff       	call   0x486ab9
491d23:	8b d0                	mov    %eax,%edx
491d25:	33 ff                	xor    %edi,%edi
491d27:	8b 4a 54             	mov    0x54(%edx),%ecx
491d2a:	8d 71 02             	lea    0x2(%ecx),%esi
491d2d:	66 8b 01             	mov    (%ecx),%ax
491d30:	83 c1 02             	add    $0x2,%ecx
491d33:	66 3b c7             	cmp    %di,%ax
491d36:	75 f5                	jne    0x491d2d
491d38:	2b ce                	sub    %esi,%ecx
491d3a:	33 c0                	xor    %eax,%eax
491d3c:	d1 f9                	sar    $1,%ecx
491d3e:	83 f9 03             	cmp    $0x3,%ecx
491d41:	6a 01                	push   $0x1
491d43:	0f 94 c0             	sete   %al
491d46:	68 70 1c 49 00       	push   $0x491c70
491d4b:	89 42 64             	mov    %eax,0x64(%edx)
491d4e:	ff 15 e8 e0 49 00    	call   *0x49e0e8
491d54:	8b 45 08             	mov    0x8(%ebp),%eax
491d57:	f6 00 04             	testb  $0x4,(%eax)
491d5a:	75 02                	jne    0x491d5e
491d5c:	89 38                	mov    %edi,(%eax)
491d5e:	5f                   	pop    %edi
491d5f:	5e                   	pop    %esi
491d60:	5d                   	pop    %ebp
491d61:	c3                   	ret
491d62:	8b ff                	mov    %edi,%edi
491d64:	55                   	push   %ebp
491d65:	8b ec                	mov    %esp,%ebp