Function at 0x5a5690
Capabilities:
Inspect section memory permissions

Disassembly:
mov ecx, dword [0x8602c0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5a5d28
sub esp, 0x5c
mov edx, dword [0x839db0]
mov eax, dword [edx]
nop
mov dword [esp], 0
call eax
mov eax, dword [esp + 4]
mov dword [esp + 0x20], eax
call fcn.005a4f40
mov eax, dword [esp]
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x5a5d14
mov dword [esp + 0x3c], eax
mov edx, dword [0x839db0]
mov eax, dword [edx]
mov dword [esp], 1
call eax
mov eax, dword [esp + 0x10]
test eax, 0x8000
setne cl
movzx ecx, cl
test eax, 0x800000
je 0x5a5703
or ecx, 0x10
test eax, 0x2000000
je 0x5a5712
or ecx, 0x20
test eax, 0x2000000
je 0x5a5717
or ecx, 0x40
test eax, 0x4000000
je 0x5a5724
or ecx, 0x80
mov ebx, dword [esp + 0xc]
test ebx, 1
je 0x5a5736
or ecx, 0x100
test ebx, 0x20
je 0x5a5745
mov edx, 0x8000000
jmp 0x5a5747
xor edx, edx
test ebx, 0x200
je 0x5a5755
or ecx, 0x200
test ebx, 0x80000
je 0x5a5763
or ecx, 0x400
test ebx, 0x100000
je 0x5a5771
or ecx, 0x1000
test ebx, 0x2000000
je 0x5a577f
or ecx, 0x1000000
test ebx, 2
je 0x5a578d
or ecx, 0x2000000
test ebx, 0x800000
je 0x5a579b
or ecx, 0x800000
test ebx, 0x40000000
je 0x5a57a9
or ecx, 0x20000000
test ebx, 0x20000000
je 0x5a57b7
or ecx, 0x40000
test ebx, 0x2000
je 0x5a57c5
or edx, 0x400000
mov dword [esp + 0x18], ebx
mov dword [esp + 0x28], edx
mov ebp, dword [esp + 0x3c]
cmp ebp, 1
jne 0x5a5825
test eax, 0x10000000
je 0x5a581f
mov esi, dword [esp + 0x20]
cmp esi, 4
jb 0x5a5829
mov dword [esp + 0x30], eax
mov dword [esp + 0x24], ecx
call fcn.005a4ba0
cmp dword [esp], 1
jle 0x5a5805
mov ecx, dword [esp + 0x24]
or ecx, 0x4000000
jmp 0x5a5809
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x20]
jmp 0x5a5829
mov esi, dword [esp + 0x20]
jmp 0x5a5829
mov esi, dword [esp + 0x20]
cmp ebp, 2
jne 0x5a5869
test eax, 0x10000000
je 0x5a5869
cmp esi, 4
jb 0x5a5869
mov dword [esp + 0x58], ecx
call fcn.005a4ba0
cmp dword [esp], 1
jle 0x5a5855
mov ecx, dword [esp + 0x58]
or ecx, 0x4000000
jmp 0x5a5859
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x20]
test ebx, 0x4000000
je 0x5a58d9
test ebx, 0x8000000
je 0x5a58d9
test ebx, 0x10000000
je 0x5a58d9
mov dword [esp + 0x54], ecx
mov edx, dword [0x839db8]
mov eax, dword [edx]
mov dword [esp], 0
call eax
mov eax, dword [esp + 4]
and eax, 6
cmp eax, 6
jne 0x5a58c5
mov eax, dword [esp + 0x54]
mov ecx, eax
or eax, 0x2000
mov ebx, dword [esp + 0x18]
test ebx, 0x1000
je 0x5a58c1
or ecx, 0xa000
jmp 0x5a58cd
mov ecx, eax
jmp 0x5a58cd
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x28]
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x20]
cmp esi, 7
jb 0x5a5b7b
mov dword [esp + 0x50], ecx
mov edx, dword [0x839db4]
mov eax, dword [edx]
mov dword [esp], 7
mov dword [esp + 4], 0
call eax
mov edx, dword [0x839db4]
mov eax, dword [edx]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x34], ecx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x38], ebx
mov ebp, dword [esp + 0xc]
mov dword [esp + 0x1c], ebp
mov dword [esp], 7
mov dword [esp + 4], 1
call eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x50]
test ecx, 0x2000
je 0x5a5954
mov ebx, dword [esp + 0x1c]
test ebx, 0x20
je 0x5a5958
or ecx, 0x4000
jmp 0x5a5958
mov ebx, dword [esp + 0x1c]
test ebx, 8
je 0x5a597c
mov ebp, ecx
or ecx, 0x80000
test ebx, 0x100
je 0x5a5978
or ebp, 0x180000
jmp 0x5a597e
mov ebp, ecx
jmp 0x5a597e
mov ebp, ecx
test ebx, 4
je 0x5a5992
mov edx, dword [esp + 0x28]
or edx, 0x800000
jmp 0x5a5996
mov edx, dword [esp + 0x28]
test ebx, 0x10
je 0x5a59a4
or ebp, 0x8000000
test ebx, 0x200
je 0x5a59b2
or edx, 0x100000
test ebx, 0x800
je 0x5a59c0
or ebp, 0x10000000
test ebx, 0x4000
je 0x5a59ce
or edx, 0x80000
test ebx, 0x40000
je 0x5a59dc
or ebp, 0x40000000
test ebx, 0x80000
je 0x5a59ea
or ebp, 0x80000000
test ebx, 0x20000000
je 0x5a59f5
or edx, 1
mov ecx, dword [esp + 0x38]
test ecx, 0x4000000
je 0x5a5a07
or edx, 0x2000000
mov esi, dword [esp + 0x34]
test esi, 0x40000000
je 0x5a5a19
or edx, 0x1000000
test ecx, 0x8000000
je 0x5a5a27
or edx, 0x4000000
mov edi, dword [esp + 0x18]
and edi, 0xc000000
cmp edi, 0xc000000
jne 0x5a5b79
mov dword [esp + 0x2c], eax
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x48], edx
mov edx, dword [0x839db8]
mov eax, dword [edx]
mov dword [esp], 0
call eax
mov eax, dword [esp + 4]
mov ecx, eax
shr eax, 5
and eax, 7
cmp eax, 7
jne 0x5a5b71
shr ecx, 1
and ecx, 3
cmp ecx, 3
jne 0x5a5b71
mov eax, dword [esp + 0x1c]
test eax, 0x10000
je 0x5a5a91
mov edx, dword [esp + 0x48]
or edx, 2
jmp 0x5a5a95
mov edx, dword [esp + 0x48]
test eax, 0x20000
je 0x5a5a9f
or edx, 4
test eax, 0x200000
je 0x5a5aa9
or edx, 8
test eax, 0x4000000
je 0x5a5ab3
or edx, 0x10
test eax, 0x8000000
je 0x5a5abd
or edx, 0x20
test eax, 0x10000000
je 0x5a5ac7
or edx, 0x40
test eax, 0x40000000
je 0x5a5ad4
or edx, 0x80
test eax, 0x80000000
je 0x5a5ae1
or edx, 0x100
mov eax, dword [esp + 0x34]
test eax, 2
je 0x5a5af2
or edx, 0x200
test eax, 0x40
je 0x5a5aff
or edx, 0x400
test eax, 0x100
je 0x5a5b0c
or edx, 0x2000
test eax, 0x200
je 0x5a5b19
or edx, 0x4000
test eax, 0x400
je 0x5a5b26
or edx, 0x10000
test eax, 0x800
je 0x5a5b33
or edx, 0x800
test eax, 0x1000
je 0x5a5b40
or edx, 0x8000
test eax, 0x4000
je 0x5a5b4d
or edx, 0x1000
mov eax, dword [esp + 0x38]
test eax, 0x100
je 0x5a5b5e
or edx, 0x40000
mov eax, dword [esp + 0x2c]
test eax, 0x20
je 0x5a5b75
or edx, 0x20000
jmp 0x5a5b75
mov edx, dword [esp + 0x48]
mov ebp, dword [esp + 0x4c]
mov ecx, ebp
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edx
mov eax, dword [0x839db0]
mov ebx, dword [eax]
mov dword [esp], 0x80000000
mov edx, eax
call ebx
cmp dword [esp + 4], 0x80000001
jae 0x5a5bad
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
jmp 0x5a5d08
mov edx, dword [0x839db0]
mov eax, dword [edx]
mov dword [esp], 0x80000001
call eax
mov eax, dword [esp + 0xc]
test eax, 0x20
je 0x5a5bd5
mov ecx, dword [esp + 0x24]
or ecx, 0xc00000
jmp 0x5a5bd9
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
test edx, 0x80000000
je 0x5a5be8
or ecx, 4
test edx, 0x40000000
je 0x5a5bf3
or ecx, 8
test edx, 0x800000
je 0x5a5bfe
or ecx, 0x10
test edx, 0x400000
je 0x5a5c09
or ecx, 0x20
mov ebx, eax
and eax, 0x40
test eax, eax
je 0x5a5c18
or ecx, 0x800
test edx, 0x100000
je 0x5a5c23
or ecx, 2
test edx, 0x8000000
je 0x5a5c3e
mov edx, dword [esp + 0x28]
or edx, 0x200000
mov ebp, dword [esp + 0x3c]
cmp ebp, 1
jmp 0x5a5c49
mov ebp, dword [esp + 0x3c]
cmp ebp, 1
mov edx, dword [esp + 0x28]
je 0x5a5c5d
test ecx, 0x80
je 0x5a5c5d
test eax, eax
jne 0x5a5c5d
or edx, 0x10000000
test ecx, 0x2000
je 0x5a5c8b
test ebx, 0x800
je 0x5a5c73
or ecx, 0x20000
test ebx, 0x10000
je 0x5a5c86
or ecx, 0x10000
cmp ebp, 1
jmp 0x5a5c8e
cmp ebp, 1
jmp 0x5a5c8e
cmp ebp, 1
jne 0x5a5d08
mov dword [esp + 0x44], ecx
mov dword [esp + 0x40], edx
call fcn.005a4db0
mov eax, dword [esp + 4]
mov ecx, dword [esp]
cmp ecx, 6
jne 0x5a5cef
cmp eax, 9
je 0x5a5cb8
cmp eax, 0xd
je 0x5a5cb8
cmp eax, 0xe
jne 0x5a5cec
mov edx, dword [esp + 0x44]
test edx, 0x80
je 0x5a5cd0
mov ebx, dword [esp + 0x40]
or ebx, 0x10000000
jmp 0x5a5cd4
mov ebx, dword [esp + 0x40]
test edx, 0x100
je 0x5a5ce7
or ebx, 0x20000000
cmp ecx, 6
jmp 0x5a5cf7
cmp ecx, 6
jmp 0x5a5cf7
cmp ecx, 6
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x40]
jne 0x5a5d04
cmp eax, 0x1c
jne 0x5a5d04
or ebx, 0x40000000
mov ecx, edx
mov edx, ebx
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], ecx
add esp, 0x5c
ret
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
add esp, 0x5c
ret
call fcn.00466840
jmp fcn.005a5690