636 lines
16 KiB
NASM
636 lines
16 KiB
NASM
; Listing generated by Microsoft (R) Optimizing Compiler Version 18.00.21005.1
|
|
|
|
TITLE E:\blu-flame.org\ev14-4k\project\main.compress.cpp
|
|
.686P
|
|
.XMM
|
|
include listing.inc
|
|
.model flat
|
|
|
|
INCLUDELIB LIBCMT
|
|
INCLUDELIB OLDNAMES
|
|
|
|
PUBLIC ?mark_fs_0@@3PADA ; mark_fs_0
|
|
PUBLIC ?_fltused@@3HA ; _fltused
|
|
PUBLIC ?g_SceneLength@@3PAHA ; g_SceneLength
|
|
PUBLIC ?g_SceneShader@@3PAHA ; g_SceneShader
|
|
PUBLIC ??_C@_0BJ@MMLKJOPF@glCreateShaderProgramEXT?$AA@ ; `string'
|
|
PUBLIC ??_C@_0N@ICBDHBI@glUseProgram?$AA@ ; `string'
|
|
PUBLIC ??_C@_0M@MNEJMNAO@glUniform4f?$AA@ ; `string'
|
|
PUBLIC ?WaveFMT@@3UtWAVEFORMATEX@@A ; WaveFMT
|
|
PUBLIC ?WaveHDR@@3Uwavehdr_tag@@A ; WaveHDR
|
|
PUBLIC ?MMTime@@3Ummtime_tag@@A ; MMTime
|
|
synthnothing SEGMENT
|
|
_lpSoundBuffer DD 0bebc00H DUP (?)
|
|
synthnothing ENDS
|
|
wavehdr SEGMENT
|
|
?WaveHDR@@3Uwavehdr_tag@@A DD FLAT:_lpSoundBuffer ; WaveHDR
|
|
DD 02faf000H
|
|
DD 00H
|
|
DD 00H
|
|
DD 02H
|
|
DD 00H
|
|
DD 00H
|
|
DD 00H
|
|
wavehdr ENDS
|
|
wavefmt SEGMENT
|
|
?WaveFMT@@3UtWAVEFORMATEX@@A DW 03H ; WaveFMT
|
|
DW 02H
|
|
DD 0ac44H
|
|
DD 056220H
|
|
DW 08H
|
|
DW 020H
|
|
DW 00H
|
|
wavefmt ENDS
|
|
; COMDAT ??_C@_0M@MNEJMNAO@glUniform4f?$AA@
|
|
CONST SEGMENT
|
|
??_C@_0M@MNEJMNAO@glUniform4f?$AA@ DB 'glUniform4f', 00H ; `string'
|
|
CONST ENDS
|
|
glUniform4f SEGMENT
|
|
_sglUniform4f DD FLAT:??_C@_0M@MNEJMNAO@glUniform4f?$AA@
|
|
glUniform4f ENDS
|
|
; COMDAT ??_C@_0N@ICBDHBI@glUseProgram?$AA@
|
|
CONST SEGMENT
|
|
??_C@_0N@ICBDHBI@glUseProgram?$AA@ DB 'glUseProgram', 00H ; `string'
|
|
CONST ENDS
|
|
glUseProgram SEGMENT
|
|
_sglUseProgram DD FLAT:??_C@_0N@ICBDHBI@glUseProgram?$AA@
|
|
glUseProgram ENDS
|
|
; COMDAT ??_C@_0BJ@MMLKJOPF@glCreateShaderProgramEXT?$AA@
|
|
CONST SEGMENT
|
|
??_C@_0BJ@MMLKJOPF@glCreateShaderProgramEXT?$AA@ DB 'glCreateShaderProgra'
|
|
DB 'mEXT', 00H ; `string'
|
|
CONST ENDS
|
|
glCreateShaderProgramEXT SEGMENT
|
|
_sglCreateShaderProgramEXT DD FLAT:??_C@_0BJ@MMLKJOPF@glCreateShaderProgramEXT?$AA@
|
|
glCreateShaderProgramEXT ENDS
|
|
g_SceneShader SEGMENT
|
|
?g_SceneShader@@3PAHA DD 00H ; g_SceneShader
|
|
DD 00H
|
|
DD 00H
|
|
DD 00H
|
|
DD 00H
|
|
DD 00H
|
|
DD 00H
|
|
DD 00H
|
|
DD 01H
|
|
DD 01H
|
|
DD 01H
|
|
DD 01H
|
|
DD 02H
|
|
DD 02H
|
|
DD 02H
|
|
DD 02H
|
|
g_SceneShader ENDS
|
|
g_SceneLength SEGMENT
|
|
?g_SceneLength@@3PAHA DD 010H ; g_SceneLength
|
|
DD 010H
|
|
DD 010H
|
|
DD 08H
|
|
DD 08H
|
|
DD 08H
|
|
DD 08H
|
|
DD 010H
|
|
DD 08H
|
|
DD 08H
|
|
DD 010H
|
|
DD 010H
|
|
DD 010H
|
|
DD 010H
|
|
DD 010H
|
|
DD 010H
|
|
DD 080000000H
|
|
g_SceneLength ENDS
|
|
fltused SEGMENT
|
|
?_fltused@@3HA DD 01H ; _fltused
|
|
_gCurScene DD 00H
|
|
_gCurSceneStart DD 00H
|
|
_lf_Time DD 000000000r ; 0
|
|
fltused ENDS
|
|
dmScreenSettings SEGMENT
|
|
_dmScreenSettings DB 00H
|
|
ORG $+31
|
|
DW 00H
|
|
DW 00H
|
|
DW 09cH
|
|
DW 00H
|
|
DD 0180000H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DW 00H
|
|
DB 00H
|
|
ORG $+31
|
|
DW 00H
|
|
DD 00H
|
|
DD 0500H
|
|
DD 0400H
|
|
ORG $+40
|
|
dmScreenSettings ENDS
|
|
CONST SEGMENT
|
|
_pfd DW 00H
|
|
DW 01H
|
|
DD 021H
|
|
DB 00H
|
|
DB 020H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 00H
|
|
DB 08H
|
|
ORG $+17
|
|
CONST ENDS
|
|
aspect SEGMENT
|
|
_aspect DD 03e000000r ; 0.125
|
|
aspect ENDS
|
|
mmtime SEGMENT
|
|
?mark_fs_0@@3PADA DB 'const int z=0;uniform vec4 v;float f,y,x,e,m,s=6.28'
|
|
DB '319;int i;vec2 r;vec3 l,c=vec3(0.),w=vec3(0.),d=vec3(8.,4.,2.'
|
|
DB '),t=vec3(.7,1.,1.2);vec4 n;vec2 h(vec2 y,float i){return cos('
|
|
DB 'i)*y+sin(i)*vec2(-y.y,y.x);}float h(inout vec2 z,float v,floa'
|
|
DB 't y){float e=atan(z.y,z.x),x=mod(e,y)-y*.5;z=length(z)*vec2(c'
|
|
DB 'os(x),sin(x));z.x-=v;return e-x;}void p(inout float z,float y'
|
|
DB '){z=mod(z-y*.5,y)-y*.5;}float o(float z,float y){return floor'
|
|
DB '((z-y*.5)/y);}float a(vec3 z,float y){return length(vec2(leng'
|
|
DB 'th(z.xz)-y,z.y));}float a(in vec3 z,in vec3 y,float x){return'
|
|
DB ' length(max(abs(z)-y+vec3(x),0.))-x;}float a(float z,float y,'
|
|
DB 'float x,float i){return sin(z+y+i*sin(z+x));}float o(float y,'
|
|
DB 'float z,float x){float m=clamp(.5+.5*(z-y)/x,0.,1.);return mi'
|
|
DB 'x(z,y,m)-x*m*(1.-m);}float a(vec3 v){if(z==0){float m=length('
|
|
DB 'v)-24.-a(.3*v.x,8.*y,.3*v.y,sin(.3*v.z));if(e==2.)return 999.'
|
|
DB ';else if(e<4.)return m;else return v.x+=sin(4.*x+.2*v.y),v.z+'
|
|
DB '=sin(.3*v.y),.8*o(max(v.y,length(v.xz)-4.-a(0.,.2*v.y,.5*v.x,'
|
|
DB '.3*v.z)+11.*smoothstep(11.,-11.,v.y+222.*x)),m,11.);}else if('
|
|
DB 'z==1){vec3 i=v;i.x+=sin(4.*y+.2*i.y);i.z+=sin(.3*i.y);v.y-=11'
|
|
DB '.-6.*smoothstep(-22.,0.,v.x);p(v.y,88.);float m=v.x;v.x-=77.*'
|
|
DB 'y;v.yz=h(v.yz,cos(.3*m)+4.*y*cos(77.*o(v.x,6.)));p(v.x,6.);v.'
|
|
DB 'y-=1.;return o(max(length(v)-1.,m),length(i.xz)-6.-a(0.,.2*i.'
|
|
DB 'y,.5*i.x,.3*i.z),4.);}else{float i=v.x;v.x-=77.*smoothstep(0.'
|
|
DB ',.6,x);i=a(16.*y,.3*v.y,.3*v.z,sin(.3*v.x))*smoothstep(34.,33'
|
|
DB '.,i);if(a(16.,.3,o(v.z,99.),o(v.x,77.)-(y-x))>.8)i+=8.;p(v.z,'
|
|
DB '99.);p(v.x,77.);return a(v,22.)-6.+i;}}float h(vec3 v){if(z=='
|
|
DB '0){if(e<2.)return 999.;v.xz=h(v.xz,2.*x);h(v.xz,44.,s/5.);v.y'
|
|
DB '+=77.-x*22.;v.xy=h(v.xy,-x);vec3 i=v;i.y-=17.;i.x-=38.;i.xy=h'
|
|
DB '(i.xy,.4);float m=-i.y;i.y+=83.;return max(m,length(i)-88.);}'
|
|
DB 'else if(z==1){v.xz=h(v.xz,11.*sin(99.*o(v.y,22.))+4.*y*cos(66'
|
|
DB '.*o(v.y,22.)));p(v.y,22.);float m=length(v.xz)-22.;v.z-=44.;f'
|
|
DB 'loat i=length(max(vec2(abs(v.y)-2.7,58.-length(v.xz)),0.))-2.'
|
|
DB ';return max(i,m);}else{p(v.z,99.);v.x-=77.*smoothstep(0.,.6,x'
|
|
DB ')-77.*smoothstep(.6,.9,x);v.y-=22.*smoothstep(.5,.7,x)-22.*sm'
|
|
DB 'oothstep(.9,1.,x);v.y-=4.;float i=a(v,vec3(33.,7.,33.),3.);h('
|
|
DB 'v.zx,11.,s/2.);v.y-=11.;return o(i,a(v,vec3(22.,22.,8.),8.),8'
|
|
DB '.);}}float o(vec3 v){if(z==0){if(e<2.)return 999.;v.xz=h(v.xz'
|
|
DB ',2.*x);h(v.xz,44.,s/5.);v.y+=77.-x*22.;v.xy=h(v.xy,-x);vec3 i'
|
|
DB '=v;i.y-=17.;i.x-=38.;i.xy=h(i.xy,.4);float m=max(max(i.y,leng'
|
|
DB 'th(i)-31.),min(abs(i.z),-i.y)-2.);v.z=abs(v.z)-8.;return min('
|
|
DB 'm,a(v,vec3(33.,8.-.1*v.x,4.),2.));}else if(z==1){v.xz=h(v.xz,'
|
|
DB '11.*sin(99.*o(v.y,22.))+4.*y*cos(66.*o(v.y,22.)));p(v.y,22.);'
|
|
DB 'float i=length(v.xz)-22.;v.z-=12.;float m=length(v.xz)-28.;h('
|
|
DB 'v.xz,0.,s/22.);return.6*max(length(v.y)-5.,o(o(length(i)-.5,l'
|
|
DB 'ength(m)-.5,4.),max(length(v.yz)-.5,max(m+2.,2.-i)),4.));}els'
|
|
DB 'e{p(v.z,99.);float m=v.x;v.x-=77.*smoothstep(0.,.6,x)-77.*smo'
|
|
DB 'othstep(.6,.9,x);vec3 i=v;v.y-=22.*smoothstep(.5,.7,x)-22.*sm'
|
|
DB 'oothstep(.9,1.,x);v.y-=55.;i.y-=99.;v.z=11.-length(v.z);float'
|
|
DB ' f=a(i,vec3(22.,11.,33.),2.);i.z=22.-length(i.z);float l=a(i,'
|
|
DB 'vec3(999.,4.,7.),2.);i.x=m;p(i.x,11.);return min(max(l,-lengt'
|
|
DB 'h(i.xz)+4.),o(a(v,vec3(6.,44.,6.),2.),f,8.));}}float p(vec3 v'
|
|
DB '){if(z==0){if(e<2.)return 999.;float m=v.y+77.;p(v.y,11.);ret'
|
|
DB 'urn max(max(length(v.y)-2.,m),length(a(v,vec3(22.,22.,22.),3.'
|
|
DB '))-2.);return max(max(abs(v.y-2.),m),length(a(v,vec3(22.,22.,'
|
|
DB '22.),3.))-2.);return max(v.y+12.,24.-length(v.z));}else if(z='
|
|
DB '=1){v.y-=11.;p(v.y,88.);float i=v.x+44.;v.yz=h(v.yz,11.*sin(9'
|
|
DB '9.*o(v.x,18.))+4.*y*cos(77.*o(v.x,18.)));p(v.x,18.);return ma'
|
|
DB 'x(i,max(a(v,vec3(5.,22.,22.),2.),-a(v,vec3(11.,11.,11.),4.)))'
|
|
DB ';}else{p(v.z,99.);v.x-=77.*smoothstep(0.,.6,x);p(v.x,77.);flo'
|
|
DB 'at i=a(v,22.)-9.;v.y-=7.;i=o(a(v,vec3(33.,7.,33.),2.),i,8.);v'
|
|
DB '.y+=11.;return min(v.y+10.+length(4.-mod(v.x,8.))/4.,max(a(v,'
|
|
DB 'vec3(37.,6.,37.),3.),-i));}}float g(vec3 v){return min(min(mi'
|
|
DB 'n(a(v),h(v)),o(v)),p(v));}void u(vec3 v){float z=.5;if(z>a(v)'
|
|
DB ')n=vec4(-1.,.4,0.,1.6),c=vec3(.5,0.,.1),m=.3;if(z>h(v))z=h(v)'
|
|
DB ',n=vec4(-2.,.8,0.,4.),c=vec3(.4,.1,0.),m=.8;if(z>o(v))z=p(v),'
|
|
DB 'n=vec4(-2.,.8,.5,1.2),c=vec3(1.1,.8,.7),m=.1;if(z>p(v))z=o(v)'
|
|
DB ',n=vec4(-1.,-.3,.5,.9),c=vec3(.2,.2,.2),m=.05,r.y=0.,r.x=0.;}'
|
|
DB 'void g(vec3 y,float v){l+=y*f,f*=v;}vec3 g(vec3 y,vec3 z,vec2'
|
|
DB ' v){return smoothstep(v.x,v.y,dot(vec3(.7,.7,0.),y))*z;}void '
|
|
DB 'main(){y=v.y;e=v.x;x=y*y;vec3 z=vec3(gl_FragCoord.xy/v.z-.5,.'
|
|
DB '6);z.x-=v.w;float o=1.-length(z.xy/vec2(2.6,2.));vec3 p=vec3('
|
|
DB '99.,55.,44.)*(1.-y*.3);if(e--<1.)z.yz=h(z.yz,.4),z.xz=h(z.xz,'
|
|
DB '2.6);else if(e--<1.)p=vec3(-33.,-11.,y*33.),z.yz=h(z.yz,-.4),'
|
|
DB 'z.xz=h(z.xz,4.5);else if(e--<1.)p=vec3(11.,-99.*(1.-y*1.2),-8'
|
|
DB '8.),z.yz=h(z.yz,.5),x=0.;else if(e--<1.)p=vec3(-33.,44.*(1.-y'
|
|
DB '*.4),-99.),z.yz=h(z.yz,.5);else if(e--<1.)p=vec3(11.,66.*(1.-'
|
|
DB 'y*.4),-33.),z.yz=h(z.yz,1.2);else if(e--<1.)p=vec3(-66.,-88.*'
|
|
DB '(.6+y*.3),66.),z.yz=h(z.yz,-.4),z.xz=h(z.xz,4.5);else if(e--<'
|
|
DB '1.)p=vec3(-33.,-99.*(.5+y),-33.),z.yz=h(z.yz,-.3),z.xz=h(z.xz'
|
|
DB ',5.3);else if(e--<1.)p=vec3(0.,-99.*(.5+y*1.5),-6.),z.yz=h(z.'
|
|
DB 'yz,-1.);else if(e--<1.)p=vec3(-88.*(1.+y),10.,-4.),z.yz=h(z.y'
|
|
DB 'z,-.3),z.xz=h(z.xz,1.-y);else if(e--<1.)p=vec3(-88.*(1.-y*.4)'
|
|
DB ',13.,4.),z.yz=h(z.yz,.3),z.xz=h(z.xz,3.+y);else if(e--<1.)p=v'
|
|
DB 'ec3(-33.*(1.-y*.6),103.,-6.),z.yz=h(z.yz,.6),z.xz=h(z.xz,6.),'
|
|
DB 'x*=2.;else if(e--<1.)p=vec3(-8.,-99.*(y*1.8),6.),z.yz=h(z.yz,'
|
|
DB '.6+y),z.xz=h(z.xz,3.),x*=2.;else if(e--<1.)p=vec3(-88.,22.,-9'
|
|
DB '9.*(1.-y*1.2)),z.xz=h(z.xz,5.5),y=y*8.+.6,x=mod(y,1.);else if'
|
|
DB '(e--<1.)p=vec3(166.,44.,99.*(1.-y*3.3)),z.yz=h(z.yz,.4),z.xz='
|
|
DB 'h(z.xz,1.-y),y=y*8.+.6,x=mod(y,1.);else if(e--<1.)p=vec3(-99.'
|
|
DB '*(1.-y*3.3),88.,-44.),z.yz=h(z.yz,.6+y),z.xz=h(z.xz,2.5),y=y*'
|
|
DB '8.+.6,x=mod(y,1.);else if(e--<1.)p=vec3(-99.*(1.-y*.8),12.,99'
|
|
DB '.),z.xz=h(z.xz,4.5),y=y*8.+.6,x=mod(y,1.);e=v.x;z=normalize(z'
|
|
DB ');l=vec3(0.,0.,0.);f=1.;float a=0.,b,k;i=0;n=vec4(-3.,8.,.98,'
|
|
DB '1.);while(i++<2){for(m=1.;a<999.&&m>a*.0005;a+=m,w=z*a)m=g(p+'
|
|
DB 'w);vec3 F=p+w;p=F;r=vec2(.04,0.);vec3 C=normalize(vec3(g(p+r.'
|
|
DB 'xyy)-g(p-r.xyy),g(p+r.yxy)-g(p-r.yxy),g(p+r.yyx)-g(p-r.yyx)))'
|
|
DB ';u(p);if(a>999.){if(i<2)n=vec4(-3.,8.,.98,1.);break;}z=reflec'
|
|
DB 't(z,C);b=8.;for(k=1.;b>0.;b--)k-=.5*(b-g(p+C*b))/exp2(b);c*=k'
|
|
DB '*g(z,t,n.xy);l+=f*c;f*=m;a=.5;w=z*a;}gl_FragColor.xyz=smooths'
|
|
DB 'tep(15.8,15.79,v.x+v.y)*o*min(1.,sin(v.y*s/2.)*15.8)*(l+f*(g('
|
|
DB 'z,d,n.zw)+g(z,t,n.xy)));}', 00H ; mark_fs_0
|
|
ORG $+1
|
|
?MMTime@@3Ummtime_tag@@A DD 02H ; MMTime
|
|
DD 00H
|
|
ORG $+4
|
|
mmtime ENDS
|
|
PUBLIC _main
|
|
EXTRN __imp__Sleep@4:PROC
|
|
EXTRN __imp__ExitProcess@4:PROC
|
|
EXTRN __imp__CreateThread@24:PROC
|
|
EXTRN __imp__ChoosePixelFormat@8:PROC
|
|
EXTRN __imp__SetPixelFormat@12:PROC
|
|
EXTRN __imp__wglCreateContext@4:PROC
|
|
EXTRN __imp__wglGetProcAddress@4:PROC
|
|
EXTRN __imp__wglMakeCurrent@8:PROC
|
|
EXTRN __imp__SwapBuffers@4:PROC
|
|
EXTRN __imp__PeekMessageA@20:PROC
|
|
EXTRN __imp__CreateWindowExA@48:PROC
|
|
EXTRN __imp__GetAsyncKeyState@4:PROC
|
|
EXTRN __imp__GetDC@4:PROC
|
|
EXTRN __imp__ShowCursor@4:PROC
|
|
EXTRN __imp__ChangeDisplaySettingsA@8:PROC
|
|
EXTRN __imp__waveOutOpen@24:PROC
|
|
EXTRN __imp__waveOutWrite@12:PROC
|
|
EXTRN __imp__waveOutGetPosition@12:PROC
|
|
EXTRN __4klang_render@4:PROC
|
|
EXTRN __imp__glRecti@16:PROC
|
|
synthnothing SEGMENT
|
|
_hWaveOut DD 01H DUP (?)
|
|
synthnothing ENDS
|
|
; Function compile flags: /Ogspy
|
|
; COMDAT _main
|
|
main SEGMENT
|
|
_main PROC ; COMDAT
|
|
; File e:\blu-flame.org\ev14-4k\project\main.compress.cpp
|
|
; Line 84
|
|
push ebx
|
|
push esi
|
|
push edi
|
|
; Line 87
|
|
xor esi, esi
|
|
; Line 90
|
|
push esi
|
|
; Line 91
|
|
push esi
|
|
; Line 92
|
|
push esi
|
|
; Line 93
|
|
push esi
|
|
; Line 94
|
|
push esi
|
|
; Line 95
|
|
push esi
|
|
; Line 96
|
|
push esi
|
|
; Line 97
|
|
push esi
|
|
; Line 98
|
|
push -1862270976 ; 91000000H
|
|
; Line 99
|
|
push esi
|
|
; Line 100
|
|
push 49177 ; 0000c019H
|
|
; Line 101
|
|
push esi
|
|
; Line 102
|
|
push 4
|
|
; Line 103
|
|
push OFFSET _dmScreenSettings
|
|
; Line 104
|
|
call DWORD PTR __imp__ChangeDisplaySettingsA@8
|
|
; Line 105
|
|
call DWORD PTR __imp__CreateWindowExA@48
|
|
; Line 121
|
|
push eax
|
|
; Line 122
|
|
call DWORD PTR __imp__GetDC@4
|
|
; Line 123
|
|
mov edi, eax
|
|
; Line 125
|
|
push edi
|
|
; Line 126
|
|
push edi
|
|
; Line 127
|
|
push OFFSET _pfd
|
|
; Line 128
|
|
push OFFSET _pfd
|
|
; Line 129
|
|
push edi
|
|
; Line 130
|
|
call DWORD PTR __imp__ChoosePixelFormat@8
|
|
; Line 131
|
|
push eax
|
|
; Line 132
|
|
push edi
|
|
; Line 133
|
|
call DWORD PTR __imp__SetPixelFormat@12
|
|
; Line 134
|
|
call DWORD PTR __imp__wglCreateContext@4
|
|
; Line 135
|
|
push eax
|
|
; Line 136
|
|
push edi
|
|
; Line 137
|
|
call DWORD PTR __imp__wglMakeCurrent@8
|
|
; Line 138
|
|
call DWORD PTR __imp__SwapBuffers@4
|
|
; Line 143
|
|
push 32 ; 00000020H
|
|
; Line 144
|
|
push OFFSET ?WaveHDR@@3Uwavehdr_tag@@A
|
|
; Line 145
|
|
push esi
|
|
; Line 146
|
|
push esi
|
|
; Line 147
|
|
push esi
|
|
; Line 148
|
|
push OFFSET ?WaveFMT@@3UtWAVEFORMATEX@@A
|
|
; Line 149
|
|
push -1
|
|
; Line 150
|
|
push OFFSET _hWaveOut
|
|
; Line 151
|
|
push 1024 ; 00000400H
|
|
; Line 152
|
|
push esi
|
|
; Line 153
|
|
push esi
|
|
; Line 154
|
|
push OFFSET _lpSoundBuffer
|
|
; Line 155
|
|
push OFFSET __4klang_render@4
|
|
; Line 156
|
|
push esi
|
|
; Line 157
|
|
push esi
|
|
; Line 158
|
|
push 0
|
|
; Line 161
|
|
push 1
|
|
; Line 162
|
|
push 1
|
|
; Line 163
|
|
push -1
|
|
; Line 164
|
|
push -1
|
|
; Line 165
|
|
push 3
|
|
; Line 166
|
|
push DWORD PTR _sglUseProgram
|
|
; Line 168
|
|
push OFFSET ?mark_fs_0@@3PADA
|
|
; Line 169
|
|
push 35632 ; 00008b30H
|
|
; Line 170
|
|
push DWORD PTR _sglCreateShaderProgramEXT
|
|
; Line 173
|
|
push 1
|
|
; Line 174
|
|
push 1
|
|
; Line 175
|
|
push -1
|
|
; Line 176
|
|
push -1
|
|
; Line 177
|
|
push 2
|
|
; Line 178
|
|
push DWORD PTR _sglUseProgram
|
|
; Line 180
|
|
push OFFSET ?mark_fs_0@@3PADA
|
|
; Line 181
|
|
push 35632 ; 00008b30H
|
|
; Line 182
|
|
push DWORD PTR _sglCreateShaderProgramEXT
|
|
; Line 185
|
|
push 1
|
|
; Line 186
|
|
push 1
|
|
; Line 187
|
|
push -1
|
|
; Line 188
|
|
push -1
|
|
; Line 189
|
|
push 1
|
|
; Line 190
|
|
push DWORD PTR _sglUseProgram
|
|
; Line 192
|
|
push OFFSET ?mark_fs_0@@3PADA
|
|
; Line 193
|
|
push 35632 ; 00008b30H
|
|
; Line 194
|
|
push DWORD PTR _sglCreateShaderProgramEXT
|
|
; Line 196
|
|
call DWORD PTR __imp__wglGetProcAddress@4
|
|
; Line 197
|
|
call eax
|
|
; Line 199
|
|
call DWORD PTR __imp__wglGetProcAddress@4
|
|
; Line 200
|
|
call eax
|
|
; Line 201
|
|
call (null) PTR __imp__glRecti@16
|
|
; Line 203
|
|
inc BYTE PTR ?mark_fs_0@@3PADA+12
|
|
; Line 205
|
|
call DWORD PTR __imp__wglGetProcAddress@4
|
|
; Line 206
|
|
call eax
|
|
; Line 208
|
|
call DWORD PTR __imp__wglGetProcAddress@4
|
|
; Line 209
|
|
call eax
|
|
; Line 210
|
|
call (null) PTR __imp__glRecti@16
|
|
; Line 212
|
|
inc BYTE PTR ?mark_fs_0@@3PADA+12
|
|
; Line 214
|
|
call DWORD PTR __imp__wglGetProcAddress@4
|
|
; Line 215
|
|
call eax
|
|
; Line 217
|
|
call DWORD PTR __imp__wglGetProcAddress@4
|
|
; Line 218
|
|
call eax
|
|
; Line 219
|
|
call (null) PTR __imp__glRecti@16
|
|
; Line 221
|
|
inc BYTE PTR ?mark_fs_0@@3PADA+12
|
|
; Line 223
|
|
call DWORD PTR __imp__ShowCursor@4
|
|
; Line 224
|
|
call DWORD PTR __imp__CreateThread@24
|
|
; Line 225
|
|
call (null) PTR __imp__Sleep@4
|
|
; Line 226
|
|
call DWORD PTR __imp__waveOutOpen@24
|
|
; Line 227
|
|
push DWORD PTR _hWaveOut
|
|
; Line 228
|
|
call DWORD PTR __imp__waveOutWrite@12
|
|
$introloop$4:
|
|
; Line 234
|
|
push 12 ; 0000000cH
|
|
; Line 235
|
|
push OFFSET ?MMTime@@3Ummtime_tag@@A
|
|
; Line 236
|
|
push DWORD PTR _hWaveOut
|
|
; Line 237
|
|
call DWORD PTR __imp__waveOutGetPosition@12
|
|
; Line 239
|
|
mov ecx, DWORD PTR ?MMTime@@3Ummtime_tag@@A+4
|
|
; Line 240
|
|
sub ecx, DWORD PTR _gCurSceneStart
|
|
; Line 241
|
|
mov eax, DWORD PTR _gCurScene
|
|
; Line 242
|
|
imul ebx, DWORD PTR ?g_SceneLength@@3PAHA[eax*4], 30048
|
|
; Line 243
|
|
mov eax, DWORD PTR ?g_SceneShader@@3PAHA[eax*4]
|
|
; Line 244
|
|
inc eax
|
|
; Line 245
|
|
push eax
|
|
; Line 247
|
|
mov DWORD PTR _lf_Time, ecx
|
|
; Line 248
|
|
fild DWORD PTR _lf_Time
|
|
; Line 249
|
|
mov DWORD PTR _lf_Time, ebx
|
|
; Line 250
|
|
fild DWORD PTR _lf_Time
|
|
; Line 251
|
|
fdivp ST(1), ST(0)
|
|
; Line 252
|
|
fst DWORD PTR _lf_Time
|
|
; Line 254
|
|
push DWORD PTR _sglUseProgram
|
|
; Line 255
|
|
call DWORD PTR __imp__wglGetProcAddress@4
|
|
; Line 256
|
|
call eax
|
|
; Line 258
|
|
sub esp, 16 ; 00000010H
|
|
; Line 259
|
|
fld DWORD PTR _aspect
|
|
; Line 260
|
|
fstp DWORD PTR [esp+12]
|
|
; Line 261
|
|
fild DWORD PTR _dmScreenSettings+112
|
|
; Line 262
|
|
fstp DWORD PTR [esp+8]
|
|
; Line 263
|
|
fld DWORD PTR _lf_Time
|
|
; Line 264
|
|
fstp DWORD PTR [esp+4]
|
|
; Line 265
|
|
fild DWORD PTR _gCurScene
|
|
; Line 266
|
|
fstp DWORD PTR [esp]
|
|
; Line 267
|
|
push esi
|
|
; Line 268
|
|
push DWORD PTR _sglUniform4f
|
|
; Line 269
|
|
call DWORD PTR __imp__wglGetProcAddress@4
|
|
; Line 270
|
|
call eax
|
|
; Line 272
|
|
push 27 ; 0000001bH
|
|
; Line 273
|
|
push esi
|
|
; Line 274
|
|
push esi
|
|
; Line 275
|
|
push esi
|
|
; Line 276
|
|
push esi
|
|
; Line 277
|
|
push esi
|
|
; Line 278
|
|
push edi
|
|
; Line 279
|
|
push 1
|
|
; Line 280
|
|
push 1
|
|
; Line 281
|
|
push -1
|
|
; Line 282
|
|
push -1
|
|
; Line 283
|
|
call (null) PTR __imp__glRecti@16
|
|
; Line 284
|
|
call DWORD PTR __imp__SwapBuffers@4
|
|
; Line 286
|
|
fld1
|
|
; Line 287
|
|
fcomp DWORD PTR _lf_Time
|
|
; Line 288
|
|
fnstsw ax
|
|
; Line 289
|
|
test ah, 5
|
|
; Line 290
|
|
jp SHORT $peekmessage$5
|
|
; Line 292
|
|
add DWORD PTR _gCurSceneStart, ebx
|
|
; Line 293
|
|
inc DWORD PTR _gCurScene
|
|
$peekmessage$5:
|
|
; Line 296
|
|
call DWORD PTR __imp__PeekMessageA@20
|
|
; Line 298
|
|
cmp DWORD PTR ?MMTime@@3Ummtime_tag@@A+4, 6249984 ; 005f5e00H
|
|
; Line 299
|
|
jae SHORT $exit$6
|
|
; Line 301
|
|
call WORD PTR __imp__GetAsyncKeyState@4
|
|
; Line 302
|
|
test ax, ax
|
|
; Line 303
|
|
je $introloop$4
|
|
$exit$6:
|
|
; Line 306
|
|
push esi
|
|
; Line 307
|
|
call (null) PTR __imp__ExitProcess@4
|
|
; Line 312
|
|
pop edi
|
|
pop esi
|
|
pop ebx
|
|
ret 0
|
|
_main ENDP
|
|
main ENDS
|
|
END
|