609113:	6a 02                	push   $0x2
609115:	53                   	push   %ebx
609116:	e8 c1 c9 ff ff       	call   0x605adc
60911b:	8b f0                	mov    %eax,%esi
60911d:	59                   	pop    %ecx
60911e:	59                   	pop    %ecx
60911f:	85 f6                	test   %esi,%esi
609121:	74 0c                	je     0x60912f
609123:	56                   	push   %esi
609124:	53                   	push   %ebx
609125:	ff 15 fc 21 68 00    	call   *0x6821fc
60912b:	85 c0                	test   %eax,%eax
60912d:	75 0d                	jne    0x60913c
60912f:	e8 c5 3e fe ff       	call   0x5ecff9
609134:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
60913a:	eb 09                	jmp    0x609145
60913c:	56                   	push   %esi
60913d:	e8 4c ff ff ff       	call   0x60908e
609142:	59                   	pop    %ecx
609143:	8b f8                	mov    %eax,%edi
609145:	56                   	push   %esi
609146:	e8 dd b6 ff ff       	call   0x604828
60914b:	59                   	pop    %ecx
60914c:	5e                   	pop    %esi
60914d:	8b c7                	mov    %edi,%eax
60914f:	5b                   	pop    %ebx
609150:	8b 4d fc             	mov    -0x4(%ebp),%ecx
609153:	33 cd                	xor    %ebp,%ecx
609155:	5f                   	pop    %edi
609156:	e8 7f 83 fd ff       	call   0x5e14da
60915b:	c9                   	leave
60915c:	c3                   	ret
60915d:	8b ff                	mov    %edi,%edi
60915f:	55                   	push   %ebp
609160:	8b ec                	mov    %esp,%ebp
609162:	8b 4d 08             	mov    0x8(%ebp),%ecx
609165:	33 c0                	xor    %eax,%eax
609167:	53                   	push   %ebx
609168:	56                   	push   %esi
609169:	57                   	push   %edi
60916a:	66 39 01             	cmp    %ax,(%ecx)
60916d:	74 31                	je     0x6091a0
60916f:	8b 55 0c             	mov    0xc(%ebp),%edx
609172:	0f b7 3a             	movzwl (%edx),%edi
609175:	8b f2                	mov    %edx,%esi
609177:	66 85 ff             	test   %di,%di
60917a:	74 1c                	je     0x609198
60917c:	0f b7 01             	movzwl (%ecx),%eax
60917f:	8b df                	mov    %edi,%ebx
609181:	66 3b d8             	cmp    %ax,%bx
609184:	74 21                	je     0x6091a7
609186:	83 c6 02             	add    $0x2,%esi
609189:	0f b7 06             	movzwl (%esi),%eax
60918c:	8b d8                	mov    %eax,%ebx
60918e:	66 85 c0             	test   %ax,%ax
609191:	0f b7 01             	movzwl (%ecx),%eax
609194:	75 eb                	jne    0x609181
609196:	33 c0                	xor    %eax,%eax
609198:	83 c1 02             	add    $0x2,%ecx
60919b:	66 39 01             	cmp    %ax,(%ecx)
60919e:	75 d5                	jne    0x609175
6091a0:	33 c0                	xor    %eax,%eax
6091a2:	5f                   	pop    %edi
6091a3:	5e                   	pop    %esi
6091a4:	5b                   	pop    %ebx
6091a5:	5d                   	pop    %ebp
6091a6:	c3                   	ret
6091a7:	8b c1                	mov    %ecx,%eax
6091a9:	eb f7                	jmp    0x6091a2
6091ab:	8b ff                	mov    %edi,%edi
6091ad:	55                   	push   %ebp
6091ae:	8b ec                	mov    %esp,%ebp
6091b0:	51                   	push   %ecx
6091b1:	51                   	push   %ecx
6091b2:	53                   	push   %ebx
6091b3:	56                   	push   %esi
6091b4:	6a 38                	push   $0x38
6091b6:	6a 40                	push   $0x40
6091b8:	e8 1f c9 ff ff       	call   0x605adc
6091bd:	8b f0                	mov    %eax,%esi
6091bf:	33 db                	xor    %ebx,%ebx
6091c1:	89 75 f8             	mov    %esi,-0x8(%ebp)
6091c4:	59                   	pop    %ecx
6091c5:	59                   	pop    %ecx
6091c6:	85 f6                	test   %esi,%esi
6091c8:	75 04                	jne    0x6091ce
6091ca:	8b f3                	mov    %ebx,%esi
6091cc:	eb 4b                	jmp    0x609219
6091ce:	8d 86 00 0e 00 00    	lea    0xe00(%esi),%eax
6091d4:	3b f0                	cmp    %eax,%esi
6091d6:	74 41                	je     0x609219
6091d8:	57                   	push   %edi
6091d9:	8d 7e 20             	lea    0x20(%esi),%edi
6091dc:	8b f0                	mov    %eax,%esi
6091de:	53                   	push   %ebx
6091df:	68 a0 0f 00 00       	push   $0xfa0
6091e4:	8d 47 e0             	lea    -0x20(%edi),%eax
6091e7:	50                   	push   %eax
6091e8:	e8 58 e5 ff ff       	call   0x607745
6091ed:	83 4f f8 ff          	orl    $0xffffffff,-0x8(%edi)
6091f1:	89 1f                	mov    %ebx,(%edi)
6091f3:	8d 7f 38             	lea    0x38(%edi),%edi
6091f6:	89 5f cc             	mov    %ebx,-0x34(%edi)
6091f9:	8d 47 e0             	lea    -0x20(%edi),%eax
6091fc:	c7 47 d0 00 00 0a 0a 	movl   $0xa0a0000,-0x30(%edi)
609203:	c6 47 d4 0a          	movb   $0xa,-0x2c(%edi)
609207:	80 67 d5 f8          	andb   $0xf8,-0x2b(%edi)
60920b:	89 5f d6             	mov    %ebx,-0x2a(%edi)
60920e:	88 5f da             	mov    %bl,-0x26(%edi)
609211:	3b c6                	cmp    %esi,%eax
609213:	75 c9                	jne    0x6091de
609215:	8b 75 f8             	mov    -0x8(%ebp),%esi
609218:	5f                   	pop    %edi
609219:	53                   	push   %ebx
60921a:	e8 09 b6 ff ff       	call   0x604828
60921f:	59                   	pop    %ecx
609220:	8b c6                	mov    %esi,%eax
609222:	5e                   	pop    %esi
609223:	5b                   	pop    %ebx
609224:	c9                   	leave
609225:	c3                   	ret
609226:	8b ff                	mov    %edi,%edi
609228:	55                   	push   %ebp
609229:	8b ec                	mov    %esp,%ebp
60922b:	56                   	push   %esi
60922c:	8b 75 08             	mov    0x8(%ebp),%esi
60922f:	85 f6                	test   %esi,%esi
609231:	74 25                	je     0x609258
609233:	53                   	push   %ebx
609234:	8d 9e 00 0e 00 00    	lea    0xe00(%esi),%ebx
60923a:	57                   	push   %edi
60923b:	8b fe                	mov    %esi,%edi
60923d:	3b f3                	cmp    %ebx,%esi
60923f:	74 0e                	je     0x60924f
609241:	57                   	push   %edi
609242:	ff 15 78 21 68 00    	call   *0x682178
609248:	83 c7 38             	add    $0x38,%edi
60924b:	3b fb                	cmp    %ebx,%edi
60924d:	75 f2                	jne    0x609241
60924f:	56                   	push   %esi
609250:	e8 d3 b5 ff ff       	call   0x604828
609255:	59                   	pop    %ecx
609256:	5f                   	pop    %edi
609257:	5b                   	pop    %ebx
609258:	5e                   	pop    %esi
609259:	5d                   	pop    %ebp
60925a:	c3                   	ret
60925b:	6a 10                	push   $0x10
60925d:	68 30 21 70 00       	push   $0x702130
609262:	e8 a9 92 fd ff       	call   0x5e2510
609267:	81 7d 08 00 20 00 00 	cmpl   $0x2000,0x8(%ebp)
60926e:	72 21                	jb     0x609291
609270:	e8 84 3d fe ff       	call   0x5ecff9
609275:	6a 09                	push   $0x9
609277:	5e                   	pop    %esi
609278:	89 30                	mov    %esi,(%eax)
60927a:	e8 a0 3c fe ff       	call   0x5ecf1f
60927f:	8b c6                	mov    %esi,%eax
609281:	8b 4d f0             	mov    -0x10(%ebp),%ecx
609284:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
60928b:	59                   	pop    %ecx
60928c:	5f                   	pop    %edi
60928d:	5e                   	pop    %esi
60928e:	5b                   	pop    %ebx
60928f:	c9                   	leave
609290:	c3                   	ret
609291:	33 f6                	xor    %esi,%esi
609293:	89 75 e4             	mov    %esi,-0x1c(%ebp)
609296:	6a 07                	push   $0x7
609298:	e8 e4 73 ff ff       	call   0x600681
60929d:	59                   	pop    %ecx
60929e:	89 75 fc             	mov    %esi,-0x4(%ebp)
6092a1:	8b fe                	mov    %esi,%edi
6092a3:	a1 b8 12 73 00       	mov    0x7312b8,%eax
6092a8:	89 7d e0             	mov    %edi,-0x20(%ebp)
6092ab:	39 45 08             	cmp    %eax,0x8(%ebp)
6092ae:	7c 1f                	jl     0x6092cf
6092b0:	39 34 bd b8 10 73 00 	cmp    %esi,0x7310b8(,%edi,4)
6092b7:	75 31                	jne    0x6092ea
6092b9:	e8 ed fe ff ff       	call   0x6091ab
6092be:	89 04 bd b8 10 73 00 	mov    %eax,0x7310b8(,%edi,4)
6092c5:	85 c0                	test   %eax,%eax
6092c7:	75 14                	jne    0x6092dd
6092c9:	6a 0c                	push   $0xc
6092cb:	5e                   	pop    %esi
6092cc:	89 75 e4             	mov    %esi,-0x1c(%ebp)
6092cf:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
6092d6:	e8 15 00 00 00       	call   0x6092f0
6092db:	eb a2                	jmp    0x60927f
6092dd:	a1 b8 12 73 00       	mov    0x7312b8,%eax
6092e2:	83 c0 40             	add    $0x40,%eax
6092e5:	a3 b8 12 73 00       	mov    %eax,0x7312b8
6092ea:	47                   	inc    %edi
6092eb:	eb bb                	jmp    0x6092a8
6092ed:	8b 75 e4             	mov    -0x1c(%ebp),%esi
6092f0:	6a 07                	push   $0x7
6092f2:	e8 da 73 ff ff       	call   0x6006d1
6092f7:	59                   	pop    %ecx
6092f8:	c3                   	ret
6092f9:	8b ff                	mov    %edi,%edi
6092fb:	55                   	push   %ebp
6092fc:	8b ec                	mov    %esp,%ebp
6092fe:	8b 45 08             	mov    0x8(%ebp),%eax
609301:	8b c8                	mov    %eax,%ecx
609303:	83 e0 3f             	and    $0x3f,%eax
609306:	c1 f9 06             	sar    $0x6,%ecx
609309:	6b c0 38             	imul   $0x38,%eax,%eax
60930c:	03 04 8d b8 10 73 00 	add    0x7310b8(,%ecx,4),%eax
609313:	50                   	push   %eax
609314:	ff 15 d4 22 68 00    	call   *0x6822d4
60931a:	5d                   	pop    %ebp
60931b:	c3                   	ret
60931c:	8b ff                	mov    %edi,%edi
60931e:	55                   	push   %ebp
60931f:	8b ec                	mov    %esp,%ebp
609321:	51                   	push   %ecx
609322:	53                   	push   %ebx
609323:	56                   	push   %esi
609324:	8b 75 08             	mov    0x8(%ebp),%esi
609327:	85 f6                	test   %esi,%esi
609329:	78 69                	js     0x609394
60932b:	3b 35 b8 12 73 00    	cmp    0x7312b8,%esi
609331:	73 61                	jae    0x609394
609333:	8b c6                	mov    %esi,%eax
609335:	8b de                	mov    %esi,%ebx
609337:	83 e0 3f             	and    $0x3f,%eax
60933a:	c1 fb 06             	sar    $0x6,%ebx
60933d:	6b c8 38             	imul   $0x38,%eax,%ecx
609340:	8b 04 9d b8 10 73 00 	mov    0x7310b8(,%ebx,4),%eax
609347:	89 4d fc             	mov    %ecx,-0x4(%ebp)
60934a:	83 7c 01 18 ff       	cmpl   $0xffffffff,0x18(%ecx,%eax,1)
60934f:	75 43                	jne    0x609394
609351:	57                   	push   %edi
609352:	e8 6d 94 ff ff       	call   0x6027c4
609357:	8b 7d 0c             	mov    0xc(%ebp),%edi
60935a:	83 f8 01             	cmp    $0x1,%eax
60935d:	75 22                	jne    0x609381
60935f:	83 ee 00             	sub    $0x0,%esi
609362:	74 14                	je     0x609378
609364:	83 ee 01             	sub    $0x1,%esi
609367:	74 0a                	je     0x609373
609369:	83 ee 01             	sub    $0x1,%esi
60936c:	75 13                	jne    0x609381
60936e:	57                   	push   %edi
60936f:	6a f4                	push   $0xfffffff4
609371:	eb 08                	jmp    0x60937b
609373:	57                   	push   %edi
609374:	6a f5                	push   $0xfffffff5
609376:	eb 03                	jmp    0x60937b
609378:	57                   	push   %edi
609379:	6a f6                	push   $0xfffffff6
60937b:	ff 15 00 22 68 00    	call   *0x682200
609381:	8b 04 9d b8 10 73 00 	mov    0x7310b8(,%ebx,4),%eax
609388:	8b 4d fc             	mov    -0x4(%ebp),%ecx
60938b:	89 7c 01 18          	mov    %edi,0x18(%ecx,%eax,1)
60938f:	33 c0                	xor    %eax,%eax
609391:	5f                   	pop    %edi
609392:	eb 16                	jmp    0x6093aa
609394:	e8 60 3c fe ff       	call   0x5ecff9
609399:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
60939f:	e8 42 3c fe ff       	call   0x5ecfe6
6093a4:	83 20 00             	andl   $0x0,(%eax)
6093a7:	83 c8 ff             	or     $0xffffffff,%eax
6093aa:	5e                   	pop    %esi
6093ab:	5b                   	pop    %ebx
6093ac:	c9                   	leave
6093ad:	c3                   	ret
6093ae:	8b ff                	mov    %edi,%edi
6093b0:	55                   	push   %ebp
6093b1:	8b ec                	mov    %esp,%ebp
6093b3:	8b 45 08             	mov    0x8(%ebp),%eax
6093b6:	8b c8                	mov    %eax,%ecx
6093b8:	83 e0 3f             	and    $0x3f,%eax
6093bb:	c1 f9 06             	sar    $0x6,%ecx
6093be:	6b c0 38             	imul   $0x38,%eax,%eax
6093c1:	03 04 8d b8 10 73 00 	add    0x7310b8(,%ecx,4),%eax
6093c8:	50                   	push   %eax
6093c9:	ff 15 d8 22 68 00    	call   *0x6822d8
6093cf:	5d                   	pop    %ebp
6093d0:	c3                   	ret
6093d1:	6a 1c                	push   $0x1c
6093d3:	68 10 21 70 00       	push   $0x702110
6093d8:	e8 33 91 fd ff       	call   0x5e2510
6093dd:	6a 07                	push   $0x7
6093df:	e8 9d 72 ff ff       	call   0x600681
6093e4:	59                   	pop    %ecx
6093e5:	83 cb ff             	or     $0xffffffff,%ebx
6093e8:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
6093eb:	33 ff                	xor    %edi,%edi
6093ed:	89 7d fc             	mov    %edi,-0x4(%ebp)
6093f0:	89 7d d4             	mov    %edi,-0x2c(%ebp)
6093f3:	81 ff 80 00 00 00    	cmp    $0x80,%edi
6093f9:	7d 44                	jge    0x60943f
6093fb:	8b 04 bd b8 10 73 00 	mov    0x7310b8(,%edi,4),%eax
609402:	89 45 d8             	mov    %eax,-0x28(%ebp)
609405:	85 c0                	test   %eax,%eax
609407:	75 54                	jne    0x60945d
609409:	e8 9d fd ff ff       	call   0x6091ab
60940e:	89 04 bd b8 10 73 00 	mov    %eax,0x7310b8(,%edi,4)
609415:	85 c0                	test   %eax,%eax
609417:	74 26                	je     0x60943f
609419:	83 05 b8 12 73 00 40 	addl   $0x40,0x7312b8
609420:	8b df                	mov    %edi,%ebx
609422:	c1 e3 06             	shl    $0x6,%ebx
609425:	53                   	push   %ebx
609426:	e8 ce fe ff ff       	call   0x6092f9
60942b:	59                   	pop    %ecx
60942c:	8b c3                	mov    %ebx,%eax
60942e:	c1 f8 06             	sar    $0x6,%eax
609431:	8b 04 85 b8 10 73 00 	mov    0x7310b8(,%eax,4),%eax
609438:	c6 40 28 01          	movb   $0x1,0x28(%eax)
60943c:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
60943f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
609446:	e8 90 00 00 00       	call   0x6094db
60944b:	8b c3                	mov    %ebx,%eax
60944d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
609450:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
609457:	59                   	pop    %ecx
609458:	5f                   	pop    %edi
609459:	5e                   	pop    %esi
60945a:	5b                   	pop    %ebx
60945b:	c9                   	leave
60945c:	c3                   	ret
60945d:	8d 88 00 0e 00 00    	lea    0xe00(%eax),%ecx
609463:	89 4d e0             	mov    %ecx,-0x20(%ebp)
609466:	8b f0                	mov    %eax,%esi
609468:	6a 38                	push   $0x38
60946a:	58                   	pop    %eax
60946b:	89 75 dc             	mov    %esi,-0x24(%ebp)
60946e:	3b f1                	cmp    %ecx,%esi
609470:	74 60                	je     0x6094d2
609472:	f6 46 28 01          	testb  $0x1,0x28(%esi)
609476:	75 1a                	jne    0x609492
609478:	56                   	push   %esi
609479:	ff 15 d4 22 68 00    	call   *0x6822d4
60947f:	f6 46 28 01          	testb  $0x1,0x28(%esi)
609483:	74 11                	je     0x609496
609485:	56                   	push   %esi
609486:	ff 15 d8 22 68 00    	call   *0x6822d8
60948c:	8b 4d e0             	mov    -0x20(%ebp),%ecx
60948f:	6a 38                	push   $0x38
609491:	58                   	pop    %eax
609492:	03 f0                	add    %eax,%esi
609494:	eb d5                	jmp    0x60946b
609496:	2b 75 d8             	sub    -0x28(%ebp),%esi
609499:	8b c6                	mov    %esi,%eax
60949b:	99                   	cltd
60949c:	6a 38                	push   $0x38
60949e:	59                   	pop    %ecx
60949f:	f7 f9                	idiv   %ecx