Function at 0x4aa300
Capabilities:
Inspect section memory permissions

Disassembly:
sub esp, 0x14
mov eax, dword [0x16e0d44]
mov ecx, dword [0x16e0d40]
push ebx
mov ebx, dword [esp + 0x1c]
or eax, ebx
xor eax, ecx
mov dword [esp + 0x1c], eax
je 0x4aaa53
test ah, 0x10
je 0x4aa33d
test bh, 0x10
je 0x4aa332
push 0x202
jmp 0x4aa337
push 0x203
call dword [0x16dcd1c]
mov al, byte [esp + 0x1c]
push esi
test al, al
push edi
je 0x4aa43d
test bl, bl
je 0x4aa432
mov eax, ebx
and eax, 0xf
dec eax
cmp eax, 8
ja case.default.0x4aa35e
jmp dword [eax*4 + 0x4aaa58]
xor edi, edi
jmp 0x4aa3b5
mov edi, 1
jmp 0x4aa3b5
mov edi, 0x306
jmp 0x4aa3b5
mov edi, 0x307
jmp 0x4aa3b5
mov edi, 0x302
jmp 0x4aa3b5
mov edi, 0x303
jmp 0x4aa3b5
mov edi, 0x304
jmp 0x4aa3b5
mov edi, 0x305
jmp 0x4aa3b5
mov edi, 0x308
jmp 0x4aa3b5
mov edi, 1
push str.GL_State:_invalid_src_blend_state_bits_n
push edi
call dword [0x160cc64]
add esp, 8
mov ecx, ebx
and ecx, 0xf0
lea eax, [ecx - 0x10]
cmp eax, 0x70
ja case.0x4aa3cd.24
xor edx, edx
mov dl, byte [eax + 0x4aaaa0]
jmp dword [edx*4 + 0x4aaa7c]
xor esi, esi
jmp 0x4aa41d
mov esi, 1
jmp 0x4aa41d
mov esi, 0x300
jmp 0x4aa41d
mov esi, 0x301
jmp 0x4aa41d
mov esi, 0x302
jmp 0x4aa41d
mov esi, 0x303
jmp 0x4aa41d
mov esi, 0x304
jmp 0x4aa41d
mov esi, 0x305
jmp 0x4aa41d
mov esi, 1
push str.GL_State:_invalid_dst_blend_state_bits_n
push esi
call dword [0x160cc64]
add esp, 8
push 0xbe2
call dword [0x16dccfc]
push esi
push edi
call dword [0x16dcfa8]
jmp 0x4aa43d
push 0xbe2
call dword [0x16dd150]
mov eax, dword [esp + 0x24]
test ah, 1
je 0x4aa457
test bh, 1
je 0x4aa44f
push 1
jmp 0x4aa451
push 0
call dword [0x16dd1f4]
mov eax, dword [esp + 0x24]
test ah, 2
je 0x4aa47d
test bh, 2
je 0x4aa46f
push 0
push 0
push 0
push 0
jmp 0x4aa477
push 1
push 1
push 1
push 1
call dword [0x16dcf80]
mov eax, dword [esp + 0x24]
test ah, 4
je 0x4aa4a2
test bh, 4
je 0x4aa492
push 0x1b01
jmp 0x4aa497
push 0x1b02
push 0x408
call dword [0x16dce54]
mov eax, dword [esp + 0x24]
test ah, 8
je 0x4aa4c3
test bh, 8
push 0xb71
je 0x4aa4bd
call dword [0x16dd150]
jmp 0x4aa4c3
call dword [0x16dccfc]
mov eax, dword [esp + 0x24]
mov esi, 0x4000
test esi, eax
je 0x4aa5e1
test esi, ebx
je 0x4aa5b1
cmp dword [0x16e0d3c], esi
je 0x4aa596
push 0x47057500
push 0x8571
push 0x2300
call dword [0x16dcca0]
push 0x46040000
push 0x8572
push 0x2300
call dword [0x16dcca0]
push 0x47057700
push 0x8580
push 0x2300
call dword [0x16dcca0]
push 0x44400000
push 0x8590
push 0x2300
call dword [0x16dcca0]
push 0x45b81000
push 0x8581
push 0x2300
call dword [0x16dcca0]
push 0x44400000
push 0x8591
push 0x2300
call dword [0x16dcca0]
push 0x47057700
push 0x8582
push 0x2300
call dword [0x16dcca0]
push 0x44408000
push 0x8592
push 0x2300
call dword [0x16dcca0]
mov dword [0x16e0d3c], esi
mov ecx, dword [0x16e0d28]
mov eax, 0x8570
cmp dword [ecx*4 + 0x16e0d30], eax
je 0x4aa5e1
push 0x47057000
jmp 0x4aa5ca
mov ecx, dword [0x16e0d28]
mov eax, 0x2100
cmp dword [ecx*4 + 0x16e0d30], eax
je 0x4aa5e1
push 0x46040000
push 0x2200
push 0x2300
mov dword [ecx*4 + 0x16e0d30], eax
call dword [0x16dcca0]
test dword [esp + 0x24], 0x70000000
je 0x4aa6fe
mov eax, ebx
and eax, 0x70000000
cmp eax, 0x40000000
ja 0x4aa697
je 0x4aa67c
cmp eax, 0x20000000
ja 0x4aa65f
je 0x4aa645
test eax, eax
je 0x4aa635
cmp eax, 0x10000000
jne 0x4aa6fe
push 0xbc0
call dword [0x16dccfc]
push 0x3d4ccccd
push 0x204
jmp 0x4aa6f8
push 0xbc0
call dword [0x16dd150]
jmp 0x4aa6fe
push 0xbc0
call dword [0x16dccfc]
push 0x3f000000
push 0x201
jmp 0x4aa6f8
cmp eax, 0x30000000
jne 0x4aa6fe
push 0xbc0
call dword [0x16dccfc]
push 0x3f000000
jmp 0x4aa6f3
push 0xbc0
call dword [0x16dccfc]
mov eax, dword [0x16e0bac]
mov ecx, dword [eax + 0x1c]
push ecx
push 0x201
jmp 0x4aa6f8
cmp eax, 0x50000000
je 0x4aa6df
cmp eax, 0x60000000
je 0x4aa6c3
cmp eax, 0x70000000
jne 0x4aa6fe
push 0xbc0
call dword [0x16dccfc]
mov edx, dword [0x16e0ba8]
mov eax, dword [edx + 0x1c]
push eax
jmp 0x4aa6f3
push 0xbc0
call dword [0x16dccfc]
mov ecx, dword [0x16e0ba8]
mov edx, dword [ecx + 0x1c]
push edx
push 0x201
jmp 0x4aa6f8
push 0xbc0
call dword [0x16dccfc]
mov eax, dword [0x16e0bac]
mov ecx, dword [eax + 0x1c]
push ecx
push 0x206
call dword [0x16dcdc8]
mov eax, dword [esp + 0x24]
test ah, 0x20
je 0x4aa8fb
mov edx, dword [0x16e0b94]
fld dword [edx + 0x1c]
fcomp dword [0x54e4d0]
fnstsw ax
test ah, 0x44
jnp 0x4aa740
mov eax, ebx
and eax, 0x2000
neg eax
sbb eax, eax
and eax, 0x582e
add eax, 0x2901
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
jmp 0x4aa75b
mov ecx, ebx
not ecx
and ecx, 0x2000
or ecx, 0x5200000
shr ecx, 0xd
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
mov eax, dword [0x16e0c54]
fstp dword [esp + 0xc]
test eax, eax
je 0x4aa8d5
mov edi, dword [0x16e0d28]
test edi, edi
je 0x4aa7ac
push 0x84c0
call eax
push str.glActiveTextureARB__GL_TEXTURE0_ARB___n
call fcn.004b5b10
add esp, 4
push 0x84c0
call dword [0x16e0c7c]
push str.glClientActiveTextureARB__GL_TEXTURE0_ARB___n
call fcn.004b5b10
add esp, 4
mov dword [0x16e0d28], 0
mov esi, dword [esp + 0xc]
push esi
push 0x2802
push 0xde1
call dword [0x16dcf30]
push esi
push 0x2803
push 0xde1
call dword [0x16dcf30]
cmp dword [0x16e0d28], 1
je 0x4aa815
push 0x84c1
call dword [0x16e0c54]
push str.glActiveTextureARB__GL_TEXTURE1_ARB___n
call fcn.004b5b10
add esp, 4
push 0x84c1
call dword [0x16e0c7c]
push str.glClientActiveTextureARB__GL_TEXTURE1_ARB___n
call fcn.004b5b10
add esp, 4
mov dword [0x16e0d28], 1
push esi
push 0x2802
push 0xde1
call dword [0x16dcf30]
push esi
push 0x2803
push 0xde1
call dword [0x16dcf30]
cmp dword [0x16e0d28], edi
je 0x4aa8fb
test edi, edi
jne 0x4aa87f
push 0x84c0
call dword [0x16e0c54]
push str.glActiveTextureARB__GL_TEXTURE0_ARB___n
call fcn.004b5b10
add esp, 4
push 0x84c0
call dword [0x16e0c7c]
push str.glClientActiveTextureARB__GL_TEXTURE0_ARB___n
call fcn.004b5b10
add esp, 4
mov dword [0x16e0d28], edi
jmp 0x4aa8fb
cmp edi, 1
jne 0x4aa8bc
push 0x84c1
call dword [0x16e0c54]
push str.glActiveTextureARB__GL_TEXTURE1_ARB___n
call fcn.004b5b10
add esp, 4
push 0x84c1
call dword [0x16e0c7c]
push str.glClientActiveTextureARB__GL_TEXTURE1_ARB___n
call fcn.004b5b10
add esp, 4
mov dword [0x16e0d28], edi
jmp 0x4aa8fb
push edi
push str.GL_SelectTexture:_unit___i
push 1
call dword [0x160cc64]
add esp, 0xc
mov dword [0x16e0d28], edi
jmp 0x4aa8fb
mov esi, dword [esp + 0xc]
push esi
push 0x2802
push 0xde1
call dword [0x16dcf30]
push esi
push 0x2803
push 0xde1
call dword [0x16dcf30]
mov eax, dword [esp + 0x24]
mov ecx, 0x10000
pop edi
pop esi
test ecx, eax
je 0x4aa9a1
mov eax, dword [0x16e0d44]
push 0xb60
test ecx, eax
je 0x4aa98a
call dword [0x16dccfc]
test ebx, 0x40000
je 0x4aa954
lea edx, [esp + 8]
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0x3f800000
push edx
jmp 0x4aaa3c
test ebx, 0x80000
je 0x4aaa37
lea eax, [esp + 8]
mov dword [esp + 8], 0x3f800000
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 0x10], 0x3f800000
mov dword [esp + 0x14], 0x3f800000
push eax
jmp 0x4aaa3c
call dword [0x16dd150]
mov eax, dword [0x16e0d44]
or eax, ebx
pop ebx
mov dword [0x16e0d40], eax
add esp, 0x14
ret
test dword [0x16e0d44], ecx
je 0x4aaa47
test eax, 0x20000
je 0x4aa9cf
test ebx, 0x20000
push 0xb60
je 0x4aa9c9
call dword [0x16dccfc]
jmp 0x4aa9cf
call dword [0x16dd150]
test dword [esp + 0x1c], 0xc0000
je 0x4aaa47
test ebx, 0x40000
je 0x4aaa08
lea ecx, [esp + 8]
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0x3f800000
push ecx
jmp 0x4aaa3c
test ebx, 0x80000
je 0x4aaa37
lea edx, [esp + 8]
mov dword [esp + 8], 0x3f800000
mov dword [esp + 0xc], 0x3f800000
mov dword [esp + 0x10], 0x3f800000
mov dword [esp + 0x14], 0x3f800000
push edx
jmp 0x4aaa3c
push 0x16e0d48
push 0xb66
call dword [0x16dcfd4]
mov eax, dword [0x16e0d44]
or eax, ebx
mov dword [0x16e0d40], eax
pop ebx
add esp, 0x14
ret