40256f:	cc                   	int3
402570:	83 ec 30             	sub    $0x30,%esp
402573:	6a 30                	push   $0x30
402575:	8d 44 24 04          	lea    0x4(%esp),%eax
402579:	6a 00                	push   $0x0
40257b:	50                   	push   %eax
40257c:	e8 ef e5 02 00       	call   0x430b70
402581:	8b 4c 24 40          	mov    0x40(%esp),%ecx
402585:	8d 54 24 0c          	lea    0xc(%esp),%edx
402589:	52                   	push   %edx
40258a:	68 10 22 40 00       	push   $0x402210
40258f:	c7 44 24 34 06 00 00 	movl   $0x6,0x34(%esp)
402596:	00
402597:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
40259b:	e8 20 f6 ff ff       	call   0x401bc0
4025a0:	83 c4 14             	add    $0x14,%esp
4025a3:	85 c0                	test   %eax,%eax
4025a5:	75 04                	jne    0x4025ab
4025a7:	8b 44 24 10          	mov    0x10(%esp),%eax
4025ab:	83 c4 30             	add    $0x30,%esp
4025ae:	c3                   	ret
4025af:	cc                   	int3
4025b0:	83 ec 30             	sub    $0x30,%esp
4025b3:	6a 30                	push   $0x30
4025b5:	8d 44 24 04          	lea    0x4(%esp),%eax
4025b9:	6a 00                	push   $0x0
4025bb:	50                   	push   %eax
4025bc:	e8 af e5 02 00       	call   0x430b70
4025c1:	8b 4c 24 44          	mov    0x44(%esp),%ecx
4025c5:	8b 54 24 40          	mov    0x40(%esp),%edx
4025c9:	8d 44 24 0c          	lea    0xc(%esp),%eax
4025cd:	50                   	push   %eax
4025ce:	68 10 22 40 00       	push   $0x402210
4025d3:	c7 44 24 34 07 00 00 	movl   $0x7,0x34(%esp)
4025da:	00
4025db:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4025df:	89 54 24 30          	mov    %edx,0x30(%esp)
4025e3:	e8 d8 f5 ff ff       	call   0x401bc0
4025e8:	83 c4 14             	add    $0x14,%esp
4025eb:	85 c0                	test   %eax,%eax
4025ed:	75 04                	jne    0x4025f3
4025ef:	8b 44 24 10          	mov    0x10(%esp),%eax
4025f3:	83 c4 30             	add    $0x30,%esp
4025f6:	c3                   	ret
4025f7:	cc                   	int3
4025f8:	cc                   	int3
4025f9:	cc                   	int3
4025fa:	cc                   	int3
4025fb:	cc                   	int3
4025fc:	cc                   	int3
4025fd:	cc                   	int3
4025fe:	cc                   	int3
4025ff:	cc                   	int3
402600:	83 ec 30             	sub    $0x30,%esp
402603:	6a 30                	push   $0x30
402605:	8d 44 24 04          	lea    0x4(%esp),%eax
402609:	6a 00                	push   $0x0
40260b:	50                   	push   %eax
40260c:	e8 5f e5 02 00       	call   0x430b70
402611:	8b 54 24 50          	mov    0x50(%esp),%edx
402615:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
402619:	8b 44 24 40          	mov    0x40(%esp),%eax
40261d:	89 54 24 38          	mov    %edx,0x38(%esp)
402621:	8d 54 24 0c          	lea    0xc(%esp),%edx
402625:	89 4c 24 24          	mov    %ecx,0x24(%esp)
402629:	8b 4c 24 44          	mov    0x44(%esp),%ecx
40262d:	52                   	push   %edx
40262e:	68 10 22 40 00       	push   $0x402210
402633:	c7 44 24 34 08 00 00 	movl   $0x8,0x34(%esp)
40263a:	00
40263b:	89 44 24 38          	mov    %eax,0x38(%esp)
40263f:	89 4c 24 3c          	mov    %ecx,0x3c(%esp)
402643:	e8 78 f5 ff ff       	call   0x401bc0
402648:	83 c4 14             	add    $0x14,%esp
40264b:	85 c0                	test   %eax,%eax
40264d:	75 04                	jne    0x402653
40264f:	8b 44 24 10          	mov    0x10(%esp),%eax
402653:	83 c4 30             	add    $0x30,%esp
402656:	c3                   	ret
402657:	cc                   	int3
402658:	cc                   	int3
402659:	cc                   	int3
40265a:	cc                   	int3
40265b:	cc                   	int3
40265c:	cc                   	int3
40265d:	cc                   	int3
40265e:	cc                   	int3
40265f:	cc                   	int3
402660:	51                   	push   %ecx
402661:	56                   	push   %esi
402662:	57                   	push   %edi
402663:	8b 7c 24 10          	mov    0x10(%esp),%edi
402667:	8b c7                	mov    %edi,%eax
402669:	33 f6                	xor    %esi,%esi
40266b:	8d 50 02             	lea    0x2(%eax),%edx
40266e:	8b ff                	mov    %edi,%edi
402670:	66 8b 08             	mov    (%eax),%cx
402673:	83 c0 02             	add    $0x2,%eax
402676:	66 85 c9             	test   %cx,%cx
402679:	75 f5                	jne    0x402670
40267b:	2b c2                	sub    %edx,%eax
40267d:	d1 f8                	sar    $1,%eax
40267f:	74 32                	je     0x4026b3
402681:	0f b7 04 77          	movzwl (%edi,%esi,2),%eax
402685:	50                   	push   %eax
402686:	e8 97 e6 02 00       	call   0x430d22
40268b:	66 89 04 77          	mov    %ax,(%edi,%esi,2)
40268f:	8b c7                	mov    %edi,%eax
402691:	83 c4 04             	add    $0x4,%esp
402694:	46                   	inc    %esi
402695:	8d 50 02             	lea    0x2(%eax),%edx
402698:	eb 06                	jmp    0x4026a0
40269a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
4026a0:	66 8b 08             	mov    (%eax),%cx
4026a3:	83 c0 02             	add    $0x2,%eax
4026a6:	66 85 c9             	test   %cx,%cx
4026a9:	75 f5                	jne    0x4026a0
4026ab:	2b c2                	sub    %edx,%eax
4026ad:	d1 f8                	sar    $1,%eax
4026af:	3b f0                	cmp    %eax,%esi
4026b1:	72 ce                	jb     0x402681
4026b3:	5f                   	pop    %edi
4026b4:	5e                   	pop    %esi
4026b5:	59                   	pop    %ecx
4026b6:	c3                   	ret
4026b7:	cc                   	int3
4026b8:	cc                   	int3
4026b9:	cc                   	int3
4026ba:	cc                   	int3
4026bb:	cc                   	int3
4026bc:	cc                   	int3
4026bd:	cc                   	int3
4026be:	cc                   	int3
4026bf:	cc                   	int3
4026c0:	56                   	push   %esi
4026c1:	8b 74 24 08          	mov    0x8(%esp),%esi
4026c5:	6a 5c                	push   $0x5c
4026c7:	56                   	push   %esi
4026c8:	e8 68 e6 02 00       	call   0x430d35
4026cd:	83 c4 08             	add    $0x8,%esp
4026d0:	85 c0                	test   %eax,%eax
4026d2:	75 04                	jne    0x4026d8
4026d4:	8b c6                	mov    %esi,%eax
4026d6:	5e                   	pop    %esi
4026d7:	c3                   	ret
4026d8:	83 c0 02             	add    $0x2,%eax
4026db:	5e                   	pop    %esi
4026dc:	c3                   	ret
4026dd:	cc                   	int3
4026de:	cc                   	int3
4026df:	cc                   	int3
4026e0:	83 ec 14             	sub    $0x14,%esp
4026e3:	8d 04 24             	lea    (%esp),%eax
4026e6:	50                   	push   %eax
4026e7:	6a 00                	push   $0x0
4026e9:	6a 28                	push   $0x28
4026eb:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
4026f2:	00
4026f3:	ff 15 48 34 47 00    	call   *0x473448
4026f9:	50                   	push   %eax
4026fa:	ff 15 54 33 47 00    	call   *0x473354
402700:	85 c0                	test   %eax,%eax
402702:	75 21                	jne    0x402725
402704:	8d 0c 24             	lea    (%esp),%ecx
402707:	51                   	push   %ecx
402708:	6a 28                	push   $0x28
40270a:	ff 15 44 34 47 00    	call   *0x473444
402710:	50                   	push   %eax
402711:	ff 15 50 33 47 00    	call   *0x473350
402717:	85 c0                	test   %eax,%eax
402719:	75 0a                	jne    0x402725
40271b:	ff 15 24 34 47 00    	call   *0x473424
402721:	83 c4 14             	add    $0x14,%esp
402724:	c3                   	ret
402725:	8d 54 24 08          	lea    0x8(%esp),%edx
402729:	52                   	push   %edx
40272a:	68 60 bf 45 00       	push   $0x45bf60
40272f:	6a 00                	push   $0x0
402731:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
402738:	00
402739:	c7 44 24 1c 02 00 00 	movl   $0x2,0x1c(%esp)
402740:	00
402741:	ff 15 4c 33 47 00    	call   *0x47334c
402747:	8b 0c 24             	mov    (%esp),%ecx
40274a:	6a 00                	push   $0x0
40274c:	6a 00                	push   $0x0
40274e:	6a 10                	push   $0x10
402750:	8d 44 24 10          	lea    0x10(%esp),%eax
402754:	50                   	push   %eax
402755:	6a 00                	push   $0x0
402757:	51                   	push   %ecx
402758:	ff 15 48 33 47 00    	call   *0x473348
40275e:	85 c0                	test   %eax,%eax
402760:	74 b9                	je     0x40271b
402762:	33 c0                	xor    %eax,%eax
402764:	83 c4 14             	add    $0x14,%esp
402767:	c3                   	ret
402768:	cc                   	int3
402769:	cc                   	int3
40276a:	cc                   	int3
40276b:	cc                   	int3
40276c:	cc                   	int3
40276d:	cc                   	int3
40276e:	cc                   	int3
40276f:	cc                   	int3
402770:	e8 6b ff ff ff       	call   0x4026e0
402775:	85 c0                	test   %eax,%eax
402777:	75 12                	jne    0x40278b
402779:	6a 01                	push   $0x1
40277b:	6a 01                	push   $0x1
40277d:	6a 1e                	push   $0x1e
40277f:	68 88 bf 45 00       	push   $0x45bf88
402784:	50                   	push   %eax
402785:	ff 15 58 33 47 00    	call   *0x473358
40278b:	c3                   	ret
40278c:	cc                   	int3
40278d:	cc                   	int3
40278e:	cc                   	int3
40278f:	cc                   	int3
402790:	81 ec 58 04 00 00    	sub    $0x458,%esp
402796:	53                   	push   %ebx
402797:	8b 1d 50 34 47 00    	mov    0x473450,%ebx
40279d:	56                   	push   %esi
40279e:	8b b4 24 64 04 00 00 	mov    0x464(%esp),%esi
4027a5:	8d 84 24 10 02 00 00 	lea    0x210(%esp),%eax
4027ac:	50                   	push   %eax
4027ad:	56                   	push   %esi
4027ae:	ff d3                	call   *%ebx
4027b0:	83 f8 ff             	cmp    $0xffffffff,%eax
4027b3:	0f 85 aa 00 00 00    	jne    0x402863
4027b9:	8b c6                	mov    %esi,%eax
4027bb:	8d 50 02             	lea    0x2(%eax),%edx
4027be:	8b ff                	mov    %edi,%edi
4027c0:	66 8b 08             	mov    (%eax),%cx
4027c3:	83 c0 02             	add    $0x2,%eax
4027c6:	66 85 c9             	test   %cx,%cx
4027c9:	75 f5                	jne    0x4027c0
4027cb:	2b c2                	sub    %edx,%eax
4027cd:	d1 f8                	sar    $1,%eax
4027cf:	66 83 7c 46 fe 5c    	cmpw   $0x5c,-0x2(%esi,%eax,2)
4027d5:	74 20                	je     0x4027f7
4027d7:	8b c6                	mov    %esi,%eax
4027d9:	8d 50 02             	lea    0x2(%eax),%edx
4027dc:	8d 64 24 00          	lea    0x0(%esp),%esp
4027e0:	66 8b 08             	mov    (%eax),%cx
4027e3:	83 c0 02             	add    $0x2,%eax
4027e6:	66 85 c9             	test   %cx,%cx
4027e9:	75 f5                	jne    0x4027e0
4027eb:	2b c2                	sub    %edx,%eax
4027ed:	d1 f8                	sar    $1,%eax
4027ef:	66 83 7c 46 fe 3a    	cmpw   $0x3a,-0x2(%esi,%eax,2)
4027f5:	75 61                	jne    0x402858
4027f7:	8b c6                	mov    %esi,%eax
4027f9:	8d 50 02             	lea    0x2(%eax),%edx
4027fc:	8d 64 24 00          	lea    0x0(%esp),%esp
402800:	66 8b 08             	mov    (%eax),%cx
402803:	83 c0 02             	add    $0x2,%eax
402806:	66 85 c9             	test   %cx,%cx
402809:	75 f5                	jne    0x402800
40280b:	2b c2                	sub    %edx,%eax
40280d:	d1 f8                	sar    $1,%eax
40280f:	66 83 7c 46 fe 5c    	cmpw   $0x5c,-0x2(%esi,%eax,2)
402815:	b8 c8 be 45 00       	mov    $0x45bec8,%eax
40281a:	74 05                	je     0x402821
40281c:	b8 d4 bf 45 00       	mov    $0x45bfd4,%eax
402821:	50                   	push   %eax
402822:	56                   	push   %esi
402823:	68 c8 bf 45 00       	push   $0x45bfc8
402828:	8d 4c 24 14          	lea    0x14(%esp),%ecx
40282c:	68 04 01 00 00       	push   $0x104
402831:	51                   	push   %ecx
402832:	e8 28 de 02 00       	call   0x43065f
402837:	83 c4 14             	add    $0x14,%esp
40283a:	8d 84 24 10 02 00 00 	lea    0x210(%esp),%eax
402841:	50                   	push   %eax
402842:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
402846:	33 d2                	xor    %edx,%edx
402848:	51                   	push   %ecx
402849:	66 89 94 24 16 02 00 	mov    %dx,0x216(%esp)
402850:	00
402851:	ff d3                	call   *%ebx
402853:	83 f8 ff             	cmp    $0xffffffff,%eax
402856:	75 0b                	jne    0x402863
402858:	5e                   	pop    %esi
402859:	32 c0                	xor    %al,%al
40285b:	5b                   	pop    %ebx
40285c:	81 c4 58 04 00 00    	add    $0x458,%esp
402862:	c3                   	ret
402863:	50                   	push   %eax
402864:	ff 15 4c 34 47 00    	call   *0x47344c
40286a:	5e                   	pop    %esi
40286b:	b0 01                	mov    $0x1,%al
40286d:	5b                   	pop    %ebx
40286e:	81 c4 58 04 00 00    	add    $0x458,%esp
402874:	c3                   	ret
402875:	cc                   	int3
402876:	cc                   	int3
402877:	cc                   	int3
402878:	cc                   	int3
402879:	cc                   	int3
40287a:	cc                   	int3
40287b:	cc                   	int3
40287c:	cc                   	int3
40287d:	cc                   	int3
40287e:	cc                   	int3
40287f:	cc                   	int3
402880:	8b 44 24 04          	mov    0x4(%esp),%eax
402884:	81 ec 58 04 00 00    	sub    $0x458,%esp
40288a:	57                   	push   %edi
40288b:	33 ff                	xor    %edi,%edi
40288d:	85 c0                	test   %eax,%eax
40288f:	74 17                	je     0x4028a8
402891:	50                   	push   %eax
402892:	e8 f9 fe ff ff       	call   0x402790
402897:	83 c4 04             	add    $0x4,%esp
40289a:	84 c0                	test   %al,%al
40289c:	75 0a                	jne    0x4028a8
40289e:	33 c0                	xor    %eax,%eax
4028a0:	5f                   	pop    %edi
4028a1:	81 c4 58 04 00 00    	add    $0x458,%esp
4028a7:	c3                   	ret
4028a8:	53                   	push   %ebx
4028a9:	8b 9c 24 74 04 00 00 	mov    0x474(%esp),%ebx
4028b0:	55                   	push   %ebp
4028b1:	8b ac 24 70 04 00 00 	mov    0x470(%esp),%ebp
4028b8:	56                   	push   %esi
4028b9:	8b b4 24 78 04 00 00 	mov    0x478(%esp),%esi
4028c0:	8b 84 24 6c 04 00 00 	mov    0x46c(%esp),%eax
4028c7:	55                   	push   %ebp
4028c8:	57                   	push   %edi
4028c9:	85 c0                	test   %eax,%eax
4028cb:	75 19                	jne    0x4028e6
4028cd:	8b 84 24 78 04 00 00 	mov    0x478(%esp),%eax
4028d4:	50                   	push   %eax
4028d5:	68 f4 bf 45 00       	push   $0x45bff4
4028da:	53                   	push   %ebx
4028db:	56                   	push   %esi
4028dc:	e8 7e dd 02 00       	call   0x43065f
4028e1:	83 c4 18             	add    $0x18,%esp
4028e4:	eb 18                	jmp    0x4028fe
4028e6:	8b 8c 24 78 04 00 00 	mov    0x478(%esp),%ecx
4028ed:	51                   	push   %ecx
4028ee:	50                   	push   %eax
4028ef:	68 d8 bf 45 00       	push   $0x45bfd8
4028f4:	53                   	push   %ebx
4028f5:	56                   	push   %esi
4028f6:	e8 64 dd 02 00       	call   0x43065f
4028fb:	83 c4 1c             	add    $0x1c,%esp
4028fe:	8d 84 24 18 02 00 00 	lea    0x218(%esp),%eax
402905:	50                   	push   %eax