Function at 0x1800356d0
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
sub rsp, 0x60
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rax, qword [0x1800b37f0]
xor rax, rsp
mov qword [rsp + 0x50], rax
cmp dword [0x1800c7634], 0
je 0x180035701
mov eax, 1
jmp 0x18003597c
mov ebx, 1
mov dword [0x1800c7634], ebx
lea rdx, [0x180089c80]
lea rcx, [rsp + 0x28]
call fcn.180003550
nop
lea r8d, [rbx + 0x10]
lea rdx, str.ImgProperty64.dll
lea rcx, [rsp + 0x28]
call fcn.1800096d0
lea rcx, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae rcx, qword [rsp + 0x28]
xor edx, edx
lea r8d, [rbx + 7]
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov qword [0x1800c76a8], rax
test rax, rax
je 0x1800358d8
lea rdx, str.Open
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7638], rax
lea rdx, str.Save
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7640], rax
lea rdx, str.Close
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7648], rax
lea rdx, str.CopyDetailToImg
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7650], rax
lea rdx, str.CopyPropertyToImg
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7658], rax
lea rdx, str.FindProperty
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7660], rax
lea rdx, str.SetProperty
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7668], rax
lea rdx, str.GetProperty
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7670], rax
lea rdx, str.DelProperty
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7678], rax
lea rdx, str.GetAllProperty
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7680], rax
lea rdx, str.GetAllPropertyCount
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7688], rax
lea rdx, str.DelAllProperty
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7690], rax
lea rdx, str.GetWMFlag
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c7698], rax
lea rdx, str.SetWMFlag
mov rcx, qword [0x1800c76a8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c76a0], rax
jmp 0x1800358df
mov rax, qword [0x1800c76a0]
cmp qword [0x1800c7638], 0
je 0x180035966
cmp qword [0x1800c7640], 0
je 0x180035966
cmp qword [0x1800c7648], 0
je 0x180035966
cmp qword [0x1800c7650], 0
je 0x180035966
cmp qword [0x1800c7658], 0
je 0x180035966
cmp qword [0x1800c7660], 0
je 0x180035966
cmp qword [0x1800c7668], 0
je 0x180035966
cmp qword [0x1800c7670], 0
je 0x180035966
cmp qword [0x1800c7678], 0
je 0x180035966
cmp qword [0x1800c7698], 0
je 0x180035966
test rax, rax
je 0x180035966
cmp qword [0x1800c7680], 0
je 0x180035966
cmp qword [0x1800c7688], 0
je 0x180035966
cmp qword [0x1800c7690], 0
jne 0x180035968
xor ebx, ebx
cmp qword [rsp + 0x40], 8
jb 0x18003597a
mov rcx, qword [rsp + 0x28]
call fcn.18003ad20
mov eax, ebx
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.18003aad0
add rsp, 0x60
pop rbx
ret