42b305:	ff b4 9f a0 00 00 00 	push   0xa0(%edi,%ebx,4)
42b30c:	e8 66 11 00 00       	call   0x42c477
42b311:	8b 85 38 fd ff ff    	mov    -0x2c8(%ebp),%eax
42b317:	83 c4 0c             	add    $0xc,%esp
42b31a:	8b 8d 44 fd ff ff    	mov    -0x2bc(%ebp),%ecx
42b320:	89 0c 38             	mov    %ecx,(%eax,%edi,1)
42b323:	89 8c 9f a0 00 00 00 	mov    %ecx,0xa0(%edi,%ebx,4)
42b32a:	eb 06                	jmp    0x42b332
42b32c:	8b 85 38 fd ff ff    	mov    -0x2c8(%ebp),%eax
42b332:	8b 8d 2c fd ff ff    	mov    -0x2d4(%ebp),%ecx
42b338:	03 db                	add    %ebx,%ebx
42b33a:	c7 01 01 00 00 00    	movl   $0x1,(%ecx)
42b340:	8b 04 38             	mov    (%eax,%edi,1),%eax
42b343:	89 4c df 28          	mov    %ecx,0x28(%edi,%ebx,8)
42b347:	eb 82                	jmp    0x42b2cb
42b349:	8b 85 44 fd ff ff    	mov    -0x2bc(%ebp),%eax
42b34f:	50                   	push   %eax
42b350:	50                   	push   %eax
42b351:	50                   	push   %eax
42b352:	50                   	push   %eax
42b353:	50                   	push   %eax
42b354:	e8 43 57 ff ff       	call   0x420a9c
42b359:	cc                   	int3
42b35a:	8b ff                	mov    %edi,%edi
42b35c:	55                   	push   %ebp
42b35d:	8b ec                	mov    %esp,%ebp
42b35f:	51                   	push   %ecx
42b360:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42b364:	8d 45 fc             	lea    -0x4(%ebp),%eax
42b367:	6a 02                	push   $0x2
42b369:	50                   	push   %eax
42b36a:	68 04 10 00 20       	push   $0x20001004
42b36f:	ff 75 08             	push   0x8(%ebp)
42b372:	e8 f9 3c 00 00       	call   0x42f070
42b377:	85 c0                	test   %eax,%eax
42b379:	74 07                	je     0x42b382
42b37b:	8b 45 fc             	mov    -0x4(%ebp),%eax
42b37e:	85 c0                	test   %eax,%eax
42b380:	75 05                	jne    0x42b387
42b382:	b8 e9 fd 00 00       	mov    $0xfde9,%eax
42b387:	c9                   	leave
42b388:	c3                   	ret
42b389:	8b ff                	mov    %edi,%edi
42b38b:	55                   	push   %ebp
42b38c:	8b ec                	mov    %esp,%ebp
42b38e:	83 ec 44             	sub    $0x44,%esp
42b391:	a1 14 40 45 00       	mov    0x454014,%eax
42b396:	33 c5                	xor    %ebp,%eax
42b398:	89 45 fc             	mov    %eax,-0x4(%ebp)
42b39b:	8b 45 0c             	mov    0xc(%ebp),%eax
42b39e:	53                   	push   %ebx
42b39f:	56                   	push   %esi
42b3a0:	8b 75 08             	mov    0x8(%ebp),%esi
42b3a3:	33 db                	xor    %ebx,%ebx
42b3a5:	57                   	push   %edi
42b3a6:	68 ca 01 00 00       	push   $0x1ca
42b3ab:	53                   	push   %ebx
42b3ac:	56                   	push   %esi
42b3ad:	89 75 bc             	mov    %esi,-0x44(%ebp)
42b3b0:	89 45 c4             	mov    %eax,-0x3c(%ebp)
42b3b3:	e8 28 26 ff ff       	call   0x41d9e0
42b3b8:	8b 55 c4             	mov    -0x3c(%ebp),%edx
42b3bb:	8d 4d d0             	lea    -0x30(%ebp),%ecx
42b3be:	83 c4 0c             	add    $0xc,%esp
42b3c1:	89 4d c8             	mov    %ecx,-0x38(%ebp)
42b3c4:	8b fb                	mov    %ebx,%edi
42b3c6:	8b c3                	mov    %ebx,%eax
42b3c8:	89 45 c0             	mov    %eax,-0x40(%ebp)
42b3cb:	83 ff 04             	cmp    $0x4,%edi
42b3ce:	0f 83 7e 01 00 00    	jae    0x42b552
42b3d4:	83 f8 02             	cmp    $0x2,%eax
42b3d7:	74 14                	je     0x42b3ed
42b3d9:	68 38 29 44 00       	push   $0x442938
42b3de:	52                   	push   %edx
42b3df:	e8 ca 9e 00 00       	call   0x4352ae
42b3e4:	8b 55 c4             	mov    -0x3c(%ebp),%edx
42b3e7:	59                   	pop    %ecx
42b3e8:	59                   	pop    %ecx
42b3e9:	8b c8                	mov    %eax,%ecx
42b3eb:	eb 14                	jmp    0x42b401
42b3ed:	8b ca                	mov    %edx,%ecx
42b3ef:	8d 71 02             	lea    0x2(%ecx),%esi
42b3f2:	66 8b 01             	mov    (%ecx),%ax
42b3f5:	83 c1 02             	add    $0x2,%ecx
42b3f8:	66 3b c3             	cmp    %bx,%ax
42b3fb:	75 f5                	jne    0x42b3f2
42b3fd:	2b ce                	sub    %esi,%ecx
42b3ff:	d1 f9                	sar    $1,%ecx
42b401:	8b 45 c8             	mov    -0x38(%ebp),%eax
42b404:	47                   	inc    %edi
42b405:	8b 75 c8             	mov    -0x38(%ebp),%esi
42b408:	83 45 c8 0c          	addl   $0xc,-0x38(%ebp)
42b40c:	89 50 fc             	mov    %edx,-0x4(%eax)
42b40f:	8d 14 4a             	lea    (%edx,%ecx,2),%edx
42b412:	89 08                	mov    %ecx,(%eax)
42b414:	8b 45 c0             	mov    -0x40(%ebp),%eax
42b417:	89 46 04             	mov    %eax,0x4(%esi)
42b41a:	0f b7 02             	movzwl (%edx),%eax
42b41d:	83 c2 02             	add    $0x2,%edx
42b420:	8b 75 bc             	mov    -0x44(%ebp),%esi
42b423:	89 55 c4             	mov    %edx,-0x3c(%ebp)
42b426:	2b c3                	sub    %ebx,%eax
42b428:	74 0f                	je     0x42b439
42b42a:	83 e8 2d             	sub    $0x2d,%eax
42b42d:	74 97                	je     0x42b3c6
42b42f:	83 e8 01             	sub    $0x1,%eax
42b432:	74 69                	je     0x42b49d
42b434:	83 e8 31             	sub    $0x31,%eax
42b437:	74 8d                	je     0x42b3c6
42b439:	83 ef 01             	sub    $0x1,%edi
42b43c:	0f 84 02 01 00 00    	je     0x42b544
42b442:	83 ef 01             	sub    $0x1,%edi
42b445:	0f 84 b3 00 00 00    	je     0x42b4fe
42b44b:	83 ef 01             	sub    $0x1,%edi
42b44e:	74 55                	je     0x42b4a5
42b450:	83 ef 01             	sub    $0x1,%edi
42b453:	0f 85 f9 00 00 00    	jne    0x42b552
42b459:	8d 45 cc             	lea    -0x34(%ebp),%eax
42b45c:	50                   	push   %eax
42b45d:	56                   	push   %esi
42b45e:	e8 3f 01 00 00       	call   0x42b5a2
42b463:	59                   	pop    %ecx
42b464:	59                   	pop    %ecx
42b465:	84 c0                	test   %al,%al
42b467:	0f 84 d3 00 00 00    	je     0x42b540
42b46d:	8d 45 d8             	lea    -0x28(%ebp),%eax
42b470:	50                   	push   %eax
42b471:	56                   	push   %esi
42b472:	e8 5b 02 00 00       	call   0x42b6d2
42b477:	59                   	pop    %ecx
42b478:	59                   	pop    %ecx
42b479:	84 c0                	test   %al,%al
42b47b:	0f 84 bf 00 00 00    	je     0x42b540
42b481:	8d 45 e4             	lea    -0x1c(%ebp),%eax
42b484:	50                   	push   %eax
42b485:	56                   	push   %esi
42b486:	e8 89 01 00 00       	call   0x42b614
42b48b:	59                   	pop    %ecx
42b48c:	59                   	pop    %ecx
42b48d:	84 c0                	test   %al,%al
42b48f:	0f 84 ab 00 00 00    	je     0x42b540
42b495:	8d 45 f0             	lea    -0x10(%ebp),%eax
42b498:	e9 94 00 00 00       	jmp    0x42b531
42b49d:	6a 02                	push   $0x2
42b49f:	58                   	pop    %eax
42b4a0:	e9 23 ff ff ff       	jmp    0x42b3c8
42b4a5:	8d 45 cc             	lea    -0x34(%ebp),%eax
42b4a8:	50                   	push   %eax
42b4a9:	56                   	push   %esi
42b4aa:	e8 f3 00 00 00       	call   0x42b5a2
42b4af:	59                   	pop    %ecx
42b4b0:	59                   	pop    %ecx
42b4b1:	84 c0                	test   %al,%al
42b4b3:	0f 84 87 00 00 00    	je     0x42b540
42b4b9:	8d 45 d8             	lea    -0x28(%ebp),%eax
42b4bc:	50                   	push   %eax
42b4bd:	56                   	push   %esi
42b4be:	e8 0f 02 00 00       	call   0x42b6d2
42b4c3:	59                   	pop    %ecx
42b4c4:	59                   	pop    %ecx
42b4c5:	84 c0                	test   %al,%al
42b4c7:	74 20                	je     0x42b4e9
42b4c9:	8d 45 e4             	lea    -0x1c(%ebp),%eax
42b4cc:	50                   	push   %eax
42b4cd:	56                   	push   %esi
42b4ce:	e8 41 01 00 00       	call   0x42b614
42b4d3:	59                   	pop    %ecx
42b4d4:	59                   	pop    %ecx
42b4d5:	84 c0                	test   %al,%al
42b4d7:	75 65                	jne    0x42b53e
42b4d9:	8d 45 e4             	lea    -0x1c(%ebp),%eax
42b4dc:	50                   	push   %eax
42b4dd:	56                   	push   %esi
42b4de:	e8 80 00 00 00       	call   0x42b563
42b4e3:	59                   	pop    %ecx
42b4e4:	59                   	pop    %ecx
42b4e5:	84 c0                	test   %al,%al
42b4e7:	75 55                	jne    0x42b53e
42b4e9:	8d 45 d8             	lea    -0x28(%ebp),%eax
42b4ec:	50                   	push   %eax
42b4ed:	56                   	push   %esi
42b4ee:	e8 21 01 00 00       	call   0x42b614
42b4f3:	59                   	pop    %ecx
42b4f4:	59                   	pop    %ecx
42b4f5:	84 c0                	test   %al,%al
42b4f7:	74 47                	je     0x42b540
42b4f9:	8d 45 e4             	lea    -0x1c(%ebp),%eax
42b4fc:	eb 33                	jmp    0x42b531
42b4fe:	8d 45 cc             	lea    -0x34(%ebp),%eax
42b501:	50                   	push   %eax
42b502:	56                   	push   %esi
42b503:	e8 9a 00 00 00       	call   0x42b5a2
42b508:	59                   	pop    %ecx
42b509:	59                   	pop    %ecx
42b50a:	84 c0                	test   %al,%al
42b50c:	74 32                	je     0x42b540
42b50e:	8d 45 d8             	lea    -0x28(%ebp),%eax
42b511:	50                   	push   %eax
42b512:	56                   	push   %esi
42b513:	e8 ba 01 00 00       	call   0x42b6d2
42b518:	59                   	pop    %ecx
42b519:	59                   	pop    %ecx
42b51a:	84 c0                	test   %al,%al
42b51c:	75 20                	jne    0x42b53e
42b51e:	8d 45 d8             	lea    -0x28(%ebp),%eax
42b521:	50                   	push   %eax
42b522:	56                   	push   %esi
42b523:	e8 ec 00 00 00       	call   0x42b614
42b528:	59                   	pop    %ecx
42b529:	59                   	pop    %ecx
42b52a:	84 c0                	test   %al,%al
42b52c:	75 10                	jne    0x42b53e
42b52e:	8d 45 d8             	lea    -0x28(%ebp),%eax
42b531:	50                   	push   %eax
42b532:	56                   	push   %esi
42b533:	e8 2b 00 00 00       	call   0x42b563
42b538:	59                   	pop    %ecx
42b539:	59                   	pop    %ecx
42b53a:	84 c0                	test   %al,%al
42b53c:	74 02                	je     0x42b540
42b53e:	b3 01                	mov    $0x1,%bl
42b540:	8a c3                	mov    %bl,%al
42b542:	eb 10                	jmp    0x42b554
42b544:	8d 45 cc             	lea    -0x34(%ebp),%eax
42b547:	50                   	push   %eax
42b548:	56                   	push   %esi
42b549:	e8 54 00 00 00       	call   0x42b5a2
42b54e:	59                   	pop    %ecx
42b54f:	59                   	pop    %ecx
42b550:	eb 02                	jmp    0x42b554
42b552:	32 c0                	xor    %al,%al
42b554:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42b557:	5f                   	pop    %edi
42b558:	5e                   	pop    %esi
42b559:	33 cd                	xor    %ebp,%ecx
42b55b:	5b                   	pop    %ebx
42b55c:	e8 6f 03 ff ff       	call   0x41b8d0
42b561:	c9                   	leave
42b562:	c3                   	ret
42b563:	8b ff                	mov    %edi,%edi
42b565:	55                   	push   %ebp
42b566:	8b ec                	mov    %esp,%ebp
42b568:	8b 45 0c             	mov    0xc(%ebp),%eax
42b56b:	83 78 08 02          	cmpl   $0x2,0x8(%eax)
42b56f:	74 04                	je     0x42b575
42b571:	32 c0                	xor    %al,%al
42b573:	5d                   	pop    %ebp
42b574:	c3                   	ret
42b575:	ff 70 04             	push   0x4(%eax)
42b578:	ff 30                	push   (%eax)
42b57a:	8b 45 08             	mov    0x8(%ebp),%eax
42b57d:	05 00 01 00 00       	add    $0x100,%eax
42b582:	6a 10                	push   $0x10
42b584:	50                   	push   %eax
42b585:	e8 1e c8 ff ff       	call   0x427da8
42b58a:	83 c4 10             	add    $0x10,%esp
42b58d:	85 c0                	test   %eax,%eax
42b58f:	75 04                	jne    0x42b595
42b591:	b0 01                	mov    $0x1,%al
42b593:	5d                   	pop    %ebp
42b594:	c3                   	ret
42b595:	33 c0                	xor    %eax,%eax
42b597:	50                   	push   %eax
42b598:	50                   	push   %eax
42b599:	50                   	push   %eax
42b59a:	50                   	push   %eax
42b59b:	50                   	push   %eax
42b59c:	e8 fb 54 ff ff       	call   0x420a9c
42b5a1:	cc                   	int3
42b5a2:	8b ff                	mov    %edi,%edi
42b5a4:	55                   	push   %ebp
42b5a5:	8b ec                	mov    %esp,%ebp
42b5a7:	53                   	push   %ebx
42b5a8:	56                   	push   %esi
42b5a9:	8b 75 0c             	mov    0xc(%ebp),%esi
42b5ac:	33 db                	xor    %ebx,%ebx
42b5ae:	39 5e 08             	cmp    %ebx,0x8(%esi)
42b5b1:	75 50                	jne    0x42b603
42b5b3:	8b 4e 04             	mov    0x4(%esi),%ecx
42b5b6:	8d 41 fe             	lea    -0x2(%ecx),%eax
42b5b9:	83 f8 01             	cmp    $0x1,%eax
42b5bc:	77 45                	ja     0x42b603
42b5be:	51                   	push   %ecx
42b5bf:	ff 36                	push   (%esi)
42b5c1:	e8 7c 01 00 00       	call   0x42b742
42b5c6:	59                   	pop    %ecx
42b5c7:	59                   	pop    %ecx
42b5c8:	84 c0                	test   %al,%al
42b5ca:	74 37                	je     0x42b603
42b5cc:	57                   	push   %edi
42b5cd:	ff 76 04             	push   0x4(%esi)
42b5d0:	8b 7d 08             	mov    0x8(%ebp),%edi
42b5d3:	ff 36                	push   (%esi)
42b5d5:	6a 40                	push   $0x40
42b5d7:	57                   	push   %edi
42b5d8:	e8 cb c7 ff ff       	call   0x427da8
42b5dd:	83 c4 10             	add    $0x10,%esp
42b5e0:	85 c0                	test   %eax,%eax
42b5e2:	75 25                	jne    0x42b609
42b5e4:	ff 76 04             	push   0x4(%esi)
42b5e7:	8d 8f 20 01 00 00    	lea    0x120(%edi),%ecx
42b5ed:	ff 36                	push   (%esi)
42b5ef:	6a 55                	push   $0x55
42b5f1:	51                   	push   %ecx
42b5f2:	e8 b1 c7 ff ff       	call   0x427da8
42b5f7:	83 c4 10             	add    $0x10,%esp
42b5fa:	5f                   	pop    %edi
42b5fb:	85 c0                	test   %eax,%eax
42b5fd:	75 0a                	jne    0x42b609
42b5ff:	b0 01                	mov    $0x1,%al
42b601:	eb 02                	jmp    0x42b605
42b603:	32 c0                	xor    %al,%al
42b605:	5e                   	pop    %esi
42b606:	5b                   	pop    %ebx
42b607:	5d                   	pop    %ebp
42b608:	c3                   	ret
42b609:	53                   	push   %ebx
42b60a:	53                   	push   %ebx
42b60b:	53                   	push   %ebx
42b60c:	53                   	push   %ebx
42b60d:	53                   	push   %ebx
42b60e:	e8 89 54 ff ff       	call   0x420a9c
42b613:	cc                   	int3
42b614:	8b ff                	mov    %edi,%edi
42b616:	55                   	push   %ebp
42b617:	8b ec                	mov    %esp,%ebp
42b619:	51                   	push   %ecx
42b61a:	53                   	push   %ebx
42b61b:	56                   	push   %esi
42b61c:	57                   	push   %edi
42b61d:	8b 7d 0c             	mov    0xc(%ebp),%edi
42b620:	33 db                	xor    %ebx,%ebx
42b622:	39 5f 08             	cmp    %ebx,0x8(%edi)
42b625:	0f 85 95 00 00 00    	jne    0x42b6c0
42b62b:	83 7f 04 02          	cmpl   $0x2,0x4(%edi)
42b62f:	75 0f                	jne    0x42b640
42b631:	6a 02                	push   $0x2
42b633:	ff 37                	push   (%edi)
42b635:	e8 08 01 00 00       	call   0x42b742
42b63a:	59                   	pop    %ecx
42b63b:	59                   	pop    %ecx
42b63c:	84 c0                	test   %al,%al
42b63e:	75 2f                	jne    0x42b66f
42b640:	83 7f 04 03          	cmpl   $0x3,0x4(%edi)
42b644:	75 7a                	jne    0x42b6c0
42b646:	8b 07                	mov    (%edi),%eax
42b648:	89 45 fc             	mov    %eax,-0x4(%ebp)
42b64b:	0f b7 34 58          	movzwl (%eax,%ebx,2),%esi
42b64f:	e8 78 d1 ff ff       	call   0x4287cc
42b654:	6a 04                	push   $0x4