Function at 0x14a98b0
Capabilities:
Link many functions at runtime

Disassembly:
sub esp, 0x108
mov eax, dword [0x153e8e8]
xor eax, esp
mov dword [esp + 0x104], eax
cmp byte [0x1563c40], 0
je 0x14a98e4
mov al, 1
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.014e18ea
add esp, 0x108
ret
push esi
push edi
push 0x103
lea eax, [esp + 0xd]
push 0
push eax
mov byte [esp + 0x14], 0
call fcn.014e21d0
add esp, 0xc
push 0x151fc04
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
mov dword [0x1563c3c], eax
jne 0x14a9986
mov eax, 0x1563c48
mov edx, str.cannot_load_dbghelp.dll
xor edi, edi
mov esi, 0x1000
sub edx, eax
lea ecx, [esi + 0x7fffeffe]
test ecx, ecx
je 0x14a9943
mov cl, byte [edx + eax]
test cl, cl
je 0x14a9943
mov byte [eax], cl
add eax, 1
sub esi, 1
jne 0x14a9926
jmp 0x14a9947
test esi, esi
jne 0x14a994f
sub eax, 1
mov edi, 0x8007007a
test edi, edi
mov byte [eax], 0
je 0x14a995b
call fcn.014aa1a0
push 0x1563c48
push 0x2000001
call fcn.014b8790
add esp, 8
pop edi
xor al, al
pop esi
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.014e18ea
add esp, 0x108
ret
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x151fbd8
push eax
call esi
test eax, eax
mov dword [0x1563c10], eax
je 0x14a9ad7
mov edx, dword [0x1563c3c]
push str.StackWalk
push edx
call esi
test eax, eax
mov dword [0x1563c14], eax
je 0x14a9ad7
mov eax, dword [0x1563c3c]
push str.SymFunctionTableAccess
push eax
call esi
test eax, eax
mov dword [0x1563c18], eax
je 0x14a9ad7
mov ecx, dword [0x1563c3c]
push str.SymGetModuleBase
push ecx
call esi
test eax, eax
mov dword [0x1563c1c], eax
je 0x14a9ad7
mov edx, dword [0x1563c3c]
push str.SymInitialize
push edx
call esi
test eax, eax
mov dword [0x1563c20], eax
je 0x14a9ad7
mov eax, dword [0x1563c3c]
push str.SymSetOptions
push eax
call esi
test eax, eax
mov dword [0x1563c24], eax
je 0x14a9ad7
mov ecx, dword [0x1563c3c]
push str.SymGetOptions
push ecx
call esi
test eax, eax
mov dword [0x1563c28], eax
je 0x14a9ad7
mov edx, dword [0x1563c3c]
push str.UnDecorateSymbolName
push edx
call esi
test eax, eax
mov dword [0x1563c2c], eax
je 0x14a9ad7
mov eax, dword [0x1563c3c]
push str.SymGetLineFromAddr
push eax
call esi
test eax, eax
mov dword [0x1563c30], eax
je 0x14a9ad7
mov ecx, dword [0x1563c3c]
push str.SymGetSymFromAddr
push ecx
call esi
test eax, eax
mov dword [0x1563c34], eax
je 0x14a9ad7
mov edx, dword [0x1563c3c]
push str.SymGetModuleInfo
push edx
call esi
test eax, eax
mov dword [0x1563c38], eax
je 0x14a9ad7
call dword [0x1563c28]
and eax, 0xfffffffd
or eax, 0x414
push eax
call dword [0x1563c24]
lea eax, [esp + 8]
push eax
call fcn.014a9680
add esp, 4
push 1
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [0x1563c20]
test eax, eax
jne 0x14a9b5d
mov eax, 0x1563c48
mov edx, str.cannot_load_dbghelp.dll_:_wrong_version_or_SymInitialize_fail
xor edi, edi
mov esi, 0x1000
sub edx, eax
lea ebx, [ebx]
lea ecx, [esi + 0x7fffeffe]
test ecx, ecx
je 0x14a9b0d
mov cl, byte [edx + eax]
test cl, cl
je 0x14a9b0d
mov byte [eax], cl
add eax, 1
sub esi, 1
jne 0x14a9af0
jmp 0x14a9b11
test esi, esi
jne 0x14a9b19
sub eax, 1
mov edi, 0x8007007a
test edi, edi
mov byte [eax], 0
je 0x14a9b25
call fcn.014aa1a0
push 0x1563c48
push 0x2000001
call fcn.014b8790
mov edx, dword [0x1563c3c]
add esp, 8
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
pop edi
xor al, al
pop esi
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.014e18ea
add esp, 0x108
ret
mov ecx, dword [esp + 0x10c]
pop edi
pop esi
xor ecx, esp
mov byte [0x1563c40], 1
mov al, 1
call fcn.014e18ea
add esp, 0x108
ret