41225f:	8b 01                	mov    (%ecx),%eax
412261:	5e                   	pop    %esi
412262:	c2 04 00             	ret    $0x4
412265:	8b 04 91             	mov    (%ecx,%edx,4),%eax
412268:	2b 44 91 7c          	sub    0x7c(%ecx,%edx,4),%eax
41226c:	eb d7                	jmp    0x412245
41226e:	55                   	push   %ebp
41226f:	8b ec                	mov    %esp,%ebp
412271:	56                   	push   %esi
412272:	8b 75 10             	mov    0x10(%ebp),%esi
412275:	57                   	push   %edi
412276:	8b 3e                	mov    (%esi),%edi
412278:	2b 7d 0c             	sub    0xc(%ebp),%edi
41227b:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41227f:	76 2c                	jbe    0x4122ad
412281:	53                   	push   %ebx
412282:	ff 4d 08             	decl   0x8(%ebp)
412285:	8b c7                	mov    %edi,%eax
412287:	23 45 14             	and    0x14(%ebp),%eax
41228a:	50                   	push   %eax
41228b:	e8 a6 ff ff ff       	call   0x412236
412290:	ff 36                	push   (%esi)
412292:	8b d8                	mov    %eax,%ebx
412294:	e8 9d ff ff ff       	call   0x412236
412299:	8a 13                	mov    (%ebx),%dl
41229b:	88 10                	mov    %dl,(%eax)
41229d:	8b 06                	mov    (%esi),%eax
41229f:	47                   	inc    %edi
4122a0:	40                   	inc    %eax
4122a1:	23 45 14             	and    0x14(%ebp),%eax
4122a4:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4122a8:	89 06                	mov    %eax,(%esi)
4122aa:	77 d6                	ja     0x412282
4122ac:	5b                   	pop    %ebx
4122ad:	5f                   	pop    %edi
4122ae:	5e                   	pop    %esi
4122af:	5d                   	pop    %ebp
4122b0:	c2 10 00             	ret    $0x10
4122b3:	53                   	push   %ebx
4122b4:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4122b8:	85 db                	test   %ebx,%ebx
4122ba:	76 1f                	jbe    0x4122db
4122bc:	56                   	push   %esi
4122bd:	8b 74 24 0c          	mov    0xc(%esp),%esi
4122c1:	57                   	push   %edi
4122c2:	8b 7c 24 14          	mov    0x14(%esp),%edi
4122c6:	2b fe                	sub    %esi,%edi
4122c8:	8d 04 37             	lea    (%edi,%esi,1),%eax
4122cb:	50                   	push   %eax
4122cc:	e8 65 ff ff ff       	call   0x412236
4122d1:	8a 00                	mov    (%eax),%al
4122d3:	88 06                	mov    %al,(%esi)
4122d5:	46                   	inc    %esi
4122d6:	4b                   	dec    %ebx
4122d7:	75 ef                	jne    0x4122c8
4122d9:	5f                   	pop    %edi
4122da:	5e                   	pop    %esi
4122db:	5b                   	pop    %ebx
4122dc:	c2 0c 00             	ret    $0xc
4122df:	56                   	push   %esi
4122e0:	8b 74 24 08          	mov    0x8(%esp),%esi
4122e4:	33 c0                	xor    %eax,%eax
4122e6:	8d 91 80 00 00 00    	lea    0x80(%ecx),%edx
4122ec:	3b 32                	cmp    (%edx),%esi
4122ee:	72 0f                	jb     0x4122ff
4122f0:	40                   	inc    %eax
4122f1:	83 c2 04             	add    $0x4,%edx
4122f4:	83 f8 20             	cmp    $0x20,%eax
4122f7:	72 f3                	jb     0x4122ec
4122f9:	33 c0                	xor    %eax,%eax
4122fb:	5e                   	pop    %esi
4122fc:	c2 08 00             	ret    $0x8
4122ff:	8b 84 81 80 00 00 00 	mov    0x80(%ecx,%eax,4),%eax
412306:	2b c6                	sub    %esi,%eax
412308:	3b 44 24 0c          	cmp    0xc(%esp),%eax
41230c:	72 ed                	jb     0x4122fb
41230e:	8b 44 24 0c          	mov    0xc(%esp),%eax
412312:	eb e7                	jmp    0x4122fb
412314:	55                   	push   %ebp
412315:	8b ec                	mov    %esp,%ebp
412317:	83 ec 10             	sub    $0x10,%esp
41231a:	53                   	push   %ebx
41231b:	8b 5d 08             	mov    0x8(%ebp),%ebx
41231e:	56                   	push   %esi
41231f:	8b f1                	mov    %ecx,%esi
412321:	85 db                	test   %ebx,%ebx
412323:	75 0a                	jne    0x41232f
412325:	b9 74 2a 43 00       	mov    $0x432a74,%ecx
41232a:	e8 d9 41 ff ff       	call   0x406508
41232f:	b8 00 00 04 00       	mov    $0x40000,%eax
412334:	3b d8                	cmp    %eax,%ebx
412336:	73 05                	jae    0x41233d
412338:	8b d8                	mov    %eax,%ebx
41233a:	89 5d 08             	mov    %ebx,0x8(%ebp)
41233d:	3b 9e f4 e6 00 00    	cmp    0xe6f4(%esi),%ebx
412343:	0f 86 20 01 00 00    	jbe    0x412469
412349:	8b c3                	mov    %ebx,%eax
41234b:	c1 e8 10             	shr    $0x10,%eax
41234e:	3d 00 00 01 00       	cmp    $0x10000,%eax
412353:	0f 87 10 01 00 00    	ja     0x412469
412359:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
41235d:	74 35                	je     0x412394
41235f:	83 be 34 4b 00 00 00 	cmpl   $0x0,0x4b34(%esi)
412366:	75 09                	jne    0x412371
412368:	80 be 38 4c 00 00 00 	cmpb   $0x0,0x4c38(%esi)
41236f:	74 23                	je     0x412394
412371:	80 be 38 4c 00 00 00 	cmpb   $0x0,0x4c38(%esi)
412378:	c6 45 0f 01          	movb   $0x1,0xf(%ebp)
41237c:	74 1a                	je     0x412398
41237e:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412381:	e8 08 fa ff ff       	call   0x411d8e
412386:	68 c4 d4 42 00       	push   $0x42d4c4
41238b:	8d 45 f0             	lea    -0x10(%ebp),%eax
41238e:	50                   	push   %eax
41238f:	e8 49 9f 00 00       	call   0x41c2dd
412394:	c6 45 0f 00          	movb   $0x0,0xf(%ebp)
412398:	80 be 38 4c 00 00 00 	cmpb   $0x0,0x4c38(%esi)
41239f:	57                   	push   %edi
4123a0:	74 06                	je     0x4123a8
4123a2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4123a6:	eb 0e                	jmp    0x4123b6
4123a8:	53                   	push   %ebx
4123a9:	e8 b0 a5 00 00       	call   0x41c95e
4123ae:	59                   	pop    %ecx
4123af:	89 45 fc             	mov    %eax,-0x4(%ebp)
4123b2:	85 c0                	test   %eax,%eax
4123b4:	75 37                	jne    0x4123ed
4123b6:	80 7d 0f 00          	cmpb   $0x0,0xf(%ebp)
4123ba:	75 c2                	jne    0x41237e
4123bc:	81 fb 00 00 00 01    	cmp    $0x1000000,%ebx
4123c2:	72 ba                	jb     0x41237e
4123c4:	8d be 34 4b 00 00    	lea    0x4b34(%esi),%edi
4123ca:	8b 07                	mov    (%edi),%eax
4123cc:	85 c0                	test   %eax,%eax
4123ce:	74 0a                	je     0x4123da
4123d0:	50                   	push   %eax
4123d1:	e8 0c 7b 00 00       	call   0x419ee2
4123d6:	83 27 00             	andl   $0x0,(%edi)
4123d9:	59                   	pop    %ecx
4123da:	53                   	push   %ebx
4123db:	8d 8e 38 4b 00 00    	lea    0x4b38(%esi),%ecx
4123e1:	e8 8b fd ff ff       	call   0x412171
4123e6:	c6 86 38 4c 00 00 01 	movb   $0x1,0x4c38(%esi)
4123ed:	80 be 38 4c 00 00 00 	cmpb   $0x0,0x4c38(%esi)
4123f4:	75 65                	jne    0x41245b
4123f6:	53                   	push   %ebx
4123f7:	6a 00                	push   $0x0
4123f9:	ff 75 fc             	push   -0x4(%ebp)
4123fc:	e8 ff 7d 00 00       	call   0x41a200
412401:	83 c4 0c             	add    $0xc,%esp
412404:	80 7d 0f 00          	cmpb   $0x0,0xf(%ebp)
412408:	74 39                	je     0x412443
41240a:	33 c9                	xor    %ecx,%ecx
41240c:	41                   	inc    %ecx
41240d:	39 8e f4 e6 00 00    	cmp    %ecx,0xe6f4(%esi)
412413:	76 2e                	jbe    0x412443
412415:	8b 46 70             	mov    0x70(%esi),%eax
412418:	8b be f4 e6 00 00    	mov    0xe6f4(%esi),%edi
41241e:	2b c1                	sub    %ecx,%eax
412420:	4f                   	dec    %edi
412421:	23 f8                	and    %eax,%edi
412423:	8d 53 ff             	lea    -0x1(%ebx),%edx
412426:	8b 5d 08             	mov    0x8(%ebp),%ebx
412429:	23 d0                	and    %eax,%edx
41242b:	8b 86 34 4b 00 00    	mov    0x4b34(%esi),%eax
412431:	8a 04 07             	mov    (%edi,%eax,1),%al
412434:	8b 7d fc             	mov    -0x4(%ebp),%edi
412437:	41                   	inc    %ecx
412438:	88 04 3a             	mov    %al,(%edx,%edi,1)
41243b:	3b 8e f4 e6 00 00    	cmp    0xe6f4(%esi),%ecx
412441:	72 d2                	jb     0x412415
412443:	8d be 34 4b 00 00    	lea    0x4b34(%esi),%edi
412449:	8b 07                	mov    (%edi),%eax
41244b:	85 c0                	test   %eax,%eax
41244d:	74 07                	je     0x412456
41244f:	50                   	push   %eax
412450:	e8 8d 7a 00 00       	call   0x419ee2
412455:	59                   	pop    %ecx
412456:	8b 45 fc             	mov    -0x4(%ebp),%eax
412459:	89 07                	mov    %eax,(%edi)
41245b:	89 9e f4 e6 00 00    	mov    %ebx,0xe6f4(%esi)
412461:	4b                   	dec    %ebx
412462:	89 9e f8 e6 00 00    	mov    %ebx,0xe6f8(%esi)
412468:	5f                   	pop    %edi
412469:	5e                   	pop    %esi
41246a:	5b                   	pop    %ebx
41246b:	c9                   	leave
41246c:	c2 08 00             	ret    $0x8
41246f:	55                   	push   %ebp
412470:	8b ec                	mov    %esp,%ebp
412472:	81 ec 80 00 00 00    	sub    $0x80,%esp
412478:	53                   	push   %ebx
412479:	8b 5d 10             	mov    0x10(%ebp),%ebx
41247c:	56                   	push   %esi
41247d:	8b 75 0c             	mov    0xc(%ebp),%esi
412480:	57                   	push   %edi
412481:	6a 40                	push   $0x40
412483:	33 ff                	xor    %edi,%edi
412485:	8d 45 c0             	lea    -0x40(%ebp),%eax
412488:	57                   	push   %edi
412489:	50                   	push   %eax
41248a:	89 1e                	mov    %ebx,(%esi)
41248c:	e8 6f 7d 00 00       	call   0x41a200
412491:	83 c4 0c             	add    $0xc,%esp
412494:	33 c9                	xor    %ecx,%ecx
412496:	3b df                	cmp    %edi,%ebx
412498:	76 15                	jbe    0x4124af
41249a:	8b 45 08             	mov    0x8(%ebp),%eax
41249d:	0f b6 04 01          	movzbl (%ecx,%eax,1),%eax
4124a1:	83 e0 0f             	and    $0xf,%eax
4124a4:	8d 44 85 c0          	lea    -0x40(%ebp,%eax,4),%eax
4124a8:	ff 00                	incl   (%eax)
4124aa:	41                   	inc    %ecx
4124ab:	3b cb                	cmp    %ebx,%ecx
4124ad:	72 eb                	jb     0x41249a
4124af:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
4124b2:	50                   	push   %eax
4124b3:	8d 86 88 0c 00 00    	lea    0xc88(%esi),%eax
4124b9:	57                   	push   %edi
4124ba:	50                   	push   %eax
4124bb:	89 7d c0             	mov    %edi,-0x40(%ebp)
4124be:	e8 3d 7d 00 00       	call   0x41a200
4124c3:	8d 5e 44             	lea    0x44(%esi),%ebx
4124c6:	83 c4 0c             	add    $0xc,%esp
4124c9:	89 3b                	mov    %edi,(%ebx)
4124cb:	89 7e 04             	mov    %edi,0x4(%esi)
4124ce:	33 c0                	xor    %eax,%eax
4124d0:	c7 45 0c 01 00 00 00 	movl   $0x1,0xc(%ebp)
4124d7:	8b d3                	mov    %ebx,%edx
4124d9:	8b 7d 0c             	mov    0xc(%ebp),%edi
4124dc:	03 44 bd c0          	add    -0x40(%ebp,%edi,4),%eax
4124e0:	6a 10                	push   $0x10
4124e2:	59                   	pop    %ecx
4124e3:	2b cf                	sub    %edi,%ecx
4124e5:	8b f8                	mov    %eax,%edi
4124e7:	d3 e7                	shl    %cl,%edi
4124e9:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4124ec:	8b 4c 8d bc          	mov    -0x44(%ebp,%ecx,4),%ecx
4124f0:	03 0a                	add    (%edx),%ecx
4124f2:	03 c0                	add    %eax,%eax
4124f4:	ff 45 0c             	incl   0xc(%ebp)
4124f7:	89 7a c4             	mov    %edi,-0x3c(%edx)
4124fa:	89 4a 04             	mov    %ecx,0x4(%edx)
4124fd:	83 c2 04             	add    $0x4,%edx
412500:	83 7d 0c 10          	cmpl   $0x10,0xc(%ebp)
412504:	72 d3                	jb     0x4124d9
412506:	6a 40                	push   $0x40
412508:	8d 45 80             	lea    -0x80(%ebp),%eax
41250b:	53                   	push   %ebx
41250c:	50                   	push   %eax
41250d:	e8 5e 97 00 00       	call   0x41bc70
412512:	8b 7d 10             	mov    0x10(%ebp),%edi
412515:	83 c4 0c             	add    $0xc,%esp
412518:	33 d2                	xor    %edx,%edx
41251a:	85 ff                	test   %edi,%edi
41251c:	76 23                	jbe    0x412541
41251e:	8b 45 08             	mov    0x8(%ebp),%eax
412521:	8a 04 02             	mov    (%edx,%eax,1),%al
412524:	24 0f                	and    $0xf,%al
412526:	74 14                	je     0x41253c
412528:	0f b6 c0             	movzbl %al,%eax
41252b:	8d 44 85 80          	lea    -0x80(%ebp,%eax,4),%eax
41252f:	8b 08                	mov    (%eax),%ecx
412531:	66 89 94 4e 88 0c 00 	mov    %dx,0xc88(%esi,%ecx,2)
412538:	00
412539:	41                   	inc    %ecx
41253a:	89 08                	mov    %ecx,(%eax)
41253c:	42                   	inc    %edx
41253d:	3b d7                	cmp    %edi,%edx
41253f:	72 dd                	jb     0x41251e
412541:	81 ff 2a 01 00 00    	cmp    $0x12a,%edi
412547:	72 1c                	jb     0x412565
412549:	81 ff 2b 01 00 00    	cmp    $0x12b,%edi
41254f:	76 08                	jbe    0x412559
412551:	81 ff 32 01 00 00    	cmp    $0x132,%edi
412557:	75 0c                	jne    0x412565
412559:	c7 86 84 00 00 00 0a 	movl   $0xa,0x84(%esi)
412560:	00 00 00
412563:	eb 0a                	jmp    0x41256f
412565:	c7 86 84 00 00 00 07 	movl   $0x7,0x84(%esi)
41256c:	00 00 00
41256f:	8b 8e 84 00 00 00    	mov    0x84(%esi),%ecx
412575:	33 d2                	xor    %edx,%edx
412577:	42                   	inc    %edx
412578:	8b da                	mov    %edx,%ebx
41257a:	d3 e3                	shl    %cl,%ebx
41257c:	33 ff                	xor    %edi,%edi
41257e:	85 db                	test   %ebx,%ebx
412580:	76 5e                	jbe    0x4125e0
412582:	8d 86 88 04 00 00    	lea    0x488(%esi),%eax
412588:	89 45 08             	mov    %eax,0x8(%ebp)
41258b:	6a 10                	push   $0x10
41258d:	59                   	pop    %ecx
41258e:	2b 8e 84 00 00 00    	sub    0x84(%esi),%ecx
412594:	8b c7                	mov    %edi,%eax
412596:	d3 e0                	shl    %cl,%eax
412598:	8d 4c 96 04          	lea    0x4(%esi,%edx,4),%ecx
41259c:	eb 09                	jmp    0x4125a7
41259e:	83 fa 10             	cmp    $0x10,%edx
4125a1:	73 08                	jae    0x4125ab
4125a3:	42                   	inc    %edx
4125a4:	83 c1 04             	add    $0x4,%ecx
4125a7:	3b 01                	cmp    (%ecx),%eax
4125a9:	73 f3                	jae    0x41259e
4125ab:	6a 10                	push   $0x10
4125ad:	88 94 3e 88 00 00 00 	mov    %dl,0x88(%esi,%edi,1)
4125b4:	2b 04 96             	sub    (%esi,%edx,4),%eax
4125b7:	59                   	pop    %ecx
4125b8:	2b ca                	sub    %edx,%ecx
4125ba:	d3 e8                	shr    %cl,%eax
4125bc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4125bf:	03 44 96 44          	add    0x44(%esi,%edx,4),%eax
4125c3:	3b 45 10             	cmp    0x10(%ebp),%eax
4125c6:	73 0a                	jae    0x4125d2
4125c8:	66 8b 84 46 88 0c 00 	mov    0xc88(%esi,%eax,2),%ax
4125cf:	00
4125d0:	eb 02                	jmp    0x4125d4
4125d2:	33 c0                	xor    %eax,%eax
4125d4:	83 45 08 02          	addl   $0x2,0x8(%ebp)
4125d8:	47                   	inc    %edi
4125d9:	66 89 01             	mov    %ax,(%ecx)
4125dc:	3b fb                	cmp    %ebx,%edi
4125de:	72 ab                	jb     0x41258b
4125e0:	5f                   	pop    %edi
4125e1:	5e                   	pop    %esi
4125e2:	5b                   	pop    %ebx
4125e3:	c9                   	leave
4125e4:	c2 0c 00             	ret    $0xc
4125e7:	55                   	push   %ebp
4125e8:	8b ec                	mov    %esp,%ebp
4125ea:	51                   	push   %ecx
4125eb:	51                   	push   %ecx
4125ec:	56                   	push   %esi
4125ed:	8b 75 08             	mov    0x8(%ebp),%esi
4125f0:	57                   	push   %edi
4125f1:	8d 7d f8             	lea    -0x8(%ebp),%edi
4125f4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4125f5:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
4125f7:	8b 75 0c             	mov    0xc(%ebp),%esi
4125fa:	8b 7d 08             	mov    0x8(%ebp),%edi
4125fd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4125fe:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412600:	8b 7d 0c             	mov    0xc(%ebp),%edi
412603:	8d 75 f8             	lea    -0x8(%ebp),%esi
412606:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412607:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
412609:	5f                   	pop    %edi
41260a:	5e                   	pop    %esi
41260b:	c9                   	leave
41260c:	c2 08 00             	ret    $0x8