408400:	89 37                	mov    %esi,(%edi)
408402:	eb f0                	jmp    0x4083f4
408404:	33 f6                	xor    %esi,%esi
408406:	eb c2                	jmp    0x4083ca
408408:	57                   	push   %edi
408409:	8b f9                	mov    %ecx,%edi
40840b:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
40840f:	75 23                	jne    0x408434
408411:	8b 3f                	mov    (%edi),%edi
408413:	85 ff                	test   %edi,%edi
408415:	75 02                	jne    0x408419
408417:	5f                   	pop    %edi
408418:	c3                   	ret
408419:	56                   	push   %esi
40841a:	8b 77 24             	mov    0x24(%edi),%esi
40841d:	8b cf                	mov    %edi,%ecx
40841f:	e8 40 d6 ff ff       	call   0x405a64
408424:	57                   	push   %edi
408425:	e8 42 8c 01 00       	call   0x42106c
40842a:	8b fe                	mov    %esi,%edi
40842c:	59                   	pop    %ecx
40842d:	85 f6                	test   %esi,%esi
40842f:	75 e9                	jne    0x40841a
408431:	5e                   	pop    %esi
408432:	5f                   	pop    %edi
408433:	c3                   	ret
408434:	ff 77 08             	push   0x8(%edi)
408437:	e8 30 8c 01 00       	call   0x42106c
40843c:	59                   	pop    %ecx
40843d:	eb d2                	jmp    0x408411
40843f:	55                   	push   %ebp
408440:	8b ec                	mov    %esp,%ebp
408442:	51                   	push   %ecx
408443:	51                   	push   %ecx
408444:	56                   	push   %esi
408445:	8b f1                	mov    %ecx,%esi
408447:	57                   	push   %edi
408448:	80 7e 09 00          	cmpb   $0x0,0x9(%esi)
40844c:	0f 85 78 6d 03 00    	jne    0x43f1ca
408452:	80 7e 08 00          	cmpb   $0x0,0x8(%esi)
408456:	75 7e                	jne    0x4084d6
408458:	53                   	push   %ebx
408459:	8b 5e 04             	mov    0x4(%esi),%ebx
40845c:	8b 43 08             	mov    0x8(%ebx),%eax
40845f:	89 45 f8             	mov    %eax,-0x8(%ebp)
408462:	85 db                	test   %ebx,%ebx
408464:	74 54                	je     0x4084ba
408466:	8b 3b                	mov    (%ebx),%edi
408468:	85 ff                	test   %edi,%edi
40846a:	74 44                	je     0x4084b0
40846c:	83 7f 18 00          	cmpl   $0x0,0x18(%edi)
408470:	74 0a                	je     0x40847c
408472:	ff 77 18             	push   0x18(%edi)
408475:	8b cb                	mov    %ebx,%ecx
408477:	e8 a4 02 00 00       	call   0x408720
40847c:	83 7f 1c 00          	cmpl   $0x0,0x1c(%edi)
408480:	75 48                	jne    0x4084ca
408482:	80 7f 10 00          	cmpb   $0x0,0x10(%edi)
408486:	75 1a                	jne    0x4084a2
408488:	8b 47 14             	mov    0x14(%edi),%eax
40848b:	89 45 fc             	mov    %eax,-0x4(%ebp)
40848e:	85 c0                	test   %eax,%eax
408490:	74 10                	je     0x4084a2
408492:	8b c8                	mov    %eax,%ecx
408494:	e8 57 19 00 00       	call   0x409df0
408499:	ff 75 fc             	push   -0x4(%ebp)
40849c:	e8 cb 8b 01 00       	call   0x42106c
4084a1:	59                   	pop    %ecx
4084a2:	8b cf                	mov    %edi,%ecx
4084a4:	e8 bb d5 ff ff       	call   0x405a64
4084a9:	57                   	push   %edi
4084aa:	e8 bd 8b 01 00       	call   0x42106c
4084af:	59                   	pop    %ecx
4084b0:	53                   	push   %ebx
4084b1:	e8 b6 8b 01 00       	call   0x42106c
4084b6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4084b9:	59                   	pop    %ecx
4084ba:	89 46 04             	mov    %eax,0x4(%esi)
4084bd:	c6 46 09 00          	movb   $0x0,0x9(%esi)
4084c1:	5b                   	pop    %ebx
4084c2:	ff 0e                	decl   (%esi)
4084c4:	5f                   	pop    %edi
4084c5:	5e                   	pop    %esi
4084c6:	8b e5                	mov    %ebp,%esp
4084c8:	5d                   	pop    %ebp
4084c9:	c3                   	ret
4084ca:	ff 77 1c             	push   0x1c(%edi)
4084cd:	8b cb                	mov    %ebx,%ecx
4084cf:	e8 4c 02 00 00       	call   0x408720
4084d4:	eb ac                	jmp    0x408482
4084d6:	c6 46 09 01          	movb   $0x1,0x9(%esi)
4084da:	eb e6                	jmp    0x4084c2
4084dc:	55                   	push   %ebp
4084dd:	8b ec                	mov    %esp,%ebp
4084df:	56                   	push   %esi
4084e0:	57                   	push   %edi
4084e1:	8b f9                	mov    %ecx,%edi
4084e3:	80 7f 09 00          	cmpb   $0x0,0x9(%edi)
4084e7:	0f 85 f9 6c 03 00    	jne    0x43f1e6
4084ed:	6a 0c                	push   $0xc
4084ef:	e8 02 8b 01 00       	call   0x420ff6
4084f4:	8b f0                	mov    %eax,%esi
4084f6:	59                   	pop    %ecx
4084f7:	85 f6                	test   %esi,%esi
4084f9:	74 31                	je     0x40852c
4084fb:	8b 45 08             	mov    0x8(%ebp),%eax
4084fe:	83 26 00             	andl   $0x0,(%esi)
408501:	8b 48 04             	mov    0x4(%eax),%ecx
408504:	89 4e 04             	mov    %ecx,0x4(%esi)
408507:	85 c9                	test   %ecx,%ecx
408509:	78 1b                	js     0x408526
40850b:	ff 30                	push   (%eax)
40850d:	8b ce                	mov    %esi,%ecx
40850f:	56                   	push   %esi
408510:	e8 7f 02 00 00       	call   0x408794
408515:	8b 47 04             	mov    0x4(%edi),%eax
408518:	89 46 08             	mov    %eax,0x8(%esi)
40851b:	89 77 04             	mov    %esi,0x4(%edi)
40851e:	ff 07                	incl   (%edi)
408520:	5f                   	pop    %edi
408521:	5e                   	pop    %esi
408522:	5d                   	pop    %ebp
408523:	c2 04 00             	ret    $0x4
408526:	83 66 04 00          	andl   $0x0,0x4(%esi)
40852a:	eb df                	jmp    0x40850b
40852c:	33 f6                	xor    %esi,%esi
40852e:	eb e5                	jmp    0x408515
408530:	8b 0d 84 72 4c 00    	mov    0x4c7284,%ecx
408536:	85 c9                	test   %ecx,%ecx
408538:	75 21                	jne    0x40855b
40853a:	ff 35 78 72 4c 00    	push   0x4c7278
408540:	b9 78 72 4c 00       	mov    $0x4c7278,%ecx
408545:	e8 d6 01 00 00       	call   0x408720
40854a:	ff 35 70 72 4c 00    	push   0x4c7270
408550:	b9 70 72 4c 00       	mov    $0x4c7270,%ecx
408555:	e8 c6 01 00 00       	call   0x408720
40855a:	c3                   	ret
40855b:	56                   	push   %esi
40855c:	e9 9e 6c 03 00       	jmp    0x43f1ff
408561:	55                   	push   %ebp
408562:	8b ec                	mov    %esp,%ebp
408564:	83 ec 0c             	sub    $0xc,%esp
408567:	8b 45 08             	mov    0x8(%ebp),%eax
40856a:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
40856e:	89 45 f8             	mov    %eax,-0x8(%ebp)
408571:	85 c0                	test   %eax,%eax
408573:	78 1f                	js     0x408594
408575:	8d 45 f4             	lea    -0xc(%ebp),%eax
408578:	b9 80 72 4c 00       	mov    $0x4c7280,%ecx
40857d:	50                   	push   %eax
40857e:	e8 59 ff ff ff       	call   0x4084dc
408583:	ff 75 f4             	push   -0xc(%ebp)
408586:	8d 4d f4             	lea    -0xc(%ebp),%ecx
408589:	e8 92 01 00 00       	call   0x408720
40858e:	8b e5                	mov    %ebp,%esp
408590:	5d                   	pop    %ebp
408591:	c2 04 00             	ret    $0x4
408594:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
408598:	eb db                	jmp    0x408575
40859a:	55                   	push   %ebp
40859b:	8b ec                	mov    %esp,%ebp
40859d:	8b 45 10             	mov    0x10(%ebp),%eax
4085a0:	33 c9                	xor    %ecx,%ecx
4085a2:	2b c1                	sub    %ecx,%eax
4085a4:	74 27                	je     0x4085cd
4085a6:	48                   	dec    %eax
4085a7:	0f 85 67 6c 03 00    	jne    0x43f214
4085ad:	ff 75 0c             	push   0xc(%ebp)
4085b0:	ff 75 08             	push   0x8(%ebp)
4085b3:	39 0d 80 72 4c 00    	cmp    %ecx,0x4c7280
4085b9:	75 2b                	jne    0x4085e6
4085bb:	b9 70 72 4c 00       	mov    $0x4c7270,%ecx
4085c0:	e8 ed 05 00 00       	call   0x408bb2
4085c5:	8b c8                	mov    %eax,%ecx
4085c7:	8b c1                	mov    %ecx,%eax
4085c9:	5d                   	pop    %ebp
4085ca:	c2 0c 00             	ret    $0xc
4085cd:	39 0d 80 72 4c 00    	cmp    %ecx,0x4c7280
4085d3:	0f 85 55 6c 03 00    	jne    0x43f22e
4085d9:	b9 70 72 4c 00       	mov    $0x4c7270,%ecx
4085de:	ff 75 0c             	push   0xc(%ebp)
4085e1:	ff 75 08             	push   0x8(%ebp)
4085e4:	eb da                	jmp    0x4085c0
4085e6:	b9 80 72 4c 00       	mov    $0x4c7280,%ecx
4085eb:	e8 1d e1 04 00       	call   0x45670d
4085f0:	8b c8                	mov    %eax,%ecx
4085f2:	eb cc                	jmp    0x4085c0
4085f4:	33 c0                	xor    %eax,%eax
4085f6:	a3 70 72 4c 00       	mov    %eax,0x4c7270
4085fb:	a3 74 72 4c 00       	mov    %eax,0x4c7274
408600:	a3 78 72 4c 00       	mov    %eax,0x4c7278
408605:	a3 7c 72 4c 00       	mov    %eax,0x4c727c
40860a:	a3 80 72 4c 00       	mov    %eax,0x4c7280
40860f:	a3 84 72 4c 00       	mov    %eax,0x4c7284
408614:	66 a3 88 72 4c 00    	mov    %ax,0x4c7288
40861a:	b8 70 72 4c 00       	mov    $0x4c7270,%eax
40861f:	c3                   	ret
408620:	55                   	push   %ebp
408621:	8b ec                	mov    %esp,%ebp
408623:	8b 45 14             	mov    0x14(%ebp),%eax
408626:	83 e8 00             	sub    $0x0,%eax
408629:	74 2b                	je     0x408656
40862b:	48                   	dec    %eax
40862c:	75 41                	jne    0x40866f
40862e:	39 05 80 72 4c 00    	cmp    %eax,0x4c7280
408634:	74 3c                	je     0x408672
408636:	38 05 89 72 4c 00    	cmp    %al,0x4c7289
40863c:	75 4c                	jne    0x40868a
40863e:	8b 0d 84 72 4c 00    	mov    0x4c7284,%ecx
408644:	ff 75 10             	push   0x10(%ebp)
408647:	ff 75 0c             	push   0xc(%ebp)
40864a:	ff 75 08             	push   0x8(%ebp)
40864d:	e8 c1 04 00 00       	call   0x408b13
408652:	5d                   	pop    %ebp
408653:	c2 10 00             	ret    $0x10
408656:	83 3d 80 72 4c 00 00 	cmpl   $0x0,0x4c7280
40865d:	ff 75 10             	push   0x10(%ebp)
408660:	ff 75 0c             	push   0xc(%ebp)
408663:	ff 75 08             	push   0x8(%ebp)
408666:	75 2c                	jne    0x408694
408668:	b9 70 72 4c 00       	mov    $0x4c7270,%ecx
40866d:	eb de                	jmp    0x40864d
40866f:	48                   	dec    %eax
408670:	75 0b                	jne    0x40867d
408672:	ff 75 10             	push   0x10(%ebp)
408675:	ff 75 0c             	push   0xc(%ebp)
408678:	ff 75 08             	push   0x8(%ebp)
40867b:	eb eb                	jmp    0x408668
40867d:	83 e8 0e             	sub    $0xe,%eax
408680:	0f 84 ce 6b 03 00    	je     0x43f254
408686:	33 c0                	xor    %eax,%eax
408688:	eb c8                	jmp    0x408652
40868a:	a1 84 72 4c 00       	mov    0x4c7284,%eax
40868f:	8b 48 08             	mov    0x8(%eax),%ecx
408692:	eb b0                	jmp    0x408644
408694:	b9 80 72 4c 00       	mov    $0x4c7280,%ecx
408699:	e8 6f e0 04 00       	call   0x45670d
40869e:	8b c8                	mov    %eax,%ecx
4086a0:	eb ab                	jmp    0x40864d
4086a2:	55                   	push   %ebp
4086a3:	8b ec                	mov    %esp,%ebp
4086a5:	8b 45 10             	mov    0x10(%ebp),%eax
4086a8:	53                   	push   %ebx
4086a9:	33 db                	xor    %ebx,%ebx
4086ab:	2b c3                	sub    %ebx,%eax
4086ad:	0f 84 df 6b 03 00    	je     0x43f292
4086b3:	48                   	dec    %eax
4086b4:	0f 85 b3 6b 03 00    	jne    0x43f26d
4086ba:	39 1d 80 72 4c 00    	cmp    %ebx,0x4c7280
4086c0:	74 54                	je     0x408716
4086c2:	56                   	push   %esi
4086c3:	38 1d 89 72 4c 00    	cmp    %bl,0x4c7289
4086c9:	75 39                	jne    0x408704
4086cb:	8b 35 84 72 4c 00    	mov    0x4c7284,%esi
4086d1:	56                   	push   %esi
4086d2:	ff 75 08             	push   0x8(%ebp)
4086d5:	e8 c6 01 00 00       	call   0x4088a0
4086da:	84 c0                	test   %al,%al
4086dc:	74 30                	je     0x40870e
4086de:	8b 16                	mov    (%esi),%edx
4086e0:	5e                   	pop    %esi
4086e1:	85 d2                	test   %edx,%edx
4086e3:	74 2d                	je     0x408712
4086e5:	8b 45 0c             	mov    0xc(%ebp),%eax
4086e8:	8b 4a 10             	mov    0x10(%edx),%ecx
4086eb:	81 e1 00 ff 00 00    	and    $0xff00,%ecx
4086f1:	89 08                	mov    %ecx,(%eax)
4086f3:	8b 42 14             	mov    0x14(%edx),%eax
4086f6:	85 c0                	test   %eax,%eax
4086f8:	74 03                	je     0x4086fd
4086fa:	33 db                	xor    %ebx,%ebx
4086fc:	43                   	inc    %ebx
4086fd:	8a c3                	mov    %bl,%al
4086ff:	5b                   	pop    %ebx
408700:	5d                   	pop    %ebp
408701:	c2 0c 00             	ret    $0xc
408704:	a1 84 72 4c 00       	mov    0x4c7284,%eax
408709:	8b 70 08             	mov    0x8(%eax),%esi
40870c:	eb c3                	jmp    0x4086d1
40870e:	8b d3                	mov    %ebx,%edx
408710:	eb ce                	jmp    0x4086e0
408712:	8b c3                	mov    %ebx,%eax
408714:	eb e0                	jmp    0x4086f6
408716:	b9 70 72 4c 00       	mov    $0x4c7270,%ecx
40871b:	e9 62 6b 03 00       	jmp    0x43f282
408720:	55                   	push   %ebp
408721:	8b ec                	mov    %esp,%ebp
408723:	56                   	push   %esi
408724:	8b 75 08             	mov    0x8(%ebp),%esi
408727:	57                   	push   %edi
408728:	8b f9                	mov    %ecx,%edi
40872a:	85 f6                	test   %esi,%esi
40872c:	74 54                	je     0x408782
40872e:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
408732:	74 08                	je     0x40873c
408734:	ff 76 18             	push   0x18(%esi)
408737:	e8 e4 ff ff ff       	call   0x408720
40873c:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
408740:	75 46                	jne    0x408788
408742:	80 7e 10 00          	cmpb   $0x0,0x10(%esi)
408746:	75 15                	jne    0x40875d
408748:	8b 7e 14             	mov    0x14(%esi),%edi
40874b:	85 ff                	test   %edi,%edi
40874d:	74 0e                	je     0x40875d
40874f:	8b cf                	mov    %edi,%ecx
408751:	e8 9a 16 00 00       	call   0x409df0
408756:	57                   	push   %edi
408757:	e8 10 89 01 00       	call   0x42106c
40875c:	59                   	pop    %ecx
40875d:	8b 46 0c             	mov    0xc(%esi),%eax
408760:	ff 08                	decl   (%eax)
408762:	8b 46 0c             	mov    0xc(%esi),%eax
408765:	83 38 00             	cmpl   $0x0,(%eax)
408768:	75 11                	jne    0x40877b
40876a:	ff 36                	push   (%esi)
40876c:	e8 fb 88 01 00       	call   0x42106c
408771:	ff 76 0c             	push   0xc(%esi)
408774:	e8 f3 88 01 00       	call   0x42106c
408779:	59                   	pop    %ecx
40877a:	59                   	pop    %ecx
40877b:	56                   	push   %esi
40877c:	e8 eb 88 01 00       	call   0x42106c
408781:	59                   	pop    %ecx
408782:	5f                   	pop    %edi
408783:	5e                   	pop    %esi
408784:	5d                   	pop    %ebp
408785:	c2 04 00             	ret    $0x4
408788:	ff 76 1c             	push   0x1c(%esi)
40878b:	8b cf                	mov    %edi,%ecx
40878d:	e8 8e ff ff ff       	call   0x408720
408792:	eb ae                	jmp    0x408742
408794:	55                   	push   %ebp
408795:	8b ec                	mov    %esp,%ebp
408797:	51                   	push   %ecx
408798:	53                   	push   %ebx
408799:	8b 5d 0c             	mov    0xc(%ebp),%ebx
40879c:	56                   	push   %esi
40879d:	8b 75 08             	mov    0x8(%ebp),%esi
4087a0:	57                   	push   %edi
4087a1:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4087a4:	85 db                	test   %ebx,%ebx
4087a6:	0f 85 16 6b 03 00    	jne    0x43f2c2
4087ac:	21 1e                	and    %ebx,(%esi)
4087ae:	5f                   	pop    %edi
4087af:	5e                   	pop    %esi
4087b0:	5b                   	pop    %ebx
4087b1:	8b e5                	mov    %ebp,%esp
4087b3:	5d                   	pop    %ebp
4087b4:	c2 08 00             	ret    $0x8
4087b7:	cc                   	int3