Function at 0x10008cd8
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xec
mov eax, dword [0x1005f070]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, ecx
push esi
lea esi, [ebx + 0x69c]
cmp dword [esi], 0
push edi
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0xa0], eax
je 0x10009264
mov eax, dword [ebx]
lea ecx, [ebp - 0xc4]
push ecx
mov ecx, ebx
call dword [eax + 0x24]
mov eax, dword [esi]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp + 0xc]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0xc4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.100066e6
test al, al
je 0x10009264
cmp byte [ebx + 0x711], 0
je 0x10008d57
mov ecx, dword [ebx + 0x734]
mov dword [ebp - 0x7c], ecx
jmp 0x10008d62
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x7c], eax
mov ecx, eax
mov edx, dword [ebp - 0xc4]
lea esi, [ebp - 0xc4]
lea edi, [ebp - 0xb4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebx + 0x64c]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x94], eax
mov dword [ebp - 0xa4], 5
mov esi, dword [eax + 4]
test esi, esi
jle 0x100091ed
mov dword [ebp - 0xb4], edx
add edx, esi
mov dword [ebp - 0xac], edx
mov edx, dword [eax]
cmp edx, 1
je 0x10008e0a
test dword [eax + 8], 0xfe000000
je 0x10008dd3
push dword [ebx + 0x738]
mov eax, dword [ecx]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0xb4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x34]
jmp 0x10008e27
mov eax, dword [ebx + 0x24]
dec edx
dec edx
je 0x10008ded
dec edx
je 0x10008de5
mov eax, dword [eax + 0xa5c]
jmp 0x10008df3
mov eax, dword [eax + 0xa04]
jmp 0x10008df3
mov eax, dword [eax + 0xa0c]
mov edx, dword [ecx]
push eax
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0xb4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [edx + 0x38]
jmp 0x10008e27
mov edx, dword [ebx + 0x24]
push dword [edx + 0xa5c]
mov eax, dword [ecx]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0xb4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x38]
mov edi, dword [ebx + 0x7fc]
and dword [ebp - 0x8c], 0
lea esi, [ebx + 0x888]
mov dword [ebp - 0x84], edi
mov byte [ebp - 0x75], 0
mov dword [ebp - 0x80], esi
call fcn.10003086
mov ecx, eax
mov eax, dword [ebx + 0x8cc]
call fcn.1000359a
mov dword [ebp - 0x88], eax
test eax, 0x1000
je 0x10008ea8
call fcn.10003086
mov edi, dword [ebp - 0x88]
mov esi, eax
mov eax, edi
jmp 0x10008e8c
test eax, 0x1000
je 0x10008e90
mov eax, dword [ebx + 0x8cc]
dec esi
mov ecx, esi
call fcn.1000359a
test esi, esi
jg 0x10008e77
test eax, 0x2000
jne 0x10008ea8
mov ecx, 0xfff
and eax, ecx
and edi, ecx
cmp edi, eax
jge 0x10008ea8
mov byte [ebp - 0x75], 1
xor ecx, ecx
push 5
pop eax
cmp dword [ebx + 0x300], eax
setne cl
dec ecx
and ecx, eax
add ecx, 0x1a
mov dword [ebp - 0xc8], ecx
xor ecx, ecx
cmp dword [ebx + 0x2e4], eax
setne cl
dec ecx
and ecx, eax
add ecx, 0x19
mov dword [ebp - 0xcc], ecx
jmp 0x100091ca
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xb8]
jge 0x100091de
mov edi, dword [ebp - 0x84]
mov esi, dword [ebp - 0x80]
call fcn.10003086
mov ecx, dword [ebp - 0x80]
mov esi, eax
mov dword [ebp - 0x9c], esi
call fcn.10003064
cmp edi, eax
mov edi, dword [ebx + 0x8cc]
mov ecx, esi
mov eax, edi
sete byte [ebp - 0x76]
call fcn.1000359a
mov dword [ebp - 0x88], eax
lea ecx, [esi + 1]
mov eax, edi
call fcn.1000359a
mov dword [ebp - 0x90], eax
push esi
mov eax, edi
call fcn.10006761
cmp byte [ebp - 0x76], 0
mov dword [ebp - 0x74], eax
jne 0x10008f4e
and dword [ebp - 0x74], 0
mov edi, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x90]
mov eax, 0xfff
and edi, eax
and ecx, eax
test dword [ebp - 0x88], 0x2000
je 0x10008fc9
cmp byte [ebp - 0x76], 0
je 0x10008fbc
mov eax, dword [ebp - 0x80]
push esi
call fcn.1000328e
test al, al
je 0x10008f9b
cmp edi, 0x400
jne 0x10008f93
or dword [ebp - 0x74], 0x80000000
jmp 0x10008fc3
mov ecx, dword [ebp - 0xc8]
jmp 0x10008fb2
cmp edi, 0x400
jne 0x10008fac
or dword [ebp - 0x74], 0x40000000
jmp 0x10008fc3
mov ecx, dword [ebp - 0xcc]
xor eax, eax
inc eax
shl eax, cl
or dword [ebp - 0x74], eax
jmp 0x10008fc3
or dword [ebp - 0x74], 0x20000000
mov byte [ebp - 0x75], 0
jmp 0x10009034
mov eax, 0x1000
test dword [ebp - 0x88], eax
je 0x10009011
cmp byte [ebp - 0x75], 0
je 0x10008ffd
test dword [ebp - 0x90], eax
jne 0x1000902d
mov byte [ebp - 0x75], 0
cmp edi, 0x400
jle 0x10009275
or dword [ebp - 0x74], 0x8000000
jmp 0x10009034
cmp edi, 0x400
jle 0x10009034
cmp ecx, edi
jge 0x1000902d
cmp ecx, 0x400
jmp 0x10008fee
cmp edi, 0x400
jle 0x10009034
cmp ecx, edi
jge 0x1000902d
mov byte [ebp - 0x75], 0
test dword [ebp - 0x90], eax
je 0x10009009
mov byte [ebp - 0x75], 1
or dword [ebp - 0x74], 0x20000000
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax + 8]
and dword [ebp - 0x74], ecx
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebx + 0x5a8]
lea esi, [ebp - 0xb4]
lea edi, [ebp - 0xec]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
add edx, ecx
cmp dword [eax], 1
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0xe0], edx
jne 0x10009177
cmp byte [ebp - 0x76], 0
mov byte [ebp - 0x70], 0
je 0x10009096
mov eax, dword [ebp - 0x9c]
inc eax
push eax
lea eax, [ebp - 0x70]
push 0x10059064
push eax
call fcn.1004baef
add esp, 0xc
test byte [ebx + 0x884], 0x40
je 0x100090ee
mov ecx, dword [ebp - 0x9c]
mov eax, dword [ebx + 0x8cc]
call fcn.1000359a
mov ecx, eax
sar ecx, 0x10
push ecx
mov ecx, eax
and ecx, 0xfff
push ecx
mov ecx, eax
shr ecx, 9
not cl
and eax, 0x2000
and ecx, 8
or ecx, 0x57
neg eax
sbb eax, eax
and eax, 0xffffffe9
push ecx
add eax, 0x5f
push eax
lea eax, [ebp - 0x70]
push str._c_c__03X__03X
push eax
call fcn.1004baef
add esp, 0x18
lea esi, [ebp - 0xec]
lea edi, [ebp - 0xdc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x70]
push eax
movsd dword es:[edi], dword [esi]
call fcn.1004a9c0
mov esi, dword [ebp - 0x7c]
mov edx, dword [esi]
pop ecx
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebx + 0x24]
add eax, 0xa7c
push eax
mov ecx, esi
call dword [edx + 0x5c]
mov ecx, dword [ebp - 0xe4]
sub ecx, eax
lea eax, [ebp - 0x70]
sub ecx, 3
push eax
mov dword [ebp - 0xdc], ecx
call fcn.1004a9c0
mov edx, dword [esi]
pop ecx
mov ecx, dword [ebx + 0x24]
push dword [ecx + 0xa5c]
add ecx, 0xa7c
push dword [ecx - 0x28]
lea esi, [ebp - 0xdc]
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebx + 0x5ac]
add eax, dword [ebp - 0xd8]
push eax
push ecx
mov ecx, dword [ebp - 0x7c]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [edx + 0x4c]
xor edi, edi
cmp dword [ebp - 0x74], edi
je 0x100091b8
lea esi, [ebx + 0x28]
cmp dword [ebp - 0x74], 0
je 0x100091b8
test byte [ebp - 0x74], 1
je 0x100091ac
mov eax, dword [ebx + 0x24]
mov ebx, dword [ebp - 0x7c]
add eax, 0xa7c
push eax
lea eax, [ebp - 0xec]
push eax
push esi
call fcn.1001435e
mov ebx, dword [ebp - 0x98]
sar dword [ebp - 0x74], 1
inc edi
add esi, 0x1c
cmp edi, 0x20
jl 0x10009181
mov eax, dword [ebx + 0x5a8]
inc dword [ebp - 0x84]
add dword [ebp - 0x8c], eax
mov ecx, dword [ebp - 0x80]
call fcn.10003044
cmp dword [ebp - 0x84], eax
jl 0x10008ede
mov eax, dword [ebp - 0x94]
mov edx, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x7c]
add eax, 0x10
dec dword [ebp - 0xa4]
mov dword [ebp - 0x94], eax
jne 0x10008d8e
lea esi, [ebp - 0xc4]
lea edi, [ebp - 0xdc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ecx]
mov dword [ebp - 0xdc], edx
mov edx, dword [ebx + 0x24]
push dword [edx + 0xa0c]
lea esi, [ebp - 0xdc]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x38]
cmp byte [ebx + 0x711], 0
je 0x10009264
push dword [ebx + 0x734]
mov ecx, dword [ebp - 0xa0]
xor edx, edx
xor eax, eax
push edx
push eax
mov eax, dword [ecx]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0xc4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x48]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1004a8e4
leave
ret 8
or dword [ebp - 0x74], 0x10000000
jmp 0x10009034