46f047:	51                   	push   %ecx
46f048:	68 bc 33 41 00       	push   $0x4133bc
46f04d:	50                   	push   %eax
46f04e:	8b 0e                	mov    (%esi),%ecx
46f050:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f056:	ff 16                	call   *(%esi)
46f058:	8b f8                	mov    %eax,%edi
46f05a:	85 ff                	test   %edi,%edi
46f05c:	0f 88 93 00 00 00    	js     0x46f0f5
46f062:	ff b5 88 fd ff ff    	push   -0x278(%ebp)
46f068:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46f06e:	8d 85 74 fd ff ff    	lea    -0x28c(%ebp),%eax
46f074:	50                   	push   %eax
46f075:	56                   	push   %esi
46f076:	ff 15 24 7c 4a 00    	call   *0x4a7c24
46f07c:	8b f8                	mov    %eax,%edi
46f07e:	85 ff                	test   %edi,%edi
46f080:	78 40                	js     0x46f0c2
46f082:	c6 45 fc 0f          	movb   $0xf,-0x4(%ebp)
46f086:	8b 85 88 fd ff ff    	mov    -0x278(%ebp),%eax
46f08c:	85 c0                	test   %eax,%eax
46f08e:	74 16                	je     0x46f0a6
46f090:	8b 08                	mov    (%eax),%ecx
46f092:	50                   	push   %eax
46f093:	8b 71 08             	mov    0x8(%ecx),%esi
46f096:	8b ce                	mov    %esi,%ecx
46f098:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f09e:	ff d6                	call   *%esi
46f0a0:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46f0a6:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
46f0aa:	8b 8d 84 fd ff ff    	mov    -0x27c(%ebp),%ecx
46f0b0:	41                   	inc    %ecx
46f0b1:	ff 85 74 fd ff ff    	incl   -0x28c(%ebp)
46f0b7:	89 8d 84 fd ff ff    	mov    %ecx,-0x27c(%ebp)
46f0bd:	e9 35 fe ff ff       	jmp    0x46eef7
46f0c2:	8b 9d 78 fd ff ff    	mov    -0x288(%ebp),%ebx
46f0c8:	85 db                	test   %ebx,%ebx
46f0ca:	74 19                	je     0x46f0e5
46f0cc:	8b 03                	mov    (%ebx),%eax
46f0ce:	6a 01                	push   $0x1
46f0d0:	8b 70 04             	mov    0x4(%eax),%esi
46f0d3:	8b ce                	mov    %esi,%ecx
46f0d5:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f0db:	8b cb                	mov    %ebx,%ecx
46f0dd:	ff d6                	call   *%esi
46f0df:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46f0e5:	c6 45 fc 0e          	movb   $0xe,-0x4(%ebp)
46f0e9:	8b 85 88 fd ff ff    	mov    -0x278(%ebp),%eax
46f0ef:	85 c0                	test   %eax,%eax
46f0f1:	74 43                	je     0x46f136
46f0f3:	eb 2b                	jmp    0x46f120
46f0f5:	8b 9d 78 fd ff ff    	mov    -0x288(%ebp),%ebx
46f0fb:	85 db                	test   %ebx,%ebx
46f0fd:	74 13                	je     0x46f112
46f0ff:	8b 03                	mov    (%ebx),%eax
46f101:	6a 01                	push   $0x1
46f103:	8b 70 04             	mov    0x4(%eax),%esi
46f106:	8b ce                	mov    %esi,%ecx
46f108:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f10e:	8b cb                	mov    %ebx,%ecx
46f110:	ff d6                	call   *%esi
46f112:	c6 45 fc 0d          	movb   $0xd,-0x4(%ebp)
46f116:	8b 85 88 fd ff ff    	mov    -0x278(%ebp),%eax
46f11c:	85 c0                	test   %eax,%eax
46f11e:	74 10                	je     0x46f130
46f120:	8b 08                	mov    (%eax),%ecx
46f122:	50                   	push   %eax
46f123:	8b 71 08             	mov    0x8(%ecx),%esi
46f126:	8b ce                	mov    %esi,%ecx
46f128:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f12e:	ff d6                	call   *%esi
46f130:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46f136:	85 ff                	test   %edi,%edi
46f138:	78 31                	js     0x46f16b
46f13a:	b8 00 02 00 00       	mov    $0x200,%eax
46f13f:	66 85 46 02          	test   %ax,0x2(%esi)
46f143:	74 21                	je     0x46f166
46f145:	8b 9d 7c fd ff ff    	mov    -0x284(%ebp),%ebx
46f14b:	8d 43 08             	lea    0x8(%ebx),%eax
46f14e:	50                   	push   %eax
46f14f:	56                   	push   %esi
46f150:	ff 15 2c 7c 4a 00    	call   *0x4a7c2c
46f156:	8b f8                	mov    %eax,%edi
46f158:	85 ff                	test   %edi,%edi
46f15a:	78 0f                	js     0x46f16b
46f15c:	b8 0d 20 00 00       	mov    $0x200d,%eax
46f161:	66 89 03             	mov    %ax,(%ebx)
46f164:	eb 05                	jmp    0x46f16b
46f166:	bf 57 00 07 80       	mov    $0x80070057,%edi
46f16b:	56                   	push   %esi
46f16c:	ff 15 28 7c 4a 00    	call   *0x4a7c28
46f172:	eb 05                	jmp    0x46f179
46f174:	bf 05 40 00 80       	mov    $0x80004005,%edi
46f179:	8d 8d 60 fd ff ff    	lea    -0x2a0(%ebp),%ecx
46f17f:	e8 45 3e fe ff       	call   0x452fc9
46f184:	eb 05                	jmp    0x46f18b
46f186:	bf 05 40 00 80       	mov    $0x80004005,%edi
46f18b:	8b c7                	mov    %edi,%eax
46f18d:	e8 32 13 02 00       	call   0x4904c4
46f192:	c2 14 00             	ret    $0x14
46f195:	83 c1 34             	add    $0x34,%ecx
46f198:	ff 25 1c 74 4a 00    	jmp    *0x4a741c
46f19e:	cc                   	int3
46f19f:	cc                   	int3
46f1a0:	6a 14                	push   $0x14
46f1a2:	b8 08 59 49 00       	mov    $0x495908,%eax
46f1a7:	e8 90 13 02 00       	call   0x49053c
46f1ac:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
46f1b0:	8b 5d 08             	mov    0x8(%ebp),%ebx
46f1b3:	0f 85 b7 00 00 00    	jne    0x46f270
46f1b9:	8b 7b 14             	mov    0x14(%ebx),%edi
46f1bc:	8b 07                	mov    (%edi),%eax
46f1be:	8b 70 10             	mov    0x10(%eax),%esi
46f1c1:	8b ce                	mov    %esi,%ecx
46f1c3:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f1c9:	8b cf                	mov    %edi,%ecx
46f1cb:	ff d6                	call   *%esi
46f1cd:	89 45 ec             	mov    %eax,-0x14(%ebp)
46f1d0:	85 c0                	test   %eax,%eax
46f1d2:	0f 84 98 00 00 00    	je     0x46f270
46f1d8:	8b 7b 10             	mov    0x10(%ebx),%edi
46f1db:	8b 0f                	mov    (%edi),%ecx
46f1dd:	8b 71 10             	mov    0x10(%ecx),%esi
46f1e0:	8b ce                	mov    %esi,%ecx
46f1e2:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f1e8:	8b cf                	mov    %edi,%ecx
46f1ea:	ff d6                	call   *%esi
46f1ec:	39 45 0c             	cmp    %eax,0xc(%ebp)
46f1ef:	75 36                	jne    0x46f227
46f1f1:	8b 55 14             	mov    0x14(%ebp),%edx
46f1f4:	85 d2                	test   %edx,%edx
46f1f6:	74 78                	je     0x46f270
46f1f8:	83 7a 10 13          	cmpl   $0x13,0x10(%edx)
46f1fc:	75 72                	jne    0x46f270
46f1fe:	33 f6                	xor    %esi,%esi
46f200:	bf 90 f6 40 00       	mov    $0x40f690,%edi
46f205:	8b ce                	mov    %esi,%ecx
46f207:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46f20a:	3b 04 8f             	cmp    (%edi,%ecx,4),%eax
46f20d:	75 61                	jne    0x46f270
46f20f:	41                   	inc    %ecx
46f210:	83 f9 04             	cmp    $0x4,%ecx
46f213:	75 f2                	jne    0x46f207
46f215:	56                   	push   %esi
46f216:	ff 75 18             	push   0x18(%ebp)
46f219:	ff 15 58 7c 4a 00    	call   *0x4a7c58
46f21f:	8d b8 10 e1 00 00    	lea    0xe110(%eax),%edi
46f225:	eb 10                	jmp    0x46f237
46f227:	ff 75 0c             	push   0xc(%ebp)
46f22a:	8d 4b e0             	lea    -0x20(%ebx),%ecx
46f22d:	e8 c7 f6 ff ff       	call   0x46e8f9
46f232:	0f b7 f8             	movzwl %ax,%edi
46f235:	33 f6                	xor    %esi,%esi
46f237:	85 ff                	test   %edi,%edi
46f239:	74 35                	je     0x46f270
46f23b:	8d 4d e0             	lea    -0x20(%ebp),%ecx
46f23e:	ff 15 38 74 4a 00    	call   *0x4a7438
46f244:	8b 5d ec             	mov    -0x14(%ebp),%ebx
46f247:	89 75 fc             	mov    %esi,-0x4(%ebp)
46f24a:	56                   	push   %esi
46f24b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
46f24f:	8b 03                	mov    (%ebx),%eax
46f251:	56                   	push   %esi
46f252:	56                   	push   %esi
46f253:	57                   	push   %edi
46f254:	8b 70 14             	mov    0x14(%eax),%esi
46f257:	8b ce                	mov    %esi,%ecx
46f259:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f25f:	8b cb                	mov    %ebx,%ecx
46f261:	ff d6                	call   *%esi
46f263:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
46f26a:	ff 15 3c 74 4a 00    	call   *0x4a743c
46f270:	33 c0                	xor    %eax,%eax
46f272:	e8 2a 12 02 00       	call   0x4904a1
46f277:	c2 18 00             	ret    $0x18
46f27a:	8b 7d e8             	mov    -0x18(%ebp),%edi
46f27d:	8b cf                	mov    %edi,%ecx
46f27f:	ff 35 80 73 4a 00    	push   0x4a7380
46f285:	89 7d e4             	mov    %edi,-0x1c(%ebp)
46f288:	ff 15 d4 76 4a 00    	call   *0x4a76d4
46f28e:	85 c0                	test   %eax,%eax
46f290:	74 0c                	je     0x46f29e
46f292:	68 09 f1 00 00       	push   $0xf109
46f297:	68 30 10 00 00       	push   $0x1030
46f29c:	eb 19                	jmp    0x46f2b7
46f29e:	ff 35 84 73 4a 00    	push   0x4a7384
46f2a4:	8b cf                	mov    %edi,%ecx
46f2a6:	ff 15 d4 76 4a 00    	call   *0x4a76d4
46f2ac:	85 c0                	test   %eax,%eax
46f2ae:	75 18                	jne    0x46f2c8
46f2b0:	68 09 f1 00 00       	push   $0xf109
46f2b5:	6a 10                	push   $0x10
46f2b7:	8b 07                	mov    (%edi),%eax
46f2b9:	8b 70 18             	mov    0x18(%eax),%esi
46f2bc:	8b ce                	mov    %esi,%ecx
46f2be:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f2c4:	8b cf                	mov    %edi,%ecx
46f2c6:	ff d6                	call   *%esi
46f2c8:	b8 63 f2 46 00       	mov    $0x46f263,%eax
46f2cd:	c3                   	ret
46f2ce:	cc                   	int3
46f2cf:	cc                   	int3
46f2d0:	a1 88 73 4a 00       	mov    0x4a7388,%eax
46f2d5:	c3                   	ret
46f2d6:	cc                   	int3
46f2d7:	cc                   	int3
46f2d8:	cc                   	int3
46f2d9:	cc                   	int3
46f2da:	cc                   	int3
46f2db:	cc                   	int3
46f2dc:	cc                   	int3
46f2dd:	cc                   	int3
46f2de:	cc                   	int3
46f2df:	cc                   	int3
46f2e0:	b8 ac 5c 40 00       	mov    $0x405cac,%eax
46f2e5:	c3                   	ret
46f2e6:	cc                   	int3
46f2e7:	cc                   	int3
46f2e8:	cc                   	int3
46f2e9:	cc                   	int3
46f2ea:	cc                   	int3
46f2eb:	cc                   	int3
46f2ec:	cc                   	int3
46f2ed:	cc                   	int3
46f2ee:	cc                   	int3
46f2ef:	cc                   	int3
46f2f0:	8b ff                	mov    %edi,%edi
46f2f2:	55                   	push   %ebp
46f2f3:	8b ec                	mov    %esp,%ebp
46f2f5:	56                   	push   %esi
46f2f6:	8b f1                	mov    %ecx,%esi
46f2f8:	c7 06 c4 5b 40 00    	movl   $0x405bc4,(%esi)
46f2fe:	ff 15 90 73 4a 00    	call   *0x4a7390
46f304:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
46f308:	74 08                	je     0x46f312
46f30a:	56                   	push   %esi
46f30b:	ff 15 10 74 4a 00    	call   *0x4a7410
46f311:	59                   	pop    %ecx
46f312:	8b c6                	mov    %esi,%eax
46f314:	5e                   	pop    %esi
46f315:	5d                   	pop    %ebp
46f316:	c2 04 00             	ret    $0x4
46f319:	c7 01 c4 5b 40 00    	movl   $0x405bc4,(%ecx)
46f31f:	ff 25 90 73 4a 00    	jmp    *0x4a7390
46f325:	cc                   	int3
46f326:	cc                   	int3
46f327:	cc                   	int3
46f328:	cc                   	int3
46f329:	cc                   	int3
46f32a:	cc                   	int3
46f32b:	cc                   	int3
46f32c:	cc                   	int3
46f32d:	cc                   	int3
46f32e:	cc                   	int3
46f32f:	cc                   	int3
46f330:	8b ff                	mov    %edi,%edi
46f332:	55                   	push   %ebp
46f333:	8b ec                	mov    %esp,%ebp
46f335:	53                   	push   %ebx
46f336:	8b 5d 08             	mov    0x8(%ebp),%ebx
46f339:	56                   	push   %esi
46f33a:	57                   	push   %edi
46f33b:	ff 75 10             	push   0x10(%ebp)
46f33e:	8b f9                	mov    %ecx,%edi
46f340:	ff 75 0c             	push   0xc(%ebp)
46f343:	53                   	push   %ebx
46f344:	ff 15 94 73 4a 00    	call   *0x4a7394
46f34a:	8b 7f 7c             	mov    0x7c(%edi),%edi
46f34d:	8b 17                	mov    (%edi),%edx
46f34f:	8b 72 04             	mov    0x4(%edx),%esi
46f352:	8b ce                	mov    %esi,%ecx
46f354:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f35a:	8b cf                	mov    %edi,%ecx
46f35c:	ff d6                	call   *%esi
46f35e:	5f                   	pop    %edi
46f35f:	89 43 04             	mov    %eax,0x4(%ebx)
46f362:	8b c3                	mov    %ebx,%eax
46f364:	5e                   	pop    %esi
46f365:	5b                   	pop    %ebx
46f366:	5d                   	pop    %ebp
46f367:	c2 0c 00             	ret    $0xc
46f36a:	cc                   	int3
46f36b:	cc                   	int3
46f36c:	cc                   	int3
46f36d:	cc                   	int3
46f36e:	cc                   	int3
46f36f:	cc                   	int3
46f370:	8b ff                	mov    %edi,%edi
46f372:	55                   	push   %ebp
46f373:	8b ec                	mov    %esp,%ebp
46f375:	5d                   	pop    %ebp
46f376:	ff 25 18 75 4a 00    	jmp    *0x4a7518
46f37c:	cc                   	int3
46f37d:	cc                   	int3
46f37e:	cc                   	int3
46f37f:	cc                   	int3
46f380:	b8 b8 5b 40 00       	mov    $0x405bb8,%eax
46f385:	c3                   	ret
46f386:	cc                   	int3
46f387:	cc                   	int3
46f388:	cc                   	int3
46f389:	cc                   	int3
46f38a:	cc                   	int3
46f38b:	cc                   	int3
46f38c:	cc                   	int3
46f38d:	cc                   	int3
46f38e:	cc                   	int3
46f38f:	cc                   	int3
46f390:	8b ff                	mov    %edi,%edi
46f392:	55                   	push   %ebp
46f393:	8b ec                	mov    %esp,%ebp
46f395:	8b 4d 08             	mov    0x8(%ebp),%ecx
46f398:	33 c0                	xor    %eax,%eax
46f39a:	40                   	inc    %eax
46f39b:	f0 0f c1 41 d8       	lock xadd %eax,-0x28(%ecx)
46f3a0:	40                   	inc    %eax
46f3a1:	5d                   	pop    %ebp
46f3a2:	c2 04 00             	ret    $0x4
46f3a5:	cc                   	int3
46f3a6:	cc                   	int3
46f3a7:	cc                   	int3
46f3a8:	cc                   	int3
46f3a9:	cc                   	int3
46f3aa:	cc                   	int3
46f3ab:	cc                   	int3
46f3ac:	cc                   	int3
46f3ad:	cc                   	int3
46f3ae:	cc                   	int3
46f3af:	cc                   	int3
46f3b0:	8b ff                	mov    %edi,%edi
46f3b2:	55                   	push   %ebp
46f3b3:	8b ec                	mov    %esp,%ebp
46f3b5:	8b 4d 08             	mov    0x8(%ebp),%ecx
46f3b8:	8d 49 d4             	lea    -0x2c(%ecx),%ecx
46f3bb:	ff 15 74 73 4a 00    	call   *0x4a7374
46f3c1:	5d                   	pop    %ebp
46f3c2:	c2 04 00             	ret    $0x4
46f3c5:	cc                   	int3
46f3c6:	cc                   	int3
46f3c7:	cc                   	int3
46f3c8:	cc                   	int3
46f3c9:	cc                   	int3
46f3ca:	cc                   	int3
46f3cb:	cc                   	int3
46f3cc:	cc                   	int3
46f3cd:	cc                   	int3
46f3ce:	cc                   	int3
46f3cf:	cc                   	int3
46f3d0:	8b ff                	mov    %edi,%edi
46f3d2:	55                   	push   %ebp