43513e:	53                   	push   %ebx
43513f:	8d 85 04 fe ff ff    	lea    -0x1fc(%ebp),%eax
435145:	50                   	push   %eax
435146:	8d 85 08 fe ff ff    	lea    -0x1f8(%ebp),%eax
43514c:	50                   	push   %eax
43514d:	88 5d fb             	mov    %bl,-0x5(%ebp)
435150:	e8 1b 61 00 00       	call   0x43b270
435155:	59                   	pop    %ecx
435156:	50                   	push   %eax
435157:	8d 85 08 fe ff ff    	lea    -0x1f8(%ebp),%eax
43515d:	50                   	push   %eax
43515e:	56                   	push   %esi
43515f:	ff 15 48 35 47 00    	call   *0x473548
435165:	8b 4d fc             	mov    -0x4(%ebp),%ecx
435168:	5f                   	pop    %edi
435169:	5e                   	pop    %esi
43516a:	33 cd                	xor    %ebp,%ecx
43516c:	5b                   	pop    %ebx
43516d:	e8 1f 98 00 00       	call   0x43e991
435172:	c9                   	leave
435173:	c3                   	ret
435174:	6a 03                	push   $0x3
435176:	e8 95 9b 00 00       	call   0x43ed10
43517b:	59                   	pop    %ecx
43517c:	83 f8 01             	cmp    $0x1,%eax
43517f:	74 15                	je     0x435196
435181:	6a 03                	push   $0x3
435183:	e8 88 9b 00 00       	call   0x43ed10
435188:	59                   	pop    %ecx
435189:	85 c0                	test   %eax,%eax
43518b:	75 1f                	jne    0x4351ac
43518d:	83 3d 98 f2 46 00 01 	cmpl   $0x1,0x46f298
435194:	75 16                	jne    0x4351ac
435196:	68 fc 00 00 00       	push   $0xfc
43519b:	e8 25 fe ff ff       	call   0x434fc5
4351a0:	68 ff 00 00 00       	push   $0xff
4351a5:	e8 1b fe ff ff       	call   0x434fc5
4351aa:	59                   	pop    %ecx
4351ab:	59                   	pop    %ecx
4351ac:	c3                   	ret
4351ad:	8b ff                	mov    %edi,%edi
4351af:	55                   	push   %ebp
4351b0:	8b ec                	mov    %esp,%ebp
4351b2:	56                   	push   %esi
4351b3:	8b 75 08             	mov    0x8(%ebp),%esi
4351b6:	56                   	push   %esi
4351b7:	e8 56 10 00 00       	call   0x436212
4351bc:	50                   	push   %eax
4351bd:	e8 9c 9b 00 00       	call   0x43ed5e
4351c2:	59                   	pop    %ecx
4351c3:	59                   	pop    %ecx
4351c4:	85 c0                	test   %eax,%eax
4351c6:	74 7c                	je     0x435244
4351c8:	e8 7b b1 ff ff       	call   0x430348
4351cd:	83 c0 20             	add    $0x20,%eax
4351d0:	3b f0                	cmp    %eax,%esi
4351d2:	75 04                	jne    0x4351d8
4351d4:	33 c0                	xor    %eax,%eax
4351d6:	eb 0f                	jmp    0x4351e7
4351d8:	e8 6b b1 ff ff       	call   0x430348
4351dd:	83 c0 40             	add    $0x40,%eax
4351e0:	3b f0                	cmp    %eax,%esi
4351e2:	75 60                	jne    0x435244
4351e4:	33 c0                	xor    %eax,%eax
4351e6:	40                   	inc    %eax
4351e7:	ff 05 c4 07 47 00    	incl   0x4707c4
4351ed:	f7 46 0c 0c 01 00 00 	testl  $0x10c,0xc(%esi)
4351f4:	75 4e                	jne    0x435244
4351f6:	53                   	push   %ebx
4351f7:	57                   	push   %edi
4351f8:	8d 3c 85 88 0f 47 00 	lea    0x470f88(,%eax,4),%edi
4351ff:	83 3f 00             	cmpl   $0x0,(%edi)
435202:	bb 00 10 00 00       	mov    $0x1000,%ebx
435207:	75 20                	jne    0x435229
435209:	53                   	push   %ebx
43520a:	e8 2c 12 00 00       	call   0x43643b
43520f:	59                   	pop    %ecx
435210:	89 07                	mov    %eax,(%edi)
435212:	85 c0                	test   %eax,%eax
435214:	75 13                	jne    0x435229
435216:	8d 46 14             	lea    0x14(%esi),%eax
435219:	6a 02                	push   $0x2
43521b:	89 46 08             	mov    %eax,0x8(%esi)
43521e:	89 06                	mov    %eax,(%esi)
435220:	58                   	pop    %eax
435221:	89 46 18             	mov    %eax,0x18(%esi)
435224:	89 46 04             	mov    %eax,0x4(%esi)
435227:	eb 0d                	jmp    0x435236
435229:	8b 3f                	mov    (%edi),%edi
43522b:	89 7e 08             	mov    %edi,0x8(%esi)
43522e:	89 3e                	mov    %edi,(%esi)
435230:	89 5e 18             	mov    %ebx,0x18(%esi)
435233:	89 5e 04             	mov    %ebx,0x4(%esi)
435236:	81 4e 0c 02 11 00 00 	orl    $0x1102,0xc(%esi)
43523d:	33 c0                	xor    %eax,%eax
43523f:	5f                   	pop    %edi
435240:	40                   	inc    %eax
435241:	5b                   	pop    %ebx
435242:	eb 02                	jmp    0x435246
435244:	33 c0                	xor    %eax,%eax
435246:	5e                   	pop    %esi
435247:	5d                   	pop    %ebp
435248:	c3                   	ret
435249:	8b ff                	mov    %edi,%edi
43524b:	55                   	push   %ebp
43524c:	8b ec                	mov    %esp,%ebp
43524e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
435252:	74 27                	je     0x43527b
435254:	56                   	push   %esi
435255:	8b 75 0c             	mov    0xc(%ebp),%esi
435258:	f7 46 0c 00 10 00 00 	testl  $0x1000,0xc(%esi)
43525f:	74 19                	je     0x43527a
435261:	56                   	push   %esi
435262:	e8 a1 13 00 00       	call   0x436608
435267:	81 66 0c ff ee ff ff 	andl   $0xffffeeff,0xc(%esi)
43526e:	83 66 18 00          	andl   $0x0,0x18(%esi)
435272:	83 26 00             	andl   $0x0,(%esi)
435275:	83 66 08 00          	andl   $0x0,0x8(%esi)
435279:	59                   	pop    %ecx
43527a:	5e                   	pop    %esi
43527b:	5d                   	pop    %ebp
43527c:	c3                   	ret
43527d:	f6 41 0c 40          	testb  $0x40,0xc(%ecx)
435281:	74 06                	je     0x435289
435283:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
435287:	74 24                	je     0x4352ad
435289:	ff 49 04             	decl   0x4(%ecx)
43528c:	78 0b                	js     0x435299
43528e:	8b 11                	mov    (%ecx),%edx
435290:	88 02                	mov    %al,(%edx)
435292:	ff 01                	incl   (%ecx)
435294:	0f b6 c0             	movzbl %al,%eax
435297:	eb 0c                	jmp    0x4352a5
435299:	0f be c0             	movsbl %al,%eax
43529c:	51                   	push   %ecx
43529d:	50                   	push   %eax
43529e:	e8 7b 16 00 00       	call   0x43691e
4352a3:	59                   	pop    %ecx
4352a4:	59                   	pop    %ecx
4352a5:	83 f8 ff             	cmp    $0xffffffff,%eax
4352a8:	75 03                	jne    0x4352ad
4352aa:	09 06                	or     %eax,(%esi)
4352ac:	c3                   	ret
4352ad:	ff 06                	incl   (%esi)
4352af:	c3                   	ret
4352b0:	8b ff                	mov    %edi,%edi
4352b2:	55                   	push   %ebp
4352b3:	8b ec                	mov    %esp,%ebp
4352b5:	56                   	push   %esi
4352b6:	8b f0                	mov    %eax,%esi
4352b8:	eb 13                	jmp    0x4352cd
4352ba:	8b 4d 10             	mov    0x10(%ebp),%ecx
4352bd:	8a 45 08             	mov    0x8(%ebp),%al
4352c0:	ff 4d 0c             	decl   0xc(%ebp)
4352c3:	e8 b5 ff ff ff       	call   0x43527d
4352c8:	83 3e ff             	cmpl   $0xffffffff,(%esi)
4352cb:	74 06                	je     0x4352d3
4352cd:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4352d1:	7f e7                	jg     0x4352ba
4352d3:	5e                   	pop    %esi
4352d4:	5d                   	pop    %ebp
4352d5:	c3                   	ret
4352d6:	8b ff                	mov    %edi,%edi
4352d8:	55                   	push   %ebp
4352d9:	8b ec                	mov    %esp,%ebp
4352db:	51                   	push   %ecx
4352dc:	f6 43 0c 40          	testb  $0x40,0xc(%ebx)
4352e0:	56                   	push   %esi
4352e1:	8b f0                	mov    %eax,%esi
4352e3:	8b 07                	mov    (%edi),%eax
4352e5:	89 45 fc             	mov    %eax,-0x4(%ebp)
4352e8:	74 0d                	je     0x4352f7
4352ea:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
4352ee:	75 07                	jne    0x4352f7
4352f0:	8b 45 0c             	mov    0xc(%ebp),%eax
4352f3:	01 06                	add    %eax,(%esi)
4352f5:	eb 3e                	jmp    0x435335
4352f7:	83 27 00             	andl   $0x0,(%edi)
4352fa:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4352fe:	7e 30                	jle    0x435330
435300:	8b 45 08             	mov    0x8(%ebp),%eax
435303:	8a 00                	mov    (%eax),%al
435305:	ff 4d 0c             	decl   0xc(%ebp)
435308:	8b cb                	mov    %ebx,%ecx
43530a:	e8 6e ff ff ff       	call   0x43527d
43530f:	ff 45 08             	incl   0x8(%ebp)
435312:	83 3e ff             	cmpl   $0xffffffff,(%esi)
435315:	75 0e                	jne    0x435325
435317:	83 3f 2a             	cmpl   $0x2a,(%edi)
43531a:	75 0f                	jne    0x43532b
43531c:	8b cb                	mov    %ebx,%ecx
43531e:	b0 3f                	mov    $0x3f,%al
435320:	e8 58 ff ff ff       	call   0x43527d
435325:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
435329:	7f d5                	jg     0x435300
43532b:	83 3f 00             	cmpl   $0x0,(%edi)
43532e:	75 05                	jne    0x435335
435330:	8b 45 fc             	mov    -0x4(%ebp),%eax
435333:	89 07                	mov    %eax,(%edi)
435335:	5e                   	pop    %esi
435336:	c9                   	leave
435337:	c3                   	ret
435338:	8b ff                	mov    %edi,%edi
43533a:	55                   	push   %ebp
43533b:	8b ec                	mov    %esp,%ebp
43533d:	8b 45 08             	mov    0x8(%ebp),%eax
435340:	83 00 04             	addl   $0x4,(%eax)
435343:	8b 00                	mov    (%eax),%eax
435345:	8b 40 fc             	mov    -0x4(%eax),%eax
435348:	5d                   	pop    %ebp
435349:	c3                   	ret
43534a:	8b ff                	mov    %edi,%edi
43534c:	55                   	push   %ebp
43534d:	8b ec                	mov    %esp,%ebp
43534f:	8b 45 08             	mov    0x8(%ebp),%eax
435352:	83 00 08             	addl   $0x8,(%eax)
435355:	8b 08                	mov    (%eax),%ecx
435357:	8b 41 f8             	mov    -0x8(%ecx),%eax
43535a:	8b 51 fc             	mov    -0x4(%ecx),%edx
43535d:	5d                   	pop    %ebp
43535e:	c3                   	ret
43535f:	8b ff                	mov    %edi,%edi
435361:	55                   	push   %ebp
435362:	8b ec                	mov    %esp,%ebp
435364:	8b 45 08             	mov    0x8(%ebp),%eax
435367:	83 00 04             	addl   $0x4,(%eax)
43536a:	8b 00                	mov    (%eax),%eax
43536c:	66 8b 40 fc          	mov    -0x4(%eax),%ax
435370:	5d                   	pop    %ebp
435371:	c3                   	ret
435372:	8b ff                	mov    %edi,%edi
435374:	55                   	push   %ebp
435375:	8b ec                	mov    %esp,%ebp
435377:	81 ec 80 02 00 00    	sub    $0x280,%esp
43537d:	a1 a8 f6 46 00       	mov    0x46f6a8,%eax
435382:	33 c5                	xor    %ebp,%eax
435384:	89 45 fc             	mov    %eax,-0x4(%ebp)
435387:	53                   	push   %ebx
435388:	8b 5d 0c             	mov    0xc(%ebp),%ebx
43538b:	56                   	push   %esi
43538c:	8b 75 08             	mov    0x8(%ebp),%esi
43538f:	33 c0                	xor    %eax,%eax
435391:	57                   	push   %edi
435392:	8b 7d 14             	mov    0x14(%ebp),%edi
435395:	ff 75 10             	push   0x10(%ebp)
435398:	8d 8d a4 fd ff ff    	lea    -0x25c(%ebp),%ecx
43539e:	89 b5 d0 fd ff ff    	mov    %esi,-0x230(%ebp)
4353a4:	89 bd e4 fd ff ff    	mov    %edi,-0x21c(%ebp)
4353aa:	89 85 b4 fd ff ff    	mov    %eax,-0x24c(%ebp)
4353b0:	89 85 f0 fd ff ff    	mov    %eax,-0x210(%ebp)
4353b6:	89 85 c8 fd ff ff    	mov    %eax,-0x238(%ebp)
4353bc:	89 85 e8 fd ff ff    	mov    %eax,-0x218(%ebp)
4353c2:	89 85 cc fd ff ff    	mov    %eax,-0x234(%ebp)
4353c8:	89 85 bc fd ff ff    	mov    %eax,-0x244(%ebp)
4353ce:	89 85 c4 fd ff ff    	mov    %eax,-0x23c(%ebp)
4353d4:	e8 11 b8 ff ff       	call   0x430bea
4353d9:	e8 ca f5 ff ff       	call   0x4349a8
4353de:	89 85 94 fd ff ff    	mov    %eax,-0x26c(%ebp)
4353e4:	85 f6                	test   %esi,%esi
4353e6:	75 2b                	jne    0x435413
4353e8:	e8 bb f5 ff ff       	call   0x4349a8
4353ed:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4353f3:	e8 76 ef ff ff       	call   0x43436e
4353f8:	80 bd b0 fd ff ff 00 	cmpb   $0x0,-0x250(%ebp)
4353ff:	74 0a                	je     0x43540b
435401:	8b 85 ac fd ff ff    	mov    -0x254(%ebp),%eax
435407:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
43540b:	83 c8 ff             	or     $0xffffffff,%eax
43540e:	e9 37 0b 00 00       	jmp    0x435f4a
435413:	f6 46 0c 40          	testb  $0x40,0xc(%esi)
435417:	75 5e                	jne    0x435477
435419:	56                   	push   %esi
43541a:	e8 f3 0d 00 00       	call   0x436212
43541f:	59                   	pop    %ecx
435420:	ba 68 f6 46 00       	mov    $0x46f668,%edx
435425:	83 f8 ff             	cmp    $0xffffffff,%eax
435428:	74 1b                	je     0x435445
43542a:	83 f8 fe             	cmp    $0xfffffffe,%eax
43542d:	74 16                	je     0x435445
43542f:	8b c8                	mov    %eax,%ecx
435431:	83 e1 1f             	and    $0x1f,%ecx
435434:	8b f0                	mov    %eax,%esi
435436:	c1 fe 05             	sar    $0x5,%esi
435439:	c1 e1 06             	shl    $0x6,%ecx
43543c:	03 0c b5 80 17 47 00 	add    0x471780(,%esi,4),%ecx
435443:	eb 02                	jmp    0x435447
435445:	8b ca                	mov    %edx,%ecx
435447:	f6 41 24 7f          	testb  $0x7f,0x24(%ecx)
43544b:	75 9b                	jne    0x4353e8
43544d:	83 f8 ff             	cmp    $0xffffffff,%eax
435450:	74 19                	je     0x43546b
435452:	83 f8 fe             	cmp    $0xfffffffe,%eax
435455:	74 14                	je     0x43546b
435457:	8b c8                	mov    %eax,%ecx
435459:	83 e0 1f             	and    $0x1f,%eax
43545c:	c1 f9 05             	sar    $0x5,%ecx
43545f:	c1 e0 06             	shl    $0x6,%eax
435462:	03 04 8d 80 17 47 00 	add    0x471780(,%ecx,4),%eax
435469:	eb 02                	jmp    0x43546d
43546b:	8b c2                	mov    %edx,%eax
43546d:	f6 40 24 80          	testb  $0x80,0x24(%eax)
435471:	0f 85 71 ff ff ff    	jne    0x4353e8
435477:	33 c9                	xor    %ecx,%ecx
435479:	3b d9                	cmp    %ecx,%ebx
43547b:	0f 84 67 ff ff ff    	je     0x4353e8
435481:	8a 13                	mov    (%ebx),%dl
435483:	89 8d dc fd ff ff    	mov    %ecx,-0x224(%ebp)
435489:	89 8d d8 fd ff ff    	mov    %ecx,-0x228(%ebp)
43548f:	89 8d b8 fd ff ff    	mov    %ecx,-0x248(%ebp)
435495:	88 95 ef fd ff ff    	mov    %dl,-0x211(%ebp)
43549b:	84 d2                	test   %dl,%dl
43549d:	0f 84 8e 0a 00 00    	je     0x435f31
4354a3:	43                   	inc    %ebx
4354a4:	33 f6                	xor    %esi,%esi
4354a6:	89 9d c0 fd ff ff    	mov    %ebx,-0x240(%ebp)
4354ac:	39 b5 dc fd ff ff    	cmp    %esi,-0x224(%ebp)
4354b2:	0f 8c 79 0a 00 00    	jl     0x435f31
4354b8:	8d 42 e0             	lea    -0x20(%edx),%eax
4354bb:	3c 58                	cmp    $0x58,%al
4354bd:	77 0f                	ja     0x4354ce
4354bf:	0f be c2             	movsbl %dl,%eax
4354c2:	0f be 80 68 8e 46 00 	movsbl 0x468e68(%eax),%eax
4354c9:	83 e0 0f             	and    $0xf,%eax
4354cc:	eb 02                	jmp    0x4354d0
4354ce:	33 c0                	xor    %eax,%eax
4354d0:	0f be 84 c1 88 8e 46 	movsbl 0x468e88(%ecx,%eax,8),%eax
4354d7:	00
4354d8:	6a 07                	push   $0x7
4354da:	c1 f8 04             	sar    $0x4,%eax
4354dd:	59                   	pop    %ecx
4354de:	89 85 8c fd ff ff    	mov    %eax,-0x274(%ebp)
4354e4:	3b c1                	cmp    %ecx,%eax
4354e6:	0f 87 20 0a 00 00    	ja     0x435f0c
4354ec:	ff 24 85 5a 5f 43 00 	jmp    *0x435f5a(,%eax,4)
4354f3:	83 8d e8 fd ff ff ff 	orl    $0xffffffff,-0x218(%ebp)
4354fa:	89 b5 88 fd ff ff    	mov    %esi,-0x278(%ebp)
435500:	89 b5 bc fd ff ff    	mov    %esi,-0x244(%ebp)
435506:	89 b5 c8 fd ff ff    	mov    %esi,-0x238(%ebp)
43550c:	89 b5 cc fd ff ff    	mov    %esi,-0x234(%ebp)
435512:	89 b5 f0 fd ff ff    	mov    %esi,-0x210(%ebp)
435518:	89 b5 c4 fd ff ff    	mov    %esi,-0x23c(%ebp)
43551e:	e9 e9 09 00 00       	jmp    0x435f0c
435523:	0f be c2             	movsbl %dl,%eax
435526:	83 e8 20             	sub    $0x20,%eax
435529:	74 4a                	je     0x435575
43552b:	83 e8 03             	sub    $0x3,%eax
43552e:	74 36                	je     0x435566
435530:	83 e8 08             	sub    $0x8,%eax
435533:	74 25                	je     0x43555a
435535:	48                   	dec    %eax