// asmtool.py -I ../.. --auto-fix-vertex-halo --fix-unusual-halo-with-inconsistent-w-optimisation --fix-unity-reflection --fix-unity-frustum-world --only-autofixed d73c23816751b327-vs.txt
// 3DMigoto: d73c23816751b327 | Matched 34 variants of 34 shaders: Hidden/UberShader/1928876B629CED0BE0593986976440C7_FB, Hidden/UberShader/1E1B0BC43C94462B9D0F663376606AAB_FB, Hidden/UberShader/2244314FDCE51E3DD4897A0EA8DCFCAE_FB, Hidden/UberShader/2D310C09EA198A1F8AC8718D3FB2AF2C_FB, Hidden/UberShader/3332CD86EE4FF2146BC3527C8768DA1D_FB, Hidden/UberShader/39A00C6B25D60867765A69AF0B77323A_FB, Hidden/UberShader/3E272EB63DDBB6F68A6DA8686C5ADDCF_FB, Hidden/UberShader/4CA06835B1DAACA215B071756651AFD9_FB, Hidden/UberShader/569BC75037264DBFE1848D2BD1A1ACF5_FB, Hidden/UberShader/5E5F554B73DC69828354EA89CB7ECB6C_FB, Hidden/UberShader/6C79ED2E91B5975922C3221934E30494_FB, Hidden/UberShader/7668871A1C1C0D94C9E1C86913C6640D_FB, Hidden/UberShader/7AD930A440BEB978149CBC67B5A92CD1_FB, Hidden/UberShader/7CA634BC5E1D37F0ABF123B255421BDB_FB, Hidden/UberShader/8CBB030F02BF1C54F046DF67041283F0_FB, Hidden/UberShader/92C740699E1FA11A9105DB11635389DC, Hidden/UberShader/96C87CFD0EA38DCDCC19CBB6591A1084_FB, Hidden/UberShader/A6DD7A2E034FD7BAA6E2A82010BD3670_FB, Hidden/UberShader/AB5CE06A09914E87B6458A3A69129054, Hidden/UberShader/AD34703D6680A8637B54DFE0BD2C9243_FB, Hidden/UberShader/B152965416E2168622170099A6935653_FB, Hidden/UberShader/B3574E51CD378265397242DA2F1D1D59_FB, Hidden/UberShader/B589A8F0AA2546E16F81E8349DB97034_FB, Hidden/UberShader/BCCBABF23869BF16493404D57A441FAB_FB, Hidden/UberShader/C117A51981D6412455199BA69515CE8F_FB, Hidden/UberShader/C22A2EF4FAFCA6BCBD7B7C92A6781068, Hidden/UberShader/C4C32254B487E25CAD79C56A1D5F0FE3_FB, Hidden/UberShader/D83657C954292FAF45FBFC3A83A50871_FB, Hidden/UberShader/DF04489E1B0A8ADB437EDD19BBC99890_FB, Hidden/UberShader/E324A184DE5E76C61F45B1B04C243F21_FB, Hidden/UberShader/E75F1BCAC2572D691B25CC3A55C066B0_FB, Hidden/UberShader/EBAD526263B10E9FF53EB36BCFB1E9F2_FB, Hidden/UberShader/F7D6A7335506AC651C9DC7C62F01461D_FB, Hidden/UberShader/FB613B46427773AB2B8F223BC1716656_FB
//
// 000200000:    Unity headers extracted from 1928876B629CED0BE0593986976440C7_FB.shader
// 000100000:    Unity headers extracted from 1E1B0BC43C94462B9D0F663376606AAB_FB.shader
// 000400000:    Unity headers extracted from 2244314FDCE51E3DD4897A0EA8DCFCAE_FB.shader
// 002000000:    Unity headers extracted from 2D310C09EA198A1F8AC8718D3FB2AF2C_FB.shader
// 000004000:    Unity headers extracted from 3332CD86EE4FF2146BC3527C8768DA1D_FB.shader
// 000000040:    Unity headers extracted from 39A00C6B25D60867765A69AF0B77323A_FB.shader
// 000040000:    Unity headers extracted from 3E272EB63DDBB6F68A6DA8686C5ADDCF_FB.shader
// 000000020:    Unity headers extracted from 4CA06835B1DAACA215B071756651AFD9_FB.shader
// 080000000:    Unity headers extracted from 569BC75037264DBFE1848D2BD1A1ACF5_FB.shader
// 040000000:    Unity headers extracted from 5E5F554B73DC69828354EA89CB7ECB6C_FB.shader
// 000000800:    Unity headers extracted from 6C79ED2E91B5975922C3221934E30494_FB.shader
// 004000000:    Unity headers extracted from 7668871A1C1C0D94C9E1C86913C6640D_FB.shader
// 000000080:    Unity headers extracted from 7AD930A440BEB978149CBC67B5A92CD1_FB.shader
// 000800000:    Unity headers extracted from 7CA634BC5E1D37F0ABF123B255421BDB_FB.shader
// 010000000:    Unity headers extracted from 8CBB030F02BF1C54F046DF67041283F0_FB.shader
// 000000001:    Unity headers extracted from 92C740699E1FA11A9105DB11635389DC.shader
// 000080000:    Unity headers extracted from 96C87CFD0EA38DCDCC19CBB6591A1084_FB.shader
// 000002000:    Unity headers extracted from A6DD7A2E034FD7BAA6E2A82010BD3670_FB.shader
// 000000200:    Unity headers extracted from AB5CE06A09914E87B6458A3A69129054.shader
// 020000000:    Unity headers extracted from AD34703D6680A8637B54DFE0BD2C9243_FB.shader
// 000000010:    Unity headers extracted from B152965416E2168622170099A6935653_FB.shader
// 000000008:    Unity headers extracted from B3574E51CD378265397242DA2F1D1D59_FB.shader
// 000000100:    Unity headers extracted from B589A8F0AA2546E16F81E8349DB97034_FB.shader
// 000001000:    Unity headers extracted from BCCBABF23869BF16493404D57A441FAB_FB.shader
// 100000000:    Unity headers extracted from C117A51981D6412455199BA69515CE8F_FB.shader
// 000000002:    Unity headers extracted from C22A2EF4FAFCA6BCBD7B7C92A6781068.shader
// 000010000:    Unity headers extracted from C4C32254B487E25CAD79C56A1D5F0FE3_FB.shader
// 000020000:    Unity headers extracted from D83657C954292FAF45FBFC3A83A50871_FB.shader
// 001000000:    Unity headers extracted from DF04489E1B0A8ADB437EDD19BBC99890_FB.shader
// 200000000:    Unity headers extracted from E324A184DE5E76C61F45B1B04C243F21_FB.shader
// 000000004:    Unity headers extracted from E75F1BCAC2572D691B25CC3A55C066B0_FB.shader
// 008000000:    Unity headers extracted from EBAD526263B10E9FF53EB36BCFB1E9F2_FB.shader
// 000008000:    Unity headers extracted from F7D6A7335506AC651C9DC7C62F01461D_FB.shader
// 000000400:    Unity headers extracted from FB613B46427773AB2B8F223BC1716656_FB.shader
// 000200000:    Shader "Hidden/UberShader/1928876B629CED0BE0593986976440C7_FB" {
// 000100000:    Shader "Hidden/UberShader/1E1B0BC43C94462B9D0F663376606AAB_FB" {
// 000400000:    Shader "Hidden/UberShader/2244314FDCE51E3DD4897A0EA8DCFCAE_FB" {
// 002000000:    Shader "Hidden/UberShader/2D310C09EA198A1F8AC8718D3FB2AF2C_FB" {
// 000004000:    Shader "Hidden/UberShader/3332CD86EE4FF2146BC3527C8768DA1D_FB" {
// 000000040:    Shader "Hidden/UberShader/39A00C6B25D60867765A69AF0B77323A_FB" {
// 000040000:    Shader "Hidden/UberShader/3E272EB63DDBB6F68A6DA8686C5ADDCF_FB" {
// 000000020:    Shader "Hidden/UberShader/4CA06835B1DAACA215B071756651AFD9_FB" {
// 080000000:    Shader "Hidden/UberShader/569BC75037264DBFE1848D2BD1A1ACF5_FB" {
// 040000000:    Shader "Hidden/UberShader/5E5F554B73DC69828354EA89CB7ECB6C_FB" {
// 000000800:    Shader "Hidden/UberShader/6C79ED2E91B5975922C3221934E30494_FB" {
// 004000000:    Shader "Hidden/UberShader/7668871A1C1C0D94C9E1C86913C6640D_FB" {
// 000000080:    Shader "Hidden/UberShader/7AD930A440BEB978149CBC67B5A92CD1_FB" {
// 000800000:    Shader "Hidden/UberShader/7CA634BC5E1D37F0ABF123B255421BDB_FB" {
// 010000000:    Shader "Hidden/UberShader/8CBB030F02BF1C54F046DF67041283F0_FB" {
// 000000001:    Shader "Hidden/UberShader/92C740699E1FA11A9105DB11635389DC" {
// 000080000:    Shader "Hidden/UberShader/96C87CFD0EA38DCDCC19CBB6591A1084_FB" {
// 000002000:    Shader "Hidden/UberShader/A6DD7A2E034FD7BAA6E2A82010BD3670_FB" {
// 000000200:    Shader "Hidden/UberShader/AB5CE06A09914E87B6458A3A69129054" {
// 020000000:    Shader "Hidden/UberShader/AD34703D6680A8637B54DFE0BD2C9243_FB" {
// 000000010:    Shader "Hidden/UberShader/B152965416E2168622170099A6935653_FB" {
// 000000008:    Shader "Hidden/UberShader/B3574E51CD378265397242DA2F1D1D59_FB" {
// 000000100:    Shader "Hidden/UberShader/B589A8F0AA2546E16F81E8349DB97034_FB" {
// 000001000:    Shader "Hidden/UberShader/BCCBABF23869BF16493404D57A441FAB_FB" {
// 100000000:    Shader "Hidden/UberShader/C117A51981D6412455199BA69515CE8F_FB" {
// 000000002:    Shader "Hidden/UberShader/C22A2EF4FAFCA6BCBD7B7C92A6781068" {
// 000010000:    Shader "Hidden/UberShader/C4C32254B487E25CAD79C56A1D5F0FE3_FB" {
// 000020000:    Shader "Hidden/UberShader/D83657C954292FAF45FBFC3A83A50871_FB" {
// 001000000:    Shader "Hidden/UberShader/DF04489E1B0A8ADB437EDD19BBC99890_FB" {
// 200000000:    Shader "Hidden/UberShader/E324A184DE5E76C61F45B1B04C243F21_FB" {
// 000000004:    Shader "Hidden/UberShader/E75F1BCAC2572D691B25CC3A55C066B0_FB" {
// 008000000:    Shader "Hidden/UberShader/EBAD526263B10E9FF53EB36BCFB1E9F2_FB" {
// 000008000:    Shader "Hidden/UberShader/F7D6A7335506AC651C9DC7C62F01461D_FB" {
// 000000400:    Shader "Hidden/UberShader/FB613B46427773AB2B8F223BC1716656_FB" {
//                 Properties {
//                  _PivotSettings ("Pivot settings", Vector) = (0,0,0,0)
//                  _UberShaderColorMask ("Uber color mask", Float) = 15
//                  _UberShaderBlendModeDst ("Uber shader blend  mode dst", Float) = 10
// 000504000:       _AdditiveLayerColor ("Additive Layer Color", Color) = (1,1,1,1)
// 004008000:       _AdditiveLayerExtraColor ("Additive Layer Extra Color", Color) = (1,1,1,1)
// 004008000:       _AdditiveLayerExtraMaskTexture ("Additive Layer Extra Mask Texture", 2D) = "white" { }
// 000504000:       _AdditiveLayerMaskTexture ("Additive Layer Mask Texture", 2D) = "white" { }
// 004008000:       _AdditiveLayerExtraMaskTexture_US_ST ("Additive Layer Extra Mask Texture_US_ST", Vector) = (0,0,0,0)
// 000504000:       _AdditiveLayerMaskTexture_US_ST ("Additive Layer Mask Texture_US_ST", Vector) = (0,0,0,0)
// 004008000:       _AdditiveLayerExtraTexture ("Additive Layer Extra Texture", 2D) = "white" { }
// 000504000:       _AdditiveLayerTexture ("Additive Layer Texture", 2D) = "white" { }
// 004008000:       _AdditiveLayerExtraTexture_US_ST ("Additive Layer Extra Texture_US_ST", Vector) = (0,0,0,0)
// 000504000:       _AdditiveLayerTexture_US_ST ("Additive Layer Texture_US_ST", Vector) = (0,0,0,0)
//                  _Color ("Color", Color) = (1,1,1,1)
//                  _DepthFlipScreen ("Depth Flip Screen", Vector) = (0,0,0,0)
//                  _InteractionParams2Punch ("Interaction Params2 Punch", Vector) = (0,0,0,0)
//                  _InteractionParamsPunch ("Interaction Params Punch", Vector) = (0,0,0,0)
//                  _InteractionPosPunch ("Interaction Pos Punch", Vector) = (0,0,0,0)
//                  _InteractionPunchDistortMask ("Interaction Punch Distort Mask", 2D) = "white" { }
//                  _InteractionPunchDistortMask_US_ST ("Interaction Punch Distort Mask_US_ST", Vector) = (0,0,0,0)
//                  _InteractionSettingsPunch ("Interaction Settings Punch", Vector) = (0,0,0,0)
//                  _InteractionVelocityPunch ("Interaction Velocity Punch", Vector) = (0,0,0,0)
//                  _MainTex ("Main Tex", 2D) = "white" { }
//                  _MainTex_US_ATLAS ("Main Tex_US_ATLAS", Vector) = (0,0,1,1)
//                  _MainTex_US_ATLAS_ST ("Main Tex_US_ATLAS_ST", Vector) = (0,0,1,1)
//                  _MainTex_US_ST ("Main Tex_US_ST", Vector) = (0,0,0,0)
// 3638a018f:       _MultiplyLayerColor ("Multiply Layer Color", Color) = (1,1,1,1)
// 090253e40:       _MultiplyLayerExtraColor ("Multiply Layer Extra Color", Color) = (1,1,1,1)
// 008000030:       _MultiplyLayerThirdColor ("Multiply Layer Third Color", Color) = (1,1,1,1)
// 090253e40:       _MultiplyLayerExtraMaskTexture ("Multiply Layer Extra Mask Texture", 2D) = "white" { }
// 3638a018f:       _MultiplyLayerMaskTexture ("Multiply Layer Mask Texture", 2D) = "white" { }
// 008000030:       _MultiplyLayerThirdMaskTexture ("Multiply Layer Third Mask Texture", 2D) = "white" { }
// 090253e40:       _MultiplyLayerExtraMaskTexture_US_ST ("Multiply Layer Extra Mask Texture_US_ST", Vector) = (0,0,0,0)
// 3638a018f:       _MultiplyLayerMaskTexture_US_ST ("Multiply Layer Mask Texture_US_ST", Vector) = (0,0,0,0)
// 008000030:       _MultiplyLayerThirdMaskTexture_US_ST ("Multiply Layer Third Mask Texture_US_ST", Vector) = (0,0,0,0)
// 090253e40:       _MultiplyLayerExtraTexture ("Multiply Layer Extra Texture", 2D) = "white" { }
// 3638a018f:       _MultiplyLayerTexture ("Multiply Layer Texture", 2D) = "white" { }
// 008000030:       _MultiplyLayerThirdTexture ("Multiply Layer Third Texture", 2D) = "white" { }
// 090253e40:       _MultiplyLayerExtraTexture_US_ST ("Multiply Layer Extra Texture_US_ST", Vector) = (0,0,0,0)
// 3638a018f:       _MultiplyLayerTexture_US_ST ("Multiply Layer Texture_US_ST", Vector) = (0,0,0,0)
// 008000030:       _MultiplyLayerThirdTexture_US_ST ("Multiply Layer Third Texture_US_ST", Vector) = (0,0,0,0)
//                  _Screen ("Screen", Vector) = (0,0,0,0)
//                  _ScreenMask ("Screen Mask", Vector) = (0,0,0,0)
//                 }
//                 SubShader 1/1 {
//                   Tags { "IGNOREPROJECTOR"="true" "RenderType"="TransparentCutout" "UberShaderShader"="true" }
//                   Pass 1/1 {
//                     Tags { "IGNOREPROJECTOR"="true" "RenderType"="TransparentCutout" "UberShaderShader"="true" }
//                     ZTest Less
//                     ZWrite Off
//                     Cull Off
// 19feb57fd:          Blend SrcAlpha [_UberShaderBlendModeDst], One OneMinusSrcAlpha
// 26014a802:          Blend SrcAlpha [_UberShaderBlendModeDst], Zero OneMinusSrcAlpha
//                     ColorMask [_UberShaderColorMask]
// 021000000:          GpuProgramID 12991
// 000000040:          GpuProgramID 13864
// 000820008:          GpuProgramID 16831
// 000000100:          GpuProgramID 19113
// 040000004:          GpuProgramID 19863
// 080200000:          GpuProgramID 22354
// 004008000:          GpuProgramID 28472
// 000000200:          GpuProgramID 29667
// 000104000:          GpuProgramID 31121
// 000010000:          GpuProgramID 32275
// 010002000:          GpuProgramID 35864
// 300080000:          GpuProgramID 36745
// 008000000:          GpuProgramID 37455
// 000000020:          GpuProgramID 45054
// 000040400:          GpuProgramID 52873
// 002000000:          GpuProgramID 52963
// 000000010:          GpuProgramID 54334
// 000400000:          GpuProgramID 57127
// 000000080:          GpuProgramID 6354
// 000000003:          GpuProgramID 63994
// 000001800:          GpuProgramID 8950
//                     Program "vp" {
//                       SubProgram "d3d11 " {
//                         GpuProgramIndex 1
//                       }
//                     }
//                   }
//                 }
//               }
//
// 000200000: Unity 5.3 headers extracted from 1928876B629CED0BE0593986976440C7_FB.shader.decompressed:
// 000100000: Unity 5.3 headers extracted from 1E1B0BC43C94462B9D0F663376606AAB_FB.shader.decompressed:
// 000400000: Unity 5.3 headers extracted from 2244314FDCE51E3DD4897A0EA8DCFCAE_FB.shader.decompressed:
// 002000000: Unity 5.3 headers extracted from 2D310C09EA198A1F8AC8718D3FB2AF2C_FB.shader.decompressed:
// 000004000: Unity 5.3 headers extracted from 3332CD86EE4FF2146BC3527C8768DA1D_FB.shader.decompressed:
// 000000040: Unity 5.3 headers extracted from 39A00C6B25D60867765A69AF0B77323A_FB.shader.decompressed:
// 000040000: Unity 5.3 headers extracted from 3E272EB63DDBB6F68A6DA8686C5ADDCF_FB.shader.decompressed:
// 000000020: Unity 5.3 headers extracted from 4CA06835B1DAACA215B071756651AFD9_FB.shader.decompressed:
// 080000000: Unity 5.3 headers extracted from 569BC75037264DBFE1848D2BD1A1ACF5_FB.shader.decompressed:
// 040000000: Unity 5.3 headers extracted from 5E5F554B73DC69828354EA89CB7ECB6C_FB.shader.decompressed:
// 000000800: Unity 5.3 headers extracted from 6C79ED2E91B5975922C3221934E30494_FB.shader.decompressed:
// 004000000: Unity 5.3 headers extracted from 7668871A1C1C0D94C9E1C86913C6640D_FB.shader.decompressed:
// 000000080: Unity 5.3 headers extracted from 7AD930A440BEB978149CBC67B5A92CD1_FB.shader.decompressed:
// 000800000: Unity 5.3 headers extracted from 7CA634BC5E1D37F0ABF123B255421BDB_FB.shader.decompressed:
// 010000000: Unity 5.3 headers extracted from 8CBB030F02BF1C54F046DF67041283F0_FB.shader.decompressed:
// 000000001: Unity 5.3 headers extracted from 92C740699E1FA11A9105DB11635389DC.shader.decompressed:
// 000080000: Unity 5.3 headers extracted from 96C87CFD0EA38DCDCC19CBB6591A1084_FB.shader.decompressed:
// 000002000: Unity 5.3 headers extracted from A6DD7A2E034FD7BAA6E2A82010BD3670_FB.shader.decompressed:
// 000000200: Unity 5.3 headers extracted from AB5CE06A09914E87B6458A3A69129054.shader.decompressed:
// 020000000: Unity 5.3 headers extracted from AD34703D6680A8637B54DFE0BD2C9243_FB.shader.decompressed:
// 000000010: Unity 5.3 headers extracted from B152965416E2168622170099A6935653_FB.shader.decompressed:
// 000000008: Unity 5.3 headers extracted from B3574E51CD378265397242DA2F1D1D59_FB.shader.decompressed:
// 000000100: Unity 5.3 headers extracted from B589A8F0AA2546E16F81E8349DB97034_FB.shader.decompressed:
// 000001000: Unity 5.3 headers extracted from BCCBABF23869BF16493404D57A441FAB_FB.shader.decompressed:
// 100000000: Unity 5.3 headers extracted from C117A51981D6412455199BA69515CE8F_FB.shader.decompressed:
// 000000002: Unity 5.3 headers extracted from C22A2EF4FAFCA6BCBD7B7C92A6781068.shader.decompressed:
// 000010000: Unity 5.3 headers extracted from C4C32254B487E25CAD79C56A1D5F0FE3_FB.shader.decompressed:
// 000020000: Unity 5.3 headers extracted from D83657C954292FAF45FBFC3A83A50871_FB.shader.decompressed:
// 001000000: Unity 5.3 headers extracted from DF04489E1B0A8ADB437EDD19BBC99890_FB.shader.decompressed:
// 200000000: Unity 5.3 headers extracted from E324A184DE5E76C61F45B1B04C243F21_FB.shader.decompressed:
// 000000004: Unity 5.3 headers extracted from E75F1BCAC2572D691B25CC3A55C066B0_FB.shader.decompressed:
// 008000000: Unity 5.3 headers extracted from EBAD526263B10E9FF53EB36BCFB1E9F2_FB.shader.decompressed:
// 000008000: Unity 5.3 headers extracted from F7D6A7335506AC651C9DC7C62F01461D_FB.shader.decompressed:
// 000000400: Unity 5.3 headers extracted from FB613B46427773AB2B8F223BC1716656_FB.shader.decompressed:
//              API d3d11
//              Shader model vs_4_0
//              undeciphered1: 201509030 120 0 0
//              undeciphered2: 1 3 3 3 0
//              undeciphered3: 13 3 0 0 2 1 3 4
//              ConstBuffer "$Globals" 608
//              Float 0 [_FogGradientRange]
//              Float 112 [_GameTime]
//              Float 120 [_GlobalDebugScale]
//              Vector 128 [_DepthFlipScreen]
//              Vector 288 [_MainTex_ST]
//              Vector 304 [_MainTex_US_ST]
//              Vector 368 [_InteractionCurveSettingsDefault]
//              Vector 400 [_InteractionPunchDistortMask_ST]
//              Vector 416 [_InteractionPunchDistortMask_US_ST]
//              Vector 432 [_InteractionParamsPunch]
//              Vector 448 [_InteractionParams2Punch]
//              Vector 464 [_InteractionPosPunch]
//              Vector 480 [_InteractionVelocityPunch]
//              Vector 496 [_InteractionSettingsPunch]
//              Vector 512 [_PivotSettings]
// 004008000:   Vector 528 [_AdditiveLayerExtraTexture_ST]
// 000504000:   Vector 528 [_AdditiveLayerTexture_ST]
// 090253e40:   Vector 528 [_MultiplyLayerExtraTexture_ST]
// 3638a018f:   Vector 528 [_MultiplyLayerTexture_ST]
// 008000030:   Vector 528 [_MultiplyLayerThirdTexture_ST]
// 004008000:   Vector 544 [_AdditiveLayerExtraTexture_US_ST]
// 000504000:   Vector 544 [_AdditiveLayerTexture_US_ST]
// 090253e40:   Vector 544 [_MultiplyLayerExtraTexture_US_ST]
// 3638a018f:   Vector 544 [_MultiplyLayerTexture_US_ST]
// 008000030:   Vector 544 [_MultiplyLayerThirdTexture_US_ST]
// 004008000:   Vector 560 [_AdditiveLayerExtraMaskTexture_ST]
// 000504000:   Vector 560 [_AdditiveLayerMaskTexture_ST]
// 090253e40:   Vector 560 [_MultiplyLayerExtraMaskTexture_ST]
// 3638a018f:   Vector 560 [_MultiplyLayerMaskTexture_ST]
// 008000030:   Vector 560 [_MultiplyLayerThirdMaskTexture_ST]
// 004008000:   Vector 576 [_AdditiveLayerExtraMaskTexture_US_ST]
// 000504000:   Vector 576 [_AdditiveLayerMaskTexture_US_ST]
// 090253e40:   Vector 576 [_MultiplyLayerExtraMaskTexture_US_ST]
// 3638a018f:   Vector 576 [_MultiplyLayerMaskTexture_US_ST]
// 008000030:   Vector 576 [_MultiplyLayerThirdMaskTexture_US_ST]
//              ConstBuffer "UnityPerDraw" 352
//              Matrix 0 [glstate_matrix_mvp]
//              Matrix 192 [_Object2World]
//              ConstBuffer "UnityPerFrame" 256
//              Vector 64 [glstate_lightmodel_ambient]
//              SetTexture 0 [_InteractionPunchDistortMask] 2D 2
//              SetTexture 1 [_InteractionCurveDefault] 2D 1
//              SetTexture 2 [_FogGradientTex] 2D 0
//              BindCB "$Globals" 0
//              BindCB "UnityPerDraw" 1
//              BindCB "UnityPerFrame" 2
//
// Headers extracted with DarkStarSword's extract_unity53_shaders.py
// https://github.com/DarkStarSword/3d-fixes

//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.2 on Mon Jul 23 23:47:40 2018
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION                 0   xyzw        0     NONE   float   xyzw
// TEXCOORD                 0   xyzw        1     NONE   float   xyzw
// COLOR                    0   xyzw        2     NONE   float   xy
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float   xyzw
// TEXCOORD                 0   xyzw        1     NONE   float   xyzw
// TEXCOORD                 1   xyzw        2     NONE   float   xyzw
// TEXCOORD                 2   xyzw        3     NONE   float   xyzw
// TEXCOORD                 3   xyzw        4     NONE   float   xyzw
//
vs_4_0
dcl_constantbuffer cb0[37], immediateIndexed
dcl_constantbuffer cb1[16], immediateIndexed
dcl_constantbuffer cb2[5], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_sampler s2, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t1
dcl_resource_texture2d (float,float,float,float) t2
dcl_input v0.xyzw
dcl_input v1.xyzw
dcl_input v2.xy
dcl_output_siv o0.xyzw, position
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_output o3.xyzw
dcl_output o4.xyzw
dcl_temps 5

// 3DMigoto StereoParams:
dcl_resource_texture2d (float,float,float,float) t125

ld_indexable(texture2d)(float,float,float,float) r4.xyzw, l(0, 0, 0, 0), t125.xyzw

mul r0.xyz, v0.yyyy, cb1[13].xyzx
mad r0.xyz, cb1[12].xyzx, v0.xxxx, r0.xyzx
mad r0.xyz, cb1[14].xyzx, v0.zzzz, r0.xyzx
mad r0.xyz, cb1[15].xyzx, v0.wwww, r0.xyzx
add r1.xyzw, r0.xyxy, -cb0[29].xyzw
div r0.x, r0.z, cb0[0].x
dp2 r0.z, r1.xyxx, r1.xyxx
sqrt r0.z, r0.z
add r0.z, r0.z, -cb0[28].z
max r0.z, r0.z, l(0.000000)
add r0.z, r0.z, -cb0[31].z
div r0.w, l(1.000000, 1.000000, 1.000000, 1.000000), -cb0[31].z
mul_sat r0.z, r0.w, r0.z
mad r2.x, r0.z, l(-2.000000), l(3.000000)
mul r0.z, r0.z, r0.z
mul r0.z, r0.z, r2.x
mul r2.xyzw, cb0[31].xyxy, l(0.040000, 0.040000, 0.040000, 0.040000)
mul r2.xyzw, r1.xyzw, r2.xyzw
dp2 r1.x, r1.zwzz, r1.zwzz
sqrt r1.x, r1.x
add r1.x, r1.x, -cb0[28].z
max r1.x, r1.x, l(0.000000)
add r1.x, r1.x, -cb0[31].z
mul_sat r0.w, r0.w, r1.x
dp2 r1.x, r2.xyxx, r2.xyxx
dp2 r1.y, r2.zwzz, r2.zwzz
sqrt r1.xy, r1.xyxx
add r1.xy, r1.xyxx, -cb0[28].zzzz
max r1.xy, r1.xyxx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r1.z, v2.y, l(-0.500000)
mad r1.x, r1.z, l(0.500000), r1.x
mad r1.y, r1.z, l(0.500000), r1.y
add r1.zw, cb0[7].xxxx, -cb0[27].xxxz
add r1.xy, -r1.xyxx, r1.zwzz
mul r1.xy, r1.xyxx, cb0[31].wwww
mul r2.xz, r1.xxyx, cb0[23].yyyy
mov r2.yw, l(0,0,0,0)
sample_l r1.xyzw, r2.xyxx, t1.xyzw, s1, l(0.000000)
sample_l r2.xyzw, r2.zwzz, t1.xyzw, s1, l(0.000000)
mad r1.x, r2.w, l(2.000000), l(-1.000000)
mad r1.y, r1.w, l(2.000000), l(-1.000000)
mul r1.xy, r1.xyxx, cb0[23].xxxx
add r1.z, -v2.x, l(1.000000)
mad r1.w, cb0[26].w, cb0[7].x, cb0[26].z
sincos r2.x, r3.x, r1.w
add r2.yz, v1.yyxy, l(0.000000, -0.500000, -0.500000, 0.000000)
mul r2.xw, r2.xxxx, r2.yyyz
mad r1.w, r2.z, r3.x, -r2.x
mad r2.x, r2.y, r3.x, r2.w
add r2.x, r2.x, l(0.500000)
mad r2.x, r2.x, cb0[25].y, cb0[25].w
mad r3.y, cb0[26].y, cb0[7].x, r2.x
add r1.w, r1.w, l(0.500000)
mad r1.w, r1.w, cb0[25].x, cb0[25].z
mad r3.x, cb0[26].x, cb0[7].x, r1.w
sample_l r3.xyzw, r3.xyxx, t0.xyzw, s2, l(0.000000)
mul r1.z, r1.z, r3.x
mul r1.xy, r1.zzzz, r1.xyxx
mul r0.z, r0.z, r1.y
mad r1.y, r0.w, l(-2.000000), l(3.000000)
mul r0.w, r0.w, r0.w
mul r0.w, r0.w, r1.y
mul r0.w, r0.w, r1.x
mul r0.zw, r0.zzzw, cb0[27].yyyw
add r1.xyzw, cb0[30].xyzw, l(0.000100, 0.000100, 0.000100, 0.000100)
dp2 r2.x, r1.zwzz, r1.zwzz
rsq r2.x, r2.x
mul r1.zw, r1.zzzw, r2.xxxx
mul r1.zw, r0.wwww, r1.zzzw
dp2 r0.w, r1.xyxx, r1.xyxx
rsq r0.w, r0.w
mul r1.xy, r0.wwww, r1.xyxx
mad r0.zw, r0.zzzz, r1.xxxy, r1.zzzw
mad r0.zw, v0.xxxy, cb0[32].xxxy, r0.zzzw
div r0.zw, r0.zzzw, cb0[32].xxxy
add r1.x, cb0[7].z, l(1.000000)
mul r0.zw, r0.zzzw, r1.xxxx
mul r1.xyz, r0.wwww, cb1[1].xywx
mad r1.xyz, cb1[0].xywx, r0.zzzz, r1.xyzx
mad r1.xyz, cb1[2].xywx, v0.zzzz, r1.xyzx
mad r1.xyw, cb1[3].xyxw, v0.wwww, r1.xyxz
add r0.z, cb0[8].x, l(200.000000)

// Relocated to here with asmtool.py
mov o0.xyzw, r1.xyzw

// Automatic vertex shader halo fix inserted with DarkStarSword's asmtool.py:
// asmtool.py -I ../.. --auto-fix-vertex-halo --fix-unusual-halo-with-inconsistent-w-optimisation --fix-unity-reflection --fix-unity-frustum-world --only-autofixed d73c23816751b327-vs.txt
ne r4.w, r1.w, l(1.0)
if_nz r4.w
  add r4.w, r1.w, -r4.y
  mad r1.x, r4.w, r4.x, r1.x
endif

mul r0.z, r1.w, r0.z
mul r1.z, r0.z, l(0.000833333354)

// mov o0.xyzw, r1.xyzw // Relocated from here with asmtool.py
// Inserted by asmtool.py
mov o0.z, r1.z

dp4 r0.z, r1.xyzw, r1.xyzw
sqrt r0.z, r0.z
mov o1.zw, v1.zzzw
mad r0.w, cb0[19].w, cb0[7].x, cb0[19].z
sincos r1.x, r2.x, r0.w
mul r1.xy, r1.xxxx, r2.yzyy
mad r0.w, r2.z, r2.x, -r1.x
mad r1.x, r2.y, r2.x, r1.y
add r1.x, r1.x, l(0.500000)
mad r1.x, r1.x, cb0[18].y, cb0[18].w
mad o1.y, cb0[19].y, cb0[7].x, r1.x
add r0.xw, r0.xxxw, l(0.500000, 0.000000, 0.000000, 0.500000)
mad r0.w, r0.w, cb0[18].x, cb0[18].z
mad o1.x, cb0[19].x, cb0[7].x, r0.w
mad r0.w, cb0[34].w, cb0[7].x, cb0[34].z
sincos r1.x, r2.x, r0.w
mul r1.xy, r1.xxxx, r2.yzyy
mad r0.w, r2.z, r2.x, -r1.x
mad r1.x, r2.y, r2.x, r1.y
add r1.x, r1.x, l(0.500000)
mad r1.x, r1.x, cb0[33].y, cb0[33].w
mad o2.y, cb0[34].y, cb0[7].x, r1.x
add r0.w, r0.w, l(0.500000)
mad r0.w, r0.w, cb0[33].x, cb0[33].z
mad o2.x, cb0[34].x, cb0[7].x, r0.w
mad r0.w, cb0[36].w, cb0[7].x, cb0[36].z
sincos r1.x, r2.x, r0.w
mul r1.xy, r1.xxxx, r2.yzyy
mad r0.w, r2.z, r2.x, -r1.x
mad r1.x, r2.y, r2.x, r1.y
add r1.x, r1.x, l(0.500000)
mad r1.x, r1.x, cb0[35].y, cb0[35].w
mad o2.w, cb0[36].y, cb0[7].x, r1.x
add r0.w, r0.w, l(0.500000)
mad r0.w, r0.w, cb0[35].x, cb0[35].z
mad o2.z, cb0[36].x, cb0[7].x, r0.w
mul r1.xy, cb2[4].wwww, l(0.200000, 4.000000, 0.000000, 0.000000)
round_ni r0.w, r1.y
add r0.w, -r0.w, l(1.000000)
mul r1.x, r0.w, r1.x
mul r0.z, r0.z, r1.x
exp r0.z, -|r0.z|
mad o3.w, -r0.z, r0.z, l(1.000000)
mul o3.xyz, cb2[4].xyzx, l(4.000000, 4.000000, 4.000000, 0.000000)
mov r0.y, l(0)
sample_l r1.xyzw, r0.xyxx, t2.xyzw, s0, l(0.000000)
mul o4.w, r0.w, r1.w
mov o4.xyz, r1.xyzx
ret
// Approximately 0 instruction slots used