510936:	8d 44 24 44          	lea    0x44(%esp),%eax
51093a:	50                   	push   %eax
51093b:	57                   	push   %edi
51093c:	56                   	push   %esi
51093d:	e8 5e fc ff ff       	call   0x5105a0
510942:	83 c4 28             	add    $0x28,%esp
510945:	85 c0                	test   %eax,%eax
510947:	0f 84 c5 01 00 00    	je     0x510b12
51094d:	33 d2                	xor    %edx,%edx
51094f:	39 54 24 14          	cmp    %edx,0x14(%esp)
510953:	0f 45 54 24 68       	cmovne 0x68(%esp),%edx
510958:	33 c9                	xor    %ecx,%ecx
51095a:	39 4c 24 18          	cmp    %ecx,0x18(%esp)
51095e:	52                   	push   %edx
51095f:	0f 45 4c 24 74       	cmovne 0x74(%esp),%ecx
510964:	33 c0                	xor    %eax,%eax
510966:	39 44 24 20          	cmp    %eax,0x20(%esp)
51096a:	ff 74 24 18          	push   0x18(%esp)
51096e:	0f 45 84 24 80 00 00 	cmovne 0x80(%esp),%eax
510975:	00
510976:	89 44 24 2c          	mov    %eax,0x2c(%esp)
51097a:	89 4c 24 28          	mov    %ecx,0x28(%esp)
51097e:	03 c8                	add    %eax,%ecx
510980:	03 ca                	add    %edx,%ecx
510982:	8b c1                	mov    %ecx,%eax
510984:	c1 e8 18             	shr    $0x18,%eax
510987:	88 46 48             	mov    %al,0x48(%esi)
51098a:	8b c1                	mov    %ecx,%eax
51098c:	c1 e8 10             	shr    $0x10,%eax
51098f:	88 46 49             	mov    %al,0x49(%esi)
510992:	8b c1                	mov    %ecx,%eax
510994:	c1 e8 08             	shr    $0x8,%eax
510997:	88 46 4a             	mov    %al,0x4a(%esi)
51099a:	88 4e 4b             	mov    %cl,0x4b(%esi)
51099d:	66 c7 46 4c 00 00    	movw   $0x0,0x4c(%esi)
5109a3:	c6 46 4e 00          	movb   $0x0,0x4e(%esi)
5109a7:	8a 46 14             	mov    0x14(%esi),%al
5109aa:	04 10                	add    $0x10,%al
5109ac:	88 46 4f             	mov    %al,0x4f(%esi)
5109af:	56                   	push   %esi
5109b0:	c7 46 58 08 00 00 00 	movl   $0x8,0x58(%esi)
5109b7:	e8 64 fd ff ff       	call   0x510720
5109bc:	83 c4 0c             	add    $0xc,%esp
5109bf:	85 c0                	test   %eax,%eax
5109c1:	0f 84 4b 01 00 00    	je     0x510b12
5109c7:	ff 74 24 20          	push   0x20(%esp)
5109cb:	ff 74 24 1c          	push   0x1c(%esp)
5109cf:	56                   	push   %esi
5109d0:	e8 4b fd ff ff       	call   0x510720
5109d5:	83 c4 0c             	add    $0xc,%esp
5109d8:	85 c0                	test   %eax,%eax
5109da:	0f 84 32 01 00 00    	je     0x510b12
5109e0:	ff 74 24 24          	push   0x24(%esp)
5109e4:	ff 74 24 20          	push   0x20(%esp)
5109e8:	56                   	push   %esi
5109e9:	e8 32 fd ff ff       	call   0x510720
5109ee:	83 c4 0c             	add    $0xc,%esp
5109f1:	85 c0                	test   %eax,%eax
5109f3:	0f 84 19 01 00 00    	je     0x510b12
5109f9:	6a 01                	push   $0x1
5109fb:	68 88 e1 68 00       	push   $0x68e188
510a00:	56                   	push   %esi
510a01:	e8 1a fd ff ff       	call   0x510720
510a06:	83 c4 0c             	add    $0xc,%esp
510a09:	85 c0                	test   %eax,%eax
510a0b:	0f 84 01 01 00 00    	je     0x510b12
510a11:	8b 4e 58             	mov    0x58(%esi),%ecx
510a14:	85 c9                	test   %ecx,%ecx
510a16:	74 59                	je     0x510a71
510a18:	b8 10 00 00 00       	mov    $0x10,%eax
510a1d:	2b c1                	sub    %ecx,%eax
510a1f:	50                   	push   %eax
510a20:	8d 46 48             	lea    0x48(%esi),%eax
510a23:	03 c1                	add    %ecx,%eax
510a25:	6a 00                	push   $0x0
510a27:	50                   	push   %eax
510a28:	e8 43 22 0c 00       	call   0x5d2c70
510a2d:	0f 10 46 48          	movups 0x48(%esi),%xmm0
510a31:	83 c4 0c             	add    $0xc,%esp
510a34:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
510a38:	0f 11 44 24 28       	movups %xmm0,0x28(%esp)
510a3d:	0f 10 46 48          	movups 0x48(%esi),%xmm0
510a41:	0f 11 44 24 38       	movups %xmm0,0x38(%esp)
510a46:	74 09                	je     0x510a51
510a48:	0f 10 46 48          	movups 0x48(%esi),%xmm0
510a4c:	0f 11 44 24 48       	movups %xmm0,0x48(%esp)
510a51:	b8 20 00 00 00       	mov    $0x20,%eax
510a56:	0f 44 e8             	cmove  %eax,%ebp
510a59:	8d 44 24 28          	lea    0x28(%esp),%eax
510a5d:	55                   	push   %ebp
510a5e:	50                   	push   %eax
510a5f:	57                   	push   %edi
510a60:	56                   	push   %esi
510a61:	e8 3a fb ff ff       	call   0x5105a0
510a66:	83 c4 10             	add    $0x10,%esp
510a69:	85 c0                	test   %eax,%eax
510a6b:	0f 84 a1 00 00 00    	je     0x510b12
510a71:	6a ff                	push   $0xffffffff
510a73:	6a 00                	push   $0x0
510a75:	57                   	push   %edi
510a76:	6a 00                	push   $0x0
510a78:	6a 00                	push   $0x0
510a7a:	ff 36                	push   (%esi)
510a7c:	e8 6f bb fc ff       	call   0x4dc5f0
510a81:	83 c4 18             	add    $0x18,%esp
510a84:	85 c0                	test   %eax,%eax
510a86:	0f 84 86 00 00 00    	je     0x510b12
510a8c:	8b 46 14             	mov    0x14(%esi),%eax
510a8f:	83 c0 5c             	add    $0x5c,%eax
510a92:	6a 10                	push   $0x10
510a94:	03 c6                	add    %esi,%eax
510a96:	50                   	push   %eax
510a97:	8d 44 24 18          	lea    0x18(%esp),%eax
510a9b:	50                   	push   %eax
510a9c:	57                   	push   %edi
510a9d:	ff 36                	push   (%esi)
510a9f:	e8 cc be fc ff       	call   0x4dc970
510aa4:	83 c4 14             	add    $0x14,%esp
510aa7:	85 c0                	test   %eax,%eax
510aa9:	74 67                	je     0x510b12
510aab:	83 7c 24 10 10       	cmpl   $0x10,0x10(%esp)
510ab0:	75 60                	jne    0x510b12
510ab2:	6a 10                	push   $0x10
510ab4:	57                   	push   %edi
510ab5:	8d 44 24 18          	lea    0x18(%esp),%eax
510ab9:	50                   	push   %eax
510aba:	8d 5e 6c             	lea    0x6c(%esi),%ebx
510abd:	53                   	push   %ebx
510abe:	ff 36                	push   (%esi)
510ac0:	e8 ab be fc ff       	call   0x4dc970
510ac5:	83 c4 14             	add    $0x14,%esp
510ac8:	85 c0                	test   %eax,%eax
510aca:	74 46                	je     0x510b12
510acc:	83 7c 24 10 10       	cmpl   $0x10,0x10(%esp)
510ad1:	75 3f                	jne    0x510b12
510ad3:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
510ad7:	74 21                	je     0x510afa
510ad9:	6a 10                	push   $0x10
510adb:	53                   	push   %ebx
510adc:	8d 44 24 18          	lea    0x18(%esp),%eax
510ae0:	50                   	push   %eax
510ae1:	8d 46 7c             	lea    0x7c(%esi),%eax
510ae4:	50                   	push   %eax
510ae5:	ff 36                	push   (%esi)
510ae7:	e8 84 be fc ff       	call   0x4dc970
510aec:	83 c4 14             	add    $0x14,%esp
510aef:	85 c0                	test   %eax,%eax
510af1:	74 1f                	je     0x510b12
510af3:	83 7c 24 10 10       	cmpl   $0x10,0x10(%esp)
510af8:	75 18                	jne    0x510b12
510afa:	5f                   	pop    %edi
510afb:	5e                   	pop    %esi
510afc:	5d                   	pop    %ebp
510afd:	b8 01 00 00 00       	mov    $0x1,%eax
510b02:	5b                   	pop    %ebx
510b03:	8b 4c 24 48          	mov    0x48(%esp),%ecx
510b07:	33 cc                	xor    %esp,%ecx
510b09:	e8 18 0f 0c 00       	call   0x5d1a26
510b0e:	83 c4 4c             	add    $0x4c,%esp
510b11:	c3                   	ret
510b12:	8b 4c 24 58          	mov    0x58(%esp),%ecx
510b16:	33 c0                	xor    %eax,%eax
510b18:	5f                   	pop    %edi
510b19:	5e                   	pop    %esi
510b1a:	5d                   	pop    %ebp
510b1b:	5b                   	pop    %ebx
510b1c:	33 cc                	xor    %esp,%ecx
510b1e:	e8 03 0f 0c 00       	call   0x5d1a26
510b23:	83 c4 4c             	add    $0x4c,%esp
510b26:	c3                   	ret
510b27:	cc                   	int3
510b28:	cc                   	int3
510b29:	cc                   	int3
510b2a:	cc                   	int3
510b2b:	cc                   	int3
510b2c:	cc                   	int3
510b2d:	cc                   	int3
510b2e:	cc                   	int3
510b2f:	cc                   	int3
510b30:	b8 74 00 00 00       	mov    $0x74,%eax
510b35:	e8 76 0c 0c 00       	call   0x5d17b0
510b3a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
510b3f:	33 c4                	xor    %esp,%eax
510b41:	89 44 24 70          	mov    %eax,0x70(%esp)
510b45:	8b 4c 24 78          	mov    0x78(%esp),%ecx
510b49:	ba 10 00 00 00       	mov    $0x10,%edx
510b4e:	8b 84 24 84 00 00 00 	mov    0x84(%esp),%eax
510b55:	0f 10 81 a4 00 00 00 	movups 0xa4(%ecx),%xmm0
510b5c:	53                   	push   %ebx
510b5d:	55                   	push   %ebp
510b5e:	8b ac 24 84 00 00 00 	mov    0x84(%esp),%ebp
510b65:	56                   	push   %esi
510b66:	8d 71 6c             	lea    0x6c(%ecx),%esi
510b69:	89 44 24 0c          	mov    %eax,0xc(%esp)
510b6d:	8b 84 24 98 00 00 00 	mov    0x98(%esp),%eax
510b74:	89 4c 24 18          	mov    %ecx,0x18(%esp)
510b78:	b9 01 00 00 00       	mov    $0x1,%ecx
510b7d:	57                   	push   %edi
510b7e:	89 44 24 18          	mov    %eax,0x18(%esp)
510b82:	c7 44 24 14 10 00 00 	movl   $0x10,0x14(%esp)
510b89:	00
510b8a:	0f 11 44 24 20       	movups %xmm0,0x20(%esp)
510b8f:	90                   	nop
510b90:	0f b6 44 32 37       	movzbl 0x37(%edx,%esi,1),%eax
510b95:	4a                   	dec    %edx
510b96:	03 c8                	add    %eax,%ecx
510b98:	88 4c 32 38          	mov    %cl,0x38(%edx,%esi,1)
510b9c:	c1 e9 08             	shr    $0x8,%ecx
510b9f:	85 d2                	test   %edx,%edx
510ba1:	75 ed                	jne    0x510b90
510ba3:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
510ba7:	0f 10 46 38          	movups 0x38(%esi),%xmm0
510bab:	0f 11 44 24 30       	movups %xmm0,0x30(%esp)
510bb0:	75 05                	jne    0x510bb7
510bb2:	8d 7a 20             	lea    0x20(%edx),%edi
510bb5:	eb 2b                	jmp    0x510be2
510bb7:	ba 10 00 00 00       	mov    $0x10,%edx
510bbc:	b9 01 00 00 00       	mov    $0x1,%ecx
510bc1:	0f b6 44 32 37       	movzbl 0x37(%edx,%esi,1),%eax
510bc6:	4a                   	dec    %edx
510bc7:	03 c8                	add    %eax,%ecx
510bc9:	88 4c 32 38          	mov    %cl,0x38(%edx,%esi,1)
510bcd:	c1 e9 08             	shr    $0x8,%ecx
510bd0:	85 d2                	test   %edx,%edx
510bd2:	75 ed                	jne    0x510bc1
510bd4:	0f 10 46 38          	movups 0x38(%esi),%xmm0
510bd8:	bf 30 00 00 00       	mov    $0x30,%edi
510bdd:	0f 11 44 24 40       	movups %xmm0,0x40(%esp)
510be2:	57                   	push   %edi
510be3:	8d 44 24 24          	lea    0x24(%esp),%eax
510be7:	50                   	push   %eax
510be8:	8d 44 24 1c          	lea    0x1c(%esp),%eax
510bec:	50                   	push   %eax
510bed:	8d 44 24 5c          	lea    0x5c(%esp),%eax
510bf1:	50                   	push   %eax
510bf2:	ff 36                	push   (%esi)
510bf4:	e8 77 bd fc ff       	call   0x4dc970
510bf9:	83 c4 14             	add    $0x14,%esp
510bfc:	85 c0                	test   %eax,%eax
510bfe:	0f 84 f6 00 00 00    	je     0x510cfa
510c04:	39 7c 24 14          	cmp    %edi,0x14(%esp)
510c08:	0f 85 ec 00 00 00    	jne    0x510cfa
510c0e:	ff 76 14             	push   0x14(%esi)
510c11:	8d 44 24 54          	lea    0x54(%esp),%eax
510c15:	50                   	push   %eax
510c16:	8d 5e 18             	lea    0x18(%esi),%ebx
510c19:	53                   	push   %ebx
510c1a:	e8 b1 21 0c 00       	call   0x5d2dd0
510c1f:	8b 46 14             	mov    0x14(%esi),%eax
510c22:	83 c4 0c             	add    $0xc,%esp
510c25:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
510c29:	0f 10 44 04 50       	movups 0x50(%esp,%eax,1),%xmm0
510c2e:	0f 11 46 38          	movups %xmm0,0x38(%esi)
510c32:	f6 41 14 01          	testb  $0x1,0x14(%ecx)
510c36:	75 58                	jne    0x510c90
510c38:	8b bc 24 90 00 00 00 	mov    0x90(%esp),%edi
510c3f:	8b 54 24 18          	mov    0x18(%esp),%edx
510c43:	8b 44 24 10          	mov    0x10(%esp),%eax
510c47:	85 ed                	test   %ebp,%ebp
510c49:	75 08                	jne    0x510c53
510c4b:	85 d2                	test   %edx,%edx
510c4d:	75 04                	jne    0x510c53
510c4f:	85 c0                	test   %eax,%eax
510c51:	74 27                	je     0x510c7a
510c53:	ff b4 24 98 00 00 00 	push   0x98(%esp)
510c5a:	50                   	push   %eax
510c5b:	ff b4 24 a8 00 00 00 	push   0xa8(%esp)
510c62:	52                   	push   %edx
510c63:	57                   	push   %edi
510c64:	55                   	push   %ebp
510c65:	56                   	push   %esi
510c66:	e8 55 fc ff ff       	call   0x5108c0
510c6b:	83 c4 1c             	add    $0x1c,%esp
510c6e:	85 c0                	test   %eax,%eax
510c70:	0f 84 84 00 00 00    	je     0x510cfa
510c76:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
510c7a:	85 ff                	test   %edi,%edi
510c7c:	74 35                	je     0x510cb3
510c7e:	ff 71 60             	push   0x60(%ecx)
510c81:	8d 46 5c             	lea    0x5c(%esi),%eax
510c84:	50                   	push   %eax
510c85:	56                   	push   %esi
510c86:	e8 b5 fb ff ff       	call   0x510840
510c8b:	83 c4 0c             	add    $0xc,%esp
510c8e:	eb 23                	jmp    0x510cb3
510c90:	ff b4 24 90 00 00 00 	push   0x90(%esp)
510c97:	55                   	push   %ebp
510c98:	56                   	push   %esi
510c99:	e8 a2 fb ff ff       	call   0x510840
510c9e:	ff b4 24 a4 00 00 00 	push   0xa4(%esp)
510ca5:	8b 44 24 20          	mov    0x20(%esp),%eax
510ca9:	50                   	push   %eax
510caa:	56                   	push   %esi
510cab:	e8 90 fb ff ff       	call   0x510840
510cb0:	83 c4 18             	add    $0x18,%esp
510cb3:	6a ff                	push   $0xffffffff
510cb5:	6a 00                	push   $0x0
510cb7:	53                   	push   %ebx
510cb8:	6a 00                	push   $0x0
510cba:	6a 00                	push   $0x0
510cbc:	ff 36                	push   (%esi)
510cbe:	e8 2d b9 fc ff       	call   0x4dc5f0
510cc3:	83 c4 18             	add    $0x18,%esp
510cc6:	85 c0                	test   %eax,%eax
510cc8:	74 30                	je     0x510cfa
510cca:	6a ff                	push   $0xffffffff
510ccc:	6a 00                	push   $0x0
510cce:	53                   	push   %ebx
510ccf:	6a 00                	push   $0x0
510cd1:	6a 00                	push   $0x0
510cd3:	ff 76 04             	push   0x4(%esi)
510cd6:	e8 15 b9 fc ff       	call   0x4dc5f0
510cdb:	83 c4 18             	add    $0x18,%esp
510cde:	85 c0                	test   %eax,%eax
510ce0:	74 18                	je     0x510cfa
510ce2:	5f                   	pop    %edi
510ce3:	5e                   	pop    %esi
510ce4:	5d                   	pop    %ebp
510ce5:	b8 01 00 00 00       	mov    $0x1,%eax
510cea:	5b                   	pop    %ebx
510ceb:	8b 4c 24 70          	mov    0x70(%esp),%ecx
510cef:	33 cc                	xor    %esp,%ecx
510cf1:	e8 30 0d 0c 00       	call   0x5d1a26
510cf6:	83 c4 74             	add    $0x74,%esp
510cf9:	c3                   	ret
510cfa:	8b 8c 24 80 00 00 00 	mov    0x80(%esp),%ecx
510d01:	33 c0                	xor    %eax,%eax
510d03:	5f                   	pop    %edi
510d04:	5e                   	pop    %esi
510d05:	5d                   	pop    %ebp
510d06:	5b                   	pop    %ebx
510d07:	33 cc                	xor    %esp,%ecx
510d09:	e8 18 0d 0c 00       	call   0x5d1a26
510d0e:	83 c4 74             	add    $0x74,%esp
510d11:	c3                   	ret
510d12:	cc                   	int3
510d13:	cc                   	int3
510d14:	cc                   	int3
510d15:	cc                   	int3
510d16:	cc                   	int3
510d17:	cc                   	int3
510d18:	cc                   	int3
510d19:	cc                   	int3
510d1a:	cc                   	int3
510d1b:	cc                   	int3
510d1c:	cc                   	int3
510d1d:	cc                   	int3
510d1e:	cc                   	int3
510d1f:	cc                   	int3
510d20:	56                   	push   %esi