Function at 0x4acbb0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ecx
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 0x10a]
test ecx, ecx
je 0x4acbcf
mov eax, 1
jmp 0x4acdc0
push str.KLVideo.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edx, dword [ebp - 4]
mov dword [edx + 0x110], eax
mov eax, dword [ebp - 4]
cmp dword [eax + 0x110], 0
jne 0x4acbf6
xor eax, eax
jmp 0x4acdc0
push str.KLVideoSetSoundSystem
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x110]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x114], eax
push str.KLVideoSetSoundTrack
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x118], eax
push str.KLVideoOpen
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x11c], eax
push str.KLVideoClose
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x120], eax
push str.KLVideoWait
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x124], eax
push str.KLVideoCopyToBuffer
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x128], eax
push str.KLVideoDoFrame
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x12c], eax
push str.KLVideoNextFrame
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x130], eax
push str.KLVideoGetCurrentFrame
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x134], eax
push str.KLVideoSetSoundVolume
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x138], eax
mov edx, dword [ebp - 4]
cmp dword [edx + 0x114], 0
je 0x4acd82
mov eax, dword [ebp - 4]
cmp dword [eax + 0x11c], 0
je 0x4acd82
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x120], 0
je 0x4acd82
mov edx, dword [ebp - 4]
cmp dword [edx + 0x124], 0
je 0x4acd82
mov eax, dword [ebp - 4]
cmp dword [eax + 0x128], 0
je 0x4acd82
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x12c], 0
je 0x4acd82
mov edx, dword [ebp - 4]
cmp dword [edx + 0x130], 0
je 0x4acd82
mov eax, dword [ebp - 4]
cmp dword [eax + 0x118], 0
jne 0x4acda3
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x110]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [ebp - 4]
mov dword [eax + 0x110], 0
xor eax, eax
jmp 0x4acdc0
push 2
mov ecx, dword [ebp - 4]
push ecx
call fcn.0043ad60
add esp, 8
mov edx, dword [ebp - 4]
mov byte [edx + 0x10a], 1
mov eax, 1
mov esp, ebp
pop ebp
ret