<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Unity3D &#8211; Eamon Woortman</title>
	<atom:link href="https://eamonwoortman.github.io/project-tag/unity3d/feed/" rel="self" type="application/rss+xml" />
	<link>https://eamonwoortman.github.io/</link>
	<description></description>
	<lastBuildDate>Sun, 21 May 2023 10:39:18 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.2</generator>
	<item>
		<title>OpenSSL Universal Patcher</title>
		<link>https://eamonwoortman.github.io/project/openssl-universal-patcher/</link>
					<comments>https://eamonwoortman.github.io/project/openssl-universal-patcher/#respond</comments>
		
		<dc:creator><![CDATA[eamon]]></dc:creator>
		<pubDate>Sun, 21 May 2023 10:36:32 +0000</pubDate>
				<guid isPermaLink="false">https://eamonwoortman.github.io/?post_type=project&#038;p=747</guid>

					<description><![CDATA[Besiege on the Xbox PC/Microsoft Store platform crashes for users with specific hardware specifications due to a bug in the Unity 5.4.0f3 Editor and builds made with it, where apps that use OpenSSL (i.e., secure web request) crash. The OpenSSL Universal Patcher is a command-line tool designed to patch 64-bit Windows binary executables that are [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Besiege on the Xbox PC/Microsoft Store platform crashes for users with specific hardware specifications due to a bug in the Unity 5.4.0f3 Editor and builds made with it, where apps that use OpenSSL (i.e., secure web request) crash. </p>



<p>The OpenSSL Universal Patcher is a command-line tool designed to patch 64-bit Windows binary executables that are linked to an older version of OpenSSL (1.1.0) to resolve crashes in 10th and 11th gen Intel CPUs and improve the overall stability and security of the affected binaries.</p>



<p></p>



<p>I wrote a blog post about creating a patch, so check out <a rel="noreferrer noopener" href="https://eamonwoortman.github.io/openssl-binary-patching/" data-type="URL" data-id="https://eamonwoortman.github.io/openssl-binary-patching/" target="_blank">this article</a> if you&#8217;re interested.</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-eamon-woortman wp-block-embed-eamon-woortman"><div class="wp-block-embed__wrapper">
<div class="oceanwp-oembed-wrap clr"><blockquote class="wp-embedded-content" data-secret="HsyB1FpROX"><a href="https://eamonwoortman.github.io/openssl-binary-patching/">OpenSSL binary patching</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" title="&#8220;OpenSSL binary patching&#8221; &#8212; Eamon Woortman" src="https://eamonwoortman.github.io/openssl-binary-patching/embed/#?secret=MU65ZvhvIx#?secret=HsyB1FpROX" data-secret="HsyB1FpROX" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></div>
</div></figure>



<div class="wp-block-kevinbatdorf-code-block-pro" style="font-size:.875rem;line-height:1.25rem"><span role="button" tabindex="0" data-code="# lea     rax, [rsi+40h]
original: 48 8D 46 40
# lea     r8, [rsi+40h]
patched: 4C 8D 46 40
# 4 bytes from the previous instruction
offset: 4
# cmovnz  rsi, rax
original: 48 0F 45 F0
# cmovnz  rsi, r8
patched: 49 0F 45 F0" style="color:#adbac7;display:none" aria-label="Copy" class="code-block-pro-copy-button"><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2"></path></svg></span><pre class="shiki github-dark-dimmed" style="background-color: #22272e" tabindex="0"><code><span class="line"><span style="color: #768390"># lea     rax, [rsi+40h]</span></span>
<span class="line"><span style="color: #DCBDFB">original:</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">48</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">8D</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">46</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">40</span></span>
<span class="line"><span style="color: #768390"># lea     r8, [rsi+40h]</span></span>
<span class="line"><span style="color: #DCBDFB">patched:</span><span style="color: #ADBAC7"> 4C </span><span style="color: #6CB6FF">8D</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">46</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">40</span></span>
<span class="line"><span style="color: #768390"># 4 bytes from the previous instruction</span></span>
<span class="line"><span style="color: #DCBDFB">offset:</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">4</span></span>
<span class="line"><span style="color: #768390"># cmovnz  rsi, rax</span></span>
<span class="line"><span style="color: #DCBDFB">original:</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">48</span><span style="color: #ADBAC7"> 0F </span><span style="color: #6CB6FF">45</span><span style="color: #ADBAC7"> F0</span></span>
<span class="line"><span style="color: #768390"># cmovnz  rsi, r8</span></span>
<span class="line"><span style="color: #DCBDFB">patched:</span><span style="color: #ADBAC7"> </span><span style="color: #6CB6FF">49</span><span style="color: #ADBAC7"> 0F </span><span style="color: #6CB6FF">45</span><span style="color: #ADBAC7"> F0</span></span></code></pre></div>



<p class="has-text-align-center has-text-color has-small-font-size" style="color:#555555">The patch that changes 2 OpenSSL specific instructions.</p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="247" src="https://eamonwoortman.github.io/wp-content/uploads/2023/05/image-4-1024x247.png" alt="" class="wp-image-753" srcset="https://eamonwoortman.github.io/wp-content/uploads/2023/05/image-4-1024x247.png 1024w, https://eamonwoortman.github.io/wp-content/uploads/2023/05/image-4-300x72.png 300w, https://eamonwoortman.github.io/wp-content/uploads/2023/05/image-4-768x185.png 768w, https://eamonwoortman.github.io/wp-content/uploads/2023/05/image-4-1536x371.png 1536w, https://eamonwoortman.github.io/wp-content/uploads/2023/05/image-4-2048x494.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Example usage on Unity Editor, Unreal game and Besiege game executables</figcaption></figure>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://eamonwoortman.github.io/project/openssl-universal-patcher/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Continuous Delivery</title>
		<link>https://eamonwoortman.github.io/project/continuous-delivery/</link>
					<comments>https://eamonwoortman.github.io/project/continuous-delivery/#respond</comments>
		
		<dc:creator><![CDATA[eamon]]></dc:creator>
		<pubDate>Mon, 13 Feb 2017 18:20:00 +0000</pubDate>
				<guid isPermaLink="false">https://eamonwoortman.github.io/?post_type=project&#038;p=580</guid>

					<description><![CDATA[“Continuous Delivery was a project in I was tasked with at Little Chicken Game Company to create a build pipeline for our Unity3D projects. Prior to this point, there were no automated systems which would facilitate game builds.A former colleague had already tried TeamCity and was successful in making builds. After he left I &#160;started [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>“<strong>Continuous Delivery</strong> was a project in I was tasked with at <a href="http://www.littlechicken.nl/en/" target="_blank" rel="noreferrer noopener">Little Chicken Game Company</a> to create a build pipeline for our Unity3D projects.</p>



<p>Prior to this point, there were no automated systems which would facilitate game builds.<br>A former colleague had already tried TeamCity and was successful in making builds. After he left I &nbsp;started over and began utilizing Teamcity for our builds.<br>Teamcity would pull the source code from the CVS&nbsp;and start performing jobs on it. One job would be to build the Unity project using the Unity Editor’s command line. Another job would upload the successful build to an build storage website from which we could download new builds to our devices.<br><br>Before we had Continuous Delivery in place, production builds could take <strong>4-8 hours</strong> depending on the amount of builds steps we manually had to do. With Continous Delivery, a production build is done within <strong>8 minutes</strong>. We also made significantly less bugs and errors during development (thanks to unit-testing) and build creation.</p>



<figure class="wp-block-image"><a href="//eamonwoortman.nl/wp-content/uploads/2017/01/teamcity-logo.png"><img decoding="async" width="300" height="76" src="//eamonwoortman.nl/wp-content/uploads/2017/01/teamcity-logo-300x76.png" alt="" class="wp-image-314" srcset="https://eamonwoortman.github.io/wp-content/uploads/2017/01/teamcity-logo-300x76.png 300w, https://eamonwoortman.github.io/wp-content/uploads/2017/01/teamcity-logo-768x194.png 768w, https://eamonwoortman.github.io/wp-content/uploads/2017/01/teamcity-logo-1024x259.png 1024w, https://eamonwoortman.github.io/wp-content/uploads/2017/01/teamcity-logo-150x38.png 150w, https://eamonwoortman.github.io/wp-content/uploads/2017/01/teamcity-logo.png 1169w" sizes="(max-width: 300px) 100vw, 300px" /></a></figure>
]]></content:encoded>
					
					<wfw:commentRss>https://eamonwoortman.github.io/project/continuous-delivery/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
