Function at 0x4a0428
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd4
mov eax, 0x598938
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
call fcn.004d08c0
mov word [ebp - 0x14], 8
test edi, edi
jne 0x4a0457
mov edx, dword [ebp - 0x24]
mov dword fs:[0], edx
jmp 0x4a08a5
push edi
call fcn.00452b08
pop ecx
add eax, 0xffffff7d
sub eax, 2
jb 0x4a04b7
sub eax, 0x11
je 0x4a0476
sub eax, 0x96
je 0x4a0476
jmp 0x4a04f2
mov ebx, dword [edi + 0x2c]
mov esi, dword [edi + 0x8c]
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x2c], eax
call fcn.00479bcc
push esi
push edi
lea edx, [edi + 0x78]
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edx
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x4a0500
mov ebx, dword [edi + 0x17]
mov esi, dword [edi + 0x1b]
mov eax, dword [edi + 0x1f]
mov dword [ebp - 0x2c], eax
call fcn.00479bcc
push esi
push edi
lea edx, [edi + 0x78]
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edx
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x4a0500
mov eax, dword [ebp - 0x24]
mov dword fs:[0], eax
jmp 0x4a08a5
mov edx, dword [0x51a5dd]
cmp edx, 0xebc
jne 0x4a0521
or ebx, 1
push 0x51a657
call fcn.004d615c
pop ecx
mov dword [ebp - 0x28], eax
jmp 0x4a0529
and ebx, 0xfffffffe
xor ecx, ecx
mov dword [ebp - 0x28], ecx
test byte [0x51b4a0], 1
je 0x4a0537
or esi, 4
jmp 0x4a053a
and esi, 0xfffffffb
test byte [0x51b4a0], 2
je 0x4a0548
or esi, 2
jmp 0x4a054b
and esi, 0xfffffffd
mov al, byte [0x5197e4]
test al, al
je 0x4a0585
mov edx, dword [0x51b4a8]
test edx, edx
jne 0x4a0566
or esi, 0x100
jmp 0x4a056c
and esi, 0xfffffeff
mov ecx, dword [0x51b4a8]
dec ecx
jne 0x4a057d
or esi, 0x80
jmp 0x4a0591
and esi, 0xffffff7f
jmp 0x4a0591
and esi, 0xfffffeff
and esi, 0xffffff7f
mov eax, dword [0x51b4a0]
test ah, 0x20
jne 0x4a05a0
test ah, 0x10
je 0x4a05a6
or esi, 4
or esi, 2
and esi, 0xffffffdf
and esi, 0xffffffbf
mov eax, dword [0x51b4ac]
cmp eax, 1
jne 0x4a05bc
or esi, 0x40
or esi, 0x20
cmp eax, 2
jne 0x4a05c4
or esi, 0x20
mov edx, dword [0x518904]
test edx, edx
je 0x4a05d3
or esi, 0x10
jmp 0x4a05d6
and esi, 0xffffffef
mov cl, byte [0x519c10]
test cl, cl
je 0x4a05e8
or ebx, 0x4000
jmp 0x4a05ee
and ebx, 0xffffbfff
mov al, byte [0x51b8ef]
test al, al
je 0x4a05ff
or ebx, 0x2000
jmp 0x4a0605
and ebx, 0xffffdfff
mov dl, byte [0x519c14]
test dl, dl
je 0x4a0617
or ebx, 0x20000
jmp 0x4a061d
and ebx, 0xfffdffff
mov cl, byte [0x519c15]
test cl, cl
je 0x4a062f
or ebx, 0x40000
jmp 0x4a0635
and ebx, 0xfffbffff
mov al, byte [0x519c02]
test al, al
je 0x4a0643
or ebx, 2
jmp 0x4a0646
and ebx, 0xfffffffd
mov dl, byte [0x51a2aa]
test dl, dl
je 0x4a0655
or ebx, 8
jmp 0x4a0658
and ebx, 0xfffffff7
mov cl, byte [0x51a5d7]
test cl, cl
je 0x4a066a
or ebx, 0x80
jmp 0x4a0670
and ebx, 0xffffff7f
mov al, byte [0x519c1d]
test al, al
je 0x4a0681
or ebx, 0x100
jmp 0x4a0687
and ebx, 0xfffffeff
call fcn.00490ef0
test al, al
je 0x4a0698
or ebx, 0x800000
jmp 0x4a069e
and ebx, 0xff7fffff
movsx edx, byte [0x51b8fd]
cmp edx, 0x52
jne 0x4a06b2
or ebx, 0x8000
jmp 0x4a06b8
and ebx, 0xffff7fff
mov ecx, dword [0x517e34]
test ecx, ecx
je 0x4a06ca
or ebx, 0x10000
jmp 0x4a06d0
and ebx, 0xfffeffff
mov al, byte [0x519bef]
test al, al
je 0x4a06e1
or ebx, 0x100000
jmp 0x4a06e7
and ebx, 0xffefffff
mov dl, byte [0x519bf9]
test dl, dl
je 0x4a06f9
or ebx, 0x200000
jmp 0x4a06ff
and ebx, 0xffdfffff
mov cl, byte [0x51a5c8]
test cl, cl
je 0x4a0711
or ebx, 0x80000000
jmp 0x4a0717
and ebx, 0x7fffffff
mov al, byte [0x519bf1]
test al, al
jne 0x4a0734
mov dl, byte [0x519bf5]
test dl, dl
jne 0x4a0734
mov cl, byte [0x519bf7]
test cl, cl
je 0x4a073c
or ebx, 0x40000000
jmp 0x4a0742
and ebx, 0xbfffffff
mov al, byte [0x519bef]
test al, al
je 0x4a075d
mov edx, dword [0x51a2b4]
inc edx
jne 0x4a075d
test al, al
je 0x4a075d
or ebx, 0x20
jmp 0x4a0760
and ebx, 0xffffffdf
mov cl, byte [0x519c01]
test cl, cl
je 0x4a076f
or ebx, 0x40
jmp 0x4a0772
and ebx, 0xffffffbf
mov al, byte [0x51b8f4]
test al, al
je 0x4a0783
or esi, 0x200
jmp 0x4a0789
and esi, 0xfffffdff
movsx edx, byte [0x517e74]
cmp edx, 0xc
ja case.0x4a079b.0
mov dl, byte [edx + 0x4a07a2]
jmp dword [edx*4 + 0x4a07af]
or ebx, 0x10000000
or ebx, 536870912
jmp 0x4a07e7
and ebx, 0xefffffff
or ebx, 0x20000000
jmp 0x4a07e7
and ebx, 0xefffffff
and ebx, 0xdfffffff
push edi
call fcn.00452b08
pop ecx
add eax, 0xffffff7d
sub eax, 2
jb 0x4a0835
sub eax, 0x11
je 0x4a0806
sub eax, 0x96
je 0x4a0806
jmp 0x4a085e
call fcn.00401270
mov dword [edi + 0x24], eax
mov cx, word [0x519c12]
mov word [edi + 0x30], cx
mov dword [edi + 0x2c], ebx
mov dword [edi + 0x8c], esi
mov eax, dword [ebp - 0x2c]
mov dword [edi + 0x90], eax
mov dx, word [ebp - 0x28]
mov word [edi + 0x32], dx
jmp 0x4a086a
call fcn.00401270
mov dword [edi + 0xf], eax
mov cx, word [0x519c12]
mov word [edi + 0x33], cx
mov dword [edi + 0x17], ebx
mov dword [edi + 0x1b], esi
mov eax, dword [ebp - 0x2c]
mov dword [edi + 0x1f], eax
mov dx, word [ebp - 0x28]
mov word [edi + 0x2f], dx
jmp 0x4a086a
mov ecx, dword [ebp - 0x24]
mov dword fs:[0], ecx
jmp 0x4a08a5
mov dword [0x4dd074], 0x116
mov word [ebp - 0x14], 0
jmp 0x4a089b
mov edx, dword [ebp - 0x24]
mov dword fs:[0], edx
mov esp, ebp
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x30]
pop ebp
ret
mov dl, byte [esi + ebx]
cmp dl, 0x3a
jne 0x4ad342
mov cl, byte [esi + ebx + 1]
cmp cl, 0x2f
jne 0x4ad342
invalid
adc dword [edx - 0x7ffde1ac], ecx
cli
das
mov dl, byte [esi + ebx + 2]
cmp dl, 0x2f
jne 0x4ad342
add ebx, 3
mov byte [eax], 0
jmp 0x4ad368
mov dl, byte [esi + ebx]
test dl, dl
je 0x4ad353
cmp dl, 0xa
je 0x4ad353
cmp dl, 0xd
jne 0x4ad35f
mov ebx, dword [ebp - 4]
mov byte [ebp - 0x40c], 0
jmp 0x4ad368
mov dl, byte [esi + ebx]
mov byte [eax], dl
inc ebx
inc eax
jmp 0x4ad320
mov dword [ebp - 8], 0x50
push 0x5df45e
lea eax, [ebp - 0x40c]
push eax
call fcn.004ce170
add esp, 8
test eax, eax
jne 0x4ad38e
mov dword [ebp - 8], 0x1bb
push 0x5df464
lea ecx, [ebp - 0x40c]
push ecx
call fcn.004ce170
add esp, 8
test eax, eax
jne 0x4ad3ad
mov dword [ebp - 8], 0x15
mov al, byte [ebp - 0x40c]
test al, al
je 0x4ad3e8
mov edx, dword [ebp + 0x10]
test edx, edx
je 0x4ad3e8
mov ecx, dword [ebp + 0x10]
push esi
mov esi, ecx
xor eax, eax
lea edi, [ebp - 0x40c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
xor edi, edi
mov al, byte [esi + ebx]
cmp al, 0x3a
jne 0x4ad4a2
mov byte [ebp + edi - 0x40c], 0
mov edx, dword [ebp + 0x14]
test edx, edx
je 0x4ad42e
mov ecx, dword [ebp + 0x14]
push esi
mov esi, ecx
xor eax, eax
lea edi, [ebp - 0x40c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
inc ebx
lea eax, [ebp - 0x40c]
mov dword [ebp - 0xc], eax
lea eax, [esi + ebx]
mov dl, byte [eax]
test dl, dl
je 0x4ad455
cmp dl, 0xa
je 0x4ad455
cmp dl, 0xd
je 0x4ad455
cmp dl, 0x2f
je 0x4ad455
cmp dl, 0x20
jne 0x4ad45d
mov ecx, dword [ebp - 0xc]
mov byte [ecx], 0
jmp 0x4ad46b
mov edx, dword [ebp - 0xc]
mov cl, byte [eax]
inc eax
inc ebx
mov byte [edx], cl
inc dword [ebp - 0xc]
jmp 0x4ad43b
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x4ad519
mov eax, dword [ebp + 0x18]
push esi
mov esi, eax
xor eax, eax
lea edi, [ebp - 0x40c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x4ad519
mov al, byte [esi + ebx]
test al, al
je 0x4ad4b5
cmp al, 0xa
je 0x4ad4b5
cmp al, 0xd
je 0x4ad4b5
cmp al, 0x2f
jne 0x4ad508
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x4ad4cd
mov ecx, dword [ebp + 0x18]
push esi
push edi
mov edi, ecx
mov eax, edi
mov esi, 0x5df468
movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov byte [ebp + edi - 0x40c], 0
mov edx, dword [ebp + 0x14]
test edx, edx
je 0x4ad519
mov ecx, dword [ebp + 0x14]
push esi
mov esi, ecx
xor eax, eax
lea edi, [ebp - 0x40c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x4ad519
mov al, byte [esi + ebx]
mov byte [ebp + edi - 0x40c], al
inc ebx
inc edi
jmp 0x4ad3ea
lea edx, [ebp - 0x40c]
lea eax, [esi + ebx]
mov cl, byte [eax]
test cl, cl
je 0x4ad537
cmp cl, 0xa
je 0x4ad537
cmp cl, 0xd
je 0x4ad537
cmp cl, 0x20
jne 0x4ad53c
mov byte [edx], 0
jmp 0x4ad545
mov cl, byte [eax]
inc eax
mov byte [edx], cl
inc ebx
inc edx
jmp 0x4ad522
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x4ad576
mov edx, dword [ebp + 0x1c]
xor eax, eax
push esi
lea edi, [ebp - 0x40c]
or ecx, 0xffffffff
mov esi, edx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
lea eax, [esi + ebx]
jmp 0x4ad57d
inc ebx
inc eax
mov dl, byte [eax]
cmp dl, 0x20
je 0x4ad57b
lea edx, [ebp - 0x40c]
lea eax, [esi + ebx]
mov cl, byte [eax]
test cl, cl
je 0x4ad5a2
cmp cl, 0xa
je 0x4ad5a2
cmp cl, 0xd
je 0x4ad5a2
cmp cl, 0x20
jne 0x4ad5a7
mov byte [edx], 0
jmp 0x4ad5af
mov cl, byte [eax]
mov byte [edx], cl
inc eax
inc edx
jmp 0x4ad58d
mov eax, dword [ebp + 0x20]
test eax, eax
je 0x4ad5de
xor eax, eax
lea edi, [ebp - 0x40c]
or ecx, 0xffffffff
mov edx, dword [ebp + 0x20]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edx
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x4ad603
mov edx, dword [ebp + 0x18]
mov cl, byte [edx]
test cl, cl
jne 0x4ad603
mov eax, dword [ebp - 8]
push eax
push 0x5df469
mov edx, dword [ebp + 0x18]
push edx
call fcn.004d26c8
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret