Function at 0x180015d00
Capabilities:
Link many functions at runtime

Disassembly:
push r12
sub rsp, 0x40
or rcx, 0xffffffffffffffff
lea rdx, [0x1801cbb20]
xor eax, eax
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x68], rdi
mov rdi, rdx
repne scasw ax, word [rdi]
lea r12, str.DuiLib.dll
not rcx
cmp rcx, 1
cmovne r12, rdx
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp dword [0x1801df0a0], 0
mov rbp, rax
je 0x180015d6c
lea r9, str.CTDuiSpy::InitFunctionAddr_________Name:__s__r_n
lea r8, str.TDuiSpy
lea rcx, [0x1801de7b8]
or edx, 0xffffffff
mov qword [rsp + 0x20], r12
call fcn.18008da50
test rbp, rbp
je 0x180015f4b
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x60], rsi
xor esi, esi
mov ebx, esi
cmp dword [reloc.WS2_32.dll_accept], ebx
jle 0x180015de3
lea rdi, str.___7CControlUI_DuiLib__6B_
mov rdx, qword [rdi]
test rdx, rdx
je 0x180015dd5
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 8], rax
cmp dword [0x1801df0a0], esi
je 0x180015dd5
mov qword [rsp + 0x28], rax
lea r9, str.CTDuiSpy::InitFunctionAddr__ClassVFTable___i___4d___pfn:__08x__r_n
lea r8, str.TDuiSpy
lea rcx, [0x1801de7b8]
or edx, 0xffffffff
mov dword [rsp + 0x20], ebx
call fcn.18008da50
inc ebx
add rdi, 0x20
cmp ebx, dword [reloc.WS2_32.dll_accept]
jl 0x180015d92
mov ebx, esi
cmp dword [reloc.WS2_32.dll_listen], ebx
jle 0x180015ea1
lea rdi, [0x1801ab310]
nop dword [rax + rax]
mov rdx, qword [rdi - 8]
test rdx, rdx
je 0x180015e16
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi - 0x10], rax
cmp qword [rdi - 0x10], rsi
jne 0x180015e31
mov rdx, qword [rdi]
test rdx, rdx
je 0x180015e31
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi - 0x10], rax
cmp qword [rdi - 0x18], rsi
je 0x180015e49
mov rdx, qword [rdi - 0x10]
mov ecx, dword [rdi - 0x20]
call fcn.180015500
mov rcx, qword [rdi - 0x18]
mov dword [rcx], eax
cmp dword [0x1801df0a0], esi
je 0x180015e8f
mov rax, qword [rdi - 0x18]
test rax, rax
je 0x180015e5e
mov ecx, dword [rax]
jmp 0x180015e61
or ecx, 0xffffffff
mov rax, qword [rdi - 0x10]
mov dword [rsp + 0x30], ecx
lea r9, str.CTDuiSpy::InitFunctionAddr__FunctionVFTPos___i___4d___pfn:__08x___Pos:__4d__r_n
mov qword [rsp + 0x28], rax
lea r8, str.TDuiSpy
lea rcx, [0x1801de7b8]
or edx, 0xffffffff
mov dword [rsp + 0x20], ebx
call fcn.18008da50
inc ebx
add rdi, 0x28
cmp ebx, dword [reloc.WS2_32.dll_listen]
jl 0x180015e00
cmp dword [reloc.WS2_32.dll_htons], esi
mov rbx, qword [rsp + 0x50]
jle 0x180015f46
lea rdi, [0x1801ab500]
nop dword [rax]
cmp qword [rdi], 0
je 0x180015f34
mov rdx, qword [rdi + 8]
test rdx, rdx
je 0x180015ede
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rdi]
mov qword [rcx], rax
mov rax, qword [rdi]
cmp qword [rax], 0
jne 0x180015eff
mov rdx, qword [rdi + 0x10]
test rdx, rdx
je 0x180015eff
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rdi]
mov qword [rcx], rax
cmp dword [0x1801df0a0], 0
je 0x180015f34
mov rax, qword [rdi]
lea r9, str.CTDuiSpy::InitFunctionAddr__FunctionReal___i___4d___pfn:__08x__r_n
lea r8, str.TDuiSpy
mov rcx, qword [rax]
or edx, 0xffffffff
mov qword [rsp + 0x28], rcx
lea rcx, [0x1801de7b8]
mov dword [rsp + 0x20], esi
call fcn.18008da50
inc esi
add rdi, 0x18
cmp esi, dword [reloc.WS2_32.dll_htons]
jl 0x180015ec0
mov rsi, qword [rsp + 0x60]
cmp dword [0x1801df0a0], 0
mov rdi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x58]
je 0x180015f80
lea r9, str.CTDuiSpy::InitFunctionAddr_____Name:__s__r_n
lea r8, str.TDuiSpy
lea rcx, [0x1801de7b8]
or edx, 0xffffffff
mov qword [rsp + 0x20], r12
call fcn.18008da50
add rsp, 0x40
pop r12
ret