4417f0:	33 c9                	xor    %ecx,%ecx
4417f2:	41                   	inc    %ecx
4417f3:	66 89 4c 07 18       	mov    %cx,0x18(%edi,%eax,1)
4417f8:	33 c0                	xor    %eax,%eax
4417fa:	89 45 08             	mov    %eax,0x8(%ebp)
4417fd:	8b c8                	mov    %eax,%ecx
4417ff:	66 39 02             	cmp    %ax,(%edx)
441802:	74 33                	je     0x441837
441804:	6a 3b                	push   $0x3b
441806:	8b c2                	mov    %edx,%eax
441808:	8b d9                	mov    %ecx,%ebx
44180a:	33 ff                	xor    %edi,%edi
44180c:	5e                   	pop    %esi
44180d:	66 39 30             	cmp    %si,(%eax)
441810:	75 0e                	jne    0x441820
441812:	66 39 78 02          	cmp    %di,0x2(%eax)
441816:	74 03                	je     0x44181b
441818:	43                   	inc    %ebx
441819:	eb 05                	jmp    0x441820
44181b:	33 ff                	xor    %edi,%edi
44181d:	66 89 38             	mov    %di,(%eax)
441820:	41                   	inc    %ecx
441821:	8d 04 4a             	lea    (%edx,%ecx,2),%eax
441824:	66 39 38             	cmp    %di,(%eax)
441827:	75 e4                	jne    0x44180d
441829:	8b 75 e8             	mov    -0x18(%ebp),%esi
44182c:	8b 7d ec             	mov    -0x14(%ebp),%edi
44182f:	89 5d 08             	mov    %ebx,0x8(%ebp)
441832:	8b 5d fc             	mov    -0x4(%ebp),%ebx
441835:	33 c0                	xor    %eax,%eax
441837:	89 45 f0             	mov    %eax,-0x10(%ebp)
44183a:	33 c0                	xor    %eax,%eax
44183c:	85 c9                	test   %ecx,%ecx
44183e:	7e 25                	jle    0x441865
441840:	6a 3b                	push   $0x3b
441842:	5b                   	pop    %ebx
441843:	66 39 1c 42          	cmp    %bx,(%edx,%eax,2)
441847:	8b 5d fc             	mov    -0x4(%ebp),%ebx
44184a:	74 07                	je     0x441853
44184c:	40                   	inc    %eax
44184d:	3b c1                	cmp    %ecx,%eax
44184f:	7c ef                	jl     0x441840
441851:	eb 12                	jmp    0x441865
441853:	33 c9                	xor    %ecx,%ecx
441855:	66 89 0c 42          	mov    %cx,(%edx,%eax,2)
441859:	40                   	inc    %eax
44185a:	8d 04 42             	lea    (%edx,%eax,2),%eax
44185d:	66 39 08             	cmp    %cx,(%eax)
441860:	74 03                	je     0x441865
441862:	89 45 f0             	mov    %eax,-0x10(%ebp)
441865:	8b 4e 0c             	mov    0xc(%esi),%ecx
441868:	8d 41 1a             	lea    0x1a(%ecx),%eax
44186b:	03 c7                	add    %edi,%eax
44186d:	83 c1 10             	add    $0x10,%ecx
441870:	50                   	push   %eax
441871:	03 cf                	add    %edi,%ecx
441873:	51                   	push   %ecx
441874:	52                   	push   %edx
441875:	e8 2c f2 ff ff       	call   0x440aa6
44187a:	8b 4e 0c             	mov    0xc(%esi),%ecx
44187d:	8b 45 08             	mov    0x8(%ebp),%eax
441880:	89 44 0f 14          	mov    %eax,0x14(%edi,%ecx,1)
441884:	33 c9                	xor    %ecx,%ecx
441886:	85 c0                	test   %eax,%eax
441888:	0f 84 c5 00 00 00    	je     0x441953
44188e:	6a 08                	push   $0x8
441890:	5a                   	pop    %edx
441891:	f7 e2                	mul    %edx
441893:	0f 90 c1             	seto   %cl
441896:	f7 d9                	neg    %ecx
441898:	0b c8                	or     %eax,%ecx
44189a:	51                   	push   %ecx
44189b:	e8 4a dc fd ff       	call   0x41f4ea
4418a0:	8b 55 f4             	mov    -0xc(%ebp),%edx
4418a3:	59                   	pop    %ecx
4418a4:	8b 4e 08             	mov    0x8(%esi),%ecx
4418a7:	89 04 0a             	mov    %eax,(%edx,%ecx,1)
4418aa:	8b 45 f0             	mov    -0x10(%ebp),%eax
4418ad:	85 c0                	test   %eax,%eax
4418af:	0f 84 8f 00 00 00    	je     0x441944
4418b5:	33 c9                	xor    %ecx,%ecx
4418b7:	33 db                	xor    %ebx,%ebx
4418b9:	66 39 18             	cmp    %bx,(%eax)
4418bc:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4418bf:	89 4d 08             	mov    %ecx,0x8(%ebp)
4418c2:	8b d0                	mov    %eax,%edx
4418c4:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4418c7:	74 54                	je     0x44191d
4418c9:	8b d8                	mov    %eax,%ebx
4418cb:	6a 3b                	push   $0x3b
4418cd:	5f                   	pop    %edi
4418ce:	66 39 3b             	cmp    %di,(%ebx)
4418d1:	6a 00                	push   $0x0
4418d3:	5f                   	pop    %edi
4418d4:	75 38                	jne    0x44190e
4418d6:	33 c0                	xor    %eax,%eax
4418d8:	52                   	push   %edx
4418d9:	66 89 03             	mov    %ax,(%ebx)
4418dc:	e8 87 05 00 00       	call   0x441e68
4418e1:	8b 4e 08             	mov    0x8(%esi),%ecx
4418e4:	8b 55 f4             	mov    -0xc(%ebp),%edx
4418e7:	8b 7d 08             	mov    0x8(%ebp),%edi
4418ea:	8b 0c 11             	mov    (%ecx,%edx,1),%ecx
4418ed:	66 89 44 f9 04       	mov    %ax,0x4(%ecx,%edi,8)
4418f2:	8b 46 08             	mov    0x8(%esi),%eax
4418f5:	8b cf                	mov    %edi,%ecx
4418f7:	8b 04 10             	mov    (%eax,%edx,1),%eax
4418fa:	33 d2                	xor    %edx,%edx
4418fc:	89 14 c8             	mov    %edx,(%eax,%ecx,8)
4418ff:	8b 45 f0             	mov    -0x10(%ebp),%eax
441902:	41                   	inc    %ecx
441903:	89 4d 08             	mov    %ecx,0x8(%ebp)
441906:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
441909:	8d 53 02             	lea    0x2(%ebx),%edx
44190c:	33 ff                	xor    %edi,%edi
44190e:	41                   	inc    %ecx
44190f:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
441912:	8d 1c 48             	lea    (%eax,%ecx,2),%ebx
441915:	66 39 3b             	cmp    %di,(%ebx)
441918:	75 b1                	jne    0x4418cb
44191a:	8b 5d fc             	mov    -0x4(%ebp),%ebx
44191d:	52                   	push   %edx
44191e:	e8 45 05 00 00       	call   0x441e68
441923:	8b 4e 08             	mov    0x8(%esi),%ecx
441926:	8b 55 f4             	mov    -0xc(%ebp),%edx
441929:	8b 7d 08             	mov    0x8(%ebp),%edi
44192c:	8b 0c 11             	mov    (%ecx,%edx,1),%ecx
44192f:	66 89 44 f9 04       	mov    %ax,0x4(%ecx,%edi,8)
441934:	8b 46 08             	mov    0x8(%esi),%eax
441937:	8b cf                	mov    %edi,%ecx
441939:	8b 04 10             	mov    (%eax,%edx,1),%eax
44193c:	33 ff                	xor    %edi,%edi
44193e:	89 3c c8             	mov    %edi,(%eax,%ecx,8)
441941:	8b 7d ec             	mov    -0x14(%ebp),%edi
441944:	8b 46 08             	mov    0x8(%esi),%eax
441947:	8b 4e 0c             	mov    0xc(%esi),%ecx
44194a:	8b 04 02             	mov    (%edx,%eax,1),%eax
44194d:	89 44 0f 04          	mov    %eax,0x4(%edi,%ecx,1)
441951:	eb 10                	jmp    0x441963
441953:	8b 46 08             	mov    0x8(%esi),%eax
441956:	8b 55 f4             	mov    -0xc(%ebp),%edx
441959:	89 0c 02             	mov    %ecx,(%edx,%eax,1)
44195c:	8b 46 0c             	mov    0xc(%esi),%eax
44195f:	89 4c 07 04          	mov    %ecx,0x4(%edi,%eax,1)
441963:	8b 45 e0             	mov    -0x20(%ebp),%eax
441966:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
441969:	83 c2 04             	add    $0x4,%edx
44196c:	89 55 f4             	mov    %edx,-0xc(%ebp)
44196f:	89 45 e0             	mov    %eax,-0x20(%ebp)
441972:	8b 45 dc             	mov    -0x24(%ebp),%eax
441975:	8d 51 01             	lea    0x1(%ecx),%edx
441978:	83 c7 1c             	add    $0x1c,%edi
44197b:	8d 14 50             	lea    (%eax,%edx,2),%edx
44197e:	89 55 e4             	mov    %edx,-0x1c(%ebp)
441981:	8b 55 d8             	mov    -0x28(%ebp),%edx
441984:	89 7d ec             	mov    %edi,-0x14(%ebp)
441987:	41                   	inc    %ecx
441988:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
44198b:	3b cb                	cmp    %ebx,%ecx
44198d:	0f 8c f3 fd ff ff    	jl     0x441786
441993:	6a 08                	push   $0x8
441995:	58                   	pop    %eax
441996:	50                   	push   %eax
441997:	e8 4e db fd ff       	call   0x41f4ea
44199c:	59                   	pop    %ecx
44199d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4419a0:	89 46 10             	mov    %eax,0x10(%esi)
4419a3:	89 48 04             	mov    %ecx,0x4(%eax)
4419a6:	8b 4e 10             	mov    0x10(%esi),%ecx
4419a9:	8b 46 0c             	mov    0xc(%esi),%eax
4419ac:	5f                   	pop    %edi
4419ad:	5e                   	pop    %esi
4419ae:	89 01                	mov    %eax,(%ecx)
4419b0:	5b                   	pop    %ebx
4419b1:	c9                   	leave
4419b2:	c2 04 00             	ret    $0x4
4419b5:	55                   	push   %ebp
4419b6:	8b ec                	mov    %esp,%ebp
4419b8:	83 ec 18             	sub    $0x18,%esp
4419bb:	53                   	push   %ebx
4419bc:	56                   	push   %esi
4419bd:	57                   	push   %edi
4419be:	6a 10                	push   $0x10
4419c0:	e8 25 db fd ff       	call   0x41f4ea
4419c5:	8b 75 08             	mov    0x8(%ebp),%esi
4419c8:	8b d8                	mov    %eax,%ebx
4419ca:	0f b7 06             	movzwl (%esi),%eax
4419cd:	59                   	pop    %ecx
4419ce:	83 f8 08             	cmp    $0x8,%eax
4419d1:	75 0c                	jne    0x4419df
4419d3:	53                   	push   %ebx
4419d4:	ff 76 08             	push   0x8(%esi)
4419d7:	ff 15 14 d8 48 00    	call   *0x48d814
4419dd:	eb 69                	jmp    0x441a48
4419df:	83 f8 24             	cmp    $0x24,%eax
4419e2:	75 5b                	jne    0x441a3f
4419e4:	8d 45 ec             	lea    -0x14(%ebp),%eax
4419e7:	50                   	push   %eax
4419e8:	ff 15 64 d4 48 00    	call   *0x48d464
4419ee:	8b 46 0c             	mov    0xc(%esi),%eax
4419f1:	33 ff                	xor    %edi,%edi
4419f3:	57                   	push   %edi
4419f4:	8d 55 ec             	lea    -0x14(%ebp),%edx
4419f7:	52                   	push   %edx
4419f8:	57                   	push   %edi
4419f9:	89 7d f4             	mov    %edi,-0xc(%ebp)
4419fc:	89 7d f8             	mov    %edi,-0x8(%ebp)
4419ff:	8b 08                	mov    (%eax),%ecx
441a01:	57                   	push   %edi
441a02:	50                   	push   %eax
441a03:	ff 51 2c             	call   *0x2c(%ecx)
441a06:	85 c0                	test   %eax,%eax
441a08:	78 20                	js     0x441a2a
441a0a:	b8 0c 80 00 00       	mov    $0x800c,%eax
441a0f:	66 39 45 ec          	cmp    %ax,-0x14(%ebp)
441a13:	75 0c                	jne    0x441a21
441a15:	8b 45 f4             	mov    -0xc(%ebp),%eax
441a18:	8b fb                	mov    %ebx,%edi
441a1a:	8b 70 08             	mov    0x8(%eax),%esi
441a1d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
441a1e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
441a1f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
441a20:	a5                   	movsl  %ds:(%esi),%es:(%edi)
441a21:	6a 1a                	push   $0x1a
441a23:	58                   	pop    %eax
441a24:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
441a28:	eb 09                	jmp    0x441a33
441a2a:	53                   	push   %ebx
441a2b:	e8 2e db fd ff       	call   0x41f55e
441a30:	59                   	pop    %ecx
441a31:	8b df                	mov    %edi,%ebx
441a33:	8d 45 ec             	lea    -0x14(%ebp),%eax
441a36:	50                   	push   %eax
441a37:	ff 15 4c d4 48 00    	call   *0x48d44c
441a3d:	eb 09                	jmp    0x441a48
441a3f:	8b 76 08             	mov    0x8(%esi),%esi
441a42:	8b fb                	mov    %ebx,%edi
441a44:	a5                   	movsl  %ds:(%esi),%es:(%edi)
441a45:	a5                   	movsl  %ds:(%esi),%es:(%edi)
441a46:	a5                   	movsl  %ds:(%esi),%es:(%edi)
441a47:	a5                   	movsl  %ds:(%esi),%es:(%edi)
441a48:	5f                   	pop    %edi
441a49:	5e                   	pop    %esi
441a4a:	8b c3                	mov    %ebx,%eax
441a4c:	5b                   	pop    %ebx
441a4d:	c9                   	leave
441a4e:	c2 04 00             	ret    $0x4
441a51:	55                   	push   %ebp
441a52:	8b ec                	mov    %esp,%ebp
441a54:	56                   	push   %esi
441a55:	6a 04                	push   $0x4
441a57:	e8 8e da fd ff       	call   0x41f4ea
441a5c:	8b f0                	mov    %eax,%esi
441a5e:	8b 45 08             	mov    0x8(%ebp),%eax
441a61:	59                   	pop    %ecx
441a62:	66 83 38 09          	cmpw   $0x9,(%eax)
441a66:	75 14                	jne    0x441a7c
441a68:	8b 48 08             	mov    0x8(%eax),%ecx
441a6b:	89 0e                	mov    %ecx,(%esi)
441a6d:	8b 48 08             	mov    0x8(%eax),%ecx
441a70:	85 c9                	test   %ecx,%ecx
441a72:	74 0b                	je     0x441a7f
441a74:	8b 01                	mov    (%ecx),%eax
441a76:	51                   	push   %ecx
441a77:	ff 50 04             	call   *0x4(%eax)
441a7a:	eb 03                	jmp    0x441a7f
441a7c:	83 26 00             	andl   $0x0,(%esi)
441a7f:	8b c6                	mov    %esi,%eax
441a81:	5e                   	pop    %esi
441a82:	5d                   	pop    %ebp
441a83:	c2 04 00             	ret    $0x4
441a86:	55                   	push   %ebp
441a87:	8b ec                	mov    %esp,%ebp
441a89:	8b 45 08             	mov    0x8(%ebp),%eax
441a8c:	53                   	push   %ebx
441a8d:	8b 58 08             	mov    0x8(%eax),%ebx
441a90:	56                   	push   %esi
441a91:	57                   	push   %edi
441a92:	53                   	push   %ebx
441a93:	ff 15 30 d4 48 00    	call   *0x48d430
441a99:	8b f8                	mov    %eax,%edi
441a9b:	b9 00 00 01 00       	mov    $0x10000,%ecx
441aa0:	3b f9                	cmp    %ecx,%edi
441aa2:	7e 02                	jle    0x441aa6
441aa4:	8b cf                	mov    %edi,%ecx
441aa6:	41                   	inc    %ecx
441aa7:	51                   	push   %ecx
441aa8:	e8 3d da fd ff       	call   0x41f4ea
441aad:	59                   	pop    %ecx
441aae:	8b f0                	mov    %eax,%esi
441ab0:	33 c0                	xor    %eax,%eax
441ab2:	50                   	push   %eax
441ab3:	50                   	push   %eax
441ab4:	8d 4f 01             	lea    0x1(%edi),%ecx
441ab7:	51                   	push   %ecx
441ab8:	56                   	push   %esi
441ab9:	6a ff                	push   $0xffffffff
441abb:	53                   	push   %ebx
441abc:	50                   	push   %eax
441abd:	50                   	push   %eax
441abe:	ff 15 9c d1 48 00    	call   *0x48d19c
441ac4:	5f                   	pop    %edi
441ac5:	8b c6                	mov    %esi,%eax
441ac7:	5e                   	pop    %esi
441ac8:	5b                   	pop    %ebx
441ac9:	5d                   	pop    %ebp
441aca:	c2 04 00             	ret    $0x4
441acd:	55                   	push   %ebp
441ace:	8b ec                	mov    %esp,%ebp
441ad0:	51                   	push   %ecx
441ad1:	51                   	push   %ecx
441ad2:	56                   	push   %esi
441ad3:	6a 08                	push   $0x8
441ad5:	e8 10 da fd ff       	call   0x41f4ea
441ada:	8b 55 08             	mov    0x8(%ebp),%edx
441add:	8b f0                	mov    %eax,%esi
441adf:	8b 4a 08             	mov    0x8(%edx),%ecx
441ae2:	6a 08                	push   $0x8
441ae4:	8d 45 f8             	lea    -0x8(%ebp),%eax
441ae7:	89 4d f8             	mov    %ecx,-0x8(%ebp)
441aea:	8b 4a 0c             	mov    0xc(%edx),%ecx
441aed:	50                   	push   %eax
441aee:	56                   	push   %esi
441aef:	89 4d fc             	mov    %ecx,-0x4(%ebp)
441af2:	e8 89 d3 fd ff       	call   0x41ee80
441af7:	83 c4 10             	add    $0x10,%esp
441afa:	8b c6                	mov    %esi,%eax
441afc:	5e                   	pop    %esi
441afd:	c9                   	leave
441afe:	c2 04 00             	ret    $0x4
441b01:	55                   	push   %ebp
441b02:	8b ec                	mov    %esp,%ebp
441b04:	56                   	push   %esi
441b05:	57                   	push   %edi
441b06:	6a 10                	push   $0x10
441b08:	e8 dd d9 fd ff       	call   0x41f4ea
441b0d:	59                   	pop    %ecx
441b0e:	8b f8                	mov    %eax,%edi
441b10:	57                   	push   %edi
441b11:	ff 15 64 d4 48 00    	call   *0x48d464
441b17:	8b 75 08             	mov    0x8(%ebp),%esi
441b1a:	56                   	push   %esi
441b1b:	57                   	push   %edi
441b1c:	ff 15 48 d4 48 00    	call   *0x48d448
441b22:	85 c0                	test   %eax,%eax
441b24:	79 08                	jns    0x441b2e
441b26:	83 66 08 00          	andl   $0x0,0x8(%esi)
441b2a:	83 66 0c 00          	andl   $0x0,0xc(%esi)
441b2e:	8b c7                	mov    %edi,%eax
441b30:	5f                   	pop    %edi