Function at 0x4bf814
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ebx, 0x5b97a8
xor eax, eax
push ebp
push 0x4bfc46
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 5], 0
mov byte [0x5c4fe4], 0
cmp dword [ebp - 4], 0
jne 0x4bf857
lea eax, [ebp - 4]
mov edx, 0x4bfc60
call fcn.00405264
mov eax, dword [0x5c4fe0]
call fcn.004391d8
xor eax, eax
push ebp
push 0x4bfc29
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x5b97a4], 0
jne 0x4bfc01
mov byte [0x5c4fe4], 0
mov byte [0x5c4fe5], 0
mov eax, dword [ebp - 4]
call fcn.0040569c
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [ebx], eax
cmp dword [ebx], 0
je 0x4bfc05
push 0x4bfc6c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b97a0], eax
push 0x4bfc78
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b979c], eax
push 0x4bfc88
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b977c], eax
push 0x4bfc94
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b975c], eax
push 0x4bfca0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9714], eax
push 0x4bfcb0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b970c], eax
push 0x4bfcbc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9710], eax
push 0x4bfcc8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9784], eax
push 0x4bfcd0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9780], eax
push 0x4bfcd8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9778], eax
push 0x4bfce0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9774], eax
push 0x4bfcec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9770], eax
push 0x4bfcf8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b973c], eax
push 0x4bfd04
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b976c], eax
push 0x4bfd0c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9768], eax
push 0x4bfd14
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9764], eax
push 0x4bfd20
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9760], eax
push 0x4bfd2c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9758], eax
push 0x4bfd34
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9754], eax
push 0x4bfd3c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9750], eax
push 0x4bfd44
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9748], eax
push 0x4bfd4c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b974c], eax
push 0x4bfd58
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b978c], eax
push 0x4bfd60
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9744], eax
push 0x4bfd68
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9740], eax
push 0x4bfd70
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9738], eax
push 0x4bfd7c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9734], eax
push 0x4bfd88
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9788], eax
push 0x4bfd90
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b972c], eax
push 0x4bfda0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9728], eax
push 0x4bfdb0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9720], eax
push 0x4bfdc0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9724], eax
push 0x4bfdd4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9718], eax
push 0x4bfde4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b971c], eax
push 0x4bfdf4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9730], eax
push 0x4bfe00
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9790], eax
push 0x4bfe0c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9794], eax
push 0x4bfe1c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9798], eax
cmp dword [0x5b9790], 0
je 0x4bfb6a
cmp dword [0x5b9794], 0
je 0x4bfb6a
cmp dword [0x5b9798], 0
jne 0x4bfb6e
xor eax, eax
jmp 0x4bfb70
mov al, 1
mov byte [0x5c4fe4], al
cmp byte [0x5c4fe4], 0
jne 0x4bfbfb
push 0x4bfe28
call sub.kernel32.dll_LoadLibraryA
mov dword [0x5b97ac], eax
cmp dword [0x5b97ac], 0
je 0x4bfbfb
push 0x4bfe00
mov eax, dword [0x5b97ac]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9790], eax
push 0x4bfe0c
mov eax, dword [0x5b97ac]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9794], eax
push 0x4bfe1c
mov eax, dword [0x5b97ac]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x5b9798], eax
cmp dword [0x5b9790], 0
je 0x4bfbf0
cmp dword [0x5b9794], 0
je 0x4bfbf0
cmp dword [0x5b9798], 0
jne 0x4bfbf4
xor eax, eax
jmp 0x4bfbf6
mov al, 1
mov byte [0x5c4fe5], al
mov byte [ebp - 5], 1
jmp 0x4bfc05
mov byte [ebp - 5], 1
cmp byte [ebp - 5], 0
je 0x4bfc11
inc dword [0x5b97a4]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4bfc30
mov eax, dword [0x5c4fe0]
call fcn.004391e0
ret