Function at 0x10036f9d
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
push esi
push edi
xor edi, edi
push 4
pop edx
mov esi, eax
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 4], edi
mov dword [ebp - 0xc], edx
xor ecx, ecx
mov eax, 0x80000000
shr eax, cl
or dword [ebp - 0x10], eax
or dword [ebp - 0x18], eax
inc ecx
cmp ecx, edx
jl 0x10036fbe
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0xc]
cmp eax, edi
mov dword [ebp - 8], ecx
je 0x1003713a
mov edx, dword [eax + 4]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
mov edi, edx
jle 0x10037007
test edi, edi
je 0x10037007
mov ebx, dword [edi + 4]
cmp ebx, dword [edx + 4]
jle 0x10036ffc
mov edx, edi
mov edi, dword [edi + 0x54]
mov ebx, dword [ebp + 8]
inc ecx
cmp ecx, eax
jl 0x10036fee
mov eax, dword [edx]
dec eax
je 0x1003702e
dec eax
je 0x10037022
dec eax
jne 0x10037128
mov dword [ebp - 4], 0x2c
jmp 0x10037121
mov dword [ebp - 4], 0x2b
jmp 0x10037121
mov edx, dword [edx + 0xc]
cmp edx, 0x10
jne 0x10037042
mov dword [ebp - 4], 0x2d
jmp 0x10037121
cmp edx, 0x11
jne 0x10037053
mov dword [ebp - 4], 0x2e
jmp 0x10037121
cmp edx, 0xc
jne 0x10037064
mov dword [ebp - 4], 0x37
jmp 0x10037121
cmp edx, 0xe
je 0x100370e6
test edx, edx
jne 0x10037079
mov dword [ebp - 4], 0x2f
jmp 0x10037121
cmp edx, 1
jne 0x1003708a
mov dword [ebp - 4], 0x31
jmp 0x10037121
cmp edx, 3
jne 0x1003709b
mov dword [ebp - 4], 0x32
jmp 0x10037121
cmp edx, 4
jne 0x100370a9
mov dword [ebp - 4], 0x33
jmp 0x10037121
cmp edx, 9
jne 0x100370b7
mov dword [ebp - 4], 0x34
jmp 0x10037121
cmp edx, 0xb
jne 0x100370c5
mov dword [ebp - 4], 0x36
jmp 0x10037121
cmp edx, 0xd
jne 0x100370d3
mov dword [ebp - 4], 0x35
jmp 0x10037121
cmp edx, 0xf
jne 0x100370e1
mov dword [ebp - 4], 0x30
jmp 0x10037121
cmp edx, 0x12
jne 0x100370ef
mov dword [ebp - 4], 0x38
jmp 0x10037121
cmp edx, 0x13
jne 0x100370fd
mov dword [ebp - 4], 0x3b
jmp 0x10037121
cmp edx, 0x14
jne 0x1003710b
mov dword [ebp - 4], 0x3c
jmp 0x10037121
xor eax, eax
cmp edx, 0x15
setne al
dec eax
and eax, 0xffffff3e
add eax, 0xff
mov dword [ebp - 4], eax
mov dword [ebp - 0xc], 5
mov ecx, dword [ebp - 8]
mov eax, 0x80000000
shr eax, cl
or dword [ebp - 0x10], eax
or dword [ebp - 0x18], eax
xor edi, edi
cmp byte [ebx + 0x2c], 0
je 0x10037160
cmp dword [ebx + 0x34], edi
je 0x10037160
mov eax, dword [ebx + 0x30]
add dword [ebp - 0xc], eax
mov dword [ebp - 0x14], eax
jmp 0x1003715b
mov eax, 0x80000000
shr eax, cl
or dword [ebp - 0x10], eax
inc ecx
cmp ecx, dword [ebp - 0xc]
jl 0x10037150
cmp byte [ebx + 0x5c], 0
je 0x1003716e
cmp dword [ebx + 0x60], edi
je 0x1003716e
inc dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
lea eax, [ecx + 7]
cdq
and edx, 7
add eax, edx
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 0x14]
sub dword [ebp - 8], ecx
sar eax, 3
lea edi, [ecx + 2]
lea edx, [eax + 2]
imul edi, eax
imul edx, dword [ebp - 8]
add edx, edi
shl ecx, 4
lea ebx, [edx + ecx + 0xd]
mov edi, 0x72726571
mov dword [ebp - 0x1c], eax
call fcn.10036deb
mov edi, dword [ebp - 0x1c]
push edi
mov ecx, esi
call fcn.10001220
xor ebx, ebx
test edi, edi
jle 0x100371d1
mov eax, dword [ebp - 0x10]
push 0x18
pop ecx
sub ecx, ebx
shr eax, cl
mov ecx, esi
push eax
call fcn.10001220
inc ebx
cmp ebx, edi
jl 0x100371ba
xor ebx, ebx
test edi, edi
jle 0x100371ee
mov eax, dword [ebp - 0x18]
push 0x18
pop ecx
sub ecx, ebx
shr eax, cl
mov ecx, esi
push eax
call fcn.10001220
inc ebx
cmp ebx, edi
jl 0x100371d7
mov eax, dword [ebp - 8]
sar eax, 8
push eax
mov ecx, esi
call fcn.10001220
mov eax, dword [ebp - 0xc]
sub al, byte [ebp - 0x14]
mov ecx, esi
push eax
call fcn.10001220
xor ebx, ebx
push ebx
mov ecx, esi
call fcn.10001220
push 1
mov ecx, esi
call fcn.10001220
test edi, edi
jle 0x1003723a
push 0x18
pop ecx
sub ecx, ebx
mov eax, 0x80000000
shr eax, cl
mov ecx, esi
push eax
call fcn.10001220
inc ebx
cmp ebx, edi
jl 0x10037221
push 0
mov ecx, esi
call fcn.10001220
push 5
mov ecx, esi
call fcn.10001220
xor ebx, ebx
test edi, edi
jle 0x1003726b
push 0x18
pop ecx
sub ecx, ebx
mov eax, 0x40000000
shr eax, cl
mov ecx, esi
push eax
call fcn.10001220
inc ebx
cmp ebx, edi
jl 0x10037252
push 0
mov ecx, esi
call fcn.10001220
push 0xc
mov ecx, esi
call fcn.10001220
xor ebx, ebx
test edi, edi
jle 0x1003729c
push 0x18
pop ecx
sub ecx, ebx
mov eax, 0x20000000
shr eax, cl
mov ecx, esi
push eax
call fcn.10001220
inc ebx
cmp ebx, edi
jl 0x10037283
push 0
mov ecx, esi
call fcn.10001220
push 0x12
mov ecx, esi
call fcn.10001220
and dword [ebp - 8], 0
test edi, edi
mov ebx, 0x10000000
mov dword [ebp - 0x10], ebx
jle 0x100372d8
push 0x18
pop ecx
sub ecx, dword [ebp - 8]
mov eax, ebx
shr eax, cl
mov ecx, esi
push eax
call fcn.10001220
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jl 0x100372be
cmp dword [ebp - 4], 0
je 0x1003731b
push 0
mov ecx, esi
call fcn.10001220
push dword [ebp - 4]
mov ecx, esi
call fcn.10001220
and dword [ebp - 8], 0
test edi, edi
mov ebx, 0x8000000
mov dword [ebp - 0x10], ebx
jle 0x1003731b
push 0x18
pop ecx
sub ecx, dword [ebp - 8]
mov eax, ebx
shr eax, cl
mov ecx, esi
push eax
call fcn.10001220
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jl 0x10037301
mov ebx, dword [ebp + 8]
cmp byte [ebx + 0x5c], 0
je 0x1003735e
cmp dword [ebx + 0x60], 0
je 0x1003735e
xor ebx, ebx
push ebx
mov ecx, esi
call fcn.10001220
push 0x43
mov ecx, esi
call fcn.10001220
shr dword [ebp - 0x10], 1
test edi, edi
jle 0x1003735b
mov eax, dword [ebp - 0x10]
push 0x18
pop ecx
sub ecx, ebx
shr eax, cl
mov ecx, esi
push eax
call fcn.10001220
inc ebx
cmp ebx, edi
jl 0x10037344
mov ebx, dword [ebp + 8]
mov eax, dword [ebp - 0x14]
sar eax, 8
push eax
mov ecx, esi
call fcn.10001220
push dword [ebp - 0x14]
mov ecx, esi
call fcn.10001220
cmp byte [ebx + 0x2c], 0
je 0x100373dd
xor eax, eax
cmp dword [ebx + 0x34], eax
je 0x100373dd
cmp dword [ebp - 0x14], eax
mov dword [ebp - 8], eax
jle 0x100373dd
mov dword [ebp - 0x18], eax
xor ebx, ebx
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x34]
add eax, dword [ebp - 0x18]
mov ecx, esi
movzx eax, byte [eax + ebx + 4]
push eax
call fcn.10001220
inc ebx
cmp ebx, 0x10
jl 0x10037390
shr dword [ebp - 0x10], 1
test edi, edi
jle 0x100373ce
mov ebx, dword [ebp - 0x10]
push 0x18
pop ecx
sub ecx, dword [ebp - 8]
mov dword [ebp - 0xc], edi
shr ebx, cl
push ebx
mov ecx, esi
call fcn.10001220
dec dword [ebp - 0xc]
jne 0x100373c1
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
add dword [ebp - 0x18], 0x18
cmp eax, dword [ebp - 0x14]
jl 0x1003738e
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret