Function at 0x1003ec00
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x2b7e70e
mov eax, dword fs:[0]
push eax
sub esp, 0xb0
push esi
mov eax, dword [0x2bb76d0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call fcn.10040950
mov eax, dword [0x2bbc64c]
and eax, 1
jne 0x1003ec6c
mov ecx, dword [0x2bbc64c]
or ecx, 1
mov dword [0x2bbc64c], ecx
mov dword [ebp - 4], 0
mov ecx, 0x2bbc640
call fcn.100416c0
push 0x2b8e220
call fcn.100d0ac3
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x48], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x10], edx
movzx eax, byte [ebp + 0x10]
test eax, eax
jne 0x1003ed2c
lea ecx, [ebp - 0x14]
push ecx
lea edx, [ebp - 0x2c]
push edx
mov ecx, 0x2bbc640
call fcn.10041880
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], edx
mov eax, dword [0x2bbc644]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x34], 0
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x30], ecx
mov edx, 0x2bbc640
test edx, edx
jne 0x1003ecd0
call fcn.100d0654
mov dword [ebp - 0x34], 0x2bbc640
cmp dword [ebp - 0x24], 0
je 0x1003ece5
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x34]
je 0x1003ecea
call fcn.100d0654
mov ecx, dword [ebp - 0x20]
xor edx, edx
cmp ecx, dword [ebp - 0x30]
sete dl
movzx eax, dl
neg eax
sbb eax, eax
add eax, 1
movzx ecx, al
test ecx, ecx
je 0x1003ed2c
cmp dword [ebp - 0x24], 0
jne 0x1003ed11
call fcn.100d0654
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
cmp eax, dword [edx + 4]
jne 0x1003ed21
call fcn.100d0654
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x14]
jmp 0x1003ef31
mov dword [ebp - 0x1c], 0xffffffff
mov byte [ebp - 0x15], 0
cmp dword [ebp + 8], 0
je 0x1003ed48
mov edx, dword [ebp + 8]
and edx, 0x400001ff
je 0x1003ed4c
mov byte [ebp - 0x15], 1
mov eax, dword [ebp + 8]
and eax, 0x200
je 0x1003ed74
mov ecx, 0x2bb9208
call fcn.1003f030
movzx ecx, al
test ecx, ecx
je 0x1003ed6f
call fcn.10089190
mov dword [ebp - 0x1c], eax
jmp 0x1003ef01
mov edx, dword [ebp + 8]
and edx, 0x20000000
je 0x1003eda2
mov ecx, 0x2bb9208
call fcn.1003ef50
movzx eax, al
test eax, eax
je 0x1003ed9d
push 1
call fcn.10088480
add esp, 4
mov dword [ebp - 0x1c], eax
jmp 0x1003ef01
mov ecx, dword [ebp + 8]
and ecx, 0x400
je 0x1003edd3
movzx edx, byte [ebp + 0x10]
test edx, edx
jne 0x1003edc6
mov ecx, 0x2bb9208
call fcn.1003efc0
movzx eax, al
test eax, eax
je 0x1003edce
call fcn.1004cd80
mov dword [ebp - 0x1c], eax
jmp 0x1003ef01
mov ecx, dword [ebp + 8]
and ecx, 1
je 0x1003edea
mov edx, dword [ebp - 0x1c]
push edx
call fcn.1003f0a0
add esp, 4
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 8]
and eax, 2
je 0x1003ee03
push 1
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.1003f410
add esp, 8
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp + 8]
and edx, 4
je 0x1003ee1a
mov eax, dword [ebp - 0x1c]
push eax
call fcn.1003f5d0
add esp, 4
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp + 8]
and ecx, 8
je 0x1003ee31
mov edx, dword [ebp - 0x1c]
push edx
call fcn.1003f720
add esp, 4
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 8]
and eax, 0x10
je 0x1003ee4a
push 1
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.1003f810
add esp, 8
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp + 8]
and edx, 0x20
je 0x1003ee63
push 1
mov eax, dword [ebp - 0x1c]
push eax
call fcn.1003f9f0
add esp, 8
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp + 8]
and ecx, 0x40
je 0x1003ee88
call fcn.1003ffe0
cmp dword [ebp + 0xc], eax
jge 0x1003ee88
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp - 0x1c]
push eax
call fcn.10040780
add esp, 8
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp + 8]
and ecx, 0x80
je 0x1003eea2
mov edx, dword [ebp - 0x1c]
push edx
call fcn.100407b0
add esp, 4
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 8]
and eax, 0x100
je 0x1003eee5
mov ecx, 0x24
shl ecx, 2
mov edx, dword [0x2bb9854]
mov eax, dword [0x2bb9854]
mov esi, dword [0x2bb9854]
mov esi, dword [esi + 0x54]
xor esi, dword [eax + 0x34]
xor esi, dword [edx + ecx]
and esi, 0x1000
je 0x1003eee5
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.100408a0
add esp, 4
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp + 8]
and edx, 0x40000000
je 0x1003ef01
push 0
mov eax, dword [ebp - 0x1c]
push eax
call fcn.1003f810
add esp, 8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x1003ef1b
mov edx, dword [ebp + 8]
and edx, 0x20000400
jne 0x1003ef1b
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x14]
push ecx
mov ecx, 0x2bbc640
call fcn.10041730
mov edx, dword [ebp - 0x1c]
mov dword [eax], edx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret