41a2fe:	89 bd a0 fd ff ff    	mov    %edi,-0x260(%ebp)
41a304:	89 85 dc fd ff ff    	mov    %eax,-0x224(%ebp)
41a30a:	89 85 e0 fd ff ff    	mov    %eax,-0x220(%ebp)
41a310:	89 85 e4 fd ff ff    	mov    %eax,-0x21c(%ebp)
41a316:	8d 47 1c             	lea    0x1c(%edi),%eax
41a319:	89 85 f4 fd ff ff    	mov    %eax,-0x20c(%ebp)
41a31f:	33 c0                	xor    %eax,%eax
41a321:	89 85 f8 fd ff ff    	mov    %eax,-0x208(%ebp)
41a327:	89 85 fc fd ff ff    	mov    %eax,-0x204(%ebp)
41a32d:	89 85 00 fe ff ff    	mov    %eax,-0x200(%ebp)
41a333:	8d 47 28             	lea    0x28(%edi),%eax
41a336:	89 85 10 fe ff ff    	mov    %eax,-0x1f0(%ebp)
41a33c:	89 85 18 fe ff ff    	mov    %eax,-0x1e8(%ebp)
41a342:	8d 47 2c             	lea    0x2c(%edi),%eax
41a345:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
41a34b:	89 85 34 fe ff ff    	mov    %eax,-0x1cc(%ebp)
41a351:	8d 47 30             	lea    0x30(%edi),%eax
41a354:	89 85 48 fe ff ff    	mov    %eax,-0x1b8(%ebp)
41a35a:	33 c0                	xor    %eax,%eax
41a35c:	6a 20                	push   $0x20
41a35e:	5a                   	pop    %edx
41a35f:	89 85 4c fe ff ff    	mov    %eax,-0x1b4(%ebp)
41a365:	89 85 50 fe ff ff    	mov    %eax,-0x1b0(%ebp)
41a36b:	89 85 54 fe ff ff    	mov    %eax,-0x1ac(%ebp)
41a371:	8d 47 38             	lea    0x38(%edi),%eax
41a374:	6a 04                	push   $0x4
41a376:	59                   	pop    %ecx
41a377:	89 85 64 fe ff ff    	mov    %eax,-0x19c(%ebp)
41a37d:	33 c0                	xor    %eax,%eax
41a37f:	89 8d a4 fd ff ff    	mov    %ecx,-0x25c(%ebp)
41a385:	89 8d ac fd ff ff    	mov    %ecx,-0x254(%ebp)
41a38b:	89 8d c0 fd ff ff    	mov    %ecx,-0x240(%ebp)
41a391:	89 8d c8 fd ff ff    	mov    %ecx,-0x238(%ebp)
41a397:	b9 a0 a1 41 00       	mov    $0x41a1a0,%ecx
41a39c:	89 85 68 fe ff ff    	mov    %eax,-0x198(%ebp)
41a3a2:	89 85 6c fe ff ff    	mov    %eax,-0x194(%ebp)
41a3a8:	89 85 70 fe ff ff    	mov    %eax,-0x190(%ebp)
41a3ae:	8d 47 44             	lea    0x44(%edi),%eax
41a3b1:	89 95 98 fd ff ff    	mov    %edx,-0x268(%ebp)
41a3b7:	89 bd a8 fd ff ff    	mov    %edi,-0x258(%ebp)
41a3bd:	89 95 b4 fd ff ff    	mov    %edx,-0x24c(%ebp)
41a3c3:	c7 85 b8 fd ff ff 4c 	movl   $0x405f4c,-0x248(%ebp)
41a3ca:	5f 40 00
41a3cd:	89 8d cc fd ff ff    	mov    %ecx,-0x234(%ebp)
41a3d3:	c7 85 d4 fd ff ff 6c 	movl   $0x405f6c,-0x22c(%ebp)
41a3da:	5f 40 00
41a3dd:	89 9d d8 fd ff ff    	mov    %ebx,-0x228(%ebp)
41a3e3:	89 8d e8 fd ff ff    	mov    %ecx,-0x218(%ebp)
41a3e9:	c7 85 f0 fd ff ff 88 	movl   $0x405f88,-0x210(%ebp)
41a3f0:	5f 40 00
41a3f3:	89 95 08 fe ff ff    	mov    %edx,-0x1f8(%ebp)
41a3f9:	c7 85 0c fe ff ff b4 	movl   $0x405fb4,-0x1f4(%ebp)
41a400:	5f 40 00
41a403:	c7 85 14 fe ff ff 04 	movl   $0x4,-0x1ec(%ebp)
41a40a:	00 00 00
41a40d:	c7 85 1c fe ff ff 04 	movl   $0x4,-0x1e4(%ebp)
41a414:	00 00 00
41a417:	89 95 24 fe ff ff    	mov    %edx,-0x1dc(%ebp)
41a41d:	c7 85 28 fe ff ff e8 	movl   $0x405fe8,-0x1d8(%ebp)
41a424:	5f 40 00
41a427:	c7 85 30 fe ff ff 04 	movl   $0x4,-0x1d0(%ebp)
41a42e:	00 00 00
41a431:	c7 85 38 fe ff ff 04 	movl   $0x4,-0x1c8(%ebp)
41a438:	00 00 00
41a43b:	89 8d 3c fe ff ff    	mov    %ecx,-0x1c4(%ebp)
41a441:	c7 85 44 fe ff ff 1c 	movl   $0x40601c,-0x1bc(%ebp)
41a448:	60 40 00
41a44b:	89 8d 58 fe ff ff    	mov    %ecx,-0x1a8(%ebp)
41a451:	c7 85 60 fe ff ff 40 	movl   $0x406040,-0x1a0(%ebp)
41a458:	60 40 00
41a45b:	89 95 78 fe ff ff    	mov    %edx,-0x188(%ebp)
41a461:	c7 85 7c fe ff ff 74 	movl   $0x406074,-0x184(%ebp)
41a468:	60 40 00
41a46b:	89 85 80 fe ff ff    	mov    %eax,-0x180(%ebp)
41a471:	c7 85 84 fe ff ff 04 	movl   $0x4,-0x17c(%ebp)
41a478:	00 00 00
41a47b:	89 85 88 fe ff ff    	mov    %eax,-0x178(%ebp)
41a481:	8d 47 48             	lea    0x48(%edi),%eax
41a484:	89 85 9c fe ff ff    	mov    %eax,-0x164(%ebp)
41a48a:	89 85 a4 fe ff ff    	mov    %eax,-0x15c(%ebp)
41a490:	8d 47 4c             	lea    0x4c(%edi),%eax
41a493:	89 85 b8 fe ff ff    	mov    %eax,-0x148(%ebp)
41a499:	89 85 c0 fe ff ff    	mov    %eax,-0x140(%ebp)
41a49f:	8d 47 50             	lea    0x50(%edi),%eax
41a4a2:	89 85 d4 fe ff ff    	mov    %eax,-0x12c(%ebp)
41a4a8:	89 85 dc fe ff ff    	mov    %eax,-0x124(%ebp)
41a4ae:	8d 47 54             	lea    0x54(%edi),%eax
41a4b1:	89 85 f0 fe ff ff    	mov    %eax,-0x110(%ebp)
41a4b7:	33 c0                	xor    %eax,%eax
41a4b9:	89 85 f4 fe ff ff    	mov    %eax,-0x10c(%ebp)
41a4bf:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
41a4c5:	89 85 fc fe ff ff    	mov    %eax,-0x104(%ebp)
41a4cb:	8d 47 40             	lea    0x40(%edi),%eax
41a4ce:	89 85 0c ff ff ff    	mov    %eax,-0xf4(%ebp)
41a4d4:	89 85 14 ff ff ff    	mov    %eax,-0xec(%ebp)
41a4da:	8d 47 10             	lea    0x10(%edi),%eax
41a4dd:	89 85 28 ff ff ff    	mov    %eax,-0xd8(%ebp)
41a4e3:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
41a4e9:	8d 47 04             	lea    0x4(%edi),%eax
41a4ec:	89 85 44 ff ff ff    	mov    %eax,-0xbc(%ebp)
41a4f2:	89 85 4c ff ff ff    	mov    %eax,-0xb4(%ebp)
41a4f8:	8d 47 24             	lea    0x24(%edi),%eax
41a4fb:	6a 04                	push   $0x4
41a4fd:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
41a503:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
41a509:	8d 47 5c             	lea    0x5c(%edi),%eax
41a50c:	89 8d e4 fe ff ff    	mov    %ecx,-0x11c(%ebp)
41a512:	59                   	pop    %ecx
41a513:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
41a519:	89 45 84             	mov    %eax,-0x7c(%ebp)
41a51c:	8d 47 60             	lea    0x60(%edi),%eax
41a51f:	6a 03                	push   $0x3
41a521:	89 95 94 fe ff ff    	mov    %edx,-0x16c(%ebp)
41a527:	89 95 b0 fe ff ff    	mov    %edx,-0x150(%ebp)
41a52d:	89 95 cc fe ff ff    	mov    %edx,-0x134(%ebp)
41a533:	89 95 04 ff ff ff    	mov    %edx,-0xfc(%ebp)
41a539:	89 8d 10 ff ff ff    	mov    %ecx,-0xf0(%ebp)
41a53f:	89 8d 18 ff ff ff    	mov    %ecx,-0xe8(%ebp)
41a545:	89 95 20 ff ff ff    	mov    %edx,-0xe0(%ebp)
41a54b:	ba 10 a2 41 00       	mov    $0x41a210,%edx
41a550:	89 8d 2c ff ff ff    	mov    %ecx,-0xd4(%ebp)
41a556:	89 8d 34 ff ff ff    	mov    %ecx,-0xcc(%ebp)
41a55c:	59                   	pop    %ecx
41a55d:	89 45 98             	mov    %eax,-0x68(%ebp)
41a560:	89 45 a0             	mov    %eax,-0x60(%ebp)
41a563:	8d 47 64             	lea    0x64(%edi),%eax
41a566:	c7 85 8c fe ff ff 04 	movl   $0x4,-0x174(%ebp)
41a56d:	00 00 00
41a570:	c7 85 98 fe ff ff 9c 	movl   $0x40609c,-0x168(%ebp)
41a577:	60 40 00
41a57a:	c7 85 a0 fe ff ff 04 	movl   $0x4,-0x160(%ebp)
41a581:	00 00 00
41a584:	c7 85 a8 fe ff ff 04 	movl   $0x4,-0x158(%ebp)
41a58b:	00 00 00
41a58e:	c7 85 b4 fe ff ff c4 	movl   $0x4060c4,-0x14c(%ebp)
41a595:	60 40 00
41a598:	c7 85 bc fe ff ff 04 	movl   $0x4,-0x144(%ebp)
41a59f:	00 00 00
41a5a2:	c7 85 c4 fe ff ff 04 	movl   $0x4,-0x13c(%ebp)
41a5a9:	00 00 00
41a5ac:	c7 85 d0 fe ff ff d8 	movl   $0x4060d8,-0x130(%ebp)
41a5b3:	60 40 00
41a5b6:	c7 85 d8 fe ff ff 04 	movl   $0x4,-0x128(%ebp)
41a5bd:	00 00 00
41a5c0:	c7 85 e0 fe ff ff 04 	movl   $0x4,-0x120(%ebp)
41a5c7:	00 00 00
41a5ca:	c7 85 ec fe ff ff 0c 	movl   $0x40610c,-0x114(%ebp)
41a5d1:	61 40 00
41a5d4:	c7 85 08 ff ff ff 2c 	movl   $0x40612c,-0xf8(%ebp)
41a5db:	61 40 00
41a5de:	c7 85 24 ff ff ff 60 	movl   $0x406160,-0xdc(%ebp)
41a5e5:	61 40 00
41a5e8:	89 95 38 ff ff ff    	mov    %edx,-0xc8(%ebp)
41a5ee:	c7 85 40 ff ff ff d0 	movl   $0x405ed0,-0xc0(%ebp)
41a5f5:	5e 40 00
41a5f8:	89 8d 48 ff ff ff    	mov    %ecx,-0xb8(%ebp)
41a5fe:	c7 85 50 ff ff ff 08 	movl   $0x8,-0xb0(%ebp)
41a605:	00 00 00
41a608:	c7 85 58 ff ff ff 20 	movl   $0x20,-0xa8(%ebp)
41a60f:	00 00 00
41a612:	c7 85 5c ff ff ff 8c 	movl   $0x40618c,-0xa4(%ebp)
41a619:	61 40 00
41a61c:	c7 85 64 ff ff ff 04 	movl   $0x4,-0x9c(%ebp)
41a623:	00 00 00
41a626:	c7 85 6c ff ff ff 04 	movl   $0x4,-0x94(%ebp)
41a62d:	00 00 00
41a630:	c7 85 74 ff ff ff 20 	movl   $0x20,-0x8c(%ebp)
41a637:	00 00 00
41a63a:	c7 85 78 ff ff ff b8 	movl   $0x4061b8,-0x88(%ebp)
41a641:	61 40 00
41a644:	c7 45 80 04 00 00 00 	movl   $0x4,-0x80(%ebp)
41a64b:	c7 45 88 04 00 00 00 	movl   $0x4,-0x78(%ebp)
41a652:	c7 45 90 20 00 00 00 	movl   $0x20,-0x70(%ebp)
41a659:	c7 45 94 ec 61 40 00 	movl   $0x4061ec,-0x6c(%ebp)
41a660:	c7 45 9c 04 00 00 00 	movl   $0x4,-0x64(%ebp)
41a667:	c7 45 a4 04 00 00 00 	movl   $0x4,-0x5c(%ebp)
41a66e:	c7 45 ac 20 00 00 00 	movl   $0x20,-0x54(%ebp)
41a675:	c7 45 b0 24 62 40 00 	movl   $0x406224,-0x50(%ebp)
41a67c:	89 45 b4             	mov    %eax,-0x4c(%ebp)
41a67f:	89 45 bc             	mov    %eax,-0x44(%ebp)
41a682:	8d 47 68             	lea    0x68(%edi),%eax
41a685:	6a 00                	push   $0x0
41a687:	6a 00                	push   $0x0
41a689:	89 45 d0             	mov    %eax,-0x30(%ebp)
41a68c:	89 45 d8             	mov    %eax,-0x28(%ebp)
41a68f:	8d 85 94 fd ff ff    	lea    -0x26c(%ebp),%eax
41a695:	50                   	push   %eax
41a696:	56                   	push   %esi
41a697:	68 00 00 00 80       	push   $0x80000000
41a69c:	c7 45 b8 04 00 00 00 	movl   $0x4,-0x48(%ebp)
41a6a3:	c7 45 c0 04 00 00 00 	movl   $0x4,-0x40(%ebp)
41a6aa:	89 55 c4             	mov    %edx,-0x3c(%ebp)
41a6ad:	c7 45 cc fc 5e 40 00 	movl   $0x405efc,-0x34(%ebp)
41a6b4:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
41a6b7:	c7 45 dc 28 00 00 00 	movl   $0x28,-0x24(%ebp)
41a6be:	ff 15 c0 35 42 00    	call   *0x4235c0
41a6c4:	8b f0                	mov    %eax,%esi
41a6c6:	85 f6                	test   %esi,%esi
41a6c8:	78 31                	js     0x41a6fb
41a6ca:	f6 47 0c 01          	testb  $0x1,0xc(%edi)
41a6ce:	74 2b                	je     0x41a6fb
41a6d0:	8b 4f 20             	mov    0x20(%edi),%ecx
41a6d3:	85 c9                	test   %ecx,%ecx
41a6d5:	74 05                	je     0x41a6dc
41a6d7:	e8 b7 07 00 00       	call   0x41ae93
41a6dc:	8b 03                	mov    (%ebx),%eax
41a6de:	8b cb                	mov    %ebx,%ecx
41a6e0:	89 47 1c             	mov    %eax,0x1c(%edi)
41a6e3:	8b 43 04             	mov    0x4(%ebx),%eax
41a6e6:	89 47 20             	mov    %eax,0x20(%edi)
41a6e9:	e8 c5 08 00 00       	call   0x41afb3
41a6ee:	8b f0                	mov    %eax,%esi
41a6f0:	85 f6                	test   %esi,%esi
41a6f2:	79 07                	jns    0x41a6fb
41a6f4:	8b cf                	mov    %edi,%ecx
41a6f6:	e8 f3 f9 ff ff       	call   0x41a0ee
41a6fb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41a6fe:	8b c6                	mov    %esi,%eax
41a700:	5f                   	pop    %edi
41a701:	5e                   	pop    %esi
41a702:	33 cd                	xor    %ebp,%ecx
41a704:	5b                   	pop    %ebx
41a705:	e8 16 0f 00 00       	call   0x41b620
41a70a:	c9                   	leave
41a70b:	c3                   	ret
41a70c:	8b ff                	mov    %edi,%edi
41a70e:	55                   	push   %ebp
41a70f:	8b ec                	mov    %esp,%ebp
41a711:	83 e4 f8             	and    $0xfffffff8,%esp
41a714:	81 ec ac 00 00 00    	sub    $0xac,%esp
41a71a:	a1 e4 05 42 00       	mov    0x4205e4,%eax
41a71f:	33 c4                	xor    %esp,%eax
41a721:	89 84 24 a8 00 00 00 	mov    %eax,0xa8(%esp)
41a728:	53                   	push   %ebx
41a729:	56                   	push   %esi
41a72a:	57                   	push   %edi
41a72b:	89 54 24 18          	mov    %edx,0x18(%esp)
41a72f:	8b d9                	mov    %ecx,%ebx
41a731:	e8 70 07 00 00       	call   0x41aea6
41a736:	8b f0                	mov    %eax,%esi
41a738:	85 f6                	test   %esi,%esi
41a73a:	0f 88 29 07 00 00    	js     0x41ae69
41a740:	e8 fc f9 ff ff       	call   0x41a141
41a745:	8b f8                	mov    %eax,%edi
41a747:	8b 44 24 18          	mov    0x18(%esp),%eax
41a74b:	85 c0                	test   %eax,%eax
41a74d:	74 11                	je     0x41a760
41a74f:	ff 75 08             	push   0x8(%ebp)
41a752:	50                   	push   %eax
41a753:	8d 44 24 18          	lea    0x18(%esp),%eax
41a757:	50                   	push   %eax
41a758:	ff 15 a0 35 42 00    	call   *0x4235a0
41a75e:	eb 1d                	jmp    0x41a77d
41a760:	6a 20                	push   $0x20
41a762:	8d 44 24 20          	lea    0x20(%esp),%eax
41a766:	50                   	push   %eax
41a767:	8d 44 24 18          	lea    0x18(%esp),%eax
41a76b:	50                   	push   %eax
41a76c:	ff 15 a0 35 42 00    	call   *0x4235a0
41a772:	8d 44 24 10          	lea    0x10(%esp),%eax
41a776:	50                   	push   %eax
41a777:	ff 15 b0 35 42 00    	call   *0x4235b0
41a77d:	33 c0                	xor    %eax,%eax
41a77f:	50                   	push   %eax
41a780:	8d 44 24 14          	lea    0x14(%esp),%eax
41a784:	50                   	push   %eax
41a785:	ff 15 b4 35 42 00    	call   *0x4235b4
41a78b:	84 c0                	test   %al,%al
41a78d:	74 3f                	je     0x41a7ce
41a78f:	33 c0                	xor    %eax,%eax
41a791:	39 03                	cmp    %eax,(%ebx)
41a793:	74 1e                	je     0x41a7b3
41a795:	6a 04                	push   $0x4
41a797:	53                   	push   %ebx
41a798:	6a 04                	push   $0x4
41a79a:	68 28 5f 40 00       	push   $0x405f28
41a79f:	57                   	push   %edi
41a7a0:	50                   	push   %eax
41a7a1:	ff 15 e8 35 42 00    	call   *0x4235e8
41a7a7:	8b f0                	mov    %eax,%esi
41a7a9:	85 f6                	test   %esi,%esi
41a7ab:	0f 88 8d 06 00 00    	js     0x41ae3e
41a7b1:	eb 1b                	jmp    0x41a7ce
41a7b3:	68 28 5f 40 00       	push   $0x405f28
41a7b8:	57                   	push   %edi
41a7b9:	50                   	push   %eax
41a7ba:	ff 15 c8 35 42 00    	call   *0x4235c8
41a7c0:	8b f0                	mov    %eax,%esi
41a7c2:	81 fe 22 00 00 c0    	cmp    $0xc0000022,%esi
41a7c8:	0f 84 6c 06 00 00    	je     0x41ae3a
41a7ce:	6a 01                	push   $0x1
41a7d0:	8d 44 24 14          	lea    0x14(%esp),%eax
41a7d4:	50                   	push   %eax
41a7d5:	ff 15 b4 35 42 00    	call   *0x4235b4
41a7db:	84 c0                	test   %al,%al
41a7dd:	74 46                	je     0x41a825
41a7df:	8d 43 04             	lea    0x4(%ebx),%eax
41a7e2:	f7 00 00 00 10 00    	testl  $0x100000,(%eax)
41a7e8:	74 1f                	je     0x41a809
41a7ea:	6a 08                	push   $0x8
41a7ec:	50                   	push   %eax
41a7ed:	6a 03                	push   $0x3
41a7ef:	68 d0 5e 40 00       	push   $0x405ed0
41a7f4:	57                   	push   %edi
41a7f5:	6a 00                	push   $0x0
41a7f7:	ff 15 e8 35 42 00    	call   *0x4235e8
41a7fd:	8b f0                	mov    %eax,%esi
41a7ff:	85 f6                	test   %esi,%esi
41a801:	0f 88 37 06 00 00    	js     0x41ae3e
41a807:	eb 1c                	jmp    0x41a825
41a809:	68 d0 5e 40 00       	push   $0x405ed0
41a80e:	57                   	push   %edi
41a80f:	6a 00                	push   $0x0
41a811:	ff 15 c8 35 42 00    	call   *0x4235c8
41a817:	8b f0                	mov    %eax,%esi
41a819:	81 fe 22 00 00 c0    	cmp    $0xc0000022,%esi
41a81f:	0f 84 15 06 00 00    	je     0x41ae3a
41a825:	6a 04                	push   $0x4
41a827:	8d 44 24 14          	lea    0x14(%esp),%eax
41a82b:	50                   	push   %eax
41a82c:	ff 15 b4 35 42 00    	call   *0x4235b4
41a832:	b9 6c 5f 40 00       	mov    $0x405f6c,%ecx
41a837:	84 c0                	test   %al,%al
41a839:	74 40                	je     0x41a87b
41a83b:	0f b7 43 14          	movzwl 0x14(%ebx),%eax
41a83f:	66 85 c0             	test   %ax,%ax
41a842:	74 1f                	je     0x41a863
41a844:	83 c0 02             	add    $0x2,%eax
41a847:	50                   	push   %eax
41a848:	ff 73 18             	push   0x18(%ebx)
41a84b:	6a 01                	push   $0x1
41a84d:	51                   	push   %ecx
41a84e:	57                   	push   %edi
41a84f:	6a 00                	push   $0x0
41a851:	ff 15 e8 35 42 00    	call   *0x4235e8
41a857:	8b f0                	mov    %eax,%esi
41a859:	85 f6                	test   %esi,%esi
41a85b:	0f 88 dd 05 00 00    	js     0x41ae3e
41a861:	eb 18                	jmp    0x41a87b
41a863:	51                   	push   %ecx
41a864:	57                   	push   %edi
41a865:	6a 00                	push   $0x0
41a867:	ff 15 c8 35 42 00    	call   *0x4235c8
41a86d:	8b f0                	mov    %eax,%esi
41a86f:	81 fe 22 00 00 c0    	cmp    $0xc0000022,%esi
41a875:	0f 84 bf 05 00 00    	je     0x41ae3a
41a87b:	6a 03                	push   $0x3
41a87d:	8d 44 24 14          	lea    0x14(%esp),%eax
41a881:	50                   	push   %eax
41a882:	ff 15 b4 35 42 00    	call   *0x4235b4