4909a1:	c7 86 00 01 00 00 00 	movl   $0x0,0x100(%esi)
4909a8:	00 00 00
4909ab:	c7 86 04 01 00 00 00 	movl   $0x0,0x104(%esi)
4909b2:	00 00 00
4909b5:	5e                   	pop    %esi
4909b6:	5d                   	pop    %ebp
4909b7:	5b                   	pop    %ebx
4909b8:	33 cc                	xor    %esp,%ecx
4909ba:	e8 1b 0b 15 00       	call   0x5e14da
4909bf:	83 c4 1c             	add    $0x1c,%esp
4909c2:	c3                   	ret
4909c3:	cc                   	int3
4909c4:	cc                   	int3
4909c5:	cc                   	int3
4909c6:	cc                   	int3
4909c7:	cc                   	int3
4909c8:	cc                   	int3
4909c9:	cc                   	int3
4909ca:	cc                   	int3
4909cb:	cc                   	int3
4909cc:	cc                   	int3
4909cd:	cc                   	int3
4909ce:	cc                   	int3
4909cf:	cc                   	int3
4909d0:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4909d4:	53                   	push   %ebx
4909d5:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4909d9:	56                   	push   %esi
4909da:	8b 74 24 0c          	mov    0xc(%esp),%esi
4909de:	57                   	push   %edi
4909df:	8b 7e 60             	mov    0x60(%esi),%edi
4909e2:	85 db                	test   %ebx,%ebx
4909e4:	75 0b                	jne    0x4909f1
4909e6:	85 c9                	test   %ecx,%ecx
4909e8:	75 0b                	jne    0x4909f5
4909ea:	5f                   	pop    %edi
4909eb:	5e                   	pop    %esi
4909ec:	8d 43 01             	lea    0x1(%ebx),%eax
4909ef:	5b                   	pop    %ebx
4909f0:	c3                   	ret
4909f1:	85 c9                	test   %ecx,%ecx
4909f3:	74 2f                	je     0x490a24
4909f5:	8b 46 58             	mov    0x58(%esi),%eax
4909f8:	57                   	push   %edi
4909f9:	c1 e0 03             	shl    $0x3,%eax
4909fc:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
490a00:	50                   	push   %eax
490a01:	51                   	push   %ecx
490a02:	74 07                	je     0x490a0b
490a04:	e8 c7 0e 01 00       	call   0x4a18d0
490a09:	eb 05                	jmp    0x490a10
490a0b:	e8 b0 0e 01 00       	call   0x4a18c0
490a10:	83 c4 0c             	add    $0xc,%esp
490a13:	85 db                	test   %ebx,%ebx
490a15:	75 0d                	jne    0x490a24
490a17:	89 9f f8 00 00 00    	mov    %ebx,0xf8(%edi)
490a1d:	8d 43 01             	lea    0x1(%ebx),%eax
490a20:	5f                   	pop    %edi
490a21:	5e                   	pop    %esi
490a22:	5b                   	pop    %ebx
490a23:	c3                   	ret
490a24:	8b 03                	mov    (%ebx),%eax
490a26:	8d 4e 20             	lea    0x20(%esi),%ecx
490a29:	89 01                	mov    %eax,(%ecx)
490a2b:	8b 43 04             	mov    0x4(%ebx),%eax
490a2e:	89 41 04             	mov    %eax,0x4(%ecx)
490a31:	b8 01 00 00 00       	mov    $0x1,%eax
490a36:	89 8f f8 00 00 00    	mov    %ecx,0xf8(%edi)
490a3c:	5f                   	pop    %edi
490a3d:	5e                   	pop    %esi
490a3e:	5b                   	pop    %ebx
490a3f:	c3                   	ret
490a40:	8b 4c 24 04          	mov    0x4(%esp),%ecx
490a44:	56                   	push   %esi
490a45:	8b 74 24 10          	mov    0x10(%esp),%esi
490a49:	8b 51 60             	mov    0x60(%ecx),%edx
490a4c:	85 f6                	test   %esi,%esi
490a4e:	75 04                	jne    0x490a54
490a50:	33 c0                	xor    %eax,%eax
490a52:	5e                   	pop    %esi
490a53:	c3                   	ret
490a54:	8b 44 24 14          	mov    0x14(%esp),%eax
490a58:	a8 07                	test   $0x7,%al
490a5a:	74 05                	je     0x490a61
490a5c:	83 c8 ff             	or     $0xffffffff,%eax
490a5f:	5e                   	pop    %esi
490a60:	c3                   	ret
490a61:	8b 49 08             	mov    0x8(%ecx),%ecx
490a64:	85 c9                	test   %ecx,%ecx
490a66:	74 09                	je     0x490a71
490a68:	83 f8 08             	cmp    $0x8,%eax
490a6b:	72 ef                	jb     0x490a5c
490a6d:	85 c9                	test   %ecx,%ecx
490a6f:	75 05                	jne    0x490a76
490a71:	83 f8 10             	cmp    $0x10,%eax
490a74:	72 e6                	jb     0x490a5c
490a76:	57                   	push   %edi
490a77:	8b 7c 24 10          	mov    0x10(%esp),%edi
490a7b:	85 ff                	test   %edi,%edi
490a7d:	75 10                	jne    0x490a8f
490a7f:	85 c9                	test   %ecx,%ecx
490a81:	74 06                	je     0x490a89
490a83:	5f                   	pop    %edi
490a84:	83 c0 08             	add    $0x8,%eax
490a87:	5e                   	pop    %esi
490a88:	c3                   	ret
490a89:	5f                   	pop    %edi
490a8a:	83 c0 f8             	add    $0xfffffff8,%eax
490a8d:	5e                   	pop    %esi
490a8e:	c3                   	ret
490a8f:	85 c9                	test   %ecx,%ecx
490a91:	74 24                	je     0x490ab7
490a93:	68 30 1e 4a 00       	push   $0x4a1e30
490a98:	50                   	push   %eax
490a99:	56                   	push   %esi
490a9a:	57                   	push   %edi
490a9b:	ff b2 f8 00 00 00    	push   0xf8(%edx)
490aa1:	52                   	push   %edx
490aa2:	e8 b9 55 01 00       	call   0x4a6060
490aa7:	83 c4 18             	add    $0x18,%esp
490aaa:	8b c8                	mov    %eax,%ecx
490aac:	83 c8 ff             	or     $0xffffffff,%eax
490aaf:	85 c9                	test   %ecx,%ecx
490ab1:	0f 45 c1             	cmovne %ecx,%eax
490ab4:	5f                   	pop    %edi
490ab5:	5e                   	pop    %esi
490ab6:	c3                   	ret
490ab7:	68 e0 18 4a 00       	push   $0x4a18e0
490abc:	50                   	push   %eax
490abd:	56                   	push   %esi
490abe:	57                   	push   %edi
490abf:	ff b2 f8 00 00 00    	push   0xf8(%edx)
490ac5:	52                   	push   %edx
490ac6:	e8 25 54 01 00       	call   0x4a5ef0
490acb:	83 c4 18             	add    $0x18,%esp
490ace:	8b c8                	mov    %eax,%ecx
490ad0:	83 c8 ff             	or     $0xffffffff,%eax
490ad3:	85 c9                	test   %ecx,%ecx
490ad5:	0f 45 c1             	cmovne %ecx,%eax
490ad8:	5f                   	pop    %edi
490ad9:	5e                   	pop    %esi
490ada:	c3                   	ret
490adb:	cc                   	int3
490adc:	cc                   	int3
490add:	cc                   	int3
490ade:	cc                   	int3
490adf:	cc                   	int3
490ae0:	8b 4c 24 04          	mov    0x4(%esp),%ecx
490ae4:	56                   	push   %esi
490ae5:	57                   	push   %edi
490ae6:	8b 01                	mov    (%ecx),%eax
490ae8:	8b 79 60             	mov    0x60(%ecx),%edi
490aeb:	8b 70 10             	mov    0x10(%eax),%esi
490aee:	81 e6 07 00 0f 00    	and    $0xf0007,%esi
490af4:	83 fe 01             	cmp    $0x1,%esi
490af7:	74 05                	je     0x490afe
490af9:	83 fe 02             	cmp    $0x2,%esi
490afc:	75 3c                	jne    0x490b3a
490afe:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
490b03:	75 35                	jne    0x490b3a
490b05:	8b 41 58             	mov    0x58(%ecx),%eax
490b08:	57                   	push   %edi
490b09:	c1 e0 03             	shl    $0x3,%eax
490b0c:	50                   	push   %eax
490b0d:	ff 74 24 18          	push   0x18(%esp)
490b11:	e8 aa 0d 01 00       	call   0x4a18c0
490b16:	33 c9                	xor    %ecx,%ecx
490b18:	c7 87 f8 00 00 00 e0 	movl   $0x4a18e0,0xf8(%edi)
490b1f:	18 4a 00
490b22:	83 c4 0c             	add    $0xc,%esp
490b25:	8b d0                	mov    %eax,%edx
490b27:	83 fe 02             	cmp    $0x2,%esi
490b2a:	b8 90 2a 4a 00       	mov    $0x4a2a90,%eax
490b2f:	0f 44 c8             	cmove  %eax,%ecx
490b32:	89 8f fc 00 00 00    	mov    %ecx,0xfc(%edi)
490b38:	eb 33                	jmp    0x490b6d
490b3a:	8b 41 58             	mov    0x58(%ecx),%eax
490b3d:	57                   	push   %edi
490b3e:	c1 e0 03             	shl    $0x3,%eax
490b41:	50                   	push   %eax
490b42:	ff 74 24 18          	push   0x18(%esp)
490b46:	e8 85 0d 01 00       	call   0x4a18d0
490b4b:	8b d0                	mov    %eax,%edx
490b4d:	c7 87 f8 00 00 00 30 	movl   $0x4a1e30,0xf8(%edi)
490b54:	1e 4a 00
490b57:	33 c0                	xor    %eax,%eax
490b59:	83 c4 0c             	add    $0xc,%esp
490b5c:	83 fe 02             	cmp    $0x2,%esi
490b5f:	b9 90 2a 4a 00       	mov    $0x4a2a90,%ecx
490b64:	0f 44 c1             	cmove  %ecx,%eax
490b67:	89 87 fc 00 00 00    	mov    %eax,0xfc(%edi)
490b6d:	5f                   	pop    %edi
490b6e:	5e                   	pop    %esi
490b6f:	85 d2                	test   %edx,%edx
490b71:	79 21                	jns    0x490b94
490b73:	68 f1 03 00 00       	push   $0x3f1
490b78:	68 d4 4a 69 00       	push   $0x694ad4
490b7d:	68 8f 00 00 00       	push   $0x8f
490b82:	68 85 00 00 00       	push   $0x85
490b87:	6a 06                	push   $0x6
490b89:	e8 12 09 01 00       	call   0x4a14a0
490b8e:	83 c4 14             	add    $0x14,%esp
490b91:	33 c0                	xor    %eax,%eax
490b93:	c3                   	ret
490b94:	b8 01 00 00 00       	mov    $0x1,%eax
490b99:	c3                   	ret
490b9a:	cc                   	int3
490b9b:	cc                   	int3
490b9c:	cc                   	int3
490b9d:	cc                   	int3
490b9e:	cc                   	int3
490b9f:	cc                   	int3
490ba0:	8b 44 24 04          	mov    0x4(%esp),%eax
490ba4:	8b 48 60             	mov    0x60(%eax),%ecx
490ba7:	8b 91 fc 00 00 00    	mov    0xfc(%ecx),%edx
490bad:	85 d2                	test   %edx,%edx
490baf:	74 1f                	je     0x490bd0
490bb1:	ff 70 08             	push   0x8(%eax)
490bb4:	83 c0 20             	add    $0x20,%eax
490bb7:	50                   	push   %eax
490bb8:	51                   	push   %ecx
490bb9:	ff 74 24 1c          	push   0x1c(%esp)
490bbd:	ff 74 24 18          	push   0x18(%esp)
490bc1:	ff 74 24 20          	push   0x20(%esp)
490bc5:	ff d2                	call   *%edx
490bc7:	83 c4 18             	add    $0x18,%esp
490bca:	b8 01 00 00 00       	mov    $0x1,%eax
490bcf:	c3                   	ret
490bd0:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
490bd4:	ff b1 f8 00 00 00    	push   0xf8(%ecx)
490bda:	74 1f                	je     0x490bfb
490bdc:	83 c0 20             	add    $0x20,%eax
490bdf:	50                   	push   %eax
490be0:	51                   	push   %ecx
490be1:	ff 74 24 1c          	push   0x1c(%esp)
490be5:	ff 74 24 18          	push   0x18(%esp)
490be9:	ff 74 24 20          	push   0x20(%esp)
490bed:	e8 8e 21 01 00       	call   0x4a2d80
490bf2:	83 c4 18             	add    $0x18,%esp
490bf5:	b8 01 00 00 00       	mov    $0x1,%eax
490bfa:	c3                   	ret
490bfb:	83 c0 20             	add    $0x20,%eax
490bfe:	50                   	push   %eax
490bff:	51                   	push   %ecx
490c00:	ff 74 24 1c          	push   0x1c(%esp)
490c04:	ff 74 24 18          	push   0x18(%esp)
490c08:	ff 74 24 20          	push   0x20(%esp)
490c0c:	e8 af 1e 01 00       	call   0x4a2ac0
490c11:	83 c4 18             	add    $0x18,%esp
490c14:	b8 01 00 00 00       	mov    $0x1,%eax
490c19:	c3                   	ret
490c1a:	cc                   	int3
490c1b:	cc                   	int3
490c1c:	cc                   	int3
490c1d:	cc                   	int3
490c1e:	cc                   	int3
490c1f:	cc                   	int3
490c20:	8b 4c 24 04          	mov    0x4(%esp),%ecx
490c24:	55                   	push   %ebp
490c25:	8b 6c 24 14          	mov    0x14(%esp),%ebp
490c29:	57                   	push   %edi
490c2a:	8b 01                	mov    (%ecx),%eax
490c2c:	8b 49 60             	mov    0x60(%ecx),%ecx
490c2f:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
490c33:	8b 78 04             	mov    0x4(%eax),%edi
490c36:	3b ef                	cmp    %edi,%ebp
490c38:	72 38                	jb     0x490c72
490c3a:	8b 44 24 10          	mov    0x10(%esp),%eax
490c3e:	2b ef                	sub    %edi,%ebp
490c40:	53                   	push   %ebx
490c41:	56                   	push   %esi
490c42:	8b 74 24 1c          	mov    0x1c(%esp),%esi
490c46:	33 db                	xor    %ebx,%ebx
490c48:	2b c6                	sub    %esi,%eax
490c4a:	89 44 24 18          	mov    %eax,0x18(%esp)
490c4e:	66 90                	xchg   %ax,%ax
490c50:	51                   	push   %ecx
490c51:	03 c6                	add    %esi,%eax
490c53:	50                   	push   %eax
490c54:	8b 81 f8 00 00 00    	mov    0xf8(%ecx),%eax
490c5a:	56                   	push   %esi
490c5b:	ff d0                	call   *%eax
490c5d:	8b 4c 24 20          	mov    0x20(%esp),%ecx
490c61:	03 df                	add    %edi,%ebx
490c63:	8b 44 24 24          	mov    0x24(%esp),%eax
490c67:	83 c4 0c             	add    $0xc,%esp
490c6a:	03 f7                	add    %edi,%esi
490c6c:	3b dd                	cmp    %ebp,%ebx
490c6e:	76 e0                	jbe    0x490c50
490c70:	5e                   	pop    %esi
490c71:	5b                   	pop    %ebx
490c72:	5f                   	pop    %edi
490c73:	b8 01 00 00 00       	mov    $0x1,%eax
490c78:	5d                   	pop    %ebp
490c79:	c3                   	ret
490c7a:	cc                   	int3
490c7b:	cc                   	int3
490c7c:	cc                   	int3
490c7d:	cc                   	int3
490c7e:	cc                   	int3
490c7f:	cc                   	int3
490c80:	b8 54 44 69 00       	mov    $0x694454,%eax
490c85:	c3                   	ret
490c86:	cc                   	int3
490c87:	cc                   	int3
490c88:	cc                   	int3
490c89:	cc                   	int3
490c8a:	cc                   	int3
490c8b:	cc                   	int3
490c8c:	cc                   	int3
490c8d:	cc                   	int3
490c8e:	cc                   	int3
490c8f:	cc                   	int3
490c90:	b8 38 4a 69 00       	mov    $0x694a38,%eax
490c95:	c3                   	ret
490c96:	cc                   	int3
490c97:	cc                   	int3
490c98:	cc                   	int3
490c99:	cc                   	int3
490c9a:	cc                   	int3
490c9b:	cc                   	int3
490c9c:	cc                   	int3
490c9d:	cc                   	int3
490c9e:	cc                   	int3
490c9f:	cc                   	int3
490ca0:	b8 6c 4a 69 00       	mov    $0x694a6c,%eax
490ca5:	c3                   	ret
490ca6:	cc                   	int3
490ca7:	cc                   	int3
490ca8:	cc                   	int3
490ca9:	cc                   	int3
490caa:	cc                   	int3
490cab:	cc                   	int3
490cac:	cc                   	int3
490cad:	cc                   	int3
490cae:	cc                   	int3
490caf:	cc                   	int3
490cb0:	b8 a0 4a 69 00       	mov    $0x694aa0,%eax
490cb5:	c3                   	ret
490cb6:	cc                   	int3
490cb7:	cc                   	int3
490cb8:	cc                   	int3
490cb9:	cc                   	int3
490cba:	cc                   	int3
490cbb:	cc                   	int3
490cbc:	cc                   	int3
490cbd:	cc                   	int3
490cbe:	cc                   	int3
490cbf:	cc                   	int3
490cc0:	8b 4c 24 04          	mov    0x4(%esp),%ecx