43f8ea:	e8 5d 47 fd ff       	call   0x41404c
43f8ef:	8b f8                	mov    %eax,%edi
43f8f1:	83 ff ff             	cmp    $0xffffffff,%edi
43f8f4:	74 0e                	je     0x43f904
43f8f6:	8b d7                	mov    %edi,%edx
43f8f8:	8b c6                	mov    %esi,%eax
43f8fa:	e8 8d 72 00 00       	call   0x446b8c
43f8ff:	89 45 fc             	mov    %eax,-0x4(%ebp)
43f902:	eb 0b                	jmp    0x43f90f
43f904:	8b 5b 30             	mov    0x30(%ebx),%ebx
43f907:	85 db                	test   %ebx,%ebx
43f909:	74 04                	je     0x43f90f
43f90b:	3b f3                	cmp    %ebx,%esi
43f90d:	75 d3                	jne    0x43f8e2
43f90f:	8b 45 fc             	mov    -0x4(%ebp),%eax
43f912:	5f                   	pop    %edi
43f913:	5e                   	pop    %esi
43f914:	5b                   	pop    %ebx
43f915:	59                   	pop    %ecx
43f916:	5d                   	pop    %ebp
43f917:	c3                   	ret
43f918:	53                   	push   %ebx
43f919:	56                   	push   %esi
43f91a:	57                   	push   %edi
43f91b:	83 c4 f0             	add    $0xfffffff0,%esp
43f91e:	8b f8                	mov    %eax,%edi
43f920:	80 3d 20 1b 46 00 00 	cmpb   $0x0,0x461b20
43f927:	75 2d                	jne    0x43f956
43f929:	a1 10 1b 46 00       	mov    0x461b10,%eax
43f92e:	2b 07                	sub    (%edi),%eax
43f930:	99                   	cltd
43f931:	33 c2                	xor    %edx,%eax
43f933:	2b c2                	sub    %edx,%eax
43f935:	3b 05 1c 1b 46 00    	cmp    0x461b1c,%eax
43f93b:	7d 19                	jge    0x43f956
43f93d:	a1 14 1b 46 00       	mov    0x461b14,%eax
43f942:	2b 47 04             	sub    0x4(%edi),%eax
43f945:	99                   	cltd
43f946:	33 c2                	xor    %edx,%eax
43f948:	2b c2                	sub    %edx,%eax
43f94a:	3b 05 1c 1b 46 00    	cmp    0x461b1c,%eax
43f950:	0f 8c 89 02 00 00    	jl     0x43fbdf
43f956:	a1 00 1b 46 00       	mov    0x461b00,%eax
43f95b:	50                   	push   %eax
43f95c:	a1 00 1b 46 00       	mov    0x461b00,%eax
43f961:	8a 88 9b 00 00 00    	mov    0x9b(%eax),%cl
43f967:	8d 54 24 04          	lea    0x4(%esp),%edx
43f96b:	8b c7                	mov    %edi,%eax
43f96d:	e8 72 fe ff ff       	call   0x43f7e4
43f972:	8b d8                	mov    %eax,%ebx
43f974:	80 3d 20 1b 46 00 00 	cmpb   $0x0,0x461b20
43f97b:	75 26                	jne    0x43f9a3
43f97d:	83 3d 24 1b 46 00 00 	cmpl   $0x0,0x461b24
43f984:	74 1d                	je     0x43f9a3
43f986:	a1 14 1b 46 00       	mov    0x461b14,%eax
43f98b:	50                   	push   %eax
43f98c:	e8 cb 71 fc ff       	call   0x406b5c
43f991:	8b d0                	mov    %eax,%edx
43f993:	8b 0d 10 1b 46 00    	mov    0x461b10,%ecx
43f999:	a1 24 1b 46 00       	mov    0x461b24,%eax
43f99e:	e8 35 9f 00 00       	call   0x4498d8
43f9a3:	a1 00 1b 46 00       	mov    0x461b00,%eax
43f9a8:	80 b8 9b 00 00 00 00 	cmpb   $0x0,0x9b(%eax)
43f9af:	75 0e                	jne    0x43f9bf
43f9b1:	c6 05 20 1b 46 00 01 	movb   $0x1,0x461b20
43f9b8:	c6 44 24 04 00       	movb   $0x0,0x4(%esp)
43f9bd:	eb 13                	jmp    0x43f9d2
43f9bf:	80 3d 20 1b 46 00 00 	cmpb   $0x0,0x461b20
43f9c6:	0f 95 44 24 04       	setne  0x4(%esp)
43f9cb:	c6 05 20 1b 46 00 02 	movb   $0x2,0x461b20
43f9d2:	a1 04 1b 46 00       	mov    0x461b04,%eax
43f9d7:	3b 58 04             	cmp    0x4(%eax),%ebx
43f9da:	74 4b                	je     0x43fa27
43f9dc:	b0 01                	mov    $0x1,%al
43f9de:	e8 59 fe ff ff       	call   0x43f83c
43f9e3:	83 3d 04 1b 46 00 00 	cmpl   $0x0,0x461b04
43f9ea:	0f 84 ef 01 00 00    	je     0x43fbdf
43f9f0:	a1 04 1b 46 00       	mov    0x461b04,%eax
43f9f5:	89 58 04             	mov    %ebx,0x4(%eax)
43f9f8:	a1 04 1b 46 00       	mov    0x461b04,%eax
43f9fd:	8b 14 24             	mov    (%esp),%edx
43fa00:	89 50 08             	mov    %edx,0x8(%eax)
43fa03:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fa08:	8b 17                	mov    (%edi),%edx
43fa0a:	89 50 0c             	mov    %edx,0xc(%eax)
43fa0d:	8b 57 04             	mov    0x4(%edi),%edx
43fa10:	89 50 10             	mov    %edx,0x10(%eax)
43fa13:	33 c0                	xor    %eax,%eax
43fa15:	e8 22 fe ff ff       	call   0x43f83c
43fa1a:	83 3d 04 1b 46 00 00 	cmpl   $0x0,0x461b04
43fa21:	0f 84 b8 01 00 00    	je     0x43fbdf
43fa27:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fa2c:	8b 17                	mov    (%edi),%edx
43fa2e:	89 50 0c             	mov    %edx,0xc(%eax)
43fa31:	8b 57 04             	mov    0x4(%edi),%edx
43fa34:	89 50 10             	mov    %edx,0x10(%eax)
43fa37:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fa3c:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
43fa40:	74 26                	je     0x43fa68
43fa42:	8d 4c 24 08          	lea    0x8(%esp),%ecx
43fa46:	8b d7                	mov    %edi,%edx
43fa48:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fa4d:	8b 40 04             	mov    0x4(%eax),%eax
43fa50:	e8 f7 1a 00 00       	call   0x44154c
43fa55:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fa5a:	8b 54 24 08          	mov    0x8(%esp),%edx
43fa5e:	89 50 14             	mov    %edx,0x14(%eax)
43fa61:	8b 54 24 0c          	mov    0xc(%esp),%edx
43fa65:	89 50 18             	mov    %edx,0x18(%eax)
43fa68:	8b 47 04             	mov    0x4(%edi),%eax
43fa6b:	50                   	push   %eax
43fa6c:	b0 02                	mov    $0x2,%al
43fa6e:	e8 c9 fd ff ff       	call   0x43f83c
43fa73:	8b d0                	mov    %eax,%edx
43fa75:	8b 0f                	mov    (%edi),%ecx
43fa77:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fa7c:	8b 30                	mov    (%eax),%esi
43fa7e:	ff 56 04             	call   *0x4(%esi)
43fa81:	8b f0                	mov    %eax,%esi
43fa83:	83 3d 24 1b 46 00 00 	cmpl   $0x0,0x461b24
43fa8a:	74 6a                	je     0x43faf6
43fa8c:	85 db                	test   %ebx,%ebx
43fa8e:	74 06                	je     0x43fa96
43fa90:	f6 43 51 20          	testb  $0x20,0x51(%ebx)
43fa94:	74 41                	je     0x43fad7
43fa96:	8b d6                	mov    %esi,%edx
43fa98:	a1 24 1b 46 00       	mov    0x461b24,%eax
43fa9d:	e8 1e 9e 00 00       	call   0x4498c0
43faa2:	a1 24 1b 46 00       	mov    0x461b24,%eax
43faa7:	80 78 6a 00          	cmpb   $0x0,0x6a(%eax)
43faab:	75 19                	jne    0x43fac6
43faad:	8b 47 04             	mov    0x4(%edi),%eax
43fab0:	50                   	push   %eax
43fab1:	e8 a6 70 fc ff       	call   0x406b5c
43fab6:	8b d0                	mov    %eax,%edx
43fab8:	8b 0f                	mov    (%edi),%ecx
43faba:	a1 24 1b 46 00       	mov    0x461b24,%eax
43fabf:	e8 14 9e 00 00       	call   0x4498d8
43fac4:	eb 30                	jmp    0x43faf6
43fac6:	8b 4f 04             	mov    0x4(%edi),%ecx
43fac9:	8b 17                	mov    (%edi),%edx
43facb:	a1 24 1b 46 00       	mov    0x461b24,%eax
43fad0:	e8 eb 9e 00 00       	call   0x4499c0
43fad5:	eb 1f                	jmp    0x43faf6
43fad7:	a1 24 1b 46 00       	mov    0x461b24,%eax
43fadc:	e8 53 9f 00 00       	call   0x449a34
43fae1:	0f bf d6             	movswl %si,%edx
43fae4:	a1 38 0d 46 00       	mov    0x460d38,%eax
43fae9:	8b 00                	mov    (%eax),%eax
43faeb:	e8 20 1d ff ff       	call   0x431810
43faf0:	50                   	push   %eax
43faf1:	e8 e6 72 fc ff       	call   0x406ddc
43faf6:	0f bf d6             	movswl %si,%edx
43faf9:	a1 38 0d 46 00       	mov    0x460d38,%eax
43fafe:	8b 00                	mov    (%eax),%eax
43fb00:	e8 0b 1d ff ff       	call   0x431810
43fb05:	50                   	push   %eax
43fb06:	e8 d1 72 fc ff       	call   0x406ddc
43fb0b:	80 3d 20 1b 46 00 02 	cmpb   $0x2,0x461b20
43fb12:	0f 85 c7 00 00 00    	jne    0x43fbdf
43fb18:	85 db                	test   %ebx,%ebx
43fb1a:	75 1a                	jne    0x43fb36
43fb1c:	8b 57 04             	mov    0x4(%edi),%edx
43fb1f:	52                   	push   %edx
43fb20:	8b 0f                	mov    (%edi),%ecx
43fb22:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fb27:	8b 50 38             	mov    0x38(%eax),%edx
43fb2a:	92                   	xchg   %eax,%edx
43fb2b:	66 be e7 ff          	mov    $0xffe7,%si
43fb2f:	e8 d0 3e fc ff       	call   0x403a04
43fb34:	eb 5c                	jmp    0x43fb92
43fb36:	e8 3d fd ff ff       	call   0x43f878
43fb3b:	8b d8                	mov    %eax,%ebx
43fb3d:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fb42:	89 58 58             	mov    %ebx,0x58(%eax)
43fb45:	85 db                	test   %ebx,%ebx
43fb47:	75 24                	jne    0x43fb6d
43fb49:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fb4e:	8d 50 14             	lea    0x14(%eax),%edx
43fb51:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fb56:	8b 40 04             	mov    0x4(%eax),%eax
43fb59:	66 be d8 ff          	mov    $0xffd8,%si
43fb5d:	e8 a2 3e fc ff       	call   0x403a04
43fb62:	8b 15 04 1b 46 00    	mov    0x461b04,%edx
43fb68:	88 42 54             	mov    %al,0x54(%edx)
43fb6b:	eb 25                	jmp    0x43fb92
43fb6d:	8d 4c 24 08          	lea    0x8(%esp),%ecx
43fb71:	8b d7                	mov    %edi,%edx
43fb73:	8b c3                	mov    %ebx,%eax
43fb75:	e8 d2 19 00 00       	call   0x44154c
43fb7a:	8d 54 24 08          	lea    0x8(%esp),%edx
43fb7e:	8b c3                	mov    %ebx,%eax
43fb80:	66 be d8 ff          	mov    $0xffd8,%si
43fb84:	e8 7b 3e fc ff       	call   0x403a04
43fb89:	8b 15 04 1b 46 00    	mov    0x461b04,%edx
43fb8f:	88 42 54             	mov    %al,0x54(%edx)
43fb92:	83 3d 04 1b 46 00 00 	cmpl   $0x0,0x461b04
43fb99:	74 44                	je     0x43fbdf
43fb9b:	8b 1d 04 1b 46 00    	mov    0x461b04,%ebx
43fba1:	8d 53 5c             	lea    0x5c(%ebx),%edx
43fba4:	8d 43 44             	lea    0x44(%ebx),%eax
43fba7:	b9 10 00 00 00       	mov    $0x10,%ecx
43fbac:	e8 4b 86 fc ff       	call   0x4081fc
43fbb1:	84 c0                	test   %al,%al
43fbb3:	75 2a                	jne    0x43fbdf
43fbb5:	80 7c 24 04 00       	cmpb   $0x0,0x4(%esp)
43fbba:	74 0a                	je     0x43fbc6
43fbbc:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fbc1:	8b 10                	mov    (%eax),%edx
43fbc3:	ff 52 34             	call   *0x34(%edx)
43fbc6:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fbcb:	8b 10                	mov    (%eax),%edx
43fbcd:	ff 52 30             	call   *0x30(%edx)
43fbd0:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fbd5:	8d 70 44             	lea    0x44(%eax),%esi
43fbd8:	8d 78 5c             	lea    0x5c(%eax),%edi
43fbdb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43fbdc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43fbdd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43fbde:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43fbdf:	83 c4 10             	add    $0x10,%esp
43fbe2:	5f                   	pop    %edi
43fbe3:	5e                   	pop    %esi
43fbe4:	5b                   	pop    %ebx
43fbe5:	c3                   	ret
43fbe6:	8b c0                	mov    %eax,%eax
43fbe8:	53                   	push   %ebx
43fbe9:	56                   	push   %esi
43fbea:	57                   	push   %edi
43fbeb:	83 c4 f8             	add    $0xfffffff8,%esp
43fbee:	8b f9                	mov    %ecx,%edi
43fbf0:	8b da                	mov    %edx,%ebx
43fbf2:	8b f0                	mov    %eax,%esi
43fbf4:	89 35 04 1b 46 00    	mov    %esi,0x461b04
43fbfa:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fbff:	33 d2                	xor    %edx,%edx
43fc01:	89 50 04             	mov    %edx,0x4(%eax)
43fc04:	68 10 1b 46 00       	push   $0x461b10
43fc09:	e8 36 6f fc ff       	call   0x406b44
43fc0e:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fc13:	8b 15 10 1b 46 00    	mov    0x461b10,%edx
43fc19:	89 50 0c             	mov    %edx,0xc(%eax)
43fc1c:	8b 15 14 1b 46 00    	mov    0x461b14,%edx
43fc22:	89 50 10             	mov    %edx,0x10(%eax)
43fc25:	e8 12 6f fc ff       	call   0x406b3c
43fc2a:	a3 18 1b 46 00       	mov    %eax,0x461b18
43fc2f:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fc34:	e8 c7 f1 ff ff       	call   0x43ee00
43fc39:	a3 0c 1b 46 00       	mov    %eax,0x461b0c
43fc3e:	89 3d 1c 1b 46 00    	mov    %edi,0x461b1c
43fc44:	8b c6                	mov    %esi,%eax
43fc46:	8b 15 e8 cc 43 00    	mov    0x43cce8,%edx
43fc4c:	e8 43 3d fc ff       	call   0x403994
43fc51:	84 c0                	test   %al,%al
43fc53:	0f 84 8c 00 00 00    	je     0x43fce5
43fc59:	8b d6                	mov    %esi,%edx
43fc5b:	8d 42 44             	lea    0x44(%edx),%eax
43fc5e:	8b 78 08             	mov    0x8(%eax),%edi
43fc61:	8b 08                	mov    (%eax),%ecx
43fc63:	2b f9                	sub    %ecx,%edi
43fc65:	85 ff                	test   %edi,%edi
43fc67:	7e 20                	jle    0x43fc89
43fc69:	8b 7a 0c             	mov    0xc(%edx),%edi
43fc6c:	2b f9                	sub    %ecx,%edi
43fc6e:	89 3c 24             	mov    %edi,(%esp)
43fc71:	db 04 24             	fildl  (%esp)
43fc74:	8b 48 08             	mov    0x8(%eax),%ecx
43fc77:	2b 08                	sub    (%eax),%ecx
43fc79:	89 4c 24 04          	mov    %ecx,0x4(%esp)
43fc7d:	db 44 24 04          	fildl  0x4(%esp)
43fc81:	de f9                	fdivrp %st,%st(1)
43fc83:	dd 5a 20             	fstpl  0x20(%edx)
43fc86:	9b                   	fwait
43fc87:	eb 08                	jmp    0x43fc91
43fc89:	33 c9                	xor    %ecx,%ecx
43fc8b:	89 4a 20             	mov    %ecx,0x20(%edx)
43fc8e:	89 4a 24             	mov    %ecx,0x24(%edx)
43fc91:	8b 48 0c             	mov    0xc(%eax),%ecx
43fc94:	8b 50 04             	mov    0x4(%eax),%edx
43fc97:	2b ca                	sub    %edx,%ecx
43fc99:	85 c9                	test   %ecx,%ecx
43fc9b:	7e 23                	jle    0x43fcc0
43fc9d:	8b ce                	mov    %esi,%ecx
43fc9f:	8b 79 10             	mov    0x10(%ecx),%edi
43fca2:	2b fa                	sub    %edx,%edi
43fca4:	89 3c 24             	mov    %edi,(%esp)
43fca7:	db 04 24             	fildl  (%esp)
43fcaa:	8b 50 0c             	mov    0xc(%eax),%edx
43fcad:	2b 50 04             	sub    0x4(%eax),%edx
43fcb0:	89 54 24 04          	mov    %edx,0x4(%esp)
43fcb4:	db 44 24 04          	fildl  0x4(%esp)
43fcb8:	de f9                	fdivrp %st,%st(1)
43fcba:	dd 59 28             	fstpl  0x28(%ecx)
43fcbd:	9b                   	fwait
43fcbe:	eb 08                	jmp    0x43fcc8
43fcc0:	33 c0                	xor    %eax,%eax
43fcc2:	89 46 28             	mov    %eax,0x28(%esi)
43fcc5:	89 46 2c             	mov    %eax,0x2c(%esi)
43fcc8:	84 db                	test   %bl,%bl
43fcca:	74 10                	je     0x43fcdc
43fccc:	c6 05 20 1b 46 00 02 	movb   $0x2,0x461b20
43fcd3:	8b c6                	mov    %esi,%eax
43fcd5:	8b 10                	mov    (%eax),%edx
43fcd7:	ff 52 30             	call   *0x30(%edx)
43fcda:	eb 1d                	jmp    0x43fcf9
43fcdc:	c6 05 20 1b 46 00 00 	movb   $0x0,0x461b20
43fce3:	eb 14                	jmp    0x43fcf9
43fce5:	84 db                	test   %bl,%bl
43fce7:	74 09                	je     0x43fcf2
43fce9:	c6 05 20 1b 46 00 01 	movb   $0x1,0x461b20
43fcf0:	eb 07                	jmp    0x43fcf9
43fcf2:	c6 05 20 1b 46 00 00 	movb   $0x0,0x461b20
43fcf9:	a1 04 1b 46 00       	mov    0x461b04,%eax
43fcfe:	8b 10                	mov    (%eax),%edx
43fd00:	ff 52 08             	call   *0x8(%edx)
43fd03:	a3 24 1b 46 00       	mov    %eax,0x461b24
43fd08:	83 3d 24 1b 46 00 00 	cmpl   $0x0,0x461b24
43fd0f:	74 1d                	je     0x43fd2e
43fd11:	a1 14 1b 46 00       	mov    0x461b14,%eax
43fd16:	50                   	push   %eax
43fd17:	e8 40 6e fc ff       	call   0x406b5c
43fd1c:	8b d0                	mov    %eax,%edx
43fd1e:	8b 0d 10 1b 46 00    	mov    0x461b10,%ecx
43fd24:	a1 24 1b 46 00       	mov    0x461b24,%eax
43fd29:	e8 aa 9b 00 00       	call   0x4498d8
43fd2e:	b2 01                	mov    $0x1,%dl
43fd30:	a1 00 ec 43 00       	mov    0x43ec00,%eax
43fd35:	e8 92 3a fc ff       	call   0x4037cc
43fd3a:	a3 2c 1b 46 00       	mov    %eax,0x461b2c
43fd3f:	80 3d 20 1b 46 00 00 	cmpb   $0x0,0x461b20
43fd46:	74 0a                	je     0x43fd52
43fd48:	b8 10 1b 46 00       	mov    $0x461b10,%eax
43fd4d:	e8 c6 fb ff ff       	call   0x43f918
43fd52:	59                   	pop    %ecx
43fd53:	5a                   	pop    %edx
43fd54:	5f                   	pop    %edi
43fd55:	5e                   	pop    %esi
43fd56:	5b                   	pop    %ebx
43fd57:	c3                   	ret
43fd58:	55                   	push   %ebp
43fd59:	8b ec                	mov    %esp,%ebp
43fd5b:	83 c4 e0             	add    $0xffffffe0,%esp
43fd5e:	53                   	push   %ebx
43fd5f:	56                   	push   %esi
43fd60:	57                   	push   %edi
43fd61:	89 4d fc             	mov    %ecx,-0x4(%ebp)
43fd64:	8b da                	mov    %edx,%ebx
43fd66:	8b f8                	mov    %eax,%edi
43fd68:	89 3d 00 1b 46 00    	mov    %edi,0x461b00
43fd6e:	33 d2                	xor    %edx,%edx