41de7f:	8b c6                	mov    %esi,%eax
41de81:	5e                   	pop    %esi
41de82:	5b                   	pop    %ebx
41de83:	8b e5                	mov    %ebp,%esp
41de85:	5d                   	pop    %ebp
41de86:	c3                   	ret
41de87:	cc                   	int3
41de88:	cc                   	int3
41de89:	cc                   	int3
41de8a:	cc                   	int3
41de8b:	cc                   	int3
41de8c:	cc                   	int3
41de8d:	cc                   	int3
41de8e:	cc                   	int3
41de8f:	cc                   	int3
41de90:	8b ff                	mov    %edi,%edi
41de92:	55                   	push   %ebp
41de93:	8b ec                	mov    %esp,%ebp
41de95:	83 e4 c0             	and    $0xffffffc0,%esp
41de98:	81 ec f4 00 00 00    	sub    $0xf4,%esp
41de9e:	53                   	push   %ebx
41de9f:	33 c0                	xor    %eax,%eax
41dea1:	89 54 24 38          	mov    %edx,0x38(%esp)
41dea5:	56                   	push   %esi
41dea6:	33 f6                	xor    %esi,%esi
41dea8:	89 44 24 64          	mov    %eax,0x64(%esp)
41deac:	8b d9                	mov    %ecx,%ebx
41deae:	89 74 24 24          	mov    %esi,0x24(%esp)
41deb2:	57                   	push   %edi
41deb3:	8b 7d 0c             	mov    0xc(%ebp),%edi
41deb6:	89 74 24 70          	mov    %esi,0x70(%esp)
41deba:	89 74 24 78          	mov    %esi,0x78(%esp)
41debe:	89 44 24 6c          	mov    %eax,0x6c(%esp)
41dec2:	89 84 24 f8 00 00 00 	mov    %eax,0xf8(%esp)
41dec9:	39 45 08             	cmp    %eax,0x8(%ebp)
41decc:	75 08                	jne    0x41ded6
41dece:	89 44 24 54          	mov    %eax,0x54(%esp)
41ded2:	85 ff                	test   %edi,%edi
41ded4:	74 08                	je     0x41dede
41ded6:	c7 44 24 54 01 00 00 	movl   $0x1,0x54(%esp)
41dedd:	00
41dede:	8d 8c 24 88 00 00 00 	lea    0x88(%esp),%ecx
41dee5:	e8 26 77 ff ff       	call   0x415610
41deea:	33 c0                	xor    %eax,%eax
41deec:	50                   	push   %eax
41deed:	50                   	push   %eax
41deee:	6a 03                	push   $0x3
41def0:	50                   	push   %eax
41def1:	6a 01                	push   $0x1
41def3:	68 80 00 00 00       	push   $0x80
41def8:	53                   	push   %ebx
41def9:	89 44 24 7c          	mov    %eax,0x7c(%esp)
41defd:	ff 15 ec 20 45 00    	call   *0x4520ec
41df03:	89 84 24 84 00 00 00 	mov    %eax,0x84(%esp)
41df0a:	83 f8 ff             	cmp    $0xffffffff,%eax
41df0d:	75 1f                	jne    0x41df2e
41df0f:	ff 15 6c 20 45 00    	call   *0x45206c
41df15:	8d 8c 24 88 00 00 00 	lea    0x88(%esp),%ecx
41df1c:	8b f8                	mov    %eax,%edi
41df1e:	e8 7d 77 ff ff       	call   0x4156a0
41df23:	8b c7                	mov    %edi,%eax
41df25:	5f                   	pop    %edi
41df26:	5e                   	pop    %esi
41df27:	5b                   	pop    %ebx
41df28:	8b e5                	mov    %ebp,%esp
41df2a:	5d                   	pop    %ebp
41df2b:	c2 08 00             	ret    $0x8
41df2e:	ff 15 1c 21 45 00    	call   *0x45211c
41df34:	68 00 00 10 00       	push   $0x100000
41df39:	6a 00                	push   $0x0
41df3b:	50                   	push   %eax
41df3c:	89 84 24 08 01 00 00 	mov    %eax,0x108(%esp)
41df43:	ff 15 24 21 45 00    	call   *0x452124
41df49:	8b d8                	mov    %eax,%ebx
41df4b:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
41df4f:	85 db                	test   %ebx,%ebx
41df51:	75 08                	jne    0x41df5b
41df53:	8d 78 08             	lea    0x8(%eax),%edi
41df56:	e9 15 09 00 00       	jmp    0x41e870
41df5b:	85 ff                	test   %edi,%edi
41df5d:	74 11                	je     0x41df70
41df5f:	68 14 d6 40 00       	push   $0x40d614
41df64:	ff 15 74 23 45 00    	call   *0x452374
41df6a:	83 c4 04             	add    $0x4,%esp
41df6d:	8d 49 00             	lea    0x0(%ecx),%ecx
41df70:	6a 00                	push   $0x0
41df72:	8d 84 24 fc 00 00 00 	lea    0xfc(%esp),%eax
41df79:	c7 44 24 5c 00 00 00 	movl   $0x0,0x5c(%esp)
41df80:	00
41df81:	50                   	push   %eax
41df82:	68 00 00 10 00       	push   $0x100000
41df87:	53                   	push   %ebx
41df88:	6a 08                	push   $0x8
41df8a:	8d 44 24 7c          	lea    0x7c(%esp),%eax
41df8e:	50                   	push   %eax
41df8f:	68 73 00 09 00       	push   $0x90073
41df94:	ff b4 24 a0 00 00 00 	push   0xa0(%esp)
41df9b:	ff 15 44 21 45 00    	call   *0x452144
41dfa1:	85 c0                	test   %eax,%eax
41dfa3:	75 1c                	jne    0x41dfc1
41dfa5:	ff 15 6c 20 45 00    	call   *0x45206c
41dfab:	8b f8                	mov    %eax,%edi
41dfad:	89 7c 24 58          	mov    %edi,0x58(%esp)
41dfb1:	81 ff ea 00 00 00    	cmp    $0xea,%edi
41dfb7:	74 08                	je     0x41dfc1
41dfb9:	85 ff                	test   %edi,%edi
41dfbb:	0f 85 6d 01 00 00    	jne    0x41e12e
41dfc1:	83 3b 00             	cmpl   $0x0,(%ebx)
41dfc4:	c7 44 24 44 00 00 00 	movl   $0x0,0x44(%esp)
41dfcb:	00
41dfcc:	0f 86 5c 01 00 00    	jbe    0x41e12e
41dfd2:	83 c3 18             	add    $0x18,%ebx
41dfd5:	8b 44 24 68          	mov    0x68(%esp),%eax
41dfd9:	8b 73 f8             	mov    -0x8(%ebx),%esi
41dfdc:	8b ce                	mov    %esi,%ecx
41dfde:	8b 54 24 6c          	mov    0x6c(%esp),%edx
41dfe2:	2b c8                	sub    %eax,%ecx
41dfe4:	8b 7b fc             	mov    -0x4(%ebx),%edi
41dfe7:	6a 00                	push   $0x0
41dfe9:	ff 74 24 44          	push   0x44(%esp)
41dfed:	89 44 24 50          	mov    %eax,0x50(%esp)
41dff1:	8b c7                	mov    %edi,%eax
41dff3:	1b c2                	sbb    %edx,%eax
41dff5:	89 54 24 3c          	mov    %edx,0x3c(%esp)
41dff9:	50                   	push   %eax
41dffa:	51                   	push   %ecx
41dffb:	e8 d0 f7 02 00       	call   0x44d7d0
41e000:	8b 0b                	mov    (%ebx),%ecx
41e002:	89 44 24 30          	mov    %eax,0x30(%esp)
41e006:	8b c1                	mov    %ecx,%eax
41e008:	89 54 24 2c          	mov    %edx,0x2c(%esp)
41e00c:	8b 53 04             	mov    0x4(%ebx),%edx
41e00f:	23 c2                	and    %edx,%eax
41e011:	89 74 24 68          	mov    %esi,0x68(%esp)
41e015:	89 7c 24 6c          	mov    %edi,0x6c(%esp)
41e019:	83 f8 ff             	cmp    $0xffffffff,%eax
41e01c:	75 17                	jne    0x41e035
41e01e:	68 3c d6 40 00       	push   $0x40d63c
41e023:	ff 15 74 23 45 00    	call   *0x452374
41e029:	8b 74 24 2c          	mov    0x2c(%esp),%esi
41e02d:	83 c4 04             	add    $0x4,%esp
41e030:	e9 df 00 00 00       	jmp    0x41e114
41e035:	85 d2                	test   %edx,%edx
41e037:	0f 8c cb 03 00 00    	jl     0x41e408
41e03d:	7f 08                	jg     0x41e047
41e03f:	85 c9                	test   %ecx,%ecx
41e041:	0f 82 c1 03 00 00    	jb     0x41e408
41e047:	52                   	push   %edx
41e048:	51                   	push   %ecx
41e049:	6a 00                	push   $0x0
41e04b:	ff 74 24 4c          	push   0x4c(%esp)
41e04f:	e8 7c f7 02 00       	call   0x44d7d0
41e054:	ff 74 24 34          	push   0x34(%esp)
41e058:	8b f0                	mov    %eax,%esi
41e05a:	8b fa                	mov    %edx,%edi
41e05c:	ff 74 24 4c          	push   0x4c(%esp)
41e060:	6a 00                	push   $0x0
41e062:	ff 74 24 4c          	push   0x4c(%esp)
41e066:	e8 65 f7 02 00       	call   0x44d7d0
41e06b:	83 7c 24 28 00       	cmpl   $0x0,0x28(%esp)
41e070:	89 44 24 20          	mov    %eax,0x20(%esp)
41e074:	89 54 24 38          	mov    %edx,0x38(%esp)
41e078:	75 06                	jne    0x41e080
41e07a:	8b c6                	mov    %esi,%eax
41e07c:	8b cf                	mov    %edi,%ecx
41e07e:	eb 08                	jmp    0x41e088
41e080:	8b 44 24 70          	mov    0x70(%esp),%eax
41e084:	8b 4c 24 78          	mov    0x78(%esp),%ecx
41e088:	8b d6                	mov    %esi,%edx
41e08a:	2b d0                	sub    %eax,%edx
41e08c:	8b c7                	mov    %edi,%eax
41e08e:	89 54 24 34          	mov    %edx,0x34(%esp)
41e092:	1b c1                	sbb    %ecx,%eax
41e094:	8b 4c 24 30          	mov    0x30(%esp),%ecx
41e098:	89 44 24 48          	mov    %eax,0x48(%esp)
41e09c:	8b c6                	mov    %esi,%eax
41e09e:	03 c1                	add    %ecx,%eax
41e0a0:	89 44 24 70          	mov    %eax,0x70(%esp)
41e0a4:	8b c7                	mov    %edi,%eax
41e0a6:	13 44 24 2c          	adc    0x2c(%esp),%eax
41e0aa:	83 7c 24 54 00       	cmpl   $0x0,0x54(%esp)
41e0af:	89 44 24 78          	mov    %eax,0x78(%esp)
41e0b3:	74 2c                	je     0x41e0e1
41e0b5:	83 7c 24 60 00       	cmpl   $0x0,0x60(%esp)
41e0ba:	75 25                	jne    0x41e0e1
41e0bc:	ff 74 24 2c          	push   0x2c(%esp)
41e0c0:	51                   	push   %ecx
41e0c1:	8d 8c 24 90 00 00 00 	lea    0x90(%esp),%ecx
41e0c8:	e8 33 76 ff ff       	call   0x415700
41e0cd:	8b 54 24 34          	mov    0x34(%esp),%edx
41e0d1:	8b 4c 24 30          	mov    0x30(%esp),%ecx
41e0d5:	85 c0                	test   %eax,%eax
41e0d7:	74 08                	je     0x41e0e1
41e0d9:	c7 44 24 60 01 00 00 	movl   $0x1,0x60(%esp)
41e0e0:	00
41e0e1:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41e0e5:	74 24                	je     0x41e10b
41e0e7:	ff 74 24 48          	push   0x48(%esp)
41e0eb:	52                   	push   %edx
41e0ec:	ff 74 24 34          	push   0x34(%esp)
41e0f0:	51                   	push   %ecx
41e0f1:	57                   	push   %edi
41e0f2:	56                   	push   %esi
41e0f3:	ff 74 24 50          	push   0x50(%esp)
41e0f7:	ff 74 24 3c          	push   0x3c(%esp)
41e0fb:	6a 0a                	push   $0xa
41e0fd:	68 48 d6 40 00       	push   $0x40d648
41e102:	ff 15 74 23 45 00    	call   *0x452374
41e108:	83 c4 28             	add    $0x28,%esp
41e10b:	8b 74 24 28          	mov    0x28(%esp),%esi
41e10f:	46                   	inc    %esi
41e110:	89 74 24 28          	mov    %esi,0x28(%esp)
41e114:	8b 44 24 44          	mov    0x44(%esp),%eax
41e118:	83 c3 10             	add    $0x10,%ebx
41e11b:	8b 4c 24 5c          	mov    0x5c(%esp),%ecx
41e11f:	40                   	inc    %eax
41e120:	89 44 24 44          	mov    %eax,0x44(%esp)
41e124:	3b 01                	cmp    (%ecx),%eax
41e126:	0f 82 a9 fe ff ff    	jb     0x41dfd5
41e12c:	8b d9                	mov    %ecx,%ebx
41e12e:	8b 7c 24 58          	mov    0x58(%esp),%edi
41e132:	81 ff ea 00 00 00    	cmp    $0xea,%edi
41e138:	0f 84 32 fe ff ff    	je     0x41df70
41e13e:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41e142:	74 10                	je     0x41e154
41e144:	6a 0a                	push   $0xa
41e146:	68 34 2b 40 00       	push   $0x402b34
41e14b:	ff 15 74 23 45 00    	call   *0x452374
41e151:	83 c4 08             	add    $0x8,%esp
41e154:	6a 0a                	push   $0xa
41e156:	56                   	push   %esi
41e157:	68 dc d6 40 00       	push   $0x40d6dc
41e15c:	ff 15 74 23 45 00    	call   *0x452374
41e162:	83 c4 0c             	add    $0xc,%esp
41e165:	83 7c 24 54 00       	cmpl   $0x0,0x54(%esp)
41e16a:	0f 84 ed 06 00 00    	je     0x41e85d
41e170:	83 7c 24 60 00       	cmpl   $0x0,0x60(%esp)
41e175:	0f 85 e2 06 00 00    	jne    0x41e85d
41e17b:	85 ff                	test   %edi,%edi
41e17d:	0f 85 da 06 00 00    	jne    0x41e85d
41e183:	85 f6                	test   %esi,%esi
41e185:	0f 84 d2 06 00 00    	je     0x41e85d
41e18b:	6a 0a                	push   $0xa
41e18d:	68 14 d7 40 00       	push   $0x40d714
41e192:	ff 15 74 23 45 00    	call   *0x452374
41e198:	8b 84 24 98 00 00 00 	mov    0x98(%esp),%eax
41e19f:	83 c4 08             	add    $0x8,%esp
41e1a2:	8b 70 20             	mov    0x20(%eax),%esi
41e1a5:	8b ce                	mov    %esi,%ecx
41e1a7:	6a 0a                	push   $0xa
41e1a9:	ff 15 84 23 45 00    	call   *0x452384
41e1af:	8d 8c 24 94 00 00 00 	lea    0x94(%esp),%ecx
41e1b6:	ff d6                	call   *%esi
41e1b8:	89 44 24 24          	mov    %eax,0x24(%esp)
41e1bc:	83 ec 08             	sub    $0x8,%esp
41e1bf:	8b c2                	mov    %edx,%eax
41e1c1:	81 e2 ff ff ff 7f    	and    $0x7fffffff,%edx
41e1c7:	89 54 24 30          	mov    %edx,0x30(%esp)
41e1cb:	25 00 00 00 80       	and    $0x80000000,%eax
41e1d0:	df 6c 24 2c          	fildll 0x2c(%esp)
41e1d4:	89 44 24 30          	mov    %eax,0x30(%esp)
41e1d8:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
41e1dc:	df 6c 24 2c          	fildll 0x2c(%esp)
41e1e0:	d9 e0                	fchs
41e1e2:	de c1                	faddp  %st,%st(1)
41e1e4:	dd 5c 24 2c          	fstpl  0x2c(%esp)
41e1e8:	dd 44 24 2c          	fldl   0x2c(%esp)
41e1ec:	dc 0d a0 42 41 00    	fmull  0x4142a0
41e1f2:	dd 1c 24             	fstpl  (%esp)
41e1f5:	68 44 d7 40 00       	push   $0x40d744
41e1fa:	ff 15 74 23 45 00    	call   *0x452374
41e200:	8b 84 24 a0 00 00 00 	mov    0xa0(%esp),%eax
41e207:	83 c4 10             	add    $0x10,%esp
41e20a:	8b 70 24             	mov    0x24(%eax),%esi
41e20d:	8b ce                	mov    %esi,%ecx
41e20f:	6a 0a                	push   $0xa
41e211:	ff 15 84 23 45 00    	call   *0x452384
41e217:	8d 8c 24 94 00 00 00 	lea    0x94(%esp),%ecx
41e21e:	ff d6                	call   *%esi
41e220:	89 44 24 24          	mov    %eax,0x24(%esp)
41e224:	83 ec 08             	sub    $0x8,%esp
41e227:	8b c2                	mov    %edx,%eax
41e229:	81 e2 ff ff ff 7f    	and    $0x7fffffff,%edx
41e22f:	89 54 24 30          	mov    %edx,0x30(%esp)
41e233:	25 00 00 00 80       	and    $0x80000000,%eax
41e238:	df 6c 24 2c          	fildll 0x2c(%esp)
41e23c:	89 44 24 30          	mov    %eax,0x30(%esp)
41e240:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
41e244:	df 6c 24 2c          	fildll 0x2c(%esp)
41e248:	d9 e0                	fchs
41e24a:	de c1                	faddp  %st,%st(1)
41e24c:	dd 5c 24 2c          	fstpl  0x2c(%esp)
41e250:	dd 44 24 2c          	fldl   0x2c(%esp)
41e254:	dc 0d a0 42 41 00    	fmull  0x4142a0
41e25a:	dd 1c 24             	fstpl  (%esp)
41e25d:	68 74 d7 40 00       	push   $0x40d774
41e262:	ff 15 74 23 45 00    	call   *0x452374
41e268:	8b 84 24 a0 00 00 00 	mov    0xa0(%esp),%eax
41e26f:	83 c4 10             	add    $0x10,%esp
41e272:	8b 70 2c             	mov    0x2c(%eax),%esi
41e275:	8b ce                	mov    %esi,%ecx
41e277:	6a 0a                	push   $0xa
41e279:	ff 15 84 23 45 00    	call   *0x452384
41e27f:	8d 8c 24 94 00 00 00 	lea    0x94(%esp),%ecx
41e286:	ff d6                	call   *%esi
41e288:	89 44 24 24          	mov    %eax,0x24(%esp)
41e28c:	83 ec 08             	sub    $0x8,%esp
41e28f:	8b c2                	mov    %edx,%eax
41e291:	81 e2 ff ff ff 7f    	and    $0x7fffffff,%edx
41e297:	89 54 24 30          	mov    %edx,0x30(%esp)
41e29b:	25 00 00 00 80       	and    $0x80000000,%eax
41e2a0:	df 6c 24 2c          	fildll 0x2c(%esp)
41e2a4:	89 44 24 30          	mov    %eax,0x30(%esp)
41e2a8:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
41e2ac:	df 6c 24 2c          	fildll 0x2c(%esp)
41e2b0:	d9 e0                	fchs
41e2b2:	de c1                	faddp  %st,%st(1)
41e2b4:	dd 5c 24 2c          	fstpl  0x2c(%esp)
41e2b8:	dd 44 24 2c          	fldl   0x2c(%esp)
41e2bc:	dc 0d a0 42 41 00    	fmull  0x4142a0
41e2c2:	dd 1c 24             	fstpl  (%esp)
41e2c5:	68 a4 d7 40 00       	push   $0x40d7a4
41e2ca:	ff 15 74 23 45 00    	call   *0x452374
41e2d0:	8b 84 24 a0 00 00 00 	mov    0xa0(%esp),%eax
41e2d7:	83 c4 10             	add    $0x10,%esp
41e2da:	8b 70 28             	mov    0x28(%eax),%esi
41e2dd:	8b ce                	mov    %esi,%ecx
41e2df:	6a 0a                	push   $0xa
41e2e1:	ff 15 84 23 45 00    	call   *0x452384
41e2e7:	8d 8c 24 94 00 00 00 	lea    0x94(%esp),%ecx
41e2ee:	ff d6                	call   *%esi
41e2f0:	89 44 24 24          	mov    %eax,0x24(%esp)
41e2f4:	83 ec 08             	sub    $0x8,%esp
41e2f7:	8b c2                	mov    %edx,%eax
41e2f9:	81 e2 ff ff ff 7f    	and    $0x7fffffff,%edx
41e2ff:	89 54 24 30          	mov    %edx,0x30(%esp)
41e303:	25 00 00 00 80       	and    $0x80000000,%eax
41e308:	df 6c 24 2c          	fildll 0x2c(%esp)
41e30c:	89 44 24 30          	mov    %eax,0x30(%esp)
41e310:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
41e314:	df 6c 24 2c          	fildll 0x2c(%esp)
41e318:	d9 e0                	fchs
41e31a:	de c1                	faddp  %st,%st(1)
41e31c:	dd 5c 24 2c          	fstpl  0x2c(%esp)
41e320:	dd 44 24 2c          	fldl   0x2c(%esp)
41e324:	dc 0d a0 42 41 00    	fmull  0x4142a0
41e32a:	dd 1c 24             	fstpl  (%esp)
41e32d:	68 d4 d7 40 00       	push   $0x40d7d4
41e332:	ff 15 74 23 45 00    	call   *0x452374
41e338:	6a 0a                	push   $0xa