Function at 0x4d7100
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1094
call fcn.00532860
push ebx
push esi
push edi
mov dword [ebp - 0x1014], 1
mov dword [ebp - 4], 0
lea ebx, [ebp - 0x1078]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp + 0x14]
test eax, eax
jne 0x4d714b
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x4d7144
mov dword [eax], 0x63
xor eax, eax
jmp 0x4d7864
mov eax, dword [ebp + 0x14]
mov dword [eax], 0
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x4d7161
mov dword [eax], 0
mov eax, dword [ebp + 0x18]
test eax, eax
jne 0x4d7174
mov dword [ebp - 4], 0x10
jmp 0x4d76e4
mov eax, dword [ebp + 0x18]
mov dword [eax], 0
mov eax, dword [ebp + 0xc]
and eax, 0x800
je 0x4d7193
mov dword [ebp - 0x107c], 1
jmp 0x4d719d
mov dword [ebp - 0x107c], 0
mov eax, dword [ebp - 0x107c]
mov dword [ebp - 0x1024], eax
cmp dword [ebp - 0x1024], 0
je 0x4d71df
mov eax, dword [ebp + 0xc]
and eax, 0x2000
jne 0x4d71df
push 0xffffffffffffffff
mov eax, dword [ebp + 8]
push eax
call fcn.004e8200
add esp, 8
mov edx, dword [ebp + 0x18]
mov dword [edx], eax
test eax, eax
jl 0x4d71df
mov dword [ebp - 4], 0x2c
jmp 0x4d76e4
mov eax, dword [ebp + 0xc]
and eax, 0xff838580
je 0x4d71f5
mov dword [ebp - 4], 0x11
jmp 0x4d76d4
mov eax, dword [ebp + 0x1c]
test eax, eax
jne 0x4d7205
lea eax, [0x7c4fdc]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebx], eax
mov eax, dword [ebp + 0x1c]
lea eax, [eax + 0x100]
mov dword [ebx + 4], eax
mov eax, dword [ebp + 0x1c]
lea eax, [eax + 0x200]
mov dword [ebx + 8], eax
mov eax, dword [ebp + 0x1c]
lea eax, [eax + 0x340]
mov dword [ebx + 0xc], eax
mov eax, dword [ebp + 0xc]
and eax, 0x700000
mov dword [ebp - 0x1080], eax
cmp eax, 0x200000
je 0x4d72af
jg 0x4d726c
mov eax, dword [ebp - 0x1080]
test eax, eax
je 0x4d7297
test eax, eax
jl 0x4d72dc
cmp dword [ebp - 0x1080], 0x100000
je 0x4d72a3
jmp 0x4d72dc
mov eax, dword [ebp - 0x1080]
cmp eax, 0x400000
je 0x4d72c7
jg 0x4d7289
cmp dword [ebp - 0x1080], 0x300000
je 0x4d72bb
jmp 0x4d72dc
cmp dword [ebp - 0x1080], 0x500000
je 0x4d72d0
jmp 0x4d72dc
mov dword [ebp - 0x1020], 0xa
jmp 0x4d72e8
mov dword [ebp - 0x1020], 0xd
jmp 0x4d72e8
mov dword [ebp - 0x1020], 0xa
jmp 0x4d72e8
mov dword [ebp - 0x1020], 0xd0a
jmp 0x4d72e8
or dword [ebp - 0x1020], 0xffffffff
jmp 0x4d72e8
mov dword [ebp - 0x1020], 0xfffffffe
jmp 0x4d72e8
mov dword [ebp - 4], 0x38
jmp 0x4d76d4
cmp dword [ebp - 0x1020], 0xfffffffe
jne 0x4d72fa
mov dword [ebx + 0x48], 2
jmp 0x4d7357
cmp dword [ebp - 0x1020], 0
jge 0x4d730c
mov dword [ebx + 0x48], 1
jmp 0x4d7357
mov dword [ebx + 0x48], 0
cmp dword [ebp - 0x1020], 0xff
jle 0x4d7347
mov dword [ebx + 0x4c], 2
mov eax, dword [ebp - 0x1020]
sar eax, 8
and eax, 0xff
mov byte [ebx + 0x50], al
mov eax, dword [ebp - 0x1020]
and eax, 0xff
mov byte [ebx + 0x51], al
jmp 0x4d7357
mov dword [ebx + 0x4c], 1
mov eax, dword [ebp - 0x1020]
mov byte [ebx + 0x50], al
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x28], 0
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x24], 0
lea eax, [ebp - 0x1004]
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], eax
lea eax, [ebp - 0x1004]
mov dword [ebx + 0x20], eax
mov eax, dword [ebp + 8]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp + 8]
mov edx, eax
or eax, 0xffffffff
inc eax
cmp byte [edx + eax], 0
jne 0x4d73a4
mov edx, dword [ebp + 8]
add eax, edx
mov dword [ebx + 0x1c], eax
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], 0
mov eax, dword [ebp + 0xc]
mov dword [ebx + 0x3c], eax
lea eax, [ebp - 0x1004]
mov dword [ebp - 0x1008], eax
mov byte [eax], 0x58
lea eax, [ebp - 0x1014]
push eax
push ebx
push 0
lea eax, [ebp - 0x100c]
push eax
lea eax, [ebp - 0x1018]
push eax
push 0
push 0
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1010]
push eax
lea eax, [ebp - 0x1008]
push eax
mov eax, dword [ebx + 0x3c]
mov edx, eax
and edx, 7
push edx
push eax
call fcn.004d6a10
add esp, 0x30
cmp dword [ebp - 4], 0
jne 0x4d76d4
cmp dword [ebp - 0x1014], 0x10000
jle 0x4d7438
mov dword [ebp - 4], 0x14
jmp 0x4d76d4
mov eax, dword [ebp - 0x1014]
lea eax, [eax + 0x28]
mov edx, dword [ebx + 0x28]
mov ecx, dword [ebx + 0x2c]
lea ecx, [ecx + 3]
imul edx, ecx
add eax, edx
mov dword [ebp - 0x101c], eax
push eax
call dword [0x7c3750]
pop ecx
mov edi, eax
test eax, eax
jne 0x4d746f
mov dword [ebp - 4], 0x15
jmp 0x4d76d4
mov dword [edi], 0x50435245
mov eax, dword [ebp - 0x101c]
mov dword [edi + 4], eax
mov eax, dword [ebx + 0x3c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], 0
mov word [edi + 0x14], 0
mov word [edi + 0x16], 0
mov word [edi + 0x18], 0x28
mov eax, dword [ebx + 0x2c]
mov word [edi + 0x1a], ax
mov eax, dword [ebx + 0x28]
mov word [edi + 0x1c], ax
mov word [edi + 0x1e], 0
mov eax, dword [ebp + 0x1c]
lea edx, [0x7c4fdc]
cmp eax, edx
jne 0x4d74ca
mov dword [ebp - 0x1084], 0
jmp 0x4d74d3
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x1084], eax
mov eax, dword [ebp - 0x1084]
mov dword [edi + 0x20], eax
mov dword [edi + 0x24], 0
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x28], 0
movzx eax, word [edi + 0x18]
add eax, edi
mov dword [ebx + 0x24], eax
movzx eax, word [edi + 0x1a]
movzx edx, word [edi + 0x1c]
imul eax, edx
mov edx, dword [ebx + 0x24]
lea esi, [edx + eax]
mov dword [ebx + 0x14], esi
lea eax, [ebp - 0x1004]
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1010], eax
mov dword [ebp - 0x1008], esi
mov eax, dword [ebp - 0x1008]
mov byte [eax], 0x58
push 0
push ebx
push 0
lea eax, [ebp - 0x100c]
push eax
lea eax, [ebp - 0x1018]
push eax
push 0
push 0
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x1010]
push eax
lea eax, [ebp - 0x1008]
push eax
mov eax, dword [edi + 8]
mov edx, eax
and edx, 7
push edx
push eax
call fcn.004d6a10
add esp, 0x30
mov eax, dword [ebx + 0x30]
mov word [edi + 0x10], ax
mov eax, dword [ebx + 0x34]
mov word [edi + 0x12], ax
cmp dword [ebx + 0x44], 0
je 0x4d7595
lea eax, [edi + 8]
or dword [eax], 0x80000000
cmp dword [ebp - 4], 0
jne 0x4d75af
mov eax, dword [ebp - 0x1010]
movzx eax, byte [eax]
test eax, eax
je 0x4d75af
mov dword [ebp - 4], 0x16
mov eax, dword [ebp - 0x1008]
lea edx, [eax + 1]
mov dword [ebp - 0x1008], edx
mov byte [eax], 0
mov eax, dword [ebp - 0x1008]
mov edx, esi
sub eax, edx
cmp eax, dword [ebp - 0x1014]
jle 0x4d7696
mov dword [ebp - 4], 0x17
jmp 0x4d7696
lea eax, [ebx + 0x20]
mov edx, dword [eax]
lea edx, [edx - 2]
mov dword [eax], edx
mov eax, dword [ebx + 0x20]
movzx edx, byte [eax]
shl edx, 8
movzx eax, byte [eax + 1]
or edx, eax
mov dword [ebp - 0x1088], edx
mov eax, dword [ebp - 0x1088]
movzx edx, byte [esi + eax]
shl edx, 8
movzx eax, byte [esi + eax + 1]
or edx, eax
mov dword [ebp - 0x1090], edx
mov eax, dword [ebp - 0x1090]
push eax
mov eax, dword [edi + 8]
and eax, 0x800
je 0x4d7639
mov dword [ebp - 0x1094], 1
jmp 0x4d7643
mov dword [ebp - 0x1094], 0
mov eax, dword [ebp - 0x1094]
push eax
push esi
call fcn.004d2330
add esp, 0xc
mov dword [ebp - 0x108c], eax
test eax, eax
jne 0x4d7666
mov dword [ebp - 4], 0x35
jmp 0x4d7696
mov eax, dword [ebp - 0x1088]
mov edx, dword [ebp - 0x108c]
mov ecx, esi
sub edx, ecx
sar edx, 8
mov byte [esi + eax], dl
mov eax, dword [ebp - 0x1088]
mov edx, dword [ebp - 0x108c]
mov ecx, esi
sub edx, ecx
and edx, 0xff
mov byte [esi + eax + 1], dl
cmp dword [ebp - 4], 0
jne 0x4d76ad
mov eax, dword [ebx + 0x20]
lea edx, [ebp - 0x1004]
cmp eax, edx
ja 0x4d75e3
cmp dword [ebp - 4], 0
jne 0x4d76c6
movzx eax, word [edi + 0x12]
movzx edx, word [edi + 0x10]
cmp eax, edx
jle 0x4d76c6
mov dword [ebp - 4], 0xf
cmp dword [ebp - 4], 0
je 0x4d7706
push edi
call dword [0x7c3754]
pop ecx
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x1010]
mov ecx, dword [ebp + 8]
sub edx, ecx
mov dword [eax], edx
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp - 4]
mov edx, dword [edx*4 + 0x7c49bc]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x4d76ff
mov edx, dword [ebp - 4]
mov dword [eax], edx
xor eax, eax
jmp 0x4d7864
mov eax, dword [edi + 8]
and eax, 0x10
jne 0x4d77e4
mov eax, dword [edi + 8]
mov dword [ebp - 0x1088], eax
mov eax, dword [ebx + 0x38]
push eax
push 0
lea eax, [ebp - 0x1088]
push eax
push esi
call fcn.004d6d20
add esp, 0x10
test eax, eax
je 0x4d7740
lea eax, [edi + 8]
or dword [eax], 0x10
jmp 0x4d77e4
cmp dword [ebp - 0x1018], 0
jge 0x4d7761
push 0
lea eax, [ebp - 0x1088]
push eax
push esi
call fcn.004d6fc0
add esp, 0xc
mov dword [ebp - 0x1018], eax
cmp dword [ebp - 0x1018], 0
jl 0x4d77c8
mov eax, dword [ebp - 0x1018]
and eax, 0xff
mov dword [ebp - 0x108c], eax
mov eax, dword [ebp - 0x1018]
and eax, 0x100
je 0x4d77a7
mov eax, dword [ebp - 0x108c]
mov edx, dword [ebx + 4]
movzx edx, byte [edx + eax]
cmp edx, eax
jne 0x4d77a7
mov eax, dword [ebp - 0x108c]
mov dword [ebp - 0x1090], eax
jmp 0x4d77b3
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1090], eax
mov eax, dword [ebp - 0x1090]
mov word [edi + 0x14], ax
lea eax, [edi + 8]
or dword [eax], 0x40000000
jmp 0x4d77e4
mov eax, dword [ebx + 0x38]
push eax
push 0
push esi
call fcn.004d6e90
add esp, 0xc
test eax, eax
je 0x4d77e4
lea eax, [edi + 8]
or dword [eax], 0x10000000
mov eax, dword [ebp - 0x100c]
test eax, eax
jl 0x4d7862
mov edx, dword [edi + 8]
and edx, 0x10
je 0x4d7801
and eax, 0x200
je 0x4d7862
mov eax, dword [ebp - 0x100c]
and eax, 0xff
mov dword [ebp - 0x1088], eax
mov eax, dword [ebp - 0x100c]
and eax, 0x100
je 0x4d7843
mov eax, dword [ebp - 0x1088]
mov edx, dword [ebx + 4]
movzx edx, byte [edx + eax]
cmp edx, eax
jne 0x4d7843
mov eax, dword [ebp - 0x100c]
and eax, 0xfffffeff
mov dword [ebp - 0x108c], eax
jmp 0x4d784f
mov eax, dword [ebp - 0x100c]
mov dword [ebp - 0x108c], eax
mov eax, dword [ebp - 0x108c]
mov word [edi + 0x16], ax
lea eax, [edi + 8]
or dword [eax], 0x20000000
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret