Function at 0x1001b2a0
Capabilities:
Inspect section memory permissions

Disassembly:
mov edx, dword [esp + 4]
mov eax, dword [str.DDCAPS_]
mov ecx, dword [0x100680e0]
mov dword [0x10084b78], eax
mov dword [0x10084b7c], ecx
test dl, 1
je 0x1001b2d6
push edi
mov edi, 0x10084b78
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1001b2c6
mov eax, dword [0x100680d8]
mov dword [edi], eax
pop edi
test dl, 2
je 0x1001b320
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b2e1
mov ecx, dword [str.ALIGNBOUNDARYDEST]
mov dword [eax], ecx
mov ecx, dword [0x100680c8]
mov dword [eax + 4], ecx
mov ecx, dword [0x100680cc]
mov dword [eax + 8], ecx
mov ecx, dword [0x100680d0]
mov dword [eax + 0xc], ecx
mov cx, word [0x100680d4]
mov word [eax + 0x10], cx
mov cl, byte [0x100680d6]
mov byte [eax + 0x12], cl
test dl, 4
je 0x1001b366
mov eax, 0x10084b78
dec eax
jmp 0x1001b330
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b330
mov ecx, dword [str.ALIGNSIZEDEST]
mov dword [eax], ecx
mov ecx, dword [0x100680b8]
mov dword [eax + 4], ecx
mov ecx, dword [0x100680bc]
mov dword [eax + 8], ecx
mov cx, word [0x100680c0]
mov word [eax + 0xc], cx
mov cl, byte [0x100680c2]
mov byte [eax + 0xe], cl
test dl, 8
je 0x1001b3a7
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b371
mov ecx, dword [str.ALIGNBOUNDARYSRC]
mov dword [eax], ecx
mov ecx, dword [0x100680a4]
mov dword [eax + 4], ecx
mov ecx, dword [0x100680a8]
mov dword [eax + 8], ecx
mov ecx, dword [0x100680ac]
mov dword [eax + 0xc], ecx
mov cx, word [0x100680b0]
mov word [eax + 0x10], cx
test dl, 0x10
je 0x1001b3df
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b3b2
mov ecx, dword [str.ALIGNSIZESRC]
mov dword [eax], ecx
mov ecx, dword [0x10068094]
mov dword [eax + 4], ecx
mov ecx, dword [0x10068098]
mov dword [eax + 8], ecx
mov cx, word [0x1006809c]
mov word [eax + 0xc], cx
test dl, 0x20
je 0x1001b41b
mov eax, 0x10084b78
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b3f0
mov ecx, dword [str.ALIGNSTRIDE]
mov dword [eax], ecx
mov ecx, dword [0x10068084]
mov dword [eax + 4], ecx
mov ecx, dword [0x10068088]
mov dword [eax + 8], ecx
mov cl, byte [0x1006808c]
mov byte [eax + 0xc], cl
test dl, 0x40
je 0x1001b43f
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b426
mov ecx, dword [str.BLT]
mov dword [eax], ecx
mov cl, byte [0x1006807c]
mov byte [eax + 4], cl
test dl, dl
jns 0x1001b474
mov eax, 0x10084b78
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b450
mov ecx, dword [str.BLTQUEUE]
mov dword [eax], ecx
mov ecx, dword [0x10068070]
mov dword [eax + 4], ecx
mov cx, word [0x10068074]
mov word [eax + 8], cx
test edx, 0x100
je 0x1001b4af
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b482
mov ecx, dword [str.BLTFOURCC]
mov dword [eax], ecx
mov ecx, dword [0x10068064]
mov dword [eax + 4], ecx
mov cx, word [0x10068068]
mov word [eax + 8], cx
mov cl, byte [0x1006806a]
mov byte [eax + 0xa], cl
test edx, 0x200
je 0x1001b4e2
mov eax, 0x10084b78
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b4c0
mov ecx, dword [str.BLTSTRETCH]
mov dword [eax], ecx
mov ecx, dword [0x10068058]
mov dword [eax + 4], ecx
mov ecx, dword [0x1006805c]
mov dword [eax + 8], ecx
test edx, 0x400
je 0x1001b509
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b4f0
mov ecx, dword [str.GDI]
mov dword [eax], ecx
mov cl, byte [0x10068050]
mov byte [eax + 4], cl
test edx, 0x800
je 0x1001b539
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b517
mov ecx, dword [0x10067c78]
mov dword [eax], ecx
mov ecx, dword [0x10067c7c]
mov dword [eax + 4], ecx
mov cl, byte [0x10067c80]
mov byte [eax + 8], cl
test edx, 0x1000
je 0x1001b57b
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b547
mov ecx, dword [str.OVERLAYCANTCLIP]
mov dword [eax], ecx
mov ecx, dword [0x1006803c]
mov dword [eax + 4], ecx
mov ecx, dword [0x10068040]
mov dword [eax + 8], ecx
mov ecx, dword [0x10068044]
mov dword [eax + 0xc], ecx
mov cl, byte [0x10068048]
mov byte [eax + 0x10], cl
test edx, 0x2000
je 0x1001b5c6
mov eax, 0x10084b78
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b590
mov ecx, dword [str.OVERLAYFOURCC]
mov dword [eax], ecx
mov ecx, dword [0x1006802c]
mov dword [eax + 4], ecx
mov ecx, dword [0x10068030]
mov dword [eax + 8], ecx
mov cx, word [0x10068034]
mov word [eax + 0xc], cx
mov cl, byte [0x10068036]
mov byte [eax + 0xe], cl
test edx, 0x4000
je 0x1001b5ff
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b5d4
mov ecx, dword [str.OVERLAYSTRETCH]
mov dword [eax], ecx
mov ecx, dword [0x1006801c]
mov dword [eax + 4], ecx
mov ecx, dword [0x10068020]
mov dword [eax + 8], ecx
mov ecx, dword [0x10068024]
mov dword [eax + 0xc], ecx
test edx, 0x8000
je 0x1001b632
mov eax, 0x10084b78
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b610
mov ecx, dword [str.PALETTE]
mov dword [eax], ecx
mov ecx, dword [0x10067c70]
mov dword [eax + 4], ecx
mov cl, byte [0x10067c74]
mov byte [eax + 8], cl
test edx, 0x10000
je 0x1001b66d
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b640
mov ecx, dword [str.PALETTEVSYNC]
mov dword [eax], ecx
mov ecx, dword [0x1006800c]
mov dword [eax + 4], ecx
mov ecx, dword [0x10068010]
mov dword [eax + 8], ecx
mov cx, word [0x10068014]
mov word [eax + 0xc], cx
test edx, 0x20000
je 0x1001b6ad
mov eax, 0x10084b78
dec eax
jmp 0x1001b680
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b680
mov ecx, dword [str.READSCANLINE]
mov dword [eax], ecx
mov ecx, dword [0x10067ffc]
mov dword [eax + 4], ecx
mov ecx, dword [0x10068000]
mov dword [eax + 8], ecx
mov cx, word [0x10068004]
mov word [eax + 0xc], cx
test edx, 0x40000
je 0x1001b6ed
mov eax, 0x10084b78
dec eax
jmp 0x1001b6c0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b6c0
mov ecx, dword [str.RESERVED1]
mov dword [eax], ecx
mov ecx, dword [0x10067cd0]
mov dword [eax + 4], ecx
mov cx, word [0x10067cd4]
mov word [eax + 8], cx
mov cl, byte [0x10067cd6]
mov byte [eax + 0xa], cl
test edx, 0x80000
je 0x1001b719
mov eax, 0x10084b78
dec eax
jmp 0x1001b700
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b700
mov ecx, dword [str.VBI]
mov dword [eax], ecx
mov cl, byte [0x10067ff4]
mov byte [eax + 4], cl
test edx, 0x100000
je 0x1001b74b
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b727
mov ecx, dword [str.ZBLTS]
mov dword [eax], ecx
mov cx, word [0x10067fec]
mov word [eax + 4], cx
mov cl, byte [0x10067fee]
mov byte [eax + 6], cl
test edx, 0x200000
je 0x1001b78d
mov eax, 0x10084b78
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b760
mov ecx, dword [str.ZOVERLAYS]
mov dword [eax], ecx
mov ecx, dword [0x10067fe0]
mov dword [eax + 4], ecx
mov cx, word [0x10067fe4]
mov word [eax + 8], cx
mov cl, byte [0x10067fe6]
mov byte [eax + 0xa], cl
test edx, 0x400000
je 0x1001b7c4
mov eax, 0x10084b78
dec eax
jmp 0x1001b7a0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b7a0
mov ecx, dword [str.COLORKEY]
mov dword [eax], ecx
mov ecx, dword [0x10067fd4]
mov dword [eax + 4], ecx
mov cx, word [0x10067fd8]
mov word [eax + 8], cx
test edx, 0x800000
je 0x1001b7f6
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b7d2
mov ecx, dword [str.ALPHA]
mov dword [eax], ecx
mov cx, word [0x10067cc8]
mov word [eax + 4], cx
mov cl, byte [0x10067cca]
mov byte [eax + 6], cl
test edx, 0x1000000
je 0x1001b83a
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b804
mov ecx, dword [str.COLORKEYHWASSIST]
mov dword [eax], ecx
mov ecx, dword [0x10067fc0]
mov dword [eax + 4], ecx
mov ecx, dword [0x10067fc4]
mov dword [eax + 8], ecx
mov ecx, dword [0x10067fc8]
mov dword [eax + 0xc], ecx
mov cx, word [0x10067fcc]
mov word [eax + 0x10], cx
test edx, 0x2000000
je 0x1001b86a
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b848
mov ecx, dword [str.NOHARDWARE]
mov dword [eax], ecx
mov ecx, dword [0x10067fb4]
mov dword [eax + 4], ecx
mov ecx, dword [0x10067fb8]
mov dword [eax + 8], ecx
test edx, 0x4000000
je 0x1001b8a5
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b878
mov ecx, dword [str.BLTCOLORFILL]
mov dword [eax], ecx
mov ecx, dword [0x10067fa4]
mov dword [eax + 4], ecx
mov ecx, dword [0x10067fa8]
mov dword [eax + 8], ecx
mov cx, word [0x10067fac]
mov word [eax + 0xc], cx
test edx, 0x8000000
je 0x1001b8e0
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b8b3
mov ecx, dword [str.BANKSWITCHED]
mov dword [eax], ecx
mov ecx, dword [0x10067f94]
mov dword [eax + 4], ecx
mov ecx, dword [0x10067f98]
mov dword [eax + 8], ecx
mov cx, word [0x10067f9c]
mov word [eax + 0xc], cx
test edx, 0x10000000
je 0x1001b91d
mov eax, 0x10084b78
dec eax
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b8f0
mov ecx, dword [str.BLTDEPTHFILL]
mov dword [eax], ecx
mov ecx, dword [0x10067f84]
mov dword [eax + 4], ecx
mov ecx, dword [0x10067f88]
mov dword [eax + 8], ecx
mov cx, word [0x10067f8c]
mov word [eax + 0xc], cx
test edx, 0x20000000
je 0x1001b952
mov eax, 0x10084b78
dec eax
jmp 0x1001b930
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b930
mov ecx, dword [str.CANCLIP]
mov dword [eax], ecx
mov ecx, dword [0x10067f78]
mov dword [eax + 4], ecx
mov cl, byte [0x10067f7c]
mov byte [eax + 8], cl
test edx, 0x40000000
je 0x1001b996
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b960
mov ecx, dword [str.CANCLIPSTRETCHED]
mov dword [eax], ecx
mov ecx, dword [0x10067f64]
mov dword [eax + 4], ecx
mov ecx, dword [0x10067f68]
mov dword [eax + 8], ecx
mov ecx, dword [0x10067f6c]
mov dword [eax + 0xc], ecx
mov cx, word [0x10067f70]
mov word [eax + 0x10], cx
test edx, edx
jns 0x1001b9cd
mov eax, 0x10084b78
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x1001b9a0
mov edx, dword [str.CANBLTSYSMEM]
mov ecx, dword [0x10067f54]
mov dword [eax], edx
mov edx, dword [0x10067f58]
mov dword [eax + 4], ecx
mov cx, word [0x10067f5c]
mov dword [eax + 8], edx
mov word [eax + 0xc], cx
mov eax, 0x10084b78
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1001b9d5
sub eax, edx
cmp eax, 7
jbe 0x1001b9ef
mov byte [eax + 0x10084b77], cl
mov eax, 0x10084b78
ret
mov byte [0x10084b78], 0
mov eax, 0x10084b78
ret