Function at 0x4fb742
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x44
mov eax, dword [0x5a1014]
xor eax, esp
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0x10]
push ebx
mov dword [esp + 0x2c], eax
xor eax, eax
push esi
push edi
mov byte [esp + 0xe], al
mov edi, ecx
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov eax, dword [0x5a50d8]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x14], edi
test eax, eax
jne 0x4fb794
push 4
pop eax
jmp 0x4fb796
mov eax, dword [eax]
mov edx, ecx
mov dword [esp + 0x10], eax
push 0x3d
pop ebx
push 0x2c
movzx eax, word [edx]
pop esi
test ax, ax
je 0x4fb7c3
mov ecx, eax
cmp cx, bx
je 0x4fb7c3
cmp cx, si
je 0x4fb7c3
add edi, 2
movzx eax, word [edi]
mov ecx, eax
test ax, ax
jne 0x4fb7ac
mov eax, edi
sub eax, edx
sar eax, 1
je 0x4fbdab
lea esi, [eax + 1]
lea ebx, [esi + esi]
push ebx
call dword [sym.imp.tbbmalloc.dll_scalable_malloc]
mov dword [esp + 0x2c], eax
pop ecx
test eax, eax
jne 0x4fb7f7
call fcn.004575aa
test al, al
jne 0x4fb7d5
call fcn.004fd4dc
mov eax, dword [esp + 0x28]
push 0xffffffffffffffff
push dword [esp + 0x18]
push esi
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy_s]
mov ecx, dword [esp + 0x38]
add esp, 0x10
call fcn.004562c9
push eax
mov dword [esp + 0x30], eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
pop ecx
push 0x2f
pop ecx
push 0x3d
pop edx
mov dword [esp + 0x30], eax
cmp word [edi], dx
jne 0x4fb93a
lea ebx, [edi + 2]
movzx eax, word [ebx]
mov dword [esp + 0x24], ebx
cmp ax, cx
je 0x4fbdab
mov edi, ebx
test ax, ax
je 0x4fb86a
push 0x2c
mov ecx, eax
pop ebx
cmp cx, dx
je 0x4fb866
cmp cx, bx
je 0x4fb866
add edi, 2
movzx eax, word [edi]
mov ecx, eax
test ax, ax
jne 0x4fb84f
mov ebx, dword [esp + 0x24]
mov eax, edi
sub eax, ebx
sar eax, 1
je 0x4fbdab
inc eax
mov dword [esp + 0x20], eax
add eax, eax
mov dword [esp + 0x24], eax
push eax
call dword [sym.imp.tbbmalloc.dll_scalable_malloc]
mov esi, eax
pop ecx
test esi, esi
jne 0x4fb8a1
call fcn.004575aa
test al, al
mov eax, dword [esp + 0x24]
jne 0x4fb881
call fcn.004fd4dc
push 0xffffffffffffffff
push ebx
push dword [esp + 0x28]
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy_s]
add esp, 0x10
mov ecx, esi
call fcn.004562c9
mov ebx, eax
mov dword [esp + 0x20], ebx
test esi, esi
je 0x4fb8cb
push esi
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
mov esi, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
push ebx
call esi
mov ebx, eax
mov dword [esp + 0x28], ebx
pop ecx
cmp ebx, 8
jbe 0x4fb93a
push dword [esp + 0x2c]
call esi
pop ecx
cmp ebx, eax
jbe 0x4fb93a
mov ecx, dword [0x5a9800]
xor ebx, ebx
push ebx
xor edx, edx
call fcn.00437acc
mov ecx, dword [0x5a9800]
lea edx, [esp + 0x44]
push 4
call fcn.0044b880
cmp dword [esp + 0x44], 0x5a4d
je 0x4fbdab
cmp dword [esp + 0x10], 0x98967f
jbe 0x4fb933
push dword [esp + 0x14]
push 0x518
push ebx
call fcn.004fabf6
mov byte [esp + 0xe], 1
jmp 0x4fb93c
xor ebx, ebx
movzx eax, word [edi]
push 0x2c
pop ecx
cmp ax, cx
jne 0x4fb951
push 2
pop esi
add edi, esi
movzx edx, word [edi]
jmp 0x4fb95f
mov edx, eax
test ax, ax
jne 0x4fbdab
push 2
pop esi
mov dword [esp + 0x1c], ebx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x18], ebx
test dx, dx
je 0x4fbb1d
movzx edx, dx
movzx eax, dx
cmp eax, 0x6d
ja 0x4fba97
je 0x4fba8f
sub eax, 0x21
je 0x4fbaff
sub eax, 0x40
je 0x4fb9f3
sub eax, esi
je 0x4fb9eb
sub eax, 1
je 0x4fb9e0
sub eax, 1
je 0x4fb9d5
sub eax, 4
je 0x4fb9cd
sub eax, esi
jne 0x4fbdab
lea eax, [esp + 0x1c]
cmp ecx, eax
lea eax, [esp + 0x18]
je 0x4fb9c2
lea eax, [esp + 0x1c]
or dword [eax], 0x4000000
jmp 0x4fbaf9
or dword [ecx], 0x40
jmp 0x4fbaf9
or dword [ecx], 0x20000000
jmp 0x4fbaf9
or dword [ecx], 0x2000000
jmp 0x4fbaf9
or dword [ecx], 0x20
jmp 0x4fbaf9
and dword [ecx], 0xff0ffff7
lea eax, [esp + 0x18]
or dword [esp + 0x18], 0xf00008
cmp ecx, eax
je 0x4fbaf9
add edi, esi
movzx eax, word [edi]
cmp eax, 0x70
ja 0x4fba67
je 0x4fba5c
sub eax, 0x31
je 0x4fba51
sub eax, 1
je 0x4fba46
sub eax, esi
je 0x4fba3b
sub eax, 4
jne 0x4fbdab
or dword [ecx], 0x400000
jmp 0x4fbaf9
or dword [ecx], 0x300000
jmp 0x4fbaf9
or dword [ecx], 0x200000
jmp 0x4fbaf9
or dword [ecx], 0x100000
jmp 0x4fbaf9
or dword [ecx], 0x500000
jmp 0x4fbaf9
sub eax, 0x73
je 0x4fba87
sub eax, 1
je 0x4fba7f
sub eax, 4
jne 0x4fbdab
or dword [ecx], 8
jmp 0x4fbaf9
or dword [ecx], 0x600000
jmp 0x4fbaf9
or dword [ecx], 0x700000
jmp 0x4fbaf9
or dword [ecx], 0x800
jmp 0x4fbaf9
sub eax, 0x6e
je 0x4fbaff
sub eax, 1
je 0x4fbaf3
sub eax, 1
je 0x4fbadb
sub eax, esi
je 0x4fbad3
sub eax, 1
je 0x4fbacb
sub eax, esi
je 0x4fbac3
sub eax, esi
jne 0x4fbdab
or dword [ecx], 0x80000000
jmp 0x4fbaf9
or dword [ecx], 0x80
jmp 0x4fbaf9
or dword [ecx], 0x10000000
jmp 0x4fbaf9
or dword [ecx], 0x40000000
jmp 0x4fbaf9
lea eax, [esp + 0x1c]
cmp ecx, eax
lea eax, [esp + 0x18]
je 0x4fbaeb
lea eax, [esp + 0x1c]
or dword [eax], 0x8000000
jmp 0x4fbaf9
or dword [ecx], 0x200
lea ecx, [esp + 0x1c]
jmp 0x4fbb0d
cmp word [edi + 2], bx
je 0x4fbdab
lea ecx, [esp + 0x18]
add edi, esi
movzx eax, word [edi]
mov edx, eax
test ax, ax
jne 0x4fb977
xor esi, esi
mov byte [esp + 0xf], bl
inc esi
mov dword [esp + 0x14], esi
cmp dword [0x5a9580], esi
jb 0x4fbd49
push 0x28
pop ebx
mov ecx, dword [0x5a9550]
mov edx, dword [0x5a50d8]
lea ecx, [ebx + ecx]
call fcn.00432074
push eax
push dword [esp + 0x30]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcmp]
pop ecx
pop ecx
test eax, eax
jne 0x4fbca6
mov ecx, dword [esp + 0x20]
mov byte [esp + 0xf], 1
test ecx, ecx
je 0x4fbc4f
mov edi, dword [esp + 0x24]
cmp edi, 8
jbe 0x4fbc24
cmp byte [esp + 0xe], al
je 0x4fbbcb
push dword [esp + 0x10]
lea eax, [esp + 0x48]
xor esi, esi
push 0x401bb4
push 0xffffffffffffffff
push 8
push eax
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
call fcn.004fd0bc
add esp, 0x14
test eax, eax
jle 0x4fbd1d
mov eax, dword [0x5a9550]
lea esi, [esp + 0x44]
lea edi, [eax + 1]
mov byte [ebx + eax], 0x2f
add edi, ebx
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x4fbc4b
lea eax, [esp + 0x10]
push eax
mov eax, dword [0x5a9550]
inc eax
add eax, ebx
push 0x4090f4
push eax
call fcn.0044c170
add esp, 0xc
cmp eax, 1
jne 0x4fbc4f
mov eax, dword [esp + 0x10]
add eax, dword [0x5a50d8]
push edi
push dword [esp + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [esp + 0x3c]
add esp, 0xc
sub eax, edi
inc eax
push eax
mov eax, dword [esp + 0x14]
add eax, dword [0x5a50d8]
add eax, edi
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
jmp 0x4fbc4f
mov esi, dword [0x5a9550]
push edi
push ecx
add esi, ebx
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push 8
pop eax
sub eax, edi
push eax
lea eax, [esi + edi]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov esi, dword [esp + 0x14]
mov ecx, dword [0x5a9550]
mov eax, dword [esp + 0x18]
movzx edx, word [0x5a9778]
not eax
push 0
and eax, dword [ebx + ecx + 0x24]
or eax, dword [esp + 0x20]
mov dword [ebx + ecx + 0x24], eax
xor eax, eax
cmp byte [ebp + 0x18], al
mov ecx, dword [0x5a9800]
setne al
dec eax
and eax, 0xffffffdc
add eax, 0x10
add eax, dword [ebp + 0x14]
add edx, eax
add edx, ebx
call fcn.00437acc
mov edx, dword [0x5a9550]
push ecx
mov ecx, dword [0x5a9800]
lea edx, [ebx + edx]
call fcn.00466e6c
inc esi
add ebx, 0x28
mov dword [esp + 0x14], esi
cmp esi, dword [0x5a9580]
jbe 0x4fbb37
cmp byte [esp + 0xf], 0
je 0x4fbd49
mov edi, dword [esp + 0x20]
mov bl, byte [esp + 0xe]
test edi, edi
je 0x4fbd66
test bl, bl
je 0x4fbd66
mov ebx, dword [esp + 0x24]
lea eax, [esp + 0x10]
movzx ecx, byte [ebp + 0x18]
add ecx, 9
imul ecx, dword [0x5a9588]
lea esi, [ebx + 1]
push esi
push 0x5a50d8
push eax
mov eax, dword [0x5a9584]
lea edx, [eax + ecx*2]
mov ecx, dword [0x5a9800]
call fcn.00537554
test al, al
jne 0x4fbd28
push 0x44e
push 0
jmp 0x4fbd23
push 0x3e8
push esi
call fcn.004fabf6
mov ecx, dword [esp + 0x10]
mov eax, dword [0x5a50d8]
inc ecx
add ecx, ebx
push esi
push edi
mov dword [eax], ecx
mov eax, dword [0x5a50d8]
add eax, dword [esp + 0x18]
push eax
call sub.VCRUNTIME140.dll_memcpy
jmp 0x4fbd5f
push dword [esp + 0x28]
push 0xfc7
push dword [esp + 0x3c]
call fcn.004fd88b
mov edi, dword [esp + 0x2c]
mov bl, byte [esp + 0x1a]
add esp, 0xc
mov eax, dword [esp + 0x28]
test eax, eax
je 0x4fbd76
push eax
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
mov ecx, dword [esp + 0x38]
movzx eax, bl
neg eax
sbb eax, eax
and eax, dword [esp + 0x10]
mov dword [ecx], eax
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x2c]
mov dword [ecx], eax
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x4c]
mov dword [eax], edi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0047a40f
mov esp, ebp
pop ebp
ret 0x14
push dword [esp + 0x14]
push 0x471
push 0
jmp 0x4fb92e