44a83c:	66 be d1 ff          	mov    $0xffd1,%si
44a840:	e8 d3 92 fb ff       	call   0x403b18
44a845:	5e                   	pop    %esi
44a846:	5d                   	pop    %ebp
44a847:	c2 04 00             	ret    $0x4
44a84a:	8b c0                	mov    %eax,%eax
44a84c:	55                   	push   %ebp
44a84d:	8b ec                	mov    %esp,%ebp
44a84f:	53                   	push   %ebx
44a850:	66 83 b8 fa 00 00 00 	cmpw   $0x0,0xfa(%eax)
44a857:	00
44a858:	74 17                	je     0x44a871
44a85a:	51                   	push   %ecx
44a85b:	8b 4d 08             	mov    0x8(%ebp),%ecx
44a85e:	51                   	push   %ecx
44a85f:	8b d8                	mov    %eax,%ebx
44a861:	8b ca                	mov    %edx,%ecx
44a863:	8b d0                	mov    %eax,%edx
44a865:	8b 83 fc 00 00 00    	mov    0xfc(%ebx),%eax
44a86b:	ff 93 f8 00 00 00    	call   *0xf8(%ebx)
44a871:	5b                   	pop    %ebx
44a872:	5d                   	pop    %ebp
44a873:	c2 04 00             	ret    $0x4
44a876:	8b c0                	mov    %eax,%eax
44a878:	53                   	push   %ebx
44a879:	66 83 b8 f2 00 00 00 	cmpw   $0x0,0xf2(%eax)
44a880:	00
44a881:	74 12                	je     0x44a895
44a883:	8b ca                	mov    %edx,%ecx
44a885:	8b d8                	mov    %eax,%ebx
44a887:	8b d0                	mov    %eax,%edx
44a889:	8b 83 f4 00 00 00    	mov    0xf4(%ebx),%eax
44a88f:	ff 93 f0 00 00 00    	call   *0xf0(%ebx)
44a895:	5b                   	pop    %ebx
44a896:	c3                   	ret
44a897:	90                   	nop
44a898:	53                   	push   %ebx
44a899:	56                   	push   %esi
44a89a:	57                   	push   %edi
44a89b:	55                   	push   %ebp
44a89c:	8b da                	mov    %edx,%ebx
44a89e:	8b e8                	mov    %eax,%ebp
44a8a0:	8b 7b 08             	mov    0x8(%ebx),%edi
44a8a3:	8b 07                	mov    (%edi),%eax
44a8a5:	50                   	push   %eax
44a8a6:	8b 47 04             	mov    0x4(%edi),%eax
44a8a9:	50                   	push   %eax
44a8aa:	8b 47 08             	mov    0x8(%edi),%eax
44a8ad:	50                   	push   %eax
44a8ae:	0f b6 4f 0d          	movzbl 0xd(%edi),%ecx
44a8b2:	0f b6 57 0c          	movzbl 0xc(%edi),%edx
44a8b6:	8b c5                	mov    %ebp,%eax
44a8b8:	66 be d5 ff          	mov    $0xffd5,%si
44a8bc:	e8 57 92 fb ff       	call   0x403b18
44a8c1:	83 e0 7f             	and    $0x7f,%eax
44a8c4:	89 43 0c             	mov    %eax,0xc(%ebx)
44a8c7:	5d                   	pop    %ebp
44a8c8:	5f                   	pop    %edi
44a8c9:	5e                   	pop    %esi
44a8ca:	5b                   	pop    %ebx
44a8cb:	c3                   	ret
44a8cc:	55                   	push   %ebp
44a8cd:	8b ec                	mov    %esp,%ebp
44a8cf:	83 c4 f4             	add    $0xfffffff4,%esp
44a8d2:	53                   	push   %ebx
44a8d3:	56                   	push   %esi
44a8d4:	57                   	push   %edi
44a8d5:	8b 75 08             	mov    0x8(%ebp),%esi
44a8d8:	8d 7d f7             	lea    -0x9(%ebp),%edi
44a8db:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44a8dc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44a8dd:	8b d9                	mov    %ecx,%ebx
44a8df:	88 55 ff             	mov    %dl,-0x1(%ebp)
44a8e2:	8b f8                	mov    %eax,%edi
44a8e4:	c6 45 f6 00          	movb   $0x0,-0xa(%ebp)
44a8e8:	66 83 bf 42 01 00 00 	cmpw   $0x0,0x142(%edi)
44a8ef:	00
44a8f0:	74 1b                	je     0x44a90d
44a8f2:	53                   	push   %ebx
44a8f3:	8d 45 f7             	lea    -0x9(%ebp),%eax
44a8f6:	50                   	push   %eax
44a8f7:	8d 45 f6             	lea    -0xa(%ebp),%eax
44a8fa:	50                   	push   %eax
44a8fb:	0f b6 4d ff          	movzbl -0x1(%ebp),%ecx
44a8ff:	8b d7                	mov    %edi,%edx
44a901:	8b 87 44 01 00 00    	mov    0x144(%edi),%eax
44a907:	ff 97 40 01 00 00    	call   *0x140(%edi)
44a90d:	80 7d f6 00          	cmpb   $0x0,-0xa(%ebp)
44a911:	75 7d                	jne    0x44a990
44a913:	01 9f 98 00 00 00    	add    %ebx,0x98(%edi)
44a919:	eb 65                	jmp    0x44a980
44a91b:	83 bf 98 00 00 00 00 	cmpl   $0x0,0x98(%edi)
44a922:	0f 9c c3             	setl   %bl
44a925:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
44a92b:	99                   	cltd
44a92c:	33 c2                	xor    %edx,%eax
44a92e:	2b c2                	sub    %edx,%eax
44a930:	83 e8 78             	sub    $0x78,%eax
44a933:	89 87 98 00 00 00    	mov    %eax,0x98(%edi)
44a939:	84 db                	test   %bl,%bl
44a93b:	74 2e                	je     0x44a96b
44a93d:	83 bf 98 00 00 00 00 	cmpl   $0x0,0x98(%edi)
44a944:	74 0e                	je     0x44a954
44a946:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
44a94c:	f7 d8                	neg    %eax
44a94e:	89 87 98 00 00 00    	mov    %eax,0x98(%edi)
44a954:	8d 4d f7             	lea    -0x9(%ebp),%ecx
44a957:	0f b6 55 ff          	movzbl -0x1(%ebp),%edx
44a95b:	8b c7                	mov    %edi,%eax
44a95d:	66 be e1 ff          	mov    $0xffe1,%si
44a961:	e8 b2 91 fb ff       	call   0x403b18
44a966:	88 45 f6             	mov    %al,-0xa(%ebp)
44a969:	eb 15                	jmp    0x44a980
44a96b:	8d 4d f7             	lea    -0x9(%ebp),%ecx
44a96e:	0f b6 55 ff          	movzbl -0x1(%ebp),%edx
44a972:	8b c7                	mov    %edi,%eax
44a974:	66 be e0 ff          	mov    $0xffe0,%si
44a978:	e8 9b 91 fb ff       	call   0x403b18
44a97d:	88 45 f6             	mov    %al,-0xa(%ebp)
44a980:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
44a986:	99                   	cltd
44a987:	33 c2                	xor    %edx,%eax
44a989:	2b c2                	sub    %edx,%eax
44a98b:	83 f8 78             	cmp    $0x78,%eax
44a98e:	7d 8b                	jge    0x44a91b
44a990:	0f b6 45 f6          	movzbl -0xa(%ebp),%eax
44a994:	5f                   	pop    %edi
44a995:	5e                   	pop    %esi
44a996:	5b                   	pop    %ebx
44a997:	8b e5                	mov    %ebp,%esp
44a999:	5d                   	pop    %ebp
44a99a:	c2 04 00             	ret    $0x4
44a99d:	8d 40 00             	lea    0x0(%eax),%eax
44a9a0:	53                   	push   %ebx
44a9a1:	56                   	push   %esi
44a9a2:	57                   	push   %edi
44a9a3:	83 c4 f4             	add    $0xfffffff4,%esp
44a9a6:	8b f1                	mov    %ecx,%esi
44a9a8:	8d 7c 24 01          	lea    0x1(%esp),%edi
44a9ac:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44a9ad:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44a9ae:	88 14 24             	mov    %dl,(%esp)
44a9b1:	c6 44 24 09 00       	movb   $0x0,0x9(%esp)
44a9b6:	66 83 b8 4a 01 00 00 	cmpw   $0x0,0x14a(%eax)
44a9bd:	00
44a9be:	74 1f                	je     0x44a9df
44a9c0:	8d 54 24 01          	lea    0x1(%esp),%edx
44a9c4:	52                   	push   %edx
44a9c5:	8d 54 24 0d          	lea    0xd(%esp),%edx
44a9c9:	52                   	push   %edx
44a9ca:	8b d8                	mov    %eax,%ebx
44a9cc:	0f b6 4c 24 08       	movzbl 0x8(%esp),%ecx
44a9d1:	8b d0                	mov    %eax,%edx
44a9d3:	8b 83 4c 01 00 00    	mov    0x14c(%ebx),%eax
44a9d9:	ff 93 48 01 00 00    	call   *0x148(%ebx)
44a9df:	0f b6 44 24 09       	movzbl 0x9(%esp),%eax
44a9e4:	83 c4 0c             	add    $0xc,%esp
44a9e7:	5f                   	pop    %edi
44a9e8:	5e                   	pop    %esi
44a9e9:	5b                   	pop    %ebx
44a9ea:	c3                   	ret
44a9eb:	90                   	nop
44a9ec:	53                   	push   %ebx
44a9ed:	56                   	push   %esi
44a9ee:	57                   	push   %edi
44a9ef:	83 c4 f4             	add    $0xfffffff4,%esp
44a9f2:	8b f1                	mov    %ecx,%esi
44a9f4:	8d 7c 24 01          	lea    0x1(%esp),%edi
44a9f8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44a9f9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44a9fa:	88 14 24             	mov    %dl,(%esp)
44a9fd:	c6 44 24 09 00       	movb   $0x0,0x9(%esp)
44aa02:	66 83 b8 52 01 00 00 	cmpw   $0x0,0x152(%eax)
44aa09:	00
44aa0a:	74 1f                	je     0x44aa2b
44aa0c:	8d 54 24 01          	lea    0x1(%esp),%edx
44aa10:	52                   	push   %edx
44aa11:	8d 54 24 0d          	lea    0xd(%esp),%edx
44aa15:	52                   	push   %edx
44aa16:	8b d8                	mov    %eax,%ebx
44aa18:	0f b6 4c 24 08       	movzbl 0x8(%esp),%ecx
44aa1d:	8b d0                	mov    %eax,%edx
44aa1f:	8b 83 54 01 00 00    	mov    0x154(%ebx),%eax
44aa25:	ff 93 50 01 00 00    	call   *0x150(%ebx)
44aa2b:	0f b6 44 24 09       	movzbl 0x9(%esp),%eax
44aa30:	83 c4 0c             	add    $0xc,%esp
44aa33:	5f                   	pop    %edi
44aa34:	5e                   	pop    %esi
44aa35:	5b                   	pop    %ebx
44aa36:	c3                   	ret
44aa37:	90                   	nop
44aa38:	55                   	push   %ebp
44aa39:	8b ec                	mov    %esp,%ebp
44aa3b:	83 c4 e0             	add    $0xffffffe0,%esp
44aa3e:	53                   	push   %ebx
44aa3f:	56                   	push   %esi
44aa40:	57                   	push   %edi
44aa41:	88 4d ff             	mov    %cl,-0x1(%ebp)
44aa44:	8b f2                	mov    %edx,%esi
44aa46:	8b c6                	mov    %esi,%eax
44aa48:	8b 10                	mov    (%eax),%edx
44aa4a:	ff 52 38             	call   *0x38(%edx)
44aa4d:	8b d8                	mov    %eax,%ebx
44aa4f:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
44aa53:	74 0e                	je     0x44aa63
44aa55:	56                   	push   %esi
44aa56:	83 c6 64             	add    $0x64,%esi
44aa59:	8d 7d e0             	lea    -0x20(%ebp),%edi
44aa5c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44aa5d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44aa5e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44aa5f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44aa60:	5e                   	pop    %esi
44aa61:	eb 0c                	jmp    0x44aa6f
44aa63:	56                   	push   %esi
44aa64:	83 c6 4c             	add    $0x4c,%esi
44aa67:	8d 7d e0             	lea    -0x20(%ebp),%edi
44aa6a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44aa6b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44aa6c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44aa6d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44aa6e:	5e                   	pop    %esi
44aa6f:	e8 1c c5 fb ff       	call   0x406f90
44aa74:	89 45 f8             	mov    %eax,-0x8(%ebp)
44aa77:	68 02 04 00 00       	push   $0x402
44aa7c:	6a 00                	push   $0x0
44aa7e:	8b 45 f8             	mov    -0x8(%ebp),%eax
44aa81:	50                   	push   %eax
44aa82:	e8 01 c5 fb ff       	call   0x406f88
44aa87:	89 45 f4             	mov    %eax,-0xc(%ebp)
44aa8a:	33 c0                	xor    %eax,%eax
44aa8c:	55                   	push   %ebp
44aa8d:	68 53 ab 44 00       	push   $0x44ab53
44aa92:	64 ff 30             	push   %fs:(%eax)
44aa95:	64 89 20             	mov    %esp,%fs:(%eax)
44aa98:	8b 46 48             	mov    0x48(%esi),%eax
44aa9b:	e8 84 9e fd ff       	call   0x424924
44aaa0:	50                   	push   %eax
44aaa1:	8b 45 f4             	mov    -0xc(%ebp),%eax
44aaa4:	50                   	push   %eax
44aaa5:	e8 9e c2 fb ff       	call   0x406d48
44aaaa:	89 45 f0             	mov    %eax,-0x10(%ebp)
44aaad:	68 49 00 5a 00       	push   $0x5a0049
44aab2:	53                   	push   %ebx
44aab3:	8b 45 e8             	mov    -0x18(%ebp),%eax
44aab6:	8b 75 e0             	mov    -0x20(%ebp),%esi
44aab9:	2b c6                	sub    %esi,%eax
44aabb:	2b c3                	sub    %ebx,%eax
44aabd:	50                   	push   %eax
44aabe:	8b 7d e4             	mov    -0x1c(%ebp),%edi
44aac1:	57                   	push   %edi
44aac2:	8b c6                	mov    %esi,%eax
44aac4:	03 c3                	add    %ebx,%eax
44aac6:	50                   	push   %eax
44aac7:	8b 45 f4             	mov    -0xc(%ebp),%eax
44aaca:	50                   	push   %eax
44aacb:	e8 38 c2 fb ff       	call   0x406d08
44aad0:	68 49 00 5a 00       	push   $0x5a0049
44aad5:	8b 45 ec             	mov    -0x14(%ebp),%eax
44aad8:	2b c7                	sub    %edi,%eax
44aada:	2b c3                	sub    %ebx,%eax
44aadc:	50                   	push   %eax
44aadd:	53                   	push   %ebx
44aade:	8b c7                	mov    %edi,%eax
44aae0:	03 c3                	add    %ebx,%eax
44aae2:	50                   	push   %eax
44aae3:	8b 45 e8             	mov    -0x18(%ebp),%eax
44aae6:	2b c3                	sub    %ebx,%eax
44aae8:	50                   	push   %eax
44aae9:	8b 45 f4             	mov    -0xc(%ebp),%eax
44aaec:	50                   	push   %eax
44aaed:	e8 16 c2 fb ff       	call   0x406d08
44aaf2:	68 49 00 5a 00       	push   $0x5a0049
44aaf7:	53                   	push   %ebx
44aaf8:	8b 45 e8             	mov    -0x18(%ebp),%eax
44aafb:	2b 45 e0             	sub    -0x20(%ebp),%eax
44aafe:	2b c3                	sub    %ebx,%eax
44ab00:	50                   	push   %eax
44ab01:	8b 45 ec             	mov    -0x14(%ebp),%eax
44ab04:	2b c3                	sub    %ebx,%eax
44ab06:	50                   	push   %eax
44ab07:	56                   	push   %esi
44ab08:	8b 45 f4             	mov    -0xc(%ebp),%eax
44ab0b:	50                   	push   %eax
44ab0c:	e8 f7 c1 fb ff       	call   0x406d08
44ab11:	68 49 00 5a 00       	push   $0x5a0049
44ab16:	8b 45 ec             	mov    -0x14(%ebp),%eax
44ab19:	2b 45 e4             	sub    -0x1c(%ebp),%eax
44ab1c:	2b c3                	sub    %ebx,%eax
44ab1e:	50                   	push   %eax
44ab1f:	53                   	push   %ebx
44ab20:	57                   	push   %edi
44ab21:	56                   	push   %esi
44ab22:	8b 45 f4             	mov    -0xc(%ebp),%eax
44ab25:	50                   	push   %eax
44ab26:	e8 dd c1 fb ff       	call   0x406d08
44ab2b:	8b 45 f0             	mov    -0x10(%ebp),%eax
44ab2e:	50                   	push   %eax
44ab2f:	8b 45 f4             	mov    -0xc(%ebp),%eax
44ab32:	50                   	push   %eax
44ab33:	e8 10 c2 fb ff       	call   0x406d48
44ab38:	33 c0                	xor    %eax,%eax
44ab3a:	5a                   	pop    %edx
44ab3b:	59                   	pop    %ecx
44ab3c:	59                   	pop    %ecx
44ab3d:	64 89 10             	mov    %edx,%fs:(%eax)
44ab40:	68 5a ab 44 00       	push   $0x44ab5a
44ab45:	8b 45 f4             	mov    -0xc(%ebp),%eax
44ab48:	50                   	push   %eax
44ab49:	8b 45 f8             	mov    -0x8(%ebp),%eax
44ab4c:	50                   	push   %eax
44ab4d:	e8 b6 c6 fb ff       	call   0x407208
44ab52:	c3                   	ret
44ab53:	e9 58 95 fb ff       	jmp    0x4040b0
44ab58:	eb eb                	jmp    0x44ab45
44ab5a:	5f                   	pop    %edi
44ab5b:	5e                   	pop    %esi
44ab5c:	5b                   	pop    %ebx
44ab5d:	8b e5                	mov    %ebp,%esp
44ab5f:	5d                   	pop    %ebp
44ab60:	c3                   	ret
44ab61:	8d 40 00             	lea    0x0(%eax),%eax
44ab64:	56                   	push   %esi
44ab65:	33 c9                	xor    %ecx,%ecx
44ab67:	66 be e8 ff          	mov    $0xffe8,%si
44ab6b:	e8 a8 8f fb ff       	call   0x403b18
44ab70:	5e                   	pop    %esi
44ab71:	c3                   	ret
44ab72:	8b c0                	mov    %eax,%eax
44ab74:	56                   	push   %esi
44ab75:	b1 01                	mov    $0x1,%cl
44ab77:	66 be e8 ff          	mov    $0xffe8,%si
44ab7b:	e8 98 8f fb ff       	call   0x403b18
44ab80:	5e                   	pop    %esi
44ab81:	c3                   	ret
44ab82:	8b c0                	mov    %eax,%eax
44ab84:	53                   	push   %ebx
44ab85:	56                   	push   %esi
44ab86:	57                   	push   %edi
44ab87:	55                   	push   %ebp
44ab88:	83 c4 f0             	add    $0xfffffff0,%esp
44ab8b:	8b ea                	mov    %edx,%ebp
44ab8d:	89 04 24             	mov    %eax,(%esp)
44ab90:	8b 7d 08             	mov    0x8(%ebp),%edi
44ab93:	8b 77 08             	mov    0x8(%edi),%esi
44ab96:	8b c6                	mov    %esi,%eax
44ab98:	8b 15 7c 3f 44 00    	mov    0x443f7c,%edx
44ab9e:	e8 05 8f fb ff       	call   0x403aa8
44aba3:	8b d8                	mov    %eax,%ebx
44aba5:	80 3d 44 b5 4a 00 00 	cmpb   $0x0,0x4ab544