690008:	cc                   	int3
690009:	cc                   	int3
69000a:	cc                   	int3
69000b:	cc                   	int3
69000c:	cc                   	int3
69000d:	cc                   	int3
69000e:	cc                   	int3
69000f:	cc                   	int3
690010:	55                   	push   %ebp
690011:	8b ec                	mov    %esp,%ebp
690013:	83 e4 f8             	and    $0xfffffff8,%esp
690016:	83 ec 34             	sub    $0x34,%esp
690019:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
69001e:	33 c4                	xor    %esp,%eax
690020:	89 44 24 30          	mov    %eax,0x30(%esp)
690024:	8b 45 18             	mov    0x18(%ebp),%eax
690027:	8b 4d 0c             	mov    0xc(%ebp),%ecx
69002a:	53                   	push   %ebx
69002b:	8b 5d 08             	mov    0x8(%ebp),%ebx
69002e:	56                   	push   %esi
69002f:	57                   	push   %edi
690030:	89 44 24 30          	mov    %eax,0x30(%esp)
690034:	33 ff                	xor    %edi,%edi
690036:	33 c0                	xor    %eax,%eax
690038:	89 5c 24 24          	mov    %ebx,0x24(%esp)
69003c:	89 44 24 28          	mov    %eax,0x28(%esp)
690040:	89 44 24 14          	mov    %eax,0x14(%esp)
690044:	89 44 24 2c          	mov    %eax,0x2c(%esp)
690048:	89 44 24 10          	mov    %eax,0x10(%esp)
69004c:	85 c9                	test   %ecx,%ecx
69004e:	0f 8f c0 06 00 00    	jg     0x690714
690054:	66 39 83 6c 85 01 00 	cmp    %ax,0x1856c(%ebx)
69005b:	0f 84 4f 01 00 00    	je     0x6901b0
690061:	80 bb 14 69 01 00 00 	cmpb   $0x0,0x16914(%ebx)
690068:	8d 83 14 69 01 00    	lea    0x16914(%ebx),%eax
69006e:	0f 84 3c 01 00 00    	je     0x6901b0
690074:	8d bb 14 65 01 00    	lea    0x16514(%ebx),%edi
69007a:	8b f7                	mov    %edi,%esi
69007c:	89 7c 24 20          	mov    %edi,0x20(%esp)
690080:	6a ff                	push   $0xffffffff
690082:	50                   	push   %eax
690083:	68 ff 03 00 00       	push   $0x3ff
690088:	8d 46 01             	lea    0x1(%esi),%eax
69008b:	c6 06 3c             	movb   $0x3c,(%esi)
69008e:	50                   	push   %eax
69008f:	e8 e9 81 d8 ff       	call   0x41827d
690094:	8b ce                	mov    %esi,%ecx
690096:	83 c4 10             	add    $0x10,%esp
690099:	8d 51 01             	lea    0x1(%ecx),%edx
69009c:	0f 1f 40 00          	nopl   0x0(%eax)
6900a0:	8a 01                	mov    (%ecx),%al
6900a2:	41                   	inc    %ecx
6900a3:	84 c0                	test   %al,%al
6900a5:	75 f9                	jne    0x6900a0
6900a7:	8b 9b 5c 85 01 00    	mov    0x1855c(%ebx),%ebx
6900ad:	2b ca                	sub    %edx,%ecx
6900af:	03 f1                	add    %ecx,%esi
6900b1:	85 db                	test   %ebx,%ebx
6900b3:	0f 84 ac 00 00 00    	je     0x690165
6900b9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
6900c0:	66 83 7b 14 00       	cmpw   $0x0,0x14(%ebx)
6900c5:	0f 84 8c 00 00 00    	je     0x690157
6900cb:	8d 7b 16             	lea    0x16(%ebx),%edi
6900ce:	8d 57 01             	lea    0x1(%edi),%edx
6900d1:	8a 07                	mov    (%edi),%al
6900d3:	47                   	inc    %edi
6900d4:	84 c0                	test   %al,%al
6900d6:	75 f9                	jne    0x6900d1
6900d8:	2b fa                	sub    %edx,%edi
6900da:	8d 46 01             	lea    0x1(%esi),%eax
6900dd:	8b 54 24 24          	mov    0x24(%esp),%edx
6900e1:	8d 4b 16             	lea    0x16(%ebx),%ecx
6900e4:	03 c7                	add    %edi,%eax
6900e6:	81 c2 14 69 01 00    	add    $0x16914,%edx
6900ec:	3b c2                	cmp    %edx,%eax
6900ee:	73 71                	jae    0x690161
6900f0:	8b 44 24 24          	mov    0x24(%esp),%eax
6900f4:	c6 06 20             	movb   $0x20,(%esi)
6900f7:	46                   	inc    %esi
6900f8:	57                   	push   %edi
6900f9:	2b c6                	sub    %esi,%eax
6900fb:	51                   	push   %ecx
6900fc:	05 14 69 01 00       	add    $0x16914,%eax
690101:	50                   	push   %eax
690102:	56                   	push   %esi
690103:	e8 75 81 d8 ff       	call   0x41827d
690108:	03 f7                	add    %edi,%esi
69010a:	83 c4 10             	add    $0x10,%esp
69010d:	8b 7b 08             	mov    0x8(%ebx),%edi
690110:	85 ff                	test   %edi,%edi
690112:	74 43                	je     0x690157
690114:	8d 4f 01             	lea    0x1(%edi),%ecx
690117:	8a 07                	mov    (%edi),%al
690119:	47                   	inc    %edi
69011a:	84 c0                	test   %al,%al
69011c:	75 f9                	jne    0x690117
69011e:	8b 54 24 24          	mov    0x24(%esp),%edx
690122:	8d 46 03             	lea    0x3(%esi),%eax
690125:	2b f9                	sub    %ecx,%edi
690127:	03 c7                	add    %edi,%eax
690129:	8d 8a 14 69 01 00    	lea    0x16914(%edx),%ecx
69012f:	3b c1                	cmp    %ecx,%eax
690131:	73 2e                	jae    0x690161
690133:	66 c7 06 3d 22       	movw   $0x223d,(%esi)
690138:	83 c6 02             	add    $0x2,%esi
69013b:	57                   	push   %edi
69013c:	ff 73 08             	push   0x8(%ebx)
69013f:	2b d6                	sub    %esi,%edx
690141:	81 c2 14 69 01 00    	add    $0x16914,%edx
690147:	52                   	push   %edx
690148:	56                   	push   %esi
690149:	e8 2f 81 d8 ff       	call   0x41827d
69014e:	03 f7                	add    %edi,%esi
690150:	83 c4 10             	add    $0x10,%esp
690153:	c6 06 22             	movb   $0x22,(%esi)
690156:	46                   	inc    %esi
690157:	8b 1b                	mov    (%ebx),%ebx
690159:	85 db                	test   %ebx,%ebx
69015b:	0f 85 5f ff ff ff    	jne    0x6900c0
690161:	8b 7c 24 20          	mov    0x20(%esp),%edi
690165:	8b 5c 24 24          	mov    0x24(%esp),%ebx
690169:	66 83 bb fa 60 00 00 	cmpw   $0x0,0x60fa(%ebx)
690170:	00
690171:	75 04                	jne    0x690177
690173:	c6 06 2f             	movb   $0x2f,(%esi)
690176:	46                   	inc    %esi
690177:	8b cf                	mov    %edi,%ecx
690179:	66 c7 06 3e 00       	movw   $0x3e,(%esi)
69017e:	8d 51 01             	lea    0x1(%ecx),%edx
690181:	8a 01                	mov    (%ecx),%al
690183:	41                   	inc    %ecx
690184:	84 c0                	test   %al,%al
690186:	75 f9                	jne    0x690181
690188:	33 c0                	xor    %eax,%eax
69018a:	c7 44 24 2c 01 00 00 	movl   $0x1,0x2c(%esp)
690191:	00
690192:	2b ca                	sub    %edx,%ecx
690194:	66 89 83 6c 85 01 00 	mov    %ax,0x1856c(%ebx)
69019b:	66 39 83 fa 60 00 00 	cmp    %ax,0x60fa(%ebx)
6901a2:	89 4c 24 10          	mov    %ecx,0x10(%esp)
6901a6:	8b 4d 0c             	mov    0xc(%ebp),%ecx
6901a9:	0f 95 c0             	setne  %al
6901ac:	89 44 24 14          	mov    %eax,0x14(%esp)
6901b0:	85 c9                	test   %ecx,%ecx
6901b2:	0f 8f 5c 05 00 00    	jg     0x690714
6901b8:	6a 00                	push   $0x0
6901ba:	6a 00                	push   $0x0
6901bc:	53                   	push   %ebx
6901bd:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%esp)
6901c4:	00
6901c5:	c7 83 10 61 00 00 00 	movl   $0x0,0x6110(%ebx)
6901cc:	00 00 00
6901cf:	e8 0d 3b d8 ff       	call   0x413ce1
6901d4:	83 c4 0c             	add    $0xc,%esp
6901d7:	85 c0                	test   %eax,%eax
6901d9:	0f 85 cb 01 00 00    	jne    0x6903aa
6901df:	90                   	nop
6901e0:	8b 8b 10 61 00 00    	mov    0x6110(%ebx),%ecx
6901e6:	8b 83 0c 61 00 00    	mov    0x610c(%ebx),%eax
6901ec:	8b d0                	mov    %eax,%edx
6901ee:	8b b3 08 61 00 00    	mov    0x6108(%ebx),%esi
6901f4:	03 f1                	add    %ecx,%esi
6901f6:	89 83 10 61 00 00    	mov    %eax,0x6110(%ebx)
6901fc:	2b d1                	sub    %ecx,%edx
6901fe:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
690205:	00
690206:	89 54 24 18          	mov    %edx,0x18(%esp)
69020a:	0f 84 85 01 00 00    	je     0x690395
690210:	8b ca                	mov    %edx,%ecx
690212:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
690217:	7e 0f                	jle    0x690228
690219:	8a 07                	mov    (%edi),%al
69021b:	47                   	inc    %edi
69021c:	88 06                	mov    %al,(%esi)
69021e:	46                   	inc    %esi
69021f:	ff 4c 24 10          	decl   0x10(%esp)
690223:	e9 5c 01 00 00       	jmp    0x690384
690228:	53                   	push   %ebx
690229:	e8 c0 28 d8 ff       	call   0x412aee
69022e:	83 c4 04             	add    $0x4,%esp
690231:	83 f8 ff             	cmp    $0xffffffff,%eax
690234:	0f 84 80 04 00 00    	je     0x6906ba
69023a:	3d 80 00 00 00       	cmp    $0x80,%eax
69023f:	7d 09                	jge    0x69024a
690241:	83 f8 fa             	cmp    $0xfffffffa,%eax
690244:	0f 8d 0d 01 00 00    	jge    0x690357
69024a:	83 7c 24 1c 01       	cmpl   $0x1,0x1c(%esp)
69024f:	0f 84 02 01 00 00    	je     0x690357
690255:	f6 43 04 20          	testb  $0x20,0x4(%ebx)
690259:	0f 85 f8 00 00 00    	jne    0x690357
69025f:	8b c8                	mov    %eax,%ecx
690261:	81 e1 ff ff ff 7f    	and    $0x7fffffff,%ecx
690267:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
69026d:	72 0f                	jb     0x69027e
69026f:	53                   	push   %ebx
690270:	89 83 f4 60 00 00    	mov    %eax,0x60f4(%ebx)
690276:	e8 81 24 d8 ff       	call   0x4126fc
69027b:	83 c4 04             	add    $0x4,%esp
69027e:	8b c8                	mov    %eax,%ecx
690280:	81 e1 ff ff ff 7f    	and    $0x7fffffff,%ecx
690286:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
69028c:	0f 82 c5 00 00 00    	jb     0x690357
690292:	8b c1                	mov    %ecx,%eax
690294:	81 f9 00 08 00 00    	cmp    $0x800,%ecx
69029a:	7d 14                	jge    0x6902b0
69029c:	c1 f8 06             	sar    $0x6,%eax
69029f:	8d 54 24 35          	lea    0x35(%esp),%edx
6902a3:	24 1f                	and    $0x1f,%al
6902a5:	0c c0                	or     $0xc0,%al
6902a7:	88 44 24 34          	mov    %al,0x34(%esp)
6902ab:	e9 8b 00 00 00       	jmp    0x69033b
6902b0:	81 f9 00 00 01 00    	cmp    $0x10000,%ecx
6902b6:	7d 11                	jge    0x6902c9
6902b8:	c1 f8 0c             	sar    $0xc,%eax
6902bb:	8d 54 24 35          	lea    0x35(%esp),%edx
6902bf:	24 0f                	and    $0xf,%al
6902c1:	0c e0                	or     $0xe0,%al
6902c3:	88 44 24 34          	mov    %al,0x34(%esp)
6902c7:	eb 66                	jmp    0x69032f
6902c9:	81 f9 00 00 20 00    	cmp    $0x200000,%ecx
6902cf:	7d 11                	jge    0x6902e2
6902d1:	c1 f8 12             	sar    $0x12,%eax
6902d4:	8d 54 24 35          	lea    0x35(%esp),%edx
6902d8:	24 07                	and    $0x7,%al
6902da:	0c f0                	or     $0xf0,%al
6902dc:	88 44 24 34          	mov    %al,0x34(%esp)
6902e0:	eb 41                	jmp    0x690323
6902e2:	81 f9 00 00 00 04    	cmp    $0x4000000,%ecx
6902e8:	7d 11                	jge    0x6902fb
6902ea:	c1 f8 18             	sar    $0x18,%eax
6902ed:	8d 54 24 35          	lea    0x35(%esp),%edx
6902f1:	24 03                	and    $0x3,%al
6902f3:	0c f8                	or     $0xf8,%al
6902f5:	88 44 24 34          	mov    %al,0x34(%esp)
6902f9:	eb 1c                	jmp    0x690317
6902fb:	c1 f8 1e             	sar    $0x1e,%eax
6902fe:	8d 54 24 36          	lea    0x36(%esp),%edx
690302:	24 01                	and    $0x1,%al
690304:	0c fc                	or     $0xfc,%al
690306:	88 44 24 34          	mov    %al,0x34(%esp)
69030a:	8b c1                	mov    %ecx,%eax
69030c:	c1 f8 18             	sar    $0x18,%eax
69030f:	24 3f                	and    $0x3f,%al
690311:	0c 80                	or     $0x80,%al
690313:	88 44 24 35          	mov    %al,0x35(%esp)
690317:	8b c1                	mov    %ecx,%eax
690319:	c1 f8 12             	sar    $0x12,%eax
69031c:	24 3f                	and    $0x3f,%al
69031e:	0c 80                	or     $0x80,%al
690320:	88 02                	mov    %al,(%edx)
690322:	42                   	inc    %edx
690323:	8b c1                	mov    %ecx,%eax
690325:	c1 f8 0c             	sar    $0xc,%eax
690328:	24 3f                	and    $0x3f,%al
69032a:	0c 80                	or     $0x80,%al
69032c:	88 02                	mov    %al,(%edx)
69032e:	42                   	inc    %edx
69032f:	8b c1                	mov    %ecx,%eax
690331:	c1 f8 06             	sar    $0x6,%eax
690334:	24 3f                	and    $0x3f,%al
690336:	0c 80                	or     $0x80,%al
690338:	88 02                	mov    %al,(%edx)
69033a:	42                   	inc    %edx
69033b:	80 e1 3f             	and    $0x3f,%cl
69033e:	8d 44 24 34          	lea    0x34(%esp),%eax
690342:	80 c9 80             	or     $0x80,%cl
690345:	8d 7c 24 35          	lea    0x35(%esp),%edi
690349:	88 0a                	mov    %cl,(%edx)
69034b:	2b d0                	sub    %eax,%edx
69034d:	8a 44 24 34          	mov    0x34(%esp),%al
690351:	89 54 24 10          	mov    %edx,0x10(%esp)
690355:	eb 26                	jmp    0x69037d
690357:	8b 54 24 1c          	mov    0x1c(%esp),%edx
69035b:	8d 4a ff             	lea    -0x1(%edx),%ecx
69035e:	83 f9 07             	cmp    $0x7,%ecx
690361:	0f 87 fc 00 00 00    	ja     0x690463
690367:	ff 24 8d 84 0a 69 00 	jmp    *0x690a84(,%ecx,4)
69036e:	83 f8 5d             	cmp    $0x5d,%eax
690371:	b9 04 00 00 00       	mov    $0x4,%ecx
690376:	0f 44 d1             	cmove  %ecx,%edx
690379:	89 54 24 1c          	mov    %edx,0x1c(%esp)
69037d:	88 06                	mov    %al,(%esi)
69037f:	46                   	inc    %esi
690380:	8b 4c 24 18          	mov    0x18(%esp),%ecx
690384:	8b 44 24 20          	mov    0x20(%esp),%eax
690388:	40                   	inc    %eax
690389:	89 44 24 20          	mov    %eax,0x20(%esp)
69038d:	3b c1                	cmp    %ecx,%eax
69038f:	0f 82 7d fe ff ff    	jb     0x690212
690395:	6a 00                	push   $0x0
690397:	6a 00                	push   $0x0
690399:	53                   	push   %ebx
69039a:	e8 42 39 d8 ff       	call   0x413ce1
69039f:	83 c4 0c             	add    $0xc,%esp
6903a2:	85 c0                	test   %eax,%eax
6903a4:	0f 84 36 fe ff ff    	je     0x6901e0
6903aa:	33 c0                	xor    %eax,%eax
6903ac:	5f                   	pop    %edi
6903ad:	5e                   	pop    %esi
6903ae:	5b                   	pop    %ebx
6903af:	8b 4c 24 30          	mov    0x30(%esp),%ecx
6903b3:	33 cc                	xor    %esp,%ecx
6903b5:	e8 fc b3 d8 ff       	call   0x41b7b6
6903ba:	8b e5                	mov    %ebp,%esp
6903bc:	5d                   	pop    %ebp
6903bd:	c3                   	ret
6903be:	83 f8 2d             	cmp    $0x2d,%eax
6903c1:	b9 06 00 00 00       	mov    $0x6,%ecx
6903c6:	eb ae                	jmp    0x690376
6903c8:	83 f8 3f             	cmp    $0x3f,%eax
6903cb:	b9 08 00 00 00       	mov    $0x8,%ecx
6903d0:	eb a4                	jmp    0x690376
6903d2:	33 c9                	xor    %ecx,%ecx
6903d4:	83 f8 5d             	cmp    $0x5d,%eax
6903d7:	0f 94 c1             	sete   %cl
6903da:	8d 0c 8d 01 00 00 00 	lea    0x1(,%ecx,4),%ecx
6903e1:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
6903e5:	eb 96                	jmp    0x69037d
6903e7:	83 f8 3e             	cmp    $0x3e,%eax
6903ea:	75 0a                	jne    0x6903f6
6903ec:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
6903f3:	00
6903f4:	eb 87                	jmp    0x69037d
6903f6:	83 f8 5d             	cmp    $0x5d,%eax
6903f9:	b9 01 00 00 00       	mov    $0x1,%ecx
6903fe:	0f 45 d1             	cmovne %ecx,%edx
690401:	e9 73 ff ff ff       	jmp    0x690379
690406:	83 f8 2d             	cmp    $0x2d,%eax
690409:	b9 02 00 00 00       	mov    $0x2,%ecx
69040e:	ba 07 00 00 00       	mov    $0x7,%edx
690413:	0f 44 ca             	cmove  %edx,%ecx
690416:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
69041a:	e9 5e ff ff ff       	jmp    0x69037d
69041f:	83 f8 3e             	cmp    $0x3e,%eax
690422:	75 0d                	jne    0x690431
690424:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
69042b:	00
69042c:	e9 4c ff ff ff       	jmp    0x69037d
690431:	83 f8 2d             	cmp    $0x2d,%eax
690434:	b9 02 00 00 00       	mov    $0x2,%ecx
690439:	0f 45 d1             	cmovne %ecx,%edx
69043c:	e9 38 ff ff ff       	jmp    0x690379
690441:	83 f8 3e             	cmp    $0x3e,%eax
690444:	75 0d                	jne    0x690453
690446:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
69044d:	00
69044e:	e9 2a ff ff ff       	jmp    0x69037d
690453:	83 f8 3f             	cmp    $0x3f,%eax
690456:	b9 03 00 00 00       	mov    $0x3,%ecx
69045b:	0f 45 d1             	cmovne %ecx,%edx