5ca139:	89 85 18 ff ff ff    	mov    %eax,-0xe8(%ebp)
5ca13f:	c7 85 1c ff ff ff 00 	movl   $0x0,-0xe4(%ebp)
5ca146:	00 00 00
5ca149:	c7 85 24 ff ff ff 03 	movl   $0x3,-0xdc(%ebp)
5ca150:	00 00 00
5ca153:	ff 15 44 21 60 00    	call   *0x602144
5ca159:	89 45 f0             	mov    %eax,-0x10(%ebp)
5ca15c:	ff 15 5c 22 60 00    	call   *0x60225c
5ca162:	68 58 00 6e 00       	push   $0x6e0058
5ca167:	89 45 f4             	mov    %eax,-0xc(%ebp)
5ca16a:	ff 15 ac 21 60 00    	call   *0x6021ac
5ca170:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5ca173:	33 ff                	xor    %edi,%edi
5ca175:	85 db                	test   %ebx,%ebx
5ca177:	7e 72                	jle    0x5ca1eb
5ca179:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
5ca180:	a1 74 00 6e 00       	mov    0x6e0074,%eax
5ca185:	8d 8d e8 fe ff ff    	lea    -0x118(%ebp),%ecx
5ca18b:	6a 00                	push   $0x0
5ca18d:	ff 35 90 00 6e 00    	push   0x6e0090
5ca193:	ff 35 8c 00 6e 00    	push   0x6e008c
5ca199:	6a 00                	push   $0x0
5ca19b:	6a 00                	push   $0x0
5ca19d:	51                   	push   %ecx
5ca19e:	ff 75 f4             	push   -0xc(%ebp)
5ca1a1:	ff 75 f0             	push   -0x10(%ebp)
5ca1a4:	68 4c 01 00 00       	push   $0x14c
5ca1a9:	ff d0                	call   *%eax
5ca1ab:	85 c0                	test   %eax,%eax
5ca1ad:	74 3c                	je     0x5ca1eb
5ca1af:	8b 85 08 ff ff ff    	mov    -0xf8(%ebp),%eax
5ca1b5:	0b 85 0c ff ff ff    	or     -0xf4(%ebp),%eax
5ca1bb:	74 2e                	je     0x5ca1eb
5ca1bd:	3b 7d 10             	cmp    0x10(%ebp),%edi
5ca1c0:	7e 24                	jle    0x5ca1e6
5ca1c2:	8b 96 a0 00 00 00    	mov    0xa0(%esi),%edx
5ca1c8:	83 fa 14             	cmp    $0x14,%edx
5ca1cb:	7d 19                	jge    0x5ca1e6
5ca1cd:	8b 85 e8 fe ff ff    	mov    -0x118(%ebp),%eax
5ca1d3:	8b 8d ec fe ff ff    	mov    -0x114(%ebp),%ecx
5ca1d9:	89 04 d6             	mov    %eax,(%esi,%edx,8)
5ca1dc:	89 4c d6 04          	mov    %ecx,0x4(%esi,%edx,8)
5ca1e0:	ff 86 a0 00 00 00    	incl   0xa0(%esi)
5ca1e6:	47                   	inc    %edi
5ca1e7:	3b fb                	cmp    %ebx,%edi
5ca1e9:	7c 95                	jl     0x5ca180
5ca1eb:	68 58 00 6e 00       	push   $0x6e0058
5ca1f0:	ff 15 60 21 60 00    	call   *0x602160
5ca1f6:	8b 9e a0 00 00 00    	mov    0xa0(%esi),%ebx
5ca1fc:	33 ff                	xor    %edi,%edi
5ca1fe:	c7 86 a8 00 00 00 00 	movl   $0x0,0xa8(%esi)
5ca205:	00 00 00
5ca208:	c7 86 ac 00 00 00 00 	movl   $0x0,0xac(%esi)
5ca20f:	00 00 00
5ca212:	85 db                	test   %ebx,%ebx
5ca214:	7e 39                	jle    0x5ca24f
5ca216:	33 c9                	xor    %ecx,%ecx
5ca218:	33 d2                	xor    %edx,%edx
5ca21a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
5ca220:	0f a4 ca 02          	shld   $0x2,%ecx,%edx
5ca224:	c1 e1 02             	shl    $0x2,%ecx
5ca227:	8b c2                	mov    %edx,%eax
5ca229:	89 8e a8 00 00 00    	mov    %ecx,0xa8(%esi)
5ca22f:	89 86 ac 00 00 00    	mov    %eax,0xac(%esi)
5ca235:	33 0c fe             	xor    (%esi,%edi,8),%ecx
5ca238:	8b 54 fe 04          	mov    0x4(%esi,%edi,8),%edx
5ca23c:	47                   	inc    %edi
5ca23d:	33 d0                	xor    %eax,%edx
5ca23f:	89 8e a8 00 00 00    	mov    %ecx,0xa8(%esi)
5ca245:	89 96 ac 00 00 00    	mov    %edx,0xac(%esi)
5ca24b:	3b fb                	cmp    %ebx,%edi
5ca24d:	7c d1                	jl     0x5ca220
5ca24f:	5f                   	pop    %edi
5ca250:	5b                   	pop    %ebx
5ca251:	5e                   	pop    %esi
5ca252:	8b e5                	mov    %ebp,%esp
5ca254:	5d                   	pop    %ebp
5ca255:	c3                   	ret
5ca256:	cc                   	int3
5ca257:	cc                   	int3
5ca258:	cc                   	int3
5ca259:	cc                   	int3
5ca25a:	cc                   	int3
5ca25b:	cc                   	int3
5ca25c:	cc                   	int3
5ca25d:	cc                   	int3
5ca25e:	cc                   	int3
5ca25f:	cc                   	int3
5ca260:	55                   	push   %ebp
5ca261:	8b ec                	mov    %esp,%ebp
5ca263:	8a 45 0c             	mov    0xc(%ebp),%al
5ca266:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ca269:	88 45 0c             	mov    %al,0xc(%ebp)
5ca26c:	8a 45 10             	mov    0x10(%ebp),%al
5ca26f:	88 45 0d             	mov    %al,0xd(%ebp)
5ca272:	8d 45 0c             	lea    0xc(%ebp),%eax
5ca275:	50                   	push   %eax
5ca276:	68 b0 9b 5c 00       	push   $0x5c9bb0
5ca27b:	e8 80 fb ff ff       	call   0x5c9e00
5ca280:	5d                   	pop    %ebp
5ca281:	c3                   	ret
5ca282:	cc                   	int3
5ca283:	cc                   	int3
5ca284:	cc                   	int3
5ca285:	cc                   	int3
5ca286:	cc                   	int3
5ca287:	cc                   	int3
5ca288:	cc                   	int3
5ca289:	cc                   	int3
5ca28a:	cc                   	int3
5ca28b:	cc                   	int3
5ca28c:	cc                   	int3
5ca28d:	cc                   	int3
5ca28e:	cc                   	int3
5ca28f:	cc                   	int3
5ca290:	55                   	push   %ebp
5ca291:	8b ec                	mov    %esp,%ebp
5ca293:	6a ff                	push   $0xffffffff
5ca295:	68 2d 0a 60 00       	push   $0x600a2d
5ca29a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5ca2a0:	50                   	push   %eax
5ca2a1:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5ca2a8:	83 ec 18             	sub    $0x18,%esp
5ca2ab:	53                   	push   %ebx
5ca2ac:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5ca2af:	57                   	push   %edi
5ca2b0:	8b f9                	mov    %ecx,%edi
5ca2b2:	0f b6 03             	movzbl (%ebx),%eax
5ca2b5:	35 c5 9d 1c 81       	xor    $0x811c9dc5,%eax
5ca2ba:	69 d0 93 01 00 01    	imul   $0x1000193,%eax,%edx
5ca2c0:	0f b6 43 01          	movzbl 0x1(%ebx),%eax
5ca2c4:	33 d0                	xor    %eax,%edx
5ca2c6:	0f b6 43 02          	movzbl 0x2(%ebx),%eax
5ca2ca:	69 d2 93 01 00 01    	imul   $0x1000193,%edx,%edx
5ca2d0:	33 d0                	xor    %eax,%edx
5ca2d2:	0f b6 43 03          	movzbl 0x3(%ebx),%eax
5ca2d6:	69 ca 93 01 00 01    	imul   $0x1000193,%edx,%ecx
5ca2dc:	33 c8                	xor    %eax,%ecx
5ca2de:	69 c1 93 01 00 01    	imul   $0x1000193,%ecx,%eax
5ca2e4:	8b cf                	mov    %edi,%ecx
5ca2e6:	50                   	push   %eax
5ca2e7:	89 45 0c             	mov    %eax,0xc(%ebp)
5ca2ea:	8d 45 dc             	lea    -0x24(%ebp),%eax
5ca2ed:	53                   	push   %ebx
5ca2ee:	50                   	push   %eax
5ca2ef:	e8 2c 68 ff ff       	call   0x5c0b20
5ca2f4:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5ca2f7:	85 c9                	test   %ecx,%ecx
5ca2f9:	74 1b                	je     0x5ca316
5ca2fb:	8b 45 08             	mov    0x8(%ebp),%eax
5ca2fe:	5f                   	pop    %edi
5ca2ff:	5b                   	pop    %ebx
5ca300:	89 08                	mov    %ecx,(%eax)
5ca302:	c6 40 04 00          	movb   $0x0,0x4(%eax)
5ca306:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca309:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca310:	8b e5                	mov    %ebp,%esp
5ca312:	5d                   	pop    %ebp
5ca313:	c2 08 00             	ret    $0x8
5ca316:	81 7f 08 ff ff ff 0f 	cmpl   $0xfffffff,0x8(%edi)
5ca31d:	0f 84 45 01 00 00    	je     0x5ca468
5ca323:	8d 47 04             	lea    0x4(%edi),%eax
5ca326:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
5ca32d:	56                   	push   %esi
5ca32e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5ca331:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5ca338:	6a 10                	push   $0x10
5ca33a:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
5ca341:	e8 df 6e 00 00       	call   0x5d1225
5ca346:	8b 0b                	mov    (%ebx),%ecx
5ca348:	8b f0                	mov    %eax,%esi
5ca34a:	83 c4 04             	add    $0x4,%esp
5ca34d:	89 75 ec             	mov    %esi,-0x14(%ebp)
5ca350:	89 75 e8             	mov    %esi,-0x18(%ebp)
5ca353:	89 4e 08             	mov    %ecx,0x8(%esi)
5ca356:	8b 4b 04             	mov    0x4(%ebx),%ecx
5ca359:	89 4e 0c             	mov    %ecx,0xc(%esi)
5ca35c:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
5ca363:	8b 47 08             	mov    0x8(%edi),%eax
5ca366:	d9 07                	flds   (%edi)
5ca368:	83 c0 01             	add    $0x1,%eax
5ca36b:	89 45 f0             	mov    %eax,-0x10(%ebp)
5ca36e:	db 45 f0             	fildl  -0x10(%ebp)
5ca371:	79 06                	jns    0x5ca379
5ca373:	d8 05 00 5e 60 00    	fadds  0x605e00
5ca379:	d9 5d f0             	fstps  -0x10(%ebp)
5ca37c:	d9 45 f0             	flds   -0x10(%ebp)
5ca37f:	8b 5f 1c             	mov    0x1c(%edi),%ebx
5ca382:	db 47 1c             	fildl  0x1c(%edi)
5ca385:	85 db                	test   %ebx,%ebx
5ca387:	79 06                	jns    0x5ca38f
5ca389:	d8 05 00 5e 60 00    	fadds  0x605e00
5ca38f:	d9 5d f0             	fstps  -0x10(%ebp)
5ca392:	d9 45 f0             	flds   -0x10(%ebp)
5ca395:	d8 f9                	fdivr  %st(1),%st
5ca397:	df f2                	fcomip %st(2),%st
5ca399:	76 5e                	jbe    0x5ca3f9
5ca39b:	de f1                	fdivp  %st,%st(1)
5ca39d:	83 ec 08             	sub    $0x8,%esp
5ca3a0:	d9 5d f0             	fstps  -0x10(%ebp)
5ca3a3:	d9 45 f0             	flds   -0x10(%ebp)
5ca3a6:	dd 1c 24             	fstpl  (%esp)
5ca3a9:	e8 22 c1 00 00       	call   0x5d64d0
5ca3ae:	d9 5d f0             	fstps  -0x10(%ebp)
5ca3b1:	d9 45 f0             	flds   -0x10(%ebp)
5ca3b4:	83 c4 08             	add    $0x8,%esp
5ca3b7:	e8 64 72 00 00       	call   0x5d1620
5ca3bc:	b9 08 00 00 00       	mov    $0x8,%ecx
5ca3c1:	3b c1                	cmp    %ecx,%eax
5ca3c3:	0f 47 c8             	cmova  %eax,%ecx
5ca3c6:	3b d9                	cmp    %ecx,%ebx
5ca3c8:	73 11                	jae    0x5ca3db
5ca3ca:	81 fb 00 02 00 00    	cmp    $0x200,%ebx
5ca3d0:	73 07                	jae    0x5ca3d9
5ca3d2:	c1 e3 03             	shl    $0x3,%ebx
5ca3d5:	3b d9                	cmp    %ecx,%ebx
5ca3d7:	73 02                	jae    0x5ca3db
5ca3d9:	8b d9                	mov    %ecx,%ebx
5ca3db:	53                   	push   %ebx
5ca3dc:	8b cf                	mov    %edi,%ecx
5ca3de:	e8 7d 04 00 00       	call   0x5ca860
5ca3e3:	ff 75 0c             	push   0xc(%ebp)
5ca3e6:	8d 46 08             	lea    0x8(%esi),%eax
5ca3e9:	8b cf                	mov    %edi,%ecx
5ca3eb:	50                   	push   %eax
5ca3ec:	8d 45 dc             	lea    -0x24(%ebp),%eax
5ca3ef:	50                   	push   %eax
5ca3f0:	e8 2b 67 ff ff       	call   0x5c0b20
5ca3f5:	8b 10                	mov    (%eax),%edx
5ca3f7:	eb 07                	jmp    0x5ca400
5ca3f9:	8b 55 dc             	mov    -0x24(%ebp),%edx
5ca3fc:	dd d8                	fstp   %st(0)
5ca3fe:	dd d8                	fstp   %st(0)
5ca400:	8b 5a 04             	mov    0x4(%edx),%ebx
5ca403:	ff 47 08             	incl   0x8(%edi)
5ca406:	89 16                	mov    %edx,(%esi)
5ca408:	89 5e 04             	mov    %ebx,0x4(%esi)
5ca40b:	89 33                	mov    %esi,(%ebx)
5ca40d:	89 72 04             	mov    %esi,0x4(%edx)
5ca410:	8b 47 18             	mov    0x18(%edi),%eax
5ca413:	23 45 0c             	and    0xc(%ebp),%eax
5ca416:	8b 4f 0c             	mov    0xc(%edi),%ecx
5ca419:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5ca41c:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
5ca423:	8b 3c c1             	mov    (%ecx,%eax,8),%edi
5ca426:	3b 3e                	cmp    (%esi),%edi
5ca428:	8b 75 ec             	mov    -0x14(%ebp),%esi
5ca42b:	75 05                	jne    0x5ca432
5ca42d:	89 34 c1             	mov    %esi,(%ecx,%eax,8)
5ca430:	eb 0f                	jmp    0x5ca441
5ca432:	3b fa                	cmp    %edx,%edi
5ca434:	75 05                	jne    0x5ca43b
5ca436:	89 34 c1             	mov    %esi,(%ecx,%eax,8)
5ca439:	eb 0a                	jmp    0x5ca445
5ca43b:	39 5c c1 04          	cmp    %ebx,0x4(%ecx,%eax,8)
5ca43f:	75 04                	jne    0x5ca445
5ca441:	89 74 c1 04          	mov    %esi,0x4(%ecx,%eax,8)
5ca445:	8b 45 08             	mov    0x8(%ebp),%eax
5ca448:	89 30                	mov    %esi,(%eax)
5ca44a:	c6 40 04 01          	movb   $0x1,0x4(%eax)
5ca44e:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5ca455:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca458:	5e                   	pop    %esi
5ca459:	5f                   	pop    %edi
5ca45a:	5b                   	pop    %ebx
5ca45b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca462:	8b e5                	mov    %ebp,%esp
5ca464:	5d                   	pop    %ebp
5ca465:	c2 08 00             	ret    $0x8
5ca468:	68 20 64 60 00       	push   $0x606420
5ca46d:	e8 64 67 00 00       	call   0x5d0bd6
5ca472:	cc                   	int3
5ca473:	cc                   	int3
5ca474:	cc                   	int3
5ca475:	cc                   	int3
5ca476:	cc                   	int3
5ca477:	cc                   	int3
5ca478:	cc                   	int3
5ca479:	cc                   	int3
5ca47a:	cc                   	int3
5ca47b:	cc                   	int3
5ca47c:	cc                   	int3
5ca47d:	cc                   	int3
5ca47e:	cc                   	int3
5ca47f:	cc                   	int3
5ca480:	55                   	push   %ebp
5ca481:	8b ec                	mov    %esp,%ebp
5ca483:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5ca489:	6a ff                	push   $0xffffffff
5ca48b:	68 20 fc 5f 00       	push   $0x5ffc20
5ca490:	50                   	push   %eax
5ca491:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5ca498:	8b 41 04             	mov    0x4(%ecx),%eax
5ca49b:	85 c0                	test   %eax,%eax
5ca49d:	74 0b                	je     0x5ca4aa
5ca49f:	6a 10                	push   $0x10
5ca4a1:	50                   	push   %eax
5ca4a2:	e8 ae 6d 00 00       	call   0x5d1255
5ca4a7:	83 c4 08             	add    $0x8,%esp
5ca4aa:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca4ad:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca4b4:	8b e5                	mov    %ebp,%esp
5ca4b6:	5d                   	pop    %ebp
5ca4b7:	c3                   	ret
5ca4b8:	cc                   	int3
5ca4b9:	cc                   	int3
5ca4ba:	cc                   	int3
5ca4bb:	cc                   	int3
5ca4bc:	cc                   	int3
5ca4bd:	cc                   	int3
5ca4be:	cc                   	int3
5ca4bf:	cc                   	int3
5ca4c0:	55                   	push   %ebp
5ca4c1:	8b ec                	mov    %esp,%ebp
5ca4c3:	6a ff                	push   $0xffffffff
5ca4c5:	68 4d 0a 60 00       	push   $0x600a4d
5ca4ca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5ca4d0:	50                   	push   %eax
5ca4d1:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5ca4d8:	51                   	push   %ecx
5ca4d9:	89 4d f0             	mov    %ecx,-0x10(%ebp)
5ca4dc:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5ca4e3:	8b 41 04             	mov    0x4(%ecx),%eax
5ca4e6:	85 c0                	test   %eax,%eax
5ca4e8:	74 0b                	je     0x5ca4f5
5ca4ea:	6a 10                	push   $0x10
5ca4ec:	50                   	push   %eax
5ca4ed:	e8 63 6d 00 00       	call   0x5d1255
5ca4f2:	83 c4 08             	add    $0x8,%esp
5ca4f5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca4f8:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca4ff:	8b e5                	mov    %ebp,%esp
5ca501:	5d                   	pop    %ebp
5ca502:	c3                   	ret
5ca503:	cc                   	int3
5ca504:	cc                   	int3
5ca505:	cc                   	int3
5ca506:	cc                   	int3
5ca507:	cc                   	int3
5ca508:	cc                   	int3
5ca509:	cc                   	int3
5ca50a:	cc                   	int3
5ca50b:	cc                   	int3
5ca50c:	cc                   	int3
5ca50d:	cc                   	int3
5ca50e:	cc                   	int3
5ca50f:	cc                   	int3
5ca510:	55                   	push   %ebp
5ca511:	8b ec                	mov    %esp,%ebp
5ca513:	6a ff                	push   $0xffffffff