Function at 0x4beda8
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.00408f58
mov ebx, 0x66d82c
xor eax, eax
push ebp
push 0x4bf1d9
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 5], 0
mov byte [0x688050], 0
cmp dword [ebp - 4], 0
jne 0x4bedeb
lea eax, [ebp - 4]
mov edx, 0x4bf1f8
call fcn.0040929c
mov eax, dword [0x68804c]
mov edx, dword [eax]
call dword [edx]
xor edx, edx
push ebp
push 0x4bf1bc
push dword fs:[edx]
mov dword fs:[edx], esp
cmp dword [0x66d828], 0
jne 0x4bf194
mov byte [0x688050], 0
mov byte [0x688051], 0
mov eax, dword [ebp - 4]
call fcn.00409cdc
push eax
call sub.kernel32.dll_LoadLibraryW
mov dword [ebx], eax
cmp dword [ebx], 0
je 0x4bf198
push 0x4bf210
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d824], eax
push 0x4bf21c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d820], eax
push 0x4bf22c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d800], eax
push 0x4bf238
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7e0], eax
push 0x4bf244
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d798], eax
push 0x4bf254
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d790], eax
push 0x4bf260
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d794], eax
push 0x4bf26c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d808], eax
push 0x4bf274
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d804], eax
push 0x4bf27c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7fc], eax
push 0x4bf284
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7f8], eax
push 0x4bf290
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7f4], eax
push 0x4bf29c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7c0], eax
push 0x4bf2a8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7f0], eax
push 0x4bf2b0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7ec], eax
push 0x4bf2b8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7e8], eax
push 0x4bf2c4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7e4], eax
push 0x4bf2d0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7dc], eax
push 0x4bf2d8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7d8], eax
push 0x4bf2e0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7d4], eax
push 0x4bf2e8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7cc], eax
push 0x4bf2f0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7d0], eax
push 0x4bf2fc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d810], eax
push 0x4bf304
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7c8], eax
push 0x4bf30c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7c4], eax
push 0x4bf314
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7bc], eax
push 0x4bf320
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7b8], eax
push 0x4bf32c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d80c], eax
push 0x4bf334
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7b0], eax
push 0x4bf344
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7ac], eax
push 0x4bf354
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7a4], eax
push 0x4bf364
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7a8], eax
push 0x4bf378
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d79c], eax
push 0x4bf388
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7a0], eax
push 0x4bf398
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d7b4], eax
push 0x4bf3a4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d814], eax
push 0x4bf3b0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d818], eax
push 0x4bf3c0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d81c], eax
cmp dword [0x66d814], 0
je 0x4bf0fd
cmp dword [0x66d818], 0
je 0x4bf0fd
cmp dword [0x66d81c], 0
jne 0x4bf101
xor eax, eax
jmp 0x4bf103
mov al, 1
mov byte [0x688050], al
cmp byte [0x688050], 0
jne 0x4bf18e
push 0x4bf3cc
call sub.kernel32.dll_LoadLibraryW
mov dword [0x66d830], eax
cmp dword [0x66d830], 0
je 0x4bf18e
push 0x4bf3a4
mov eax, dword [0x66d830]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d814], eax
push 0x4bf3b0
mov eax, dword [0x66d830]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d818], eax
push 0x4bf3c0
mov eax, dword [0x66d830]
push eax
call sub.kernel32.dll_GetProcAddress_2
mov dword [0x66d81c], eax
cmp dword [0x66d814], 0
je 0x4bf183
cmp dword [0x66d818], 0
je 0x4bf183
cmp dword [0x66d81c], 0
jne 0x4bf187
xor eax, eax
jmp 0x4bf189
mov al, 1
mov byte [0x688051], al
mov byte [ebp - 5], 1
jmp 0x4bf198
mov byte [ebp - 5], 1
cmp byte [ebp - 5], 0
je 0x4bf1a4
inc dword [0x66d828]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4bf1c3
mov eax, dword [0x68804c]
mov edx, dword [eax]
call dword [edx + 4]
ret