41543f:	1a 9b e9 78 01 00    	sbb    0x178e9(%ebx),%bl
415445:	00 8b 45 08 89 02    	add    %cl,0x2890845(%ebx)
41544b:	8b 45 0c             	mov    0xc(%ebp),%eax
41544e:	89 42 04             	mov    %eax,0x4(%edx)
415451:	66 8b 45 10          	mov    0x10(%ebp),%ax
415455:	66 89 42 08          	mov    %ax,0x8(%edx)
415459:	e9 60 01 00 00       	jmp    0x4155be
41545e:	db 6d 08             	fldt   0x8(%ebp)
415461:	df 3a                	fistpll (%edx)
415463:	9b                   	fwait
415464:	e9 55 01 00 00       	jmp    0x4155be
415469:	db 6d 08             	fldt   0x8(%ebp)
41546c:	d8 0d c8 55 41 00    	fmuls  0x4155c8
415472:	df 3a                	fistpll (%edx)
415474:	9b                   	fwait
415475:	e9 44 01 00 00       	jmp    0x4155be
41547a:	81 fa 00 00 00 fe    	cmp    $0xfe000000,%edx
415480:	75 0e                	jne    0x415490
415482:	8b 17                	mov    (%edi),%edx
415484:	0f bf cb             	movswl %bx,%ecx
415487:	03 d1                	add    %ecx,%edx
415489:	8b 12                	mov    (%edx),%edx
41548b:	89 55 f8             	mov    %edx,-0x8(%ebp)
41548e:	eb 03                	jmp    0x415493
415490:	89 5d f8             	mov    %ebx,-0x8(%ebp)
415493:	89 7d fc             	mov    %edi,-0x4(%ebp)
415496:	8b 56 10             	mov    0x10(%esi),%edx
415499:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
41549f:	0f 85 97 00 00 00    	jne    0x41553c
4154a5:	83 e0 7f             	and    $0x7f,%eax
4154a8:	83 f8 04             	cmp    $0x4,%eax
4154ab:	0f 87 0d 01 00 00    	ja     0x4155be
4154b1:	ff 24 85 b8 54 41 00 	jmp    *0x4154b8(,%eax,4)
4154b8:	cc                   	int3
4154b9:	54                   	push   %esp
4154ba:	41                   	inc    %ecx
4154bb:	00 e1                	add    %ah,%cl
4154bd:	54                   	push   %esp
4154be:	41                   	inc    %ecx
4154bf:	00 f6                	add    %dh,%dh
4154c1:	54                   	push   %esp
4154c2:	41                   	inc    %ecx
4154c3:	00 0c 55 41 00 21 55 	add    %cl,0x55210041(,%edx,2)
4154ca:	41                   	inc    %ecx
4154cb:	00 db                	add    %bl,%bl
4154cd:	6d                   	insl   (%dx),%es:(%edi)
4154ce:	08 83 c4 fc d9 1c    	or     %al,0x1cd9fcc4(%ebx)
4154d4:	24 9b                	and    $0x9b,%al
4154d6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4154d9:	ff 55 f8             	call   *-0x8(%ebp)
4154dc:	e9 dd 00 00 00       	jmp    0x4155be
4154e1:	db 6d 08             	fldt   0x8(%ebp)
4154e4:	83 c4 f8             	add    $0xfffffff8,%esp
4154e7:	dd 1c 24             	fstpl  (%esp)
4154ea:	9b                   	fwait
4154eb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4154ee:	ff 55 f8             	call   *-0x8(%ebp)
4154f1:	e9 c8 00 00 00       	jmp    0x4155be
4154f6:	66 8b 45 10          	mov    0x10(%ebp),%ax
4154fa:	50                   	push   %eax
4154fb:	ff 75 0c             	push   0xc(%ebp)
4154fe:	ff 75 08             	push   0x8(%ebp)
415501:	8b 45 fc             	mov    -0x4(%ebp),%eax
415504:	ff 55 f8             	call   *-0x8(%ebp)
415507:	e9 b2 00 00 00       	jmp    0x4155be
41550c:	db 6d 08             	fldt   0x8(%ebp)
41550f:	83 c4 f8             	add    $0xfffffff8,%esp
415512:	df 3c 24             	fistpll (%esp)
415515:	9b                   	fwait
415516:	8b 45 fc             	mov    -0x4(%ebp),%eax
415519:	ff 55 f8             	call   *-0x8(%ebp)
41551c:	e9 9d 00 00 00       	jmp    0x4155be
415521:	db 6d 08             	fldt   0x8(%ebp)
415524:	d8 0d c8 55 41 00    	fmuls  0x4155c8
41552a:	83 c4 f8             	add    $0xfffffff8,%esp
41552d:	df 3c 24             	fistpll (%esp)
415530:	9b                   	fwait
415531:	8b 45 fc             	mov    -0x4(%ebp),%eax
415534:	ff 55 f8             	call   *-0x8(%ebp)
415537:	e9 82 00 00 00       	jmp    0x4155be
41553c:	83 e0 7f             	and    $0x7f,%eax
41553f:	83 f8 04             	cmp    $0x4,%eax
415542:	77 7a                	ja     0x4155be
415544:	ff 24 85 4b 55 41 00 	jmp    *0x41554b(,%eax,4)
41554b:	5f                   	pop    %edi
41554c:	55                   	push   %ebp
41554d:	41                   	inc    %ecx
41554e:	00 71 55             	add    %dh,0x55(%ecx)
415551:	41                   	inc    %ecx
415552:	00 83 55 41 00 96    	add    %al,-0x69ffbeab(%ebx)
415558:	55                   	push   %ebp
415559:	41                   	inc    %ecx
41555a:	00 a8 55 41 00 db    	add    %ch,-0x24ffbeab(%eax)
415560:	6d                   	insl   (%dx),%es:(%edi)
415561:	08 83 c4 fc d9 1c    	or     %al,0x1cd9fcc4(%ebx)
415567:	24 9b                	and    $0x9b,%al
415569:	8b 45 fc             	mov    -0x4(%ebp),%eax
41556c:	ff 55 f8             	call   *-0x8(%ebp)
41556f:	eb 4d                	jmp    0x4155be
415571:	db 6d 08             	fldt   0x8(%ebp)
415574:	83 c4 f8             	add    $0xfffffff8,%esp
415577:	dd 1c 24             	fstpl  (%esp)
41557a:	9b                   	fwait
41557b:	8b 45 fc             	mov    -0x4(%ebp),%eax
41557e:	ff 55 f8             	call   *-0x8(%ebp)
415581:	eb 3b                	jmp    0x4155be
415583:	66 8b 45 10          	mov    0x10(%ebp),%ax
415587:	50                   	push   %eax
415588:	ff 75 0c             	push   0xc(%ebp)
41558b:	ff 75 08             	push   0x8(%ebp)
41558e:	8b 45 fc             	mov    -0x4(%ebp),%eax
415591:	ff 55 f8             	call   *-0x8(%ebp)
415594:	eb 28                	jmp    0x4155be
415596:	db 6d 08             	fldt   0x8(%ebp)
415599:	83 c4 f8             	add    $0xfffffff8,%esp
41559c:	df 3c 24             	fistpll (%esp)
41559f:	9b                   	fwait
4155a0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4155a3:	ff 55 f8             	call   *-0x8(%ebp)
4155a6:	eb 16                	jmp    0x4155be
4155a8:	db 6d 08             	fldt   0x8(%ebp)
4155ab:	d8 0d c8 55 41 00    	fmuls  0x4155c8
4155b1:	83 c4 f8             	add    $0xfffffff8,%esp
4155b4:	df 3c 24             	fistpll (%esp)
4155b7:	9b                   	fwait
4155b8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4155bb:	ff 55 f8             	call   *-0x8(%ebp)
4155be:	5f                   	pop    %edi
4155bf:	5e                   	pop    %esi
4155c0:	5b                   	pop    %ebx
4155c1:	59                   	pop    %ecx
4155c2:	59                   	pop    %ecx
4155c3:	5d                   	pop    %ebp
4155c4:	c2 0c 00             	ret    $0xc
4155c7:	00 00                	add    %al,(%eax)
4155c9:	40                   	inc    %eax
4155ca:	1c 46                	sbb    $0x46,%al
4155cc:	53                   	push   %ebx
4155cd:	56                   	push   %esi
4155ce:	8b f2                	mov    %edx,%esi
4155d0:	8b d8                	mov    %eax,%ebx
4155d2:	8b c3                	mov    %ebx,%eax
4155d4:	8b d6                	mov    %esi,%edx
4155d6:	e8 0d 9f ff ff       	call   0x40f4e8
4155db:	5e                   	pop    %esi
4155dc:	5b                   	pop    %ebx
4155dd:	c3                   	ret
4155de:	8b c0                	mov    %eax,%eax
4155e0:	56                   	push   %esi
4155e1:	57                   	push   %edi
4155e2:	89 d7                	mov    %edx,%edi
4155e4:	8b 57 10             	mov    0x10(%edi),%edx
4155e7:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
4155ed:	75 02                	jne    0x4155f1
4155ef:	89 ca                	mov    %ecx,%edx
4155f1:	8b 77 04             	mov    0x4(%edi),%esi
4155f4:	80 7f 07 fe          	cmpb   $0xfe,0x7(%edi)
4155f8:	77 11                	ja     0x41560b
4155fa:	72 0a                	jb     0x415606
4155fc:	0f bf f6             	movswl %si,%esi
4155ff:	03 30                	add    (%eax),%esi
415601:	ff 16                	call   *(%esi)
415603:	5f                   	pop    %edi
415604:	5e                   	pop    %esi
415605:	c3                   	ret
415606:	ff d6                	call   *%esi
415608:	5f                   	pop    %edi
415609:	5e                   	pop    %esi
41560a:	c3                   	ret
41560b:	81 e6 ff ff ff 00    	and    $0xffffff,%esi
415611:	8d 14 06             	lea    (%esi,%eax,1),%edx
415614:	89 c8                	mov    %ecx,%eax
415616:	e8 b1 ff ff ff       	call   0x4155cc
41561b:	5f                   	pop    %edi
41561c:	5e                   	pop    %esi
41561d:	c3                   	ret
41561e:	8b c0                	mov    %eax,%eax
415620:	56                   	push   %esi
415621:	57                   	push   %edi
415622:	89 d6                	mov    %edx,%esi
415624:	8b 56 10             	mov    0x10(%esi),%edx
415627:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
41562d:	75 02                	jne    0x415631
41562f:	89 ca                	mov    %ecx,%edx
415631:	8b 7e 08             	mov    0x8(%esi),%edi
415634:	80 7e 0b fe          	cmpb   $0xfe,0xb(%esi)
415638:	77 11                	ja     0x41564b
41563a:	72 0a                	jb     0x415646
41563c:	0f bf ff             	movswl %di,%edi
41563f:	03 38                	add    (%eax),%edi
415641:	ff 17                	call   *(%edi)
415643:	5f                   	pop    %edi
415644:	5e                   	pop    %esi
415645:	c3                   	ret
415646:	ff d7                	call   *%edi
415648:	5f                   	pop    %edi
415649:	5e                   	pop    %esi
41564a:	c3                   	ret
41564b:	81 e7 ff ff ff 00    	and    $0xffffff,%edi
415651:	01 f8                	add    %edi,%eax
415653:	89 ca                	mov    %ecx,%edx
415655:	e8 72 ff ff ff       	call   0x4155cc
41565a:	5f                   	pop    %edi
41565b:	5e                   	pop    %esi
41565c:	c3                   	ret
41565d:	8d 40 00             	lea    0x0(%eax),%eax
415660:	53                   	push   %ebx
415661:	56                   	push   %esi
415662:	89 d6                	mov    %edx,%esi
415664:	8b 56 10             	mov    0x10(%esi),%edx
415667:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
41566d:	75 02                	jne    0x415671
41566f:	89 ca                	mov    %ecx,%edx
415671:	8b 5e 04             	mov    0x4(%esi),%ebx
415674:	80 7e 07 fe          	cmpb   $0xfe,0x7(%esi)
415678:	77 11                	ja     0x41568b
41567a:	72 0a                	jb     0x415686
41567c:	0f bf db             	movswl %bx,%ebx
41567f:	03 18                	add    (%eax),%ebx
415681:	ff 13                	call   *(%ebx)
415683:	5e                   	pop    %esi
415684:	5b                   	pop    %ebx
415685:	c3                   	ret
415686:	ff d3                	call   *%ebx
415688:	5e                   	pop    %esi
415689:	5b                   	pop    %ebx
41568a:	c3                   	ret
41568b:	81 e3 ff ff ff 00    	and    $0xffffff,%ebx
415691:	01 d8                	add    %ebx,%eax
415693:	8b 10                	mov    (%eax),%edx
415695:	8b 58 04             	mov    0x4(%eax),%ebx
415698:	89 11                	mov    %edx,(%ecx)
41569a:	89 59 04             	mov    %ebx,0x4(%ecx)
41569d:	5e                   	pop    %esi
41569e:	5b                   	pop    %ebx
41569f:	c3                   	ret
4156a0:	53                   	push   %ebx
4156a1:	8b 5a 08             	mov    0x8(%edx),%ebx
4156a4:	80 7a 0b fe          	cmpb   $0xfe,0xb(%edx)
4156a8:	77 17                	ja     0x4156c1
4156aa:	8b 52 10             	mov    0x10(%edx),%edx
4156ad:	ff 71 04             	push   0x4(%ecx)
4156b0:	ff 31                	push   (%ecx)
4156b2:	72 09                	jb     0x4156bd
4156b4:	0f bf db             	movswl %bx,%ebx
4156b7:	03 18                	add    (%eax),%ebx
4156b9:	ff 13                	call   *(%ebx)
4156bb:	5b                   	pop    %ebx
4156bc:	c3                   	ret
4156bd:	ff d3                	call   *%ebx
4156bf:	5b                   	pop    %ebx
4156c0:	c3                   	ret
4156c1:	81 e3 ff ff ff 00    	and    $0xffffff,%ebx
4156c7:	01 d8                	add    %ebx,%eax
4156c9:	8b 11                	mov    (%ecx),%edx
4156cb:	8b 59 04             	mov    0x4(%ecx),%ebx
4156ce:	89 10                	mov    %edx,(%eax)
4156d0:	89 58 04             	mov    %ebx,0x4(%eax)
4156d3:	5b                   	pop    %ebx
4156d4:	c3                   	ret
4156d5:	8d 40 00             	lea    0x0(%eax),%eax
4156d8:	80 7a 07 fe          	cmpb   $0xfe,0x7(%edx)
4156dc:	8b 4a 04             	mov    0x4(%edx),%ecx
4156df:	8b 52 10             	mov    0x10(%edx),%edx
4156e2:	77 0d                	ja     0x4156f1
4156e4:	72 08                	jb     0x4156ee
4156e6:	0f bf c9             	movswl %cx,%ecx
4156e9:	03 08                	add    (%eax),%ecx
4156eb:	ff 11                	call   *(%ecx)
4156ed:	c3                   	ret
4156ee:	ff d1                	call   *%ecx
4156f0:	c3                   	ret
4156f1:	81 e1 ff ff ff 00    	and    $0xffffff,%ecx
4156f7:	01 c8                	add    %ecx,%eax
4156f9:	8b 50 04             	mov    0x4(%eax),%edx
4156fc:	8b 00                	mov    (%eax),%eax
4156fe:	c3                   	ret
4156ff:	90                   	nop
415700:	55                   	push   %ebp
415701:	8b ec                	mov    %esp,%ebp
415703:	80 7a 0b fe          	cmpb   $0xfe,0xb(%edx)
415707:	8b 4a 08             	mov    0x8(%edx),%ecx
41570a:	77 18                	ja     0x415724
41570c:	8b 52 10             	mov    0x10(%edx),%edx
41570f:	ff 75 0c             	push   0xc(%ebp)
415712:	ff 75 08             	push   0x8(%ebp)
415715:	72 09                	jb     0x415720
415717:	0f bf c9             	movswl %cx,%ecx
41571a:	03 08                	add    (%eax),%ecx
41571c:	ff 11                	call   *(%ecx)
41571e:	eb 17                	jmp    0x415737
415720:	ff d1                	call   *%ecx
415722:	eb 13                	jmp    0x415737
415724:	81 e1 ff ff ff 00    	and    $0xffffff,%ecx
41572a:	01 c8                	add    %ecx,%eax
41572c:	8b 55 08             	mov    0x8(%ebp),%edx
41572f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
415732:	89 10                	mov    %edx,(%eax)
415734:	89 48 04             	mov    %ecx,0x4(%eax)
415737:	5d                   	pop    %ebp
415738:	c2 08 00             	ret    $0x8
41573b:	90                   	nop
41573c:	53                   	push   %ebx
41573d:	56                   	push   %esi
41573e:	83 c4 f4             	add    $0xfffffff4,%esp
415741:	89 0c 24             	mov    %ecx,(%esp)
415744:	8b da                	mov    %edx,%ebx
415746:	8b 53 04             	mov    0x4(%ebx),%edx
415749:	8b ca                	mov    %edx,%ecx
41574b:	81 e1 00 00 00 ff    	and    $0xff000000,%ecx
415751:	81 f9 00 00 00 ff    	cmp    $0xff000000,%ecx
415757:	75 16                	jne    0x41576f
415759:	8b da                	mov    %edx,%ebx
41575b:	81 e3 ff ff ff 00    	and    $0xffffff,%ebx
415761:	03 d8                	add    %eax,%ebx
415763:	8b 04 24             	mov    (%esp),%eax
415766:	8b 13                	mov    (%ebx),%edx
415768:	e8 cb 01 ff ff       	call   0x405938
41576d:	eb 44                	jmp    0x4157b3
41576f:	81 f9 00 00 00 fe    	cmp    $0xfe000000,%ecx
415775:	75 0f                	jne    0x415786
415777:	8b 08                	mov    (%eax),%ecx
415779:	0f bf d2             	movswl %dx,%edx
41577c:	03 ca                	add    %edx,%ecx
41577e:	8b 11                	mov    (%ecx),%edx
415780:	89 54 24 04          	mov    %edx,0x4(%esp)
415784:	eb 04                	jmp    0x41578a
415786:	89 54 24 04          	mov    %edx,0x4(%esp)
41578a:	89 44 24 08          	mov    %eax,0x8(%esp)
41578e:	8b 73 10             	mov    0x10(%ebx),%esi
415791:	81 fe 00 00 00 80    	cmp    $0x80000000,%esi
415797:	75 0d                	jne    0x4157a6
415799:	8b 14 24             	mov    (%esp),%edx
41579c:	8b 44 24 08          	mov    0x8(%esp),%eax
4157a0:	ff 54 24 04          	call   *0x4(%esp)
4157a4:	eb 0d                	jmp    0x4157b3
4157a6:	8b 0c 24             	mov    (%esp),%ecx
4157a9:	8b d6                	mov    %esi,%edx
4157ab:	8b 44 24 08          	mov    0x8(%esp),%eax
4157af:	ff 54 24 04          	call   *0x4(%esp)
4157b3:	83 c4 0c             	add    $0xc,%esp
4157b6:	5e                   	pop    %esi
4157b7:	5b                   	pop    %ebx
4157b8:	c3                   	ret
4157b9:	8d 40 00             	lea    0x0(%eax),%eax
4157bc:	53                   	push   %ebx
4157bd:	56                   	push   %esi
4157be:	83 c4 f8             	add    $0xfffffff8,%esp
4157c1:	8b f1                	mov    %ecx,%esi
4157c3:	8b 4a 08             	mov    0x8(%edx),%ecx