Function at 0x4268c0
Capabilities:
Inspect section memory permissions

Disassembly:
push 0xffffffffffffffff
push 0x458776
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x188
push ebx
push ebp
push esi
push edi
mov esi, ecx
push 0x45a67d
lea ecx, [esp + 0x18]
call fcn.004022f0
push 0x45a67d
lea ecx, [esp + 0x14]
mov dword [esp + 0x1a4], 0
call fcn.004022f0
mov eax, dword [esi + 4]
push 0
lea edx, [esp + 0x20]
push edx
mov dword [esp + 0x24], 0x17c
mov ecx, dword [eax]
push eax
mov byte [esp + 0x1ac], 1
call dword [ecx + 0x2c]
test byte [esp + 0x20], 1
mov eax, str._DDCAPS_3D
lea edx, [eax + 1]
je 0x426944
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426937
lea ecx, [esp + 0x14]
jmp 0x42694f
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426944
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_3D
call fcn.00426410
test byte [esp + 0x20], 2
mov eax, str._DDCAPS_ALIGNBOUNDARYDEST
lea edx, [eax + 1]
je 0x426980
jmp 0x426970
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426970
lea ecx, [esp + 0x14]
jmp 0x42698b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426980
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_ALIGNBOUNDARYDEST
call fcn.00426410
test byte [esp + 0x20], 8
mov eax, str._DDCAPS_ALIGNBOUNDARYSRC
lea edx, [eax + 1]
je 0x4269b4
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4269a7
lea ecx, [esp + 0x14]
jmp 0x4269bf
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4269b4
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_ALIGNBOUNDARYSRC
call fcn.00426410
test byte [esp + 0x20], 4
mov eax, str._DDCAPS_ALIGNSIZEDEST
lea edx, [eax + 1]
je 0x4269f0
jmp 0x4269e0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4269e0
lea ecx, [esp + 0x14]
jmp 0x4269fb
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4269f0
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_ALIGNSIZEDEST
call fcn.00426410
test byte [esp + 0x20], 0x10
mov eax, str._DDCAPS_ALIGNSIZESRC
lea edx, [eax + 1]
je 0x426a24
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426a17
lea ecx, [esp + 0x14]
jmp 0x426a2f
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426a24
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_ALIGNSIZESRC
call fcn.00426410
test byte [esp + 0x20], 0x20
mov eax, str._DDCAPS_ALIGNSTRIDE
lea edx, [eax + 1]
je 0x426a60
jmp 0x426a50
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426a50
lea ecx, [esp + 0x14]
jmp 0x426a6b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426a60
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_ALIGNSTRIDE
call fcn.00426410
test dword [esp + 0x20], 0x800000
mov eax, str._DDCAPS_ALPHA
lea edx, [eax + 1]
je 0x426aa0
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426a90
lea ecx, [esp + 0x14]
jmp 0x426aab
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426aa0
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_ALPHA
call fcn.00426410
test dword [esp + 0x20], 0x8000000
mov eax, str._DDCAPS_BANKSWITCHED
lea edx, [eax + 1]
je 0x426ae0
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426ad0
lea ecx, [esp + 0x14]
jmp 0x426aeb
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426ae0
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_BANKSWITCHED
call fcn.00426410
test byte [esp + 0x20], 0x40
mov eax, str._DDCAPS_BLT
lea edx, [eax + 1]
je 0x426b14
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426b07
lea ecx, [esp + 0x14]
jmp 0x426b1f
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426b14
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_BLT
call fcn.00426410
test dword [esp + 0x20], 0x4000000
mov eax, str._DDCAPS_BLTCOLORFILL
lea edx, [eax + 1]
je 0x426b50
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426b40
lea ecx, [esp + 0x14]
jmp 0x426b5b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426b50
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_BLTCOLORFILL
call fcn.00426410
test dword [esp + 0x20], 0x10000000
mov eax, str._DDCAPS_BLTDEPTHFILL
lea edx, [eax + 1]
je 0x426b90
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426b80
lea ecx, [esp + 0x14]
jmp 0x426b9b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426b90
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_BLTDEPTHFILL
call fcn.00426410
mov eax, dword [esp + 0x20]
test ah, 1
mov eax, str._DDCAPS_BLTFOURCC
lea edx, [eax + 1]
je 0x426bd0
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426bc0
lea ecx, [esp + 0x14]
jmp 0x426bdb
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426bd0
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_BLTFOURCC
call fcn.00426410
mov al, byte [esp + 0x20]
test al, al
mov eax, str._DDCAPS_BLTQUEUE
lea edx, [eax + 1]
jns 0x426c05
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426bf8
lea ecx, [esp + 0x14]
jmp 0x426c10
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426c05
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_BLTQUEUE
call fcn.00426410
mov eax, dword [esp + 0x20]
test ah, 2
mov eax, str._DDCAPS_BLTSTRETCH
lea edx, [eax + 1]
je 0x426c40
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426c30
lea ecx, [esp + 0x14]
jmp 0x426c4b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426c40
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_BLTSTRETCH
call fcn.00426410
mov eax, dword [esp + 0x20]
mov ebx, DirectSoundCreate
test ebx, eax
mov eax, str._DDCAPS_CANBLTSYSMEM
lea edx, [eax + 1]
je 0x426c80
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426c70
lea ecx, [esp + 0x14]
jmp 0x426c8b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426c80
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_CANBLTSYSMEM
call fcn.00426410
mov eax, dword [esp + 0x20]
mov ebp, 0x20000000
test ebp, eax
mov eax, str._DDCAPS_CANCLIP
lea edx, [eax + 1]
je 0x426cc0
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426cb0
lea ecx, [esp + 0x14]
jmp 0x426ccb
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426cc0
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_CANCLIP
call fcn.00426410
mov eax, dword [esp + 0x20]
mov esi, 0x40000000
test esi, eax
mov eax, str._DDCAPS_CANCLIPSTRETCHED
lea edx, [eax + 1]
je 0x426d00
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426cf0
lea ecx, [esp + 0x14]
jmp 0x426d0b
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426d00
lea ecx, [esp + 0x10]
sub eax, edx
push eax
push str._DDCAPS_CANCLIPSTRETCHED
call fcn.00426410
test dword [esp + 0x20], 0x400000
je 0x426d4a
mov eax, str._DDCAPS_COLORKEY
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x426d30
sub eax, edx
push eax
push str._DDCAPS_COLORKEY
lea ecx, [esp + 0x1c]
call fcn.00426410
jmp 0x426d58
push str._DDCAPS_COLORKEY
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x20], 0x1000000
push str._DDCAPS_COLORKEYHWASSIST
lea ecx, [esp + 0x18]
jne 0x426d6f
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x20]
test ah, 4
push str._DDCAPS_GDI
lea ecx, [esp + 0x18]
jne 0x426d8a
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x20], 0x2000000
push str._DDCAPS_NOHARDWARE
lea ecx, [esp + 0x18]
jne 0x426da6
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x20]
test ah, 8
push str._DDCAPS_OVERLAY
lea ecx, [esp + 0x18]
jne 0x426dc1
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x20]
test ah, 0x10
push str._DDCAPS_OVERLAYCANTCLIP
lea ecx, [esp + 0x18]
jne 0x426ddc
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x20]
test ah, 0x20
push str._DDCAPS_OVERLAYFOURCC
lea ecx, [esp + 0x18]
jne 0x426df7
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x20]
test ah, 0x40
push str._DDCAPS_OVERLAYSTRETCH
lea ecx, [esp + 0x18]
jne 0x426e12
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x20]
test ah, ah
push str._DDCAPS_PALETTE
lea ecx, [esp + 0x18]
js 0x426e2c
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x20], 0x10000
push str._DDCAPS_PALETTEVSYNC
lea ecx, [esp + 0x18]
jne 0x426e48
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x20], 0x20000
push str._DDCAPS_READSCANLINE
lea ecx, [esp + 0x18]
jne 0x426e64
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x20], 0x80000
push str._DDCAPS_VBI
lea ecx, [esp + 0x18]
jne 0x426e80
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x20], 0x100000
push str._DDCAPS_ZBLTS
lea ecx, [esp + 0x18]
jne 0x426e9c
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x20]
mov edi, 0x200000
test edi, eax
push str._DDCAPS_ZOVERLAYS
lea ecx, [esp + 0x18]
jne 0x426ebb
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push eax
push ecx
push str.dwCaps
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push str._t_s:_s
call fcn.004022f0
mov edx, dword [0x477970]
mov eax, dword [edx + 4]
push eax
call fcn.00419450
mov ecx, dword [esp + 0x24]
push 0x45a67d
push ecx
call fcn.0043c80d
add esp, 0x1c
test eax, eax
je 0x426f31
mov edx, dword [esp + 0x10]
push edx
push str._unsupported_
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push str._t_s__s
call fcn.004022f0
mov eax, dword [0x477970]
mov ecx, dword [eax + 4]
push ecx
call fcn.00419450
add esp, 0x10
push 0x45a67d
lea ecx, [esp + 0x18]
call fcn.004022b0
push 0x45a67d
lea ecx, [esp + 0x14]
call fcn.004022b0
test dword [esp + 0x24], edi
push str._DDCAPS_ZOVERLAYS
lea ecx, [esp + 0x18]
jne 0x426f60
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x24], 8
push str._DDCAPS2_AUTOFLIPOVERLAY
lea ecx, [esp + 0x18]
jne 0x426f79
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x24]
test ah, 0x40
push str._DDCAPS2_CANBOBHARDWARE
lea ecx, [esp + 0x18]
jne 0x426f94
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x24], 0x10
push str._DDCAPS2_CANBOBINTERLEAVED
lea ecx, [esp + 0x18]
jne 0x426fad
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x24], 0x20
push str._DDCAPS2_CANBOBNONINTERLEAVED
lea ecx, [esp + 0x18]
jne 0x426fc6
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x24], 0x100000
push str._DDCAPS2_CANCALIBRATEGAMMA
lea ecx, [esp + 0x18]
jne 0x426fe2
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x24]
test ah, 1
push str._DDCAPS2_CANDROPZ16BIT
lea ecx, [esp + 0x18]
jne 0x426ffd
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x24]
test ah, 0x20
push str._DDCAPS2_CANFLIPODDEVEN
lea ecx, [esp + 0x18]
jne 0x427018
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x24], 0x800000
push str._DDCAPS2_CANMANAGETEXTURE
lea ecx, [esp + 0x18]
jne 0x427034
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x24], 0x80000
push str._DDCAPS2_CANRENDERWINDOWED
lea ecx, [esp + 0x18]
jne 0x427050
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x24], 1
push str._DDCAPS2_CERTIFIED
lea ecx, [esp + 0x18]
jne 0x427069
lea ecx, [esp + 0x14]
call fcn.004264d0
mov al, byte [esp + 0x24]
test al, al
push str._DDCAPS2_COLORCONTROLPRIMARY
lea ecx, [esp + 0x18]
js 0x427083
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x24], 0x40
push str._DDCAPS2_COLORCONTROLOVERLAY
lea ecx, [esp + 0x18]
jne 0x42709c
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x24]
test ah, ah
push str._DDCAPS2_COPYFOURCC
lea ecx, [esp + 0x18]
js 0x4270b6
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x24], edi
push str._DDCAPS2_FLIPINTERVAL
lea ecx, [esp + 0x18]
jne 0x4270ce
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x24], 0x400000
push str._DDCAPS2_FLIPNOVSYNC
lea ecx, [esp + 0x18]
jne 0x4270ea
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x24], 2
push str._DDCAPS2_NO2DDURING3DSCENE
lea ecx, [esp + 0x18]
jne 0x427103
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x24]
test ah, 2
push str._DDCAPS2_NONLOCALVIDMEM
lea ecx, [esp + 0x18]
jne 0x42711e
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x24]
test ah, 4
push str._DDCAPS2_NONLOCALVIDMEMCAPS
lea ecx, [esp + 0x18]
jne 0x427139
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x24]
test ah, 8
push str._DDCAPS2_NOPAGELOCKREQUIRED
lea ecx, [esp + 0x18]
jne 0x427154
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x24], 0x20000
push str._DDCAPS2_PRIMARYGAMMA
lea ecx, [esp + 0x18]
jne 0x427170
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x24], 0x2000000
push str._DDCAPS2_STEREO
lea ecx, [esp + 0x18]
jne 0x42718c
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x24], 0x1000000
push str._DDCAPS2_TEXMANINNONLOCALVIDMEM
lea ecx, [esp + 0x18]
jne 0x4271a8
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x24], 4
push str._DDCAPS2_VIDEOPORT
lea ecx, [esp + 0x18]
jne 0x4271c1
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x24]
test ah, 0x10
push str._DDCAPS2_WIDESURFACES
lea ecx, [esp + 0x18]
jne 0x4271dc
lea ecx, [esp + 0x14]
call fcn.004264d0
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push edx
push eax
push str.dwCaps2
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push str._t_s:_s
call fcn.004022f0
mov ecx, dword [0x477970]
mov edx, dword [ecx + 4]
push edx
call fcn.00419450
mov eax, dword [esp + 0x24]
push 0x45a67d
push eax
call fcn.0043c80d
add esp, 0x1c
test eax, eax
je 0x427253
mov ecx, dword [esp + 0x10]
push ecx
push str._unsupported_
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push str._t_s__s
call fcn.004022f0
mov edx, dword [0x477970]
mov eax, dword [edx + 4]
push eax
call fcn.00419450
add esp, 0x10
push 0x45a67d
lea ecx, [esp + 0x18]
call fcn.004022b0
push 0x45a67d
lea ecx, [esp + 0x14]
call fcn.004022b0
test byte [esp + 0x28], 1
push str._DDCKEYCAPS_DESTBLT
lea ecx, [esp + 0x18]
jne 0x427283
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x28], 2
push str._DDCKEYCAPS_DESTBLTCLRSPACE
lea ecx, [esp + 0x18]
jne 0x42729c
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x28], 4
push str._DDCKEYCAPS_DESTBLTCLRSPACEYUV
lea ecx, [esp + 0x18]
jne 0x4272b5
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x28], 8
push str._DDCKEYCAPS_DESTBLTYUV
lea ecx, [esp + 0x18]
jne 0x4272ce
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x28], 0x10
push str._DDCKEYCAPS_DESTOVERLAY
lea ecx, [esp + 0x18]
jne 0x4272e7
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x28], 0x20
push str._DDCKEYCAPS_DESTOVERLAYCLRSPACE
lea ecx, [esp + 0x18]
jne 0x427300
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x28], 0x40
push str._DDCKEYCAPS_DESTOVERLAYCLRSPACEYUV
lea ecx, [esp + 0x18]
jne 0x427319
lea ecx, [esp + 0x14]
call fcn.004264d0
mov al, byte [esp + 0x28]
test al, al
push str._DDCKEYCAPS_DESTOVERLAYONEACTIVE
lea ecx, [esp + 0x18]
js 0x427333
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
test ah, 1
push str._DDCKEYCAPS_DESTOVERLAYYUV
lea ecx, [esp + 0x18]
jne 0x42734e
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
mov edi, 0x40000
test edi, eax
push str._DDCKEYCAPS_NOCOSTOVERLAY
lea ecx, [esp + 0x18]
jne 0x42736d
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
test ah, 2
push str._DDCKEYCAPS_SRCBLT
lea ecx, [esp + 0x18]
jne 0x427388
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
test ah, 4
push str._DDCKEYCAPS_SRCBLTCLRSPACE
lea ecx, [esp + 0x18]
jne 0x4273a3
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
test ah, 8
push str._DDCKEYCAPS_SRCBLTCLRSPACEYUV
lea ecx, [esp + 0x18]
jne 0x4273be
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
test ah, 0x10
push str._DDCKEYCAPS_SRCBLTYUV
lea ecx, [esp + 0x18]
jne 0x4273d9
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
test ah, 0x20
push str._DDCKEYCAPS_SRCOVERLAY
lea ecx, [esp + 0x18]
jne 0x4273f4
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
test ah, 0x40
push str._DDCKEYCAPS_SRCOVERLAYCLRSPACE
lea ecx, [esp + 0x18]
jne 0x42740f
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x28]
test ah, ah
push str._DDCKEYCAPS_SRCOVERLAYCLRSPACEYUV
lea ecx, [esp + 0x18]
js 0x427429
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x28], 0x10000
push str._DDCKEYCAPS_SRCOVERLAYONEACTIVE
lea ecx, [esp + 0x18]
jne 0x427445
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x28], 0x20000
push str._DDCKEYCAPS_SRCOVERLAYYUV
lea ecx, [esp + 0x18]
jne 0x427461
lea ecx, [esp + 0x14]
call fcn.004264d0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push ecx
push edx
push str.dwCKeyCaps
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push str._t_s:_s
call fcn.004022f0
mov eax, dword [0x477970]
mov ecx, dword [eax + 4]
push ecx
call fcn.00419450
mov edx, dword [esp + 0x24]
push 0x45a67d
push edx
call fcn.0043c80d
add esp, 0x1c
test eax, eax
je 0x4274d7
mov eax, dword [esp + 0x10]
push eax
push str._unsupported_
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push str._t_s__s
call fcn.004022f0
mov ecx, dword [0x477970]
mov edx, dword [ecx + 4]
push edx
call fcn.00419450
add esp, 0x10
push 0x45a67d
lea ecx, [esp + 0x18]
call fcn.004022b0
push 0x45a67d
lea ecx, [esp + 0x14]
call fcn.004022b0
test byte [esp + 0x2c], 1
push str._DDFXCAPS_BLTALPHA
lea ecx, [esp + 0x18]
jne 0x427507
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x2c], 0x20
push str._DDFXCAPS_BLTARITHSTRETCHY
lea ecx, [esp + 0x18]
jne 0x427520
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x2c], 0x10
push str._DDFXCAPS_BLTARITHSTRETCHYN
lea ecx, [esp + 0x18]
jne 0x427539
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x2c], 0x20
push str._DDFXCAPS_BLTFILTER
lea ecx, [esp + 0x18]
jne 0x427552
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x2c], 0x40
push str._DDFXCAPS_BLTMIRRORLEFTRIGHT
lea ecx, [esp + 0x18]
jne 0x42756b
lea ecx, [esp + 0x14]
call fcn.004264d0
mov al, byte [esp + 0x2c]
test al, al
push str._DDFXCAPS_BLTMIRRORUPDOWN
lea ecx, [esp + 0x18]
js 0x427585
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x2c]
test ah, 1
push str._DDFXCAPS_BLTROTATION
lea ecx, [esp + 0x18]
jne 0x4275a0
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x2c]
test ah, 2
push str._DDFXCAPS_BLTROTATION90
lea ecx, [esp + 0x18]
jne 0x4275bb
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x2c]
test ah, 4
push str._DDFXCAPS_BLTSHRINKX
lea ecx, [esp + 0x18]
jne 0x4275d6
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x2c]
test ah, 8
push str._DDFXCAPS_BLTSHRINKXN
lea ecx, [esp + 0x18]
jne 0x4275f1
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x2c]
test ah, 0x10
push str._DDFXCAPS_BLTSHRINKY
lea ecx, [esp + 0x18]
jne 0x42760c
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x2c]
test ah, 0x20
push str._DDFXCAPS_BLTSHRINKYN
lea ecx, [esp + 0x18]
jne 0x427627
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x2c]
test ah, 0x40
push str._DDFXCAPS_BLTSTRETCHX
lea ecx, [esp + 0x18]
jne 0x427642
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x2c]
test ah, ah
push str._DDFXCAPS_BLTSTRETCHXN
lea ecx, [esp + 0x18]
js 0x42765c
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x10000
push str._DDFXCAPS_BLTSTRETCHY
lea ecx, [esp + 0x18]
jne 0x427678
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x20000
push str._DDFXCAPS_BLTSTRETCHYN
lea ecx, [esp + 0x18]
jne 0x427694
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x2c], 4
push str._DDFXCAPS_OVERLAYALPHA
lea ecx, [esp + 0x18]
jne 0x4276ad
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], edi
push str._DDFXCAPS_OVERLAYARITHSTRETCHY
lea ecx, [esp + 0x18]
jne 0x4276c5
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x2c], 8
push str._DDFXCAPS_OVERLAYARITHSTRETCHYN
lea ecx, [esp + 0x18]
jne 0x4276de
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], edi
push str._DDFXCAPS_OVERLAYFILTER
lea ecx, [esp + 0x18]
jne 0x4276f6
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x8000000
push str._DDFXCAPS_OVERLAYMIRRORLEFTRIGHT
lea ecx, [esp + 0x18]
jne 0x427712
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x10000000
push str._DDFXCAPS_OVERLAYMIRRORUPDOWN
lea ecx, [esp + 0x18]
jne 0x42772e
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x80000
push str._DDFXCAPS_OVERLAYSHRINKX
lea ecx, [esp + 0x18]
jne 0x42774a
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x100000
push str._DDFXCAPS_OVERLAYSHRINKXN
lea ecx, [esp + 0x18]
jne 0x427766
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x200000
push str._DDFXCAPS_OVERLAYSHRINKY
lea ecx, [esp + 0x18]
jne 0x427782
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x400000
push str._DDFXCAPS_OVERLAYSHRINKYN
lea ecx, [esp + 0x18]
jne 0x42779e
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x800000
push str._DDFXCAPS_OVERLAYSTRETCHX
lea ecx, [esp + 0x18]
jne 0x4277ba
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x1000000
push str._DDFXCAPS_OVERLAYSTRETCHXN
lea ecx, [esp + 0x18]
jne 0x4277d6
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x2000000
push str._DDFXCAPS_OVERLAYSTRETCHY
lea ecx, [esp + 0x18]
jne 0x4277f2
lea ecx, [esp + 0x14]
call fcn.004264d0
test dword [esp + 0x2c], 0x4000000
push str._DDFXCAPS_OVERLAYSTRETCHYN
lea ecx, [esp + 0x18]
jne 0x42780e
lea ecx, [esp + 0x14]
call fcn.004264d0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push eax
push ecx
push str.dwFXCaps
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push str._t_s:_s
call fcn.004022f0
mov edx, dword [0x477970]
mov eax, dword [edx + 4]
push eax
call fcn.00419450
mov ecx, dword [esp + 0x24]
push 0x45a67d
push ecx
call fcn.0043c80d
add esp, 0x1c
test eax, eax
je 0x427884
mov edx, dword [esp + 0x10]
push edx
push str._unsupported_
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push str._t_s__s
call fcn.004022f0
mov eax, dword [0x477970]
mov ecx, dword [eax + 4]
push ecx
call fcn.00419450
add esp, 0x10
push 0x45a67d
lea ecx, [esp + 0x18]
call fcn.004022b0
push 0x45a67d
lea ecx, [esp + 0x14]
call fcn.004022b0
test byte [esp + 0x30], 1
push str._DDFXALPHACAPS_BLTALPHAEDGEBLEND
lea ecx, [esp + 0x18]
jne 0x4278b4
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x30], 2
push str._DDFXALPHACAPS_BLTALPHAPIXELS
lea ecx, [esp + 0x18]
jne 0x4278cd
lea ecx, [esp + 0x14]
call fcn.004264d0
test byte [esp + 0x30], 4
push str._DDFXALPHACAPS_BLTALPHAPIXELSNEG
lea ecx, [esp + 0x18]
jne 0x4278e6