Function at 0x486378
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.00405138
mov ebx, 0x4b9e50
xor eax, eax
push ebp
push 0x4867aa
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 5], 0
mov byte [0x4c41f8], 0
cmp dword [ebp - 4], 0
jne 0x4863bb
lea eax, [ebp - 4]
mov edx, 0x4867c4
call fcn.00404d50
mov eax, dword [0x4c41f4]
call fcn.0042f528
xor eax, eax
push ebp
push 0x48678d
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x4b9e4c], 0
jne 0x486765
mov byte [0x4c41f8], 0
mov byte [0x4c41f9], 0
mov eax, dword [ebp - 4]
call fcn.00405148
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [ebx], eax
cmp dword [ebx], 0
je 0x486769
push 0x4867d0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e48], eax
push 0x4867dc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e44], eax
push 0x4867ec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e24], eax
push 0x4867f8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e04], eax
push 0x486804
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dbc], eax
push 0x486814
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9db4], eax
push 0x486820
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9db8], eax
push 0x48682c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e2c], eax
push 0x486834
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e28], eax
push 0x48683c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e20], eax
push 0x486844
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e1c], eax
push 0x486850
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e18], eax
push 0x48685c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9de4], eax
push 0x486868
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e14], eax
push 0x486870
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e10], eax
push 0x486878
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e0c], eax
push 0x486884
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e08], eax
push 0x486890
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e00], eax
push 0x486898
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dfc], eax
push 0x4868a0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9df8], eax
push 0x4868a8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9df0], eax
push 0x4868b0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9df4], eax
push 0x4868bc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e34], eax
push 0x4868c4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dec], eax
push 0x4868cc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9de8], eax
push 0x4868d4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9de0], eax
push 0x4868e0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9ddc], eax
push 0x4868ec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e30], eax
push 0x4868f4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dd4], eax
push 0x486904
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dd0], eax
push 0x486914
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dc8], eax
push 0x486924
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dcc], eax
push 0x486938
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dc0], eax
push 0x486948
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dc4], eax
push 0x486958
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9dd8], eax
push 0x486964
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e38], eax
push 0x486970
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e3c], eax
push 0x486980
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e40], eax
cmp dword [0x4b9e38], 0
je 0x4866ce
cmp dword [0x4b9e3c], 0
je 0x4866ce
cmp dword [0x4b9e40], 0
jne 0x4866d2
xor eax, eax
jmp 0x4866d4
mov al, 1
mov byte [0x4c41f8], al
cmp byte [0x4c41f8], 0
jne 0x48675f
push 0x48698c
call sub.kernel32.dll_LoadLibraryA
mov dword [0x4b9e54], eax
cmp dword [0x4b9e54], 0
je 0x48675f
push 0x486964
mov eax, dword [0x4b9e54]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e38], eax
push 0x486970
mov eax, dword [0x4b9e54]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e3c], eax
push 0x486980
mov eax, dword [0x4b9e54]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4b9e40], eax
cmp dword [0x4b9e38], 0
je 0x486754
cmp dword [0x4b9e3c], 0
je 0x486754
cmp dword [0x4b9e40], 0
jne 0x486758
xor eax, eax
jmp 0x48675a
mov al, 1
mov byte [0x4c41f9], al
mov byte [ebp - 5], 1
jmp 0x486769
mov byte [ebp - 5], 1
cmp byte [ebp - 5], 0
je 0x486775
inc dword [0x4b9e4c]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x486794
mov eax, dword [0x4c41f4]
call fcn.0042f530
ret