445908:	75 11                	jne    0x44591b
44590a:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
44590e:	74 0b                	je     0x44591b
445910:	8b 56 08             	mov    0x8(%esi),%edx
445913:	8b 45 ec             	mov    -0x14(%ebp),%eax
445916:	8b 08                	mov    (%eax),%ecx
445918:	ff 51 38             	call   *0x38(%ecx)
44591b:	ff 45 f4             	incl   -0xc(%ebp)
44591e:	4b                   	dec    %ebx
44591f:	75 d3                	jne    0x4458f4
445921:	8b 45 ec             	mov    -0x14(%ebp),%eax
445924:	8b 10                	mov    (%eax),%edx
445926:	ff 52 14             	call   *0x14(%edx)
445929:	89 45 f0             	mov    %eax,-0x10(%ebp)
44592c:	8d 55 f0             	lea    -0x10(%ebp),%edx
44592f:	b9 04 00 00 00       	mov    $0x4,%ecx
445934:	8b 45 fc             	mov    -0x4(%ebp),%eax
445937:	8b 18                	mov    (%eax),%ebx
445939:	ff 53 10             	call   *0x10(%ebx)
44593c:	8b 5d f0             	mov    -0x10(%ebp),%ebx
44593f:	4b                   	dec    %ebx
445940:	85 db                	test   %ebx,%ebx
445942:	7c 26                	jl     0x44596a
445944:	43                   	inc    %ebx
445945:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
44594c:	55                   	push   %ebp
44594d:	8d 4d e8             	lea    -0x18(%ebp),%ecx
445950:	8b 55 f4             	mov    -0xc(%ebp),%edx
445953:	8b 45 ec             	mov    -0x14(%ebp),%eax
445956:	8b 30                	mov    (%eax),%esi
445958:	ff 56 0c             	call   *0xc(%esi)
44595b:	8b 45 e8             	mov    -0x18(%ebp),%eax
44595e:	e8 71 fd ff ff       	call   0x4456d4
445963:	59                   	pop    %ecx
445964:	ff 45 f4             	incl   -0xc(%ebp)
445967:	4b                   	dec    %ebx
445968:	75 e2                	jne    0x44594c
44596a:	33 c0                	xor    %eax,%eax
44596c:	5a                   	pop    %edx
44596d:	59                   	pop    %ecx
44596e:	59                   	pop    %ecx
44596f:	64 89 10             	mov    %edx,%fs:(%eax)
445972:	68 87 59 44 00       	push   $0x445987
445977:	8b 45 ec             	mov    -0x14(%ebp),%eax
44597a:	e8 75 df fb ff       	call   0x4038f4
44597f:	c3                   	ret
445980:	e9 03 e7 fb ff       	jmp    0x404088
445985:	eb f0                	jmp    0x445977
445987:	8b 45 f8             	mov    -0x8(%ebp),%eax
44598a:	80 78 74 00          	cmpb   $0x0,0x74(%eax)
44598e:	74 27                	je     0x4459b7
445990:	8b 45 f8             	mov    -0x8(%ebp),%eax
445993:	8b 40 64             	mov    0x64(%eax),%eax
445996:	0f b6 50 10          	movzbl 0x10(%eax),%edx
44599a:	8b 45 f8             	mov    -0x8(%ebp),%eax
44599d:	8b 08                	mov    (%eax),%ecx
44599f:	ff 51 28             	call   *0x28(%ecx)
4459a2:	8b c8                	mov    %eax,%ecx
4459a4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4459a7:	8b 50 68             	mov    0x68(%eax),%edx
4459aa:	8b 45 f8             	mov    -0x8(%ebp),%eax
4459ad:	e8 de 09 00 00       	call   0x446390
4459b2:	89 45 f4             	mov    %eax,-0xc(%ebp)
4459b5:	eb 09                	jmp    0x4459c0
4459b7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4459ba:	8b 40 68             	mov    0x68(%eax),%eax
4459bd:	89 45 f4             	mov    %eax,-0xc(%ebp)
4459c0:	8d 55 f4             	lea    -0xc(%ebp),%edx
4459c3:	b9 04 00 00 00       	mov    $0x4,%ecx
4459c8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4459cb:	8b 18                	mov    (%eax),%ebx
4459cd:	ff 53 10             	call   *0x10(%ebx)
4459d0:	55                   	push   %ebp
4459d1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4459d4:	8b 40 64             	mov    0x64(%eax),%eax
4459d7:	33 d2                	xor    %edx,%edx
4459d9:	e8 72 fd ff ff       	call   0x445750
4459de:	59                   	pop    %ecx
4459df:	ba 7c 15 46 00       	mov    $0x46157c,%edx
4459e4:	b9 04 00 00 00       	mov    $0x4,%ecx
4459e9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4459ec:	8b 18                	mov    (%eax),%ebx
4459ee:	ff 53 10             	call   *0x10(%ebx)
4459f1:	33 c0                	xor    %eax,%eax
4459f3:	5a                   	pop    %edx
4459f4:	59                   	pop    %ecx
4459f5:	59                   	pop    %ecx
4459f6:	64 89 10             	mov    %edx,%fs:(%eax)
4459f9:	68 0e 5a 44 00       	push   $0x445a0e
4459fe:	8d 45 e8             	lea    -0x18(%ebp),%eax
445a01:	e8 1a ed fb ff       	call   0x404720
445a06:	c3                   	ret
445a07:	e9 7c e6 fb ff       	jmp    0x404088
445a0c:	eb f0                	jmp    0x4459fe
445a0e:	5e                   	pop    %esi
445a0f:	5b                   	pop    %ebx
445a10:	8b e5                	mov    %ebp,%esp
445a12:	5d                   	pop    %ebp
445a13:	c3                   	ret
445a14:	55                   	push   %ebp
445a15:	8b ec                	mov    %esp,%ebp
445a17:	53                   	push   %ebx
445a18:	56                   	push   %esi
445a19:	8b d8                	mov    %eax,%ebx
445a1b:	85 db                	test   %ebx,%ebx
445a1d:	74 76                	je     0x445a95
445a1f:	8b c3                	mov    %ebx,%eax
445a21:	e8 1a e4 ff ff       	call   0x443e40
445a26:	85 c0                	test   %eax,%eax
445a28:	75 49                	jne    0x445a73
445a2a:	8b 45 08             	mov    0x8(%ebp),%eax
445a2d:	8b 40 fc             	mov    -0x4(%eax),%eax
445a30:	3b 58 64             	cmp    0x64(%eax),%ebx
445a33:	74 3e                	je     0x445a73
445a35:	8b c3                	mov    %ebx,%eax
445a37:	e8 08 de ff ff       	call   0x443844
445a3c:	84 c0                	test   %al,%al
445a3e:	74 33                	je     0x445a73
445a40:	8b 45 08             	mov    0x8(%ebp),%eax
445a43:	8b 40 fc             	mov    -0x4(%eax),%eax
445a46:	8b 40 64             	mov    0x64(%eax),%eax
445a49:	8b 73 14             	mov    0x14(%ebx),%esi
445a4c:	3b c6                	cmp    %esi,%eax
445a4e:	75 12                	jne    0x445a62
445a50:	8b 45 08             	mov    0x8(%ebp),%eax
445a53:	8b 40 fc             	mov    -0x4(%eax),%eax
445a56:	8b 50 68             	mov    0x68(%eax),%edx
445a59:	8b c3                	mov    %ebx,%eax
445a5b:	e8 2c e3 ff ff       	call   0x443d8c
445a60:	eb 11                	jmp    0x445a73
445a62:	8b 46 14             	mov    0x14(%esi),%eax
445a65:	e8 fa e2 ff ff       	call   0x443d64
445a6a:	8b d0                	mov    %eax,%edx
445a6c:	8b c3                	mov    %ebx,%eax
445a6e:	e8 19 e3 ff ff       	call   0x443d8c
445a73:	8b 45 08             	mov    0x8(%ebp),%eax
445a76:	50                   	push   %eax
445a77:	8b c3                	mov    %ebx,%eax
445a79:	e8 ea e3 ff ff       	call   0x443e68
445a7e:	e8 91 ff ff ff       	call   0x445a14
445a83:	59                   	pop    %ecx
445a84:	8b 45 08             	mov    0x8(%ebp),%eax
445a87:	50                   	push   %eax
445a88:	8b c3                	mov    %ebx,%eax
445a8a:	e8 b1 e3 ff ff       	call   0x443e40
445a8f:	e8 80 ff ff ff       	call   0x445a14
445a94:	59                   	pop    %ecx
445a95:	5e                   	pop    %esi
445a96:	5b                   	pop    %ebx
445a97:	5d                   	pop    %ebp
445a98:	c3                   	ret
445a99:	8d 40 00             	lea    0x0(%eax),%eax
445a9c:	55                   	push   %ebp
445a9d:	8b ec                	mov    %esp,%ebp
445a9f:	51                   	push   %ecx
445aa0:	89 45 fc             	mov    %eax,-0x4(%ebp)
445aa3:	85 d2                	test   %edx,%edx
445aa5:	75 09                	jne    0x445ab0
445aa7:	8b 45 fc             	mov    -0x4(%ebp),%eax
445aaa:	8b 40 64             	mov    0x64(%eax),%eax
445aad:	8b 50 08             	mov    0x8(%eax),%edx
445ab0:	55                   	push   %ebp
445ab1:	8b c2                	mov    %edx,%eax
445ab3:	e8 5c ff ff ff       	call   0x445a14
445ab8:	59                   	pop    %ecx
445ab9:	8b 45 fc             	mov    -0x4(%ebp),%eax
445abc:	8b 40 14             	mov    0x14(%eax),%eax
445abf:	8b 10                	mov    (%eax),%edx
445ac1:	ff 92 80 00 00 00    	call   *0x80(%edx)
445ac7:	59                   	pop    %ecx
445ac8:	5d                   	pop    %ebp
445ac9:	c3                   	ret
445aca:	8b c0                	mov    %eax,%eax
445acc:	53                   	push   %ebx
445acd:	56                   	push   %esi
445ace:	8b f2                	mov    %edx,%esi
445ad0:	8b d8                	mov    %eax,%ebx
445ad2:	8b d6                	mov    %esi,%edx
445ad4:	8b c3                	mov    %ebx,%eax
445ad6:	e8 dd e5 ff ff       	call   0x4440b8
445adb:	89 43 38             	mov    %eax,0x38(%ebx)
445ade:	5e                   	pop    %esi
445adf:	5b                   	pop    %ebx
445ae0:	c3                   	ret
445ae1:	8d 40 00             	lea    0x0(%eax),%eax
445ae4:	53                   	push   %ebx
445ae5:	56                   	push   %esi
445ae6:	8b da                	mov    %edx,%ebx
445ae8:	8b f0                	mov    %eax,%esi
445aea:	85 db                	test   %ebx,%ebx
445aec:	74 24                	je     0x445b12
445aee:	3b 5e 64             	cmp    0x64(%esi),%ebx
445af1:	74 1f                	je     0x445b12
445af3:	8b 43 14             	mov    0x14(%ebx),%eax
445af6:	0f b6 40 10          	movzbl 0x10(%eax),%eax
445afa:	3a 46 48             	cmp    0x48(%esi),%al
445afd:	75 13                	jne    0x445b12
445aff:	8b c3                	mov    %ebx,%eax
445b01:	e8 5e e2 ff ff       	call   0x443d64
445b06:	8b d0                	mov    %eax,%edx
445b08:	03 56 4c             	add    0x4c(%esi),%edx
445b0b:	8b c3                	mov    %ebx,%eax
445b0d:	e8 7a e2 ff ff       	call   0x443d8c
445b12:	5e                   	pop    %esi
445b13:	5b                   	pop    %ebx
445b14:	c3                   	ret
445b15:	8d 40 00             	lea    0x0(%eax),%eax
445b18:	53                   	push   %ebx
445b19:	56                   	push   %esi
445b1a:	57                   	push   %edi
445b1b:	83 c4 f8             	add    $0xfffffff8,%esp
445b1e:	8b f1                	mov    %ecx,%esi
445b20:	8d 3c 24             	lea    (%esp),%edi
445b23:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445b24:	a5                   	movsl  %ds:(%esi),%es:(%edi)
445b25:	8b d8                	mov    %eax,%ebx
445b27:	89 53 60             	mov    %edx,0x60(%ebx)
445b2a:	8b 43 14             	mov    0x14(%ebx),%eax
445b2d:	e8 7e bd ff ff       	call   0x4418b0
445b32:	8b d0                	mov    %eax,%edx
445b34:	a1 ec 14 47 00       	mov    0x4714ec,%eax
445b39:	e8 0a 0e 00 00       	call   0x446948
445b3e:	8b 43 14             	mov    0x14(%ebx),%eax
445b41:	e8 6a bd ff ff       	call   0x4418b0
445b46:	8b f0                	mov    %eax,%esi
445b48:	89 73 5c             	mov    %esi,0x5c(%ebx)
445b4b:	68 12 04 00 00       	push   $0x412
445b50:	6a 00                	push   $0x0
445b52:	56                   	push   %esi
445b53:	e8 68 13 fc ff       	call   0x406ec0
445b58:	89 43 58             	mov    %eax,0x58(%ebx)
445b5b:	8b 04 24             	mov    (%esp),%eax
445b5e:	89 43 50             	mov    %eax,0x50(%ebx)
445b61:	8b 44 24 04          	mov    0x4(%esp),%eax
445b65:	89 43 54             	mov    %eax,0x54(%ebx)
445b68:	8b c3                	mov    %ebx,%eax
445b6a:	e8 d1 00 00 00       	call   0x445c40
445b6f:	59                   	pop    %ecx
445b70:	5a                   	pop    %edx
445b71:	5f                   	pop    %edi
445b72:	5e                   	pop    %esi
445b73:	5b                   	pop    %ebx
445b74:	c3                   	ret
445b75:	8d 40 00             	lea    0x0(%eax),%eax
445b78:	53                   	push   %ebx
445b79:	8b d8                	mov    %eax,%ebx
445b7b:	33 d2                	xor    %edx,%edx
445b7d:	a1 ec 14 47 00       	mov    0x4714ec,%eax
445b82:	e8 c1 0d 00 00       	call   0x446948
445b87:	8b c3                	mov    %ebx,%eax
445b89:	e8 b2 00 00 00       	call   0x445c40
445b8e:	8b 43 58             	mov    0x58(%ebx),%eax
445b91:	50                   	push   %eax
445b92:	8b 43 5c             	mov    0x5c(%ebx),%eax
445b95:	50                   	push   %eax
445b96:	e8 8d 15 fc ff       	call   0x407128
445b9b:	8b 43 60             	mov    0x60(%ebx),%eax
445b9e:	8b 50 14             	mov    0x14(%eax),%edx
445ba1:	80 7a 10 01          	cmpb   $0x1,0x10(%edx)
445ba5:	75 14                	jne    0x445bbb
445ba7:	8b 53 0c             	mov    0xc(%ebx),%edx
445baa:	d1 fa                	sar    $1,%edx
445bac:	79 03                	jns    0x445bb1
445bae:	83 d2 00             	adc    $0x0,%edx
445bb1:	03 53 54             	add    0x54(%ebx),%edx
445bb4:	e8 d3 e1 ff ff       	call   0x443d8c
445bb9:	eb 12                	jmp    0x445bcd
445bbb:	8b 53 0c             	mov    0xc(%ebx),%edx
445bbe:	d1 fa                	sar    $1,%edx
445bc0:	79 03                	jns    0x445bc5
445bc2:	83 d2 00             	adc    $0x0,%edx
445bc5:	03 53 50             	add    0x50(%ebx),%edx
445bc8:	e8 bf e1 ff ff       	call   0x443d8c
445bcd:	8b 43 60             	mov    0x60(%ebx),%eax
445bd0:	8b 50 14             	mov    0x14(%eax),%edx
445bd3:	8b c3                	mov    %ebx,%eax
445bd5:	e8 c2 fe ff ff       	call   0x445a9c
445bda:	53                   	push   %ebx
445bdb:	68 1c 5c 44 00       	push   $0x445c1c
445be0:	8b 43 60             	mov    0x60(%ebx),%eax
445be3:	8b 50 14             	mov    0x14(%eax),%edx
445be6:	8b c3                	mov    %ebx,%eax
445be8:	e8 33 e5 ff ff       	call   0x444120
445bed:	33 c0                	xor    %eax,%eax
445bef:	89 43 60             	mov    %eax,0x60(%ebx)
445bf2:	5b                   	pop    %ebx
445bf3:	c3                   	ret
445bf4:	53                   	push   %ebx
445bf5:	8b d8                	mov    %eax,%ebx
445bf7:	83 7b 6c 00          	cmpl   $0x0,0x6c(%ebx)
445bfb:	75 1b                	jne    0x445c18
445bfd:	8b 43 14             	mov    0x14(%ebx),%eax
445c00:	e8 27 a6 ff ff       	call   0x44022c
445c05:	85 c0                	test   %eax,%eax
445c07:	7e 0f                	jle    0x445c18
445c09:	53                   	push   %ebx
445c0a:	68 1c 5c 44 00       	push   $0x445c1c
445c0f:	33 d2                	xor    %edx,%edx
445c11:	8b c3                	mov    %ebx,%eax
445c13:	e8 08 e5 ff ff       	call   0x444120
445c18:	5b                   	pop    %ebx
445c19:	c3                   	ret
445c1a:	8b c0                	mov    %eax,%eax
445c1c:	83 78 6c 00          	cmpl   $0x0,0x6c(%eax)
445c20:	75 07                	jne    0x445c29
445c22:	8b c2                	mov    %edx,%eax
445c24:	e8 bf df ff ff       	call   0x443be8
445c29:	c3                   	ret
445c2a:	8b c0                	mov    %eax,%eax
445c2c:	56                   	push   %esi
445c2d:	57                   	push   %edi
445c2e:	8b fa                	mov    %edx,%edi
445c30:	8b f0                	mov    %eax,%esi
445c32:	8b d7                	mov    %edi,%edx
445c34:	8b c6                	mov    %esi,%eax
445c36:	8b 08                	mov    (%eax),%ecx
445c38:	ff 51 3c             	call   *0x3c(%ecx)
445c3b:	5f                   	pop    %edi
445c3c:	5e                   	pop    %esi
445c3d:	c3                   	ret
445c3e:	8b c0                	mov    %eax,%eax
445c40:	53                   	push   %ebx
445c41:	56                   	push   %esi
445c42:	83 c4 f0             	add    $0xfffffff0,%esp
445c45:	8b d8                	mov    %eax,%ebx
445c47:	8b 73 60             	mov    0x60(%ebx),%esi
445c4a:	85 f6                	test   %esi,%esi
445c4c:	0f 84 d1 00 00 00    	je     0x445d23
445c52:	8b 46 14             	mov    0x14(%esi),%eax
445c55:	80 78 10 01          	cmpb   $0x1,0x10(%eax)
445c59:	75 43                	jne    0x445c9e
445c5b:	ba 02 00 00 00       	mov    $0x2,%edx
445c60:	8b c6                	mov    %esi,%eax
445c62:	e8 a5 dc ff ff       	call   0x44390c
445c67:	89 04 24             	mov    %eax,(%esp)
445c6a:	8b 43 0c             	mov    0xc(%ebx),%eax
445c6d:	d1 f8                	sar    $1,%eax
445c6f:	79 03                	jns    0x445c74
445c71:	83 d0 00             	adc    $0x0,%eax
445c74:	8b 53 54             	mov    0x54(%ebx),%edx
445c77:	2b d0                	sub    %eax,%edx
445c79:	89 54 24 04          	mov    %edx,0x4(%esp)
445c7d:	ba 02 00 00 00       	mov    $0x2,%edx
445c82:	8b 43 60             	mov    0x60(%ebx),%eax
445c85:	e8 06 dd ff ff       	call   0x443990
445c8a:	03 04 24             	add    (%esp),%eax
445c8d:	89 44 24 08          	mov    %eax,0x8(%esp)
445c91:	8b 44 24 04          	mov    0x4(%esp),%eax
445c95:	03 43 0c             	add    0xc(%ebx),%eax
445c98:	89 44 24 0c          	mov    %eax,0xc(%esp)