4157d6:	83 c4 0c             	add    $0xc,%esp
4157d9:	8b 5d d0             	mov    -0x30(%ebp),%ebx
4157dc:	83 c3 0c             	add    $0xc,%ebx
4157df:	89 5d a4             	mov    %ebx,-0x5c(%ebp)
4157e2:	8b 5d c8             	mov    -0x38(%ebp),%ebx
4157e5:	83 c3 0c             	add    $0xc,%ebx
4157e8:	89 5d a0             	mov    %ebx,-0x60(%ebp)
4157eb:	8b 5d a0             	mov    -0x60(%ebp),%ebx
4157ee:	d9 03                	flds   (%ebx)
4157f0:	dc 05 82 44 4e 00    	faddl  0x4e4482
4157f6:	dd 5d 98             	fstpl  -0x68(%ebp)
4157f9:	dd 45 98             	fldl   -0x68(%ebp)
4157fc:	d9 5d 94             	fstps  -0x6c(%ebp)
4157ff:	8b 45 94             	mov    -0x6c(%ebp),%eax
415802:	8b 5d a4             	mov    -0x5c(%ebp),%ebx
415805:	89 03                	mov    %eax,(%ebx)
415807:	83 7d 30 00          	cmpl   $0x0,0x30(%ebp)
41580b:	0f 85 dc 07 00 00    	jne    0x415fed
415811:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415814:	8b 1b                	mov    (%ebx),%ebx
415816:	53                   	push   %ebx
415817:	8b 0b                	mov    (%ebx),%ecx
415819:	83 c3 04             	add    $0x4,%ebx
41581c:	85 c9                	test   %ecx,%ecx
41581e:	74 11                	je     0x415831
415820:	8b 03                	mov    (%ebx),%eax
415822:	83 c3 04             	add    $0x4,%ebx
415825:	49                   	dec    %ecx
415826:	74 05                	je     0x41582d
415828:	0f af 03             	imul   (%ebx),%eax
41582b:	eb f5                	jmp    0x415822
41582d:	8b c8                	mov    %eax,%ecx
41582f:	85 c9                	test   %ecx,%ecx
415831:	0f 84 19 00 00 00    	je     0x415850
415837:	51                   	push   %ecx
415838:	8b 03                	mov    (%ebx),%eax
41583a:	85 c0                	test   %eax,%eax
41583c:	74 0b                	je     0x415849
41583e:	53                   	push   %ebx
41583f:	50                   	push   %eax
415840:	e8 5f ad 08 00       	call   0x4a05a4
415845:	83 c4 04             	add    $0x4,%esp
415848:	5b                   	pop    %ebx
415849:	83 c3 04             	add    $0x4,%ebx
41584c:	59                   	pop    %ecx
41584d:	49                   	dec    %ecx
41584e:	75 e7                	jne    0x415837
415850:	e8 4f ad 08 00       	call   0x4a05a4
415855:	83 c4 04             	add    $0x4,%esp
415858:	b8 51 34 4c 00       	mov    $0x4c3451,%eax
41585d:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415860:	89 03                	mov    %eax,(%ebx)
415862:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
415866:	0f 85 93 00 00 00    	jne    0x4158ff
41586c:	ff 75 2c             	push   0x2c(%ebp)
41586f:	6a 04                	push   $0x4
415871:	b8 02 00 00 00       	mov    $0x2,%eax
415876:	e8 f5 b5 08 00       	call   0x4a0e70
41587b:	83 c4 08             	add    $0x8,%esp
41587e:	b8 8a 44 4e 00       	mov    $0x4e448a,%eax
415883:	89 45 a4             	mov    %eax,-0x5c(%ebp)
415886:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415889:	8b 1b                	mov    (%ebx),%ebx
41588b:	89 5d a0             	mov    %ebx,-0x60(%ebp)
41588e:	e8 60 de fe ff       	call   0x4036f3
415893:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
415896:	8b 7d a0             	mov    -0x60(%ebp),%edi
415899:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
41589f:	83 c7 04             	add    $0x4,%edi
4158a2:	8b c1                	mov    %ecx,%eax
4158a4:	40                   	inc    %eax
4158a5:	89 07                	mov    %eax,(%edi)
4158a7:	83 c7 04             	add    $0x4,%edi
4158aa:	3b fb                	cmp    %ebx,%edi
4158ac:	74 04                	je     0x4158b2
4158ae:	8b f3                	mov    %ebx,%esi
4158b0:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4158b2:	8b 45 9c             	mov    -0x64(%ebp),%eax
4158b5:	40                   	inc    %eax
4158b6:	c1 e0 02             	shl    $0x2,%eax
4158b9:	83 c0 08             	add    $0x8,%eax
4158bc:	50                   	push   %eax
4158bd:	ff 75 a0             	push   -0x60(%ebp)
4158c0:	e8 eb ac 08 00       	call   0x4a05b0
4158c5:	83 c4 08             	add    $0x8,%esp
4158c8:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
4158cb:	89 03                	mov    %eax,(%ebx)
4158cd:	8b f8                	mov    %eax,%edi
4158cf:	83 c7 08             	add    $0x8,%edi
4158d2:	8b 45 9c             	mov    -0x64(%ebp),%eax
4158d5:	c1 e0 02             	shl    $0x2,%eax
4158d8:	03 f8                	add    %eax,%edi
4158da:	8b 45 a4             	mov    -0x5c(%ebp),%eax
4158dd:	57                   	push   %edi
4158de:	85 c0                	test   %eax,%eax
4158e0:	74 15                	je     0x4158f7
4158e2:	50                   	push   %eax
4158e3:	8b d8                	mov    %eax,%ebx
4158e5:	e8 3a 01 ff ff       	call   0x405a24
4158ea:	40                   	inc    %eax
4158eb:	50                   	push   %eax
4158ec:	e8 ad ac 08 00       	call   0x4a059e
4158f1:	59                   	pop    %ecx
4158f2:	5e                   	pop    %esi
4158f3:	8b f8                	mov    %eax,%edi
4158f5:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
4158f7:	5f                   	pop    %edi
4158f8:	89 07                	mov    %eax,(%edi)
4158fa:	e9 ee 06 00 00       	jmp    0x415fed
4158ff:	83 7d 14 01          	cmpl   $0x1,0x14(%ebp)
415903:	0f 85 21 01 00 00    	jne    0x415a2a
415909:	ff 75 2c             	push   0x2c(%ebp)
41590c:	6a 04                	push   $0x4
41590e:	b8 02 00 00 00       	mov    $0x2,%eax
415913:	e8 58 b5 08 00       	call   0x4a0e70
415918:	83 c4 08             	add    $0x8,%esp
41591b:	b8 8f 44 4e 00       	mov    $0x4e448f,%eax
415920:	89 45 a4             	mov    %eax,-0x5c(%ebp)
415923:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415926:	8b 1b                	mov    (%ebx),%ebx
415928:	89 5d a0             	mov    %ebx,-0x60(%ebp)
41592b:	e8 c3 dd fe ff       	call   0x4036f3
415930:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
415933:	8b 7d a0             	mov    -0x60(%ebp),%edi
415936:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
41593c:	83 c7 04             	add    $0x4,%edi
41593f:	8b c1                	mov    %ecx,%eax
415941:	40                   	inc    %eax
415942:	89 07                	mov    %eax,(%edi)
415944:	83 c7 04             	add    $0x4,%edi
415947:	3b fb                	cmp    %ebx,%edi
415949:	74 04                	je     0x41594f
41594b:	8b f3                	mov    %ebx,%esi
41594d:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41594f:	8b 45 9c             	mov    -0x64(%ebp),%eax
415952:	40                   	inc    %eax
415953:	c1 e0 02             	shl    $0x2,%eax
415956:	83 c0 08             	add    $0x8,%eax
415959:	50                   	push   %eax
41595a:	ff 75 a0             	push   -0x60(%ebp)
41595d:	e8 4e ac 08 00       	call   0x4a05b0
415962:	83 c4 08             	add    $0x8,%esp
415965:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415968:	89 03                	mov    %eax,(%ebx)
41596a:	8b f8                	mov    %eax,%edi
41596c:	83 c7 08             	add    $0x8,%edi
41596f:	8b 45 9c             	mov    -0x64(%ebp),%eax
415972:	c1 e0 02             	shl    $0x2,%eax
415975:	03 f8                	add    %eax,%edi
415977:	8b 45 a4             	mov    -0x5c(%ebp),%eax
41597a:	57                   	push   %edi
41597b:	85 c0                	test   %eax,%eax
41597d:	74 15                	je     0x415994
41597f:	50                   	push   %eax
415980:	8b d8                	mov    %eax,%ebx
415982:	e8 9d 00 ff ff       	call   0x405a24
415987:	40                   	inc    %eax
415988:	50                   	push   %eax
415989:	e8 10 ac 08 00       	call   0x4a059e
41598e:	59                   	pop    %ecx
41598f:	5e                   	pop    %esi
415990:	8b f8                	mov    %eax,%edi
415992:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
415994:	5f                   	pop    %edi
415995:	89 07                	mov    %eax,(%edi)
415997:	ff 75 2c             	push   0x2c(%ebp)
41599a:	6a 04                	push   $0x4
41599c:	b8 02 00 00 00       	mov    $0x2,%eax
4159a1:	e8 ca b4 08 00       	call   0x4a0e70
4159a6:	83 c4 08             	add    $0x8,%esp
4159a9:	b8 8a 44 4e 00       	mov    $0x4e448a,%eax
4159ae:	89 45 a4             	mov    %eax,-0x5c(%ebp)
4159b1:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
4159b4:	8b 1b                	mov    (%ebx),%ebx
4159b6:	89 5d a0             	mov    %ebx,-0x60(%ebp)
4159b9:	e8 35 dd fe ff       	call   0x4036f3
4159be:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
4159c1:	8b 7d a0             	mov    -0x60(%ebp),%edi
4159c4:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
4159ca:	83 c7 04             	add    $0x4,%edi
4159cd:	8b c1                	mov    %ecx,%eax
4159cf:	40                   	inc    %eax
4159d0:	89 07                	mov    %eax,(%edi)
4159d2:	83 c7 04             	add    $0x4,%edi
4159d5:	3b fb                	cmp    %ebx,%edi
4159d7:	74 04                	je     0x4159dd
4159d9:	8b f3                	mov    %ebx,%esi
4159db:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4159dd:	8b 45 9c             	mov    -0x64(%ebp),%eax
4159e0:	40                   	inc    %eax
4159e1:	c1 e0 02             	shl    $0x2,%eax
4159e4:	83 c0 08             	add    $0x8,%eax
4159e7:	50                   	push   %eax
4159e8:	ff 75 a0             	push   -0x60(%ebp)
4159eb:	e8 c0 ab 08 00       	call   0x4a05b0
4159f0:	83 c4 08             	add    $0x8,%esp
4159f3:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
4159f6:	89 03                	mov    %eax,(%ebx)
4159f8:	8b f8                	mov    %eax,%edi
4159fa:	83 c7 08             	add    $0x8,%edi
4159fd:	8b 45 9c             	mov    -0x64(%ebp),%eax
415a00:	c1 e0 02             	shl    $0x2,%eax
415a03:	03 f8                	add    %eax,%edi
415a05:	8b 45 a4             	mov    -0x5c(%ebp),%eax
415a08:	57                   	push   %edi
415a09:	85 c0                	test   %eax,%eax
415a0b:	74 15                	je     0x415a22
415a0d:	50                   	push   %eax
415a0e:	8b d8                	mov    %eax,%ebx
415a10:	e8 0f 00 ff ff       	call   0x405a24
415a15:	40                   	inc    %eax
415a16:	50                   	push   %eax
415a17:	e8 82 ab 08 00       	call   0x4a059e
415a1c:	59                   	pop    %ecx
415a1d:	5e                   	pop    %esi
415a1e:	8b f8                	mov    %eax,%edi
415a20:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
415a22:	5f                   	pop    %edi
415a23:	89 07                	mov    %eax,(%edi)
415a25:	e9 c3 05 00 00       	jmp    0x415fed
415a2a:	83 7d 14 02          	cmpl   $0x2,0x14(%ebp)
415a2e:	0f 85 af 01 00 00    	jne    0x415be3
415a34:	ff 75 2c             	push   0x2c(%ebp)
415a37:	6a 04                	push   $0x4
415a39:	b8 02 00 00 00       	mov    $0x2,%eax
415a3e:	e8 2d b4 08 00       	call   0x4a0e70
415a43:	83 c4 08             	add    $0x8,%esp
415a46:	b8 94 44 4e 00       	mov    $0x4e4494,%eax
415a4b:	89 45 a4             	mov    %eax,-0x5c(%ebp)
415a4e:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415a51:	8b 1b                	mov    (%ebx),%ebx
415a53:	89 5d a0             	mov    %ebx,-0x60(%ebp)
415a56:	e8 98 dc fe ff       	call   0x4036f3
415a5b:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
415a5e:	8b 7d a0             	mov    -0x60(%ebp),%edi
415a61:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
415a67:	83 c7 04             	add    $0x4,%edi
415a6a:	8b c1                	mov    %ecx,%eax
415a6c:	40                   	inc    %eax
415a6d:	89 07                	mov    %eax,(%edi)
415a6f:	83 c7 04             	add    $0x4,%edi
415a72:	3b fb                	cmp    %ebx,%edi
415a74:	74 04                	je     0x415a7a
415a76:	8b f3                	mov    %ebx,%esi
415a78:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
415a7a:	8b 45 9c             	mov    -0x64(%ebp),%eax
415a7d:	40                   	inc    %eax
415a7e:	c1 e0 02             	shl    $0x2,%eax
415a81:	83 c0 08             	add    $0x8,%eax
415a84:	50                   	push   %eax
415a85:	ff 75 a0             	push   -0x60(%ebp)
415a88:	e8 23 ab 08 00       	call   0x4a05b0
415a8d:	83 c4 08             	add    $0x8,%esp
415a90:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415a93:	89 03                	mov    %eax,(%ebx)
415a95:	8b f8                	mov    %eax,%edi
415a97:	83 c7 08             	add    $0x8,%edi
415a9a:	8b 45 9c             	mov    -0x64(%ebp),%eax
415a9d:	c1 e0 02             	shl    $0x2,%eax
415aa0:	03 f8                	add    %eax,%edi
415aa2:	8b 45 a4             	mov    -0x5c(%ebp),%eax
415aa5:	57                   	push   %edi
415aa6:	85 c0                	test   %eax,%eax
415aa8:	74 15                	je     0x415abf
415aaa:	50                   	push   %eax
415aab:	8b d8                	mov    %eax,%ebx
415aad:	e8 72 ff fe ff       	call   0x405a24
415ab2:	40                   	inc    %eax
415ab3:	50                   	push   %eax
415ab4:	e8 e5 aa 08 00       	call   0x4a059e
415ab9:	59                   	pop    %ecx
415aba:	5e                   	pop    %esi
415abb:	8b f8                	mov    %eax,%edi
415abd:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
415abf:	5f                   	pop    %edi
415ac0:	89 07                	mov    %eax,(%edi)
415ac2:	ff 75 2c             	push   0x2c(%ebp)
415ac5:	6a 04                	push   $0x4
415ac7:	b8 02 00 00 00       	mov    $0x2,%eax
415acc:	e8 9f b3 08 00       	call   0x4a0e70
415ad1:	83 c4 08             	add    $0x8,%esp
415ad4:	b8 99 44 4e 00       	mov    $0x4e4499,%eax
415ad9:	89 45 a4             	mov    %eax,-0x5c(%ebp)
415adc:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415adf:	8b 1b                	mov    (%ebx),%ebx
415ae1:	89 5d a0             	mov    %ebx,-0x60(%ebp)
415ae4:	e8 0a dc fe ff       	call   0x4036f3
415ae9:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
415aec:	8b 7d a0             	mov    -0x60(%ebp),%edi
415aef:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
415af5:	83 c7 04             	add    $0x4,%edi
415af8:	8b c1                	mov    %ecx,%eax
415afa:	40                   	inc    %eax
415afb:	89 07                	mov    %eax,(%edi)
415afd:	83 c7 04             	add    $0x4,%edi
415b00:	3b fb                	cmp    %ebx,%edi
415b02:	74 04                	je     0x415b08
415b04:	8b f3                	mov    %ebx,%esi
415b06:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
415b08:	8b 45 9c             	mov    -0x64(%ebp),%eax
415b0b:	40                   	inc    %eax
415b0c:	c1 e0 02             	shl    $0x2,%eax
415b0f:	83 c0 08             	add    $0x8,%eax
415b12:	50                   	push   %eax
415b13:	ff 75 a0             	push   -0x60(%ebp)
415b16:	e8 95 aa 08 00       	call   0x4a05b0
415b1b:	83 c4 08             	add    $0x8,%esp
415b1e:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415b21:	89 03                	mov    %eax,(%ebx)
415b23:	8b f8                	mov    %eax,%edi
415b25:	83 c7 08             	add    $0x8,%edi
415b28:	8b 45 9c             	mov    -0x64(%ebp),%eax
415b2b:	c1 e0 02             	shl    $0x2,%eax
415b2e:	03 f8                	add    %eax,%edi
415b30:	8b 45 a4             	mov    -0x5c(%ebp),%eax
415b33:	57                   	push   %edi
415b34:	85 c0                	test   %eax,%eax
415b36:	74 15                	je     0x415b4d
415b38:	50                   	push   %eax
415b39:	8b d8                	mov    %eax,%ebx
415b3b:	e8 e4 fe fe ff       	call   0x405a24
415b40:	40                   	inc    %eax
415b41:	50                   	push   %eax
415b42:	e8 57 aa 08 00       	call   0x4a059e
415b47:	59                   	pop    %ecx
415b48:	5e                   	pop    %esi
415b49:	8b f8                	mov    %eax,%edi
415b4b:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
415b4d:	5f                   	pop    %edi
415b4e:	89 07                	mov    %eax,(%edi)
415b50:	ff 75 2c             	push   0x2c(%ebp)
415b53:	6a 04                	push   $0x4
415b55:	b8 02 00 00 00       	mov    $0x2,%eax
415b5a:	e8 11 b3 08 00       	call   0x4a0e70
415b5f:	83 c4 08             	add    $0x8,%esp
415b62:	b8 9e 44 4e 00       	mov    $0x4e449e,%eax
415b67:	89 45 a4             	mov    %eax,-0x5c(%ebp)
415b6a:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
415b6d:	8b 1b                	mov    (%ebx),%ebx
415b6f:	89 5d a0             	mov    %ebx,-0x60(%ebp)
415b72:	e8 7c db fe ff       	call   0x4036f3
415b77:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
415b7a:	8b 7d a0             	mov    -0x60(%ebp),%edi
415b7d:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
415b83:	83 c7 04             	add    $0x4,%edi
415b86:	8b c1                	mov    %ecx,%eax
415b88:	40                   	inc    %eax
415b89:	89 07                	mov    %eax,(%edi)
415b8b:	83 c7 04             	add    $0x4,%edi
415b8e:	3b fb                	cmp    %ebx,%edi