417161:	52                   	push   %edx
417162:	e8 a1 28 05 00       	call   0x469a08
417167:	83 c4 08             	add    $0x8,%esp
41716a:	8b c6                	mov    %esi,%eax
41716c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41716f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
417176:	59                   	pop    %ecx
417177:	5f                   	pop    %edi
417178:	5e                   	pop    %esi
417179:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41717c:	33 cd                	xor    %ebp,%ecx
41717e:	e8 47 28 05 00       	call   0x4699ca
417183:	8b e5                	mov    %ebp,%esp
417185:	5d                   	pop    %ebp
417186:	c2 1c 00             	ret    $0x1c
417189:	e8 a3 24 06 00       	call   0x479631
41718e:	cc                   	int3
41718f:	cc                   	int3
417190:	55                   	push   %ebp
417191:	8b ec                	mov    %esp,%ebp
417193:	6a ff                	push   $0xffffffff
417195:	68 5d 8c 49 00       	push   $0x498c5d
41719a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4171a0:	50                   	push   %eax
4171a1:	83 ec 3c             	sub    $0x3c,%esp
4171a4:	a1 14 40 4c 00       	mov    0x4c4014,%eax
4171a9:	33 c5                	xor    %ebp,%eax
4171ab:	89 45 f0             	mov    %eax,-0x10(%ebp)
4171ae:	56                   	push   %esi
4171af:	57                   	push   %edi
4171b0:	50                   	push   %eax
4171b1:	8d 45 f4             	lea    -0xc(%ebp),%eax
4171b4:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4171ba:	89 4d bc             	mov    %ecx,-0x44(%ebp)
4171bd:	8b 45 08             	mov    0x8(%ebp),%eax
4171c0:	8b 55 14             	mov    0x14(%ebp),%edx
4171c3:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
4171ca:	89 45 b8             	mov    %eax,-0x48(%ebp)
4171cd:	89 55 c0             	mov    %edx,-0x40(%ebp)
4171d0:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
4171d7:	c7 45 e4 0f 00 00 00 	movl   $0xf,-0x1c(%ebp)
4171de:	c6 45 d0 00          	movb   $0x0,-0x30(%ebp)
4171e2:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4171e9:	8b 4a 14             	mov    0x14(%edx),%ecx
4171ec:	81 e1 00 30 00 00    	and    $0x3000,%ecx
4171f2:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
4171f8:	75 18                	jne    0x417212
4171fa:	c7 45 c4 ff ff ff ff 	movl   $0xffffffff,-0x3c(%ebp)
417201:	be 0d 00 00 00       	mov    $0xd,%esi
417206:	c7 45 cc ff ff ff ff 	movl   $0xffffffff,-0x34(%ebp)
41720d:	e9 85 00 00 00       	jmp    0x417297
417212:	8b 42 18             	mov    0x18(%edx),%eax
417215:	8b 52 1c             	mov    0x1c(%edx),%edx
417218:	89 45 c4             	mov    %eax,-0x3c(%ebp)
41721b:	85 d2                	test   %edx,%edx
41721d:	7c 0a                	jl     0x417229
41721f:	7f 04                	jg     0x417225
417221:	85 c0                	test   %eax,%eax
417223:	74 04                	je     0x417229
417225:	8b f0                	mov    %eax,%esi
417227:	eb 16                	jmp    0x41723f
417229:	0b c2                	or     %edx,%eax
41722b:	75 0d                	jne    0x41723a
41722d:	85 c9                	test   %ecx,%ecx
41722f:	75 05                	jne    0x417236
417231:	8d 70 01             	lea    0x1(%eax),%esi
417234:	eb 61                	jmp    0x417297
417236:	33 f6                	xor    %esi,%esi
417238:	eb 05                	jmp    0x41723f
41723a:	be 06 00 00 00       	mov    $0x6,%esi
41723f:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
417245:	75 50                	jne    0x417297
417247:	f2 0f 10 4d 1c       	movsd  0x1c(%ebp),%xmm1
41724c:	0f 28 c1             	movaps %xmm1,%xmm0
41724f:	0f 54 05 50 74 4b 00 	andps  0x4b7450,%xmm0
417256:	66 0f 2f 05 78 73 4b 	comisd 0x4b7378,%xmm0
41725d:	00
41725e:	76 37                	jbe    0x417297
417260:	8d 45 cc             	lea    -0x34(%ebp),%eax
417263:	50                   	push   %eax
417264:	83 ec 08             	sub    $0x8,%esp
417267:	f2 0f 11 0c 24       	movsd  %xmm1,(%esp)
41726c:	e8 d5 8a 06 00       	call   0x47fd46
417271:	8b 45 cc             	mov    -0x34(%ebp),%eax
417274:	83 c4 0c             	add    $0xc,%esp
417277:	99                   	cltd
417278:	dd d8                	fstp   %st(0)
41727a:	33 c2                	xor    %edx,%eax
41727c:	2b c2                	sub    %edx,%eax
41727e:	69 c8 97 75 00 00    	imul   $0x7597,%eax,%ecx
417284:	b8 89 b5 f8 14       	mov    $0x14f8b589,%eax
417289:	f7 e9                	imul   %ecx
41728b:	c1 fa 0d             	sar    $0xd,%edx
41728e:	8b c2                	mov    %edx,%eax
417290:	c1 e8 1f             	shr    $0x1f,%eax
417293:	03 c2                	add    %edx,%eax
417295:	03 f0                	add    %eax,%esi
417297:	6a 00                	push   $0x0
417299:	8d 46 32             	lea    0x32(%esi),%eax
41729c:	50                   	push   %eax
41729d:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4172a0:	e8 3b 15 00 00       	call   0x4187e0
4172a5:	83 7d e4 10          	cmpl   $0x10,-0x1c(%ebp)
4172a9:	8d 7d d0             	lea    -0x30(%ebp),%edi
4172ac:	f2 0f 10 45 1c       	movsd  0x1c(%ebp),%xmm0
4172b1:	0f 43 7d d0          	cmovae -0x30(%ebp),%edi
4172b5:	83 ec 08             	sub    $0x8,%esp
4172b8:	8b 45 c0             	mov    -0x40(%ebp),%eax
4172bb:	8b 75 e0             	mov    -0x20(%ebp),%esi
4172be:	f2 0f 11 04 24       	movsd  %xmm0,(%esp)
4172c3:	ff 75 c4             	push   -0x3c(%ebp)
4172c6:	ff 70 14             	push   0x14(%eax)
4172c9:	8d 45 e8             	lea    -0x18(%ebp),%eax
4172cc:	6a 00                	push   $0x0
4172ce:	50                   	push   %eax
4172cf:	ff 75 bc             	push   -0x44(%ebp)
4172d2:	e8 19 13 00 00       	call   0x4185f0
4172d7:	83 c4 10             	add    $0x10,%esp
4172da:	50                   	push   %eax
4172db:	56                   	push   %esi
4172dc:	57                   	push   %edi
4172dd:	e8 0e f0 ff ff       	call   0x4162f0
4172e2:	83 7d e4 10          	cmpl   $0x10,-0x1c(%ebp)
4172e6:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4172e9:	8b 75 b8             	mov    -0x48(%ebp),%esi
4172ec:	0f 43 4d d0          	cmovae -0x30(%ebp),%ecx
4172f0:	50                   	push   %eax
4172f1:	51                   	push   %ecx
4172f2:	ff 75 18             	push   0x18(%ebp)
4172f5:	ff 75 c0             	push   -0x40(%ebp)
4172f8:	ff 75 10             	push   0x10(%ebp)
4172fb:	ff 75 0c             	push   0xc(%ebp)
4172fe:	56                   	push   %esi
4172ff:	ff 75 bc             	push   -0x44(%ebp)
417302:	e8 29 0e 00 00       	call   0x418130
417307:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
41730a:	83 c4 38             	add    $0x38,%esp
41730d:	83 f9 10             	cmp    $0x10,%ecx
417310:	72 28                	jb     0x41733a
417312:	8b 55 d0             	mov    -0x30(%ebp),%edx
417315:	41                   	inc    %ecx
417316:	8b c2                	mov    %edx,%eax
417318:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
41731e:	72 10                	jb     0x417330
417320:	8b 50 fc             	mov    -0x4(%eax),%edx
417323:	83 c1 23             	add    $0x23,%ecx
417326:	2b c2                	sub    %edx,%eax
417328:	83 c0 fc             	add    $0xfffffffc,%eax
41732b:	83 f8 1f             	cmp    $0x1f,%eax
41732e:	77 29                	ja     0x417359
417330:	51                   	push   %ecx
417331:	52                   	push   %edx
417332:	e8 d1 26 05 00       	call   0x469a08
417337:	83 c4 08             	add    $0x8,%esp
41733a:	8b c6                	mov    %esi,%eax
41733c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41733f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
417346:	59                   	pop    %ecx
417347:	5f                   	pop    %edi
417348:	5e                   	pop    %esi
417349:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41734c:	33 cd                	xor    %ebp,%ecx
41734e:	e8 77 26 05 00       	call   0x4699ca
417353:	8b e5                	mov    %ebp,%esp
417355:	5d                   	pop    %ebp
417356:	c2 1c 00             	ret    $0x1c
417359:	e8 d3 22 06 00       	call   0x479631
41735e:	cc                   	int3
41735f:	cc                   	int3
417360:	55                   	push   %ebp
417361:	8b ec                	mov    %esp,%ebp
417363:	83 e4 f8             	and    $0xfffffff8,%esp
417366:	83 ec 5c             	sub    $0x5c,%esp
417369:	a1 14 40 4c 00       	mov    0x4c4014,%eax
41736e:	33 c4                	xor    %esp,%eax
417370:	89 44 24 58          	mov    %eax,0x58(%esp)
417374:	0f b6 44 24 0d       	movzbl 0xd(%esp),%eax
417379:	53                   	push   %ebx
41737a:	56                   	push   %esi
41737b:	8b 75 14             	mov    0x14(%ebp),%esi
41737e:	89 4c 24 10          	mov    %ecx,0x10(%esp)
417382:	8b 5c 24 10          	mov    0x10(%esp),%ebx
417386:	c7 44 24 0c 2b 00 00 	movl   $0x2b,0xc(%esp)
41738d:	00
41738e:	8b 4e 14             	mov    0x14(%esi),%ecx
417391:	8b d1                	mov    %ecx,%edx
417393:	f7 c1 20 00 00 00    	test   $0x20,%ecx
417399:	c6 44 24 14 25       	movb   $0x25,0x14(%esp)
41739e:	57                   	push   %edi
41739f:	0f 45 44 24 10       	cmovne 0x10(%esp),%eax
4173a4:	f7 c2 20 00 00 00    	test   $0x20,%edx
4173aa:	8b 7d 08             	mov    0x8(%ebp),%edi
4173ad:	8d 54 24 1a          	lea    0x1a(%esp),%edx
4173b1:	88 44 24 19          	mov    %al,0x19(%esp)
4173b5:	8d 44 24 19          	lea    0x19(%esp),%eax
4173b9:	0f 45 c2             	cmovne %edx,%eax
4173bc:	f6 c1 08             	test   $0x8,%cl
4173bf:	74 04                	je     0x4173c5
4173c1:	c6 00 23             	movb   $0x23,(%eax)
4173c4:	40                   	inc    %eax
4173c5:	8b d1                	mov    %ecx,%edx
4173c7:	66 c7 00 49 36       	movw   $0x3649,(%eax)
4173cc:	81 e2 00 0e 00 00    	and    $0xe00,%edx
4173d2:	c6 40 02 34          	movb   $0x34,0x2(%eax)
4173d6:	81 fa 00 04 00 00    	cmp    $0x400,%edx
4173dc:	75 04                	jne    0x4173e2
4173de:	b1 6f                	mov    $0x6f,%cl
4173e0:	eb 17                	jmp    0x4173f9
4173e2:	81 fa 00 08 00 00    	cmp    $0x800,%edx
4173e8:	74 04                	je     0x4173ee
4173ea:	b1 75                	mov    $0x75,%cl
4173ec:	eb 0b                	jmp    0x4173f9
4173ee:	c0 e1 03             	shl    $0x3,%cl
4173f1:	f6 d1                	not    %cl
4173f3:	80 e1 20             	and    $0x20,%cl
4173f6:	80 c9 58             	or     $0x58,%cl
4173f9:	ff 75 20             	push   0x20(%ebp)
4173fc:	88 48 03             	mov    %cl,0x3(%eax)
4173ff:	ff 75 1c             	push   0x1c(%ebp)
417402:	c6 40 04 00          	movb   $0x0,0x4(%eax)
417406:	8d 44 24 20          	lea    0x20(%esp),%eax
41740a:	50                   	push   %eax
41740b:	8d 44 24 2c          	lea    0x2c(%esp),%eax
41740f:	6a 40                	push   $0x40
417411:	50                   	push   %eax
417412:	e8 d9 ee ff ff       	call   0x4162f0
417417:	83 c4 14             	add    $0x14,%esp
41741a:	50                   	push   %eax
41741b:	8d 44 24 24          	lea    0x24(%esp),%eax
41741f:	50                   	push   %eax
417420:	ff 75 18             	push   0x18(%ebp)
417423:	56                   	push   %esi
417424:	ff 75 10             	push   0x10(%ebp)
417427:	ff 75 0c             	push   0xc(%ebp)
41742a:	57                   	push   %edi
41742b:	53                   	push   %ebx
41742c:	e8 9f 08 00 00       	call   0x417cd0
417431:	8b 8c 24 84 00 00 00 	mov    0x84(%esp),%ecx
417438:	83 c4 20             	add    $0x20,%esp
41743b:	8b c7                	mov    %edi,%eax
41743d:	5f                   	pop    %edi
41743e:	5e                   	pop    %esi
41743f:	5b                   	pop    %ebx
417440:	33 cc                	xor    %esp,%ecx
417442:	e8 83 25 05 00       	call   0x4699ca
417447:	8b e5                	mov    %ebp,%esp
417449:	5d                   	pop    %ebp
41744a:	c2 1c 00             	ret    $0x1c
41744d:	cc                   	int3
41744e:	cc                   	int3
41744f:	cc                   	int3
417450:	55                   	push   %ebp
417451:	8b ec                	mov    %esp,%ebp
417453:	83 e4 f8             	and    $0xfffffff8,%esp
417456:	83 ec 5c             	sub    $0x5c,%esp
417459:	a1 14 40 4c 00       	mov    0x4c4014,%eax
41745e:	33 c4                	xor    %esp,%eax
417460:	89 44 24 58          	mov    %eax,0x58(%esp)
417464:	0f b6 44 24 0d       	movzbl 0xd(%esp),%eax
417469:	53                   	push   %ebx
41746a:	56                   	push   %esi
41746b:	8b 75 14             	mov    0x14(%ebp),%esi
41746e:	89 4c 24 10          	mov    %ecx,0x10(%esp)
417472:	8b 5c 24 10          	mov    0x10(%esp),%ebx
417476:	c7 44 24 0c 2b 00 00 	movl   $0x2b,0xc(%esp)
41747d:	00
41747e:	8b 4e 14             	mov    0x14(%esi),%ecx
417481:	8b d1                	mov    %ecx,%edx
417483:	f7 c1 20 00 00 00    	test   $0x20,%ecx
417489:	c6 44 24 14 25       	movb   $0x25,0x14(%esp)
41748e:	57                   	push   %edi
41748f:	0f 45 44 24 10       	cmovne 0x10(%esp),%eax
417494:	f7 c2 20 00 00 00    	test   $0x20,%edx
41749a:	8b 7d 08             	mov    0x8(%ebp),%edi
41749d:	8d 54 24 1a          	lea    0x1a(%esp),%edx
4174a1:	88 44 24 19          	mov    %al,0x19(%esp)
4174a5:	8d 44 24 19          	lea    0x19(%esp),%eax
4174a9:	0f 45 c2             	cmovne %edx,%eax
4174ac:	f6 c1 08             	test   $0x8,%cl
4174af:	74 04                	je     0x4174b5
4174b1:	c6 00 23             	movb   $0x23,(%eax)
4174b4:	40                   	inc    %eax
4174b5:	8b d1                	mov    %ecx,%edx
4174b7:	66 c7 00 49 36       	movw   $0x3649,(%eax)
4174bc:	81 e2 00 0e 00 00    	and    $0xe00,%edx
4174c2:	c6 40 02 34          	movb   $0x34,0x2(%eax)
4174c6:	81 fa 00 04 00 00    	cmp    $0x400,%edx
4174cc:	75 04                	jne    0x4174d2
4174ce:	b1 6f                	mov    $0x6f,%cl
4174d0:	eb 17                	jmp    0x4174e9
4174d2:	81 fa 00 08 00 00    	cmp    $0x800,%edx
4174d8:	74 04                	je     0x4174de
4174da:	b1 64                	mov    $0x64,%cl
4174dc:	eb 0b                	jmp    0x4174e9
4174de:	c0 e1 03             	shl    $0x3,%cl
4174e1:	f6 d1                	not    %cl
4174e3:	80 e1 20             	and    $0x20,%cl
4174e6:	80 c9 58             	or     $0x58,%cl
4174e9:	ff 75 20             	push   0x20(%ebp)
4174ec:	88 48 03             	mov    %cl,0x3(%eax)
4174ef:	ff 75 1c             	push   0x1c(%ebp)
4174f2:	c6 40 04 00          	movb   $0x0,0x4(%eax)
4174f6:	8d 44 24 20          	lea    0x20(%esp),%eax
4174fa:	50                   	push   %eax
4174fb:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4174ff:	6a 40                	push   $0x40
417501:	50                   	push   %eax
417502:	e8 e9 ed ff ff       	call   0x4162f0
417507:	83 c4 14             	add    $0x14,%esp
41750a:	50                   	push   %eax
41750b:	8d 44 24 24          	lea    0x24(%esp),%eax
41750f:	50                   	push   %eax
417510:	ff 75 18             	push   0x18(%ebp)
417513:	56                   	push   %esi
417514:	ff 75 10             	push   0x10(%ebp)
417517:	ff 75 0c             	push   0xc(%ebp)
41751a:	57                   	push   %edi
41751b:	53                   	push   %ebx
41751c:	e8 af 07 00 00       	call   0x417cd0
417521:	8b 8c 24 84 00 00 00 	mov    0x84(%esp),%ecx
417528:	83 c4 20             	add    $0x20,%esp
41752b:	8b c7                	mov    %edi,%eax
41752d:	5f                   	pop    %edi
41752e:	5e                   	pop    %esi
41752f:	5b                   	pop    %ebx
417530:	33 cc                	xor    %esp,%ecx
417532:	e8 93 24 05 00       	call   0x4699ca
417537:	8b e5                	mov    %ebp,%esp
417539:	5d                   	pop    %ebp
41753a:	c2 1c 00             	ret    $0x1c
41753d:	cc                   	int3
41753e:	cc                   	int3
41753f:	cc                   	int3
417540:	55                   	push   %ebp
417541:	8b ec                	mov    %esp,%ebp
417543:	83 e4 f8             	and    $0xfffffff8,%esp
417546:	83 ec 5c             	sub    $0x5c,%esp
417549:	a1 14 40 4c 00       	mov    0x4c4014,%eax
41754e:	33 c4                	xor    %esp,%eax
417550:	89 44 24 58          	mov    %eax,0x58(%esp)
417554:	0f b6 44 24 0d       	movzbl 0xd(%esp),%eax
417559:	53                   	push   %ebx
41755a:	56                   	push   %esi
41755b:	8b 75 14             	mov    0x14(%ebp),%esi
41755e:	89 4c 24 10          	mov    %ecx,0x10(%esp)
417562:	8b 5c 24 10          	mov    0x10(%esp),%ebx
417566:	c7 44 24 0c 2b 00 00 	movl   $0x2b,0xc(%esp)
41756d:	00
41756e:	8b 4e 14             	mov    0x14(%esi),%ecx
417571:	8b d1                	mov    %ecx,%edx