41f2cf:	56                   	push   %esi
41f2d0:	57                   	push   %edi
41f2d1:	7d 0b                	jge    0x41f2de
41f2d3:	83 ce ff             	or     $0xffffffff,%esi
41f2d6:	d3 ee                	shr    %cl,%esi
41f2d8:	83 4d f8 ff          	orl    $0xffffffff,-0x8(%ebp)
41f2dc:	eb 0d                	jmp    0x41f2eb
41f2de:	83 c1 e0             	add    $0xffffffe0,%ecx
41f2e1:	83 ca ff             	or     $0xffffffff,%edx
41f2e4:	33 f6                	xor    %esi,%esi
41f2e6:	d3 ea                	shr    %cl,%edx
41f2e8:	89 55 f8             	mov    %edx,-0x8(%ebp)
41f2eb:	8b 0d e8 08 45 00    	mov    0x4508e8,%ecx
41f2f1:	8b d9                	mov    %ecx,%ebx
41f2f3:	eb 11                	jmp    0x41f306
41f2f5:	8b 53 04             	mov    0x4(%ebx),%edx
41f2f8:	8b 3b                	mov    (%ebx),%edi
41f2fa:	23 55 f8             	and    -0x8(%ebp),%edx
41f2fd:	23 fe                	and    %esi,%edi
41f2ff:	0b d7                	or     %edi,%edx
41f301:	75 0a                	jne    0x41f30d
41f303:	83 c3 14             	add    $0x14,%ebx
41f306:	89 5d 08             	mov    %ebx,0x8(%ebp)
41f309:	3b d8                	cmp    %eax,%ebx
41f30b:	72 e8                	jb     0x41f2f5
41f30d:	3b d8                	cmp    %eax,%ebx
41f30f:	75 7f                	jne    0x41f390
41f311:	8b 1d e0 08 45 00    	mov    0x4508e0,%ebx
41f317:	eb 11                	jmp    0x41f32a
41f319:	8b 53 04             	mov    0x4(%ebx),%edx
41f31c:	8b 3b                	mov    (%ebx),%edi
41f31e:	23 55 f8             	and    -0x8(%ebp),%edx
41f321:	23 fe                	and    %esi,%edi
41f323:	0b d7                	or     %edi,%edx
41f325:	75 0a                	jne    0x41f331
41f327:	83 c3 14             	add    $0x14,%ebx
41f32a:	89 5d 08             	mov    %ebx,0x8(%ebp)
41f32d:	3b d9                	cmp    %ecx,%ebx
41f32f:	72 e8                	jb     0x41f319
41f331:	3b d9                	cmp    %ecx,%ebx
41f333:	75 5b                	jne    0x41f390
41f335:	eb 0c                	jmp    0x41f343
41f337:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
41f33b:	75 0a                	jne    0x41f347
41f33d:	83 c3 14             	add    $0x14,%ebx
41f340:	89 5d 08             	mov    %ebx,0x8(%ebp)
41f343:	3b d8                	cmp    %eax,%ebx
41f345:	72 f0                	jb     0x41f337
41f347:	3b d8                	cmp    %eax,%ebx
41f349:	75 31                	jne    0x41f37c
41f34b:	8b 1d e0 08 45 00    	mov    0x4508e0,%ebx
41f351:	eb 09                	jmp    0x41f35c
41f353:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
41f357:	75 0a                	jne    0x41f363
41f359:	83 c3 14             	add    $0x14,%ebx
41f35c:	89 5d 08             	mov    %ebx,0x8(%ebp)
41f35f:	3b d9                	cmp    %ecx,%ebx
41f361:	72 f0                	jb     0x41f353
41f363:	3b d9                	cmp    %ecx,%ebx
41f365:	75 15                	jne    0x41f37c
41f367:	e8 a0 fa ff ff       	call   0x41ee0c
41f36c:	8b d8                	mov    %eax,%ebx
41f36e:	89 5d 08             	mov    %ebx,0x8(%ebp)
41f371:	85 db                	test   %ebx,%ebx
41f373:	75 07                	jne    0x41f37c
41f375:	33 c0                	xor    %eax,%eax
41f377:	e9 09 02 00 00       	jmp    0x41f585
41f37c:	53                   	push   %ebx
41f37d:	e8 3a fb ff ff       	call   0x41eebc
41f382:	59                   	pop    %ecx
41f383:	8b 4b 10             	mov    0x10(%ebx),%ecx
41f386:	89 01                	mov    %eax,(%ecx)
41f388:	8b 43 10             	mov    0x10(%ebx),%eax
41f38b:	83 38 ff             	cmpl   $0xffffffff,(%eax)
41f38e:	74 e5                	je     0x41f375
41f390:	89 1d e8 08 45 00    	mov    %ebx,0x4508e8
41f396:	8b 43 10             	mov    0x10(%ebx),%eax
41f399:	8b 10                	mov    (%eax),%edx
41f39b:	89 55 fc             	mov    %edx,-0x4(%ebp)
41f39e:	83 fa ff             	cmp    $0xffffffff,%edx
41f3a1:	74 14                	je     0x41f3b7
41f3a3:	8b 8c 90 c4 00 00 00 	mov    0xc4(%eax,%edx,4),%ecx
41f3aa:	8b 7c 90 44          	mov    0x44(%eax,%edx,4),%edi
41f3ae:	23 4d f8             	and    -0x8(%ebp),%ecx
41f3b1:	23 fe                	and    %esi,%edi
41f3b3:	0b cf                	or     %edi,%ecx
41f3b5:	75 29                	jne    0x41f3e0
41f3b7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41f3bb:	8b 90 c4 00 00 00    	mov    0xc4(%eax),%edx
41f3c1:	8d 48 44             	lea    0x44(%eax),%ecx
41f3c4:	8b 39                	mov    (%ecx),%edi
41f3c6:	23 55 f8             	and    -0x8(%ebp),%edx
41f3c9:	23 fe                	and    %esi,%edi
41f3cb:	0b d7                	or     %edi,%edx
41f3cd:	75 0e                	jne    0x41f3dd
41f3cf:	ff 45 fc             	incl   -0x4(%ebp)
41f3d2:	8b 91 84 00 00 00    	mov    0x84(%ecx),%edx
41f3d8:	83 c1 04             	add    $0x4,%ecx
41f3db:	eb e7                	jmp    0x41f3c4
41f3dd:	8b 55 fc             	mov    -0x4(%ebp),%edx
41f3e0:	8b ca                	mov    %edx,%ecx
41f3e2:	69 c9 04 02 00 00    	imul   $0x204,%ecx,%ecx
41f3e8:	8d 8c 01 44 01 00 00 	lea    0x144(%ecx,%eax,1),%ecx
41f3ef:	89 4d f4             	mov    %ecx,-0xc(%ebp)
41f3f2:	8b 4c 90 44          	mov    0x44(%eax,%edx,4),%ecx
41f3f6:	33 ff                	xor    %edi,%edi
41f3f8:	23 ce                	and    %esi,%ecx
41f3fa:	75 12                	jne    0x41f40e
41f3fc:	8b 8c 90 c4 00 00 00 	mov    0xc4(%eax,%edx,4),%ecx
41f403:	23 4d f8             	and    -0x8(%ebp),%ecx
41f406:	6a 20                	push   $0x20
41f408:	5f                   	pop    %edi
41f409:	eb 03                	jmp    0x41f40e
41f40b:	03 c9                	add    %ecx,%ecx
41f40d:	47                   	inc    %edi
41f40e:	85 c9                	test   %ecx,%ecx
41f410:	7d f9                	jge    0x41f40b
41f412:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41f415:	8b 54 f9 04          	mov    0x4(%ecx,%edi,8),%edx
41f419:	8b 0a                	mov    (%edx),%ecx
41f41b:	2b 4d f0             	sub    -0x10(%ebp),%ecx
41f41e:	8b f1                	mov    %ecx,%esi
41f420:	c1 fe 04             	sar    $0x4,%esi
41f423:	4e                   	dec    %esi
41f424:	83 fe 3f             	cmp    $0x3f,%esi
41f427:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41f42a:	7e 03                	jle    0x41f42f
41f42c:	6a 3f                	push   $0x3f
41f42e:	5e                   	pop    %esi
41f42f:	3b f7                	cmp    %edi,%esi
41f431:	0f 84 01 01 00 00    	je     0x41f538
41f437:	8b 4a 04             	mov    0x4(%edx),%ecx
41f43a:	3b 4a 08             	cmp    0x8(%edx),%ecx
41f43d:	75 5c                	jne    0x41f49b
41f43f:	83 ff 20             	cmp    $0x20,%edi
41f442:	bb 00 00 00 80       	mov    $0x80000000,%ebx
41f447:	7d 26                	jge    0x41f46f
41f449:	8b cf                	mov    %edi,%ecx
41f44b:	d3 eb                	shr    %cl,%ebx
41f44d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f450:	8d 7c 38 04          	lea    0x4(%eax,%edi,1),%edi
41f454:	f7 d3                	not    %ebx
41f456:	89 5d ec             	mov    %ebx,-0x14(%ebp)
41f459:	23 5c 88 44          	and    0x44(%eax,%ecx,4),%ebx
41f45d:	89 5c 88 44          	mov    %ebx,0x44(%eax,%ecx,4)
41f461:	fe 0f                	decb   (%edi)
41f463:	75 33                	jne    0x41f498
41f465:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41f468:	8b 5d 08             	mov    0x8(%ebp),%ebx
41f46b:	21 0b                	and    %ecx,(%ebx)
41f46d:	eb 2c                	jmp    0x41f49b
41f46f:	8d 4f e0             	lea    -0x20(%edi),%ecx
41f472:	d3 eb                	shr    %cl,%ebx
41f474:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f477:	8d 8c 88 c4 00 00 00 	lea    0xc4(%eax,%ecx,4),%ecx
41f47e:	8d 7c 38 04          	lea    0x4(%eax,%edi,1),%edi
41f482:	f7 d3                	not    %ebx
41f484:	21 19                	and    %ebx,(%ecx)
41f486:	fe 0f                	decb   (%edi)
41f488:	89 5d ec             	mov    %ebx,-0x14(%ebp)
41f48b:	75 0b                	jne    0x41f498
41f48d:	8b 5d 08             	mov    0x8(%ebp),%ebx
41f490:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41f493:	21 4b 04             	and    %ecx,0x4(%ebx)
41f496:	eb 03                	jmp    0x41f49b
41f498:	8b 5d 08             	mov    0x8(%ebp),%ebx
41f49b:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
41f49f:	8b 4a 08             	mov    0x8(%edx),%ecx
41f4a2:	8b 7a 04             	mov    0x4(%edx),%edi
41f4a5:	89 79 04             	mov    %edi,0x4(%ecx)
41f4a8:	8b 4a 04             	mov    0x4(%edx),%ecx
41f4ab:	8b 7a 08             	mov    0x8(%edx),%edi
41f4ae:	89 79 08             	mov    %edi,0x8(%ecx)
41f4b1:	0f 84 8d 00 00 00    	je     0x41f544
41f4b7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41f4ba:	8d 0c f1             	lea    (%ecx,%esi,8),%ecx
41f4bd:	8b 79 04             	mov    0x4(%ecx),%edi
41f4c0:	89 4a 08             	mov    %ecx,0x8(%edx)
41f4c3:	89 7a 04             	mov    %edi,0x4(%edx)
41f4c6:	89 51 04             	mov    %edx,0x4(%ecx)
41f4c9:	8b 4a 04             	mov    0x4(%edx),%ecx
41f4cc:	89 51 08             	mov    %edx,0x8(%ecx)
41f4cf:	8b 4a 04             	mov    0x4(%edx),%ecx
41f4d2:	3b 4a 08             	cmp    0x8(%edx),%ecx
41f4d5:	75 5e                	jne    0x41f535
41f4d7:	8a 4c 06 04          	mov    0x4(%esi,%eax,1),%cl
41f4db:	88 4d 0b             	mov    %cl,0xb(%ebp)
41f4de:	fe c1                	inc    %cl
41f4e0:	83 fe 20             	cmp    $0x20,%esi
41f4e3:	88 4c 06 04          	mov    %cl,0x4(%esi,%eax,1)
41f4e7:	7d 23                	jge    0x41f50c
41f4e9:	80 7d 0b 00          	cmpb   $0x0,0xb(%ebp)
41f4ed:	75 0b                	jne    0x41f4fa
41f4ef:	bf 00 00 00 80       	mov    $0x80000000,%edi
41f4f4:	8b ce                	mov    %esi,%ecx
41f4f6:	d3 ef                	shr    %cl,%edi
41f4f8:	09 3b                	or     %edi,(%ebx)
41f4fa:	8b ce                	mov    %esi,%ecx
41f4fc:	bf 00 00 00 80       	mov    $0x80000000,%edi
41f501:	d3 ef                	shr    %cl,%edi
41f503:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f506:	09 7c 88 44          	or     %edi,0x44(%eax,%ecx,4)
41f50a:	eb 29                	jmp    0x41f535
41f50c:	80 7d 0b 00          	cmpb   $0x0,0xb(%ebp)
41f510:	75 0d                	jne    0x41f51f
41f512:	8d 4e e0             	lea    -0x20(%esi),%ecx
41f515:	bf 00 00 00 80       	mov    $0x80000000,%edi
41f51a:	d3 ef                	shr    %cl,%edi
41f51c:	09 7b 04             	or     %edi,0x4(%ebx)
41f51f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f522:	8d bc 88 c4 00 00 00 	lea    0xc4(%eax,%ecx,4),%edi
41f529:	8d 4e e0             	lea    -0x20(%esi),%ecx
41f52c:	be 00 00 00 80       	mov    $0x80000000,%esi
41f531:	d3 ee                	shr    %cl,%esi
41f533:	09 37                	or     %esi,(%edi)
41f535:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41f538:	85 c9                	test   %ecx,%ecx
41f53a:	74 0b                	je     0x41f547
41f53c:	89 0a                	mov    %ecx,(%edx)
41f53e:	89 4c 11 fc          	mov    %ecx,-0x4(%ecx,%edx,1)
41f542:	eb 03                	jmp    0x41f547
41f544:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41f547:	8b 75 f0             	mov    -0x10(%ebp),%esi
41f54a:	03 d1                	add    %ecx,%edx
41f54c:	8d 4e 01             	lea    0x1(%esi),%ecx
41f54f:	89 0a                	mov    %ecx,(%edx)
41f551:	89 4c 32 fc          	mov    %ecx,-0x4(%edx,%esi,1)
41f555:	8b 75 f4             	mov    -0xc(%ebp),%esi
41f558:	8b 0e                	mov    (%esi),%ecx
41f55a:	8d 79 01             	lea    0x1(%ecx),%edi
41f55d:	89 3e                	mov    %edi,(%esi)
41f55f:	85 c9                	test   %ecx,%ecx
41f561:	75 1a                	jne    0x41f57d
41f563:	3b 1d 60 ee 44 00    	cmp    0x44ee60,%ebx
41f569:	75 12                	jne    0x41f57d
41f56b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f56e:	3b 0d f0 08 45 00    	cmp    0x4508f0,%ecx
41f574:	75 07                	jne    0x41f57d
41f576:	83 25 60 ee 44 00 00 	andl   $0x0,0x44ee60
41f57d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f580:	89 08                	mov    %ecx,(%eax)
41f582:	8d 42 04             	lea    0x4(%edx),%eax
41f585:	5f                   	pop    %edi
41f586:	5e                   	pop    %esi
41f587:	5b                   	pop    %ebx
41f588:	c9                   	leave
41f589:	c3                   	ret
41f58a:	cc                   	int3
41f58b:	cc                   	int3
41f58c:	68 f0 f5 41 00       	push   $0x41f5f0
41f591:	64 ff 35 00 00 00 00 	push   %fs:0x0
41f598:	8b 44 24 10          	mov    0x10(%esp),%eax
41f59c:	89 6c 24 10          	mov    %ebp,0x10(%esp)
41f5a0:	8d 6c 24 10          	lea    0x10(%esp),%ebp
41f5a4:	2b e0                	sub    %eax,%esp
41f5a6:	53                   	push   %ebx
41f5a7:	56                   	push   %esi
41f5a8:	57                   	push   %edi
41f5a9:	a1 98 f2 42 00       	mov    0x42f298,%eax
41f5ae:	31 45 fc             	xor    %eax,-0x4(%ebp)
41f5b1:	33 c5                	xor    %ebp,%eax
41f5b3:	50                   	push   %eax
41f5b4:	89 65 e8             	mov    %esp,-0x18(%ebp)
41f5b7:	ff 75 f8             	push   -0x8(%ebp)
41f5ba:	8b 45 fc             	mov    -0x4(%ebp),%eax
41f5bd:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41f5c4:	89 45 f8             	mov    %eax,-0x8(%ebp)
41f5c7:	8d 45 f0             	lea    -0x10(%ebp),%eax
41f5ca:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41f5d0:	c3                   	ret
41f5d1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41f5d4:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41f5db:	59                   	pop    %ecx
41f5dc:	5f                   	pop    %edi
41f5dd:	5f                   	pop    %edi
41f5de:	5e                   	pop    %esi
41f5df:	5b                   	pop    %ebx
41f5e0:	8b e5                	mov    %ebp,%esp
41f5e2:	5d                   	pop    %ebp
41f5e3:	51                   	push   %ecx
41f5e4:	c3                   	ret
41f5e5:	cc                   	int3
41f5e6:	cc                   	int3
41f5e7:	cc                   	int3
41f5e8:	cc                   	int3
41f5e9:	cc                   	int3
41f5ea:	cc                   	int3
41f5eb:	cc                   	int3
41f5ec:	cc                   	int3
41f5ed:	cc                   	int3
41f5ee:	cc                   	int3
41f5ef:	cc                   	int3
41f5f0:	8b ff                	mov    %edi,%edi
41f5f2:	55                   	push   %ebp
41f5f3:	8b ec                	mov    %esp,%ebp
41f5f5:	83 ec 18             	sub    $0x18,%esp
41f5f8:	53                   	push   %ebx
41f5f9:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41f5fc:	56                   	push   %esi
41f5fd:	8b 73 08             	mov    0x8(%ebx),%esi
41f600:	33 35 98 f2 42 00    	xor    0x42f298,%esi
41f606:	57                   	push   %edi
41f607:	8b 06                	mov    (%esi),%eax
41f609:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
41f60d:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
41f614:	8d 7b 10             	lea    0x10(%ebx),%edi
41f617:	83 f8 fe             	cmp    $0xfffffffe,%eax
41f61a:	74 0d                	je     0x41f629
41f61c:	8b 4e 04             	mov    0x4(%esi),%ecx
41f61f:	03 cf                	add    %edi,%ecx
41f621:	33 0c 38             	xor    (%eax,%edi,1),%ecx
41f624:	e8 a5 eb ff ff       	call   0x41e1ce
41f629:	8b 4e 0c             	mov    0xc(%esi),%ecx
41f62c:	8b 46 08             	mov    0x8(%esi),%eax
41f62f:	03 cf                	add    %edi,%ecx
41f631:	33 0c 38             	xor    (%eax,%edi,1),%ecx
41f634:	e8 95 eb ff ff       	call   0x41e1ce
41f639:	8b 45 08             	mov    0x8(%ebp),%eax
41f63c:	f6 40 04 66          	testb  $0x66,0x4(%eax)
41f640:	0f 85 16 01 00 00    	jne    0x41f75c
41f646:	8b 4d 10             	mov    0x10(%ebp),%ecx
41f649:	8d 55 e8             	lea    -0x18(%ebp),%edx
41f64c:	89 53 fc             	mov    %edx,-0x4(%ebx)
41f64f:	8b 5b 0c             	mov    0xc(%ebx),%ebx
41f652:	89 45 e8             	mov    %eax,-0x18(%ebp)
41f655:	89 4d ec             	mov    %ecx,-0x14(%ebp)
41f658:	83 fb fe             	cmp    $0xfffffffe,%ebx
41f65b:	74 5f                	je     0x41f6bc
41f65d:	8d 49 00             	lea    0x0(%ecx),%ecx
41f660:	8d 04 5b             	lea    (%ebx,%ebx,2),%eax
41f663:	8b 4c 86 14          	mov    0x14(%esi,%eax,4),%ecx
41f667:	8d 44 86 10          	lea    0x10(%esi,%eax,4),%eax
41f66b:	89 45 f0             	mov    %eax,-0x10(%ebp)
41f66e:	8b 00                	mov    (%eax),%eax
41f670:	89 45 f8             	mov    %eax,-0x8(%ebp)
41f673:	85 c9                	test   %ecx,%ecx
41f675:	74 14                	je     0x41f68b
41f677:	8b d7                	mov    %edi,%edx
41f679:	e8 a4 1b 00 00       	call   0x421222
41f67e:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
41f682:	85 c0                	test   %eax,%eax
41f684:	7c 40                	jl     0x41f6c6
41f686:	7f 47                	jg     0x41f6cf
41f688:	8b 45 f8             	mov    -0x8(%ebp),%eax
41f68b:	8b d8                	mov    %eax,%ebx
41f68d:	83 f8 fe             	cmp    $0xfffffffe,%eax
41f690:	75 ce                	jne    0x41f660
41f692:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
41f696:	74 24                	je     0x41f6bc
41f698:	8b 06                	mov    (%esi),%eax