61f7eb:	e8 88 42 de ff       	call   0x403a78
61f7f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f7f3:	33 d2                	xor    %edx,%edx
61f7f5:	89 90 54 03 00 00    	mov    %edx,0x354(%eax)
61f7fb:	8d 4b 0c             	lea    0xc(%ebx),%ecx
61f7fe:	8b 43 08             	mov    0x8(%ebx),%eax
61f801:	8b d0                	mov    %eax,%edx
61f803:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f806:	8b 18                	mov    (%eax),%ebx
61f808:	ff 93 fc 00 00 00    	call   *0xfc(%ebx)
61f80e:	8b 55 fc             	mov    -0x4(%ebp),%edx
61f811:	89 82 54 03 00 00    	mov    %eax,0x354(%edx)
61f817:	eb 16                	jmp    0x61f82f
61f819:	8b d3                	mov    %ebx,%edx
61f81b:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f81e:	e8 3d 3e e8 ff       	call   0x4a3660
61f823:	eb 0a                	jmp    0x61f82f
61f825:	8b d3                	mov    %ebx,%edx
61f827:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f82a:	e8 31 3e e8 ff       	call   0x4a3660
61f82f:	5f                   	pop    %edi
61f830:	5e                   	pop    %esi
61f831:	5b                   	pop    %ebx
61f832:	8b e5                	mov    %ebp,%esp
61f834:	5d                   	pop    %ebp
61f835:	c3                   	ret
61f836:	8b c0                	mov    %eax,%eax
61f838:	55                   	push   %ebp
61f839:	8b ec                	mov    %esp,%ebp
61f83b:	83 c4 f8             	add    $0xfffffff8,%esp
61f83e:	89 45 fc             	mov    %eax,-0x4(%ebp)
61f841:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f844:	80 b8 50 03 00 00 00 	cmpb   $0x0,0x350(%eax)
61f84b:	74 5a                	je     0x61f8a7
61f84d:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f850:	83 78 7c 00          	cmpl   $0x0,0x7c(%eax)
61f854:	74 51                	je     0x61f8a7
61f856:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f859:	8b 40 7c             	mov    0x7c(%eax),%eax
61f85c:	8a 48 61             	mov    0x61(%eax),%cl
61f85f:	88 4d fb             	mov    %cl,-0x5(%ebp)
61f862:	c6 40 61 00          	movb   $0x0,0x61(%eax)
61f866:	33 c0                	xor    %eax,%eax
61f868:	55                   	push   %ebp
61f869:	68 a0 f8 61 00       	push   $0x61f8a0
61f86e:	64 ff 30             	push   %fs:(%eax)
61f871:	64 89 20             	mov    %esp,%fs:(%eax)
61f874:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f877:	e8 98 a9 e2 ff       	call   0x44a214
61f87c:	33 c0                	xor    %eax,%eax
61f87e:	5a                   	pop    %edx
61f87f:	59                   	pop    %ecx
61f880:	59                   	pop    %ecx
61f881:	64 89 10             	mov    %edx,%fs:(%eax)
61f884:	68 af f8 61 00       	push   $0x61f8af
61f889:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f88c:	8b 40 7c             	mov    0x7c(%eax),%eax
61f88f:	8a 55 fb             	mov    -0x5(%ebp),%dl
61f892:	88 50 61             	mov    %dl,0x61(%eax)
61f895:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f898:	c6 80 50 03 00 00 00 	movb   $0x0,0x350(%eax)
61f89f:	c3                   	ret
61f8a0:	e9 67 49 de ff       	jmp    0x40420c
61f8a5:	eb e2                	jmp    0x61f889
61f8a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f8aa:	e8 65 a9 e2 ff       	call   0x44a214
61f8af:	59                   	pop    %ecx
61f8b0:	59                   	pop    %ecx
61f8b1:	5d                   	pop    %ebp
61f8b2:	c3                   	ret
61f8b3:	90                   	nop
61f8b4:	53                   	push   %ebx
61f8b5:	56                   	push   %esi
61f8b6:	83 c4 f0             	add    $0xfffffff0,%esp
61f8b9:	8b f2                	mov    %edx,%esi
61f8bb:	8b d8                	mov    %eax,%ebx
61f8bd:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
61f8c1:	75 5b                	jne    0x61f91e
61f8c3:	8b c3                	mov    %ebx,%eax
61f8c5:	e8 56 3c e8 ff       	call   0x4a3520
61f8ca:	85 c0                	test   %eax,%eax
61f8cc:	75 50                	jne    0x61f91e
61f8ce:	80 bb 50 03 00 00 00 	cmpb   $0x0,0x350(%ebx)
61f8d5:	75 47                	jne    0x61f91e
61f8d7:	83 7e 08 ff          	cmpl   $0xffffffff,0x8(%esi)
61f8db:	75 0d                	jne    0x61f8ea
61f8dd:	8b c3                	mov    %ebx,%eax
61f8df:	66 be a8 ff          	mov    $0xffa8,%si
61f8e3:	e8 8c 43 de ff       	call   0x403c74
61f8e8:	eb 34                	jmp    0x61f91e
61f8ea:	8d 4c 24 08          	lea    0x8(%esp),%ecx
61f8ee:	0f b7 56 0a          	movzwl 0xa(%esi),%edx
61f8f2:	0f b7 46 08          	movzwl 0x8(%esi),%eax
61f8f6:	e8 51 ad df ff       	call   0x41a64c
61f8fb:	8d 54 24 08          	lea    0x8(%esp),%edx
61f8ff:	8b cc                	mov    %esp,%ecx
61f901:	8b c3                	mov    %ebx,%eax
61f903:	e8 08 8a e2 ff       	call   0x448310
61f908:	54                   	push   %esp
61f909:	8b c3                	mov    %ebx,%eax
61f90b:	e8 10 3c e8 ff       	call   0x4a3520
61f910:	8b d0                	mov    %eax,%edx
61f912:	8b c3                	mov    %ebx,%eax
61f914:	59                   	pop    %ecx
61f915:	66 be a7 ff          	mov    $0xffa7,%si
61f919:	e8 56 43 de ff       	call   0x403c74
61f91e:	83 c4 10             	add    $0x10,%esp
61f921:	5e                   	pop    %esi
61f922:	5b                   	pop    %ebx
61f923:	c3                   	ret
61f924:	53                   	push   %ebx
61f925:	8b da                	mov    %edx,%ebx
61f927:	8b d3                	mov    %ebx,%edx
61f929:	e8 4e 31 e8 ff       	call   0x4a2a7c
61f92e:	e8 f1 d4 ff ff       	call   0x61ce24
61f933:	84 c0                	test   %al,%al
61f935:	74 15                	je     0x61f94c
61f937:	a1 54 6d 6a 00       	mov    0x6a6d54,%eax
61f93c:	81 78 04 48 00 04 00 	cmpl   $0x40048,0x4(%eax)
61f943:	7d 07                	jge    0x61f94c
61f945:	81 4b 04 80 00 00 00 	orl    $0x80,0x4(%ebx)
61f94c:	5b                   	pop    %ebx
61f94d:	c3                   	ret
61f94e:	8b c0                	mov    %eax,%eax
61f950:	e8 4b 32 e8 ff       	call   0x4a2ba0
61f955:	c3                   	ret
61f956:	8b c0                	mov    %eax,%eax
61f958:	e8 73 34 e8 ff       	call   0x4a2dd0
61f95d:	c3                   	ret
61f95e:	8b c0                	mov    %eax,%eax
61f960:	51                   	push   %ecx
61f961:	8b 40 68             	mov    0x68(%eax),%eax
61f964:	50                   	push   %eax
61f965:	8b ca                	mov    %edx,%ecx
61f967:	a1 c0 e9 61 00       	mov    0x61e9c0,%eax
61f96c:	b2 01                	mov    $0x1,%dl
61f96e:	e8 b1 f9 ff ff       	call   0x61f324
61f973:	c6 40 15 01          	movb   $0x1,0x15(%eax)
61f977:	c3                   	ret
61f978:	55                   	push   %ebp
61f979:	8b ec                	mov    %esp,%ebp
61f97b:	8b 45 08             	mov    0x8(%ebp),%eax
61f97e:	8b 40 fc             	mov    -0x4(%eax),%eax
61f981:	f6 40 0e 01          	testb  $0x1,0xe(%eax)
61f985:	75 04                	jne    0x61f98b
61f987:	33 c0                	xor    %eax,%eax
61f989:	5d                   	pop    %ebp
61f98a:	c3                   	ret
61f98b:	8b 45 08             	mov    0x8(%ebp),%eax
61f98e:	8b 50 fc             	mov    -0x4(%eax),%edx
61f991:	8b 52 24             	mov    0x24(%edx),%edx
61f994:	8b 45 08             	mov    0x8(%ebp),%eax
61f997:	8b 40 f8             	mov    -0x8(%eax),%eax
61f99a:	8b 80 6c 02 00 00    	mov    0x26c(%eax),%eax
61f9a0:	e8 4b 2a e8 ff       	call   0x4a23f0
61f9a5:	5d                   	pop    %ebp
61f9a6:	c3                   	ret
61f9a7:	90                   	nop
61f9a8:	55                   	push   %ebp
61f9a9:	8b ec                	mov    %esp,%ebp
61f9ab:	83 c4 f0             	add    $0xfffffff0,%esp
61f9ae:	53                   	push   %ebx
61f9af:	56                   	push   %esi
61f9b0:	57                   	push   %edi
61f9b1:	89 4d f4             	mov    %ecx,-0xc(%ebp)
61f9b4:	89 55 fc             	mov    %edx,-0x4(%ebp)
61f9b7:	89 45 f8             	mov    %eax,-0x8(%ebp)
61f9ba:	33 db                	xor    %ebx,%ebx
61f9bc:	33 ff                	xor    %edi,%edi
61f9be:	8b 45 f8             	mov    -0x8(%ebp),%eax
61f9c1:	66 83 b8 42 03 00 00 	cmpw   $0x0,0x342(%eax)
61f9c8:	00
61f9c9:	0f 95 45 f3          	setne  -0xd(%ebp)
61f9cd:	8b 45 f8             	mov    -0x8(%ebp),%eax
61f9d0:	66 83 b8 4a 03 00 00 	cmpw   $0x0,0x34a(%eax)
61f9d7:	00
61f9d8:	0f 95 45 f2          	setne  -0xe(%ebp)
61f9dc:	80 7d f2 00          	cmpb   $0x0,-0xe(%ebp)
61f9e0:	74 32                	je     0x61fa14
61f9e2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
61f9e5:	8b 55 fc             	mov    -0x4(%ebp),%edx
61f9e8:	8b 45 f8             	mov    -0x8(%ebp),%eax
61f9eb:	66 be a9 ff          	mov    $0xffa9,%si
61f9ef:	e8 80 42 de ff       	call   0x403c74
61f9f4:	8b d8                	mov    %eax,%ebx
61f9f6:	55                   	push   %ebp
61f9f7:	e8 7c ff ff ff       	call   0x61f978
61f9fc:	59                   	pop    %ecx
61f9fd:	8b f8                	mov    %eax,%edi
61f9ff:	57                   	push   %edi
61fa00:	8b 75 f8             	mov    -0x8(%ebp),%esi
61fa03:	8b cb                	mov    %ebx,%ecx
61fa05:	8b 55 f8             	mov    -0x8(%ebp),%edx
61fa08:	8b 86 4c 03 00 00    	mov    0x34c(%esi),%eax
61fa0e:	ff 96 48 03 00 00    	call   *0x348(%esi)
61fa14:	80 7d f3 00          	cmpb   $0x0,-0xd(%ebp)
61fa18:	74 4c                	je     0x61fa66
61fa1a:	8b 45 fc             	mov    -0x4(%ebp),%eax
61fa1d:	8b 40 0c             	mov    0xc(%eax),%eax
61fa20:	25 01 00 01 00       	and    $0x10001,%eax
61fa25:	3d 01 00 01 00       	cmp    $0x10001,%eax
61fa2a:	75 3a                	jne    0x61fa66
61fa2c:	85 db                	test   %ebx,%ebx
61fa2e:	75 14                	jne    0x61fa44
61fa30:	8b 4d f4             	mov    -0xc(%ebp),%ecx
61fa33:	8b 55 fc             	mov    -0x4(%ebp),%edx
61fa36:	8b 45 f8             	mov    -0x8(%ebp),%eax
61fa39:	66 be a9 ff          	mov    $0xffa9,%si
61fa3d:	e8 32 42 de ff       	call   0x403c74
61fa42:	8b d8                	mov    %eax,%ebx
61fa44:	85 ff                	test   %edi,%edi
61fa46:	75 09                	jne    0x61fa51
61fa48:	55                   	push   %ebp
61fa49:	e8 2a ff ff ff       	call   0x61f978
61fa4e:	59                   	pop    %ecx
61fa4f:	8b f8                	mov    %eax,%edi
61fa51:	57                   	push   %edi
61fa52:	8b 75 f8             	mov    -0x8(%ebp),%esi
61fa55:	8b cb                	mov    %ebx,%ecx
61fa57:	8b 55 f8             	mov    -0x8(%ebp),%edx
61fa5a:	8b 86 44 03 00 00    	mov    0x344(%esi),%eax
61fa60:	ff 96 40 03 00 00    	call   *0x340(%esi)
61fa66:	85 db                	test   %ebx,%ebx
61fa68:	74 07                	je     0x61fa71
61fa6a:	8b c3                	mov    %ebx,%eax
61fa6c:	8b 10                	mov    (%eax),%edx
61fa6e:	ff 52 0c             	call   *0xc(%edx)
61fa71:	8b 45 fc             	mov    -0x4(%ebp),%eax
61fa74:	f6 40 0c 01          	testb  $0x1,0xc(%eax)
61fa78:	74 0e                	je     0x61fa88
61fa7a:	8a 45 f3             	mov    -0xd(%ebp),%al
61fa7d:	0a 45 f2             	or     -0xe(%ebp),%al
61fa80:	74 06                	je     0x61fa88
61fa82:	8b 45 f4             	mov    -0xc(%ebp),%eax
61fa85:	83 08 20             	orl    $0x20,(%eax)
61fa88:	8b c3                	mov    %ebx,%eax
61fa8a:	5f                   	pop    %edi
61fa8b:	5e                   	pop    %esi
61fa8c:	5b                   	pop    %ebx
61fa8d:	8b e5                	mov    %ebp,%esp
61fa8f:	5d                   	pop    %ebp
61fa90:	c3                   	ret
61fa91:	8d 40 00             	lea    0x0(%eax),%eax
61fa94:	55                   	push   %ebp
61fa95:	8b ec                	mov    %esp,%ebp
61fa97:	83 c4 f0             	add    $0xfffffff0,%esp
61fa9a:	53                   	push   %ebx
61fa9b:	8b 45 08             	mov    0x8(%ebp),%eax
61fa9e:	8b 40 fc             	mov    -0x4(%eax),%eax
61faa1:	8b 40 7c             	mov    0x7c(%eax),%eax
61faa4:	85 c0                	test   %eax,%eax
61faa6:	74 3d                	je     0x61fae5
61faa8:	8b 55 08             	mov    0x8(%ebp),%edx
61faab:	8b 52 fc             	mov    -0x4(%edx),%edx
61faae:	8b 4d 08             	mov    0x8(%ebp),%ecx
61fab1:	89 50 64             	mov    %edx,0x64(%eax)
61fab4:	8d 4d f0             	lea    -0x10(%ebp),%ecx
61fab7:	33 d2                	xor    %edx,%edx
61fab9:	33 c0                	xor    %eax,%eax
61fabb:	e8 8c ab df ff       	call   0x41a64c
61fac0:	8d 55 f0             	lea    -0x10(%ebp),%edx
61fac3:	8d 4d f8             	lea    -0x8(%ebp),%ecx
61fac6:	8b 45 08             	mov    0x8(%ebp),%eax
61fac9:	8b 40 fc             	mov    -0x4(%eax),%eax
61facc:	e8 13 88 e2 ff       	call   0x4482e4
61fad1:	8b 45 08             	mov    0x8(%ebp),%eax
61fad4:	8b 40 fc             	mov    -0x4(%eax),%eax
61fad7:	8b 40 7c             	mov    0x7c(%eax),%eax
61fada:	8b 4d fc             	mov    -0x4(%ebp),%ecx
61fadd:	8b 55 f8             	mov    -0x8(%ebp),%edx
61fae0:	8b 18                	mov    (%eax),%ebx
61fae2:	ff 53 40             	call   *0x40(%ebx)
61fae5:	5b                   	pop    %ebx
61fae6:	8b e5                	mov    %ebp,%esp
61fae8:	5d                   	pop    %ebp
61fae9:	c3                   	ret
61faea:	8b c0                	mov    %eax,%eax
61faec:	55                   	push   %ebp
61faed:	8b ec                	mov    %esp,%ebp
61faef:	83 c4 e4             	add    $0xffffffe4,%esp
61faf2:	56                   	push   %esi
61faf3:	89 45 fc             	mov    %eax,-0x4(%ebp)
61faf6:	8b 45 fc             	mov    -0x4(%ebp),%eax
61faf9:	e8 22 3a e8 ff       	call   0x4a3520
61fafe:	85 c0                	test   %eax,%eax
61fb00:	74 36                	je     0x61fb38
61fb02:	8b 45 fc             	mov    -0x4(%ebp),%eax
61fb05:	e8 16 3a e8 ff       	call   0x4a3520
61fb0a:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
61fb0d:	b2 01                	mov    $0x1,%dl
61fb0f:	e8 6c 20 e8 ff       	call   0x4a1b80
61fb14:	8d 4d f4             	lea    -0xc(%ebp),%ecx
61fb17:	8b 55 f0             	mov    -0x10(%ebp),%edx
61fb1a:	03 55 e8             	add    -0x18(%ebp),%edx
61fb1d:	d1 fa                	sar    $1,%edx
61fb1f:	79 03                	jns    0x61fb24
61fb21:	83 d2 00             	adc    $0x0,%edx
61fb24:	8b 45 e4             	mov    -0x1c(%ebp),%eax
61fb27:	03 45 ec             	add    -0x14(%ebp),%eax
61fb2a:	d1 f8                	sar    $1,%eax
61fb2c:	79 03                	jns    0x61fb31
61fb2e:	83 d0 00             	adc    $0x0,%eax
61fb31:	e8 16 ab df ff       	call   0x41a64c
61fb36:	eb 09                	jmp    0x61fb41
61fb38:	55                   	push   %ebp
61fb39:	e8 56 ff ff ff       	call   0x61fa94
61fb3e:	59                   	pop    %ecx
61fb3f:	eb 19                	jmp    0x61fb5a
61fb41:	8b 45 fc             	mov    -0x4(%ebp),%eax
61fb44:	e8 d7 39 e8 ff       	call   0x4a3520
61fb49:	8b d0                	mov    %eax,%edx
61fb4b:	8d 4d f4             	lea    -0xc(%ebp),%ecx
61fb4e:	8b 45 fc             	mov    -0x4(%ebp),%eax
61fb51:	66 be a7 ff          	mov    $0xffa7,%si
61fb55:	e8 1a 41 de ff       	call   0x403c74
61fb5a:	5e                   	pop    %esi
61fb5b:	8b e5                	mov    %ebp,%esp
61fb5d:	5d                   	pop    %ebp
61fb5e:	c3                   	ret
61fb5f:	90                   	nop
61fb60:	53                   	push   %ebx
61fb61:	56                   	push   %esi
61fb62:	57                   	push   %edi
61fb63:	83 c4 ec             	add    $0xffffffec,%esp
61fb66:	8b f1                	mov    %ecx,%esi
61fb68:	8d 3c 24             	lea    (%esp),%edi
61fb6b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
61fb6c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
61fb6d:	8b d8                	mov    %eax,%ebx
61fb6f:	8b 43 7c             	mov    0x7c(%ebx),%eax
61fb72:	89 44 24 08          	mov    %eax,0x8(%esp)
61fb76:	8d 44 24 08          	lea    0x8(%esp),%eax
61fb7a:	50                   	push   %eax
61fb7b:	8d 4c 24 04          	lea    0x4(%esp),%ecx
61fb7f:	8b c3                	mov    %ebx,%eax
61fb81:	66 be a6 ff          	mov    $0xffa6,%si
61fb85:	e8 ea 40 de ff       	call   0x403c74
61fb8a:	8b 44 24 08          	mov    0x8(%esp),%eax
61fb8e:	3b 43 7c             	cmp    0x7c(%ebx),%eax
61fb91:	74 07                	je     0x61fb9a
61fb93:	c6 83 50 03 00 00 01 	movb   $0x1,0x350(%ebx)
61fb9a:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
61fb9f:	74 25                	je     0x61fbc6
61fba1:	8b 44 24 08          	mov    0x8(%esp),%eax
61fba5:	89 58 64             	mov    %ebx,0x64(%eax)
61fba8:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
61fbac:	8b d4                	mov    %esp,%edx
61fbae:	8b c3                	mov    %ebx,%eax
61fbb0:	e8 2f 87 e2 ff       	call   0x4482e4
61fbb5:	8b 4c 24 10          	mov    0x10(%esp),%ecx