48913c:	8b f1                	mov    %ecx,%esi
48913e:	51                   	push   %ecx
48913f:	d9 1c 24             	fstps  (%esp)
489142:	ff 36                	push   (%esi)
489144:	ff 15 98 c1 4a 00    	call   *0x4ac198
48914a:	85 c0                	test   %eax,%eax
48914c:	74 05                	je     0x489153
48914e:	89 46 04             	mov    %eax,0x4(%esi)
489151:	eb 02                	jmp    0x489155
489153:	33 c0                	xor    %eax,%eax
489155:	5e                   	pop    %esi
489156:	5d                   	pop    %ebp
489157:	c2 04 00             	ret    $0x4
48915a:	cc                   	int3
48915b:	cc                   	int3
48915c:	cc                   	int3
48915d:	cc                   	int3
48915e:	cc                   	int3
48915f:	cc                   	int3
489160:	8b ff                	mov    %edi,%edi
489162:	55                   	push   %ebp
489163:	8b ec                	mov    %esp,%ebp
489165:	56                   	push   %esi
489166:	8b f1                	mov    %ecx,%esi
489168:	c7 06 00 73 40 00    	movl   $0x407300,(%esi)
48916e:	ff 76 3c             	push   0x3c(%esi)
489171:	c7 46 38 90 15 40 00 	movl   $0x401590,0x38(%esi)
489178:	ff 15 18 c0 4a 00    	call   *0x4ac018
48917e:	ff 76 30             	push   0x30(%esi)
489181:	ff 15 b4 c0 4a 00    	call   *0x4ac0b4
489187:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
48918b:	c7 06 d0 72 40 00    	movl   $0x4072d0,(%esi)
489191:	74 08                	je     0x48919b
489193:	56                   	push   %esi
489194:	ff 15 10 74 4a 00    	call   *0x4a7410
48919a:	59                   	pop    %ecx
48919b:	8b c6                	mov    %esi,%eax
48919d:	5e                   	pop    %esi
48919e:	5d                   	pop    %ebp
48919f:	c2 04 00             	ret    $0x4
4891a2:	8b ff                	mov    %edi,%edi
4891a4:	55                   	push   %ebp
4891a5:	8b ec                	mov    %esp,%ebp
4891a7:	51                   	push   %ecx
4891a8:	8b 45 08             	mov    0x8(%ebp),%eax
4891ab:	db 45 08             	fildl  0x8(%ebp)
4891ae:	53                   	push   %ebx
4891af:	8b d9                	mov    %ecx,%ebx
4891b1:	56                   	push   %esi
4891b2:	57                   	push   %edi
4891b3:	89 43 04             	mov    %eax,0x4(%ebx)
4891b6:	8d 7b 0c             	lea    0xc(%ebx),%edi
4891b9:	33 c0                	xor    %eax,%eax
4891bb:	c7 03 a0 72 40 00    	movl   $0x4072a0,(%ebx)
4891c1:	57                   	push   %edi
4891c2:	89 43 08             	mov    %eax,0x8(%ebx)
4891c5:	89 07                	mov    %eax,(%edi)
4891c7:	50                   	push   %eax
4891c8:	d9 5d fc             	fstps  -0x4(%ebp)
4891cb:	d9 45 fc             	flds   -0x4(%ebp)
4891ce:	51                   	push   %ecx
4891cf:	d9 1c 24             	fstps  (%esp)
4891d2:	68 00 00 00 ff       	push   $0xff000000
4891d7:	ff 15 b0 c0 4a 00    	call   *0x4ac0b0
4891dd:	89 47 04             	mov    %eax,0x4(%edi)
4891e0:	8d 73 14             	lea    0x14(%ebx),%esi
4891e3:	8b 45 0c             	mov    0xc(%ebp),%eax
4891e6:	51                   	push   %ecx
4891e7:	83 c0 04             	add    $0x4,%eax
4891ea:	8b ce                	mov    %esi,%ecx
4891ec:	50                   	push   %eax
4891ed:	e8 07 d3 f9 ff       	call   0x4264f9
4891f2:	56                   	push   %esi
4891f3:	8b cf                	mov    %edi,%ecx
4891f5:	e8 13 ff ff ff       	call   0x48910d
4891fa:	5f                   	pop    %edi
4891fb:	5e                   	pop    %esi
4891fc:	8b c3                	mov    %ebx,%eax
4891fe:	5b                   	pop    %ebx
4891ff:	c9                   	leave
489200:	c2 08 00             	ret    $0x8
489203:	8b ff                	mov    %edi,%edi
489205:	55                   	push   %ebp
489206:	8b ec                	mov    %esp,%ebp
489208:	51                   	push   %ecx
489209:	db 45 08             	fildl  0x8(%ebp)
48920c:	8b 45 08             	mov    0x8(%ebp),%eax
48920f:	53                   	push   %ebx
489210:	8b d9                	mov    %ecx,%ebx
489212:	56                   	push   %esi
489213:	57                   	push   %edi
489214:	89 43 04             	mov    %eax,0x4(%ebx)
489217:	8d 7b 0c             	lea    0xc(%ebx),%edi
48921a:	8b 45 10             	mov    0x10(%ebp),%eax
48921d:	83 27 00             	andl   $0x0,(%edi)
489220:	57                   	push   %edi
489221:	89 43 08             	mov    %eax,0x8(%ebx)
489224:	c7 03 a0 72 40 00    	movl   $0x4072a0,(%ebx)
48922a:	6a 00                	push   $0x0
48922c:	d9 5d fc             	fstps  -0x4(%ebp)
48922f:	d9 45 fc             	flds   -0x4(%ebp)
489232:	51                   	push   %ecx
489233:	d9 1c 24             	fstps  (%esp)
489236:	68 00 00 00 ff       	push   $0xff000000
48923b:	ff 15 b0 c0 4a 00    	call   *0x4ac0b0
489241:	51                   	push   %ecx
489242:	ff 75 0c             	push   0xc(%ebp)
489245:	8d 73 14             	lea    0x14(%ebx),%esi
489248:	89 47 04             	mov    %eax,0x4(%edi)
48924b:	8b ce                	mov    %esi,%ecx
48924d:	e8 a7 d2 f9 ff       	call   0x4264f9
489252:	56                   	push   %esi
489253:	8b cf                	mov    %edi,%ecx
489255:	e8 b3 fe ff ff       	call   0x48910d
48925a:	ff 75 14             	push   0x14(%ebp)
48925d:	8b cb                	mov    %ebx,%ecx
48925f:	e8 9a 01 00 00       	call   0x4893fe
489264:	5f                   	pop    %edi
489265:	5e                   	pop    %esi
489266:	8b c3                	mov    %ebx,%eax
489268:	5b                   	pop    %ebx
489269:	c9                   	leave
48926a:	c2 10 00             	ret    $0x10
48926d:	cc                   	int3
48926e:	cc                   	int3
48926f:	cc                   	int3
489270:	8b ff                	mov    %edi,%edi
489272:	55                   	push   %ebp
489273:	8b ec                	mov    %esp,%ebp
489275:	51                   	push   %ecx
489276:	53                   	push   %ebx
489277:	56                   	push   %esi
489278:	8b f1                	mov    %ecx,%esi
48927a:	57                   	push   %edi
48927b:	8d 4e 14             	lea    0x14(%esi),%ecx
48927e:	e8 82 98 ff ff       	call   0x482b05
489283:	6a 20                	push   $0x20
489285:	8b f8                	mov    %eax,%edi
489287:	ff 15 14 74 4a 00    	call   *0x4a7414
48928d:	8b d8                	mov    %eax,%ebx
48928f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
489292:	59                   	pop    %ecx
489293:	85 db                	test   %ebx,%ebx
489295:	74 1a                	je     0x4892b1
489297:	8b ce                	mov    %esi,%ecx
489299:	e8 0f 01 00 00       	call   0x4893ad
48929e:	50                   	push   %eax
48929f:	ff 76 08             	push   0x8(%esi)
4892a2:	8b cb                	mov    %ebx,%ecx
4892a4:	57                   	push   %edi
4892a5:	ff 76 04             	push   0x4(%esi)
4892a8:	e8 56 ff ff ff       	call   0x489203
4892ad:	8b d8                	mov    %eax,%ebx
4892af:	eb 02                	jmp    0x4892b3
4892b1:	33 db                	xor    %ebx,%ebx
4892b3:	85 ff                	test   %edi,%edi
4892b5:	74 12                	je     0x4892c9
4892b7:	8b 07                	mov    (%edi),%eax
4892b9:	6a 01                	push   $0x1
4892bb:	8b 30                	mov    (%eax),%esi
4892bd:	8b ce                	mov    %esi,%ecx
4892bf:	ff 15 2c 81 4a 00    	call   *0x4a812c
4892c5:	8b cf                	mov    %edi,%ecx
4892c7:	ff d6                	call   *%esi
4892c9:	5f                   	pop    %edi
4892ca:	5e                   	pop    %esi
4892cb:	8b c3                	mov    %ebx,%eax
4892cd:	5b                   	pop    %ebx
4892ce:	c9                   	leave
4892cf:	c3                   	ret
4892d0:	8b ff                	mov    %edi,%edi
4892d2:	55                   	push   %ebp
4892d3:	8b ec                	mov    %esp,%ebp
4892d5:	51                   	push   %ecx
4892d6:	db 45 08             	fildl  0x8(%ebp)
4892d9:	8b 45 08             	mov    0x8(%ebp),%eax
4892dc:	89 41 04             	mov    %eax,0x4(%ecx)
4892df:	51                   	push   %ecx
4892e0:	83 c1 0c             	add    $0xc,%ecx
4892e3:	d9 5d fc             	fstps  -0x4(%ebp)
4892e6:	d9 45 fc             	flds   -0x4(%ebp)
4892e9:	d9 1c 24             	fstps  (%esp)
4892ec:	e8 42 fe ff ff       	call   0x489133
4892f1:	c9                   	leave
4892f2:	c2 04 00             	ret    $0x4
4892f5:	cc                   	int3
4892f6:	cc                   	int3
4892f7:	cc                   	int3
4892f8:	cc                   	int3
4892f9:	cc                   	int3
4892fa:	cc                   	int3
4892fb:	cc                   	int3
4892fc:	cc                   	int3
4892fd:	cc                   	int3
4892fe:	cc                   	int3
4892ff:	cc                   	int3
489300:	8b ff                	mov    %edi,%edi
489302:	55                   	push   %ebp
489303:	8b ec                	mov    %esp,%ebp
489305:	ff 75 10             	push   0x10(%ebp)
489308:	8d 51 14             	lea    0x14(%ecx),%edx
48930b:	ff 75 0c             	push   0xc(%ebp)
48930e:	ff 71 08             	push   0x8(%ecx)
489311:	ff 71 04             	push   0x4(%ecx)
489314:	8b 4d 08             	mov    0x8(%ebp),%ecx
489317:	e8 f7 f4 ff ff       	call   0x488813
48931c:	5d                   	pop    %ebp
48931d:	c2 14 00             	ret    $0x14
489320:	8b ff                	mov    %edi,%edi
489322:	55                   	push   %ebp
489323:	8b ec                	mov    %esp,%ebp
489325:	ff 75 18             	push   0x18(%ebp)
489328:	8d 51 14             	lea    0x14(%ecx),%edx
48932b:	ff 75 14             	push   0x14(%ebp)
48932e:	51                   	push   %ecx
48932f:	ff 75 0c             	push   0xc(%ebp)
489332:	ff 71 08             	push   0x8(%ecx)
489335:	ff 71 04             	push   0x4(%ecx)
489338:	8b 4d 08             	mov    0x8(%ebp),%ecx
48933b:	e8 b3 f6 ff ff       	call   0x4889f3
489340:	b0 01                	mov    $0x1,%al
489342:	5d                   	pop    %ebp
489343:	c2 1c 00             	ret    $0x1c
489346:	cc                   	int3
489347:	cc                   	int3
489348:	cc                   	int3
489349:	cc                   	int3
48934a:	cc                   	int3
48934b:	cc                   	int3
48934c:	cc                   	int3
48934d:	cc                   	int3
48934e:	cc                   	int3
48934f:	cc                   	int3
489350:	8b ff                	mov    %edi,%edi
489352:	55                   	push   %ebp
489353:	8b ec                	mov    %esp,%ebp
489355:	ff 75 0c             	push   0xc(%ebp)
489358:	8d 51 14             	lea    0x14(%ecx),%edx
48935b:	8b 4d 08             	mov    0x8(%ebp),%ecx
48935e:	e8 d5 f9 ff ff       	call   0x488d38
489363:	b0 01                	mov    $0x1,%al
489365:	5d                   	pop    %ebp
489366:	c2 08 00             	ret    $0x8
489369:	cc                   	int3
48936a:	cc                   	int3
48936b:	cc                   	int3
48936c:	cc                   	int3
48936d:	cc                   	int3
48936e:	cc                   	int3
48936f:	cc                   	int3
489370:	8b ff                	mov    %edi,%edi
489372:	55                   	push   %ebp
489373:	8b ec                	mov    %esp,%ebp
489375:	53                   	push   %ebx
489376:	56                   	push   %esi
489377:	8b 71 08             	mov    0x8(%ecx),%esi
48937a:	8d 59 14             	lea    0x14(%ecx),%ebx
48937d:	57                   	push   %edi
48937e:	8b 79 04             	mov    0x4(%ecx),%edi
489381:	8b d3                	mov    %ebx,%edx
489383:	ff 75 18             	push   0x18(%ebp)
489386:	8b 4d 08             	mov    0x8(%ebp),%ecx
489389:	e8 aa f9 ff ff       	call   0x488d38
48938e:	ff 75 1c             	push   0x1c(%ebp)
489391:	8b d3                	mov    %ebx,%edx
489393:	ff 75 14             	push   0x14(%ebp)
489396:	51                   	push   %ecx
489397:	ff 75 0c             	push   0xc(%ebp)
48939a:	8b 4d 08             	mov    0x8(%ebp),%ecx
48939d:	56                   	push   %esi
48939e:	57                   	push   %edi
48939f:	e8 4f f6 ff ff       	call   0x4889f3
4893a4:	5f                   	pop    %edi
4893a5:	5e                   	pop    %esi
4893a6:	b0 01                	mov    $0x1,%al
4893a8:	5b                   	pop    %ebx
4893a9:	5d                   	pop    %ebp
4893aa:	c2 18 00             	ret    $0x18
4893ad:	8b ff                	mov    %edi,%edi
4893af:	55                   	push   %ebp
4893b0:	8b ec                	mov    %esp,%ebp
4893b2:	51                   	push   %ecx
4893b3:	56                   	push   %esi
4893b4:	57                   	push   %edi
4893b5:	8b f9                	mov    %ecx,%edi
4893b7:	8d 45 fc             	lea    -0x4(%ebp),%eax
4893ba:	50                   	push   %eax
4893bb:	33 f6                	xor    %esi,%esi
4893bd:	ff 77 18             	push   0x18(%edi)
4893c0:	ff 15 a0 c1 4a 00    	call   *0x4ac1a0
4893c6:	85 c0                	test   %eax,%eax
4893c8:	74 03                	je     0x4893cd
4893ca:	89 47 1c             	mov    %eax,0x1c(%edi)
4893cd:	8b 45 fc             	mov    -0x4(%ebp),%eax
4893d0:	2b c6                	sub    %esi,%eax
4893d2:	74 24                	je     0x4893f8
4893d4:	83 e8 01             	sub    $0x1,%eax
4893d7:	74 1c                	je     0x4893f5
4893d9:	83 e8 01             	sub    $0x1,%eax
4893dc:	74 12                	je     0x4893f0
4893de:	83 e8 01             	sub    $0x1,%eax
4893e1:	74 09                	je     0x4893ec
4893e3:	83 e8 01             	sub    $0x1,%eax
4893e6:	75 10                	jne    0x4893f8
4893e8:	6a 04                	push   $0x4
4893ea:	eb 06                	jmp    0x4893f2
4893ec:	6a 03                	push   $0x3
4893ee:	eb 02                	jmp    0x4893f2
4893f0:	6a 02                	push   $0x2
4893f2:	5e                   	pop    %esi
4893f3:	eb 03                	jmp    0x4893f8
4893f5:	33 f6                	xor    %esi,%esi
4893f7:	46                   	inc    %esi
4893f8:	5f                   	pop    %edi
4893f9:	8b c6                	mov    %esi,%eax
4893fb:	5e                   	pop    %esi
4893fc:	c9                   	leave
4893fd:	c3                   	ret
4893fe:	8b ff                	mov    %edi,%edi
489400:	55                   	push   %ebp
489401:	8b ec                	mov    %esp,%ebp
489403:	8b 45 08             	mov    0x8(%ebp),%eax
489406:	33 d2                	xor    %edx,%edx
489408:	56                   	push   %esi
489409:	8b f1                	mov    %ecx,%esi
48940b:	2b c2                	sub    %edx,%eax
48940d:	74 24                	je     0x489433
48940f:	83 e8 01             	sub    $0x1,%eax
489412:	74 1c                	je     0x489430
489414:	83 e8 01             	sub    $0x1,%eax
489417:	74 12                	je     0x48942b
489419:	83 e8 01             	sub    $0x1,%eax
48941c:	74 09                	je     0x489427
48941e:	83 e8 01             	sub    $0x1,%eax
489421:	75 10                	jne    0x489433
489423:	6a 04                	push   $0x4
489425:	eb 06                	jmp    0x48942d
489427:	6a 03                	push   $0x3
489429:	eb 02                	jmp    0x48942d
48942b:	6a 02                	push   $0x2
48942d:	5a                   	pop    %edx
48942e:	eb 03                	jmp    0x489433
489430:	33 d2                	xor    %edx,%edx
489432:	42                   	inc    %edx
489433:	52                   	push   %edx
489434:	ff 76 18             	push   0x18(%esi)
489437:	ff 15 a4 c1 4a 00    	call   *0x4ac1a4
48943d:	85 c0                	test   %eax,%eax
48943f:	74 03                	je     0x489444
489441:	89 46 1c             	mov    %eax,0x1c(%esi)