4c7710:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7714:	8b 49 04             	mov    0x4(%ecx),%ecx
4c7717:	89 08                	mov    %ecx,(%eax)
4c7719:	c2 04 00             	ret    $0x4
4c771c:	cc                   	int3
4c771d:	cc                   	int3
4c771e:	cc                   	int3
4c771f:	cc                   	int3
4c7720:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7724:	8b 09                	mov    (%ecx),%ecx
4c7726:	89 08                	mov    %ecx,(%eax)
4c7728:	c2 04 00             	ret    $0x4
4c772b:	cc                   	int3
4c772c:	cc                   	int3
4c772d:	cc                   	int3
4c772e:	cc                   	int3
4c772f:	cc                   	int3
4c7730:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7734:	8b 09                	mov    (%ecx),%ecx
4c7736:	89 08                	mov    %ecx,(%eax)
4c7738:	c2 04 00             	ret    $0x4
4c773b:	cc                   	int3
4c773c:	cc                   	int3
4c773d:	cc                   	int3
4c773e:	cc                   	int3
4c773f:	cc                   	int3
4c7740:	8b 44 24 08          	mov    0x8(%esp),%eax
4c7744:	8b 48 04             	mov    0x4(%eax),%ecx
4c7747:	8b 44 24 0c          	mov    0xc(%esp),%eax
4c774b:	89 01                	mov    %eax,(%ecx)
4c774d:	8b 44 24 0c          	mov    0xc(%esp),%eax
4c7751:	8b 48 04             	mov    0x4(%eax),%ecx
4c7754:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7758:	89 01                	mov    %eax,(%ecx)
4c775a:	8b 44 24 04          	mov    0x4(%esp),%eax
4c775e:	8b 48 04             	mov    0x4(%eax),%ecx
4c7761:	8b 44 24 08          	mov    0x8(%esp),%eax
4c7765:	89 01                	mov    %eax,(%ecx)
4c7767:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4c776b:	8b 44 24 0c          	mov    0xc(%esp),%eax
4c776f:	8b 51 04             	mov    0x4(%ecx),%edx
4c7772:	8b 40 04             	mov    0x4(%eax),%eax
4c7775:	89 41 04             	mov    %eax,0x4(%ecx)
4c7778:	8b 44 24 08          	mov    0x8(%esp),%eax
4c777c:	8b 48 04             	mov    0x4(%eax),%ecx
4c777f:	8b 44 24 0c          	mov    0xc(%esp),%eax
4c7783:	89 48 04             	mov    %ecx,0x4(%eax)
4c7786:	8b 44 24 08          	mov    0x8(%esp),%eax
4c778a:	89 50 04             	mov    %edx,0x4(%eax)
4c778d:	c2 0c 00             	ret    $0xc
4c7790:	cc                   	int3
4c7791:	cc                   	int3
4c7792:	cc                   	int3
4c7793:	cc                   	int3
4c7794:	cc                   	int3
4c7795:	cc                   	int3
4c7796:	cc                   	int3
4c7797:	cc                   	int3
4c7798:	cc                   	int3
4c7799:	cc                   	int3
4c779a:	cc                   	int3
4c779b:	cc                   	int3
4c779c:	cc                   	int3
4c779d:	cc                   	int3
4c779e:	cc                   	int3
4c779f:	cc                   	int3
4c77a0:	cc                   	int3
4c77a1:	cc                   	int3
4c77a2:	cc                   	int3
4c77a3:	cc                   	int3
4c77a4:	cc                   	int3
4c77a5:	cc                   	int3
4c77a6:	cc                   	int3
4c77a7:	cc                   	int3
4c77a8:	cc                   	int3
4c77a9:	cc                   	int3
4c77aa:	cc                   	int3
4c77ab:	cc                   	int3
4c77ac:	cc                   	int3
4c77ad:	cc                   	int3
4c77ae:	cc                   	int3
4c77af:	cc                   	int3
4c77b0:	8b 44 24 04          	mov    0x4(%esp),%eax
4c77b4:	56                   	push   %esi
4c77b5:	8b 70 04             	mov    0x4(%eax),%esi
4c77b8:	8b 10                	mov    (%eax),%edx
4c77ba:	89 16                	mov    %edx,(%esi)
4c77bc:	8b 30                	mov    (%eax),%esi
4c77be:	8b 50 04             	mov    0x4(%eax),%edx
4c77c1:	89 56 04             	mov    %edx,0x4(%esi)
4c77c4:	ff 49 04             	decl   0x4(%ecx)
4c77c7:	5e                   	pop    %esi
4c77c8:	c2 04 00             	ret    $0x4
4c77cb:	cc                   	int3
4c77cc:	cc                   	int3
4c77cd:	cc                   	int3
4c77ce:	cc                   	int3
4c77cf:	cc                   	int3
4c77d0:	cc                   	int3
4c77d1:	cc                   	int3
4c77d2:	cc                   	int3
4c77d3:	cc                   	int3
4c77d4:	cc                   	int3
4c77d5:	cc                   	int3
4c77d6:	cc                   	int3
4c77d7:	cc                   	int3
4c77d8:	cc                   	int3
4c77d9:	cc                   	int3
4c77da:	cc                   	int3
4c77db:	cc                   	int3
4c77dc:	cc                   	int3
4c77dd:	cc                   	int3
4c77de:	cc                   	int3
4c77df:	cc                   	int3
4c77e0:	8b 41 08             	mov    0x8(%ecx),%eax
4c77e3:	2b 41 04             	sub    0x4(%ecx),%eax
4c77e6:	c1 f8 02             	sar    $0x2,%eax
4c77e9:	c3                   	ret
4c77ea:	cc                   	int3
4c77eb:	cc                   	int3
4c77ec:	cc                   	int3
4c77ed:	cc                   	int3
4c77ee:	cc                   	int3
4c77ef:	cc                   	int3
4c77f0:	8b 44 24 04          	mov    0x4(%esp),%eax
4c77f4:	8b 49 0c             	mov    0xc(%ecx),%ecx
4c77f7:	8d 04 c5 04 00 00 00 	lea    0x4(,%eax,8),%eax
4c77fe:	03 c1                	add    %ecx,%eax
4c7800:	c2 04 00             	ret    $0x4
4c7803:	cc                   	int3
4c7804:	cc                   	int3
4c7805:	cc                   	int3
4c7806:	cc                   	int3
4c7807:	cc                   	int3
4c7808:	cc                   	int3
4c7809:	cc                   	int3
4c780a:	cc                   	int3
4c780b:	cc                   	int3
4c780c:	cc                   	int3
4c780d:	cc                   	int3
4c780e:	cc                   	int3
4c780f:	cc                   	int3
4c7810:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7814:	8b 49 0c             	mov    0xc(%ecx),%ecx
4c7817:	8d 04 c5 04 00 00 00 	lea    0x4(,%eax,8),%eax
4c781e:	03 c1                	add    %ecx,%eax
4c7820:	c2 04 00             	ret    $0x4
4c7823:	cc                   	int3
4c7824:	cc                   	int3
4c7825:	cc                   	int3
4c7826:	cc                   	int3
4c7827:	cc                   	int3
4c7828:	cc                   	int3
4c7829:	cc                   	int3
4c782a:	cc                   	int3
4c782b:	cc                   	int3
4c782c:	cc                   	int3
4c782d:	cc                   	int3
4c782e:	cc                   	int3
4c782f:	cc                   	int3
4c7830:	8b 49 0c             	mov    0xc(%ecx),%ecx
4c7833:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7837:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
4c783a:	c2 04 00             	ret    $0x4
4c783d:	cc                   	int3
4c783e:	cc                   	int3
4c783f:	cc                   	int3
4c7840:	8b 49 0c             	mov    0xc(%ecx),%ecx
4c7843:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7847:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
4c784a:	c2 04 00             	ret    $0x4
4c784d:	cc                   	int3
4c784e:	cc                   	int3
4c784f:	cc                   	int3
4c7850:	68 58 20 bd 00       	push   $0xbd2058
4c7855:	e8 bc 1f f6 ff       	call   0x429816
4c785a:	cc                   	int3
4c785b:	cc                   	int3
4c785c:	cc                   	int3
4c785d:	cc                   	int3
4c785e:	cc                   	int3
4c785f:	cc                   	int3
4c7860:	e9 27 6a f4 ff       	jmp    0x40e28c
4c7865:	cc                   	int3
4c7866:	cc                   	int3
4c7867:	cc                   	int3
4c7868:	cc                   	int3
4c7869:	cc                   	int3
4c786a:	cc                   	int3
4c786b:	cc                   	int3
4c786c:	cc                   	int3
4c786d:	cc                   	int3
4c786e:	cc                   	int3
4c786f:	cc                   	int3
4c7870:	e9 49 8b f6 ff       	jmp    0x4303be
4c7875:	cc                   	int3
4c7876:	cc                   	int3
4c7877:	cc                   	int3
4c7878:	cc                   	int3
4c7879:	cc                   	int3
4c787a:	cc                   	int3
4c787b:	cc                   	int3
4c787c:	cc                   	int3
4c787d:	cc                   	int3
4c787e:	cc                   	int3
4c787f:	cc                   	int3
4c7880:	e9 07 6a f4 ff       	jmp    0x40e28c
4c7885:	cc                   	int3
4c7886:	cc                   	int3
4c7887:	cc                   	int3
4c7888:	cc                   	int3
4c7889:	cc                   	int3
4c788a:	cc                   	int3
4c788b:	cc                   	int3
4c788c:	cc                   	int3
4c788d:	cc                   	int3
4c788e:	cc                   	int3
4c788f:	cc                   	int3
4c7890:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7894:	85 c0                	test   %eax,%eax
4c7896:	75 03                	jne    0x4c789b
4c7898:	c2 04 00             	ret    $0x4
4c789b:	3d c7 71 1c 07       	cmp    $0x71c71c7,%eax
4c78a0:	77 3e                	ja     0x4c78e0
4c78a2:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4c78a5:	c1 e0 02             	shl    $0x2,%eax
4c78a8:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c78ad:	72 22                	jb     0x4c78d1
4c78af:	8d 48 23             	lea    0x23(%eax),%ecx
4c78b2:	3b c8                	cmp    %eax,%ecx
4c78b4:	76 2f                	jbe    0x4c78e5
4c78b6:	51                   	push   %ecx
4c78b7:	e8 c1 30 f6 ff       	call   0x42a97d
4c78bc:	8b c8                	mov    %eax,%ecx
4c78be:	83 c4 04             	add    $0x4,%esp
4c78c1:	85 c9                	test   %ecx,%ecx
4c78c3:	74 25                	je     0x4c78ea
4c78c5:	8d 41 23             	lea    0x23(%ecx),%eax
4c78c8:	83 e0 e0             	and    $0xffffffe0,%eax
4c78cb:	89 48 fc             	mov    %ecx,-0x4(%eax)
4c78ce:	c2 04 00             	ret    $0x4
4c78d1:	50                   	push   %eax
4c78d2:	e8 a6 30 f6 ff       	call   0x42a97d
4c78d7:	83 c4 04             	add    $0x4,%esp
4c78da:	85 c0                	test   %eax,%eax
4c78dc:	75 ba                	jne    0x4c7898
4c78de:	eb 0f                	jmp    0x4c78ef
4c78e0:	e8 39 a6 f3 ff       	call   0x401f1e
4c78e5:	e8 34 a6 f3 ff       	call   0x401f1e
4c78ea:	e8 9e 60 f7 ff       	call   0x43d98d
4c78ef:	e8 99 60 f7 ff       	call   0x43d98d
4c78f4:	cc                   	int3
4c78f5:	cc                   	int3
4c78f6:	cc                   	int3
4c78f7:	cc                   	int3
4c78f8:	cc                   	int3
4c78f9:	cc                   	int3
4c78fa:	cc                   	int3
4c78fb:	cc                   	int3
4c78fc:	cc                   	int3
4c78fd:	cc                   	int3
4c78fe:	cc                   	int3
4c78ff:	cc                   	int3
4c7900:	cc                   	int3
4c7901:	cc                   	int3
4c7902:	cc                   	int3
4c7903:	cc                   	int3
4c7904:	cc                   	int3
4c7905:	cc                   	int3
4c7906:	cc                   	int3
4c7907:	cc                   	int3
4c7908:	cc                   	int3
4c7909:	cc                   	int3
4c790a:	cc                   	int3
4c790b:	cc                   	int3
4c790c:	cc                   	int3
4c790d:	cc                   	int3
4c790e:	cc                   	int3
4c790f:	cc                   	int3
4c7910:	8b 44 24 04          	mov    0x4(%esp),%eax
4c7914:	85 c0                	test   %eax,%eax
4c7916:	75 03                	jne    0x4c791b
4c7918:	c2 04 00             	ret    $0x4
4c791b:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
4c7920:	77 3b                	ja     0x4c795d
4c7922:	c1 e0 02             	shl    $0x2,%eax
4c7925:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c792a:	72 22                	jb     0x4c794e
4c792c:	8d 48 23             	lea    0x23(%eax),%ecx
4c792f:	3b c8                	cmp    %eax,%ecx
4c7931:	76 2f                	jbe    0x4c7962
4c7933:	51                   	push   %ecx
4c7934:	e8 44 30 f6 ff       	call   0x42a97d
4c7939:	8b c8                	mov    %eax,%ecx
4c793b:	83 c4 04             	add    $0x4,%esp
4c793e:	85 c9                	test   %ecx,%ecx
4c7940:	74 25                	je     0x4c7967
4c7942:	8d 41 23             	lea    0x23(%ecx),%eax
4c7945:	83 e0 e0             	and    $0xffffffe0,%eax
4c7948:	89 48 fc             	mov    %ecx,-0x4(%eax)
4c794b:	c2 04 00             	ret    $0x4
4c794e:	50                   	push   %eax
4c794f:	e8 29 30 f6 ff       	call   0x42a97d
4c7954:	83 c4 04             	add    $0x4,%esp
4c7957:	85 c0                	test   %eax,%eax
4c7959:	75 bd                	jne    0x4c7918
4c795b:	eb 0f                	jmp    0x4c796c
4c795d:	e8 bc a5 f3 ff       	call   0x401f1e
4c7962:	e8 b7 a5 f3 ff       	call   0x401f1e
4c7967:	e8 21 60 f7 ff       	call   0x43d98d
4c796c:	e8 1c 60 f7 ff       	call   0x43d98d
4c7971:	cc                   	int3
4c7972:	cc                   	int3
4c7973:	cc                   	int3
4c7974:	cc                   	int3
4c7975:	cc                   	int3
4c7976:	cc                   	int3
4c7977:	cc                   	int3
4c7978:	cc                   	int3
4c7979:	cc                   	int3
4c797a:	cc                   	int3
4c797b:	cc                   	int3
4c797c:	cc                   	int3
4c797d:	cc                   	int3
4c797e:	cc                   	int3
4c797f:	cc                   	int3
4c7980:	cc                   	int3
4c7981:	cc                   	int3
4c7982:	cc                   	int3
4c7983:	cc                   	int3
4c7984:	cc                   	int3
4c7985:	cc                   	int3
4c7986:	cc                   	int3
4c7987:	cc                   	int3
4c7988:	cc                   	int3
4c7989:	cc                   	int3
4c798a:	cc                   	int3
4c798b:	cc                   	int3
4c798c:	cc                   	int3
4c798d:	cc                   	int3
4c798e:	cc                   	int3
4c798f:	cc                   	int3
4c7990:	ff 74 24 08          	push   0x8(%esp)
4c7994:	8b 01                	mov    (%ecx),%eax
4c7996:	ff 74 24 08          	push   0x8(%esp)
4c799a:	89 41 04             	mov    %eax,0x4(%ecx)
4c799d:	8d 44 24 10          	lea    0x10(%esp),%eax
4c79a1:	ff 31                	push   (%ecx)
4c79a3:	50                   	push   %eax
4c79a4:	e8 09 42 f5 ff       	call   0x41bbb2