Function at 0x14000a7b0
Capabilities:
Get file version info
Link many functions at runtime

Disassembly:
push rbx
push rdi
sub rsp, 0x28
mov rdi, rcx
mov ecx, 0x338
call qword [sym.imp.MSVCR100.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__]
mov rbx, rax
test rax, rax
je 0x14000ad56
lea r8, [0x140058370]
mov edx, 0x104
mov rcx, rax
mov qword [rax + 0x208], rdi
call qword [sym.imp.MSVCR100.dll_wcscpy_s]
lea rdx, str.FUMInitializeContainer
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x230], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMUninitializeContainer
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x238], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetContainerInfo
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x240], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetModuleCount
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x248], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetModuleInfoByIndex
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x250], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetModuleInfo
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x258], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMInitializeModule
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x260], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMUninitializeModule
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x268], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetModuleConfiguration
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x270], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMSetModuleConfiguration
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x278], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetGroupCount
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x280], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetGroupInfoByIndex
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x288], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetGroupInfo
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x290], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertiesCount
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x298], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyInfoByIndex
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2a0], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyInfo
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2a8], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyPossibleValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2b0], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyDefaultValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2b8], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyDefaultArraySize
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2c8], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyDefaultArrayValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2c0], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyDefaultArraySize
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2c8], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2d0], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyCopyValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2d8], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMSetPropertyValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2e0], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyArraySize
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2e8], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyArrayValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2f0], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetPropertyCopyArrayValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x2f8], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMSetPropertyArrayValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [rbx + 0x2e0], 0
mov qword [rbx + 0x300], rax
je 0x14000ad37
lea rdx, str.FUMDeletePropertyArrayValue
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x308], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetLocalesCount
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x310], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetLocaleInfo
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x318], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMGetLocale
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x320], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMSetLocale
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x328], rax
test rax, rax
je 0x14000ad37
lea rdx, str.FUMAllClientsInactive
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x330], rax
test rax, rax
je 0x14000ad37
lea rcx, [rbx + 0x210]
call qword [rbx + 0x240]
test eax, eax
jne 0x14000ad37
lea rcx, [0x140055470]
call qword [rbx + 0x230]
test eax, eax
jne 0x14000ad37
mov qword [rsp + 0x40], rbp
xor ebp, ebp
lea rdx, [rsp + 0x48]
mov qword [rbx + 0x224], rbp
lea rcx, [0x140058370]
mov qword [rsp + 0x20], rsi
mov dword [rsp + 0x48], ebp
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov esi, eax
test eax, eax
je 0x14000ad23
mov ecx, esi
call qword [sym.imp.MSVCR100.dll_malloc]
mov rdi, rax
test rax, rax
je 0x14000ad23
mov edx, dword [rsp + 0x48]
lea rcx, [0x140058370]
mov r9, rax
mov r8d, esi
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x14000ad1a
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x58]
lea rdx, [0x14003cfa8]
mov rcx, rdi
mov qword [rsp + 0x58], rbp
mov dword [rsp + 0x50], 8
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x14000ad1a
mov rcx, qword [rsp + 0x58]
movzx eax, word [rcx + 0x12]
mov word [rbx + 0x224], ax
movzx eax, word [rcx + 0x10]
mov word [rbx + 0x226], ax
movzx eax, word [rcx + 0x16]
mov word [rbx + 0x228], ax
movzx eax, word [rcx + 0x14]
mov word [rbx + 0x22a], ax
mov rcx, rdi
call qword [sym.imp.MSVCR100.dll_free]
mov rsi, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x40]
mov rax, rbx
add rsp, 0x28
pop rdi
pop rbx
ret
mov rcx, qword [rbx + 0x208]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, rbx
call qword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void____ptr64_]
xor eax, eax
add rsp, 0x28
pop rdi
pop rbx
ret
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
xor eax, eax
add rsp, 0x28
pop rdi
pop rbx
ret