42b146:	3b 45 08             	cmp    0x8(%ebp),%eax
42b149:	75 05                	jne    0x42b150
42b14b:	e8 2c ea ff ff       	call   0x429b7c
42b150:	66 8b 4d 3e          	mov    0x3e(%ebp),%cx
42b154:	b8 01 00 00 00       	mov    $0x1,%eax
42b159:	d3 e0                	shl    %cl,%eax
42b15b:	8b c8                	mov    %eax,%ecx
42b15d:	33 d2                	xor    %edx,%edx
42b15f:	8b 45 14             	mov    0x14(%ebp),%eax
42b162:	e8 11 db ff ff       	call   0x428c78
42b167:	8b f0                	mov    %eax,%esi
42b169:	89 75 10             	mov    %esi,0x10(%ebp)
42b16c:	85 f6                	test   %esi,%esi
42b16e:	75 5f                	jne    0x42b1cf
42b170:	6a 00                	push   $0x0
42b172:	e8 51 bb fd ff       	call   0x406cc8
42b177:	e8 0c d4 ff ff       	call   0x428588
42b17c:	8b f0                	mov    %eax,%esi
42b17e:	80 7d 71 00          	cmpb   $0x0,0x71(%ebp)
42b182:	75 27                	jne    0x42b1ab
42b184:	6a 0c                	push   $0xc
42b186:	56                   	push   %esi
42b187:	e8 b4 b8 fd ff       	call   0x406a40
42b18c:	8b d8                	mov    %eax,%ebx
42b18e:	6a 0e                	push   $0xe
42b190:	56                   	push   %esi
42b191:	e8 aa b8 fd ff       	call   0x406a40
42b196:	0f af d8             	imul   %eax,%ebx
42b199:	0f b7 45 2a          	movzwl 0x2a(%ebp),%eax
42b19d:	0f b7 55 28          	movzwl 0x28(%ebp),%edx
42b1a1:	f7 ea                	imul   %edx
42b1a3:	3b d8                	cmp    %eax,%ebx
42b1a5:	7c 04                	jl     0x42b1ab
42b1a7:	33 db                	xor    %ebx,%ebx
42b1a9:	eb 02                	jmp    0x42b1ad
42b1ab:	b3 01                	mov    $0x1,%bl
42b1ad:	88 5d 71             	mov    %bl,0x71(%ebp)
42b1b0:	84 db                	test   %bl,%bl
42b1b2:	74 09                	je     0x42b1bd
42b1b4:	56                   	push   %esi
42b1b5:	e8 16 b8 fd ff       	call   0x4069d0
42b1ba:	89 45 10             	mov    %eax,0x10(%ebp)
42b1bd:	56                   	push   %esi
42b1be:	6a 00                	push   $0x0
42b1c0:	e8 53 bd fd ff       	call   0x406f18
42b1c5:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
42b1c9:	75 04                	jne    0x42b1cf
42b1cb:	c6 47 30 01          	movb   $0x1,0x30(%edi)
42b1cf:	5d                   	pop    %ebp
42b1d0:	5f                   	pop    %edi
42b1d1:	5e                   	pop    %esi
42b1d2:	5b                   	pop    %ebx
42b1d3:	c3                   	ret
42b1d4:	55                   	push   %ebp
42b1d5:	8b ec                	mov    %esp,%ebp
42b1d7:	83 c4 ac             	add    $0xffffffac,%esp
42b1da:	53                   	push   %ebx
42b1db:	56                   	push   %esi
42b1dc:	8b d9                	mov    %ecx,%ebx
42b1de:	8b f0                	mov    %eax,%esi
42b1e0:	66 83 fa 02          	cmp    $0x2,%dx
42b1e4:	75 04                	jne    0x42b1ea
42b1e6:	85 db                	test   %ebx,%ebx
42b1e8:	75 0a                	jne    0x42b1f4
42b1ea:	a1 24 b3 49 00       	mov    0x49b324,%eax
42b1ef:	e8 68 d2 ff ff       	call   0x42845c
42b1f4:	8b c6                	mov    %esi,%eax
42b1f6:	e8 11 fe ff ff       	call   0x42b00c
42b1fb:	8d 45 ac             	lea    -0x54(%ebp),%eax
42b1fe:	33 c9                	xor    %ecx,%ecx
42b200:	ba 54 00 00 00       	mov    $0x54,%edx
42b205:	e8 62 7b fd ff       	call   0x402d6c
42b20a:	8d 45 ac             	lea    -0x54(%ebp),%eax
42b20d:	50                   	push   %eax
42b20e:	6a 54                	push   $0x54
42b210:	53                   	push   %ebx
42b211:	e8 32 b8 fd ff       	call   0x406a48
42b216:	83 7d c0 00          	cmpl   $0x0,-0x40(%ebp)
42b21a:	75 05                	jne    0x42b221
42b21c:	33 c0                	xor    %eax,%eax
42b21e:	89 45 c4             	mov    %eax,-0x3c(%ebp)
42b221:	8d 45 ac             	lea    -0x54(%ebp),%eax
42b224:	50                   	push   %eax
42b225:	8b 4d 08             	mov    0x8(%ebp),%ecx
42b228:	8b d3                	mov    %ebx,%edx
42b22a:	8b c6                	mov    %esi,%eax
42b22c:	e8 f7 f7 ff ff       	call   0x42aa28
42b231:	8b 46 28             	mov    0x28(%esi),%eax
42b234:	c6 40 70 00          	movb   $0x0,0x70(%eax)
42b238:	8b c6                	mov    %esi,%eax
42b23a:	8b 10                	mov    (%eax),%edx
42b23c:	ff 52 24             	call   *0x24(%edx)
42b23f:	85 c0                	test   %eax,%eax
42b241:	0f 95 c0             	setne  %al
42b244:	88 46 22             	mov    %al,0x22(%esi)
42b247:	8b d6                	mov    %esi,%edx
42b249:	8b c6                	mov    %esi,%eax
42b24b:	8b 08                	mov    (%eax),%ecx
42b24d:	ff 51 10             	call   *0x10(%ecx)
42b250:	5e                   	pop    %esi
42b251:	5b                   	pop    %ebx
42b252:	8b e5                	mov    %ebp,%esp
42b254:	5d                   	pop    %ebp
42b255:	c2 04 00             	ret    $0x4
42b258:	53                   	push   %ebx
42b259:	56                   	push   %esi
42b25a:	8b da                	mov    %edx,%ebx
42b25c:	8b f0                	mov    %eax,%esi
42b25e:	8b c3                	mov    %ebx,%eax
42b260:	8b 10                	mov    (%eax),%edx
42b262:	ff 12                	call   *(%edx)
42b264:	50                   	push   %eax
42b265:	8b c3                	mov    %ebx,%eax
42b267:	e8 e0 31 ff ff       	call   0x41e44c
42b26c:	59                   	pop    %ecx
42b26d:	2b c8                	sub    %eax,%ecx
42b26f:	8b d3                	mov    %ebx,%edx
42b271:	8b c6                	mov    %esi,%eax
42b273:	e8 94 06 00 00       	call   0x42b90c
42b278:	5e                   	pop    %esi
42b279:	5b                   	pop    %ebx
42b27a:	c3                   	ret
42b27b:	90                   	nop
42b27c:	55                   	push   %ebp
42b27d:	8b ec                	mov    %esp,%ebp
42b27f:	83 c4 f8             	add    $0xfffffff8,%esp
42b282:	53                   	push   %ebx
42b283:	56                   	push   %esi
42b284:	57                   	push   %edi
42b285:	8b f1                	mov    %ecx,%esi
42b287:	8b da                	mov    %edx,%ebx
42b289:	89 45 fc             	mov    %eax,-0x4(%ebp)
42b28c:	b2 01                	mov    $0x1,%dl
42b28e:	a1 38 63 42 00       	mov    0x426338,%eax
42b293:	e8 24 81 fd ff       	call   0x4033bc
42b298:	89 45 f8             	mov    %eax,-0x8(%ebp)
42b29b:	33 c0                	xor    %eax,%eax
42b29d:	55                   	push   %ebp
42b29e:	68 03 b3 42 00       	push   $0x42b303
42b2a3:	64 ff 30             	push   %fs:(%eax)
42b2a6:	64 89 20             	mov    %esp,%fs:(%eax)
42b2a9:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b2ac:	89 58 08             	mov    %ebx,0x8(%eax)
42b2af:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b2b2:	89 70 10             	mov    %esi,0x10(%eax)
42b2b5:	8b 45 10             	mov    0x10(%ebp),%eax
42b2b8:	8b 55 f8             	mov    -0x8(%ebp),%edx
42b2bb:	8b f0                	mov    %eax,%esi
42b2bd:	8d 7a 18             	lea    0x18(%edx),%edi
42b2c0:	b9 15 00 00 00       	mov    $0x15,%ecx
42b2c5:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
42b2c7:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b2ca:	8a 55 0c             	mov    0xc(%ebp),%dl
42b2cd:	88 50 70             	mov    %dl,0x70(%eax)
42b2d0:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b2d3:	83 78 2c 00          	cmpl   $0x0,0x2c(%eax)
42b2d7:	74 0c                	je     0x42b2e5
42b2d9:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b2dc:	8b 40 08             	mov    0x8(%eax),%eax
42b2df:	8b 55 f8             	mov    -0x8(%ebp),%edx
42b2e2:	89 42 14             	mov    %eax,0x14(%edx)
42b2e5:	8b 45 08             	mov    0x8(%ebp),%eax
42b2e8:	8b 15 10 9f 41 00    	mov    0x419f10,%edx
42b2ee:	e8 a9 82 fd ff       	call   0x40359c
42b2f3:	8b 55 f8             	mov    -0x8(%ebp),%edx
42b2f6:	89 42 6c             	mov    %eax,0x6c(%edx)
42b2f9:	33 c0                	xor    %eax,%eax
42b2fb:	5a                   	pop    %edx
42b2fc:	59                   	pop    %ecx
42b2fd:	59                   	pop    %ecx
42b2fe:	64 89 10             	mov    %edx,%fs:(%eax)
42b301:	eb 17                	jmp    0x42b31a
42b303:	e9 ac 85 fd ff       	jmp    0x4038b4
42b308:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b30b:	e8 dc 80 fd ff       	call   0x4033ec
42b310:	e8 b3 88 fd ff       	call   0x403bc8
42b315:	e8 02 89 fd ff       	call   0x403c1c
42b31a:	68 ac c8 49 00       	push   $0x49c8ac
42b31f:	e8 0c b4 fd ff       	call   0x406730
42b324:	33 d2                	xor    %edx,%edx
42b326:	55                   	push   %ebp
42b327:	68 63 b3 42 00       	push   $0x42b363
42b32c:	64 ff 32             	push   %fs:(%edx)
42b32f:	64 89 22             	mov    %esp,%fs:(%edx)
42b332:	8b 45 fc             	mov    -0x4(%ebp),%eax
42b335:	8b 40 28             	mov    0x28(%eax),%eax
42b338:	e8 b3 ea ff ff       	call   0x429df0
42b33d:	8b 55 fc             	mov    -0x4(%ebp),%edx
42b340:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b343:	89 42 28             	mov    %eax,0x28(%edx)
42b346:	e8 a1 ea ff ff       	call   0x429dec
42b34b:	33 c0                	xor    %eax,%eax
42b34d:	5a                   	pop    %edx
42b34e:	59                   	pop    %ecx
42b34f:	59                   	pop    %ecx
42b350:	64 89 10             	mov    %edx,%fs:(%eax)
42b353:	68 6a b3 42 00       	push   $0x42b36a
42b358:	68 ac c8 49 00       	push   $0x49c8ac
42b35d:	e8 4e b5 fd ff       	call   0x4068b0
42b362:	c3                   	ret
42b363:	e9 00 88 fd ff       	jmp    0x403b68
42b368:	eb ee                	jmp    0x42b358
42b36a:	8b 45 fc             	mov    -0x4(%ebp),%eax
42b36d:	c6 40 32 00          	movb   $0x0,0x32(%eax)
42b371:	5f                   	pop    %edi
42b372:	5e                   	pop    %esi
42b373:	5b                   	pop    %ebx
42b374:	59                   	pop    %ecx
42b375:	59                   	pop    %ecx
42b376:	5d                   	pop    %ebp
42b377:	c2 0c 00             	ret    $0xc
42b37a:	8b c0                	mov    %eax,%eax
42b37c:	53                   	push   %ebx
42b37d:	56                   	push   %esi
42b37e:	57                   	push   %edi
42b37f:	51                   	push   %ecx
42b380:	8b f2                	mov    %edx,%esi
42b382:	8b d8                	mov    %eax,%ebx
42b384:	8b d4                	mov    %esp,%edx
42b386:	b9 04 00 00 00       	mov    $0x4,%ecx
42b38b:	8b c6                	mov    %esi,%eax
42b38d:	8b 38                	mov    (%eax),%edi
42b38f:	ff 57 0c             	call   *0xc(%edi)
42b392:	8b 0c 24             	mov    (%esp),%ecx
42b395:	8b d6                	mov    %esi,%edx
42b397:	8b c3                	mov    %ebx,%eax
42b399:	e8 6e 05 00 00       	call   0x42b90c
42b39e:	5a                   	pop    %edx
42b39f:	5f                   	pop    %edi
42b3a0:	5e                   	pop    %esi
42b3a1:	5b                   	pop    %ebx
42b3a2:	c3                   	ret
42b3a3:	90                   	nop
42b3a4:	55                   	push   %ebp
42b3a5:	8b ec                	mov    %esp,%ebp
42b3a7:	81 c4 54 ff ff ff    	add    $0xffffff54,%esp
42b3ad:	53                   	push   %ebx
42b3ae:	56                   	push   %esi
42b3af:	57                   	push   %edi
42b3b0:	8b f1                	mov    %ecx,%esi
42b3b2:	89 55 f8             	mov    %edx,-0x8(%ebp)
42b3b5:	89 45 fc             	mov    %eax,-0x4(%ebp)
42b3b8:	33 c0                	xor    %eax,%eax
42b3ba:	89 45 d0             	mov    %eax,-0x30(%ebp)
42b3bd:	33 c0                	xor    %eax,%eax
42b3bf:	89 45 d8             	mov    %eax,-0x28(%ebp)
42b3c2:	33 c0                	xor    %eax,%eax
42b3c4:	89 45 c8             	mov    %eax,-0x38(%ebp)
42b3c7:	8d 55 e0             	lea    -0x20(%ebp),%edx
42b3ca:	b9 04 00 00 00       	mov    $0x4,%ecx
42b3cf:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b3d2:	8b 18                	mov    (%eax),%ebx
42b3d4:	ff 53 0c             	call   *0xc(%ebx)
42b3d7:	83 7d e0 0c          	cmpl   $0xc,-0x20(%ebp)
42b3db:	0f 94 45 df          	sete   -0x21(%ebp)
42b3df:	80 7d df 00          	cmpb   $0x0,-0x21(%ebp)
42b3e3:	74 07                	je     0x42b3ec
42b3e5:	c7 45 e0 28 00 00 00 	movl   $0x28,-0x20(%ebp)
42b3ec:	8b 45 e0             	mov    -0x20(%ebp),%eax
42b3ef:	83 c0 0c             	add    $0xc,%eax
42b3f2:	05 00 04 00 00       	add    $0x400,%eax
42b3f7:	e8 7c 73 fd ff       	call   0x402778
42b3fc:	89 45 e8             	mov    %eax,-0x18(%ebp)
42b3ff:	8b 45 e8             	mov    -0x18(%ebp),%eax
42b402:	89 45 c4             	mov    %eax,-0x3c(%ebp)
42b405:	33 d2                	xor    %edx,%edx
42b407:	55                   	push   %ebp
42b408:	68 c1 b8 42 00       	push   $0x42b8c1
42b40d:	64 ff 32             	push   %fs:(%edx)
42b410:	64 89 22             	mov    %esp,%fs:(%edx)
42b413:	33 d2                	xor    %edx,%edx
42b415:	55                   	push   %ebp
42b416:	68 94 b8 42 00       	push   $0x42b894
42b41b:	64 ff 32             	push   %fs:(%edx)
42b41e:	64 89 22             	mov    %esp,%fs:(%edx)
42b421:	80 7d df 00          	cmpb   $0x0,-0x21(%ebp)
42b425:	74 4c                	je     0x42b473
42b427:	8d 55 b8             	lea    -0x48(%ebp),%edx
42b42a:	83 c2 04             	add    $0x4,%edx
42b42d:	b9 08 00 00 00       	mov    $0x8,%ecx
42b432:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b435:	8b 18                	mov    (%eax),%ebx
42b437:	ff 53 0c             	call   *0xc(%ebx)
42b43a:	8b 5d c4             	mov    -0x3c(%ebp),%ebx
42b43d:	8b c3                	mov    %ebx,%eax
42b43f:	33 c9                	xor    %ecx,%ecx
42b441:	ba 28 00 00 00       	mov    $0x28,%edx
42b446:	e8 21 79 fd ff       	call   0x402d6c
42b44b:	8b c3                	mov    %ebx,%eax
42b44d:	0f b7 55 bc          	movzwl -0x44(%ebp),%edx
42b451:	89 50 04             	mov    %edx,0x4(%eax)
42b454:	0f b7 55 be          	movzwl -0x42(%ebp),%edx
42b458:	89 50 08             	mov    %edx,0x8(%eax)
42b45b:	66 8b 55 c0          	mov    -0x40(%ebp),%dx
42b45f:	66 89 50 0c          	mov    %dx,0xc(%eax)
42b463:	66 8b 55 c2          	mov    -0x3e(%ebp),%dx
42b467:	66 89 50 0e          	mov    %dx,0xe(%eax)
42b46b:	83 ee 0c             	sub    $0xc,%esi
42b46e:	e9 cd 00 00 00       	jmp    0x42b540
42b473:	8b 4d e0             	mov    -0x20(%ebp),%ecx
42b476:	83 e9 04             	sub    $0x4,%ecx
42b479:	8b 55 e8             	mov    -0x18(%ebp),%edx
42b47c:	83 c2 04             	add    $0x4,%edx
42b47f:	8b 45 f8             	mov    -0x8(%ebp),%eax
42b482:	8b 18                	mov    (%eax),%ebx
42b484:	ff 53 0c             	call   *0xc(%ebx)
42b487:	2b 75 e0             	sub    -0x20(%ebp),%esi
42b48a:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42b48d:	8b 40 10             	mov    0x10(%eax),%eax
42b490:	83 f8 03             	cmp    $0x3,%eax
42b493:	0f 84 a7 00 00 00    	je     0x42b540
42b499:	85 c0                	test   %eax,%eax
42b49b:	0f 84 9f 00 00 00    	je     0x42b540
42b4a1:	b2 01                	mov    $0x1,%dl
42b4a3:	a1 10 9f 41 00       	mov    0x419f10,%eax
42b4a8:	e8 0f 7f fd ff       	call   0x4033bc
42b4ad:	89 45 c8             	mov    %eax,-0x38(%ebp)
42b4b0:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
42b4b4:	75 2f                	jne    0x42b4e5
42b4b6:	8d 85 56 ff ff ff    	lea    -0xaa(%ebp),%eax
42b4bc:	33 c9                	xor    %ecx,%ecx
42b4be:	ba 0e 00 00 00       	mov    $0xe,%edx
42b4c3:	e8 a4 78 fd ff       	call   0x402d6c
42b4c8:	66 c7 85 56 ff ff ff 	movw   $0x4d42,-0xaa(%ebp)
42b4cf:	42 4d
42b4d1:	8b 45 e0             	mov    -0x20(%ebp),%eax
42b4d4:	03 c6                	add    %esi,%eax
42b4d6:	89 85 58 ff ff ff    	mov    %eax,-0xa8(%ebp)
42b4dc:	8d 85 56 ff ff ff    	lea    -0xaa(%ebp),%eax
42b4e2:	89 45 08             	mov    %eax,0x8(%ebp)
42b4e5:	8b 55 08             	mov    0x8(%ebp),%edx
42b4e8:	b9 0e 00 00 00       	mov    $0xe,%ecx
42b4ed:	8b 45 c8             	mov    -0x38(%ebp),%eax
42b4f0:	8b 18                	mov    (%eax),%ebx
42b4f2:	ff 53 10             	call   *0x10(%ebx)
42b4f5:	8d 55 e0             	lea    -0x20(%ebp),%edx
42b4f8:	b9 04 00 00 00       	mov    $0x4,%ecx
42b4fd:	8b 45 c8             	mov    -0x38(%ebp),%eax
42b500:	8b 18                	mov    (%eax),%ebx
42b502:	ff 53 10             	call   *0x10(%ebx)
42b505:	8b 4d e0             	mov    -0x20(%ebp),%ecx
42b508:	83 e9 04             	sub    $0x4,%ecx
42b50b:	8b 55 e8             	mov    -0x18(%ebp),%edx
42b50e:	83 c2 04             	add    $0x4,%edx
42b511:	8b 45 c8             	mov    -0x38(%ebp),%eax
42b514:	8b 18                	mov    (%eax),%ebx
42b516:	ff 53 10             	call   *0x10(%ebx)
42b519:	8b c6                	mov    %esi,%eax
42b51b:	33 d2                	xor    %edx,%edx
42b51d:	52                   	push   %edx