40137a:	53                   	push   %ebx
40137b:	55                   	push   %ebp
40137c:	56                   	push   %esi
40137d:	57                   	push   %edi
40137e:	8b f9                	mov    %ecx,%edi
401380:	57                   	push   %edi
401381:	ff 15 14 10 43 00    	call   *0x431014
401387:	57                   	push   %edi
401388:	c6 87 88 00 00 00 01 	movb   $0x1,0x88(%edi)
40138f:	ff 15 18 10 43 00    	call   *0x431018
401395:	ff 77 3c             	push   0x3c(%edi)
401398:	ff 15 00 11 43 00    	call   *0x431100
40139e:	6a 64                	push   $0x64
4013a0:	5e                   	pop    %esi
4013a1:	4e                   	dec    %esi
4013a2:	83 bf 84 00 00 00 01 	cmpl   $0x1,0x84(%edi)
4013a9:	74 0c                	je     0x4013b7
4013ab:	6a 0a                	push   $0xa
4013ad:	ff 15 28 10 43 00    	call   *0x431028
4013b3:	85 f6                	test   %esi,%esi
4013b5:	75 ea                	jne    0x4013a1
4013b7:	83 7f 40 00          	cmpl   $0x0,0x40(%edi)
4013bb:	74 0b                	je     0x4013c8
4013bd:	6a ff                	push   $0xffffffff
4013bf:	ff 77 40             	push   0x40(%edi)
4013c2:	ff 15 18 11 43 00    	call   *0x431118
4013c8:	83 7f 3c 00          	cmpl   $0x0,0x3c(%edi)
4013cc:	8b 2d 20 10 43 00    	mov    0x431020,%ebp
4013d2:	74 05                	je     0x4013d9
4013d4:	ff 77 3c             	push   0x3c(%edi)
4013d7:	ff d5                	call   *%ebp
4013d9:	8d 5f 18             	lea    0x18(%edi),%ebx
4013dc:	8b 03                	mov    (%ebx),%eax
4013de:	8b 30                	mov    (%eax),%esi
4013e0:	3b f0                	cmp    %eax,%esi
4013e2:	74 38                	je     0x40141c
4013e4:	8b 5e 08             	mov    0x8(%esi),%ebx
4013e7:	8b cb                	mov    %ebx,%ecx
4013e9:	6a 01                	push   $0x1
4013eb:	e8 43 11 00 00       	call   0x402533
4013f0:	8b cb                	mov    %ebx,%ecx
4013f2:	e8 22 11 00 00       	call   0x402519
4013f7:	85 db                	test   %ebx,%ebx
4013f9:	74 11                	je     0x40140c
4013fb:	8b cb                	mov    %ebx,%ecx
4013fd:	e8 5c 11 00 00       	call   0x40255e
401402:	6a 4c                	push   $0x4c
401404:	53                   	push   %ebx
401405:	e8 e6 55 00 00       	call   0x4069f0
40140a:	59                   	pop    %ecx
40140b:	59                   	pop    %ecx
40140c:	8b 36                	mov    (%esi),%esi
40140e:	3b 77 18             	cmp    0x18(%edi),%esi
401411:	75 d1                	jne    0x4013e4
401413:	8b 2d 20 10 43 00    	mov    0x431020,%ebp
401419:	8d 5f 18             	lea    0x18(%edi),%ebx
40141c:	83 7f 44 00          	cmpl   $0x0,0x44(%edi)
401420:	74 0e                	je     0x401430
401422:	ff 77 44             	push   0x44(%edi)
401425:	ff 15 f8 10 43 00    	call   *0x4310f8
40142b:	ff 77 44             	push   0x44(%edi)
40142e:	ff d5                	call   *%ebp
401430:	8b 87 9c 00 00 00    	mov    0x9c(%edi),%eax
401436:	85 c0                	test   %eax,%eax
401438:	74 03                	je     0x40143d
40143a:	50                   	push   %eax
40143b:	ff d5                	call   *%ebp
40143d:	57                   	push   %edi
40143e:	ff 15 1c 11 43 00    	call   *0x43111c
401444:	6a 00                	push   $0x0
401446:	6a 01                	push   $0x1
401448:	8d 4f 6c             	lea    0x6c(%edi),%ecx
40144b:	e8 75 0c 00 00       	call   0x4020c5
401450:	6a 00                	push   $0x0
401452:	6a 01                	push   $0x1
401454:	8d 4f 20             	lea    0x20(%edi),%ecx
401457:	e8 69 0c 00 00       	call   0x4020c5
40145c:	5f                   	pop    %edi
40145d:	5e                   	pop    %esi
40145e:	5d                   	pop    %ebp
40145f:	8b cb                	mov    %ebx,%ecx
401461:	5b                   	pop    %ebx
401462:	e9 1d 0b 00 00       	jmp    0x401f84
401467:	53                   	push   %ebx
401468:	56                   	push   %esi
401469:	8b f1                	mov    %ecx,%esi
40146b:	57                   	push   %edi
40146c:	33 ff                	xor    %edi,%edi
40146e:	39 be 84 00 00 00    	cmp    %edi,0x84(%esi)
401474:	0f 85 8a 00 00 00    	jne    0x401504
40147a:	57                   	push   %edi
40147b:	33 db                	xor    %ebx,%ebx
40147d:	c7 86 84 00 00 00 02 	movl   $0x2,0x84(%esi)
401484:	00 00 00
401487:	43                   	inc    %ebx
401488:	53                   	push   %ebx
401489:	57                   	push   %edi
40148a:	ff 15 f4 10 43 00    	call   *0x4310f4
401490:	89 46 44             	mov    %eax,0x44(%esi)
401493:	85 c0                	test   %eax,%eax
401495:	74 6d                	je     0x401504
401497:	57                   	push   %edi
401498:	57                   	push   %edi
401499:	53                   	push   %ebx
40149a:	57                   	push   %edi
40149b:	ff 15 04 11 43 00    	call   *0x431104
4014a1:	89 86 9c 00 00 00    	mov    %eax,0x9c(%esi)
4014a7:	85 c0                	test   %eax,%eax
4014a9:	74 59                	je     0x401504
4014ab:	6a 04                	push   $0x4
4014ad:	6a ff                	push   $0xffffffff
4014af:	56                   	push   %esi
4014b0:	68 a0 1b 40 00       	push   $0x401ba0
4014b5:	50                   	push   %eax
4014b6:	8d 46 40             	lea    0x40(%esi),%eax
4014b9:	50                   	push   %eax
4014ba:	ff 15 e4 10 43 00    	call   *0x4310e4
4014c0:	85 c0                	test   %eax,%eax
4014c2:	74 40                	je     0x401504
4014c4:	8d 46 20             	lea    0x20(%esi),%eax
4014c7:	83 78 14 08          	cmpl   $0x8,0x14(%eax)
4014cb:	72 02                	jb     0x4014cf
4014cd:	8b 00                	mov    (%eax),%eax
4014cf:	ff 76 38             	push   0x38(%esi)
4014d2:	57                   	push   %edi
4014d3:	6a 40                	push   $0x40
4014d5:	6a 40                	push   $0x40
4014d7:	53                   	push   %ebx
4014d8:	6a 06                	push   $0x6
4014da:	68 03 00 08 40       	push   $0x40080003
4014df:	50                   	push   %eax
4014e0:	ff 15 ec 10 43 00    	call   *0x4310ec
4014e6:	89 46 3c             	mov    %eax,0x3c(%esi)
4014e9:	83 f8 ff             	cmp    $0xffffffff,%eax
4014ec:	74 16                	je     0x401504
4014ee:	ff b6 9c 00 00 00    	push   0x9c(%esi)
4014f4:	ff 15 0c 11 43 00    	call   *0x43110c
4014fa:	85 c0                	test   %eax,%eax
4014fc:	75 0c                	jne    0x40150a
4014fe:	89 9e 84 00 00 00    	mov    %ebx,0x84(%esi)
401504:	32 c0                	xor    %al,%al
401506:	5f                   	pop    %edi
401507:	5e                   	pop    %esi
401508:	5b                   	pop    %ebx
401509:	c3                   	ret
40150a:	8a c3                	mov    %bl,%al
40150c:	eb f8                	jmp    0x401506
40150e:	56                   	push   %esi
40150f:	8b f1                	mov    %ecx,%esi
401511:	80 be 88 00 00 00 00 	cmpb   $0x0,0x88(%esi)
401518:	75 3e                	jne    0x401558
40151a:	83 7e 40 00          	cmpl   $0x0,0x40(%esi)
40151e:	74 0d                	je     0x40152d
401520:	ff 76 40             	push   0x40(%esi)
401523:	ff 15 e8 10 43 00    	call   *0x4310e8
401529:	83 66 40 00          	andl   $0x0,0x40(%esi)
40152d:	83 7e 3c 00          	cmpl   $0x0,0x3c(%esi)
401531:	74 0d                	je     0x401540
401533:	ff 76 3c             	push   0x3c(%esi)
401536:	ff 15 20 10 43 00    	call   *0x431020
40153c:	83 66 3c 00          	andl   $0x0,0x3c(%esi)
401540:	8b 86 9c 00 00 00    	mov    0x9c(%esi),%eax
401546:	85 c0                	test   %eax,%eax
401548:	74 0e                	je     0x401558
40154a:	50                   	push   %eax
40154b:	ff 15 20 10 43 00    	call   *0x431020
401551:	83 a6 9c 00 00 00 00 	andl   $0x0,0x9c(%esi)
401558:	5e                   	pop    %esi
401559:	c3                   	ret
40155a:	56                   	push   %esi
40155b:	8b f1                	mov    %ecx,%esi
40155d:	ff b6 9c 00 00 00    	push   0x9c(%esi)
401563:	ff 15 10 11 43 00    	call   *0x431110
401569:	85 c0                	test   %eax,%eax
40156b:	75 18                	jne    0x401585
40156d:	ff b6 9c 00 00 00    	push   0x9c(%esi)
401573:	ff 15 0c 11 43 00    	call   *0x43110c
401579:	c7 86 84 00 00 00 01 	movl   $0x1,0x84(%esi)
401580:	00 00 00
401583:	5e                   	pop    %esi
401584:	c3                   	ret
401585:	8d 86 8c 00 00 00    	lea    0x8c(%esi),%eax
40158b:	50                   	push   %eax
40158c:	ff 76 3c             	push   0x3c(%esi)
40158f:	ff 15 24 11 43 00    	call   *0x431124
401595:	85 c0                	test   %eax,%eax
401597:	75 d4                	jne    0x40156d
401599:	ff 15 08 11 43 00    	call   *0x431108
40159f:	3d 17 02 00 00       	cmp    $0x217,%eax
4015a4:	74 13                	je     0x4015b9
4015a6:	3d e5 03 00 00       	cmp    $0x3e5,%eax
4015ab:	75 c0                	jne    0x40156d
4015ad:	c7 86 84 00 00 00 03 	movl   $0x3,0x84(%esi)
4015b4:	00 00 00
4015b7:	5e                   	pop    %esi
4015b8:	c3                   	ret
4015b9:	6a 04                	push   $0x4
4015bb:	8b ce                	mov    %esi,%ecx
4015bd:	e8 8f 02 00 00       	call   0x401851
4015c2:	5e                   	pop    %esi
4015c3:	c3                   	ret
4015c4:	55                   	push   %ebp
4015c5:	8b ec                	mov    %esp,%ebp
4015c7:	51                   	push   %ecx
4015c8:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4015cc:	56                   	push   %esi
4015cd:	57                   	push   %edi
4015ce:	8b f9                	mov    %ecx,%edi
4015d0:	6a 34                	push   $0x34
4015d2:	6a 00                	push   $0x0
4015d4:	8d b7 a0 00 00 00    	lea    0xa0(%edi),%esi
4015da:	56                   	push   %esi
4015db:	e8 e0 9d 00 00       	call   0x40b3c0
4015e0:	83 c4 0c             	add    $0xc,%esp
4015e3:	8d 87 8c 00 00 00    	lea    0x8c(%edi),%eax
4015e9:	50                   	push   %eax
4015ea:	8d 45 fc             	lea    -0x4(%ebp),%eax
4015ed:	50                   	push   %eax
4015ee:	6a 34                	push   $0x34
4015f0:	56                   	push   %esi
4015f1:	ff 77 3c             	push   0x3c(%edi)
4015f4:	ff 15 d8 10 43 00    	call   *0x4310d8
4015fa:	85 c0                	test   %eax,%eax
4015fc:	75 18                	jne    0x401616
4015fe:	ff 15 08 11 43 00    	call   *0x431108
401604:	3d e5 03 00 00       	cmp    $0x3e5,%eax
401609:	74 0b                	je     0x401616
40160b:	6a 0a                	push   $0xa
40160d:	8b cf                	mov    %edi,%ecx
40160f:	e8 3d 02 00 00       	call   0x401851
401614:	eb 0a                	jmp    0x401620
401616:	c7 87 84 00 00 00 05 	movl   $0x5,0x84(%edi)
40161d:	00 00 00
401620:	5f                   	pop    %edi
401621:	5e                   	pop    %esi
401622:	c9                   	leave
401623:	c3                   	ret
401624:	55                   	push   %ebp
401625:	8b ec                	mov    %esp,%ebp
401627:	51                   	push   %ecx
401628:	53                   	push   %ebx
401629:	56                   	push   %esi
40162a:	8b f1                	mov    %ecx,%esi
40162c:	8b 86 a0 00 00 00    	mov    0xa0(%esi),%eax
401632:	83 f8 04             	cmp    $0x4,%eax
401635:	0f 84 ca 00 00 00    	je     0x401705
40163b:	83 f8 01             	cmp    $0x1,%eax
40163e:	0f 85 d5 00 00 00    	jne    0x401719
401644:	33 db                	xor    %ebx,%ebx
401646:	39 9e a4 00 00 00    	cmp    %ebx,0xa4(%esi)
40164c:	0f 84 c7 00 00 00    	je     0x401719
401652:	39 9e ac 00 00 00    	cmp    %ebx,0xac(%esi)
401658:	0f 84 bb 00 00 00    	je     0x401719
40165e:	39 9e b0 00 00 00    	cmp    %ebx,0xb0(%esi)
401664:	0f 84 af 00 00 00    	je     0x401719
40166a:	39 9e bc 00 00 00    	cmp    %ebx,0xbc(%esi)
401670:	0f 84 a3 00 00 00    	je     0x401719
401676:	57                   	push   %edi
401677:	6a 4c                	push   $0x4c
401679:	e8 42 53 00 00       	call   0x4069c0
40167e:	59                   	pop    %ecx
40167f:	85 c0                	test   %eax,%eax
401681:	74 3d                	je     0x4016c0
401683:	8d 8e c0 00 00 00    	lea    0xc0(%esi),%ecx
401689:	51                   	push   %ecx
40168a:	ff b6 b8 00 00 00    	push   0xb8(%esi)
401690:	8b c8                	mov    %eax,%ecx
401692:	ff b6 b4 00 00 00    	push   0xb4(%esi)
401698:	ff b6 bc 00 00 00    	push   0xbc(%esi)
40169e:	ff b6 b0 00 00 00    	push   0xb0(%esi)
4016a4:	ff b6 ac 00 00 00    	push   0xac(%esi)
4016aa:	ff b6 a8 00 00 00    	push   0xa8(%esi)
4016b0:	ff b6 a4 00 00 00    	push   0xa4(%esi)
4016b6:	56                   	push   %esi
4016b7:	e8 76 0d 00 00       	call   0x402432
4016bc:	8b f8                	mov    %eax,%edi
4016be:	eb 02                	jmp    0x4016c2
4016c0:	8b fb                	mov    %ebx,%edi
4016c2:	8b cf                	mov    %edi,%ecx
4016c4:	89 7d fc             	mov    %edi,-0x4(%ebp)
4016c7:	e8 d1 0d 00 00       	call   0x40249d
4016cc:	84 c0                	test   %al,%al
4016ce:	74 21                	je     0x4016f1
4016d0:	57                   	push   %edi
4016d1:	8b ce                	mov    %esi,%ecx
4016d3:	e8 1f 02 00 00       	call   0x4018f7
4016d8:	84 c0                	test   %al,%al
4016da:	74 15                	je     0x4016f1
4016dc:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4016df:	89 be d4 00 00 00    	mov    %edi,0xd4(%esi)
4016e5:	c7 86 84 00 00 00 07 	movl   $0x7,0x84(%esi)
4016ec:	00 00 00
4016ef:	eb 09                	jmp    0x4016fa
4016f1:	6a 0a                	push   $0xa
4016f3:	8b ce                	mov    %esi,%ecx
4016f5:	e8 57 01 00 00       	call   0x401851
4016fa:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4016fd:	e8 c8 07 00 00       	call   0x401eca
401702:	5f                   	pop    %edi
401703:	eb 1d                	jmp    0x401722
401705:	8b 46 60             	mov    0x60(%esi),%eax
401708:	85 c0                	test   %eax,%eax
40170a:	74 0d                	je     0x401719
40170c:	ff b6 a4 00 00 00    	push   0xa4(%esi)
401712:	ff 76 64             	push   0x64(%esi)
401715:	ff d0                	call   *%eax
401717:	59                   	pop    %ecx
401718:	59                   	pop    %ecx
401719:	6a 0a                	push   $0xa
40171b:	8b ce                	mov    %esi,%ecx
40171d:	e8 2f 01 00 00       	call   0x401851
401722:	5e                   	pop    %esi
401723:	5b                   	pop    %ebx
401724:	c9                   	leave
401725:	c3                   	ret
401726:	55                   	push   %ebp
401727:	8b ec                	mov    %esp,%ebp
401729:	51                   	push   %ecx
40172a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40172e:	56                   	push   %esi
40172f:	8b f1                	mov    %ecx,%esi
401731:	8d 86 8c 00 00 00    	lea    0x8c(%esi),%eax
401737:	50                   	push   %eax
401738:	8d 45 fc             	lea    -0x4(%ebp),%eax
40173b:	50                   	push   %eax
40173c:	6a 34                	push   $0x34
40173e:	8d 86 a0 00 00 00    	lea    0xa0(%esi),%eax
401744:	50                   	push   %eax
401745:	ff 76 3c             	push   0x3c(%esi)
401748:	ff 15 d8 10 43 00    	call   *0x4310d8
40174e:	85 c0                	test   %eax,%eax
401750:	75 1d                	jne    0x40176f
401752:	ff 15 08 11 43 00    	call   *0x431108
401758:	3d e5 03 00 00       	cmp    $0x3e5,%eax
40175d:	75 0c                	jne    0x40176b
40175f:	c7 86 84 00 00 00 09 	movl   $0x9,0x84(%esi)
401766:	00 00 00
401769:	eb 0d                	jmp    0x401778
40176b:	6a 0a                	push   $0xa
40176d:	eb 02                	jmp    0x401771
40176f:	6a 09                	push   $0x9
401771:	8b ce                	mov    %esi,%ecx
401773:	e8 d9 00 00 00       	call   0x401851
401778:	5e                   	pop    %esi
401779:	c9                   	leave
40177a:	c3                   	ret
40177b:	55                   	push   %ebp
40177c:	8b ec                	mov    %esp,%ebp
40177e:	51                   	push   %ecx
40177f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)