Function at 0x1e211e30
Capabilities:
Inspect section memory permissions
Link many functions at runtime

Disassembly:
push esi
push str.coinit_flags
mov esi, 2
call dword [sym.imp.python27.dll_PySys_GetObject]
add esp, 4
test eax, eax
je 0x1e211e69
push eax
call dword [sym.imp.python27.dll_PyInt_AsUnsignedLongMask]
mov esi, eax
add esp, 4
cmp esi, 0xffffffff
jne 0x1e211e6f
call dword [sym.imp.python27.dll_PyErr_Occurred]
test eax, eax
jne 0x1e213019
jmp 0x1e211e6f
call dword [sym.imp.python27.dll_PyErr_Clear]
push esi
push 0
call sym.pythoncom27.dll_PyCom_CoInitializeEx
add esp, 8
cmp eax, 0x80004001
jne 0x1e211e8b
push 0
call sym.pythoncom27.dll_PyCom_CoInitialize
add esp, 4
call dword [sym.imp.pywintypes27.dll_int___cdecl_PyWinGlobals_Ensure_void_]
cmp eax, 0xffffffff
je 0x1e213019
push 0x3f5
push 0
push 0
push 0x1e257ad8
push str.pythoncom
call dword [sym.imp.python27.dll_Py_InitModule4]
add esp, 0x14
test eax, eax
je 0x1e213019
push eax
call dword [sym.imp.python27.dll_PyModule_GetDict]
mov esi, eax
add esp, 4
test esi, esi
je 0x1e213019
push ebx
push edi
call fcn.1e214c50
mov eax, dword [0x1e25ecf8]
mov ebx, dword [sym.imp.python27.dll_PyDict_SetItemString]
push eax
push str.TypeIIDs
push esi
call ebx
mov ecx, dword [0x1e25ecfc]
push ecx
push str.ServerInterfaces
push esi
call ebx
mov edx, dword [0x1e25ed00]
push edx
push str.InterfaceNames
push esi
call ebx
mov edi, dword [sym.imp.python27.dll_PyType_Ready]
push sym.pythoncom27.dll_struct__typeobject_PyOleEmptyType
call edi
add esp, 0x28
cmp eax, 0xffffffff
je 0x1e213017
push sym.pythoncom27.dll_struct__typeobject_PyOleMissingType
call edi
add esp, 4
cmp eax, 0xffffffff
je 0x1e213017
push sym.pythoncom27.dll_struct__typeobject_PyOleArgNotFoundType
call edi
add esp, 4
cmp eax, 0xffffffff
je 0x1e213017
push 8
call sub.MSVCR90.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
test eax, eax
je 0x1e211f61
mov ecx, eax
call sym.pythoncom27.dll_public:_void___thiscall_PyOleEmpty::constructor_void_
jmp 0x1e211f63
xor eax, eax
push eax
push str.Empty
push esi
mov dword [0x1e25ecc4], eax
call ebx
push 8
call sub.MSVCR90.dll_void____cdecl_operator_new_unsigned_int_
add esp, 0x10
test eax, eax
je 0x1e211f88
mov ecx, eax
call sym.pythoncom27.dll_public:_void___thiscall_PyOleMissing::constructor_void_
jmp 0x1e211f8a
xor eax, eax
push eax
push str.Missing
push esi
mov dword [0x1e25ecc8], eax
call ebx
push 8
call sub.MSVCR90.dll_void____cdecl_operator_new_unsigned_int_
add esp, 0x10
test eax, eax
je 0x1e211faf
mov ecx, eax
call sym.pythoncom27.dll_public:_void___thiscall_PyOleArgNotFound::constructor_void_
jmp 0x1e211fb1
xor eax, eax
push eax
push str.ArgNotFound
push esi
mov dword [0x1e25eccc], eax
call ebx
push 8
call sub.MSVCR90.dll_void____cdecl_operator_new_unsigned_int_
add esp, 0x10
test eax, eax
je 0x1e211fd6
mov ecx, eax
call sym.pythoncom27.dll_public:_void___thiscall_PyOleNothing::constructor_void_
jmp 0x1e211fd8
xor eax, eax
push eax
push str.Nothing
push esi
mov dword [0x1e25ecd0], eax
call ebx
mov eax, dword [sym.imp.pywintypes27.dll_struct__object__PyWinExc_COMError]
add esp, 0xc
cmp dword [eax], 0
jne 0x1e21200d
mov eax, dword [sym.imp.python27.dll_PyExc_MemoryError]
mov ecx, dword [eax]
push str.cant_define_ole_error
push ecx
call dword [sym.imp.python27.dll_PyErr_SetString]
add esp, 8
pop edi
pop ebx
pop esi
ret
mov edi, dword [eax]
push edi
push str.ole_error
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1e213017
push edi
push str.error
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1e213017
mov edx, dword [sym.imp.pywintypes27.dll_struct__object__PyWinExc_COMError]
mov eax, dword [edx]
push eax
push str.com_error
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1e213017
push eax
push eax
push str.pythoncom.internal_error
call dword [sym.imp.python27.dll_PyErr_NewException]
push eax
push str.internal_error
push esi
mov dword [0x1e25ecd4], eax
call ebx
add esp, 0x18
test eax, eax
jne 0x1e213017
push esi
call fcn.1e214ca0
add esp, 4
test eax, eax
jne 0x1e213017
mov edi, dword [sym.imp.python27.dll_PyType_Ready]
push 0x1e258c70
call edi
add esp, 4
cmp eax, 0xffffffff
je 0x1e213017
push sym.pythoncom27.dll_struct__typeobject_PySTGMEDIUM::Type
call edi
add esp, 4
cmp eax, 0xffffffff
je 0x1e213017
push 0x1e25a4d8
call edi
add esp, 4
cmp eax, 0xffffffff
je 0x1e213017
push 0x1e25a640
call edi
add esp, 4
cmp eax, 0xffffffff
je 0x1e213017
push 0x1e2578f0
call edi
add esp, 4
cmp eax, 0xffffffff
je 0x1e213017
push esi
call fcn.1e21ad30
add esp, 4
test eax, eax
je 0x1e213017
push 0x1e23ee0c
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov edi, eax
test edi, edi
je 0x1e212166
push str.CoWaitForMultipleHandles
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CoGetObjectContext
push edi
mov dword [0x1e25ecdc], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CoGetCancelObject
push edi
mov dword [0x1e25ece0], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CoCreateInstanceEx
push edi
mov dword [0x1e25ece4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CoInitializeSecurity
push edi
mov dword [0x1e25ecf0], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x1e25ecf4], eax
push 0x1e23ee88
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
jne 0x1e212184
push str.urlmon.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
je 0x1e212195
push str.CreateURLMonikerEx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x1e25ecd8], eax
push 0
push str.ACTIVEOBJECT_STRONG
push esi
call fcn.1e211de0
push 1
push str.ACTIVEOBJECT_WEAK
push esi
call fcn.1e211de0
push 0x17
push 0x1e23eedc
push esi
call fcn.1e211de0
push 3
push str.CLSCTX_INPROC
push esi
call fcn.1e211de0
push 0x15
push 0x1e23eef8
push esi
call fcn.1e211de0
push 1
push str.CLSCTX_INPROC_SERVER
push esi
call fcn.1e211de0
add esp, 0x48
push 2
push str.CLSCTX_INPROC_HANDLER
push esi
call fcn.1e211de0
push 4
push str.CLSCTX_LOCAL_SERVER
push esi
call fcn.1e211de0
push 0x10
push str.CLSCTX_REMOTE_SERVER
push esi
call fcn.1e211de0
push 2
push str.COINIT_APARTMENTTHREADED
push esi
call fcn.1e211de0
push 0
push str.COINIT_MULTITHREADED
push esi
call fcn.1e211de0
push 4
push str.COINIT_DISABLE_OLE1DDE
push esi
call fcn.1e211de0
add esp, 0x48
push 8
push str.COINIT_SPEED_OVER_MEMORY
push esi
call fcn.1e211de0
push 1
push str.DATADIR_GET
push esi
call fcn.1e211de0
push 2
push str.DATADIR_SET
push esi
call fcn.1e211de0
push 1
push str.TYMED_HGLOBAL
push esi
call fcn.1e211de0
push 2
push str.TYMED_FILE
push esi
call fcn.1e211de0
push 4
push str.TYMED_ISTREAM
push esi
call fcn.1e211de0
add esp, 0x48
push 8
push str.TYMED_ISTORAGE
push esi
call fcn.1e211de0
push 0x10
push str.TYMED_GDI
push esi
call fcn.1e211de0
push 0x20
push str.TYMED_MFPICT
push esi
call fcn.1e211de0
push 0x40
push str.TYMED_ENHMF
push esi
call fcn.1e211de0
push 0
push str.TYMED_NULL
push esi
call fcn.1e211de0
push 1
push str.DVASPECT_CONTENT
push esi
call fcn.1e211de0
add esp, 0x48
push 2
push str.DVASPECT_THUMBNAIL
push esi
call fcn.1e211de0
push 4
push str.DVASPECT_ICON
push esi
call fcn.1e211de0
push 8
push str.DVASPECT_DOCPRINT
push esi
call fcn.1e211de0
push 2
push str.DISPATCH_PROPERTYGET
push esi
call fcn.1e211de0
push 4
push str.DISPATCH_PROPERTYPUT
push esi
call fcn.1e211de0
push 8
push str.DISPATCH_PROPERTYPUTREF
push esi
call fcn.1e211de0
add esp, 0x48
push 1
push str.DISPATCH_METHOD
push esi
call fcn.1e211de0
push 0xfffffffffffffffa
push str.DISPID_CONSTRUCTOR
push esi
call fcn.1e211de0
push 0xfffffffffffffff9
push str.DISPID_DESTRUCTOR
push esi
call fcn.1e211de0
push 0xfffffffffffffff8
push str.DISPID_COLLECT
push esi
call fcn.1e211de0
push 0
push str.DISPID_VALUE
push esi
call fcn.1e211de0
push 0xffffffffffffffff
push 0x1e23f140
push esi
call fcn.1e211de0
add esp, 0x48
push 0xfffffffffffffffd
push str.DISPID_PROPERTYPUT
push esi
call fcn.1e211de0
push 0xfffffffffffffffc
push str.DISPID_NEWENUM
push esi
call fcn.1e211de0
push 0xfffffffffffffffb
push str.DISPID_EVALUATE
push esi
call fcn.1e211de0
push 0xffffffffffffffff
push str.DISPID_STARTENUM
push esi
call fcn.1e211de0
push 0xffffffffffffffff
push str.DISPID_UNKNOWN
push esi
call fcn.1e211de0
push 0xfffffd9b
push str.DISPID_THIS
push esi
call fcn.1e211de0
add esp, 0x48
push 1
push str.EXTCONN_STRONG
push esi
call fcn.1e211de0
push 2
push str.EXTCONN_WEAK
push esi
call fcn.1e211de0
push 4
push str.EXTCONN_CALLABLE
push esi
call fcn.1e211de0
push 1
push str.FUNCFLAG_FRESTRICTED
push esi
call fcn.1e211de0
push 2
push str.FUNCFLAG_FSOURCE
push esi
call fcn.1e211de0
push 4
push str.FUNCFLAG_FBINDABLE
push esi
call fcn.1e211de0
add esp, 0x48
push 8
push str.FUNCFLAG_FREQUESTEDIT
push esi
call fcn.1e211de0
push 0x10
push str.FUNCFLAG_FDISPLAYBIND
push esi
call fcn.1e211de0
push 0x20
push str.FUNCFLAG_FDEFAULTBIND
push esi
call fcn.1e211de0
push 0x40
push str.FUNCFLAG_FHIDDEN
push esi
call fcn.1e211de0
push 0x80
push str.FUNCFLAG_FUSESGETLASTERROR
push esi
call fcn.1e211de0
push 0
push str.FUNC_VIRTUAL
push esi
call fcn.1e211de0
add esp, 0x48
push 1
push str.FUNC_PUREVIRTUAL
push esi
call fcn.1e211de0
push 2
push str.FUNC_NONVIRTUAL
push esi
call fcn.1e211de0
push 3
push str.FUNC_STATIC
push esi
call fcn.1e211de0
push 4
push str.FUNC_DISPATCH
push esi
call fcn.1e211de0
push 1
push str.IMPLTYPEFLAG_FDEFAULT
push esi
call fcn.1e211de0
push 2
push str.IMPLTYPEFLAG_FSOURCE
push esi
call fcn.1e211de0
add esp, 0x48
push 4
push str.IMPLTYPEFLAG_FRESTRICTED
push esi
call fcn.1e211de0
push 0
push str.IDLFLAG_NONE
push esi
call fcn.1e211de0
push 1
push str.IDLFLAG_FIN
push esi
call fcn.1e211de0
push 2
push str.IDLFLAG_FOUT
push esi
call fcn.1e211de0
push 4
push str.IDLFLAG_FLCID
push esi
call fcn.1e211de0
push 8
push str.IDLFLAG_FRETVAL
push esi
call fcn.1e211de0
add esp, 0x48
push 0
push str.MKSYS_NONE
push esi
call fcn.1e211de0
push 1
push str.MKSYS_GENERICCOMPOSITE
push esi
call fcn.1e211de0
push 2
push str.MKSYS_FILEMONIKER
push esi
call fcn.1e211de0
push 3
push str.MKSYS_ANTIMONIKER
push esi
call fcn.1e211de0
push 4
push str.MKSYS_ITEMMONIKER
push esi
call fcn.1e211de0
push 5
push str.MKSYS_POINTERMONIKER
push esi
call fcn.1e211de0
add esp, 0x48
push 7
push str.MKSYS_CLASSMONIKER
push esi
call fcn.1e211de0
push 0
push str.PARAMFLAG_NONE
push esi
call fcn.1e211de0
push 1
push str.PARAMFLAG_FIN
push esi
call fcn.1e211de0
push 2
push str.PARAMFLAG_FOUT
push esi
call fcn.1e211de0
push 4
push str.PARAMFLAG_FLCID
push esi
call fcn.1e211de0
push 8
push str.PARAMFLAG_FRETVAL
push esi
call fcn.1e211de0
add esp, 0x48
push 0x10
push str.PARAMFLAG_FOPT
push esi
call fcn.1e211de0
push 0x20
push str.PARAMFLAG_FHASDEFAULT
push esi
call fcn.1e211de0
push 0
push str.STREAM_SEEK_SET
push esi
call fcn.1e211de0
push 1
push str.STREAM_SEEK_CUR
push esi
call fcn.1e211de0
push 2
push str.STREAM_SEEK_END
push esi
call fcn.1e211de0
push 1
push str.INVOKE_FUNC
push esi
call fcn.1e211de0
add esp, 0x48
push 2
push str.INVOKE_PROPERTYGET
push esi
call fcn.1e211de0
push 4
push str.INVOKE_PROPERTYPUT
push esi
call fcn.1e211de0
push 8
push str.INVOKE_PROPERTYPUTREF
push esi
call fcn.1e211de0
push 0
push str.REGCLS_SINGLEUSE
push esi
call fcn.1e211de0
push 1
push str.REGCLS_MULTIPLEUSE
push esi
call fcn.1e211de0
push 2
push str.REGCLS_MULTI_SEPARATE
push esi
call fcn.1e211de0
add esp, 0x48
push 4
push str.REGCLS_SUSPENDED
push esi
call fcn.1e211de0
push 1
push str.ROTFLAGS_REGISTRATIONKEEPSALIVE
push esi
call fcn.1e211de0
push 2
push str.ROTFLAGS_ALLOWANYCLIENT
push esi
call fcn.1e211de0
push 0
push str.RPC_C_AUTHN_LEVEL_DEFAULT
push esi
call fcn.1e211de0
push 1
push str.RPC_C_AUTHN_LEVEL_NONE
push esi
call fcn.1e211de0
push 2
push str.RPC_C_AUTHN_LEVEL_CONNECT
push esi
call fcn.1e211de0
add esp, 0x48
push 3
push str.RPC_C_AUTHN_LEVEL_CALL
push esi
call fcn.1e211de0
push 4
push str.RPC_C_AUTHN_LEVEL_PKT
push esi
call fcn.1e211de0
push 5
push str.RPC_C_AUTHN_LEVEL_PKT_INTEGRITY
push esi
call fcn.1e211de0
push 6
push str.RPC_C_AUTHN_LEVEL_PKT_PRIVACY
push esi
call fcn.1e211de0
push 0
push str.RPC_C_IMP_LEVEL_DEFAULT
push esi
call fcn.1e211de0
push 1
push str.RPC_C_IMP_LEVEL_ANONYMOUS
push esi
call fcn.1e211de0
add esp, 0x48
push 2
push str.RPC_C_IMP_LEVEL_IDENTIFY
push esi
call fcn.1e211de0
push 3
push str.RPC_C_IMP_LEVEL_IMPERSONATE
push esi
call fcn.1e211de0
push 4
push str.RPC_C_IMP_LEVEL_DELEGATE
push esi
call fcn.1e211de0
push 0
push str.RPC_C_AUTHN_NONE
push esi
call fcn.1e211de0
push 1
push str.RPC_C_AUTHN_DCE_PRIVATE
push esi
call fcn.1e211de0
push 2
push str.RPC_C_AUTHN_DCE_PUBLIC
push esi
call fcn.1e211de0
add esp, 0x48
push 4
push str.RPC_C_AUTHN_DEC_PUBLIC
push esi
call fcn.1e211de0
push 9
push str.RPC_C_AUTHN_GSS_NEGOTIATE
push esi
call fcn.1e211de0
push 0xa
push str.RPC_C_AUTHN_WINNT
push esi
call fcn.1e211de0
push 0xe
push str.RPC_C_AUTHN_GSS_SCHANNEL
push esi
call fcn.1e211de0
push 0x10
push str.RPC_C_AUTHN_GSS_KERBEROS
push esi
call fcn.1e211de0
push 0x12
push str.RPC_C_AUTHN_MSN
push esi
call fcn.1e211de0
add esp, 0x48
push 0x11
push str.RPC_C_AUTHN_DPA
push esi
call fcn.1e211de0
push 0x64
push str.RPC_C_AUTHN_MQ
push esi
call fcn.1e211de0
push 0xffffffffffffffff
push str.RPC_C_AUTHN_DEFAULT
push esi
call fcn.1e211de0
push 0
push str.RPC_C_AUTHZ_NONE
push esi
call fcn.1e211de0
push 1
push str.RPC_C_AUTHZ_NAME
push esi
call fcn.1e211de0
push 2
push str.RPC_C_AUTHZ_DCE
push esi
call fcn.1e211de0
add esp, 0x48
push 0xffffffffffffffff
push str.RPC_C_AUTHZ_DEFAULT
push esi
call fcn.1e211de0
push 0
push str.EOAC_NONE
push esi
call fcn.1e211de0
push 1
push str.EOAC_MUTUAL_AUTH
push esi
call fcn.1e211de0
push 2
push str.EOAC_SECURE_REFS
push esi
call fcn.1e211de0
push 4
push str.EOAC_ACCESS_CONTROL
push esi
call fcn.1e211de0
push 8
push str.EOAC_APPID
push esi
call fcn.1e211de0
add esp, 0x48
push 0x10
push str.EOAC_DYNAMIC
push esi
call fcn.1e211de0
push 0x20
push str.EOAC_STATIC_CLOAKING
push esi
call fcn.1e211de0
push 0x40
push str.EOAC_DYNAMIC_CLOAKING
push esi
call fcn.1e211de0
push 0x80
push str.EOAC_ANY_AUTHORITY
push esi
call fcn.1e211de0
push pe_nt_image_headers32
push str.EOAC_MAKE_FULLSIC
push esi
call fcn.1e211de0
push 0x200
push str.EOAC_REQUIRE_FULLSIC
push esi
call 0xa9771de0
push ebp
mov ebp, esp
mov edi, dword [ebp - 0x88]
mov eax, dword [ebp + 0xc]
cmp ax, word [edi + 6]
jne 0x1e212ffb
mov edx, dword [ebp - 0xb4]
xor ecx, ecx
mov edi, 0x60000000
jmp 0x1e213019
movzx eax, ax
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*8 + 0x104]
mov edx, dword [edi + eax*8 + 0x108]
lea eax, [edi + eax*8 + 0xf8]
mov edi, dword [eax + 0x24]
js 0x1e21303d
lea eax, [edx + ecx - 1]
xor edx, edx
div dword [ebp - 0xac]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, ecx
div dword [ebp - 0xac]
cmp eax, dword [ebp - 0x44]
ja 0x1e213077
mov edx, edi
mov dword [ebp + 8], edi
and dword [ebp + 8], 0x40000000
or byte gs:[eax], al
add byte [eax], al
inc eax
mov dword [ebp + 0x10], edi
and edx, 0x20000000
and dword [ebp + 0x10], 0x80000000
mov ecx, dword [ebp + 0x18]
cmp edx, ebx
je 0x1e21305e
or byte [eax + ecx], 1
cmp dword [ebp + 8], ebx
je 0x1e213067
or byte [eax + ecx], 2
cmp dword [ebp + 0x10], ebx
je 0x1e213071
add ecx, eax
or byte [ecx], 4
inc eax
cmp eax, dword [ebp - 0x44]
jbe 0x1e213053
inc dword [ebp + 0xc]
mov eax, dword [ebp - 0x88]
mov cx, word [ebp + 0xc]
cmp cx, word [eax + 6]
jbe 0x1e212fdd
invalid
mov dword [ebp + 8], esi
xor edi, edi
mov eax, dword [ebp + 0x18]
push 2
pop ecx
movzx eax, byte [edi + eax]
sub eax, ecx
je 0x1e2130c4
dec eax
je 0x1e2130bb
sub eax, 3
je 0x1e2130b2
mov dword [ebp - 4], 0x40
jmp 0x1e2130e1
mov dword [ebp - 4], 4
jmp 0x1e2130c7
mov dword [ebp - 4], 0x20
jmp 0x1e2130c7
mov dword [ebp - 4], ecx
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push dword [ebp - 0xac]
push dword [ebp + 8]
call dword [ebp - 0xbc]
test eax, eax
je 0x1e213113
mov eax, dword [ebp - 0xac]
add dword [ebp + 8], eax
inc edi
cmp edi, dword [ebp - 0x8c]
jbe 0x1e213093
mov eax, dword [ebp - 0x88]
mov edi, dword [eax + 0x28]
add edi, esi
call fcn.1e212924
jg 0x1e21308c
stosd dword es:[edi], eax
int3
push 0x8000
push ebx
push esi
call dword [ebp - 8]
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret