4601b0:	85 c0                	test   %eax,%eax
4601b2:	0f 88 ed 01 00 00    	js     0x4603a5
4601b8:	8b 45 ec             	mov    -0x14(%ebp),%eax
4601bb:	85 c0                	test   %eax,%eax
4601bd:	0f 84 e2 01 00 00    	je     0x4603a5
4601c3:	8b 08                	mov    (%eax),%ecx
4601c5:	8d 55 dc             	lea    -0x24(%ebp),%edx
4601c8:	52                   	push   %edx
4601c9:	50                   	push   %eax
4601ca:	8b 71 24             	mov    0x24(%ecx),%esi
4601cd:	8b ce                	mov    %esi,%ecx
4601cf:	ff 15 e0 24 68 00    	call   *0x6824e0
4601d5:	ff d6                	call   *%esi
4601d7:	85 c0                	test   %eax,%eax
4601d9:	79 0a                	jns    0x4601e5
4601db:	68 3c fa 68 00       	push   $0x68fa3c
4601e0:	e9 c5 01 00 00       	jmp    0x4603aa
4601e5:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
4601e9:	74 0a                	je     0x4601f5
4601eb:	68 58 fa 68 00       	push   $0x68fa58
4601f0:	e9 b5 01 00 00       	jmp    0x4603aa
4601f5:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
4601fc:	8b 45 ec             	mov    -0x14(%ebp),%eax
4601ff:	8d 4d e8             	lea    -0x18(%ebp),%ecx
460202:	51                   	push   %ecx
460203:	68 e4 15 6d 00       	push   $0x6d15e4
460208:	50                   	push   %eax
460209:	8b 30                	mov    (%eax),%esi
46020b:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
46020f:	8b 36                	mov    (%esi),%esi
460211:	8b ce                	mov    %esi,%ecx
460213:	ff 15 e0 24 68 00    	call   *0x6824e0
460219:	ff d6                	call   *%esi
46021b:	85 c0                	test   %eax,%eax
46021d:	0f 88 48 01 00 00    	js     0x46036b
460223:	8b 75 e8             	mov    -0x18(%ebp),%esi
460226:	85 f6                	test   %esi,%esi
460228:	0f 84 3d 01 00 00    	je     0x46036b
46022e:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
460235:	8b 3e                	mov    (%esi),%edi
460237:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
46023a:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
46023e:	e8 2d fc ff ff       	call   0x45fe70
460243:	50                   	push   %eax
460244:	56                   	push   %esi
460245:	8b 77 28             	mov    0x28(%edi),%esi
460248:	8b ce                	mov    %esi,%ecx
46024a:	ff 15 e0 24 68 00    	call   *0x6824e0
460250:	ff d6                	call   *%esi
460252:	85 c0                	test   %eax,%eax
460254:	79 07                	jns    0x46025d
460256:	68 ac fa 68 00       	push   $0x68faac
46025b:	eb 12                	jmp    0x46026f
46025d:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
460260:	e8 eb fc ff ff       	call   0x45ff50
460265:	83 38 00             	cmpl   $0x0,(%eax)
460268:	75 22                	jne    0x46028c
46026a:	68 cc fa 68 00       	push   $0x68facc
46026f:	ff 35 58 9c 71 00    	push   0x719c58
460275:	6a 02                	push   $0x2
460277:	ff 73 38             	push   0x38(%ebx)
46027a:	ff 73 44             	push   0x44(%ebx)
46027d:	e8 ae ce 02 00       	call   0x48d130
460282:	83 c4 14             	add    $0x14,%esp
460285:	32 db                	xor    %bl,%bl
460287:	e9 96 00 00 00       	jmp    0x460322
46028c:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
460293:	c7 45 d8 0f 00 00 00 	movl   $0xf,-0x28(%ebp)
46029a:	c6 45 c4 00          	movb   $0x0,-0x3c(%ebp)
46029e:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4602a1:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
4602a5:	50                   	push   %eax
4602a6:	e8 35 fd ff ff       	call   0x45ffe0
4602ab:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4602ae:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
4602b1:	83 c4 04             	add    $0x4,%esp
4602b4:	8d 55 a3             	lea    -0x5d(%ebp),%edx
4602b7:	83 7d d8 10          	cmpl   $0x10,-0x28(%ebp)
4602bb:	0f 43 4d c4          	cmovae -0x3c(%ebp),%ecx
4602bf:	03 c1                	add    %ecx,%eax
4602c1:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
4602c4:	83 7d d8 10          	cmpl   $0x10,-0x28(%ebp)
4602c8:	52                   	push   %edx
4602c9:	0f 43 4d c4          	cmovae -0x3c(%ebp),%ecx
4602cd:	50                   	push   %eax
4602ce:	51                   	push   %ecx
4602cf:	8d 4d ac             	lea    -0x54(%ebp),%ecx
4602d2:	e8 79 dd ff ff       	call   0x45e050
4602d7:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
4602da:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
4602de:	e8 6d fc ff ff       	call   0x45ff50
4602e3:	8d 4d ac             	lea    -0x54(%ebp),%ecx
4602e6:	ff 30                	push   (%eax)
4602e8:	e8 d3 0e 00 00       	call   0x4611c0
4602ed:	85 c0                	test   %eax,%eax
4602ef:	74 1f                	je     0x460310
4602f1:	68 e8 fa 68 00       	push   $0x68fae8
4602f6:	ff 35 58 9c 71 00    	push   0x719c58
4602fc:	6a 02                	push   $0x2
4602fe:	ff 73 38             	push   0x38(%ebx)
460301:	ff 73 44             	push   0x44(%ebx)
460304:	e8 27 ce 02 00       	call   0x48d130
460309:	83 c4 14             	add    $0x14,%esp
46030c:	32 db                	xor    %bl,%bl
46030e:	eb 02                	jmp    0x460312
460310:	b3 01                	mov    $0x1,%bl
460312:	8d 4d ac             	lea    -0x54(%ebp),%ecx
460315:	e8 a6 82 fd ff       	call   0x4385c0
46031a:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
46031d:	e8 8e 83 fd ff       	call   0x4386b0
460322:	8b 75 a4             	mov    -0x5c(%ebp),%esi
460325:	85 f6                	test   %esi,%esi
460327:	74 5f                	je     0x460388
460329:	83 c8 ff             	or     $0xffffffff,%eax
46032c:	f0 0f c1 46 08       	lock xadd %eax,0x8(%esi)
460331:	48                   	dec    %eax
460332:	75 54                	jne    0x460388
460334:	8b 06                	mov    (%esi),%eax
460336:	85 c0                	test   %eax,%eax
460338:	74 0d                	je     0x460347
46033a:	50                   	push   %eax
46033b:	ff 15 b0 23 68 00    	call   *0x6823b0
460341:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
460347:	8b 46 04             	mov    0x4(%esi),%eax
46034a:	85 c0                	test   %eax,%eax
46034c:	74 10                	je     0x46035e
46034e:	50                   	push   %eax
46034f:	e8 35 0d 18 00       	call   0x5e1089
460354:	83 c4 04             	add    $0x4,%esp
460357:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
46035e:	6a 0c                	push   $0xc
460360:	56                   	push   %esi
460361:	e8 0c 0d 18 00       	call   0x5e1072
460366:	83 c4 08             	add    $0x8,%esp
460369:	eb 1d                	jmp    0x460388
46036b:	68 88 fa 68 00       	push   $0x68fa88
460370:	ff 35 58 9c 71 00    	push   0x719c58
460376:	6a 02                	push   $0x2
460378:	ff 73 38             	push   0x38(%ebx)
46037b:	ff 73 44             	push   0x44(%ebx)
46037e:	e8 ad cd 02 00       	call   0x48d130
460383:	83 c4 14             	add    $0x14,%esp
460386:	32 db                	xor    %bl,%bl
460388:	8b 45 e8             	mov    -0x18(%ebp),%eax
46038b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
46038f:	85 c0                	test   %eax,%eax
460391:	74 2f                	je     0x4603c2
460393:	8b 08                	mov    (%eax),%ecx
460395:	50                   	push   %eax
460396:	8b 71 08             	mov    0x8(%ecx),%esi
460399:	8b ce                	mov    %esi,%ecx
46039b:	ff 15 e0 24 68 00    	call   *0x6824e0
4603a1:	ff d6                	call   *%esi
4603a3:	eb 1d                	jmp    0x4603c2
4603a5:	68 1c fa 68 00       	push   $0x68fa1c
4603aa:	ff 35 58 9c 71 00    	push   0x719c58
4603b0:	6a 02                	push   $0x2
4603b2:	ff 73 38             	push   0x38(%ebx)
4603b5:	ff 73 44             	push   0x44(%ebx)
4603b8:	e8 73 cd 02 00       	call   0x48d130
4603bd:	83 c4 14             	add    $0x14,%esp
4603c0:	32 db                	xor    %bl,%bl
4603c2:	8b 45 ec             	mov    -0x14(%ebp),%eax
4603c5:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4603c9:	85 c0                	test   %eax,%eax
4603cb:	74 36                	je     0x460403
4603cd:	8b 08                	mov    (%eax),%ecx
4603cf:	50                   	push   %eax
4603d0:	8b 71 08             	mov    0x8(%ecx),%esi
4603d3:	8b ce                	mov    %esi,%ecx
4603d5:	ff 15 e0 24 68 00    	call   *0x6824e0
4603db:	ff d6                	call   *%esi
4603dd:	eb 24                	jmp    0x460403
4603df:	68 a4 f9 68 00       	push   $0x68f9a4
4603e4:	eb 05                	jmp    0x4603eb
4603e6:	68 84 f9 68 00       	push   $0x68f984
4603eb:	ff 35 58 9c 71 00    	push   0x719c58
4603f1:	6a 02                	push   $0x2
4603f3:	ff 73 38             	push   0x38(%ebx)
4603f6:	ff 73 44             	push   0x44(%ebx)
4603f9:	e8 32 cd 02 00       	call   0x48d130
4603fe:	83 c4 14             	add    $0x14,%esp
460401:	32 db                	xor    %bl,%bl
460403:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
460406:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
46040d:	85 c9                	test   %ecx,%ecx
46040f:	74 10                	je     0x460421
460411:	8b 11                	mov    (%ecx),%edx
460413:	51                   	push   %ecx
460414:	8b 72 08             	mov    0x8(%edx),%esi
460417:	8b ce                	mov    %esi,%ecx
460419:	ff 15 e0 24 68 00    	call   *0x6824e0
46041f:	ff d6                	call   *%esi
460421:	8a c3                	mov    %bl,%al
460423:	8b 4d f4             	mov    -0xc(%ebp),%ecx
460426:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46042d:	59                   	pop    %ecx
46042e:	5f                   	pop    %edi
46042f:	5e                   	pop    %esi
460430:	5b                   	pop    %ebx
460431:	8b 4d f0             	mov    -0x10(%ebp),%ecx
460434:	33 cd                	xor    %ebp,%ecx
460436:	e8 9f 10 18 00       	call   0x5e14da
46043b:	8b e5                	mov    %ebp,%esp
46043d:	5d                   	pop    %ebp
46043e:	c2 04 00             	ret    $0x4
460441:	cc                   	int3
460442:	cc                   	int3
460443:	cc                   	int3
460444:	cc                   	int3
460445:	cc                   	int3
460446:	cc                   	int3
460447:	cc                   	int3
460448:	cc                   	int3
460449:	cc                   	int3
46044a:	cc                   	int3
46044b:	cc                   	int3
46044c:	cc                   	int3
46044d:	cc                   	int3
46044e:	cc                   	int3
46044f:	cc                   	int3
460450:	55                   	push   %ebp
460451:	8b ec                	mov    %esp,%ebp
460453:	6a ff                	push   $0xffffffff
460455:	68 a8 0c 65 00       	push   $0x650ca8
46045a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
460460:	50                   	push   %eax
460461:	83 ec 48             	sub    $0x48,%esp
460464:	a1 d4 89 72 00       	mov    0x7289d4,%eax
460469:	33 c5                	xor    %ebp,%eax
46046b:	89 45 f0             	mov    %eax,-0x10(%ebp)
46046e:	53                   	push   %ebx
46046f:	56                   	push   %esi
460470:	57                   	push   %edi
460471:	50                   	push   %eax
460472:	8d 45 f4             	lea    -0xc(%ebp),%eax
460475:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
46047b:	8b d9                	mov    %ecx,%ebx
46047d:	8b 55 08             	mov    0x8(%ebp),%edx
460480:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
460487:	8b 02                	mov    (%edx),%eax
460489:	8d 4d d0             	lea    -0x30(%ebp),%ecx
46048c:	51                   	push   %ecx
46048d:	52                   	push   %edx
46048e:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
460495:	8b 70 4c             	mov    0x4c(%eax),%esi
460498:	8b ce                	mov    %esi,%ecx
46049a:	ff 15 e0 24 68 00    	call   *0x6824e0
4604a0:	ff d6                	call   *%esi
4604a2:	85 c0                	test   %eax,%eax
4604a4:	0f 88 71 03 00 00    	js     0x46081b
4604aa:	8b 45 d0             	mov    -0x30(%ebp),%eax
4604ad:	85 c0                	test   %eax,%eax
4604af:	0f 84 66 03 00 00    	je     0x46081b
4604b5:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
4604bc:	8b 08                	mov    (%eax),%ecx
4604be:	8d 55 ec             	lea    -0x14(%ebp),%edx
4604c1:	52                   	push   %edx
4604c2:	50                   	push   %eax
4604c3:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4604c7:	8b 71 2c             	mov    0x2c(%ecx),%esi
4604ca:	8b ce                	mov    %esi,%ecx
4604cc:	ff 15 e0 24 68 00    	call   *0x6824e0
4604d2:	ff d6                	call   *%esi
4604d4:	85 c0                	test   %eax,%eax
4604d6:	0f 88 05 03 00 00    	js     0x4607e1
4604dc:	8b 45 ec             	mov    -0x14(%ebp),%eax
4604df:	85 c0                	test   %eax,%eax
4604e1:	0f 84 fa 02 00 00    	je     0x4607e1
4604e7:	8b 08                	mov    (%eax),%ecx
4604e9:	8d 55 cc             	lea    -0x34(%ebp),%edx
4604ec:	52                   	push   %edx
4604ed:	50                   	push   %eax
4604ee:	8b 71 34             	mov    0x34(%ecx),%esi
4604f1:	8b ce                	mov    %esi,%ecx
4604f3:	ff 15 e0 24 68 00    	call   *0x6824e0
4604f9:	ff d6                	call   *%esi
4604fb:	85 c0                	test   %eax,%eax
4604fd:	79 0a                	jns    0x460509
4604ff:	68 64 f6 68 00       	push   $0x68f664
460504:	e9 dd 02 00 00       	jmp    0x4607e6
460509:	83 7d cc 02          	cmpl   $0x2,-0x34(%ebp)
46050d:	74 0a                	je     0x460519
46050f:	68 8c f6 68 00       	push   $0x68f68c
460514:	e9 cd 02 00 00       	jmp    0x4607e6
460519:	8b 45 ec             	mov    -0x14(%ebp),%eax
46051c:	8d 55 e8             	lea    -0x18(%ebp),%edx
46051f:	52                   	push   %edx
460520:	50                   	push   %eax
460521:	8b 08                	mov    (%eax),%ecx
460523:	8b 71 44             	mov    0x44(%ecx),%esi
460526:	8b ce                	mov    %esi,%ecx
460528:	ff 15 e0 24 68 00    	call   *0x6824e0
46052e:	ff d6                	call   *%esi
460530:	85 c0                	test   %eax,%eax
460532:	79 0a                	jns    0x46053e
460534:	68 c0 f6 68 00       	push   $0x68f6c0
460539:	e9 a8 02 00 00       	jmp    0x4607e6
46053e:	66 83 7d e8 ff       	cmpw   $0xffff,-0x18(%ebp)
460543:	75 0a                	jne    0x46054f
460545:	68 f0 f6 68 00       	push   $0x68f6f0
46054a:	e9 97 02 00 00       	jmp    0x4607e6
46054f:	8b 45 ec             	mov    -0x14(%ebp),%eax
460552:	8d 55 e4             	lea    -0x1c(%ebp),%edx
460555:	52                   	push   %edx
460556:	50                   	push   %eax
460557:	8b 08                	mov    (%eax),%ecx
460559:	8b b1 ac 00 00 00    	mov    0xac(%ecx),%esi
46055f:	8b ce                	mov    %esi,%ecx
460561:	ff 15 e0 24 68 00    	call   *0x6824e0
460567:	ff d6                	call   *%esi
460569:	85 c0                	test   %eax,%eax
46056b:	79 0a                	jns    0x460577
46056d:	68 18 f7 68 00       	push   $0x68f718
460572:	e9 6f 02 00 00       	jmp    0x4607e6
460577:	66 83 7d e4 ff       	cmpw   $0xffff,-0x1c(%ebp)
46057c:	75 0a                	jne    0x460588
46057e:	68 3c f7 68 00       	push   $0x68f73c
460583:	e9 5e 02 00 00       	jmp    0x4607e6
460588:	c7 45 ac 00 00 00 00 	movl   $0x0,-0x54(%ebp)
46058f:	8b 75 ec             	mov    -0x14(%ebp),%esi
460592:	8d 4d ac             	lea    -0x54(%ebp),%ecx
460595:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
460599:	8b 3e                	mov    (%esi),%edi
46059b:	e8 d0 f8 ff ff       	call   0x45fe70
4605a0:	50                   	push   %eax
4605a1:	56                   	push   %esi
4605a2:	8b 77 24             	mov    0x24(%edi),%esi
4605a5:	8b ce                	mov    %esi,%ecx
4605a7:	ff 15 e0 24 68 00    	call   *0x6824e0
4605ad:	ff d6                	call   *%esi
4605af:	83 cf ff             	or     $0xffffffff,%edi
4605b2:	85 c0                	test   %eax,%eax
4605b4:	79 07                	jns    0x4605bd
4605b6:	68 58 f7 68 00       	push   $0x68f758
4605bb:	eb 12                	jmp    0x4605cf
4605bd:	8d 4d ac             	lea    -0x54(%ebp),%ecx
4605c0:	e8 8b f9 ff ff       	call   0x45ff50
4605c5:	83 38 00             	cmpl   $0x0,(%eax)
4605c8:	74 22                	je     0x4605ec
4605ca:	68 78 f7 68 00       	push   $0x68f778
4605cf:	ff 35 58 9c 71 00    	push   0x719c58
4605d5:	6a 02                	push   $0x2
4605d7:	ff 73 38             	push   0x38(%ebx)
4605da:	ff 73 44             	push   0x44(%ebx)
4605dd:	e8 4e cb 02 00       	call   0x48d130
4605e2:	83 c4 14             	add    $0x14,%esp
4605e5:	32 db                	xor    %bl,%bl
4605e7:	e9 af 01 00 00       	jmp    0x46079b
4605ec:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)