Function at 0x74a8867d
Capabilities:
Check for peb beingdebugged flag
Inspect section memory permissions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x88
mov eax, dword [ebp + 0x10]
push ebx
push esi
xor esi, esi
mov dword [ebp - 0x1c], ecx
or dword [eax], 0xffffffff
mov eax, dword [edx + 0x20]
or eax, dword [edx + 0x24]
push edi
mov edi, dword [0x74ad0bfc]
mov byte [ebp - 5], 0
jne 0x74a886ac
xor ecx, ecx
jmp 0x74a886b7
mov ecx, dword [edx + 0x20]
sub ecx, dword [edi + 0xb50]
add ecx, edi
mov ebx, dword [edx + 0x18]
and ebx, 0xf0000000
test ecx, ecx
jne 0x74a886cb
xor eax, eax
jmp 0x74a889e8
mov dx, word [ecx + 8]
mov word [ebp - 0x24], dx
mov ax, word [ecx + 0xa]
mov word [ebp - 0x22], ax
mov eax, dword [ecx + 0x10]
or eax, dword [ecx + 0x14]
jne 0x74a886ea
xor edi, edi
mov dword [ebp - 0x20], edi
jmp 0x74a886fa
mov eax, dword [ecx + 0x10]
sub eax, dword [edi + 0xb50]
add eax, edi
xor edi, edi
mov dword [ebp - 0x20], eax
test dx, dx
je 0x74a886c4
push edi
lea eax, [ebp - 0x18]
push eax
call dword [0x74aa1a8c]
test ebx, ebx
jns 0x74a8879b
call dword [0x74aa09fc]
cmp byte [eax + 4], 1
jne 0x74a88728
mov eax, 0xc0000022
jmp 0x74a889e8
lea eax, [ebp - 0x18]
push eax
call dword [0x74aa19a8]
test eax, eax
js 0x74a88794
lea eax, [ebp - 0x18]
mov dword [ebp - 0x6c], 0x18
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x6c]
push eax
push 0x80000000
lea eax, [ebp - 0x30]
mov dword [ebp - 0x68], edi
push eax
mov dword [ebp - 0x60], 0x40
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x58], edi
call dword [0x74aa19d4]
mov edi, eax
test edi, edi
js 0x74a8877a
push dword [ebp - 0x30]
call dword [0x74aa1a34]
lea esi, [ebp - 0x18]
jmp 0x74a88790
lea eax, [ebp - 0x18]
push eax
call dword [0x74aa1a5c]
push 0
lea eax, [ebp - 0x18]
push eax
call dword [0x74aa1a8c]
test edi, edi
jns 0x74a887ac
mov esi, 0x74aa055c
jmp 0x74a887ac
test ebx, 0x40000000
je 0x74a887aa
mov esi, 0x74aa0564
jmp 0x74a887b0
xor esi, esi
test esi, esi
je 0x74a887b8
movzx ecx, word [esi]
add ecx, 2
jmp 0x74a887ba
xor ecx, ecx
movzx edi, word [ebp - 0x24]
mov eax, ebx
add edi, 2
add edi, ecx
and eax, 0x10000000
mov dword [ebp - 0x34], eax
je 0x74a887db
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x10]
add eax, 2
add edi, eax
mov eax, dword [ebp + 8]
test eax, eax
je 0x74a887f6
test ebx, 0x20000000
je 0x74a887f6
movzx eax, word [eax]
mov bl, 1
add eax, 2
add edi, eax
jmp 0x74a887f8
xor bl, bl
mov eax, dword fs:[0x30]
add edi, 2
push edi
push 0
push dword [eax + 0x18]
call dword [0x74aa1d80]
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x74a8882c
lea eax, [ebp - 0x18]
cmp esi, eax
jne 0x74a88822
push eax
call dword [0x74aa1a5c]
mov eax, 0xc0000017
jmp 0x74a889e8
xor eax, eax
mov word [ebp - 0xe], di
mov word [ebp - 0x10], ax
mov edi, 0x74aa3b18
test esi, esi
je 0x74a88863
push esi
lea eax, [ebp - 0x10]
push eax
call dword [0x74aa19a4]
push edi
lea eax, [ebp - 0x10]
push eax
call dword [str.t49_]
lea eax, [ebp - 0x18]
cmp esi, eax
jne 0x74a88863
push eax
call dword [0x74aa1a5c]
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x10]
push eax
call dword [0x74aa19a4]
cmp dword [ebp - 0x34], 0
je 0x74a88893
push edi
lea eax, [ebp - 0x10]
push eax
call dword [str.t49_]
mov eax, dword [ebp - 0x1c]
add eax, 0x10
push eax
lea eax, [ebp - 0x10]
push eax
call dword [0x74aa19a4]
test bl, bl
je 0x74a888af
push edi
lea eax, [ebp - 0x10]
push eax
call dword [str.t49_]
push dword [ebp + 8]
lea eax, [ebp - 0x10]
push eax
call dword [0x74aa19a4]
xor ecx, ecx
mov dword [ebp - 0x54], 0x18
lea eax, [ebp - 0x10]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x48], 0xc0
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], ecx
cmp byte [ebp + 0xc], cl
je 0x74a889be
mov ebx, dword [ebp + 0x10]
lea eax, [ebp - 0x3c]
push eax
push ecx
push ecx
push ecx
lea eax, [ebp - 0x54]
mov edi, 0x2000f
push eax
push edi
push ebx
call dword [0x74aa1b60]
mov esi, eax
cmp esi, 0xc0000034
jne 0x74a889d2
push 0x5c
pop ecx
cmp byte [ebp - 5], 0
jne 0x74a889d2
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x2c], eax
movzx eax, ax
shr eax, 1
mov dword [ebp - 0x28], edx
cmp word [edx + eax*2], cx
je 0x74a88947
mov cx, word [ebp - 0x2c]
push 0x5c
pop edi
mov eax, 0xfffe
add cx, ax
movzx eax, cx
shr eax, 1
mov word [ebp - 0x2c], cx
cmp word [edx + eax*2], di
jne 0x74a8892b
mov edi, 0x2000f
xor ecx, ecx
mov dword [ebp - 0x84], 0x18
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0x88]
push eax
push ecx
push ecx
push ecx
lea eax, [ebp - 0x84]
mov dword [ebp - 0x78], 0xc0
push eax
push edi
lea eax, [ebp - 0x38]
mov dword [ebp - 0x74], ecx
push eax
mov dword [ebp - 0x70], ecx
call dword [0x74aa1b60]
test eax, eax
js 0x74a889d2
push dword [ebp - 0x38]
call dword [0x74aa1a34]
lea eax, [ebp - 0x3c]
mov byte [ebp - 5], 1
push eax
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x54]
push eax
push edi
push ebx
call dword [0x74aa1b60]
mov esi, eax
push 0x5c
pop ecx
cmp esi, 0xc0000034
je 0x74a88903
jmp 0x74a889d2
lea eax, [ebp - 0x54]
push eax
push 0x80000000
push dword [ebp + 0x10]
call dword [0x74aa19d4]
mov esi, eax
push dword [ebp - 0xc]
mov eax, dword fs:[0x30]
push 0
push dword [eax + 0x18]
call dword [0x74aa1aac]
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc