Function at 0x100115a0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, 0x101705c0
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x100115b0
sub eax, edx
sar eax, 1
mov dword [ebp - 4], str.DuiLib.dll
je 0x100115cf
mov dword [ebp - 4], 0x101705c0
push ebx
push esi
mov esi, dword [ebp - 4]
push esi
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp dword [0x1016af88], 0
mov ebx, eax
je 0x10011600
push esi
push str.CTDuiSpy::InitFunctionAddr_________Name:__s__r_n
push str.TDuiSpy
push 0xffffffffffffffff
push 0x1016af1c
call fcn.1000b060
add esp, 0x14
test ebx, ebx
je 0x10011777
xor esi, esi
cmp dword [0x101592d8], esi
push edi
jle 0x10011659
mov edi, 0x101592d0
mov eax, dword [edi]
test eax, eax
je 0x1001164d
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp dword [0x1016af88], 0
mov dword [edi + 4], eax
je 0x1001164d
push eax
push esi
push str.CTDuiSpy::InitFunctionAddr__ClassVFTable___i___4d___pfn:__08x__r_n
push str.TDuiSpy
push 0xffffffffffffffff
push 0x1016af1c
call fcn.1000b060
add esp, 0x18
inc esi
add edi, 0x10
cmp esi, dword [0x101592d8]
jl 0x10011618
xor edi, edi
cmp dword [0x10159414], edi
jle 0x100116fa
mov esi, 0x10159320
lea esp, [esp]
mov eax, dword [esi - 4]
test eax, eax
je 0x10011682
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi - 8], eax
cmp dword [esi - 8], 0
jne 0x10011699
mov eax, dword [esi]
test eax, eax
je 0x10011699
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi - 8], eax
cmp dword [esi - 0xc], 0
je 0x100116b4
mov eax, dword [esi - 8]
mov ecx, dword [esi - 0x10]
push eax
push ecx
call fcn.10010e30
mov edx, dword [esi - 0xc]
add esp, 8
mov dword [edx], eax
cmp dword [0x1016af88], 0
je 0x100116ea
mov eax, dword [esi - 0xc]
test eax, eax
je 0x100116c8
mov eax, dword [eax]
jmp 0x100116cb
or eax, 0xffffffff
push eax
mov eax, dword [esi - 8]
push eax
push edi
push str.CTDuiSpy::InitFunctionAddr__FunctionVFTPos___i___4d___pfn:__08x___Pos:__4d__r_n
push str.TDuiSpy
push 0xffffffffffffffff
push 0x1016af1c
call fcn.1000b060
add esp, 0x1c
inc edi
add esi, 0x14
cmp edi, dword [0x10159414]
jl 0x10011670
xor edi, edi
cmp dword [0x10159478], edi
jle 0x10011776
mov esi, 0x10159418
lea esp, [esp]
cmp dword [esi], 0
je 0x1001176a
mov eax, dword [esi + 4]
test eax, eax
je 0x10011728
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [esi]
mov dword [ecx], eax
mov edx, dword [esi]
cmp dword [edx], 0
jne 0x10011742
mov eax, dword [esi + 8]
test eax, eax
je 0x10011742
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [esi]
mov dword [ecx], eax
cmp dword [0x1016af88], 0
je 0x1001176a
mov edx, dword [esi]
mov eax, dword [edx]
push eax
push edi
push str.CTDuiSpy::InitFunctionAddr__FunctionReal___i___4d___pfn:__08x__r_n
push str.TDuiSpy
push 0xffffffffffffffff
push 0x1016af1c
call fcn.1000b060
add esp, 0x18
inc edi
add esi, 0xc
cmp edi, dword [0x10159478]
jl 0x10011710
pop edi
cmp dword [0x1016af88], 0
pop esi
pop ebx
je 0x1001179f
mov ecx, dword [ebp - 4]
push ecx
push str.CTDuiSpy::InitFunctionAddr_____Name:__s__r_n
push str.TDuiSpy
push 0xffffffffffffffff
push 0x1016af1c
call fcn.1000b060
add esp, 0x14
mov esp, ebp
pop ebp
ret