41039a:	68 44 17 45 00       	push   $0x451744
41039f:	56                   	push   %esi
4103a0:	e8 8a fd 02 00       	call   0x44012f
4103a5:	83 c4 0c             	add    $0xc,%esp
4103a8:	eb 39                	jmp    0x4103e3
4103aa:	83 7d 1c 01          	cmpl   $0x1,0x1c(%ebp)
4103ae:	75 13                	jne    0x4103c3
4103b0:	57                   	push   %edi
4103b1:	e8 a0 7f 01 00       	call   0x428356
4103b6:	8b f0                	mov    %eax,%esi
4103b8:	85 f6                	test   %esi,%esi
4103ba:	79 07                	jns    0x4103c3
4103bc:	68 50 18 45 00       	push   $0x451850
4103c1:	eb 18                	jmp    0x4103db
4103c3:	6a 00                	push   $0x0
4103c5:	6a 01                	push   $0x1
4103c7:	ff 75 fc             	push   -0x4(%ebp)
4103ca:	57                   	push   %edi
4103cb:	e8 cd ec ff ff       	call   0x40f09d
4103d0:	8b f0                	mov    %eax,%esi
4103d2:	85 f6                	test   %esi,%esi
4103d4:	79 0d                	jns    0x4103e3
4103d6:	68 80 18 45 00       	push   $0x451880
4103db:	56                   	push   %esi
4103dc:	e8 4e fd 02 00       	call   0x44012f
4103e1:	59                   	pop    %ecx
4103e2:	59                   	pop    %ecx
4103e3:	5b                   	pop    %ebx
4103e4:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4103e8:	74 08                	je     0x4103f2
4103ea:	ff 75 f8             	push   -0x8(%ebp)
4103ed:	e8 fd 50 03 00       	call   0x4454ef
4103f2:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4103f6:	74 08                	je     0x410400
4103f8:	ff 75 f4             	push   -0xc(%ebp)
4103fb:	e8 ef 50 03 00       	call   0x4454ef
410400:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
410404:	74 09                	je     0x41040f
410406:	ff 75 fc             	push   -0x4(%ebp)
410409:	ff 15 00 b0 44 00    	call   *0x44b000
41040f:	5f                   	pop    %edi
410410:	8b c6                	mov    %esi,%eax
410412:	5e                   	pop    %esi
410413:	8b e5                	mov    %ebp,%esp
410415:	5d                   	pop    %ebp
410416:	c2 20 00             	ret    $0x20
410419:	55                   	push   %ebp
41041a:	8b ec                	mov    %esp,%ebp
41041c:	83 ec 0c             	sub    $0xc,%esp
41041f:	56                   	push   %esi
410420:	8b 75 08             	mov    0x8(%ebp),%esi
410423:	57                   	push   %edi
410424:	33 ff                	xor    %edi,%edi
410426:	89 7d f4             	mov    %edi,-0xc(%ebp)
410429:	ff 76 08             	push   0x8(%esi)
41042c:	89 7d f8             	mov    %edi,-0x8(%ebp)
41042f:	89 7d fc             	mov    %edi,-0x4(%ebp)
410432:	e8 f9 37 00 00       	call   0x413c30
410437:	50                   	push   %eax
410438:	ff 75 14             	push   0x14(%ebp)
41043b:	e8 e4 3d 00 00       	call   0x414224
410440:	50                   	push   %eax
410441:	ff 75 10             	push   0x10(%ebp)
410444:	e8 0e 3e 00 00       	call   0x414257
410449:	50                   	push   %eax
41044a:	ff 76 50             	push   0x50(%esi)
41044d:	68 74 01 00 20       	push   $0x20000174
410452:	6a 02                	push   $0x2
410454:	e8 b6 50 ff ff       	call   0x40550f
410459:	83 c4 18             	add    $0x18,%esp
41045c:	39 7d 14             	cmp    %edi,0x14(%ebp)
41045f:	74 41                	je     0x4104a2
410461:	ff 76 50             	push   0x50(%esi)
410464:	8d 45 f4             	lea    -0xc(%ebp),%eax
410467:	68 3c 0d 45 00       	push   $0x450d3c
41046c:	50                   	push   %eax
41046d:	e8 ae 1a ff ff       	call   0x401f20
410472:	83 c4 0c             	add    $0xc,%esp
410475:	85 c0                	test   %eax,%eax
410477:	78 1c                	js     0x410495
410479:	57                   	push   %edi
41047a:	8d 45 f8             	lea    -0x8(%ebp),%eax
41047d:	50                   	push   %eax
41047e:	57                   	push   %edi
41047f:	6a 01                	push   $0x1
410481:	68 06 00 02 00       	push   $0x20006
410486:	ff 75 f4             	push   -0xc(%ebp)
410489:	ff 76 4c             	push   0x4c(%esi)
41048c:	e8 44 06 03 00       	call   0x440ad5
410491:	85 c0                	test   %eax,%eax
410493:	79 0d                	jns    0x4104a2
410495:	68 a0 18 45 00       	push   $0x4518a0
41049a:	50                   	push   %eax
41049b:	e8 8f fc 02 00       	call   0x44012f
4104a0:	59                   	pop    %ecx
4104a1:	59                   	pop    %ecx
4104a2:	39 7d 10             	cmp    %edi,0x10(%ebp)
4104a5:	0f 85 cc 00 00 00    	jne    0x410577
4104ab:	83 7d 18 01          	cmpl   $0x1,0x18(%ebp)
4104af:	74 06                	je     0x4104b7
4104b1:	83 7d 18 02          	cmpl   $0x2,0x18(%ebp)
4104b5:	75 06                	jne    0x4104bd
4104b7:	56                   	push   %esi
4104b8:	e8 52 7f 01 00       	call   0x42840f
4104bd:	39 be 9c 00 00 00    	cmp    %edi,0x9c(%esi)
4104c3:	74 06                	je     0x4104cb
4104c5:	56                   	push   %esi
4104c6:	e8 2e ea ff ff       	call   0x40eef9
4104cb:	8d 86 94 00 00 00    	lea    0x94(%esi),%eax
4104d1:	50                   	push   %eax
4104d2:	ff 75 0c             	push   0xc(%ebp)
4104d5:	e8 35 e9 ff ff       	call   0x40ee0f
4104da:	57                   	push   %edi
4104db:	57                   	push   %edi
4104dc:	ff 76 50             	push   0x50(%esi)
4104df:	ff 76 4c             	push   0x4c(%esi)
4104e2:	e8 62 06 03 00       	call   0x440b49
4104e7:	8b f8                	mov    %eax,%edi
4104e9:	81 ff 02 00 07 80    	cmp    $0x80070002,%edi
4104ef:	74 17                	je     0x410508
4104f1:	85 ff                	test   %edi,%edi
4104f3:	79 13                	jns    0x410508
4104f5:	ff 76 50             	push   0x50(%esi)
4104f8:	68 d8 18 45 00       	push   $0x4518d8
4104fd:	57                   	push   %edi
4104fe:	e8 2c fc 02 00       	call   0x44012f
410503:	83 c4 0c             	add    $0xc,%esp
410506:	eb 33                	jmp    0x41053b
410508:	ff 76 10             	push   0x10(%esi)
41050b:	ff 36                	push   (%esi)
41050d:	e8 5a a1 00 00       	call   0x41a66c
410512:	33 c0                	xor    %eax,%eax
410514:	83 7d 14 02          	cmpl   $0x2,0x14(%ebp)
410518:	0f 94 c0             	sete   %al
41051b:	50                   	push   %eax
41051c:	ff 75 10             	push   0x10(%ebp)
41051f:	ff 75 fc             	push   -0x4(%ebp)
410522:	56                   	push   %esi
410523:	e8 75 eb ff ff       	call   0x40f09d
410528:	8b f8                	mov    %eax,%edi
41052a:	85 ff                	test   %edi,%edi
41052c:	79 0d                	jns    0x41053b
41052e:	68 80 18 45 00       	push   $0x451880
410533:	57                   	push   %edi
410534:	e8 f6 fb 02 00       	call   0x44012f
410539:	59                   	pop    %ecx
41053a:	59                   	pop    %ecx
41053b:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
41053f:	8b 35 00 b0 44 00    	mov    0x44b000,%esi
410545:	74 09                	je     0x410550
410547:	ff 75 fc             	push   -0x4(%ebp)
41054a:	ff d6                	call   *%esi
41054c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
410550:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
410554:	74 09                	je     0x41055f
410556:	ff 75 f8             	push   -0x8(%ebp)
410559:	ff d6                	call   *%esi
41055b:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
41055f:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
410563:	74 08                	je     0x41056d
410565:	ff 75 f4             	push   -0xc(%ebp)
410568:	e8 82 4f 03 00       	call   0x4454ef
41056d:	8b c7                	mov    %edi,%eax
41056f:	5f                   	pop    %edi
410570:	5e                   	pop    %esi
410571:	8b e5                	mov    %ebp,%esp
410573:	5d                   	pop    %ebp
410574:	c2 14 00             	ret    $0x14
410577:	8d 45 fc             	lea    -0x4(%ebp),%eax
41057a:	50                   	push   %eax
41057b:	68 06 00 02 00       	push   $0x20006
410580:	ff 76 50             	push   0x50(%esi)
410583:	ff 76 4c             	push   0x4c(%esi)
410586:	e8 b4 08 03 00       	call   0x440e3f
41058b:	8b f8                	mov    %eax,%edi
41058d:	85 ff                	test   %edi,%edi
41058f:	79 81                	jns    0x410512
410591:	68 40 16 45 00       	push   $0x451640
410596:	eb 9b                	jmp    0x410533
410598:	55                   	push   %ebp
410599:	8b ec                	mov    %esp,%ebp
41059b:	51                   	push   %ecx
41059c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4105a0:	8d 45 fc             	lea    -0x4(%ebp),%eax
4105a3:	56                   	push   %esi
4105a4:	57                   	push   %edi
4105a5:	8b 7d 08             	mov    0x8(%ebp),%edi
4105a8:	50                   	push   %eax
4105a9:	68 06 00 02 00       	push   $0x20006
4105ae:	ff 77 50             	push   0x50(%edi)
4105b1:	ff 77 4c             	push   0x4c(%edi)
4105b4:	e8 86 08 03 00       	call   0x440e3f
4105b9:	8b f0                	mov    %eax,%esi
4105bb:	85 f6                	test   %esi,%esi
4105bd:	79 07                	jns    0x4105c6
4105bf:	68 40 16 45 00       	push   $0x451640
4105c4:	eb 18                	jmp    0x4105de
4105c6:	6a 00                	push   $0x0
4105c8:	6a 01                	push   $0x1
4105ca:	ff 75 fc             	push   -0x4(%ebp)
4105cd:	57                   	push   %edi
4105ce:	e8 ca ea ff ff       	call   0x40f09d
4105d3:	8b f0                	mov    %eax,%esi
4105d5:	85 f6                	test   %esi,%esi
4105d7:	79 0d                	jns    0x4105e6
4105d9:	68 80 18 45 00       	push   $0x451880
4105de:	56                   	push   %esi
4105df:	e8 4b fb 02 00       	call   0x44012f
4105e4:	59                   	pop    %ecx
4105e5:	59                   	pop    %ecx
4105e6:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4105ea:	74 09                	je     0x4105f5
4105ec:	ff 75 fc             	push   -0x4(%ebp)
4105ef:	ff 15 00 b0 44 00    	call   *0x44b000
4105f5:	5f                   	pop    %edi
4105f6:	8b c6                	mov    %esi,%eax
4105f8:	5e                   	pop    %esi
4105f9:	8b e5                	mov    %ebp,%esp
4105fb:	5d                   	pop    %ebp
4105fc:	c2 04 00             	ret    $0x4
4105ff:	55                   	push   %ebp
410600:	8b ec                	mov    %esp,%ebp
410602:	51                   	push   %ecx
410603:	53                   	push   %ebx
410604:	8b 5d 0c             	mov    0xc(%ebp),%ebx
410607:	33 c0                	xor    %eax,%eax
410609:	56                   	push   %esi
41060a:	57                   	push   %edi
41060b:	8b 7d 08             	mov    0x8(%ebp),%edi
41060e:	89 45 fc             	mov    %eax,-0x4(%ebp)
410611:	39 47 0c             	cmp    %eax,0xc(%edi)
410614:	74 20                	je     0x410636
410616:	6a 01                	push   $0x1
410618:	50                   	push   %eax
410619:	6a 01                	push   $0x1
41061b:	68 a8 c2 44 00       	push   $0x44c2a8
410620:	53                   	push   %ebx
410621:	e8 2c 7b ff ff       	call   0x408152
410626:	8b f0                	mov    %eax,%esi
410628:	85 f6                	test   %esi,%esi
41062a:	79 0a                	jns    0x410636
41062c:	68 c8 14 45 00       	push   $0x4514c8
410631:	e9 ad 00 00 00       	jmp    0x4106e3
410636:	8d 45 fc             	lea    -0x4(%ebp),%eax
410639:	50                   	push   %eax
41063a:	53                   	push   %ebx
41063b:	57                   	push   %edi
41063c:	e8 8d e2 ff ff       	call   0x40e8ce
410641:	8b f0                	mov    %eax,%esi
410643:	85 f6                	test   %esi,%esi
410645:	79 0a                	jns    0x410651
410647:	68 00 15 45 00       	push   $0x451500
41064c:	e9 92 00 00 00       	jmp    0x4106e3
410651:	8d 45 fc             	lea    -0x4(%ebp),%eax
410654:	50                   	push   %eax
410655:	53                   	push   %ebx
410656:	57                   	push   %edi
410657:	e8 0a e2 ff ff       	call   0x40e866
41065c:	8b f0                	mov    %eax,%esi
41065e:	85 f6                	test   %esi,%esi
410660:	79 07                	jns    0x410669
410662:	68 24 15 45 00       	push   $0x451524
410667:	eb 7a                	jmp    0x4106e3
410669:	8b 47 40             	mov    0x40(%edi),%eax
41066c:	85 c0                	test   %eax,%eax
41066e:	74 22                	je     0x410692
410670:	33 c9                	xor    %ecx,%ecx
410672:	66 39 08             	cmp    %cx,(%eax)
410675:	74 1b                	je     0x410692
410677:	6a 01                	push   $0x1
410679:	50                   	push   %eax
41067a:	68 b8 c1 44 00       	push   $0x44c1b8
41067f:	53                   	push   %ebx
410680:	e8 12 7b ff ff       	call   0x408197
410685:	8b f0                	mov    %eax,%esi
410687:	85 f6                	test   %esi,%esi
410689:	79 07                	jns    0x410692
41068b:	68 50 15 45 00       	push   $0x451550
410690:	eb 51                	jmp    0x4106e3
410692:	6a 01                	push   $0x1
410694:	ff 77 44             	push   0x44(%edi)
410697:	68 f4 c2 44 00       	push   $0x44c2f4
41069c:	53                   	push   %ebx
41069d:	e8 f5 7a ff ff       	call   0x408197
4106a2:	8b f0                	mov    %eax,%esi
4106a4:	85 f6                	test   %esi,%esi
4106a6:	79 07                	jns    0x4106af
4106a8:	68 90 15 45 00       	push   $0x451590
4106ad:	eb 34                	jmp    0x4106e3
4106af:	6a 01                	push   $0x1
4106b1:	ff 77 14             	push   0x14(%edi)
4106b4:	68 94 c3 44 00       	push   $0x44c394
4106b9:	53                   	push   %ebx
4106ba:	e8 d8 7a ff ff       	call   0x408197
4106bf:	8b f0                	mov    %eax,%esi
4106c1:	85 f6                	test   %esi,%esi
4106c3:	78 19                	js     0x4106de
4106c5:	6a 01                	push   $0x1
4106c7:	ff 77 3c             	push   0x3c(%edi)
4106ca:	ff 77 38             	push   0x38(%edi)
4106cd:	68 b0 c3 44 00       	push   $0x44c3b0
4106d2:	53                   	push   %ebx
4106d3:	e8 00 7b ff ff       	call   0x4081d8
4106d8:	8b f0                	mov    %eax,%esi
4106da:	85 f6                	test   %esi,%esi
4106dc:	79 0d                	jns    0x4106eb
4106de:	68 d0 15 45 00       	push   $0x4515d0
4106e3:	56                   	push   %esi
4106e4:	e8 46 fa 02 00       	call   0x44012f
4106e9:	59                   	pop    %ecx
4106ea:	59                   	pop    %ecx
4106eb:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4106ef:	74 08                	je     0x4106f9
4106f1:	ff 75 fc             	push   -0x4(%ebp)
4106f4:	e8 f6 4d 03 00       	call   0x4454ef
4106f9:	5f                   	pop    %edi
4106fa:	8b c6                	mov    %esi,%eax
4106fc:	5e                   	pop    %esi
4106fd:	5b                   	pop    %ebx
4106fe:	8b e5                	mov    %ebp,%esp
410700:	5d                   	pop    %ebp
410701:	c2 08 00             	ret    $0x8
410704:	55                   	push   %ebp
410705:	8b ec                	mov    %esp,%ebp
410707:	53                   	push   %ebx
410708:	56                   	push   %esi
410709:	8b 75 08             	mov    0x8(%ebp),%esi
41070c:	57                   	push   %edi
41070d:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
410711:	74 08                	je     0x41071b
410713:	ff 76 10             	push   0x10(%esi)
410716:	e8 d4 4d 03 00       	call   0x4454ef
41071b:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
41071f:	74 08                	je     0x410729
410721:	ff 76 14             	push   0x14(%esi)
410724:	e8 c6 4d 03 00       	call   0x4454ef
410729:	33 db                	xor    %ebx,%ebx
41072b:	8b fb                	mov    %ebx,%edi
41072d:	39 5e 1c             	cmp    %ebx,0x1c(%esi)
410730:	76 16                	jbe    0x410748
410732:	8b 46 18             	mov    0x18(%esi),%eax
410735:	39 1c b8             	cmp    %ebx,(%eax,%edi,4)
410738:	74 08                	je     0x410742
41073a:	ff 34 b8             	push   (%eax,%edi,4)
41073d:	e8 ad 4d 03 00       	call   0x4454ef
410742:	47                   	inc    %edi
410743:	3b 7e 1c             	cmp    0x1c(%esi),%edi
410746:	72 ea                	jb     0x410732
410748:	39 5e 18             	cmp    %ebx,0x18(%esi)
41074b:	74 08                	je     0x410755