Function at 0x4b9580
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe0
push ebx
push esi
push edi
lea edi, [ebp - 0x20]
mov ecx, 8
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov ecx, 0x5630c9
call fcn.004d007c
cmp dword [0x561ec8], 0
je 0x4b95b5
xor eax, eax
jmp 0x4b986b
cmp dword [0x561ec4], 0
je 0x4b95c8
mov eax, dword [0x561ec4]
jmp 0x4b986b
push 0x24
push 0
push 0x561ea0
call fcn.004d1bb0
add esp, 0xc
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
cmp esi, esp
call fcn.004d0059
mov dword [0x561ea0], eax
mov esi, esp
push 0
push 0
push 0x521df0
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
cmp esi, esp
call fcn.004d0059
mov dword [0x561ea4], eax
cmp dword [0x561ea4], 0
jne 0x4b9688
mov dword [0x561ec8], 1
cmp dword [0x561ea4], 0
je 0x4b963b
mov esi, esp
mov eax, dword [0x561ea4]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp esi, esp
call fcn.004d0059
mov dword [0x561ea8], 0
mov dword [0x561eac], 0
mov dword [0x561eb0], 0
mov dword [0x561eb4], 0
mov dword [0x561eb8], 0
mov dword [0x561ebc], 0
mov dword [0x561ec0], 0
xor eax, eax
jmp 0x4b986b
mov esi, esp
push str.ImagehlpApiVersionEx
mov eax, dword [0x561ea4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.004d0059
mov dword [0x561ea8], eax
mov esi, esp
push 0x526ad8
mov eax, dword [0x561ea4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.004d0059
mov dword [0x561eac], eax
mov esi, esp
push 0x526ae8
mov eax, dword [0x561ea4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.004d0059
mov dword [0x561eb0], eax
mov esi, esp
push 0x526af8
mov eax, dword [0x561ea4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.004d0059
mov dword [0x561eb4], eax
mov esi, esp
push str.SymLoadModule64
mov eax, dword [0x561ea4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.004d0059
mov dword [0x561eb8], eax
mov esi, esp
push str.SymGetModuleInfo64
mov eax, dword [0x561ea4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.004d0059
mov dword [0x561ebc], eax
mov esi, esp
push str.SymFromName
mov eax, dword [0x561ea4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.004d0059
mov dword [0x561ec0], eax
push 8
push 0
lea eax, [ebp - 0xc]
push eax
call fcn.004d1bb0
add esp, 0xc
mov eax, 0xc
mov word [ebp - 0xc], ax
cmp dword [0x561ea8], 0
je 0x4b97a7
cmp dword [0x561eac], 0
je 0x4b97a7
cmp dword [0x561eb8], 0
je 0x4b97a7
cmp dword [0x561ebc], 0
je 0x4b97a7
cmp dword [0x561ec0], 0
jne 0x4b97ac
jmp 0x4b9613
mov eax, dword [0x561ea8]
mov dword [ebp - 0xe0], eax
mov esi, esp
lea ecx, [ebp - 0xc]
push ecx
call dword [ebp - 0xe0]
cmp esi, esp
call fcn.004d0059
movzx eax, word [ebp - 0xc]
cmp eax, 0xc
jge 0x4b97d8
jmp 0x4b9613
mov eax, dword [0x561eac]
mov dword [ebp - 0xe0], eax
mov esi, esp
push 0
push 0
mov ecx, dword [0x561ea0]
push ecx
call dword [ebp - 0xe0]
cmp esi, esp
call fcn.004d0059
test eax, eax
jne 0x4b9806
jmp 0x4b9613
cmp dword [0x561eb4], 0
je 0x4b985c
cmp dword [0x561eb0], 0
je 0x4b985c
mov esi, esp
call dword [0x561eb4]
cmp esi, esp
call fcn.004d0059
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
and eax, 0xfffffff8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
or eax, 0x2704
mov dword [ebp - 0x18], eax
mov eax, dword [0x561eb0]
mov dword [ebp - 0xe0], eax
mov esi, esp
mov ecx, dword [ebp - 0x18]
push ecx
call dword [ebp - 0xe0]
cmp esi, esp
call fcn.004d0059
mov dword [0x561ec4], 0x561ea0
mov eax, dword [0x561ec4]
push edx
mov ecx, ebp
push eax
lea edx, [0x4b9890]
call fcn.004d0005
pop eax
pop edx
pop edi
pop esi
pop ebx
add esp, 0xe0
cmp ebp, esp
call fcn.004d0059
mov esp, ebp
pop ebp
ret