Function at 0x18003a710
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
sub rsp, 0x40
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov eax, dword [0x180170724]
test eax, eax
jne 0x18003aa22
cmp dword [0x180170720], 3
jge 0x18003aa22
lea rax, str.DocProperty.dll
lea r8, str.DocProperty64.dll
cmp dword [0x180157164], 0
cmove r8, rax
mov rdx, qword [0x180170718]
lea rcx, [rsp + 0x50]
call fcn.18002d8e0
nop
cmp dword [0x1801730a0], 0
je 0x18003a795
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, str.CDocProperty::Initialize___s_
lea r8, str.DocProperty
or edx, 0xffffffff
lea rcx, [0x1801727b8]
call fcn.18009ee20
inc dword [0x180170720]
xor edx, edx
lea rcx, [rsp + 0x50]
call fcn.180057e70
mov rcx, rax
xor edx, edx
lea r8d, [rdx + 8]
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rbx, rax
test rax, rax
je 0x18003aa12
mov qword [0x180170710], rax
lea rdx, str.DPRegisterDependentDLL
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170640], rax
lea rdx, str.DPUnregisterDependentDLL
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170648], rax
lea rdx, str.DPInit
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170650], rax
lea rdx, str.DPOpen
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170658], rax
lea rdx, str.DPClose
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170660], rax
lea rdx, str.DPRawSetProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170668], rax
lea rdx, str.DPRawGetProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170670], rax
lea rdx, str.DPRawGetAllProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170678], rax
lea rdx, str.DPRawGetAllPropertyCount
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170680], rax
lea rdx, str.DPRawDelProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170688], rax
lea rdx, str.DPRawDelAllProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170690], rax
lea rdx, str.DPSetProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170698], rax
lea rdx, str.DPGetProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706a0], rax
lea rdx, str.DPGetAllProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706a8], rax
lea rdx, str.DPGetAllPropertyCount
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706b0], rax
lea rdx, str.DPDelProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706b8], rax
lea rdx, str.DPDelAllProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706c0], rax
lea rdx, str.DPInitFlowProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706c8], rax
lea rdx, str.DPSetFlowProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706d0], rax
lea rdx, str.DPGetAllFlowProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706d8], rax
lea rdx, str.DPGetFlowPropertyLatest
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706e0], rax
lea rdx, str.DPGetFlowPropertyOldest
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706e8], rax
lea rdx, str.DPDelAllFlowProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706f0], rax
lea rdx, str.DPCopyFlowProperty
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1801706f8], rax
lea rdx, str.DPLoadDll
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180170700], rax
mov dword [0x180170724], 1
lea rcx, [rsp + 0x50]
call fcn.180057b10
mov eax, dword [0x180170724]
add rsp, 0x40
pop rbx
ret