4201fe:	83 c3 04             	add    $0x4,%ebx
420201:	89 9d e4 fb ff ff    	mov    %ebx,-0x41c(%ebp)
420207:	85 c0                	test   %eax,%eax
420209:	74 3a                	je     0x420245
42020b:	8b 48 04             	mov    0x4(%eax),%ecx
42020e:	85 c9                	test   %ecx,%ecx
420210:	74 33                	je     0x420245
420212:	f7 85 f8 fb ff ff 00 	testl  $0x800,-0x408(%ebp)
420219:	08 00 00
42021c:	0f bf 00             	movswl (%eax),%eax
42021f:	89 8d f0 fb ff ff    	mov    %ecx,-0x410(%ebp)
420225:	74 12                	je     0x420239
420227:	99                   	cltd
420228:	2b c2                	sub    %edx,%eax
42022a:	c7 85 d8 fb ff ff 01 	movl   $0x1,-0x428(%ebp)
420231:	00 00 00
420234:	e9 01 04 00 00       	jmp    0x42063a
420239:	83 a5 d8 fb ff ff 00 	andl   $0x0,-0x428(%ebp)
420240:	e9 f7 03 00 00       	jmp    0x42063c
420245:	a1 1c ff 42 00       	mov    0x42ff1c,%eax
42024a:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
420250:	50                   	push   %eax
420251:	e8 ea a1 ff ff       	call   0x41a440
420256:	59                   	pop    %ecx
420257:	e9 e0 03 00 00       	jmp    0x42063c
42025c:	83 f8 70             	cmp    $0x70,%eax
42025f:	0f 8f fa 01 00 00    	jg     0x42045f
420265:	0f 84 e2 01 00 00    	je     0x42044d
42026b:	83 f8 65             	cmp    $0x65,%eax
42026e:	0f 8c ce 03 00 00    	jl     0x420642
420274:	83 f8 67             	cmp    $0x67,%eax
420277:	0f 8e e9 fd ff ff    	jle    0x420066
42027d:	83 f8 69             	cmp    $0x69,%eax
420280:	74 71                	je     0x4202f3
420282:	83 f8 6e             	cmp    $0x6e,%eax
420285:	74 28                	je     0x4202af
420287:	83 f8 6f             	cmp    $0x6f,%eax
42028a:	0f 85 b2 03 00 00    	jne    0x420642
420290:	f6 85 f8 fb ff ff 80 	testb  $0x80,-0x408(%ebp)
420297:	c7 85 e8 fb ff ff 08 	movl   $0x8,-0x418(%ebp)
42029e:	00 00 00
4202a1:	74 61                	je     0x420304
4202a3:	81 8d f8 fb ff ff 00 	orl    $0x200,-0x408(%ebp)
4202aa:	02 00 00
4202ad:	eb 55                	jmp    0x420304
4202af:	8b 33                	mov    (%ebx),%esi
4202b1:	83 c3 04             	add    $0x4,%ebx
4202b4:	89 9d e4 fb ff ff    	mov    %ebx,-0x41c(%ebp)
4202ba:	e8 b9 48 00 00       	call   0x424b78
4202bf:	85 c0                	test   %eax,%eax
4202c1:	0f 84 30 05 00 00    	je     0x4207f7
4202c7:	f6 85 f8 fb ff ff 20 	testb  $0x20,-0x408(%ebp)
4202ce:	74 0c                	je     0x4202dc
4202d0:	66 8b 85 e0 fb ff ff 	mov    -0x420(%ebp),%ax
4202d7:	66 89 06             	mov    %ax,(%esi)
4202da:	eb 08                	jmp    0x4202e4
4202dc:	8b 85 e0 fb ff ff    	mov    -0x420(%ebp),%eax
4202e2:	89 06                	mov    %eax,(%esi)
4202e4:	c7 85 c4 fb ff ff 01 	movl   $0x1,-0x43c(%ebp)
4202eb:	00 00 00
4202ee:	e9 c1 04 00 00       	jmp    0x4207b4
4202f3:	83 8d f8 fb ff ff 40 	orl    $0x40,-0x408(%ebp)
4202fa:	c7 85 e8 fb ff ff 0a 	movl   $0xa,-0x418(%ebp)
420301:	00 00 00
420304:	f7 85 f8 fb ff ff 00 	testl  $0x8000,-0x408(%ebp)
42030b:	80 00 00
42030e:	0f 84 ab 01 00 00    	je     0x4204bf
420314:	8b 03                	mov    (%ebx),%eax
420316:	8b 53 04             	mov    0x4(%ebx),%edx
420319:	83 c3 08             	add    $0x8,%ebx
42031c:	e9 e7 01 00 00       	jmp    0x420508
420321:	75 12                	jne    0x420335
420323:	66 83 fa 67          	cmp    $0x67,%dx
420327:	75 63                	jne    0x42038c
420329:	c7 85 f4 fb ff ff 01 	movl   $0x1,-0x40c(%ebp)
420330:	00 00 00
420333:	eb 57                	jmp    0x42038c
420335:	39 85 f4 fb ff ff    	cmp    %eax,-0x40c(%ebp)
42033b:	7e 06                	jle    0x420343
42033d:	89 85 f4 fb ff ff    	mov    %eax,-0x40c(%ebp)
420343:	81 bd f4 fb ff ff a3 	cmpl   $0xa3,-0x40c(%ebp)
42034a:	00 00 00
42034d:	7e 3d                	jle    0x42038c
42034f:	8b bd f4 fb ff ff    	mov    -0x40c(%ebp),%edi
420355:	81 c7 5d 01 00 00    	add    $0x15d,%edi
42035b:	57                   	push   %edi
42035c:	e8 62 06 00 00       	call   0x4209c3
420361:	8b 95 e8 fb ff ff    	mov    -0x418(%ebp),%edx
420367:	59                   	pop    %ecx
420368:	89 85 bc fb ff ff    	mov    %eax,-0x444(%ebp)
42036e:	85 c0                	test   %eax,%eax
420370:	74 10                	je     0x420382
420372:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
420378:	89 bd ec fb ff ff    	mov    %edi,-0x414(%ebp)
42037e:	8b f0                	mov    %eax,%esi
420380:	eb 0a                	jmp    0x42038c
420382:	c7 85 f4 fb ff ff a3 	movl   $0xa3,-0x40c(%ebp)
420389:	00 00 00
42038c:	8b 03                	mov    (%ebx),%eax
42038e:	83 c3 08             	add    $0x8,%ebx
420391:	89 85 94 fb ff ff    	mov    %eax,-0x46c(%ebp)
420397:	8b 43 fc             	mov    -0x4(%ebx),%eax
42039a:	89 85 98 fb ff ff    	mov    %eax,-0x468(%ebp)
4203a0:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
4203a6:	50                   	push   %eax
4203a7:	ff b5 a0 fb ff ff    	push   -0x460(%ebp)
4203ad:	0f be c2             	movsbl %dl,%eax
4203b0:	ff b5 f4 fb ff ff    	push   -0x40c(%ebp)
4203b6:	89 9d e4 fb ff ff    	mov    %ebx,-0x41c(%ebp)
4203bc:	50                   	push   %eax
4203bd:	ff b5 ec fb ff ff    	push   -0x414(%ebp)
4203c3:	8d 85 94 fb ff ff    	lea    -0x46c(%ebp),%eax
4203c9:	56                   	push   %esi
4203ca:	50                   	push   %eax
4203cb:	ff 35 a8 fe 42 00    	push   0x42fea8
4203d1:	e8 82 de ff ff       	call   0x41e258
4203d6:	59                   	pop    %ecx
4203d7:	ff d0                	call   *%eax
4203d9:	8b 9d f8 fb ff ff    	mov    -0x408(%ebp),%ebx
4203df:	83 c4 1c             	add    $0x1c,%esp
4203e2:	81 e3 80 00 00 00    	and    $0x80,%ebx
4203e8:	74 21                	je     0x42040b
4203ea:	83 bd f4 fb ff ff 00 	cmpl   $0x0,-0x40c(%ebp)
4203f1:	75 18                	jne    0x42040b
4203f3:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
4203f9:	50                   	push   %eax
4203fa:	56                   	push   %esi
4203fb:	ff 35 b4 fe 42 00    	push   0x42feb4
420401:	e8 52 de ff ff       	call   0x41e258
420406:	59                   	pop    %ecx
420407:	ff d0                	call   *%eax
420409:	59                   	pop    %ecx
42040a:	59                   	pop    %ecx
42040b:	66 83 bd e8 fb ff ff 	cmpw   $0x67,-0x418(%ebp)
420412:	67
420413:	75 1c                	jne    0x420431
420415:	85 db                	test   %ebx,%ebx
420417:	75 18                	jne    0x420431
420419:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
42041f:	50                   	push   %eax
420420:	56                   	push   %esi
420421:	ff 35 b0 fe 42 00    	push   0x42feb0
420427:	e8 2c de ff ff       	call   0x41e258
42042c:	59                   	pop    %ecx
42042d:	ff d0                	call   *%eax
42042f:	59                   	pop    %ecx
420430:	59                   	pop    %ecx
420431:	80 3e 2d             	cmpb   $0x2d,(%esi)
420434:	75 11                	jne    0x420447
420436:	81 8d f8 fb ff ff 00 	orl    $0x100,-0x408(%ebp)
42043d:	01 00 00
420440:	46                   	inc    %esi
420441:	89 b5 f0 fb ff ff    	mov    %esi,-0x410(%ebp)
420447:	56                   	push   %esi
420448:	e9 04 fe ff ff       	jmp    0x420251
42044d:	c7 85 f4 fb ff ff 08 	movl   $0x8,-0x40c(%ebp)
420454:	00 00 00
420457:	89 8d b8 fb ff ff    	mov    %ecx,-0x448(%ebp)
42045d:	eb 24                	jmp    0x420483
42045f:	83 e8 73             	sub    $0x73,%eax
420462:	0f 84 67 fc ff ff    	je     0x4200cf
420468:	2b c7                	sub    %edi,%eax
42046a:	0f 84 8a fe ff ff    	je     0x4202fa
420470:	83 e8 03             	sub    $0x3,%eax
420473:	0f 85 c9 01 00 00    	jne    0x420642
420479:	c7 85 b8 fb ff ff 27 	movl   $0x27,-0x448(%ebp)
420480:	00 00 00
420483:	f6 85 f8 fb ff ff 80 	testb  $0x80,-0x408(%ebp)
42048a:	c7 85 e8 fb ff ff 10 	movl   $0x10,-0x418(%ebp)
420491:	00 00 00
420494:	0f 84 6a fe ff ff    	je     0x420304
42049a:	6a 30                	push   $0x30
42049c:	58                   	pop    %eax
42049d:	66 89 85 c8 fb ff ff 	mov    %ax,-0x438(%ebp)
4204a4:	8b 85 b8 fb ff ff    	mov    -0x448(%ebp),%eax
4204aa:	83 c0 51             	add    $0x51,%eax
4204ad:	66 89 85 ca fb ff ff 	mov    %ax,-0x436(%ebp)
4204b4:	89 bd dc fb ff ff    	mov    %edi,-0x424(%ebp)
4204ba:	e9 45 fe ff ff       	jmp    0x420304
4204bf:	f7 85 f8 fb ff ff 00 	testl  $0x1000,-0x408(%ebp)
4204c6:	10 00 00
4204c9:	0f 85 45 fe ff ff    	jne    0x420314
4204cf:	83 c3 04             	add    $0x4,%ebx
4204d2:	f6 85 f8 fb ff ff 20 	testb  $0x20,-0x408(%ebp)
4204d9:	74 1c                	je     0x4204f7
4204db:	f6 85 f8 fb ff ff 40 	testb  $0x40,-0x408(%ebp)
4204e2:	89 9d e4 fb ff ff    	mov    %ebx,-0x41c(%ebp)
4204e8:	74 06                	je     0x4204f0
4204ea:	0f bf 43 fc          	movswl -0x4(%ebx),%eax
4204ee:	eb 04                	jmp    0x4204f4
4204f0:	0f b7 43 fc          	movzwl -0x4(%ebx),%eax
4204f4:	99                   	cltd
4204f5:	eb 17                	jmp    0x42050e
4204f7:	f6 85 f8 fb ff ff 40 	testb  $0x40,-0x408(%ebp)
4204fe:	8b 43 fc             	mov    -0x4(%ebx),%eax
420501:	74 03                	je     0x420506
420503:	99                   	cltd
420504:	eb 02                	jmp    0x420508
420506:	33 d2                	xor    %edx,%edx
420508:	89 9d e4 fb ff ff    	mov    %ebx,-0x41c(%ebp)
42050e:	f6 85 f8 fb ff ff 40 	testb  $0x40,-0x408(%ebp)
420515:	74 1b                	je     0x420532
420517:	85 d2                	test   %edx,%edx
420519:	7f 17                	jg     0x420532
42051b:	7c 04                	jl     0x420521
42051d:	85 c0                	test   %eax,%eax
42051f:	73 11                	jae    0x420532
420521:	f7 d8                	neg    %eax
420523:	83 d2 00             	adc    $0x0,%edx
420526:	f7 da                	neg    %edx
420528:	81 8d f8 fb ff ff 00 	orl    $0x100,-0x408(%ebp)
42052f:	01 00 00
420532:	f7 85 f8 fb ff ff 00 	testl  $0x9000,-0x408(%ebp)
420539:	90 00 00
42053c:	8b da                	mov    %edx,%ebx
42053e:	8b f8                	mov    %eax,%edi
420540:	75 02                	jne    0x420544
420542:	33 db                	xor    %ebx,%ebx
420544:	83 bd f4 fb ff ff 00 	cmpl   $0x0,-0x40c(%ebp)
42054b:	7d 0c                	jge    0x420559
42054d:	c7 85 f4 fb ff ff 01 	movl   $0x1,-0x40c(%ebp)
420554:	00 00 00
420557:	eb 1a                	jmp    0x420573
420559:	83 a5 f8 fb ff ff f7 	andl   $0xfffffff7,-0x408(%ebp)
420560:	b8 00 02 00 00       	mov    $0x200,%eax
420565:	39 85 f4 fb ff ff    	cmp    %eax,-0x40c(%ebp)
42056b:	7e 06                	jle    0x420573
42056d:	89 85 f4 fb ff ff    	mov    %eax,-0x40c(%ebp)
420573:	8b c7                	mov    %edi,%eax
420575:	0b c3                	or     %ebx,%eax
420577:	75 06                	jne    0x42057f
420579:	21 85 dc fb ff ff    	and    %eax,-0x424(%ebp)
42057f:	8d b5 fb fd ff ff    	lea    -0x205(%ebp),%esi
420585:	8b 85 f4 fb ff ff    	mov    -0x40c(%ebp),%eax
42058b:	ff 8d f4 fb ff ff    	decl   -0x40c(%ebp)
420591:	85 c0                	test   %eax,%eax
420593:	7f 06                	jg     0x42059b
420595:	8b c7                	mov    %edi,%eax
420597:	0b c3                	or     %ebx,%eax
420599:	74 2d                	je     0x4205c8
42059b:	8b 85 e8 fb ff ff    	mov    -0x418(%ebp),%eax
4205a1:	99                   	cltd
4205a2:	52                   	push   %edx
4205a3:	50                   	push   %eax
4205a4:	53                   	push   %ebx
4205a5:	57                   	push   %edi
4205a6:	e8 15 47 00 00       	call   0x424cc0
4205ab:	83 c1 30             	add    $0x30,%ecx
4205ae:	83 f9 39             	cmp    $0x39,%ecx
4205b1:	89 9d 90 fb ff ff    	mov    %ebx,-0x470(%ebp)
4205b7:	8b f8                	mov    %eax,%edi
4205b9:	8b da                	mov    %edx,%ebx
4205bb:	7e 06                	jle    0x4205c3
4205bd:	03 8d b8 fb ff ff    	add    -0x448(%ebp),%ecx
4205c3:	88 0e                	mov    %cl,(%esi)
4205c5:	4e                   	dec    %esi
4205c6:	eb bd                	jmp    0x420585
4205c8:	8d 85 fb fd ff ff    	lea    -0x205(%ebp),%eax
4205ce:	2b c6                	sub    %esi,%eax
4205d0:	46                   	inc    %esi
4205d1:	f7 85 f8 fb ff ff 00 	testl  $0x200,-0x408(%ebp)
4205d8:	02 00 00
4205db:	89 85 ec fb ff ff    	mov    %eax,-0x414(%ebp)
4205e1:	89 b5 f0 fb ff ff    	mov    %esi,-0x410(%ebp)
4205e7:	74 59                	je     0x420642
4205e9:	85 c0                	test   %eax,%eax
4205eb:	74 07                	je     0x4205f4
4205ed:	8b ce                	mov    %esi,%ecx
4205ef:	80 39 30             	cmpb   $0x30,(%ecx)
4205f2:	74 4e                	je     0x420642
4205f4:	ff 8d f0 fb ff ff    	decl   -0x410(%ebp)
4205fa:	8b 8d f0 fb ff ff    	mov    -0x410(%ebp),%ecx
420600:	c6 01 30             	movb   $0x30,(%ecx)
420603:	40                   	inc    %eax
420604:	eb 36                	jmp    0x42063c
420606:	85 db                	test   %ebx,%ebx
420608:	75 0b                	jne    0x420615
42060a:	a1 20 ff 42 00       	mov    0x42ff20,%eax
42060f:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
420615:	8b 85 f0 fb ff ff    	mov    -0x410(%ebp),%eax
42061b:	c7 85 d8 fb ff ff 01 	movl   $0x1,-0x428(%ebp)
420622:	00 00 00
420625:	eb 09                	jmp    0x420630
420627:	4f                   	dec    %edi
420628:	66 83 38 00          	cmpw   $0x0,(%eax)
42062c:	74 06                	je     0x420634
42062e:	40                   	inc    %eax
42062f:	40                   	inc    %eax
420630:	85 ff                	test   %edi,%edi
420632:	75 f3                	jne    0x420627
420634:	2b 85 f0 fb ff ff    	sub    -0x410(%ebp),%eax
42063a:	d1 f8                	sar    $1,%eax
42063c:	89 85 ec fb ff ff    	mov    %eax,-0x414(%ebp)
420642:	83 bd c4 fb ff ff 00 	cmpl   $0x0,-0x43c(%ebp)
420649:	0f 85 65 01 00 00    	jne    0x4207b4
42064f:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
420655:	a8 40                	test   $0x40,%al
420657:	74 2b                	je     0x420684
420659:	a9 00 01 00 00       	test   $0x100,%eax
42065e:	74 04                	je     0x420664
420660:	6a 2d                	push   $0x2d
420662:	eb 0e                	jmp    0x420672
420664:	a8 01                	test   $0x1,%al
420666:	74 04                	je     0x42066c
420668:	6a 2b                	push   $0x2b
42066a:	eb 06                	jmp    0x420672
42066c:	a8 02                	test   $0x2,%al
42066e:	74 14                	je     0x420684
420670:	6a 20                	push   $0x20
420672:	58                   	pop    %eax
420673:	66 89 85 c8 fb ff ff 	mov    %ax,-0x438(%ebp)
42067a:	c7 85 dc fb ff ff 01 	movl   $0x1,-0x424(%ebp)
420681:	00 00 00
420684:	8b 9d d4 fb ff ff    	mov    -0x42c(%ebp),%ebx
42068a:	8b b5 ec fb ff ff    	mov    -0x414(%ebp),%esi
420690:	2b de                	sub    %esi,%ebx
420692:	2b 9d dc fb ff ff    	sub    -0x424(%ebp),%ebx
420698:	f6 85 f8 fb ff ff 0c 	testb  $0xc,-0x408(%ebp)
42069f:	75 17                	jne    0x4206b8
4206a1:	ff b5 d0 fb ff ff    	push   -0x430(%ebp)
4206a7:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
4206ad:	53                   	push   %ebx
4206ae:	6a 20                	push   $0x20
4206b0:	e8 93 f5 ff ff       	call   0x41fc48
4206b5:	83 c4 0c             	add    $0xc,%esp
4206b8:	ff b5 dc fb ff ff    	push   -0x424(%ebp)
4206be:	8b bd d0 fb ff ff    	mov    -0x430(%ebp),%edi
4206c4:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
4206ca:	8d 8d c8 fb ff ff    	lea    -0x438(%ebp),%ecx
4206d0:	e8 9a f5 ff ff       	call   0x41fc6f
4206d5:	f6 85 f8 fb ff ff 08 	testb  $0x8,-0x408(%ebp)
4206dc:	59                   	pop    %ecx
4206dd:	74 1b                	je     0x4206fa
4206df:	f6 85 f8 fb ff ff 04 	testb  $0x4,-0x408(%ebp)
4206e6:	75 12                	jne    0x4206fa
4206e8:	57                   	push   %edi
4206e9:	53                   	push   %ebx
4206ea:	6a 30                	push   $0x30
4206ec:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
4206f2:	e8 51 f5 ff ff       	call   0x41fc48
4206f7:	83 c4 0c             	add    $0xc,%esp
4206fa:	83 bd d8 fb ff ff 00 	cmpl   $0x0,-0x428(%ebp)
420701:	75 75                	jne    0x420778
420703:	85 f6                	test   %esi,%esi
420705:	7e 71                	jle    0x420778
420707:	8b bd f0 fb ff ff    	mov    -0x410(%ebp),%edi
42070d:	89 b5 e8 fb ff ff    	mov    %esi,-0x418(%ebp)
420713:	ff 8d e8 fb ff ff    	decl   -0x418(%ebp)
420719:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
42071f:	50                   	push   %eax