61802c:	8b 4d 10             	mov    0x10(%ebp),%ecx
61802f:	53                   	push   %ebx
618030:	8b 5d 0c             	mov    0xc(%ebp),%ebx
618033:	8b c3                	mov    %ebx,%eax
618035:	56                   	push   %esi
618036:	8b 11                	mov    (%ecx),%edx
618038:	2b c2                	sub    %edx,%eax
61803a:	57                   	push   %edi
61803b:	83 e0 fc             	and    $0xfffffffc,%eax
61803e:	33 ff                	xor    %edi,%edi
618040:	8b 32                	mov    (%edx),%esi
618042:	83 f8 0c             	cmp    $0xc,%eax
618045:	0f 8c ad 00 00 00    	jl     0x6180f8
61804b:	85 f6                	test   %esi,%esi
61804d:	75 5c                	jne    0x6180ab
61804f:	39 7a 04             	cmp    %edi,0x4(%edx)
618052:	75 57                	jne    0x6180ab
618054:	39 7a 08             	cmp    %edi,0x8(%edx)
618057:	75 52                	jne    0x6180ab
618059:	8d 42 0c             	lea    0xc(%edx),%eax
61805c:	eb 13                	jmp    0x618071
61805e:	8b 31                	mov    (%ecx),%esi
618060:	39 3e                	cmp    %edi,(%esi)
618062:	75 13                	jne    0x618077
618064:	8d 82 28 02 00 00    	lea    0x228(%edx),%eax
61806a:	3b f0                	cmp    %eax,%esi
61806c:	74 09                	je     0x618077
61806e:	8d 46 04             	lea    0x4(%esi),%eax
618071:	89 01                	mov    %eax,(%ecx)
618073:	3b c3                	cmp    %ebx,%eax
618075:	75 e7                	jne    0x61805e
618077:	8b 09                	mov    (%ecx),%ecx
618079:	8b 45 14             	mov    0x14(%ebp),%eax
61807c:	2b ca                	sub    %edx,%ecx
61807e:	c1 f9 02             	sar    $0x2,%ecx
618081:	83 f9 0a             	cmp    $0xa,%ecx
618084:	77 13                	ja     0x618099
618086:	83 c1 fd             	add    $0xfffffffd,%ecx
618089:	89 08                	mov    %ecx,(%eax)
61808b:	8b 45 18             	mov    0x18(%ebp),%eax
61808e:	6a 11                	push   $0x11
618090:	c7 00 03 00 00 00    	movl   $0x3,(%eax)
618096:	58                   	pop    %eax
618097:	eb 6e                	jmp    0x618107
618099:	83 c1 f5             	add    $0xfffffff5,%ecx
61809c:	89 08                	mov    %ecx,(%eax)
61809e:	8b 45 18             	mov    0x18(%ebp),%eax
6180a1:	6a 12                	push   $0x12
6180a3:	c7 00 07 00 00 00    	movl   $0x7,(%eax)
6180a9:	eb eb                	jmp    0x618096
6180ab:	3b 55 08             	cmp    0x8(%ebp),%edx
6180ae:	74 48                	je     0x6180f8
6180b0:	3b 72 fc             	cmp    -0x4(%edx),%esi
6180b3:	75 43                	jne    0x6180f8
6180b5:	3b 72 04             	cmp    0x4(%edx),%esi
6180b8:	75 3e                	jne    0x6180f8
6180ba:	8b c2                	mov    %edx,%eax
6180bc:	3b 70 08             	cmp    0x8(%eax),%esi
6180bf:	75 37                	jne    0x6180f8
6180c1:	83 c0 0c             	add    $0xc,%eax
6180c4:	eb 10                	jmp    0x6180d6
6180c6:	8b 39                	mov    (%ecx),%edi
6180c8:	39 37                	cmp    %esi,(%edi)
6180ca:	75 10                	jne    0x6180dc
6180cc:	8d 42 18             	lea    0x18(%edx),%eax
6180cf:	3b f8                	cmp    %eax,%edi
6180d1:	74 09                	je     0x6180dc
6180d3:	8d 47 04             	lea    0x4(%edi),%eax
6180d6:	89 01                	mov    %eax,(%ecx)
6180d8:	3b c3                	cmp    %ebx,%eax
6180da:	75 ea                	jne    0x6180c6
6180dc:	8b 09                	mov    (%ecx),%ecx
6180de:	8b 45 14             	mov    0x14(%ebp),%eax
6180e1:	2b ca                	sub    %edx,%ecx
6180e3:	c1 f9 02             	sar    $0x2,%ecx
6180e6:	83 e9 03             	sub    $0x3,%ecx
6180e9:	6a 10                	push   $0x10
6180eb:	89 08                	mov    %ecx,(%eax)
6180ed:	8b 45 18             	mov    0x18(%ebp),%eax
6180f0:	c7 00 02 00 00 00    	movl   $0x2,(%eax)
6180f6:	eb 9e                	jmp    0x618096
6180f8:	83 01 04             	addl   $0x4,(%ecx)
6180fb:	8b c6                	mov    %esi,%eax
6180fd:	8b 4d 14             	mov    0x14(%ebp),%ecx
618100:	89 39                	mov    %edi,(%ecx)
618102:	8b 4d 18             	mov    0x18(%ebp),%ecx
618105:	89 39                	mov    %edi,(%ecx)
618107:	5f                   	pop    %edi
618108:	5e                   	pop    %esi
618109:	5b                   	pop    %ebx
61810a:	5d                   	pop    %ebp
61810b:	c3                   	ret
61810c:	55                   	push   %ebp
61810d:	8b ec                	mov    %esp,%ebp
61810f:	56                   	push   %esi
618110:	8b 75 08             	mov    0x8(%ebp),%esi
618113:	0f b6 06             	movzbl (%esi),%eax
618116:	0f b6 56 01          	movzbl 0x1(%esi),%edx
61811a:	c1 e0 05             	shl    $0x5,%eax
61811d:	33 c2                	xor    %edx,%eax
61811f:	0f b6 56 02          	movzbl 0x2(%esi),%edx
618123:	c1 e0 05             	shl    $0x5,%eax
618126:	33 c2                	xor    %edx,%eax
618128:	23 81 60 01 00 00    	and    0x160(%ecx),%eax
61812e:	5e                   	pop    %esi
61812f:	5d                   	pop    %ebp
618130:	c2 04 00             	ret    $0x4
618133:	6a 08                	push   $0x8
618135:	68 00 0b 00 00       	push   $0xb00
61813a:	b8 55 24 66 00       	mov    $0x662455,%eax
61813f:	e8 6a 2e 03 00       	call   0x64afae
618144:	8b f9                	mov    %ecx,%edi
618146:	89 bd 0c f5 ff ff    	mov    %edi,-0xaf4(%ebp)
61814c:	0f b6 43 08          	movzbl 0x8(%ebx),%eax
618150:	6a 01                	push   $0x1
618152:	50                   	push   %eax
618153:	e8 c5 17 00 00       	call   0x61991d
618158:	8b 73 0c             	mov    0xc(%ebx),%esi
61815b:	8b cf                	mov    %edi,%ecx
61815d:	6a 02                	push   $0x2
61815f:	56                   	push   %esi
618160:	e8 b8 17 00 00       	call   0x61991d
618165:	85 f6                	test   %esi,%esi
618167:	75 77                	jne    0x6181e0
618169:	8b cf                	mov    %edi,%ecx
61816b:	e8 59 08 00 00       	call   0x6189c9
618170:	0f b7 87 04 07 00 00 	movzwl 0x704(%edi),%eax
618177:	8b cf                	mov    %edi,%ecx
618179:	6a 01                	push   $0x1
61817b:	56                   	push   %esi
61817c:	50                   	push   %eax
61817d:	8b 07                	mov    (%edi),%eax
61817f:	ff 90 a4 00 00 00    	call   *0xa4(%eax)
618185:	8b c8                	mov    %eax,%ecx
618187:	e8 b1 cd ff ff       	call   0x614f3d
61818c:	66 8b 87 04 07 00 00 	mov    0x704(%edi),%ax
618193:	8b cf                	mov    %edi,%ecx
618195:	6a 01                	push   $0x1
618197:	66 f7 d0             	not    %ax
61819a:	0f b7 c0             	movzwl %ax,%eax
61819d:	56                   	push   %esi
61819e:	50                   	push   %eax
61819f:	8b 07                	mov    (%edi),%eax
6181a1:	ff 90 a4 00 00 00    	call   *0xa4(%eax)
6181a7:	8b c8                	mov    %eax,%ecx
6181a9:	e8 8f cd ff ff       	call   0x614f3d
6181ae:	8b 8d 0c f5 ff ff    	mov    -0xaf4(%ebp),%ecx
6181b4:	8b b7 04 07 00 00    	mov    0x704(%edi),%esi
6181ba:	8b bf 00 07 00 00    	mov    0x700(%edi),%edi
6181c0:	8b 01                	mov    (%ecx),%eax
6181c2:	03 b9 c4 01 00 00    	add    0x1c4(%ecx),%edi
6181c8:	ff 90 a4 00 00 00    	call   *0xa4(%eax)
6181ce:	6a 01                	push   $0x1
6181d0:	6a 00                	push   $0x0
6181d2:	56                   	push   %esi
6181d3:	8b 10                	mov    (%eax),%edx
6181d5:	8b c8                	mov    %eax,%ecx
6181d7:	57                   	push   %edi
6181d8:	ff 52 14             	call   *0x14(%edx)
6181db:	e9 d7 04 00 00       	jmp    0x6186b7
6181e0:	33 c9                	xor    %ecx,%ecx
6181e2:	89 8d 10 f5 ff ff    	mov    %ecx,-0xaf0(%ebp)
6181e8:	83 fe 02             	cmp    $0x2,%esi
6181eb:	0f 85 b9 03 00 00    	jne    0x6185aa
6181f1:	be 1e 01 00 00       	mov    $0x11e,%esi
6181f6:	8d 8d 28 f5 ff ff    	lea    -0xad8(%ebp),%ecx
6181fc:	56                   	push   %esi
6181fd:	e8 5f f7 ff ff       	call   0x617961
618202:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
618206:	8d 8d b0 fe ff ff    	lea    -0x150(%ebp),%ecx
61820c:	6a 1e                	push   $0x1e
61820e:	e8 ca f7 ff ff       	call   0x6179dd
618213:	8b 87 64 06 00 00    	mov    0x664(%edi),%eax
618219:	56                   	push   %esi
61821a:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
61821e:	c7 80 00 04 00 00 01 	movl   $0x1,0x400(%eax)
618225:	00 00 00
618228:	ff b7 64 06 00 00    	push   0x664(%edi)
61822e:	6a 0f                	push   $0xf
618230:	ff b5 ac f9 ff ff    	push   -0x654(%ebp)
618236:	e8 07 08 00 00       	call   0x618a42
61823b:	83 c4 10             	add    $0x10,%esp
61823e:	8d 8f a4 01 00 00    	lea    0x1a4(%edi),%ecx
618244:	56                   	push   %esi
618245:	ff b5 ac f9 ff ff    	push   -0x654(%ebp)
61824b:	e8 f0 0b 00 00       	call   0x618e40
618250:	8b b5 ac f9 ff ff    	mov    -0x654(%ebp),%esi
618256:	8b 85 a8 f9 ff ff    	mov    -0x658(%ebp),%eax
61825c:	6a 00                	push   $0x0
61825e:	ff b5 00 f5 ff ff    	push   -0xb00(%ebp)
618264:	8d 8e 04 04 00 00    	lea    0x404(%esi),%ecx
61826a:	8d 04 86             	lea    (%esi,%eax,4),%eax
61826d:	51                   	push   %ecx
61826e:	50                   	push   %eax
61826f:	8d 85 1c f5 ff ff    	lea    -0xae4(%ebp),%eax
618275:	50                   	push   %eax
618276:	e8 5f f6 ff ff       	call   0x6178da
61827b:	6a 1e                	push   $0x1e
61827d:	ff b7 ec 06 00 00    	push   0x6ec(%edi)
618283:	8b 00                	mov    (%eax),%eax
618285:	2b c6                	sub    %esi,%eax
618287:	2d 04 04 00 00       	sub    $0x404,%eax
61828c:	6a 0f                	push   $0xf
61828e:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
618294:	c1 f8 02             	sar    $0x2,%eax
618297:	89 85 08 f5 ff ff    	mov    %eax,-0xaf8(%ebp)
61829d:	e8 a0 07 00 00       	call   0x618a42
6182a2:	83 c4 24             	add    $0x24,%esp
6182a5:	8d 8f b0 01 00 00    	lea    0x1b0(%edi),%ecx
6182ab:	6a 1e                	push   $0x1e
6182ad:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
6182b3:	e8 88 0b 00 00       	call   0x618e40
6182b8:	8b b5 34 ff ff ff    	mov    -0xcc(%ebp),%esi
6182be:	8b 85 30 ff ff ff    	mov    -0xd0(%ebp),%eax
6182c4:	6a 00                	push   $0x0
6182c6:	ff b5 00 f5 ff ff    	push   -0xb00(%ebp)
6182cc:	8d 4e 04             	lea    0x4(%esi),%ecx
6182cf:	8d 04 86             	lea    (%esi,%eax,4),%eax
6182d2:	51                   	push   %ecx
6182d3:	50                   	push   %eax
6182d4:	8d 85 1c f5 ff ff    	lea    -0xae4(%ebp),%eax
6182da:	50                   	push   %eax
6182db:	e8 fa f5 ff ff       	call   0x6178da
6182e0:	83 c4 14             	add    $0x14,%esp
6182e3:	8d 8d b0 f9 ff ff    	lea    -0x650(%ebp),%ecx
6182e9:	8b 00                	mov    (%eax),%eax
6182eb:	2b c6                	sub    %esi,%eax
6182ed:	8b b5 08 f5 ff ff    	mov    -0xaf8(%ebp),%esi
6182f3:	83 e8 04             	sub    $0x4,%eax
6182f6:	c1 f8 02             	sar    $0x2,%eax
6182f9:	89 85 24 f5 ff ff    	mov    %eax,-0xadc(%ebp)
6182ff:	05 02 01 00 00       	add    $0x102,%eax
618304:	03 c6                	add    %esi,%eax
618306:	50                   	push   %eax
618307:	e8 a6 f6 ff ff       	call   0x6179b2
61830c:	8d 04 b5 04 04 00 00 	lea    0x404(,%esi,4),%eax
618313:	50                   	push   %eax
618314:	ff b5 ac f9 ff ff    	push   -0x654(%ebp)
61831a:	ff b5 ac fe ff ff    	push   -0x154(%ebp)
618320:	e8 db ab fc ff       	call   0x5e2f00
618325:	8b 85 24 f5 ff ff    	mov    -0xadc(%ebp),%eax
61832b:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
618332:	50                   	push   %eax
618333:	8b 85 ac fe ff ff    	mov    -0x154(%ebp),%eax
618339:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
61833f:	8d 04 b0             	lea    (%eax,%esi,4),%eax
618342:	05 04 04 00 00       	add    $0x404,%eax
618347:	50                   	push   %eax
618348:	e8 b3 ab fc ff       	call   0x5e2f00
61834d:	83 c4 18             	add    $0x18,%esp
618350:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
618356:	6a 13                	push   $0x13
618358:	5e                   	pop    %esi
618359:	56                   	push   %esi
61835a:	89 b5 14 f5 ff ff    	mov    %esi,-0xaec(%ebp)
618360:	e8 27 f6 ff ff       	call   0x61798c
618365:	56                   	push   %esi
618366:	8d 4d 90             	lea    -0x70(%ebp),%ecx
618369:	e8 1e f6 ff ff       	call   0x61798c
61836e:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
618371:	33 d2                	xor    %edx,%edx
618373:	8b 45 88             	mov    -0x78(%ebp),%eax
618376:	88 95 1c f5 ff ff    	mov    %dl,-0xae4(%ebp)
61837c:	ff b5 1c f5 ff ff    	push   -0xae4(%ebp)
618382:	89 95 20 f5 ff ff    	mov    %edx,-0xae0(%ebp)
618388:	8d 95 20 f5 ff ff    	lea    -0xae0(%ebp),%edx
61838e:	52                   	push   %edx
61838f:	8d 04 81             	lea    (%ecx,%eax,4),%eax
618392:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
618396:	50                   	push   %eax
618397:	51                   	push   %ecx
618398:	e8 55 ee ff ff       	call   0x6171f2
61839d:	8b 8d ac fe ff ff    	mov    -0x154(%ebp),%ecx
6183a3:	83 c4 10             	add    $0x10,%esp
6183a6:	8b 85 a8 fe ff ff    	mov    -0x158(%ebp),%eax
6183ac:	89 8d 1c f5 ff ff    	mov    %ecx,-0xae4(%ebp)
6183b2:	89 8d 18 f5 ff ff    	mov    %ecx,-0xae8(%ebp)
6183b8:	8d 04 81             	lea    (%ecx,%eax,4),%eax
6183bb:	89 85 20 f5 ff ff    	mov    %eax,-0xae0(%ebp)
6183c1:	3b c8                	cmp    %eax,%ecx
6183c3:	74 3d                	je     0x618402
6183c5:	8b f8                	mov    %eax,%edi
6183c7:	8b f1                	mov    %ecx,%esi
6183c9:	8d 85 fc f4 ff ff    	lea    -0xb04(%ebp),%eax
6183cf:	50                   	push   %eax
6183d0:	8d 85 04 f5 ff ff    	lea    -0xafc(%ebp),%eax
6183d6:	50                   	push   %eax
6183d7:	8d 85 18 f5 ff ff    	lea    -0xae8(%ebp),%eax
6183dd:	50                   	push   %eax
6183de:	57                   	push   %edi
6183df:	56                   	push   %esi
6183e0:	e8 44 fc ff ff       	call   0x618029
6183e5:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
6183e8:	83 c4 14             	add    $0x14,%esp
6183eb:	ff 04 81             	incl   (%ecx,%eax,4)
6183ee:	39 bd 18 f5 ff ff    	cmp    %edi,-0xae8(%ebp)
6183f4:	75 d3                	jne    0x6183c9
6183f6:	8b bd 0c f5 ff ff    	mov    -0xaf4(%ebp),%edi
6183fc:	8b b5 14 f5 ff ff    	mov    -0xaec(%ebp),%esi
618402:	56                   	push   %esi
618403:	ff 75 8c             	push   -0x74(%ebp)
618406:	6a 07                	push   $0x7
618408:	ff 75 e4             	push   -0x1c(%ebp)
61840b:	e8 32 06 00 00       	call   0x618a42
618410:	83 c4 10             	add    $0x10,%esp
618413:	8d 8d f0 f4 ff ff    	lea    -0xb10(%ebp),%ecx
618419:	56                   	push   %esi
61841a:	ff 75 e4             	push   -0x1c(%ebp)
61841d:	e8 3b f7 ff ff       	call   0x617b5d
618422:	8b 55 e4             	mov    -0x1c(%ebp),%edx
618425:	b9 bc c4 6d 00       	mov    $0x6dc4bc,%ecx
61842a:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
61842e:	8b 41 fc             	mov    -0x4(%ecx),%eax
618431:	83 3c 82 00          	cmpl   $0x0,(%edx,%eax,4)
618435:	75 0c                	jne    0x618443
618437:	83 e9 04             	sub    $0x4,%ecx
61843a:	4e                   	dec    %esi
61843b:	81 f9 80 c4 6d 00    	cmp    $0x6dc480,%ecx
618441:	77 eb                	ja     0x61842e
618443:	6a 05                	push   $0x5
618445:	ff b5 08 f5 ff ff    	push   -0xaf8(%ebp)
61844b:	89 b5 14 f5 ff ff    	mov    %esi,-0xaec(%ebp)
618451:	8b cf                	mov    %edi,%ecx
618453:	83 ad 14 f5 ff ff 04 	subl   $0x4,-0xaec(%ebp)
61845a:	89 b5 18 f5 ff ff    	mov    %esi,-0xae8(%ebp)
618460:	e8 b8 14 00 00       	call   0x61991d
618465:	6a 05                	push   $0x5
618467:	ff b5 24 f5 ff ff    	push   -0xadc(%ebp)
61846d:	8b cf                	mov    %edi,%ecx
61846f:	e8 a9 14 00 00       	call   0x61991d
618474:	6a 04                	push   $0x4
618476:	ff b5 14 f5 ff ff    	push   -0xaec(%ebp)
61847c:	8b cf                	mov    %edi,%ecx
61847e:	e8 9a 14 00 00       	call   0x61991d
618483:	33 c0                	xor    %eax,%eax
618485:	89 85 24 f5 ff ff    	mov    %eax,-0xadc(%ebp)
61848b:	85 f6                	test   %esi,%esi
61848d:	74 27                	je     0x6184b6
61848f:	8b 0c 85 70 c4 6d 00 	mov    0x6dc470(,%eax,4),%ecx
618496:	8b 45 e4             	mov    -0x1c(%ebp),%eax
618499:	6a 03                	push   $0x3
61849b:	ff 34 88             	push   (%eax,%ecx,4)
61849e:	8b cf                	mov    %edi,%ecx
6184a0:	e8 78 14 00 00       	call   0x61991d
6184a5:	8b 85 24 f5 ff ff    	mov    -0xadc(%ebp),%eax
6184ab:	40                   	inc    %eax
6184ac:	89 85 24 f5 ff ff    	mov    %eax,-0xadc(%ebp)
6184b2:	3b c6                	cmp    %esi,%eax
6184b4:	72 d9                	jb     0x61848f
6184b6:	8b 85 ac fe ff ff    	mov    -0x154(%ebp),%eax