42039b:	83 c0 1c             	add    $0x1c,%eax
42039e:	50                   	push   %eax
42039f:	56                   	push   %esi
4203a0:	ff 75 f8             	push   -0x8(%ebp)
4203a3:	8d 45 ec             	lea    -0x14(%ebp),%eax
4203a6:	6a 01                	push   $0x1
4203a8:	50                   	push   %eax
4203a9:	e8 f1 bb ff ff       	call   0x41bf9f
4203ae:	0b d8                	or     %eax,%ebx
4203b0:	8b 45 08             	mov    0x8(%ebp),%eax
4203b3:	8d 04 b8             	lea    (%eax,%edi,4),%eax
4203b6:	05 b4 00 00 00       	add    $0xb4,%eax
4203bb:	50                   	push   %eax
4203bc:	ff 75 fc             	push   -0x4(%ebp)
4203bf:	8d 45 ec             	lea    -0x14(%ebp),%eax
4203c2:	ff 75 f8             	push   -0x8(%ebp)
4203c5:	6a 02                	push   $0x2
4203c7:	50                   	push   %eax
4203c8:	e8 d2 bb ff ff       	call   0x41bf9f
4203cd:	0b d8                	or     %eax,%ebx
4203cf:	8b 45 08             	mov    0x8(%ebp),%eax
4203d2:	8d 04 b8             	lea    (%eax,%edi,4),%eax
4203d5:	8b 7d f8             	mov    -0x8(%ebp),%edi
4203d8:	05 d0 00 00 00       	add    $0xd0,%eax
4203dd:	50                   	push   %eax
4203de:	56                   	push   %esi
4203df:	57                   	push   %edi
4203e0:	8d 45 ec             	lea    -0x14(%ebp),%eax
4203e3:	6a 02                	push   $0x2
4203e5:	50                   	push   %eax
4203e6:	e8 b4 bb ff ff       	call   0x41bf9f
4203eb:	0b d8                	or     %eax,%ebx
4203ed:	83 c4 50             	add    $0x50,%esp
4203f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4203f3:	40                   	inc    %eax
4203f4:	83 6d f4 01          	subl   $0x1,-0xc(%ebp)
4203f8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4203fb:	0f 85 68 ff ff ff    	jne    0x420369
420401:	8b 45 08             	mov    0x8(%ebp),%eax
420404:	6a 38                	push   $0x38
420406:	5e                   	pop    %esi
420407:	83 c0 68             	add    $0x68,%eax
42040a:	89 75 f8             	mov    %esi,-0x8(%ebp)
42040d:	89 45 fc             	mov    %eax,-0x4(%ebp)
420410:	c7 45 f4 0c 00 00 00 	movl   $0xc,-0xc(%ebp)
420417:	83 c0 d0             	add    $0xffffffd0,%eax
42041a:	83 c6 0c             	add    $0xc,%esi
42041d:	50                   	push   %eax
42041e:	56                   	push   %esi
42041f:	57                   	push   %edi
420420:	8d 45 ec             	lea    -0x14(%ebp),%eax
420423:	6a 01                	push   $0x1
420425:	50                   	push   %eax
420426:	e8 74 bb ff ff       	call   0x41bf9f
42042b:	ff 75 fc             	push   -0x4(%ebp)
42042e:	0b d8                	or     %eax,%ebx
420430:	8d 45 ec             	lea    -0x14(%ebp),%eax
420433:	ff 75 f8             	push   -0x8(%ebp)
420436:	57                   	push   %edi
420437:	6a 01                	push   $0x1
420439:	50                   	push   %eax
42043a:	e8 60 bb ff ff       	call   0x41bf9f
42043f:	0b d8                	or     %eax,%ebx
420441:	8b 45 fc             	mov    -0x4(%ebp),%eax
420444:	05 84 00 00 00       	add    $0x84,%eax
420449:	50                   	push   %eax
42044a:	56                   	push   %esi
42044b:	57                   	push   %edi
42044c:	8d 45 ec             	lea    -0x14(%ebp),%eax
42044f:	6a 02                	push   $0x2
420451:	50                   	push   %eax
420452:	e8 48 bb ff ff       	call   0x41bf9f
420457:	8b 75 f8             	mov    -0x8(%ebp),%esi
42045a:	0b d8                	or     %eax,%ebx
42045c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42045f:	05 b4 00 00 00       	add    $0xb4,%eax
420464:	50                   	push   %eax
420465:	56                   	push   %esi
420466:	57                   	push   %edi
420467:	8d 45 ec             	lea    -0x14(%ebp),%eax
42046a:	6a 02                	push   $0x2
42046c:	50                   	push   %eax
42046d:	e8 2d bb ff ff       	call   0x41bf9f
420472:	0b d8                	or     %eax,%ebx
420474:	83 c4 50             	add    $0x50,%esp
420477:	8b 45 fc             	mov    -0x4(%ebp),%eax
42047a:	83 c0 04             	add    $0x4,%eax
42047d:	46                   	inc    %esi
42047e:	83 6d f4 01          	subl   $0x1,-0xc(%ebp)
420482:	89 45 fc             	mov    %eax,-0x4(%ebp)
420485:	89 75 f8             	mov    %esi,-0x8(%ebp)
420488:	75 8d                	jne    0x420417
42048a:	8b 75 08             	mov    0x8(%ebp),%esi
42048d:	8d 86 98 00 00 00    	lea    0x98(%esi),%eax
420493:	50                   	push   %eax
420494:	6a 28                	push   $0x28
420496:	57                   	push   %edi
420497:	8d 45 ec             	lea    -0x14(%ebp),%eax
42049a:	6a 01                	push   $0x1
42049c:	50                   	push   %eax
42049d:	e8 fd ba ff ff       	call   0x41bf9f
4204a2:	0b d8                	or     %eax,%ebx
4204a4:	8d 86 9c 00 00 00    	lea    0x9c(%esi),%eax
4204aa:	50                   	push   %eax
4204ab:	6a 29                	push   $0x29
4204ad:	57                   	push   %edi
4204ae:	8d 45 ec             	lea    -0x14(%ebp),%eax
4204b1:	6a 01                	push   $0x1
4204b3:	50                   	push   %eax
4204b4:	e8 e6 ba ff ff       	call   0x41bf9f
4204b9:	0b d8                	or     %eax,%ebx
4204bb:	8d 86 4c 01 00 00    	lea    0x14c(%esi),%eax
4204c1:	50                   	push   %eax
4204c2:	6a 28                	push   $0x28
4204c4:	57                   	push   %edi
4204c5:	8d 45 ec             	lea    -0x14(%ebp),%eax
4204c8:	6a 02                	push   $0x2
4204ca:	50                   	push   %eax
4204cb:	e8 cf ba ff ff       	call   0x41bf9f
4204d0:	0b d8                	or     %eax,%ebx
4204d2:	8d 86 50 01 00 00    	lea    0x150(%esi),%eax
4204d8:	50                   	push   %eax
4204d9:	6a 29                	push   $0x29
4204db:	57                   	push   %edi
4204dc:	8d 45 ec             	lea    -0x14(%ebp),%eax
4204df:	6a 02                	push   $0x2
4204e1:	50                   	push   %eax
4204e2:	e8 b8 ba ff ff       	call   0x41bf9f
4204e7:	83 c4 50             	add    $0x50,%esp
4204ea:	0b d8                	or     %eax,%ebx
4204ec:	8d 86 a0 00 00 00    	lea    0xa0(%esi),%eax
4204f2:	50                   	push   %eax
4204f3:	6a 1f                	push   $0x1f
4204f5:	57                   	push   %edi
4204f6:	8d 45 ec             	lea    -0x14(%ebp),%eax
4204f9:	6a 01                	push   $0x1
4204fb:	50                   	push   %eax
4204fc:	e8 9e ba ff ff       	call   0x41bf9f
420501:	0b d8                	or     %eax,%ebx
420503:	8d 86 a4 00 00 00    	lea    0xa4(%esi),%eax
420509:	50                   	push   %eax
42050a:	6a 20                	push   $0x20
42050c:	57                   	push   %edi
42050d:	8d 45 ec             	lea    -0x14(%ebp),%eax
420510:	6a 01                	push   $0x1
420512:	50                   	push   %eax
420513:	e8 87 ba ff ff       	call   0x41bf9f
420518:	0b d8                	or     %eax,%ebx
42051a:	8d 86 a8 00 00 00    	lea    0xa8(%esi),%eax
420520:	50                   	push   %eax
420521:	68 03 10 00 00       	push   $0x1003
420526:	57                   	push   %edi
420527:	8d 45 ec             	lea    -0x14(%ebp),%eax
42052a:	6a 01                	push   $0x1
42052c:	50                   	push   %eax
42052d:	e8 6d ba ff ff       	call   0x41bf9f
420532:	0b d8                	or     %eax,%ebx
420534:	8d 86 ac 00 00 00    	lea    0xac(%esi),%eax
42053a:	50                   	push   %eax
42053b:	68 09 10 00 00       	push   $0x1009
420540:	57                   	push   %edi
420541:	8d 45 ec             	lea    -0x14(%ebp),%eax
420544:	6a 00                	push   $0x0
420546:	50                   	push   %eax
420547:	e8 53 ba ff ff       	call   0x41bf9f
42054c:	83 c4 50             	add    $0x50,%esp
42054f:	0b d8                	or     %eax,%ebx
420551:	8d 86 54 01 00 00    	lea    0x154(%esi),%eax
420557:	50                   	push   %eax
420558:	6a 1f                	push   $0x1f
42055a:	57                   	push   %edi
42055b:	6a 02                	push   $0x2
42055d:	8d 45 ec             	lea    -0x14(%ebp),%eax
420560:	50                   	push   %eax
420561:	e8 39 ba ff ff       	call   0x41bf9f
420566:	0b d8                	or     %eax,%ebx
420568:	8d 86 58 01 00 00    	lea    0x158(%esi),%eax
42056e:	50                   	push   %eax
42056f:	6a 20                	push   $0x20
420571:	57                   	push   %edi
420572:	8d 45 ec             	lea    -0x14(%ebp),%eax
420575:	6a 02                	push   $0x2
420577:	50                   	push   %eax
420578:	e8 22 ba ff ff       	call   0x41bf9f
42057d:	0b d8                	or     %eax,%ebx
42057f:	8d 86 5c 01 00 00    	lea    0x15c(%esi),%eax
420585:	50                   	push   %eax
420586:	68 03 10 00 00       	push   $0x1003
42058b:	57                   	push   %edi
42058c:	8d 45 ec             	lea    -0x14(%ebp),%eax
42058f:	6a 02                	push   $0x2
420591:	50                   	push   %eax
420592:	e8 08 ba ff ff       	call   0x41bf9f
420597:	83 c4 3c             	add    $0x3c,%esp
42059a:	0b c3                	or     %ebx,%eax
42059c:	f7 d8                	neg    %eax
42059e:	1b c0                	sbb    %eax,%eax
4205a0:	5f                   	pop    %edi
4205a1:	5e                   	pop    %esi
4205a2:	40                   	inc    %eax
4205a3:	5b                   	pop    %ebx
4205a4:	8b e5                	mov    %ebp,%esp
4205a6:	5d                   	pop    %ebp
4205a7:	c3                   	ret
4205a8:	8b ff                	mov    %edi,%edi
4205aa:	55                   	push   %ebp
4205ab:	8b ec                	mov    %esp,%ebp
4205ad:	56                   	push   %esi
4205ae:	8b 75 08             	mov    0x8(%ebp),%esi
4205b1:	85 f6                	test   %esi,%esi
4205b3:	0f 84 d0 00 00 00    	je     0x420689
4205b9:	6a 07                	push   $0x7
4205bb:	56                   	push   %esi
4205bc:	e8 2e fd ff ff       	call   0x4202ef
4205c1:	8d 46 1c             	lea    0x1c(%esi),%eax
4205c4:	6a 07                	push   $0x7
4205c6:	50                   	push   %eax
4205c7:	e8 23 fd ff ff       	call   0x4202ef
4205cc:	8d 46 38             	lea    0x38(%esi),%eax
4205cf:	6a 0c                	push   $0xc
4205d1:	50                   	push   %eax
4205d2:	e8 18 fd ff ff       	call   0x4202ef
4205d7:	8d 46 68             	lea    0x68(%esi),%eax
4205da:	6a 0c                	push   $0xc
4205dc:	50                   	push   %eax
4205dd:	e8 0d fd ff ff       	call   0x4202ef
4205e2:	8d 86 98 00 00 00    	lea    0x98(%esi),%eax
4205e8:	6a 02                	push   $0x2
4205ea:	50                   	push   %eax
4205eb:	e8 ff fc ff ff       	call   0x4202ef
4205f0:	ff b6 a0 00 00 00    	push   0xa0(%esi)
4205f6:	e8 15 47 ff ff       	call   0x414d10
4205fb:	ff b6 a4 00 00 00    	push   0xa4(%esi)
420601:	e8 0a 47 ff ff       	call   0x414d10
420606:	ff b6 a8 00 00 00    	push   0xa8(%esi)
42060c:	e8 ff 46 ff ff       	call   0x414d10
420611:	8d 86 b4 00 00 00    	lea    0xb4(%esi),%eax
420617:	6a 07                	push   $0x7
420619:	50                   	push   %eax
42061a:	e8 d0 fc ff ff       	call   0x4202ef
42061f:	8d 86 d0 00 00 00    	lea    0xd0(%esi),%eax
420625:	6a 07                	push   $0x7
420627:	50                   	push   %eax
420628:	e8 c2 fc ff ff       	call   0x4202ef
42062d:	83 c4 44             	add    $0x44,%esp
420630:	8d 86 ec 00 00 00    	lea    0xec(%esi),%eax
420636:	6a 0c                	push   $0xc
420638:	50                   	push   %eax
420639:	e8 b1 fc ff ff       	call   0x4202ef
42063e:	8d 86 1c 01 00 00    	lea    0x11c(%esi),%eax
420644:	6a 0c                	push   $0xc
420646:	50                   	push   %eax
420647:	e8 a3 fc ff ff       	call   0x4202ef
42064c:	8d 86 4c 01 00 00    	lea    0x14c(%esi),%eax
420652:	6a 02                	push   $0x2
420654:	50                   	push   %eax
420655:	e8 95 fc ff ff       	call   0x4202ef
42065a:	ff b6 54 01 00 00    	push   0x154(%esi)
420660:	e8 ab 46 ff ff       	call   0x414d10
420665:	ff b6 58 01 00 00    	push   0x158(%esi)
42066b:	e8 a0 46 ff ff       	call   0x414d10
420670:	ff b6 5c 01 00 00    	push   0x15c(%esi)
420676:	e8 95 46 ff ff       	call   0x414d10
42067b:	ff b6 60 01 00 00    	push   0x160(%esi)
420681:	e8 8a 46 ff ff       	call   0x414d10
420686:	83 c4 28             	add    $0x28,%esp
420689:	5e                   	pop    %esi
42068a:	5d                   	pop    %ebp
42068b:	c3                   	ret
42068c:	8b ff                	mov    %edi,%edi
42068e:	55                   	push   %ebp
42068f:	8b ec                	mov    %esp,%ebp
420691:	56                   	push   %esi
420692:	57                   	push   %edi
420693:	8b 7d 08             	mov    0x8(%ebp),%edi
420696:	83 bf b4 00 00 00 00 	cmpl   $0x0,0xb4(%edi)
42069d:	75 07                	jne    0x4206a6
42069f:	be c8 d0 42 00       	mov    $0x42d0c8,%esi
4206a4:	eb 4d                	jmp    0x4206f3
4206a6:	68 64 01 00 00       	push   $0x164
4206ab:	6a 01                	push   $0x1
4206ad:	e8 7d 3d ff ff       	call   0x41442f
4206b2:	8b f0                	mov    %eax,%esi
4206b4:	59                   	pop    %ecx
4206b5:	59                   	pop    %ecx
4206b6:	85 f6                	test   %esi,%esi
4206b8:	75 08                	jne    0x4206c2
4206ba:	50                   	push   %eax
4206bb:	e8 50 46 ff ff       	call   0x414d10
4206c0:	eb 1a                	jmp    0x4206dc
4206c2:	57                   	push   %edi
4206c3:	56                   	push   %esi
4206c4:	e8 62 fc ff ff       	call   0x42032b
4206c9:	59                   	pop    %ecx
4206ca:	59                   	pop    %ecx
4206cb:	84 c0                	test   %al,%al
4206cd:	75 12                	jne    0x4206e1
4206cf:	56                   	push   %esi
4206d0:	e8 d3 fe ff ff       	call   0x4205a8
4206d5:	56                   	push   %esi
4206d6:	e8 35 46 ff ff       	call   0x414d10
4206db:	59                   	pop    %ecx
4206dc:	33 c0                	xor    %eax,%eax
4206de:	40                   	inc    %eax
4206df:	eb 25                	jmp    0x420706
4206e1:	6a 00                	push   $0x0
4206e3:	c7 86 b0 00 00 00 01 	movl   $0x1,0xb0(%esi)
4206ea:	00 00 00
4206ed:	e8 1e 46 ff ff       	call   0x414d10
4206f2:	59                   	pop    %ecx
4206f3:	ff b7 9c 00 00 00    	push   0x9c(%edi)
4206f9:	e8 fc 02 00 00       	call   0x4209fa
4206fe:	89 b7 9c 00 00 00    	mov    %esi,0x9c(%edi)
420704:	33 c0                	xor    %eax,%eax
420706:	59                   	pop    %ecx
420707:	5f                   	pop    %edi
420708:	5e                   	pop    %esi
420709:	5d                   	pop    %ebp
42070a:	c3                   	ret
42070b:	8b ff                	mov    %edi,%edi
42070d:	55                   	push   %ebp
42070e:	8b ec                	mov    %esp,%ebp
420710:	51                   	push   %ecx
420711:	8b 4d 08             	mov    0x8(%ebp),%ecx
420714:	33 d2                	xor    %edx,%edx
420716:	53                   	push   %ebx
420717:	56                   	push   %esi
420718:	57                   	push   %edi
420719:	8b c1                	mov    %ecx,%eax
42071b:	66 39 11             	cmp    %dx,(%ecx)
42071e:	74 30                	je     0x420750
420720:	8b 7d 0c             	mov    0xc(%ebp),%edi
420723:	0f b7 1f             	movzwl (%edi),%ebx
420726:	8b f7                	mov    %edi,%esi
420728:	66 85 db             	test   %bx,%bx
42072b:	74 1b                	je     0x420748
42072d:	0f b7 10             	movzwl (%eax),%edx
420730:	89 55 fc             	mov    %edx,-0x4(%ebp)
420733:	8b d3                	mov    %ebx,%edx
420735:	66 39 55 fc          	cmp    %dx,-0x4(%ebp)
420739:	74 15                	je     0x420750
42073b:	83 c6 02             	add    $0x2,%esi
42073e:	0f b7 16             	movzwl (%esi),%edx
420741:	66 85 d2             	test   %dx,%dx
420744:	75 ef                	jne    0x420735
420746:	33 d2                	xor    %edx,%edx
420748:	83 c0 02             	add    $0x2,%eax
42074b:	66 39 10             	cmp    %dx,(%eax)
42074e:	75 d6                	jne    0x420726
420750:	5f                   	pop    %edi