5c9f01:	c7 45 d8 18 00 00 00 	movl   $0x18,-0x28(%ebp)
5c9f08:	88 85 94 f4 ff ff    	mov    %al,-0xb6c(%ebp)
5c9f0e:	ff 15 ac 21 60 00    	call   *0x6021ac
5c9f14:	6a 16                	push   $0x16
5c9f16:	ff 15 78 00 6e 00    	call   *0x6e0078
5c9f1c:	a1 7c 00 6e 00       	mov    0x6e007c,%eax
5c9f21:	6a 01                	push   $0x1
5c9f23:	6a 00                	push   $0x0
5c9f25:	56                   	push   %esi
5c9f26:	ff d0                	call   *%eax
5c9f28:	85 c0                	test   %eax,%eax
5c9f2a:	0f 84 25 01 00 00    	je     0x5ca055
5c9f30:	33 ff                	xor    %edi,%edi
5c9f32:	8d b5 94 f4 ff ff    	lea    -0xb6c(%ebp),%esi
5c9f38:	89 7d fc             	mov    %edi,-0x4(%ebp)
5c9f3b:	85 db                	test   %ebx,%ebx
5c9f3d:	0f 8e 07 01 00 00    	jle    0x5ca04a
5c9f43:	8d 9d f4 fd ff ff    	lea    -0x20c(%ebp),%ebx
5c9f49:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
5c9f50:	8b 45 f4             	mov    -0xc(%ebp),%eax
5c9f53:	c7 03 64 25 60 00    	movl   $0x602564,(%ebx)
5c9f59:	8b 14 f8             	mov    (%eax,%edi,8),%edx
5c9f5c:	8b 4c f8 04          	mov    0x4(%eax,%edi,8),%ecx
5c9f60:	8d 7d d8             	lea    -0x28(%ebp),%edi
5c9f63:	a1 80 00 6e 00       	mov    0x6e0080,%eax
5c9f68:	57                   	push   %edi
5c9f69:	8d 7d d4             	lea    -0x2c(%ebp),%edi
5c9f6c:	89 53 f8             	mov    %edx,-0x8(%ebx)
5c9f6f:	57                   	push   %edi
5c9f70:	51                   	push   %ecx
5c9f71:	52                   	push   %edx
5c9f72:	ff 75 f8             	push   -0x8(%ebp)
5c9f75:	89 4b fc             	mov    %ecx,-0x4(%ebx)
5c9f78:	ff d0                	call   *%eax
5c9f7a:	8b 7d fc             	mov    -0x4(%ebp),%edi
5c9f7d:	85 c0                	test   %eax,%eax
5c9f7f:	74 42                	je     0x5c9fc3
5c9f81:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c9f84:	89 43 04             	mov    %eax,0x4(%ebx)
5c9f87:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c9f8a:	85 c0                	test   %eax,%eax
5c9f8c:	74 35                	je     0x5c9fc3
5c9f8e:	50                   	push   %eax
5c9f8f:	89 33                	mov    %esi,(%ebx)
5c9f91:	e8 2a 16 ff ff       	call   0x5bb5c0
5c9f96:	83 c4 04             	add    $0x4,%esp
5c9f99:	8a 08                	mov    (%eax),%cl
5c9f9b:	84 c9                	test   %cl,%cl
5c9f9d:	74 16                	je     0x5c9fb5
5c9f9f:	2b c6                	sub    %esi,%eax
5c9fa1:	8d 95 93 fc ff ff    	lea    -0x36d(%ebp),%edx
5c9fa7:	3b f2                	cmp    %edx,%esi
5c9fa9:	73 0a                	jae    0x5c9fb5
5c9fab:	88 0e                	mov    %cl,(%esi)
5c9fad:	46                   	inc    %esi
5c9fae:	8a 0c 30             	mov    (%eax,%esi,1),%cl
5c9fb1:	84 c9                	test   %cl,%cl
5c9fb3:	75 ec                	jne    0x5c9fa1
5c9fb5:	8d 85 93 fc ff ff    	lea    -0x36d(%ebp),%eax
5c9fbb:	3b f0                	cmp    %eax,%esi
5c9fbd:	77 03                	ja     0x5c9fc2
5c9fbf:	c6 06 00             	movb   $0x0,(%esi)
5c9fc2:	46                   	inc    %esi
5c9fc3:	8d 85 94 fc ff ff    	lea    -0x36c(%ebp),%eax
5c9fc9:	50                   	push   %eax
5c9fca:	8d 45 cc             	lea    -0x34(%ebp),%eax
5c9fcd:	50                   	push   %eax
5c9fce:	8b 45 f4             	mov    -0xc(%ebp),%eax
5c9fd1:	ff 74 f8 04          	push   0x4(%eax,%edi,8)
5c9fd5:	ff 34 f8             	push   (%eax,%edi,8)
5c9fd8:	ff 75 f8             	push   -0x8(%ebp)
5c9fdb:	ff 15 84 00 6e 00    	call   *0x6e0084
5c9fe1:	85 c0                	test   %eax,%eax
5c9fe3:	8d 8d e8 fc ff ff    	lea    -0x318(%ebp),%ecx
5c9fe9:	bf ec cc 66 00       	mov    $0x66ccec,%edi
5c9fee:	0f 45 f9             	cmovne %ecx,%edi
5c9ff1:	68 08 cd 66 00       	push   $0x66cd08
5c9ff6:	57                   	push   %edi
5c9ff7:	e8 84 b8 01 00       	call   0x5e5880
5c9ffc:	83 c4 08             	add    $0x8,%esp
5c9fff:	89 73 08             	mov    %esi,0x8(%ebx)
5ca002:	85 c0                	test   %eax,%eax
5ca004:	b9 0c cd 66 00       	mov    $0x66cd0c,%ecx
5ca009:	0f 45 cf             	cmovne %edi,%ecx
5ca00c:	80 39 00             	cmpb   $0x0,(%ecx)
5ca00f:	74 18                	je     0x5ca029
5ca011:	2b ce                	sub    %esi,%ecx
5ca013:	8d 85 93 fc ff ff    	lea    -0x36d(%ebp),%eax
5ca019:	3b f0                	cmp    %eax,%esi
5ca01b:	73 0c                	jae    0x5ca029
5ca01d:	8a 04 31             	mov    (%ecx,%esi,1),%al
5ca020:	88 06                	mov    %al,(%esi)
5ca022:	46                   	inc    %esi
5ca023:	80 3c 31 00          	cmpb   $0x0,(%ecx,%esi,1)
5ca027:	75 ea                	jne    0x5ca013
5ca029:	8d 85 93 fc ff ff    	lea    -0x36d(%ebp),%eax
5ca02f:	3b f0                	cmp    %eax,%esi
5ca031:	77 03                	ja     0x5ca036
5ca033:	c6 06 00             	movb   $0x0,(%esi)
5ca036:	8b 7d fc             	mov    -0x4(%ebp),%edi
5ca039:	46                   	inc    %esi
5ca03a:	47                   	inc    %edi
5ca03b:	83 c3 18             	add    $0x18,%ebx
5ca03e:	89 7d fc             	mov    %edi,-0x4(%ebp)
5ca041:	3b 7d f0             	cmp    -0x10(%ebp),%edi
5ca044:	0f 8c 06 ff ff ff    	jl     0x5c9f50
5ca04a:	ff 75 f8             	push   -0x8(%ebp)
5ca04d:	ff 15 88 00 6e 00    	call   *0x6e0088
5ca053:	eb 40                	jmp    0x5ca095
5ca055:	ff 15 58 21 60 00    	call   *0x602158
5ca05b:	50                   	push   %eax
5ca05c:	8d 85 94 f4 ff ff    	lea    -0xb6c(%ebp),%eax
5ca062:	68 20 cd 66 00       	push   $0x66cd20
5ca067:	50                   	push   %eax
5ca068:	e8 03 6b ed ff       	call   0x4a0b70
5ca06d:	8d 85 94 f4 ff ff    	lea    -0xb6c(%ebp),%eax
5ca073:	c7 85 f4 fd ff ff 64 	movl   $0x602564,-0x20c(%ebp)
5ca07a:	25 60 00
5ca07d:	83 c4 0c             	add    $0xc,%esp
5ca080:	89 85 fc fd ff ff    	mov    %eax,-0x204(%ebp)
5ca086:	c7 85 f8 fd ff ff ff 	movl   $0xffffffff,-0x208(%ebp)
5ca08d:	ff ff ff
5ca090:	bf 01 00 00 00       	mov    $0x1,%edi
5ca095:	68 58 00 6e 00       	push   $0x6e0058
5ca09a:	ff 15 60 21 60 00    	call   *0x602160
5ca0a0:	ff 75 0c             	push   0xc(%ebp)
5ca0a3:	8d 85 ec fd ff ff    	lea    -0x214(%ebp),%eax
5ca0a9:	50                   	push   %eax
5ca0aa:	57                   	push   %edi
5ca0ab:	ff 55 08             	call   *0x8(%ebp)
5ca0ae:	83 c4 0c             	add    $0xc,%esp
5ca0b1:	5f                   	pop    %edi
5ca0b2:	5b                   	pop    %ebx
5ca0b3:	5e                   	pop    %esi
5ca0b4:	8b e5                	mov    %ebp,%esp
5ca0b6:	5d                   	pop    %ebp
5ca0b7:	c2 08 00             	ret    $0x8
5ca0ba:	cc                   	int3
5ca0bb:	cc                   	int3
5ca0bc:	cc                   	int3
5ca0bd:	cc                   	int3
5ca0be:	cc                   	int3
5ca0bf:	cc                   	int3
5ca0c0:	55                   	push   %ebp
5ca0c1:	8b ec                	mov    %esp,%ebp
5ca0c3:	81 ec 18 01 00 00    	sub    $0x118,%esp
5ca0c9:	56                   	push   %esi
5ca0ca:	8b 75 08             	mov    0x8(%ebp),%esi
5ca0cd:	e8 be fb ff ff       	call   0x5c9c90
5ca0d2:	84 c0                	test   %al,%al
5ca0d4:	0f 84 77 01 00 00    	je     0x5ca251
5ca0da:	53                   	push   %ebx
5ca0db:	57                   	push   %edi
5ca0dc:	e8 8f fb ff ff       	call   0x5c9c70
5ca0e1:	8b f8                	mov    %eax,%edi
5ca0e3:	89 6d fc             	mov    %ebp,-0x4(%ebp)
5ca0e6:	89 65 f8             	mov    %esp,-0x8(%ebp)
5ca0e9:	68 08 01 00 00       	push   $0x108
5ca0ee:	8d 85 e8 fe ff ff    	lea    -0x118(%ebp),%eax
5ca0f4:	6a 00                	push   $0x0
5ca0f6:	50                   	push   %eax
5ca0f7:	e8 74 8b 00 00       	call   0x5d2c70
5ca0fc:	8b 45 fc             	mov    -0x4(%ebp),%eax
5ca0ff:	83 c4 0c             	add    $0xc,%esp
5ca102:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
5ca108:	8b 45 f8             	mov    -0x8(%ebp),%eax
5ca10b:	89 bd e8 fe ff ff    	mov    %edi,-0x118(%ebp)
5ca111:	c7 85 ec fe ff ff 00 	movl   $0x0,-0x114(%ebp)
5ca118:	00 00 00
5ca11b:	c7 85 f4 fe ff ff 03 	movl   $0x3,-0x10c(%ebp)
5ca122:	00 00 00
5ca125:	c7 85 0c ff ff ff 00 	movl   $0x0,-0xf4(%ebp)
5ca12c:	00 00 00
5ca12f:	c7 85 14 ff ff ff 03 	movl   $0x3,-0xec(%ebp)
5ca136:	00 00 00
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)