Function at 0x10135086
Capabilities:
Inspect section memory permissions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
push ebx
push esi
push edi
mov edi, ecx
xor eax, eax
mov ebx, eax
mov esi, eax
mov edx, dword [edi + 0x89c]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], ebx
mov ecx, dword [edi + 0x970]
push 0x21
pop edx
lea eax, [ecx - 0x130]
cmp eax, 7
ja 0x1013513d
test esi, esi
je 0x101350d9
cmp esi, 0x101
je 0x101350d9
lea eax, [esi - 0x130]
cmp eax, 7
ja 0x1013530d
cmp ebx, 2
je 0x101350e6
test ebx, ebx
jne 0x1013530d
mov ecx, dword [edi + 0x890]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x101350f1
sub ecx, edx
sar ecx, 1
push 0x20
lea eax, [ecx + ecx]
add dword [edi + 0x890], eax
mov eax, dword [edi + 0x890]
pop ecx
mov word [eax], cx
xor ecx, ecx
add dword [edi + 0x890], 2
mov eax, dword [edi + 0x890]
mov word [eax], cx
mov ecx, edi
mov esi, dword [edi + 0x970]
push esi
call fcn.10133c9d
push 2
pop ebx
jmp 0x101350a6
cmp ecx, 0x101
jne 0x10135172
cmp esi, ecx
je 0x1013530d
mov ecx, dword [edi + 0x890]
xor esi, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x10135158
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
add dword [edi + 0x890], eax
jmp 0x101351be
cmp ecx, 0x109
jne 0x101351cc
test esi, esi
jne 0x1013530d
mov esi, dword [edi + 0x890]
xor edx, edx
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
cmp ax, dx
jne 0x1013518d
sub esi, ecx
mov ecx, dword [edi + 0x890]
sar esi, 1
lea eax, [ecx + 4]
lea esi, [esi*2 - 4]
push esi
push eax
push ecx
call dword [sym.imp.msvcrt.dll_memmove]
add esp, 0xc
add dword [edi + 0x890], esi
mov eax, dword [edi + 0x890]
push 0x20
pop ecx
mov word [eax], cx
jmp 0x1013522f
cmp ecx, 0x129
je 0x1013527c
cmp ecx, 0x12a
je 0x1013527c
cmp ecx, edx
jne 0x1013520f
cmp esi, 0x101
je 0x101351fc
cmp esi, 0x109
jne 0x1013530d
mov ecx, dword [edi + 0x890]
mov ax, word [edi + 0x970]
mov word [ecx - 2], ax
jmp 0x10135236
cmp ecx, 0x3c
jne 0x10135246
cmp esi, 0x101
jne 0x1013530d
mov ecx, edi
call fcn.101355c5
test eax, eax
je 0x1013534a
add dword [edi + 0x890], 2
mov eax, dword [edi + 0x890]
xor ecx, ecx
mov word [eax], cx
jmp 0x101352d0
mov eax, 0x12d
cmp ecx, eax
jne 0x101352e3
test esi, esi
je 0x10135267
cmp esi, edx
je 0x10135267
cmp esi, 0x129
jne 0x10135319
xor ebx, ebx
mov ecx, edi
inc ebx
mov esi, eax
mov dword [esp + 0x14], ebx
call fcn.101357e7
jmp 0x101350aa
cmp esi, 0x101
je 0x1013528d
cmp esi, 0x3e
jne 0x1013530d
mov esi, dword [edi + 0x890]
xor edx, edx
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
cmp ax, dx
jne 0x10135298
sub esi, ecx
mov ecx, dword [edi + 0x890]
sar esi, 1
lea eax, [esi*2 + 2]
push eax
push ecx
lea eax, [ecx - 2]
push eax
call dword [sym.imp.msvcrt.dll_memmove]
lea eax, [esi*2 - 2]
add esp, 0xc
add dword [edi + 0x890], eax
mov esi, dword [edi + 0x970]
mov ecx, edi
push esi
call fcn.10133c9d
jmp 0x101350aa
cmp dword [edi + 0x970], 0x2e
jne 0x1013530d
mov ecx, dword [edi + 0x80]
test ecx, ecx
je 0x1013530d
xor eax, eax
lea edx, [edi + 0x90]
push eax
push eax
lea eax, [esp + 0x2c]
push eax
call fcn.101cb3f5
push 0x21
pop edx
cmp esi, 0x129
je 0x101355a4
cmp esi, 0x12a
je 0x101355a4
cmp esi, edx
je 0x101355a4
cmp esi, 0x2e
je 0x101355a4
cmp esi, 0x109
jne 0x1013534a
push 3
pop eax
mov eax, dword [edi + 0x890]
lea ebx, [edi + 0x90]
mov dword [esp + 0x18], eax
cmp eax, ebx
jbe 0x1013536f
push 0x20
lea ecx, [eax - 2]
pop edx
cmp word [ecx], dx
jne 0x1013536f
mov eax, ecx
mov dword [esp + 0x18], ecx
xor ecx, ecx
cmp dword [edi + 0x80], ecx
je 0x10135581
cmp eax, ebx
je 0x10135581
movzx ecx, word [eax]
mov esi, dword [ebp + 8]
mov dword [esp + 0x24], ecx
xor ecx, ecx
mov word [eax], cx
mov ecx, esi
call fcn.100f87c4
mov eax, dword [esp + 0x14]
xor edx, edx
mov dword [esi + 0x48], edx
mov dword [esi + 0x4c], edx
mov dword [edi + 0x968], 0x1003
cmp eax, 1
je 0x101353f0
mov ecx, ebx
call fcn.101ea787
test eax, eax
je 0x101353ea
sub eax, 0x102a5b80
push 0x18
pop ecx
cdq
idiv ecx
mov ecx, esi
sub eax, 0x80000000
push eax
call fcn.100f8742
push 2
xor edx, edx
pop eax
mov dword [edi + 0x968], edx
mov dword [esp + 0x14], eax
jmp 0x101353f0
mov eax, dword [esp + 0x14]
xor edx, edx
cmp dword [edi + 0x968], edx
je 0x10135477
cmp eax, 1
je 0x10135477
cmp word [ebx], 0x24
jne 0x1013540f
push 0x21
pop eax
cmp word [edi + 0x92], ax
je 0x10135477
mov eax, dword [edi + 0x78]
mov ecx, esi
shr eax, 4
and al, 1
mov byte [esp + 0x12], 1
mov byte [esp + 0x20], al
lea eax, [esp + 0x13]
push eax
lea eax, [esp + 0x16]
mov byte [esp + 0x17], dl
push eax
push dword [edi + 0x8f4]
push dword [esp + 0x2c]
push ebx
push dword [edi + 0x80]
call fcn.101eee9f
mov dword [edi + 0x968], eax
test eax, eax
jne 0x1013546b
cmp byte [esp + 0x12], al
je 0x10135459
inc eax
jmp 0x10135463
cmp byte [esp + 0x13], 0
jne 0x1013546b
push 2
pop eax
mov dword [esp + 0x14], eax
xor edx, edx
jmp 0x1013547b
mov dword [edi + 0x968], 0x1003
xor edx, edx
mov eax, dword [esp + 0x14]
cmp dword [edi + 0x968], edx
je 0x10135567
cmp eax, 2
je 0x1013551d
cmp dword [edi + 0x14], edx
jbe 0x1013549a
push 2
pop ecx
jmp 0x101354a5
xor ecx, ecx
cmp dword [edi + 0x97c], edx
setne cl
push dword [edi + 0x8f4]
mov eax, dword [edi + 0x78]
shr eax, 4
push ecx
and al, 1
mov ecx, esi
mov byte [esp + 0x28], al
push dword [esp + 0x28]
xor eax, eax
jmp 0x10135341