00401000 <.text>:
401000:	a1 84 b0 44 00       	mov    0x44b084,%eax
401005:	a3 48 b6 46 00       	mov    %eax,0x46b648
40100a:	c3                   	ret
40100b:	a1 80 b0 44 00       	mov    0x44b080,%eax
401010:	a3 50 b6 46 00       	mov    %eax,0x46b650
401015:	c3                   	ret
401016:	a1 20 b0 44 00       	mov    0x44b020,%eax
40101b:	a3 68 b6 46 00       	mov    %eax,0x46b668
401020:	c3                   	ret
401021:	a1 7c b0 44 00       	mov    0x44b07c,%eax
401026:	a3 54 b6 46 00       	mov    %eax,0x46b654
40102b:	c3                   	ret
40102c:	a1 78 b0 44 00       	mov    0x44b078,%eax
401031:	a3 58 b6 46 00       	mov    %eax,0x46b658
401036:	c3                   	ret
401037:	a1 04 b0 44 00       	mov    0x44b004,%eax
40103c:	a3 4c b6 46 00       	mov    %eax,0x46b64c
401041:	c3                   	ret
401042:	a1 74 b0 44 00       	mov    0x44b074,%eax
401047:	a3 5c b6 46 00       	mov    %eax,0x46b65c
40104c:	c3                   	ret
40104d:	a1 1c b0 44 00       	mov    0x44b01c,%eax
401052:	a3 60 b6 46 00       	mov    %eax,0x46b660
401057:	c3                   	ret
401058:	a1 70 b0 44 00       	mov    0x44b070,%eax
40105d:	a3 64 b6 46 00       	mov    %eax,0x46b664
401062:	c3                   	ret
401063:	a1 44 b3 44 00       	mov    0x44b344,%eax
401068:	a3 ec b6 46 00       	mov    %eax,0x46b6ec
40106d:	c3                   	ret
40106e:	cc                   	int3
40106f:	cc                   	int3
401070:	55                   	push   %ebp
401071:	8b ec                	mov    %esp,%ebp
401073:	83 ec 30             	sub    $0x30,%esp
401076:	a1 08 a0 46 00       	mov    0x46a008,%eax
40107b:	33 c5                	xor    %ebp,%eax
40107d:	89 45 fc             	mov    %eax,-0x4(%ebp)
401080:	53                   	push   %ebx
401081:	8b 5d 08             	mov    0x8(%ebp),%ebx
401084:	33 c0                	xor    %eax,%eax
401086:	56                   	push   %esi
401087:	57                   	push   %edi
401088:	8b 7d 10             	mov    0x10(%ebp),%edi
40108b:	83 ce ff             	or     $0xffffffff,%esi
40108e:	50                   	push   %eax
40108f:	89 45 d0             	mov    %eax,-0x30(%ebp)
401092:	89 45 d4             	mov    %eax,-0x2c(%ebp)
401095:	8d 45 d4             	lea    -0x2c(%ebp),%eax
401098:	50                   	push   %eax
401099:	c7 45 d8 50 b4 44 00 	movl   $0x44b450,-0x28(%ebp)
4010a0:	c7 45 dc 68 b4 44 00 	movl   $0x44b468,-0x24(%ebp)
4010a7:	c7 45 e0 78 b4 44 00 	movl   $0x44b478,-0x20(%ebp)
4010ae:	c7 45 e4 90 b4 44 00 	movl   $0x44b490,-0x1c(%ebp)
4010b5:	c7 45 e8 a8 b4 44 00 	movl   $0x44b4a8,-0x18(%ebp)
4010bc:	c7 45 ec c0 b4 44 00 	movl   $0x44b4c0,-0x14(%ebp)
4010c3:	c7 45 f0 d8 b4 44 00 	movl   $0x44b4d8,-0x10(%ebp)
4010ca:	c7 45 f4 f0 b4 44 00 	movl   $0x44b4f0,-0xc(%ebp)
4010d1:	c7 45 f8 08 b5 44 00 	movl   $0x44b508,-0x8(%ebp)
4010d8:	e8 fa 22 00 00       	call   0x4033d7
4010dd:	85 c0                	test   %eax,%eax
4010df:	78 1d                	js     0x4010fe
4010e1:	6a 00                	push   $0x0
4010e3:	68 80 00 00 00       	push   $0x80
4010e8:	6a 03                	push   $0x3
4010ea:	6a 00                	push   $0x0
4010ec:	6a 05                	push   $0x5
4010ee:	68 00 00 00 80       	push   $0x80000000
4010f3:	ff 75 d4             	push   -0x2c(%ebp)
4010f6:	ff 15 d8 b0 44 00    	call   *0x44b0d8
4010fc:	8b f0                	mov    %eax,%esi
4010fe:	57                   	push   %edi
4010ff:	e8 17 3f 00 00       	call   0x40501b
401104:	85 c0                	test   %eax,%eax
401106:	74 07                	je     0x40110f
401108:	e8 ee 00 00 00       	call   0x4011fb
40110d:	eb 0b                	jmp    0x40111a
40110f:	6a 09                	push   $0x9
401111:	8d 45 d8             	lea    -0x28(%ebp),%eax
401114:	50                   	push   %eax
401115:	e8 5a 00 00 00       	call   0x401174
40111a:	8d 45 d0             	lea    -0x30(%ebp),%eax
40111d:	50                   	push   %eax
40111e:	ff 75 14             	push   0x14(%ebp)
401121:	57                   	push   %edi
401122:	56                   	push   %esi
401123:	53                   	push   %ebx
401124:	e8 64 3f 00 00       	call   0x40508d
401129:	8b f8                	mov    %eax,%edi
40112b:	83 fe ff             	cmp    $0xffffffff,%esi
40112e:	74 07                	je     0x401137
401130:	56                   	push   %esi
401131:	ff 15 d4 b0 44 00    	call   *0x44b0d4
401137:	83 7d d4 00          	cmpl   $0x0,-0x2c(%ebp)
40113b:	74 08                	je     0x401145
40113d:	ff 75 d4             	push   -0x2c(%ebp)
401140:	e8 aa 43 04 00       	call   0x4454ef
401145:	8b 45 d0             	mov    -0x30(%ebp),%eax
401148:	85 ff                	test   %edi,%edi
40114a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40114d:	0f 48 c7             	cmovs  %edi,%eax
401150:	33 cd                	xor    %ebp,%ecx
401152:	5f                   	pop    %edi
401153:	5e                   	pop    %esi
401154:	5b                   	pop    %ebx
401155:	e8 dc cc 02 00       	call   0x42de36
40115a:	8b e5                	mov    %ebp,%esp
40115c:	5d                   	pop    %ebp
40115d:	c2 10 00             	ret    $0x10
401160:	55                   	push   %ebp
401161:	8b ec                	mov    %esp,%ebp
401163:	8b 45 08             	mov    0x8(%ebp),%eax
401166:	83 c0 fc             	add    $0xfffffffc,%eax
401169:	50                   	push   %eax
40116a:	ff 15 e0 b0 44 00    	call   *0x44b0e0
401170:	5d                   	pop    %ebp
401171:	c2 04 00             	ret    $0x4
401174:	55                   	push   %ebp
401175:	8b ec                	mov    %esp,%ebp
401177:	51                   	push   %ecx
401178:	53                   	push   %ebx
401179:	56                   	push   %esi
40117a:	57                   	push   %edi
40117b:	33 f6                	xor    %esi,%esi
40117d:	56                   	push   %esi
40117e:	56                   	push   %esi
40117f:	6a 01                	push   $0x1
401181:	56                   	push   %esi
401182:	89 75 fc             	mov    %esi,-0x4(%ebp)
401185:	ff 15 e4 b0 44 00    	call   *0x44b0e4
40118b:	68 28 b5 44 00       	push   $0x44b528
401190:	ff 15 ec b0 44 00    	call   *0x44b0ec
401196:	8b d8                	mov    %eax,%ebx
401198:	68 3c b5 44 00       	push   $0x44b53c
40119d:	53                   	push   %ebx
40119e:	ff 15 dc b0 44 00    	call   *0x44b0dc
4011a4:	8b 3d e8 b0 44 00    	mov    0x44b0e8,%edi
4011aa:	85 c0                	test   %eax,%eax
4011ac:	74 0d                	je     0x4011bb
4011ae:	68 00 08 00 00       	push   $0x800
4011b3:	ff d0                	call   *%eax
4011b5:	85 c0                	test   %eax,%eax
4011b7:	75 39                	jne    0x4011f2
4011b9:	ff d7                	call   *%edi
4011bb:	68 58 b5 44 00       	push   $0x44b558
4011c0:	53                   	push   %ebx
4011c1:	ff 15 dc b0 44 00    	call   *0x44b0dc
4011c7:	85 c0                	test   %eax,%eax
4011c9:	74 0b                	je     0x4011d6
4011cb:	68 24 b5 44 00       	push   $0x44b524
4011d0:	ff d0                	call   *%eax
4011d2:	85 c0                	test   %eax,%eax
4011d4:	75 02                	jne    0x4011d8
4011d6:	ff d7                	call   *%edi
4011d8:	39 75 0c             	cmp    %esi,0xc(%ebp)
4011db:	76 15                	jbe    0x4011f2
4011dd:	8b 7d 08             	mov    0x8(%ebp),%edi
4011e0:	8d 45 fc             	lea    -0x4(%ebp),%eax
4011e3:	50                   	push   %eax
4011e4:	ff 34 b7             	push   (%edi,%esi,4)
4011e7:	e8 ea 25 00 00       	call   0x4037d6
4011ec:	46                   	inc    %esi
4011ed:	3b 75 0c             	cmp    0xc(%ebp),%esi
4011f0:	72 ee                	jb     0x4011e0
4011f2:	5f                   	pop    %edi
4011f3:	5e                   	pop    %esi
4011f4:	5b                   	pop    %ebx
4011f5:	8b e5                	mov    %ebp,%esp
4011f7:	5d                   	pop    %ebp
4011f8:	c2 08 00             	ret    $0x8
4011fb:	33 c0                	xor    %eax,%eax
4011fd:	50                   	push   %eax
4011fe:	50                   	push   %eax
4011ff:	6a 01                	push   $0x1
401201:	50                   	push   %eax
401202:	ff 15 e4 b0 44 00    	call   *0x44b0e4
401208:	c3                   	ret
401209:	55                   	push   %ebp
40120a:	8b ec                	mov    %esp,%ebp
40120c:	51                   	push   %ecx
40120d:	51                   	push   %ecx
40120e:	56                   	push   %esi
40120f:	57                   	push   %edi
401210:	33 ff                	xor    %edi,%edi
401212:	8d 45 fc             	lea    -0x4(%ebp),%eax
401215:	57                   	push   %edi
401216:	68 6c b5 44 00       	push   $0x44b56c
40121b:	50                   	push   %eax
40121c:	89 7d fc             	mov    %edi,-0x4(%ebp)
40121f:	89 7d f8             	mov    %edi,-0x8(%ebp)
401222:	e8 cb 0c 00 00       	call   0x401ef2
401227:	8b f0                	mov    %eax,%esi
401229:	85 f6                	test   %esi,%esi
40122b:	78 62                	js     0x40128f
40122d:	57                   	push   %edi
40122e:	ff 75 08             	push   0x8(%ebp)
401231:	8d 45 fc             	lea    -0x4(%ebp),%eax
401234:	50                   	push   %eax
401235:	e8 b8 0c 00 00       	call   0x401ef2
40123a:	8b f0                	mov    %eax,%esi
40123c:	85 f6                	test   %esi,%esi
40123e:	78 4f                	js     0x40128f
401240:	8d 45 f8             	lea    -0x8(%ebp),%eax
401243:	50                   	push   %eax
401244:	ff 75 fc             	push   -0x4(%ebp)
401247:	ff 15 40 b3 44 00    	call   *0x44b340
40124d:	85 c0                	test   %eax,%eax
40124f:	75 2d                	jne    0x40127e
401251:	ff 15 e8 b0 44 00    	call   *0x44b0e8
401257:	0f b7 f0             	movzwl %ax,%esi
40125a:	81 ce 00 00 07 80    	or     $0x80070000,%esi
401260:	85 c0                	test   %eax,%eax
401262:	0f 4e f0             	cmovle %eax,%esi
401265:	b8 05 40 00 80       	mov    $0x80004005,%eax
40126a:	85 f6                	test   %esi,%esi
40126c:	0f 49 f0             	cmovns %eax,%esi
40126f:	56                   	push   %esi
401270:	6a 63                	push   $0x63
401272:	68 80 b5 44 00       	push   $0x44b580
401277:	e8 57 25 00 00       	call   0x4037d3
40127c:	eb 11                	jmp    0x40128f
40127e:	8d 48 04             	lea    0x4(%eax),%ecx
401281:	8b 45 10             	mov    0x10(%ebp),%eax
401284:	89 08                	mov    %ecx,(%eax)
401286:	8b 45 0c             	mov    0xc(%ebp),%eax
401289:	8b 4d f8             	mov    -0x8(%ebp),%ecx
40128c:	49                   	dec    %ecx
40128d:	89 08                	mov    %ecx,(%eax)
40128f:	39 7d fc             	cmp    %edi,-0x4(%ebp)
401292:	74 08                	je     0x40129c
401294:	ff 75 fc             	push   -0x4(%ebp)
401297:	e8 53 42 04 00       	call   0x4454ef
40129c:	5f                   	pop    %edi
40129d:	8b c6                	mov    %esi,%eax
40129f:	5e                   	pop    %esi
4012a0:	8b e5                	mov    %ebp,%esp
4012a2:	5d                   	pop    %ebp
4012a3:	c2 0c 00             	ret    $0xc
4012a6:	55                   	push   %ebp
4012a7:	8b ec                	mov    %esp,%ebp
4012a9:	51                   	push   %ecx
4012aa:	53                   	push   %ebx
4012ab:	56                   	push   %esi
4012ac:	57                   	push   %edi
4012ad:	8b 7d 08             	mov    0x8(%ebp),%edi
4012b0:	33 db                	xor    %ebx,%ebx
4012b2:	33 f6                	xor    %esi,%esi
4012b4:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4012b7:	39 1f                	cmp    %ebx,(%edi)
4012b9:	74 31                	je     0x4012ec
4012bb:	ff 37                	push   (%edi)
4012bd:	e8 8f 28 00 00       	call   0x403b51
4012c2:	8b f0                	mov    %eax,%esi
4012c4:	83 fe ff             	cmp    $0xffffffff,%esi
4012c7:	75 0a                	jne    0x4012d3
4012c9:	b8 57 00 07 80       	mov    $0x80070057,%eax
4012ce:	e9 84 00 00 00       	jmp    0x401357
4012d3:	8d 45 fc             	lea    -0x4(%ebp),%eax
4012d6:	d1 ee                	shr    $1,%esi
4012d8:	50                   	push   %eax
4012d9:	68 ff ff ff 7f       	push   $0x7fffffff
4012de:	ff 37                	push   (%edi)
4012e0:	e8 72 09 00 00       	call   0x401c57
4012e5:	85 c0                	test   %eax,%eax
4012e7:	78 6e                	js     0x401357
4012e9:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4012ec:	8b 7d 10             	mov    0x10(%ebp),%edi
4012ef:	85 ff                	test   %edi,%edi
4012f1:	75 18                	jne    0x40130b
4012f3:	8d 45 10             	lea    0x10(%ebp),%eax
4012f6:	50                   	push   %eax
4012f7:	68 ff ff ff 7f       	push   $0x7fffffff
4012fc:	ff 75 0c             	push   0xc(%ebp)
4012ff:	e8 53 09 00 00       	call   0x401c57
401304:	85 c0                	test   %eax,%eax
401306:	78 4f                	js     0x401357
401308:	8b 7d 10             	mov    0x10(%ebp),%edi
40130b:	8b ce                	mov    %esi,%ecx
40130d:	8d 47 01             	lea    0x1(%edi),%eax
401310:	2b cb                	sub    %ebx,%ecx
401312:	3b c8                	cmp    %eax,%ecx
401314:	73 1d                	jae    0x401333
401316:	ff 75 14             	push   0x14(%ebp)
401319:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
40131c:	8b 5d 08             	mov    0x8(%ebp),%ebx
40131f:	8d 34 45 02 00 00 00 	lea    0x2(,%eax,2),%esi
401326:	56                   	push   %esi
401327:	53                   	push   %ebx
401328:	e8 0f 01 00 00       	call   0x40143c
40132d:	85 c0                	test   %eax,%eax
40132f:	78 26                	js     0x401357
401331:	eb 03                	jmp    0x401336
401333:	8b 5d 08             	mov    0x8(%ebp),%ebx
401336:	83 3b 00             	cmpl   $0x0,(%ebx)
401339:	74 17                	je     0x401352
40133b:	68 00 02 00 00       	push   $0x200
401340:	6a 00                	push   $0x0
401342:	6a 00                	push   $0x0
401344:	57                   	push   %edi
401345:	ff 75 0c             	push   0xc(%ebp)
401348:	56                   	push   %esi
401349:	ff 33                	push   (%ebx)
40134b:	e8 21 04 00 00       	call   0x401771
401350:	eb 05                	jmp    0x401357
401352:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
401357:	5f                   	pop    %edi
401358:	5e                   	pop    %esi
401359:	5b                   	pop    %ebx
40135a:	8b e5                	mov    %ebp,%esp
40135c:	5d                   	pop    %ebp
40135d:	c2 10 00             	ret    $0x10
401360:	55                   	push   %ebp
401361:	8b ec                	mov    %esp,%ebp
401363:	83 ec 0c             	sub    $0xc,%esp
401366:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40136a:	53                   	push   %ebx
40136b:	56                   	push   %esi
40136c:	8b 75 08             	mov    0x8(%ebp),%esi
40136f:	57                   	push   %edi
401370:	33 ff                	xor    %edi,%edi
401372:	21 7d f8             	and    %edi,-0x8(%ebp)
401375:	89 7d f4             	mov    %edi,-0xc(%ebp)
401378:	39 3e                	cmp    %edi,(%esi)
40137a:	74 2c                	je     0x4013a8
40137c:	ff 36                	push   (%esi)
40137e:	e8 ce 27 00 00       	call   0x403b51
401383:	8b f8                	mov    %eax,%edi
401385:	89 7d f4             	mov    %edi,-0xc(%ebp)
401388:	83 ff ff             	cmp    $0xffffffff,%edi
40138b:	75 0a                	jne    0x401397
40138d:	be 57 00 07 80       	mov    $0x80070057,%esi
401392:	e9 9a 00 00 00       	jmp    0x401431
401397:	ff 36                	push   (%esi)
401399:	8b df                	mov    %edi,%ebx
40139b:	ff 15 f8 b0 44 00    	call   *0x44b0f8
4013a1:	d1 eb                	shr    $1,%ebx
4013a3:	89 45 f8             	mov    %eax,-0x8(%ebp)
4013a6:	75 15                	jne    0x4013bd
4013a8:	ff 75 0c             	push   0xc(%ebp)
4013ab:	bb 00 01 00 00       	mov    $0x100,%ebx
4013b0:	53                   	push   %ebx
4013b1:	56                   	push   %esi
4013b2:	e8 85 00 00 00       	call   0x40143c
4013b7:	8b f0                	mov    %eax,%esi
4013b9:	85 f6                	test   %esi,%esi
4013bb:	78 74                	js     0x401431
4013bd:	8b 7d fc             	mov    -0x4(%ebp),%edi
4013c0:	ff 75 14             	push   0x14(%ebp)
4013c3:	8b 45 08             	mov    0x8(%ebp),%eax