5c3105:	64 ff 30             	push   %fs:(%eax)
5c3108:	64 89 20             	mov    %esp,%fs:(%eax)
5c310b:	33 c0                	xor    %eax,%eax
5c310d:	55                   	push   %ebp
5c310e:	68 10 46 5c 00       	push   $0x5c4610
5c3113:	64 ff 30             	push   %fs:(%eax)
5c3116:	64 89 20             	mov    %esp,%fs:(%eax)
5c3119:	a1 1c 6c 6a 00       	mov    0x6a6c1c,%eax
5c311e:	50                   	push   %eax
5c311f:	e8 ec 3f e4 ff       	call   0x407110
5c3124:	80 bb e4 03 00 00 00 	cmpb   $0x0,0x3e4(%ebx)
5c312b:	74 14                	je     0x5c3141
5c312d:	8b 83 d4 02 00 00    	mov    0x2d4(%ebx),%eax
5c3133:	89 45 98             	mov    %eax,-0x68(%ebp)
5c3136:	8b 83 d0 02 00 00    	mov    0x2d0(%ebx),%eax
5c313c:	89 45 94             	mov    %eax,-0x6c(%ebp)
5c313f:	eb 12                	jmp    0x5c3153
5c3141:	8b 83 e8 03 00 00    	mov    0x3e8(%ebx),%eax
5c3147:	89 45 98             	mov    %eax,-0x68(%ebp)
5c314a:	8b 83 ec 03 00 00    	mov    0x3ec(%ebx),%eax
5c3150:	89 45 94             	mov    %eax,-0x6c(%ebp)
5c3153:	8b 83 78 02 00 00    	mov    0x278(%ebx),%eax
5c3159:	89 45 90             	mov    %eax,-0x70(%ebp)
5c315c:	8b 83 7c 02 00 00    	mov    0x27c(%ebx),%eax
5c3162:	89 45 8c             	mov    %eax,-0x74(%ebp)
5c3165:	8a 45 0c             	mov    0xc(%ebp),%al
5c3168:	88 45 c3             	mov    %al,-0x3d(%ebp)
5c316b:	8b 46 0c             	mov    0xc(%esi),%eax
5c316e:	2b 83 60 02 00 00    	sub    0x260(%ebx),%eax
5c3174:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5c3177:	8b 46 10             	mov    0x10(%esi),%eax
5c317a:	2b 83 64 02 00 00    	sub    0x264(%ebx),%eax
5c3180:	89 45 e0             	mov    %eax,-0x20(%ebp)
5c3183:	66 83 bb c2 03 00 00 	cmpw   $0x0,0x3c2(%ebx)
5c318a:	00
5c318b:	74 22                	je     0x5c31af
5c318d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c3190:	50                   	push   %eax
5c3191:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c3194:	50                   	push   %eax
5c3195:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c3198:	e8 fb a5 e6 ff       	call   0x42d798
5c319d:	50                   	push   %eax
5c319e:	8b 4d 08             	mov    0x8(%ebp),%ecx
5c31a1:	8b d3                	mov    %ebx,%edx
5c31a3:	8b 83 c4 03 00 00    	mov    0x3c4(%ebx),%eax
5c31a9:	ff 93 c0 03 00 00    	call   *0x3c0(%ebx)
5c31af:	83 bb f4 03 00 00 00 	cmpl   $0x0,0x3f4(%ebx)
5c31b6:	0f 84 ec 00 00 00    	je     0x5c32a8
5c31bc:	83 bb f8 03 00 00 00 	cmpl   $0x0,0x3f8(%ebx)
5c31c3:	0f 84 df 00 00 00    	je     0x5c32a8
5c31c9:	56                   	push   %esi
5c31ca:	8d b3 fc 03 00 00    	lea    0x3fc(%ebx),%esi
5c31d0:	8d bd 5c ff ff ff    	lea    -0xa4(%ebp),%edi
5c31d6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5c31d7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5c31d8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5c31d9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
5c31da:	5e                   	pop    %esi
5c31db:	8b 83 54 03 00 00    	mov    0x354(%ebx),%eax
5c31e1:	3b 45 08             	cmp    0x8(%ebp),%eax
5c31e4:	75 4a                	jne    0x5c3230
5c31e6:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c31e9:	50                   	push   %eax
5c31ea:	8b 83 78 02 00 00    	mov    0x278(%ebx),%eax
5c31f0:	50                   	push   %eax
5c31f1:	8b 83 7c 02 00 00    	mov    0x27c(%ebx),%eax
5c31f7:	50                   	push   %eax
5c31f8:	6a 00                	push   $0x0
5c31fa:	6a 00                	push   $0x0
5c31fc:	8b 83 f8 03 00 00    	mov    0x3f8(%ebx),%eax
5c3202:	8b 10                	mov    (%eax),%edx
5c3204:	ff 52 0c             	call   *0xc(%edx)
5c3207:	50                   	push   %eax
5c3208:	8b 83 f8 03 00 00    	mov    0x3f8(%ebx),%eax
5c320e:	8b 10                	mov    (%eax),%edx
5c3210:	ff 52 08             	call   *0x8(%edx)
5c3213:	50                   	push   %eax
5c3214:	68 ff 00 00 00       	push   $0xff
5c3219:	6a 00                	push   $0x0
5c321b:	6a 00                	push   $0x0
5c321d:	8b 83 f8 03 00 00    	mov    0x3f8(%ebx),%eax
5c3223:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
5c3226:	8b 55 fc             	mov    -0x4(%ebp),%edx
5c3229:	e8 c2 98 03 00       	call   0x5fcaf0
5c322e:	eb 48                	jmp    0x5c3278
5c3230:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c3233:	50                   	push   %eax
5c3234:	8b 83 78 02 00 00    	mov    0x278(%ebx),%eax
5c323a:	50                   	push   %eax
5c323b:	8b 83 7c 02 00 00    	mov    0x27c(%ebx),%eax
5c3241:	50                   	push   %eax
5c3242:	6a 00                	push   $0x0
5c3244:	6a 00                	push   $0x0
5c3246:	8b 83 f4 03 00 00    	mov    0x3f4(%ebx),%eax
5c324c:	8b 10                	mov    (%eax),%edx
5c324e:	ff 52 0c             	call   *0xc(%edx)
5c3251:	50                   	push   %eax
5c3252:	8b 83 f4 03 00 00    	mov    0x3f4(%ebx),%eax
5c3258:	8b 10                	mov    (%eax),%edx
5c325a:	ff 52 08             	call   *0x8(%edx)
5c325d:	50                   	push   %eax
5c325e:	68 ff 00 00 00       	push   $0xff
5c3263:	6a 00                	push   $0x0
5c3265:	6a 00                	push   $0x0
5c3267:	8b 83 f4 03 00 00    	mov    0x3f4(%ebx),%eax
5c326d:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
5c3270:	8b 55 fc             	mov    -0x4(%ebp),%edx
5c3273:	e8 78 98 03 00       	call   0x5fcaf0
5c3278:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
5c327e:	2b 85 5c ff ff ff    	sub    -0xa4(%ebp),%eax
5c3284:	89 45 90             	mov    %eax,-0x70(%ebp)
5c3287:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
5c328d:	2b 85 60 ff ff ff    	sub    -0xa0(%ebp),%eax
5c3293:	89 45 8c             	mov    %eax,-0x74(%ebp)
5c3296:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
5c329c:	01 45 e4             	add    %eax,-0x1c(%ebp)
5c329f:	8b 85 60 ff ff ff    	mov    -0xa0(%ebp),%eax
5c32a5:	01 45 e0             	add    %eax,-0x20(%ebp)
5c32a8:	66 83 bb ca 03 00 00 	cmpw   $0x0,0x3ca(%ebx)
5c32af:	00
5c32b0:	74 76                	je     0x5c3328
5c32b2:	33 c0                	xor    %eax,%eax
5c32b4:	89 85 5c ff ff ff    	mov    %eax,-0xa4(%ebp)
5c32ba:	33 c0                	xor    %eax,%eax
5c32bc:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
5c32c2:	8b 45 90             	mov    -0x70(%ebp),%eax
5c32c5:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
5c32cb:	8b 45 8c             	mov    -0x74(%ebp),%eax
5c32ce:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
5c32d4:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c32d7:	50                   	push   %eax
5c32d8:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c32db:	50                   	push   %eax
5c32dc:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c32df:	50                   	push   %eax
5c32e0:	8d 85 5c ff ff ff    	lea    -0xa4(%ebp),%eax
5c32e6:	50                   	push   %eax
5c32e7:	8b 4d 08             	mov    0x8(%ebp),%ecx
5c32ea:	8b d3                	mov    %ebx,%edx
5c32ec:	8b 83 cc 03 00 00    	mov    0x3cc(%ebx),%eax
5c32f2:	ff 93 c8 03 00 00    	call   *0x3c8(%ebx)
5c32f8:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
5c32fe:	2b 85 5c ff ff ff    	sub    -0xa4(%ebp),%eax
5c3304:	89 45 90             	mov    %eax,-0x70(%ebp)
5c3307:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
5c330d:	2b 85 60 ff ff ff    	sub    -0xa0(%ebp),%eax
5c3313:	89 45 8c             	mov    %eax,-0x74(%ebp)
5c3316:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
5c331c:	01 45 e4             	add    %eax,-0x1c(%ebp)
5c331f:	8b 85 60 ff ff ff    	mov    -0xa0(%ebp),%eax
5c3325:	01 45 e0             	add    %eax,-0x20(%ebp)
5c3328:	80 bb e4 03 00 00 00 	cmpb   $0x0,0x3e4(%ebx)
5c332f:	74 50                	je     0x5c3381
5c3331:	8b 46 34             	mov    0x34(%esi),%eax
5c3334:	8b 40 04             	mov    0x4(%eax),%eax
5c3337:	33 d2                	xor    %edx,%edx
5c3339:	e8 ea 1e e4 ff       	call   0x405228
5c333e:	74 41                	je     0x5c3381
5c3340:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c3343:	e8 50 a4 e6 ff       	call   0x42d798
5c3348:	8b 40 0c             	mov    0xc(%eax),%eax
5c334b:	8b 56 34             	mov    0x34(%esi),%edx
5c334e:	8b 52 08             	mov    0x8(%edx),%edx
5c3351:	8b 08                	mov    (%eax),%ecx
5c3353:	ff 51 08             	call   *0x8(%ecx)
5c3356:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c3359:	e8 3a a4 e6 ff       	call   0x42d798
5c335e:	50                   	push   %eax
5c335f:	8d 85 58 ff ff ff    	lea    -0xa8(%ebp),%eax
5c3365:	8b 56 34             	mov    0x34(%esi),%edx
5c3368:	8b 52 04             	mov    0x4(%edx),%edx
5c336b:	e8 78 17 e4 ff       	call   0x404ae8
5c3370:	8b 95 58 ff ff ff    	mov    -0xa8(%ebp),%edx
5c3376:	58                   	pop    %eax
5c3377:	e8 9c 57 e6 ff       	call   0x428b18
5c337c:	89 45 c8             	mov    %eax,-0x38(%ebp)
5c337f:	eb 05                	jmp    0x5c3386
5c3381:	33 c0                	xor    %eax,%eax
5c3383:	89 45 c8             	mov    %eax,-0x38(%ebp)
5c3386:	8b 45 8c             	mov    -0x74(%ebp),%eax
5c3389:	2b 45 94             	sub    -0x6c(%ebp),%eax
5c338c:	2b 45 98             	sub    -0x68(%ebp),%eax
5c338f:	2b 45 c8             	sub    -0x38(%ebp),%eax
5c3392:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5c3395:	33 c0                	xor    %eax,%eax
5c3397:	89 45 dc             	mov    %eax,-0x24(%ebp)
5c339a:	33 c0                	xor    %eax,%eax
5c339c:	89 45 d8             	mov    %eax,-0x28(%ebp)
5c339f:	33 c0                	xor    %eax,%eax
5c33a1:	89 45 f4             	mov    %eax,-0xc(%ebp)
5c33a4:	33 c0                	xor    %eax,%eax
5c33a6:	89 45 f0             	mov    %eax,-0x10(%ebp)
5c33a9:	80 bb 31 03 00 00 00 	cmpb   $0x0,0x331(%ebx)
5c33b0:	0f 84 94 00 00 00    	je     0x5c344a
5c33b6:	80 7d c3 00          	cmpb   $0x0,-0x3d(%ebp)
5c33ba:	74 12                	je     0x5c33ce
5c33bc:	80 bb 0c 03 00 00 01 	cmpb   $0x1,0x30c(%ebx)
5c33c3:	75 09                	jne    0x5c33ce
5c33c5:	c7 45 9c 0d 00 00 80 	movl   $0x8000000d,-0x64(%ebp)
5c33cc:	eb 1a                	jmp    0x5c33e8
5c33ce:	80 bb fd 02 00 00 00 	cmpb   $0x0,0x2fd(%ebx)
5c33d5:	74 08                	je     0x5c33df
5c33d7:	8b 46 1c             	mov    0x1c(%esi),%eax
5c33da:	89 45 9c             	mov    %eax,-0x64(%ebp)
5c33dd:	eb 09                	jmp    0x5c33e8
5c33df:	8b 83 10 03 00 00    	mov    0x310(%ebx),%eax
5c33e5:	89 45 9c             	mov    %eax,-0x64(%ebp)
5c33e8:	8a 83 30 03 00 00    	mov    0x330(%ebx),%al
5c33ee:	50                   	push   %eax
5c33ef:	8b 45 9c             	mov    -0x64(%ebp),%eax
5c33f2:	50                   	push   %eax
5c33f3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c33f6:	50                   	push   %eax
5c33f7:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c33fa:	50                   	push   %eax
5c33fb:	8b 45 90             	mov    -0x70(%ebp),%eax
5c33fe:	50                   	push   %eax
5c33ff:	8b 45 8c             	mov    -0x74(%ebp),%eax
5c3402:	50                   	push   %eax
5c3403:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c3406:	50                   	push   %eax
5c3407:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c340a:	50                   	push   %eax
5c340b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5c340e:	03 45 90             	add    -0x70(%ebp),%eax
5c3411:	50                   	push   %eax
5c3412:	8b 45 e0             	mov    -0x20(%ebp),%eax
5c3415:	03 45 8c             	add    -0x74(%ebp),%eax
5c3418:	50                   	push   %eax
5c3419:	8b 83 d8 03 00 00    	mov    0x3d8(%ebx),%eax
5c341f:	50                   	push   %eax
5c3420:	8a 83 dc 03 00 00    	mov    0x3dc(%ebx),%al
5c3426:	50                   	push   %eax
5c3427:	8b 83 e0 03 00 00    	mov    0x3e0(%ebx),%eax
5c342d:	50                   	push   %eax
5c342e:	6a 00                	push   $0x0
5c3430:	6a 00                	push   $0x0
5c3432:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c3435:	e8 5e a3 e6 ff       	call   0x42d798
5c343a:	8b d0                	mov    %eax,%edx
5c343c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5c343f:	66 a1 60 46 5c 00    	mov    0x5c4660,%ax
5c3445:	e8 8a b4 01 00       	call   0x5de8d4
5c344a:	8b 7e 08             	mov    0x8(%esi),%edi
5c344d:	85 ff                	test   %edi,%edi
5c344f:	0f 85 62 04 00 00    	jne    0x5c38b7
5c3455:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
5c3459:	0f 84 58 04 00 00    	je     0x5c38b7
5c345f:	8b 56 04             	mov    0x4(%esi),%edx
5c3462:	8b 83 68 02 00 00    	mov    0x268(%ebx),%eax
5c3468:	e8 4b 28 03 00       	call   0x5f5cb8
5c346d:	8b f8                	mov    %eax,%edi
5c346f:	8b 56 04             	mov    0x4(%esi),%edx
5c3472:	8b 83 68 02 00 00    	mov    0x268(%ebx),%eax
5c3478:	e8 6b 28 03 00       	call   0x5f5ce8
5c347d:	89 45 ec             	mov    %eax,-0x14(%ebp)
5c3480:	83 ff 01             	cmp    $0x1,%edi
5c3483:	7c 06                	jl     0x5c348b
5c3485:	83 7d ec 01          	cmpl   $0x1,-0x14(%ebp)
5c3489:	7d 07                	jge    0x5c3492
5c348b:	33 c0                	xor    %eax,%eax
5c348d:	89 45 d0             	mov    %eax,-0x30(%ebp)
5c3490:	eb 11                	jmp    0x5c34a3
5c3492:	8b 56 04             	mov    0x4(%esi),%edx
5c3495:	8b 83 68 02 00 00    	mov    0x268(%ebx),%eax
5c349b:	e8 e8 28 03 00       	call   0x5f5d88
5c34a0:	89 45 d0             	mov    %eax,-0x30(%ebp)
5c34a3:	8b 56 04             	mov    0x4(%esi),%edx
5c34a6:	8b 83 68 02 00 00    	mov    0x268(%ebx),%eax
5c34ac:	e8 3b 29 03 00       	call   0x5f5dec
5c34b1:	89 45 cc             	mov    %eax,-0x34(%ebp)
5c34b4:	80 bb 25 03 00 00 00 	cmpb   $0x0,0x325(%ebx)
5c34bb:	75 0d                	jne    0x5c34ca
5c34bd:	3b 7d 90             	cmp    -0x70(%ebp),%edi
5c34c0:	7f 08                	jg     0x5c34ca
5c34c2:	8b 45 ec             	mov    -0x14(%ebp),%eax
5c34c5:	3b 45 d4             	cmp    -0x2c(%ebp),%eax
5c34c8:	7e 1b                	jle    0x5c34e5
5c34ca:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5c34cd:	50                   	push   %eax
5c34ce:	8d 45 f4             	lea    -0xc(%ebp),%eax
5c34d1:	50                   	push   %eax
5c34d2:	8d 45 f0             	lea    -0x10(%ebp),%eax
5c34d5:	50                   	push   %eax
5c34d6:	8b 4d 90             	mov    -0x70(%ebp),%ecx
5c34d9:	8b 55 ec             	mov    -0x14(%ebp),%edx
5c34dc:	8b c7                	mov    %edi,%eax
5c34de:	e8 dd e5 03 00       	call   0x601ac0
5c34e3:	eb 09                	jmp    0x5c34ee
5c34e5:	89 7d f4             	mov    %edi,-0xc(%ebp)
5c34e8:	8b 45 ec             	mov    -0x14(%ebp),%eax
5c34eb:	89 45 f0             	mov    %eax,-0x10(%ebp)
5c34ee:	8b 45 90             	mov    -0x70(%ebp),%eax
5c34f1:	2b 45 f4             	sub    -0xc(%ebp),%eax
5c34f4:	99                   	cltd
5c34f5:	33 c2                	xor    %edx,%eax
5c34f7:	2b c2                	sub    %edx,%eax
5c34f9:	d1 f8                	sar    $1,%eax
5c34fb:	79 03                	jns    0x5c3500
5c34fd:	83 d0 00             	adc    $0x0,%eax
5c3500:	03 45 e4             	add    -0x1c(%ebp),%eax
5c3503:	89 45 dc             	mov    %eax,-0x24(%ebp)
5c3506:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5c3509:	2b 45 f0             	sub    -0x10(%ebp),%eax
5c350c:	99                   	cltd
5c350d:	33 c2                	xor    %edx,%eax
5c350f:	2b c2                	sub    %edx,%eax
5c3511:	d1 f8                	sar    $1,%eax
5c3513:	79 03                	jns    0x5c3518
5c3515:	83 d0 00             	adc    $0x0,%eax
5c3518:	8b 55 e0             	mov    -0x20(%ebp),%edx
5c351b:	03 55 98             	add    -0x68(%ebp),%edx
5c351e:	03 c2                	add    %edx,%eax
5c3520:	89 45 d8             	mov    %eax,-0x28(%ebp)
5c3523:	83 7d d0 00          	cmpl   $0x0,-0x30(%ebp)
5c3527:	0f 84 f0 04 00 00    	je     0x5c3a1d
5c352d:	b2 01                	mov    $0x1,%dl
5c352f:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5c3534:	e8 6b 40 03 00       	call   0x5f75a4
5c3539:	89 45 b8             	mov    %eax,-0x48(%ebp)
5c353c:	8b 45 ec             	mov    -0x14(%ebp),%eax
5c353f:	50                   	push   %eax
5c3540:	8b 56 04             	mov    0x4(%esi),%edx
5c3543:	8b 83 68 02 00 00    	mov    0x268(%ebx),%eax
5c3549:	e8 0a 28 03 00       	call   0x5f5d58
5c354e:	50                   	push   %eax
5c354f:	6a 00                	push   $0x0
5c3551:	8b cf                	mov    %edi,%ecx
5c3553:	8b 55 d0             	mov    -0x30(%ebp),%edx
5c3556:	8b 45 b8             	mov    -0x48(%ebp),%eax
5c3559:	e8 62 51 03 00       	call   0x5f86c0
5c355e:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
5c3562:	74 26                	je     0x5c358a
5c3564:	8b 45 ec             	mov    -0x14(%ebp),%eax
5c3567:	50                   	push   %eax
5c3568:	6a 03                	push   $0x3
5c356a:	6a 01                	push   $0x1
5c356c:	8b 45 b8             	mov    -0x48(%ebp),%eax
5c356f:	e8 64 43 03 00       	call   0x5f78d8
5c3574:	8b cf                	mov    %edi,%ecx
5c3576:	8b 55 cc             	mov    -0x34(%ebp),%edx
5c3579:	e8 42 51 03 00       	call   0x5f86c0
5c357e:	8b 45 b8             	mov    -0x48(%ebp),%eax
5c3581:	e8 52 43 03 00       	call   0x5f78d8
5c3586:	c6 40 43 00          	movb   $0x0,0x43(%eax)
5c358a:	b2 01                	mov    $0x1,%dl
5c358c:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5c3591:	e8 0e 40 03 00       	call   0x5f75a4
5c3596:	89 45 bc             	mov    %eax,-0x44(%ebp)