Function at 0x45ee60
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x48c
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov ebx, 1
mov dword [esp + 0x1c], 0
push ebx
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
cmp cl, 0x7b
je 0x45eeb7
push 0xa50eb0
push eax
push str.WARNING:_expecting___found__s_instead_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp + 8]
mov ebx, 1
push ebx
push edi
call fcn.00429630
mov esi, eax
add esp, 8
mov al, byte [esi]
test al, al
je 0x460793
cmp al, 0x7d
je 0x4607d0
cmp al, 0x7b
jne 0x45fc79
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x18], 0x100
lea ecx, [eax + eax*4]
lea eax, [eax + ecx*8]
lea ebx, [eax*8 + 0xa51108]
xor eax, eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [ebx], 1
mov edi, dword [ebp + 8]
push 1
push edi
call fcn.00429630
mov esi, eax
add esp, 8
mov al, byte [esi]
test al, al
je 0x46062d
cmp al, 0x7d
je 0x45fbdc
push str.map16
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45ef5d
cmp dword [0x1184348], 0x10
jg 0x45efd9
mov esi, 0x4e84f0
jmp 0x45f06e
push str.map32
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45ef82
cmp dword [0x1184348], 0x10
jle 0x45efd9
mov esi, 0x4e84f0
jmp 0x45f06e
push str.mapcomp
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45efb4
mov eax, dword [0x1184360]
test eax, eax
je 0x45efd9
mov edx, dword [0x11843c4]
mov eax, dword [edx + 0x20]
test eax, eax
je 0x45efd9
mov esi, 0x4e84f0
jmp 0x45f06e
push str.mapnocomp
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45efe9
mov eax, dword [0x1184360]
test eax, eax
jne 0x45efd9
mov esi, 0x4e84f0
jmp 0x45f06e
push 0
push edi
call fcn.00429630
add esp, 8
jmp 0x45ef15
push str.animmapcomp
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f02f
mov eax, dword [0x1184360]
test eax, eax
je 0x45f010
mov eax, dword [0x11843c4]
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x45f069
cmp byte [esi], 0
je 0x45ef15
push 0
push edi
call fcn.00429630
mov al, byte [esi]
add esp, 8
test al, al
jne 0x45f019
jmp 0x45ef15
push str.animmapnocomp
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f06e
mov eax, dword [0x1184360]
test eax, eax
je 0x45f069
cmp byte [esi], 0
je 0x45ef15
push 0
push edi
call fcn.00429630
mov al, byte [esi]
add esp, 8
test al, al
jne 0x45f053
jmp 0x45ef15
mov esi, str.animmap
push 0x4e84f0
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f173
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
je 0x460646
push str._whiteimage
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x45f165
push str.white
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x45f165
push str._dlight
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f0e5
mov ecx, dword [0x1173830]
mov dword [ebx + 4], ecx
jmp 0x45ef15
push str._lightmap
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f124
mov eax, dword [0xa50ef0]
mov dword [ebx + 0x74], 1
test eax, eax
jge 0x45f115
mov edx, dword [0x1173838]
mov dword [ebx + 4], edx
jmp 0x45ef15
mov eax, dword [eax*4 + 0x1173878]
mov dword [ebx + 4], eax
jmp 0x45ef15
mov ecx, dword [0xa50f74]
push 0x2901
push ecx
mov ecx, dword [0xa50f70]
xor edx, edx
test ecx, ecx
sete dl
push edx
mov edx, dword [0xa50f6c]
xor eax, eax
test edx, edx
sete al
push eax
push esi
call fcn.00457210
add esp, 0x14
mov dword [ebx + 4], eax
test eax, eax
je 0x460664
jmp 0x45ef15
mov ecx, dword [0x1173838]
mov dword [ebx + 4], ecx
jmp 0x45ef15
push str.clampmap
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f1da
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
je 0x460683
mov edx, dword [0xa50f74]
push 0x2900
push edx
mov edx, dword [0xa50f70]
xor eax, eax
test edx, edx
sete al
push eax
mov eax, dword [0xa50f6c]
xor ecx, ecx
test eax, eax
sete cl
push ecx
push esi
call fcn.00457210
add esp, 0x14
mov dword [ebx + 4], eax
test eax, eax
je 0x460664
jmp 0x45ef15
push str.animMap
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f270
push eax
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x4606a1
push eax
call fcn.004c3cab
fstp dword [ebx + 0x48]
add esp, 4
mov edx, dword [ebp + 8]
push 0
push edx
call fcn.00429630
mov edi, eax
add esp, 8
cmp byte [edi], 0
je 0x45ef12
mov esi, dword [ebx + 0x44]
cmp esi, 0x10
jge 0x45f210
mov eax, dword [0xa50f74]
push 0x2901
push eax
mov eax, dword [0xa50f70]
xor ecx, ecx
test eax, eax
mov eax, dword [0xa50f6c]
sete cl
xor edx, edx
push ecx
test eax, eax
sete dl
push edx
push edi
call fcn.00457210
add esp, 0x14
mov dword [ebx + esi*4 + 4], eax
test eax, eax
je 0x4606bf
inc dword [ebx + 0x44]
jmp 0x45f210
push str.videoMap
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f2d2
push eax
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x4606de
push 0x1a
push 0x100
push 0x100
push 0
push 0
push eax
call dword [0x117375c]
add esp, 0x18
cmp eax, 0xffffffff
mov dword [ebx + 0x70], eax
je 0x45ef15
mov eax, dword [eax*4 + 0x11737ac]
mov dword [ebx + 0x7c], 1
mov dword [ebx + 4], eax
jmp 0x45ef15
push str.alphaFunc
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f30a
push eax
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x4606fc
push eax
call fcn.00460920
add esp, 4
mov dword [esp + 0x14], eax
jmp 0x45ef15
push str.depthfunc
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f386
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
je 0x46071a
push str.lequal
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f34c
mov dword [esp + 0x20], eax
jmp 0x45ef15
push str.equal
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f36b
mov dword [esp + 0x20], 0x20000
jmp 0x45ef15
push 0xa50eb0
push esi
push str.WARNING:_unknown_depthfunc__s_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0x10
jmp 0x45ef15
push str.detail
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f3a7
mov dword [ebx + 0x140], 1
jmp 0x45ef15
push 0x4f2d84
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f413
push eax
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
jne 0x45f3e3
push 0xa50eb0
push str.WARNING:_missing_parm_for_fog_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
jmp 0x45ef15
push 0x4f3984
push eax
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f404
mov dword [ebx + 0x144], 1
jmp 0x45ef15
mov dword [ebx + 0x144], 0
jmp 0x45ef15
push str.blendfunc
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f508
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
je 0x45f4c8
push 0x4f3974
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f465
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 0x20
jmp 0x45f4ef
push str.filter
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f489
mov dword [esp + 0xc], 3
mov dword [esp + 0x10], 0x10
jmp 0x45f4ef
push str.blend
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f4ad
mov dword [esp + 0xc], 5
mov dword [esp + 0x10], 0x60
jmp 0x45f4ef
push esi
call fcn.00460990
push 0
push edi
mov dword [esp + 0x18], eax
call fcn.00429630
mov cl, byte [eax]
add esp, 0xc
test cl, cl
jne 0x45f4e2
push 0xa50eb0
push str.WARNING:_missing_parm_for_blendFunc_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
jmp 0x45ef15
push eax
call fcn.00460a90
add esp, 4
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x45ef15
mov dword [esp + 0x18], 0
jmp 0x45ef15
push str.rgbGen
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f725
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
jne 0x45f549
push 0xa50eb0
push str.WARNING:_missing_parameters_for_rgbGen_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
jmp 0x45ef15
push str.wave
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f57a
lea ecx, [ebx + 0xfc]
push ecx
push edi
call fcn.00460b80
add esp, 8
mov dword [ebx + 0x110], 8
jmp 0x45ef15
push str.const
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f5ea
lea edx, [esp + 0x40]
push edx
push 3
push edi
call fcn.00460810
fld dword [esp + 0x4c]
fmul dword [0x4d7490]
add esp, 0xc
call fcn.004c2c10
fld dword [esp + 0x44]
fmul dword [0x4d7490]
mov byte [ebx + 0x12c], al
call fcn.004c2c10
fld dword [esp + 0x48]
fmul dword [0x4d7490]
mov byte [ebx + 0x12d], al
call fcn.004c2c10
mov byte [ebx + 0x12e], al
mov dword [ebx + 0x110], 0xb
jmp 0x45ef15
push str.identity
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f60b
mov dword [ebx + 0x110], 2
jmp 0x45ef15
push str.identityLighting
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f62c
mov dword [ebx + 0x110], 1
jmp 0x45ef15
push str.entity
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f64d
mov dword [ebx + 0x110], 3
jmp 0x45ef15
push str.oneMinusEntity
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f66e
mov dword [ebx + 0x110], 4
jmp 0x45ef15
push str.vertex
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f6a7
mov eax, dword [ebx + 0x128]
mov dword [ebx + 0x110], 6
test eax, eax
jne 0x45ef15
mov dword [ebx + 0x128], 5
jmp 0x45ef15
push str.exactVertex
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f6c8
mov dword [ebx + 0x110], 5
jmp 0x45ef15
push str.lightingDiffuse
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f6e9
mov dword [ebx + 0x110], 9
jmp 0x45ef15
push str.oneMinusVertex
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f70a
mov dword [ebx + 0x110], 7
jmp 0x45ef15
push 0xa50eb0
push esi
push str.WARNING:_unknown_rgbGen_parameter__s_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0x10
jmp 0x45ef15
push str.alphaGen
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f9bf
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
jne 0x45f766
push 0xa50eb0
push str.WARNING:_missing_parameters_for_alphaGen_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
jmp 0x45ef15
push str.wave
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f797
lea eax, [ebx + 0x114]
push eax
push edi
call fcn.00460b80
add esp, 8
mov dword [ebx + 0x128], 8
jmp 0x45ef15
push str.const
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f7d9
push eax
push edi
call fcn.00429630
push eax
call fcn.004c3cab
fmul qword [0x4d78a8]
add esp, 0xc
call fcn.004c2c10
mov byte [ebx + 0x12f], al
mov dword [ebx + 0x128], 0xa
jmp 0x45ef15
push str.identity
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f7f6
mov dword [ebx + 0x128], eax
jmp 0x45ef15
push str.entity
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f817
mov dword [ebx + 0x128], 2
jmp 0x45ef15
push str.oneMinusEntity
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f838
mov dword [ebx + 0x128], 3
jmp 0x45ef15
push str.normalzfade
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f8dd
push eax
push edi
mov dword [ebx + 0x128], 4
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x45f884
push eax
call fcn.004c3cab
fmul qword [0x4d78a8]
add esp, 4
call fcn.004c2c10
mov byte [ebx + 0x12f], al
jmp 0x45f88b
mov byte [ebx + 0x12f], 0xff
push 0
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x45f8c4
push eax
call fcn.004c3cab
fstp dword [ebx + 0x138]
push 0
push edi
call fcn.00429630
push eax
call fcn.004c3cab
fstp dword [ebx + 0x13c]
add esp, 0x10
jmp 0x45ef15
mov dword [ebx + 0x138], 0xbf800000
mov dword [ebx + 0x13c], 0x3f800000
jmp 0x45ef15
push str.vertex
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f8fe
mov dword [ebx + 0x128], 5
jmp 0x45ef15
push str.lightingSpecular
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f91f
mov dword [ebx + 0x128], 7
jmp 0x45ef15
push str.oneMinusVertex
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f940
mov dword [ebx + 0x128], 6
jmp 0x45ef15
push str.portal
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45f9a4
push eax
push edi
mov dword [ebx + 0x128], 9
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
jne 0x45f990
push 0xa50eb0
push str.WARNING:_missing_range_parameter_for_alphaGen_portal_in_shader__s__defaulting_to_256_n
push 2
mov dword [0xa50f5c], 0x43800000
call dword [0x1173700]
add esp, 0xc
jmp 0x45ef15
push eax
call fcn.004c3cab
fstp dword [0xa50f5c]
add esp, 4
jmp 0x45ef15
push 0xa50eb0
push esi
push str.WARNING:_unknown_alphaGen_parameter__s_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0x10
jmp 0x45ef15
push str.texgen
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x45fad3
push str.tcGen
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x45fad3
push str.tcMod
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45faa8
mov cl, byte [0x501330]
lea edi, [esp + 0x99]
mov byte [esp + 0x98], cl
mov ecx, 0xff
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov edx, dword [ebp + 8]
push 0
push edx
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x45fa92
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x98]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea edx, [esp + 0x98]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x4db3bc
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x45fa1f
lea eax, [esp + 0x98]
push ebx
push eax
call fcn.00460ce0
add esp, 8
jmp 0x45ef12
push str.depthwrite
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x460738
mov dword [esp + 0x18], 0x100
mov dword [esp + 0x24], 1
jmp 0x45ef15
push 0
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
jne 0x45faff
push 0xa50eb0
push str.WARNING:_missing_texgen_parm_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
jmp 0x45ef15
push str.environment
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fb1d
mov dword [ebx + 0x4c], 4
jmp 0x45ef15
push str.firerisenv
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fb3b
mov dword [ebx + 0x4c], 5
jmp 0x45ef15
push str.lightmap
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fb59
mov dword [ebx + 0x4c], 2
jmp 0x45ef15
push str.texture
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x45fbd0
push str.base
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x45fbd0
push str.vector
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fbb6
lea ecx, [ebx + 0x50]
push ecx
push 3
push edi
call fcn.00460810
lea edx, [ebx + 0x5c]
push edx
push 3
push edi
call fcn.00460810
add esp, 0x18
mov dword [ebx + 0x4c], 7
jmp 0x45ef15
push 0xa50eb0
push str.WARNING:_unknown_texgen_parm_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
jmp 0x45ef15
mov dword [ebx + 0x4c], 3
jmp 0x45ef15
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0xc]
test eax, eax
jne 0x45fc0e
test ecx, ecx
je 0x45fc04
cmp ecx, 2
je 0x45fc04
cmp ecx, 5
je 0x45fc04
mov dword [ebx + 0x110], 2
jmp 0x45fc0e
mov dword [ebx + 0x110], 1
mov edx, dword [esp + 0x10]
cmp ecx, 2
jne 0x45fc28
cmp edx, 0x10
jne 0x45fc28
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x18], 0x100
cmp dword [ebx + 0x128], 2
jne 0x45fc4b
mov eax, dword [ebx + 0x110]
cmp eax, 2
je 0x45fc41
cmp eax, 9
jne 0x45fc4b
mov dword [ebx + 0x128], 1
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x14]
or eax, edi
or eax, edx
or eax, ecx
mov ecx, dword [esp + 0x18]
or eax, ecx
mov dword [ebx + 0x130], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [ebx], 1
mov dword [esp + 0x1c], eax
jmp 0x45eeaf
push 3
push 0x4f367c
push esi
call fcn.00429af0
add esp, 0xc
test eax, eax
jne 0x45fc9b
push edi
call fcn.00429820
add esp, 4
jmp 0x45eeb7
push str.q3map_sun
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fd93
push eax
push edi
call fcn.00429630
push eax
call fcn.004c3cab
fstp dword [0x1174204]
push 0
push edi
call fcn.00429630
push eax
call fcn.004c3cab
fstp dword [0x1174208]
push 0
push edi
call fcn.00429630
push eax
call fcn.004c3cab
fstp dword [0x117420c]
push 0x1174204
call fcn.004286f0
push 0
push edi
fstp st(0)
call fcn.00429630
push eax
call fcn.004c3cab
fld dword [0x1174204]
fmul st(1)
push 0
push edi
fstp dword [0x1174204]
fld dword [0x1174208]
fmul st(1)
fstp dword [0x1174208]
fld dword [0x117420c]
fmul st(1)
fstp dword [0x117420c]
fstp st(0)
call fcn.00429630
push eax
call fcn.004c3cab
fmul dword [0x4d7918]
add esp, 0x40
push 0
push edi
fstp dword [esp + 0x1c]
call fcn.00429630
push eax
call fcn.004c3cab
fmul dword [0x4d7918]
add esp, 0xc
fld st(0)
fcos
fld dword [esp + 0x14]
fcos
fmul st(1)
fstp dword [0x1174210]
fld dword [esp + 0x14]
fsin
fmul st(1)
fstp dword [0x1174214]
fstp st(0)
fsin
fstp dword [0x1174218]
jmp 0x45eeb7
push str.deformVertexes
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fdb3
push edi
call fcn.004612e0
add esp, 4
jmp 0x45eeb7
push str.tesssize
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fdd3
push edi
call fcn.00429820
add esp, 4
jmp 0x45eeb7
push str.clampTime
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fe0d
push eax
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x45eeb7
push eax
call fcn.004c3cab
fstp dword [0xa51058]
add esp, 4
jmp 0x45eeb7
push 5
push str.q3map
push esi
call fcn.00429af0
add esp, 0xc
test eax, eax
jne 0x45fe2f
push edi
call fcn.00429820
add esp, 4
jmp 0x45eeb7
push str.surfaceParm
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fea8
push eax
mov eax, dword [ebp + 8]
push eax
call fcn.00429630
add esp, 8
mov edi, eax
xor ebx, ebx
mov esi, 0x4f2888
mov ecx, dword [esi]
push ecx
push edi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x45fe78
add esi, 0x10
inc ebx
cmp esi, 0x4f2b98
jl 0x45fe57
jmp 0x45eeaf
mov esi, dword [0xa50f08]
mov ecx, dword [0xa50f0c]
shl ebx, 4
mov edx, dword [ebx + 0x4f2890]
mov eax, dword [ebx + 0x4f2894]
or esi, edx
or ecx, eax
mov dword [0xa50f08], esi
mov dword [0xa50f0c], ecx
jmp 0x45eeaf
push str.nomipmaps
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fecb
mov dword [0xa50f6c], ebx
mov dword [0xa50f70], ebx
jmp 0x45eeb7
push str.nopicmip
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45fee8
mov dword [0xa50f70], ebx
jmp 0x45eeb7
push str.picmip2
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45ff05
mov dword [0xa50f74], ebx
jmp 0x45eeb7
push str.polygonOffset
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45ff22
mov dword [0xa50f68], ebx
jmp 0x45eeb7
push str.entityMergable
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x45ff3f
mov dword [0xa50f10], ebx
jmp 0x45eeb7
push str.fogParms
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x46004a
push eax
push edi
call fcn.00429630
add esp, 8
mov esi, 0x4e7310
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x45ff88
test cl, cl
je 0x45ff84
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x45ff88
add eax, 2
add esi, 2
test cl, cl
jne 0x45ff64
xor eax, eax
jmp 0x45ff8d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x460775
mov esi, 0xa50f4c
push 0
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x460757
push eax
call fcn.004c3cab
fstp dword [esi]
add esi, 4
add esp, 4
cmp esi, 0xa50f58
jl 0x45ff9a
push 0
push edi
call fcn.00429630
add esp, 8
mov esi, 0x4e730c
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x45fff9
test cl, cl
je 0x45fff5
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x45fff9
add eax, 2
add esi, 2
test cl, cl
jne 0x45ffd5
xor eax, eax
jmp 0x45fffe
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x460775
push eax
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
jne 0x460030
push 0xa50eb0
push str.WARNING:_missing_parm_for_fogParms_keyword_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
jmp 0x45eeb7
push eax
call fcn.004c3cab
fstp dword [0xa50f58]
push edi
call fcn.00429820
add esp, 8
jmp 0x45eeb7
push str.portal
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x46006b
mov dword [0xa50efc], 0x3f800000
jmp 0x45eeb7
push str.skyparms
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x46008b
push edi
call fcn.00461600
add esp, 4
jmp 0x45eeb7
push str.skyfogvars
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x4601d5
push eax
push edi
call fcn.00429630
add esp, 8
mov esi, 0x4e7310
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x4600d8
test cl, cl
je 0x4600d4
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x4600d8
add eax, 2
add esi, 2
test cl, cl
jne 0x4600b0
xor eax, eax
jmp 0x4600dd
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x460775
xor esi, esi
lea ebx, [esp + 0x4c]
push 0
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
je 0x460757
push eax
call fcn.004c3cab
fstp dword [ebx]
add esp, 4
inc esi
add ebx, 4
cmp esi, 3
jl 0x4600eb
push 0
push edi
call fcn.00429630
add esp, 8
mov esi, 0x4e730c
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x46014c
test cl, cl
je 0x460148
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x46014c
add eax, 2
add esi, 2
test cl, cl
jne 0x460124
xor eax, eax
jmp 0x460151
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x460775
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
jne 0x46017f
push str.WARNING:_missing_density_value_for_sky_fog_n
push 2
call dword [0x1173700]
add esp, 8
jmp 0x45eeb2
push esi
call fcn.004c3cab
fcomp qword [0x4d7428]
add esp, 4
fnstsw ax
test ah, 0x41
jne 0x4601aa
push str.WARNING:_last_value_for_skyfogvars_is_density_which_needs_to_be_0.0_1.0_n
push 2
call dword [0x1173700]
add esp, 8
jmp 0x45eeb2
push esi
call fcn.004c3cab
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
fstp dword [esp]
mov edx, dword [esp + 0x50]
push eax
push ecx
push edx
push 5
push 0
push 1
call fcn.00448450
add esp, 0x1c
jmp 0x45eeb2
push str.sunshader
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x46021f
push eax
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
jne 0x46020c
push str.WARNING:_missing_shader_name_for_sunshader_n
push 2
call dword [0x1173700]
add esp, 8
jmp 0x45eeb7
push eax
call fcn.0041c220
add esp, 4
mov dword [0x1173854], eax
jmp 0x45eeb7
push str.lightgridmulamb
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x460285
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
jne 0x460257
push str.WARNING:_missing_value_for_lightgrid_ambient_multiplier_n
push 2
call dword [0x1173700]
add esp, 8
jmp 0x45eeb7
push esi
call fcn.004c3cab
fcomp qword [0x4d7910]
add esp, 4
fnstsw ax
test ah, 0x41
jne 0x45eeb7
push esi
call fcn.004c3cab
fstp dword [0x117421c]
add esp, 4
jmp 0x45eeb7
push str.lightgridmuldir
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x4602eb
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
jne 0x4602bd
push str.WARNING:_missing_value_for_lightgrid_directional_multiplier_n
push 2
call dword [0x1173700]
add esp, 8
jmp 0x45eeb7
push esi
call fcn.004c3cab
fcomp qword [0x4d7910]
add esp, 4
fnstsw ax
test ah, 0x41
jne 0x45eeb7
push esi
call fcn.004c3cab
fstp dword [0x1174220]
add esp, 4
jmp 0x45eeb7
push str.waterfogvars
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x4603ec
lea eax, [esp + 0x28]
push eax
push 3
push edi
call fcn.00460810
add esp, 0xc
test eax, eax
je 0x4607ea
push 0
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
jne 0x46033f
push str.WARNING:_missing_density_distance_value_for_water_fog_n
push 2
call dword [0x1173700]
add esp, 8
jmp 0x45eeb7
push eax
call fcn.004c3cab
fcom dword [0x4d7378]
add esp, 4
fnstsw ax
test ah, 0x40
jne 0x4603d2
fcom dword [0x4d7390]
fld dword [esp + 0x30]
fnstsw ax
test ah, 0x41
jne 0x46039c
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x34]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x38]
sub esp, 8
fstp qword [esp]
call fcn.004c2c10
push eax
push str.0__d_1.1__f__f__f_200
lea ecx, [esp + 0x78]
push 0x40
push ecx
call fcn.00429d30
add esp, 0x28
jmp 0x4603d4
sub esp, 8
lea edx, [esp + 0x60]
fstp qword [esp]
fld dword [esp + 0x34]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x38]
sub esp, 8
fstp qword [esp]
sub esp, 8
fstp qword [esp]
push str.0_5__f__f__f__f_200
push 0x40
push edx
call fcn.00429d30
add esp, 0x2c
jmp 0x4603d4
fstp st(0)
lea eax, [esp + 0x58]
push eax
push str.r_waterFogColor
call dword [0x1173720]
add esp, 8
jmp 0x45eeb7
push str.fogvars
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x4604a7
lea ecx, [esp + 0x34]
push ecx
push 3
push edi
call fcn.00460810
add esp, 0xc
test eax, eax
je 0x4607ea
push 0
push edi
call fcn.00429630
mov cl, byte [eax]
add esp, 8
test cl, cl
jne 0x460440
push str.WARNING:_missing_density_value_for_the_fog_n
push 2
call dword [0x1173700]
add esp, 8
jmp 0x45eeb7
push eax
call fcn.004c3cab
fcom dword [0x4d7390]
add esp, 4
fnstsw ax
test ah, 1
jne 0x46045f
fld st(0)
call fcn.004c2c10
jmp 0x460464
mov eax, 5
fld dword [esp + 0x3c]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x40]
sub esp, 8
fstp qword [esp]
fld dword [esp + 0x44]
sub esp, 8
fstp qword [esp]
sub esp, 8
fstp qword [esp]
push eax
push str.0__d__f__f__f__f_0
call fcn.00429e50
push eax
push str.r_mapFogColor
call dword [0x1173720]
add esp, 0x30
jmp 0x45eeb7
push str.nofog
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x4604c4
mov dword [0xa50f8c], ebx
jmp 0x45eeb7
push str.allowcompress
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x4604e1
mov dword [0x1182678], ebx
jmp 0x45eeb7
push str.nocompress
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x460502
mov dword [0x1182678], 0xffffffff
jmp 0x45eeb7
push str.light
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x460523
push eax
push edi
call fcn.00429630
add esp, 8
jmp 0x45eeb7
push str.cull
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x460609
push eax
push edi
call fcn.00429630
mov esi, eax
add esp, 8
cmp byte [esi], 0
jne 0x460564
push 0xa50eb0
push str.WARNING:_missing_cull_parms_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
jmp 0x45eeb7
push str.none
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x4605fa
push str.twosided
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x4605fa
push str.disable
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x4605fa
push str.back
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x4605ef
push str.backside
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x4605ef
push str.backsided
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
je 0x4605ef
push 0xa50eb0
push esi
push str.WARNING:_invalid_cull_parm__s_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0x10
jmp 0x45eeb7
mov dword [0xa50f64], ebx
jmp 0x45eeb7
mov dword [0xa50f64], 2
jmp 0x45eeb7
push str.sort
push esi
call fcn.00429bc0
add esp, 8
test eax, eax
jne 0x4607b1
push edi
call fcn.0045e830
add esp, 4
jmp 0x45eeb7
push str.WARNING:_no_matching__found_n
push 2
call dword [0x1173700]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_missing_parameter_for_map_keyword_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push esi
push str.WARNING:_R_FindImageFile_could_not_find__s_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_missing_parameter_for_clampmap_keyword_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_missing_parameter_for_animMmap_keyword_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push edi
push str.WARNING:_R_FindImageFile_could_not_find__s_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_missing_parameter_for_videoMmap_keyword_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_missing_parameter_for_alphaFunc_keyword_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_missing_parameter_for_depthfunc_keyword_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push esi
push str.WARNING:_unknown_parameter__s_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_missing_vector_element_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_missing_parenthesis_in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push str.WARNING:_no_concluding__in_shader__s_n
push 2
call dword [0x1173700]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xa50eb0
push esi
push str.WARNING:_unknown_general_shader_parameter__s_in__s_n
push 2
call dword [0x1173700]
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x4607f3
mov eax, dword [0xa50f14]
test eax, eax
jne 0x4607f3
test byte [0xa50f0c], 0x40
jne 0x4607f3
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
mov dword [0xa50f04], ebx
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret