40f905:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40f909:	85 c9                	test   %ecx,%ecx
40f90b:	74 05                	je     0x40f912
40f90d:	e8 10 84 00 00       	call   0x417d22
40f912:	8b c7                	mov    %edi,%eax
40f914:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40f917:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40f91e:	59                   	pop    %ecx
40f91f:	5f                   	pop    %edi
40f920:	5e                   	pop    %esi
40f921:	c9                   	leave
40f922:	c2 04 00             	ret    $0x4
40f925:	55                   	push   %ebp
40f926:	8b ec                	mov    %esp,%ebp
40f928:	6a ff                	push   $0xffffffff
40f92a:	68 bb d7 48 00       	push   $0x48d7bb
40f92f:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40f935:	50                   	push   %eax
40f936:	51                   	push   %ecx
40f937:	51                   	push   %ecx
40f938:	56                   	push   %esi
40f939:	57                   	push   %edi
40f93a:	a1 94 80 4b 00       	mov    0x4b8094,%eax
40f93f:	33 c5                	xor    %ebp,%eax
40f941:	50                   	push   %eax
40f942:	8d 45 f4             	lea    -0xc(%ebp),%eax
40f945:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40f94b:	8b f9                	mov    %ecx,%edi
40f94d:	8b 45 08             	mov    0x8(%ebp),%eax
40f950:	33 c9                	xor    %ecx,%ecx
40f952:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40f955:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40f958:	8b 10                	mov    (%eax),%edx
40f95a:	8b 70 04             	mov    0x4(%eax),%esi
40f95d:	89 55 ec             	mov    %edx,-0x14(%ebp)
40f960:	89 75 f0             	mov    %esi,-0x10(%ebp)
40f963:	89 08                	mov    %ecx,(%eax)
40f965:	89 48 04             	mov    %ecx,0x4(%eax)
40f968:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40f96b:	8b 07                	mov    (%edi),%eax
40f96d:	89 17                	mov    %edx,(%edi)
40f96f:	8b 4f 04             	mov    0x4(%edi),%ecx
40f972:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40f975:	89 45 ec             	mov    %eax,-0x14(%ebp)
40f978:	89 77 04             	mov    %esi,0x4(%edi)
40f97b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40f97f:	85 c9                	test   %ecx,%ecx
40f981:	74 05                	je     0x40f988
40f983:	e8 9a 83 00 00       	call   0x417d22
40f988:	8b c7                	mov    %edi,%eax
40f98a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40f98d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40f994:	59                   	pop    %ecx
40f995:	5f                   	pop    %edi
40f996:	5e                   	pop    %esi
40f997:	c9                   	leave
40f998:	c2 04 00             	ret    $0x4
40f99b:	55                   	push   %ebp
40f99c:	8b ec                	mov    %esp,%ebp
40f99e:	6a ff                	push   $0xffffffff
40f9a0:	68 de d7 48 00       	push   $0x48d7de
40f9a5:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40f9ab:	50                   	push   %eax
40f9ac:	51                   	push   %ecx
40f9ad:	51                   	push   %ecx
40f9ae:	56                   	push   %esi
40f9af:	57                   	push   %edi
40f9b0:	a1 94 80 4b 00       	mov    0x4b8094,%eax
40f9b5:	33 c5                	xor    %ebp,%eax
40f9b7:	50                   	push   %eax
40f9b8:	8d 45 f4             	lea    -0xc(%ebp),%eax
40f9bb:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40f9c1:	8b f9                	mov    %ecx,%edi
40f9c3:	8b 45 08             	mov    0x8(%ebp),%eax
40f9c6:	33 c9                	xor    %ecx,%ecx
40f9c8:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40f9cb:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40f9ce:	8b 10                	mov    (%eax),%edx
40f9d0:	8b 70 04             	mov    0x4(%eax),%esi
40f9d3:	89 55 ec             	mov    %edx,-0x14(%ebp)
40f9d6:	89 75 f0             	mov    %esi,-0x10(%ebp)
40f9d9:	89 08                	mov    %ecx,(%eax)
40f9db:	89 48 04             	mov    %ecx,0x4(%eax)
40f9de:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40f9e1:	8b 07                	mov    (%edi),%eax
40f9e3:	89 17                	mov    %edx,(%edi)
40f9e5:	8b 4f 04             	mov    0x4(%edi),%ecx
40f9e8:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40f9eb:	89 45 ec             	mov    %eax,-0x14(%ebp)
40f9ee:	89 77 04             	mov    %esi,0x4(%edi)
40f9f1:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40f9f5:	85 c9                	test   %ecx,%ecx
40f9f7:	74 05                	je     0x40f9fe
40f9f9:	e8 24 83 00 00       	call   0x417d22
40f9fe:	8b c7                	mov    %edi,%eax
40fa00:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40fa03:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40fa0a:	59                   	pop    %ecx
40fa0b:	5f                   	pop    %edi
40fa0c:	5e                   	pop    %esi
40fa0d:	c9                   	leave
40fa0e:	c2 04 00             	ret    $0x4
40fa11:	55                   	push   %ebp
40fa12:	8b ec                	mov    %esp,%ebp
40fa14:	6a ff                	push   $0xffffffff
40fa16:	68 01 d8 48 00       	push   $0x48d801
40fa1b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40fa21:	50                   	push   %eax
40fa22:	51                   	push   %ecx
40fa23:	51                   	push   %ecx
40fa24:	56                   	push   %esi
40fa25:	57                   	push   %edi
40fa26:	a1 94 80 4b 00       	mov    0x4b8094,%eax
40fa2b:	33 c5                	xor    %ebp,%eax
40fa2d:	50                   	push   %eax
40fa2e:	8d 45 f4             	lea    -0xc(%ebp),%eax
40fa31:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40fa37:	8b f9                	mov    %ecx,%edi
40fa39:	8b 45 08             	mov    0x8(%ebp),%eax
40fa3c:	33 c9                	xor    %ecx,%ecx
40fa3e:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40fa41:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fa44:	8b 10                	mov    (%eax),%edx
40fa46:	8b 70 04             	mov    0x4(%eax),%esi
40fa49:	89 55 ec             	mov    %edx,-0x14(%ebp)
40fa4c:	89 75 f0             	mov    %esi,-0x10(%ebp)
40fa4f:	89 08                	mov    %ecx,(%eax)
40fa51:	89 48 04             	mov    %ecx,0x4(%eax)
40fa54:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40fa57:	8b 07                	mov    (%edi),%eax
40fa59:	89 17                	mov    %edx,(%edi)
40fa5b:	8b 4f 04             	mov    0x4(%edi),%ecx
40fa5e:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fa61:	89 45 ec             	mov    %eax,-0x14(%ebp)
40fa64:	89 77 04             	mov    %esi,0x4(%edi)
40fa67:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40fa6b:	85 c9                	test   %ecx,%ecx
40fa6d:	74 05                	je     0x40fa74
40fa6f:	e8 ae 82 00 00       	call   0x417d22
40fa74:	8b c7                	mov    %edi,%eax
40fa76:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40fa79:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40fa80:	59                   	pop    %ecx
40fa81:	5f                   	pop    %edi
40fa82:	5e                   	pop    %esi
40fa83:	c9                   	leave
40fa84:	c2 04 00             	ret    $0x4
40fa87:	55                   	push   %ebp
40fa88:	8b ec                	mov    %esp,%ebp
40fa8a:	6a ff                	push   $0xffffffff
40fa8c:	68 24 d8 48 00       	push   $0x48d824
40fa91:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40fa97:	50                   	push   %eax
40fa98:	51                   	push   %ecx
40fa99:	51                   	push   %ecx
40fa9a:	56                   	push   %esi
40fa9b:	57                   	push   %edi
40fa9c:	a1 94 80 4b 00       	mov    0x4b8094,%eax
40faa1:	33 c5                	xor    %ebp,%eax
40faa3:	50                   	push   %eax
40faa4:	8d 45 f4             	lea    -0xc(%ebp),%eax
40faa7:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40faad:	8b f9                	mov    %ecx,%edi
40faaf:	8b 45 08             	mov    0x8(%ebp),%eax
40fab2:	33 c9                	xor    %ecx,%ecx
40fab4:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40fab7:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40faba:	8b 10                	mov    (%eax),%edx
40fabc:	8b 70 04             	mov    0x4(%eax),%esi
40fabf:	89 55 ec             	mov    %edx,-0x14(%ebp)
40fac2:	89 75 f0             	mov    %esi,-0x10(%ebp)
40fac5:	89 08                	mov    %ecx,(%eax)
40fac7:	89 48 04             	mov    %ecx,0x4(%eax)
40faca:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40facd:	8b 07                	mov    (%edi),%eax
40facf:	89 17                	mov    %edx,(%edi)
40fad1:	8b 4f 04             	mov    0x4(%edi),%ecx
40fad4:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fad7:	89 45 ec             	mov    %eax,-0x14(%ebp)
40fada:	89 77 04             	mov    %esi,0x4(%edi)
40fadd:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40fae1:	85 c9                	test   %ecx,%ecx
40fae3:	74 05                	je     0x40faea
40fae5:	e8 38 82 00 00       	call   0x417d22
40faea:	8b c7                	mov    %edi,%eax
40faec:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40faef:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40faf6:	59                   	pop    %ecx
40faf7:	5f                   	pop    %edi
40faf8:	5e                   	pop    %esi
40faf9:	c9                   	leave
40fafa:	c2 04 00             	ret    $0x4
40fafd:	55                   	push   %ebp
40fafe:	8b ec                	mov    %esp,%ebp
40fb00:	6a ff                	push   $0xffffffff
40fb02:	68 47 d8 48 00       	push   $0x48d847
40fb07:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40fb0d:	50                   	push   %eax
40fb0e:	51                   	push   %ecx
40fb0f:	51                   	push   %ecx
40fb10:	56                   	push   %esi
40fb11:	57                   	push   %edi
40fb12:	a1 94 80 4b 00       	mov    0x4b8094,%eax
40fb17:	33 c5                	xor    %ebp,%eax
40fb19:	50                   	push   %eax
40fb1a:	8d 45 f4             	lea    -0xc(%ebp),%eax
40fb1d:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40fb23:	8b f9                	mov    %ecx,%edi
40fb25:	8b 45 08             	mov    0x8(%ebp),%eax
40fb28:	33 c9                	xor    %ecx,%ecx
40fb2a:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40fb2d:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fb30:	8b 10                	mov    (%eax),%edx
40fb32:	8b 70 04             	mov    0x4(%eax),%esi
40fb35:	89 55 ec             	mov    %edx,-0x14(%ebp)
40fb38:	89 75 f0             	mov    %esi,-0x10(%ebp)
40fb3b:	89 08                	mov    %ecx,(%eax)
40fb3d:	89 48 04             	mov    %ecx,0x4(%eax)
40fb40:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40fb43:	8b 07                	mov    (%edi),%eax
40fb45:	89 17                	mov    %edx,(%edi)
40fb47:	8b 4f 04             	mov    0x4(%edi),%ecx
40fb4a:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fb4d:	89 45 ec             	mov    %eax,-0x14(%ebp)
40fb50:	89 77 04             	mov    %esi,0x4(%edi)
40fb53:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40fb57:	85 c9                	test   %ecx,%ecx
40fb59:	74 05                	je     0x40fb60
40fb5b:	e8 c2 81 00 00       	call   0x417d22
40fb60:	8b c7                	mov    %edi,%eax
40fb62:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40fb65:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40fb6c:	59                   	pop    %ecx
40fb6d:	5f                   	pop    %edi
40fb6e:	5e                   	pop    %esi
40fb6f:	c9                   	leave
40fb70:	c2 04 00             	ret    $0x4
40fb73:	55                   	push   %ebp
40fb74:	8b ec                	mov    %esp,%ebp
40fb76:	6a ff                	push   $0xffffffff
40fb78:	68 6a d8 48 00       	push   $0x48d86a
40fb7d:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40fb83:	50                   	push   %eax
40fb84:	51                   	push   %ecx
40fb85:	51                   	push   %ecx
40fb86:	56                   	push   %esi
40fb87:	57                   	push   %edi
40fb88:	a1 94 80 4b 00       	mov    0x4b8094,%eax
40fb8d:	33 c5                	xor    %ebp,%eax
40fb8f:	50                   	push   %eax
40fb90:	8d 45 f4             	lea    -0xc(%ebp),%eax
40fb93:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40fb99:	8b f9                	mov    %ecx,%edi
40fb9b:	8b 45 08             	mov    0x8(%ebp),%eax
40fb9e:	33 c9                	xor    %ecx,%ecx
40fba0:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40fba3:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fba6:	8b 10                	mov    (%eax),%edx
40fba8:	8b 70 04             	mov    0x4(%eax),%esi
40fbab:	89 55 ec             	mov    %edx,-0x14(%ebp)
40fbae:	89 75 f0             	mov    %esi,-0x10(%ebp)
40fbb1:	89 08                	mov    %ecx,(%eax)
40fbb3:	89 48 04             	mov    %ecx,0x4(%eax)
40fbb6:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40fbb9:	8b 07                	mov    (%edi),%eax
40fbbb:	89 17                	mov    %edx,(%edi)
40fbbd:	8b 4f 04             	mov    0x4(%edi),%ecx
40fbc0:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fbc3:	89 45 ec             	mov    %eax,-0x14(%ebp)
40fbc6:	89 77 04             	mov    %esi,0x4(%edi)
40fbc9:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40fbcd:	85 c9                	test   %ecx,%ecx
40fbcf:	74 05                	je     0x40fbd6
40fbd1:	e8 4c 81 00 00       	call   0x417d22
40fbd6:	8b c7                	mov    %edi,%eax
40fbd8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40fbdb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40fbe2:	59                   	pop    %ecx
40fbe3:	5f                   	pop    %edi
40fbe4:	5e                   	pop    %esi
40fbe5:	c9                   	leave
40fbe6:	c2 04 00             	ret    $0x4
40fbe9:	55                   	push   %ebp
40fbea:	8b ec                	mov    %esp,%ebp
40fbec:	6a ff                	push   $0xffffffff
40fbee:	68 8d d8 48 00       	push   $0x48d88d
40fbf3:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40fbf9:	50                   	push   %eax
40fbfa:	51                   	push   %ecx
40fbfb:	51                   	push   %ecx
40fbfc:	56                   	push   %esi
40fbfd:	57                   	push   %edi
40fbfe:	a1 94 80 4b 00       	mov    0x4b8094,%eax
40fc03:	33 c5                	xor    %ebp,%eax
40fc05:	50                   	push   %eax
40fc06:	8d 45 f4             	lea    -0xc(%ebp),%eax
40fc09:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40fc0f:	8b f9                	mov    %ecx,%edi
40fc11:	8b 45 08             	mov    0x8(%ebp),%eax
40fc14:	33 c9                	xor    %ecx,%ecx
40fc16:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40fc19:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fc1c:	8b 10                	mov    (%eax),%edx
40fc1e:	8b 70 04             	mov    0x4(%eax),%esi
40fc21:	89 55 ec             	mov    %edx,-0x14(%ebp)
40fc24:	89 75 f0             	mov    %esi,-0x10(%ebp)
40fc27:	89 08                	mov    %ecx,(%eax)
40fc29:	89 48 04             	mov    %ecx,0x4(%eax)
40fc2c:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40fc2f:	8b 07                	mov    (%edi),%eax
40fc31:	89 17                	mov    %edx,(%edi)
40fc33:	8b 4f 04             	mov    0x4(%edi),%ecx
40fc36:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40fc39:	89 45 ec             	mov    %eax,-0x14(%ebp)
40fc3c:	89 77 04             	mov    %esi,0x4(%edi)
40fc3f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40fc43:	85 c9                	test   %ecx,%ecx
40fc45:	74 05                	je     0x40fc4c
40fc47:	e8 d6 80 00 00       	call   0x417d22
40fc4c:	8b c7                	mov    %edi,%eax
40fc4e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40fc51:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40fc58:	59                   	pop    %ecx
40fc59:	5f                   	pop    %edi
40fc5a:	5e                   	pop    %esi
40fc5b:	c9                   	leave
40fc5c:	c2 04 00             	ret    $0x4
40fc5f:	55                   	push   %ebp
40fc60:	8b ec                	mov    %esp,%ebp
40fc62:	56                   	push   %esi
40fc63:	57                   	push   %edi
40fc64:	8b 7d 08             	mov    0x8(%ebp),%edi
40fc67:	8b f1                	mov    %ecx,%esi
40fc69:	3b f7                	cmp    %edi,%esi
40fc6b:	74 13                	je     0x40fc80
40fc6d:	ff 75 08             	push   0x8(%ebp)
40fc70:	ff 77 04             	push   0x4(%edi)
40fc73:	ff 37                	push   (%edi)
40fc75:	e8 62 2a ff ff       	call   0x4026dc
40fc7a:	8b 47 0c             	mov    0xc(%edi),%eax
40fc7d:	89 46 0c             	mov    %eax,0xc(%esi)
40fc80:	5f                   	pop    %edi
40fc81:	8b c6                	mov    %esi,%eax
40fc83:	5e                   	pop    %esi
40fc84:	5d                   	pop    %ebp
40fc85:	c2 04 00             	ret    $0x4
40fc88:	55                   	push   %ebp
40fc89:	8b ec                	mov    %esp,%ebp
40fc8b:	8b 41 08             	mov    0x8(%ecx),%eax
40fc8e:	83 ec 18             	sub    $0x18,%esp