Function at 0x1003a5e0
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0x10]
mov byte [esi], 0
cmp eax, 0x40
jg 0x1003a95b
jl 0x1003a603
test edx, edx
jne 0x1003a95b
test edx, edx
jne 0x1003a610
cmp eax, 0x40
je 0x1003aa63
test eax, eax
jg 0x1003a8ac
jl 0x1003a626
cmp edx, 0x40000
ja 0x1003a7bb
cmp edx, 0x40000
jne 0x1003a636
test eax, eax
je 0x1003aa63
test eax, eax
jg 0x1003a788
jl 0x1003a64c
cmp edx, 0x100
ja 0x1003a72c
cmp edx, 0x100
jne 0x1003a65c
test eax, eax
je 0x1003aa63
test eax, eax
jg 0x1003a6f8
jl 0x1003a66f
cmp edx, 0x10
ja 0x1003a6f8
cmp edx, 0x10
jne 0x1003a689
test eax, eax
jne 0x1003a68b
mov al, byte [ecx + 0xa]
shr al, 4
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
test eax, eax
jg 0x1003a6de
jl 0x1003a694
cmp edx, 4
ja 0x1003a6de
cmp edx, 4
jne 0x1003a6ae
test eax, eax
jne 0x1003a6ae
mov al, byte [ecx + 0xa]
shr al, 3
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 1
jne 0x1003a6c5
test eax, eax
jne 0x1003a6c5
mov al, byte [ecx + 0xa]
and al, dl
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 2
jne 0x1003a722
test eax, eax
jne 0x1003a722
mov al, byte [ecx + 0xa]
shr al, 1
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 8
jne 0x1003a722
test eax, eax
jne 0x1003a722
mov al, byte [ecx + 0xa]
shr al, 4
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x20
jne 0x1003a705
test eax, eax
je 0x1003a803
cmp edx, 0x40
jne 0x1003a712
test eax, eax
je 0x1003aa63
cmp edx, 0x80
jne 0x1003a722
test eax, eax
je 0x1003aa63
mov eax, 1
pop esi
pop ebp
ret 0xc
test eax, eax
jg 0x1003a788
jl 0x1003a73a
cmp edx, 0x2000
ja 0x1003a788
cmp edx, 0x2000
jne 0x1003a74a
test eax, eax
je 0x1003aa63
test eax, eax
jg 0x1003a780
jl 0x1003a758
cmp edx, 0x800
ja 0x1003a780
cmp edx, 0x800
jne 0x1003a768
test eax, eax
je 0x1003aa63
cmp edx, 0x200
jne 0x1003a778
test eax, eax
je 0x1003aa63
cmp edx, 0x400
jmp 0x1003a718
cmp edx, 0x1000
jmp 0x1003a718
cmp edx, 0x4000
jne 0x1003a798
test eax, eax
je 0x1003aa63
cmp edx, 0x8000
jne 0x1003a7a8
test eax, eax
je 0x1003aa63
cmp edx, 0x20000
jne 0x1003a722
test eax, eax
jmp 0x1003aa5d
test eax, eax
jg 0x1003a8ac
jl 0x1003a7d1
cmp edx, 0x8000000
ja 0x1003a8ac
cmp edx, 0x8000000
jne 0x1003a7e1
test eax, eax
je 0x1003aa63
test eax, eax
jg 0x1003a881
jl 0x1003a7f7
cmp edx, 0x800000
ja 0x1003a881
cmp edx, 0x800000
jne 0x1003a814
test eax, eax
jne 0x1003a816
mov al, byte [ecx + 0xa]
shr al, 5
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
test eax, eax
jg 0x1003a85c
jl 0x1003a822
cmp edx, 0x200000
ja 0x1003a85c
cmp edx, 0x200000
jne 0x1003a82e
test eax, eax
je 0x1003a870
cmp edx, 0x80000
jne 0x1003a83a
test eax, eax
je 0x1003a84e
cmp edx, 0x100000
jne 0x1003a722
test eax, eax
jne 0x1003a722
mov al, byte [ecx + 0xb]
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x400000
jne 0x1003a722
test eax, eax
jne 0x1003a722
mov al, byte [ecx + 0xb]
shr al, 4
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x1000000
jne 0x1003a891
test eax, eax
je 0x1003aa63
cmp edx, 0x2000000
jne 0x1003a8a1
test eax, eax
je 0x1003aa63
cmp edx, 0x4000000
jmp 0x1003a718
cmp eax, 4
jg 0x1003a90c
jl 0x1003a8bb
test edx, edx
jne 0x1003a722
test edx, edx
jne 0x1003a8c8
cmp eax, 4
je 0x1003aa63
test eax, eax
jg 0x1003a901
jl 0x1003a8d6
cmp edx, 0x40000000
ja 0x1003a901
cmp edx, 0x40000000
jne 0x1003a8e6
test eax, eax
je 0x1003aa63
cmp edx, 0x10000000
jne 0x1003a8f6
test eax, eax
je 0x1003aa63
cmp edx, 0x20000000
jmp 0x1003a718
cmp edx, 0x80000000
jmp 0x1003a718
test edx, edx
jne 0x1003a722
cmp eax, 8
je 0x1003aa63
test edx, edx
jne 0x1003a722
cmp eax, 0x10
jne 0x1003a93b
mov al, byte [ecx + 0xb]
shr al, 2
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
test edx, edx
jne 0x1003a722
cmp eax, 0x20
jne 0x1003a722
mov al, byte [ecx + 0xc]
shr al, 7
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp eax, 0xffff
jg 0x1003adaf
jl 0x1003a971
cmp edx, 1
ja 0x1003aa6d
cmp edx, 1
jne 0x1003a98b
cmp eax, 0xffff
jne 0x1003a98b
mov al, byte [ecx + 0xc]
and al, dl
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp eax, 0x800
jg 0x1003aa0f
jl 0x1003a998
test edx, edx
jne 0x1003aa0f
test edx, edx
jne 0x1003a9a7
cmp eax, 0x800
je 0x1003aa63
cmp eax, 0x200
jg 0x1003a9fd
jl 0x1003a9b8
test edx, edx
jne 0x1003a722
test edx, edx
jne 0x1003a722
cmp eax, 0x200
je 0x1003aa63
test edx, edx
jne 0x1003a722
cmp eax, 0x80
jne 0x1003a9eb
mov al, byte [ecx + 0xc]
shr al, 6
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
test edx, edx
jne 0x1003a722
cmp eax, 0x100
jmp 0x1003a71c
test edx, edx
jne 0x1003a722
cmp eax, 0x400
jmp 0x1003a71c
cmp eax, 0x4000
jg 0x1003aa50
jl 0x1003aa20
test edx, edx
jne 0x1003a722
test edx, edx
jne 0x1003a722
cmp eax, 0x4000
je 0x1003aa63
test edx, edx
jne 0x1003a722
cmp eax, 0x1000
je 0x1003aa63
test edx, edx
jne 0x1003a722
cmp eax, 0x2000
jmp 0x1003a71c
test edx, edx
jne 0x1003a722
cmp eax, 0x8000
jne 0x1003a722
mov eax, 2
pop esi
pop ebp
ret 0xc
cmp eax, 0xffff
jg 0x1003adaf
jl 0x1003aa83
cmp edx, 0xe
ja 0x1003ac4b
cmp edx, 0xe
jne 0x1003aa9e
cmp eax, 0xffff
jne 0x1003aaa3
mov al, byte [ecx + 0xd]
shr al, 7
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp eax, 0xffff
jg 0x1003ab9c
jl 0x1003aab4
cmp edx, 8
ja 0x1003ab9c
cmp edx, 8
jne 0x1003aad0
cmp eax, 0xffff
jne 0x1003aad5
mov al, byte [ecx + 0xd]
shr al, 1
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp eax, 0xffff
jg 0x1003ab5d
jl 0x1003aae2
cmp edx, 5
ja 0x1003ab5d
cmp edx, 5
jne 0x1003aaff
cmp eax, 0xffff
jne 0x1003aaff
mov al, byte [ecx + 0xc]
shr al, 4
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 2
jne 0x1003ab1b
cmp eax, 0xffff
jne 0x1003ab1b
mov al, byte [ecx + 0xc]
shr al, 1
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 3
jne 0x1003ab38
cmp eax, 0xffff
jne 0x1003ab38
mov al, byte [ecx + 0xc]
shr al, 2
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 4
jne 0x1003a722
cmp eax, 0xffff
jne 0x1003a722
mov al, byte [ecx + 0xc]
shr al, 3
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 6
jne 0x1003ab7a
cmp eax, 0xffff
jne 0x1003ab7a
mov al, byte [ecx + 0xc]
shr al, 5
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 7
jne 0x1003a722
cmp eax, 0xffff
jne 0x1003a722
mov al, byte [ecx + 0xd]
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp eax, 0xffff
jg 0x1003ac09
jl 0x1003abaa
cmp edx, 0xb
ja 0x1003ac09
cmp edx, 0xb
jne 0x1003abc7
cmp eax, 0xffff
jne 0x1003abc7
mov al, byte [ecx + 0xd]
shr al, 4
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 9
jne 0x1003abe4
cmp eax, 0xffff
jne 0x1003abe4
mov al, byte [ecx + 0xd]
shr al, 2
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0xa
jne 0x1003a722
cmp eax, 0xffff
jne 0x1003a722
mov al, byte [ecx + 0xd]
shr al, 3
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0xc
jne 0x1003ac26
cmp eax, 0xffff
jne 0x1003ac26
mov al, byte [ecx + 0xd]
shr al, 5
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0xd
jne 0x1003a722
cmp eax, 0xffff
jne 0x1003a722
mov al, byte [ecx + 0xd]
shr al, 6
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp eax, 0xffff
jg 0x1003adaf
jl 0x1003ac61
cmp edx, 0x15
ja 0x1003ad42
cmp edx, 0x15
jne 0x1003ac7e
cmp eax, 0xffff
jne 0x1003ac83
mov al, byte [ecx + 0xf]
shr al, 2
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp eax, 0xffff
jg 0x1003ad04
jl 0x1003ac8c
cmp edx, 0x12
ja 0x1003ad04
cmp edx, 0x12
jne 0x1003aca9
cmp eax, 0xffff
jne 0x1003aca9
mov al, byte [ecx + 0xe]
shr al, 3
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0xf
jne 0x1003acc3
cmp eax, 0xffff
jne 0x1003acc3
mov al, byte [ecx + 0xe]
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x10
jne 0x1003acdf
cmp eax, 0xffff
jne 0x1003acdf
mov al, byte [ecx + 0xe]
shr al, 1
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x11
jne 0x1003a722
cmp eax, 0xffff
jne 0x1003a722
mov al, byte [ecx + 0xe]
shr al, 2
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x13
jne 0x1003ad1e
cmp eax, 0xffff
jne 0x1003ad1e
mov al, byte [ecx + 0xf]
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x14
jne 0x1003a722
cmp eax, 0xffff
jne 0x1003a722
mov al, byte [ecx + 0xf]
shr al, 1
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp eax, 0xffff
jg 0x1003adaf
jl 0x1003ad50
cmp edx, 0x18
ja 0x1003adaf
cmp edx, 0x18
jne 0x1003ad6d
cmp eax, 0xffff
jne 0x1003ad6d
mov al, byte [ecx + 0xf]
shr al, 5
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x16
jne 0x1003ad8a
cmp eax, 0xffff
jne 0x1003ad8a
mov al, byte [ecx + 0xf]
shr al, 3
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x17
jne 0x1003a722
cmp eax, 0xffff
jne 0x1003a722
mov al, byte [ecx + 0xf]
shr al, 4
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
cmp edx, 0x19
jne 0x1003adcc
cmp eax, 0xffff
jne 0x1003adcc
mov al, byte [ecx + 0xa]
shr al, 2
and al, 1
mov byte [esi], al
xor eax, eax
pop esi
pop ebp
ret 0xc
add edx, 0xffffffe6
adc eax, 0xffff0000
test eax, eax
ja 0x1003a722
jb 0x1003ade7
cmp edx, 0xc
ja 0x1003a722
mov eax, 3
pop esi
pop ebp
ret 0xc