Function at 0x7ac22450
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ecx, 0x1c
mov ebp, esp
push edi
push esi
lea esi, [ebp - 0xb8]
push ebx
mov ebx, edx
lea edx, [ebp - 0x88]
mov edi, edx
sub esp, 0xcc
mov dword [ebp - 0xc0], eax
xor eax, eax
rep stosd dword es:[edi], eax
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [ebp - 0x8c], 0x74
mov dword [ebp - 0xb8], 0xff676981
mov dword [esp], ebx
call dword [eax + 0x38]
sub esp, 8
test eax, eax
jne 0x7ac224c2
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac224c2
or dword [ebp - 0x88], 0x80
cmp eax, 0xffffffff
je 0x7ac22c68
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x50]
sub esp, 8
test eax, eax
jne 0x7ac224fc
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac224fc
or dword [ebp - 0x88], 1
cmp eax, 0xffffffff
je 0x7ac22c80
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x58]
sub esp, 8
test eax, eax
jne 0x7ac22539
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac22539
or dword [ebp - 0x88], 0x800
cmp eax, 0xffffffff
je 0x7ac22c90
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x68]
sub esp, 8
test eax, eax
jne 0x7ac22576
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac22576
or dword [ebp - 0x88], 0x100
cmp eax, 0xffffffff
je 0x7ac22ca0
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x70]
sub esp, 8
test eax, eax
jne 0x7ac225b3
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac225b3
or dword [ebp - 0x88], 0x1000
cmp eax, 0xffffffff
je 0x7ac22cb0
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x78]
sub esp, 8
test eax, eax
jne 0x7ac225ed
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac225ed
or dword [ebp - 0x88], 2
cmp eax, 0xffffffff
je 0x7ac22cc0
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x98]
sub esp, 8
test eax, eax
jne 0x7ac2262d
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac2262d
or dword [ebp - 0x88], 0x200
cmp eax, 0xffffffff
je 0x7ac22cd0
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0xa8]
sub esp, 8
test eax, eax
jne 0x7ac2266a
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac2266a
or dword [ebp - 0x88], 0x10
cmp eax, 0xffffffff
je 0x7ac22ce0
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0xb0]
sub esp, 8
test eax, eax
jne 0x7ac226aa
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac226aa
or dword [ebp - 0x88], 0x400
cmp eax, 0xffffffff
je 0x7ac22cf0
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0xc0]
sub esp, 8
test eax, eax
jne 0x7ac226e7
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac226e7
or dword [ebp - 0x88], 0x40
cmp eax, 0xffffffff
je 0x7ac22d00
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0xd0]
sub esp, 8
test eax, eax
jne 0x7ac22724
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac22724
or dword [ebp - 0x88], 8
cmp eax, 0xffffffff
je 0x7ac22d10
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0xd8]
sub esp, 8
test eax, eax
jne 0x7ac22764
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac22764
or dword [ebp - 0x88], 0x30000
cmp eax, 0xffffffff
je 0x7ac22d20
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0xe0]
sub esp, 8
test eax, eax
jne 0x7ac227a4
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac227a4
or dword [ebp - 0x88], 0x30000
cmp eax, 0xffffffff
je 0x7ac22d30
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0xe8]
sub esp, 8
test eax, eax
jne 0x7ac227e1
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac227e1
or dword [ebp - 0x88], 4
cmp eax, 0xffffffff
je 0x7ac22d40
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x40]
sub esp, 8
test eax, eax
jne 0x7ac22818
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac22818
or dword [ebp - 0x88], 0x40000
mov byte [ebp - 0x1b], al
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x48]
sub esp, 8
test eax, eax
jne 0x7ac2285a
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac2285a
or dword [ebp - 0x88], 0x4000000
cmp eax, 0xff676983
je 0x7ac22d50
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x60]
sub esp, 8
test eax, eax
jne 0x7ac2289c
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac2289c
or dword [ebp - 0x88], 0x40000000
cmp eax, 0xff676983
je 0x7ac22d60
mov dword [ebp - 0x78], eax
mov eax, dword [ebx]
lea edi, [ebp - 0xb0]
mov dword [esp], ebx
mov dword [ebp - 0xb8], 0xff676981
mov dword [esp + 4], edi
call dword [eax + pe_nt_image_headers32]
sub esp, 8
test eax, eax
jne 0x7ac22932
fld dword [ebp - 0xb0]
fld dword [0x7ac4ae70]
fucomi st(1)
jp 0x7ac228d8
fcompi st(1)
je 0x7ac22930
jmp 0x7ac228e0
fstp st(0)
lea esi, [esi]
fnstcw word [ebp - 0xba]
fmul dword [0x7ac4ae6c]
or dword [ebp - 0x88], 0x100000
fdiv dword [0x7ac4ae68]
movzx eax, word [ebp - 0xba]
or ah, 0xc
mov word [ebp - 0xbc], ax
fldcw word [ebp - 0xbc]
fistp dword [ebp - 0xc4]
fldcw word [ebp - 0xba]
mov eax, dword [ebp - 0xc4]
mov word [ebp - 0x1e], ax
jmp 0x7ac22932
fstp st(0)
mov dword [ebp - 0xb8], 0xff676981
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0x88]
sub esp, 8
test eax, eax
jne 0x7ac2296c
mov eax, dword [ebp - 0xb8]
cmp eax, 0xff676981
je 0x7ac2296c
or dword [ebp - 0x88], 0x2000000
mov dword [ebp - 0x28], eax
mov eax, dword [ebx]
lea edx, [ebp - 0xb4]
mov dword [esp], ebx
mov dword [esp + 4], edx
call dword [eax + 0x90]
sub esp, 8
test eax, eax
je 0x7ac22c10
mov eax, dword [ebx]
mov dword [esp + 4], edi
mov dword [esp], ebx
call dword [eax + 0xa0]
sub esp, 8
test eax, eax
jne 0x7ac22a02
fld dword [ebp - 0xb0]
fld dword [0x7ac4ae70]
fucomi st(1)
jp 0x7ac229b8
fcompi st(1)
je 0x7ac22a00
jmp 0x7ac229c0
fstp st(0)
lea esi, [esi]
fnstcw word [ebp - 0xba]
fmul dword [0x7ac4ae6c]
or dword [ebp - 0x88], 0x10000000
fdiv dword [0x7ac4ae68]
movzx eax, word [ebp - 0xba]
or ah, 0xc
mov word [ebp - 0xbc], ax
fldcw word [ebp - 0xbc]
fistp dword [ebp - 0x7c]
fldcw word [ebp - 0xba]
jmp 0x7ac22a02
fstp st(0)
mov eax, dword [ebx]
mov dword [esp + 4], edi
mov dword [esp], ebx
call dword [eax + 0xb8]
sub esp, 8
test eax, eax
jne 0x7ac22a72
fld dword [ebp - 0xb0]
fld dword [0x7ac4ae70]
fucomi st(1)
jp 0x7ac22a2e
fcompi st(1)
je 0x7ac22a70
jmp 0x7ac22a30
fstp st(0)
fnstcw word [ebp - 0xba]
fmul dword [0x7ac4ae6c]
or dword [ebp - 0x88], 0x80000000
fdiv dword [0x7ac4ae68]
movzx eax, word [ebp - 0xba]
or ah, 0xc
mov word [ebp - 0xbc], ax
fldcw word [ebp - 0xbc]
fistp dword [ebp - 0x80]
fldcw word [ebp - 0xba]
jmp 0x7ac22a72
fstp st(0)
mov eax, dword [ebx]
mov dword [esp + 4], edi
mov dword [esp], ebx
call dword [eax + 0xc8]
sub esp, 8
test eax, eax
jne 0x7ac22ada
fld dword [ebp - 0xb0]
fld dword [0x7ac4ae70]
fucomi st(1)
jp 0x7ac22a9e
fcompi st(1)
je 0x7ac22ad8
jmp 0x7ac22aa0
fstp st(0)
fnstcw word [ebp - 0xba]
or dword [ebp - 0x88], 0x200000
movzx eax, word [ebp - 0xba]
or ah, 0xc
mov word [ebp - 0xbc], ax
fldcw word [ebp - 0xbc]
fistp word [ebp - 0x2e]
fldcw word [ebp - 0xba]
jmp 0x7ac22ada
fstp st(0)
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [eax + 0xf0]
sub esp, 8
test eax, eax
jne 0x7ac22bf8
mov edx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x88]
cmp edx, 0xff676981
je 0x7ac22bfe
or eax, 0x400000
mov word [ebp - 0x30], dx
mov dword [ebp - 0x88], eax
mov edi, dword [ebp - 0xc0]
lea esi, [ebp - 0x98]
mov dword [ebp - 0x98], 0
mov eax, dword [edi]
mov dword [esp + 8], esi
mov dword [esp], edi
mov dword [esp + 4], 0x7ac4ada0
call dword [eax]
mov eax, dword [edi]
lea edx, [ebp - 0xac]
mov ebx, dword [ebp - 0x98]
sub esp, 0xc
mov dword [esp + 4], edx
mov dword [esp], edi
call dword [eax + 0x38]
mov eax, dword [edi]
lea edx, [ebp - 0xa8]
sub esp, 8
mov dword [esp + 4], edx
mov dword [esp], edi
lea edi, [ebp - 0xa4]
call dword [eax + 0x40]
mov eax, dword [ebp - 0xac]
sub esp, 8
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call fcn.7ac2b310
mov eax, dword [ebp - 0xa8]
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call fcn.7ac2b310
lea eax, [ebp - 0x8c]
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call fcn.7ac2c200
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call fcn.7ac35b40
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call fcn.7ac38cb0
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
call fcn.7ac130e0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp - 0x88]
test eax, eax
jne 0x7ac22b1b
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
or dword [ebp - 0x88], 0x20000000
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0xc4], eax
mov edx, eax
lea eax, [ebp - 0x72]
lea esi, [esi]
nop
movzx ecx, word [edx]
test cx, cx
je 0x7ac22c49
add eax, 2
mov word [eax - 2], cx
lea ecx, [ebp - 0x34]
add edx, 2
cmp eax, ecx
jne 0x7ac22c30
xor edx, edx
mov word [eax], dx
mov eax, dword [ebp - 0xc4]
mov dword [esp], eax
call dword [sym.imp.oleaut32.dll_SysFreeString]
sub esp, 4
jmp 0x7ac2298c
or dword [ebp - 0x84], 0x80
jmp 0x7ac224c2
or dword [ebp - 0x84], 1
jmp 0x7ac224fc
or dword [ebp - 0x84], 0x800
jmp 0x7ac22539
or dword [ebp - 0x84], 0x100
jmp 0x7ac22576
or dword [ebp - 0x84], 0x1000
jmp 0x7ac225b3
or dword [ebp - 0x84], 2
jmp 0x7ac225ed
or dword [ebp - 0x84], 0x200
jmp 0x7ac2262d
or dword [ebp - 0x84], 0x10
jmp 0x7ac2266a
or dword [ebp - 0x84], 0x400
jmp 0x7ac226aa
or dword [ebp - 0x84], 0x40
jmp 0x7ac226e7
or dword [ebp - 0x84], 8
jmp 0x7ac22724
or dword [ebp - 0x84], 0x10000
jmp 0x7ac22764
or dword [ebp - 0x84], 0x20000
jmp 0x7ac227a4
or dword [ebp - 0x84], 4
jmp 0x7ac227e1
or dword [ebp - 0x84], 0x4000000
jmp 0x7ac2285a
or dword [ebp - 0x84], 0x40000000
jmp 0x7ac2289c