40225c:	ff 15 20 71 40 00    	call   *0x407120
402262:	e9 3f f3 ff ff       	jmp    0x4015a6
402267:	6a 01                	push   $0x1
402269:	c7 45 08 21 4e 7e 00 	movl   $0x7e4e21,0x8(%ebp)
402270:	e8 81 07 00 00       	call   0x4029f6
402275:	6a 12                	push   $0x12
402277:	8b f8                	mov    %eax,%edi
402279:	e8 78 07 00 00       	call   0x4029f6
40227e:	6a dd                	push   $0xffffffdd
402280:	89 45 d0             	mov    %eax,-0x30(%ebp)
402283:	e8 6e 07 00 00       	call   0x4029f6
402288:	50                   	push   %eax
402289:	68 ff 03 00 00       	push   $0x3ff
40228e:	8d 45 08             	lea    0x8(%ebp),%eax
402291:	56                   	push   %esi
402292:	50                   	push   %eax
402293:	ff 75 d0             	push   -0x30(%ebp)
402296:	57                   	push   %edi
402297:	ff 15 24 71 40 00    	call   *0x407124
40229d:	8b 06                	mov    (%esi),%eax
40229f:	3b 45 08             	cmp    0x8(%ebp),%eax
4022a2:	e9 6f f4 ff ff       	jmp    0x401716
4022a7:	39 5d ec             	cmp    %ebx,-0x14(%ebp)
4022aa:	75 2b                	jne    0x4022d7
4022ac:	6a 02                	push   $0x2
4022ae:	e8 4d 08 00 00       	call   0x402b00
4022b3:	8b f0                	mov    %eax,%esi
4022b5:	3b f3                	cmp    %ebx,%esi
4022b7:	0f 84 9f 03 00 00    	je     0x40265c
4022bd:	6a 33                	push   $0x33
4022bf:	e8 32 07 00 00       	call   0x4029f6
4022c4:	50                   	push   %eax
4022c5:	56                   	push   %esi
4022c6:	ff 15 18 70 40 00    	call   *0x407018
4022cc:	56                   	push   %esi
4022cd:	8b f8                	mov    %eax,%edi
4022cf:	ff 15 1c 70 40 00    	call   *0x40701c
4022d5:	eb 1f                	jmp    0x4022f6
4022d7:	6a 22                	push   $0x22
4022d9:	e8 18 07 00 00       	call   0x4029f6
4022de:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4022e1:	83 e1 02             	and    $0x2,%ecx
4022e4:	51                   	push   %ecx
4022e5:	50                   	push   %eax
4022e6:	ff 75 e0             	push   -0x20(%ebp)
4022e9:	e8 fd 07 00 00       	call   0x402aeb
4022ee:	50                   	push   %eax
4022ef:	e8 42 07 00 00       	call   0x402a36
4022f4:	8b f8                	mov    %eax,%edi
4022f6:	3b fb                	cmp    %ebx,%edi
4022f8:	0f 84 8d 05 00 00    	je     0x40288b
4022fe:	e9 59 03 00 00       	jmp    0x40265c
402303:	50                   	push   %eax
402304:	e8 e2 07 00 00       	call   0x402aeb
402309:	8b 75 ec             	mov    -0x14(%ebp),%esi
40230c:	8b f8                	mov    %eax,%edi
40230e:	8b 45 f0             	mov    -0x10(%ebp),%eax
402311:	6a 02                	push   $0x2
402313:	89 45 d0             	mov    %eax,-0x30(%ebp)
402316:	e8 db 06 00 00       	call   0x4029f6
40231b:	6a 11                	push   $0x11
40231d:	89 45 bc             	mov    %eax,-0x44(%ebp)
402320:	e8 d1 06 00 00       	call   0x4029f6
402325:	8d 4d 08             	lea    0x8(%ebp),%ecx
402328:	53                   	push   %ebx
402329:	51                   	push   %ecx
40232a:	8b 0d 50 3f 42 00    	mov    0x423f50,%ecx
402330:	83 c9 02             	or     $0x2,%ecx
402333:	53                   	push   %ebx
402334:	51                   	push   %ecx
402335:	53                   	push   %ebx
402336:	53                   	push   %ebx
402337:	53                   	push   %ebx
402338:	50                   	push   %eax
402339:	57                   	push   %edi
40233a:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
402341:	ff 15 20 70 40 00    	call   *0x407020
402347:	85 c0                	test   %eax,%eax
402349:	0f 85 3c 05 00 00    	jne    0x40288b
40234f:	83 fe 01             	cmp    $0x1,%esi
402352:	bf 70 a3 40 00       	mov    $0x40a370,%edi
402357:	75 0e                	jne    0x402367
402359:	6a 23                	push   $0x23
40235b:	e8 96 06 00 00       	call   0x4029f6
402360:	57                   	push   %edi
402361:	e8 16 38 00 00       	call   0x405b7c
402366:	40                   	inc    %eax
402367:	83 fe 04             	cmp    $0x4,%esi
40236a:	75 0e                	jne    0x40237a
40236c:	6a 03                	push   $0x3
40236e:	e8 66 06 00 00       	call   0x4029d9
402373:	56                   	push   %esi
402374:	a3 70 a3 40 00       	mov    %eax,0x40a370
402379:	58                   	pop    %eax
40237a:	83 fe 03             	cmp    $0x3,%esi
40237d:	75 0f                	jne    0x40238e
40237f:	68 00 0c 00 00       	push   $0xc00
402384:	57                   	push   %edi
402385:	53                   	push   %ebx
402386:	ff 75 e8             	push   -0x18(%ebp)
402389:	e8 8a 0b 00 00       	call   0x402f18
40238e:	50                   	push   %eax
40238f:	57                   	push   %edi
402390:	ff 75 d0             	push   -0x30(%ebp)
402393:	53                   	push   %ebx
402394:	ff 75 bc             	push   -0x44(%ebp)
402397:	ff 75 08             	push   0x8(%ebp)
40239a:	ff 15 04 70 40 00    	call   *0x407004
4023a0:	85 c0                	test   %eax,%eax
4023a2:	75 03                	jne    0x4023a7
4023a4:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4023a7:	ff 75 08             	push   0x8(%ebp)
4023aa:	e9 ce 00 00 00       	jmp    0x40247d
4023af:	68 19 00 02 00       	push   $0x20019
4023b4:	e8 47 07 00 00       	call   0x402b00
4023b9:	6a 33                	push   $0x33
4023bb:	8b f8                	mov    %eax,%edi
4023bd:	e8 34 06 00 00       	call   0x4029f6
4023c2:	3b fb                	cmp    %ebx,%edi
4023c4:	88 1e                	mov    %bl,(%esi)
4023c6:	0f 84 90 02 00 00    	je     0x40265c
4023cc:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4023cf:	c7 45 f8 ff 03 00 00 	movl   $0x3ff,-0x8(%ebp)
4023d6:	51                   	push   %ecx
4023d7:	8d 4d 08             	lea    0x8(%ebp),%ecx
4023da:	56                   	push   %esi
4023db:	51                   	push   %ecx
4023dc:	53                   	push   %ebx
4023dd:	50                   	push   %eax
4023de:	57                   	push   %edi
4023df:	ff 15 00 70 40 00    	call   *0x407000
4023e5:	33 c9                	xor    %ecx,%ecx
4023e7:	41                   	inc    %ecx
4023e8:	85 c0                	test   %eax,%eax
4023ea:	75 34                	jne    0x402420
4023ec:	83 7d 08 04          	cmpl   $0x4,0x8(%ebp)
4023f0:	74 19                	je     0x40240b
4023f2:	39 4d 08             	cmp    %ecx,0x8(%ebp)
4023f5:	74 06                	je     0x4023fd
4023f7:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
4023fb:	75 23                	jne    0x402420
4023fd:	8b 45 ec             	mov    -0x14(%ebp),%eax
402400:	89 45 fc             	mov    %eax,-0x4(%ebp)
402403:	8b 45 f8             	mov    -0x8(%ebp),%eax
402406:	88 1c 30             	mov    %bl,(%eax,%esi,1)
402409:	eb 71                	jmp    0x40247c
40240b:	ff 36                	push   (%esi)
40240d:	33 c0                	xor    %eax,%eax
40240f:	39 5d ec             	cmp    %ebx,-0x14(%ebp)
402412:	56                   	push   %esi
402413:	0f 94 c0             	sete   %al
402416:	89 45 fc             	mov    %eax,-0x4(%ebp)
402419:	e8 a6 36 00 00       	call   0x405ac4
40241e:	eb 5c                	jmp    0x40247c
402420:	88 1e                	mov    %bl,(%esi)
402422:	89 4d fc             	mov    %ecx,-0x4(%ebp)
402425:	eb 55                	jmp    0x40247c
402427:	68 19 00 02 00       	push   $0x20019
40242c:	e8 cf 06 00 00       	call   0x402b00
402431:	6a 03                	push   $0x3
402433:	8b f8                	mov    %eax,%edi
402435:	e8 9f 05 00 00       	call   0x4029d9
40243a:	3b fb                	cmp    %ebx,%edi
40243c:	88 1e                	mov    %bl,(%esi)
40243e:	0f 84 18 02 00 00    	je     0x40265c
402444:	39 5d ec             	cmp    %ebx,-0x14(%ebp)
402447:	b9 ff 03 00 00       	mov    $0x3ff,%ecx
40244c:	89 4d 08             	mov    %ecx,0x8(%ebp)
40244f:	74 0c                	je     0x40245d
402451:	51                   	push   %ecx
402452:	56                   	push   %esi
402453:	50                   	push   %eax
402454:	57                   	push   %edi
402455:	ff 15 08 70 40 00    	call   *0x407008
40245b:	eb 19                	jmp    0x402476
40245d:	53                   	push   %ebx
40245e:	53                   	push   %ebx
40245f:	53                   	push   %ebx
402460:	8d 4d 08             	lea    0x8(%ebp),%ecx
402463:	53                   	push   %ebx
402464:	51                   	push   %ecx
402465:	56                   	push   %esi
402466:	50                   	push   %eax
402467:	57                   	push   %edi
402468:	ff 15 0c 70 40 00    	call   *0x40700c
40246e:	85 c0                	test   %eax,%eax
402470:	0f 85 e6 01 00 00    	jne    0x40265c
402476:	88 9e ff 03 00 00    	mov    %bl,0x3ff(%esi)
40247c:	57                   	push   %edi
40247d:	ff 15 1c 70 40 00    	call   *0x40701c
402483:	e9 03 04 00 00       	jmp    0x40288b
402488:	38 1e                	cmp    %bl,(%esi)
40248a:	0f 84 fb 03 00 00    	je     0x40288b
402490:	56                   	push   %esi
402491:	e8 47 36 00 00       	call   0x405add
402496:	50                   	push   %eax
402497:	e9 ee f9 ff ff       	jmp    0x401e8a
40249c:	6a ed                	push   $0xffffffed
40249e:	e8 53 05 00 00       	call   0x4029f6
4024a3:	ff 75 e4             	push   -0x1c(%ebp)
4024a6:	ff 75 e0             	push   -0x20(%ebp)
4024a9:	50                   	push   %eax
4024aa:	e8 8e 33 00 00       	call   0x40583d
4024af:	83 f8 ff             	cmp    $0xffffffff,%eax
4024b2:	0f 84 a2 01 00 00    	je     0x40265a
4024b8:	50                   	push   %eax
4024b9:	e9 a3 f0 ff ff       	jmp    0x401561
4024be:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
4024c1:	74 11                	je     0x4024d4
4024c3:	6a 01                	push   $0x1
4024c5:	e8 0f 05 00 00       	call   0x4029d9
4024ca:	a2 70 9f 40 00       	mov    %al,0x409f70
4024cf:	33 c0                	xor    %eax,%eax
4024d1:	40                   	inc    %eax
4024d2:	eb 0d                	jmp    0x4024e1
4024d4:	6a 11                	push   $0x11
4024d6:	e8 1b 05 00 00       	call   0x4029f6
4024db:	50                   	push   %eax
4024dc:	e8 9b 36 00 00       	call   0x405b7c
4024e1:	38 1e                	cmp    %bl,(%esi)
4024e3:	0f 84 73 01 00 00    	je     0x40265c
4024e9:	8d 4d 08             	lea    0x8(%ebp),%ecx
4024ec:	53                   	push   %ebx
4024ed:	51                   	push   %ecx
4024ee:	50                   	push   %eax
4024ef:	68 70 9f 40 00       	push   $0x409f70
4024f4:	56                   	push   %esi
4024f5:	e8 e3 35 00 00       	call   0x405add
4024fa:	50                   	push   %eax
4024fb:	ff 15 28 71 40 00    	call   *0x407128
402501:	e9 a0 f0 ff ff       	jmp    0x4015a6
402506:	6a 02                	push   $0x2
402508:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
40250b:	e8 c9 04 00 00       	call   0x4029d9
402510:	83 f8 01             	cmp    $0x1,%eax
402513:	89 45 cc             	mov    %eax,-0x34(%ebp)
402516:	0f 8c 6f 03 00 00    	jl     0x40288b
40251c:	b9 ff 03 00 00       	mov    $0x3ff,%ecx
402521:	3b c1                	cmp    %ecx,%eax
402523:	7e 03                	jle    0x402528
402525:	89 4d cc             	mov    %ecx,-0x34(%ebp)
402528:	38 1e                	cmp    %bl,(%esi)
40252a:	0f 84 8e 00 00 00    	je     0x4025be
402530:	56                   	push   %esi
402531:	88 5d 0b             	mov    %bl,0xb(%ebp)
402534:	e8 a4 35 00 00       	call   0x405add
402539:	39 5d cc             	cmp    %ebx,-0x34(%ebp)
40253c:	89 45 f8             	mov    %eax,-0x8(%ebp)
40253f:	7e 7d                	jle    0x4025be
402541:	8b 75 d4             	mov    -0x2c(%ebp),%esi
402544:	8d 45 d0             	lea    -0x30(%ebp),%eax
402547:	53                   	push   %ebx
402548:	50                   	push   %eax
402549:	8d 45 f7             	lea    -0x9(%ebp),%eax
40254c:	6a 01                	push   $0x1
40254e:	50                   	push   %eax
40254f:	ff 75 f8             	push   -0x8(%ebp)
402552:	ff 15 2c 71 40 00    	call   *0x40712c
402558:	85 c0                	test   %eax,%eax
40255a:	74 65                	je     0x4025c1
40255c:	83 7d d0 01          	cmpl   $0x1,-0x30(%ebp)
402560:	75 5f                	jne    0x4025c1
402562:	39 5d e8             	cmp    %ebx,-0x18(%ebp)
402565:	75 21                	jne    0x402588
402567:	80 7d 0b 0d          	cmpb   $0xd,0xb(%ebp)
40256b:	74 2b                	je     0x402598
40256d:	80 7d 0b 0a          	cmpb   $0xa,0xb(%ebp)
402571:	74 25                	je     0x402598
402573:	8a 45 f7             	mov    -0x9(%ebp),%al
402576:	88 04 3e             	mov    %al,(%esi,%edi,1)
402579:	46                   	inc    %esi
40257a:	3a c3                	cmp    %bl,%al
40257c:	88 45 0b             	mov    %al,0xb(%ebp)
40257f:	74 40                	je     0x4025c1
402581:	3b 75 cc             	cmp    -0x34(%ebp),%esi
402584:	7c be                	jl     0x402544
402586:	eb 39                	jmp    0x4025c1
402588:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
40258c:	50                   	push   %eax
40258d:	57                   	push   %edi
40258e:	e8 31 35 00 00       	call   0x405ac4
402593:	e9 fc 02 00 00       	jmp    0x402894
402598:	8a 45 f7             	mov    -0x9(%ebp),%al
40259b:	38 45 0b             	cmp    %al,0xb(%ebp)
40259e:	74 0e                	je     0x4025ae
4025a0:	3c 0d                	cmp    $0xd,%al
4025a2:	74 04                	je     0x4025a8
4025a4:	3c 0a                	cmp    $0xa,%al
4025a6:	75 06                	jne    0x4025ae
4025a8:	88 04 3e             	mov    %al,(%esi,%edi,1)
4025ab:	46                   	inc    %esi
4025ac:	eb 13                	jmp    0x4025c1
4025ae:	6a 01                	push   $0x1
4025b0:	53                   	push   %ebx
4025b1:	6a ff                	push   $0xffffffff
4025b3:	ff 75 f8             	push   -0x8(%ebp)
4025b6:	ff 15 34 71 40 00    	call   *0x407134
4025bc:	eb 03                	jmp    0x4025c1
4025be:	8b 75 d4             	mov    -0x2c(%ebp),%esi
4025c1:	88 1c 3e             	mov    %bl,(%esi,%edi,1)
4025c4:	3b f3                	cmp    %ebx,%esi
4025c6:	e9 dd ef ff ff       	jmp    0x4015a8
4025cb:	38 1e                	cmp    %bl,(%esi)
4025cd:	0f 84 b8 02 00 00    	je     0x40288b
4025d3:	ff 75 e8             	push   -0x18(%ebp)
4025d6:	53                   	push   %ebx
4025d7:	6a 02                	push   $0x2
4025d9:	e8 fb 03 00 00       	call   0x4029d9
4025de:	50                   	push   %eax
4025df:	56                   	push   %esi
4025e0:	e8 f8 34 00 00       	call   0x405add
4025e5:	50                   	push   %eax
4025e6:	ff 15 34 71 40 00    	call   *0x407134
4025ec:	39 5d e0             	cmp    %ebx,-0x20(%ebp)
4025ef:	0f 8c 96 02 00 00    	jl     0x40288b
4025f5:	e9 37 02 00 00       	jmp    0x402831
4025fa:	38 1e                	cmp    %bl,(%esi)
4025fc:	0f 84 89 02 00 00    	je     0x40288b
402602:	56                   	push   %esi
402603:	e8 d5 34 00 00       	call   0x405add
402608:	50                   	push   %eax
402609:	ff 15 38 71 40 00    	call   *0x407138
40260f:	e9 77 02 00 00       	jmp    0x40288b
402614:	38 1f                	cmp    %bl,(%edi)
402616:	74 18                	je     0x402630
402618:	8d 85 5c fe ff ff    	lea    -0x1a4(%ebp),%eax
40261e:	50                   	push   %eax
40261f:	57                   	push   %edi
402620:	e8 b8 34 00 00       	call   0x405add
402625:	50                   	push   %eax
402626:	ff 15 3c 71 40 00    	call   *0x40713c
40262c:	85 c0                	test   %eax,%eax
40262e:	75 3f                	jne    0x40266f
402630:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
402637:	88 1e                	mov    %bl,(%esi)
402639:	e9 4d 02 00 00       	jmp    0x40288b
40263e:	6a 02                	push   $0x2
402640:	e8 b1 03 00 00       	call   0x4029f6
402645:	8d 8d 5c fe ff ff    	lea    -0x1a4(%ebp),%ecx
40264b:	51                   	push   %ecx
40264c:	50                   	push   %eax
40264d:	ff 15 40 71 40 00    	call   *0x407140
402653:	83 f8 ff             	cmp    $0xffffffff,%eax
402656:	75 10                	jne    0x402668
402658:	88 1f                	mov    %bl,(%edi)
40265a:	88 1e                	mov    %bl,(%esi)
40265c:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
402663:	e9 23 02 00 00       	jmp    0x40288b
402668:	50                   	push   %eax
402669:	57                   	push   %edi