440302:	8b 4d fc             	mov    -0x4(%ebp),%ecx
440305:	8b c7                	mov    %edi,%eax
440307:	5f                   	pop    %edi
440308:	5e                   	pop    %esi
440309:	33 cd                	xor    %ebp,%ecx
44030b:	5b                   	pop    %ebx
44030c:	e8 ff ef fd ff       	call   0x41f310
440311:	c9                   	leave
440312:	c2 10 00             	ret    $0x10
440315:	68 f4 00 00 00       	push   $0xf4
44031a:	b8 70 3e 42 00       	mov    $0x423e70,%eax
44031f:	e8 7c f3 fd ff       	call   0x41f6a0
440324:	8b f9                	mov    %ecx,%edi
440326:	89 bd 40 ff ff ff    	mov    %edi,-0xc0(%ebp)
44032c:	8b 45 14             	mov    0x14(%ebp),%eax
44032f:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
440335:	8b 75 10             	mov    0x10(%ebp),%esi
440338:	8b 5d 28             	mov    0x28(%ebp),%ebx
44033b:	8b 4f 20             	mov    0x20(%edi),%ecx
44033e:	83 a5 34 ff ff ff 00 	andl   $0x0,-0xcc(%ebp)
440345:	89 85 18 ff ff ff    	mov    %eax,-0xe8(%ebp)
44034b:	8b 45 18             	mov    0x18(%ebp),%eax
44034e:	89 85 1c ff ff ff    	mov    %eax,-0xe4(%ebp)
440354:	8b 45 0c             	mov    0xc(%ebp),%eax
440357:	89 85 14 ff ff ff    	mov    %eax,-0xec(%ebp)
44035d:	8b 45 1c             	mov    0x1c(%ebp),%eax
440360:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
440366:	8b 45 24             	mov    0x24(%ebp),%eax
440369:	89 b5 04 ff ff ff    	mov    %esi,-0xfc(%ebp)
44036f:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
440375:	89 9d 38 ff ff ff    	mov    %ebx,-0xc8(%ebp)
44037b:	e8 40 fb fc ff       	call   0x40fec0
440380:	85 c0                	test   %eax,%eax
440382:	0f 88 a3 07 00 00    	js     0x440b2b
440388:	68 68 01 00 00       	push   $0x168
44038d:	e8 49 de fd ff       	call   0x41e1db
440392:	59                   	pop    %ecx
440393:	89 85 24 ff ff ff    	mov    %eax,-0xdc(%ebp)
440399:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
44039d:	85 c0                	test   %eax,%eax
44039f:	74 15                	je     0x4403b6
4403a1:	53                   	push   %ebx
4403a2:	ff 77 0c             	push   0xc(%edi)
4403a5:	8b c8                	mov    %eax,%ecx
4403a7:	e8 5f 09 00 00       	call   0x440d0b
4403ac:	8b f8                	mov    %eax,%edi
4403ae:	89 85 2c ff ff ff    	mov    %eax,-0xd4(%ebp)
4403b4:	eb 08                	jmp    0x4403be
4403b6:	33 ff                	xor    %edi,%edi
4403b8:	89 bd 2c ff ff ff    	mov    %edi,-0xd4(%ebp)
4403be:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4403c2:	85 ff                	test   %edi,%edi
4403c4:	0f 84 0d 06 00 00    	je     0x4409d7
4403ca:	8b 07                	mov    (%edi),%eax
4403cc:	57                   	push   %edi
4403cd:	8b 70 04             	mov    0x4(%eax),%esi
4403d0:	8b ce                	mov    %esi,%ecx
4403d2:	ff 15 c4 12 45 00    	call   *0x4512c4
4403d8:	ff d6                	call   *%esi
4403da:	ff b3 b4 06 00 00    	push   0x6b4(%ebx)
4403e0:	8b cf                	mov    %edi,%ecx
4403e2:	e8 a7 2f 00 00       	call   0x44338e
4403e7:	8b f8                	mov    %eax,%edi
4403e9:	85 ff                	test   %edi,%edi
4403eb:	0f 88 c8 05 00 00    	js     0x4409b9
4403f1:	8b bd 2c ff ff ff    	mov    -0xd4(%ebp),%edi
4403f7:	8d 85 3c ff ff ff    	lea    -0xc4(%ebp),%eax
4403fd:	83 8d 3c ff ff ff ff 	orl    $0xffffffff,-0xc4(%ebp)
440404:	50                   	push   %eax
440405:	8d 4f 20             	lea    0x20(%edi),%ecx
440408:	e8 d3 76 fd ff       	call   0x417ae0
44040d:	85 c0                	test   %eax,%eax
44040f:	0f 85 9f 05 00 00    	jne    0x4409b4
440415:	21 85 08 ff ff ff    	and    %eax,-0xf8(%ebp)
44041b:	8d 85 08 ff ff ff    	lea    -0xf8(%ebp),%eax
440421:	8b 37                	mov    (%edi),%esi
440423:	50                   	push   %eax
440424:	68 d8 6a 40 00       	push   $0x406ad8
440429:	57                   	push   %edi
44042a:	8b 0e                	mov    (%esi),%ecx
44042c:	ff 15 c4 12 45 00    	call   *0x4512c4
440432:	ff 16                	call   *(%esi)
440434:	8b f8                	mov    %eax,%edi
440436:	85 ff                	test   %edi,%edi
440438:	0f 88 7b 05 00 00    	js     0x4409b9
44043e:	6a 18                	push   $0x18
440440:	e8 96 dd fd ff       	call   0x41e1db
440445:	8b d8                	mov    %eax,%ebx
440447:	33 ff                	xor    %edi,%edi
440449:	89 9d 28 ff ff ff    	mov    %ebx,-0xd8(%ebp)
44044f:	59                   	pop    %ecx
440450:	85 db                	test   %ebx,%ebx
440452:	74 17                	je     0x44046b
440454:	c7 03 ec 13 40 00    	movl   $0x4013ec,(%ebx)
44045a:	89 7b 04             	mov    %edi,0x4(%ebx)
44045d:	89 7b 08             	mov    %edi,0x8(%ebx)
440460:	89 7b 0c             	mov    %edi,0xc(%ebx)
440463:	89 7b 10             	mov    %edi,0x10(%ebx)
440466:	89 7b 14             	mov    %edi,0x14(%ebx)
440469:	eb 08                	jmp    0x440473
44046b:	8b df                	mov    %edi,%ebx
44046d:	89 bd 28 ff ff ff    	mov    %edi,-0xd8(%ebp)
440473:	85 db                	test   %ebx,%ebx
440475:	0f 84 16 05 00 00    	je     0x440991
44047b:	8b 03                	mov    (%ebx),%eax
44047d:	53                   	push   %ebx
44047e:	8b 70 04             	mov    0x4(%eax),%esi
440481:	8b ce                	mov    %esi,%ecx
440483:	ff 15 c4 12 45 00    	call   *0x4512c4
440489:	ff d6                	call   *%esi
44048b:	57                   	push   %edi
44048c:	8b cb                	mov    %ebx,%ecx
44048e:	e8 2e fc ff ff       	call   0x4400c1
440493:	8b f8                	mov    %eax,%edi
440495:	85 ff                	test   %edi,%edi
440497:	0f 88 e2 04 00 00    	js     0x44097f
44049d:	6a 18                	push   $0x18
44049f:	e8 37 dd fd ff       	call   0x41e1db
4404a4:	59                   	pop    %ecx
4404a5:	89 85 24 ff ff ff    	mov    %eax,-0xdc(%ebp)
4404ab:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4404b2:	85 c0                	test   %eax,%eax
4404b4:	74 12                	je     0x4404c8
4404b6:	53                   	push   %ebx
4404b7:	8b c8                	mov    %eax,%ecx
4404b9:	e8 45 fb ff ff       	call   0x440003
4404be:	8b f8                	mov    %eax,%edi
4404c0:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
4404c6:	eb 08                	jmp    0x4404d0
4404c8:	33 ff                	xor    %edi,%edi
4404ca:	89 bd 3c ff ff ff    	mov    %edi,-0xc4(%ebp)
4404d0:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4404d4:	85 ff                	test   %edi,%edi
4404d6:	0f 84 9e 04 00 00    	je     0x44097a
4404dc:	8b 07                	mov    (%edi),%eax
4404de:	57                   	push   %edi
4404df:	8b 70 04             	mov    0x4(%eax),%esi
4404e2:	8b ce                	mov    %esi,%ecx
4404e4:	ff 15 c4 12 45 00    	call   *0x4512c4
4404ea:	ff d6                	call   *%esi
4404ec:	8b 85 08 ff ff ff    	mov    -0xf8(%ebp),%eax
4404f2:	33 c9                	xor    %ecx,%ecx
4404f4:	57                   	push   %edi
4404f5:	51                   	push   %ecx
4404f6:	51                   	push   %ecx
4404f7:	8b 30                	mov    (%eax),%esi
4404f9:	51                   	push   %ecx
4404fa:	51                   	push   %ecx
4404fb:	51                   	push   %ecx
4404fc:	51                   	push   %ecx
4404fd:	8b 4e 0c             	mov    0xc(%esi),%ecx
440500:	50                   	push   %eax
440501:	ff 15 c4 12 45 00    	call   *0x4512c4
440507:	ff 56 0c             	call   *0xc(%esi)
44050a:	8b f8                	mov    %eax,%edi
44050c:	85 ff                	test   %edi,%edi
44050e:	0f 88 4e 04 00 00    	js     0x440962
440514:	8b 85 38 ff ff ff    	mov    -0xc8(%ebp),%eax
44051a:	ff b0 94 06 00 00    	push   0x694(%eax)
440520:	ff 73 0c             	push   0xc(%ebx)
440523:	ff 15 38 11 45 00    	call   *0x451138
440529:	b9 13 10 04 80       	mov    $0x80041013,%ecx
44052e:	3d 02 01 00 00       	cmp    $0x102,%eax
440533:	75 07                	jne    0x44053c
440535:	89 4b 10             	mov    %ecx,0x10(%ebx)
440538:	8b f9                	mov    %ecx,%edi
44053a:	eb 03                	jmp    0x44053f
44053c:	8b 7b 10             	mov    0x10(%ebx),%edi
44053f:	85 ff                	test   %edi,%edi
440541:	0f 88 1b 04 00 00    	js     0x440962
440547:	6a 44                	push   $0x44
440549:	e8 8d dc fd ff       	call   0x41e1db
44054e:	59                   	pop    %ecx
44054f:	89 85 24 ff ff ff    	mov    %eax,-0xdc(%ebp)
440555:	8b bd 40 ff ff ff    	mov    -0xc0(%ebp),%edi
44055b:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
440562:	85 c0                	test   %eax,%eax
440564:	74 12                	je     0x440578
440566:	51                   	push   %ecx
440567:	ff 77 28             	push   0x28(%edi)
44056a:	8b c8                	mov    %eax,%ecx
44056c:	ff 77 0c             	push   0xc(%edi)
44056f:	e8 7a 32 ff ff       	call   0x4337ee
440574:	8b c8                	mov    %eax,%ecx
440576:	eb 02                	jmp    0x44057a
440578:	33 c9                	xor    %ecx,%ecx
44057a:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
44057e:	89 8d 20 ff ff ff    	mov    %ecx,-0xe0(%ebp)
440584:	85 c9                	test   %ecx,%ecx
440586:	0f 84 d1 03 00 00    	je     0x44095d
44058c:	8b 01                	mov    (%ecx),%eax
44058e:	51                   	push   %ecx
44058f:	8b 70 04             	mov    0x4(%eax),%esi
440592:	8b ce                	mov    %esi,%ecx
440594:	ff 15 c4 12 45 00    	call   *0x4512c4
44059a:	ff d6                	call   *%esi
44059c:	8b 8d 38 ff ff ff    	mov    -0xc8(%ebp),%ecx
4405a2:	51                   	push   %ecx
4405a3:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
4405a9:	ff b5 14 ff ff ff    	push   -0xec(%ebp)
4405af:	8b 81 6c 06 00 00    	mov    0x66c(%ecx),%eax
4405b5:	ff 75 08             	push   0x8(%ebp)
4405b8:	f7 d8                	neg    %eax
4405ba:	ff b5 20 ff ff ff    	push   -0xe0(%ebp)
4405c0:	1b c0                	sbb    %eax,%eax
4405c2:	ff 77 20             	push   0x20(%edi)
4405c5:	23 85 1c ff ff ff    	and    -0xe4(%ebp),%eax
4405cb:	ff 77 1c             	push   0x1c(%edi)
4405ce:	50                   	push   %eax
4405cf:	8b 81 68 06 00 00    	mov    0x668(%ecx),%eax
4405d5:	8b 8d 2c ff ff ff    	mov    -0xd4(%ebp),%ecx
4405db:	f7 d8                	neg    %eax
4405dd:	1b c0                	sbb    %eax,%eax
4405df:	23 85 18 ff ff ff    	and    -0xe8(%ebp),%eax
4405e5:	50                   	push   %eax
4405e6:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
4405ec:	e8 b8 17 00 00       	call   0x441da9
4405f1:	8b f8                	mov    %eax,%edi
4405f3:	85 ff                	test   %edi,%edi
4405f5:	0f 88 4a 03 00 00    	js     0x440945
4405fb:	8b 85 2c ff ff ff    	mov    -0xd4(%ebp),%eax
440601:	8d 8d 0c ff ff ff    	lea    -0xf4(%ebp),%ecx
440607:	83 a5 0c ff ff ff 00 	andl   $0x0,-0xf4(%ebp)
44060e:	51                   	push   %ecx
44060f:	68 84 7a 40 00       	push   $0x407a84
440614:	8b 30                	mov    (%eax),%esi
440616:	50                   	push   %eax
440617:	8b 0e                	mov    (%esi),%ecx
440619:	ff 15 c4 12 45 00    	call   *0x4512c4
44061f:	ff 16                	call   *(%esi)
440621:	8b f8                	mov    %eax,%edi
440623:	85 ff                	test   %edi,%edi
440625:	0f 88 1a 03 00 00    	js     0x440945
44062b:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
440631:	50                   	push   %eax
440632:	ff 15 2c 30 45 00    	call   *0x45302c
440638:	8b f8                	mov    %eax,%edi
44063a:	85 ff                	test   %edi,%edi
44063c:	0f 88 ed 02 00 00    	js     0x44092f
440642:	68 30 02 00 00       	push   $0x230
440647:	e8 8f db fd ff       	call   0x41e1db
44064c:	59                   	pop    %ecx
44064d:	8b c8                	mov    %eax,%ecx
44064f:	89 8d 24 ff ff ff    	mov    %ecx,-0xdc(%ebp)
440655:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
44065c:	85 c9                	test   %ecx,%ecx
44065e:	74 3e                	je     0x44069e
440660:	8b bd 40 ff ff ff    	mov    -0xc0(%ebp),%edi
440666:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
44066c:	50                   	push   %eax
44066d:	8b 85 38 ff ff ff    	mov    -0xc8(%ebp),%eax
440673:	50                   	push   %eax
440674:	ff b5 14 ff ff ff    	push   -0xec(%ebp)
44067a:	ff 35 14 0a 45 00    	push   0x450a14
440680:	ff b5 20 ff ff ff    	push   -0xe0(%ebp)
440686:	ff b5 0c ff ff ff    	push   -0xf4(%ebp)
44068c:	ff 77 0c             	push   0xc(%edi)
44068f:	e8 8c 11 fd ff       	call   0x411820
440694:	8b c8                	mov    %eax,%ecx
440696:	89 85 40 ff ff ff    	mov    %eax,-0xc0(%ebp)
44069c:	eb 08                	jmp    0x4406a6
44069e:	33 c9                	xor    %ecx,%ecx
4406a0:	89 8d 40 ff ff ff    	mov    %ecx,-0xc0(%ebp)
4406a6:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4406aa:	85 c9                	test   %ecx,%ecx
4406ac:	0f 84 78 02 00 00    	je     0x44092a
4406b2:	8b 01                	mov    (%ecx),%eax
4406b4:	51                   	push   %ecx
4406b5:	8b 70 04             	mov    0x4(%eax),%esi
4406b8:	8b ce                	mov    %esi,%ecx
4406ba:	ff 15 c4 12 45 00    	call   *0x4512c4
4406c0:	ff d6                	call   *%esi
4406c2:	8b 3d 14 0a 45 00    	mov    0x450a14,%edi
4406c8:	83 a5 24 ff ff ff 00 	andl   $0x0,-0xdc(%ebp)
4406cf:	8b 07                	mov    (%edi),%eax
4406d1:	8b 70 18             	mov    0x18(%eax),%esi
4406d4:	8b ce                	mov    %esi,%ecx
4406d6:	ff 15 c4 12 45 00    	call   *0x4512c4
4406dc:	8b cf                	mov    %edi,%ecx
4406de:	ff d6                	call   *%esi
4406e0:	8b 3d 14 0a 45 00    	mov    0x450a14,%edi
4406e6:	8d 85 24 ff ff ff    	lea    -0xdc(%ebp),%eax
4406ec:	50                   	push   %eax
4406ed:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
4406f3:	83 c0 58             	add    $0x58,%eax
4406f6:	8b 17                	mov    (%edi),%edx
4406f8:	50                   	push   %eax
4406f9:	8b 72 20             	mov    0x20(%edx),%esi
4406fc:	8b ce                	mov    %esi,%ecx
4406fe:	ff 15 c4 12 45 00    	call   *0x4512c4
440704:	8b cf                	mov    %edi,%ecx
440706:	ff d6                	call   *%esi
440708:	8b 3d 14 0a 45 00    	mov    0x450a14,%edi
44070e:	85 c0                	test   %eax,%eax
440710:	8b 07                	mov    (%edi),%eax
440712:	8b 70 1c             	mov    0x1c(%eax),%esi
440715:	8b ce                	mov    %esi,%ecx
440717:	0f 85 de 01 00 00    	jne    0x4408fb
44071d:	ff 15 c4 12 45 00    	call   *0x4512c4
440723:	8b cf                	mov    %edi,%ecx
440725:	ff d6                	call   *%esi
440727:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
44072d:	8d 8d 10 ff ff ff    	lea    -0xf0(%ebp),%ecx
440733:	83 a5 10 ff ff ff 00 	andl   $0x0,-0xf0(%ebp)
44073a:	51                   	push   %ecx
44073b:	68 e8 6b 40 00       	push   $0x406be8
440740:	8b 30                	mov    (%eax),%esi
440742:	50                   	push   %eax
440743:	8b 0e                	mov    (%esi),%ecx
440745:	ff 15 c4 12 45 00    	call   *0x4512c4
44074b:	ff 16                	call   *(%esi)
44074d:	8b f8                	mov    %eax,%edi
44074f:	85 ff                	test   %edi,%edi
440751:	0f 88 b3 01 00 00    	js     0x44090a
440757:	6a 18                	push   $0x18
440759:	e8 7d da fd ff       	call   0x41e1db
44075e:	8b d8                	mov    %eax,%ebx
440760:	33 ff                	xor    %edi,%edi
440762:	89 9d 30 ff ff ff    	mov    %ebx,-0xd0(%ebp)
440768:	59                   	pop    %ecx
440769:	85 db                	test   %ebx,%ebx
44076b:	74 17                	je     0x440784
44076d:	c7 03 ec 13 40 00    	movl   $0x4013ec,(%ebx)
440773:	89 7b 04             	mov    %edi,0x4(%ebx)
440776:	89 7b 08             	mov    %edi,0x8(%ebx)
440779:	89 7b 0c             	mov    %edi,0xc(%ebx)
44077c:	89 7b 10             	mov    %edi,0x10(%ebx)
44077f:	89 7b 14             	mov    %edi,0x14(%ebx)
440782:	eb 02                	jmp    0x440786
440784:	8b df                	mov    %edi,%ebx
440786:	85 db                	test   %ebx,%ebx
440788:	0f 84 4a 01 00 00    	je     0x4408d8
44078e:	8b 03                	mov    (%ebx),%eax
440790:	53                   	push   %ebx
440791:	8b 70 04             	mov    0x4(%eax),%esi
440794:	8b ce                	mov    %esi,%ecx
440796:	ff 15 c4 12 45 00    	call   *0x4512c4
44079c:	ff d6                	call   *%esi
44079e:	57                   	push   %edi
44079f:	8b cb                	mov    %ebx,%ecx
4407a1:	e8 1b f9 ff ff       	call   0x4400c1
4407a6:	8b f8                	mov    %eax,%edi
4407a8:	85 ff                	test   %edi,%edi
4407aa:	0f 88 16 01 00 00    	js     0x4408c6
4407b0:	6a 18                	push   $0x18
4407b2:	e8 24 da fd ff       	call   0x41e1db
4407b7:	59                   	pop    %ecx
4407b8:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
4407be:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
4407c5:	85 c0                	test   %eax,%eax