5c50dc:	50                   	push   %eax
5c50dd:	e8 8e 55 00 00       	call   0x5ca670
5c50e2:	8b f8                	mov    %eax,%edi
5c50e4:	33 f6                	xor    %esi,%esi
5c50e6:	ff 15 24 21 60 00    	call   *0x602124
5c50ec:	8b d0                	mov    %eax,%edx
5c50ee:	3b 15 e0 91 69 00    	cmp    0x6991e0,%edx
5c50f4:	74 28                	je     0x5c511e
5c50f6:	8b ca                	mov    %edx,%ecx
5c50f8:	33 c0                	xor    %eax,%eax
5c50fa:	bb e0 91 69 00       	mov    $0x6991e0,%ebx
5c50ff:	f0 0f b1 0b          	lock cmpxchg %ecx,(%ebx)
5c5103:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5c5106:	85 c0                	test   %eax,%eax
5c5108:	0f 94 c0             	sete   %al
5c510b:	84 c0                	test   %al,%al
5c510d:	75 0f                	jne    0x5c511e
5c510f:	f3 90                	pause
5c5111:	52                   	push   %edx
5c5112:	b9 e0 91 69 00       	mov    $0x6991e0,%ecx
5c5117:	e8 94 27 00 00       	call   0x5c78b0
5c511c:	eb 07                	jmp    0x5c5125
5c511e:	f0 ff 05 e4 91 69 00 	lock incl 0x6991e4
5c5125:	80 3d ad 91 69 00 00 	cmpb   $0x0,0x6991ad
5c512c:	74 2a                	je     0x5c5158
5c512e:	6a 02                	push   $0x2
5c5130:	8d 85 3c ff ff ff    	lea    -0xc4(%ebp),%eax
5c5136:	89 75 dc             	mov    %esi,-0x24(%ebp)
5c5139:	6a 14                	push   $0x14
5c513b:	50                   	push   %eax
5c513c:	89 75 e4             	mov    %esi,-0x1c(%ebp)
5c513f:	89 75 e8             	mov    %esi,-0x18(%ebp)
5c5142:	e8 79 4f 00 00       	call   0x5ca0c0
5c5147:	8d 85 3c ff ff ff    	lea    -0xc4(%ebp),%eax
5c514d:	50                   	push   %eax
5c514e:	e8 6d e9 ff ff       	call   0x5c3ac0
5c5153:	83 c4 10             	add    $0x10,%esp
5c5156:	8b f0                	mov    %eax,%esi
5c5158:	ff 05 b0 91 69 00    	incl   0x6991b0
5c515e:	83 3d c8 91 69 00 00 	cmpl   $0x0,0x6991c8
5c5165:	75 0f                	jne    0x5c5176
5c5167:	68 a0 86 01 00       	push   $0x186a0
5c516c:	b9 c0 91 69 00       	mov    $0x6991c0,%ecx
5c5171:	e8 5a 19 00 00       	call   0x5c6ad0
5c5176:	8d 45 08             	lea    0x8(%ebp),%eax
5c5179:	b9 c0 91 69 00       	mov    $0x6991c0,%ecx
5c517e:	50                   	push   %eax
5c517f:	8d 45 ec             	lea    -0x14(%ebp),%eax
5c5182:	50                   	push   %eax
5c5183:	e8 88 c5 ff ff       	call   0x5c1710
5c5188:	8b 4d 18             	mov    0x18(%ebp),%ecx
5c518b:	8b 00                	mov    (%eax),%eax
5c518d:	89 78 0c             	mov    %edi,0xc(%eax)
5c5190:	89 48 10             	mov    %ecx,0x10(%eax)
5c5193:	89 58 14             	mov    %ebx,0x14(%eax)
5c5196:	89 70 18             	mov    %esi,0x18(%eax)
5c5199:	f0 ff 0d e4 91 69 00 	lock decl 0x6991e4
5c51a0:	83 3d e4 91 69 00 00 	cmpl   $0x0,0x6991e4
5c51a7:	75 09                	jne    0x5c51b2
5c51a9:	33 c0                	xor    %eax,%eax
5c51ab:	b9 e0 91 69 00       	mov    $0x6991e0,%ecx
5c51b0:	87 01                	xchg   %eax,(%ecx)
5c51b2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5c51b5:	5f                   	pop    %edi
5c51b6:	5e                   	pop    %esi
5c51b7:	5b                   	pop    %ebx
5c51b8:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5c51bf:	8b e5                	mov    %ebp,%esp
5c51c1:	5d                   	pop    %ebp
5c51c2:	c3                   	ret
5c51c3:	68 d8 eb 69 00       	push   $0x69ebd8
5c51c8:	e8 7a c5 00 00       	call   0x5d1747
5c51cd:	83 c4 04             	add    $0x4,%esp
5c51d0:	83 3d d8 eb 69 00 ff 	cmpl   $0xffffffff,0x69ebd8
5c51d7:	0f 85 ee fe ff ff    	jne    0x5c50cb
5c51dd:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5c51e4:	6a 10                	push   $0x10
5c51e6:	c7 45 1c b0 eb 69 00 	movl   $0x69ebb0,0x1c(%ebp)
5c51ed:	c7 05 b0 eb 69 00 00 	movl   $0x0,0x69ebb0
5c51f4:	00 00 00
5c51f7:	c7 05 b4 eb 69 00 00 	movl   $0x0,0x69ebb4
5c51fe:	00 00 00
5c5201:	c7 05 b8 eb 69 00 00 	movl   $0x0,0x69ebb8
5c5208:	00 00 00
5c520b:	e8 15 c0 00 00       	call   0x5d1225
5c5210:	89 00                	mov    %eax,(%eax)
5c5212:	89 40 04             	mov    %eax,0x4(%eax)
5c5215:	a3 b4 eb 69 00       	mov    %eax,0x69ebb4
5c521a:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5c521e:	c7 05 bc eb 69 00 00 	movl   $0x0,0x69ebbc
5c5225:	00 00 00
5c5228:	c7 05 c0 eb 69 00 00 	movl   $0x0,0x69ebc0
5c522f:	00 00 00
5c5232:	c7 05 c4 eb 69 00 00 	movl   $0x0,0x69ebc4
5c5239:	00 00 00
5c523c:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
5c5240:	8b 35 b4 eb 69 00    	mov    0x69ebb4,%esi
5c5246:	6a 40                	push   $0x40
5c5248:	c7 05 c8 eb 69 00 07 	movl   $0x7,0x69ebc8
5c524f:	00 00 00
5c5252:	c7 05 cc eb 69 00 08 	movl   $0x8,0x69ebcc
5c5259:	00 00 00
5c525c:	c7 05 b0 eb 69 00 00 	movl   $0x3f800000,0x69ebb0
5c5263:	00 80 3f
5c5266:	e8 ba bf 00 00       	call   0x5d1225
5c526b:	8b 0d bc eb 69 00    	mov    0x69ebbc,%ecx
5c5271:	8b f8                	mov    %eax,%edi
5c5273:	a1 c4 eb 69 00       	mov    0x69ebc4,%eax
5c5278:	83 c4 08             	add    $0x8,%esp
5c527b:	2b c1                	sub    %ecx,%eax
5c527d:	c1 f8 02             	sar    $0x2,%eax
5c5280:	85 c0                	test   %eax,%eax
5c5282:	74 32                	je     0x5c52b6
5c5284:	8d 14 85 00 00 00 00 	lea    0x0(,%eax,4),%edx
5c528b:	8b c1                	mov    %ecx,%eax
5c528d:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
5c5293:	72 15                	jb     0x5c52aa
5c5295:	8b 48 fc             	mov    -0x4(%eax),%ecx
5c5298:	83 c2 23             	add    $0x23,%edx
5c529b:	2b c1                	sub    %ecx,%eax
5c529d:	83 c0 fc             	add    $0xfffffffc,%eax
5c52a0:	83 f8 1f             	cmp    $0x1f,%eax
5c52a3:	76 05                	jbe    0x5c52aa
5c52a5:	e8 46 0f 01 00       	call   0x5d61f0
5c52aa:	52                   	push   %edx
5c52ab:	51                   	push   %ecx
5c52ac:	e8 a4 bf 00 00       	call   0x5d1255
5c52b1:	83 c4 08             	add    $0x8,%esp
5c52b4:	eb 00                	jmp    0x5c52b6
5c52b6:	8d 47 40             	lea    0x40(%edi),%eax
5c52b9:	89 3d bc eb 69 00    	mov    %edi,0x69ebbc
5c52bf:	a3 c0 eb 69 00       	mov    %eax,0x69ebc0
5c52c4:	a3 c4 eb 69 00       	mov    %eax,0x69ebc4
5c52c9:	3b f8                	cmp    %eax,%edi
5c52cb:	74 0e                	je     0x5c52db
5c52cd:	eb 01                	jmp    0x5c52d0
5c52cf:	90                   	nop
5c52d0:	89 37                	mov    %esi,(%edi)
5c52d2:	83 c7 04             	add    $0x4,%edi
5c52d5:	3b f8                	cmp    %eax,%edi
5c52d7:	75 f7                	jne    0x5c52d0
5c52d9:	eb 00                	jmp    0x5c52db
5c52db:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
5c52df:	c7 05 d0 eb 69 00 00 	movl   $0x0,0x69ebd0
5c52e6:	00 00 00
5c52e9:	c7 05 d4 eb 69 00 00 	movl   $0x0,0x69ebd4
5c52f0:	00 00 00
5c52f3:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
5c52f7:	68 30 13 60 00       	push   $0x601330
5c52fc:	e8 07 c2 00 00       	call   0x5d1508
5c5301:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5c5308:	68 d8 eb 69 00       	push   $0x69ebd8
5c530d:	e8 e4 c3 00 00       	call   0x5d16f6
5c5312:	83 c4 08             	add    $0x8,%esp
5c5315:	e9 b1 fd ff ff       	jmp    0x5c50cb
5c531a:	cc                   	int3
5c531b:	cc                   	int3
5c531c:	cc                   	int3
5c531d:	cc                   	int3
5c531e:	cc                   	int3
5c531f:	cc                   	int3
5c5320:	55                   	push   %ebp
5c5321:	8b ec                	mov    %esp,%ebp
5c5323:	83 ec 08             	sub    $0x8,%esp
5c5326:	57                   	push   %edi
5c5327:	ff 15 24 21 60 00    	call   *0x602124
5c532d:	8b d0                	mov    %eax,%edx
5c532f:	bf e0 91 69 00       	mov    $0x6991e0,%edi
5c5334:	3b 15 e0 91 69 00    	cmp    0x6991e0,%edx
5c533a:	74 1d                	je     0x5c5359
5c533c:	8b ca                	mov    %edx,%ecx
5c533e:	33 c0                	xor    %eax,%eax
5c5340:	f0 0f b1 0f          	lock cmpxchg %ecx,(%edi)
5c5344:	85 c0                	test   %eax,%eax
5c5346:	0f 94 c0             	sete   %al
5c5349:	84 c0                	test   %al,%al
5c534b:	75 0c                	jne    0x5c5359
5c534d:	f3 90                	pause
5c534f:	52                   	push   %edx
5c5350:	8b cf                	mov    %edi,%ecx
5c5352:	e8 59 25 00 00       	call   0x5c78b0
5c5357:	eb 07                	jmp    0x5c5360
5c5359:	f0 ff 05 e4 91 69 00 	lock incl 0x6991e4
5c5360:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
5c5364:	35 c5 9d 1c 81       	xor    $0x811c9dc5,%eax
5c5369:	69 c8 93 01 00 01    	imul   $0x1000193,%eax,%ecx
5c536f:	0f b6 45 09          	movzbl 0x9(%ebp),%eax
5c5373:	56                   	push   %esi
5c5374:	33 c8                	xor    %eax,%ecx
5c5376:	0f b6 45 0a          	movzbl 0xa(%ebp),%eax
5c537a:	69 c9 93 01 00 01    	imul   $0x1000193,%ecx,%ecx
5c5380:	33 c8                	xor    %eax,%ecx
5c5382:	0f b6 45 0b          	movzbl 0xb(%ebp),%eax
5c5386:	69 c9 93 01 00 01    	imul   $0x1000193,%ecx,%ecx
5c538c:	33 c8                	xor    %eax,%ecx
5c538e:	69 c1 93 01 00 01    	imul   $0x1000193,%ecx,%eax
5c5394:	b9 c0 91 69 00       	mov    $0x6991c0,%ecx
5c5399:	50                   	push   %eax
5c539a:	8d 45 08             	lea    0x8(%ebp),%eax
5c539d:	50                   	push   %eax
5c539e:	8d 45 f8             	lea    -0x8(%ebp),%eax
5c53a1:	50                   	push   %eax
5c53a2:	e8 79 b7 ff ff       	call   0x5c0b20
5c53a7:	8b 35 c4 91 69 00    	mov    0x6991c4,%esi
5c53ad:	8b 48 04             	mov    0x4(%eax),%ecx
5c53b0:	85 c9                	test   %ecx,%ecx
5c53b2:	8b c6                	mov    %esi,%eax
5c53b4:	0f 45 c1             	cmovne %ecx,%eax
5c53b7:	3b c6                	cmp    %esi,%eax
5c53b9:	0f 84 83 00 00 00    	je     0x5c5442
5c53bf:	0f b6 48 08          	movzbl 0x8(%eax),%ecx
5c53c3:	81 f1 c5 9d 1c 81    	xor    $0x811c9dc5,%ecx
5c53c9:	69 d1 93 01 00 01    	imul   $0x1000193,%ecx,%edx
5c53cf:	0f b6 48 09          	movzbl 0x9(%eax),%ecx
5c53d3:	33 d1                	xor    %ecx,%edx
5c53d5:	0f b6 48 0a          	movzbl 0xa(%eax),%ecx
5c53d9:	69 d2 93 01 00 01    	imul   $0x1000193,%edx,%edx
5c53df:	33 d1                	xor    %ecx,%edx
5c53e1:	0f b6 48 0b          	movzbl 0xb(%eax),%ecx
5c53e5:	69 d2 93 01 00 01    	imul   $0x1000193,%edx,%edx
5c53eb:	33 d1                	xor    %ecx,%edx
5c53ed:	8b 0d cc 91 69 00    	mov    0x6991cc,%ecx
5c53f3:	69 d2 93 01 00 01    	imul   $0x1000193,%edx,%edx
5c53f9:	23 15 d8 91 69 00    	and    0x6991d8,%edx
5c53ff:	8d 14 d1             	lea    (%ecx,%edx,8),%edx
5c5402:	8b 0a                	mov    (%edx),%ecx
5c5404:	39 42 04             	cmp    %eax,0x4(%edx)
5c5407:	75 13                	jne    0x5c541c
5c5409:	3b c8                	cmp    %eax,%ecx
5c540b:	75 07                	jne    0x5c5414
5c540d:	89 32                	mov    %esi,(%edx)
5c540f:	89 72 04             	mov    %esi,0x4(%edx)
5c5412:	eb 10                	jmp    0x5c5424
5c5414:	8b 70 04             	mov    0x4(%eax),%esi
5c5417:	89 72 04             	mov    %esi,0x4(%edx)
5c541a:	eb 08                	jmp    0x5c5424
5c541c:	3b c8                	cmp    %eax,%ecx
5c541e:	75 04                	jne    0x5c5424
5c5420:	8b 08                	mov    (%eax),%ecx
5c5422:	89 0a                	mov    %ecx,(%edx)
5c5424:	8b 10                	mov    (%eax),%edx
5c5426:	ff 0d c8 91 69 00    	decl   0x6991c8
5c542c:	8b 48 04             	mov    0x4(%eax),%ecx
5c542f:	6a 1c                	push   $0x1c
5c5431:	50                   	push   %eax
5c5432:	89 11                	mov    %edx,(%ecx)
5c5434:	8b 48 04             	mov    0x4(%eax),%ecx
5c5437:	89 4a 04             	mov    %ecx,0x4(%edx)
5c543a:	e8 16 be 00 00       	call   0x5d1255
5c543f:	83 c4 08             	add    $0x8,%esp
5c5442:	f0 ff 0d e4 91 69 00 	lock decl 0x6991e4
5c5449:	83 3d e4 91 69 00 00 	cmpl   $0x0,0x6991e4
5c5450:	5e                   	pop    %esi
5c5451:	75 04                	jne    0x5c5457
5c5453:	33 c0                	xor    %eax,%eax
5c5455:	87 07                	xchg   %eax,(%edi)
5c5457:	5f                   	pop    %edi
5c5458:	8b e5                	mov    %ebp,%esp
5c545a:	5d                   	pop    %ebp
5c545b:	c3                   	ret
5c545c:	cc                   	int3
5c545d:	cc                   	int3
5c545e:	cc                   	int3
5c545f:	cc                   	int3
5c5460:	55                   	push   %ebp
5c5461:	8b ec                	mov    %esp,%ebp
5c5463:	8b 45 0c             	mov    0xc(%ebp),%eax
5c5466:	85 c0                	test   %eax,%eax
5c5468:	53                   	push   %ebx
5c5469:	bb 01 00 00 00       	mov    $0x1,%ebx
5c546e:	0f 45 d8             	cmovne %eax,%ebx
5c5471:	8b 81 50 0c 00 00    	mov    0xc50(%ecx),%eax
5c5477:	56                   	push   %esi
5c5478:	8b 75 08             	mov    0x8(%ebp),%esi
5c547b:	57                   	push   %edi
5c547c:	8b fe                	mov    %esi,%edi
5c547e:	2b 78 04             	sub    0x4(%eax),%edi
5c5481:	c1 ef 10             	shr    $0x10,%edi
5c5484:	81 ff 00 02 00 00    	cmp    $0x200,%edi
5c548a:	73 06                	jae    0x5c5492
5c548c:	8b 7c f8 0c          	mov    0xc(%eax,%edi,8),%edi
5c5490:	eb 02                	jmp    0x5c5494
5c5492:	33 ff                	xor    %edi,%edi
5c5494:	81 fb 00 04 00 00    	cmp    $0x400,%ebx
5c549a:	77 0b                	ja     0x5c54a7
5c549c:	8d 43 ff             	lea    -0x1(%ebx),%eax
5c549f:	c1 e8 02             	shr    $0x2,%eax
5c54a2:	8b 04 81             	mov    (%ecx,%eax,4),%eax
5c54a5:	eb 02                	jmp    0x5c54a9
5c54a7:	33 c0                	xor    %eax,%eax
5c54a9:	3b f8                	cmp    %eax,%edi
5c54ab:	75 09                	jne    0x5c54b6
5c54ad:	5f                   	pop    %edi
5c54ae:	8b c6                	mov    %esi,%eax
5c54b0:	5e                   	pop    %esi
5c54b1:	5b                   	pop    %ebx
5c54b2:	5d                   	pop    %ebp
5c54b3:	c2 08 00             	ret    $0x8
5c54b6:	e8 b5 16 00 00       	call   0x5c6b70
5c54bb:	53                   	push   %ebx
5c54bc:	8b 08                	mov    (%eax),%ecx
5c54be:	8b 51 0c             	mov    0xc(%ecx),%edx
5c54c1:	8b c8                	mov    %eax,%ecx
5c54c3:	ff d2                	call   *%edx
5c54c5:	89 45 0c             	mov    %eax,0xc(%ebp)
5c54c8:	85 c0                	test   %eax,%eax
5c54ca:	74 13                	je     0x5c54df
5c54cc:	8b 4f 10             	mov    0x10(%edi),%ecx
5c54cf:	3b d9                	cmp    %ecx,%ebx
5c54d1:	0f 42 cb             	cmovb  %ebx,%ecx
5c54d4:	51                   	push   %ecx
5c54d5:	56                   	push   %esi
5c54d6:	50                   	push   %eax
5c54d7:	e8 f4 d8 00 00       	call   0x5d2dd0
5c54dc:	83 c4 0c             	add    $0xc,%esp
5c54df:	e8 8c 16 00 00       	call   0x5c6b70
5c54e4:	8b 57 10             	mov    0x10(%edi),%edx
5c54e7:	33 c9                	xor    %ecx,%ecx
5c54e9:	f7 da                	neg    %edx
5c54eb:	13 c9                	adc    %ecx,%ecx
5c54ed:	f7 d9                	neg    %ecx
5c54ef:	51                   	push   %ecx
5c54f0:	52                   	push   %edx
5c54f1:	ff b0 24 59 00 00    	push   0x5924(%eax)
5c54f7:	e8 24 2e 00 00       	call   0x5c8320
5c54fc:	8b c6                	mov    %esi,%eax
5c54fe:	83 c4 0c             	add    $0xc,%esp
5c5501:	2b 05 f4 eb 6d 00    	sub    0x6debf4,%eax
5c5507:	c1 e8 10             	shr    $0x10,%eax
5c550a:	3d 00 02 00 00       	cmp    $0x200,%eax
5c550f:	72 23                	jb     0x5c5534
5c5511:	50                   	push   %eax
5c5512:	68 00 02 00 00       	push   $0x200
5c5517:	56                   	push   %esi
5c5518:	68 10 c3 66 00       	push   $0x66c310
5c551d:	68 fa 02 00 00       	push   $0x2fa
5c5522:	68 78 bb 66 00       	push   $0x66bb78
5c5527:	e8 44 5f ff ff       	call   0x5bb470
5c552c:	83 c4 18             	add    $0x18,%esp
5c552f:	84 c0                	test   %al,%al
5c5531:	75 01                	jne    0x5c5534
5c5533:	cc                   	int3
5c5534:	85 f6                	test   %esi,%esi
5c5536:	74 0e                	je     0x5c5546
5c5538:	f0 ff 47 30          	lock incl 0x30(%edi)
5c553c:	56                   	push   %esi
5c553d:	57                   	push   %edi
5c553e:	e8 1d 57 00 00       	call   0x5cac60
5c5543:	83 c4 08             	add    $0x8,%esp
5c5546:	8b 45 0c             	mov    0xc(%ebp),%eax