43c820:	83 c4 ec             	add    $0xffffffec,%esp
43c823:	8b da                	mov    %edx,%ebx
43c825:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
43c829:	74 0c                	je     0x43c837
43c82b:	8b 43 04             	mov    0x4(%ebx),%eax
43c82e:	80 b8 a7 01 00 00 00 	cmpb   $0x0,0x1a7(%eax)
43c835:	75 6d                	jne    0x43c8a4
43c837:	8b 43 38             	mov    0x38(%ebx),%eax
43c83a:	e8 5d f7 ff ff       	call   0x43bf9c
43c83f:	8b f8                	mov    %eax,%edi
43c841:	8b 43 38             	mov    0x38(%ebx),%eax
43c844:	e8 3f f7 ff ff       	call   0x43bf88
43c849:	8b e8                	mov    %eax,%ebp
43c84b:	89 7c 24 10          	mov    %edi,0x10(%esp)
43c84f:	db 44 24 10          	fildl  0x10(%esp)
43c853:	dc 4b 20             	fmull  0x20(%ebx)
43c856:	db 43 0c             	fildl  0xc(%ebx)
43c859:	de e1                	fsubp  %st,%st(1)
43c85b:	dd 1c 24             	fstpl  (%esp)
43c85e:	9b                   	fwait
43c85f:	89 6c 24 10          	mov    %ebp,0x10(%esp)
43c863:	db 44 24 10          	fildl  0x10(%esp)
43c867:	dc 4b 28             	fmull  0x28(%ebx)
43c86a:	db 43 10             	fildl  0x10(%ebx)
43c86d:	de e1                	fsubp  %st,%st(1)
43c86f:	dd 5c 24 08          	fstpl  0x8(%esp)
43c873:	9b                   	fwait
43c874:	8d 73 44             	lea    0x44(%ebx),%esi
43c877:	dd 04 24             	fldl   (%esp)
43c87a:	e8 a9 62 fc ff       	call   0x402b28
43c87f:	89 06                	mov    %eax,(%esi)
43c881:	dd 44 24 08          	fldl   0x8(%esp)
43c885:	e8 9e 62 fc ff       	call   0x402b28
43c88a:	89 46 04             	mov    %eax,0x4(%esi)
43c88d:	03 3e                	add    (%esi),%edi
43c88f:	89 7e 08             	mov    %edi,0x8(%esi)
43c892:	03 6e 04             	add    0x4(%esi),%ebp
43c895:	89 6e 0c             	mov    %ebp,0xc(%esi)
43c898:	8d 53 44             	lea    0x44(%ebx),%edx
43c89b:	8b c3                	mov    %ebx,%eax
43c89d:	8b 08                	mov    (%eax),%ecx
43c89f:	ff 51 2c             	call   *0x2c(%ecx)
43c8a2:	eb 40                	jmp    0x43c8e4
43c8a4:	8d 43 44             	lea    0x44(%ebx),%eax
43c8a7:	50                   	push   %eax
43c8a8:	8b 43 04             	mov    0x4(%ebx),%eax
43c8ab:	e8 b8 5e 00 00       	call   0x442768
43c8b0:	50                   	push   %eax
43c8b1:	e8 2a a5 fc ff       	call   0x406de0
43c8b6:	8b 43 04             	mov    0x4(%ebx),%eax
43c8b9:	80 b8 a7 01 00 00 00 	cmpb   $0x0,0x1a7(%eax)
43c8c0:	74 22                	je     0x43c8e4
43c8c2:	83 b8 7c 01 00 00 00 	cmpl   $0x0,0x17c(%eax)
43c8c9:	74 19                	je     0x43c8e4
43c8cb:	8a 53 54             	mov    0x54(%ebx),%dl
43c8ce:	52                   	push   %edx
43c8cf:	8d 53 44             	lea    0x44(%ebx),%edx
43c8d2:	52                   	push   %edx
43c8d3:	8b 80 7c 01 00 00    	mov    0x17c(%eax),%eax
43c8d9:	8b 4b 58             	mov    0x58(%ebx),%ecx
43c8dc:	8b 53 38             	mov    0x38(%ebx),%edx
43c8df:	8b 18                	mov    (%eax),%ebx
43c8e1:	ff 53 24             	call   *0x24(%ebx)
43c8e4:	83 c4 14             	add    $0x14,%esp
43c8e7:	5d                   	pop    %ebp
43c8e8:	5f                   	pop    %edi
43c8e9:	5e                   	pop    %esi
43c8ea:	5b                   	pop    %ebx
43c8eb:	c3                   	ret
43c8ec:	55                   	push   %ebp
43c8ed:	8b ec                	mov    %esp,%ebp
43c8ef:	56                   	push   %esi
43c8f0:	66 be d2 ff          	mov    $0xffd2,%si
43c8f4:	e8 ef 6c fc ff       	call   0x4035e8
43c8f9:	5e                   	pop    %esi
43c8fa:	5d                   	pop    %ebp
43c8fb:	c2 04 00             	ret    $0x4
43c8fe:	8b c0                	mov    %eax,%eax
43c900:	55                   	push   %ebp
43c901:	8b ec                	mov    %esp,%ebp
43c903:	53                   	push   %ebx
43c904:	66 83 b8 0a 01 00 00 	cmpw   $0x0,0x10a(%eax)
43c90b:	00
43c90c:	74 17                	je     0x43c925
43c90e:	51                   	push   %ecx
43c90f:	8b 4d 08             	mov    0x8(%ebp),%ecx
43c912:	51                   	push   %ecx
43c913:	8b d8                	mov    %eax,%ebx
43c915:	8b ca                	mov    %edx,%ecx
43c917:	8b d0                	mov    %eax,%edx
43c919:	8b 83 0c 01 00 00    	mov    0x10c(%ebx),%eax
43c91f:	ff 93 08 01 00 00    	call   *0x108(%ebx)
43c925:	5b                   	pop    %ebx
43c926:	5d                   	pop    %ebp
43c927:	c2 04 00             	ret    $0x4
43c92a:	8b c0                	mov    %eax,%eax
43c92c:	53                   	push   %ebx
43c92d:	66 83 b8 02 01 00 00 	cmpw   $0x0,0x102(%eax)
43c934:	00
43c935:	74 12                	je     0x43c949
43c937:	8b ca                	mov    %edx,%ecx
43c939:	8b d8                	mov    %eax,%ebx
43c93b:	8b d0                	mov    %eax,%edx
43c93d:	8b 83 04 01 00 00    	mov    0x104(%ebx),%eax
43c943:	ff 93 00 01 00 00    	call   *0x100(%ebx)
43c949:	5b                   	pop    %ebx
43c94a:	c3                   	ret
43c94b:	90                   	nop
43c94c:	55                   	push   %ebp
43c94d:	8b ec                	mov    %esp,%ebp
43c94f:	83 c4 f4             	add    $0xfffffff4,%esp
43c952:	53                   	push   %ebx
43c953:	56                   	push   %esi
43c954:	57                   	push   %edi
43c955:	8b 75 08             	mov    0x8(%ebp),%esi
43c958:	8d 7d f7             	lea    -0x9(%ebp),%edi
43c95b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43c95c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43c95d:	8b f1                	mov    %ecx,%esi
43c95f:	88 55 ff             	mov    %dl,-0x1(%ebp)
43c962:	8b d8                	mov    %eax,%ebx
43c964:	c6 45 f6 00          	movb   $0x0,-0xa(%ebp)
43c968:	66 83 bb 3a 01 00 00 	cmpw   $0x0,0x13a(%ebx)
43c96f:	00
43c970:	74 1a                	je     0x43c98c
43c972:	56                   	push   %esi
43c973:	8d 45 f7             	lea    -0x9(%ebp),%eax
43c976:	50                   	push   %eax
43c977:	8d 45 f6             	lea    -0xa(%ebp),%eax
43c97a:	50                   	push   %eax
43c97b:	8a 4d ff             	mov    -0x1(%ebp),%cl
43c97e:	8b d3                	mov    %ebx,%edx
43c980:	8b 83 3c 01 00 00    	mov    0x13c(%ebx),%eax
43c986:	ff 93 38 01 00 00    	call   *0x138(%ebx)
43c98c:	80 7d f6 00          	cmpb   $0x0,-0xa(%ebp)
43c990:	75 71                	jne    0x43ca03
43c992:	01 b3 a4 00 00 00    	add    %esi,0xa4(%ebx)
43c998:	eb 57                	jmp    0x43c9f1
43c99a:	85 c9                	test   %ecx,%ecx
43c99c:	0f 9c c0             	setl   %al
43c99f:	8b c8                	mov    %eax,%ecx
43c9a1:	8b 83 a4 00 00 00    	mov    0xa4(%ebx),%eax
43c9a7:	99                   	cltd
43c9a8:	33 c2                	xor    %edx,%eax
43c9aa:	2b c2                	sub    %edx,%eax
43c9ac:	8b f0                	mov    %eax,%esi
43c9ae:	83 ee 78             	sub    $0x78,%esi
43c9b1:	89 b3 a4 00 00 00    	mov    %esi,0xa4(%ebx)
43c9b7:	84 c9                	test   %cl,%cl
43c9b9:	74 22                	je     0x43c9dd
43c9bb:	85 f6                	test   %esi,%esi
43c9bd:	74 08                	je     0x43c9c7
43c9bf:	f7 de                	neg    %esi
43c9c1:	89 b3 a4 00 00 00    	mov    %esi,0xa4(%ebx)
43c9c7:	8d 4d f7             	lea    -0x9(%ebp),%ecx
43c9ca:	8a 55 ff             	mov    -0x1(%ebp),%dl
43c9cd:	8b c3                	mov    %ebx,%eax
43c9cf:	66 be e1 ff          	mov    $0xffe1,%si
43c9d3:	e8 10 6c fc ff       	call   0x4035e8
43c9d8:	88 45 f6             	mov    %al,-0xa(%ebp)
43c9db:	eb 14                	jmp    0x43c9f1
43c9dd:	8d 4d f7             	lea    -0x9(%ebp),%ecx
43c9e0:	8a 55 ff             	mov    -0x1(%ebp),%dl
43c9e3:	8b c3                	mov    %ebx,%eax
43c9e5:	66 be e0 ff          	mov    $0xffe0,%si
43c9e9:	e8 fa 6b fc ff       	call   0x4035e8
43c9ee:	88 45 f6             	mov    %al,-0xa(%ebp)
43c9f1:	8b 8b a4 00 00 00    	mov    0xa4(%ebx),%ecx
43c9f7:	8b c1                	mov    %ecx,%eax
43c9f9:	99                   	cltd
43c9fa:	33 c2                	xor    %edx,%eax
43c9fc:	2b c2                	sub    %edx,%eax
43c9fe:	83 f8 78             	cmp    $0x78,%eax
43ca01:	7d 97                	jge    0x43c99a
43ca03:	8a 45 f6             	mov    -0xa(%ebp),%al
43ca06:	5f                   	pop    %edi
43ca07:	5e                   	pop    %esi
43ca08:	5b                   	pop    %ebx
43ca09:	8b e5                	mov    %ebp,%esp
43ca0b:	5d                   	pop    %ebp
43ca0c:	c2 04 00             	ret    $0x4
43ca0f:	90                   	nop
43ca10:	53                   	push   %ebx
43ca11:	56                   	push   %esi
43ca12:	57                   	push   %edi
43ca13:	83 c4 f4             	add    $0xfffffff4,%esp
43ca16:	8b f1                	mov    %ecx,%esi
43ca18:	8d 7c 24 01          	lea    0x1(%esp),%edi
43ca1c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ca1d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ca1e:	88 14 24             	mov    %dl,(%esp)
43ca21:	c6 44 24 09 00       	movb   $0x0,0x9(%esp)
43ca26:	66 83 b8 42 01 00 00 	cmpw   $0x0,0x142(%eax)
43ca2d:	00
43ca2e:	74 1e                	je     0x43ca4e
43ca30:	8d 54 24 01          	lea    0x1(%esp),%edx
43ca34:	52                   	push   %edx
43ca35:	8d 54 24 0d          	lea    0xd(%esp),%edx
43ca39:	52                   	push   %edx
43ca3a:	8b d8                	mov    %eax,%ebx
43ca3c:	8a 4c 24 08          	mov    0x8(%esp),%cl
43ca40:	8b d0                	mov    %eax,%edx
43ca42:	8b 83 44 01 00 00    	mov    0x144(%ebx),%eax
43ca48:	ff 93 40 01 00 00    	call   *0x140(%ebx)
43ca4e:	8a 44 24 09          	mov    0x9(%esp),%al
43ca52:	83 c4 0c             	add    $0xc,%esp
43ca55:	5f                   	pop    %edi
43ca56:	5e                   	pop    %esi
43ca57:	5b                   	pop    %ebx
43ca58:	c3                   	ret
43ca59:	8d 40 00             	lea    0x0(%eax),%eax
43ca5c:	53                   	push   %ebx
43ca5d:	56                   	push   %esi
43ca5e:	57                   	push   %edi
43ca5f:	83 c4 f4             	add    $0xfffffff4,%esp
43ca62:	8b f1                	mov    %ecx,%esi
43ca64:	8d 7c 24 01          	lea    0x1(%esp),%edi
43ca68:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ca69:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ca6a:	88 14 24             	mov    %dl,(%esp)
43ca6d:	c6 44 24 09 00       	movb   $0x0,0x9(%esp)
43ca72:	66 83 b8 4a 01 00 00 	cmpw   $0x0,0x14a(%eax)
43ca79:	00
43ca7a:	74 1e                	je     0x43ca9a
43ca7c:	8d 54 24 01          	lea    0x1(%esp),%edx
43ca80:	52                   	push   %edx
43ca81:	8d 54 24 0d          	lea    0xd(%esp),%edx
43ca85:	52                   	push   %edx
43ca86:	8b d8                	mov    %eax,%ebx
43ca88:	8a 4c 24 08          	mov    0x8(%esp),%cl
43ca8c:	8b d0                	mov    %eax,%edx
43ca8e:	8b 83 4c 01 00 00    	mov    0x14c(%ebx),%eax
43ca94:	ff 93 48 01 00 00    	call   *0x148(%ebx)
43ca9a:	8a 44 24 09          	mov    0x9(%esp),%al
43ca9e:	83 c4 0c             	add    $0xc,%esp
43caa1:	5f                   	pop    %edi
43caa2:	5e                   	pop    %esi
43caa3:	5b                   	pop    %ebx
43caa4:	c3                   	ret
43caa5:	8d 40 00             	lea    0x0(%eax),%eax
43caa8:	55                   	push   %ebp
43caa9:	8b ec                	mov    %esp,%ebp
43caab:	83 c4 e0             	add    $0xffffffe0,%esp
43caae:	53                   	push   %ebx
43caaf:	56                   	push   %esi
43cab0:	57                   	push   %edi
43cab1:	88 4d ff             	mov    %cl,-0x1(%ebp)
43cab4:	8b f2                	mov    %edx,%esi
43cab6:	8b c6                	mov    %esi,%eax
43cab8:	8b 10                	mov    (%eax),%edx
43caba:	ff 52 38             	call   *0x38(%edx)
43cabd:	8b d8                	mov    %eax,%ebx
43cabf:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
43cac3:	74 0e                	je     0x43cad3
43cac5:	56                   	push   %esi
43cac6:	83 c6 5c             	add    $0x5c,%esi
43cac9:	8d 7d e0             	lea    -0x20(%ebp),%edi
43cacc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43cacd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43cace:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43cacf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43cad0:	5e                   	pop    %esi
43cad1:	eb 0c                	jmp    0x43cadf
43cad3:	56                   	push   %esi
43cad4:	83 c6 44             	add    $0x44,%esi
43cad7:	8d 7d e0             	lea    -0x20(%ebp),%edi
43cada:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43cadb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43cadc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43cadd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43cade:	5e                   	pop    %esi
43cadf:	e8 f4 a1 fc ff       	call   0x406cd8
43cae4:	89 45 f8             	mov    %eax,-0x8(%ebp)
43cae7:	68 02 04 00 00       	push   $0x402
43caec:	6a 00                	push   $0x0
43caee:	8b 45 f8             	mov    -0x8(%ebp),%eax
43caf1:	50                   	push   %eax
43caf2:	e8 d9 a1 fc ff       	call   0x406cd0
43caf7:	89 45 f4             	mov    %eax,-0xc(%ebp)
43cafa:	33 c0                	xor    %eax,%eax
43cafc:	55                   	push   %ebp
43cafd:	68 c3 cb 43 00       	push   $0x43cbc3
43cb02:	64 ff 30             	push   %fs:(%eax)
43cb05:	64 89 20             	mov    %esp,%fs:(%eax)
43cb08:	8b 46 40             	mov    0x40(%esi),%eax
43cb0b:	e8 34 b0 fe ff       	call   0x427b44
43cb10:	50                   	push   %eax
43cb11:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cb14:	50                   	push   %eax
43cb15:	e8 be 9f fc ff       	call   0x406ad8
43cb1a:	89 45 f0             	mov    %eax,-0x10(%ebp)
43cb1d:	68 49 00 5a 00       	push   $0x5a0049
43cb22:	53                   	push   %ebx
43cb23:	8b 45 e8             	mov    -0x18(%ebp),%eax
43cb26:	8b 75 e0             	mov    -0x20(%ebp),%esi
43cb29:	2b c6                	sub    %esi,%eax
43cb2b:	2b c3                	sub    %ebx,%eax
43cb2d:	50                   	push   %eax
43cb2e:	8b 7d e4             	mov    -0x1c(%ebp),%edi
43cb31:	57                   	push   %edi
43cb32:	8b c6                	mov    %esi,%eax
43cb34:	03 c3                	add    %ebx,%eax
43cb36:	50                   	push   %eax
43cb37:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cb3a:	50                   	push   %eax
43cb3b:	e8 68 9f fc ff       	call   0x406aa8
43cb40:	68 49 00 5a 00       	push   $0x5a0049
43cb45:	8b 45 ec             	mov    -0x14(%ebp),%eax
43cb48:	2b c7                	sub    %edi,%eax
43cb4a:	2b c3                	sub    %ebx,%eax
43cb4c:	50                   	push   %eax
43cb4d:	53                   	push   %ebx
43cb4e:	8b c7                	mov    %edi,%eax
43cb50:	03 c3                	add    %ebx,%eax
43cb52:	50                   	push   %eax
43cb53:	8b 45 e8             	mov    -0x18(%ebp),%eax
43cb56:	2b c3                	sub    %ebx,%eax
43cb58:	50                   	push   %eax
43cb59:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cb5c:	50                   	push   %eax
43cb5d:	e8 46 9f fc ff       	call   0x406aa8
43cb62:	68 49 00 5a 00       	push   $0x5a0049
43cb67:	53                   	push   %ebx
43cb68:	8b 45 e8             	mov    -0x18(%ebp),%eax
43cb6b:	2b 45 e0             	sub    -0x20(%ebp),%eax
43cb6e:	2b c3                	sub    %ebx,%eax
43cb70:	50                   	push   %eax
43cb71:	8b 45 ec             	mov    -0x14(%ebp),%eax
43cb74:	2b c3                	sub    %ebx,%eax
43cb76:	50                   	push   %eax
43cb77:	56                   	push   %esi
43cb78:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cb7b:	50                   	push   %eax
43cb7c:	e8 27 9f fc ff       	call   0x406aa8
43cb81:	68 49 00 5a 00       	push   $0x5a0049
43cb86:	8b 45 ec             	mov    -0x14(%ebp),%eax
43cb89:	2b 45 e4             	sub    -0x1c(%ebp),%eax
43cb8c:	2b c3                	sub    %ebx,%eax
43cb8e:	50                   	push   %eax
43cb8f:	53                   	push   %ebx
43cb90:	57                   	push   %edi
43cb91:	56                   	push   %esi
43cb92:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cb95:	50                   	push   %eax
43cb96:	e8 0d 9f fc ff       	call   0x406aa8
43cb9b:	8b 45 f0             	mov    -0x10(%ebp),%eax
43cb9e:	50                   	push   %eax
43cb9f:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cba2:	50                   	push   %eax
43cba3:	e8 30 9f fc ff       	call   0x406ad8