4b9aa4:	75 2d                	jne    0x4b9ad3
4b9aa6:	8b 4b 04             	mov    0x4(%ebx),%ecx
4b9aa9:	f6 c1 03             	test   $0x3,%cl
4b9aac:	75 05                	jne    0x4b9ab3
4b9aae:	83 e1 fc             	and    $0xfffffffc,%ecx
4b9ab1:	eb 11                	jmp    0x4b9ac4
4b9ab3:	8b c1                	mov    %ecx,%eax
4b9ab5:	d1 e8                	shr    $1,%eax
4b9ab7:	a8 01                	test   $0x1,%al
4b9ab9:	74 04                	je     0x4b9abf
4b9abb:	33 c9                	xor    %ecx,%ecx
4b9abd:	eb 05                	jmp    0x4b9ac4
4b9abf:	83 e1 fc             	and    $0xfffffffc,%ecx
4b9ac2:	8b 09                	mov    (%ecx),%ecx
4b9ac4:	51                   	push   %ecx
4b9ac5:	e8 a6 e0 00 00       	call   0x4c7b70
4b9aca:	83 c4 04             	add    $0x4,%esp
4b9acd:	89 43 14             	mov    %eax,0x14(%ebx)
4b9ad0:	89 45 f8             	mov    %eax,-0x8(%ebp)
4b9ad3:	0f b6 06             	movzbl (%esi),%eax
4b9ad6:	3d 80 00 00 00       	cmp    $0x80,%eax
4b9adb:	73 03                	jae    0x4b9ae0
4b9add:	46                   	inc    %esi
4b9ade:	eb 14                	jmp    0x4b9af4
4b9ae0:	50                   	push   %eax
4b9ae1:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4b9ae4:	56                   	push   %esi
4b9ae5:	50                   	push   %eax
4b9ae6:	e8 85 5d fa ff       	call   0x45f870
4b9aeb:	8b 75 d4             	mov    -0x2c(%ebp),%esi
4b9aee:	83 c4 0c             	add    $0xc,%esp
4b9af1:	8b 45 d8             	mov    -0x28(%ebp),%eax
4b9af4:	85 f6                	test   %esi,%esi
4b9af6:	0f 84 ac 00 00 00    	je     0x4b9ba8
4b9afc:	2b 47 04             	sub    0x4(%edi),%eax
4b9aff:	8d 14 30             	lea    (%eax,%esi,1),%edx
4b9b02:	33 c0                	xor    %eax,%eax
4b9b04:	85 d2                	test   %edx,%edx
4b9b06:	89 55 f0             	mov    %edx,-0x10(%ebp)
4b9b09:	0f 48 c2             	cmovs  %edx,%eax
4b9b0c:	03 47 04             	add    0x4(%edi),%eax
4b9b0f:	83 47 44 ff          	addl   $0xffffffff,0x44(%edi)
4b9b13:	89 07                	mov    %eax,(%edi)
4b9b15:	8b 47 10             	mov    0x10(%edi),%eax
4b9b18:	89 45 f4             	mov    %eax,-0xc(%ebp)
4b9b1b:	89 57 10             	mov    %edx,0x10(%edi)
4b9b1e:	0f 88 84 00 00 00    	js     0x4b9ba8
4b9b24:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4b9b27:	57                   	push   %edi
4b9b28:	56                   	push   %esi
4b9b29:	e8 12 55 00 00       	call   0x4bf040
4b9b2e:	8b f0                	mov    %eax,%esi
4b9b30:	85 f6                	test   %esi,%esi
4b9b32:	74 74                	je     0x4b9ba8
4b9b34:	ff 47 44             	incl   0x44(%edi)
4b9b37:	83 7f 3c 00          	cmpl   $0x0,0x3c(%edi)
4b9b3b:	75 6b                	jne    0x4b9ba8
4b9b3d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4b9b40:	2b 45 f0             	sub    -0x10(%ebp),%eax
4b9b43:	01 47 10             	add    %eax,0x10(%edi)
4b9b46:	b8 00 00 00 00       	mov    $0x0,%eax
4b9b4b:	0f 48 47 10          	cmovs  0x10(%edi),%eax
4b9b4f:	03 47 04             	add    0x4(%edi),%eax
4b9b52:	89 07                	mov    %eax,(%edi)
4b9b54:	e9 a9 fe ff ff       	jmp    0x4b9a02
4b9b59:	80 fb 0a             	cmp    $0xa,%bl
4b9b5c:	75 57                	jne    0x4b9bb5
4b9b5e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4b9b61:	c6 45 ec 00          	movb   $0x0,-0x14(%ebp)
4b9b65:	83 4b 08 01          	orl    $0x1,0x8(%ebx)
4b9b69:	8b 4b 04             	mov    0x4(%ebx),%ecx
4b9b6c:	f6 c1 03             	test   $0x3,%cl
4b9b6f:	75 05                	jne    0x4b9b76
4b9b71:	83 e1 fc             	and    $0xfffffffc,%ecx
4b9b74:	eb 11                	jmp    0x4b9b87
4b9b76:	8b c1                	mov    %ecx,%eax
4b9b78:	d1 e8                	shr    $1,%eax
4b9b7a:	a8 01                	test   $0x1,%al
4b9b7c:	74 04                	je     0x4b9b82
4b9b7e:	33 c9                	xor    %ecx,%ecx
4b9b80:	eb 05                	jmp    0x4b9b87
4b9b82:	83 e1 fc             	and    $0xfffffffc,%ecx
4b9b85:	8b 09                	mov    (%ecx),%ecx
4b9b87:	51                   	push   %ecx
4b9b88:	ff 75 ec             	push   -0x14(%ebp)
4b9b8b:	8d 4b 10             	lea    0x10(%ebx),%ecx
4b9b8e:	e8 9d 1d fa ff       	call   0x45b930
4b9b93:	57                   	push   %edi
4b9b94:	56                   	push   %esi
4b9b95:	50                   	push   %eax
4b9b96:	e8 55 55 fa ff       	call   0x45f0f0
4b9b9b:	8b f0                	mov    %eax,%esi
4b9b9d:	83 c4 0c             	add    $0xc,%esp
4b9ba0:	85 f6                	test   %esi,%esi
4b9ba2:	0f 85 5a fe ff ff    	jne    0x4b9a02
4b9ba8:	33 f6                	xor    %esi,%esi
4b9baa:	5f                   	pop    %edi
4b9bab:	8b c6                	mov    %esi,%eax
4b9bad:	5e                   	pop    %esi
4b9bae:	5b                   	pop    %ebx
4b9baf:	8b e5                	mov    %ebp,%esp
4b9bb1:	5d                   	pop    %ebp
4b9bb2:	c2 08 00             	ret    $0x8
4b9bb5:	8b c3                	mov    %ebx,%eax
4b9bb7:	24 07                	and    $0x7,%al
4b9bb9:	3c 04                	cmp    $0x4,%al
4b9bbb:	74 4e                	je     0x4b9c0b
4b9bbd:	85 db                	test   %ebx,%ebx
4b9bbf:	74 4a                	je     0x4b9c0b
4b9bc1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4b9bc4:	83 c1 04             	add    $0x4,%ecx
4b9bc7:	f6 01 01             	testb  $0x1,(%ecx)
4b9bca:	74 0a                	je     0x4b9bd6
4b9bcc:	8b 01                	mov    (%ecx),%eax
4b9bce:	83 e0 fc             	and    $0xfffffffc,%eax
4b9bd1:	83 c0 04             	add    $0x4,%eax
4b9bd4:	eb 05                	jmp    0x4b9bdb
4b9bd6:	e8 55 70 f9 ff       	call   0x450c30
4b9bdb:	57                   	push   %edi
4b9bdc:	56                   	push   %esi
4b9bdd:	50                   	push   %eax
4b9bde:	6a 00                	push   $0x0
4b9be0:	53                   	push   %ebx
4b9be1:	e8 ca 73 fa ff       	call   0x460fb0
4b9be6:	8b f0                	mov    %eax,%esi
4b9be8:	83 c4 14             	add    $0x14,%esp
4b9beb:	85 f6                	test   %esi,%esi
4b9bed:	74 b9                	je     0x4b9ba8
4b9bef:	e9 0e fe ff ff       	jmp    0x4b9a02
4b9bf4:	85 c0                	test   %eax,%eax
4b9bf6:	7e b2                	jle    0x4b9baa
4b9bf8:	33 c0                	xor    %eax,%eax
4b9bfa:	39 47 08             	cmp    %eax,0x8(%edi)
4b9bfd:	5f                   	pop    %edi
4b9bfe:	0f 44 f0             	cmove  %eax,%esi
4b9c01:	8b c6                	mov    %esi,%eax
4b9c03:	5e                   	pop    %esi
4b9c04:	5b                   	pop    %ebx
4b9c05:	8b e5                	mov    %ebp,%esp
4b9c07:	5d                   	pop    %ebp
4b9c08:	c2 08 00             	ret    $0x8
4b9c0b:	8d 43 ff             	lea    -0x1(%ebx),%eax
4b9c0e:	89 47 3c             	mov    %eax,0x3c(%edi)
4b9c11:	8b c6                	mov    %esi,%eax
4b9c13:	5f                   	pop    %edi
4b9c14:	5e                   	pop    %esi
4b9c15:	5b                   	pop    %ebx
4b9c16:	8b e5                	mov    %ebp,%esp
4b9c18:	5d                   	pop    %ebp
4b9c19:	c2 08 00             	ret    $0x8
4b9c1c:	cc                   	int3
4b9c1d:	cc                   	int3
4b9c1e:	cc                   	int3
4b9c1f:	cc                   	int3
4b9c20:	55                   	push   %ebp
4b9c21:	8b ec                	mov    %esp,%ebp
4b9c23:	83 ec 0c             	sub    $0xc,%esp
4b9c26:	8b 45 08             	mov    0x8(%ebp),%eax
4b9c29:	53                   	push   %ebx
4b9c2a:	56                   	push   %esi
4b9c2b:	8b f1                	mov    %ecx,%esi
4b9c2d:	57                   	push   %edi
4b9c2e:	8b 7d 0c             	mov    0xc(%ebp),%edi
4b9c31:	89 75 f4             	mov    %esi,-0xc(%ebp)
4b9c34:	8b 5e 08             	mov    0x8(%esi),%ebx
4b9c37:	f6 c3 01             	test   $0x1,%bl
4b9c3a:	74 11                	je     0x4b9c4d
4b9c3c:	8b 4e 10             	mov    0x10(%esi),%ecx
4b9c3f:	83 e1 fe             	and    $0xfffffffe,%ecx
4b9c42:	50                   	push   %eax
4b9c43:	51                   	push   %ecx
4b9c44:	6a 01                	push   $0x1
4b9c46:	8b cf                	mov    %edi,%ecx
4b9c48:	e8 a3 7e f9 ff       	call   0x451af0
4b9c4d:	f6 c3 02             	test   $0x2,%bl
4b9c50:	0f 84 b5 00 00 00    	je     0x4b9d0b
4b9c56:	3b 07                	cmp    (%edi),%eax
4b9c58:	72 08                	jb     0x4b9c62
4b9c5a:	50                   	push   %eax
4b9c5b:	8b cf                	mov    %edi,%ecx
4b9c5d:	e8 0e f9 f9 ff       	call   0x459570
4b9c62:	8b 5e 14             	mov    0x14(%esi),%ebx
4b9c65:	50                   	push   %eax
4b9c66:	6a 12                	push   $0x12
4b9c68:	e8 53 6e f9 ff       	call   0x450ac0
4b9c6d:	8b 4b 24             	mov    0x24(%ebx),%ecx
4b9c70:	50                   	push   %eax
4b9c71:	51                   	push   %ecx
4b9c72:	e8 49 6e f9 ff       	call   0x450ac0
4b9c77:	8b 4b 18             	mov    0x18(%ebx),%ecx
4b9c7a:	83 c4 10             	add    $0x10,%esp
4b9c7d:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4b9c84:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4b9c87:	85 c9                	test   %ecx,%ecx
4b9c89:	74 4b                	je     0x4b9cd6
4b9c8b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4b9c90:	3b 07                	cmp    (%edi),%eax
4b9c92:	72 08                	jb     0x4b9c9c
4b9c94:	50                   	push   %eax
4b9c95:	8b cf                	mov    %edi,%ecx
4b9c97:	e8 d4 f8 f9 ff       	call   0x459570
4b9c9c:	8b 4b 20             	mov    0x20(%ebx),%ecx
4b9c9f:	8b 75 fc             	mov    -0x4(%ebp),%esi
4b9ca2:	50                   	push   %eax
4b9ca3:	68 3a 1f 00 00       	push   $0x1f3a
4b9ca8:	8b 74 b1 04          	mov    0x4(%ecx,%esi,4),%esi
4b9cac:	e8 0f 6e f9 ff       	call   0x450ac0
4b9cb1:	8b 56 0c             	mov    0xc(%esi),%edx
4b9cb4:	50                   	push   %eax
4b9cb5:	52                   	push   %edx
4b9cb6:	e8 05 6e f9 ff       	call   0x450ac0
4b9cbb:	83 c4 10             	add    $0x10,%esp
4b9cbe:	8b ce                	mov    %esi,%ecx
4b9cc0:	57                   	push   %edi
4b9cc1:	50                   	push   %eax
4b9cc2:	e8 a9 7b 00 00       	call   0x4c1870
4b9cc7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4b9cca:	41                   	inc    %ecx
4b9ccb:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4b9cce:	3b 4d f8             	cmp    -0x8(%ebp),%ecx
4b9cd1:	72 bd                	jb     0x4b9c90
4b9cd3:	8b 75 f4             	mov    -0xc(%ebp),%esi
4b9cd6:	66 83 7b 0e 00       	cmpw   $0x0,0xe(%ebx)
4b9cdb:	8d 4b 08             	lea    0x8(%ebx),%ecx
4b9cde:	74 11                	je     0x4b9cf1
4b9ce0:	57                   	push   %edi
4b9ce1:	50                   	push   %eax
4b9ce2:	68 00 00 00 20       	push   $0x20000000
4b9ce7:	68 e8 03 00 00       	push   $0x3e8
4b9cec:	e8 9f 0e ff ff       	call   0x4aab90
4b9cf1:	f6 43 04 01          	testb  $0x1,0x4(%ebx)
4b9cf5:	74 14                	je     0x4b9d0b
4b9cf7:	8b 4b 04             	mov    0x4(%ebx),%ecx
4b9cfa:	83 e1 fc             	and    $0xfffffffc,%ecx
4b9cfd:	57                   	push   %edi
4b9cfe:	83 c1 04             	add    $0x4,%ecx
4b9d01:	50                   	push   %eax
4b9d02:	51                   	push   %ecx
4b9d03:	e8 38 88 fb ff       	call   0x472540
4b9d08:	83 c4 0c             	add    $0xc,%esp
4b9d0b:	f6 46 04 01          	testb  $0x1,0x4(%esi)
4b9d0f:	74 14                	je     0x4b9d25
4b9d11:	8b 4e 04             	mov    0x4(%esi),%ecx
4b9d14:	83 e1 fc             	and    $0xfffffffc,%ecx
4b9d17:	57                   	push   %edi
4b9d18:	83 c1 04             	add    $0x4,%ecx
4b9d1b:	50                   	push   %eax
4b9d1c:	51                   	push   %ecx
4b9d1d:	e8 1e 88 fb ff       	call   0x472540
4b9d22:	83 c4 0c             	add    $0xc,%esp
4b9d25:	5f                   	pop    %edi
4b9d26:	5e                   	pop    %esi
4b9d27:	5b                   	pop    %ebx
4b9d28:	8b e5                	mov    %ebp,%esp
4b9d2a:	5d                   	pop    %ebp
4b9d2b:	c2 08 00             	ret    $0x8
4b9d2e:	cc                   	int3
4b9d2f:	cc                   	int3
4b9d30:	55                   	push   %ebp
4b9d31:	8b ec                	mov    %esp,%ebp
4b9d33:	6a 00                	push   $0x0
4b9d35:	68 50 d6 68 00       	push   $0x68d650
4b9d3a:	e8 41 96 fa ff       	call   0x463380
4b9d3f:	a1 7c d6 68 00       	mov    0x68d67c,%eax
4b9d44:	83 c4 08             	add    $0x8,%esp
4b9d47:	8b 48 38             	mov    0x38(%eax),%ecx
4b9d4a:	8b 50 3c             	mov    0x3c(%eax),%edx
4b9d4d:	8b 45 08             	mov    0x8(%ebp),%eax
4b9d50:	89 08                	mov    %ecx,(%eax)
4b9d52:	89 50 04             	mov    %edx,0x4(%eax)
4b9d55:	5d                   	pop    %ebp
4b9d56:	c2 04 00             	ret    $0x4
4b9d59:	cc                   	int3
4b9d5a:	cc                   	int3
4b9d5b:	cc                   	int3
4b9d5c:	cc                   	int3
4b9d5d:	cc                   	int3
4b9d5e:	cc                   	int3
4b9d5f:	cc                   	int3
4b9d60:	55                   	push   %ebp
4b9d61:	8b ec                	mov    %esp,%ebp
4b9d63:	56                   	push   %esi
4b9d64:	8b f1                	mov    %ecx,%esi
4b9d66:	e8 f5 09 01 00       	call   0x4ca760
4b9d6b:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
4b9d6f:	74 0b                	je     0x4b9d7c
4b9d71:	6a 18                	push   $0x18
4b9d73:	56                   	push   %esi
4b9d74:	e8 dc 74 11 00       	call   0x5d1255
4b9d79:	83 c4 08             	add    $0x8,%esp
4b9d7c:	8b c6                	mov    %esi,%eax
4b9d7e:	5e                   	pop    %esi
4b9d7f:	5d                   	pop    %ebp
4b9d80:	c2 04 00             	ret    $0x4
4b9d83:	cc                   	int3
4b9d84:	cc                   	int3
4b9d85:	cc                   	int3
4b9d86:	cc                   	int3
4b9d87:	cc                   	int3
4b9d88:	cc                   	int3
4b9d89:	cc                   	int3
4b9d8a:	cc                   	int3
4b9d8b:	cc                   	int3
4b9d8c:	cc                   	int3
4b9d8d:	cc                   	int3
4b9d8e:	cc                   	int3
4b9d8f:	cc                   	int3
4b9d90:	6a 00                	push   $0x0
4b9d92:	e8 99 d2 00 00       	call   0x4c7030
4b9d97:	83 c4 04             	add    $0x4,%esp
4b9d9a:	c3                   	ret
4b9d9b:	cc                   	int3
4b9d9c:	cc                   	int3
4b9d9d:	cc                   	int3
4b9d9e:	cc                   	int3
4b9d9f:	cc                   	int3
4b9da0:	55                   	push   %ebp
4b9da1:	8b ec                	mov    %esp,%ebp
4b9da3:	ff 75 08             	push   0x8(%ebp)
4b9da6:	e8 85 d2 00 00       	call   0x4c7030
4b9dab:	83 c4 04             	add    $0x4,%esp
4b9dae:	5d                   	pop    %ebp
4b9daf:	c2 04 00             	ret    $0x4
4b9db2:	cc                   	int3
4b9db3:	cc                   	int3
4b9db4:	cc                   	int3
4b9db5:	cc                   	int3
4b9db6:	cc                   	int3
4b9db7:	cc                   	int3
4b9db8:	cc                   	int3
4b9db9:	cc                   	int3
4b9dba:	cc                   	int3
4b9dbb:	cc                   	int3
4b9dbc:	cc                   	int3
4b9dbd:	cc                   	int3
4b9dbe:	cc                   	int3
4b9dbf:	cc                   	int3
4b9dc0:	55                   	push   %ebp
4b9dc1:	8b ec                	mov    %esp,%ebp
4b9dc3:	83 ec 08             	sub    $0x8,%esp
4b9dc6:	53                   	push   %ebx
4b9dc7:	8b 5d 08             	mov    0x8(%ebp),%ebx
4b9dca:	57                   	push   %edi
4b9dcb:	8b f9                	mov    %ecx,%edi
4b9dcd:	3b df                	cmp    %edi,%ebx
4b9dcf:	0f 84 a1 00 00 00    	je     0x4b9e76
4b9dd5:	f6 47 08 03          	testb  $0x3,0x8(%edi)
4b9dd9:	74 08                	je     0x4b9de3
4b9ddb:	0f 57 c0             	xorps  %xmm0,%xmm0
4b9dde:	66 0f d6 47 10       	movq   %xmm0,0x10(%edi)