4489b3:	83 fb 08             	cmp    $0x8,%ebx
4489b6:	72 02                	jb     0x4489ba
4489b8:	8b 3e                	mov    (%esi),%edi
4489ba:	03 c9                	add    %ecx,%ecx
4489bc:	51                   	push   %ecx
4489bd:	ff 75 ec             	push   -0x14(%ebp)
4489c0:	8d 0c 57             	lea    (%edi,%edx,2),%ecx
4489c3:	51                   	push   %ecx
4489c4:	e8 b7 aa 19 00       	call   0x5e3480
4489c9:	8b 45 f0             	mov    -0x10(%ebp),%eax
4489cc:	83 c4 0c             	add    $0xc,%esp
4489cf:	33 c9                	xor    %ecx,%ecx
4489d1:	66 89 0c 47          	mov    %cx,(%edi,%eax,2)
4489d5:	8b c6                	mov    %esi,%eax
4489d7:	5f                   	pop    %edi
4489d8:	5e                   	pop    %esi
4489d9:	5b                   	pop    %ebx
4489da:	8b e5                	mov    %ebp,%esp
4489dc:	5d                   	pop    %ebp
4489dd:	c2 08 00             	ret    $0x8
4489e0:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
4489e5:	2b c2                	sub    %edx,%eax
4489e7:	3b c1                	cmp    %ecx,%eax
4489e9:	0f 82 14 01 00 00    	jb     0x448b03
4489ef:	8d 04 11             	lea    (%ecx,%edx,1),%eax
4489f2:	8b f8                	mov    %eax,%edi
4489f4:	89 45 f4             	mov    %eax,-0xc(%ebp)
4489f7:	83 cf 07             	or     $0x7,%edi
4489fa:	81 ff fe ff ff 7f    	cmp    $0x7ffffffe,%edi
448a00:	76 07                	jbe    0x448a09
448a02:	bf fe ff ff 7f       	mov    $0x7ffffffe,%edi
448a07:	eb 1e                	jmp    0x448a27
448a09:	8b cb                	mov    %ebx,%ecx
448a0b:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
448a10:	d1 e9                	shr    $1,%ecx
448a12:	2b c1                	sub    %ecx,%eax
448a14:	3b d8                	cmp    %eax,%ebx
448a16:	76 07                	jbe    0x448a1f
448a18:	bf fe ff ff 7f       	mov    $0x7ffffffe,%edi
448a1d:	eb 08                	jmp    0x448a27
448a1f:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
448a22:	3b f8                	cmp    %eax,%edi
448a24:	0f 42 f8             	cmovb  %eax,%edi
448a27:	33 c9                	xor    %ecx,%ecx
448a29:	8b c7                	mov    %edi,%eax
448a2b:	83 c0 01             	add    $0x1,%eax
448a2e:	0f 92 c1             	setb   %cl
448a31:	f7 d9                	neg    %ecx
448a33:	0b c8                	or     %eax,%ecx
448a35:	51                   	push   %ecx
448a36:	8b ce                	mov    %esi,%ecx
448a38:	e8 b3 09 ff ff       	call   0x4393f0
448a3d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
448a40:	8b 55 fc             	mov    -0x4(%ebp),%edx
448a43:	89 45 f0             	mov    %eax,-0x10(%ebp)
448a46:	8b 45 f4             	mov    -0xc(%ebp),%eax
448a49:	89 46 10             	mov    %eax,0x10(%esi)
448a4c:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
448a4f:	89 45 f8             	mov    %eax,-0x8(%ebp)
448a52:	8b 45 f0             	mov    -0x10(%ebp),%eax
448a55:	89 7e 14             	mov    %edi,0x14(%esi)
448a58:	8d 3c 12             	lea    (%edx,%edx,1),%edi
448a5b:	8d 14 07             	lea    (%edi,%eax,1),%edx
448a5e:	89 55 f4             	mov    %edx,-0xc(%ebp)
448a61:	8b 55 fc             	mov    -0x4(%ebp),%edx
448a64:	03 ca                	add    %edx,%ecx
448a66:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
448a69:	89 4d fc             	mov    %ecx,-0x4(%ebp)
448a6c:	83 fb 08             	cmp    $0x8,%ebx
448a6f:	72 61                	jb     0x448ad2
448a71:	8b 3e                	mov    (%esi),%edi
448a73:	8d 0c 12             	lea    (%edx,%edx,1),%ecx
448a76:	51                   	push   %ecx
448a77:	57                   	push   %edi
448a78:	50                   	push   %eax
448a79:	e8 82 a4 19 00       	call   0x5e2f00
448a7e:	ff 75 f8             	push   -0x8(%ebp)
448a81:	ff 75 ec             	push   -0x14(%ebp)
448a84:	ff 75 f4             	push   -0xc(%ebp)
448a87:	e8 74 a4 19 00       	call   0x5e2f00
448a8c:	8b 45 fc             	mov    -0x4(%ebp),%eax
448a8f:	8d 1c 5d 02 00 00 00 	lea    0x2(,%ebx,2),%ebx
448a96:	33 c9                	xor    %ecx,%ecx
448a98:	83 c4 18             	add    $0x18,%esp
448a9b:	66 89 08             	mov    %cx,(%eax)
448a9e:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
448aa4:	72 12                	jb     0x448ab8
448aa6:	8b 4f fc             	mov    -0x4(%edi),%ecx
448aa9:	83 c3 23             	add    $0x23,%ebx
448aac:	2b f9                	sub    %ecx,%edi
448aae:	8d 47 fc             	lea    -0x4(%edi),%eax
448ab1:	83 f8 1f             	cmp    $0x1f,%eax
448ab4:	77 52                	ja     0x448b08
448ab6:	8b f9                	mov    %ecx,%edi
448ab8:	53                   	push   %ebx
448ab9:	57                   	push   %edi
448aba:	e8 b3 85 19 00       	call   0x5e1072
448abf:	8b 45 f0             	mov    -0x10(%ebp),%eax
448ac2:	83 c4 08             	add    $0x8,%esp
448ac5:	89 06                	mov    %eax,(%esi)
448ac7:	8b c6                	mov    %esi,%eax
448ac9:	5f                   	pop    %edi
448aca:	5e                   	pop    %esi
448acb:	5b                   	pop    %ebx
448acc:	8b e5                	mov    %ebp,%esp
448ace:	5d                   	pop    %ebp
448acf:	c2 08 00             	ret    $0x8
448ad2:	57                   	push   %edi
448ad3:	56                   	push   %esi
448ad4:	50                   	push   %eax
448ad5:	e8 26 a4 19 00       	call   0x5e2f00
448ada:	ff 75 f8             	push   -0x8(%ebp)
448add:	ff 75 ec             	push   -0x14(%ebp)
448ae0:	ff 75 f4             	push   -0xc(%ebp)
448ae3:	e8 18 a4 19 00       	call   0x5e2f00
448ae8:	8b 45 fc             	mov    -0x4(%ebp),%eax
448aeb:	83 c4 18             	add    $0x18,%esp
448aee:	33 c9                	xor    %ecx,%ecx
448af0:	66 89 08             	mov    %cx,(%eax)
448af3:	8b 45 f0             	mov    -0x10(%ebp),%eax
448af6:	89 06                	mov    %eax,(%esi)
448af8:	8b c6                	mov    %esi,%eax
448afa:	5f                   	pop    %edi
448afb:	5e                   	pop    %esi
448afc:	5b                   	pop    %ebx
448afd:	8b e5                	mov    %ebp,%esp
448aff:	5d                   	pop    %ebp
448b00:	c2 08 00             	ret    $0x8
448b03:	e8 28 c5 ff ff       	call   0x445030
448b08:	e8 22 44 1a 00       	call   0x5ecf2f
448b0d:	cc                   	int3
448b0e:	cc                   	int3
448b0f:	cc                   	int3
448b10:	55                   	push   %ebp
448b11:	8b ec                	mov    %esp,%ebp
448b13:	56                   	push   %esi
448b14:	8b 75 08             	mov    0x8(%ebp),%esi
448b17:	57                   	push   %edi
448b18:	8b 7d 0c             	mov    0xc(%ebp),%edi
448b1b:	3b f7                	cmp    %edi,%esi
448b1d:	74 50                	je     0x448b6f
448b1f:	90                   	nop
448b20:	8b 4e 14             	mov    0x14(%esi),%ecx
448b23:	83 f9 08             	cmp    $0x8,%ecx
448b26:	72 2d                	jb     0x448b55
448b28:	8b 06                	mov    (%esi),%eax
448b2a:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
448b31:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
448b37:	72 12                	jb     0x448b4b
448b39:	8b 50 fc             	mov    -0x4(%eax),%edx
448b3c:	83 c1 23             	add    $0x23,%ecx
448b3f:	2b c2                	sub    %edx,%eax
448b41:	83 c0 fc             	add    $0xfffffffc,%eax
448b44:	83 f8 1f             	cmp    $0x1f,%eax
448b47:	77 2a                	ja     0x448b73
448b49:	8b c2                	mov    %edx,%eax
448b4b:	51                   	push   %ecx
448b4c:	50                   	push   %eax
448b4d:	e8 20 85 19 00       	call   0x5e1072
448b52:	83 c4 08             	add    $0x8,%esp
448b55:	33 c0                	xor    %eax,%eax
448b57:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
448b5e:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
448b65:	66 89 06             	mov    %ax,(%esi)
448b68:	83 c6 18             	add    $0x18,%esi
448b6b:	3b f7                	cmp    %edi,%esi
448b6d:	75 b1                	jne    0x448b20
448b6f:	5f                   	pop    %edi
448b70:	5e                   	pop    %esi
448b71:	5d                   	pop    %ebp
448b72:	c3                   	ret
448b73:	e8 b7 43 1a 00       	call   0x5ecf2f
448b78:	cc                   	int3
448b79:	cc                   	int3
448b7a:	cc                   	int3
448b7b:	cc                   	int3
448b7c:	cc                   	int3
448b7d:	cc                   	int3
448b7e:	cc                   	int3
448b7f:	cc                   	int3
448b80:	55                   	push   %ebp
448b81:	8b ec                	mov    %esp,%ebp
448b83:	8b 4d 0c             	mov    0xc(%ebp),%ecx
448b86:	33 c0                	xor    %eax,%eax
448b88:	8b 55 08             	mov    0x8(%ebp),%edx
448b8b:	53                   	push   %ebx
448b8c:	8b 5d 10             	mov    0x10(%ebp),%ebx
448b8f:	56                   	push   %esi
448b90:	8b f1                	mov    %ecx,%esi
448b92:	2b f2                	sub    %edx,%esi
448b94:	83 c6 03             	add    $0x3,%esi
448b97:	c1 ee 02             	shr    $0x2,%esi
448b9a:	3b d1                	cmp    %ecx,%edx
448b9c:	0f 47 f0             	cmova  %eax,%esi
448b9f:	85 f6                	test   %esi,%esi
448ba1:	74 2b                	je     0x448bce
448ba3:	83 fe 04             	cmp    $0x4,%esi
448ba6:	72 26                	jb     0x448bce
448ba8:	8b 03                	mov    (%ebx),%eax
448baa:	57                   	push   %edi
448bab:	8d 7a fc             	lea    -0x4(%edx),%edi
448bae:	8d 3c b7             	lea    (%edi,%esi,4),%edi
448bb1:	3b d3                	cmp    %ebx,%edx
448bb3:	77 04                	ja     0x448bb9
448bb5:	3b fb                	cmp    %ebx,%edi
448bb7:	73 14                	jae    0x448bcd
448bb9:	83 e6 fc             	and    $0xfffffffc,%esi
448bbc:	8b fa                	mov    %edx,%edi
448bbe:	c1 e6 02             	shl    $0x2,%esi
448bc1:	8b ce                	mov    %esi,%ecx
448bc3:	c1 e9 02             	shr    $0x2,%ecx
448bc6:	03 d6                	add    %esi,%edx
448bc8:	f3 ab                	rep stos %eax,%es:(%edi)
448bca:	8b 4d 0c             	mov    0xc(%ebp),%ecx
448bcd:	5f                   	pop    %edi
448bce:	3b d1                	cmp    %ecx,%edx
448bd0:	74 0b                	je     0x448bdd
448bd2:	8b 03                	mov    (%ebx),%eax
448bd4:	89 02                	mov    %eax,(%edx)
448bd6:	83 c2 04             	add    $0x4,%edx
448bd9:	3b d1                	cmp    %ecx,%edx
448bdb:	75 f5                	jne    0x448bd2
448bdd:	5e                   	pop    %esi
448bde:	5b                   	pop    %ebx
448bdf:	5d                   	pop    %ebp
448be0:	c3                   	ret
448be1:	cc                   	int3
448be2:	cc                   	int3
448be3:	cc                   	int3
448be4:	cc                   	int3
448be5:	cc                   	int3
448be6:	cc                   	int3
448be7:	cc                   	int3
448be8:	cc                   	int3
448be9:	cc                   	int3
448bea:	cc                   	int3
448beb:	cc                   	int3
448bec:	cc                   	int3
448bed:	cc                   	int3
448bee:	cc                   	int3
448bef:	cc                   	int3
448bf0:	56                   	push   %esi
448bf1:	8b f1                	mov    %ecx,%esi
448bf3:	8b 56 10             	mov    0x10(%esi),%edx
448bf6:	8b 46 0c             	mov    0xc(%esi),%eax
448bf9:	2b d0                	sub    %eax,%edx
448bfb:	83 e2 fc             	and    $0xfffffffc,%edx
448bfe:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
448c04:	72 12                	jb     0x448c18
448c06:	8b 48 fc             	mov    -0x4(%eax),%ecx
448c09:	83 c2 23             	add    $0x23,%edx
448c0c:	2b c1                	sub    %ecx,%eax
448c0e:	83 c0 fc             	add    $0xfffffffc,%eax
448c11:	83 f8 1f             	cmp    $0x1f,%eax
448c14:	77 2a                	ja     0x448c40
448c16:	8b c1                	mov    %ecx,%eax
448c18:	52                   	push   %edx
448c19:	50                   	push   %eax
448c1a:	e8 53 84 19 00       	call   0x5e1072
448c1f:	83 c4 08             	add    $0x8,%esp
448c22:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
448c29:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
448c30:	8d 4e 04             	lea    0x4(%esi),%ecx
448c33:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
448c3a:	5e                   	pop    %esi
448c3b:	e9 60 00 00 00       	jmp    0x448ca0
448c40:	e8 ea 42 1a 00       	call   0x5ecf2f
448c45:	cc                   	int3
448c46:	cc                   	int3
448c47:	cc                   	int3
448c48:	cc                   	int3
448c49:	cc                   	int3
448c4a:	cc                   	int3
448c4b:	cc                   	int3
448c4c:	cc                   	int3
448c4d:	cc                   	int3
448c4e:	cc                   	int3
448c4f:	cc                   	int3
448c50:	56                   	push   %esi
448c51:	8b f1                	mov    %ecx,%esi
448c53:	8b 56 04             	mov    0x4(%esi),%edx
448c56:	8b 06                	mov    (%esi),%eax
448c58:	2b d0                	sub    %eax,%edx
448c5a:	83 e2 fc             	and    $0xfffffffc,%edx
448c5d:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
448c63:	72 12                	jb     0x448c77
448c65:	8b 48 fc             	mov    -0x4(%eax),%ecx
448c68:	83 c2 23             	add    $0x23,%edx
448c6b:	2b c1                	sub    %ecx,%eax
448c6d:	83 c0 fc             	add    $0xfffffffc,%eax
448c70:	83 f8 1f             	cmp    $0x1f,%eax
448c73:	77 22                	ja     0x448c97
448c75:	8b c1                	mov    %ecx,%eax
448c77:	52                   	push   %edx
448c78:	50                   	push   %eax
448c79:	e8 f4 83 19 00       	call   0x5e1072
448c7e:	83 c4 08             	add    $0x8,%esp
448c81:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
448c87:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
448c8e:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
448c95:	5e                   	pop    %esi
448c96:	c3                   	ret
448c97:	e8 93 42 1a 00       	call   0x5ecf2f
448c9c:	cc                   	int3
448c9d:	cc                   	int3
448c9e:	cc                   	int3
448c9f:	cc                   	int3
448ca0:	53                   	push   %ebx
448ca1:	8b d9                	mov    %ecx,%ebx
448ca3:	56                   	push   %esi
448ca4:	8b 33                	mov    (%ebx),%esi
448ca6:	8b 46 04             	mov    0x4(%esi),%eax
448ca9:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
448caf:	8b 36                	mov    (%esi),%esi
448cb1:	85 f6                	test   %esi,%esi
448cb3:	0f 84 b7 00 00 00    	je     0x448d70
448cb9:	57                   	push   %edi
448cba:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
448cc0:	8b 4e 34             	mov    0x34(%esi),%ecx
448cc3:	8b 3e                	mov    (%esi),%edi
448cc5:	83 f9 08             	cmp    $0x8,%ecx
448cc8:	72 32                	jb     0x448cfc
448cca:	8b 46 20             	mov    0x20(%esi),%eax
448ccd:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
448cd4:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
448cda:	72 16                	jb     0x448cf2
448cdc:	8b 50 fc             	mov    -0x4(%eax),%edx
448cdf:	83 c1 23             	add    $0x23,%ecx
448ce2:	2b c2                	sub    %edx,%eax
448ce4:	83 c0 fc             	add    $0xfffffffc,%eax
448ce7:	83 f8 1f             	cmp    $0x1f,%eax
448cea:	0f 87 8f 00 00 00    	ja     0x448d7f
448cf0:	8b c2                	mov    %edx,%eax
448cf2:	51                   	push   %ecx
448cf3:	50                   	push   %eax
448cf4:	e8 79 83 19 00       	call   0x5e1072
448cf9:	83 c4 08             	add    $0x8,%esp
448cfc:	33 c0                	xor    %eax,%eax
448cfe:	c7 46 30 00 00 00 00 	movl   $0x0,0x30(%esi)
448d05:	c7 46 34 07 00 00 00 	movl   $0x7,0x34(%esi)
448d0c:	66 89 46 20          	mov    %ax,0x20(%esi)
448d10:	8b 4e 1c             	mov    0x1c(%esi),%ecx
448d13:	83 f9 08             	cmp    $0x8,%ecx
448d16:	72 2e                	jb     0x448d46
448d18:	8b 46 08             	mov    0x8(%esi),%eax
448d1b:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
448d22:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
448d28:	72 12                	jb     0x448d3c
448d2a:	8b 50 fc             	mov    -0x4(%eax),%edx
448d2d:	83 c1 23             	add    $0x23,%ecx