41dcb3:	89 77 04             	mov    %esi,0x4(%edi)
41dcb6:	8d 04 c6             	lea    (%esi,%eax,8),%eax
41dcb9:	89 47 0c             	mov    %eax,0xc(%edi)
41dcbc:	8d 43 01             	lea    0x1(%ebx),%eax
41dcbf:	8d 04 c6             	lea    (%esi,%eax,8),%eax
41dcc2:	89 47 08             	mov    %eax,0x8(%edi)
41dcc5:	e9 b6 00 00 00       	jmp    0x41dd80
41dcca:	8b 57 08             	mov    0x8(%edi),%edx
41dccd:	8b c2                	mov    %edx,%eax
41dccf:	8b 4d 08             	mov    0x8(%ebp),%ecx
41dcd2:	2b c1                	sub    %ecx,%eax
41dcd4:	c1 f8 03             	sar    $0x3,%eax
41dcd7:	89 55 fc             	mov    %edx,-0x4(%ebp)
41dcda:	3b c6                	cmp    %esi,%eax
41dcdc:	73 4d                	jae    0x41dd2b
41dcde:	8b c2                	mov    %edx,%eax
41dce0:	2b c1                	sub    %ecx,%eax
41dce2:	c1 f8 03             	sar    $0x3,%eax
41dce5:	2b f0                	sub    %eax,%esi
41dce7:	74 1c                	je     0x41dd05
41dce9:	8d 0c f5 fb ff ff ff 	lea    -0x5(,%esi,8),%ecx
41dcf0:	8b f2                	mov    %edx,%esi
41dcf2:	dd 12                	fstl   (%edx)
41dcf4:	c1 e9 02             	shr    $0x2,%ecx
41dcf7:	8d 7a 08             	lea    0x8(%edx),%edi
41dcfa:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41dcfc:	8b 7d f8             	mov    -0x8(%ebp),%edi
41dcff:	8b 4d 08             	mov    0x8(%ebp),%ecx
41dd02:	8b 57 08             	mov    0x8(%edi),%edx
41dd05:	8d 42 08             	lea    0x8(%edx),%eax
41dd08:	89 47 08             	mov    %eax,0x8(%edi)
41dd0b:	8b c2                	mov    %edx,%eax
41dd0d:	2b c1                	sub    %ecx,%eax
41dd0f:	83 c0 07             	add    $0x7,%eax
41dd12:	c1 e8 03             	shr    $0x3,%eax
41dd15:	3b d1                	cmp    %ecx,%edx
41dd17:	1b d2                	sbb    %edx,%edx
41dd19:	f7 d2                	not    %edx
41dd1b:	23 d0                	and    %eax,%edx
41dd1d:	74 5f                	je     0x41dd7e
41dd1f:	dd 11                	fstl   (%ecx)
41dd21:	83 c1 08             	add    $0x8,%ecx
41dd24:	43                   	inc    %ebx
41dd25:	3b da                	cmp    %edx,%ebx
41dd27:	75 f6                	jne    0x41dd1f
41dd29:	eb 53                	jmp    0x41dd7e
41dd2b:	6a 08                	push   $0x8
41dd2d:	8d 5a f8             	lea    -0x8(%edx),%ebx
41dd30:	dd d8                	fstp   %st(0)
41dd32:	53                   	push   %ebx
41dd33:	6a 08                	push   $0x8
41dd35:	52                   	push   %edx
41dd36:	8d 72 08             	lea    0x8(%edx),%esi
41dd39:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41dd3f:	8b 4d 08             	mov    0x8(%ebp),%ecx
41dd42:	83 c4 10             	add    $0x10,%esp
41dd45:	2b d9                	sub    %ecx,%ebx
41dd47:	89 77 08             	mov    %esi,0x8(%edi)
41dd4a:	c1 fb 03             	sar    $0x3,%ebx
41dd4d:	85 db                	test   %ebx,%ebx
41dd4f:	7e 1a                	jle    0x41dd6b
41dd51:	8b c3                	mov    %ebx,%eax
41dd53:	c1 e0 03             	shl    $0x3,%eax
41dd56:	50                   	push   %eax
41dd57:	51                   	push   %ecx
41dd58:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41dd5b:	50                   	push   %eax
41dd5c:	2b c8                	sub    %eax,%ecx
41dd5e:	51                   	push   %ecx
41dd5f:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41dd65:	8b 4d 08             	mov    0x8(%ebp),%ecx
41dd68:	83 c4 10             	add    $0x10,%esp
41dd6b:	8d 41 08             	lea    0x8(%ecx),%eax
41dd6e:	3b c8                	cmp    %eax,%ecx
41dd70:	74 0e                	je     0x41dd80
41dd72:	dd 45 f0             	fldl   -0x10(%ebp)
41dd75:	dd 11                	fstl   (%ecx)
41dd77:	83 c1 08             	add    $0x8,%ecx
41dd7a:	3b c8                	cmp    %eax,%ecx
41dd7c:	75 f7                	jne    0x41dd75
41dd7e:	dd d8                	fstp   %st(0)
41dd80:	5f                   	pop    %edi
41dd81:	5e                   	pop    %esi
41dd82:	5b                   	pop    %ebx
41dd83:	c9                   	leave
41dd84:	c2 0c 00             	ret    $0xc
41dd87:	dd d8                	fstp   %st(0)
41dd89:	e8 a4 fb ff ff       	call   0x41d932
41dd8e:	cc                   	int3
41dd8f:	cc                   	int3
41dd90:	6a 01                	push   $0x1
41dd92:	ff 71 20             	push   0x20(%ecx)
41dd95:	ff 15 40 7d 4a 00    	call   *0x4a7d40
41dd9b:	c3                   	ret
41dd9c:	cc                   	int3
41dd9d:	cc                   	int3
41dd9e:	cc                   	int3
41dd9f:	cc                   	int3
41dda0:	6a 00                	push   $0x0
41dda2:	ff 71 20             	push   0x20(%ecx)
41dda5:	ff 15 40 7d 4a 00    	call   *0x4a7d40
41ddab:	c3                   	ret
41ddac:	cc                   	int3
41ddad:	cc                   	int3
41ddae:	cc                   	int3
41ddaf:	cc                   	int3
41ddb0:	c2 00 00             	ret    $0x0
41ddb3:	8b ff                	mov    %edi,%edi
41ddb5:	55                   	push   %ebp
41ddb6:	8b ec                	mov    %esp,%ebp
41ddb8:	53                   	push   %ebx
41ddb9:	56                   	push   %esi
41ddba:	57                   	push   %edi
41ddbb:	8b 7d 08             	mov    0x8(%ebp),%edi
41ddbe:	8b f1                	mov    %ecx,%esi
41ddc0:	57                   	push   %edi
41ddc1:	ff 76 20             	push   0x20(%esi)
41ddc4:	ff 15 fc 7d 4a 00    	call   *0x4a7dfc
41ddca:	8d 5f 08             	lea    0x8(%edi),%ebx
41ddcd:	53                   	push   %ebx
41ddce:	ff 76 20             	push   0x20(%esi)
41ddd1:	ff 15 fc 7d 4a 00    	call   *0x4a7dfc
41ddd7:	8b ce                	mov    %esi,%ecx
41ddd9:	ff 15 4c 74 4a 00    	call   *0x4a744c
41dddf:	a9 00 00 40 00       	test   $0x400000,%eax
41dde4:	74 08                	je     0x41ddee
41dde6:	8b 0f                	mov    (%edi),%ecx
41dde8:	8b 03                	mov    (%ebx),%eax
41ddea:	89 07                	mov    %eax,(%edi)
41ddec:	89 0b                	mov    %ecx,(%ebx)
41ddee:	5f                   	pop    %edi
41ddef:	5e                   	pop    %esi
41ddf0:	5b                   	pop    %ebx
41ddf1:	5d                   	pop    %ebp
41ddf2:	c2 04 00             	ret    $0x4
41ddf5:	8b ff                	mov    %edi,%edi
41ddf7:	55                   	push   %ebp
41ddf8:	8b ec                	mov    %esp,%ebp
41ddfa:	8b 55 08             	mov    0x8(%ebp),%edx
41ddfd:	8b 01                	mov    (%ecx),%eax
41ddff:	66 8b 08             	mov    (%eax),%cx
41de02:	66 3b 0a             	cmp    (%edx),%cx
41de05:	75 1e                	jne    0x41de25
41de07:	66 85 c9             	test   %cx,%cx
41de0a:	74 15                	je     0x41de21
41de0c:	66 8b 48 02          	mov    0x2(%eax),%cx
41de10:	66 3b 4a 02          	cmp    0x2(%edx),%cx
41de14:	75 0f                	jne    0x41de25
41de16:	83 c0 04             	add    $0x4,%eax
41de19:	83 c2 04             	add    $0x4,%edx
41de1c:	66 85 c9             	test   %cx,%cx
41de1f:	75 de                	jne    0x41ddff
41de21:	33 c0                	xor    %eax,%eax
41de23:	eb 05                	jmp    0x41de2a
41de25:	1b c0                	sbb    %eax,%eax
41de27:	83 c8 01             	or     $0x1,%eax
41de2a:	5d                   	pop    %ebp
41de2b:	c2 04 00             	ret    $0x4
41de2e:	8b ff                	mov    %edi,%edi
41de30:	55                   	push   %ebp
41de31:	8b ec                	mov    %esp,%ebp
41de33:	6a ff                	push   $0xffffffff
41de35:	68 85 10 49 00       	push   $0x491085
41de3a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41de40:	50                   	push   %eax
41de41:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
41de46:	33 c5                	xor    %ebp,%eax
41de48:	50                   	push   %eax
41de49:	8d 45 f4             	lea    -0xc(%ebp),%eax
41de4c:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41de52:	ff 15 3c 74 4a 00    	call   *0x4a743c
41de58:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41de5b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41de62:	59                   	pop    %ecx
41de63:	c9                   	leave
41de64:	c3                   	ret
41de65:	8b ff                	mov    %edi,%edi
41de67:	56                   	push   %esi
41de68:	8b f1                	mov    %ecx,%esi
41de6a:	8b 46 04             	mov    0x4(%esi),%eax
41de6d:	3b 46 08             	cmp    0x8(%esi),%eax
41de70:	74 03                	je     0x41de75
41de72:	89 46 08             	mov    %eax,0x8(%esi)
41de75:	8b 46 14             	mov    0x14(%esi),%eax
41de78:	8d 4e 10             	lea    0x10(%esi),%ecx
41de7b:	3b 46 18             	cmp    0x18(%esi),%eax
41de7e:	74 03                	je     0x41de83
41de80:	89 46 18             	mov    %eax,0x18(%esi)
41de83:	e8 88 fa ff ff       	call   0x41d910
41de88:	8b ce                	mov    %esi,%ecx
41de8a:	5e                   	pop    %esi
41de8b:	e9 80 fa ff ff       	jmp    0x41d910
41de90:	8b ff                	mov    %edi,%edi
41de92:	55                   	push   %ebp
41de93:	8b ec                	mov    %esp,%ebp
41de95:	51                   	push   %ecx
41de96:	51                   	push   %ecx
41de97:	53                   	push   %ebx
41de98:	8b 5d 08             	mov    0x8(%ebp),%ebx
41de9b:	56                   	push   %esi
41de9c:	57                   	push   %edi
41de9d:	8b f9                	mov    %ecx,%edi
41de9f:	3b fb                	cmp    %ebx,%edi
41dea1:	0f 84 4c 01 00 00    	je     0x41dff3
41dea7:	8b 4b 04             	mov    0x4(%ebx),%ecx
41deaa:	85 c9                	test   %ecx,%ecx
41deac:	0f 84 36 01 00 00    	je     0x41dfe8
41deb2:	8b 43 08             	mov    0x8(%ebx),%eax
41deb5:	8b d0                	mov    %eax,%edx
41deb7:	2b d1                	sub    %ecx,%edx
41deb9:	c1 fa 02             	sar    $0x2,%edx
41debc:	89 55 fc             	mov    %edx,-0x4(%ebp)
41debf:	85 d2                	test   %edx,%edx
41dec1:	0f 84 21 01 00 00    	je     0x41dfe8
41dec7:	8b 57 04             	mov    0x4(%edi),%edx
41deca:	33 f6                	xor    %esi,%esi
41decc:	85 d2                	test   %edx,%edx
41dece:	75 05                	jne    0x41ded5
41ded0:	89 75 f8             	mov    %esi,-0x8(%ebp)
41ded3:	eb 0b                	jmp    0x41dee0
41ded5:	8b 5f 08             	mov    0x8(%edi),%ebx
41ded8:	2b da                	sub    %edx,%ebx
41deda:	c1 fb 02             	sar    $0x2,%ebx
41dedd:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41dee0:	8b 5d f8             	mov    -0x8(%ebp),%ebx
41dee3:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
41dee6:	8b 5d 08             	mov    0x8(%ebp),%ebx
41dee9:	77 31                	ja     0x41df1c
41deeb:	8b 45 fc             	mov    -0x4(%ebp),%eax
41deee:	85 c0                	test   %eax,%eax
41def0:	7e 16                	jle    0x41df08
41def2:	c1 e0 02             	shl    $0x2,%eax
41def5:	50                   	push   %eax
41def6:	51                   	push   %ecx
41def7:	50                   	push   %eax
41def8:	52                   	push   %edx
41def9:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41deff:	8b 4b 04             	mov    0x4(%ebx),%ecx
41df02:	83 c4 10             	add    $0x10,%esp
41df05:	8b 57 04             	mov    0x4(%edi),%edx
41df08:	85 c9                	test   %ecx,%ecx
41df0a:	74 08                	je     0x41df14
41df0c:	8b 73 08             	mov    0x8(%ebx),%esi
41df0f:	2b f1                	sub    %ecx,%esi
41df11:	c1 fe 02             	sar    $0x2,%esi
41df14:	8d 04 b2             	lea    (%edx,%esi,4),%eax
41df17:	e9 d4 00 00 00       	jmp    0x41dff0
41df1c:	85 d2                	test   %edx,%edx
41df1e:	75 05                	jne    0x41df25
41df20:	89 75 f8             	mov    %esi,-0x8(%ebp)
41df23:	eb 0b                	jmp    0x41df30
41df25:	8b 5f 0c             	mov    0xc(%edi),%ebx
41df28:	2b da                	sub    %edx,%ebx
41df2a:	c1 fb 02             	sar    $0x2,%ebx
41df2d:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41df30:	8b 5d f8             	mov    -0x8(%ebp),%ebx
41df33:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
41df36:	8b 5d 08             	mov    0x8(%ebp),%ebx
41df39:	77 57                	ja     0x41df92
41df3b:	85 d2                	test   %edx,%edx
41df3d:	74 08                	je     0x41df47
41df3f:	8b 77 08             	mov    0x8(%edi),%esi
41df42:	2b f2                	sub    %edx,%esi
41df44:	c1 fe 02             	sar    $0x2,%esi
41df47:	8d 1c b1             	lea    (%ecx,%esi,4),%ebx
41df4a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41df4d:	8b 5d 08             	mov    0x8(%ebp),%ebx
41df50:	85 f6                	test   %esi,%esi
41df52:	7e 15                	jle    0x41df69
41df54:	8b c6                	mov    %esi,%eax
41df56:	c1 e0 02             	shl    $0x2,%eax
41df59:	50                   	push   %eax
41df5a:	51                   	push   %ecx
41df5b:	50                   	push   %eax
41df5c:	52                   	push   %edx
41df5d:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41df63:	8b 43 08             	mov    0x8(%ebx),%eax
41df66:	83 c4 10             	add    $0x10,%esp
41df69:	8b 5d f8             	mov    -0x8(%ebp),%ebx
41df6c:	2b c3                	sub    %ebx,%eax
41df6e:	8b 57 08             	mov    0x8(%edi),%edx
41df71:	c1 f8 02             	sar    $0x2,%eax
41df74:	8b c8                	mov    %eax,%ecx
41df76:	c1 e1 02             	shl    $0x2,%ecx
41df79:	8d 34 11             	lea    (%ecx,%edx,1),%esi
41df7c:	85 c0                	test   %eax,%eax
41df7e:	74 0d                	je     0x41df8d
41df80:	51                   	push   %ecx
41df81:	53                   	push   %ebx
41df82:	51                   	push   %ecx
41df83:	52                   	push   %edx
41df84:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41df8a:	83 c4 10             	add    $0x10,%esp
41df8d:	89 77 08             	mov    %esi,0x8(%edi)
41df90:	eb 61                	jmp    0x41dff3
41df92:	85 d2                	test   %edx,%edx
41df94:	74 0b                	je     0x41dfa1
41df96:	52                   	push   %edx
41df97:	ff 15 10 74 4a 00    	call   *0x4a7410
41df9d:	59                   	pop    %ecx
41df9e:	8b 4b 04             	mov    0x4(%ebx),%ecx
41dfa1:	85 c9                	test   %ecx,%ecx
41dfa3:	75 04                	jne    0x41dfa9
41dfa5:	8b c6                	mov    %esi,%eax
41dfa7:	eb 08                	jmp    0x41dfb1
41dfa9:	8b 43 08             	mov    0x8(%ebx),%eax
41dfac:	2b c1                	sub    %ecx,%eax
41dfae:	c1 f8 02             	sar    $0x2,%eax
41dfb1:	89 77 04             	mov    %esi,0x4(%edi)
41dfb4:	89 77 08             	mov    %esi,0x8(%edi)
41dfb7:	89 77 0c             	mov    %esi,0xc(%edi)
41dfba:	85 c0                	test   %eax,%eax
41dfbc:	74 35                	je     0x41dff3
41dfbe:	50                   	push   %eax
41dfbf:	8b cf                	mov    %edi,%ecx
41dfc1:	e8 7b 00 00 00       	call   0x41e041
41dfc6:	84 c0                	test   %al,%al
41dfc8:	74 29                	je     0x41dff3
41dfca:	8b 43 08             	mov    0x8(%ebx),%eax
41dfcd:	2b 43 04             	sub    0x4(%ebx),%eax
41dfd0:	8b 57 04             	mov    0x4(%edi),%edx
41dfd3:	c1 f8 02             	sar    $0x2,%eax
41dfd6:	8b c8                	mov    %eax,%ecx
41dfd8:	c1 e1 02             	shl    $0x2,%ecx
41dfdb:	8d 34 11             	lea    (%ecx,%edx,1),%esi
41dfde:	85 c0                	test   %eax,%eax
41dfe0:	74 ab                	je     0x41df8d
41dfe2:	51                   	push   %ecx
41dfe3:	ff 73 04             	push   0x4(%ebx)
41dfe6:	eb 9a                	jmp    0x41df82
41dfe8:	8b 47 04             	mov    0x4(%edi),%eax
41dfeb:	3b 47 08             	cmp    0x8(%edi),%eax
41dfee:	74 03                	je     0x41dff3
41dff0:	89 47 08             	mov    %eax,0x8(%edi)
41dff3:	8b c7                	mov    %edi,%eax
41dff5:	5f                   	pop    %edi
41dff6:	5e                   	pop    %esi
41dff7:	5b                   	pop    %ebx
41dff8:	c9                   	leave
41dff9:	c2 04 00             	ret    $0x4
41dffc:	8b ff                	mov    %edi,%edi
41dffe:	55                   	push   %ebp
41dfff:	8b ec                	mov    %esp,%ebp
41e001:	8b 4d 08             	mov    0x8(%ebp),%ecx
41e004:	83 ec 0c             	sub    $0xc,%esp
41e007:	85 c9                	test   %ecx,%ecx
41e009:	75 11                	jne    0x41e01c
41e00b:	8b c1                	mov    %ecx,%eax
41e00d:	c1 e0 02             	shl    $0x2,%eax
41e010:	50                   	push   %eax