46d820:	8d 55 f0             	lea    -0x10(%ebp),%edx
46d823:	8b c3                	mov    %ebx,%eax
46d825:	e8 26 82 f9 ff       	call   0x405a50
46d82a:	74 0a                	je     0x46d836
46d82c:	c7 06 57 00 07 80    	movl   $0x80070057,(%esi)
46d832:	33 db                	xor    %ebx,%ebx
46d834:	eb 02                	jmp    0x46d838
46d836:	b3 01                	mov    $0x1,%bl
46d838:	33 c0                	xor    %eax,%eax
46d83a:	5a                   	pop    %edx
46d83b:	59                   	pop    %ecx
46d83c:	59                   	pop    %ecx
46d83d:	64 89 10             	mov    %edx,%fs:(%eax)
46d840:	68 55 d8 46 00       	push   $0x46d855
46d845:	8d 45 f0             	lea    -0x10(%ebp),%eax
46d848:	e8 1f 82 f9 ff       	call   0x405a6c
46d84d:	c3                   	ret
46d84e:	e9 b9 69 f9 ff       	jmp    0x40420c
46d853:	eb f0                	jmp    0x46d845
46d855:	8b c3                	mov    %ebx,%eax
46d857:	5e                   	pop    %esi
46d858:	5b                   	pop    %ebx
46d859:	8b e5                	mov    %ebp,%esp
46d85b:	5d                   	pop    %ebp
46d85c:	c3                   	ret
46d85d:	8d 40 00             	lea    0x0(%eax),%eax
46d860:	55                   	push   %ebp
46d861:	8b ec                	mov    %esp,%ebp
46d863:	53                   	push   %ebx
46d864:	8d 45 0c             	lea    0xc(%ebp),%eax
46d867:	e8 08 82 f9 ff       	call   0x405a74
46d86c:	33 c0                	xor    %eax,%eax
46d86e:	55                   	push   %ebp
46d86f:	68 95 d8 46 00       	push   $0x46d895
46d874:	64 ff 30             	push   %fs:(%eax)
46d877:	64 89 20             	mov    %esp,%fs:(%eax)
46d87a:	bb 01 00 00 00       	mov    $0x1,%ebx
46d87f:	33 c0                	xor    %eax,%eax
46d881:	5a                   	pop    %edx
46d882:	59                   	pop    %ecx
46d883:	59                   	pop    %ecx
46d884:	64 89 10             	mov    %edx,%fs:(%eax)
46d887:	68 9c d8 46 00       	push   $0x46d89c
46d88c:	8d 45 0c             	lea    0xc(%ebp),%eax
46d88f:	e8 d8 81 f9 ff       	call   0x405a6c
46d894:	c3                   	ret
46d895:	e9 72 69 f9 ff       	jmp    0x40420c
46d89a:	eb f0                	jmp    0x46d88c
46d89c:	8b c3                	mov    %ebx,%eax
46d89e:	5b                   	pop    %ebx
46d89f:	5d                   	pop    %ebp
46d8a0:	c2 14 00             	ret    $0x14
46d8a3:	90                   	nop
46d8a4:	55                   	push   %ebp
46d8a5:	8b ec                	mov    %esp,%ebp
46d8a7:	83 c4 d8             	add    $0xffffffd8,%esp
46d8aa:	53                   	push   %ebx
46d8ab:	56                   	push   %esi
46d8ac:	57                   	push   %edi
46d8ad:	33 c0                	xor    %eax,%eax
46d8af:	89 45 d8             	mov    %eax,-0x28(%ebp)
46d8b2:	89 45 f4             	mov    %eax,-0xc(%ebp)
46d8b5:	8b 5d 08             	mov    0x8(%ebp),%ebx
46d8b8:	8b 45 14             	mov    0x14(%ebp),%eax
46d8bb:	8b 55 14             	mov    0x14(%ebp),%edx
46d8be:	85 d2                	test   %edx,%edx
46d8c0:	74 0d                	je     0x46d8cf
46d8c2:	33 c9                	xor    %ecx,%ecx
46d8c4:	89 4a 0c             	mov    %ecx,0xc(%edx)
46d8c7:	89 4a 08             	mov    %ecx,0x8(%edx)
46d8ca:	89 4a 04             	mov    %ecx,0x4(%edx)
46d8cd:	89 0a                	mov    %ecx,(%edx)
46d8cf:	33 c0                	xor    %eax,%eax
46d8d1:	55                   	push   %ebp
46d8d2:	68 15 da 46 00       	push   $0x46da15
46d8d7:	64 ff 30             	push   %fs:(%eax)
46d8da:	64 89 20             	mov    %esp,%fs:(%eax)
46d8dd:	33 d2                	xor    %edx,%edx
46d8df:	55                   	push   %ebp
46d8e0:	68 e8 d9 46 00       	push   $0x46d9e8
46d8e5:	64 ff 32             	push   %fs:(%edx)
46d8e8:	64 89 22             	mov    %esp,%fs:(%edx)
46d8eb:	8b 43 1c             	mov    0x1c(%ebx),%eax
46d8ee:	85 c0                	test   %eax,%eax
46d8f0:	75 12                	jne    0x46d904
46d8f2:	bb 05 40 00 80       	mov    $0x80004005,%ebx
46d8f7:	33 c0                	xor    %eax,%eax
46d8f9:	5a                   	pop    %edx
46d8fa:	59                   	pop    %ecx
46d8fb:	59                   	pop    %ecx
46d8fc:	64 89 10             	mov    %edx,%fs:(%eax)
46d8ff:	e9 f3 00 00 00       	jmp    0x46d9f7
46d904:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
46d90a:	e8 45 16 fe ff       	call   0x44ef54
46d90f:	8b f0                	mov    %eax,%esi
46d911:	8d 45 e4             	lea    -0x1c(%ebp),%eax
46d914:	50                   	push   %eax
46d915:	56                   	push   %esi
46d916:	e8 3d a2 f9 ff       	call   0x407b58
46d91b:	8b 45 0c             	mov    0xc(%ebp),%eax
46d91e:	89 45 f8             	mov    %eax,-0x8(%ebp)
46d921:	8b 45 10             	mov    0x10(%ebp),%eax
46d924:	89 45 fc             	mov    %eax,-0x4(%ebp)
46d927:	ff 75 fc             	push   -0x4(%ebp)
46d92a:	ff 75 f8             	push   -0x8(%ebp)
46d92d:	8d 45 e4             	lea    -0x1c(%ebp),%eax
46d930:	50                   	push   %eax
46d931:	e8 6a a3 f9 ff       	call   0x407ca0
46d936:	85 c0                	test   %eax,%eax
46d938:	0f 84 9b 00 00 00    	je     0x46d9d9
46d93e:	8d 4d dc             	lea    -0x24(%ebp),%ecx
46d941:	8d 55 f8             	lea    -0x8(%ebp),%edx
46d944:	8b 43 1c             	mov    0x1c(%ebx),%eax
46d947:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
46d94d:	e8 be a9 fd ff       	call   0x448310
46d952:	8b 45 dc             	mov    -0x24(%ebp),%eax
46d955:	89 45 f8             	mov    %eax,-0x8(%ebp)
46d958:	8b 45 e0             	mov    -0x20(%ebp),%eax
46d95b:	89 45 fc             	mov    %eax,-0x4(%ebp)
46d95e:	6a 01                	push   $0x1
46d960:	ff 75 fc             	push   -0x4(%ebp)
46d963:	ff 75 f8             	push   -0x8(%ebp)
46d966:	56                   	push   %esi
46d967:	e8 ec 9e f9 ff       	call   0x407858
46d96c:	8b f8                	mov    %eax,%edi
46d96e:	85 ff                	test   %edi,%edi
46d970:	74 2f                	je     0x46d9a1
46d972:	3b f7                	cmp    %edi,%esi
46d974:	74 2b                	je     0x46d9a1
46d976:	8d 45 f4             	lea    -0xc(%ebp),%eax
46d979:	e8 b6 8e f9 ff       	call   0x406834
46d97e:	8b d0                	mov    %eax,%edx
46d980:	8b c7                	mov    %edi,%eax
46d982:	e8 99 fb ff ff       	call   0x46d520
46d987:	84 c0                	test   %al,%al
46d989:	74 0f                	je     0x46d99a
46d98b:	8b 45 14             	mov    0x14(%ebp),%eax
46d98e:	8b 55 f4             	mov    -0xc(%ebp),%edx
46d991:	e8 96 80 f9 ff       	call   0x405a2c
46d996:	33 db                	xor    %ebx,%ebx
46d998:	eb 44                	jmp    0x46d9de
46d99a:	bb ff ff 00 80       	mov    $0x8000ffff,%ebx
46d99f:	eb 3d                	jmp    0x46d9de
46d9a1:	8d 55 f8             	lea    -0x8(%ebp),%edx
46d9a4:	8b 43 1c             	mov    0x1c(%ebx),%eax
46d9a7:	e8 14 7c 00 00       	call   0x4755c0
46d9ac:	8b d8                	mov    %eax,%ebx
46d9ae:	85 db                	test   %ebx,%ebx
46d9b0:	74 17                	je     0x46d9c9
46d9b2:	8d 55 d8             	lea    -0x28(%ebp),%edx
46d9b5:	8b c3                	mov    %ebx,%eax
46d9b7:	e8 b4 57 00 00       	call   0x473170
46d9bc:	8b 55 d8             	mov    -0x28(%ebp),%edx
46d9bf:	8b 45 14             	mov    0x14(%ebp),%eax
46d9c2:	e8 65 80 f9 ff       	call   0x405a2c
46d9c7:	eb 0c                	jmp    0x46d9d5
46d9c9:	8b 45 14             	mov    0x14(%ebp),%eax
46d9cc:	33 d2                	xor    %edx,%edx
46d9ce:	b1 01                	mov    $0x1,%cl
46d9d0:	e8 67 80 f9 ff       	call   0x405a3c
46d9d5:	33 db                	xor    %ebx,%ebx
46d9d7:	eb 05                	jmp    0x46d9de
46d9d9:	bb 01 00 00 00       	mov    $0x1,%ebx
46d9de:	33 c0                	xor    %eax,%eax
46d9e0:	5a                   	pop    %edx
46d9e1:	59                   	pop    %ecx
46d9e2:	59                   	pop    %ecx
46d9e3:	64 89 10             	mov    %edx,%fs:(%eax)
46d9e6:	eb 0f                	jmp    0x46d9f7
46d9e8:	e9 6b 65 f9 ff       	jmp    0x403f58
46d9ed:	bb ff ff 00 80       	mov    $0x8000ffff,%ebx
46d9f2:	e8 c9 68 f9 ff       	call   0x4042c0
46d9f7:	33 c0                	xor    %eax,%eax
46d9f9:	5a                   	pop    %edx
46d9fa:	59                   	pop    %ecx
46d9fb:	59                   	pop    %ecx
46d9fc:	64 89 10             	mov    %edx,%fs:(%eax)
46d9ff:	68 1c da 46 00       	push   $0x46da1c
46da04:	8d 45 d8             	lea    -0x28(%ebp),%eax
46da07:	e8 28 8e f9 ff       	call   0x406834
46da0c:	8d 45 f4             	lea    -0xc(%ebp),%eax
46da0f:	e8 20 8e f9 ff       	call   0x406834
46da14:	c3                   	ret
46da15:	e9 f2 67 f9 ff       	jmp    0x40420c
46da1a:	eb e8                	jmp    0x46da04
46da1c:	8b c3                	mov    %ebx,%eax
46da1e:	5f                   	pop    %edi
46da1f:	5e                   	pop    %esi
46da20:	5b                   	pop    %ebx
46da21:	8b e5                	mov    %ebp,%esp
46da23:	5d                   	pop    %ebp
46da24:	c2 10 00             	ret    $0x10
46da27:	90                   	nop
46da28:	55                   	push   %ebp
46da29:	8b ec                	mov    %esp,%ebp
46da2b:	83 c4 ec             	add    $0xffffffec,%esp
46da2e:	53                   	push   %ebx
46da2f:	56                   	push   %esi
46da30:	57                   	push   %edi
46da31:	8b 5d 08             	mov    0x8(%ebp),%ebx
46da34:	8d 45 1c             	lea    0x1c(%ebp),%eax
46da37:	e8 38 80 f9 ff       	call   0x405a74
46da3c:	33 c0                	xor    %eax,%eax
46da3e:	55                   	push   %ebp
46da3f:	68 e5 da 46 00       	push   $0x46dae5
46da44:	64 ff 30             	push   %fs:(%eax)
46da47:	64 89 20             	mov    %esp,%fs:(%eax)
46da4a:	33 c9                	xor    %ecx,%ecx
46da4c:	55                   	push   %ebp
46da4d:	68 be da 46 00       	push   $0x46dabe
46da52:	64 ff 31             	push   %fs:(%ecx)
46da55:	64 89 21             	mov    %esp,%fs:(%ecx)
46da58:	8d 4d fc             	lea    -0x4(%ebp),%ecx
46da5b:	8d 55 1c             	lea    0x1c(%ebp),%edx
46da5e:	8b c3                	mov    %ebx,%eax
46da60:	e8 73 fd ff ff       	call   0x46d7d8
46da65:	84 c0                	test   %al,%al
46da67:	75 0a                	jne    0x46da73
46da69:	33 c0                	xor    %eax,%eax
46da6b:	5a                   	pop    %edx
46da6c:	59                   	pop    %ecx
46da6d:	59                   	pop    %ecx
46da6e:	64 89 10             	mov    %edx,%fs:(%eax)
46da71:	eb 5c                	jmp    0x46dacf
46da73:	8d 45 ec             	lea    -0x14(%ebp),%eax
46da76:	50                   	push   %eax
46da77:	8b 43 1c             	mov    0x1c(%ebx),%eax
46da7a:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
46da80:	e8 cf 14 fe ff       	call   0x44ef54
46da85:	50                   	push   %eax
46da86:	e8 cd a0 f9 ff       	call   0x407b58
46da8b:	8b 55 0c             	mov    0xc(%ebp),%edx
46da8e:	8b 45 ec             	mov    -0x14(%ebp),%eax
46da91:	89 02                	mov    %eax,(%edx)
46da93:	8b 4d 10             	mov    0x10(%ebp),%ecx
46da96:	8b 55 f0             	mov    -0x10(%ebp),%edx
46da99:	89 11                	mov    %edx,(%ecx)
46da9b:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46da9e:	2b c8                	sub    %eax,%ecx
46daa0:	8b 45 14             	mov    0x14(%ebp),%eax
46daa3:	89 08                	mov    %ecx,(%eax)
46daa5:	8b 45 f8             	mov    -0x8(%ebp),%eax
46daa8:	2b c2                	sub    %edx,%eax
46daaa:	8b 55 18             	mov    0x18(%ebp),%edx
46daad:	89 02                	mov    %eax,(%edx)
46daaf:	33 c0                	xor    %eax,%eax
46dab1:	89 45 fc             	mov    %eax,-0x4(%ebp)
46dab4:	33 c0                	xor    %eax,%eax
46dab6:	5a                   	pop    %edx
46dab7:	59                   	pop    %ecx
46dab8:	59                   	pop    %ecx
46dab9:	64 89 10             	mov    %edx,%fs:(%eax)
46dabc:	eb 11                	jmp    0x46dacf
46dabe:	e9 95 64 f9 ff       	jmp    0x403f58
46dac3:	c7 45 fc ff ff 00 80 	movl   $0x8000ffff,-0x4(%ebp)
46daca:	e8 f1 67 f9 ff       	call   0x4042c0
46dacf:	33 c0                	xor    %eax,%eax
46dad1:	5a                   	pop    %edx
46dad2:	59                   	pop    %ecx
46dad3:	59                   	pop    %ecx
46dad4:	64 89 10             	mov    %edx,%fs:(%eax)
46dad7:	68 ec da 46 00       	push   $0x46daec
46dadc:	8d 45 1c             	lea    0x1c(%ebp),%eax
46dadf:	e8 88 7f f9 ff       	call   0x405a6c
46dae4:	c3                   	ret
46dae5:	e9 22 67 f9 ff       	jmp    0x40420c
46daea:	eb f0                	jmp    0x46dadc
46daec:	8b 45 fc             	mov    -0x4(%ebp),%eax
46daef:	5f                   	pop    %edi
46daf0:	5e                   	pop    %esi
46daf1:	5b                   	pop    %ebx
46daf2:	8b e5                	mov    %ebp,%esp
46daf4:	5d                   	pop    %ebp
46daf5:	c2 24 00             	ret    $0x24
46daf8:	55                   	push   %ebp
46daf9:	8b ec                	mov    %esp,%ebp
46dafb:	6a 00                	push   $0x0
46dafd:	6a 00                	push   $0x0
46daff:	6a 00                	push   $0x0
46db01:	53                   	push   %ebx
46db02:	56                   	push   %esi
46db03:	57                   	push   %edi
46db04:	8b 75 08             	mov    0x8(%ebp),%esi
46db07:	8d 45 10             	lea    0x10(%ebp),%eax
46db0a:	e8 65 7f f9 ff       	call   0x405a74
46db0f:	8b 45 20             	mov    0x20(%ebp),%eax
46db12:	8b 55 20             	mov    0x20(%ebp),%edx
46db15:	85 d2                	test   %edx,%edx
46db17:	74 0d                	je     0x46db26
46db19:	33 c9                	xor    %ecx,%ecx
46db1b:	89 4a 0c             	mov    %ecx,0xc(%edx)
46db1e:	89 4a 08             	mov    %ecx,0x8(%edx)
46db21:	89 4a 04             	mov    %ecx,0x4(%edx)
46db24:	89 0a                	mov    %ecx,(%edx)
46db26:	33 c0                	xor    %eax,%eax
46db28:	55                   	push   %ebp
46db29:	68 61 dc 46 00       	push   $0x46dc61
46db2e:	64 ff 30             	push   %fs:(%eax)
46db31:	64 89 20             	mov    %esp,%fs:(%eax)
46db34:	33 c0                	xor    %eax,%eax
46db36:	55                   	push   %ebp
46db37:	68 27 dc 46 00       	push   $0x46dc27
46db3c:	64 ff 30             	push   %fs:(%eax)
46db3f:	64 89 20             	mov    %esp,%fs:(%eax)
46db42:	8d 4d fc             	lea    -0x4(%ebp),%ecx
46db45:	8d 55 10             	lea    0x10(%ebp),%edx
46db48:	8b c6                	mov    %esi,%eax
46db4a:	e8 89 fc ff ff       	call   0x46d7d8
46db4f:	84 c0                	test   %al,%al
46db51:	75 0d                	jne    0x46db60
46db53:	33 c0                	xor    %eax,%eax
46db55:	5a                   	pop    %edx
46db56:	59                   	pop    %ecx
46db57:	59                   	pop    %ecx
46db58:	64 89 10             	mov    %edx,%fs:(%eax)
46db5b:	e9 d8 00 00 00       	jmp    0x46dc38
46db60:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
46db67:	8b 45 0c             	mov    0xc(%ebp),%eax
46db6a:	83 e8 07             	sub    $0x7,%eax
46db6d:	74 08                	je     0x46db77
46db6f:	48                   	dec    %eax
46db70:	74 5b                	je     0x46dbcd
46db72:	e9 a6 00 00 00       	jmp    0x46dc1d
46db77:	8b 46 1c             	mov    0x1c(%esi),%eax
46db7a:	8b b8 c0 00 00 00    	mov    0xc0(%eax),%edi
46db80:	4f                   	dec    %edi
46db81:	85 ff                	test   %edi,%edi
46db83:	0f 8c 94 00 00 00    	jl     0x46dc1d
46db89:	47                   	inc    %edi
46db8a:	33 db                	xor    %ebx,%ebx
46db8c:	8b 46 1c             	mov    0x1c(%esi),%eax
46db8f:	8b 80 c4 00 00 00    	mov    0xc4(%eax),%eax
46db95:	8b 04 98             	mov    (%eax,%ebx,4),%eax
46db98:	e8 83 56 00 00       	call   0x473220
46db9d:	84 c0                	test   %al,%al
46db9f:	74 26                	je     0x46dbc7
46dba1:	8b 46 1c             	mov    0x1c(%esi),%eax
46dba4:	8b 80 c4 00 00 00    	mov    0xc4(%eax),%eax
46dbaa:	8b 04 98             	mov    (%eax,%ebx,4),%eax
46dbad:	8d 55 f8             	lea    -0x8(%ebp),%edx
46dbb0:	e8 bb 55 00 00       	call   0x473170
46dbb5:	8b 55 f8             	mov    -0x8(%ebp),%edx
46dbb8:	8b 45 20             	mov    0x20(%ebp),%eax
46dbbb:	e8 6c 7e f9 ff       	call   0x405a2c
46dbc0:	33 c0                	xor    %eax,%eax
46dbc2:	89 45 fc             	mov    %eax,-0x4(%ebp)
46dbc5:	eb 56                	jmp    0x46dc1d
46dbc7:	43                   	inc    %ebx
46dbc8:	4f                   	dec    %edi
46dbc9:	75 c1                	jne    0x46db8c