46209a:	55                   	push   %ebp
46209b:	8b 86 90 02 00 00    	mov    0x290(%esi),%eax
4620a1:	e8 a6 fe ff ff       	call   0x461f4c
4620a6:	59                   	pop    %ecx
4620a7:	89 45 f4             	mov    %eax,-0xc(%ebp)
4620aa:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4620ae:	75 10                	jne    0x4620c0
4620b0:	55                   	push   %ebp
4620b1:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
4620b7:	e8 90 fe ff ff       	call   0x461f4c
4620bc:	59                   	pop    %ecx
4620bd:	89 45 f4             	mov    %eax,-0xc(%ebp)
4620c0:	8d 4d cc             	lea    -0x34(%ebp),%ecx
4620c3:	33 d2                	xor    %edx,%edx
4620c5:	33 c0                	xor    %eax,%eax
4620c7:	e8 8c 4c fb ff       	call   0x416d58
4620cc:	8d 55 cc             	lea    -0x34(%ebp),%edx
4620cf:	8d 4d db             	lea    -0x25(%ebp),%ecx
4620d2:	8b c6                	mov    %esi,%eax
4620d4:	e8 1b 78 fe ff       	call   0x4498f4
4620d9:	0f b7 45 db          	movzwl -0x25(%ebp),%eax
4620dd:	66 89 45 d7          	mov    %ax,-0x29(%ebp)
4620e1:	0f b7 45 df          	movzwl -0x21(%ebp),%eax
4620e5:	66 89 45 d9          	mov    %ax,-0x27(%ebp)
4620e9:	8b 45 d7             	mov    -0x29(%ebp),%eax
4620ec:	89 45 ef             	mov    %eax,-0x11(%ebp)
4620ef:	f6 86 70 02 00 00 08 	testb  $0x8,0x270(%esi)
4620f6:	74 2c                	je     0x462124
4620f8:	80 7d f3 01          	cmpb   $0x1,-0xd(%ebp)
4620fc:	75 26                	jne    0x462124
4620fe:	8b 4d ef             	mov    -0x11(%ebp),%ecx
462101:	ba 0d 00 00 00       	mov    $0xd,%edx
462106:	a1 ac b5 4a 00       	mov    0x4ab5ac,%eax
46210b:	e8 10 4f 00 00       	call   0x467020
462110:	8b 4d f4             	mov    -0xc(%ebp),%ecx
462113:	ba 08 00 00 00       	mov    $0x8,%edx
462118:	a1 ac b5 4a 00       	mov    0x4ab5ac,%eax
46211d:	e8 fe 4e 00 00       	call   0x467020
462122:	eb 28                	jmp    0x46214c
462124:	80 7d f3 01          	cmpb   $0x1,-0xd(%ebp)
462128:	75 0f                	jne    0x462139
46212a:	8b 55 f4             	mov    -0xc(%ebp),%edx
46212d:	a1 ac b5 4a 00       	mov    0x4ab5ac,%eax
462132:	e8 61 4e 00 00       	call   0x466f98
462137:	eb 13                	jmp    0x46214c
462139:	80 7d f3 00          	cmpb   $0x0,-0xd(%ebp)
46213d:	75 0d                	jne    0x46214c
46213f:	8b 55 f8             	mov    -0x8(%ebp),%edx
462142:	a1 ac b5 4a 00       	mov    0x4ab5ac,%eax
462147:	e8 bc 4d 00 00       	call   0x466f08
46214c:	33 c0                	xor    %eax,%eax
46214e:	5a                   	pop    %edx
46214f:	59                   	pop    %ecx
462150:	59                   	pop    %ecx
462151:	64 89 10             	mov    %edx,%fs:(%eax)
462154:	68 69 21 46 00       	push   $0x462169
462159:	8d 45 f8             	lea    -0x8(%ebp),%eax
46215c:	e8 e7 25 fa ff       	call   0x404748
462161:	c3                   	ret
462162:	e9 49 1f fa ff       	jmp    0x4040b0
462167:	eb f0                	jmp    0x462159
462169:	5e                   	pop    %esi
46216a:	5b                   	pop    %ebx
46216b:	8b e5                	mov    %ebp,%esp
46216d:	5d                   	pop    %ebp
46216e:	c3                   	ret
46216f:	90                   	nop
462170:	53                   	push   %ebx
462171:	56                   	push   %esi
462172:	57                   	push   %edi
462173:	51                   	push   %ecx
462174:	89 14 24             	mov    %edx,(%esp)
462177:	8b f0                	mov    %eax,%esi
462179:	f6 46 1c 02          	testb  $0x2,0x1c(%esi)
46217d:	75 53                	jne    0x4621d2
46217f:	80 be 72 02 00 00 00 	cmpb   $0x0,0x272(%esi)
462186:	74 4a                	je     0x4621d2
462188:	8b 3c 24             	mov    (%esp),%edi
46218b:	8b 7f 08             	mov    0x8(%edi),%edi
46218e:	8b 46 74             	mov    0x74(%esi),%eax
462191:	8d 57 18             	lea    0x18(%edi),%edx
462194:	8b 48 14             	mov    0x14(%eax),%ecx
462197:	85 c9                	test   %ecx,%ecx
462199:	76 02                	jbe    0x46219d
46219b:	89 0a                	mov    %ecx,(%edx)
46219d:	8b 48 10             	mov    0x10(%eax),%ecx
4621a0:	85 c9                	test   %ecx,%ecx
4621a2:	76 03                	jbe    0x4621a7
4621a4:	89 4a 04             	mov    %ecx,0x4(%edx)
4621a7:	8d 57 20             	lea    0x20(%edi),%edx
4621aa:	8b 48 0c             	mov    0xc(%eax),%ecx
4621ad:	85 c9                	test   %ecx,%ecx
4621af:	76 02                	jbe    0x4621b3
4621b1:	89 0a                	mov    %ecx,(%edx)
4621b3:	8b 48 08             	mov    0x8(%eax),%ecx
4621b6:	85 c9                	test   %ecx,%ecx
4621b8:	76 03                	jbe    0x4621bd
4621ba:	89 4a 04             	mov    %ecx,0x4(%edx)
4621bd:	8d 47 20             	lea    0x20(%edi),%eax
4621c0:	50                   	push   %eax
4621c1:	8d 47 24             	lea    0x24(%edi),%eax
4621c4:	50                   	push   %eax
4621c5:	8d 4f 1c             	lea    0x1c(%edi),%ecx
4621c8:	8d 57 18             	lea    0x18(%edi),%edx
4621cb:	8b c6                	mov    %esi,%eax
4621cd:	8b 18                	mov    (%eax),%ebx
4621cf:	ff 53 38             	call   *0x38(%ebx)
4621d2:	8b 14 24             	mov    (%esp),%edx
4621d5:	8b c6                	mov    %esi,%eax
4621d7:	8b 08                	mov    (%eax),%ecx
4621d9:	ff 51 f0             	call   *-0x10(%ecx)
4621dc:	5a                   	pop    %edx
4621dd:	5f                   	pop    %edi
4621de:	5e                   	pop    %esi
4621df:	5b                   	pop    %ebx
4621e0:	c3                   	ret
4621e1:	8d 40 00             	lea    0x0(%eax),%eax
4621e4:	55                   	push   %ebp
4621e5:	8b ec                	mov    %esp,%ebp
4621e7:	53                   	push   %ebx
4621e8:	56                   	push   %esi
4621e9:	8b f2                	mov    %edx,%esi
4621eb:	8b d8                	mov    %eax,%ebx
4621ed:	8b 03                	mov    (%ebx),%eax
4621ef:	03 c1                	add    %ecx,%eax
4621f1:	2b c6                	sub    %esi,%eax
4621f3:	99                   	cltd
4621f4:	33 c2                	xor    %edx,%eax
4621f6:	2b c2                	sub    %edx,%eax
4621f8:	8b 55 08             	mov    0x8(%ebp),%edx
4621fb:	8b 52 fc             	mov    -0x4(%edx),%edx
4621fe:	3b 82 4c 03 00 00    	cmp    0x34c(%edx),%eax
462204:	7d 04                	jge    0x46220a
462206:	2b f1                	sub    %ecx,%esi
462208:	89 33                	mov    %esi,(%ebx)
46220a:	5e                   	pop    %esi
46220b:	5b                   	pop    %ebx
46220c:	5d                   	pop    %ebp
46220d:	c3                   	ret
46220e:	8b c0                	mov    %eax,%eax
462210:	55                   	push   %ebp
462211:	8b ec                	mov    %esp,%ebp
462213:	83 c4 dc             	add    $0xffffffdc,%esp
462216:	53                   	push   %ebx
462217:	56                   	push   %esi
462218:	8b da                	mov    %edx,%ebx
46221a:	89 45 fc             	mov    %eax,-0x4(%ebp)
46221d:	8b 55 fc             	mov    -0x4(%ebp),%edx
462220:	80 ba 48 03 00 00 00 	cmpb   $0x0,0x348(%edx)
462227:	0f 84 bf 00 00 00    	je     0x4622ec
46222d:	8b 55 fc             	mov    -0x4(%ebp),%edx
462230:	83 7a 30 00          	cmpl   $0x0,0x30(%edx)
462234:	74 0d                	je     0x462243
462236:	8b 55 fc             	mov    -0x4(%ebp),%edx
462239:	f6 42 1c 10          	testb  $0x10,0x1c(%edx)
46223d:	0f 85 a9 00 00 00    	jne    0x4622ec
462243:	8b 43 08             	mov    0x8(%ebx),%eax
462246:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
46224a:	75 0a                	jne    0x462256
46224c:	83 78 0c 00          	cmpl   $0x0,0xc(%eax)
462250:	0f 84 96 00 00 00    	je     0x4622ec
462256:	8b 73 08             	mov    0x8(%ebx),%esi
462259:	8b 46 10             	mov    0x10(%esi),%eax
46225c:	8b 55 fc             	mov    -0x4(%ebp),%edx
46225f:	3b 42 48             	cmp    0x48(%edx),%eax
462262:	0f 85 84 00 00 00    	jne    0x4622ec
462268:	8b 46 14             	mov    0x14(%esi),%eax
46226b:	8b 55 fc             	mov    -0x4(%ebp),%edx
46226e:	3b 42 4c             	cmp    0x4c(%edx),%eax
462271:	75 79                	jne    0x4622ec
462273:	8b 73 08             	mov    0x8(%ebx),%esi
462276:	8b 45 fc             	mov    -0x4(%ebp),%eax
462279:	e8 76 d8 ff ff       	call   0x45faf4
46227e:	8d 55 ec             	lea    -0x14(%ebp),%edx
462281:	e8 12 1a 00 00       	call   0x463c98
462286:	55                   	push   %ebp
462287:	8b 45 fc             	mov    -0x4(%ebp),%eax
46228a:	e8 65 d8 ff ff       	call   0x45faf4
46228f:	8d 55 dc             	lea    -0x24(%ebp),%edx
462292:	e8 01 1a 00 00       	call   0x463c98
462297:	8b 4d dc             	mov    -0x24(%ebp),%ecx
46229a:	8d 46 08             	lea    0x8(%esi),%eax
46229d:	8b 55 ec             	mov    -0x14(%ebp),%edx
4622a0:	e8 3f ff ff ff       	call   0x4621e4
4622a5:	59                   	pop    %ecx
4622a6:	55                   	push   %ebp
4622a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4622aa:	e8 45 d8 ff ff       	call   0x45faf4
4622af:	8d 55 dc             	lea    -0x24(%ebp),%edx
4622b2:	e8 e1 19 00 00       	call   0x463c98
4622b7:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4622ba:	8d 46 0c             	lea    0xc(%esi),%eax
4622bd:	8b 55 f0             	mov    -0x10(%ebp),%edx
4622c0:	e8 1f ff ff ff       	call   0x4621e4
4622c5:	59                   	pop    %ecx
4622c6:	55                   	push   %ebp
4622c7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4622ca:	8b 48 48             	mov    0x48(%eax),%ecx
4622cd:	8d 46 08             	lea    0x8(%esi),%eax
4622d0:	8b 55 f4             	mov    -0xc(%ebp),%edx
4622d3:	e8 0c ff ff ff       	call   0x4621e4
4622d8:	59                   	pop    %ecx
4622d9:	55                   	push   %ebp
4622da:	8b 45 fc             	mov    -0x4(%ebp),%eax
4622dd:	8b 48 4c             	mov    0x4c(%eax),%ecx
4622e0:	8d 46 0c             	lea    0xc(%esi),%eax
4622e3:	8b 55 f8             	mov    -0x8(%ebp),%edx
4622e6:	e8 f9 fe ff ff       	call   0x4621e4
4622eb:	59                   	pop    %ecx
4622ec:	8b d3                	mov    %ebx,%edx
4622ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
4622f1:	e8 7a da fe ff       	call   0x44fd70
4622f6:	5e                   	pop    %esi
4622f7:	5b                   	pop    %ebx
4622f8:	8b e5                	mov    %ebp,%esp
4622fa:	5d                   	pop    %ebp
4622fb:	c3                   	ret
4622fc:	53                   	push   %ebx
4622fd:	56                   	push   %esi
4622fe:	8b f2                	mov    %edx,%esi
462300:	8b d8                	mov    %eax,%ebx
462302:	8b d6                	mov    %esi,%edx
462304:	8b c3                	mov    %ebx,%eax
462306:	e8 ad 05 ff ff       	call   0x4528b8
46230b:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
46230f:	74 32                	je     0x462343
462311:	83 7b 30 00          	cmpl   $0x0,0x30(%ebx)
462315:	74 2c                	je     0x462343
462317:	83 bb 90 02 00 00 00 	cmpl   $0x0,0x290(%ebx)
46231e:	74 23                	je     0x462343
462320:	8b 83 90 02 00 00    	mov    0x290(%ebx),%eax
462326:	8b 40 34             	mov    0x34(%eax),%eax
462329:	e8 8e e8 fd ff       	call   0x440bbc
46232e:	85 c0                	test   %eax,%eax
462330:	7e 11                	jle    0x462343
462332:	8b 5e 08             	mov    0x8(%esi),%ebx
462335:	6a 0f                	push   $0xf
462337:	a1 28 75 4a 00       	mov    0x4a7528,%eax
46233c:	8b 00                	mov    (%eax),%eax
46233e:	ff d0                	call   *%eax
462340:	01 43 04             	add    %eax,0x4(%ebx)
462343:	5e                   	pop    %esi
462344:	5b                   	pop    %ebx
462345:	c3                   	ret
462346:	8b c0                	mov    %eax,%eax
462348:	53                   	push   %ebx
462349:	56                   	push   %esi
46234a:	8b d8                	mov    %eax,%ebx
46234c:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
462350:	75 0e                	jne    0x462360
462352:	8b c3                	mov    %ebx,%eax
462354:	66 be b0 ff          	mov    $0xffb0,%si
462358:	e8 bb 17 fa ff       	call   0x403b18
46235d:	5e                   	pop    %esi
46235e:	5b                   	pop    %ebx
46235f:	c3                   	ret
462360:	80 8b 58 03 00 00 20 	orb    $0x20,0x358(%ebx)
462367:	5e                   	pop    %esi
462368:	5b                   	pop    %ebx
462369:	c3                   	ret
46236a:	8b c0                	mov    %eax,%eax
46236c:	53                   	push   %ebx
46236d:	56                   	push   %esi
46236e:	8b d8                	mov    %eax,%ebx
462370:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
462374:	75 0e                	jne    0x462384
462376:	8b c3                	mov    %ebx,%eax
462378:	66 be ae ff          	mov    $0xffae,%si
46237c:	e8 97 17 fa ff       	call   0x403b18
462381:	5e                   	pop    %esi
462382:	5b                   	pop    %ebx
462383:	c3                   	ret
462384:	80 a3 58 03 00 00 df 	andb   $0xdf,0x358(%ebx)
46238b:	5e                   	pop    %esi
46238c:	5b                   	pop    %ebx
46238d:	c3                   	ret
46238e:	8b c0                	mov    %eax,%eax
462390:	53                   	push   %ebx
462391:	56                   	push   %esi
462392:	8b f2                	mov    %edx,%esi
462394:	8b d8                	mov    %eax,%ebx
462396:	6a 12                	push   $0x12
462398:	e8 23 4c fa ff       	call   0x406fc0
46239d:	66 85 c0             	test   %ax,%ax
4623a0:	7c 7c                	jl     0x46241e
4623a2:	0f b7 46 04          	movzwl 0x4(%esi),%eax
4623a6:	66 83 e8 09          	sub    $0x9,%ax
4623aa:	74 0b                	je     0x4623b7
4623ac:	83 c0 e4             	add    $0xffffffe4,%eax
4623af:	66 83 e8 04          	sub    $0x4,%ax
4623b3:	72 34                	jb     0x4623e9
4623b5:	eb 67                	jmp    0x46241e
4623b7:	6a 11                	push   $0x11
4623b9:	e8 02 4c fa ff       	call   0x406fc0
4623be:	66 85 c0             	test   %ax,%ax
4623c1:	7c 5b                	jl     0x46241e
4623c3:	6a 01                	push   $0x1
4623c5:	6a 10                	push   $0x10
4623c7:	e8 f4 4b fa ff       	call   0x406fc0
4623cc:	66 85 c0             	test   %ax,%ax
4623cf:	0f 9d c1             	setge  %cl
4623d2:	8b 93 68 02 00 00    	mov    0x268(%ebx),%edx
4623d8:	8b c3                	mov    %ebx,%eax
4623da:	e8 9d fb fe ff       	call   0x451f7c
4623df:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
4623e6:	5e                   	pop    %esi
4623e7:	5b                   	pop    %ebx
4623e8:	c3                   	ret
4623e9:	8b 83 68 02 00 00    	mov    0x268(%ebx),%eax
4623ef:	85 c0                	test   %eax,%eax
4623f1:	74 34                	je     0x462427
4623f3:	6a 00                	push   $0x0
4623f5:	0f b7 56 04          	movzwl 0x4(%esi),%edx
4623f9:	66 83 fa 27          	cmp    $0x27,%dx
4623fd:	74 0a                	je     0x462409
4623ff:	66 83 fa 28          	cmp    $0x28,%dx
462403:	74 04                	je     0x462409
462405:	33 c9                	xor    %ecx,%ecx
462407:	eb 02                	jmp    0x46240b
462409:	b1 01                	mov    $0x1,%cl
46240b:	8b 50 30             	mov    0x30(%eax),%edx
46240e:	92                   	xchg   %eax,%edx
46240f:	e8 68 fb fe ff       	call   0x451f7c
462414:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
46241b:	5e                   	pop    %esi
46241c:	5b                   	pop    %ebx
46241d:	c3                   	ret
46241e:	8b d6                	mov    %esi,%edx
462420:	8b c3                	mov    %ebx,%eax
462422:	e8 99 e9 fe ff       	call   0x450dc0
462427:	5e                   	pop    %esi
462428:	5b                   	pop    %ebx
462429:	c3                   	ret
46242a:	8b c0                	mov    %eax,%eax
46242c:	55                   	push   %ebp
46242d:	8b ec                	mov    %esp,%ebp
46242f:	83 c4 f8             	add    $0xfffffff8,%esp
462432:	53                   	push   %ebx
462433:	56                   	push   %esi
462434:	57                   	push   %edi
462435:	33 c9                	xor    %ecx,%ecx
462437:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46243a:	89 45 fc             	mov    %eax,-0x4(%ebp)
46243d:	33 c0                	xor    %eax,%eax
46243f:	55                   	push   %ebp
462440:	68 37 2a 46 00       	push   $0x462a37
462445:	64 ff 30             	push   %fs:(%eax)
462448:	64 89 20             	mov    %esp,%fs:(%eax)
46244b:	8b 45 fc             	mov    -0x4(%ebp),%eax
46244e:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)