4203f7:	e8 cc 00 00 00       	call   0x4204c8
4203fc:	eb 1a                	jmp    0x420418
4203fe:	8b c6                	mov    %esi,%eax
420400:	8b 10                	mov    (%eax),%edx
420402:	ff 12                	call   *(%edx)
420404:	50                   	push   %eax
420405:	8b c6                	mov    %esi,%eax
420407:	e8 d8 55 ff ff       	call   0x4159e4
42040c:	59                   	pop    %ecx
42040d:	2b c8                	sub    %eax,%ecx
42040f:	8b d6                	mov    %esi,%edx
420411:	8b c3                	mov    %ebx,%eax
420413:	e8 80 01 00 00       	call   0x420598
420418:	8b c3                	mov    %ebx,%eax
42041a:	8b 10                	mov    (%eax),%edx
42041c:	ff 52 24             	call   *0x24(%edx)
42041f:	85 c0                	test   %eax,%eax
420421:	0f 95 c0             	setne  %al
420424:	88 43 22             	mov    %al,0x22(%ebx)
420427:	8b d3                	mov    %ebx,%edx
420429:	8b c3                	mov    %ebx,%eax
42042b:	8b 08                	mov    (%eax),%ecx
42042d:	ff 51 10             	call   *0x10(%ecx)
420430:	5e                   	pop    %esi
420431:	5b                   	pop    %ebx
420432:	c3                   	ret
420433:	90                   	nop
420434:	53                   	push   %ebx
420435:	56                   	push   %esi
420436:	8b d8                	mov    %eax,%ebx
420438:	8b 43 28             	mov    0x28(%ebx),%eax
42043b:	e8 c8 0c 00 00       	call   0x421108
420440:	b2 01                	mov    $0x1,%dl
420442:	a1 cc b9 41 00       	mov    0x41b9cc,%eax
420447:	e8 f0 2d fe ff       	call   0x40323c
42044c:	8b f0                	mov    %eax,%esi
42044e:	89 73 28             	mov    %esi,0x28(%ebx)
420451:	8b c6                	mov    %esi,%eax
420453:	e8 ac 0c 00 00       	call   0x421104
420458:	5e                   	pop    %esi
420459:	5b                   	pop    %ebx
42045a:	c3                   	ret
42045b:	90                   	nop
42045c:	53                   	push   %ebx
42045d:	56                   	push   %esi
42045e:	57                   	push   %edi
42045f:	51                   	push   %ecx
420460:	8b f2                	mov    %edx,%esi
420462:	8b d8                	mov    %eax,%ebx
420464:	8b d4                	mov    %esp,%edx
420466:	b9 04 00 00 00       	mov    $0x4,%ecx
42046b:	8b c6                	mov    %esi,%eax
42046d:	8b 38                	mov    (%eax),%edi
42046f:	ff 57 0c             	call   *0xc(%edi)
420472:	83 3c 24 04          	cmpl   $0x4,(%esp)
420476:	7f 0b                	jg     0x420483
420478:	33 d2                	xor    %edx,%edx
42047a:	8b c3                	mov    %ebx,%eax
42047c:	8b 08                	mov    (%eax),%ecx
42047e:	ff 51 08             	call   *0x8(%ecx)
420481:	eb 27                	jmp    0x4204aa
420483:	8b d6                	mov    %esi,%edx
420485:	8b c3                	mov    %ebx,%eax
420487:	e8 d0 04 00 00       	call   0x42095c
42048c:	84 c0                	test   %al,%al
42048e:	74 0b                	je     0x42049b
420490:	8b d6                	mov    %esi,%edx
420492:	8b c3                	mov    %ebx,%eax
420494:	e8 2f 00 00 00       	call   0x4204c8
420499:	eb 0f                	jmp    0x4204aa
42049b:	8b 0c 24             	mov    (%esp),%ecx
42049e:	83 e9 04             	sub    $0x4,%ecx
4204a1:	8b d6                	mov    %esi,%edx
4204a3:	8b c3                	mov    %ebx,%eax
4204a5:	e8 ee 00 00 00       	call   0x420598
4204aa:	8b c3                	mov    %ebx,%eax
4204ac:	8b 10                	mov    (%eax),%edx
4204ae:	ff 52 24             	call   *0x24(%edx)
4204b1:	85 c0                	test   %eax,%eax
4204b3:	0f 95 c0             	setne  %al
4204b6:	88 43 22             	mov    %al,0x22(%ebx)
4204b9:	8b d3                	mov    %ebx,%edx
4204bb:	8b c3                	mov    %ebx,%eax
4204bd:	8b 08                	mov    (%eax),%ecx
4204bf:	ff 51 10             	call   *0x10(%ecx)
4204c2:	5a                   	pop    %edx
4204c3:	5f                   	pop    %edi
4204c4:	5e                   	pop    %esi
4204c5:	5b                   	pop    %ebx
4204c6:	c3                   	ret
4204c7:	90                   	nop
4204c8:	55                   	push   %ebp
4204c9:	8b ec                	mov    %esp,%ebp
4204cb:	83 c4 98             	add    $0xffffff98,%esp
4204ce:	53                   	push   %ebx
4204cf:	56                   	push   %esi
4204d0:	57                   	push   %edi
4204d1:	8b fa                	mov    %edx,%edi
4204d3:	8b f0                	mov    %eax,%esi
4204d5:	8b c6                	mov    %esi,%eax
4204d7:	e8 58 ff ff ff       	call   0x420434
4204dc:	8d 55 98             	lea    -0x68(%ebp),%edx
4204df:	b9 64 00 00 00       	mov    $0x64,%ecx
4204e4:	8b c7                	mov    %edi,%eax
4204e6:	e8 25 57 ff ff       	call   0x415c10
4204eb:	81 7d c0 20 45 4d 46 	cmpl   $0x464d4520,-0x40(%ebp)
4204f2:	74 05                	je     0x4204f9
4204f4:	e8 23 d8 ff ff       	call   0x41dd1c
4204f9:	8b 45 c8             	mov    -0x38(%ebp),%eax
4204fc:	e8 bb 21 fe ff       	call   0x4026bc
420501:	89 45 fc             	mov    %eax,-0x4(%ebp)
420504:	8b 5e 28             	mov    0x28(%esi),%ebx
420507:	33 c0                	xor    %eax,%eax
420509:	55                   	push   %ebp
42050a:	68 88 05 42 00       	push   $0x420588
42050f:	64 ff 30             	push   %fs:(%eax)
420512:	64 89 20             	mov    %esp,%fs:(%eax)
420515:	8b 55 fc             	mov    -0x4(%ebp),%edx
420518:	8d 45 98             	lea    -0x68(%ebp),%eax
42051b:	b9 64 00 00 00       	mov    $0x64,%ecx
420520:	e8 93 23 fe ff       	call   0x4028b8
420525:	8b 4d c8             	mov    -0x38(%ebp),%ecx
420528:	83 e9 64             	sub    $0x64,%ecx
42052b:	8b 55 fc             	mov    -0x4(%ebp),%edx
42052e:	83 c2 64             	add    $0x64,%edx
420531:	8b c7                	mov    %edi,%eax
420533:	e8 d8 56 ff ff       	call   0x415c10
420538:	8b 45 fc             	mov    -0x4(%ebp),%eax
42053b:	50                   	push   %eax
42053c:	8b 45 c8             	mov    -0x38(%ebp),%eax
42053f:	50                   	push   %eax
420540:	e8 83 5e fe ff       	call   0x4063c8
420545:	8b f8                	mov    %eax,%edi
420547:	89 7b 08             	mov    %edi,0x8(%ebx)
42054a:	85 ff                	test   %edi,%edi
42054c:	75 05                	jne    0x420553
42054e:	e8 c9 d7 ff ff       	call   0x41dd1c
420553:	66 c7 43 18 00 00    	movw   $0x0,0x18(%ebx)
420559:	8b 45 b8             	mov    -0x48(%ebp),%eax
42055c:	2b 45 b0             	sub    -0x50(%ebp),%eax
42055f:	89 43 0c             	mov    %eax,0xc(%ebx)
420562:	8b 45 bc             	mov    -0x44(%ebp),%eax
420565:	2b 45 b4             	sub    -0x4c(%ebp),%eax
420568:	89 43 10             	mov    %eax,0x10(%ebx)
42056b:	c6 46 2c 01          	movb   $0x1,0x2c(%esi)
42056f:	33 c0                	xor    %eax,%eax
420571:	5a                   	pop    %edx
420572:	59                   	pop    %ecx
420573:	59                   	pop    %ecx
420574:	64 89 10             	mov    %edx,%fs:(%eax)
420577:	68 8f 05 42 00       	push   $0x42058f
42057c:	8b 55 c8             	mov    -0x38(%ebp),%edx
42057f:	8b 45 fc             	mov    -0x4(%ebp),%eax
420582:	e8 55 21 fe ff       	call   0x4026dc
420587:	c3                   	ret
420588:	e9 33 34 fe ff       	jmp    0x4039c0
42058d:	eb ed                	jmp    0x42057c
42058f:	5f                   	pop    %edi
420590:	5e                   	pop    %esi
420591:	5b                   	pop    %ebx
420592:	8b e5                	mov    %ebp,%esp
420594:	5d                   	pop    %ebp
420595:	c3                   	ret
420596:	8b c0                	mov    %eax,%eax
420598:	55                   	push   %ebp
420599:	8b ec                	mov    %esp,%ebp
42059b:	81 c4 68 ff ff ff    	add    $0xffffff68,%esp
4205a1:	53                   	push   %ebx
4205a2:	56                   	push   %esi
4205a3:	57                   	push   %edi
4205a4:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4205a7:	89 55 fc             	mov    %edx,-0x4(%ebp)
4205aa:	8b f0                	mov    %eax,%esi
4205ac:	8b c6                	mov    %esi,%eax
4205ae:	e8 81 fe ff ff       	call   0x420434
4205b3:	8d 55 de             	lea    -0x22(%ebp),%edx
4205b6:	b9 16 00 00 00       	mov    $0x16,%ecx
4205bb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4205be:	8b 18                	mov    (%eax),%ebx
4205c0:	ff 53 0c             	call   *0xc(%ebx)
4205c3:	81 7d de d7 cd c6 9a 	cmpl   $0x9ac6cdd7,-0x22(%ebp)
4205ca:	75 0e                	jne    0x4205da
4205cc:	8d 45 de             	lea    -0x22(%ebp),%eax
4205cf:	e8 98 e5 ff ff       	call   0x41eb6c
4205d4:	66 3b 45 f2          	cmp    -0xe(%ebp),%ax
4205d8:	74 05                	je     0x4205df
4205da:	e8 3d d7 ff ff       	call   0x41dd1c
4205df:	83 6d f8 16          	subl   $0x16,-0x8(%ebp)
4205e3:	8b 45 f8             	mov    -0x8(%ebp),%eax
4205e6:	e8 d1 20 fe ff       	call   0x4026bc
4205eb:	89 45 f4             	mov    %eax,-0xc(%ebp)
4205ee:	8b 5e 28             	mov    0x28(%esi),%ebx
4205f1:	33 c0                	xor    %eax,%eax
4205f3:	55                   	push   %ebp
4205f4:	68 07 07 42 00       	push   $0x420707
4205f9:	64 ff 30             	push   %fs:(%eax)
4205fc:	64 89 20             	mov    %esp,%fs:(%eax)
4205ff:	8b 55 f4             	mov    -0xc(%ebp),%edx
420602:	8b 4d f8             	mov    -0x8(%ebp),%ecx
420605:	8b 45 fc             	mov    -0x4(%ebp),%eax
420608:	8b 38                	mov    (%eax),%edi
42060a:	ff 57 0c             	call   *0xc(%edi)
42060d:	8b 46 28             	mov    0x28(%esi),%eax
420610:	66 8b 55 ec          	mov    -0x14(%ebp),%dx
420614:	66 89 50 18          	mov    %dx,0x18(%eax)
420618:	66 83 7d ec 00       	cmpw   $0x0,-0x14(%ebp)
42061d:	75 06                	jne    0x420625
42061f:	66 c7 45 ec 60 00    	movw   $0x60,-0x14(%ebp)
420625:	0f b7 45 ec          	movzwl -0x14(%ebp),%eax
420629:	50                   	push   %eax
42062a:	68 ec 09 00 00       	push   $0x9ec
42062f:	0f bf 45 e8          	movswl -0x18(%ebp),%eax
420633:	0f bf 55 e4          	movswl -0x1c(%ebp),%edx
420637:	2b c2                	sub    %edx,%eax
420639:	50                   	push   %eax
42063a:	e8 29 5b fe ff       	call   0x406168
42063f:	89 43 0c             	mov    %eax,0xc(%ebx)
420642:	0f b7 45 ec          	movzwl -0x14(%ebp),%eax
420646:	50                   	push   %eax
420647:	68 ec 09 00 00       	push   $0x9ec
42064c:	0f bf 45 ea          	movswl -0x16(%ebp),%eax
420650:	0f bf 55 e6          	movswl -0x1a(%ebp),%edx
420654:	2b c2                	sub    %edx,%eax
420656:	50                   	push   %eax
420657:	e8 0c 5b fe ff       	call   0x406168
42065c:	89 43 10             	mov    %eax,0x10(%ebx)
42065f:	c7 45 ce 08 00 00 00 	movl   $0x8,-0x32(%ebp)
420666:	33 c0                	xor    %eax,%eax
420668:	89 45 d2             	mov    %eax,-0x2e(%ebp)
42066b:	33 c0                	xor    %eax,%eax
42066d:	89 45 d6             	mov    %eax,-0x2a(%ebp)
420670:	33 c0                	xor    %eax,%eax
420672:	89 45 da             	mov    %eax,-0x26(%ebp)
420675:	8d 45 ce             	lea    -0x32(%ebp),%eax
420678:	50                   	push   %eax
420679:	6a 00                	push   $0x0
42067b:	8b 45 f4             	mov    -0xc(%ebp),%eax
42067e:	50                   	push   %eax
42067f:	8b 45 f8             	mov    -0x8(%ebp),%eax
420682:	50                   	push   %eax
420683:	e8 70 5d fe ff       	call   0x4063f8
420688:	8b f8                	mov    %eax,%edi
42068a:	89 7b 08             	mov    %edi,0x8(%ebx)
42068d:	85 ff                	test   %edi,%edi
42068f:	75 05                	jne    0x420696
420691:	e8 86 d6 ff ff       	call   0x41dd1c
420696:	8d 85 6a ff ff ff    	lea    -0x96(%ebp),%eax
42069c:	50                   	push   %eax
42069d:	6a 64                	push   $0x64
42069f:	8b 43 08             	mov    0x8(%ebx),%eax
4206a2:	50                   	push   %eax
4206a3:	e8 28 5c fe ff       	call   0x4062d0
4206a8:	c7 45 ce 08 00 00 00 	movl   $0x8,-0x32(%ebp)
4206af:	8b 45 8a             	mov    -0x76(%ebp),%eax
4206b2:	89 45 d2             	mov    %eax,-0x2e(%ebp)
4206b5:	8b 45 8e             	mov    -0x72(%ebp),%eax
4206b8:	89 45 d6             	mov    %eax,-0x2a(%ebp)
4206bb:	33 c0                	xor    %eax,%eax
4206bd:	89 45 da             	mov    %eax,-0x26(%ebp)
4206c0:	8b 43 08             	mov    0x8(%ebx),%eax
4206c3:	50                   	push   %eax
4206c4:	e8 a7 5b fe ff       	call   0x406270
4206c9:	8d 45 ce             	lea    -0x32(%ebp),%eax
4206cc:	50                   	push   %eax
4206cd:	6a 00                	push   $0x0
4206cf:	8b 45 f4             	mov    -0xc(%ebp),%eax
4206d2:	50                   	push   %eax
4206d3:	8b 45 f8             	mov    -0x8(%ebp),%eax
4206d6:	50                   	push   %eax
4206d7:	e8 1c 5d fe ff       	call   0x4063f8
4206dc:	8b f8                	mov    %eax,%edi
4206de:	89 7b 08             	mov    %edi,0x8(%ebx)
4206e1:	85 ff                	test   %edi,%edi
4206e3:	75 05                	jne    0x4206ea
4206e5:	e8 32 d6 ff ff       	call   0x41dd1c
4206ea:	c6 46 2c 00          	movb   $0x0,0x2c(%esi)
4206ee:	33 c0                	xor    %eax,%eax
4206f0:	5a                   	pop    %edx
4206f1:	59                   	pop    %ecx
4206f2:	59                   	pop    %ecx
4206f3:	64 89 10             	mov    %edx,%fs:(%eax)
4206f6:	68 0e 07 42 00       	push   $0x42070e
4206fb:	8b 55 f8             	mov    -0x8(%ebp),%edx
4206fe:	8b 45 f4             	mov    -0xc(%ebp),%eax
420701:	e8 d6 1f fe ff       	call   0x4026dc
420706:	c3                   	ret
420707:	e9 b4 32 fe ff       	jmp    0x4039c0
42070c:	eb ed                	jmp    0x4206fb
42070e:	5f                   	pop    %edi
42070f:	5e                   	pop    %esi
420710:	5b                   	pop    %ebx
420711:	8b e5                	mov    %ebp,%esp
420713:	5d                   	pop    %ebp
420714:	c3                   	ret
420715:	8d 40 00             	lea    0x0(%eax),%eax
420718:	55                   	push   %ebp
420719:	8b ec                	mov    %esp,%ebp
42071b:	83 c4 f0             	add    $0xfffffff0,%esp
42071e:	53                   	push   %ebx
42071f:	33 c9                	xor    %ecx,%ecx
420721:	89 4d f4             	mov    %ecx,-0xc(%ebp)
420724:	89 4d f0             	mov    %ecx,-0x10(%ebp)
420727:	8b da                	mov    %edx,%ebx
420729:	89 45 fc             	mov    %eax,-0x4(%ebp)
42072c:	33 c0                	xor    %eax,%eax
42072e:	55                   	push   %ebp
42072f:	68 bf 07 42 00       	push   $0x4207bf
420734:	64 ff 30             	push   %fs:(%eax)
420737:	64 89 20             	mov    %esp,%fs:(%eax)
42073a:	8b 45 fc             	mov    -0x4(%ebp),%eax
42073d:	8a 40 2c             	mov    0x2c(%eax),%al
420740:	88 45 fb             	mov    %al,-0x5(%ebp)
420743:	33 c0                	xor    %eax,%eax
420745:	55                   	push   %ebp
420746:	68 9d 07 42 00       	push   $0x42079d
42074b:	64 ff 30             	push   %fs:(%eax)
42074e:	64 89 20             	mov    %esp,%fs:(%eax)
420751:	8d 55 f0             	lea    -0x10(%ebp),%edx
420754:	8b c3                	mov    %ebx,%eax
420756:	e8 d5 7d fe ff       	call   0x408530
42075b:	8b 45 f0             	mov    -0x10(%ebp),%eax
42075e:	8d 55 f4             	lea    -0xc(%ebp),%edx
420761:	e8 0e bd fe ff       	call   0x40c474
420766:	8b 45 f4             	mov    -0xc(%ebp),%eax
420769:	ba d4 07 42 00       	mov    $0x4207d4,%edx
42076e:	e8 55 3c fe ff       	call   0x4043c8
420773:	75 07                	jne    0x42077c
420775:	8b 45 fc             	mov    -0x4(%ebp),%eax
420778:	c6 40 2c 00          	movb   $0x0,0x2c(%eax)
42077c:	8b d3                	mov    %ebx,%edx
42077e:	8b 45 fc             	mov    -0x4(%ebp),%eax
420781:	e8 ea ea ff ff       	call   0x41f270
420786:	33 c0                	xor    %eax,%eax
420788:	5a                   	pop    %edx
420789:	59                   	pop    %ecx
42078a:	59                   	pop    %ecx
42078b:	64 89 10             	mov    %edx,%fs:(%eax)
42078e:	68 a4 07 42 00       	push   $0x4207a4
420793:	8b 45 fc             	mov    -0x4(%ebp),%eax
420796:	8a 55 fb             	mov    -0x5(%ebp),%dl
420799:	88 50 2c             	mov    %dl,0x2c(%eax)
42079c:	c3                   	ret
42079d:	e9 1e 32 fe ff       	jmp    0x4039c0
4207a2:	eb ef                	jmp    0x420793
4207a4:	33 c0                	xor    %eax,%eax
4207a6:	5a                   	pop    %edx
4207a7:	59                   	pop    %ecx
4207a8:	59                   	pop    %ecx
4207a9:	64 89 10             	mov    %edx,%fs:(%eax)
4207ac:	68 c6 07 42 00       	push   $0x4207c6