Function at 0x10019a30
Capabilities:
Link many functions at runtime

Disassembly:
sub esp, 0x108
mov eax, dword [0x100880b0]
xor eax, esp
mov dword [esp + 0x104], eax
push 0x103
lea eax, [esp + 5]
push 0
push eax
mov byte [esp + 0xc], 0
call fcn.1004d800
add esp, 0xc
cmp byte [0x1008c280], 0
je 0x10019a7d
mov al, 1
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.10046377
add esp, 0x108
ret
push esi
push str.dbghelp.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
mov dword [0x1008c27c], eax
jne 0x10019af4
mov eax, 0x1008c288
mov edx, str.cannot_load_dbghelp.dll
mov esi, 0x1000
sub edx, eax
mov cl, byte [edx + eax]
test cl, cl
je 0x10019ad2
mov byte [eax], cl
add eax, 1
sub esi, 1
jne 0x10019aa3
sub eax, 1
mov byte [eax], 0
xor al, al
pop esi
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.10046377
add esp, 0x108
ret
test esi, esi
jne 0x10019ad9
sub eax, 1
mov byte [eax], 0
xor al, al
pop esi
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.10046377
add esp, 0x108
ret
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.MiniDumpWriteDump
push eax
call esi
test eax, eax
mov dword [0x1008c250], eax
je 0x10019c3d
mov ecx, dword [0x1008c27c]
push str.StackWalk
push ecx
call esi
test eax, eax
mov dword [0x1008c254], eax
je 0x10019c3d
mov edx, dword [0x1008c27c]
push str.SymFunctionTableAccess
push edx
call esi
test eax, eax
mov dword [0x1008c258], eax
je 0x10019c3d
mov eax, dword [0x1008c27c]
push str.SymGetModuleBase
push eax
call esi
test eax, eax
mov dword [0x1008c25c], eax
je 0x10019c3d
mov ecx, dword [0x1008c27c]
push str.SymInitialize
push ecx
call esi
test eax, eax
mov dword [0x1008c260], eax
je 0x10019c3d
mov edx, dword [0x1008c27c]
push str.SymSetOptions
push edx
call esi
test eax, eax
mov dword [0x1008c264], eax
je 0x10019c3d
mov eax, dword [0x1008c27c]
push str.SymGetOptions
push eax
call esi
test eax, eax
mov dword [0x1008c268], eax
je 0x10019c3d
mov ecx, dword [0x1008c27c]
push str.UnDecorateSymbolName
push ecx
call esi
test eax, eax
mov dword [0x1008c26c], eax
je 0x10019c3d
mov edx, dword [0x1008c27c]
push str.SymGetLineFromAddr
push edx
call esi
test eax, eax
mov dword [0x1008c270], eax
je 0x10019c3d
mov eax, dword [0x1008c27c]
push str.SymGetSymFromAddr
push eax
call esi
test eax, eax
mov dword [0x1008c274], eax
je 0x10019c3d
mov ecx, dword [0x1008c27c]
push str.SymGetModuleInfo
push ecx
call esi
test eax, eax
mov dword [0x1008c278], eax
je 0x10019c3d
call dword [0x1008c268]
and eax, 0xfffffffd
or eax, 0x414
push eax
call dword [0x1008c264]
lea esi, [esp + 4]
call fcn.10019640
push 1
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [0x1008c260]
test eax, eax
jne 0x10019c92
mov eax, 0x1008c288
mov edx, str.cannot_load_dbghelp.dll_:_wrong_version_or_SymInitialize_fail
mov esi, 0x1000
sub edx, eax
mov edi, edi
mov cl, byte [edx + eax]
test cl, cl
je 0x10019c63
mov byte [eax], cl
add eax, 1
sub esi, 1
jne 0x10019c50
jmp 0x10019c67
test esi, esi
jne 0x10019c6a
sub eax, 1
mov edx, dword [0x1008c27c]
push edx
mov byte [eax], 0
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xor al, al
pop esi
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.10046377
add esp, 0x108
ret
mov ecx, dword [esp + 0x108]
pop esi
xor ecx, esp
mov byte [0x1008c280], 1
mov al, 1
call fcn.10046377
add esp, 0x108
ret