5b4508:	83 c4 e8             	add    $0xffffffe8,%esp
5b450b:	8b da                	mov    %edx,%ebx
5b450d:	89 04 24             	mov    %eax,(%esp)
5b4510:	be 00 04 00 00       	mov    $0x400,%esi
5b4515:	2b f3                	sub    %ebx,%esi
5b4517:	8d 54 24 10          	lea    0x10(%esp),%edx
5b451b:	8b 04 24             	mov    (%esp),%eax
5b451e:	8b 40 2c             	mov    0x2c(%eax),%eax
5b4521:	8b 80 28 02 00 00    	mov    0x228(%eax),%eax
5b4527:	e8 54 4e ff ff       	call   0x5a9380
5b452c:	0f b6 7c 24 12       	movzbl 0x12(%esp),%edi
5b4531:	0f af fe             	imul   %esi,%edi
5b4534:	33 c0                	xor    %eax,%eax
5b4536:	8a 44 24 11          	mov    0x11(%esp),%al
5b453a:	f7 ee                	imul   %esi
5b453c:	89 44 24 08          	mov    %eax,0x8(%esp)
5b4540:	33 c0                	xor    %eax,%eax
5b4542:	8a 44 24 10          	mov    0x10(%esp),%al
5b4546:	f7 ee                	imul   %esi
5b4548:	89 44 24 0c          	mov    %eax,0xc(%esp)
5b454c:	8b 04 24             	mov    (%esp),%eax
5b454f:	8b 40 24             	mov    0x24(%eax),%eax
5b4552:	48                   	dec    %eax
5b4553:	85 c0                	test   %eax,%eax
5b4555:	7c 7a                	jl     0x5b45d1
5b4557:	40                   	inc    %eax
5b4558:	89 44 24 14          	mov    %eax,0x14(%esp)
5b455c:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
5b4563:	00
5b4564:	8b 04 24             	mov    (%esp),%eax
5b4567:	8b 40 18             	mov    0x18(%eax),%eax
5b456a:	8b 54 24 04          	mov    0x4(%esp),%edx
5b456e:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b4571:	8b 14 24             	mov    (%esp),%edx
5b4574:	8b 52 1c             	mov    0x1c(%edx),%edx
5b4577:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5b457b:	8b 34 8a             	mov    (%edx,%ecx,4),%esi
5b457e:	8b 14 24             	mov    (%esp),%edx
5b4581:	8b 6a 20             	mov    0x20(%edx),%ebp
5b4584:	4d                   	dec    %ebp
5b4585:	85 ed                	test   %ebp,%ebp
5b4587:	7c 3e                	jl     0x5b45c7
5b4589:	45                   	inc    %ebp
5b458a:	8b d6                	mov    %esi,%edx
5b458c:	33 c9                	xor    %ecx,%ecx
5b458e:	8a 48 02             	mov    0x2(%eax),%cl
5b4591:	0f af cb             	imul   %ebx,%ecx
5b4594:	03 cf                	add    %edi,%ecx
5b4596:	c1 e9 0a             	shr    $0xa,%ecx
5b4599:	88 4a 02             	mov    %cl,0x2(%edx)
5b459c:	33 c9                	xor    %ecx,%ecx
5b459e:	8a 48 01             	mov    0x1(%eax),%cl
5b45a1:	0f af cb             	imul   %ebx,%ecx
5b45a4:	03 4c 24 08          	add    0x8(%esp),%ecx
5b45a8:	c1 e9 0a             	shr    $0xa,%ecx
5b45ab:	88 4a 01             	mov    %cl,0x1(%edx)
5b45ae:	33 c9                	xor    %ecx,%ecx
5b45b0:	8a 08                	mov    (%eax),%cl
5b45b2:	0f af cb             	imul   %ebx,%ecx
5b45b5:	03 4c 24 0c          	add    0xc(%esp),%ecx
5b45b9:	c1 e9 0a             	shr    $0xa,%ecx
5b45bc:	88 0a                	mov    %cl,(%edx)
5b45be:	83 c0 03             	add    $0x3,%eax
5b45c1:	83 c6 03             	add    $0x3,%esi
5b45c4:	4d                   	dec    %ebp
5b45c5:	75 c3                	jne    0x5b458a
5b45c7:	ff 44 24 04          	incl   0x4(%esp)
5b45cb:	ff 4c 24 14          	decl   0x14(%esp)
5b45cf:	75 93                	jne    0x5b4564
5b45d1:	83 c4 18             	add    $0x18,%esp
5b45d4:	5d                   	pop    %ebp
5b45d5:	5f                   	pop    %edi
5b45d6:	5e                   	pop    %esi
5b45d7:	5b                   	pop    %ebx
5b45d8:	c3                   	ret
5b45d9:	8d 40 00             	lea    0x0(%eax),%eax
5b45dc:	81 fa 00 02 00 00    	cmp    $0x200,%edx
5b45e2:	7d 08                	jge    0x5b45ec
5b45e4:	03 d2                	add    %edx,%edx
5b45e6:	e8 11 00 00 00       	call   0x5b45fc
5b45eb:	c3                   	ret
5b45ec:	81 ea 00 02 00 00    	sub    $0x200,%edx
5b45f2:	03 d2                	add    %edx,%edx
5b45f4:	e8 0b ff ff ff       	call   0x5b4504
5b45f9:	c3                   	ret
5b45fa:	8b c0                	mov    %eax,%eax
5b45fc:	53                   	push   %ebx
5b45fd:	56                   	push   %esi
5b45fe:	57                   	push   %edi
5b45ff:	55                   	push   %ebp
5b4600:	83 c4 e8             	add    $0xffffffe8,%esp
5b4603:	8b f2                	mov    %edx,%esi
5b4605:	89 04 24             	mov    %eax,(%esp)
5b4608:	bb 00 04 00 00       	mov    $0x400,%ebx
5b460d:	2b de                	sub    %esi,%ebx
5b460f:	8d 54 24 10          	lea    0x10(%esp),%edx
5b4613:	8b 04 24             	mov    (%esp),%eax
5b4616:	8b 40 2c             	mov    0x2c(%eax),%eax
5b4619:	8b 80 28 02 00 00    	mov    0x228(%eax),%eax
5b461f:	e8 5c 4d ff ff       	call   0x5a9380
5b4624:	0f b6 7c 24 12       	movzbl 0x12(%esp),%edi
5b4629:	0f af fe             	imul   %esi,%edi
5b462c:	33 c0                	xor    %eax,%eax
5b462e:	8a 44 24 11          	mov    0x11(%esp),%al
5b4632:	f7 ee                	imul   %esi
5b4634:	89 44 24 08          	mov    %eax,0x8(%esp)
5b4638:	33 c0                	xor    %eax,%eax
5b463a:	8a 44 24 10          	mov    0x10(%esp),%al
5b463e:	f7 ee                	imul   %esi
5b4640:	89 44 24 0c          	mov    %eax,0xc(%esp)
5b4644:	8b 04 24             	mov    (%esp),%eax
5b4647:	8b 40 24             	mov    0x24(%eax),%eax
5b464a:	48                   	dec    %eax
5b464b:	85 c0                	test   %eax,%eax
5b464d:	7c 7a                	jl     0x5b46c9
5b464f:	40                   	inc    %eax
5b4650:	89 44 24 14          	mov    %eax,0x14(%esp)
5b4654:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
5b465b:	00
5b465c:	8b 04 24             	mov    (%esp),%eax
5b465f:	8b 40 14             	mov    0x14(%eax),%eax
5b4662:	8b 54 24 04          	mov    0x4(%esp),%edx
5b4666:	8b 04 90             	mov    (%eax,%edx,4),%eax
5b4669:	8b 14 24             	mov    (%esp),%edx
5b466c:	8b 52 1c             	mov    0x1c(%edx),%edx
5b466f:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5b4673:	8b 34 8a             	mov    (%edx,%ecx,4),%esi
5b4676:	8b 14 24             	mov    (%esp),%edx
5b4679:	8b 6a 20             	mov    0x20(%edx),%ebp
5b467c:	4d                   	dec    %ebp
5b467d:	85 ed                	test   %ebp,%ebp
5b467f:	7c 3e                	jl     0x5b46bf
5b4681:	45                   	inc    %ebp
5b4682:	8b d6                	mov    %esi,%edx
5b4684:	33 c9                	xor    %ecx,%ecx
5b4686:	8a 48 02             	mov    0x2(%eax),%cl
5b4689:	0f af cb             	imul   %ebx,%ecx
5b468c:	03 cf                	add    %edi,%ecx
5b468e:	c1 e9 0a             	shr    $0xa,%ecx
5b4691:	88 4a 02             	mov    %cl,0x2(%edx)
5b4694:	33 c9                	xor    %ecx,%ecx
5b4696:	8a 48 01             	mov    0x1(%eax),%cl
5b4699:	0f af cb             	imul   %ebx,%ecx
5b469c:	03 4c 24 08          	add    0x8(%esp),%ecx
5b46a0:	c1 e9 0a             	shr    $0xa,%ecx
5b46a3:	88 4a 01             	mov    %cl,0x1(%edx)
5b46a6:	33 c9                	xor    %ecx,%ecx
5b46a8:	8a 08                	mov    (%eax),%cl
5b46aa:	0f af cb             	imul   %ebx,%ecx
5b46ad:	03 4c 24 0c          	add    0xc(%esp),%ecx
5b46b1:	c1 e9 0a             	shr    $0xa,%ecx
5b46b4:	88 0a                	mov    %cl,(%edx)
5b46b6:	83 c0 03             	add    $0x3,%eax
5b46b9:	83 c6 03             	add    $0x3,%esi
5b46bc:	4d                   	dec    %ebp
5b46bd:	75 c3                	jne    0x5b4682
5b46bf:	ff 44 24 04          	incl   0x4(%esp)
5b46c3:	ff 4c 24 14          	decl   0x14(%esp)
5b46c7:	75 93                	jne    0x5b465c
5b46c9:	83 c4 18             	add    $0x18,%esp
5b46cc:	5d                   	pop    %ebp
5b46cd:	5f                   	pop    %edi
5b46ce:	5e                   	pop    %esi
5b46cf:	5b                   	pop    %ebx
5b46d0:	c3                   	ret
5b46d1:	8d 40 00             	lea    0x0(%eax),%eax
5b46d4:	53                   	push   %ebx
5b46d5:	56                   	push   %esi
5b46d6:	57                   	push   %edi
5b46d7:	55                   	push   %ebp
5b46d8:	83 c4 ec             	add    $0xffffffec,%esp
5b46db:	89 04 24             	mov    %eax,(%esp)
5b46de:	b8 00 04 00 00       	mov    $0x400,%eax
5b46e3:	2b c2                	sub    %edx,%eax
5b46e5:	8b 0c 24             	mov    (%esp),%ecx
5b46e8:	8b 49 24             	mov    0x24(%ecx),%ecx
5b46eb:	49                   	dec    %ecx
5b46ec:	85 c9                	test   %ecx,%ecx
5b46ee:	0f 8c ad 00 00 00    	jl     0x5b47a1
5b46f4:	41                   	inc    %ecx
5b46f5:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
5b46f9:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
5b4700:	00
5b4701:	8b 0c 24             	mov    (%esp),%ecx
5b4704:	8b 49 14             	mov    0x14(%ecx),%ecx
5b4707:	8b 5c 24 04          	mov    0x4(%esp),%ebx
5b470b:	8b 0c 99             	mov    (%ecx,%ebx,4),%ecx
5b470e:	8b 1c 24             	mov    (%esp),%ebx
5b4711:	8b 5b 18             	mov    0x18(%ebx),%ebx
5b4714:	8b 74 24 04          	mov    0x4(%esp),%esi
5b4718:	8b 34 b3             	mov    (%ebx,%esi,4),%esi
5b471b:	8b 1c 24             	mov    (%esp),%ebx
5b471e:	8b 5b 1c             	mov    0x1c(%ebx),%ebx
5b4721:	8b 7c 24 04          	mov    0x4(%esp),%edi
5b4725:	8b 1c bb             	mov    (%ebx,%edi,4),%ebx
5b4728:	89 5c 24 08          	mov    %ebx,0x8(%esp)
5b472c:	8b 1c 24             	mov    (%esp),%ebx
5b472f:	8b 5b 20             	mov    0x20(%ebx),%ebx
5b4732:	4b                   	dec    %ebx
5b4733:	85 db                	test   %ebx,%ebx
5b4735:	7c 5c                	jl     0x5b4793
5b4737:	43                   	inc    %ebx
5b4738:	89 5c 24 10          	mov    %ebx,0x10(%esp)
5b473c:	8b 7c 24 08          	mov    0x8(%esp),%edi
5b4740:	33 db                	xor    %ebx,%ebx
5b4742:	8a 59 02             	mov    0x2(%ecx),%bl
5b4745:	0f af d8             	imul   %eax,%ebx
5b4748:	0f b6 6e 02          	movzbl 0x2(%esi),%ebp
5b474c:	0f af ea             	imul   %edx,%ebp
5b474f:	03 dd                	add    %ebp,%ebx
5b4751:	c1 eb 0a             	shr    $0xa,%ebx
5b4754:	88 5f 02             	mov    %bl,0x2(%edi)
5b4757:	33 db                	xor    %ebx,%ebx
5b4759:	8a 59 01             	mov    0x1(%ecx),%bl
5b475c:	0f af d8             	imul   %eax,%ebx
5b475f:	0f b6 6e 01          	movzbl 0x1(%esi),%ebp
5b4763:	0f af ea             	imul   %edx,%ebp
5b4766:	03 dd                	add    %ebp,%ebx
5b4768:	c1 eb 0a             	shr    $0xa,%ebx
5b476b:	88 5f 01             	mov    %bl,0x1(%edi)
5b476e:	33 db                	xor    %ebx,%ebx
5b4770:	8a 19                	mov    (%ecx),%bl
5b4772:	0f af d8             	imul   %eax,%ebx
5b4775:	0f b6 2e             	movzbl (%esi),%ebp
5b4778:	0f af ea             	imul   %edx,%ebp
5b477b:	03 dd                	add    %ebp,%ebx
5b477d:	c1 eb 0a             	shr    $0xa,%ebx
5b4780:	88 1f                	mov    %bl,(%edi)
5b4782:	83 c1 03             	add    $0x3,%ecx
5b4785:	83 c6 03             	add    $0x3,%esi
5b4788:	83 44 24 08 03       	addl   $0x3,0x8(%esp)
5b478d:	ff 4c 24 10          	decl   0x10(%esp)
5b4791:	75 a9                	jne    0x5b473c
5b4793:	ff 44 24 04          	incl   0x4(%esp)
5b4797:	ff 4c 24 0c          	decl   0xc(%esp)
5b479b:	0f 85 60 ff ff ff    	jne    0x5b4701
5b47a1:	83 c4 14             	add    $0x14,%esp
5b47a4:	5d                   	pop    %ebp
5b47a5:	5f                   	pop    %edi
5b47a6:	5e                   	pop    %esi
5b47a7:	5b                   	pop    %ebx
5b47a8:	c3                   	ret
5b47a9:	8d 40 00             	lea    0x0(%eax),%eax
5b47ac:	53                   	push   %ebx
5b47ad:	56                   	push   %esi
5b47ae:	8b f2                	mov    %edx,%esi
5b47b0:	8b d8                	mov    %eax,%ebx
5b47b2:	85 f6                	test   %esi,%esi
5b47b4:	75 15                	jne    0x5b47cb
5b47b6:	8b 43 04             	mov    0x4(%ebx),%eax
5b47b9:	50                   	push   %eax
5b47ba:	8b 43 0c             	mov    0xc(%ebx),%eax
5b47bd:	e8 d6 8f e7 ff       	call   0x42d798
5b47c2:	33 c9                	xor    %ecx,%ecx
5b47c4:	33 d2                	xor    %edx,%edx
5b47c6:	e8 09 3e e7 ff       	call   0x4285d4
5b47cb:	68 20 00 cc 00       	push   $0xcc0020
5b47d0:	6a 00                	push   $0x0
5b47d2:	6a 00                	push   $0x0
5b47d4:	8b 43 08             	mov    0x8(%ebx),%eax
5b47d7:	e8 bc 8f e7 ff       	call   0x42d798
5b47dc:	e8 df 44 e7 ff       	call   0x428cc0
5b47e1:	50                   	push   %eax
5b47e2:	8b 43 24             	mov    0x24(%ebx),%eax
5b47e5:	50                   	push   %eax
5b47e6:	0f af 73 20          	imul   0x20(%ebx),%esi
5b47ea:	c1 ee 0a             	shr    $0xa,%esi
5b47ed:	56                   	push   %esi
5b47ee:	6a 00                	push   $0x0
5b47f0:	6a 00                	push   $0x0
5b47f2:	8b 43 0c             	mov    0xc(%ebx),%eax
5b47f5:	e8 9e 8f e7 ff       	call   0x42d798
5b47fa:	e8 c1 44 e7 ff       	call   0x428cc0
5b47ff:	50                   	push   %eax
5b4800:	e8 33 2c e5 ff       	call   0x407438
5b4805:	5e                   	pop    %esi
5b4806:	5b                   	pop    %ebx
5b4807:	c3                   	ret
5b4808:	53                   	push   %ebx
5b4809:	56                   	push   %esi
5b480a:	8b d8                	mov    %eax,%ebx
5b480c:	8b f2                	mov    %edx,%esi
5b480e:	0f af 73 20          	imul   0x20(%ebx),%esi
5b4812:	c1 ee 0a             	shr    $0xa,%esi
5b4815:	85 d2                	test   %edx,%edx
5b4817:	75 15                	jne    0x5b482e
5b4819:	8b 43 04             	mov    0x4(%ebx),%eax
5b481c:	50                   	push   %eax
5b481d:	8b 43 0c             	mov    0xc(%ebx),%eax
5b4820:	e8 73 8f e7 ff       	call   0x42d798
5b4825:	33 c9                	xor    %ecx,%ecx
5b4827:	33 d2                	xor    %edx,%edx
5b4829:	e8 a6 3d e7 ff       	call   0x4285d4
5b482e:	68 20 00 cc 00       	push   $0xcc0020
5b4833:	6a 00                	push   $0x0
5b4835:	6a 00                	push   $0x0
5b4837:	8b 43 08             	mov    0x8(%ebx),%eax
5b483a:	e8 59 8f e7 ff       	call   0x42d798
5b483f:	e8 7c 44 e7 ff       	call   0x428cc0
5b4844:	50                   	push   %eax
5b4845:	8b 43 24             	mov    0x24(%ebx),%eax
5b4848:	50                   	push   %eax
5b4849:	56                   	push   %esi
5b484a:	6a 00                	push   $0x0
5b484c:	6a 00                	push   $0x0
5b484e:	8b 43 0c             	mov    0xc(%ebx),%eax
5b4851:	e8 42 8f e7 ff       	call   0x42d798
5b4856:	e8 65 44 e7 ff       	call   0x428cc0
5b485b:	50                   	push   %eax
5b485c:	e8 d7 2b e5 ff       	call   0x407438
5b4861:	8b 43 0c             	mov    0xc(%ebx),%eax
5b4864:	e8 2f 8f e7 ff       	call   0x42d798
5b4869:	8b 40 10             	mov    0x10(%eax),%eax
5b486c:	ba ff 00 00 00       	mov    $0xff,%edx
5b4871:	e8 0e 37 e7 ff       	call   0x427f84
5b4876:	8b 43 0c             	mov    0xc(%ebx),%eax
5b4879:	e8 1a 8f e7 ff       	call   0x42d798
5b487e:	33 c9                	xor    %ecx,%ecx
5b4880:	8b d6                	mov    %esi,%edx
5b4882:	e8 4d 3f e7 ff       	call   0x4287d4
5b4887:	8b 43 0c             	mov    0xc(%ebx),%eax
5b488a:	e8 09 8f e7 ff       	call   0x42d798
5b488f:	8b 4b 24             	mov    0x24(%ebx),%ecx
5b4892:	8b d6                	mov    %esi,%edx
5b4894:	e8 db 3e e7 ff       	call   0x428774
5b4899:	5e                   	pop    %esi
5b489a:	5b                   	pop    %ebx
5b489b:	c3                   	ret
5b489c:	53                   	push   %ebx
5b489d:	56                   	push   %esi
5b489e:	57                   	push   %edi
5b489f:	55                   	push   %ebp
5b48a0:	51                   	push   %ecx
5b48a1:	8b f2                	mov    %edx,%esi
5b48a3:	8b d8                	mov    %eax,%ebx
5b48a5:	b8 00 04 00 00       	mov    $0x400,%eax
5b48aa:	2b c6                	sub    %esi,%eax
5b48ac:	8b 6b 20             	mov    0x20(%ebx),%ebp
5b48af:	f7 ed                	imul   %ebp
5b48b1:	89 04 24             	mov    %eax,(%esp)
5b48b4:	db 04 24             	fildl  (%esp)
5b48b7:	d8 35 2c 49 5b 00    	fdivs  0x5b492c
5b48bd:	e8 fe e3 e4 ff       	call   0x402cc0
5b48c2:	8b f8                	mov    %eax,%edi
5b48c4:	8b c6                	mov    %esi,%eax
5b48c6:	f7 ed                	imul   %ebp
5b48c8:	89 04 24             	mov    %eax,(%esp)
5b48cb:	db 04 24             	fildl  (%esp)
5b48ce:	d8 35 2c 49 5b 00    	fdivs  0x5b492c
5b48d4:	e8 e7 e3 e4 ff       	call   0x402cc0