5f6543:	5d                   	pop    %ebp
5f6544:	c2 08 00             	ret    $0x8
5f6547:	8b ff                	mov    %edi,%edi
5f6549:	55                   	push   %ebp
5f654a:	8b ec                	mov    %esp,%ebp
5f654c:	ff 75 20             	push   0x20(%ebp)
5f654f:	ff 75 1c             	push   0x1c(%ebp)
5f6552:	ff 75 18             	push   0x18(%ebp)
5f6555:	ff 75 14             	push   0x14(%ebp)
5f6558:	ff 75 10             	push   0x10(%ebp)
5f655b:	ff 75 0c             	push   0xc(%ebp)
5f655e:	ff 75 08             	push   0x8(%ebp)
5f6561:	e8 39 b8 ff ff       	call   0x5f1d9f
5f6566:	83 c4 1c             	add    $0x1c,%esp
5f6569:	5d                   	pop    %ebp
5f656a:	c3                   	ret
5f656b:	cc                   	int3
5f656c:	cc                   	int3
5f656d:	cc                   	int3
5f656e:	cc                   	int3
5f656f:	cc                   	int3
5f6570:	55                   	push   %ebp
5f6571:	8b ec                	mov    %esp,%ebp
5f6573:	56                   	push   %esi
5f6574:	33 c0                	xor    %eax,%eax
5f6576:	50                   	push   %eax
5f6577:	50                   	push   %eax
5f6578:	50                   	push   %eax
5f6579:	50                   	push   %eax
5f657a:	50                   	push   %eax
5f657b:	50                   	push   %eax
5f657c:	50                   	push   %eax
5f657d:	50                   	push   %eax
5f657e:	8b 55 0c             	mov    0xc(%ebp),%edx
5f6581:	8d 49 00             	lea    0x0(%ecx),%ecx
5f6584:	8a 02                	mov    (%edx),%al
5f6586:	0a c0                	or     %al,%al
5f6588:	74 09                	je     0x5f6593
5f658a:	83 c2 01             	add    $0x1,%edx
5f658d:	0f ab 04 24          	bts    %eax,(%esp)
5f6591:	eb f1                	jmp    0x5f6584
5f6593:	8b 75 08             	mov    0x8(%ebp),%esi
5f6596:	83 c9 ff             	or     $0xffffffff,%ecx
5f6599:	8d 49 00             	lea    0x0(%ecx),%ecx
5f659c:	83 c1 01             	add    $0x1,%ecx
5f659f:	8a 06                	mov    (%esi),%al
5f65a1:	0a c0                	or     %al,%al
5f65a3:	74 09                	je     0x5f65ae
5f65a5:	83 c6 01             	add    $0x1,%esi
5f65a8:	0f a3 04 24          	bt     %eax,(%esp)
5f65ac:	73 ee                	jae    0x5f659c
5f65ae:	8b c1                	mov    %ecx,%eax
5f65b0:	83 c4 20             	add    $0x20,%esp
5f65b3:	5e                   	pop    %esi
5f65b4:	c9                   	leave
5f65b5:	c3                   	ret
5f65b6:	8b ff                	mov    %edi,%edi
5f65b8:	55                   	push   %ebp
5f65b9:	8b ec                	mov    %esp,%ebp
5f65bb:	51                   	push   %ecx
5f65bc:	51                   	push   %ecx
5f65bd:	56                   	push   %esi
5f65be:	8b 75 10             	mov    0x10(%ebp),%esi
5f65c1:	85 f6                	test   %esi,%esi
5f65c3:	75 17                	jne    0x5f65dc
5f65c5:	e8 2f 6a ff ff       	call   0x5ecff9
5f65ca:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5f65d0:	e8 4a 69 ff ff       	call   0x5ecf1f
5f65d5:	d9 ee                	fldz
5f65d7:	e9 d1 00 00 00       	jmp    0x5f66ad
5f65dc:	53                   	push   %ebx
5f65dd:	57                   	push   %edi
5f65de:	bb ff ff 00 00       	mov    $0xffff,%ebx
5f65e3:	53                   	push   %ebx
5f65e4:	68 3f 13 00 00       	push   $0x133f
5f65e9:	e8 ac 07 01 00       	call   0x606d9a
5f65ee:	dd 45 08             	fldl   0x8(%ebp)
5f65f1:	8b f8                	mov    %eax,%edi
5f65f3:	59                   	pop    %ecx
5f65f4:	59                   	pop    %ecx
5f65f5:	0f b7 4d 0e          	movzwl 0xe(%ebp),%ecx
5f65f9:	b8 f0 7f 00 00       	mov    $0x7ff0,%eax
5f65fe:	23 c8                	and    %eax,%ecx
5f6600:	66 3b c8             	cmp    %ax,%cx
5f6603:	75 48                	jne    0x5f664d
5f6605:	83 0e ff             	orl    $0xffffffff,(%esi)
5f6608:	51                   	push   %ecx
5f6609:	51                   	push   %ecx
5f660a:	dd 1c 24             	fstpl  (%esp)
5f660d:	e8 99 06 01 00       	call   0x606cab
5f6612:	59                   	pop    %ecx
5f6613:	59                   	pop    %ecx
5f6614:	83 e8 01             	sub    $0x1,%eax
5f6617:	74 26                	je     0x5f663f
5f6619:	83 e8 01             	sub    $0x1,%eax
5f661c:	74 21                	je     0x5f663f
5f661e:	83 e8 01             	sub    $0x1,%eax
5f6621:	74 1c                	je     0x5f663f
5f6623:	dd 45 08             	fldl   0x8(%ebp)
5f6626:	dd 05 00 9c 6a 00    	fldl   0x6a9c00
5f662c:	57                   	push   %edi
5f662d:	83 ec 10             	sub    $0x10,%esp
5f6630:	d8 c1                	fadd   %st(1),%st
5f6632:	dd 5c 24 08          	fstpl  0x8(%esp)
5f6636:	dd 1c 24             	fstpl  (%esp)
5f6639:	6a 17                	push   $0x17
5f663b:	6a 08                	push   $0x8
5f663d:	eb 44                	jmp    0x5f6683
5f663f:	53                   	push   %ebx
5f6640:	57                   	push   %edi
5f6641:	e8 54 07 01 00       	call   0x606d9a
5f6646:	dd 45 08             	fldl   0x8(%ebp)
5f6649:	59                   	pop    %ecx
5f664a:	59                   	pop    %ecx
5f664b:	eb 5e                	jmp    0x5f66ab
5f664d:	d9 ee                	fldz
5f664f:	dd e9                	fucomp %st(1)
5f6651:	df e0                	fnstsw %ax
5f6653:	f6 c4 44             	test   $0x44,%ah
5f6656:	7a 38                	jp     0x5f6690
5f6658:	51                   	push   %ecx
5f6659:	51                   	push   %ecx
5f665a:	dd 1c 24             	fstpl  (%esp)
5f665d:	e8 bf 98 00 00       	call   0x5fff21
5f6662:	59                   	pop    %ecx
5f6663:	59                   	pop    %ecx
5f6664:	85 c0                	test   %eax,%eax
5f6666:	74 25                	je     0x5f668d
5f6668:	83 26 00             	andl   $0x0,(%esi)
5f666b:	dd 05 28 c6 6b 00    	fldl   0x6bc628
5f6671:	57                   	push   %edi
5f6672:	83 ec 10             	sub    $0x10,%esp
5f6675:	dd 5c 24 08          	fstpl  0x8(%esp)
5f6679:	dd 45 08             	fldl   0x8(%ebp)
5f667c:	dd 1c 24             	fstpl  (%esp)
5f667f:	6a 17                	push   $0x17
5f6681:	6a 00                	push   $0x0
5f6683:	e8 ac b9 00 00       	call   0x602034
5f6688:	83 c4 1c             	add    $0x1c,%esp
5f668b:	eb 1e                	jmp    0x5f66ab
5f668d:	dd 45 08             	fldl   0x8(%ebp)
5f6690:	56                   	push   %esi
5f6691:	51                   	push   %ecx
5f6692:	51                   	push   %ecx
5f6693:	dd 1c 24             	fstpl  (%esp)
5f6696:	e8 11 05 01 00       	call   0x606bac
5f669b:	53                   	push   %ebx
5f669c:	57                   	push   %edi
5f669d:	dd 5d f8             	fstpl  -0x8(%ebp)
5f66a0:	e8 f5 06 01 00       	call   0x606d9a
5f66a5:	dd 45 f8             	fldl   -0x8(%ebp)
5f66a8:	83 c4 14             	add    $0x14,%esp
5f66ab:	5f                   	pop    %edi
5f66ac:	5b                   	pop    %ebx
5f66ad:	5e                   	pop    %esi
5f66ae:	c9                   	leave
5f66af:	c3                   	ret
5f66b0:	6a 08                	push   $0x8
5f66b2:	68 e8 1a 70 00       	push   $0x701ae8
5f66b7:	e8 54 be fe ff       	call   0x5e2510
5f66bc:	e8 78 dd 00 00       	call   0x604439
5f66c1:	8b 70 0c             	mov    0xc(%eax),%esi
5f66c4:	85 f6                	test   %esi,%esi
5f66c6:	74 1e                	je     0x5f66e6
5f66c8:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5f66cc:	8b ce                	mov    %esi,%ecx
5f66ce:	ff 15 e0 24 68 00    	call   *0x6824e0
5f66d4:	ff d6                	call   *%esi
5f66d6:	eb 07                	jmp    0x5f66df
5f66d8:	33 c0                	xor    %eax,%eax
5f66da:	40                   	inc    %eax
5f66db:	c3                   	ret
5f66dc:	8b 65 e8             	mov    -0x18(%ebp),%esp
5f66df:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5f66e6:	e8 6e aa 00 00       	call   0x601159
5f66eb:	cc                   	int3
5f66ec:	8b ff                	mov    %edi,%edi
5f66ee:	55                   	push   %ebp
5f66ef:	8b ec                	mov    %esp,%ebp
5f66f1:	51                   	push   %ecx
5f66f2:	e8 42 dd 00 00       	call   0x604439
5f66f7:	8b 48 4c             	mov    0x4c(%eax),%ecx
5f66fa:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5f66fd:	8d 4d fc             	lea    -0x4(%ebp),%ecx
5f6700:	51                   	push   %ecx
5f6701:	50                   	push   %eax
5f6702:	e8 c7 e0 00 00       	call   0x6047ce
5f6707:	8b 45 fc             	mov    -0x4(%ebp),%eax
5f670a:	59                   	pop    %ecx
5f670b:	59                   	pop    %ecx
5f670c:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5f6712:	c9                   	leave
5f6713:	c3                   	ret
5f6714:	8b ff                	mov    %edi,%edi
5f6716:	55                   	push   %ebp
5f6717:	8b ec                	mov    %esp,%ebp
5f6719:	8b 55 08             	mov    0x8(%ebp),%edx
5f671c:	56                   	push   %esi
5f671d:	85 d2                	test   %edx,%edx
5f671f:	74 13                	je     0x5f6734
5f6721:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5f6724:	85 c9                	test   %ecx,%ecx
5f6726:	74 0c                	je     0x5f6734
5f6728:	8b 75 10             	mov    0x10(%ebp),%esi
5f672b:	85 f6                	test   %esi,%esi
5f672d:	75 19                	jne    0x5f6748
5f672f:	33 c0                	xor    %eax,%eax
5f6731:	66 89 02             	mov    %ax,(%edx)
5f6734:	e8 c0 68 ff ff       	call   0x5ecff9
5f6739:	6a 16                	push   $0x16
5f673b:	5e                   	pop    %esi
5f673c:	89 30                	mov    %esi,(%eax)
5f673e:	e8 dc 67 ff ff       	call   0x5ecf1f
5f6743:	8b c6                	mov    %esi,%eax
5f6745:	5e                   	pop    %esi
5f6746:	5d                   	pop    %ebp
5f6747:	c3                   	ret
5f6748:	57                   	push   %edi
5f6749:	8b fa                	mov    %edx,%edi
5f674b:	2b f2                	sub    %edx,%esi
5f674d:	0f b7 04 3e          	movzwl (%esi,%edi,1),%eax
5f6751:	66 89 07             	mov    %ax,(%edi)
5f6754:	8d 7f 02             	lea    0x2(%edi),%edi
5f6757:	66 85 c0             	test   %ax,%ax
5f675a:	74 05                	je     0x5f6761
5f675c:	83 e9 01             	sub    $0x1,%ecx
5f675f:	75 ec                	jne    0x5f674d
5f6761:	5f                   	pop    %edi
5f6762:	85 c9                	test   %ecx,%ecx
5f6764:	75 0e                	jne    0x5f6774
5f6766:	33 c0                	xor    %eax,%eax
5f6768:	66 89 02             	mov    %ax,(%edx)
5f676b:	e8 89 68 ff ff       	call   0x5ecff9
5f6770:	6a 22                	push   $0x22
5f6772:	eb c7                	jmp    0x5f673b
5f6774:	33 f6                	xor    %esi,%esi
5f6776:	eb cb                	jmp    0x5f6743
5f6778:	cc                   	int3
5f6779:	cc                   	int3
5f677a:	cc                   	int3
5f677b:	cc                   	int3
5f677c:	cc                   	int3
5f677d:	cc                   	int3
5f677e:	cc                   	int3
5f677f:	cc                   	int3
5f6780:	8b ff                	mov    %edi,%edi
5f6782:	55                   	push   %ebp
5f6783:	8b ec                	mov    %esp,%ebp
5f6785:	5d                   	pop    %ebp
5f6786:	e9 a2 06 01 00       	jmp    0x606e2d
5f678b:	8b ff                	mov    %edi,%edi
5f678d:	55                   	push   %ebp
5f678e:	8b ec                	mov    %esp,%ebp
5f6790:	5d                   	pop    %ebp
5f6791:	e9 00 00 00 00       	jmp    0x5f6796
5f6796:	8b ff                	mov    %edi,%edi
5f6798:	55                   	push   %ebp
5f6799:	8b ec                	mov    %esp,%ebp
5f679b:	56                   	push   %esi
5f679c:	8b 75 0c             	mov    0xc(%ebp),%esi
5f679f:	85 f6                	test   %esi,%esi
5f67a1:	74 1b                	je     0x5f67be
5f67a3:	6a e0                	push   $0xffffffe0
5f67a5:	33 d2                	xor    %edx,%edx
5f67a7:	58                   	pop    %eax
5f67a8:	f7 f6                	div    %esi
5f67aa:	3b 45 10             	cmp    0x10(%ebp),%eax
5f67ad:	73 0f                	jae    0x5f67be
5f67af:	e8 45 68 ff ff       	call   0x5ecff9
5f67b4:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
5f67ba:	33 c0                	xor    %eax,%eax
5f67bc:	eb 42                	jmp    0x5f6800
5f67be:	53                   	push   %ebx
5f67bf:	8b 5d 08             	mov    0x8(%ebp),%ebx
5f67c2:	57                   	push   %edi
5f67c3:	85 db                	test   %ebx,%ebx
5f67c5:	74 0b                	je     0x5f67d2
5f67c7:	53                   	push   %ebx
5f67c8:	e8 8d 93 00 00       	call   0x5ffb5a
5f67cd:	59                   	pop    %ecx
5f67ce:	8b f8                	mov    %eax,%edi
5f67d0:	eb 02                	jmp    0x5f67d4
5f67d2:	33 ff                	xor    %edi,%edi
5f67d4:	0f af 75 10          	imul   0x10(%ebp),%esi
5f67d8:	56                   	push   %esi
5f67d9:	53                   	push   %ebx
5f67da:	e8 4e 06 01 00       	call   0x606e2d
5f67df:	8b d8                	mov    %eax,%ebx
5f67e1:	59                   	pop    %ecx
5f67e2:	59                   	pop    %ecx
5f67e3:	85 db                	test   %ebx,%ebx
5f67e5:	74 15                	je     0x5f67fc
5f67e7:	3b fe                	cmp    %esi,%edi
5f67e9:	73 11                	jae    0x5f67fc
5f67eb:	2b f7                	sub    %edi,%esi
5f67ed:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
5f67f0:	56                   	push   %esi
5f67f1:	6a 00                	push   $0x0
5f67f3:	50                   	push   %eax
5f67f4:	e8 07 d2 fe ff       	call   0x5e3a00
5f67f9:	83 c4 0c             	add    $0xc,%esp
5f67fc:	5f                   	pop    %edi
5f67fd:	8b c3                	mov    %ebx,%eax
5f67ff:	5b                   	pop    %ebx
5f6800:	5e                   	pop    %esi
5f6801:	5d                   	pop    %ebp
5f6802:	c3                   	ret
5f6803:	8b ff                	mov    %edi,%edi
5f6805:	55                   	push   %ebp
5f6806:	8b ec                	mov    %esp,%ebp
5f6808:	83 ec 1c             	sub    $0x1c,%esp
5f680b:	53                   	push   %ebx
5f680c:	8b 5d 10             	mov    0x10(%ebp),%ebx
5f680f:	56                   	push   %esi
5f6810:	57                   	push   %edi
5f6811:	8b 7d 08             	mov    0x8(%ebp),%edi
5f6814:	33 f6                	xor    %esi,%esi
5f6816:	85 ff                	test   %edi,%edi
5f6818:	74 0d                	je     0x5f6827
5f681a:	33 c0                	xor    %eax,%eax
5f681c:	85 db                	test   %ebx,%ebx
5f681e:	0f 84 7d 01 00 00    	je     0x5f69a1
5f6824:	66 89 07             	mov    %ax,(%edi)
5f6827:	39 75 0c             	cmp    %esi,0xc(%ebp)
5f682a:	75 18                	jne    0x5f6844
5f682c:	e8 c8 67 ff ff       	call   0x5ecff9
5f6831:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5f6837:	e8 e3 66 ff ff       	call   0x5ecf1f
5f683c:	83 c8 ff             	or     $0xffffffff,%eax
5f683f:	e9 5d 01 00 00       	jmp    0x5f69a1
5f6844:	ff 75 14             	push   0x14(%ebp)
5f6847:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
5f684a:	e8 3e 73 ff ff       	call   0x5edb8d
5f684f:	8b 45 e8             	mov    -0x18(%ebp),%eax
5f6852:	8b 48 08             	mov    0x8(%eax),%ecx
5f6855:	81 f9 e9 fd 00 00    	cmp    $0xfde9,%ecx
5f685b:	75 1f                	jne    0x5f687c
5f685d:	8d 45 f4             	lea    -0xc(%ebp),%eax
5f6860:	89 75 f4             	mov    %esi,-0xc(%ebp)
5f6863:	50                   	push   %eax
5f6864:	53                   	push   %ebx
5f6865:	8d 45 0c             	lea    0xc(%ebp),%eax
5f6868:	89 75 f8             	mov    %esi,-0x8(%ebp)
5f686b:	50                   	push   %eax
5f686c:	57                   	push   %edi
5f686d:	e8 0c 07 01 00       	call   0x606f7e
5f6872:	83 c4 10             	add    $0x10,%esp
5f6875:	8b f0                	mov    %eax,%esi
5f6877:	e9 13 01 00 00       	jmp    0x5f698f
5f687c:	85 ff                	test   %edi,%edi