4023a5:	59                   	pop    %ecx
4023a6:	c3                   	ret
4023a7:	5f                   	pop    %edi
4023a8:	c7 46 10 57 00 00 00 	movl   $0x57,0x10(%esi)
4023af:	5e                   	pop    %esi
4023b0:	33 c0                	xor    %eax,%eax
4023b2:	5b                   	pop    %ebx
4023b3:	59                   	pop    %ecx
4023b4:	c3                   	ret
4023b5:	8d 49 00             	lea    0x0(%ecx),%ecx
4023b8:	6d                   	insl   (%dx),%es:(%edi)
4023b9:	22 40 00             	and    0x0(%eax),%al
4023bc:	a6                   	cmpsb  %es:(%edi),%ds:(%esi)
4023bd:	22 40 00             	and    0x0(%eax),%al
4023c0:	86 22                	xchg   %ah,(%edx)
4023c2:	40                   	inc    %eax
4023c3:	00 ad 22 40 00 0d    	add    %ch,0xd004022(%ebp)
4023c9:	23 40 00             	and    0x0(%eax),%eax
4023cc:	0d 23 40 00 ed       	or     $0xed004023,%eax
4023d1:	22 40 00             	and    0x0(%eax),%al
4023d4:	5f                   	pop    %edi
4023d5:	23 40 00             	and    0x0(%eax),%eax
4023d8:	cc                   	int3
4023d9:	cc                   	int3
4023da:	cc                   	int3
4023db:	cc                   	int3
4023dc:	cc                   	int3
4023dd:	cc                   	int3
4023de:	cc                   	int3
4023df:	cc                   	int3
4023e0:	56                   	push   %esi
4023e1:	8b 74 24 08          	mov    0x8(%esp),%esi
4023e5:	56                   	push   %esi
4023e6:	68 10 22 40 00       	push   $0x402210
4023eb:	e8 d0 f7 ff ff       	call   0x401bc0
4023f0:	83 c4 08             	add    $0x8,%esp
4023f3:	85 c0                	test   %eax,%eax
4023f5:	75 03                	jne    0x4023fa
4023f7:	8b 46 10             	mov    0x10(%esi),%eax
4023fa:	5e                   	pop    %esi
4023fb:	c3                   	ret
4023fc:	cc                   	int3
4023fd:	cc                   	int3
4023fe:	cc                   	int3
4023ff:	cc                   	int3
402400:	83 ec 30             	sub    $0x30,%esp
402403:	6a 30                	push   $0x30
402405:	8d 44 24 04          	lea    0x4(%esp),%eax
402409:	6a 00                	push   $0x0
40240b:	50                   	push   %eax
40240c:	e8 5f e7 02 00       	call   0x430b70
402411:	8b 4c 24 40          	mov    0x40(%esp),%ecx
402415:	8d 54 24 0c          	lea    0xc(%esp),%edx
402419:	52                   	push   %edx
40241a:	68 10 22 40 00       	push   $0x402210
40241f:	89 4c 24 14          	mov    %ecx,0x14(%esp)
402423:	c7 44 24 34 01 00 00 	movl   $0x1,0x34(%esp)
40242a:	00
40242b:	e8 90 f7 ff ff       	call   0x401bc0
402430:	83 c4 14             	add    $0x14,%esp
402433:	85 c0                	test   %eax,%eax
402435:	75 14                	jne    0x40244b
402437:	8b 44 24 10          	mov    0x10(%esp),%eax
40243b:	85 c0                	test   %eax,%eax
40243d:	75 0c                	jne    0x40244b
40243f:	8b 44 24 38          	mov    0x38(%esp),%eax
402443:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
402447:	89 08                	mov    %ecx,(%eax)
402449:	33 c0                	xor    %eax,%eax
40244b:	83 c4 30             	add    $0x30,%esp
40244e:	c3                   	ret
40244f:	cc                   	int3
402450:	83 ec 30             	sub    $0x30,%esp
402453:	6a 30                	push   $0x30
402455:	8d 44 24 04          	lea    0x4(%esp),%eax
402459:	6a 00                	push   $0x0
40245b:	50                   	push   %eax
40245c:	e8 0f e7 02 00       	call   0x430b70
402461:	8b 4c 24 40          	mov    0x40(%esp),%ecx
402465:	8b 54 24 44          	mov    0x44(%esp),%edx
402469:	8d 44 24 0c          	lea    0xc(%esp),%eax
40246d:	50                   	push   %eax
40246e:	68 10 22 40 00       	push   $0x402210
402473:	89 4c 24 14          	mov    %ecx,0x14(%esp)
402477:	c7 44 24 34 04 00 00 	movl   $0x4,0x34(%esp)
40247e:	00
40247f:	89 54 24 2c          	mov    %edx,0x2c(%esp)
402483:	e8 38 f7 ff ff       	call   0x401bc0
402488:	83 c4 14             	add    $0x14,%esp
40248b:	85 c0                	test   %eax,%eax
40248d:	75 04                	jne    0x402493
40248f:	8b 44 24 10          	mov    0x10(%esp),%eax
402493:	83 c4 30             	add    $0x30,%esp
402496:	c3                   	ret
402497:	cc                   	int3
402498:	cc                   	int3
402499:	cc                   	int3
40249a:	cc                   	int3
40249b:	cc                   	int3
40249c:	cc                   	int3
40249d:	cc                   	int3
40249e:	cc                   	int3
40249f:	cc                   	int3
4024a0:	83 ec 30             	sub    $0x30,%esp
4024a3:	6a 30                	push   $0x30
4024a5:	8d 44 24 04          	lea    0x4(%esp),%eax
4024a9:	6a 00                	push   $0x0
4024ab:	50                   	push   %eax
4024ac:	e8 bf e6 02 00       	call   0x430b70
4024b1:	8b 4c 24 44          	mov    0x44(%esp),%ecx
4024b5:	8b 54 24 40          	mov    0x40(%esp),%edx
4024b9:	8d 44 24 0c          	lea    0xc(%esp),%eax
4024bd:	50                   	push   %eax
4024be:	68 10 22 40 00       	push   $0x402210
4024c3:	c7 44 24 34 03 00 00 	movl   $0x3,0x34(%esp)
4024ca:	00
4024cb:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4024cf:	89 54 24 30          	mov    %edx,0x30(%esp)
4024d3:	e8 e8 f6 ff ff       	call   0x401bc0
4024d8:	83 c4 14             	add    $0x14,%esp
4024db:	85 c0                	test   %eax,%eax
4024dd:	75 04                	jne    0x4024e3
4024df:	8b 44 24 10          	mov    0x10(%esp),%eax
4024e3:	83 c4 30             	add    $0x30,%esp
4024e6:	c3                   	ret
4024e7:	cc                   	int3
4024e8:	cc                   	int3
4024e9:	cc                   	int3
4024ea:	cc                   	int3
4024eb:	cc                   	int3
4024ec:	cc                   	int3
4024ed:	cc                   	int3
4024ee:	cc                   	int3
4024ef:	cc                   	int3
4024f0:	83 ec 30             	sub    $0x30,%esp
4024f3:	6a 30                	push   $0x30
4024f5:	8d 44 24 04          	lea    0x4(%esp),%eax
4024f9:	6a 00                	push   $0x0
4024fb:	50                   	push   %eax
4024fc:	e8 6f e6 02 00       	call   0x430b70
402501:	8b 4c 24 40          	mov    0x40(%esp),%ecx
402505:	8d 54 24 0c          	lea    0xc(%esp),%edx
402509:	52                   	push   %edx
40250a:	68 10 22 40 00       	push   $0x402210
40250f:	c7 44 24 34 02 00 00 	movl   $0x2,0x34(%esp)
402516:	00
402517:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
40251b:	e8 a0 f6 ff ff       	call   0x401bc0
402520:	83 c4 14             	add    $0x14,%esp
402523:	85 c0                	test   %eax,%eax
402525:	75 04                	jne    0x40252b
402527:	8b 44 24 10          	mov    0x10(%esp),%eax
40252b:	83 c4 30             	add    $0x30,%esp
40252e:	c3                   	ret
40252f:	cc                   	int3
402530:	83 ec 30             	sub    $0x30,%esp
402533:	6a 30                	push   $0x30
402535:	8d 44 24 04          	lea    0x4(%esp),%eax
402539:	6a 00                	push   $0x0
40253b:	50                   	push   %eax
40253c:	e8 2f e6 02 00       	call   0x430b70
402541:	8b 4c 24 40          	mov    0x40(%esp),%ecx
402545:	8d 54 24 0c          	lea    0xc(%esp),%edx
402549:	52                   	push   %edx
40254a:	68 10 22 40 00       	push   $0x402210
40254f:	c7 44 24 34 05 00 00 	movl   $0x5,0x34(%esp)
402556:	00
402557:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
40255b:	e8 60 f6 ff ff       	call   0x401bc0
402560:	83 c4 14             	add    $0x14,%esp
402563:	85 c0                	test   %eax,%eax
402565:	75 04                	jne    0x40256b
402567:	8b 44 24 10          	mov    0x10(%esp),%eax
40256b:	83 c4 30             	add    $0x30,%esp
40256e:	c3                   	ret
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