43d7d9:	83 c0 0c             	add    $0xc,%eax
43d7dc:	33 d2                	xor    %edx,%edx
43d7de:	e8 d1 09 00 00       	call   0x43e1b4
43d7e3:	8b d8                	mov    %eax,%ebx
43d7e5:	eb 22                	jmp    0x43d809
43d7e7:	8b d3                	mov    %ebx,%edx
43d7e9:	8b 86 78 01 00 00    	mov    0x178(%esi),%eax
43d7ef:	e8 e4 65 fd ff       	call   0x413dd8
43d7f4:	83 f8 ff             	cmp    $0xffffffff,%eax
43d7f7:	74 0d                	je     0x43d806
43d7f9:	8b d0                	mov    %eax,%edx
43d7fb:	8b c6                	mov    %esi,%eax
43d7fd:	e8 9e 73 00 00       	call   0x444ba0
43d802:	8b f8                	mov    %eax,%edi
43d804:	eb 0b                	jmp    0x43d811
43d806:	8b 5b 30             	mov    0x30(%ebx),%ebx
43d809:	85 db                	test   %ebx,%ebx
43d80b:	74 04                	je     0x43d811
43d80d:	3b f3                	cmp    %ebx,%esi
43d80f:	75 d6                	jne    0x43d7e7
43d811:	8b c7                	mov    %edi,%eax
43d813:	5f                   	pop    %edi
43d814:	5e                   	pop    %esi
43d815:	5b                   	pop    %ebx
43d816:	c3                   	ret
43d817:	90                   	nop
43d818:	53                   	push   %ebx
43d819:	56                   	push   %esi
43d81a:	57                   	push   %edi
43d81b:	83 c4 f0             	add    $0xfffffff0,%esp
43d81e:	8b f8                	mov    %eax,%edi
43d820:	80 3d 54 eb 46 00 00 	cmpb   $0x0,0x46eb54
43d827:	75 2d                	jne    0x43d856
43d829:	a1 44 eb 46 00       	mov    0x46eb44,%eax
43d82e:	2b 07                	sub    (%edi),%eax
43d830:	99                   	cltd
43d831:	33 c2                	xor    %edx,%eax
43d833:	2b c2                	sub    %edx,%eax
43d835:	3b 05 50 eb 46 00    	cmp    0x46eb50,%eax
43d83b:	7d 19                	jge    0x43d856
43d83d:	a1 48 eb 46 00       	mov    0x46eb48,%eax
43d842:	2b 47 04             	sub    0x4(%edi),%eax
43d845:	99                   	cltd
43d846:	33 c2                	xor    %edx,%eax
43d848:	2b c2                	sub    %edx,%eax
43d84a:	3b 05 50 eb 46 00    	cmp    0x46eb50,%eax
43d850:	0f 8c 89 02 00 00    	jl     0x43dadf
43d856:	a1 34 eb 46 00       	mov    0x46eb34,%eax
43d85b:	50                   	push   %eax
43d85c:	a1 34 eb 46 00       	mov    0x46eb34,%eax
43d861:	8a 88 9b 00 00 00    	mov    0x9b(%eax),%cl
43d867:	8d 54 24 04          	lea    0x4(%esp),%edx
43d86b:	8b c7                	mov    %edi,%eax
43d86d:	e8 86 fe ff ff       	call   0x43d6f8
43d872:	8b d8                	mov    %eax,%ebx
43d874:	80 3d 54 eb 46 00 00 	cmpb   $0x0,0x46eb54
43d87b:	75 26                	jne    0x43d8a3
43d87d:	83 3d 58 eb 46 00 00 	cmpl   $0x0,0x46eb58
43d884:	74 1d                	je     0x43d8a3
43d886:	a1 48 eb 46 00       	mov    0x46eb48,%eax
43d88b:	50                   	push   %eax
43d88c:	e8 1b 8d fc ff       	call   0x4065ac
43d891:	8b d0                	mov    %eax,%edx
43d893:	8b 0d 44 eb 46 00    	mov    0x46eb44,%ecx
43d899:	a1 58 eb 46 00       	mov    0x46eb58,%eax
43d89e:	e8 71 a3 00 00       	call   0x447c14
43d8a3:	a1 34 eb 46 00       	mov    0x46eb34,%eax
43d8a8:	80 b8 9b 00 00 00 00 	cmpb   $0x0,0x9b(%eax)
43d8af:	75 0e                	jne    0x43d8bf
43d8b1:	c6 05 54 eb 46 00 01 	movb   $0x1,0x46eb54
43d8b8:	c6 44 24 04 00       	movb   $0x0,0x4(%esp)
43d8bd:	eb 13                	jmp    0x43d8d2
43d8bf:	80 3d 54 eb 46 00 00 	cmpb   $0x0,0x46eb54
43d8c6:	0f 95 44 24 04       	setne  0x4(%esp)
43d8cb:	c6 05 54 eb 46 00 02 	movb   $0x2,0x46eb54
43d8d2:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d8d7:	3b 58 04             	cmp    0x4(%eax),%ebx
43d8da:	74 4b                	je     0x43d927
43d8dc:	b0 01                	mov    $0x1,%al
43d8de:	e8 65 fe ff ff       	call   0x43d748
43d8e3:	83 3d 38 eb 46 00 00 	cmpl   $0x0,0x46eb38
43d8ea:	0f 84 ef 01 00 00    	je     0x43dadf
43d8f0:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d8f5:	89 58 04             	mov    %ebx,0x4(%eax)
43d8f8:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d8fd:	8b 14 24             	mov    (%esp),%edx
43d900:	89 50 08             	mov    %edx,0x8(%eax)
43d903:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d908:	8b 17                	mov    (%edi),%edx
43d90a:	89 50 0c             	mov    %edx,0xc(%eax)
43d90d:	8b 57 04             	mov    0x4(%edi),%edx
43d910:	89 50 10             	mov    %edx,0x10(%eax)
43d913:	33 c0                	xor    %eax,%eax
43d915:	e8 2e fe ff ff       	call   0x43d748
43d91a:	83 3d 38 eb 46 00 00 	cmpl   $0x0,0x46eb38
43d921:	0f 84 b8 01 00 00    	je     0x43dadf
43d927:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d92c:	8b 17                	mov    (%edi),%edx
43d92e:	89 50 0c             	mov    %edx,0xc(%eax)
43d931:	8b 57 04             	mov    0x4(%edi),%edx
43d934:	89 50 10             	mov    %edx,0x10(%eax)
43d937:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d93c:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
43d940:	74 26                	je     0x43d968
43d942:	8d 4c 24 08          	lea    0x8(%esp),%ecx
43d946:	8b d7                	mov    %edi,%edx
43d948:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d94d:	8b 40 04             	mov    0x4(%eax),%eax
43d950:	e8 f7 1a 00 00       	call   0x43f44c
43d955:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d95a:	8b 54 24 08          	mov    0x8(%esp),%edx
43d95e:	89 50 14             	mov    %edx,0x14(%eax)
43d961:	8b 54 24 0c          	mov    0xc(%esp),%edx
43d965:	89 50 18             	mov    %edx,0x18(%eax)
43d968:	8b 47 04             	mov    0x4(%edi),%eax
43d96b:	50                   	push   %eax
43d96c:	b0 02                	mov    $0x2,%al
43d96e:	e8 d5 fd ff ff       	call   0x43d748
43d973:	8b d0                	mov    %eax,%edx
43d975:	8b 0f                	mov    (%edi),%ecx
43d977:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43d97c:	8b 30                	mov    (%eax),%esi
43d97e:	ff 56 04             	call   *0x4(%esi)
43d981:	8b f0                	mov    %eax,%esi
43d983:	83 3d 58 eb 46 00 00 	cmpl   $0x0,0x46eb58
43d98a:	74 6a                	je     0x43d9f6
43d98c:	85 db                	test   %ebx,%ebx
43d98e:	74 06                	je     0x43d996
43d990:	f6 43 51 20          	testb  $0x20,0x51(%ebx)
43d994:	74 41                	je     0x43d9d7
43d996:	8b d6                	mov    %esi,%edx
43d998:	a1 58 eb 46 00       	mov    0x46eb58,%eax
43d99d:	e8 2e a2 00 00       	call   0x447bd0
43d9a2:	a1 58 eb 46 00       	mov    0x46eb58,%eax
43d9a7:	80 78 6a 00          	cmpb   $0x0,0x6a(%eax)
43d9ab:	75 19                	jne    0x43d9c6
43d9ad:	8b 47 04             	mov    0x4(%edi),%eax
43d9b0:	50                   	push   %eax
43d9b1:	e8 f6 8b fc ff       	call   0x4065ac
43d9b6:	8b d0                	mov    %eax,%edx
43d9b8:	8b 0f                	mov    (%edi),%ecx
43d9ba:	a1 58 eb 46 00       	mov    0x46eb58,%eax
43d9bf:	e8 50 a2 00 00       	call   0x447c14
43d9c4:	eb 30                	jmp    0x43d9f6
43d9c6:	8b 4f 04             	mov    0x4(%edi),%ecx
43d9c9:	8b 17                	mov    (%edi),%edx
43d9cb:	a1 58 eb 46 00       	mov    0x46eb58,%eax
43d9d0:	e8 27 a3 00 00       	call   0x447cfc
43d9d5:	eb 1f                	jmp    0x43d9f6
43d9d7:	a1 58 eb 46 00       	mov    0x46eb58,%eax
43d9dc:	e8 8f a3 00 00       	call   0x447d70
43d9e1:	0f bf d6             	movswl %si,%edx
43d9e4:	a1 f0 dd 46 00       	mov    0x46ddf0,%eax
43d9e9:	8b 00                	mov    (%eax),%eax
43d9eb:	e8 d0 fb 01 00       	call   0x45d5c0
43d9f0:	50                   	push   %eax
43d9f1:	e8 3e 8e fc ff       	call   0x406834
43d9f6:	0f bf d6             	movswl %si,%edx
43d9f9:	a1 f0 dd 46 00       	mov    0x46ddf0,%eax
43d9fe:	8b 00                	mov    (%eax),%eax
43da00:	e8 bb fb 01 00       	call   0x45d5c0
43da05:	50                   	push   %eax
43da06:	e8 29 8e fc ff       	call   0x406834
43da0b:	80 3d 54 eb 46 00 02 	cmpb   $0x2,0x46eb54
43da12:	0f 85 c7 00 00 00    	jne    0x43dadf
43da18:	85 db                	test   %ebx,%ebx
43da1a:	75 1a                	jne    0x43da36
43da1c:	8b 57 04             	mov    0x4(%edi),%edx
43da1f:	52                   	push   %edx
43da20:	8b 0f                	mov    (%edi),%ecx
43da22:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43da27:	8b 50 38             	mov    0x38(%eax),%edx
43da2a:	92                   	xchg   %eax,%edx
43da2b:	66 be e7 ff          	mov    $0xffe7,%si
43da2f:	e8 10 5a fc ff       	call   0x403444
43da34:	eb 5c                	jmp    0x43da92
43da36:	e8 49 fd ff ff       	call   0x43d784
43da3b:	8b d8                	mov    %eax,%ebx
43da3d:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43da42:	89 58 58             	mov    %ebx,0x58(%eax)
43da45:	85 db                	test   %ebx,%ebx
43da47:	75 24                	jne    0x43da6d
43da49:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43da4e:	8d 50 14             	lea    0x14(%eax),%edx
43da51:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43da56:	8b 40 04             	mov    0x4(%eax),%eax
43da59:	66 be d8 ff          	mov    $0xffd8,%si
43da5d:	e8 e2 59 fc ff       	call   0x403444
43da62:	8b 15 38 eb 46 00    	mov    0x46eb38,%edx
43da68:	88 42 54             	mov    %al,0x54(%edx)
43da6b:	eb 25                	jmp    0x43da92
43da6d:	8d 4c 24 08          	lea    0x8(%esp),%ecx
43da71:	8b d7                	mov    %edi,%edx
43da73:	8b c3                	mov    %ebx,%eax
43da75:	e8 d2 19 00 00       	call   0x43f44c
43da7a:	8d 54 24 08          	lea    0x8(%esp),%edx
43da7e:	8b c3                	mov    %ebx,%eax
43da80:	66 be d8 ff          	mov    $0xffd8,%si
43da84:	e8 bb 59 fc ff       	call   0x403444
43da89:	8b 15 38 eb 46 00    	mov    0x46eb38,%edx
43da8f:	88 42 54             	mov    %al,0x54(%edx)
43da92:	83 3d 38 eb 46 00 00 	cmpl   $0x0,0x46eb38
43da99:	74 44                	je     0x43dadf
43da9b:	8b 1d 38 eb 46 00    	mov    0x46eb38,%ebx
43daa1:	8d 53 5c             	lea    0x5c(%ebx),%edx
43daa4:	8d 43 44             	lea    0x44(%ebx),%eax
43daa7:	b9 10 00 00 00       	mov    $0x10,%ecx
43daac:	e8 5b a1 fc ff       	call   0x407c0c
43dab1:	84 c0                	test   %al,%al
43dab3:	75 2a                	jne    0x43dadf
43dab5:	80 7c 24 04 00       	cmpb   $0x0,0x4(%esp)
43daba:	74 0a                	je     0x43dac6
43dabc:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43dac1:	8b 10                	mov    (%eax),%edx
43dac3:	ff 52 34             	call   *0x34(%edx)
43dac6:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43dacb:	8b 10                	mov    (%eax),%edx
43dacd:	ff 52 30             	call   *0x30(%edx)
43dad0:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43dad5:	8d 70 44             	lea    0x44(%eax),%esi
43dad8:	8d 78 5c             	lea    0x5c(%eax),%edi
43dadb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43dadc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43dadd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43dade:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43dadf:	83 c4 10             	add    $0x10,%esp
43dae2:	5f                   	pop    %edi
43dae3:	5e                   	pop    %esi
43dae4:	5b                   	pop    %ebx
43dae5:	c3                   	ret
43dae6:	8b c0                	mov    %eax,%eax
43dae8:	53                   	push   %ebx
43dae9:	56                   	push   %esi
43daea:	57                   	push   %edi
43daeb:	83 c4 f8             	add    $0xfffffff8,%esp
43daee:	8b f9                	mov    %ecx,%edi
43daf0:	8b da                	mov    %edx,%ebx
43daf2:	8b f0                	mov    %eax,%esi
43daf4:	89 35 38 eb 46 00    	mov    %esi,0x46eb38
43dafa:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43daff:	33 d2                	xor    %edx,%edx
43db01:	89 50 04             	mov    %edx,0x4(%eax)
43db04:	68 44 eb 46 00       	push   $0x46eb44
43db09:	e8 86 8a fc ff       	call   0x406594
43db0e:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43db13:	8b 15 44 eb 46 00    	mov    0x46eb44,%edx
43db19:	89 50 0c             	mov    %edx,0xc(%eax)
43db1c:	8b 15 48 eb 46 00    	mov    0x46eb48,%edx
43db22:	89 50 10             	mov    %edx,0x10(%eax)
43db25:	e8 62 8a fc ff       	call   0x40658c
43db2a:	a3 4c eb 46 00       	mov    %eax,0x46eb4c
43db2f:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43db34:	e8 db f1 ff ff       	call   0x43cd14
43db39:	a3 40 eb 46 00       	mov    %eax,0x46eb40
43db3e:	89 3d 50 eb 46 00    	mov    %edi,0x46eb50
43db44:	8b c6                	mov    %esi,%eax
43db46:	8b 15 80 a2 43 00    	mov    0x43a280,%edx
43db4c:	e8 83 58 fc ff       	call   0x4033d4
43db51:	84 c0                	test   %al,%al
43db53:	0f 84 8c 00 00 00    	je     0x43dbe5
43db59:	8b d6                	mov    %esi,%edx
43db5b:	8d 42 44             	lea    0x44(%edx),%eax
43db5e:	8b 78 08             	mov    0x8(%eax),%edi
43db61:	8b 08                	mov    (%eax),%ecx
43db63:	2b f9                	sub    %ecx,%edi
43db65:	85 ff                	test   %edi,%edi
43db67:	7e 20                	jle    0x43db89
43db69:	8b 7a 0c             	mov    0xc(%edx),%edi
43db6c:	2b f9                	sub    %ecx,%edi
43db6e:	89 3c 24             	mov    %edi,(%esp)
43db71:	db 04 24             	fildl  (%esp)
43db74:	8b 48 08             	mov    0x8(%eax),%ecx
43db77:	2b 08                	sub    (%eax),%ecx
43db79:	89 4c 24 04          	mov    %ecx,0x4(%esp)
43db7d:	db 44 24 04          	fildl  0x4(%esp)
43db81:	de f9                	fdivrp %st,%st(1)
43db83:	dd 5a 20             	fstpl  0x20(%edx)
43db86:	9b                   	fwait
43db87:	eb 08                	jmp    0x43db91
43db89:	33 c9                	xor    %ecx,%ecx
43db8b:	89 4a 20             	mov    %ecx,0x20(%edx)
43db8e:	89 4a 24             	mov    %ecx,0x24(%edx)
43db91:	8b 48 0c             	mov    0xc(%eax),%ecx
43db94:	8b 50 04             	mov    0x4(%eax),%edx
43db97:	2b ca                	sub    %edx,%ecx
43db99:	85 c9                	test   %ecx,%ecx
43db9b:	7e 23                	jle    0x43dbc0
43db9d:	8b ce                	mov    %esi,%ecx
43db9f:	8b 79 10             	mov    0x10(%ecx),%edi
43dba2:	2b fa                	sub    %edx,%edi
43dba4:	89 3c 24             	mov    %edi,(%esp)
43dba7:	db 04 24             	fildl  (%esp)
43dbaa:	8b 50 0c             	mov    0xc(%eax),%edx
43dbad:	2b 50 04             	sub    0x4(%eax),%edx
43dbb0:	89 54 24 04          	mov    %edx,0x4(%esp)
43dbb4:	db 44 24 04          	fildl  0x4(%esp)
43dbb8:	de f9                	fdivrp %st,%st(1)
43dbba:	dd 59 28             	fstpl  0x28(%ecx)
43dbbd:	9b                   	fwait
43dbbe:	eb 08                	jmp    0x43dbc8
43dbc0:	33 c0                	xor    %eax,%eax
43dbc2:	89 46 28             	mov    %eax,0x28(%esi)
43dbc5:	89 46 2c             	mov    %eax,0x2c(%esi)
43dbc8:	84 db                	test   %bl,%bl
43dbca:	74 10                	je     0x43dbdc
43dbcc:	c6 05 54 eb 46 00 02 	movb   $0x2,0x46eb54
43dbd3:	8b c6                	mov    %esi,%eax
43dbd5:	8b 10                	mov    (%eax),%edx
43dbd7:	ff 52 30             	call   *0x30(%edx)
43dbda:	eb 1d                	jmp    0x43dbf9
43dbdc:	c6 05 54 eb 46 00 00 	movb   $0x0,0x46eb54
43dbe3:	eb 14                	jmp    0x43dbf9
43dbe5:	84 db                	test   %bl,%bl
43dbe7:	74 09                	je     0x43dbf2
43dbe9:	c6 05 54 eb 46 00 01 	movb   $0x1,0x46eb54
43dbf0:	eb 07                	jmp    0x43dbf9
43dbf2:	c6 05 54 eb 46 00 00 	movb   $0x0,0x46eb54
43dbf9:	a1 38 eb 46 00       	mov    0x46eb38,%eax
43dbfe:	8b 10                	mov    (%eax),%edx
43dc00:	ff 52 08             	call   *0x8(%edx)
43dc03:	a3 58 eb 46 00       	mov    %eax,0x46eb58
43dc08:	83 3d 58 eb 46 00 00 	cmpl   $0x0,0x46eb58
43dc0f:	74 1d                	je     0x43dc2e
43dc11:	a1 48 eb 46 00       	mov    0x46eb48,%eax
43dc16:	50                   	push   %eax
43dc17:	e8 90 89 fc ff       	call   0x4065ac
43dc1c:	8b d0                	mov    %eax,%edx
43dc1e:	8b 0d 44 eb 46 00    	mov    0x46eb44,%ecx
43dc24:	a1 58 eb 46 00       	mov    0x46eb58,%eax
43dc29:	e8 e6 9f 00 00       	call   0x447c14
43dc2e:	b2 01                	mov    $0x1,%dl
43dc30:	a1 1c cb 43 00       	mov    0x43cb1c,%eax
43dc35:	e8 de 55 fc ff       	call   0x403218
43dc3a:	a3 60 eb 46 00       	mov    %eax,0x46eb60
43dc3f:	80 3d 54 eb 46 00 00 	cmpb   $0x0,0x46eb54
43dc46:	74 0a                	je     0x43dc52
43dc48:	b8 44 eb 46 00       	mov    $0x46eb44,%eax
43dc4d:	e8 c6 fb ff ff       	call   0x43d818
43dc52:	59                   	pop    %ecx
43dc53:	5a                   	pop    %edx
43dc54:	5f                   	pop    %edi
43dc55:	5e                   	pop    %esi
43dc56:	5b                   	pop    %ebx
43dc57:	c3                   	ret
43dc58:	55                   	push   %ebp
43dc59:	8b ec                	mov    %esp,%ebp
43dc5b:	83 c4 e0             	add    $0xffffffe0,%esp
43dc5e:	53                   	push   %ebx
43dc5f:	56                   	push   %esi
43dc60:	57                   	push   %edi