42f16f:	3b 3d 54 55 45 00    	cmp    0x455554,%edi
42f175:	0f 84 5e 01 00 00    	je     0x42f2d9
42f17b:	39 35 c8 70 45 00    	cmp    %esi,0x4570c8
42f181:	0f 84 fa 00 00 00    	je     0x42f281
42f187:	0f b7 0d 6a 71 45 00 	movzwl 0x45716a,%ecx
42f18e:	66 39 35 68 71 45 00 	cmp    %si,0x457168
42f195:	75 19                	jne    0x42f1b0
42f197:	0f b7 1d 6c 71 45 00 	movzwl 0x45716c,%ebx
42f19e:	33 c0                	xor    %eax,%eax
42f1a0:	0f b7 15 6e 71 45 00 	movzwl 0x45716e,%edx
42f1a7:	40                   	inc    %eax
42f1a8:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
42f1ab:	89 75 e8             	mov    %esi,-0x18(%ebp)
42f1ae:	eb 11                	jmp    0x42f1c1
42f1b0:	0f b7 1d 6e 71 45 00 	movzwl 0x45716e,%ebx
42f1b7:	8b c6                	mov    %esi,%eax
42f1b9:	8b d6                	mov    %esi,%edx
42f1bb:	89 75 e4             	mov    %esi,-0x1c(%ebp)
42f1be:	89 5d e8             	mov    %ebx,-0x18(%ebp)
42f1c1:	0f b7 1d 70 71 45 00 	movzwl 0x457170,%ebx
42f1c8:	89 5d ec             	mov    %ebx,-0x14(%ebp)
42f1cb:	0f b7 1d 72 71 45 00 	movzwl 0x457172,%ebx
42f1d2:	89 5d f0             	mov    %ebx,-0x10(%ebp)
42f1d5:	0f b7 1d 74 71 45 00 	movzwl 0x457174,%ebx
42f1dc:	89 5d f4             	mov    %ebx,-0xc(%ebp)
42f1df:	0f b7 1d 76 71 45 00 	movzwl 0x457176,%ebx
42f1e6:	53                   	push   %ebx
42f1e7:	ff 75 f4             	push   -0xc(%ebp)
42f1ea:	89 5d f8             	mov    %ebx,-0x8(%ebp)
42f1ed:	ff 75 f0             	push   -0x10(%ebp)
42f1f0:	ff 75 ec             	push   -0x14(%ebp)
42f1f3:	ff 75 e8             	push   -0x18(%ebp)
42f1f6:	ff 75 e4             	push   -0x1c(%ebp)
42f1f9:	52                   	push   %edx
42f1fa:	51                   	push   %ecx
42f1fb:	57                   	push   %edi
42f1fc:	50                   	push   %eax
42f1fd:	56                   	push   %esi
42f1fe:	e8 4d 01 00 00       	call   0x42f350
42f203:	0f b7 1d 1c 71 45 00 	movzwl 0x45711c,%ebx
42f20a:	83 c4 2c             	add    $0x2c,%esp
42f20d:	0f b7 0d 16 71 45 00 	movzwl 0x457116,%ecx
42f214:	89 5d f0             	mov    %ebx,-0x10(%ebp)
42f217:	0f b7 1d 1e 71 45 00 	movzwl 0x45711e,%ebx
42f21e:	89 5d ec             	mov    %ebx,-0x14(%ebp)
42f221:	0f b7 1d 20 71 45 00 	movzwl 0x457120,%ebx
42f228:	89 5d e8             	mov    %ebx,-0x18(%ebp)
42f22b:	0f b7 1d 22 71 45 00 	movzwl 0x457122,%ebx
42f232:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
42f235:	8b 5d 08             	mov    0x8(%ebp),%ebx
42f238:	66 39 35 14 71 45 00 	cmp    %si,0x457114
42f23f:	75 13                	jne    0x42f254
42f241:	0f b7 15 1a 71 45 00 	movzwl 0x45711a,%edx
42f248:	33 c0                	xor    %eax,%eax
42f24a:	0f b7 3d 18 71 45 00 	movzwl 0x457118,%edi
42f251:	40                   	inc    %eax
42f252:	eb 0d                	jmp    0x42f261
42f254:	8b c6                	mov    %esi,%eax
42f256:	8b d6                	mov    %esi,%edx
42f258:	8b fe                	mov    %esi,%edi
42f25a:	0f b7 35 1a 71 45 00 	movzwl 0x45711a,%esi
42f261:	ff 75 e4             	push   -0x1c(%ebp)
42f264:	ff 75 e8             	push   -0x18(%ebp)
42f267:	ff 75 ec             	push   -0x14(%ebp)
42f26a:	ff 75 f0             	push   -0x10(%ebp)
42f26d:	56                   	push   %esi
42f26e:	57                   	push   %edi
42f26f:	52                   	push   %edx
42f270:	51                   	push   %ecx
42f271:	ff 73 14             	push   0x14(%ebx)
42f274:	50                   	push   %eax
42f275:	6a 01                	push   $0x1
42f277:	e8 d4 00 00 00       	call   0x42f350
42f27c:	83 c4 2c             	add    $0x2c,%esp
42f27f:	eb 58                	jmp    0x42f2d9
42f281:	56                   	push   %esi
42f282:	56                   	push   %esi
42f283:	56                   	push   %esi
42f284:	33 c0                	xor    %eax,%eax
42f286:	83 ff 6b             	cmp    $0x6b,%edi
42f289:	6a 02                	push   $0x2
42f28b:	56                   	push   %esi
42f28c:	0f 9d c0             	setge  %al
42f28f:	40                   	inc    %eax
42f290:	56                   	push   %esi
42f291:	50                   	push   %eax
42f292:	33 c0                	xor    %eax,%eax
42f294:	83 ff 6b             	cmp    $0x6b,%edi
42f297:	0f 9c c0             	setl   %al
42f29a:	83 c0 03             	add    $0x3,%eax
42f29d:	50                   	push   %eax
42f29e:	57                   	push   %edi
42f29f:	6a 01                	push   $0x1
42f2a1:	56                   	push   %esi
42f2a2:	e8 a9 00 00 00       	call   0x42f350
42f2a7:	56                   	push   %esi
42f2a8:	56                   	push   %esi
42f2a9:	33 c0                	xor    %eax,%eax
42f2ab:	83 ff 6b             	cmp    $0x6b,%edi
42f2ae:	56                   	push   %esi
42f2af:	6a 02                	push   $0x2
42f2b1:	0f 9c c0             	setl   %al
42f2b4:	56                   	push   %esi
42f2b5:	56                   	push   %esi
42f2b6:	8d 04 85 01 00 00 00 	lea    0x1(,%eax,4),%eax
42f2bd:	50                   	push   %eax
42f2be:	33 c0                	xor    %eax,%eax
42f2c0:	83 ff 6b             	cmp    $0x6b,%edi
42f2c3:	0f 9d c0             	setge  %al
42f2c6:	83 c0 0a             	add    $0xa,%eax
42f2c9:	50                   	push   %eax
42f2ca:	ff 73 14             	push   0x14(%ebx)
42f2cd:	6a 01                	push   $0x1
42f2cf:	6a 01                	push   $0x1
42f2d1:	e8 7a 00 00 00       	call   0x42f350
42f2d6:	83 c4 58             	add    $0x58,%esp
42f2d9:	8b 15 4c 55 45 00    	mov    0x45554c,%edx
42f2df:	a1 58 55 45 00       	mov    0x455558,%eax
42f2e4:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
42f2e7:	5f                   	pop    %edi
42f2e8:	3b d0                	cmp    %eax,%edx
42f2ea:	7d 17                	jge    0x42f303
42f2ec:	3b ca                	cmp    %edx,%ecx
42f2ee:	7c 51                	jl     0x42f341
42f2f0:	3b c8                	cmp    %eax,%ecx
42f2f2:	7f 4d                	jg     0x42f341
42f2f4:	3b ca                	cmp    %edx,%ecx
42f2f6:	7e 1b                	jle    0x42f313
42f2f8:	3b c8                	cmp    %eax,%ecx
42f2fa:	7d 17                	jge    0x42f313
42f2fc:	33 c0                	xor    %eax,%eax
42f2fe:	40                   	inc    %eax
42f2ff:	5e                   	pop    %esi
42f300:	5b                   	pop    %ebx
42f301:	c9                   	leave
42f302:	c3                   	ret
42f303:	3b c8                	cmp    %eax,%ecx
42f305:	7c f5                	jl     0x42f2fc
42f307:	3b ca                	cmp    %edx,%ecx
42f309:	7f f1                	jg     0x42f2fc
42f30b:	3b c8                	cmp    %eax,%ecx
42f30d:	7e 04                	jle    0x42f313
42f30f:	3b ca                	cmp    %edx,%ecx
42f311:	7c 2e                	jl     0x42f341
42f313:	6b 43 08 3c          	imul   $0x3c,0x8(%ebx),%eax
42f317:	03 43 04             	add    0x4(%ebx),%eax
42f31a:	6b c0 3c             	imul   $0x3c,%eax,%eax
42f31d:	03 03                	add    (%ebx),%eax
42f31f:	69 f0 e8 03 00 00    	imul   $0x3e8,%eax,%esi
42f325:	33 c0                	xor    %eax,%eax
42f327:	3b ca                	cmp    %edx,%ecx
42f329:	75 0b                	jne    0x42f336
42f32b:	3b 35 50 55 45 00    	cmp    0x455550,%esi
42f331:	0f 9d c0             	setge  %al
42f334:	eb c9                	jmp    0x42f2ff
42f336:	3b 35 5c 55 45 00    	cmp    0x45555c,%esi
42f33c:	0f 9c c0             	setl   %al
42f33f:	eb be                	jmp    0x42f2ff
42f341:	33 c0                	xor    %eax,%eax
42f343:	eb ba                	jmp    0x42f2ff
42f345:	56                   	push   %esi
42f346:	56                   	push   %esi
42f347:	56                   	push   %esi
42f348:	56                   	push   %esi
42f349:	56                   	push   %esi
42f34a:	e8 61 06 ff ff       	call   0x41f9b0
42f34f:	cc                   	int3
42f350:	8b ff                	mov    %edi,%edi
42f352:	55                   	push   %ebp
42f353:	8b ec                	mov    %esp,%ebp
42f355:	51                   	push   %ecx
42f356:	51                   	push   %ecx
42f357:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
42f35b:	53                   	push   %ebx
42f35c:	8b 5d 10             	mov    0x10(%ebp),%ebx
42f35f:	56                   	push   %esi
42f360:	53                   	push   %ebx
42f361:	e8 6b 5a ff ff       	call   0x424dd1
42f366:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
42f36a:	8b 75 14             	mov    0x14(%ebp),%esi
42f36d:	59                   	pop    %ecx
42f36e:	88 45 ff             	mov    %al,-0x1(%ebp)
42f371:	75 6c                	jne    0x42f3df
42f373:	8d 1c b5 80 28 44 00 	lea    0x442880(,%esi,4),%ebx
42f37a:	57                   	push   %edi
42f37b:	8d 3c b5 b4 28 44 00 	lea    0x4428b4(,%esi,4),%edi
42f382:	84 c0                	test   %al,%al
42f384:	74 05                	je     0x42f38b
42f386:	8b 77 fc             	mov    -0x4(%edi),%esi
42f389:	eb 03                	jmp    0x42f38e
42f38b:	8b 73 fc             	mov    -0x4(%ebx),%esi
42f38e:	ff 75 10             	push   0x10(%ebp)
42f391:	46                   	inc    %esi
42f392:	e8 7f 72 ff ff       	call   0x426616
42f397:	59                   	pop    %ecx
42f398:	69 4d 10 6d 01 00 00 	imul   $0x16d,0x10(%ebp),%ecx
42f39f:	03 c6                	add    %esi,%eax
42f3a1:	6a 07                	push   $0x7
42f3a3:	81 c1 36 9c ff ff    	add    $0xffff9c36,%ecx
42f3a9:	03 c1                	add    %ecx,%eax
42f3ab:	59                   	pop    %ecx
42f3ac:	99                   	cltd
42f3ad:	f7 f9                	idiv   %ecx
42f3af:	6b 4d 18 07          	imul   $0x7,0x18(%ebp),%ecx
42f3b3:	2b ca                	sub    %edx,%ecx
42f3b5:	03 f1                	add    %ecx,%esi
42f3b7:	03 75 1c             	add    0x1c(%ebp),%esi
42f3ba:	3b 55 1c             	cmp    0x1c(%ebp),%edx
42f3bd:	7f 03                	jg     0x42f3c2
42f3bf:	83 c6 f9             	add    $0xfffffff9,%esi
42f3c2:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
42f3c6:	75 02                	jne    0x42f3ca
42f3c8:	8b fb                	mov    %ebx,%edi
42f3ca:	83 7d 18 05          	cmpl   $0x5,0x18(%ebp)
42f3ce:	8b 07                	mov    (%edi),%eax
42f3d0:	8b 5d 10             	mov    0x10(%ebp),%ebx
42f3d3:	5f                   	pop    %edi
42f3d4:	75 20                	jne    0x42f3f6
42f3d6:	3b f0                	cmp    %eax,%esi
42f3d8:	7e 1c                	jle    0x42f3f6
42f3da:	83 ee 07             	sub    $0x7,%esi
42f3dd:	eb 17                	jmp    0x42f3f6
42f3df:	84 c0                	test   %al,%al
42f3e1:	74 09                	je     0x42f3ec
42f3e3:	8b 34 b5 b0 28 44 00 	mov    0x4428b0(,%esi,4),%esi
42f3ea:	eb 07                	jmp    0x42f3f3
42f3ec:	8b 34 b5 7c 28 44 00 	mov    0x44287c(,%esi,4),%esi
42f3f3:	03 75 20             	add    0x20(%ebp),%esi
42f3f6:	6b 45 24 3c          	imul   $0x3c,0x24(%ebp),%eax
42f3fa:	03 45 28             	add    0x28(%ebp),%eax
42f3fd:	6b c0 3c             	imul   $0x3c,%eax,%eax
42f400:	03 45 2c             	add    0x2c(%ebp),%eax
42f403:	69 c8 e8 03 00 00    	imul   $0x3e8,%eax,%ecx
42f409:	8b 45 30             	mov    0x30(%ebp),%eax
42f40c:	03 c1                	add    %ecx,%eax
42f40e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
42f412:	75 15                	jne    0x42f429
42f414:	89 35 4c 55 45 00    	mov    %esi,0x45554c
42f41a:	a3 50 55 45 00       	mov    %eax,0x455550
42f41f:	89 1d 48 55 45 00    	mov    %ebx,0x455548
42f425:	5e                   	pop    %esi
42f426:	5b                   	pop    %ebx
42f427:	c9                   	leave
42f428:	c3                   	ret
42f429:	a3 5c 55 45 00       	mov    %eax,0x45555c
42f42e:	8d 45 f8             	lea    -0x8(%ebp),%eax
42f431:	50                   	push   %eax
42f432:	89 35 58 55 45 00    	mov    %esi,0x455558
42f438:	e8 62 fc ff ff       	call   0x42f09f
42f43d:	59                   	pop    %ecx
42f43e:	85 c0                	test   %eax,%eax
42f440:	75 41                	jne    0x42f483
42f442:	69 4d f8 e8 03 00 00 	imul   $0x3e8,-0x8(%ebp),%ecx
42f449:	a1 5c 55 45 00       	mov    0x45555c,%eax
42f44e:	03 c1                	add    %ecx,%eax
42f450:	a3 5c 55 45 00       	mov    %eax,0x45555c
42f455:	79 0d                	jns    0x42f464
42f457:	05 00 5c 26 05       	add    $0x5265c00,%eax
42f45c:	ff 0d 58 55 45 00    	decl   0x455558
42f462:	eb 12                	jmp    0x42f476
42f464:	3d 00 5c 26 05       	cmp    $0x5265c00,%eax
42f469:	7c 10                	jl     0x42f47b
42f46b:	05 00 a4 d9 fa       	add    $0xfad9a400,%eax
42f470:	ff 05 58 55 45 00    	incl   0x455558
42f476:	a3 5c 55 45 00       	mov    %eax,0x45555c
42f47b:	89 1d 54 55 45 00    	mov    %ebx,0x455554
42f481:	eb a2                	jmp    0x42f425
42f483:	6a 00                	push   $0x0
42f485:	6a 00                	push   $0x0
42f487:	6a 00                	push   $0x0
42f489:	6a 00                	push   $0x0
42f48b:	6a 00                	push   $0x0
42f48d:	e8 1e 05 ff ff       	call   0x41f9b0
42f492:	cc                   	int3
42f493:	8b ff                	mov    %edi,%edi
42f495:	55                   	push   %ebp
42f496:	8b ec                	mov    %esp,%ebp
42f498:	51                   	push   %ecx
42f499:	51                   	push   %ecx
42f49a:	57                   	push   %edi
42f49b:	bf 78 28 44 00       	mov    $0x442878,%edi
42f4a0:	8d 45 fc             	lea    -0x4(%ebp),%eax
42f4a3:	57                   	push   %edi
42f4a4:	68 00 01 00 00       	push   $0x100
42f4a9:	ff 75 08             	push   0x8(%ebp)
42f4ac:	50                   	push   %eax
42f4ad:	e8 e3 93 00 00       	call   0x438895
42f4b2:	83 c4 10             	add    $0x10,%esp
42f4b5:	85 c0                	test   %eax,%eax
42f4b7:	75 05                	jne    0x42f4be
42f4b9:	8b 45 08             	mov    0x8(%ebp),%eax
42f4bc:	eb 49                	jmp    0x42f507
42f4be:	83 f8 22             	cmp    $0x22,%eax
42f4c1:	74 04                	je     0x42f4c7
42f4c3:	33 c0                	xor    %eax,%eax
42f4c5:	eb 40                	jmp    0x42f507
42f4c7:	8b 45 fc             	mov    -0x4(%ebp),%eax
42f4ca:	03 c0                	add    %eax,%eax
42f4cc:	56                   	push   %esi
42f4cd:	50                   	push   %eax
42f4ce:	e8 21 b4 ff ff       	call   0x42a8f4
42f4d3:	8b f0                	mov    %eax,%esi
42f4d5:	59                   	pop    %ecx
42f4d6:	85 f6                	test   %esi,%esi
42f4d8:	75 0a                	jne    0x42f4e4
42f4da:	50                   	push   %eax
42f4db:	e8 da b3 ff ff       	call   0x42a8ba
42f4e0:	33 c0                	xor    %eax,%eax
42f4e2:	eb 21                	jmp    0x42f505
42f4e4:	57                   	push   %edi
42f4e5:	ff 75 fc             	push   -0x4(%ebp)
42f4e8:	8d 45 f8             	lea    -0x8(%ebp),%eax
42f4eb:	56                   	push   %esi
42f4ec:	50                   	push   %eax
42f4ed:	e8 a3 93 00 00       	call   0x438895
42f4f2:	83 c4 10             	add    $0x10,%esp
42f4f5:	85 c0                	test   %eax,%eax
42f4f7:	74 03                	je     0x42f4fc
42f4f9:	56                   	push   %esi
42f4fa:	eb df                	jmp    0x42f4db
42f4fc:	6a 00                	push   $0x0
42f4fe:	e8 b7 b3 ff ff       	call   0x42a8ba
42f503:	8b c6                	mov    %esi,%eax
42f505:	59                   	pop    %ecx
42f506:	5e                   	pop    %esi
42f507:	5f                   	pop    %edi
42f508:	c9                   	leave
42f509:	c3                   	ret
42f50a:	8b ff                	mov    %edi,%edi
42f50c:	55                   	push   %ebp
42f50d:	8b ec                	mov    %esp,%ebp
42f50f:	ff 75 14             	push   0x14(%ebp)
42f512:	ff 75 08             	push   0x8(%ebp)
42f515:	6a 40                	push   $0x40
42f517:	ff 75 0c             	push   0xc(%ebp)
42f51a:	e8 0b 56 ff ff       	call   0x424b2a
42f51f:	83 c4 10             	add    $0x10,%esp
42f522:	85 c0                	test   %eax,%eax
42f524:	75 1e                	jne    0x42f544
42f526:	50                   	push   %eax
42f527:	50                   	push   %eax
42f528:	6a 3f                	push   $0x3f
42f52a:	ff 75 10             	push   0x10(%ebp)
42f52d:	ff 75 14             	push   0x14(%ebp)
42f530:	ff 75 0c             	push   0xc(%ebp)
42f533:	50                   	push   %eax
42f534:	e8 be fb ff ff       	call   0x42f0f7
42f539:	50                   	push   %eax
42f53a:	e8 8b 28 00 00       	call   0x431dca
42f53f:	83 c4 20             	add    $0x20,%esp