Function at 0x614099
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [ebp + 8]
test eax, eax
je 0x6142c1
push ebx
push esi
push edi
mov edi, eax
cdq
xor edi, dword [ebp + 0xc]
mov ebx, eax
mov eax, dword [ebp + 0xc]
xor ebx, edx
sub ebx, edx
sar edi, 0x1f
cdq
mov esi, eax
mov dword [ebp - 4], edi
xor esi, edx
sub esi, edx
test ebx, ebx
je 0x614026
bsr ecx, ebx
mov eax, ecx
mov dword [ebp + 8], ecx
xor eax, 0x1f
jmp 0x614029
push 0x20
pop eax
lea edx, [eax - 1]
test esi, esi
je 0x61403b
bsr eax, esi
mov dword [ebp + 8], eax
xor eax, 0x1f
jmp 0x61403e
push 0x20
pop eax
lea ecx, [eax - 1]
mov eax, ecx
sub eax, edx
add eax, dword [ebp + 0x10]
jns 0x614051
xor eax, eax
jmp 0x6142be
cmp eax, 0x1f
jle 0x614064
mov eax, edi
xor eax, 0x7fffffff
sub eax, edi
jmp 0x6142be
shl esi, cl
mov ecx, edx
shl ebx, cl
mov edx, ebx
sub edx, esi
mov edi, edx
not edx
cmovs edi, ebx
shr edx, 0x1f
test eax, eax
jle 0x6142ac
mov ecx, eax
shl edx, cl
lea ecx, [eax - 2]
mov eax, edi
cmp ecx, 0x1d
ja case.default.0x614092
jmp dword [ecx*4 + 0x6142c7]
add edi, edi
mov eax, edi
sub eax, esi
js 0x6140a9
or edx, 0x40000000
jmp case.0x614092.30
mov eax, edi
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6140bb
or edx, 0x20000000
jmp case.0x614092.29
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6140cd
or edx, 0x10000000
jmp case.0x614092.28
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6140df
or edx, 0x8000000
jmp case.0x614092.27
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6140f1
or edx, 0x4000000
jmp case.0x614092.26
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614103
or edx, 0x2000000
jmp case.0x614092.25
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614115
or edx, 0x1000000
jmp case.0x614092.24
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614127
or edx, 0x800000
jmp case.0x614092.23
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614139
or edx, 0x400000
jmp case.0x614092.22
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x61414b
or edx, 0x200000
jmp case.0x614092.21
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x61415d
or edx, 0x100000
jmp case.0x614092.20
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x61416f
or edx, 0x80000
jmp case.0x614092.19
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614181
or edx, 0x40000
jmp case.0x614092.18
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614193
or edx, 0x20000
jmp case.0x614092.17
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6141a5
or edx, 0x10000
jmp case.0x614092.16
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6141b7
or edx, 0x8000
jmp case.0x614092.15
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6141c9
or edx, 0x4000
jmp case.0x614092.14
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6141db
or edx, 0x2000
jmp case.0x614092.13
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6141ed
or edx, 0x1000
jmp case.0x614092.12
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6141ff
or edx, 0x800
jmp case.0x614092.11
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614211
or edx, 0x400
jmp case.0x614092.10
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614223
or edx, 0x200
jmp case.0x614092.9
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614235
or edx, 0x100
jmp case.0x614092.8
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614247
or edx, 0x80
jmp case.0x614092.7
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614256
or edx, 0x40
jmp case.0x614092.6
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614265
or edx, 0x20
jmp case.0x614092.5
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614274
or edx, 0x10
jmp case.0x614092.4
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614283
or edx, 8
jmp case.0x614092.3
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x614292
or edx, 4
jmp case.0x614092.2
mov eax, ecx
add eax, eax
mov ecx, eax
sub eax, esi
js 0x6142a1
or edx, 2
jmp case.default.0x614092
mov eax, ecx
add eax, eax
sub eax, esi
js 0x6142ac
or edx, 1
test edx, edx
mov eax, SysReAllocString
cmovs edx, eax
xor edx, dword [ebp - 4]
sub edx, dword [ebp - 4]
mov eax, edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret