482900:	0f b7 00             	movzwl (%eax),%eax
482903:	50                   	push   %eax
482904:	e8 7b 51 f8 ff       	call   0x407a84
482909:	47                   	inc    %edi
48290a:	3b fe                	cmp    %esi,%edi
48290c:	72 c4                	jb     0x4828d2
48290e:	8d 44 24 20          	lea    0x20(%esp),%eax
482912:	50                   	push   %eax
482913:	8d 4c 24 14          	lea    0x14(%esp),%ecx
482917:	e8 8b 58 f8 ff       	call   0x4081a7
48291c:	8d 44 24 10          	lea    0x10(%esp),%eax
482920:	8b 4d 0c             	mov    0xc(%ebp),%ecx
482923:	50                   	push   %eax
482924:	e8 73 72 f8 ff       	call   0x409b9c
482929:	8d 4c 24 20          	lea    0x20(%esp),%ecx
48292d:	e8 32 31 f8 ff       	call   0x405a64
482932:	8d 4c 24 10          	lea    0x10(%esp),%ecx
482936:	e8 29 31 f8 ff       	call   0x405a64
48293b:	5f                   	pop    %edi
48293c:	5e                   	pop    %esi
48293d:	33 c0                	xor    %eax,%eax
48293f:	5b                   	pop    %ebx
482940:	8b e5                	mov    %ebp,%esp
482942:	5d                   	pop    %ebp
482943:	c2 08 00             	ret    $0x8
482946:	55                   	push   %ebp
482947:	8b ec                	mov    %esp,%ebp
482949:	83 e4 f8             	and    $0xfffffff8,%esp
48294c:	83 ec 34             	sub    $0x34,%esp
48294f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
482952:	53                   	push   %ebx
482953:	56                   	push   %esi
482954:	57                   	push   %edi
482955:	68 10 f9 48 00       	push   $0x48f910
48295a:	e8 99 72 f8 ff       	call   0x409bf8
48295f:	8b 7d 08             	mov    0x8(%ebp),%edi
482962:	8b 47 04             	mov    0x4(%edi),%eax
482965:	8b 30                	mov    (%eax),%esi
482967:	8b ce                	mov    %esi,%ecx
482969:	e8 29 70 f8 ff       	call   0x409997
48296e:	83 7f 08 02          	cmpl   $0x2,0x8(%edi)
482972:	8b 5e 08             	mov    0x8(%esi),%ebx
482975:	89 5c 24 0c          	mov    %ebx,0xc(%esp)
482979:	76 1e                	jbe    0x482999
48297b:	8b 47 04             	mov    0x4(%edi),%eax
48297e:	6a 29                	push   $0x29
482980:	8b 70 08             	mov    0x8(%eax),%esi
482983:	8b ce                	mov    %esi,%ecx
482985:	e8 24 74 f8 ff       	call   0x409dae
48298a:	84 c0                	test   %al,%al
48298c:	75 0b                	jne    0x482999
48298e:	8b ce                	mov    %esi,%ecx
482990:	e8 07 73 f8 ff       	call   0x409c9c
482995:	8b f0                	mov    %eax,%esi
482997:	eb 03                	jmp    0x48299c
482999:	8b 73 04             	mov    0x4(%ebx),%esi
48299c:	3b 73 04             	cmp    0x4(%ebx),%esi
48299f:	76 03                	jbe    0x4829a4
4829a1:	8b 73 04             	mov    0x4(%ebx),%esi
4829a4:	83 7f 08 01          	cmpl   $0x1,0x8(%edi)
4829a8:	76 1e                	jbe    0x4829c8
4829aa:	8b 47 04             	mov    0x4(%edi),%eax
4829ad:	6a 29                	push   $0x29
4829af:	8b 58 04             	mov    0x4(%eax),%ebx
4829b2:	8b cb                	mov    %ebx,%ecx
4829b4:	e8 f5 73 f8 ff       	call   0x409dae
4829b9:	84 c0                	test   %al,%al
4829bb:	75 0b                	jne    0x4829c8
4829bd:	8b cb                	mov    %ebx,%ecx
4829bf:	e8 d8 72 f8 ff       	call   0x409c9c
4829c4:	8b d8                	mov    %eax,%ebx
4829c6:	eb 02                	jmp    0x4829ca
4829c8:	33 db                	xor    %ebx,%ebx
4829ca:	3b de                	cmp    %esi,%ebx
4829cc:	0f 87 41 01 00 00    	ja     0x482b13
4829d2:	75 01                	jne    0x4829d5
4829d4:	46                   	inc    %esi
4829d5:	2b f3                	sub    %ebx,%esi
4829d7:	8d 4c 24 20          	lea    0x20(%esp),%ecx
4829db:	56                   	push   %esi
4829dc:	e8 95 51 f8 ff       	call   0x407b76
4829e1:	56                   	push   %esi
4829e2:	53                   	push   %ebx
4829e3:	ff 74 24 14          	push   0x14(%esp)
4829e7:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4829eb:	e8 bb 4f f8 ff       	call   0x4079ab
4829f0:	83 7f 08 03          	cmpl   $0x3,0x8(%edi)
4829f4:	76 0f                	jbe    0x482a05
4829f6:	8b 47 04             	mov    0x4(%edi),%eax
4829f9:	8b 48 0c             	mov    0xc(%eax),%ecx
4829fc:	e8 9b 72 f8 ff       	call   0x409c9c
482a01:	8b f8                	mov    %eax,%edi
482a03:	eb 02                	jmp    0x482a07
482a05:	33 ff                	xor    %edi,%edi
482a07:	83 ff 01             	cmp    $0x1,%edi
482a0a:	74 65                	je     0x482a71
482a0c:	83 ff 02             	cmp    $0x2,%edi
482a0f:	74 60                	je     0x482a71
482a11:	8b 4d 0c             	mov    0xc(%ebp),%ecx
482a14:	e8 15 6a f8 ff       	call   0x40942e
482a19:	56                   	push   %esi
482a1a:	8b d8                	mov    %eax,%ebx
482a1c:	6a 01                	push   $0x1
482a1e:	53                   	push   %ebx
482a1f:	e8 8c 67 f8 ff       	call   0x4091b0
482a24:	83 c4 0c             	add    $0xc,%esp
482a27:	33 ff                	xor    %edi,%edi
482a29:	85 f6                	test   %esi,%esi
482a2b:	0f 84 d9 00 00 00    	je     0x482b0a
482a31:	57                   	push   %edi
482a32:	8d 4c 24 24          	lea    0x24(%esp),%ecx
482a36:	e8 17 51 f8 ff       	call   0x407b52
482a3b:	83 64 24 18 00       	andl   $0x0,0x18(%esp)
482a40:	57                   	push   %edi
482a41:	0f b7 00             	movzwl (%eax),%eax
482a44:	89 44 24 14          	mov    %eax,0x14(%esp)
482a48:	33 c0                	xor    %eax,%eax
482a4a:	40                   	inc    %eax
482a4b:	50                   	push   %eax
482a4c:	89 44 24 24          	mov    %eax,0x24(%esp)
482a50:	8d 44 24 18          	lea    0x18(%esp),%eax
482a54:	50                   	push   %eax
482a55:	53                   	push   %ebx
482a56:	e8 e5 65 f8 ff       	call   0x409040
482a5b:	83 c4 10             	add    $0x10,%esp
482a5e:	8d 4c 24 10          	lea    0x10(%esp),%ecx
482a62:	e8 b9 6f f8 ff       	call   0x409a20
482a67:	47                   	inc    %edi
482a68:	3b fe                	cmp    %esi,%edi
482a6a:	72 c5                	jb     0x482a31
482a6c:	e9 99 00 00 00       	jmp    0x482b0a
482a71:	8d 4c 24 10          	lea    0x10(%esp),%ecx
482a75:	e8 9e 31 f8 ff       	call   0x405c18
482a7a:	8d 44 24 10          	lea    0x10(%esp),%eax
482a7e:	50                   	push   %eax
482a7f:	8d 44 24 24          	lea    0x24(%esp),%eax
482a83:	50                   	push   %eax
482a84:	83 ff 01             	cmp    $0x1,%edi
482a87:	75 07                	jne    0x482a90
482a89:	e8 7d 58 ff ff       	call   0x47830b
482a8e:	eb 05                	jmp    0x482a95
482a90:	e8 94 0b fe ff       	call   0x463629
482a95:	8b 4d 0c             	mov    0xc(%ebp),%ecx
482a98:	8b 7c 24 14          	mov    0x14(%esp),%edi
482a9c:	e8 8d 69 f8 ff       	call   0x40942e
482aa1:	57                   	push   %edi
482aa2:	8b d8                	mov    %eax,%ebx
482aa4:	6a 01                	push   $0x1
482aa6:	53                   	push   %ebx
482aa7:	e8 04 67 f8 ff       	call   0x4091b0
482aac:	83 c4 0c             	add    $0xc,%esp
482aaf:	33 f6                	xor    %esi,%esi
482ab1:	85 ff                	test   %edi,%edi
482ab3:	74 4c                	je     0x482b01
482ab5:	8d 4c 24 10          	lea    0x10(%esp),%ecx
482ab9:	e8 97 0a fe ff       	call   0x463555
482abe:	8b 4c 24 14          	mov    0x14(%esp),%ecx
482ac2:	8b 44 24 10          	mov    0x10(%esp),%eax
482ac6:	3b f1                	cmp    %ecx,%esi
482ac8:	73 04                	jae    0x482ace
482aca:	03 c6                	add    %esi,%eax
482acc:	eb 02                	jmp    0x482ad0
482ace:	03 c1                	add    %ecx,%eax
482ad0:	0f b6 00             	movzbl (%eax),%eax
482ad3:	83 64 24 38 00       	andl   $0x0,0x38(%esp)
482ad8:	89 44 24 30          	mov    %eax,0x30(%esp)
482adc:	33 c0                	xor    %eax,%eax
482ade:	40                   	inc    %eax
482adf:	56                   	push   %esi
482ae0:	50                   	push   %eax
482ae1:	89 44 24 44          	mov    %eax,0x44(%esp)
482ae5:	8d 44 24 38          	lea    0x38(%esp),%eax
482ae9:	50                   	push   %eax
482aea:	53                   	push   %ebx
482aeb:	e8 50 65 f8 ff       	call   0x409040
482af0:	83 c4 10             	add    $0x10,%esp
482af3:	8d 4c 24 30          	lea    0x30(%esp),%ecx
482af7:	e8 24 6f f8 ff       	call   0x409a20
482afc:	46                   	inc    %esi
482afd:	3b f7                	cmp    %edi,%esi
482aff:	72 b4                	jb     0x482ab5
482b01:	8d 4c 24 10          	lea    0x10(%esp),%ecx
482b05:	e8 5a 2f f8 ff       	call   0x405a64
482b0a:	8d 4c 24 20          	lea    0x20(%esp),%ecx
482b0e:	e8 51 2f f8 ff       	call   0x405a64
482b13:	5f                   	pop    %edi
482b14:	5e                   	pop    %esi
482b15:	33 c0                	xor    %eax,%eax
482b17:	5b                   	pop    %ebx
482b18:	8b e5                	mov    %ebp,%esp
482b1a:	5d                   	pop    %ebp
482b1b:	c2 08 00             	ret    $0x8
482b1e:	55                   	push   %ebp
482b1f:	8b ec                	mov    %esp,%ebp
482b21:	83 ec 10             	sub    $0x10,%esp
482b24:	53                   	push   %ebx
482b25:	8b 5d 08             	mov    0x8(%ebp),%ebx
482b28:	56                   	push   %esi
482b29:	57                   	push   %edi
482b2a:	8b 43 04             	mov    0x4(%ebx),%eax
482b2d:	8b 30                	mov    (%eax),%esi
482b2f:	8b ce                	mov    %esi,%ecx
482b31:	e8 61 6e f8 ff       	call   0x409997
482b36:	8b 7e 08             	mov    0x8(%esi),%edi
482b39:	8b 47 04             	mov    0x4(%edi),%eax
482b3c:	89 45 08             	mov    %eax,0x8(%ebp)
482b3f:	85 c0                	test   %eax,%eax
482b41:	75 0e                	jne    0x482b51
482b43:	8b 4d 0c             	mov    0xc(%ebp),%ecx
482b46:	50                   	push   %eax
482b47:	e8 02 4e fe ff       	call   0x46794e
482b4c:	e9 c3 00 00 00       	jmp    0x482c14
482b51:	83 7b 08 02          	cmpl   $0x2,0x8(%ebx)
482b55:	72 12                	jb     0x482b69
482b57:	8b 43 04             	mov    0x4(%ebx),%eax
482b5a:	8b 48 04             	mov    0x4(%eax),%ecx
482b5d:	e8 3a 71 f8 ff       	call   0x409c9c
482b62:	8b f0                	mov    %eax,%esi
482b64:	8b 45 08             	mov    0x8(%ebp),%eax
482b67:	eb 03                	jmp    0x482b6c
482b69:	33 f6                	xor    %esi,%esi
482b6b:	46                   	inc    %esi
482b6c:	83 fe 01             	cmp    $0x1,%esi
482b6f:	7c 05                	jl     0x482b76
482b71:	83 fe 04             	cmp    $0x4,%esi
482b74:	7e 03                	jle    0x482b79
482b76:	33 f6                	xor    %esi,%esi
482b78:	46                   	inc    %esi
482b79:	83 fe 01             	cmp    $0x1,%esi
482b7c:	74 56                	je     0x482bd4
482b7e:	83 fe 04             	cmp    $0x4,%esi
482b81:	74 51                	je     0x482bd4
482b83:	8b 4d 0c             	mov    0xc(%ebp),%ecx
482b86:	83 fe 02             	cmp    $0x2,%esi
482b89:	75 17                	jne    0x482ba2
482b8b:	8d 34 00             	lea    (%eax,%eax,1),%esi
482b8e:	56                   	push   %esi
482b8f:	e8 ba 4d fe ff       	call   0x46794e
482b94:	56                   	push   %esi
482b95:	ff 37                	push   (%edi)
482b97:	50                   	push   %eax
482b98:	e8 e3 e4 f9 ff       	call   0x421080
482b9d:	83 c4 0c             	add    $0xc,%esp
482ba0:	eb 72                	jmp    0x482c14
482ba2:	8d 1c 00             	lea    (%eax,%eax,1),%ebx
482ba5:	53                   	push   %ebx
482ba6:	e8 a3 4d fe ff       	call   0x46794e
482bab:	8b 0f                	mov    (%edi),%ecx
482bad:	33 d2                	xor    %edx,%edx
482baf:	89 45 0c             	mov    %eax,0xc(%ebp)
482bb2:	85 db                	test   %ebx,%ebx
482bb4:	74 5e                	je     0x482c14
482bb6:	8b f0                	mov    %eax,%esi
482bb8:	8b f8                	mov    %eax,%edi
482bba:	2b f1                	sub    %ecx,%esi
482bbc:	8a 41 01             	mov    0x1(%ecx),%al
482bbf:	88 04 0e             	mov    %al,(%esi,%ecx,1)
482bc2:	8a 01                	mov    (%ecx),%al
482bc4:	8d 49 02             	lea    0x2(%ecx),%ecx
482bc7:	88 44 17 01          	mov    %al,0x1(%edi,%edx,1)
482bcb:	83 c2 02             	add    $0x2,%edx
482bce:	3b d3                	cmp    %ebx,%edx
482bd0:	72 ea                	jb     0x482bbc
482bd2:	eb 40                	jmp    0x482c14
482bd4:	8d 4d f0             	lea    -0x10(%ebp),%ecx
482bd7:	e8 3c 30 f8 ff       	call   0x405c18
482bdc:	8d 45 f0             	lea    -0x10(%ebp),%eax
482bdf:	50                   	push   %eax
482be0:	57                   	push   %edi
482be1:	83 fe 01             	cmp    $0x1,%esi
482be4:	75 07                	jne    0x482bed
482be6:	e8 20 57 ff ff       	call   0x47830b
482beb:	eb 05                	jmp    0x482bf2
482bed:	e8 37 0a fe ff       	call   0x463629
482bf2:	ff 75 f4             	push   -0xc(%ebp)
482bf5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
482bf8:	e8 51 4d fe ff       	call   0x46794e
482bfd:	ff 75 f4             	push   -0xc(%ebp)
482c00:	ff 75 f0             	push   -0x10(%ebp)
482c03:	50                   	push   %eax
482c04:	e8 77 e4 f9 ff       	call   0x421080
482c09:	83 c4 0c             	add    $0xc,%esp
482c0c:	8d 4d f0             	lea    -0x10(%ebp),%ecx
482c0f:	e8 50 2e f8 ff       	call   0x405a64
482c14:	5f                   	pop    %edi
482c15:	5e                   	pop    %esi
482c16:	33 c0                	xor    %eax,%eax
482c18:	5b                   	pop    %ebx
482c19:	8b e5                	mov    %ebp,%esp
482c1b:	5d                   	pop    %ebp
482c1c:	c2 08 00             	ret    $0x8
482c1f:	55                   	push   %ebp
482c20:	8b ec                	mov    %esp,%ebp
482c22:	83 ec 10             	sub    $0x10,%esp
482c25:	53                   	push   %ebx
482c26:	8b 5d 08             	mov    0x8(%ebp),%ebx
482c29:	56                   	push   %esi
482c2a:	57                   	push   %edi
482c2b:	8b 43 04             	mov    0x4(%ebx),%eax
482c2e:	8b 30                	mov    (%eax),%esi
482c30:	8b ce                	mov    %esi,%ecx
482c32:	e8 60 6d f8 ff       	call   0x409997
482c37:	8b 46 08             	mov    0x8(%esi),%eax
482c3a:	8b 78 04             	mov    0x4(%eax),%edi
482c3d:	8b 43 04             	mov    0x4(%ebx),%eax
482c40:	8b 48 04             	mov    0x4(%eax),%ecx
482c43:	e8 54 70 f8 ff       	call   0x409c9c
482c48:	85 c0                	test   %eax,%eax
482c4a:	79 02                	jns    0x482c4e
482c4c:	33 c0                	xor    %eax,%eax
482c4e:	3b c7                	cmp    %edi,%eax
482c50:	7e 02                	jle    0x482c54
482c52:	8b c7                	mov    %edi,%eax
482c54:	2b f8                	sub    %eax,%edi
482c56:	8d 4d f0             	lea    -0x10(%ebp),%ecx
482c59:	57                   	push   %edi
482c5a:	e8 17 4f f8 ff       	call   0x407b76
482c5f:	8b 43 04             	mov    0x4(%ebx),%eax
482c62:	8b 30                	mov    (%eax),%esi
482c64:	8b ce                	mov    %esi,%ecx
482c66:	e8 2c 6d f8 ff       	call   0x409997
482c6b:	57                   	push   %edi
482c6c:	6a 00                	push   $0x0
482c6e:	ff 76 08             	push   0x8(%esi)
482c71:	8d 4d f0             	lea    -0x10(%ebp),%ecx
482c74:	e8 32 4d f8 ff       	call   0x4079ab
482c79:	8b 4d 0c             	mov    0xc(%ebp),%ecx
482c7c:	8d 45 f0             	lea    -0x10(%ebp),%eax
482c7f:	50                   	push   %eax
482c80:	e8 17 6f f8 ff       	call   0x409b9c
482c85:	8d 4d f0             	lea    -0x10(%ebp),%ecx
482c88:	e8 d7 2d f8 ff       	call   0x405a64
482c8d:	5f                   	pop    %edi
482c8e:	5e                   	pop    %esi
482c8f:	33 c0                	xor    %eax,%eax
482c91:	5b                   	pop    %ebx
482c92:	8b e5                	mov    %ebp,%esp
482c94:	5d                   	pop    %ebp
482c95:	c2 08 00             	ret    $0x8
482c98:	55                   	push   %ebp
482c99:	8b ec                	mov    %esp,%ebp
482c9b:	83 ec 10             	sub    $0x10,%esp
482c9e:	8b 45 08             	mov    0x8(%ebp),%eax
482ca1:	56                   	push   %esi
482ca2:	8b 40 04             	mov    0x4(%eax),%eax
482ca5:	8b 30                	mov    (%eax),%esi
482ca7:	8b ce                	mov    %esi,%ecx
482ca9:	e8 e9 6c f8 ff       	call   0x409997
482cae:	8b 4e 08             	mov    0x8(%esi),%ecx
482cb1:	8b 01                	mov    (%ecx),%eax